gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] [libtalerutil-emscripten] branch master updated: proper nam


From: gnunet
Subject: [GNUnet-SVN] [libtalerutil-emscripten] branch master updated: proper name for Module
Date: Sun, 23 Apr 2017 18:52:24 +0200

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

dold pushed a commit to branch master
in repository libtalerutil-emscripten.

The following commit(s) were added to refs/heads/master by this push:
     new aca2e5c  proper name for Module
aca2e5c is described below

commit aca2e5cf58807343687db2fcce14b018d9b8b13a
Author: Florian Dold <address@hidden>
AuthorDate: Sun Apr 23 18:52:17 2017 +0200

    proper name for Module
---
 build-debug-wrapper     |      6 +-
 build-exchange          |      3 +-
 build-gnunet            |      2 +-
 build-libgcrypt         |      3 +-
 build-libgpg-error      |      2 +-
 build-libunistring      |      2 +-
 build-wrapper           |      5 +-
 taler-emscripten-lib.js | 138906 ++++++++++++++++++++++++++++++++++++++++++++-
 8 files changed, 138905 insertions(+), 24 deletions(-)

diff --git a/build-debug-wrapper b/build-debug-wrapper
index 5fac0dc..1b9841b 100755
--- a/build-debug-wrapper
+++ b/build-debug-wrapper
@@ -25,14 +25,16 @@ OUT=$DIR/out
 
 exports=$(cat exports.txt)
 
-emcc -c -v -O2 -Wall -I$OUT/emscripten/include \
+emcc -c -v -O0 -Wall -I$OUT/emscripten/include \
   wrap.c
 
-emcc -v -O2 --memory-init-file 0 -Wall \
+emcc -v -O0 --memory-init-file 0 -Wall \
   -s NO_DYNAMIC_EXECUTION=0 \
   -s ASSERTIONS=2 \
   -s SAFE_HEAP=1 \
+  -s EXPORT_NAME="'TalerEmscriptenLib'" \
   -s EXPORTED_FUNCTIONS="$exports" \
+  -s FS_LOG=1 \
   wrap.o \
   $OUT/emscripten/lib/libgnunetutil_taler_wallet.a \
   $OUT/emscripten/lib/libgcrypt.a \
diff --git a/build-exchange b/build-exchange
index fa03d32..7a3b89f 100755
--- a/build-exchange
+++ b/build-exchange
@@ -29,5 +29,6 @@ emconfigure ./configure --enable-wallet \
                         --with-gnunet=$OUT/emscripten \
                         --prefix=$OUT/emscripten \
                         --with-libgcrypt-prefix=$OUT/emscripten \
-                        --host=asmjs-local-emscripten
+                        --host=asmjs-local-emscripten \
+                        CFLAGS='-O3'
 emmake make install
diff --git a/build-gnunet b/build-gnunet
index 2097f2b..993ce42 100755
--- a/build-gnunet
+++ b/build-gnunet
@@ -34,5 +34,5 @@ emconfigure ./configure --prefix=$OUT/emscripten \
                         --without-libidn \
                         --with-mysql=no \
                         --with-zlib=no \
-                        CFLAGS="-I$OUT/native/include -Wno-warn-absolute-paths 
-L$OUT/emscripten/lib"
+                        CFLAGS="-I$OUT/native/include -Wno-warn-absolute-paths 
-L$OUT/emscripten/lib -O3"
 emmake make install
diff --git a/build-libgcrypt b/build-libgcrypt
index e1832b1..6c200a8 100755
--- a/build-libgcrypt
+++ b/build-libgcrypt
@@ -53,6 +53,7 @@ emconfigure ./configure --prefix=$OUT/emscripten/ \
             ac_cv_func_mlock=no \
             gnupg_cv_mlock_is_in_sys_mman=no \
             gcry_cv_have_asm=no \
-            gcry_cv_have___asm__=no
+            gcry_cv_have___asm__=no \
+            CFLAGS='-O3'
 
 emmake make SUBDIRS="compat mpi cipher random src" 
LDFLAGS="-Wc,--ignore-dynamic-linking" install
diff --git a/build-libgpg-error b/build-libgpg-error
index 43ef110..13ffdba 100755
--- a/build-libgpg-error
+++ b/build-libgpg-error
@@ -35,7 +35,7 @@ cp src/lock-obj-pub.native.h 
src/syscfg/lock-obj-pub.emscripten.h
 
 # Build again with emscripten,
 # keeping generated files fresh so make won't rebuild them.
-emconfigure ./configure --prefix=$OUT/emscripten/ \
+emconfigure ./configure CFLAGS='-O3' --prefix=$OUT/emscripten/ \
                         --host=asmjs-local-emscripten \
                         --sysconfdir=/etc \
                        --disable-doc \
diff --git a/build-libunistring b/build-libunistring
index ce18dfc..f8ab771 100755
--- a/build-libunistring
+++ b/build-libunistring
@@ -55,6 +55,6 @@ EOF
 
 
 # Now we can configure and compile using emscripten:
-emconfigure ./configure --prefix=$OUT/emscripten \
+emconfigure ./configure CFLAGS='-O3' --prefix=$OUT/emscripten \
            --host=asmjs-local-emscripten
 emmake make install
diff --git a/build-wrapper b/build-wrapper
index 8fe6b1e..cde061d 100755
--- a/build-wrapper
+++ b/build-wrapper
@@ -25,12 +25,13 @@ OUT=$DIR/out
 
 exports=$(cat exports.txt)
 
-emcc -c -v -O2 -Wall -I$OUT/emscripten/include \
+emcc -c -v -O3 -Wall -I$OUT/emscripten/include \
   wrap.c
 
-emcc -v -O2 --memory-init-file 0 -Wall \
+emcc -v -O3 --memory-init-file 0 -Wall \
   -s NO_DYNAMIC_EXECUTION=1 \
   -s ASSERTIONS=1 \
+  -s EXPORT_NAME="'TalerEmscriptenLib'" \
   -s EXPORTED_FUNCTIONS="$exports" \
   wrap.o \
   $OUT/emscripten/lib/libgnunetutil_taler_wallet.a \
diff --git a/taler-emscripten-lib.js b/taler-emscripten-lib.js
index 75309c5..02ea426 100644
--- a/taler-emscripten-lib.js
+++ b/taler-emscripten-lib.js
@@ -1,23 +1,138899 @@
-var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var 
moduleOverrides={};for(var key in 
Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var 
ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var 
ENVIRONMENT_IS_NODE=false;var 
ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else
 if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else 
if(Module["ENVIRONMENT"]== [...]
-var asm=(function(global,env,buffer) {
-"use asm";var a=new global.Int8Array(buffer);var b=new 
global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new 
global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new 
global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new 
global.Float64Array(buffer);var i=env.DYNAMICTOP_PTR|0;var 
j=env.tempDoublePtr|0;var k=env.ABORT|0;var l=env.STACKTOP|0;var 
m=env.STACK_MAX|0;var n=env.cttz_i8|0;var o=0;var p=0;var q=0;var r=0;var 
s=global.NaN,t=glob [...]
+var Module;
+if (!Module) Module = (typeof TalerEmscriptenLib !== "undefined" ? 
TalerEmscriptenLib : null) || {};
+var moduleOverrides = {};
+for (var key in Module) {
+ if (Module.hasOwnProperty(key)) {
+  moduleOverrides[key] = Module[key];
+ }
+}
+var ENVIRONMENT_IS_WEB = false;
+var ENVIRONMENT_IS_WORKER = false;
+var ENVIRONMENT_IS_NODE = false;
+var ENVIRONMENT_IS_SHELL = false;
+if (Module["ENVIRONMENT"]) {
+ if (Module["ENVIRONMENT"] === "WEB") {
+  ENVIRONMENT_IS_WEB = true;
+ } else if (Module["ENVIRONMENT"] === "WORKER") {
+  ENVIRONMENT_IS_WORKER = true;
+ } else if (Module["ENVIRONMENT"] === "NODE") {
+  ENVIRONMENT_IS_NODE = true;
+ } else if (Module["ENVIRONMENT"] === "SHELL") {
+  ENVIRONMENT_IS_SHELL = true;
+ } else {
+  throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It 
must be one of: WEB|WORKER|NODE|SHELL.");
+ }
+} else {
+ ENVIRONMENT_IS_WEB = typeof window === "object";
+ ENVIRONMENT_IS_WORKER = typeof importScripts === "function";
+ ENVIRONMENT_IS_NODE = typeof process === "object" && typeof require === 
"function" && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER;
+ ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && 
!ENVIRONMENT_IS_WORKER;
+}
+if (ENVIRONMENT_IS_NODE) {
+ if (!Module["print"]) Module["print"] = console.log;
+ if (!Module["printErr"]) Module["printErr"] = console.warn;
+ var nodeFS;
+ var nodePath;
+ Module["read"] = function read(filename, binary) {
+  if (!nodeFS) nodeFS = require("fs");
+  if (!nodePath) nodePath = require("path");
+  filename = nodePath["normalize"](filename);
+  var 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;
+ };
+ Module["load"] = function load(f) {
+  globalEval(read(f));
+ };
+ if (!Module["thisProgram"]) {
+  if (process["argv"].length > 1) {
+   Module["thisProgram"] = process["argv"][1].replace(/\\/g, "/");
+  } else {
+   Module["thisProgram"] = "unknown-program";
+  }
+ }
+ Module["arguments"] = process["argv"].slice(2);
+ if (typeof module !== "undefined") {
+  module["exports"] = Module;
+ }
+ process["on"]("uncaughtException", (function(ex) {
+  if (!(ex instanceof ExitStatus)) {
+   throw ex;
+  }
+ }));
+ Module["inspect"] = (function() {
+  return "[Emscripten Module object]";
+ });
+} else if (ENVIRONMENT_IS_SHELL) {
+ if (!Module["print"]) Module["print"] = print;
+ if (typeof printErr != "undefined") Module["printErr"] = printErr;
+ if (typeof read != "undefined") {
+  Module["read"] = read;
+ } else {
+  Module["read"] = function read() {
+   throw "no read() available";
+  };
+ }
+ Module["readBinary"] = function readBinary(f) {
+  if (typeof readbuffer === "function") {
+   return new Uint8Array(readbuffer(f));
+  }
+  var 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;
+ }
+} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
+ Module["read"] = function read(url) {
+  var xhr = new XMLHttpRequest;
+  xhr.open("GET", url, false);
+  xhr.send(null);
+  return xhr.responseText;
+ };
+ Module["readAsync"] = function readAsync(url, onload, onerror) {
+  var xhr = new XMLHttpRequest;
+  xhr.open("GET", url, true);
+  xhr.responseType = "arraybuffer";
+  xhr.onload = function xhr_onload() {
+   if (xhr.status == 200 || xhr.status == 0 && xhr.response) {
+    onload(xhr.response);
+   } else {
+    onerror();
+   }
+  };
+  xhr.onerror = onerror;
+  xhr.send(null);
+ };
+ if (typeof arguments != "undefined") {
+  Module["arguments"] = arguments;
+ }
+ if (typeof console !== "undefined") {
+  if (!Module["print"]) Module["print"] = function print(x) {
+   console.log(x);
+  };
+  if (!Module["printErr"]) Module["printErr"] = function printErr(x) {
+   console.warn(x);
+  };
+ } else {
+  var TRY_USE_DUMP = false;
+  if (!Module["print"]) Module["print"] = TRY_USE_DUMP && typeof dump !== 
"undefined" ? (function(x) {
+   dump(x);
+  }) : (function(x) {});
+ }
+ if (ENVIRONMENT_IS_WORKER) {
+  Module["load"] = importScripts;
+ }
+ if (typeof Module["setWindowTitle"] === "undefined") {
+  Module["setWindowTitle"] = (function(title) {
+   document.title = title;
+  });
+ }
+} else {
+ throw "Unknown runtime environment. Where are we?";
+}
+function globalEval(x) {
+ eval.call(null, x);
+}
+if (!Module["load"] && Module["read"]) {
+ Module["load"] = function load(f) {
+  globalEval(Module["read"](f));
+ };
+}
+if (!Module["print"]) {
+ Module["print"] = (function() {});
+}
+if (!Module["printErr"]) {
+ Module["printErr"] = Module["print"];
+}
+if (!Module["arguments"]) {
+ Module["arguments"] = [];
+}
+if (!Module["thisProgram"]) {
+ Module["thisProgram"] = "./this.program";
+}
+Module.print = Module["print"];
+Module.printErr = Module["printErr"];
+Module["preRun"] = [];
+Module["postRun"] = [];
+for (var key in moduleOverrides) {
+ if (moduleOverrides.hasOwnProperty(key)) {
+  Module[key] = moduleOverrides[key];
+ }
+}
+moduleOverrides = undefined;
+var Runtime = {
+ setTempRet0: (function(value) {
+  tempRet0 = value;
+  return value;
+ }),
+ getTempRet0: (function() {
+  return tempRet0;
+ }),
+ stackSave: (function() {
+  return STACKTOP;
+ }),
+ stackRestore: (function(stackTop) {
+  STACKTOP = stackTop;
+ }),
+ getNativeTypeSize: (function(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 Runtime.QUANTUM_SIZE;
+    } else if (type[0] === "i") {
+     var bits = parseInt(type.substr(1));
+     assert(bits % 8 === 0);
+     return bits / 8;
+    } else {
+     return 0;
+    }
+   }
+  }
+ }),
+ getNativeFieldSize: (function(type) {
+  return Math.max(Runtime.getNativeTypeSize(type), Runtime.QUANTUM_SIZE);
+ }),
+ STACK_ALIGN: 16,
+ prepVararg: (function(ptr, type) {
+  if (type === "double" || type === "i64") {
+   if (ptr & 7) {
+    assert((ptr & 7) === 4);
+    ptr += 4;
+   }
+  } else {
+   assert((ptr & 3) === 0);
+  }
+  return ptr;
+ }),
+ getAlignSize: (function(type, size, vararg) {
+  if (!vararg && (type == "i64" || type == "double")) return 8;
+  if (!type) return Math.min(size, 8);
+  return Math.min(size || (type ? Runtime.getNativeFieldSize(type) : 0), 
Runtime.QUANTUM_SIZE);
+ }),
+ dynCall: (function(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);
+  }
+ }),
+ functionPointers: [],
+ addFunction: (function(func) {
+  for (var i = 0; i < Runtime.functionPointers.length; i++) {
+   if (!Runtime.functionPointers[i]) {
+    Runtime.functionPointers[i] = func;
+    return 2 * (1 + i);
+   }
+  }
+  throw "Finished up all reserved function pointers. Use a higher value for 
RESERVED_FUNCTION_POINTERS.";
+ }),
+ removeFunction: (function(index) {
+  Runtime.functionPointers[(index - 2) / 2] = null;
+ }),
+ warnOnce: (function(text) {
+  if (!Runtime.warnOnce.shown) Runtime.warnOnce.shown = {};
+  if (!Runtime.warnOnce.shown[text]) {
+   Runtime.warnOnce.shown[text] = 1;
+   Module.printErr(text);
+  }
+ }),
+ funcWrappers: {},
+ getFuncWrapper: (function(func, sig) {
+  assert(sig);
+  if (!Runtime.funcWrappers[sig]) {
+   Runtime.funcWrappers[sig] = {};
+  }
+  var sigCache = Runtime.funcWrappers[sig];
+  if (!sigCache[func]) {
+   if (sig.length === 1) {
+    sigCache[func] = function dynCall_wrapper() {
+     return Runtime.dynCall(sig, func);
+    };
+   } else if (sig.length === 2) {
+    sigCache[func] = function dynCall_wrapper(arg) {
+     return Runtime.dynCall(sig, func, [ arg ]);
+    };
+   } else {
+    sigCache[func] = function dynCall_wrapper() {
+     return Runtime.dynCall(sig, func, Array.prototype.slice.call(arguments));
+    };
+   }
+  }
+  return sigCache[func];
+ }),
+ getCompilerSetting: (function(name) {
+  throw "You must build with -s RETAIN_COMPILER_SETTINGS=1 for 
Runtime.getCompilerSetting or emscripten_get_compiler_setting to work";
+ }),
+ stackAlloc: (function(size) {
+  var ret = STACKTOP;
+  STACKTOP = STACKTOP + size | 0;
+  STACKTOP = STACKTOP + 15 & -16;
+  assert((STACKTOP | 0) < (STACK_MAX | 0) | 0) | 0;
+  return ret;
+ }),
+ staticAlloc: (function(size) {
+  var ret = STATICTOP;
+  STATICTOP = STATICTOP + (assert(!staticSealed), size) | 0;
+  STATICTOP = STATICTOP + 15 & -16;
+  return ret;
+ }),
+ dynamicAlloc: (function(size) {
+  assert(DYNAMICTOP_PTR);
+  var ret = HEAP32[DYNAMICTOP_PTR >> 2];
+  var end = (ret + size + 15 | 0) & -16;
+  HEAP32[DYNAMICTOP_PTR >> 2] = end;
+  if (end >= TOTAL_MEMORY) {
+   var success = enlargeMemory();
+   if (!success) {
+    HEAP32[DYNAMICTOP_PTR >> 2] = ret;
+    return 0;
+   }
+  }
+  return ret;
+ }),
+ alignMemory: (function(size, quantum) {
+  var ret = size = Math.ceil(size / (quantum ? quantum : 16)) * (quantum ? 
quantum : 16);
+  return ret;
+ }),
+ makeBigInt: (function(low, high, unsigned) {
+  var ret = unsigned ? +(low >>> 0) + +(high >>> 0) * +4294967296 : +(low >>> 
0) + +(high | 0) * +4294967296;
+  return ret;
+ }),
+ GLOBAL_BASE: 8,
+ QUANTUM_SIZE: 4,
+ __dummy__: 0
+};
+Module["Runtime"] = Runtime;
+function getSafeHeapType(bytes, isFloat) {
+ switch (bytes) {
+ case 1:
+  return "i8";
+ case 2:
+  return "i16";
+ case 4:
+  return isFloat ? "float" : "i32";
+ case 8:
+  return "double";
+ default:
+  assert(0);
+ }
+}
+function SAFE_HEAP_STORE(dest, value, bytes, isFloat) {
+ if (dest <= 0) abort("segmentation fault storing " + bytes + " bytes to 
address " + dest);
+ if (dest % bytes !== 0) abort("alignment error storing to address " + dest + 
", which was expected to be aligned to a multiple of " + bytes);
+ if (staticSealed) {
+  if (dest + bytes > HEAP32[DYNAMICTOP_PTR >> 2]) abort("segmentation fault, 
exceeded the top of the available dynamic heap when storing " + bytes + " bytes 
to address " + dest + ". STATICTOP=" + STATICTOP + ", DYNAMICTOP=" + 
HEAP32[DYNAMICTOP_PTR >> 2]);
+  assert(DYNAMICTOP_PTR);
+  assert(HEAP32[DYNAMICTOP_PTR >> 2] <= TOTAL_MEMORY);
+ } else {
+  if (dest + bytes > STATICTOP) abort("segmentation fault, exceeded the top of 
the available static heap when storing " + bytes + " bytes to address " + dest 
+ ". STATICTOP=" + STATICTOP);
+ }
+ setValue(dest, value, getSafeHeapType(bytes, isFloat), 1);
+}
+function SAFE_HEAP_STORE_D(dest, value, bytes) {
+ SAFE_HEAP_STORE(dest, value, bytes, true);
+}
+function SAFE_HEAP_LOAD(dest, bytes, unsigned, isFloat) {
+ if (dest <= 0) abort("segmentation fault loading " + bytes + " bytes from 
address " + dest);
+ if (dest % bytes !== 0) abort("alignment error loading from address " + dest 
+ ", which was expected to be aligned to a multiple of " + bytes);
+ if (staticSealed) {
+  if (dest + bytes > HEAP32[DYNAMICTOP_PTR >> 2]) abort("segmentation fault, 
exceeded the top of the available dynamic heap when loading " + bytes + " bytes 
from address " + dest + ". STATICTOP=" + STATICTOP + ", DYNAMICTOP=" + 
HEAP32[DYNAMICTOP_PTR >> 2]);
+  assert(DYNAMICTOP_PTR);
+  assert(HEAP32[DYNAMICTOP_PTR >> 2] <= TOTAL_MEMORY);
+ } else {
+  if (dest + bytes > STATICTOP) abort("segmentation fault, exceeded the top of 
the available static heap when loading " + bytes + " bytes from address " + 
dest + ". STATICTOP=" + STATICTOP);
+ }
+ var type = getSafeHeapType(bytes, isFloat);
+ var ret = getValue(dest, type, 1);
+ if (unsigned) ret = unSign(ret, parseInt(type.substr(1)), 1);
+ return ret;
+}
+function SAFE_HEAP_LOAD_D(dest, bytes, unsigned) {
+ return SAFE_HEAP_LOAD(dest, bytes, unsigned, true);
+}
+function segfault() {
+ abort("segmentation fault");
+}
+function alignfault() {
+ abort("alignment fault");
+}
+function ftfault() {
+ abort("Function table mask error");
+}
+var ABORT = 0;
+var EXITSTATUS = 0;
+function assert(condition, text) {
+ if (!condition) {
+  abort("Assertion failed: " + text);
+ }
+}
+function getCFunc(ident) {
+ var func = Module["_" + ident];
+ if (!func) {
+  try {
+   func = eval("_" + ident);
+  } catch (e) {}
+ }
+ assert(func, "Cannot call unknown function " + ident + " (perhaps LLVM 
optimizations or closure removed it?)");
+ return func;
+}
+var cwrap, ccall;
+((function() {
+ var JSfuncs = {
+  "stackSave": (function() {
+   Runtime.stackSave();
+  }),
+  "stackRestore": (function() {
+   Runtime.stackRestore();
+  }),
+  "arrayToC": (function(arr) {
+   var ret = Runtime.stackAlloc(arr.length);
+   writeArrayToMemory(arr, ret);
+   return ret;
+  }),
+  "stringToC": (function(str) {
+   var ret = 0;
+   if (str !== null && str !== undefined && str !== 0) {
+    var len = (str.length << 2) + 1;
+    ret = Runtime.stackAlloc(len);
+    stringToUTF8(str, ret, len);
+   }
+   return ret;
+  })
+ };
+ var toC = {
+  "string": JSfuncs["stringToC"],
+  "array": JSfuncs["arrayToC"]
+ };
+ ccall = function ccallFunc(ident, returnType, argTypes, args, opts) {
+  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 = Runtime.stackSave();
+     cArgs[i] = converter(args[i]);
+    } else {
+     cArgs[i] = args[i];
+    }
+   }
+  }
+  var ret = func.apply(null, cArgs);
+  if ((!opts || !opts.async) && typeof EmterpreterAsync === "object") {
+   assert(!EmterpreterAsync.state, "cannot start async op with normal JS 
calling ccall");
+  }
+  if (opts && opts.async) assert(!returnType, "async ccalls cannot return 
values");
+  if (returnType === "string") ret = Pointer_stringify(ret);
+  if (stack !== 0) {
+   if (opts && opts.async) {
+    EmterpreterAsync.asyncFinalizers.push((function() {
+     Runtime.stackRestore(stack);
+    }));
+    return;
+   }
+   Runtime.stackRestore(stack);
+  }
+  return ret;
+ };
+ var sourceRegex = 
/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;
+ function parseJSFunc(jsfunc) {
+  var parsed = jsfunc.toString().match(sourceRegex).slice(1);
+  return {
+   arguments: parsed[0],
+   body: parsed[1],
+   returnValue: parsed[2]
+  };
+ }
+ var JSsource = null;
+ function ensureJSsource() {
+  if (!JSsource) {
+   JSsource = {};
+   for (var fun in JSfuncs) {
+    if (JSfuncs.hasOwnProperty(fun)) {
+     JSsource[fun] = parseJSFunc(JSfuncs[fun]);
+    }
+   }
+  }
+ }
+ cwrap = function cwrap(ident, returnType, argTypes) {
+  argTypes = argTypes || [];
+  var cfunc = getCFunc(ident);
+  var numericArgs = argTypes.every((function(type) {
+   return type === "number";
+  }));
+  var numericRet = returnType !== "string";
+  if (numericRet && numericArgs) {
+   return cfunc;
+  }
+  var argNames = argTypes.map((function(x, i) {
+   return "$" + i;
+  }));
+  var funcstr = "(function(" + argNames.join(",") + ") {";
+  var nargs = argTypes.length;
+  if (!numericArgs) {
+   ensureJSsource();
+   funcstr += "var stack = " + JSsource["stackSave"].body + ";";
+   for (var i = 0; i < nargs; i++) {
+    var arg = argNames[i], type = argTypes[i];
+    if (type === "number") continue;
+    var convertCode = JSsource[type + "ToC"];
+    funcstr += "var " + convertCode.arguments + " = " + arg + ";";
+    funcstr += convertCode.body + ";";
+    funcstr += arg + "=(" + convertCode.returnValue + ");";
+   }
+  }
+  var cfuncname = parseJSFunc((function() {
+   return cfunc;
+  })).returnValue;
+  funcstr += "var ret = " + cfuncname + "(" + argNames.join(",") + ");";
+  if (!numericRet) {
+   var strgfy = parseJSFunc((function() {
+    return Pointer_stringify;
+   })).returnValue;
+   funcstr += "ret = " + strgfy + "(ret);";
+  }
+  funcstr += "if (typeof EmterpreterAsync === 'object') { 
assert(!EmterpreterAsync.state, 'cannot start async op with normal JS calling 
cwrap') }";
+  if (!numericArgs) {
+   ensureJSsource();
+   funcstr += JSsource["stackRestore"].body.replace("()", "(stack)") + ";";
+  }
+  funcstr += "return ret})";
+  return eval(funcstr);
+ };
+}))();
+Module["ccall"] = ccall;
+Module["cwrap"] = cwrap;
+function setValue(ptr, value, type, noSafe) {
+ type = type || "i8";
+ if (type.charAt(type.length - 1) === "*") type = "i32";
+ if (noSafe) {
+  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 ? 
tempDouble > +0 ? (Math_min(+Math_floor(tempDouble / +4294967296), +4294967295) 
| 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / +4294967296) 
>>> 0 : 0) ], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1];
+   break;
+  case "float":
+   HEAPF32[ptr >> 2] = value;
+   break;
+  case "double":
+   HEAPF64[ptr >> 3] = value;
+   break;
+  default:
+   abort("invalid type for setValue: " + type);
+  }
+ } else {
+  switch (type) {
+  case "i1":
+   SAFE_HEAP_STORE(ptr | 0, value | 0, 1);
+   break;
+  case "i8":
+   SAFE_HEAP_STORE(ptr | 0, value | 0, 1);
+   break;
+  case "i16":
+   SAFE_HEAP_STORE(ptr | 0, value | 0, 2);
+   break;
+  case "i32":
+   SAFE_HEAP_STORE(ptr | 0, value | 0, 4);
+   break;
+  case "i64":
+   tempI64 = [ value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= +1 ? 
tempDouble > +0 ? (Math_min(+Math_floor(tempDouble / +4294967296), +4294967295) 
| 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / +4294967296) 
>>> 0 : 0) ], SAFE_HEAP_STORE(ptr | 0, tempI64[0] | 0, 4), SAFE_HEAP_STORE(ptr 
+ 4 | 0, tempI64[1] | 0, 4);
+   break;
+  case "float":
+   SAFE_HEAP_STORE_D(ptr | 0, +value, 4);
+   break;
+  case "double":
+   SAFE_HEAP_STORE_D(ptr | 0, +value, 8);
+   break;
+  default:
+   abort("invalid type for setValue: " + type);
+  }
+ }
+}
+Module["setValue"] = setValue;
+function getValue(ptr, type, noSafe) {
+ type = type || "i8";
+ if (type.charAt(type.length - 1) === "*") type = "i32";
+ if (noSafe) {
+  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 setValue: " + type);
+  }
+ } else {
+  switch (type) {
+  case "i1":
+   return SAFE_HEAP_LOAD(ptr | 0, 1, 0) | 0;
+  case "i8":
+   return SAFE_HEAP_LOAD(ptr | 0, 1, 0) | 0;
+  case "i16":
+   return SAFE_HEAP_LOAD(ptr | 0, 2, 0) | 0;
+  case "i32":
+   return SAFE_HEAP_LOAD(ptr | 0, 4, 0) | 0;
+  case "i64":
+   return SAFE_HEAP_LOAD(ptr | 0, 8, 0) | 0;
+  case "float":
+   return +SAFE_HEAP_LOAD_D(ptr | 0, 4, 0);
+  case "double":
+   return +SAFE_HEAP_LOAD_D(ptr | 0, 8, 0);
+  default:
+   abort("invalid type for setValue: " + type);
+  }
+ }
+ return null;
+}
+Module["getValue"] = getValue;
+var ALLOC_NORMAL = 0;
+var ALLOC_STACK = 1;
+var ALLOC_STATIC = 2;
+var ALLOC_DYNAMIC = 3;
+var ALLOC_NONE = 4;
+Module["ALLOC_NORMAL"] = ALLOC_NORMAL;
+Module["ALLOC_STACK"] = ALLOC_STACK;
+Module["ALLOC_STATIC"] = ALLOC_STATIC;
+Module["ALLOC_DYNAMIC"] = ALLOC_DYNAMIC;
+Module["ALLOC_NONE"] = ALLOC_NONE;
+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 : Runtime.staticAlloc, 
Runtime.stackAlloc, Runtime.staticAlloc, Runtime.dynamicAlloc ][allocator === 
undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : 
types.length));
+ }
+ if (zeroinit) {
+  var ptr = ret, stop;
+  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(slab, ret);
+  } else {
+   HEAPU8.set(new Uint8Array(slab), ret);
+  }
+  return ret;
+ }
+ var i = 0, type, typeSize, previousType;
+ while (i < size) {
+  var curr = slab[i];
+  if (typeof curr === "function") {
+   curr = Runtime.getFunctionIndex(curr);
+  }
+  type = singleType || types[i];
+  if (type === 0) {
+   i++;
+   continue;
+  }
+  assert(type, "Must know what type to store in allocate!");
+  if (type == "i64") type = "i32";
+  setValue(ret + i, curr, type);
+  if (previousType !== type) {
+   typeSize = Runtime.getNativeTypeSize(type);
+   previousType = type;
+  }
+  i += typeSize;
+ }
+ return ret;
+}
+Module["allocate"] = allocate;
+function getMemory(size) {
+ if (!staticSealed) return Runtime.staticAlloc(size);
+ if (!runtimeInitialized) return Runtime.dynamicAlloc(size);
+ return _malloc(size);
+}
+Module["getMemory"] = getMemory;
+function Pointer_stringify(ptr, length) {
+ if (length === 0 || !ptr) return "";
+ var hasUtf = 0;
+ var t;
+ var i = 0;
+ while (1) {
+  assert(ptr + i < TOTAL_MEMORY);
+  t = SAFE_HEAP_LOAD(ptr + i | 0, 1, 1) | 0;
+  hasUtf |= t;
+  if (t == 0 && !length) break;
+  i++;
+  if (length && i == length) break;
+ }
+ if (!length) length = i;
+ var ret = "";
+ if (hasUtf < 128) {
+  var MAX_CHUNK = 1024;
+  var curr;
+  while (length > 0) {
+   curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + 
Math.min(length, MAX_CHUNK)));
+   ret = ret ? ret + curr : curr;
+   ptr += MAX_CHUNK;
+   length -= MAX_CHUNK;
+  }
+  return ret;
+ }
+ return Module["UTF8ToString"](ptr);
+}
+Module["Pointer_stringify"] = Pointer_stringify;
+function AsciiToString(ptr) {
+ var str = "";
+ while (1) {
+  var ch = SAFE_HEAP_LOAD(ptr++ | 0, 1, 0) | 0;
+  if (!ch) return str;
+  str += String.fromCharCode(ch);
+ }
+}
+Module["AsciiToString"] = AsciiToString;
+function stringToAscii(str, outPtr) {
+ return writeAsciiToMemory(str, outPtr, false);
+}
+Module["stringToAscii"] = stringToAscii;
+var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") 
: undefined;
+function UTF8ArrayToString(u8Array, idx) {
+ var endPtr = idx;
+ while (u8Array[endPtr]) ++endPtr;
+ if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) {
+  return UTF8Decoder.decode(u8Array.subarray(idx, endPtr));
+ } else {
+  var u0, u1, u2, u3, u4, u5;
+  var str = "";
+  while (1) {
+   u0 = u8Array[idx++];
+   if (!u0) return str;
+   if (!(u0 & 128)) {
+    str += String.fromCharCode(u0);
+    continue;
+   }
+   u1 = u8Array[idx++] & 63;
+   if ((u0 & 224) == 192) {
+    str += String.fromCharCode((u0 & 31) << 6 | u1);
+    continue;
+   }
+   u2 = u8Array[idx++] & 63;
+   if ((u0 & 240) == 224) {
+    u0 = (u0 & 15) << 12 | u1 << 6 | u2;
+   } else {
+    u3 = u8Array[idx++] & 63;
+    if ((u0 & 248) == 240) {
+     u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u3;
+    } else {
+     u4 = u8Array[idx++] & 63;
+     if ((u0 & 252) == 248) {
+      u0 = (u0 & 3) << 24 | u1 << 18 | u2 << 12 | u3 << 6 | u4;
+     } else {
+      u5 = u8Array[idx++] & 63;
+      u0 = (u0 & 1) << 30 | u1 << 24 | u2 << 18 | u3 << 12 | u4 << 6 | u5;
+     }
+    }
+   }
+   if (u0 < 65536) {
+    str += String.fromCharCode(u0);
+   } else {
+    var ch = u0 - 65536;
+    str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
+   }
+  }
+ }
+}
+Module["UTF8ArrayToString"] = UTF8ArrayToString;
+function UTF8ToString(ptr) {
+ return UTF8ArrayToString(HEAPU8, ptr);
+}
+Module["UTF8ToString"] = UTF8ToString;
+function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) {
+ if (!(maxBytesToWrite > 0)) return 0;
+ var startIdx = outIdx;
+ var endIdx = outIdx + maxBytesToWrite - 1;
+ for (var i = 0; i < str.length; ++i) {
+  var u = str.charCodeAt(i);
+  if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | 
str.charCodeAt(++i) & 1023;
+  if (u <= 127) {
+   if (outIdx >= endIdx) break;
+   outU8Array[outIdx++] = u;
+  } else if (u <= 2047) {
+   if (outIdx + 1 >= endIdx) break;
+   outU8Array[outIdx++] = 192 | u >> 6;
+   outU8Array[outIdx++] = 128 | u & 63;
+  } else if (u <= 65535) {
+   if (outIdx + 2 >= endIdx) break;
+   outU8Array[outIdx++] = 224 | u >> 12;
+   outU8Array[outIdx++] = 128 | u >> 6 & 63;
+   outU8Array[outIdx++] = 128 | u & 63;
+  } else if (u <= 2097151) {
+   if (outIdx + 3 >= endIdx) break;
+   outU8Array[outIdx++] = 240 | u >> 18;
+   outU8Array[outIdx++] = 128 | u >> 12 & 63;
+   outU8Array[outIdx++] = 128 | u >> 6 & 63;
+   outU8Array[outIdx++] = 128 | u & 63;
+  } else if (u <= 67108863) {
+   if (outIdx + 4 >= endIdx) break;
+   outU8Array[outIdx++] = 248 | u >> 24;
+   outU8Array[outIdx++] = 128 | u >> 18 & 63;
+   outU8Array[outIdx++] = 128 | u >> 12 & 63;
+   outU8Array[outIdx++] = 128 | u >> 6 & 63;
+   outU8Array[outIdx++] = 128 | u & 63;
+  } else {
+   if (outIdx + 5 >= endIdx) break;
+   outU8Array[outIdx++] = 252 | u >> 30;
+   outU8Array[outIdx++] = 128 | u >> 24 & 63;
+   outU8Array[outIdx++] = 128 | u >> 18 & 63;
+   outU8Array[outIdx++] = 128 | u >> 12 & 63;
+   outU8Array[outIdx++] = 128 | u >> 6 & 63;
+   outU8Array[outIdx++] = 128 | u & 63;
+  }
+ }
+ outU8Array[outIdx] = 0;
+ return outIdx - startIdx;
+}
+Module["stringToUTF8Array"] = stringToUTF8Array;
+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);
+}
+Module["stringToUTF8"] = stringToUTF8;
+function lengthBytesUTF8(str) {
+ var len = 0;
+ for (var i = 0; i < str.length; ++i) {
+  var u = str.charCodeAt(i);
+  if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | 
str.charCodeAt(++i) & 1023;
+  if (u <= 127) {
+   ++len;
+  } else if (u <= 2047) {
+   len += 2;
+  } else if (u <= 65535) {
+   len += 3;
+  } else if (u <= 2097151) {
+   len += 4;
+  } else if (u <= 67108863) {
+   len += 5;
+  } else {
+   len += 6;
+  }
+ }
+ return len;
+}
+Module["lengthBytesUTF8"] = lengthBytesUTF8;
+var UTF16Decoder = typeof TextDecoder !== "undefined" ? new 
TextDecoder("utf-16le") : undefined;
+function demangle(func) {
+ var __cxa_demangle_func = Module["___cxa_demangle"] || 
Module["__cxa_demangle"];
+ if (__cxa_demangle_func) {
+  try {
+   var s = func.substr(1);
+   var len = lengthBytesUTF8(s) + 1;
+   var buf = _malloc(len);
+   stringToUTF8(s, buf, len);
+   var status = _malloc(4);
+   var ret = __cxa_demangle_func(buf, 0, 0, status);
+   if (getValue(status, "i32") === 0 && ret) {
+    return Pointer_stringify(ret);
+   }
+  } catch (e) {} finally {
+   if (buf) _free(buf);
+   if (status) _free(status);
+   if (ret) _free(ret);
+  }
+  return func;
+ }
+ Runtime.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) {
+  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);
+}
+Module["stackTrace"] = stackTrace;
+var PAGE_SIZE = 16384;
+var HEAP;
+var buffer;
+var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;
+function updateGlobalBufferViews() {
+ Module["HEAP8"] = HEAP8 = new Int8Array(buffer);
+ Module["HEAP16"] = HEAP16 = new Int16Array(buffer);
+ Module["HEAP32"] = HEAP32 = new Int32Array(buffer);
+ Module["HEAPU8"] = HEAPU8 = new Uint8Array(buffer);
+ Module["HEAPU16"] = HEAPU16 = new Uint16Array(buffer);
+ Module["HEAPU32"] = HEAPU32 = new Uint32Array(buffer);
+ Module["HEAPF32"] = HEAPF32 = new Float32Array(buffer);
+ Module["HEAPF64"] = HEAPF64 = new Float64Array(buffer);
+}
+var STATIC_BASE, STATICTOP, staticSealed;
+var STACK_BASE, STACKTOP, STACK_MAX;
+var DYNAMIC_BASE, DYNAMICTOP_PTR;
+STATIC_BASE = STATICTOP = STACK_BASE = STACKTOP = STACK_MAX = DYNAMIC_BASE = 
DYNAMICTOP_PTR = 0;
+staticSealed = false;
+function writeStackCookie() {
+ assert((STACK_MAX & 3) == 0);
+ HEAPU32[(STACK_MAX >> 2) - 1] = 34821223;
+ HEAPU32[(STACK_MAX >> 2) - 2] = 2310721022;
+}
+function checkStackCookie() {
+ if (HEAPU32[(STACK_MAX >> 2) - 1] != 34821223 || HEAPU32[(STACK_MAX >> 2) - 
2] != 2310721022) {
+  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));
+ }
+ if (HEAP32[0] !== 1668509029) 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 - asm.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 adjusts the size at runtime but 
prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value 
before the program runs, or 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) Module.printErr("TOTAL_MEMORY should be larger 
than TOTAL_STACK, was " + TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")");
+assert(typeof Int32Array !== "undefined" && typeof Float64Array !== 
"undefined" && !!(new Int32Array(1))["subarray"] && !!(new 
Int32Array(1))["set"], "JS engine does not provide full typed array support");
+if (Module["buffer"]) {
+ buffer = Module["buffer"];
+ assert(buffer.byteLength === TOTAL_MEMORY, "provided buffer should be " + 
TOTAL_MEMORY + " bytes, but it is " + buffer.byteLength);
+} else {
+ {
+  buffer = new ArrayBuffer(TOTAL_MEMORY);
+ }
+ assert(buffer.byteLength === TOTAL_MEMORY);
+}
+updateGlobalBufferViews();
+function getTotalMemory() {
+ return TOTAL_MEMORY;
+}
+HEAP32[0] = 1668509029;
+HEAP16[1] = 25459;
+if (HEAPU8[2] !== 115 || HEAPU8[3] !== 99) throw "Runtime error: expected the 
system to be little-endian!";
+Module["HEAP"] = HEAP;
+Module["buffer"] = buffer;
+Module["HEAP8"] = HEAP8;
+Module["HEAP16"] = HEAP16;
+Module["HEAP32"] = HEAP32;
+Module["HEAPU8"] = HEAPU8;
+Module["HEAPU16"] = HEAPU16;
+Module["HEAPU32"] = HEAPU32;
+Module["HEAPF32"] = HEAPF32;
+Module["HEAPF64"] = HEAPF64;
+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__ = [];
+var __ATINIT__ = [];
+var __ATMAIN__ = [];
+var __ATEXIT__ = [];
+var __ATPOSTRUN__ = [];
+var runtimeInitialized = false;
+var runtimeExited = false;
+function preRun() {
+ if (Module["preRun"]) {
+  if (typeof Module["preRun"] == "function") Module["preRun"] = [ 
Module["preRun"] ];
+  while (Module["preRun"].length) {
+   addOnPreRun(Module["preRun"].shift());
+  }
+ }
+ callRuntimeCallbacks(__ATPRERUN__);
+}
+function ensureInitRuntime() {
+ checkStackCookie();
+ if (runtimeInitialized) return;
+ runtimeInitialized = true;
+ callRuntimeCallbacks(__ATINIT__);
+}
+function preMain() {
+ checkStackCookie();
+ callRuntimeCallbacks(__ATMAIN__);
+}
+function exitRuntime() {
+ checkStackCookie();
+ callRuntimeCallbacks(__ATEXIT__);
+ runtimeExited = true;
+}
+function postRun() {
+ checkStackCookie();
+ if (Module["postRun"]) {
+  if (typeof Module["postRun"] == "function") Module["postRun"] = [ 
Module["postRun"] ];
+  while (Module["postRun"].length) {
+   addOnPostRun(Module["postRun"].shift());
+  }
+ }
+ callRuntimeCallbacks(__ATPOSTRUN__);
+}
+function addOnPreRun(cb) {
+ __ATPRERUN__.unshift(cb);
+}
+Module["addOnPreRun"] = addOnPreRun;
+function addOnInit(cb) {
+ __ATINIT__.unshift(cb);
+}
+Module["addOnInit"] = addOnInit;
+function addOnPreMain(cb) {
+ __ATMAIN__.unshift(cb);
+}
+Module["addOnPreMain"] = addOnPreMain;
+function addOnExit(cb) {
+ __ATEXIT__.unshift(cb);
+}
+Module["addOnExit"] = addOnExit;
+function addOnPostRun(cb) {
+ __ATPOSTRUN__.unshift(cb);
+}
+Module["addOnPostRun"] = addOnPostRun;
+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;
+}
+Module["intArrayFromString"] = intArrayFromString;
+function intArrayToString(array) {
+ var ret = [];
+ for (var i = 0; i < array.length; i++) {
+  var chr = array[i];
+  if (chr > 255) {
+   assert(false, "Character code " + chr + " (" + String.fromCharCode(chr) + 
")  at offset " + i + " not in 0x00-0xFF.");
+   chr &= 255;
+  }
+  ret.push(String.fromCharCode(chr));
+ }
+ return ret.join("");
+}
+Module["intArrayToString"] = intArrayToString;
+function writeStringToMemory(string, buffer, dontAddNull) {
+ Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! 
Use stringToUTF8() instead!");
+ var lastChar, end;
+ if (dontAddNull) {
+  end = buffer + lengthBytesUTF8(string);
+  lastChar = HEAP8[end];
+ }
+ stringToUTF8(string, buffer, Infinity);
+ if (dontAddNull) HEAP8[end] = lastChar;
+}
+Module["writeStringToMemory"] = writeStringToMemory;
+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);
+}
+Module["writeArrayToMemory"] = writeArrayToMemory;
+function writeAsciiToMemory(str, buffer, dontAddNull) {
+ for (var i = 0; i < str.length; ++i) {
+  assert(str.charCodeAt(i) === str.charCodeAt(i) & 255);
+  SAFE_HEAP_STORE(buffer++ | 0, str.charCodeAt(i) | 0, 1);
+ }
+ if (!dontAddNull) SAFE_HEAP_STORE(buffer | 0, 0 | 0, 1);
+}
+Module["writeAsciiToMemory"] = writeAsciiToMemory;
+function unSign(value, bits, ignore) {
+ if (value >= 0) {
+  return value;
+ }
+ return bits <= 32 ? 2 * Math.abs(1 << bits - 1) + value : Math.pow(2, bits) + 
value;
+}
+if (!Math["imul"] || Math["imul"](4294967295, 5) !== -5) Math["imul"] = 
function imul(a, b) {
+ var ah = a >>> 16;
+ var al = a & 65535;
+ var bh = b >>> 16;
+ var bl = b & 65535;
+ return al * bl + (ah * bl + al * bh << 16) | 0;
+};
+Math.imul = Math["imul"];
+if (!Math["clz32"]) Math["clz32"] = (function(x) {
+ x = x >>> 0;
+ for (var i = 0; i < 32; i++) {
+  if (x & 1 << 31 - i) return i;
+ }
+ return 32;
+});
+Math.clz32 = Math["clz32"];
+if (!Math["trunc"]) Math["trunc"] = (function(x) {
+ return x < 0 ? Math.ceil(x) : Math.floor(x);
+});
+Math.trunc = Math["trunc"];
+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_clz32 = Math.clz32;
+var Math_trunc = Math.trunc;
+var runDependencies = 0;
+var runDependencyWatcher = null;
+var dependenciesFulfilled = null;
+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") {
+   runDependencyWatcher = setInterval((function() {
+    if (ABORT) {
+     clearInterval(runDependencyWatcher);
+     runDependencyWatcher = null;
+     return;
+    }
+    var shown = false;
+    for (var dep in runDependencyTracking) {
+     if (!shown) {
+      shown = true;
+      Module.printErr("still waiting on run dependencies:");
+     }
+     Module.printErr("dependency: " + dep);
+    }
+    if (shown) {
+     Module.printErr("(end of list)");
+    }
+   }), 1e4);
+  }
+ } else {
+  Module.printErr("warning: run dependency added without ID");
+ }
+}
+Module["addRunDependency"] = addRunDependency;
+function removeRunDependency(id) {
+ runDependencies--;
+ if (Module["monitorRunDependencies"]) {
+  Module["monitorRunDependencies"](runDependencies);
+ }
+ if (id) {
+  assert(runDependencyTracking[id]);
+  delete runDependencyTracking[id];
+ } else {
+  Module.printErr("warning: run dependency removed without ID");
+ }
+ if (runDependencies == 0) {
+  if (runDependencyWatcher !== null) {
+   clearInterval(runDependencyWatcher);
+   runDependencyWatcher = null;
+  }
+  if (dependenciesFulfilled) {
+   var callback = dependenciesFulfilled;
+   dependenciesFulfilled = null;
+   callback();
+  }
+ }
+}
+Module["removeRunDependency"] = removeRunDependency;
+Module["preloadedImages"] = {};
+Module["preloadedAudios"] = {};
+var ASM_CONSTS = [];
+STATIC_BASE = 8;
+STATICTOP = STATIC_BASE + 72896;
+__ATINIT__.push({
+ func: (function() {
+  _GNUNET_util_cl_init();
+ })
+}, {
+ func: (function() {
+  _GNUNET_CRYPTO_random_init();
+ })
+}, {
+ func: (function() {
+  _gpg_err_init();
+ })
+}, {
+ func: (function() {
+  _TALER_gcrypt_init();
+ })
+});
+allocate([ 0, 0, 0, 0, 0, 0, 0, 0, 102, 154, 0, 127, 199, 106, 69, 159, 152, 
186, 249, 23, 254, 223, 149, 34, 17, 154, 0, 127, 199, 106, 69, 159, 152, 186, 
249, 23, 254, 223, 149, 51, 6, 154, 0, 127, 199, 106, 69, 159, 152, 186, 249, 
23, 254, 223, 149, 33, 255, 255, 255, 255, 255, 255, 255, 255, 34, 174, 40, 
215, 152, 47, 138, 66, 205, 101, 239, 35, 145, 68, 55, 113, 47, 59, 77, 236, 
207, 251, 192, 181, 188, 219, 137, 129, 165, 219, 181, 233, 56, 181, 72, 243, 
91, 194, 86, 57, 25, 208, 5 [...]
+allocate([ 186, 100, 213, 100, 136, 216, 160, 216, 165, 231, 132, 231, 232, 
95, 7, 95, 17, 27, 20, 27, 194, 44, 181, 44, 180, 252, 144, 252, 39, 49, 44, 
49, 101, 128, 163, 128, 42, 115, 178, 115, 129, 12, 115, 12, 95, 121, 76, 121, 
65, 107, 84, 107, 2, 75, 146, 75, 105, 83, 116, 83, 143, 148, 54, 148, 31, 131, 
81, 131, 54, 42, 56, 42, 156, 196, 176, 196, 200, 34, 189, 34, 248, 213, 90, 
213, 195, 189, 252, 189, 120, 72, 96, 72, 206, 255, 98, 255, 7, 76, 150, 76, 
119, 65, 108, 65, 230, 199 [...]
+allocate([ 112, 116, 111, 95, 109, 112, 105, 46, 99, 0, 71, 78, 85, 78, 69, 
84, 95, 67, 82, 89, 80, 84, 79, 95, 109, 112, 105, 95, 112, 114, 105, 110, 116, 
95, 117, 110, 115, 105, 103, 110, 101, 100, 0, 96, 37, 115, 39, 32, 102, 97, 
105, 108, 101, 100, 32, 97, 116, 32, 37, 115, 58, 37, 100, 32, 119, 105, 116, 
104, 32, 101, 114, 114, 111, 114, 58, 32, 37, 115, 10, 0, 103, 99, 114, 121, 
95, 109, 112, 105, 95, 112, 114, 105, 110, 116, 0, 71, 78, 85, 78, 69, 84, 95, 
67, 82, 89, 80, 84, 79, 9 [...]
+allocate([ 101, 100, 53, 100, 53, 97, 97, 56, 50, 53, 51, 97, 97, 49, 48, 97, 
50, 101, 102, 49, 99, 57, 56, 98, 57, 97, 99, 56, 98, 53, 55, 102, 49, 49, 49, 
55, 97, 55, 50, 98, 102, 50, 99, 55, 98, 57, 101, 55, 99, 49, 97, 99, 52, 100, 
55, 55, 102, 99, 57, 52, 99, 97, 0, 48, 120, 51, 100, 102, 57, 49, 54, 49, 48, 
97, 56, 51, 52, 52, 49, 99, 97, 101, 97, 57, 56, 54, 51, 98, 99, 50, 100, 101, 
100, 53, 100, 53, 97, 97, 56, 50, 53, 51, 97, 97, 49, 48, 97, 50, 101, 102, 49, 
99, 57, 56, 98, 57 [...]
+allocate([ 32, 32, 32, 32, 61, 62, 32, 37, 115, 10, 0, 114, 115, 97, 95, 115, 
105, 103, 110, 32, 32, 32, 100, 97, 116, 97, 0, 110, 101, 100, 112, 63, 113, 
63, 117, 63, 0, 114, 115, 97, 95, 115, 105, 103, 110, 32, 32, 32, 32, 32, 32, 
110, 0, 114, 115, 97, 95, 115, 105, 103, 110, 32, 32, 32, 32, 32, 32, 101, 0, 
114, 115, 97, 95, 115, 105, 103, 110, 32, 32, 32, 32, 32, 32, 100, 0, 114, 115, 
97, 95, 115, 105, 103, 110, 32, 32, 32, 32, 32, 32, 112, 0, 114, 115, 97, 95, 
115, 105, 103, 110, 32, [...]
+allocate([ 32, 37, 112, 10, 0, 102, 97, 105, 108, 101, 100, 32, 116, 111, 32, 
114, 101, 108, 101, 97, 115, 101, 32, 116, 104, 101, 32, 82, 78, 71, 32, 108, 
111, 99, 107, 58, 32, 37, 115, 10, 0, 114, 110, 103, 95, 99, 116, 120, 0, 102, 
111, 114, 107, 32, 119, 105, 116, 104, 111, 117, 116, 32, 112, 114, 111, 112, 
101, 114, 32, 114, 101, 45, 105, 110, 105, 116, 105, 97, 108, 105, 122, 97, 
116, 105, 111, 110, 32, 100, 101, 116, 101, 99, 116, 101, 100, 32, 105, 110, 
32, 82, 78, 71, 0, 115, 10 [...]
+allocate([ 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 255, 255, 255, 255, 
255, 255, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 
27, 28, 29, 30, 31, 32, 33, 34, 35, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 
255, 255, 255, 255, [...]
+var tempDoublePtr = STATICTOP;
+STATICTOP += 16;
+assert(tempDoublePtr % 8 == 0);
+var PROCINFO = {
+ ppid: 1,
+ pid: 42,
+ sid: 42,
+ pgid: 42
+};
+var ERRNO_CODES = {
+ EPERM: 1,
+ ENOENT: 2,
+ ESRCH: 3,
+ EINTR: 4,
+ EIO: 5,
+ ENXIO: 6,
+ E2BIG: 7,
+ ENOEXEC: 8,
+ EBADF: 9,
+ ECHILD: 10,
+ EAGAIN: 11,
+ EWOULDBLOCK: 11,
+ ENOMEM: 12,
+ EACCES: 13,
+ EFAULT: 14,
+ ENOTBLK: 15,
+ EBUSY: 16,
+ EEXIST: 17,
+ EXDEV: 18,
+ ENODEV: 19,
+ ENOTDIR: 20,
+ EISDIR: 21,
+ EINVAL: 22,
+ ENFILE: 23,
+ EMFILE: 24,
+ ENOTTY: 25,
+ ETXTBSY: 26,
+ EFBIG: 27,
+ ENOSPC: 28,
+ ESPIPE: 29,
+ EROFS: 30,
+ EMLINK: 31,
+ EPIPE: 32,
+ EDOM: 33,
+ ERANGE: 34,
+ ENOMSG: 42,
+ EIDRM: 43,
+ ECHRNG: 44,
+ EL2NSYNC: 45,
+ EL3HLT: 46,
+ EL3RST: 47,
+ ELNRNG: 48,
+ EUNATCH: 49,
+ ENOCSI: 50,
+ EL2HLT: 51,
+ EDEADLK: 35,
+ ENOLCK: 37,
+ EBADE: 52,
+ EBADR: 53,
+ EXFULL: 54,
+ ENOANO: 55,
+ EBADRQC: 56,
+ EBADSLT: 57,
+ EDEADLOCK: 35,
+ EBFONT: 59,
+ ENOSTR: 60,
+ ENODATA: 61,
+ ETIME: 62,
+ ENOSR: 63,
+ ENONET: 64,
+ ENOPKG: 65,
+ EREMOTE: 66,
+ ENOLINK: 67,
+ EADV: 68,
+ ESRMNT: 69,
+ ECOMM: 70,
+ EPROTO: 71,
+ EMULTIHOP: 72,
+ EDOTDOT: 73,
+ EBADMSG: 74,
+ ENOTUNIQ: 76,
+ EBADFD: 77,
+ EREMCHG: 78,
+ ELIBACC: 79,
+ ELIBBAD: 80,
+ ELIBSCN: 81,
+ ELIBMAX: 82,
+ ELIBEXEC: 83,
+ ENOSYS: 38,
+ ENOTEMPTY: 39,
+ ENAMETOOLONG: 36,
+ ELOOP: 40,
+ EOPNOTSUPP: 95,
+ EPFNOSUPPORT: 96,
+ ECONNRESET: 104,
+ ENOBUFS: 105,
+ EAFNOSUPPORT: 97,
+ EPROTOTYPE: 91,
+ ENOTSOCK: 88,
+ ENOPROTOOPT: 92,
+ ESHUTDOWN: 108,
+ ECONNREFUSED: 111,
+ EADDRINUSE: 98,
+ ECONNABORTED: 103,
+ ENETUNREACH: 101,
+ ENETDOWN: 100,
+ ETIMEDOUT: 110,
+ EHOSTDOWN: 112,
+ EHOSTUNREACH: 113,
+ EINPROGRESS: 115,
+ EALREADY: 114,
+ EDESTADDRREQ: 89,
+ EMSGSIZE: 90,
+ EPROTONOSUPPORT: 93,
+ ESOCKTNOSUPPORT: 94,
+ EADDRNOTAVAIL: 99,
+ ENETRESET: 102,
+ EISCONN: 106,
+ ENOTCONN: 107,
+ ETOOMANYREFS: 109,
+ EUSERS: 87,
+ EDQUOT: 122,
+ ESTALE: 116,
+ ENOTSUP: 95,
+ ENOMEDIUM: 123,
+ EILSEQ: 84,
+ EOVERFLOW: 75,
+ ECANCELED: 125,
+ ENOTRECOVERABLE: 131,
+ EOWNERDEAD: 130,
+ ESTRPIPE: 86
+};
+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",
+ 22: "Invalid argument",
+ 23: "Too many open files in system",
+ 24: "Too many open files",
+ 25: "Not a typewriter",
+ 26: "Text file busy",
+ 27: "File too large",
+ 28: "No space left on device",
+ 29: "Illegal seek",
+ 30: "Read only file system",
+ 31: "Too many links",
+ 32: "Broken pipe",
+ 33: "Math arg out of domain of func",
+ 34: "Math result not representable",
+ 35: "File locking deadlock error",
+ 36: "File or path name too long",
+ 37: "No record locks available",
+ 38: "Function not implemented",
+ 39: "Directory not empty",
+ 40: "Too many symbolic links",
+ 42: "No message of desired type",
+ 43: "Identifier removed",
+ 44: "Channel number out of range",
+ 45: "Level 2 not synchronized",
+ 46: "Level 3 halted",
+ 47: "Level 3 reset",
+ 48: "Link number out of range",
+ 49: "Protocol driver not attached",
+ 50: "No CSI structure available",
+ 51: "Level 2 halted",
+ 52: "Invalid exchange",
+ 53: "Invalid request descriptor",
+ 54: "Exchange full",
+ 55: "No anode",
+ 56: "Invalid request code",
+ 57: "Invalid slot",
+ 59: "Bad font file fmt",
+ 60: "Device not a stream",
+ 61: "No data (for no delay io)",
+ 62: "Timer expired",
+ 63: "Out of streams resources",
+ 64: "Machine is not on the network",
+ 65: "Package not installed",
+ 66: "The object is remote",
+ 67: "The link has been severed",
+ 68: "Advertise error",
+ 69: "Srmount error",
+ 70: "Communication error on send",
+ 71: "Protocol error",
+ 72: "Multihop attempted",
+ 73: "Cross mount point (not really error)",
+ 74: "Trying to read unreadable message",
+ 75: "Value too large for defined data type",
+ 76: "Given log. name not unique",
+ 77: "f.d. invalid for this operation",
+ 78: "Remote address changed",
+ 79: "Can   access a needed shared lib",
+ 80: "Accessing a corrupted shared lib",
+ 81: ".lib section in a.out corrupted",
+ 82: "Attempting to link in too many libs",
+ 83: "Attempting to exec a shared library",
+ 84: "Illegal byte sequence",
+ 86: "Streams pipe error",
+ 87: "Too many users",
+ 88: "Socket operation on non-socket",
+ 89: "Destination address required",
+ 90: "Message too long",
+ 91: "Protocol wrong type for socket",
+ 92: "Protocol not available",
+ 93: "Unknown protocol",
+ 94: "Socket type not supported",
+ 95: "Not supported",
+ 96: "Protocol family not supported",
+ 97: "Address family not supported by protocol family",
+ 98: "Address already in use",
+ 99: "Address not available",
+ 100: "Network interface is not configured",
+ 101: "Network is unreachable",
+ 102: "Connection reset by network",
+ 103: "Connection aborted",
+ 104: "Connection reset by peer",
+ 105: "No buffer space available",
+ 106: "Socket is already connected",
+ 107: "Socket is not connected",
+ 108: "Can't send after socket shutdown",
+ 109: "Too many references",
+ 110: "Connection timed out",
+ 111: "Connection refused",
+ 112: "Host is down",
+ 113: "Host is unreachable",
+ 114: "Socket already connected",
+ 115: "Connection already in progress",
+ 116: "Stale file handle",
+ 122: "Quota exceeded",
+ 123: "No medium (in tape drive)",
+ 125: "Operation canceled",
+ 130: "Previous owner died",
+ 131: "State not recoverable"
+};
+function ___setErrNo(value) {
+ if (Module["___errno_location"]) 
SAFE_HEAP_STORE(Module["___errno_location"]() | 0, value | 0, 4); else 
Module.printErr("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) {
+  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 (allowAboveRoot) {
+   for (; up--; up) {
+    parts.unshift("..");
+   }
+  }
+  return parts;
+ }),
+ normalize: (function(path) {
+  var isAbsolute = path.charAt(0) === "/", trailingSlash = path.substr(-1) === 
"/";
+  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) {
+   return ".";
+  }
+  if (dir) {
+   dir = dir.substr(0, dir.length - 1);
+  }
+  return root + dir;
+ }),
+ basename: (function(path) {
+  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();
+   if (typeof path !== "string") {
+    throw new TypeError("Arguments to path.resolve must be strings");
+   } else if (!path) {
+    return "";
+   }
+   resolvedPath = path + "/" + resolvedPath;
+   resolvedAbsolute = path.charAt(0) === "/";
+  }
+  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() {}),
+ shutdown: (function() {}),
+ 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) {
+   stream.tty.ops.flush(stream.tty);
+  }),
+  flush: (function(stream) {
+   stream.tty.ops.flush(stream.tty);
+  }),
+  read: (function(stream, buffer, offset, length, pos) {
+   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) {
+     var BUFSIZE = 256;
+     var buf = new Buffer(BUFSIZE);
+     var bytesRead = 0;
+     var isPosixPlatform = process.platform != "win32";
+     var fd = process.stdin.fd;
+     if (isPosixPlatform) {
+      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) {
+      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") {
+     result = window.prompt("Input: ");
+     if (result !== null) {
+      result += "\n";
+     }
+    } else if (typeof readline == "function") {
+     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) {
+    Module["print"](UTF8ArrayToString(tty.output, 0));
+    tty.output = [];
+   } else {
+    if (val != 0) tty.output.push(val);
+   }
+  }),
+  flush: (function(tty) {
+   if (tty.output && tty.output.length > 0) {
+    Module["print"](UTF8ArrayToString(tty.output, 0));
+    tty.output = [];
+   }
+  })
+ },
+ default_tty1_ops: {
+  put_char: (function(tty, val) {
+   if (val === null || val === 10) {
+    Module["printErr"](UTF8ArrayToString(tty.output, 0));
+    tty.output = [];
+   } else {
+    if (val != 0) tty.output.push(val);
+   }
+  }),
+  flush: (function(tty) {
+   if (tty.output && tty.output.length > 0) {
+    Module["printErr"](UTF8ArrayToString(tty.output, 0));
+    tty.output = [];
+   }
+  })
+ }
+};
+var MEMFS = {
+ ops_table: null,
+ mount: (function(mount) {
+  return MEMFS.createNode(null, "/", 16384 | 511, 0);
+ }),
+ createNode: (function(parent, name, mode, dev) {
+  if (FS.isBlkdev(mode) || FS.isFIFO(mode)) {
+   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;
+   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();
+  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;
+  }
+  return node.contents;
+ }),
+ getFileDataAsTypedArray: (function(node) {
+  if (!node.contents) return new Uint8Array;
+  if (node.contents.subarray) return node.contents.subarray(0, node.usedBytes);
+  return new Uint8Array(node.contents);
+ }),
+ expandFileStorage: (function(node, newCapacity) {
+  if (node.contents && node.contents.subarray && newCapacity > 
node.contents.length) {
+   node.contents = MEMFS.getFileDataAsRegularArray(node);
+   node.usedBytes = node.contents.length;
+  }
+  if (!node.contents || node.contents.subarray) {
+   var prevCapacity = node.contents ? node.contents.length : 0;
+   if (prevCapacity >= newCapacity) return;
+   var CAPACITY_DOUBLING_MAX = 1024 * 1024;
+   newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < 
CAPACITY_DOUBLING_MAX ? 2 : 1.125) | 0);
+   if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256);
+   var oldContents = node.contents;
+   node.contents = new Uint8Array(newCapacity);
+   if (node.usedBytes > 0) node.contents.set(oldContents.subarray(0, 
node.usedBytes), 0);
+   return;
+  }
+  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;
+   node.usedBytes = 0;
+   return;
+  }
+  if (!node.contents || node.contents.subarray) {
+   var oldContents = node.contents;
+   node.contents = new Uint8Array(new ArrayBuffer(newSize));
+   if (oldContents) {
+    node.contents.set(oldContents.subarray(0, Math.min(newSize, 
node.usedBytes)));
+   }
+   node.usedBytes = newSize;
+   return;
+  }
+  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 = {};
+   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);
+   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 (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);
+     }
+    }
+   }
+   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 | 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) {
+    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)) {
+    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) {
+     node.contents = new Uint8Array(buffer.subarray(offset, offset + length));
+     node.usedBytes = length;
+     return length;
+    } else if (position + length <= node.usedBytes) {
+     node.contents.set(buffer.subarray(offset, offset + length), position);
+     return length;
+    }
+   }
+   MEMFS.expandFileStorage(node, position + length);
+   if (node.contents.subarray && buffer.subarray) 
node.contents.set(buffer.subarray(offset, offset + length), position); else {
+    for (var i = 0; i < length; i++) {
+     node.contents[position + i] = buffer[offset + i];
+    }
+   }
+   node.usedBytes = Math.max(node.usedBytes, position + length);
+   return length;
+  }),
+  llseek: (function(stream, offset, whence) {
+   var position = offset;
+   if (whence === 1) {
+    position += stream.position;
+   } else if (whence === 2) {
+    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;
+   if (!(flags & 2) && (contents.buffer === buffer || contents.buffer === 
buffer.buffer)) {
+    allocated = false;
+    ptr = contents.byteOffset;
+   } else {
+    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) {
+    return 0;
+   }
+   var bytesWritten = MEMFS.stream_ops.write(stream, buffer, 0, length, 
offset, false);
+   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) {
+  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) {
+  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;
+   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);
+   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();
+   });
+  }));
+ }),
+ 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)) {
+   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, {
+     encoding: "binary",
+     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 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();
+  });
+  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);
+    }));
+   }
+  }));
+  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/);
+ }),
+ 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) {
+    stat.mode = stat.mode | (stat.mode & 146) >> 1;
+   }
+  } 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);
+ }),
+ flagsToPermissionStringMap: {
+  0: "r",
+  1: "r+",
+  2: "r+",
+  64: "r",
+  65: "r+",
+  66: "r+",
+  129: "rx+",
+  193: "rx+",
+  514: "w+",
+  577: "w",
+  578: "w+",
+  705: "wx",
+  706: "wx+",
+  1024: "a",
+  1025: "a",
+  1026: "a+",
+  1089: "a",
+  1090: "a+",
+  1153: "ax",
+  1154: "ax+",
+  1217: "ax",
+  1218: "ax+",
+  4096: "rs",
+  4098: "rs+"
+ },
+ flagsToPermissionString: (function(flags) {
+  flags &= ~2097152;
+  flags &= ~2048;
+  flags &= ~32768;
+  flags &= ~524288;
+  if (flags in NODEFS.flagsToPermissionStringMap) {
+   return NODEFS.flagsToPermissionStringMap[flags];
+  } 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]);
+   }
+   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);
+     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);
+   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.flagsToPermissionString(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) {
+   if (length === 0) return 0;
+   var nbuffer = new Buffer(length);
+   var res;
+   try {
+    res = fs.readSync(stream.nfd, nbuffer, 0, length, position);
+   } catch (e) {
+    throw new FS.ErrnoError(ERRNO_CODES[e.code]);
+   }
+   if (res > 0) {
+    for (var i = 0; i < res; i++) {
+     buffer[offset + i] = nbuffer[i];
+    }
+   }
+   return res;
+  }),
+  write: (function(stream, buffer, offset, length, position) {
+   var nbuffer = new Buffer(buffer.subarray(offset, offset + length));
+   var res;
+   try {
+    res = fs.writeSync(stream.nfd, nbuffer, 0, length, position);
+   } catch (e) {
+    throw new FS.ErrnoError(ERRNO_CODES[e.code]);
+   }
+   return res;
+  }),
+  llseek: (function(stream, offset, whence) {
+   var position = offset;
+   if (whence === 1) {
+    position += stream.position;
+   } else if (whence === 2) {
+    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) {
+   var parts = path.split("/");
+   var parent = root;
+   for (var i = 0; i < parts.length - 1; i++) {
+    var curr = parts.slice(0, i + 1).join("/");
+    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];
+  }
+  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);
+    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) {
+   throw new FS.ErrnoError(ERRNO_CODES.EPERM);
+  }),
+  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) {
+    position += stream.position;
+   } else if (whence === 2) {
+    if (FS.isFile(stream.node.mode)) {
+     position += stream.node.size;
+    }
+   }
+   if (position < 0) {
+    throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
+   }
+   return position;
+  })
+ }
+};
+STATICTOP += 16;
+STATICTOP += 16;
+STATICTOP += 16;
+var FS = {
+ root: null,
+ mounts: [],
+ devices: [ null ],
+ 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) {
+   throw new FS.ErrnoError(ERRNO_CODES.ELOOP);
+  }
+  var parts = PATH.normalizeArray(path.split("/").filter((function(p) {
+   return !!p;
+  })), false);
+  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) {
+    break;
+   }
+   current = FS.lookupNode(current, parts[i]);
+   current_path = PATH.join2(current_path, parts[i]);
+   if (FS.isMountpoint(current)) {
+    if (!islast || islast && opts.follow_mount) {
+     current = current.mounted.root;
+    }
+   }
+   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) {
+      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;
+   }
+  }
+  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;
+    }
+    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 = {};
+   var readMode = 292 | 73;
+   var writeMode = 146;
+   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;
+  }
+  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" || flags & 512) {
+    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 = {};
+   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;
+     })
+    }
+   });
+  }
+  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);
+   stream.stream_ops = device.stream_ops;
+   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 & 255;
+ }),
+ 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);
+   }
+  }
+  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;
+   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: []
+  };
+  var mountRoot = type.mount(mount);
+  mountRoot.mount = mount;
+  mount.root = mountRoot;
+  if (root) {
+   FS.root = mountRoot;
+  } else if (node) {
+   node.mounted = mount;
+   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);
+  }
+  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;
+   }
+  }));
+  node.mounted = null;
+  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;
+  mode &= 4095;
+  mode |= 32768;
+  return FS.mknod(path, mode, 0);
+ }),
+ mkdir: (function(path, mode) {
+  mode = mode !== undefined ? mode : 511;
+  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;
+  }
+  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);
+  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);
+  if (old_dir.mount !== new_dir.mount) {
+   throw new FS.ErrnoError(ERRNO_CODES.EXDEV);
+  }
+  var old_node = FS.lookupNode(old_dir, old_name);
+  var relative = PATH.relative(old_path, new_dirname);
+  if (relative.charAt(0) !== ".") {
+   throw new FS.ErrnoError(ERRNO_CODES.EINVAL);
+  }
+  relative = PATH.relative(new_path, old_dirname);
+  if (relative.charAt(0) !== ".") {
+   throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);
+  }
+  var new_node;
+  try {
+   new_node = FS.lookupNode(new_dir, new_name);
+  } catch (e) {}
+  if (old_node === new_node) {
+   return;
+  }
+  var isdir = FS.isDir(old_node.mode);
+  var err = FS.mayDelete(old_dir, old_name, isdir);
+  if (err) {
+   throw new FS.ErrnoError(err);
+  }
+  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 (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);
+  }
+  FS.hashRemoveNode(old_node);
+  try {
+   old_dir.node_ops.rename(old_node, new_dir, new_name);
+  } catch (e) {
+   throw e;
+  } finally {
+   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) {
+   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()
+  });
+ }),
+ 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 : 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) {}
+  }
+  var created = false;
+  if (flags & 64) {
+   if (node) {
+    if (flags & 128) {
+     throw new FS.ErrnoError(ERRNO_CODES.EEXIST);
+    }
+   } else {
+    node = FS.mknod(path, mode, 0);
+    created = true;
+   }
+  }
+  if (!node) {
+   throw new FS.ErrnoError(ERRNO_CODES.ENOENT);
+  }
+  if (FS.isChrdev(node.mode)) {
+   flags &= ~512;
+  }
+  if (flags & 65536 && !FS.isDir(node.mode)) {
+   throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);
+  }
+  if (!created) {
+   var err = FS.mayOpen(node, flags);
+   if (err) {
+    throw new FS.ErrnoError(err);
+   }
+  }
+  if (flags & 512) {
+   FS.truncate(node, 0);
+  }
+  flags &= ~(128 | 512);
+  var stream = FS.createStream({
+   node: node,
+   path: FS.getPath(node),
+   flags: flags,
+   seekable: true,
+   position: 0,
+   stream_ops: node.stream_ops,
+   ungotten: [],
+   error: false
+  }, fd_start, fd_end);
+  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;
+    Module["printErr"]("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 (stream.getdents) stream.getdents = null;
+  try {
+   if (stream.stream_ops.close) {
+    stream.stream_ops.close(stream);
+   }
+  } catch (e) {
+   throw e;
+  } finally {
+   FS.closeStream(stream.fd);
+  }
+ }),
+ llseek: (function(stream, offset, whence) {
+  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 ((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 = true;
+  if (typeof position === "undefined") {
+   position = stream.position;
+   seeking = false;
+  } 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 ((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) {
+   FS.llseek(stream, 0, 2);
+  }
+  var seeking = true;
+  if (typeof position === "undefined") {
+   position = stream.position;
+   seeking = false;
+  } 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 (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(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) {
+  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";
+  opts.encoding = opts.encoding || "utf8";
+  if (opts.encoding !== "utf8" && opts.encoding !== "binary") {
+   throw new Error('Invalid encoding type "' + opts.encoding + '"');
+  }
+  var stream = FS.open(path, opts.flags, opts.mode);
+  if (opts.encoding === "utf8") {
+   var buf = new Uint8Array(lengthBytesUTF8(data) + 1);
+   var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length);
+   FS.write(stream, buf, 0, actualNumBytes, 0, opts.canOwn);
+  } else if (opts.encoding === "binary") {
+   FS.write(stream, data, 0, data.length, 0, opts.canOwn);
+  }
+  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() {
+  FS.mkdir("/dev");
+  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));
+  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));
+  var random_device;
+  if (typeof crypto !== "undefined") {
+   var randomBuffer = new Uint8Array(1);
+   random_device = (function() {
+    crypto.getRandomValues(randomBuffer);
+    return randomBuffer[0];
+   });
+  } else if (ENVIRONMENT_IS_NODE) {
+   random_device = (function() {
+    return require("crypto").randomBytes(1)[0];
+   });
+  } else {
+   random_device = (function() {
+    return Math.random() * 256 | 0;
+   });
+  }
+  FS.createDevice("/dev", "random", random_device);
+  FS.createDevice("/dev", "urandom", random_device);
+  FS.mkdir("/dev/shm");
+  FS.mkdir("/dev/shm/tmp");
+ }),
+ createSpecialDirectories: (function() {
+  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, 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;
+      return ret;
+     })
+    };
+    return node;
+   })
+  }, {}, "/proc/self/fd");
+ }),
+ createStandardStreams: (function() {
+  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");
+  }
+  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) {
+   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];
+   if (this.stack) this.stack = demangleAll(this.stack);
+  };
+  FS.ErrnoError.prototype = new Error;
+  FS.ErrnoError.prototype.constructor = FS.ErrnoError;
+  [ 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();
+  Module["stdin"] = input || Module["stdin"];
+  Module["stdout"] = output || Module["stdout"];
+  Module["stderr"] = error || Module["stderr"];
+  FS.createStandardStreams();
+ }),
+ quit: (function() {
+  FS.init.initialized = false;
+  var fflush = Module["_fflush"];
+  if (fflush) fflush(0);
+  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) {
+  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) {}
+   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;
+   }
+   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);
+  FS.registerDevice(dev, {
+   open: (function(stream) {
+    stream.seekable = false;
+   }),
+   close: (function(stream) {
+    if (output && output.buffer && output.buffer.length) {
+     output(10);
+    }
+   }),
+   read: (function(stream, buffer, offset, length, pos) {
+    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"]) {
+   try {
+    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) {
+  function LazyUint8Array() {
+   this.lengthKnown = false;
+   this.chunks = [];
+  }
+  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() 
{
+   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;
+   if (!hasByteServing) chunkSize = datalength;
+   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!");
+    var xhr = new XMLHttpRequest;
+    xhr.open("GET", url, false);
+    if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + 
from + "-" + to);
+    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;
+    end = Math.min(end, datalength - 1);
+    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) {
+    chunkSize = datalength = 1;
+    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);
+  if (properties.contents) {
+   node.contents = properties.contents;
+  } else if (properties.url) {
+   node.contents = null;
+   node.url = properties.url;
+  }
+  Object.defineProperties(node, {
+   usedBytes: {
+    get: (function() {
+     return this.contents.length;
+    })
+   }
+  });
+  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);
+   };
+  }));
+  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) {
+    for (var i = 0; i < size; i++) {
+     buffer[offset + i] = contents[position + i];
+    }
+   } else {
+    for (var i = 0; i < size; i++) {
+     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();
+  var fullname = name ? PATH.resolve(PATH.join2(parent, name)) : parent;
+  var dep = getUniqueRunDependency("cp " + 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;
+  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] !== "/") {
+   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))) {
+    return -ERRNO_CODES.ENOTDIR;
+   }
+   throw e;
+  }
+  SAFE_HEAP_STORE(buf | 0, stat.dev | 0, 4);
+  SAFE_HEAP_STORE(buf + 4 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE(buf + 8 | 0, stat.ino | 0, 4);
+  SAFE_HEAP_STORE(buf + 12 | 0, stat.mode | 0, 4);
+  SAFE_HEAP_STORE(buf + 16 | 0, stat.nlink | 0, 4);
+  SAFE_HEAP_STORE(buf + 20 | 0, stat.uid | 0, 4);
+  SAFE_HEAP_STORE(buf + 24 | 0, stat.gid | 0, 4);
+  SAFE_HEAP_STORE(buf + 28 | 0, stat.rdev | 0, 4);
+  SAFE_HEAP_STORE(buf + 32 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE(buf + 36 | 0, stat.size | 0, 4);
+  SAFE_HEAP_STORE(buf + 40 | 0, 4096 | 0, 4);
+  SAFE_HEAP_STORE(buf + 44 | 0, stat.blocks | 0, 4);
+  SAFE_HEAP_STORE(buf + 48 | 0, stat.atime.getTime() / 1e3 | 0 | 0, 4);
+  SAFE_HEAP_STORE(buf + 52 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE(buf + 56 | 0, stat.mtime.getTime() / 1e3 | 0 | 0, 4);
+  SAFE_HEAP_STORE(buf + 60 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE(buf + 64 | 0, stat.ctime.getTime() / 1e3 | 0 | 0, 4);
+  SAFE_HEAP_STORE(buf + 68 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE(buf + 72 | 0, stat.ino | 0, 4);
+  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) {
+  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) {
+  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);
+  HEAP8[buf + len] = endChar;
+  return len;
+ }),
+ doAccess: (function(path, amode) {
+  if (amode & ~7) {
+   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 && 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 = SAFE_HEAP_LOAD(iov + i * 8 | 0, 4, 0) | 0;
+   var len = SAFE_HEAP_LOAD(iov + (i * 8 + 4) | 0, 4, 0) | 0;
+   var curr = FS.read(stream, HEAP8, ptr, len, offset);
+   if (curr < 0) return -1;
+   ret += curr;
+   if (curr < len) break;
+  }
+  return ret;
+ }),
+ doWritev: (function(stream, iov, iovcnt, offset) {
+  var ret = 0;
+  for (var i = 0; i < iovcnt; i++) {
+   var ptr = SAFE_HEAP_LOAD(iov + i * 8 | 0, 4, 0) | 0;
+   var len = SAFE_HEAP_LOAD(iov + (i * 8 + 4) | 0, 4, 0) | 0;
+   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 = SAFE_HEAP_LOAD(SYSCALLS.varargs - 4 | 0, 4, 0) | 0;
+  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 ___syscall64(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  return PROCINFO.ppid;
+ } catch (e) {
+  if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
+  return -e.errno;
+ }
+}
+Module["_i64Subtract"] = _i64Subtract;
+function _sysconf(name) {
+ 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 1e3;
+ case 89:
+  return 700;
+ case 71:
+  return 256;
+ case 40:
+  return 255;
+ case 2:
+  return 100;
+ case 180:
+  return 64;
+ case 25:
+  return 20;
+ case 5:
+  return 16;
+ case 6:
+  return 6;
+ case 73:
+  return 4;
+ case 84:
+  {
+   if (typeof navigator === "object") return navigator["hardwareConcurrency"] 
|| 1;
+   return 1;
+  }
+ }
+ ___setErrNo(ERRNO_CODES.EINVAL);
+ return -1;
+}
+function ___syscall20(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  return PROCINFO.pid;
+ } catch (e) {
+  if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
+  return -e.errno;
+ }
+}
+function _pthread_mutex_destroy() {}
+Module["_memset"] = _memset;
+Module["_pthread_mutex_lock"] = _pthread_mutex_lock;
+function _atexit(func, arg) {
+ __ATEXIT__.unshift({
+  func: func,
+  arg: arg
+ });
+}
+function _abort() {
+ Module["abort"]();
+}
+function ___syscall195(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  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 ___syscall194(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  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 ___syscall197(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  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 {
+  return 0;
+ } catch (e) {
+  if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
+  return -e.errno;
+ }
+}
+function ___syscall199() {
+ return ___syscall202.apply(null, arguments);
+}
+Module["_i64Add"] = _i64Add;
+var cttz_i8 = allocate([ 8, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 
1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 
2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 6, 0, 1, 0, 2, 0, 
1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 
5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 
1, 0, 2, 0, 1, 0, 7, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 
2, 0, 1, 0, 3, 0, 1, 0, [...]
+Module["_llvm_cttz_i32"] = _llvm_cttz_i32;
+Module["___udivmoddi4"] = ___udivmoddi4;
+Module["___divdi3"] = ___divdi3;
+function _pthread_mutex_init() {}
+function ___lock() {}
+function ___unlock() {}
+function ___assert_fail(condition, filename, line, func) {
+ ABORT = true;
+ throw "Assertion failed: " + Pointer_stringify(condition) + ", at: " + [ 
filename ? Pointer_stringify(filename) : "unknown filename", line, func ? 
Pointer_stringify(func) : "unknown function" ] + " at " + stackTrace();
+}
+function _clock() {
+ if (_clock.start === undefined) _clock.start = Date.now();
+ return (Date.now() - _clock.start) * (1e6 / 1e3) | 0;
+}
+function _emscripten_memcpy_big(dest, src, num) {
+ HEAPU8.set(HEAPU8.subarray(src, src + num), dest);
+ return dest;
+}
+Module["_memcpy"] = _memcpy;
+Module["_memmove"] = _memmove;
+function ___syscall91(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  var addr = SYSCALLS.get(), len = SYSCALLS.get();
+  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;
+ }
+}
+Module["_llvm_bswap_i32"] = _llvm_bswap_i32;
+function ___syscall6(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  var stream = SYSCALLS.getStreamFromFD();
+  FS.close(stream);
+  return 0;
+ } catch (e) {
+  if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
+  return -e.errno;
+ }
+}
+function ___syscall54(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  var stream = SYSCALLS.getStreamFromFD(), op = SYSCALLS.get();
+  switch (op) {
+  case 21505:
+   {
+    if (!stream.tty) return -ERRNO_CODES.ENOTTY;
+    return 0;
+   }
+  case 21506:
+   {
+    if (!stream.tty) return -ERRNO_CODES.ENOTTY;
+    return 0;
+   }
+  case 21519:
+   {
+    if (!stream.tty) return -ERRNO_CODES.ENOTTY;
+    var argp = SYSCALLS.get();
+    SAFE_HEAP_STORE(argp | 0, 0 | 0, 4);
+    return 0;
+   }
+  case 21520:
+   {
+    if (!stream.tty) return -ERRNO_CODES.ENOTTY;
+    return -ERRNO_CODES.EINVAL;
+   }
+  case 21531:
+   {
+    var argp = SYSCALLS.get();
+    return FS.ioctl(stream, op, argp);
+   }
+  case 21523:
+   {
+    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;
+ }
+}
+var ___tm_current = STATICTOP;
+STATICTOP += 48;
+var ___tm_timezone = allocate(intArrayFromString("GMT"), "i8", ALLOC_STATIC);
+var _tzname = STATICTOP;
+STATICTOP += 16;
+var _daylight = STATICTOP;
+STATICTOP += 16;
+var _timezone = STATICTOP;
+STATICTOP += 16;
+function _tzset() {
+ if (_tzset.called) return;
+ _tzset.called = true;
+ SAFE_HEAP_STORE(_timezone | 0, -(new Date).getTimezoneOffset() * 60 | 0, 4);
+ var winter = new Date(2e3, 0, 1);
+ var summer = new Date(2e3, 6, 1);
+ SAFE_HEAP_STORE(_daylight | 0, Number(winter.getTimezoneOffset() != 
summer.getTimezoneOffset()) | 0, 4);
+ 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()) {
+  SAFE_HEAP_STORE(_tzname | 0, winterNamePtr | 0, 4);
+  SAFE_HEAP_STORE(_tzname + 4 | 0, summerNamePtr | 0, 4);
+ } else {
+  SAFE_HEAP_STORE(_tzname | 0, summerNamePtr | 0, 4);
+  SAFE_HEAP_STORE(_tzname + 4 | 0, winterNamePtr | 0, 4);
+ }
+}
+function _localtime_r(time, tmPtr) {
+ _tzset();
+ var date = new Date((SAFE_HEAP_LOAD(time | 0, 4, 0) | 0) * 1e3);
+ SAFE_HEAP_STORE(tmPtr | 0, date.getSeconds() | 0, 4);
+ SAFE_HEAP_STORE(tmPtr + 4 | 0, date.getMinutes() | 0, 4);
+ SAFE_HEAP_STORE(tmPtr + 8 | 0, date.getHours() | 0, 4);
+ SAFE_HEAP_STORE(tmPtr + 12 | 0, date.getDate() | 0, 4);
+ SAFE_HEAP_STORE(tmPtr + 16 | 0, date.getMonth() | 0, 4);
+ SAFE_HEAP_STORE(tmPtr + 20 | 0, date.getFullYear() - 1900 | 0, 4);
+ SAFE_HEAP_STORE(tmPtr + 24 | 0, date.getDay() | 0, 4);
+ var start = new Date(date.getFullYear(), 0, 1);
+ var yday = (date.getTime() - start.getTime()) / (1e3 * 60 * 60 * 24) | 0;
+ SAFE_HEAP_STORE(tmPtr + 28 | 0, yday | 0, 4);
+ SAFE_HEAP_STORE(tmPtr + 36 | 0, -(date.getTimezoneOffset() * 60) | 0, 4);
+ var summerOffset = (new Date(2e3, 6, 1)).getTimezoneOffset();
+ var winterOffset = start.getTimezoneOffset();
+ var dst = date.getTimezoneOffset() == Math.min(winterOffset, summerOffset) | 
0;
+ SAFE_HEAP_STORE(tmPtr + 32 | 0, dst | 0, 4);
+ var zonePtr = SAFE_HEAP_LOAD(_tzname + (dst ? Runtime.QUANTUM_SIZE : 0) | 0, 
4, 0) | 0;
+ SAFE_HEAP_STORE(tmPtr + 40 | 0, zonePtr | 0, 4);
+ return tmPtr;
+}
+function _localtime(time) {
+ return _localtime_r(time, ___tm_current);
+}
+function ___syscall77(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  var who = SYSCALLS.get(), usage = SYSCALLS.get();
+  _memset(usage, 0, 136);
+  SAFE_HEAP_STORE(usage | 0, 1 | 0, 4);
+  SAFE_HEAP_STORE(usage + 4 | 0, 2 | 0, 4);
+  SAFE_HEAP_STORE(usage + 8 | 0, 3 | 0, 4);
+  SAFE_HEAP_STORE(usage + 12 | 0, 4 | 0, 4);
+  return 0;
+ } catch (e) {
+  if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
+  return -e.errno;
+ }
+}
+Module["_bitshift64Ashr"] = _bitshift64Ashr;
+Module["_bitshift64Lshr"] = _bitshift64Lshr;
+function ___syscall33(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  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;
+ }
+}
+var _environ = STATICTOP;
+STATICTOP += 16;
+function ___buildEnvironment(env) {
+ var MAX_ENV_VALUES = 64;
+ var TOTAL_ENV_SIZE = 1024;
+ var poolPtr;
+ var envPtr;
+ if (!___buildEnvironment.called) {
+  ___buildEnvironment.called = true;
+  ENV["USER"] = ENV["LOGNAME"] = "web_user";
+  ENV["PATH"] = "/";
+  ENV["PWD"] = "/";
+  ENV["HOME"] = "/home/web_user";
+  ENV["LANG"] = "C";
+  ENV["_"] = Module["thisProgram"];
+  poolPtr = allocate(TOTAL_ENV_SIZE, "i8", ALLOC_STATIC);
+  envPtr = allocate(MAX_ENV_VALUES * 4, "i8*", ALLOC_STATIC);
+  SAFE_HEAP_STORE(envPtr | 0, poolPtr | 0, 4);
+  SAFE_HEAP_STORE(_environ | 0, envPtr | 0, 4);
+ } else {
+  envPtr = SAFE_HEAP_LOAD(_environ | 0, 4, 0) | 0;
+  poolPtr = SAFE_HEAP_LOAD(envPtr | 0, 4, 0) | 0;
+ }
+ 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!");
+ }
+ var ptrSize = 4;
+ for (var i = 0; i < strings.length; i++) {
+  var line = strings[i];
+  writeAsciiToMemory(line, poolPtr);
+  SAFE_HEAP_STORE(envPtr + i * ptrSize | 0, poolPtr | 0, 4);
+  poolPtr += line.length + 1;
+ }
+ SAFE_HEAP_STORE(envPtr + strings.length * ptrSize | 0, 0 | 0, 4);
+}
+var ENV = {};
+function _getenv(name) {
+ if (name === 0) return 0;
+ name = Pointer_stringify(name);
+ if (!ENV.hasOwnProperty(name)) return 0;
+ if (_getenv.ret) _free(_getenv.ret);
+ _getenv.ret = allocate(intArrayFromString(ENV[name]), "i8", ALLOC_NORMAL);
+ return _getenv.ret;
+}
+function _gettimeofday(ptr) {
+ var now = Date.now();
+ SAFE_HEAP_STORE(ptr | 0, now / 1e3 | 0 | 0, 4);
+ SAFE_HEAP_STORE(ptr + 4 | 0, now % 1e3 * 1e3 | 0 | 0, 4);
+ return 0;
+}
+Module["_pthread_mutex_unlock"] = _pthread_mutex_unlock;
+function ___syscall3(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  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 ___syscall5(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  var pathname = SYSCALLS.getStr(), flags = SYSCALLS.get(), mode = 
SYSCALLS.get();
+  var stream = FS.open(pathname, flags, mode);
+  return stream.fd;
+ } catch (e) {
+  if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
+  return -e.errno;
+ }
+}
+function _llvm_stackrestore(p) {
+ var self = _llvm_stacksave;
+ var ret = self.LLVM_SAVEDSTACKS[p];
+ self.LLVM_SAVEDSTACKS.splice(p, 1);
+ Runtime.stackRestore(ret);
+}
+Module["___udivdi3"] = ___udivdi3;
+Module["___muldsi3"] = ___muldsi3;
+Module["___muldi3"] = ___muldi3;
+Module["_sbrk"] = _sbrk;
+Module["_bitshift64Shl"] = _bitshift64Shl;
+function _llvm_stacksave() {
+ var self = _llvm_stacksave;
+ if (!self.LLVM_SAVEDSTACKS) {
+  self.LLVM_SAVEDSTACKS = [];
+ }
+ self.LLVM_SAVEDSTACKS.push(Runtime.stackSave());
+ return self.LLVM_SAVEDSTACKS.length - 1;
+}
+Module["___uremdi3"] = ___uremdi3;
+function ___syscall4(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  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 ___syscall192(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  var addr = SYSCALLS.get(), len = SYSCALLS.get(), prot = SYSCALLS.get(), 
flags = SYSCALLS.get(), fd = SYSCALLS.get(), off = SYSCALLS.get();
+  off <<= 12;
+  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 ___syscall201() {
+ return ___syscall202.apply(null, arguments);
+}
+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()) {
+   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 {
+   newDate.setDate(newDate.getDate() + days);
+   return newDate;
+  }
+ }
+ return newDate;
+}
+function _strftime(s, maxsize, format, tm) {
+ var tm_zone = SAFE_HEAP_LOAD(tm + 40 | 0, 4, 0) | 0;
+ var date = {
+  tm_sec: SAFE_HEAP_LOAD(tm | 0, 4, 0) | 0,
+  tm_min: SAFE_HEAP_LOAD(tm + 4 | 0, 4, 0) | 0,
+  tm_hour: SAFE_HEAP_LOAD(tm + 8 | 0, 4, 0) | 0,
+  tm_mday: SAFE_HEAP_LOAD(tm + 12 | 0, 4, 0) | 0,
+  tm_mon: SAFE_HEAP_LOAD(tm + 16 | 0, 4, 0) | 0,
+  tm_year: SAFE_HEAP_LOAD(tm + 20 | 0, 4, 0) | 0,
+  tm_wday: SAFE_HEAP_LOAD(tm + 24 | 0, 4, 0) | 0,
+  tm_yday: SAFE_HEAP_LOAD(tm + 28 | 0, 4, 0) | 0,
+  tm_isdst: SAFE_HEAP_LOAD(tm + 32 | 0, 4, 0) | 0,
+  tm_gmtoff: SAFE_HEAP_LOAD(tm + 36 | 0, 4, 0) | 0,
+  tm_zone: tm_zone ? Pointer_stringify(tm_zone) : ""
+ };
+ var pattern = Pointer_stringify(format);
+ var EXPANSION_RULES_1 = {
+  "%c": "%a %b %d %H:%M:%S %Y",
+  "%D": "%m/%d/%y",
+  "%F": "%Y-%m-%d",
+  "%h": "%b",
+  "%r": "%I:%M:%S %p",
+  "%R": "%H:%M",
+  "%T": "%H:%M:%S",
+  "%x": "%m/%d/%y",
+  "%X": "%H:%M:%S"
+ };
+ 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:
+   return new Date(janFourth.getFullYear() - 1, 11, 29);
+  case 1:
+   return janFourth;
+  case 2:
+   return new Date(janFourth.getFullYear(), 0, 3);
+  case 3:
+   return new Date(janFourth.getFullYear(), 0, 2);
+  case 4:
+   return new Date(janFourth.getFullYear(), 0, 1);
+  case 5:
+   return new Date(janFourth.getFullYear() - 1, 11, 31);
+  case 6:
+   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) {
+   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) {
+   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) {
+   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) {
+   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);
+   if (compareByDay(firstSunday, endDate) < 0) {
+    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) {
+   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) {
+    return "53";
+   }
+   if (compareByDay(firstWeekStartNextYear, endDate) <= 0) {
+    return "01";
+   }
+   var daysDifference;
+   if (firstWeekStartThisYear.getFullYear() < date.tm_year + 1900) {
+    daysDifference = date.tm_yday + 32 - firstWeekStartThisYear.getDate();
+   } else {
+    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) {
+   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);
+   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) {
+   return (date.tm_year + 1900).toString().substring(2);
+  }),
+  "%Y": (function(date) {
+   return date.tm_year + 1900;
+  }),
+  "%z": (function(date) {
+   var off = date.tm_gmtoff;
+   var ahead = off >= 0;
+   off = Math.abs(off) / 60;
+   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 _time(ptr) {
+ var ret = Date.now() / 1e3 | 0;
+ if (ptr) {
+  SAFE_HEAP_STORE(ptr | 0, ret | 0, 4);
+ }
+ return ret;
+}
+function ___syscall142(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  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");
+  assert(!exceptfds, "exceptfds not supported");
+  var total = 0;
+  var srcReadLow = readfds ? SAFE_HEAP_LOAD(readfds | 0, 4, 0) | 0 : 0, 
srcReadHigh = readfds ? SAFE_HEAP_LOAD(readfds + 4 | 0, 4, 0) | 0 : 0;
+  var srcWriteLow = writefds ? SAFE_HEAP_LOAD(writefds | 0, 4, 0) | 0 : 0, 
srcWriteHigh = writefds ? SAFE_HEAP_LOAD(writefds + 4 | 0, 4, 0) | 0 : 0;
+  var srcExceptLow = exceptfds ? SAFE_HEAP_LOAD(exceptfds | 0, 4, 0) | 0 : 0, 
srcExceptHigh = exceptfds ? SAFE_HEAP_LOAD(exceptfds + 4 | 0, 4, 0) | 0 : 0;
+  var dstReadLow = 0, dstReadHigh = 0;
+  var dstWriteLow = 0, dstWriteHigh = 0;
+  var dstExceptLow = 0, dstExceptHigh = 0;
+  var allLow = (readfds ? SAFE_HEAP_LOAD(readfds | 0, 4, 0) | 0 : 0) | 
(writefds ? SAFE_HEAP_LOAD(writefds | 0, 4, 0) | 0 : 0) | (exceptfds ? 
SAFE_HEAP_LOAD(exceptfds | 0, 4, 0) | 0 : 0);
+  var allHigh = (readfds ? SAFE_HEAP_LOAD(readfds + 4 | 0, 4, 0) | 0 : 0) | 
(writefds ? SAFE_HEAP_LOAD(writefds + 4 | 0, 4, 0) | 0 : 0) | (exceptfds ? 
SAFE_HEAP_LOAD(exceptfds + 4 | 0, 4, 0) | 0 : 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;
+   }
+   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) {
+   SAFE_HEAP_STORE(readfds | 0, dstReadLow | 0, 4);
+   SAFE_HEAP_STORE(readfds + 4 | 0, dstReadHigh | 0, 4);
+  }
+  if (writefds) {
+   SAFE_HEAP_STORE(writefds | 0, dstWriteLow | 0, 4);
+   SAFE_HEAP_STORE(writefds + 4 | 0, dstWriteHigh | 0, 4);
+  }
+  if (exceptfds) {
+   SAFE_HEAP_STORE(exceptfds | 0, dstExceptLow | 0, 4);
+   SAFE_HEAP_STORE(exceptfds + 4 | 0, dstExceptHigh | 0, 4);
+  }
+  return total;
+ } catch (e) {
+  if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
+  return -e.errno;
+ }
+}
+function ___syscall140(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  var stream = SYSCALLS.getStreamFromFD(), offset_high = SYSCALLS.get(), 
offset_low = SYSCALLS.get(), result = SYSCALLS.get(), whence = SYSCALLS.get();
+  var offset = offset_low;
+  assert(offset_high === 0);
+  FS.llseek(stream, offset, whence);
+  SAFE_HEAP_STORE(result | 0, stream.position | 0, 4);
+  if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null;
+  return 0;
+ } catch (e) {
+  if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
+  return -e.errno;
+ }
+}
+function ___syscall146(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  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;
+ }
+}
+Module["___remdi3"] = ___remdi3;
+function ___syscall221(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  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;
+  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;
+    SAFE_HEAP_STORE(arg + offset | 0, 2 | 0, 2);
+    return 0;
+   }
+  case 13:
+  case 14:
+  case 13:
+  case 14:
+   return 0;
+  case 16:
+  case 8:
+   return -ERRNO_CODES.EINVAL;
+  case 9:
+   ___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 ___syscall145(which, varargs) {
+ SYSCALLS.varargs = varargs;
+ try {
+  var stream = SYSCALLS.getStreamFromFD(), iov = SYSCALLS.get(), iovcnt = 
SYSCALLS.get();
+  return SYSCALLS.doReadv(stream, iov, iovcnt);
+ } catch (e) {
+  if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e);
+  return -e.errno;
+ }
+}
+FS.staticInit();
+__ATINIT__.unshift((function() {
+ if (!Module["noFSInit"] && !FS.init.initialized) FS.init();
+}));
+__ATMAIN__.push((function() {
+ FS.ignorePermissions = false;
+}));
+__ATEXIT__.push((function() {
+ FS.quit();
+}));
+Module["FS_createFolder"] = FS.createFolder;
+Module["FS_createPath"] = FS.createPath;
+Module["FS_createDataFile"] = FS.createDataFile;
+Module["FS_createPreloadedFile"] = FS.createPreloadedFile;
+Module["FS_createLazyFile"] = FS.createLazyFile;
+Module["FS_createLink"] = FS.createLink;
+Module["FS_createDevice"] = FS.createDevice;
+Module["FS_unlink"] = FS.unlink;
+__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();
+}
+___buildEnvironment(ENV);
+DYNAMICTOP_PTR = allocate(1, "i32", ALLOC_STATIC);
+STACK_BASE = STACKTOP = Runtime.alignMemory(STATICTOP);
+STACK_MAX = STACK_BASE + TOTAL_STACK;
+DYNAMIC_BASE = Runtime.alignMemory(STACK_MAX);
+HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE;
+staticSealed = true;
+assert(DYNAMIC_BASE < TOTAL_MEMORY, "TOTAL_MEMORY not big enough for stack");
+var debug_table_iiii = [ "0", "_rijndael_setkey", "_rijndael_encrypt", 
"_rijndael_decrypt", "_run_selftests", "0", "0", "0", "0", "0", "0", 
"_rsa_encrypt", "_rsa_decrypt", "_rsa_sign", "_rsa_verify", "0", 
"_run_selftests_1202", "0", "0", "0", "0", "_run_selftests_1302", "0", "0", 
"0", "_run_selftests_1325", "0", "0", "0", "0", "_run_selftests_1348", "0", 
"_twofish_setkey", "_twofish_encrypt", "_twofish_decrypt", "0", "0", 
"_ecc_encrypt_raw", "_ecc_decrypt_raw", "_ecc_sign", "_ecc_verify" [...]
+var debug_table_viiiii = [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"__gcry_aes_cfb_enc", "__gcry_aes_cfb_dec", "0", "__gcry_aes_cbc_dec", 
"__gcry_aes_ctr_enc", "__gcry_aes_ocb_crypt", "0", "__gcry_twofish_cbc_dec", 
"__gcry_twofish_cfb_dec", "__gcr [...]
+var debug_table_vi = [ "0", "0", "0", "0", "0", "0", "0", "_rmd160_final", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "_sha1_final", "0", "0", 
"0", "_sha256_final", "0", "0", "0", "0", "_sha512_final", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "_ec_deinit", "0", 
"0", "0", "0", "0", [...]
+var debug_table_vii = [ "0", "0", "0", "0", "0", "_rmd160_init", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "_sha1_init", "0", "0", "0", 
"_sha224_init", "0", "0", "0", "_sha256_init", "_sha512_init", "0", "0", "0", 
"_sha384_init", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "_poly1305_init_ext_ref32", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0" ];
+var debug_table_ii = [ "0", "0", "0", "0", "0", "0", "0", "0", "_rmd160_read", 
"0", "_rsa_check_secret_key", "0", "0", "0", "0", "_rsa_get_nbits", "0", "0", 
"0", "0", "_sha1_read", "0", "0", "0", "_sha256_read", "0", "0", "0", "0", 
"_sha512_read", "0", "0", "0", "0", "0", "0", "_ecc_check_secret_key", "0", 
"0", "0", "0", "_ecc_get_nbits", "0", "0", "0", "__gcry_ecc_get_param_sexp", 
"0", "0", "0", "___stdio_close", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0" ];
+var debug_table_viii = [ "0", "0", "0", "0", "0", "0", 
"__gcry_md_block_write", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"__gcry_aes_ocb_auth", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "_add_randomness", "_entropy_ [...]
+var debug_table_v = [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "_prefetch_enc", 
"_prefetch_dec", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"_do_deinit", "0", "0", "0", "0 [...]
+var debug_table_iiiii = [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "_poly1305_finish_ext_ref32", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "_ghash_internal", 
"__gcry_rndlinux_gather_random", [...]
+var debug_table_viiiiii = [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "__gcry_aes_cbc_enc", "0", "0", "0", "0" ];
+var debug_table_iii = [ "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"_rsa_generate", "0", "0", "0", "0", "0", "0", "0", "_compute_keygrip", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"_ecc_generate", "0", "0", "0", "0", "0", "0", "0", "_compute_keygrip_1808", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "_pss_verify_cmp", "0", "0", "0", "0", "0", 
"_check_exponent", "0", "0", " [...]
+var debug_table_viiii = [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", 
"_reporter", "0", "0", "0", "0", "0", "0", "0" ];
+function nullFunc_iiii(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
iii: " + debug_table_iii[x] + "  ii: " + debug_table_ii[x] + "  iiiii: " + 
debug_table_iiiii[x] + "  viii: " + debug_table_viii[x] + "  viiii: " + 
debug_table_viiii[x] + "  vii: " + debug_table_vii[x] + "  vi: " + 
debug_table_vi[x] + "  viiiii: " + debug_table_viiiii[x] + "  viiiiii: " + 
debug_table_viiiiii[x] + "  v: " + debug_table_v[x] + "  ");
+ abort(x);
+}
+function nullFunc_viiiii(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
viii: " + debug_table_viii[x] + "  viiii: " + debug_table_viiii[x] + "  vii: " 
+ debug_table_vii[x] + "  vi: " + debug_table_vi[x] + "  viiiiii: " + 
debug_table_viiiiii[x] + "  v: " + debug_table_v[x] + "  iiii: " + 
debug_table_iiii[x] + "  iiiii: " + debug_table_iiiii[x] + "  iii: " + 
debug_table_iii[x] + "  ii: " + debug_table_ii[x] + "  ");
+ abort(x);
+}
+function nullFunc_vi(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
v: " + debug_table_v[x] + "  vii: " + debug_table_vii[x] + "  viii: " + 
debug_table_viii[x] + "  viiii: " + debug_table_viiii[x] + "  viiiii: " + 
debug_table_viiiii[x] + "  viiiiii: " + debug_table_viiiiii[x] + "  ii: " + 
debug_table_ii[x] + "  iii: " + debug_table_iii[x] + "  iiii: " + 
debug_table_iiii[x] + "  iiiii: " + debug_table_iiiii[x] + "  ");
+ abort(x);
+}
+function nullFunc_vii(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
vi: " + debug_table_vi[x] + "  viii: " + debug_table_viii[x] + "  v: " + 
debug_table_v[x] + "  viiii: " + debug_table_viiii[x] + "  viiiii: " + 
debug_table_viiiii[x] + "  viiiiii: " + debug_table_viiiiii[x] + "  ii: " + 
debug_table_ii[x] + "  iii: " + debug_table_iii[x] + "  iiii: " + 
debug_table_iiii[x] + "  iiiii: " + debug_table_iiiii[x] + "  ");
+ abort(x);
+}
+function nullFunc_ii(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
iii: " + debug_table_iii[x] + "  iiii: " + debug_table_iiii[x] + "  iiiii: " + 
debug_table_iiiii[x] + "  vii: " + debug_table_vii[x] + "  vi: " + 
debug_table_vi[x] + "  viii: " + debug_table_viii[x] + "  v: " + 
debug_table_v[x] + "  viiii: " + debug_table_viiii[x] + "  viiiii: " + 
debug_table_viiiii[x] + "  viiiiii: " + debug_table_viiiiii[x] + "  ");
+ abort(x);
+}
+function nullFunc_viii(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
vii: " + debug_table_vii[x] + "  vi: " + debug_table_vi[x] + "  viiii: " + 
debug_table_viiii[x] + "  v: " + debug_table_v[x] + "  viiiii: " + 
debug_table_viiiii[x] + "  viiiiii: " + debug_table_viiiiii[x] + "  iii: " + 
debug_table_iii[x] + "  ii: " + debug_table_ii[x] + "  iiii: " + 
debug_table_iiii[x] + "  iiiii: " + debug_table_iiiii[x] + "  ");
+ abort(x);
+}
+function nullFunc_v(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
vi: " + debug_table_vi[x] + "  vii: " + debug_table_vii[x] + "  viii: " + 
debug_table_viii[x] + "  viiii: " + debug_table_viiii[x] + "  viiiii: " + 
debug_table_viiiii[x] + "  viiiiii: " + debug_table_viiiiii[x] + "  ii: " + 
debug_table_ii[x] + "  iii: " + debug_table_iii[x] + "  iiii: " + 
debug_table_iiii[x] + "  iiiii: " + debug_table_iiiii[x] + "  ");
+ abort(x);
+}
+function nullFunc_iiiii(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
iiii: " + debug_table_iiii[x] + "  iii: " + debug_table_iii[x] + "  ii: " + 
debug_table_ii[x] + "  viiii: " + debug_table_viiii[x] + "  viii: " + 
debug_table_viii[x] + "  viiiii: " + debug_table_viiiii[x] + "  vii: " + 
debug_table_vii[x] + "  vi: " + debug_table_vi[x] + "  viiiiii: " + 
debug_table_viiiiii[x] + "  v: " + debug_table_v[x] + "  ");
+ abort(x);
+}
+function nullFunc_viiiiii(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
viii: " + debug_table_viii[x] + "  viiii: " + debug_table_viiii[x] + "  viiiii: 
" + debug_table_viiiii[x] + "  vii: " + debug_table_vii[x] + "  vi: " + 
debug_table_vi[x] + "  v: " + debug_table_v[x] + "  iiii: " + 
debug_table_iiii[x] + "  iiiii: " + debug_table_iiiii[x] + "  iii: " + 
debug_table_iii[x] + "  ii: " + debug_table_ii[x] + "  ");
+ abort(x);
+}
+function nullFunc_iii(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
ii: " + debug_table_ii[x] + "  iiii: " + debug_table_iiii[x] + "  iiiii: " + 
debug_table_iiiii[x] + "  viii: " + debug_table_viii[x] + "  vii: " + 
debug_table_vii[x] + "  vi: " + debug_table_vi[x] + "  viiii: " + 
debug_table_viiii[x] + "  viiiii: " + debug_table_viiiii[x] + "  v: " + 
debug_table_v[x] + "  viiiiii: " + debug_table_viiiiii[x] + "  ");
+ abort(x);
+}
+function nullFunc_viiii(x) {
+ Module["printErr"]("Invalid function pointer '" + x + "' 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)");
+ Module["printErr"]("This pointer might make sense in another type signature: 
viii: " + debug_table_viii[x] + "  vii: " + debug_table_vii[x] + "  vi: " + 
debug_table_vi[x] + "  viiiii: " + debug_table_viiiii[x] + "  viiiiii: " + 
debug_table_viiiiii[x] + "  v: " + debug_table_v[x] + "  iiii: " + 
debug_table_iiii[x] + "  iii: " + debug_table_iii[x] + "  ii: " + 
debug_table_ii[x] + "  iiiii: " + debug_table_iiiii[x] + "  ");
+ abort(x);
+}
+function invoke_iiii(index, a1, a2, a3) {
+ try {
+  return Module["dynCall_iiii"](index, a1, a2, a3);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_viiiii(index, a1, a2, a3, a4, a5) {
+ try {
+  Module["dynCall_viiiii"](index, a1, a2, a3, a4, a5);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_vi(index, a1) {
+ try {
+  Module["dynCall_vi"](index, a1);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_vii(index, a1, a2) {
+ try {
+  Module["dynCall_vii"](index, a1, a2);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_ii(index, a1) {
+ try {
+  return Module["dynCall_ii"](index, a1);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_viii(index, a1, a2, a3) {
+ try {
+  Module["dynCall_viii"](index, a1, a2, a3);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_v(index) {
+ try {
+  Module["dynCall_v"](index);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_iiiii(index, a1, a2, a3, a4) {
+ try {
+  return Module["dynCall_iiiii"](index, a1, a2, a3, a4);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_viiiiii(index, a1, a2, a3, a4, a5, a6) {
+ try {
+  Module["dynCall_viiiiii"](index, a1, a2, a3, a4, a5, a6);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_iii(index, a1, a2) {
+ try {
+  return Module["dynCall_iii"](index, a1, a2);
+ } catch (e) {
+  if (typeof e !== "number" && e !== "longjmp") throw e;
+  Module["setThrew"](1, 0);
+ }
+}
+function invoke_viiii(index, a1, a2, a3, a4) {
+ try {
+  Module["dynCall_viiii"](index, a1, a2, a3, a4);
+ } catch (e) {
+  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,
+ "segfault": segfault,
+ "alignfault": alignfault,
+ "ftfault": ftfault,
+ "nullFunc_iiii": nullFunc_iiii,
+ "nullFunc_viiiii": nullFunc_viiiii,
+ "nullFunc_vi": nullFunc_vi,
+ "nullFunc_vii": nullFunc_vii,
+ "nullFunc_ii": nullFunc_ii,
+ "nullFunc_viii": nullFunc_viii,
+ "nullFunc_v": nullFunc_v,
+ "nullFunc_iiiii": nullFunc_iiiii,
+ "nullFunc_viiiiii": nullFunc_viiiiii,
+ "nullFunc_iii": nullFunc_iii,
+ "nullFunc_viiii": nullFunc_viiii,
+ "invoke_iiii": invoke_iiii,
+ "invoke_viiiii": invoke_viiiii,
+ "invoke_vi": invoke_vi,
+ "invoke_vii": invoke_vii,
+ "invoke_ii": invoke_ii,
+ "invoke_viii": invoke_viii,
+ "invoke_v": invoke_v,
+ "invoke_iiiii": invoke_iiiii,
+ "invoke_viiiiii": invoke_viiiiii,
+ "invoke_iii": invoke_iii,
+ "invoke_viiii": invoke_viiii,
+ "___syscall221": ___syscall221,
+ "_pthread_mutex_init": _pthread_mutex_init,
+ "___syscall64": ___syscall64,
+ "_abort": _abort,
+ "___syscall202": ___syscall202,
+ "___syscall20": ___syscall20,
+ "_llvm_stackrestore": _llvm_stackrestore,
+ "___assert_fail": ___assert_fail,
+ "___buildEnvironment": ___buildEnvironment,
+ "__addDays": __addDays,
+ "_localtime_r": _localtime_r,
+ "_tzset": _tzset,
+ "___setErrNo": ___setErrNo,
+ "___syscall192": ___syscall192,
+ "___syscall197": ___syscall197,
+ "___syscall195": ___syscall195,
+ "___syscall194": ___syscall194,
+ "___syscall199": ___syscall199,
+ "_sysconf": _sysconf,
+ "_strftime": _strftime,
+ "_clock": _clock,
+ "__arraySum": __arraySum,
+ "_emscripten_memcpy_big": _emscripten_memcpy_big,
+ "___syscall91": ___syscall91,
+ "_pthread_mutex_destroy": _pthread_mutex_destroy,
+ "_llvm_stacksave": _llvm_stacksave,
+ "___syscall77": ___syscall77,
+ "_getenv": _getenv,
+ "___syscall33": ___syscall33,
+ "___syscall54": ___syscall54,
+ "___unlock": ___unlock,
+ "__isLeapYear": __isLeapYear,
+ "___syscall3": ___syscall3,
+ "___lock": ___lock,
+ "___syscall6": ___syscall6,
+ "___syscall5": ___syscall5,
+ "___syscall4": ___syscall4,
+ "_time": _time,
+ "_gettimeofday": _gettimeofday,
+ "___syscall201": ___syscall201,
+ "_atexit": _atexit,
+ "___syscall140": ___syscall140,
+ "_localtime": _localtime,
+ "___syscall142": ___syscall142,
+ "___syscall145": ___syscall145,
+ "___syscall146": ___syscall146,
+ "DYNAMICTOP_PTR": DYNAMICTOP_PTR,
+ "tempDoublePtr": tempDoublePtr,
+ "ABORT": ABORT,
+ "STACKTOP": STACKTOP,
+ "STACK_MAX": STACK_MAX,
+ "cttz_i8": cttz_i8
+};
+// EMSCRIPTEN_START_ASM
+
+var asm = (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 ABORT=env.ABORT|0;
+  var STACKTOP=env.STACKTOP|0;
+  var STACK_MAX=env.STACK_MAX|0;
+  var cttz_i8=env.cttz_i8|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, tempBigIntP = 0, tempBigIntS = 0, 
tempBigIntR = 0.0, tempBigIntI = 0, tempBigIntD = 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 segfault=env.segfault;
+  var alignfault=env.alignfault;
+  var ftfault=env.ftfault;
+  var nullFunc_iiii=env.nullFunc_iiii;
+  var nullFunc_viiiii=env.nullFunc_viiiii;
+  var nullFunc_vi=env.nullFunc_vi;
+  var nullFunc_vii=env.nullFunc_vii;
+  var nullFunc_ii=env.nullFunc_ii;
+  var nullFunc_viii=env.nullFunc_viii;
+  var nullFunc_v=env.nullFunc_v;
+  var nullFunc_iiiii=env.nullFunc_iiiii;
+  var nullFunc_viiiiii=env.nullFunc_viiiiii;
+  var nullFunc_iii=env.nullFunc_iii;
+  var nullFunc_viiii=env.nullFunc_viiii;
+  var invoke_iiii=env.invoke_iiii;
+  var invoke_viiiii=env.invoke_viiiii;
+  var invoke_vi=env.invoke_vi;
+  var invoke_vii=env.invoke_vii;
+  var invoke_ii=env.invoke_ii;
+  var invoke_viii=env.invoke_viii;
+  var invoke_v=env.invoke_v;
+  var invoke_iiiii=env.invoke_iiiii;
+  var invoke_viiiiii=env.invoke_viiiiii;
+  var invoke_iii=env.invoke_iii;
+  var invoke_viiii=env.invoke_viiii;
+  var ___syscall221=env.___syscall221;
+  var _pthread_mutex_init=env._pthread_mutex_init;
+  var ___syscall64=env.___syscall64;
+  var _abort=env._abort;
+  var ___syscall202=env.___syscall202;
+  var ___syscall20=env.___syscall20;
+  var _llvm_stackrestore=env._llvm_stackrestore;
+  var ___assert_fail=env.___assert_fail;
+  var ___buildEnvironment=env.___buildEnvironment;
+  var __addDays=env.__addDays;
+  var _localtime_r=env._localtime_r;
+  var _tzset=env._tzset;
+  var ___setErrNo=env.___setErrNo;
+  var ___syscall192=env.___syscall192;
+  var ___syscall197=env.___syscall197;
+  var ___syscall195=env.___syscall195;
+  var ___syscall194=env.___syscall194;
+  var ___syscall199=env.___syscall199;
+  var _sysconf=env._sysconf;
+  var _strftime=env._strftime;
+  var _clock=env._clock;
+  var __arraySum=env.__arraySum;
+  var _emscripten_memcpy_big=env._emscripten_memcpy_big;
+  var ___syscall91=env.___syscall91;
+  var _pthread_mutex_destroy=env._pthread_mutex_destroy;
+  var _llvm_stacksave=env._llvm_stacksave;
+  var ___syscall77=env.___syscall77;
+  var _getenv=env._getenv;
+  var ___syscall33=env.___syscall33;
+  var ___syscall54=env.___syscall54;
+  var ___unlock=env.___unlock;
+  var __isLeapYear=env.__isLeapYear;
+  var ___syscall3=env.___syscall3;
+  var ___lock=env.___lock;
+  var ___syscall6=env.___syscall6;
+  var ___syscall5=env.___syscall5;
+  var ___syscall4=env.___syscall4;
+  var _time=env._time;
+  var _gettimeofday=env._gettimeofday;
+  var ___syscall201=env.___syscall201;
+  var _atexit=env._atexit;
+  var ___syscall140=env.___syscall140;
+  var _localtime=env._localtime;
+  var ___syscall142=env.___syscall142;
+  var ___syscall145=env.___syscall145;
+  var ___syscall146=env.___syscall146;
+  var tempFloat = 0.0;
+
 // EMSCRIPTEN_START_FUNCS
-function go(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var 
e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;e=l;l=l+16|0;if((l|0)>=(m|0))$(16);f=e+12|0;g=e+8|0;h=e+4|0;i=e;Ob(f|0,a|0,4);Ob(g|0,b|0,4);Ob(h|0,c|0,4);Ob(i|0,d|0,4);En(Qb((Qb(i|0,4,0)|0|0)+48+16|0,4,0)|0|0,Qb((Qb(g|0,4,0)|0|0)+8|0,4,0)|0|0,Qb((Qb(h|0,4,0)|0|0)+8|0,4,0)|0|0,Qb(i|0,4,0)|0|0);Zn(Qb((Qb(i|0,4,0)|0|0)+48+16
 [...]
-function Ib(a){a=a|0;var 
b=0;b=l;l=l+a|0;l=l+15&-16;if((l|0)>=(m|0))$(a|0);return b|0}function 
Jb(){return l|0}function Kb(a){a=a|0;l=a}function 
Lb(a,b){a=a|0;b=b|0;l=a;m=b}function 
Mb(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Nb(a){a=a|0;Ob(i|0,a|0,4)}function 
Ob(d,e,f){d=d|0;e=e|0;f=f|0;if((d|0)<=0)aa();if((d+f|0)>(c[i>>2]|0))aa();if((f|0)==4){if(d&3)ba();c[d>>2]=e}else
 if((f|0)==1)a[d>>0]=e;else{if(d&1)ba();b[d>>1]=e}}function 
Pb(a,b,d){a=a|0;b=+b;d=d|0;if((a|0)<=0)aa();if((a+d|0)>(c[ [...]
-function pq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var 
f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=l;l=l+64|0;if((l|0)>=(m|0))$(64);g=f+56|0;h=f+52|0;i=f+48|0;j=f+44|0;k=f+40|0;n=f+36|0;o=f+32|0;p=f+28|0;q=f+24|0;r=f+20|0;s=f+16|0;t=f+12|0;u=f+8|0;v=f+4|0;w=f;x=f+60|0;Ob(h|0,a|0,4);Ob(i|0,b|0,4);Ob(j|0,c|0,4);Ob(k|0,d|0,4);Ob(n|0,e|0,4);Ob(r|0,Qb((Qb((Qb(h|0,4,0)|0|0)+12|0,4,0)|0|0)+20|0,4,0)|0|0,4);Ob(s|0,Qb((Qb((Qb(h|0,4,0)|0|0)+12|0,4,0)|0|0)+36|0,4,0)|
 [...]
-function og(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var 
e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=l;l=l+80|0;if((l|0)>=(m|0))$(80);f=e;g=e+48|0;h=e+44|0;i=e+40|0;j=e+36|0;k=e+32|0;n=e+28|0;o=e+24|0;p=e+52|0;q=e+56|0;r=e+20|0;s=e+16|0;t=e+12|0;u=e+8|0;v=e+4|0;Ob(h|0,a|0,4);Ob(i|0,b|0,4);Ob(j|0,c|0,4);Ob(k|0,d|0,4);Ob(r|0,0|0,4);Ob(t|0,0|0,4);Ob(n|0,(Qb(h|0,4,0)|0|0?Qb(h|0,4,0)|0|0:22772)|0,4);Ob(o|0,Qb(j|0,4,0)|0|0,4);a:while(1){if(!(Qb((Qb(n|0,4,0)|0)>>0|0,1,1)|0
 [...]
-function Wj(a,b,c){a=a|0;b=b|0;c=c|0;var 
d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;d=l;l=l+160|0;if((l|0)>=(m|0))$(160);e=d+144|0;f=d+140|0;g=d+136|0;h=d+132|0;i=d+128|0;j=d+124|0;k=d+120|0;n=d+116|0;o=d+112|0;p=d+108|0;q=d+104|0;r=d+100|0;s=d+96|0;t=d+92|0;u=d+88|0;v=d+84|0;w=d+80|0;x=d+76|0;y=d+72|0;z=d+68|0;A=d+64|0;B=d+60|0;C=d+56|0;D=d+52|0;E=d+48|0;F=d+44|0;G=d+40|0
 [...]
-function Ts(a,b,c){a=a|0;b=b|0;c=c|0;var 
d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;if((l|0)>=(m|0))$(16);e=d;f=d+12|0;g=d+8|0;h=d+4|0;Ob(f|0,a|0,4);Ob(g|0,b|0,4);Ob(h|0,c|0,4);if(!(Qb(f|0,4,0)|0))$e(52740,51405,685,52763);if(!(Qb(h|0,4,0)|0))$e(51625,51405,686,52763);Ns(Qb(h|0,4,0)|0|0);do
 
if(!(Qb((Qb(h|0,4,0)|0|0)+4|0,4,0)|0)){if((Qb(h|0,4,0)|0|0)==(Qb(17790*4|0,4,0)|0|0)){c=Us(1)|0;Ob((Qb(h|0,4,0)|0|0)+4|0,c|0,4)}else{c=Us(0)|0;Ob((Qb(h|0,4,0)|0|0)+4|0,c|0,4)}if(Qb((Qb(h|0,4,0)|0|0)+4|0,4,0)|0|
 [...]
-function Tm(a,b,c){a=a|0;b=b|0;c=c|0;var 
d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;d=l;l=l+64|0;if((l|0)>=(m|0))$(64);e=d;f=d+36|0;g=d+32|0;h=d+28|0;i=d+24|0;j=d+20|0;k=d+16|0;n=d+12|0;o=d+8|0;p=d+4|0;q=d+56|0;r=d+55|0;s=d+54|0;t=d+53|0;u=d+52|0;v=d+51|0;w=d+50|0;x=d+49|0;y=d+48|0;z=d+47|0;A=d+46|0;B=d+45|0;C=d+44|0;D=d+43|0;E=d+42|0;F=d+41|0;G=d+40|0;Ob(g|0,a|0,4);Ob(h|0,b|0,4);Ob(i|0,c|0,4);Ob(q>>0|0,0|0,1);Ob(r>
 [...]
-function Xl(a){a=a|0;var 
b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=l;l=l+32|0;if((l|0)>=(m|0))$(32);c=b+28|0;d=b+24|0;e=b+20|0;f=b+16|0;g=b+12|0;h=b+8|0;i=b+4|0;j=b;Ob(c|0,a|0,4);Ob(d|0,Qb(c|0,4,0)|0|0,4);Wr(Qb(d|0,4,0)|0|0,0,0);Ob(e|0,Qb((Qb(d|0,4,0)|0|0)+128|0,4,0)|0|0,4);Ob(f|0,Qb((Qb(d|0,4,0)|0|0)+128+4|0,4,0)|0|0,4);Ob(h|0,(Qb(e|0,4,0)|0)<<6|0,4);Ob(g|0,(Qb(f|0,4,0)|0)<<6|(Qb(e|0,4,0)|0|0)>>>26|0,4);Ob(e|0,Qb(h|0,4,0)|0|0,4);f=(Qb(h|0,4,0)|0|0)+(Qb((Qb(d|0,4,0)|0|0)+144|0,4,0)|0|0)|
 [...]
-function Tw(a){a=a|0;var 
b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0;b=l;l=l+16|0;if((l|0)>=(m|0))$(16);c=b;do
 
if(a>>>0<245){d=a>>>0<11?16:a+11&-8;e=d>>>3;f=Qb(17827*4|0,4,0)|0|0;g=f>>>e;if(g&3|0)
 [...]
 
-// EMSCRIPTEN_END_FUNCS
-var 
xb=[Gx,lk,mk,nk,ok,zl,Al,Bl,Cl,El,Zl,jm,zm,Mm,Nm,Om,Ir,Jr,Kr,Lr,Nr,bi,ds,Du,Eu,Hu,ov,bf,Ov,Ek,Fk,el,am,nm,Dm,Ku,Hx,Ix,Jx,Kx,Lx,Mx,Nx,Ox,Px,Qx,Rx,Sx,Tx,Ux,Vx,Wx,Xx,Yx,Zx,_x,$x,ay,by,cy,dy,ey,fy,gy];var
 yb=[hy,Tk,Nk,Qk,Rk,Xk,$m,Ym,an,iy,jy,ky,ly,my,ny,oy];var 
zb=[py,bl,Xl,hm,xm,Qn,Iu,Lu,rw,qy,ry,sy,ty,uy,vy,wy];var 
Ab=[xy,al,Wl,gm,vm,wm,Lm,cs];var 
Bb=[yy,cl,yl,Dl,Yl,im,ym,Hr,Mr,gi,Cu,zy,Ay,By,Cy,Dy];var 
Cb=[Ey,Wr,$k,qs,ct,st,Au,Fy];var Db=[Gy,yk,zk,au];var 
Eb=[Hy,es,Wq,ns,wt,Iy,Jy,Ky]; [...]
+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;
+ $3 = sp + 8 | 0;
+ $4 = sp + 4264 | 0;
+ $5 = $2 + -16 | 0;
+ $6 = $5 | 16;
+ $7 = ($6 | 0) == 16;
+ if (!$7) {
+  $$01913 = 44;
+  STACKTOP = sp;
+  return $$01913 | 0;
+ }
+ $8 = SAFE_HEAP_LOAD(17618 * 4 | 0, 4, 0) | 0 | 0;
+ $9 = ($8 | 0) == 0;
+ do {
+  if ($9) {
+   SAFE_HEAP_STORE(17618 * 4 | 0, 1 | 0, 4);
+   _do_twofish_setkey($3, 43199, 16) | 0;
+   ___gcry_burn_stack(47);
+   _twofish_encrypt($3, $4, 43215) | 0;
+   $10 = _memcmp($4, 43231, 16) | 0;
+   $11 = ($10 | 0) == 0;
+   if ($11) {
+    _twofish_decrypt($3, $4, $4) | 0;
+    $12 = _memcmp($4, 43215, 16) | 0;
+    $13 = ($12 | 0) == 0;
+    if ($13) {
+     _do_twofish_setkey($3, 43247, 32) | 0;
+     ___gcry_burn_stack(47);
+     _twofish_encrypt($3, $4, 43279) | 0;
+     $14 = _memcmp($4, 43295, 16) | 0;
+     $15 = ($14 | 0) == 0;
+     if ($15) {
+      _twofish_decrypt($3, $4, $4) | 0;
+      $16 = _memcmp($4, 43279, 16) | 0;
+      $17 = ($16 | 0) == 0;
+      if ($17) {
+       $18 = __gcry_selftest_helper_ctr(43191, 32, 33, 66, 4, 16, 4256) | 0;
+       $19 = ($18 | 0) == (0 | 0);
+       if ($19) {
+        $20 = __gcry_selftest_helper_cbc(43191, 32, 33, 64, 5, 16, 4256) | 0;
+        $21 = ($20 | 0) == (0 | 0);
+        if ($21) {
+         $22 = __gcry_selftest_helper_cfb(43191, 32, 33, 65, 5, 16, 4256) | 0;
+         SAFE_HEAP_STORE(17619 * 4 | 0, $22 | 0, 4);
+         $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 = 43311;
+       label = 9;
+      }
+     } else {
+      $$0$i$ph = 43347;
+      label = 9;
+     }
+    } else {
+     $$0$i$ph = 43383;
+     label = 9;
+    }
+   } else {
+    $$0$i$ph = 43419;
+    label = 9;
+   }
+   if ((label | 0) == 9) {
+    SAFE_HEAP_STORE(17619 * 4 | 0, $$0$i$ph | 0, 4);
+    $$0$i1914 = $$0$i$ph;
+   }
+   SAFE_HEAP_STORE($vararg_buffer | 0, $$0$i1914 | 0, 4);
+   __gcry_log_error(43455, $vararg_buffer);
+   label = 12;
+  } else {
+   label = 12;
+  }
+ } while (0);
+ if ((label | 0) == 12) {
+  $$pr = SAFE_HEAP_LOAD(17619 * 4 | 0, 4, 0) | 0 | 0;
+  $24 = ($$pr | 0) == (0 | 0);
+  if (!$24) {
+   $$01913 = 50;
+   STACKTOP = sp;
+   return $$01913 | 0;
+  }
+ }
+ $25 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $26 = $25 << 24 >> 24 == 0;
+ if ($26) {
+  $$01883 = 0;
+  $$01891 = 0;
+  $$01899 = 0;
+ } else {
+  $27 = $25 & 255;
+  $28 = $27 + -1 | 0;
+  $29 = 43459 + $28 | 0;
+  $30 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+  $31 = $30 & 255;
+  $32 = 43714 + $31 | 0;
+  $33 = SAFE_HEAP_LOAD($32 >> 0 | 0, 1, 0) | 0 | 0;
+  $34 = $31 + 45 | 0;
+  $35 = 43714 + $34 | 0;
+  $36 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+  $37 = $31 + 1 | 0;
+  $38 = 43714 + $37 | 0;
+  $39 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+  $$01883 = $39;
+  $$01891 = $36;
+  $$01899 = $33;
+ }
+ $40 = $1 + 1 | 0;
+ $41 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 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 = 43459 + $44 | 0;
+  $46 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+  $47 = $46 & 255;
+  $48 = $47 + 45 | 0;
+  $49 = 43714 + $48 | 0;
+  $50 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+  $51 = $50 ^ $$01899;
+  $52 = $47 + 164 | 0;
+  $53 = 43714 + $52 | 0;
+  $54 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+  $55 = $54 ^ $$01891;
+  $56 = $47 + 68 | 0;
+  $57 = 43714 + $56 | 0;
+  $58 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+  $59 = $58 ^ $$01883;
+  $60 = $47 + 138 | 0;
+  $61 = 43714 + $60 | 0;
+  $62 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+  $63 = $62 ^ $$01891;
+  $$11876 = $63;
+  $$11884 = $59;
+  $$11892 = $55;
+  $$11900 = $51;
+ }
+ $64 = $1 + 2 | 0;
+ $65 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 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 = 43459 + $68 | 0;
+  $70 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+  $71 = $70 & 255;
+  $72 = $71 + 138 | 0;
+  $73 = 43714 + $72 | 0;
+  $74 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+  $75 = $74 ^ $$11900;
+  $76 = $71 + 213 | 0;
+  $77 = 43714 + $76 | 0;
+  $78 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+  $79 = $78 ^ $$11892;
+  $80 = $71 + 191 | 0;
+  $81 = 43714 + $80 | 0;
+  $82 = SAFE_HEAP_LOAD($81 >> 0 | 0, 1, 0) | 0 | 0;
+  $83 = $82 ^ $$11884;
+  $84 = $71 + 209 | 0;
+  $85 = 43714 + $84 | 0;
+  $86 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+  $87 = $86 ^ $$11876;
+  $$21877 = $87;
+  $$21885 = $83;
+  $$21893 = $79;
+  $$21901 = $75;
+ }
+ $88 = $1 + 3 | 0;
+ $89 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 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 = 43459 + $92 | 0;
+  $94 = SAFE_HEAP_LOAD($93 >> 0 | 0, 1, 0) | 0 | 0;
+  $95 = $94 & 255;
+  $96 = $95 + 209 | 0;
+  $97 = 43714 + $96 | 0;
+  $98 = SAFE_HEAP_LOAD($97 >> 0 | 0, 1, 0) | 0 | 0;
+  $99 = $98 ^ $$21901;
+  $100 = $95 + 127 | 0;
+  $101 = 43714 + $100 | 0;
+  $102 = SAFE_HEAP_LOAD($101 >> 0 | 0, 1, 0) | 0 | 0;
+  $103 = $102 ^ $$21893;
+  $104 = $95 + 61 | 0;
+  $105 = 43714 + $104 | 0;
+  $106 = SAFE_HEAP_LOAD($105 >> 0 | 0, 1, 0) | 0 | 0;
+  $107 = $106 ^ $$21885;
+  $108 = $95 + 153 | 0;
+  $109 = 43714 + $108 | 0;
+  $110 = SAFE_HEAP_LOAD($109 >> 0 | 0, 1, 0) | 0 | 0;
+  $111 = $110 ^ $$21877;
+  $$31878 = $111;
+  $$31886 = $107;
+  $$31894 = $103;
+  $$31902 = $99;
+ }
+ $112 = $1 + 4 | 0;
+ $113 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 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 = 43459 + $116 | 0;
+  $118 = SAFE_HEAP_LOAD($117 >> 0 | 0, 1, 0) | 0 | 0;
+  $119 = $118 & 255;
+  $120 = $119 + 153 | 0;
+  $121 = 43714 + $120 | 0;
+  $122 = SAFE_HEAP_LOAD($121 >> 0 | 0, 1, 0) | 0 | 0;
+  $123 = $122 ^ $$31902;
+  $124 = $119 + 70 | 0;
+  $125 = 43714 + $124 | 0;
+  $126 = SAFE_HEAP_LOAD($125 >> 0 | 0, 1, 0) | 0 | 0;
+  $127 = $126 ^ $$31894;
+  $128 = $119 + 102 | 0;
+  $129 = 43714 + $128 | 0;
+  $130 = SAFE_HEAP_LOAD($129 >> 0 | 0, 1, 0) | 0 | 0;
+  $131 = $130 ^ $$31886;
+  $132 = $119 + 150 | 0;
+  $133 = 43714 + $132 | 0;
+  $134 = SAFE_HEAP_LOAD($133 >> 0 | 0, 1, 0) | 0 | 0;
+  $135 = $134 ^ $$31878;
+  $$41879 = $135;
+  $$41887 = $131;
+  $$41895 = $127;
+  $$41903 = $123;
+ }
+ $136 = $1 + 5 | 0;
+ $137 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 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 = 43459 + $140 | 0;
+  $142 = SAFE_HEAP_LOAD($141 >> 0 | 0, 1, 0) | 0 | 0;
+  $143 = $142 & 255;
+  $144 = $143 + 150 | 0;
+  $145 = 43714 + $144 | 0;
+  $146 = SAFE_HEAP_LOAD($145 >> 0 | 0, 1, 0) | 0 | 0;
+  $147 = $146 ^ $$41903;
+  $148 = $143 + 60 | 0;
+  $149 = 43714 + $148 | 0;
+  $150 = SAFE_HEAP_LOAD($149 >> 0 | 0, 1, 0) | 0 | 0;
+  $151 = $150 ^ $$41895;
+  $152 = $143 + 91 | 0;
+  $153 = 43714 + $152 | 0;
+  $154 = SAFE_HEAP_LOAD($153 >> 0 | 0, 1, 0) | 0 | 0;
+  $155 = $154 ^ $$41887;
+  $156 = $143 + 237 | 0;
+  $157 = 43714 + $156 | 0;
+  $158 = SAFE_HEAP_LOAD($157 >> 0 | 0, 1, 0) | 0 | 0;
+  $159 = $158 ^ $$41879;
+  $$51880 = $159;
+  $$51888 = $155;
+  $$51896 = $151;
+  $$51904 = $147;
+ }
+ $160 = $1 + 6 | 0;
+ $161 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 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 = 43459 + $164 | 0;
+  $166 = SAFE_HEAP_LOAD($165 >> 0 | 0, 1, 0) | 0 | 0;
+  $167 = $166 & 255;
+  $168 = $167 + 237 | 0;
+  $169 = 43714 + $168 | 0;
+  $170 = SAFE_HEAP_LOAD($169 >> 0 | 0, 1, 0) | 0 | 0;
+  $171 = $170 ^ $$51904;
+  $172 = $167 + 55 | 0;
+  $173 = 43714 + $172 | 0;
+  $174 = SAFE_HEAP_LOAD($173 >> 0 | 0, 1, 0) | 0 | 0;
+  $175 = $174 ^ $$51896;
+  $176 = $167 + 79 | 0;
+  $177 = 43714 + $176 | 0;
+  $178 = SAFE_HEAP_LOAD($177 >> 0 | 0, 1, 0) | 0 | 0;
+  $179 = $178 ^ $$51888;
+  $180 = $167 + 224 | 0;
+  $181 = 43714 + $180 | 0;
+  $182 = SAFE_HEAP_LOAD($181 >> 0 | 0, 1, 0) | 0 | 0;
+  $183 = $182 ^ $$51880;
+  $$61881 = $183;
+  $$61889 = $179;
+  $$61897 = $175;
+  $$61905 = $171;
+ }
+ $184 = $1 + 7 | 0;
+ $185 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 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 = 43459 + $188 | 0;
+  $190 = SAFE_HEAP_LOAD($189 >> 0 | 0, 1, 0) | 0 | 0;
+  $191 = $190 & 255;
+  $192 = $191 + 224 | 0;
+  $193 = 43714 + $192 | 0;
+  $194 = SAFE_HEAP_LOAD($193 >> 0 | 0, 1, 0) | 0 | 0;
+  $195 = $194 ^ $$61905;
+  $196 = $191 + 208 | 0;
+  $197 = 43714 + $196 | 0;
+  $198 = SAFE_HEAP_LOAD($197 >> 0 | 0, 1, 0) | 0 | 0;
+  $199 = $198 ^ $$61897;
+  $200 = $191 + 140 | 0;
+  $201 = 43714 + $200 | 0;
+  $202 = SAFE_HEAP_LOAD($201 >> 0 | 0, 1, 0) | 0 | 0;
+  $203 = $202 ^ $$61889;
+  $204 = $191 + 23 | 0;
+  $205 = 43714 + $204 | 0;
+  $206 = SAFE_HEAP_LOAD($205 >> 0 | 0, 1, 0) | 0 | 0;
+  $207 = $206 ^ $$61881;
+  $$71882 = $207;
+  $$71890 = $203;
+  $$71898 = $199;
+  $$71906 = $195;
+ }
+ $208 = $1 + 8 | 0;
+ $209 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $210 = $209 << 24 >> 24 == 0;
+ if ($210) {
+  $$01851 = 0;
+  $$01859 = 0;
+  $$01867 = 0;
+ } else {
+  $211 = $209 & 255;
+  $212 = $211 + -1 | 0;
+  $213 = 43459 + $212 | 0;
+  $214 = SAFE_HEAP_LOAD($213 >> 0 | 0, 1, 0) | 0 | 0;
+  $215 = $214 & 255;
+  $216 = 43714 + $215 | 0;
+  $217 = SAFE_HEAP_LOAD($216 >> 0 | 0, 1, 0) | 0 | 0;
+  $218 = $215 + 45 | 0;
+  $219 = 43714 + $218 | 0;
+  $220 = SAFE_HEAP_LOAD($219 >> 0 | 0, 1, 0) | 0 | 0;
+  $221 = $215 + 1 | 0;
+  $222 = 43714 + $221 | 0;
+  $223 = SAFE_HEAP_LOAD($222 >> 0 | 0, 1, 0) | 0 | 0;
+  $$01851 = $223;
+  $$01859 = $220;
+  $$01867 = $217;
+ }
+ $224 = $1 + 9 | 0;
+ $225 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 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 = 43459 + $228 | 0;
+  $230 = SAFE_HEAP_LOAD($229 >> 0 | 0, 1, 0) | 0 | 0;
+  $231 = $230 & 255;
+  $232 = $231 + 45 | 0;
+  $233 = 43714 + $232 | 0;
+  $234 = SAFE_HEAP_LOAD($233 >> 0 | 0, 1, 0) | 0 | 0;
+  $235 = $234 ^ $$01867;
+  $236 = $231 + 164 | 0;
+  $237 = 43714 + $236 | 0;
+  $238 = SAFE_HEAP_LOAD($237 >> 0 | 0, 1, 0) | 0 | 0;
+  $239 = $238 ^ $$01859;
+  $240 = $231 + 68 | 0;
+  $241 = 43714 + $240 | 0;
+  $242 = SAFE_HEAP_LOAD($241 >> 0 | 0, 1, 0) | 0 | 0;
+  $243 = $242 ^ $$01851;
+  $244 = $231 + 138 | 0;
+  $245 = 43714 + $244 | 0;
+  $246 = SAFE_HEAP_LOAD($245 >> 0 | 0, 1, 0) | 0 | 0;
+  $247 = $246 ^ $$01859;
+  $$11844 = $247;
+  $$11852 = $243;
+  $$11860 = $239;
+  $$11868 = $235;
+ }
+ $248 = $1 + 10 | 0;
+ $249 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 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 = 43459 + $252 | 0;
+  $254 = SAFE_HEAP_LOAD($253 >> 0 | 0, 1, 0) | 0 | 0;
+  $255 = $254 & 255;
+  $256 = $255 + 138 | 0;
+  $257 = 43714 + $256 | 0;
+  $258 = SAFE_HEAP_LOAD($257 >> 0 | 0, 1, 0) | 0 | 0;
+  $259 = $258 ^ $$11868;
+  $260 = $255 + 213 | 0;
+  $261 = 43714 + $260 | 0;
+  $262 = SAFE_HEAP_LOAD($261 >> 0 | 0, 1, 0) | 0 | 0;
+  $263 = $262 ^ $$11860;
+  $264 = $255 + 191 | 0;
+  $265 = 43714 + $264 | 0;
+  $266 = SAFE_HEAP_LOAD($265 >> 0 | 0, 1, 0) | 0 | 0;
+  $267 = $266 ^ $$11852;
+  $268 = $255 + 209 | 0;
+  $269 = 43714 + $268 | 0;
+  $270 = SAFE_HEAP_LOAD($269 >> 0 | 0, 1, 0) | 0 | 0;
+  $271 = $270 ^ $$11844;
+  $$21845 = $271;
+  $$21853 = $267;
+  $$21861 = $263;
+  $$21869 = $259;
+ }
+ $272 = $1 + 11 | 0;
+ $273 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 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 = 43459 + $276 | 0;
+  $278 = SAFE_HEAP_LOAD($277 >> 0 | 0, 1, 0) | 0 | 0;
+  $279 = $278 & 255;
+  $280 = $279 + 209 | 0;
+  $281 = 43714 + $280 | 0;
+  $282 = SAFE_HEAP_LOAD($281 >> 0 | 0, 1, 0) | 0 | 0;
+  $283 = $282 ^ $$21869;
+  $284 = $279 + 127 | 0;
+  $285 = 43714 + $284 | 0;
+  $286 = SAFE_HEAP_LOAD($285 >> 0 | 0, 1, 0) | 0 | 0;
+  $287 = $286 ^ $$21861;
+  $288 = $279 + 61 | 0;
+  $289 = 43714 + $288 | 0;
+  $290 = SAFE_HEAP_LOAD($289 >> 0 | 0, 1, 0) | 0 | 0;
+  $291 = $290 ^ $$21853;
+  $292 = $279 + 153 | 0;
+  $293 = 43714 + $292 | 0;
+  $294 = SAFE_HEAP_LOAD($293 >> 0 | 0, 1, 0) | 0 | 0;
+  $295 = $294 ^ $$21845;
+  $$31846 = $295;
+  $$31854 = $291;
+  $$31862 = $287;
+  $$31870 = $283;
+ }
+ $296 = $1 + 12 | 0;
+ $297 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 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 = 43459 + $300 | 0;
+  $302 = SAFE_HEAP_LOAD($301 >> 0 | 0, 1, 0) | 0 | 0;
+  $303 = $302 & 255;
+  $304 = $303 + 153 | 0;
+  $305 = 43714 + $304 | 0;
+  $306 = SAFE_HEAP_LOAD($305 >> 0 | 0, 1, 0) | 0 | 0;
+  $307 = $306 ^ $$31870;
+  $308 = $303 + 70 | 0;
+  $309 = 43714 + $308 | 0;
+  $310 = SAFE_HEAP_LOAD($309 >> 0 | 0, 1, 0) | 0 | 0;
+  $311 = $310 ^ $$31862;
+  $312 = $303 + 102 | 0;
+  $313 = 43714 + $312 | 0;
+  $314 = SAFE_HEAP_LOAD($313 >> 0 | 0, 1, 0) | 0 | 0;
+  $315 = $314 ^ $$31854;
+  $316 = $303 + 150 | 0;
+  $317 = 43714 + $316 | 0;
+  $318 = SAFE_HEAP_LOAD($317 >> 0 | 0, 1, 0) | 0 | 0;
+  $319 = $318 ^ $$31846;
+  $$41847 = $319;
+  $$41855 = $315;
+  $$41863 = $311;
+  $$41871 = $307;
+ }
+ $320 = $1 + 13 | 0;
+ $321 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 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 = 43459 + $324 | 0;
+  $326 = SAFE_HEAP_LOAD($325 >> 0 | 0, 1, 0) | 0 | 0;
+  $327 = $326 & 255;
+  $328 = $327 + 150 | 0;
+  $329 = 43714 + $328 | 0;
+  $330 = SAFE_HEAP_LOAD($329 >> 0 | 0, 1, 0) | 0 | 0;
+  $331 = $330 ^ $$41871;
+  $332 = $327 + 60 | 0;
+  $333 = 43714 + $332 | 0;
+  $334 = SAFE_HEAP_LOAD($333 >> 0 | 0, 1, 0) | 0 | 0;
+  $335 = $334 ^ $$41863;
+  $336 = $327 + 91 | 0;
+  $337 = 43714 + $336 | 0;
+  $338 = SAFE_HEAP_LOAD($337 >> 0 | 0, 1, 0) | 0 | 0;
+  $339 = $338 ^ $$41855;
+  $340 = $327 + 237 | 0;
+  $341 = 43714 + $340 | 0;
+  $342 = SAFE_HEAP_LOAD($341 >> 0 | 0, 1, 0) | 0 | 0;
+  $343 = $342 ^ $$41847;
+  $$51848 = $343;
+  $$51856 = $339;
+  $$51864 = $335;
+  $$51872 = $331;
+ }
+ $344 = $1 + 14 | 0;
+ $345 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 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 = 43459 + $348 | 0;
+  $350 = SAFE_HEAP_LOAD($349 >> 0 | 0, 1, 0) | 0 | 0;
+  $351 = $350 & 255;
+  $352 = $351 + 237 | 0;
+  $353 = 43714 + $352 | 0;
+  $354 = SAFE_HEAP_LOAD($353 >> 0 | 0, 1, 0) | 0 | 0;
+  $355 = $354 ^ $$51872;
+  $356 = $351 + 55 | 0;
+  $357 = 43714 + $356 | 0;
+  $358 = SAFE_HEAP_LOAD($357 >> 0 | 0, 1, 0) | 0 | 0;
+  $359 = $358 ^ $$51864;
+  $360 = $351 + 79 | 0;
+  $361 = 43714 + $360 | 0;
+  $362 = SAFE_HEAP_LOAD($361 >> 0 | 0, 1, 0) | 0 | 0;
+  $363 = $362 ^ $$51856;
+  $364 = $351 + 224 | 0;
+  $365 = 43714 + $364 | 0;
+  $366 = SAFE_HEAP_LOAD($365 >> 0 | 0, 1, 0) | 0 | 0;
+  $367 = $366 ^ $$51848;
+  $$61849 = $367;
+  $$61857 = $363;
+  $$61865 = $359;
+  $$61873 = $355;
+ }
+ $368 = $1 + 15 | 0;
+ $369 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 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 = 43459 + $372 | 0;
+  $374 = SAFE_HEAP_LOAD($373 >> 0 | 0, 1, 0) | 0 | 0;
+  $375 = $374 & 255;
+  $376 = $375 + 224 | 0;
+  $377 = 43714 + $376 | 0;
+  $378 = SAFE_HEAP_LOAD($377 >> 0 | 0, 1, 0) | 0 | 0;
+  $379 = $378 ^ $$61873;
+  $380 = $375 + 208 | 0;
+  $381 = 43714 + $380 | 0;
+  $382 = SAFE_HEAP_LOAD($381 >> 0 | 0, 1, 0) | 0 | 0;
+  $383 = $382 ^ $$61865;
+  $384 = $375 + 140 | 0;
+  $385 = 43714 + $384 | 0;
+  $386 = SAFE_HEAP_LOAD($385 >> 0 | 0, 1, 0) | 0 | 0;
+  $387 = $386 ^ $$61857;
+  $388 = $375 + 23 | 0;
+  $389 = 43714 + $388 | 0;
+  $390 = SAFE_HEAP_LOAD($389 >> 0 | 0, 1, 0) | 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 = 44206 + $$119101919 | 0;
+   $4355 = SAFE_HEAP_LOAD($4354 >> 0 | 0, 1, 0) | 0 | 0;
+   $4356 = $4355 ^ $$71906;
+   $4357 = $4356 & 255;
+   $4358 = 44974 + $4357 | 0;
+   $4359 = SAFE_HEAP_LOAD($4358 >> 0 | 0, 1, 0) | 0 | 0;
+   $4360 = $4359 ^ $$71874;
+   $4361 = $4360 & 255;
+   $4362 = 8012 + ($4361 << 2) | 0;
+   $4363 = SAFE_HEAP_LOAD($4362 | 0, 4, 0) | 0 | 0;
+   $4364 = $0 + ($$119121918 << 2) | 0;
+   SAFE_HEAP_STORE($4364 | 0, $4363 | 0, 4);
+   $4365 = 44206 + $$119081920 | 0;
+   $4366 = SAFE_HEAP_LOAD($4365 >> 0 | 0, 1, 0) | 0 | 0;
+   $4367 = $4366 ^ $$71898;
+   $4368 = $4367 & 255;
+   $4369 = 44974 + $4368 | 0;
+   $4370 = SAFE_HEAP_LOAD($4369 >> 0 | 0, 1, 0) | 0 | 0;
+   $4371 = $4370 ^ $$71866;
+   $4372 = $4371 & 255;
+   $4373 = 9036 + ($4372 << 2) | 0;
+   $4374 = SAFE_HEAP_LOAD($4373 | 0, 4, 0) | 0 | 0;
+   $4375 = ($0 + 1024 | 0) + ($$119121918 << 2) | 0;
+   SAFE_HEAP_STORE($4375 | 0, $4374 | 0, 4);
+   $4376 = $4355 ^ $$71890;
+   $4377 = $4376 & 255;
+   $4378 = 44718 + $4377 | 0;
+   $4379 = SAFE_HEAP_LOAD($4378 >> 0 | 0, 1, 0) | 0 | 0;
+   $4380 = $4379 ^ $$71858;
+   $4381 = $4380 & 255;
+   $4382 = 10060 + ($4381 << 2) | 0;
+   $4383 = SAFE_HEAP_LOAD($4382 | 0, 4, 0) | 0 | 0;
+   $4384 = ($0 + 2048 | 0) + ($$119121918 << 2) | 0;
+   SAFE_HEAP_STORE($4384 | 0, $4383 | 0, 4);
+   $4385 = $4366 ^ $$71882;
+   $4386 = $4385 & 255;
+   $4387 = 44718 + $4386 | 0;
+   $4388 = SAFE_HEAP_LOAD($4387 >> 0 | 0, 1, 0) | 0 | 0;
+   $4389 = $4388 ^ $$71850;
+   $4390 = $4389 & 255;
+   $4391 = 11084 + ($4390 << 2) | 0;
+   $4392 = SAFE_HEAP_LOAD($4391 | 0, 4, 0) | 0 | 0;
+   $4393 = ($0 + 3072 | 0) + ($$119121918 << 2) | 0;
+   SAFE_HEAP_STORE($4393 | 0, $4392 | 0, 4);
+   $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 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $4398 = $4397 & 255;
+  $4399 = $4398 ^ 169;
+  $4400 = 44974 + $4399 | 0;
+  $4401 = SAFE_HEAP_LOAD($4400 >> 0 | 0, 1, 0) | 0 | 0;
+  $4402 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $4403 = $4402 ^ $4401;
+  $4404 = $4403 & 255;
+  $4405 = 8012 + ($4404 << 2) | 0;
+  $4406 = SAFE_HEAP_LOAD($4405 | 0, 4, 0) | 0 | 0;
+  $4407 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $4408 = $4407 & 255;
+  $4409 = $4408 ^ 117;
+  $4410 = 44974 + $4409 | 0;
+  $4411 = SAFE_HEAP_LOAD($4410 >> 0 | 0, 1, 0) | 0 | 0;
+  $4412 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $4413 = $4412 ^ $4411;
+  $4414 = $4413 & 255;
+  $4415 = 9036 + ($4414 << 2) | 0;
+  $4416 = SAFE_HEAP_LOAD($4415 | 0, 4, 0) | 0 | 0;
+  $4417 = $4416 ^ $4406;
+  $4418 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $4419 = $4418 & 255;
+  $4420 = $4419 ^ 169;
+  $4421 = 44718 + $4420 | 0;
+  $4422 = SAFE_HEAP_LOAD($4421 >> 0 | 0, 1, 0) | 0 | 0;
+  $4423 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $4424 = $4423 ^ $4422;
+  $4425 = $4424 & 255;
+  $4426 = 10060 + ($4425 << 2) | 0;
+  $4427 = SAFE_HEAP_LOAD($4426 | 0, 4, 0) | 0 | 0;
+  $4428 = $4417 ^ $4427;
+  $4429 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $4430 = $4429 & 255;
+  $4431 = $4430 ^ 117;
+  $4432 = 44718 + $4431 | 0;
+  $4433 = SAFE_HEAP_LOAD($4432 >> 0 | 0, 1, 0) | 0 | 0;
+  $4434 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $4435 = $4434 ^ $4433;
+  $4436 = $4435 & 255;
+  $4437 = 11084 + ($4436 << 2) | 0;
+  $4438 = SAFE_HEAP_LOAD($4437 | 0, 4, 0) | 0 | 0;
+  $4439 = $4428 ^ $4438;
+  $4440 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $4441 = $4440 & 255;
+  $4442 = $4441 ^ 103;
+  $4443 = 44974 + $4442 | 0;
+  $4444 = SAFE_HEAP_LOAD($4443 >> 0 | 0, 1, 0) | 0 | 0;
+  $4445 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $4446 = $4445 ^ $4444;
+  $4447 = $4446 & 255;
+  $4448 = 8012 + ($4447 << 2) | 0;
+  $4449 = SAFE_HEAP_LOAD($4448 | 0, 4, 0) | 0 | 0;
+  $4450 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $4451 = $4450 & 255;
+  $4452 = $4451 ^ 243;
+  $4453 = 44974 + $4452 | 0;
+  $4454 = SAFE_HEAP_LOAD($4453 >> 0 | 0, 1, 0) | 0 | 0;
+  $4455 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $4456 = $4455 ^ $4454;
+  $4457 = $4456 & 255;
+  $4458 = 9036 + ($4457 << 2) | 0;
+  $4459 = SAFE_HEAP_LOAD($4458 | 0, 4, 0) | 0 | 0;
+  $4460 = $4459 ^ $4449;
+  $4461 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $4462 = $4461 & 255;
+  $4463 = $4462 ^ 103;
+  $4464 = 44718 + $4463 | 0;
+  $4465 = SAFE_HEAP_LOAD($4464 >> 0 | 0, 1, 0) | 0 | 0;
+  $4466 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $4467 = $4466 ^ $4465;
+  $4468 = $4467 & 255;
+  $4469 = 10060 + ($4468 << 2) | 0;
+  $4470 = SAFE_HEAP_LOAD($4469 | 0, 4, 0) | 0 | 0;
+  $4471 = $4460 ^ $4470;
+  $4472 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $4473 = $4472 & 255;
+  $4474 = $4473 ^ 243;
+  $4475 = 44718 + $4474 | 0;
+  $4476 = SAFE_HEAP_LOAD($4475 >> 0 | 0, 1, 0) | 0 | 0;
+  $4477 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $4478 = $4477 ^ $4476;
+  $4479 = $4478 & 255;
+  $4480 = 11084 + ($4479 << 2) | 0;
+  $4481 = SAFE_HEAP_LOAD($4480 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($4488 | 0, $4486 | 0, 4);
+  $4489 = $4487 << 9;
+  $4490 = $4487 >>> 23;
+  $4491 = $4489 | $4490;
+  $4492 = $0 + 4100 | 0;
+  SAFE_HEAP_STORE($4492 | 0, $4491 | 0, 4);
+  $4493 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $4494 = $4493 & 255;
+  $4495 = $4494 ^ 179;
+  $4496 = 44974 + $4495 | 0;
+  $4497 = SAFE_HEAP_LOAD($4496 >> 0 | 0, 1, 0) | 0 | 0;
+  $4498 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $4499 = $4498 ^ $4497;
+  $4500 = $4499 & 255;
+  $4501 = 8012 + ($4500 << 2) | 0;
+  $4502 = SAFE_HEAP_LOAD($4501 | 0, 4, 0) | 0 | 0;
+  $4503 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $4504 = $4503 & 255;
+  $4505 = $4504 ^ 198;
+  $4506 = 44974 + $4505 | 0;
+  $4507 = SAFE_HEAP_LOAD($4506 >> 0 | 0, 1, 0) | 0 | 0;
+  $4508 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $4509 = $4508 ^ $4507;
+  $4510 = $4509 & 255;
+  $4511 = 9036 + ($4510 << 2) | 0;
+  $4512 = SAFE_HEAP_LOAD($4511 | 0, 4, 0) | 0 | 0;
+  $4513 = $4512 ^ $4502;
+  $4514 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $4515 = $4514 & 255;
+  $4516 = $4515 ^ 179;
+  $4517 = 44718 + $4516 | 0;
+  $4518 = SAFE_HEAP_LOAD($4517 >> 0 | 0, 1, 0) | 0 | 0;
+  $4519 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $4520 = $4519 ^ $4518;
+  $4521 = $4520 & 255;
+  $4522 = 10060 + ($4521 << 2) | 0;
+  $4523 = SAFE_HEAP_LOAD($4522 | 0, 4, 0) | 0 | 0;
+  $4524 = $4513 ^ $4523;
+  $4525 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $4526 = $4525 & 255;
+  $4527 = $4526 ^ 198;
+  $4528 = 44718 + $4527 | 0;
+  $4529 = SAFE_HEAP_LOAD($4528 >> 0 | 0, 1, 0) | 0 | 0;
+  $4530 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $4531 = $4530 ^ $4529;
+  $4532 = $4531 & 255;
+  $4533 = 11084 + ($4532 << 2) | 0;
+  $4534 = SAFE_HEAP_LOAD($4533 | 0, 4, 0) | 0 | 0;
+  $4535 = $4524 ^ $4534;
+  $4536 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $4537 = $4536 & 255;
+  $4538 = $4537 ^ 232;
+  $4539 = 44974 + $4538 | 0;
+  $4540 = SAFE_HEAP_LOAD($4539 >> 0 | 0, 1, 0) | 0 | 0;
+  $4541 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $4542 = $4541 ^ $4540;
+  $4543 = $4542 & 255;
+  $4544 = 8012 + ($4543 << 2) | 0;
+  $4545 = SAFE_HEAP_LOAD($4544 | 0, 4, 0) | 0 | 0;
+  $4546 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $4547 = $4546 & 255;
+  $4548 = $4547 ^ 244;
+  $4549 = 44974 + $4548 | 0;
+  $4550 = SAFE_HEAP_LOAD($4549 >> 0 | 0, 1, 0) | 0 | 0;
+  $4551 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $4552 = $4551 ^ $4550;
+  $4553 = $4552 & 255;
+  $4554 = 9036 + ($4553 << 2) | 0;
+  $4555 = SAFE_HEAP_LOAD($4554 | 0, 4, 0) | 0 | 0;
+  $4556 = $4555 ^ $4545;
+  $4557 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $4558 = $4557 & 255;
+  $4559 = $4558 ^ 232;
+  $4560 = 44718 + $4559 | 0;
+  $4561 = SAFE_HEAP_LOAD($4560 >> 0 | 0, 1, 0) | 0 | 0;
+  $4562 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $4563 = $4562 ^ $4561;
+  $4564 = $4563 & 255;
+  $4565 = 10060 + ($4564 << 2) | 0;
+  $4566 = SAFE_HEAP_LOAD($4565 | 0, 4, 0) | 0 | 0;
+  $4567 = $4556 ^ $4566;
+  $4568 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $4569 = $4568 & 255;
+  $4570 = $4569 ^ 244;
+  $4571 = 44718 + $4570 | 0;
+  $4572 = SAFE_HEAP_LOAD($4571 >> 0 | 0, 1, 0) | 0 | 0;
+  $4573 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $4574 = $4573 ^ $4572;
+  $4575 = $4574 & 255;
+  $4576 = 11084 + ($4575 << 2) | 0;
+  $4577 = SAFE_HEAP_LOAD($4576 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($4584 | 0, $4582 | 0, 4);
+  $4585 = $4583 << 9;
+  $4586 = $4583 >>> 23;
+  $4587 = $4585 | $4586;
+  $4588 = $0 + 4108 | 0;
+  SAFE_HEAP_STORE($4588 | 0, $4587 | 0, 4);
+  $4589 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $4590 = $4589 & 255;
+  $4591 = $4590 ^ 4;
+  $4592 = 44974 + $4591 | 0;
+  $4593 = SAFE_HEAP_LOAD($4592 >> 0 | 0, 1, 0) | 0 | 0;
+  $4594 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $4595 = $4594 ^ $4593;
+  $4596 = $4595 & 255;
+  $4597 = 8012 + ($4596 << 2) | 0;
+  $4598 = SAFE_HEAP_LOAD($4597 | 0, 4, 0) | 0 | 0;
+  $4599 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $4600 = $4599 & 255;
+  $4601 = $4600 ^ 219;
+  $4602 = 44974 + $4601 | 0;
+  $4603 = SAFE_HEAP_LOAD($4602 >> 0 | 0, 1, 0) | 0 | 0;
+  $4604 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $4605 = $4604 ^ $4603;
+  $4606 = $4605 & 255;
+  $4607 = 9036 + ($4606 << 2) | 0;
+  $4608 = SAFE_HEAP_LOAD($4607 | 0, 4, 0) | 0 | 0;
+  $4609 = $4608 ^ $4598;
+  $4610 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $4611 = $4610 & 255;
+  $4612 = $4611 ^ 4;
+  $4613 = 44718 + $4612 | 0;
+  $4614 = SAFE_HEAP_LOAD($4613 >> 0 | 0, 1, 0) | 0 | 0;
+  $4615 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $4616 = $4615 ^ $4614;
+  $4617 = $4616 & 255;
+  $4618 = 10060 + ($4617 << 2) | 0;
+  $4619 = SAFE_HEAP_LOAD($4618 | 0, 4, 0) | 0 | 0;
+  $4620 = $4609 ^ $4619;
+  $4621 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $4622 = $4621 & 255;
+  $4623 = $4622 ^ 219;
+  $4624 = 44718 + $4623 | 0;
+  $4625 = SAFE_HEAP_LOAD($4624 >> 0 | 0, 1, 0) | 0 | 0;
+  $4626 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $4627 = $4626 ^ $4625;
+  $4628 = $4627 & 255;
+  $4629 = 11084 + ($4628 << 2) | 0;
+  $4630 = SAFE_HEAP_LOAD($4629 | 0, 4, 0) | 0 | 0;
+  $4631 = $4620 ^ $4630;
+  $4632 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $4633 = $4632 & 255;
+  $4634 = $4633 ^ 253;
+  $4635 = 44974 + $4634 | 0;
+  $4636 = SAFE_HEAP_LOAD($4635 >> 0 | 0, 1, 0) | 0 | 0;
+  $4637 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $4638 = $4637 ^ $4636;
+  $4639 = $4638 & 255;
+  $4640 = 8012 + ($4639 << 2) | 0;
+  $4641 = SAFE_HEAP_LOAD($4640 | 0, 4, 0) | 0 | 0;
+  $4642 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $4643 = $4642 & 255;
+  $4644 = $4643 ^ 123;
+  $4645 = 44974 + $4644 | 0;
+  $4646 = SAFE_HEAP_LOAD($4645 >> 0 | 0, 1, 0) | 0 | 0;
+  $4647 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $4648 = $4647 ^ $4646;
+  $4649 = $4648 & 255;
+  $4650 = 9036 + ($4649 << 2) | 0;
+  $4651 = SAFE_HEAP_LOAD($4650 | 0, 4, 0) | 0 | 0;
+  $4652 = $4651 ^ $4641;
+  $4653 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $4654 = $4653 & 255;
+  $4655 = $4654 ^ 253;
+  $4656 = 44718 + $4655 | 0;
+  $4657 = SAFE_HEAP_LOAD($4656 >> 0 | 0, 1, 0) | 0 | 0;
+  $4658 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $4659 = $4658 ^ $4657;
+  $4660 = $4659 & 255;
+  $4661 = 10060 + ($4660 << 2) | 0;
+  $4662 = SAFE_HEAP_LOAD($4661 | 0, 4, 0) | 0 | 0;
+  $4663 = $4652 ^ $4662;
+  $4664 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $4665 = $4664 & 255;
+  $4666 = $4665 ^ 123;
+  $4667 = 44718 + $4666 | 0;
+  $4668 = SAFE_HEAP_LOAD($4667 >> 0 | 0, 1, 0) | 0 | 0;
+  $4669 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $4670 = $4669 ^ $4668;
+  $4671 = $4670 & 255;
+  $4672 = 11084 + ($4671 << 2) | 0;
+  $4673 = SAFE_HEAP_LOAD($4672 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($4680 | 0, $4678 | 0, 4);
+  $4681 = $4679 << 9;
+  $4682 = $4679 >>> 23;
+  $4683 = $4681 | $4682;
+  $4684 = $0 + 4116 | 0;
+  SAFE_HEAP_STORE($4684 | 0, $4683 | 0, 4);
+  $4685 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $4686 = $4685 & 255;
+  $4687 = $4686 ^ 163;
+  $4688 = 44974 + $4687 | 0;
+  $4689 = SAFE_HEAP_LOAD($4688 >> 0 | 0, 1, 0) | 0 | 0;
+  $4690 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $4691 = $4690 ^ $4689;
+  $4692 = $4691 & 255;
+  $4693 = 8012 + ($4692 << 2) | 0;
+  $4694 = SAFE_HEAP_LOAD($4693 | 0, 4, 0) | 0 | 0;
+  $4695 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $4696 = $4695 & 255;
+  $4697 = $4696 ^ 251;
+  $4698 = 44974 + $4697 | 0;
+  $4699 = SAFE_HEAP_LOAD($4698 >> 0 | 0, 1, 0) | 0 | 0;
+  $4700 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $4701 = $4700 ^ $4699;
+  $4702 = $4701 & 255;
+  $4703 = 9036 + ($4702 << 2) | 0;
+  $4704 = SAFE_HEAP_LOAD($4703 | 0, 4, 0) | 0 | 0;
+  $4705 = $4704 ^ $4694;
+  $4706 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $4707 = $4706 & 255;
+  $4708 = $4707 ^ 163;
+  $4709 = 44718 + $4708 | 0;
+  $4710 = SAFE_HEAP_LOAD($4709 >> 0 | 0, 1, 0) | 0 | 0;
+  $4711 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $4712 = $4711 ^ $4710;
+  $4713 = $4712 & 255;
+  $4714 = 10060 + ($4713 << 2) | 0;
+  $4715 = SAFE_HEAP_LOAD($4714 | 0, 4, 0) | 0 | 0;
+  $4716 = $4705 ^ $4715;
+  $4717 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $4718 = $4717 & 255;
+  $4719 = $4718 ^ 251;
+  $4720 = 44718 + $4719 | 0;
+  $4721 = SAFE_HEAP_LOAD($4720 >> 0 | 0, 1, 0) | 0 | 0;
+  $4722 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $4723 = $4722 ^ $4721;
+  $4724 = $4723 & 255;
+  $4725 = 11084 + ($4724 << 2) | 0;
+  $4726 = SAFE_HEAP_LOAD($4725 | 0, 4, 0) | 0 | 0;
+  $4727 = $4716 ^ $4726;
+  $4728 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $4729 = $4728 & 255;
+  $4730 = $4729 ^ 118;
+  $4731 = 44974 + $4730 | 0;
+  $4732 = SAFE_HEAP_LOAD($4731 >> 0 | 0, 1, 0) | 0 | 0;
+  $4733 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $4734 = $4733 ^ $4732;
+  $4735 = $4734 & 255;
+  $4736 = 8012 + ($4735 << 2) | 0;
+  $4737 = SAFE_HEAP_LOAD($4736 | 0, 4, 0) | 0 | 0;
+  $4738 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $4739 = $4738 & 255;
+  $4740 = $4739 ^ 200;
+  $4741 = 44974 + $4740 | 0;
+  $4742 = SAFE_HEAP_LOAD($4741 >> 0 | 0, 1, 0) | 0 | 0;
+  $4743 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $4744 = $4743 ^ $4742;
+  $4745 = $4744 & 255;
+  $4746 = 9036 + ($4745 << 2) | 0;
+  $4747 = SAFE_HEAP_LOAD($4746 | 0, 4, 0) | 0 | 0;
+  $4748 = $4747 ^ $4737;
+  $4749 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $4750 = $4749 & 255;
+  $4751 = $4750 ^ 118;
+  $4752 = 44718 + $4751 | 0;
+  $4753 = SAFE_HEAP_LOAD($4752 >> 0 | 0, 1, 0) | 0 | 0;
+  $4754 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $4755 = $4754 ^ $4753;
+  $4756 = $4755 & 255;
+  $4757 = 10060 + ($4756 << 2) | 0;
+  $4758 = SAFE_HEAP_LOAD($4757 | 0, 4, 0) | 0 | 0;
+  $4759 = $4748 ^ $4758;
+  $4760 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $4761 = $4760 & 255;
+  $4762 = $4761 ^ 200;
+  $4763 = 44718 + $4762 | 0;
+  $4764 = SAFE_HEAP_LOAD($4763 >> 0 | 0, 1, 0) | 0 | 0;
+  $4765 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $4766 = $4765 ^ $4764;
+  $4767 = $4766 & 255;
+  $4768 = 11084 + ($4767 << 2) | 0;
+  $4769 = SAFE_HEAP_LOAD($4768 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($4776 | 0, $4774 | 0, 4);
+  $4777 = $4775 << 9;
+  $4778 = $4775 >>> 23;
+  $4779 = $4777 | $4778;
+  $4780 = $0 + 4124 | 0;
+  SAFE_HEAP_STORE($4780 | 0, $4779 | 0, 4);
+  $4781 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $4782 = $4781 & 255;
+  $4783 = $4782 ^ 154;
+  $4784 = 44974 + $4783 | 0;
+  $4785 = SAFE_HEAP_LOAD($4784 >> 0 | 0, 1, 0) | 0 | 0;
+  $4786 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $4787 = $4786 ^ $4785;
+  $4788 = $4787 & 255;
+  $4789 = 8012 + ($4788 << 2) | 0;
+  $4790 = SAFE_HEAP_LOAD($4789 | 0, 4, 0) | 0 | 0;
+  $4791 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $4792 = $4791 & 255;
+  $4793 = $4792 ^ 74;
+  $4794 = 44974 + $4793 | 0;
+  $4795 = SAFE_HEAP_LOAD($4794 >> 0 | 0, 1, 0) | 0 | 0;
+  $4796 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $4797 = $4796 ^ $4795;
+  $4798 = $4797 & 255;
+  $4799 = 9036 + ($4798 << 2) | 0;
+  $4800 = SAFE_HEAP_LOAD($4799 | 0, 4, 0) | 0 | 0;
+  $4801 = $4800 ^ $4790;
+  $4802 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $4803 = $4802 & 255;
+  $4804 = $4803 ^ 154;
+  $4805 = 44718 + $4804 | 0;
+  $4806 = SAFE_HEAP_LOAD($4805 >> 0 | 0, 1, 0) | 0 | 0;
+  $4807 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $4808 = $4807 ^ $4806;
+  $4809 = $4808 & 255;
+  $4810 = 10060 + ($4809 << 2) | 0;
+  $4811 = SAFE_HEAP_LOAD($4810 | 0, 4, 0) | 0 | 0;
+  $4812 = $4801 ^ $4811;
+  $4813 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $4814 = $4813 & 255;
+  $4815 = $4814 ^ 74;
+  $4816 = 44718 + $4815 | 0;
+  $4817 = SAFE_HEAP_LOAD($4816 >> 0 | 0, 1, 0) | 0 | 0;
+  $4818 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $4819 = $4818 ^ $4817;
+  $4820 = $4819 & 255;
+  $4821 = 11084 + ($4820 << 2) | 0;
+  $4822 = SAFE_HEAP_LOAD($4821 | 0, 4, 0) | 0 | 0;
+  $4823 = $4812 ^ $4822;
+  $4824 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $4825 = $4824 & 255;
+  $4826 = $4825 ^ 146;
+  $4827 = 44974 + $4826 | 0;
+  $4828 = SAFE_HEAP_LOAD($4827 >> 0 | 0, 1, 0) | 0 | 0;
+  $4829 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $4830 = $4829 ^ $4828;
+  $4831 = $4830 & 255;
+  $4832 = 8012 + ($4831 << 2) | 0;
+  $4833 = SAFE_HEAP_LOAD($4832 | 0, 4, 0) | 0 | 0;
+  $4834 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $4835 = $4834 & 255;
+  $4836 = $4835 ^ 211;
+  $4837 = 44974 + $4836 | 0;
+  $4838 = SAFE_HEAP_LOAD($4837 >> 0 | 0, 1, 0) | 0 | 0;
+  $4839 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $4840 = $4839 ^ $4838;
+  $4841 = $4840 & 255;
+  $4842 = 9036 + ($4841 << 2) | 0;
+  $4843 = SAFE_HEAP_LOAD($4842 | 0, 4, 0) | 0 | 0;
+  $4844 = $4843 ^ $4833;
+  $4845 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $4846 = $4845 & 255;
+  $4847 = $4846 ^ 146;
+  $4848 = 44718 + $4847 | 0;
+  $4849 = SAFE_HEAP_LOAD($4848 >> 0 | 0, 1, 0) | 0 | 0;
+  $4850 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $4851 = $4850 ^ $4849;
+  $4852 = $4851 & 255;
+  $4853 = 10060 + ($4852 << 2) | 0;
+  $4854 = SAFE_HEAP_LOAD($4853 | 0, 4, 0) | 0 | 0;
+  $4855 = $4844 ^ $4854;
+  $4856 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $4857 = $4856 & 255;
+  $4858 = $4857 ^ 211;
+  $4859 = 44718 + $4858 | 0;
+  $4860 = SAFE_HEAP_LOAD($4859 >> 0 | 0, 1, 0) | 0 | 0;
+  $4861 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $4862 = $4861 ^ $4860;
+  $4863 = $4862 & 255;
+  $4864 = 11084 + ($4863 << 2) | 0;
+  $4865 = SAFE_HEAP_LOAD($4864 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($4872 | 0, $4870 | 0, 4);
+  $4873 = $4871 << 9;
+  $4874 = $4871 >>> 23;
+  $4875 = $4873 | $4874;
+  $4876 = $0 + 4132 | 0;
+  SAFE_HEAP_STORE($4876 | 0, $4875 | 0, 4);
+  $4877 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $4878 = $4877 & 255;
+  $4879 = $4878 ^ 128;
+  $4880 = 44974 + $4879 | 0;
+  $4881 = SAFE_HEAP_LOAD($4880 >> 0 | 0, 1, 0) | 0 | 0;
+  $4882 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $4883 = $4882 ^ $4881;
+  $4884 = $4883 & 255;
+  $4885 = 8012 + ($4884 << 2) | 0;
+  $4886 = SAFE_HEAP_LOAD($4885 | 0, 4, 0) | 0 | 0;
+  $4887 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $4888 = $4887 & 255;
+  $4889 = $4888 ^ 230;
+  $4890 = 44974 + $4889 | 0;
+  $4891 = SAFE_HEAP_LOAD($4890 >> 0 | 0, 1, 0) | 0 | 0;
+  $4892 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $4893 = $4892 ^ $4891;
+  $4894 = $4893 & 255;
+  $4895 = 9036 + ($4894 << 2) | 0;
+  $4896 = SAFE_HEAP_LOAD($4895 | 0, 4, 0) | 0 | 0;
+  $4897 = $4896 ^ $4886;
+  $4898 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $4899 = $4898 & 255;
+  $4900 = $4899 ^ 128;
+  $4901 = 44718 + $4900 | 0;
+  $4902 = SAFE_HEAP_LOAD($4901 >> 0 | 0, 1, 0) | 0 | 0;
+  $4903 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $4904 = $4903 ^ $4902;
+  $4905 = $4904 & 255;
+  $4906 = 10060 + ($4905 << 2) | 0;
+  $4907 = SAFE_HEAP_LOAD($4906 | 0, 4, 0) | 0 | 0;
+  $4908 = $4897 ^ $4907;
+  $4909 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $4910 = $4909 & 255;
+  $4911 = $4910 ^ 230;
+  $4912 = 44718 + $4911 | 0;
+  $4913 = SAFE_HEAP_LOAD($4912 >> 0 | 0, 1, 0) | 0 | 0;
+  $4914 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $4915 = $4914 ^ $4913;
+  $4916 = $4915 & 255;
+  $4917 = 11084 + ($4916 << 2) | 0;
+  $4918 = SAFE_HEAP_LOAD($4917 | 0, 4, 0) | 0 | 0;
+  $4919 = $4908 ^ $4918;
+  $4920 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $4921 = $4920 & 255;
+  $4922 = $4921 ^ 120;
+  $4923 = 44974 + $4922 | 0;
+  $4924 = SAFE_HEAP_LOAD($4923 >> 0 | 0, 1, 0) | 0 | 0;
+  $4925 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $4926 = $4925 ^ $4924;
+  $4927 = $4926 & 255;
+  $4928 = 8012 + ($4927 << 2) | 0;
+  $4929 = SAFE_HEAP_LOAD($4928 | 0, 4, 0) | 0 | 0;
+  $4930 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $4931 = $4930 & 255;
+  $4932 = $4931 ^ 107;
+  $4933 = 44974 + $4932 | 0;
+  $4934 = SAFE_HEAP_LOAD($4933 >> 0 | 0, 1, 0) | 0 | 0;
+  $4935 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $4936 = $4935 ^ $4934;
+  $4937 = $4936 & 255;
+  $4938 = 9036 + ($4937 << 2) | 0;
+  $4939 = SAFE_HEAP_LOAD($4938 | 0, 4, 0) | 0 | 0;
+  $4940 = $4939 ^ $4929;
+  $4941 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $4942 = $4941 & 255;
+  $4943 = $4942 ^ 120;
+  $4944 = 44718 + $4943 | 0;
+  $4945 = SAFE_HEAP_LOAD($4944 >> 0 | 0, 1, 0) | 0 | 0;
+  $4946 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $4947 = $4946 ^ $4945;
+  $4948 = $4947 & 255;
+  $4949 = 10060 + ($4948 << 2) | 0;
+  $4950 = SAFE_HEAP_LOAD($4949 | 0, 4, 0) | 0 | 0;
+  $4951 = $4940 ^ $4950;
+  $4952 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $4953 = $4952 & 255;
+  $4954 = $4953 ^ 107;
+  $4955 = 44718 + $4954 | 0;
+  $4956 = SAFE_HEAP_LOAD($4955 >> 0 | 0, 1, 0) | 0 | 0;
+  $4957 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $4958 = $4957 ^ $4956;
+  $4959 = $4958 & 255;
+  $4960 = 11084 + ($4959 << 2) | 0;
+  $4961 = SAFE_HEAP_LOAD($4960 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($4968 | 0, $4966 | 0, 4);
+  $4969 = $4967 << 9;
+  $4970 = $4967 >>> 23;
+  $4971 = $4969 | $4970;
+  $4972 = $0 + 4140 | 0;
+  SAFE_HEAP_STORE($4972 | 0, $4971 | 0, 4);
+  $4973 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $4974 = $4973 & 255;
+  $4975 = $4974 ^ 228;
+  $4976 = 44974 + $4975 | 0;
+  $4977 = SAFE_HEAP_LOAD($4976 >> 0 | 0, 1, 0) | 0 | 0;
+  $4978 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $4979 = $4978 ^ $4977;
+  $4980 = $4979 & 255;
+  $4981 = 8012 + ($4980 << 2) | 0;
+  $4982 = SAFE_HEAP_LOAD($4981 | 0, 4, 0) | 0 | 0;
+  $4983 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $4984 = $4983 & 255;
+  $4985 = $4984 ^ 69;
+  $4986 = 44974 + $4985 | 0;
+  $4987 = SAFE_HEAP_LOAD($4986 >> 0 | 0, 1, 0) | 0 | 0;
+  $4988 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $4989 = $4988 ^ $4987;
+  $4990 = $4989 & 255;
+  $4991 = 9036 + ($4990 << 2) | 0;
+  $4992 = SAFE_HEAP_LOAD($4991 | 0, 4, 0) | 0 | 0;
+  $4993 = $4992 ^ $4982;
+  $4994 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $4995 = $4994 & 255;
+  $4996 = $4995 ^ 228;
+  $4997 = 44718 + $4996 | 0;
+  $4998 = SAFE_HEAP_LOAD($4997 >> 0 | 0, 1, 0) | 0 | 0;
+  $4999 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5000 = $4999 ^ $4998;
+  $5001 = $5000 & 255;
+  $5002 = 10060 + ($5001 << 2) | 0;
+  $5003 = SAFE_HEAP_LOAD($5002 | 0, 4, 0) | 0 | 0;
+  $5004 = $4993 ^ $5003;
+  $5005 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5006 = $5005 & 255;
+  $5007 = $5006 ^ 69;
+  $5008 = 44718 + $5007 | 0;
+  $5009 = SAFE_HEAP_LOAD($5008 >> 0 | 0, 1, 0) | 0 | 0;
+  $5010 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5011 = $5010 ^ $5009;
+  $5012 = $5011 & 255;
+  $5013 = 11084 + ($5012 << 2) | 0;
+  $5014 = SAFE_HEAP_LOAD($5013 | 0, 4, 0) | 0 | 0;
+  $5015 = $5004 ^ $5014;
+  $5016 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5017 = $5016 & 255;
+  $5018 = $5017 ^ 221;
+  $5019 = 44974 + $5018 | 0;
+  $5020 = SAFE_HEAP_LOAD($5019 >> 0 | 0, 1, 0) | 0 | 0;
+  $5021 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5022 = $5021 ^ $5020;
+  $5023 = $5022 & 255;
+  $5024 = 8012 + ($5023 << 2) | 0;
+  $5025 = SAFE_HEAP_LOAD($5024 | 0, 4, 0) | 0 | 0;
+  $5026 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5027 = $5026 & 255;
+  $5028 = $5027 ^ 125;
+  $5029 = 44974 + $5028 | 0;
+  $5030 = SAFE_HEAP_LOAD($5029 >> 0 | 0, 1, 0) | 0 | 0;
+  $5031 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5032 = $5031 ^ $5030;
+  $5033 = $5032 & 255;
+  $5034 = 9036 + ($5033 << 2) | 0;
+  $5035 = SAFE_HEAP_LOAD($5034 | 0, 4, 0) | 0 | 0;
+  $5036 = $5035 ^ $5025;
+  $5037 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5038 = $5037 & 255;
+  $5039 = $5038 ^ 221;
+  $5040 = 44718 + $5039 | 0;
+  $5041 = SAFE_HEAP_LOAD($5040 >> 0 | 0, 1, 0) | 0 | 0;
+  $5042 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5043 = $5042 ^ $5041;
+  $5044 = $5043 & 255;
+  $5045 = 10060 + ($5044 << 2) | 0;
+  $5046 = SAFE_HEAP_LOAD($5045 | 0, 4, 0) | 0 | 0;
+  $5047 = $5036 ^ $5046;
+  $5048 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5049 = $5048 & 255;
+  $5050 = $5049 ^ 125;
+  $5051 = 44718 + $5050 | 0;
+  $5052 = SAFE_HEAP_LOAD($5051 >> 0 | 0, 1, 0) | 0 | 0;
+  $5053 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5054 = $5053 ^ $5052;
+  $5055 = $5054 & 255;
+  $5056 = 11084 + ($5055 << 2) | 0;
+  $5057 = SAFE_HEAP_LOAD($5056 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5064 | 0, $5062 | 0, 4);
+  $5065 = $5063 << 9;
+  $5066 = $5063 >>> 23;
+  $5067 = $5065 | $5066;
+  $5068 = $0 + 4148 | 0;
+  SAFE_HEAP_STORE($5068 | 0, $5067 | 0, 4);
+  $5069 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5070 = $5069 & 255;
+  $5071 = $5070 ^ 209;
+  $5072 = 44974 + $5071 | 0;
+  $5073 = SAFE_HEAP_LOAD($5072 >> 0 | 0, 1, 0) | 0 | 0;
+  $5074 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5075 = $5074 ^ $5073;
+  $5076 = $5075 & 255;
+  $5077 = 8012 + ($5076 << 2) | 0;
+  $5078 = SAFE_HEAP_LOAD($5077 | 0, 4, 0) | 0 | 0;
+  $5079 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5080 = $5079 & 255;
+  $5081 = $5080 ^ 232;
+  $5082 = 44974 + $5081 | 0;
+  $5083 = SAFE_HEAP_LOAD($5082 >> 0 | 0, 1, 0) | 0 | 0;
+  $5084 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5085 = $5084 ^ $5083;
+  $5086 = $5085 & 255;
+  $5087 = 9036 + ($5086 << 2) | 0;
+  $5088 = SAFE_HEAP_LOAD($5087 | 0, 4, 0) | 0 | 0;
+  $5089 = $5088 ^ $5078;
+  $5090 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5091 = $5090 & 255;
+  $5092 = $5091 ^ 209;
+  $5093 = 44718 + $5092 | 0;
+  $5094 = SAFE_HEAP_LOAD($5093 >> 0 | 0, 1, 0) | 0 | 0;
+  $5095 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5096 = $5095 ^ $5094;
+  $5097 = $5096 & 255;
+  $5098 = 10060 + ($5097 << 2) | 0;
+  $5099 = SAFE_HEAP_LOAD($5098 | 0, 4, 0) | 0 | 0;
+  $5100 = $5089 ^ $5099;
+  $5101 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5102 = $5101 & 255;
+  $5103 = $5102 ^ 232;
+  $5104 = 44718 + $5103 | 0;
+  $5105 = SAFE_HEAP_LOAD($5104 >> 0 | 0, 1, 0) | 0 | 0;
+  $5106 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5107 = $5106 ^ $5105;
+  $5108 = $5107 & 255;
+  $5109 = 11084 + ($5108 << 2) | 0;
+  $5110 = SAFE_HEAP_LOAD($5109 | 0, 4, 0) | 0 | 0;
+  $5111 = $5100 ^ $5110;
+  $5112 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5113 = $5112 & 255;
+  $5114 = $5113 ^ 56;
+  $5115 = 44974 + $5114 | 0;
+  $5116 = SAFE_HEAP_LOAD($5115 >> 0 | 0, 1, 0) | 0 | 0;
+  $5117 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5118 = $5117 ^ $5116;
+  $5119 = $5118 & 255;
+  $5120 = 8012 + ($5119 << 2) | 0;
+  $5121 = SAFE_HEAP_LOAD($5120 | 0, 4, 0) | 0 | 0;
+  $5122 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5123 = $5122 & 255;
+  $5124 = $5123 ^ 75;
+  $5125 = 44974 + $5124 | 0;
+  $5126 = SAFE_HEAP_LOAD($5125 >> 0 | 0, 1, 0) | 0 | 0;
+  $5127 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5128 = $5127 ^ $5126;
+  $5129 = $5128 & 255;
+  $5130 = 9036 + ($5129 << 2) | 0;
+  $5131 = SAFE_HEAP_LOAD($5130 | 0, 4, 0) | 0 | 0;
+  $5132 = $5131 ^ $5121;
+  $5133 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5134 = $5133 & 255;
+  $5135 = $5134 ^ 56;
+  $5136 = 44718 + $5135 | 0;
+  $5137 = SAFE_HEAP_LOAD($5136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5138 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5139 = $5138 ^ $5137;
+  $5140 = $5139 & 255;
+  $5141 = 10060 + ($5140 << 2) | 0;
+  $5142 = SAFE_HEAP_LOAD($5141 | 0, 4, 0) | 0 | 0;
+  $5143 = $5132 ^ $5142;
+  $5144 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5145 = $5144 & 255;
+  $5146 = $5145 ^ 75;
+  $5147 = 44718 + $5146 | 0;
+  $5148 = SAFE_HEAP_LOAD($5147 >> 0 | 0, 1, 0) | 0 | 0;
+  $5149 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5150 = $5149 ^ $5148;
+  $5151 = $5150 & 255;
+  $5152 = 11084 + ($5151 << 2) | 0;
+  $5153 = SAFE_HEAP_LOAD($5152 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5160 | 0, $5158 | 0, 4);
+  $5161 = $5159 << 9;
+  $5162 = $5159 >>> 23;
+  $5163 = $5161 | $5162;
+  $5164 = $0 + 4156 | 0;
+  SAFE_HEAP_STORE($5164 | 0, $5163 | 0, 4);
+  $5165 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5166 = $5165 & 255;
+  $5167 = $5166 ^ 13;
+  $5168 = 44974 + $5167 | 0;
+  $5169 = SAFE_HEAP_LOAD($5168 >> 0 | 0, 1, 0) | 0 | 0;
+  $5170 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5171 = $5170 ^ $5169;
+  $5172 = $5171 & 255;
+  $5173 = 8012 + ($5172 << 2) | 0;
+  $5174 = SAFE_HEAP_LOAD($5173 | 0, 4, 0) | 0 | 0;
+  $5175 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5176 = $5175 & 255;
+  $5177 = $5176 ^ 214;
+  $5178 = 44974 + $5177 | 0;
+  $5179 = SAFE_HEAP_LOAD($5178 >> 0 | 0, 1, 0) | 0 | 0;
+  $5180 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5181 = $5180 ^ $5179;
+  $5182 = $5181 & 255;
+  $5183 = 9036 + ($5182 << 2) | 0;
+  $5184 = SAFE_HEAP_LOAD($5183 | 0, 4, 0) | 0 | 0;
+  $5185 = $5184 ^ $5174;
+  $5186 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5187 = $5186 & 255;
+  $5188 = $5187 ^ 13;
+  $5189 = 44718 + $5188 | 0;
+  $5190 = SAFE_HEAP_LOAD($5189 >> 0 | 0, 1, 0) | 0 | 0;
+  $5191 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5192 = $5191 ^ $5190;
+  $5193 = $5192 & 255;
+  $5194 = 10060 + ($5193 << 2) | 0;
+  $5195 = SAFE_HEAP_LOAD($5194 | 0, 4, 0) | 0 | 0;
+  $5196 = $5185 ^ $5195;
+  $5197 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5198 = $5197 & 255;
+  $5199 = $5198 ^ 214;
+  $5200 = 44718 + $5199 | 0;
+  $5201 = SAFE_HEAP_LOAD($5200 >> 0 | 0, 1, 0) | 0 | 0;
+  $5202 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5203 = $5202 ^ $5201;
+  $5204 = $5203 & 255;
+  $5205 = 11084 + ($5204 << 2) | 0;
+  $5206 = SAFE_HEAP_LOAD($5205 | 0, 4, 0) | 0 | 0;
+  $5207 = $5196 ^ $5206;
+  $5208 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5209 = $5208 & 255;
+  $5210 = $5209 ^ 198;
+  $5211 = 44974 + $5210 | 0;
+  $5212 = SAFE_HEAP_LOAD($5211 >> 0 | 0, 1, 0) | 0 | 0;
+  $5213 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5214 = $5213 ^ $5212;
+  $5215 = $5214 & 255;
+  $5216 = 8012 + ($5215 << 2) | 0;
+  $5217 = SAFE_HEAP_LOAD($5216 | 0, 4, 0) | 0 | 0;
+  $5218 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5219 = $5218 & 255;
+  $5220 = $5219 ^ 50;
+  $5221 = 44974 + $5220 | 0;
+  $5222 = SAFE_HEAP_LOAD($5221 >> 0 | 0, 1, 0) | 0 | 0;
+  $5223 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5224 = $5223 ^ $5222;
+  $5225 = $5224 & 255;
+  $5226 = 9036 + ($5225 << 2) | 0;
+  $5227 = SAFE_HEAP_LOAD($5226 | 0, 4, 0) | 0 | 0;
+  $5228 = $5227 ^ $5217;
+  $5229 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5230 = $5229 & 255;
+  $5231 = $5230 ^ 198;
+  $5232 = 44718 + $5231 | 0;
+  $5233 = SAFE_HEAP_LOAD($5232 >> 0 | 0, 1, 0) | 0 | 0;
+  $5234 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5235 = $5234 ^ $5233;
+  $5236 = $5235 & 255;
+  $5237 = 10060 + ($5236 << 2) | 0;
+  $5238 = SAFE_HEAP_LOAD($5237 | 0, 4, 0) | 0 | 0;
+  $5239 = $5228 ^ $5238;
+  $5240 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5241 = $5240 & 255;
+  $5242 = $5241 ^ 50;
+  $5243 = 44718 + $5242 | 0;
+  $5244 = SAFE_HEAP_LOAD($5243 >> 0 | 0, 1, 0) | 0 | 0;
+  $5245 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5246 = $5245 ^ $5244;
+  $5247 = $5246 & 255;
+  $5248 = 11084 + ($5247 << 2) | 0;
+  $5249 = SAFE_HEAP_LOAD($5248 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5256 | 0, $5254 | 0, 4);
+  $5257 = $5255 << 9;
+  $5258 = $5255 >>> 23;
+  $5259 = $5257 | $5258;
+  $5260 = $0 + 4164 | 0;
+  SAFE_HEAP_STORE($5260 | 0, $5259 | 0, 4);
+  $5261 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5262 = $5261 & 255;
+  $5263 = $5262 ^ 53;
+  $5264 = 44974 + $5263 | 0;
+  $5265 = SAFE_HEAP_LOAD($5264 >> 0 | 0, 1, 0) | 0 | 0;
+  $5266 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5267 = $5266 ^ $5265;
+  $5268 = $5267 & 255;
+  $5269 = 8012 + ($5268 << 2) | 0;
+  $5270 = SAFE_HEAP_LOAD($5269 | 0, 4, 0) | 0 | 0;
+  $5271 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5272 = $5271 & 255;
+  $5273 = $5272 ^ 216;
+  $5274 = 44974 + $5273 | 0;
+  $5275 = SAFE_HEAP_LOAD($5274 >> 0 | 0, 1, 0) | 0 | 0;
+  $5276 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5277 = $5276 ^ $5275;
+  $5278 = $5277 & 255;
+  $5279 = 9036 + ($5278 << 2) | 0;
+  $5280 = SAFE_HEAP_LOAD($5279 | 0, 4, 0) | 0 | 0;
+  $5281 = $5280 ^ $5270;
+  $5282 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5283 = $5282 & 255;
+  $5284 = $5283 ^ 53;
+  $5285 = 44718 + $5284 | 0;
+  $5286 = SAFE_HEAP_LOAD($5285 >> 0 | 0, 1, 0) | 0 | 0;
+  $5287 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5288 = $5287 ^ $5286;
+  $5289 = $5288 & 255;
+  $5290 = 10060 + ($5289 << 2) | 0;
+  $5291 = SAFE_HEAP_LOAD($5290 | 0, 4, 0) | 0 | 0;
+  $5292 = $5281 ^ $5291;
+  $5293 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5294 = $5293 & 255;
+  $5295 = $5294 ^ 216;
+  $5296 = 44718 + $5295 | 0;
+  $5297 = SAFE_HEAP_LOAD($5296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5298 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5299 = $5298 ^ $5297;
+  $5300 = $5299 & 255;
+  $5301 = 11084 + ($5300 << 2) | 0;
+  $5302 = SAFE_HEAP_LOAD($5301 | 0, 4, 0) | 0 | 0;
+  $5303 = $5292 ^ $5302;
+  $5304 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5305 = $5304 & 255;
+  $5306 = $5305 ^ 152;
+  $5307 = 44974 + $5306 | 0;
+  $5308 = SAFE_HEAP_LOAD($5307 >> 0 | 0, 1, 0) | 0 | 0;
+  $5309 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5310 = $5309 ^ $5308;
+  $5311 = $5310 & 255;
+  $5312 = 8012 + ($5311 << 2) | 0;
+  $5313 = SAFE_HEAP_LOAD($5312 | 0, 4, 0) | 0 | 0;
+  $5314 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5315 = $5314 & 255;
+  $5316 = $5315 ^ 253;
+  $5317 = 44974 + $5316 | 0;
+  $5318 = SAFE_HEAP_LOAD($5317 >> 0 | 0, 1, 0) | 0 | 0;
+  $5319 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5320 = $5319 ^ $5318;
+  $5321 = $5320 & 255;
+  $5322 = 9036 + ($5321 << 2) | 0;
+  $5323 = SAFE_HEAP_LOAD($5322 | 0, 4, 0) | 0 | 0;
+  $5324 = $5323 ^ $5313;
+  $5325 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5326 = $5325 & 255;
+  $5327 = $5326 ^ 152;
+  $5328 = 44718 + $5327 | 0;
+  $5329 = SAFE_HEAP_LOAD($5328 >> 0 | 0, 1, 0) | 0 | 0;
+  $5330 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5331 = $5330 ^ $5329;
+  $5332 = $5331 & 255;
+  $5333 = 10060 + ($5332 << 2) | 0;
+  $5334 = SAFE_HEAP_LOAD($5333 | 0, 4, 0) | 0 | 0;
+  $5335 = $5324 ^ $5334;
+  $5336 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5337 = $5336 & 255;
+  $5338 = $5337 ^ 253;
+  $5339 = 44718 + $5338 | 0;
+  $5340 = SAFE_HEAP_LOAD($5339 >> 0 | 0, 1, 0) | 0 | 0;
+  $5341 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5342 = $5341 ^ $5340;
+  $5343 = $5342 & 255;
+  $5344 = 11084 + ($5343 << 2) | 0;
+  $5345 = SAFE_HEAP_LOAD($5344 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5352 | 0, $5350 | 0, 4);
+  $5353 = $5351 << 9;
+  $5354 = $5351 >>> 23;
+  $5355 = $5353 | $5354;
+  $5356 = $0 + 4172 | 0;
+  SAFE_HEAP_STORE($5356 | 0, $5355 | 0, 4);
+  $5357 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5358 = $5357 & 255;
+  $5359 = $5358 ^ 24;
+  $5360 = 44974 + $5359 | 0;
+  $5361 = SAFE_HEAP_LOAD($5360 >> 0 | 0, 1, 0) | 0 | 0;
+  $5362 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5363 = $5362 ^ $5361;
+  $5364 = $5363 & 255;
+  $5365 = 8012 + ($5364 << 2) | 0;
+  $5366 = SAFE_HEAP_LOAD($5365 | 0, 4, 0) | 0 | 0;
+  $5367 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5368 = $5367 & 255;
+  $5369 = $5368 ^ 55;
+  $5370 = 44974 + $5369 | 0;
+  $5371 = SAFE_HEAP_LOAD($5370 >> 0 | 0, 1, 0) | 0 | 0;
+  $5372 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5373 = $5372 ^ $5371;
+  $5374 = $5373 & 255;
+  $5375 = 9036 + ($5374 << 2) | 0;
+  $5376 = SAFE_HEAP_LOAD($5375 | 0, 4, 0) | 0 | 0;
+  $5377 = $5376 ^ $5366;
+  $5378 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5379 = $5378 & 255;
+  $5380 = $5379 ^ 24;
+  $5381 = 44718 + $5380 | 0;
+  $5382 = SAFE_HEAP_LOAD($5381 >> 0 | 0, 1, 0) | 0 | 0;
+  $5383 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5384 = $5383 ^ $5382;
+  $5385 = $5384 & 255;
+  $5386 = 10060 + ($5385 << 2) | 0;
+  $5387 = SAFE_HEAP_LOAD($5386 | 0, 4, 0) | 0 | 0;
+  $5388 = $5377 ^ $5387;
+  $5389 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5390 = $5389 & 255;
+  $5391 = $5390 ^ 55;
+  $5392 = 44718 + $5391 | 0;
+  $5393 = SAFE_HEAP_LOAD($5392 >> 0 | 0, 1, 0) | 0 | 0;
+  $5394 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5395 = $5394 ^ $5393;
+  $5396 = $5395 & 255;
+  $5397 = 11084 + ($5396 << 2) | 0;
+  $5398 = SAFE_HEAP_LOAD($5397 | 0, 4, 0) | 0 | 0;
+  $5399 = $5388 ^ $5398;
+  $5400 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5401 = $5400 & 255;
+  $5402 = $5401 ^ 247;
+  $5403 = 44974 + $5402 | 0;
+  $5404 = SAFE_HEAP_LOAD($5403 >> 0 | 0, 1, 0) | 0 | 0;
+  $5405 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5406 = $5405 ^ $5404;
+  $5407 = $5406 & 255;
+  $5408 = 8012 + ($5407 << 2) | 0;
+  $5409 = SAFE_HEAP_LOAD($5408 | 0, 4, 0) | 0 | 0;
+  $5410 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5411 = $5410 & 255;
+  $5412 = $5411 ^ 113;
+  $5413 = 44974 + $5412 | 0;
+  $5414 = SAFE_HEAP_LOAD($5413 >> 0 | 0, 1, 0) | 0 | 0;
+  $5415 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5416 = $5415 ^ $5414;
+  $5417 = $5416 & 255;
+  $5418 = 9036 + ($5417 << 2) | 0;
+  $5419 = SAFE_HEAP_LOAD($5418 | 0, 4, 0) | 0 | 0;
+  $5420 = $5419 ^ $5409;
+  $5421 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5422 = $5421 & 255;
+  $5423 = $5422 ^ 247;
+  $5424 = 44718 + $5423 | 0;
+  $5425 = SAFE_HEAP_LOAD($5424 >> 0 | 0, 1, 0) | 0 | 0;
+  $5426 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5427 = $5426 ^ $5425;
+  $5428 = $5427 & 255;
+  $5429 = 10060 + ($5428 << 2) | 0;
+  $5430 = SAFE_HEAP_LOAD($5429 | 0, 4, 0) | 0 | 0;
+  $5431 = $5420 ^ $5430;
+  $5432 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5433 = $5432 & 255;
+  $5434 = $5433 ^ 113;
+  $5435 = 44718 + $5434 | 0;
+  $5436 = SAFE_HEAP_LOAD($5435 >> 0 | 0, 1, 0) | 0 | 0;
+  $5437 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5438 = $5437 ^ $5436;
+  $5439 = $5438 & 255;
+  $5440 = 11084 + ($5439 << 2) | 0;
+  $5441 = SAFE_HEAP_LOAD($5440 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5448 | 0, $5446 | 0, 4);
+  $5449 = $5447 << 9;
+  $5450 = $5447 >>> 23;
+  $5451 = $5449 | $5450;
+  $5452 = $0 + 4180 | 0;
+  SAFE_HEAP_STORE($5452 | 0, $5451 | 0, 4);
+  $5453 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5454 = $5453 & 255;
+  $5455 = $5454 ^ 236;
+  $5456 = 44974 + $5455 | 0;
+  $5457 = SAFE_HEAP_LOAD($5456 >> 0 | 0, 1, 0) | 0 | 0;
+  $5458 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5459 = $5458 ^ $5457;
+  $5460 = $5459 & 255;
+  $5461 = 8012 + ($5460 << 2) | 0;
+  $5462 = SAFE_HEAP_LOAD($5461 | 0, 4, 0) | 0 | 0;
+  $5463 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5464 = $5463 & 255;
+  $5465 = $5464 ^ 241;
+  $5466 = 44974 + $5465 | 0;
+  $5467 = SAFE_HEAP_LOAD($5466 >> 0 | 0, 1, 0) | 0 | 0;
+  $5468 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5469 = $5468 ^ $5467;
+  $5470 = $5469 & 255;
+  $5471 = 9036 + ($5470 << 2) | 0;
+  $5472 = SAFE_HEAP_LOAD($5471 | 0, 4, 0) | 0 | 0;
+  $5473 = $5472 ^ $5462;
+  $5474 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5475 = $5474 & 255;
+  $5476 = $5475 ^ 236;
+  $5477 = 44718 + $5476 | 0;
+  $5478 = SAFE_HEAP_LOAD($5477 >> 0 | 0, 1, 0) | 0 | 0;
+  $5479 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5480 = $5479 ^ $5478;
+  $5481 = $5480 & 255;
+  $5482 = 10060 + ($5481 << 2) | 0;
+  $5483 = SAFE_HEAP_LOAD($5482 | 0, 4, 0) | 0 | 0;
+  $5484 = $5473 ^ $5483;
+  $5485 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5486 = $5485 & 255;
+  $5487 = $5486 ^ 241;
+  $5488 = 44718 + $5487 | 0;
+  $5489 = SAFE_HEAP_LOAD($5488 >> 0 | 0, 1, 0) | 0 | 0;
+  $5490 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5491 = $5490 ^ $5489;
+  $5492 = $5491 & 255;
+  $5493 = 11084 + ($5492 << 2) | 0;
+  $5494 = SAFE_HEAP_LOAD($5493 | 0, 4, 0) | 0 | 0;
+  $5495 = $5484 ^ $5494;
+  $5496 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5497 = $5496 & 255;
+  $5498 = $5497 ^ 108;
+  $5499 = 44974 + $5498 | 0;
+  $5500 = SAFE_HEAP_LOAD($5499 >> 0 | 0, 1, 0) | 0 | 0;
+  $5501 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5502 = $5501 ^ $5500;
+  $5503 = $5502 & 255;
+  $5504 = 8012 + ($5503 << 2) | 0;
+  $5505 = SAFE_HEAP_LOAD($5504 | 0, 4, 0) | 0 | 0;
+  $5506 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5507 = $5506 & 255;
+  $5508 = $5507 ^ 225;
+  $5509 = 44974 + $5508 | 0;
+  $5510 = SAFE_HEAP_LOAD($5509 >> 0 | 0, 1, 0) | 0 | 0;
+  $5511 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5512 = $5511 ^ $5510;
+  $5513 = $5512 & 255;
+  $5514 = 9036 + ($5513 << 2) | 0;
+  $5515 = SAFE_HEAP_LOAD($5514 | 0, 4, 0) | 0 | 0;
+  $5516 = $5515 ^ $5505;
+  $5517 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5518 = $5517 & 255;
+  $5519 = $5518 ^ 108;
+  $5520 = 44718 + $5519 | 0;
+  $5521 = SAFE_HEAP_LOAD($5520 >> 0 | 0, 1, 0) | 0 | 0;
+  $5522 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5523 = $5522 ^ $5521;
+  $5524 = $5523 & 255;
+  $5525 = 10060 + ($5524 << 2) | 0;
+  $5526 = SAFE_HEAP_LOAD($5525 | 0, 4, 0) | 0 | 0;
+  $5527 = $5516 ^ $5526;
+  $5528 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5529 = $5528 & 255;
+  $5530 = $5529 ^ 225;
+  $5531 = 44718 + $5530 | 0;
+  $5532 = SAFE_HEAP_LOAD($5531 >> 0 | 0, 1, 0) | 0 | 0;
+  $5533 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5534 = $5533 ^ $5532;
+  $5535 = $5534 & 255;
+  $5536 = 11084 + ($5535 << 2) | 0;
+  $5537 = SAFE_HEAP_LOAD($5536 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5544 | 0, $5542 | 0, 4);
+  $5545 = $5543 << 9;
+  $5546 = $5543 >>> 23;
+  $5547 = $5545 | $5546;
+  $5548 = $0 + 4188 | 0;
+  SAFE_HEAP_STORE($5548 | 0, $5547 | 0, 4);
+  $5549 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5550 = $5549 & 255;
+  $5551 = $5550 ^ 67;
+  $5552 = 44974 + $5551 | 0;
+  $5553 = SAFE_HEAP_LOAD($5552 >> 0 | 0, 1, 0) | 0 | 0;
+  $5554 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5555 = $5554 ^ $5553;
+  $5556 = $5555 & 255;
+  $5557 = 8012 + ($5556 << 2) | 0;
+  $5558 = SAFE_HEAP_LOAD($5557 | 0, 4, 0) | 0 | 0;
+  $5559 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5560 = $5559 & 255;
+  $5561 = $5560 ^ 48;
+  $5562 = 44974 + $5561 | 0;
+  $5563 = SAFE_HEAP_LOAD($5562 >> 0 | 0, 1, 0) | 0 | 0;
+  $5564 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5565 = $5564 ^ $5563;
+  $5566 = $5565 & 255;
+  $5567 = 9036 + ($5566 << 2) | 0;
+  $5568 = SAFE_HEAP_LOAD($5567 | 0, 4, 0) | 0 | 0;
+  $5569 = $5568 ^ $5558;
+  $5570 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5571 = $5570 & 255;
+  $5572 = $5571 ^ 67;
+  $5573 = 44718 + $5572 | 0;
+  $5574 = SAFE_HEAP_LOAD($5573 >> 0 | 0, 1, 0) | 0 | 0;
+  $5575 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5576 = $5575 ^ $5574;
+  $5577 = $5576 & 255;
+  $5578 = 10060 + ($5577 << 2) | 0;
+  $5579 = SAFE_HEAP_LOAD($5578 | 0, 4, 0) | 0 | 0;
+  $5580 = $5569 ^ $5579;
+  $5581 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5582 = $5581 & 255;
+  $5583 = $5582 ^ 48;
+  $5584 = 44718 + $5583 | 0;
+  $5585 = SAFE_HEAP_LOAD($5584 >> 0 | 0, 1, 0) | 0 | 0;
+  $5586 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5587 = $5586 ^ $5585;
+  $5588 = $5587 & 255;
+  $5589 = 11084 + ($5588 << 2) | 0;
+  $5590 = SAFE_HEAP_LOAD($5589 | 0, 4, 0) | 0 | 0;
+  $5591 = $5580 ^ $5590;
+  $5592 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5593 = $5592 & 255;
+  $5594 = $5593 ^ 117;
+  $5595 = 44974 + $5594 | 0;
+  $5596 = SAFE_HEAP_LOAD($5595 >> 0 | 0, 1, 0) | 0 | 0;
+  $5597 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5598 = $5597 ^ $5596;
+  $5599 = $5598 & 255;
+  $5600 = 8012 + ($5599 << 2) | 0;
+  $5601 = SAFE_HEAP_LOAD($5600 | 0, 4, 0) | 0 | 0;
+  $5602 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5603 = $5602 & 255;
+  $5604 = $5603 ^ 15;
+  $5605 = 44974 + $5604 | 0;
+  $5606 = SAFE_HEAP_LOAD($5605 >> 0 | 0, 1, 0) | 0 | 0;
+  $5607 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5608 = $5607 ^ $5606;
+  $5609 = $5608 & 255;
+  $5610 = 9036 + ($5609 << 2) | 0;
+  $5611 = SAFE_HEAP_LOAD($5610 | 0, 4, 0) | 0 | 0;
+  $5612 = $5611 ^ $5601;
+  $5613 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5614 = $5613 & 255;
+  $5615 = $5614 ^ 117;
+  $5616 = 44718 + $5615 | 0;
+  $5617 = SAFE_HEAP_LOAD($5616 >> 0 | 0, 1, 0) | 0 | 0;
+  $5618 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5619 = $5618 ^ $5617;
+  $5620 = $5619 & 255;
+  $5621 = 10060 + ($5620 << 2) | 0;
+  $5622 = SAFE_HEAP_LOAD($5621 | 0, 4, 0) | 0 | 0;
+  $5623 = $5612 ^ $5622;
+  $5624 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5625 = $5624 & 255;
+  $5626 = $5625 ^ 15;
+  $5627 = 44718 + $5626 | 0;
+  $5628 = SAFE_HEAP_LOAD($5627 >> 0 | 0, 1, 0) | 0 | 0;
+  $5629 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5630 = $5629 ^ $5628;
+  $5631 = $5630 & 255;
+  $5632 = 11084 + ($5631 << 2) | 0;
+  $5633 = SAFE_HEAP_LOAD($5632 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5640 | 0, $5638 | 0, 4);
+  $5641 = $5639 << 9;
+  $5642 = $5639 >>> 23;
+  $5643 = $5641 | $5642;
+  $5644 = $0 + 4196 | 0;
+  SAFE_HEAP_STORE($5644 | 0, $5643 | 0, 4);
+  $5645 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5646 = $5645 & 255;
+  $5647 = $5646 ^ 55;
+  $5648 = 44974 + $5647 | 0;
+  $5649 = SAFE_HEAP_LOAD($5648 >> 0 | 0, 1, 0) | 0 | 0;
+  $5650 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5651 = $5650 ^ $5649;
+  $5652 = $5651 & 255;
+  $5653 = 8012 + ($5652 << 2) | 0;
+  $5654 = SAFE_HEAP_LOAD($5653 | 0, 4, 0) | 0 | 0;
+  $5655 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5656 = $5655 & 255;
+  $5657 = $5656 ^ 248;
+  $5658 = 44974 + $5657 | 0;
+  $5659 = SAFE_HEAP_LOAD($5658 >> 0 | 0, 1, 0) | 0 | 0;
+  $5660 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5661 = $5660 ^ $5659;
+  $5662 = $5661 & 255;
+  $5663 = 9036 + ($5662 << 2) | 0;
+  $5664 = SAFE_HEAP_LOAD($5663 | 0, 4, 0) | 0 | 0;
+  $5665 = $5664 ^ $5654;
+  $5666 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5667 = $5666 & 255;
+  $5668 = $5667 ^ 55;
+  $5669 = 44718 + $5668 | 0;
+  $5670 = SAFE_HEAP_LOAD($5669 >> 0 | 0, 1, 0) | 0 | 0;
+  $5671 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5672 = $5671 ^ $5670;
+  $5673 = $5672 & 255;
+  $5674 = 10060 + ($5673 << 2) | 0;
+  $5675 = SAFE_HEAP_LOAD($5674 | 0, 4, 0) | 0 | 0;
+  $5676 = $5665 ^ $5675;
+  $5677 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5678 = $5677 & 255;
+  $5679 = $5678 ^ 248;
+  $5680 = 44718 + $5679 | 0;
+  $5681 = SAFE_HEAP_LOAD($5680 >> 0 | 0, 1, 0) | 0 | 0;
+  $5682 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5683 = $5682 ^ $5681;
+  $5684 = $5683 & 255;
+  $5685 = 11084 + ($5684 << 2) | 0;
+  $5686 = SAFE_HEAP_LOAD($5685 | 0, 4, 0) | 0 | 0;
+  $5687 = $5676 ^ $5686;
+  $5688 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5689 = $5688 & 255;
+  $5690 = $5689 ^ 38;
+  $5691 = 44974 + $5690 | 0;
+  $5692 = SAFE_HEAP_LOAD($5691 >> 0 | 0, 1, 0) | 0 | 0;
+  $5693 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5694 = $5693 ^ $5692;
+  $5695 = $5694 & 255;
+  $5696 = 8012 + ($5695 << 2) | 0;
+  $5697 = SAFE_HEAP_LOAD($5696 | 0, 4, 0) | 0 | 0;
+  $5698 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5699 = $5698 & 255;
+  $5700 = $5699 ^ 27;
+  $5701 = 44974 + $5700 | 0;
+  $5702 = SAFE_HEAP_LOAD($5701 >> 0 | 0, 1, 0) | 0 | 0;
+  $5703 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5704 = $5703 ^ $5702;
+  $5705 = $5704 & 255;
+  $5706 = 9036 + ($5705 << 2) | 0;
+  $5707 = SAFE_HEAP_LOAD($5706 | 0, 4, 0) | 0 | 0;
+  $5708 = $5707 ^ $5697;
+  $5709 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5710 = $5709 & 255;
+  $5711 = $5710 ^ 38;
+  $5712 = 44718 + $5711 | 0;
+  $5713 = SAFE_HEAP_LOAD($5712 >> 0 | 0, 1, 0) | 0 | 0;
+  $5714 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5715 = $5714 ^ $5713;
+  $5716 = $5715 & 255;
+  $5717 = 10060 + ($5716 << 2) | 0;
+  $5718 = SAFE_HEAP_LOAD($5717 | 0, 4, 0) | 0 | 0;
+  $5719 = $5708 ^ $5718;
+  $5720 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5721 = $5720 & 255;
+  $5722 = $5721 ^ 27;
+  $5723 = 44718 + $5722 | 0;
+  $5724 = SAFE_HEAP_LOAD($5723 >> 0 | 0, 1, 0) | 0 | 0;
+  $5725 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5726 = $5725 ^ $5724;
+  $5727 = $5726 & 255;
+  $5728 = 11084 + ($5727 << 2) | 0;
+  $5729 = SAFE_HEAP_LOAD($5728 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5736 | 0, $5734 | 0, 4);
+  $5737 = $5735 << 9;
+  $5738 = $5735 >>> 23;
+  $5739 = $5737 | $5738;
+  $5740 = $0 + 4204 | 0;
+  SAFE_HEAP_STORE($5740 | 0, $5739 | 0, 4);
+  $5741 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5742 = $5741 & 255;
+  $5743 = $5742 ^ 250;
+  $5744 = 44974 + $5743 | 0;
+  $5745 = SAFE_HEAP_LOAD($5744 >> 0 | 0, 1, 0) | 0 | 0;
+  $5746 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5747 = $5746 ^ $5745;
+  $5748 = $5747 & 255;
+  $5749 = 8012 + ($5748 << 2) | 0;
+  $5750 = SAFE_HEAP_LOAD($5749 | 0, 4, 0) | 0 | 0;
+  $5751 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5752 = $5751 & 255;
+  $5753 = $5752 ^ 135;
+  $5754 = 44974 + $5753 | 0;
+  $5755 = SAFE_HEAP_LOAD($5754 >> 0 | 0, 1, 0) | 0 | 0;
+  $5756 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5757 = $5756 ^ $5755;
+  $5758 = $5757 & 255;
+  $5759 = 9036 + ($5758 << 2) | 0;
+  $5760 = SAFE_HEAP_LOAD($5759 | 0, 4, 0) | 0 | 0;
+  $5761 = $5760 ^ $5750;
+  $5762 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5763 = $5762 & 255;
+  $5764 = $5763 ^ 250;
+  $5765 = 44718 + $5764 | 0;
+  $5766 = SAFE_HEAP_LOAD($5765 >> 0 | 0, 1, 0) | 0 | 0;
+  $5767 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5768 = $5767 ^ $5766;
+  $5769 = $5768 & 255;
+  $5770 = 10060 + ($5769 << 2) | 0;
+  $5771 = SAFE_HEAP_LOAD($5770 | 0, 4, 0) | 0 | 0;
+  $5772 = $5761 ^ $5771;
+  $5773 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5774 = $5773 & 255;
+  $5775 = $5774 ^ 135;
+  $5776 = 44718 + $5775 | 0;
+  $5777 = SAFE_HEAP_LOAD($5776 >> 0 | 0, 1, 0) | 0 | 0;
+  $5778 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5779 = $5778 ^ $5777;
+  $5780 = $5779 & 255;
+  $5781 = 11084 + ($5780 << 2) | 0;
+  $5782 = SAFE_HEAP_LOAD($5781 | 0, 4, 0) | 0 | 0;
+  $5783 = $5772 ^ $5782;
+  $5784 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5785 = $5784 & 255;
+  $5786 = $5785 ^ 19;
+  $5787 = 44974 + $5786 | 0;
+  $5788 = SAFE_HEAP_LOAD($5787 >> 0 | 0, 1, 0) | 0 | 0;
+  $5789 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5790 = $5789 ^ $5788;
+  $5791 = $5790 & 255;
+  $5792 = 8012 + ($5791 << 2) | 0;
+  $5793 = SAFE_HEAP_LOAD($5792 | 0, 4, 0) | 0 | 0;
+  $5794 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5795 = $5794 & 255;
+  $5796 = $5795 ^ 250;
+  $5797 = 44974 + $5796 | 0;
+  $5798 = SAFE_HEAP_LOAD($5797 >> 0 | 0, 1, 0) | 0 | 0;
+  $5799 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5800 = $5799 ^ $5798;
+  $5801 = $5800 & 255;
+  $5802 = 9036 + ($5801 << 2) | 0;
+  $5803 = SAFE_HEAP_LOAD($5802 | 0, 4, 0) | 0 | 0;
+  $5804 = $5803 ^ $5793;
+  $5805 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5806 = $5805 & 255;
+  $5807 = $5806 ^ 19;
+  $5808 = 44718 + $5807 | 0;
+  $5809 = SAFE_HEAP_LOAD($5808 >> 0 | 0, 1, 0) | 0 | 0;
+  $5810 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5811 = $5810 ^ $5809;
+  $5812 = $5811 & 255;
+  $5813 = 10060 + ($5812 << 2) | 0;
+  $5814 = SAFE_HEAP_LOAD($5813 | 0, 4, 0) | 0 | 0;
+  $5815 = $5804 ^ $5814;
+  $5816 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5817 = $5816 & 255;
+  $5818 = $5817 ^ 250;
+  $5819 = 44718 + $5818 | 0;
+  $5820 = SAFE_HEAP_LOAD($5819 >> 0 | 0, 1, 0) | 0 | 0;
+  $5821 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5822 = $5821 ^ $5820;
+  $5823 = $5822 & 255;
+  $5824 = 11084 + ($5823 << 2) | 0;
+  $5825 = SAFE_HEAP_LOAD($5824 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5832 | 0, $5830 | 0, 4);
+  $5833 = $5831 << 9;
+  $5834 = $5831 >>> 23;
+  $5835 = $5833 | $5834;
+  $5836 = $0 + 4212 | 0;
+  SAFE_HEAP_STORE($5836 | 0, $5835 | 0, 4);
+  $5837 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5838 = $5837 & 255;
+  $5839 = $5838 ^ 148;
+  $5840 = 44974 + $5839 | 0;
+  $5841 = SAFE_HEAP_LOAD($5840 >> 0 | 0, 1, 0) | 0 | 0;
+  $5842 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5843 = $5842 ^ $5841;
+  $5844 = $5843 & 255;
+  $5845 = 8012 + ($5844 << 2) | 0;
+  $5846 = SAFE_HEAP_LOAD($5845 | 0, 4, 0) | 0 | 0;
+  $5847 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5848 = $5847 & 255;
+  $5849 = $5848 ^ 6;
+  $5850 = 44974 + $5849 | 0;
+  $5851 = SAFE_HEAP_LOAD($5850 >> 0 | 0, 1, 0) | 0 | 0;
+  $5852 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5853 = $5852 ^ $5851;
+  $5854 = $5853 & 255;
+  $5855 = 9036 + ($5854 << 2) | 0;
+  $5856 = SAFE_HEAP_LOAD($5855 | 0, 4, 0) | 0 | 0;
+  $5857 = $5856 ^ $5846;
+  $5858 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5859 = $5858 & 255;
+  $5860 = $5859 ^ 148;
+  $5861 = 44718 + $5860 | 0;
+  $5862 = SAFE_HEAP_LOAD($5861 >> 0 | 0, 1, 0) | 0 | 0;
+  $5863 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5864 = $5863 ^ $5862;
+  $5865 = $5864 & 255;
+  $5866 = 10060 + ($5865 << 2) | 0;
+  $5867 = SAFE_HEAP_LOAD($5866 | 0, 4, 0) | 0 | 0;
+  $5868 = $5857 ^ $5867;
+  $5869 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5870 = $5869 & 255;
+  $5871 = $5870 ^ 6;
+  $5872 = 44718 + $5871 | 0;
+  $5873 = SAFE_HEAP_LOAD($5872 >> 0 | 0, 1, 0) | 0 | 0;
+  $5874 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5875 = $5874 ^ $5873;
+  $5876 = $5875 & 255;
+  $5877 = 11084 + ($5876 << 2) | 0;
+  $5878 = SAFE_HEAP_LOAD($5877 | 0, 4, 0) | 0 | 0;
+  $5879 = $5868 ^ $5878;
+  $5880 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5881 = $5880 & 255;
+  $5882 = $5881 ^ 72;
+  $5883 = 44974 + $5882 | 0;
+  $5884 = SAFE_HEAP_LOAD($5883 >> 0 | 0, 1, 0) | 0 | 0;
+  $5885 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5886 = $5885 ^ $5884;
+  $5887 = $5886 & 255;
+  $5888 = 8012 + ($5887 << 2) | 0;
+  $5889 = SAFE_HEAP_LOAD($5888 | 0, 4, 0) | 0 | 0;
+  $5890 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5891 = $5890 & 255;
+  $5892 = $5891 ^ 63;
+  $5893 = 44974 + $5892 | 0;
+  $5894 = SAFE_HEAP_LOAD($5893 >> 0 | 0, 1, 0) | 0 | 0;
+  $5895 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5896 = $5895 ^ $5894;
+  $5897 = $5896 & 255;
+  $5898 = 9036 + ($5897 << 2) | 0;
+  $5899 = SAFE_HEAP_LOAD($5898 | 0, 4, 0) | 0 | 0;
+  $5900 = $5899 ^ $5889;
+  $5901 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5902 = $5901 & 255;
+  $5903 = $5902 ^ 72;
+  $5904 = 44718 + $5903 | 0;
+  $5905 = SAFE_HEAP_LOAD($5904 >> 0 | 0, 1, 0) | 0 | 0;
+  $5906 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $5907 = $5906 ^ $5905;
+  $5908 = $5907 & 255;
+  $5909 = 10060 + ($5908 << 2) | 0;
+  $5910 = SAFE_HEAP_LOAD($5909 | 0, 4, 0) | 0 | 0;
+  $5911 = $5900 ^ $5910;
+  $5912 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $5913 = $5912 & 255;
+  $5914 = $5913 ^ 63;
+  $5915 = 44718 + $5914 | 0;
+  $5916 = SAFE_HEAP_LOAD($5915 >> 0 | 0, 1, 0) | 0 | 0;
+  $5917 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $5918 = $5917 ^ $5916;
+  $5919 = $5918 & 255;
+  $5920 = 11084 + ($5919 << 2) | 0;
+  $5921 = SAFE_HEAP_LOAD($5920 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($5928 | 0, $5926 | 0, 4);
+  $5929 = $5927 << 9;
+  $5930 = $5927 >>> 23;
+  $5931 = $5929 | $5930;
+  $5932 = $0 + 4220 | 0;
+  SAFE_HEAP_STORE($5932 | 0, $5931 | 0, 4);
+  $5933 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $5934 = $5933 & 255;
+  $5935 = $5934 ^ 242;
+  $5936 = 44974 + $5935 | 0;
+  $5937 = SAFE_HEAP_LOAD($5936 >> 0 | 0, 1, 0) | 0 | 0;
+  $5938 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $5939 = $5938 ^ $5937;
+  $5940 = $5939 & 255;
+  $5941 = 8012 + ($5940 << 2) | 0;
+  $5942 = SAFE_HEAP_LOAD($5941 | 0, 4, 0) | 0 | 0;
+  $5943 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $5944 = $5943 & 255;
+  $5945 = $5944 ^ 94;
+  $5946 = 44974 + $5945 | 0;
+  $5947 = SAFE_HEAP_LOAD($5946 >> 0 | 0, 1, 0) | 0 | 0;
+  $5948 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $5949 = $5948 ^ $5947;
+  $5950 = $5949 & 255;
+  $5951 = 9036 + ($5950 << 2) | 0;
+  $5952 = SAFE_HEAP_LOAD($5951 | 0, 4, 0) | 0 | 0;
+  $5953 = $5952 ^ $5942;
+  $5954 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $5955 = $5954 & 255;
+  $5956 = $5955 ^ 242;
+  $5957 = 44718 + $5956 | 0;
+  $5958 = SAFE_HEAP_LOAD($5957 >> 0 | 0, 1, 0) | 0 | 0;
+  $5959 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $5960 = $5959 ^ $5958;
+  $5961 = $5960 & 255;
+  $5962 = 10060 + ($5961 << 2) | 0;
+  $5963 = SAFE_HEAP_LOAD($5962 | 0, 4, 0) | 0 | 0;
+  $5964 = $5953 ^ $5963;
+  $5965 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $5966 = $5965 & 255;
+  $5967 = $5966 ^ 94;
+  $5968 = 44718 + $5967 | 0;
+  $5969 = SAFE_HEAP_LOAD($5968 >> 0 | 0, 1, 0) | 0 | 0;
+  $5970 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $5971 = $5970 ^ $5969;
+  $5972 = $5971 & 255;
+  $5973 = 11084 + ($5972 << 2) | 0;
+  $5974 = SAFE_HEAP_LOAD($5973 | 0, 4, 0) | 0 | 0;
+  $5975 = $5964 ^ $5974;
+  $5976 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $5977 = $5976 & 255;
+  $5978 = $5977 ^ 208;
+  $5979 = 44974 + $5978 | 0;
+  $5980 = SAFE_HEAP_LOAD($5979 >> 0 | 0, 1, 0) | 0 | 0;
+  $5981 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $5982 = $5981 ^ $5980;
+  $5983 = $5982 & 255;
+  $5984 = 8012 + ($5983 << 2) | 0;
+  $5985 = SAFE_HEAP_LOAD($5984 | 0, 4, 0) | 0 | 0;
+  $5986 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $5987 = $5986 & 255;
+  $5988 = $5987 ^ 186;
+  $5989 = 44974 + $5988 | 0;
+  $5990 = SAFE_HEAP_LOAD($5989 >> 0 | 0, 1, 0) | 0 | 0;
+  $5991 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $5992 = $5991 ^ $5990;
+  $5993 = $5992 & 255;
+  $5994 = 9036 + ($5993 << 2) | 0;
+  $5995 = SAFE_HEAP_LOAD($5994 | 0, 4, 0) | 0 | 0;
+  $5996 = $5995 ^ $5985;
+  $5997 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $5998 = $5997 & 255;
+  $5999 = $5998 ^ 208;
+  $6000 = 44718 + $5999 | 0;
+  $6001 = SAFE_HEAP_LOAD($6000 >> 0 | 0, 1, 0) | 0 | 0;
+  $6002 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $6003 = $6002 ^ $6001;
+  $6004 = $6003 & 255;
+  $6005 = 10060 + ($6004 << 2) | 0;
+  $6006 = SAFE_HEAP_LOAD($6005 | 0, 4, 0) | 0 | 0;
+  $6007 = $5996 ^ $6006;
+  $6008 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $6009 = $6008 & 255;
+  $6010 = $6009 ^ 186;
+  $6011 = 44718 + $6010 | 0;
+  $6012 = SAFE_HEAP_LOAD($6011 >> 0 | 0, 1, 0) | 0 | 0;
+  $6013 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $6014 = $6013 ^ $6012;
+  $6015 = $6014 & 255;
+  $6016 = 11084 + ($6015 << 2) | 0;
+  $6017 = SAFE_HEAP_LOAD($6016 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($6024 | 0, $6022 | 0, 4);
+  $6025 = $6023 << 9;
+  $6026 = $6023 >>> 23;
+  $6027 = $6025 | $6026;
+  $6028 = $0 + 4228 | 0;
+  SAFE_HEAP_STORE($6028 | 0, $6027 | 0, 4);
+  $6029 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $6030 = $6029 & 255;
+  $6031 = $6030 ^ 139;
+  $6032 = 44974 + $6031 | 0;
+  $6033 = SAFE_HEAP_LOAD($6032 >> 0 | 0, 1, 0) | 0 | 0;
+  $6034 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $6035 = $6034 ^ $6033;
+  $6036 = $6035 & 255;
+  $6037 = 8012 + ($6036 << 2) | 0;
+  $6038 = SAFE_HEAP_LOAD($6037 | 0, 4, 0) | 0 | 0;
+  $6039 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $6040 = $6039 & 255;
+  $6041 = $6040 ^ 174;
+  $6042 = 44974 + $6041 | 0;
+  $6043 = SAFE_HEAP_LOAD($6042 >> 0 | 0, 1, 0) | 0 | 0;
+  $6044 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $6045 = $6044 ^ $6043;
+  $6046 = $6045 & 255;
+  $6047 = 9036 + ($6046 << 2) | 0;
+  $6048 = SAFE_HEAP_LOAD($6047 | 0, 4, 0) | 0 | 0;
+  $6049 = $6048 ^ $6038;
+  $6050 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $6051 = $6050 & 255;
+  $6052 = $6051 ^ 139;
+  $6053 = 44718 + $6052 | 0;
+  $6054 = SAFE_HEAP_LOAD($6053 >> 0 | 0, 1, 0) | 0 | 0;
+  $6055 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $6056 = $6055 ^ $6054;
+  $6057 = $6056 & 255;
+  $6058 = 10060 + ($6057 << 2) | 0;
+  $6059 = SAFE_HEAP_LOAD($6058 | 0, 4, 0) | 0 | 0;
+  $6060 = $6049 ^ $6059;
+  $6061 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $6062 = $6061 & 255;
+  $6063 = $6062 ^ 174;
+  $6064 = 44718 + $6063 | 0;
+  $6065 = SAFE_HEAP_LOAD($6064 >> 0 | 0, 1, 0) | 0 | 0;
+  $6066 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $6067 = $6066 ^ $6065;
+  $6068 = $6067 & 255;
+  $6069 = 11084 + ($6068 << 2) | 0;
+  $6070 = SAFE_HEAP_LOAD($6069 | 0, 4, 0) | 0 | 0;
+  $6071 = $6060 ^ $6070;
+  $6072 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $6073 = $6072 & 255;
+  $6074 = $6073 ^ 48;
+  $6075 = 44974 + $6074 | 0;
+  $6076 = SAFE_HEAP_LOAD($6075 >> 0 | 0, 1, 0) | 0 | 0;
+  $6077 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $6078 = $6077 ^ $6076;
+  $6079 = $6078 & 255;
+  $6080 = 8012 + ($6079 << 2) | 0;
+  $6081 = SAFE_HEAP_LOAD($6080 | 0, 4, 0) | 0 | 0;
+  $6082 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $6083 = $6082 & 255;
+  $6084 = $6083 ^ 91;
+  $6085 = 44974 + $6084 | 0;
+  $6086 = SAFE_HEAP_LOAD($6085 >> 0 | 0, 1, 0) | 0 | 0;
+  $6087 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $6088 = $6087 ^ $6086;
+  $6089 = $6088 & 255;
+  $6090 = 9036 + ($6089 << 2) | 0;
+  $6091 = SAFE_HEAP_LOAD($6090 | 0, 4, 0) | 0 | 0;
+  $6092 = $6091 ^ $6081;
+  $6093 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $6094 = $6093 & 255;
+  $6095 = $6094 ^ 48;
+  $6096 = 44718 + $6095 | 0;
+  $6097 = SAFE_HEAP_LOAD($6096 >> 0 | 0, 1, 0) | 0 | 0;
+  $6098 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $6099 = $6098 ^ $6097;
+  $6100 = $6099 & 255;
+  $6101 = 10060 + ($6100 << 2) | 0;
+  $6102 = SAFE_HEAP_LOAD($6101 | 0, 4, 0) | 0 | 0;
+  $6103 = $6092 ^ $6102;
+  $6104 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $6105 = $6104 & 255;
+  $6106 = $6105 ^ 91;
+  $6107 = 44718 + $6106 | 0;
+  $6108 = SAFE_HEAP_LOAD($6107 >> 0 | 0, 1, 0) | 0 | 0;
+  $6109 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $6110 = $6109 ^ $6108;
+  $6111 = $6110 & 255;
+  $6112 = 11084 + ($6111 << 2) | 0;
+  $6113 = SAFE_HEAP_LOAD($6112 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($6120 | 0, $6118 | 0, 4);
+  $6121 = $6119 << 9;
+  $6122 = $6119 >>> 23;
+  $6123 = $6121 | $6122;
+  $6124 = $0 + 4236 | 0;
+  SAFE_HEAP_STORE($6124 | 0, $6123 | 0, 4);
+  $6125 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $6126 = $6125 & 255;
+  $6127 = $6126 ^ 132;
+  $6128 = 44974 + $6127 | 0;
+  $6129 = SAFE_HEAP_LOAD($6128 >> 0 | 0, 1, 0) | 0 | 0;
+  $6130 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $6131 = $6130 ^ $6129;
+  $6132 = $6131 & 255;
+  $6133 = 8012 + ($6132 << 2) | 0;
+  $6134 = SAFE_HEAP_LOAD($6133 | 0, 4, 0) | 0 | 0;
+  $6135 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $6136 = $6135 & 255;
+  $6137 = $6136 ^ 138;
+  $6138 = 44974 + $6137 | 0;
+  $6139 = SAFE_HEAP_LOAD($6138 >> 0 | 0, 1, 0) | 0 | 0;
+  $6140 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $6141 = $6140 ^ $6139;
+  $6142 = $6141 & 255;
+  $6143 = 9036 + ($6142 << 2) | 0;
+  $6144 = SAFE_HEAP_LOAD($6143 | 0, 4, 0) | 0 | 0;
+  $6145 = $6144 ^ $6134;
+  $6146 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $6147 = $6146 & 255;
+  $6148 = $6147 ^ 132;
+  $6149 = 44718 + $6148 | 0;
+  $6150 = SAFE_HEAP_LOAD($6149 >> 0 | 0, 1, 0) | 0 | 0;
+  $6151 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $6152 = $6151 ^ $6150;
+  $6153 = $6152 & 255;
+  $6154 = 10060 + ($6153 << 2) | 0;
+  $6155 = SAFE_HEAP_LOAD($6154 | 0, 4, 0) | 0 | 0;
+  $6156 = $6145 ^ $6155;
+  $6157 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $6158 = $6157 & 255;
+  $6159 = $6158 ^ 138;
+  $6160 = 44718 + $6159 | 0;
+  $6161 = SAFE_HEAP_LOAD($6160 >> 0 | 0, 1, 0) | 0 | 0;
+  $6162 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $6163 = $6162 ^ $6161;
+  $6164 = $6163 & 255;
+  $6165 = 11084 + ($6164 << 2) | 0;
+  $6166 = SAFE_HEAP_LOAD($6165 | 0, 4, 0) | 0 | 0;
+  $6167 = $6156 ^ $6166;
+  $6168 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $6169 = $6168 & 255;
+  $6170 = $6169 ^ 84;
+  $6171 = 44974 + $6170 | 0;
+  $6172 = SAFE_HEAP_LOAD($6171 >> 0 | 0, 1, 0) | 0 | 0;
+  $6173 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $6174 = $6173 ^ $6172;
+  $6175 = $6174 & 255;
+  $6176 = 8012 + ($6175 << 2) | 0;
+  $6177 = SAFE_HEAP_LOAD($6176 | 0, 4, 0) | 0 | 0;
+  $6178 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $6179 = $6178 & 255;
+  $6180 = 44974 + $6179 | 0;
+  $6181 = SAFE_HEAP_LOAD($6180 >> 0 | 0, 1, 0) | 0 | 0;
+  $6182 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $6183 = $6182 ^ $6181;
+  $6184 = $6183 & 255;
+  $6185 = 9036 + ($6184 << 2) | 0;
+  $6186 = SAFE_HEAP_LOAD($6185 | 0, 4, 0) | 0 | 0;
+  $6187 = $6186 ^ $6177;
+  $6188 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $6189 = $6188 & 255;
+  $6190 = $6189 ^ 84;
+  $6191 = 44718 + $6190 | 0;
+  $6192 = SAFE_HEAP_LOAD($6191 >> 0 | 0, 1, 0) | 0 | 0;
+  $6193 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $6194 = $6193 ^ $6192;
+  $6195 = $6194 & 255;
+  $6196 = 10060 + ($6195 << 2) | 0;
+  $6197 = SAFE_HEAP_LOAD($6196 | 0, 4, 0) | 0 | 0;
+  $6198 = $6187 ^ $6197;
+  $6199 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $6200 = $6199 & 255;
+  $6201 = 44718 + $6200 | 0;
+  $6202 = SAFE_HEAP_LOAD($6201 >> 0 | 0, 1, 0) | 0 | 0;
+  $6203 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $6204 = $6203 ^ $6202;
+  $6205 = $6204 & 255;
+  $6206 = 11084 + ($6205 << 2) | 0;
+  $6207 = SAFE_HEAP_LOAD($6206 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($6214 | 0, $6212 | 0, 4);
+  $6215 = $6213 << 9;
+  $6216 = $6213 >>> 23;
+  $6217 = $6215 | $6216;
+  $6218 = $0 + 4244 | 0;
+  SAFE_HEAP_STORE($6218 | 0, $6217 | 0, 4);
+  $6219 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $6220 = $6219 & 255;
+  $6221 = $6220 ^ 223;
+  $6222 = 44974 + $6221 | 0;
+  $6223 = SAFE_HEAP_LOAD($6222 >> 0 | 0, 1, 0) | 0 | 0;
+  $6224 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $6225 = $6224 ^ $6223;
+  $6226 = $6225 & 255;
+  $6227 = 8012 + ($6226 << 2) | 0;
+  $6228 = SAFE_HEAP_LOAD($6227 | 0, 4, 0) | 0 | 0;
+  $6229 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+  $6230 = $6229 & 255;
+  $6231 = $6230 ^ 188;
+  $6232 = 44974 + $6231 | 0;
+  $6233 = SAFE_HEAP_LOAD($6232 >> 0 | 0, 1, 0) | 0 | 0;
+  $6234 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $6235 = $6234 ^ $6233;
+  $6236 = $6235 & 255;
+  $6237 = 9036 + ($6236 << 2) | 0;
+  $6238 = SAFE_HEAP_LOAD($6237 | 0, 4, 0) | 0 | 0;
+  $6239 = $6238 ^ $6228;
+  $6240 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+  $6241 = $6240 & 255;
+  $6242 = $6241 ^ 223;
+  $6243 = 44718 + $6242 | 0;
+  $6244 = SAFE_HEAP_LOAD($6243 >> 0 | 0, 1, 0) | 0 | 0;
+  $6245 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $6246 = $6245 ^ $6244;
+  $6247 = $6246 & 255;
+  $6248 = 10060 + ($6247 << 2) | 0;
+  $6249 = SAFE_HEAP_LOAD($6248 | 0, 4, 0) | 0 | 0;
+  $6250 = $6239 ^ $6249;
+  $6251 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+  $6252 = $6251 & 255;
+  $6253 = $6252 ^ 188;
+  $6254 = 44718 + $6253 | 0;
+  $6255 = SAFE_HEAP_LOAD($6254 >> 0 | 0, 1, 0) | 0 | 0;
+  $6256 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+  $6257 = $6256 ^ $6255;
+  $6258 = $6257 & 255;
+  $6259 = 11084 + ($6258 << 2) | 0;
+  $6260 = SAFE_HEAP_LOAD($6259 | 0, 4, 0) | 0 | 0;
+  $6261 = $6250 ^ $6260;
+  $6262 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+  $6263 = $6262 & 255;
+  $6264 = $6263 ^ 35;
+  $6265 = 44974 + $6264 | 0;
+  $6266 = SAFE_HEAP_LOAD($6265 >> 0 | 0, 1, 0) | 0 | 0;
+  $6267 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $6268 = $6267 ^ $6266;
+  $6269 = $6268 & 255;
+  $6270 = 8012 + ($6269 << 2) | 0;
+  $6271 = SAFE_HEAP_LOAD($6270 | 0, 4, 0) | 0 | 0;
+  $6272 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+  $6273 = $6272 & 255;
+  $6274 = $6273 ^ 157;
+  $6275 = 44974 + $6274 | 0;
+  $6276 = SAFE_HEAP_LOAD($6275 >> 0 | 0, 1, 0) | 0 | 0;
+  $6277 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+  $6278 = $6277 ^ $6276;
+  $6279 = $6278 & 255;
+  $6280 = 9036 + ($6279 << 2) | 0;
+  $6281 = SAFE_HEAP_LOAD($6280 | 0, 4, 0) | 0 | 0;
+  $6282 = $6281 ^ $6271;
+  $6283 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+  $6284 = $6283 & 255;
+  $6285 = $6284 ^ 35;
+  $6286 = 44718 + $6285 | 0;
+  $6287 = SAFE_HEAP_LOAD($6286 >> 0 | 0, 1, 0) | 0 | 0;
+  $6288 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+  $6289 = $6288 ^ $6287;
+  $6290 = $6289 & 255;
+  $6291 = 10060 + ($6290 << 2) | 0;
+  $6292 = SAFE_HEAP_LOAD($6291 | 0, 4, 0) | 0 | 0;
+  $6293 = $6282 ^ $6292;
+  $6294 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $6295 = $6294 & 255;
+  $6296 = $6295 ^ 157;
+  $6297 = 44718 + $6296 | 0;
+  $6298 = SAFE_HEAP_LOAD($6297 >> 0 | 0, 1, 0) | 0 | 0;
+  $6299 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+  $6300 = $6299 ^ $6298;
+  $6301 = $6300 & 255;
+  $6302 = 11084 + ($6301 << 2) | 0;
+  $6303 = SAFE_HEAP_LOAD($6302 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($6310 | 0, $6308 | 0, 4);
+  $6311 = $6309 << 9;
+  $6312 = $6309 >>> 23;
+  $6313 = $6311 | $6312;
+  $6314 = $0 + 4252 | 0;
+  SAFE_HEAP_STORE($6314 | 0, $6313 | 0, 4);
+  $$01913 = 0;
+  STACKTOP = sp;
+  return $$01913 | 0;
+ }
+ $393 = $1 + 16 | 0;
+ $394 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $395 = $394 << 24 >> 24 == 0;
+ if ($395) {
+  $$01819 = 0;
+  $$01827 = 0;
+  $$01835 = 0;
+ } else {
+  $396 = $394 & 255;
+  $397 = $396 + -1 | 0;
+  $398 = 43459 + $397 | 0;
+  $399 = SAFE_HEAP_LOAD($398 >> 0 | 0, 1, 0) | 0 | 0;
+  $400 = $399 & 255;
+  $401 = 43714 + $400 | 0;
+  $402 = SAFE_HEAP_LOAD($401 >> 0 | 0, 1, 0) | 0 | 0;
+  $403 = $400 + 45 | 0;
+  $404 = 43714 + $403 | 0;
+  $405 = SAFE_HEAP_LOAD($404 >> 0 | 0, 1, 0) | 0 | 0;
+  $406 = $400 + 1 | 0;
+  $407 = 43714 + $406 | 0;
+  $408 = SAFE_HEAP_LOAD($407 >> 0 | 0, 1, 0) | 0 | 0;
+  $$01819 = $408;
+  $$01827 = $405;
+  $$01835 = $402;
+ }
+ $409 = $1 + 17 | 0;
+ $410 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 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 = 43459 + $413 | 0;
+  $415 = SAFE_HEAP_LOAD($414 >> 0 | 0, 1, 0) | 0 | 0;
+  $416 = $415 & 255;
+  $417 = $416 + 45 | 0;
+  $418 = 43714 + $417 | 0;
+  $419 = SAFE_HEAP_LOAD($418 >> 0 | 0, 1, 0) | 0 | 0;
+  $420 = $419 ^ $$01835;
+  $421 = $416 + 164 | 0;
+  $422 = 43714 + $421 | 0;
+  $423 = SAFE_HEAP_LOAD($422 >> 0 | 0, 1, 0) | 0 | 0;
+  $424 = $423 ^ $$01827;
+  $425 = $416 + 68 | 0;
+  $426 = 43714 + $425 | 0;
+  $427 = SAFE_HEAP_LOAD($426 >> 0 | 0, 1, 0) | 0 | 0;
+  $428 = $427 ^ $$01819;
+  $429 = $416 + 138 | 0;
+  $430 = 43714 + $429 | 0;
+  $431 = SAFE_HEAP_LOAD($430 >> 0 | 0, 1, 0) | 0 | 0;
+  $432 = $431 ^ $$01827;
+  $$11812 = $432;
+  $$11820 = $428;
+  $$11828 = $424;
+  $$11836 = $420;
+ }
+ $433 = $1 + 18 | 0;
+ $434 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 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 = 43459 + $437 | 0;
+  $439 = SAFE_HEAP_LOAD($438 >> 0 | 0, 1, 0) | 0 | 0;
+  $440 = $439 & 255;
+  $441 = $440 + 138 | 0;
+  $442 = 43714 + $441 | 0;
+  $443 = SAFE_HEAP_LOAD($442 >> 0 | 0, 1, 0) | 0 | 0;
+  $444 = $443 ^ $$11836;
+  $445 = $440 + 213 | 0;
+  $446 = 43714 + $445 | 0;
+  $447 = SAFE_HEAP_LOAD($446 >> 0 | 0, 1, 0) | 0 | 0;
+  $448 = $447 ^ $$11828;
+  $449 = $440 + 191 | 0;
+  $450 = 43714 + $449 | 0;
+  $451 = SAFE_HEAP_LOAD($450 >> 0 | 0, 1, 0) | 0 | 0;
+  $452 = $451 ^ $$11820;
+  $453 = $440 + 209 | 0;
+  $454 = 43714 + $453 | 0;
+  $455 = SAFE_HEAP_LOAD($454 >> 0 | 0, 1, 0) | 0 | 0;
+  $456 = $455 ^ $$11812;
+  $$21813 = $456;
+  $$21821 = $452;
+  $$21829 = $448;
+  $$21837 = $444;
+ }
+ $457 = $1 + 19 | 0;
+ $458 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 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 = 43459 + $461 | 0;
+  $463 = SAFE_HEAP_LOAD($462 >> 0 | 0, 1, 0) | 0 | 0;
+  $464 = $463 & 255;
+  $465 = $464 + 209 | 0;
+  $466 = 43714 + $465 | 0;
+  $467 = SAFE_HEAP_LOAD($466 >> 0 | 0, 1, 0) | 0 | 0;
+  $468 = $467 ^ $$21837;
+  $469 = $464 + 127 | 0;
+  $470 = 43714 + $469 | 0;
+  $471 = SAFE_HEAP_LOAD($470 >> 0 | 0, 1, 0) | 0 | 0;
+  $472 = $471 ^ $$21829;
+  $473 = $464 + 61 | 0;
+  $474 = 43714 + $473 | 0;
+  $475 = SAFE_HEAP_LOAD($474 >> 0 | 0, 1, 0) | 0 | 0;
+  $476 = $475 ^ $$21821;
+  $477 = $464 + 153 | 0;
+  $478 = 43714 + $477 | 0;
+  $479 = SAFE_HEAP_LOAD($478 >> 0 | 0, 1, 0) | 0 | 0;
+  $480 = $479 ^ $$21813;
+  $$31814 = $480;
+  $$31822 = $476;
+  $$31830 = $472;
+  $$31838 = $468;
+ }
+ $481 = $1 + 20 | 0;
+ $482 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 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 = 43459 + $485 | 0;
+  $487 = SAFE_HEAP_LOAD($486 >> 0 | 0, 1, 0) | 0 | 0;
+  $488 = $487 & 255;
+  $489 = $488 + 153 | 0;
+  $490 = 43714 + $489 | 0;
+  $491 = SAFE_HEAP_LOAD($490 >> 0 | 0, 1, 0) | 0 | 0;
+  $492 = $491 ^ $$31838;
+  $493 = $488 + 70 | 0;
+  $494 = 43714 + $493 | 0;
+  $495 = SAFE_HEAP_LOAD($494 >> 0 | 0, 1, 0) | 0 | 0;
+  $496 = $495 ^ $$31830;
+  $497 = $488 + 102 | 0;
+  $498 = 43714 + $497 | 0;
+  $499 = SAFE_HEAP_LOAD($498 >> 0 | 0, 1, 0) | 0 | 0;
+  $500 = $499 ^ $$31822;
+  $501 = $488 + 150 | 0;
+  $502 = 43714 + $501 | 0;
+  $503 = SAFE_HEAP_LOAD($502 >> 0 | 0, 1, 0) | 0 | 0;
+  $504 = $503 ^ $$31814;
+  $$41815 = $504;
+  $$41823 = $500;
+  $$41831 = $496;
+  $$41839 = $492;
+ }
+ $505 = $1 + 21 | 0;
+ $506 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 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 = 43459 + $509 | 0;
+  $511 = SAFE_HEAP_LOAD($510 >> 0 | 0, 1, 0) | 0 | 0;
+  $512 = $511 & 255;
+  $513 = $512 + 150 | 0;
+  $514 = 43714 + $513 | 0;
+  $515 = SAFE_HEAP_LOAD($514 >> 0 | 0, 1, 0) | 0 | 0;
+  $516 = $515 ^ $$41839;
+  $517 = $512 + 60 | 0;
+  $518 = 43714 + $517 | 0;
+  $519 = SAFE_HEAP_LOAD($518 >> 0 | 0, 1, 0) | 0 | 0;
+  $520 = $519 ^ $$41831;
+  $521 = $512 + 91 | 0;
+  $522 = 43714 + $521 | 0;
+  $523 = SAFE_HEAP_LOAD($522 >> 0 | 0, 1, 0) | 0 | 0;
+  $524 = $523 ^ $$41823;
+  $525 = $512 + 237 | 0;
+  $526 = 43714 + $525 | 0;
+  $527 = SAFE_HEAP_LOAD($526 >> 0 | 0, 1, 0) | 0 | 0;
+  $528 = $527 ^ $$41815;
+  $$51816 = $528;
+  $$51824 = $524;
+  $$51832 = $520;
+  $$51840 = $516;
+ }
+ $529 = $1 + 22 | 0;
+ $530 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 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 = 43459 + $533 | 0;
+  $535 = SAFE_HEAP_LOAD($534 >> 0 | 0, 1, 0) | 0 | 0;
+  $536 = $535 & 255;
+  $537 = $536 + 237 | 0;
+  $538 = 43714 + $537 | 0;
+  $539 = SAFE_HEAP_LOAD($538 >> 0 | 0, 1, 0) | 0 | 0;
+  $540 = $539 ^ $$51840;
+  $541 = $536 + 55 | 0;
+  $542 = 43714 + $541 | 0;
+  $543 = SAFE_HEAP_LOAD($542 >> 0 | 0, 1, 0) | 0 | 0;
+  $544 = $543 ^ $$51832;
+  $545 = $536 + 79 | 0;
+  $546 = 43714 + $545 | 0;
+  $547 = SAFE_HEAP_LOAD($546 >> 0 | 0, 1, 0) | 0 | 0;
+  $548 = $547 ^ $$51824;
+  $549 = $536 + 224 | 0;
+  $550 = 43714 + $549 | 0;
+  $551 = SAFE_HEAP_LOAD($550 >> 0 | 0, 1, 0) | 0 | 0;
+  $552 = $551 ^ $$51816;
+  $$61817 = $552;
+  $$61825 = $548;
+  $$61833 = $544;
+  $$61841 = $540;
+ }
+ $553 = $1 + 23 | 0;
+ $554 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 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 = 43459 + $557 | 0;
+  $559 = SAFE_HEAP_LOAD($558 >> 0 | 0, 1, 0) | 0 | 0;
+  $560 = $559 & 255;
+  $561 = $560 + 224 | 0;
+  $562 = 43714 + $561 | 0;
+  $563 = SAFE_HEAP_LOAD($562 >> 0 | 0, 1, 0) | 0 | 0;
+  $564 = $563 ^ $$61841;
+  $565 = $560 + 208 | 0;
+  $566 = 43714 + $565 | 0;
+  $567 = SAFE_HEAP_LOAD($566 >> 0 | 0, 1, 0) | 0 | 0;
+  $568 = $567 ^ $$61833;
+  $569 = $560 + 140 | 0;
+  $570 = 43714 + $569 | 0;
+  $571 = SAFE_HEAP_LOAD($570 >> 0 | 0, 1, 0) | 0 | 0;
+  $572 = $571 ^ $$61825;
+  $573 = $560 + 23 | 0;
+  $574 = 43714 + $573 | 0;
+  $575 = SAFE_HEAP_LOAD($574 >> 0 | 0, 1, 0) | 0 | 0;
+  $576 = $575 ^ $$61817;
+  $$71818 = $576;
+  $$71826 = $572;
+  $$71834 = $568;
+  $$71842 = $564;
+ }
+ $577 = $1 + 24 | 0;
+ $578 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $579 = $578 << 24 >> 24 == 0;
+ if ($579) {
+  $$01787 = 0;
+  $$01795 = 0;
+  $$01803 = 0;
+ } else {
+  $580 = $578 & 255;
+  $581 = $580 + -1 | 0;
+  $582 = 43459 + $581 | 0;
+  $583 = SAFE_HEAP_LOAD($582 >> 0 | 0, 1, 0) | 0 | 0;
+  $584 = $583 & 255;
+  $585 = 43714 + $584 | 0;
+  $586 = SAFE_HEAP_LOAD($585 >> 0 | 0, 1, 0) | 0 | 0;
+  $587 = $584 + 45 | 0;
+  $588 = 43714 + $587 | 0;
+  $589 = SAFE_HEAP_LOAD($588 >> 0 | 0, 1, 0) | 0 | 0;
+  $590 = $584 + 1 | 0;
+  $591 = 43714 + $590 | 0;
+  $592 = SAFE_HEAP_LOAD($591 >> 0 | 0, 1, 0) | 0 | 0;
+  $$01787 = $592;
+  $$01795 = $589;
+  $$01803 = $586;
+ }
+ $593 = $1 + 25 | 0;
+ $594 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 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 = 43459 + $597 | 0;
+  $599 = SAFE_HEAP_LOAD($598 >> 0 | 0, 1, 0) | 0 | 0;
+  $600 = $599 & 255;
+  $601 = $600 + 45 | 0;
+  $602 = 43714 + $601 | 0;
+  $603 = SAFE_HEAP_LOAD($602 >> 0 | 0, 1, 0) | 0 | 0;
+  $604 = $603 ^ $$01803;
+  $605 = $600 + 164 | 0;
+  $606 = 43714 + $605 | 0;
+  $607 = SAFE_HEAP_LOAD($606 >> 0 | 0, 1, 0) | 0 | 0;
+  $608 = $607 ^ $$01795;
+  $609 = $600 + 68 | 0;
+  $610 = 43714 + $609 | 0;
+  $611 = SAFE_HEAP_LOAD($610 >> 0 | 0, 1, 0) | 0 | 0;
+  $612 = $611 ^ $$01787;
+  $613 = $600 + 138 | 0;
+  $614 = 43714 + $613 | 0;
+  $615 = SAFE_HEAP_LOAD($614 >> 0 | 0, 1, 0) | 0 | 0;
+  $616 = $615 ^ $$01795;
+  $$1 = $616;
+  $$11788 = $612;
+  $$11796 = $608;
+  $$11804 = $604;
+ }
+ $617 = $1 + 26 | 0;
+ $618 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 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 = 43459 + $621 | 0;
+  $623 = SAFE_HEAP_LOAD($622 >> 0 | 0, 1, 0) | 0 | 0;
+  $624 = $623 & 255;
+  $625 = $624 + 138 | 0;
+  $626 = 43714 + $625 | 0;
+  $627 = SAFE_HEAP_LOAD($626 >> 0 | 0, 1, 0) | 0 | 0;
+  $628 = $627 ^ $$11804;
+  $629 = $624 + 213 | 0;
+  $630 = 43714 + $629 | 0;
+  $631 = SAFE_HEAP_LOAD($630 >> 0 | 0, 1, 0) | 0 | 0;
+  $632 = $631 ^ $$11796;
+  $633 = $624 + 191 | 0;
+  $634 = 43714 + $633 | 0;
+  $635 = SAFE_HEAP_LOAD($634 >> 0 | 0, 1, 0) | 0 | 0;
+  $636 = $635 ^ $$11788;
+  $637 = $624 + 209 | 0;
+  $638 = 43714 + $637 | 0;
+  $639 = SAFE_HEAP_LOAD($638 >> 0 | 0, 1, 0) | 0 | 0;
+  $640 = $639 ^ $$1;
+  $$2 = $640;
+  $$21789 = $636;
+  $$21797 = $632;
+  $$21805 = $628;
+ }
+ $641 = $1 + 27 | 0;
+ $642 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 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 = 43459 + $645 | 0;
+  $647 = SAFE_HEAP_LOAD($646 >> 0 | 0, 1, 0) | 0 | 0;
+  $648 = $647 & 255;
+  $649 = $648 + 209 | 0;
+  $650 = 43714 + $649 | 0;
+  $651 = SAFE_HEAP_LOAD($650 >> 0 | 0, 1, 0) | 0 | 0;
+  $652 = $651 ^ $$21805;
+  $653 = $648 + 127 | 0;
+  $654 = 43714 + $653 | 0;
+  $655 = SAFE_HEAP_LOAD($654 >> 0 | 0, 1, 0) | 0 | 0;
+  $656 = $655 ^ $$21797;
+  $657 = $648 + 61 | 0;
+  $658 = 43714 + $657 | 0;
+  $659 = SAFE_HEAP_LOAD($658 >> 0 | 0, 1, 0) | 0 | 0;
+  $660 = $659 ^ $$21789;
+  $661 = $648 + 153 | 0;
+  $662 = 43714 + $661 | 0;
+  $663 = SAFE_HEAP_LOAD($662 >> 0 | 0, 1, 0) | 0 | 0;
+  $664 = $663 ^ $$2;
+  $$3 = $664;
+  $$31790 = $660;
+  $$31798 = $656;
+  $$31806 = $652;
+ }
+ $665 = $1 + 28 | 0;
+ $666 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 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 = 43459 + $669 | 0;
+  $671 = SAFE_HEAP_LOAD($670 >> 0 | 0, 1, 0) | 0 | 0;
+  $672 = $671 & 255;
+  $673 = $672 + 153 | 0;
+  $674 = 43714 + $673 | 0;
+  $675 = SAFE_HEAP_LOAD($674 >> 0 | 0, 1, 0) | 0 | 0;
+  $676 = $675 ^ $$31806;
+  $677 = $672 + 70 | 0;
+  $678 = 43714 + $677 | 0;
+  $679 = SAFE_HEAP_LOAD($678 >> 0 | 0, 1, 0) | 0 | 0;
+  $680 = $679 ^ $$31798;
+  $681 = $672 + 102 | 0;
+  $682 = 43714 + $681 | 0;
+  $683 = SAFE_HEAP_LOAD($682 >> 0 | 0, 1, 0) | 0 | 0;
+  $684 = $683 ^ $$31790;
+  $685 = $672 + 150 | 0;
+  $686 = 43714 + $685 | 0;
+  $687 = SAFE_HEAP_LOAD($686 >> 0 | 0, 1, 0) | 0 | 0;
+  $688 = $687 ^ $$3;
+  $$4 = $688;
+  $$41791 = $684;
+  $$41799 = $680;
+  $$41807 = $676;
+ }
+ $689 = $1 + 29 | 0;
+ $690 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 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 = 43459 + $693 | 0;
+  $695 = SAFE_HEAP_LOAD($694 >> 0 | 0, 1, 0) | 0 | 0;
+  $696 = $695 & 255;
+  $697 = $696 + 150 | 0;
+  $698 = 43714 + $697 | 0;
+  $699 = SAFE_HEAP_LOAD($698 >> 0 | 0, 1, 0) | 0 | 0;
+  $700 = $699 ^ $$41807;
+  $701 = $696 + 60 | 0;
+  $702 = 43714 + $701 | 0;
+  $703 = SAFE_HEAP_LOAD($702 >> 0 | 0, 1, 0) | 0 | 0;
+  $704 = $703 ^ $$41799;
+  $705 = $696 + 91 | 0;
+  $706 = 43714 + $705 | 0;
+  $707 = SAFE_HEAP_LOAD($706 >> 0 | 0, 1, 0) | 0 | 0;
+  $708 = $707 ^ $$41791;
+  $709 = $696 + 237 | 0;
+  $710 = 43714 + $709 | 0;
+  $711 = SAFE_HEAP_LOAD($710 >> 0 | 0, 1, 0) | 0 | 0;
+  $712 = $711 ^ $$4;
+  $$5 = $712;
+  $$51792 = $708;
+  $$51800 = $704;
+  $$51808 = $700;
+ }
+ $713 = $1 + 30 | 0;
+ $714 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 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 = 43459 + $717 | 0;
+  $719 = SAFE_HEAP_LOAD($718 >> 0 | 0, 1, 0) | 0 | 0;
+  $720 = $719 & 255;
+  $721 = $720 + 237 | 0;
+  $722 = 43714 + $721 | 0;
+  $723 = SAFE_HEAP_LOAD($722 >> 0 | 0, 1, 0) | 0 | 0;
+  $724 = $723 ^ $$51808;
+  $725 = $720 + 55 | 0;
+  $726 = 43714 + $725 | 0;
+  $727 = SAFE_HEAP_LOAD($726 >> 0 | 0, 1, 0) | 0 | 0;
+  $728 = $727 ^ $$51800;
+  $729 = $720 + 79 | 0;
+  $730 = 43714 + $729 | 0;
+  $731 = SAFE_HEAP_LOAD($730 >> 0 | 0, 1, 0) | 0 | 0;
+  $732 = $731 ^ $$51792;
+  $733 = $720 + 224 | 0;
+  $734 = 43714 + $733 | 0;
+  $735 = SAFE_HEAP_LOAD($734 >> 0 | 0, 1, 0) | 0 | 0;
+  $736 = $735 ^ $$5;
+  $$6 = $736;
+  $$61793 = $732;
+  $$61801 = $728;
+  $$61809 = $724;
+ }
+ $737 = $1 + 31 | 0;
+ $738 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 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 = 43459 + $741 | 0;
+  $743 = SAFE_HEAP_LOAD($742 >> 0 | 0, 1, 0) | 0 | 0;
+  $744 = $743 & 255;
+  $745 = $744 + 224 | 0;
+  $746 = 43714 + $745 | 0;
+  $747 = SAFE_HEAP_LOAD($746 >> 0 | 0, 1, 0) | 0 | 0;
+  $748 = $747 ^ $$61809;
+  $749 = $744 + 208 | 0;
+  $750 = 43714 + $749 | 0;
+  $751 = SAFE_HEAP_LOAD($750 >> 0 | 0, 1, 0) | 0 | 0;
+  $752 = $751 ^ $$61801;
+  $753 = $744 + 140 | 0;
+  $754 = 43714 + $753 | 0;
+  $755 = SAFE_HEAP_LOAD($754 >> 0 | 0, 1, 0) | 0 | 0;
+  $756 = $755 ^ $$61793;
+  $757 = $744 + 23 | 0;
+  $758 = 43714 + $757 | 0;
+  $759 = SAFE_HEAP_LOAD($758 >> 0 | 0, 1, 0) | 0 | 0;
+  $760 = $759 ^ $$6;
+  $$7 = $760;
+  $$71794 = $756;
+  $$71802 = $752;
+  $$71810 = $748;
+ }
+ $$019071917 = 1;
+ $$019091916 = 0;
+ $$019111915 = 0;
+ while (1) {
+  $761 = 44206 + $$019071917 | 0;
+  $762 = SAFE_HEAP_LOAD($761 >> 0 | 0, 1, 0) | 0 | 0;
+  $763 = $762 ^ $$71906;
+  $764 = $763 & 255;
+  $765 = 44718 + $764 | 0;
+  $766 = SAFE_HEAP_LOAD($765 >> 0 | 0, 1, 0) | 0 | 0;
+  $767 = $766 ^ $$71874;
+  $768 = $767 & 255;
+  $769 = 44974 + $768 | 0;
+  $770 = SAFE_HEAP_LOAD($769 >> 0 | 0, 1, 0) | 0 | 0;
+  $771 = $770 ^ $$71842;
+  $772 = $771 & 255;
+  $773 = 44974 + $772 | 0;
+  $774 = SAFE_HEAP_LOAD($773 >> 0 | 0, 1, 0) | 0 | 0;
+  $775 = $774 ^ $$71810;
+  $776 = $775 & 255;
+  $777 = 8012 + ($776 << 2) | 0;
+  $778 = SAFE_HEAP_LOAD($777 | 0, 4, 0) | 0 | 0;
+  $779 = $0 + ($$019111915 << 2) | 0;
+  SAFE_HEAP_STORE($779 | 0, $778 | 0, 4);
+  $780 = 44206 + $$019091916 | 0;
+  $781 = SAFE_HEAP_LOAD($780 >> 0 | 0, 1, 0) | 0 | 0;
+  $782 = $781 ^ $$71898;
+  $783 = $782 & 255;
+  $784 = 44718 + $783 | 0;
+  $785 = SAFE_HEAP_LOAD($784 >> 0 | 0, 1, 0) | 0 | 0;
+  $786 = $785 ^ $$71866;
+  $787 = $786 & 255;
+  $788 = 44718 + $787 | 0;
+  $789 = SAFE_HEAP_LOAD($788 >> 0 | 0, 1, 0) | 0 | 0;
+  $790 = $789 ^ $$71834;
+  $791 = $790 & 255;
+  $792 = 44974 + $791 | 0;
+  $793 = SAFE_HEAP_LOAD($792 >> 0 | 0, 1, 0) | 0 | 0;
+  $794 = $793 ^ $$71802;
+  $795 = $794 & 255;
+  $796 = 9036 + ($795 << 2) | 0;
+  $797 = SAFE_HEAP_LOAD($796 | 0, 4, 0) | 0 | 0;
+  $798 = ($0 + 1024 | 0) + ($$019111915 << 2) | 0;
+  SAFE_HEAP_STORE($798 | 0, $797 | 0, 4);
+  $799 = $781 ^ $$71890;
+  $800 = $799 & 255;
+  $801 = 44974 + $800 | 0;
+  $802 = SAFE_HEAP_LOAD($801 >> 0 | 0, 1, 0) | 0 | 0;
+  $803 = $802 ^ $$71858;
+  $804 = $803 & 255;
+  $805 = 44974 + $804 | 0;
+  $806 = SAFE_HEAP_LOAD($805 >> 0 | 0, 1, 0) | 0 | 0;
+  $807 = $806 ^ $$71826;
+  $808 = $807 & 255;
+  $809 = 44718 + $808 | 0;
+  $810 = SAFE_HEAP_LOAD($809 >> 0 | 0, 1, 0) | 0 | 0;
+  $811 = $810 ^ $$71794;
+  $812 = $811 & 255;
+  $813 = 10060 + ($812 << 2) | 0;
+  $814 = SAFE_HEAP_LOAD($813 | 0, 4, 0) | 0 | 0;
+  $815 = ($0 + 2048 | 0) + ($$019111915 << 2) | 0;
+  SAFE_HEAP_STORE($815 | 0, $814 | 0, 4);
+  $816 = $762 ^ $$71882;
+  $817 = $816 & 255;
+  $818 = 44974 + $817 | 0;
+  $819 = SAFE_HEAP_LOAD($818 >> 0 | 0, 1, 0) | 0 | 0;
+  $820 = $819 ^ $$71850;
+  $821 = $820 & 255;
+  $822 = 44718 + $821 | 0;
+  $823 = SAFE_HEAP_LOAD($822 >> 0 | 0, 1, 0) | 0 | 0;
+  $824 = $823 ^ $$71818;
+  $825 = $824 & 255;
+  $826 = 44718 + $825 | 0;
+  $827 = SAFE_HEAP_LOAD($826 >> 0 | 0, 1, 0) | 0 | 0;
+  $828 = $827 ^ $$7;
+  $829 = $828 & 255;
+  $830 = 11084 + ($829 << 2) | 0;
+  $831 = SAFE_HEAP_LOAD($830 | 0, 4, 0) | 0 | 0;
+  $832 = ($0 + 3072 | 0) + ($$019111915 << 2) | 0;
+  SAFE_HEAP_STORE($832 | 0, $831 | 0, 4);
+  $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 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $837 = $836 & 255;
+ $838 = $837 ^ 117;
+ $839 = 44718 + $838 | 0;
+ $840 = SAFE_HEAP_LOAD($839 >> 0 | 0, 1, 0) | 0 | 0;
+ $841 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $842 = $841 ^ $840;
+ $843 = $842 & 255;
+ $844 = 44974 + $843 | 0;
+ $845 = SAFE_HEAP_LOAD($844 >> 0 | 0, 1, 0) | 0 | 0;
+ $846 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $847 = $846 ^ $845;
+ $848 = $847 & 255;
+ $849 = 44974 + $848 | 0;
+ $850 = SAFE_HEAP_LOAD($849 >> 0 | 0, 1, 0) | 0 | 0;
+ $851 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $852 = $851 ^ $850;
+ $853 = $852 & 255;
+ $854 = 8012 + ($853 << 2) | 0;
+ $855 = SAFE_HEAP_LOAD($854 | 0, 4, 0) | 0 | 0;
+ $856 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $857 = $856 & 255;
+ $858 = $857 ^ 169;
+ $859 = 44718 + $858 | 0;
+ $860 = SAFE_HEAP_LOAD($859 >> 0 | 0, 1, 0) | 0 | 0;
+ $861 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $862 = $861 ^ $860;
+ $863 = $862 & 255;
+ $864 = 44718 + $863 | 0;
+ $865 = SAFE_HEAP_LOAD($864 >> 0 | 0, 1, 0) | 0 | 0;
+ $866 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $867 = $866 ^ $865;
+ $868 = $867 & 255;
+ $869 = 44974 + $868 | 0;
+ $870 = SAFE_HEAP_LOAD($869 >> 0 | 0, 1, 0) | 0 | 0;
+ $871 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $872 = $871 ^ $870;
+ $873 = $872 & 255;
+ $874 = 9036 + ($873 << 2) | 0;
+ $875 = SAFE_HEAP_LOAD($874 | 0, 4, 0) | 0 | 0;
+ $876 = $875 ^ $855;
+ $877 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $878 = $877 & 255;
+ $879 = $878 ^ 169;
+ $880 = 44974 + $879 | 0;
+ $881 = SAFE_HEAP_LOAD($880 >> 0 | 0, 1, 0) | 0 | 0;
+ $882 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $883 = $882 ^ $881;
+ $884 = $883 & 255;
+ $885 = 44974 + $884 | 0;
+ $886 = SAFE_HEAP_LOAD($885 >> 0 | 0, 1, 0) | 0 | 0;
+ $887 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $888 = $887 ^ $886;
+ $889 = $888 & 255;
+ $890 = 44718 + $889 | 0;
+ $891 = SAFE_HEAP_LOAD($890 >> 0 | 0, 1, 0) | 0 | 0;
+ $892 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $893 = $892 ^ $891;
+ $894 = $893 & 255;
+ $895 = 10060 + ($894 << 2) | 0;
+ $896 = SAFE_HEAP_LOAD($895 | 0, 4, 0) | 0 | 0;
+ $897 = $876 ^ $896;
+ $898 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $899 = $898 & 255;
+ $900 = $899 ^ 117;
+ $901 = 44974 + $900 | 0;
+ $902 = SAFE_HEAP_LOAD($901 >> 0 | 0, 1, 0) | 0 | 0;
+ $903 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $904 = $903 ^ $902;
+ $905 = $904 & 255;
+ $906 = 44718 + $905 | 0;
+ $907 = SAFE_HEAP_LOAD($906 >> 0 | 0, 1, 0) | 0 | 0;
+ $908 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $909 = $908 ^ $907;
+ $910 = $909 & 255;
+ $911 = 44718 + $910 | 0;
+ $912 = SAFE_HEAP_LOAD($911 >> 0 | 0, 1, 0) | 0 | 0;
+ $913 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $914 = $913 ^ $912;
+ $915 = $914 & 255;
+ $916 = 11084 + ($915 << 2) | 0;
+ $917 = SAFE_HEAP_LOAD($916 | 0, 4, 0) | 0 | 0;
+ $918 = $897 ^ $917;
+ $919 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $920 = $919 & 255;
+ $921 = $920 ^ 243;
+ $922 = 44718 + $921 | 0;
+ $923 = SAFE_HEAP_LOAD($922 >> 0 | 0, 1, 0) | 0 | 0;
+ $924 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $925 = $924 ^ $923;
+ $926 = $925 & 255;
+ $927 = 44974 + $926 | 0;
+ $928 = SAFE_HEAP_LOAD($927 >> 0 | 0, 1, 0) | 0 | 0;
+ $929 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $930 = $929 ^ $928;
+ $931 = $930 & 255;
+ $932 = 44974 + $931 | 0;
+ $933 = SAFE_HEAP_LOAD($932 >> 0 | 0, 1, 0) | 0 | 0;
+ $934 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $935 = $934 ^ $933;
+ $936 = $935 & 255;
+ $937 = 8012 + ($936 << 2) | 0;
+ $938 = SAFE_HEAP_LOAD($937 | 0, 4, 0) | 0 | 0;
+ $939 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $940 = $939 & 255;
+ $941 = $940 ^ 103;
+ $942 = 44718 + $941 | 0;
+ $943 = SAFE_HEAP_LOAD($942 >> 0 | 0, 1, 0) | 0 | 0;
+ $944 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $945 = $944 ^ $943;
+ $946 = $945 & 255;
+ $947 = 44718 + $946 | 0;
+ $948 = SAFE_HEAP_LOAD($947 >> 0 | 0, 1, 0) | 0 | 0;
+ $949 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $950 = $949 ^ $948;
+ $951 = $950 & 255;
+ $952 = 44974 + $951 | 0;
+ $953 = SAFE_HEAP_LOAD($952 >> 0 | 0, 1, 0) | 0 | 0;
+ $954 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $955 = $954 ^ $953;
+ $956 = $955 & 255;
+ $957 = 9036 + ($956 << 2) | 0;
+ $958 = SAFE_HEAP_LOAD($957 | 0, 4, 0) | 0 | 0;
+ $959 = $958 ^ $938;
+ $960 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $961 = $960 & 255;
+ $962 = $961 ^ 103;
+ $963 = 44974 + $962 | 0;
+ $964 = SAFE_HEAP_LOAD($963 >> 0 | 0, 1, 0) | 0 | 0;
+ $965 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $966 = $965 ^ $964;
+ $967 = $966 & 255;
+ $968 = 44974 + $967 | 0;
+ $969 = SAFE_HEAP_LOAD($968 >> 0 | 0, 1, 0) | 0 | 0;
+ $970 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $971 = $970 ^ $969;
+ $972 = $971 & 255;
+ $973 = 44718 + $972 | 0;
+ $974 = SAFE_HEAP_LOAD($973 >> 0 | 0, 1, 0) | 0 | 0;
+ $975 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $976 = $975 ^ $974;
+ $977 = $976 & 255;
+ $978 = 10060 + ($977 << 2) | 0;
+ $979 = SAFE_HEAP_LOAD($978 | 0, 4, 0) | 0 | 0;
+ $980 = $959 ^ $979;
+ $981 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $982 = $981 & 255;
+ $983 = $982 ^ 243;
+ $984 = 44974 + $983 | 0;
+ $985 = SAFE_HEAP_LOAD($984 >> 0 | 0, 1, 0) | 0 | 0;
+ $986 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $987 = $986 ^ $985;
+ $988 = $987 & 255;
+ $989 = 44718 + $988 | 0;
+ $990 = SAFE_HEAP_LOAD($989 >> 0 | 0, 1, 0) | 0 | 0;
+ $991 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $992 = $991 ^ $990;
+ $993 = $992 & 255;
+ $994 = 44718 + $993 | 0;
+ $995 = SAFE_HEAP_LOAD($994 >> 0 | 0, 1, 0) | 0 | 0;
+ $996 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $997 = $996 ^ $995;
+ $998 = $997 & 255;
+ $999 = 11084 + ($998 << 2) | 0;
+ $1000 = SAFE_HEAP_LOAD($999 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($1007 | 0, $1005 | 0, 4);
+ $1008 = $1006 << 9;
+ $1009 = $1006 >>> 23;
+ $1010 = $1008 | $1009;
+ $1011 = $0 + 4100 | 0;
+ SAFE_HEAP_STORE($1011 | 0, $1010 | 0, 4);
+ $1012 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $1013 = $1012 & 255;
+ $1014 = $1013 ^ 198;
+ $1015 = 44718 + $1014 | 0;
+ $1016 = SAFE_HEAP_LOAD($1015 >> 0 | 0, 1, 0) | 0 | 0;
+ $1017 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $1018 = $1017 ^ $1016;
+ $1019 = $1018 & 255;
+ $1020 = 44974 + $1019 | 0;
+ $1021 = SAFE_HEAP_LOAD($1020 >> 0 | 0, 1, 0) | 0 | 0;
+ $1022 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $1023 = $1022 ^ $1021;
+ $1024 = $1023 & 255;
+ $1025 = 44974 + $1024 | 0;
+ $1026 = SAFE_HEAP_LOAD($1025 >> 0 | 0, 1, 0) | 0 | 0;
+ $1027 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $1028 = $1027 ^ $1026;
+ $1029 = $1028 & 255;
+ $1030 = 8012 + ($1029 << 2) | 0;
+ $1031 = SAFE_HEAP_LOAD($1030 | 0, 4, 0) | 0 | 0;
+ $1032 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $1033 = $1032 & 255;
+ $1034 = $1033 ^ 179;
+ $1035 = 44718 + $1034 | 0;
+ $1036 = SAFE_HEAP_LOAD($1035 >> 0 | 0, 1, 0) | 0 | 0;
+ $1037 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $1038 = $1037 ^ $1036;
+ $1039 = $1038 & 255;
+ $1040 = 44718 + $1039 | 0;
+ $1041 = SAFE_HEAP_LOAD($1040 >> 0 | 0, 1, 0) | 0 | 0;
+ $1042 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $1043 = $1042 ^ $1041;
+ $1044 = $1043 & 255;
+ $1045 = 44974 + $1044 | 0;
+ $1046 = SAFE_HEAP_LOAD($1045 >> 0 | 0, 1, 0) | 0 | 0;
+ $1047 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $1048 = $1047 ^ $1046;
+ $1049 = $1048 & 255;
+ $1050 = 9036 + ($1049 << 2) | 0;
+ $1051 = SAFE_HEAP_LOAD($1050 | 0, 4, 0) | 0 | 0;
+ $1052 = $1051 ^ $1031;
+ $1053 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $1054 = $1053 & 255;
+ $1055 = $1054 ^ 179;
+ $1056 = 44974 + $1055 | 0;
+ $1057 = SAFE_HEAP_LOAD($1056 >> 0 | 0, 1, 0) | 0 | 0;
+ $1058 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $1059 = $1058 ^ $1057;
+ $1060 = $1059 & 255;
+ $1061 = 44974 + $1060 | 0;
+ $1062 = SAFE_HEAP_LOAD($1061 >> 0 | 0, 1, 0) | 0 | 0;
+ $1063 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $1064 = $1063 ^ $1062;
+ $1065 = $1064 & 255;
+ $1066 = 44718 + $1065 | 0;
+ $1067 = SAFE_HEAP_LOAD($1066 >> 0 | 0, 1, 0) | 0 | 0;
+ $1068 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $1069 = $1068 ^ $1067;
+ $1070 = $1069 & 255;
+ $1071 = 10060 + ($1070 << 2) | 0;
+ $1072 = SAFE_HEAP_LOAD($1071 | 0, 4, 0) | 0 | 0;
+ $1073 = $1052 ^ $1072;
+ $1074 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $1075 = $1074 & 255;
+ $1076 = $1075 ^ 198;
+ $1077 = 44974 + $1076 | 0;
+ $1078 = SAFE_HEAP_LOAD($1077 >> 0 | 0, 1, 0) | 0 | 0;
+ $1079 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $1080 = $1079 ^ $1078;
+ $1081 = $1080 & 255;
+ $1082 = 44718 + $1081 | 0;
+ $1083 = SAFE_HEAP_LOAD($1082 >> 0 | 0, 1, 0) | 0 | 0;
+ $1084 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $1085 = $1084 ^ $1083;
+ $1086 = $1085 & 255;
+ $1087 = 44718 + $1086 | 0;
+ $1088 = SAFE_HEAP_LOAD($1087 >> 0 | 0, 1, 0) | 0 | 0;
+ $1089 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $1090 = $1089 ^ $1088;
+ $1091 = $1090 & 255;
+ $1092 = 11084 + ($1091 << 2) | 0;
+ $1093 = SAFE_HEAP_LOAD($1092 | 0, 4, 0) | 0 | 0;
+ $1094 = $1073 ^ $1093;
+ $1095 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $1096 = $1095 & 255;
+ $1097 = $1096 ^ 244;
+ $1098 = 44718 + $1097 | 0;
+ $1099 = SAFE_HEAP_LOAD($1098 >> 0 | 0, 1, 0) | 0 | 0;
+ $1100 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $1101 = $1100 ^ $1099;
+ $1102 = $1101 & 255;
+ $1103 = 44974 + $1102 | 0;
+ $1104 = SAFE_HEAP_LOAD($1103 >> 0 | 0, 1, 0) | 0 | 0;
+ $1105 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $1106 = $1105 ^ $1104;
+ $1107 = $1106 & 255;
+ $1108 = 44974 + $1107 | 0;
+ $1109 = SAFE_HEAP_LOAD($1108 >> 0 | 0, 1, 0) | 0 | 0;
+ $1110 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $1111 = $1110 ^ $1109;
+ $1112 = $1111 & 255;
+ $1113 = 8012 + ($1112 << 2) | 0;
+ $1114 = SAFE_HEAP_LOAD($1113 | 0, 4, 0) | 0 | 0;
+ $1115 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $1116 = $1115 & 255;
+ $1117 = $1116 ^ 232;
+ $1118 = 44718 + $1117 | 0;
+ $1119 = SAFE_HEAP_LOAD($1118 >> 0 | 0, 1, 0) | 0 | 0;
+ $1120 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $1121 = $1120 ^ $1119;
+ $1122 = $1121 & 255;
+ $1123 = 44718 + $1122 | 0;
+ $1124 = SAFE_HEAP_LOAD($1123 >> 0 | 0, 1, 0) | 0 | 0;
+ $1125 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $1126 = $1125 ^ $1124;
+ $1127 = $1126 & 255;
+ $1128 = 44974 + $1127 | 0;
+ $1129 = SAFE_HEAP_LOAD($1128 >> 0 | 0, 1, 0) | 0 | 0;
+ $1130 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $1131 = $1130 ^ $1129;
+ $1132 = $1131 & 255;
+ $1133 = 9036 + ($1132 << 2) | 0;
+ $1134 = SAFE_HEAP_LOAD($1133 | 0, 4, 0) | 0 | 0;
+ $1135 = $1134 ^ $1114;
+ $1136 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $1137 = $1136 & 255;
+ $1138 = $1137 ^ 232;
+ $1139 = 44974 + $1138 | 0;
+ $1140 = SAFE_HEAP_LOAD($1139 >> 0 | 0, 1, 0) | 0 | 0;
+ $1141 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $1142 = $1141 ^ $1140;
+ $1143 = $1142 & 255;
+ $1144 = 44974 + $1143 | 0;
+ $1145 = SAFE_HEAP_LOAD($1144 >> 0 | 0, 1, 0) | 0 | 0;
+ $1146 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $1147 = $1146 ^ $1145;
+ $1148 = $1147 & 255;
+ $1149 = 44718 + $1148 | 0;
+ $1150 = SAFE_HEAP_LOAD($1149 >> 0 | 0, 1, 0) | 0 | 0;
+ $1151 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $1152 = $1151 ^ $1150;
+ $1153 = $1152 & 255;
+ $1154 = 10060 + ($1153 << 2) | 0;
+ $1155 = SAFE_HEAP_LOAD($1154 | 0, 4, 0) | 0 | 0;
+ $1156 = $1135 ^ $1155;
+ $1157 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $1158 = $1157 & 255;
+ $1159 = $1158 ^ 244;
+ $1160 = 44974 + $1159 | 0;
+ $1161 = SAFE_HEAP_LOAD($1160 >> 0 | 0, 1, 0) | 0 | 0;
+ $1162 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $1163 = $1162 ^ $1161;
+ $1164 = $1163 & 255;
+ $1165 = 44718 + $1164 | 0;
+ $1166 = SAFE_HEAP_LOAD($1165 >> 0 | 0, 1, 0) | 0 | 0;
+ $1167 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $1168 = $1167 ^ $1166;
+ $1169 = $1168 & 255;
+ $1170 = 44718 + $1169 | 0;
+ $1171 = SAFE_HEAP_LOAD($1170 >> 0 | 0, 1, 0) | 0 | 0;
+ $1172 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $1173 = $1172 ^ $1171;
+ $1174 = $1173 & 255;
+ $1175 = 11084 + ($1174 << 2) | 0;
+ $1176 = SAFE_HEAP_LOAD($1175 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($1183 | 0, $1181 | 0, 4);
+ $1184 = $1182 << 9;
+ $1185 = $1182 >>> 23;
+ $1186 = $1184 | $1185;
+ $1187 = $0 + 4108 | 0;
+ SAFE_HEAP_STORE($1187 | 0, $1186 | 0, 4);
+ $1188 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $1189 = $1188 & 255;
+ $1190 = $1189 ^ 219;
+ $1191 = 44718 + $1190 | 0;
+ $1192 = SAFE_HEAP_LOAD($1191 >> 0 | 0, 1, 0) | 0 | 0;
+ $1193 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $1194 = $1193 ^ $1192;
+ $1195 = $1194 & 255;
+ $1196 = 44974 + $1195 | 0;
+ $1197 = SAFE_HEAP_LOAD($1196 >> 0 | 0, 1, 0) | 0 | 0;
+ $1198 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $1199 = $1198 ^ $1197;
+ $1200 = $1199 & 255;
+ $1201 = 44974 + $1200 | 0;
+ $1202 = SAFE_HEAP_LOAD($1201 >> 0 | 0, 1, 0) | 0 | 0;
+ $1203 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $1204 = $1203 ^ $1202;
+ $1205 = $1204 & 255;
+ $1206 = 8012 + ($1205 << 2) | 0;
+ $1207 = SAFE_HEAP_LOAD($1206 | 0, 4, 0) | 0 | 0;
+ $1208 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $1209 = $1208 & 255;
+ $1210 = $1209 ^ 4;
+ $1211 = 44718 + $1210 | 0;
+ $1212 = SAFE_HEAP_LOAD($1211 >> 0 | 0, 1, 0) | 0 | 0;
+ $1213 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $1214 = $1213 ^ $1212;
+ $1215 = $1214 & 255;
+ $1216 = 44718 + $1215 | 0;
+ $1217 = SAFE_HEAP_LOAD($1216 >> 0 | 0, 1, 0) | 0 | 0;
+ $1218 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $1219 = $1218 ^ $1217;
+ $1220 = $1219 & 255;
+ $1221 = 44974 + $1220 | 0;
+ $1222 = SAFE_HEAP_LOAD($1221 >> 0 | 0, 1, 0) | 0 | 0;
+ $1223 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $1224 = $1223 ^ $1222;
+ $1225 = $1224 & 255;
+ $1226 = 9036 + ($1225 << 2) | 0;
+ $1227 = SAFE_HEAP_LOAD($1226 | 0, 4, 0) | 0 | 0;
+ $1228 = $1227 ^ $1207;
+ $1229 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $1230 = $1229 & 255;
+ $1231 = $1230 ^ 4;
+ $1232 = 44974 + $1231 | 0;
+ $1233 = SAFE_HEAP_LOAD($1232 >> 0 | 0, 1, 0) | 0 | 0;
+ $1234 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $1235 = $1234 ^ $1233;
+ $1236 = $1235 & 255;
+ $1237 = 44974 + $1236 | 0;
+ $1238 = SAFE_HEAP_LOAD($1237 >> 0 | 0, 1, 0) | 0 | 0;
+ $1239 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $1240 = $1239 ^ $1238;
+ $1241 = $1240 & 255;
+ $1242 = 44718 + $1241 | 0;
+ $1243 = SAFE_HEAP_LOAD($1242 >> 0 | 0, 1, 0) | 0 | 0;
+ $1244 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $1245 = $1244 ^ $1243;
+ $1246 = $1245 & 255;
+ $1247 = 10060 + ($1246 << 2) | 0;
+ $1248 = SAFE_HEAP_LOAD($1247 | 0, 4, 0) | 0 | 0;
+ $1249 = $1228 ^ $1248;
+ $1250 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $1251 = $1250 & 255;
+ $1252 = $1251 ^ 219;
+ $1253 = 44974 + $1252 | 0;
+ $1254 = SAFE_HEAP_LOAD($1253 >> 0 | 0, 1, 0) | 0 | 0;
+ $1255 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $1256 = $1255 ^ $1254;
+ $1257 = $1256 & 255;
+ $1258 = 44718 + $1257 | 0;
+ $1259 = SAFE_HEAP_LOAD($1258 >> 0 | 0, 1, 0) | 0 | 0;
+ $1260 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $1261 = $1260 ^ $1259;
+ $1262 = $1261 & 255;
+ $1263 = 44718 + $1262 | 0;
+ $1264 = SAFE_HEAP_LOAD($1263 >> 0 | 0, 1, 0) | 0 | 0;
+ $1265 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $1266 = $1265 ^ $1264;
+ $1267 = $1266 & 255;
+ $1268 = 11084 + ($1267 << 2) | 0;
+ $1269 = SAFE_HEAP_LOAD($1268 | 0, 4, 0) | 0 | 0;
+ $1270 = $1249 ^ $1269;
+ $1271 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $1272 = $1271 & 255;
+ $1273 = $1272 ^ 123;
+ $1274 = 44718 + $1273 | 0;
+ $1275 = SAFE_HEAP_LOAD($1274 >> 0 | 0, 1, 0) | 0 | 0;
+ $1276 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $1277 = $1276 ^ $1275;
+ $1278 = $1277 & 255;
+ $1279 = 44974 + $1278 | 0;
+ $1280 = SAFE_HEAP_LOAD($1279 >> 0 | 0, 1, 0) | 0 | 0;
+ $1281 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $1282 = $1281 ^ $1280;
+ $1283 = $1282 & 255;
+ $1284 = 44974 + $1283 | 0;
+ $1285 = SAFE_HEAP_LOAD($1284 >> 0 | 0, 1, 0) | 0 | 0;
+ $1286 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $1287 = $1286 ^ $1285;
+ $1288 = $1287 & 255;
+ $1289 = 8012 + ($1288 << 2) | 0;
+ $1290 = SAFE_HEAP_LOAD($1289 | 0, 4, 0) | 0 | 0;
+ $1291 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $1292 = $1291 & 255;
+ $1293 = $1292 ^ 253;
+ $1294 = 44718 + $1293 | 0;
+ $1295 = SAFE_HEAP_LOAD($1294 >> 0 | 0, 1, 0) | 0 | 0;
+ $1296 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $1297 = $1296 ^ $1295;
+ $1298 = $1297 & 255;
+ $1299 = 44718 + $1298 | 0;
+ $1300 = SAFE_HEAP_LOAD($1299 >> 0 | 0, 1, 0) | 0 | 0;
+ $1301 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $1302 = $1301 ^ $1300;
+ $1303 = $1302 & 255;
+ $1304 = 44974 + $1303 | 0;
+ $1305 = SAFE_HEAP_LOAD($1304 >> 0 | 0, 1, 0) | 0 | 0;
+ $1306 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $1307 = $1306 ^ $1305;
+ $1308 = $1307 & 255;
+ $1309 = 9036 + ($1308 << 2) | 0;
+ $1310 = SAFE_HEAP_LOAD($1309 | 0, 4, 0) | 0 | 0;
+ $1311 = $1310 ^ $1290;
+ $1312 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $1313 = $1312 & 255;
+ $1314 = $1313 ^ 253;
+ $1315 = 44974 + $1314 | 0;
+ $1316 = SAFE_HEAP_LOAD($1315 >> 0 | 0, 1, 0) | 0 | 0;
+ $1317 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $1318 = $1317 ^ $1316;
+ $1319 = $1318 & 255;
+ $1320 = 44974 + $1319 | 0;
+ $1321 = SAFE_HEAP_LOAD($1320 >> 0 | 0, 1, 0) | 0 | 0;
+ $1322 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $1323 = $1322 ^ $1321;
+ $1324 = $1323 & 255;
+ $1325 = 44718 + $1324 | 0;
+ $1326 = SAFE_HEAP_LOAD($1325 >> 0 | 0, 1, 0) | 0 | 0;
+ $1327 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $1328 = $1327 ^ $1326;
+ $1329 = $1328 & 255;
+ $1330 = 10060 + ($1329 << 2) | 0;
+ $1331 = SAFE_HEAP_LOAD($1330 | 0, 4, 0) | 0 | 0;
+ $1332 = $1311 ^ $1331;
+ $1333 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $1334 = $1333 & 255;
+ $1335 = $1334 ^ 123;
+ $1336 = 44974 + $1335 | 0;
+ $1337 = SAFE_HEAP_LOAD($1336 >> 0 | 0, 1, 0) | 0 | 0;
+ $1338 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $1339 = $1338 ^ $1337;
+ $1340 = $1339 & 255;
+ $1341 = 44718 + $1340 | 0;
+ $1342 = SAFE_HEAP_LOAD($1341 >> 0 | 0, 1, 0) | 0 | 0;
+ $1343 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $1344 = $1343 ^ $1342;
+ $1345 = $1344 & 255;
+ $1346 = 44718 + $1345 | 0;
+ $1347 = SAFE_HEAP_LOAD($1346 >> 0 | 0, 1, 0) | 0 | 0;
+ $1348 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $1349 = $1348 ^ $1347;
+ $1350 = $1349 & 255;
+ $1351 = 11084 + ($1350 << 2) | 0;
+ $1352 = SAFE_HEAP_LOAD($1351 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($1359 | 0, $1357 | 0, 4);
+ $1360 = $1358 << 9;
+ $1361 = $1358 >>> 23;
+ $1362 = $1360 | $1361;
+ $1363 = $0 + 4116 | 0;
+ SAFE_HEAP_STORE($1363 | 0, $1362 | 0, 4);
+ $1364 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $1365 = $1364 & 255;
+ $1366 = $1365 ^ 251;
+ $1367 = 44718 + $1366 | 0;
+ $1368 = SAFE_HEAP_LOAD($1367 >> 0 | 0, 1, 0) | 0 | 0;
+ $1369 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $1370 = $1369 ^ $1368;
+ $1371 = $1370 & 255;
+ $1372 = 44974 + $1371 | 0;
+ $1373 = SAFE_HEAP_LOAD($1372 >> 0 | 0, 1, 0) | 0 | 0;
+ $1374 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $1375 = $1374 ^ $1373;
+ $1376 = $1375 & 255;
+ $1377 = 44974 + $1376 | 0;
+ $1378 = SAFE_HEAP_LOAD($1377 >> 0 | 0, 1, 0) | 0 | 0;
+ $1379 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $1380 = $1379 ^ $1378;
+ $1381 = $1380 & 255;
+ $1382 = 8012 + ($1381 << 2) | 0;
+ $1383 = SAFE_HEAP_LOAD($1382 | 0, 4, 0) | 0 | 0;
+ $1384 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $1385 = $1384 & 255;
+ $1386 = $1385 ^ 163;
+ $1387 = 44718 + $1386 | 0;
+ $1388 = SAFE_HEAP_LOAD($1387 >> 0 | 0, 1, 0) | 0 | 0;
+ $1389 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $1390 = $1389 ^ $1388;
+ $1391 = $1390 & 255;
+ $1392 = 44718 + $1391 | 0;
+ $1393 = SAFE_HEAP_LOAD($1392 >> 0 | 0, 1, 0) | 0 | 0;
+ $1394 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $1395 = $1394 ^ $1393;
+ $1396 = $1395 & 255;
+ $1397 = 44974 + $1396 | 0;
+ $1398 = SAFE_HEAP_LOAD($1397 >> 0 | 0, 1, 0) | 0 | 0;
+ $1399 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $1400 = $1399 ^ $1398;
+ $1401 = $1400 & 255;
+ $1402 = 9036 + ($1401 << 2) | 0;
+ $1403 = SAFE_HEAP_LOAD($1402 | 0, 4, 0) | 0 | 0;
+ $1404 = $1403 ^ $1383;
+ $1405 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $1406 = $1405 & 255;
+ $1407 = $1406 ^ 163;
+ $1408 = 44974 + $1407 | 0;
+ $1409 = SAFE_HEAP_LOAD($1408 >> 0 | 0, 1, 0) | 0 | 0;
+ $1410 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $1411 = $1410 ^ $1409;
+ $1412 = $1411 & 255;
+ $1413 = 44974 + $1412 | 0;
+ $1414 = SAFE_HEAP_LOAD($1413 >> 0 | 0, 1, 0) | 0 | 0;
+ $1415 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $1416 = $1415 ^ $1414;
+ $1417 = $1416 & 255;
+ $1418 = 44718 + $1417 | 0;
+ $1419 = SAFE_HEAP_LOAD($1418 >> 0 | 0, 1, 0) | 0 | 0;
+ $1420 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $1421 = $1420 ^ $1419;
+ $1422 = $1421 & 255;
+ $1423 = 10060 + ($1422 << 2) | 0;
+ $1424 = SAFE_HEAP_LOAD($1423 | 0, 4, 0) | 0 | 0;
+ $1425 = $1404 ^ $1424;
+ $1426 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $1427 = $1426 & 255;
+ $1428 = $1427 ^ 251;
+ $1429 = 44974 + $1428 | 0;
+ $1430 = SAFE_HEAP_LOAD($1429 >> 0 | 0, 1, 0) | 0 | 0;
+ $1431 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $1432 = $1431 ^ $1430;
+ $1433 = $1432 & 255;
+ $1434 = 44718 + $1433 | 0;
+ $1435 = SAFE_HEAP_LOAD($1434 >> 0 | 0, 1, 0) | 0 | 0;
+ $1436 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $1437 = $1436 ^ $1435;
+ $1438 = $1437 & 255;
+ $1439 = 44718 + $1438 | 0;
+ $1440 = SAFE_HEAP_LOAD($1439 >> 0 | 0, 1, 0) | 0 | 0;
+ $1441 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $1442 = $1441 ^ $1440;
+ $1443 = $1442 & 255;
+ $1444 = 11084 + ($1443 << 2) | 0;
+ $1445 = SAFE_HEAP_LOAD($1444 | 0, 4, 0) | 0 | 0;
+ $1446 = $1425 ^ $1445;
+ $1447 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $1448 = $1447 & 255;
+ $1449 = $1448 ^ 200;
+ $1450 = 44718 + $1449 | 0;
+ $1451 = SAFE_HEAP_LOAD($1450 >> 0 | 0, 1, 0) | 0 | 0;
+ $1452 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $1453 = $1452 ^ $1451;
+ $1454 = $1453 & 255;
+ $1455 = 44974 + $1454 | 0;
+ $1456 = SAFE_HEAP_LOAD($1455 >> 0 | 0, 1, 0) | 0 | 0;
+ $1457 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $1458 = $1457 ^ $1456;
+ $1459 = $1458 & 255;
+ $1460 = 44974 + $1459 | 0;
+ $1461 = SAFE_HEAP_LOAD($1460 >> 0 | 0, 1, 0) | 0 | 0;
+ $1462 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $1463 = $1462 ^ $1461;
+ $1464 = $1463 & 255;
+ $1465 = 8012 + ($1464 << 2) | 0;
+ $1466 = SAFE_HEAP_LOAD($1465 | 0, 4, 0) | 0 | 0;
+ $1467 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $1468 = $1467 & 255;
+ $1469 = $1468 ^ 118;
+ $1470 = 44718 + $1469 | 0;
+ $1471 = SAFE_HEAP_LOAD($1470 >> 0 | 0, 1, 0) | 0 | 0;
+ $1472 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $1473 = $1472 ^ $1471;
+ $1474 = $1473 & 255;
+ $1475 = 44718 + $1474 | 0;
+ $1476 = SAFE_HEAP_LOAD($1475 >> 0 | 0, 1, 0) | 0 | 0;
+ $1477 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $1478 = $1477 ^ $1476;
+ $1479 = $1478 & 255;
+ $1480 = 44974 + $1479 | 0;
+ $1481 = SAFE_HEAP_LOAD($1480 >> 0 | 0, 1, 0) | 0 | 0;
+ $1482 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $1483 = $1482 ^ $1481;
+ $1484 = $1483 & 255;
+ $1485 = 9036 + ($1484 << 2) | 0;
+ $1486 = SAFE_HEAP_LOAD($1485 | 0, 4, 0) | 0 | 0;
+ $1487 = $1486 ^ $1466;
+ $1488 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $1489 = $1488 & 255;
+ $1490 = $1489 ^ 118;
+ $1491 = 44974 + $1490 | 0;
+ $1492 = SAFE_HEAP_LOAD($1491 >> 0 | 0, 1, 0) | 0 | 0;
+ $1493 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $1494 = $1493 ^ $1492;
+ $1495 = $1494 & 255;
+ $1496 = 44974 + $1495 | 0;
+ $1497 = SAFE_HEAP_LOAD($1496 >> 0 | 0, 1, 0) | 0 | 0;
+ $1498 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $1499 = $1498 ^ $1497;
+ $1500 = $1499 & 255;
+ $1501 = 44718 + $1500 | 0;
+ $1502 = SAFE_HEAP_LOAD($1501 >> 0 | 0, 1, 0) | 0 | 0;
+ $1503 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $1504 = $1503 ^ $1502;
+ $1505 = $1504 & 255;
+ $1506 = 10060 + ($1505 << 2) | 0;
+ $1507 = SAFE_HEAP_LOAD($1506 | 0, 4, 0) | 0 | 0;
+ $1508 = $1487 ^ $1507;
+ $1509 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $1510 = $1509 & 255;
+ $1511 = $1510 ^ 200;
+ $1512 = 44974 + $1511 | 0;
+ $1513 = SAFE_HEAP_LOAD($1512 >> 0 | 0, 1, 0) | 0 | 0;
+ $1514 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $1515 = $1514 ^ $1513;
+ $1516 = $1515 & 255;
+ $1517 = 44718 + $1516 | 0;
+ $1518 = SAFE_HEAP_LOAD($1517 >> 0 | 0, 1, 0) | 0 | 0;
+ $1519 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $1520 = $1519 ^ $1518;
+ $1521 = $1520 & 255;
+ $1522 = 44718 + $1521 | 0;
+ $1523 = SAFE_HEAP_LOAD($1522 >> 0 | 0, 1, 0) | 0 | 0;
+ $1524 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $1525 = $1524 ^ $1523;
+ $1526 = $1525 & 255;
+ $1527 = 11084 + ($1526 << 2) | 0;
+ $1528 = SAFE_HEAP_LOAD($1527 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($1535 | 0, $1533 | 0, 4);
+ $1536 = $1534 << 9;
+ $1537 = $1534 >>> 23;
+ $1538 = $1536 | $1537;
+ $1539 = $0 + 4124 | 0;
+ SAFE_HEAP_STORE($1539 | 0, $1538 | 0, 4);
+ $1540 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $1541 = $1540 & 255;
+ $1542 = $1541 ^ 74;
+ $1543 = 44718 + $1542 | 0;
+ $1544 = SAFE_HEAP_LOAD($1543 >> 0 | 0, 1, 0) | 0 | 0;
+ $1545 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $1546 = $1545 ^ $1544;
+ $1547 = $1546 & 255;
+ $1548 = 44974 + $1547 | 0;
+ $1549 = SAFE_HEAP_LOAD($1548 >> 0 | 0, 1, 0) | 0 | 0;
+ $1550 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $1551 = $1550 ^ $1549;
+ $1552 = $1551 & 255;
+ $1553 = 44974 + $1552 | 0;
+ $1554 = SAFE_HEAP_LOAD($1553 >> 0 | 0, 1, 0) | 0 | 0;
+ $1555 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $1556 = $1555 ^ $1554;
+ $1557 = $1556 & 255;
+ $1558 = 8012 + ($1557 << 2) | 0;
+ $1559 = SAFE_HEAP_LOAD($1558 | 0, 4, 0) | 0 | 0;
+ $1560 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $1561 = $1560 & 255;
+ $1562 = $1561 ^ 154;
+ $1563 = 44718 + $1562 | 0;
+ $1564 = SAFE_HEAP_LOAD($1563 >> 0 | 0, 1, 0) | 0 | 0;
+ $1565 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $1566 = $1565 ^ $1564;
+ $1567 = $1566 & 255;
+ $1568 = 44718 + $1567 | 0;
+ $1569 = SAFE_HEAP_LOAD($1568 >> 0 | 0, 1, 0) | 0 | 0;
+ $1570 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $1571 = $1570 ^ $1569;
+ $1572 = $1571 & 255;
+ $1573 = 44974 + $1572 | 0;
+ $1574 = SAFE_HEAP_LOAD($1573 >> 0 | 0, 1, 0) | 0 | 0;
+ $1575 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $1576 = $1575 ^ $1574;
+ $1577 = $1576 & 255;
+ $1578 = 9036 + ($1577 << 2) | 0;
+ $1579 = SAFE_HEAP_LOAD($1578 | 0, 4, 0) | 0 | 0;
+ $1580 = $1579 ^ $1559;
+ $1581 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $1582 = $1581 & 255;
+ $1583 = $1582 ^ 154;
+ $1584 = 44974 + $1583 | 0;
+ $1585 = SAFE_HEAP_LOAD($1584 >> 0 | 0, 1, 0) | 0 | 0;
+ $1586 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $1587 = $1586 ^ $1585;
+ $1588 = $1587 & 255;
+ $1589 = 44974 + $1588 | 0;
+ $1590 = SAFE_HEAP_LOAD($1589 >> 0 | 0, 1, 0) | 0 | 0;
+ $1591 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $1592 = $1591 ^ $1590;
+ $1593 = $1592 & 255;
+ $1594 = 44718 + $1593 | 0;
+ $1595 = SAFE_HEAP_LOAD($1594 >> 0 | 0, 1, 0) | 0 | 0;
+ $1596 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $1597 = $1596 ^ $1595;
+ $1598 = $1597 & 255;
+ $1599 = 10060 + ($1598 << 2) | 0;
+ $1600 = SAFE_HEAP_LOAD($1599 | 0, 4, 0) | 0 | 0;
+ $1601 = $1580 ^ $1600;
+ $1602 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $1603 = $1602 & 255;
+ $1604 = $1603 ^ 74;
+ $1605 = 44974 + $1604 | 0;
+ $1606 = SAFE_HEAP_LOAD($1605 >> 0 | 0, 1, 0) | 0 | 0;
+ $1607 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $1608 = $1607 ^ $1606;
+ $1609 = $1608 & 255;
+ $1610 = 44718 + $1609 | 0;
+ $1611 = SAFE_HEAP_LOAD($1610 >> 0 | 0, 1, 0) | 0 | 0;
+ $1612 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $1613 = $1612 ^ $1611;
+ $1614 = $1613 & 255;
+ $1615 = 44718 + $1614 | 0;
+ $1616 = SAFE_HEAP_LOAD($1615 >> 0 | 0, 1, 0) | 0 | 0;
+ $1617 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $1618 = $1617 ^ $1616;
+ $1619 = $1618 & 255;
+ $1620 = 11084 + ($1619 << 2) | 0;
+ $1621 = SAFE_HEAP_LOAD($1620 | 0, 4, 0) | 0 | 0;
+ $1622 = $1601 ^ $1621;
+ $1623 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $1624 = $1623 & 255;
+ $1625 = $1624 ^ 211;
+ $1626 = 44718 + $1625 | 0;
+ $1627 = SAFE_HEAP_LOAD($1626 >> 0 | 0, 1, 0) | 0 | 0;
+ $1628 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $1629 = $1628 ^ $1627;
+ $1630 = $1629 & 255;
+ $1631 = 44974 + $1630 | 0;
+ $1632 = SAFE_HEAP_LOAD($1631 >> 0 | 0, 1, 0) | 0 | 0;
+ $1633 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $1634 = $1633 ^ $1632;
+ $1635 = $1634 & 255;
+ $1636 = 44974 + $1635 | 0;
+ $1637 = SAFE_HEAP_LOAD($1636 >> 0 | 0, 1, 0) | 0 | 0;
+ $1638 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $1639 = $1638 ^ $1637;
+ $1640 = $1639 & 255;
+ $1641 = 8012 + ($1640 << 2) | 0;
+ $1642 = SAFE_HEAP_LOAD($1641 | 0, 4, 0) | 0 | 0;
+ $1643 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $1644 = $1643 & 255;
+ $1645 = $1644 ^ 146;
+ $1646 = 44718 + $1645 | 0;
+ $1647 = SAFE_HEAP_LOAD($1646 >> 0 | 0, 1, 0) | 0 | 0;
+ $1648 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $1649 = $1648 ^ $1647;
+ $1650 = $1649 & 255;
+ $1651 = 44718 + $1650 | 0;
+ $1652 = SAFE_HEAP_LOAD($1651 >> 0 | 0, 1, 0) | 0 | 0;
+ $1653 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $1654 = $1653 ^ $1652;
+ $1655 = $1654 & 255;
+ $1656 = 44974 + $1655 | 0;
+ $1657 = SAFE_HEAP_LOAD($1656 >> 0 | 0, 1, 0) | 0 | 0;
+ $1658 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $1659 = $1658 ^ $1657;
+ $1660 = $1659 & 255;
+ $1661 = 9036 + ($1660 << 2) | 0;
+ $1662 = SAFE_HEAP_LOAD($1661 | 0, 4, 0) | 0 | 0;
+ $1663 = $1662 ^ $1642;
+ $1664 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $1665 = $1664 & 255;
+ $1666 = $1665 ^ 146;
+ $1667 = 44974 + $1666 | 0;
+ $1668 = SAFE_HEAP_LOAD($1667 >> 0 | 0, 1, 0) | 0 | 0;
+ $1669 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $1670 = $1669 ^ $1668;
+ $1671 = $1670 & 255;
+ $1672 = 44974 + $1671 | 0;
+ $1673 = SAFE_HEAP_LOAD($1672 >> 0 | 0, 1, 0) | 0 | 0;
+ $1674 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $1675 = $1674 ^ $1673;
+ $1676 = $1675 & 255;
+ $1677 = 44718 + $1676 | 0;
+ $1678 = SAFE_HEAP_LOAD($1677 >> 0 | 0, 1, 0) | 0 | 0;
+ $1679 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $1680 = $1679 ^ $1678;
+ $1681 = $1680 & 255;
+ $1682 = 10060 + ($1681 << 2) | 0;
+ $1683 = SAFE_HEAP_LOAD($1682 | 0, 4, 0) | 0 | 0;
+ $1684 = $1663 ^ $1683;
+ $1685 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $1686 = $1685 & 255;
+ $1687 = $1686 ^ 211;
+ $1688 = 44974 + $1687 | 0;
+ $1689 = SAFE_HEAP_LOAD($1688 >> 0 | 0, 1, 0) | 0 | 0;
+ $1690 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $1691 = $1690 ^ $1689;
+ $1692 = $1691 & 255;
+ $1693 = 44718 + $1692 | 0;
+ $1694 = SAFE_HEAP_LOAD($1693 >> 0 | 0, 1, 0) | 0 | 0;
+ $1695 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $1696 = $1695 ^ $1694;
+ $1697 = $1696 & 255;
+ $1698 = 44718 + $1697 | 0;
+ $1699 = SAFE_HEAP_LOAD($1698 >> 0 | 0, 1, 0) | 0 | 0;
+ $1700 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $1701 = $1700 ^ $1699;
+ $1702 = $1701 & 255;
+ $1703 = 11084 + ($1702 << 2) | 0;
+ $1704 = SAFE_HEAP_LOAD($1703 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($1711 | 0, $1709 | 0, 4);
+ $1712 = $1710 << 9;
+ $1713 = $1710 >>> 23;
+ $1714 = $1712 | $1713;
+ $1715 = $0 + 4132 | 0;
+ SAFE_HEAP_STORE($1715 | 0, $1714 | 0, 4);
+ $1716 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $1717 = $1716 & 255;
+ $1718 = $1717 ^ 230;
+ $1719 = 44718 + $1718 | 0;
+ $1720 = SAFE_HEAP_LOAD($1719 >> 0 | 0, 1, 0) | 0 | 0;
+ $1721 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $1722 = $1721 ^ $1720;
+ $1723 = $1722 & 255;
+ $1724 = 44974 + $1723 | 0;
+ $1725 = SAFE_HEAP_LOAD($1724 >> 0 | 0, 1, 0) | 0 | 0;
+ $1726 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $1727 = $1726 ^ $1725;
+ $1728 = $1727 & 255;
+ $1729 = 44974 + $1728 | 0;
+ $1730 = SAFE_HEAP_LOAD($1729 >> 0 | 0, 1, 0) | 0 | 0;
+ $1731 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $1732 = $1731 ^ $1730;
+ $1733 = $1732 & 255;
+ $1734 = 8012 + ($1733 << 2) | 0;
+ $1735 = SAFE_HEAP_LOAD($1734 | 0, 4, 0) | 0 | 0;
+ $1736 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $1737 = $1736 & 255;
+ $1738 = $1737 ^ 128;
+ $1739 = 44718 + $1738 | 0;
+ $1740 = SAFE_HEAP_LOAD($1739 >> 0 | 0, 1, 0) | 0 | 0;
+ $1741 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $1742 = $1741 ^ $1740;
+ $1743 = $1742 & 255;
+ $1744 = 44718 + $1743 | 0;
+ $1745 = SAFE_HEAP_LOAD($1744 >> 0 | 0, 1, 0) | 0 | 0;
+ $1746 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $1747 = $1746 ^ $1745;
+ $1748 = $1747 & 255;
+ $1749 = 44974 + $1748 | 0;
+ $1750 = SAFE_HEAP_LOAD($1749 >> 0 | 0, 1, 0) | 0 | 0;
+ $1751 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $1752 = $1751 ^ $1750;
+ $1753 = $1752 & 255;
+ $1754 = 9036 + ($1753 << 2) | 0;
+ $1755 = SAFE_HEAP_LOAD($1754 | 0, 4, 0) | 0 | 0;
+ $1756 = $1755 ^ $1735;
+ $1757 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $1758 = $1757 & 255;
+ $1759 = $1758 ^ 128;
+ $1760 = 44974 + $1759 | 0;
+ $1761 = SAFE_HEAP_LOAD($1760 >> 0 | 0, 1, 0) | 0 | 0;
+ $1762 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $1763 = $1762 ^ $1761;
+ $1764 = $1763 & 255;
+ $1765 = 44974 + $1764 | 0;
+ $1766 = SAFE_HEAP_LOAD($1765 >> 0 | 0, 1, 0) | 0 | 0;
+ $1767 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $1768 = $1767 ^ $1766;
+ $1769 = $1768 & 255;
+ $1770 = 44718 + $1769 | 0;
+ $1771 = SAFE_HEAP_LOAD($1770 >> 0 | 0, 1, 0) | 0 | 0;
+ $1772 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $1773 = $1772 ^ $1771;
+ $1774 = $1773 & 255;
+ $1775 = 10060 + ($1774 << 2) | 0;
+ $1776 = SAFE_HEAP_LOAD($1775 | 0, 4, 0) | 0 | 0;
+ $1777 = $1756 ^ $1776;
+ $1778 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $1779 = $1778 & 255;
+ $1780 = $1779 ^ 230;
+ $1781 = 44974 + $1780 | 0;
+ $1782 = SAFE_HEAP_LOAD($1781 >> 0 | 0, 1, 0) | 0 | 0;
+ $1783 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $1784 = $1783 ^ $1782;
+ $1785 = $1784 & 255;
+ $1786 = 44718 + $1785 | 0;
+ $1787 = SAFE_HEAP_LOAD($1786 >> 0 | 0, 1, 0) | 0 | 0;
+ $1788 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $1789 = $1788 ^ $1787;
+ $1790 = $1789 & 255;
+ $1791 = 44718 + $1790 | 0;
+ $1792 = SAFE_HEAP_LOAD($1791 >> 0 | 0, 1, 0) | 0 | 0;
+ $1793 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $1794 = $1793 ^ $1792;
+ $1795 = $1794 & 255;
+ $1796 = 11084 + ($1795 << 2) | 0;
+ $1797 = SAFE_HEAP_LOAD($1796 | 0, 4, 0) | 0 | 0;
+ $1798 = $1777 ^ $1797;
+ $1799 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $1800 = $1799 & 255;
+ $1801 = $1800 ^ 107;
+ $1802 = 44718 + $1801 | 0;
+ $1803 = SAFE_HEAP_LOAD($1802 >> 0 | 0, 1, 0) | 0 | 0;
+ $1804 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $1805 = $1804 ^ $1803;
+ $1806 = $1805 & 255;
+ $1807 = 44974 + $1806 | 0;
+ $1808 = SAFE_HEAP_LOAD($1807 >> 0 | 0, 1, 0) | 0 | 0;
+ $1809 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $1810 = $1809 ^ $1808;
+ $1811 = $1810 & 255;
+ $1812 = 44974 + $1811 | 0;
+ $1813 = SAFE_HEAP_LOAD($1812 >> 0 | 0, 1, 0) | 0 | 0;
+ $1814 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $1815 = $1814 ^ $1813;
+ $1816 = $1815 & 255;
+ $1817 = 8012 + ($1816 << 2) | 0;
+ $1818 = SAFE_HEAP_LOAD($1817 | 0, 4, 0) | 0 | 0;
+ $1819 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $1820 = $1819 & 255;
+ $1821 = $1820 ^ 120;
+ $1822 = 44718 + $1821 | 0;
+ $1823 = SAFE_HEAP_LOAD($1822 >> 0 | 0, 1, 0) | 0 | 0;
+ $1824 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $1825 = $1824 ^ $1823;
+ $1826 = $1825 & 255;
+ $1827 = 44718 + $1826 | 0;
+ $1828 = SAFE_HEAP_LOAD($1827 >> 0 | 0, 1, 0) | 0 | 0;
+ $1829 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $1830 = $1829 ^ $1828;
+ $1831 = $1830 & 255;
+ $1832 = 44974 + $1831 | 0;
+ $1833 = SAFE_HEAP_LOAD($1832 >> 0 | 0, 1, 0) | 0 | 0;
+ $1834 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $1835 = $1834 ^ $1833;
+ $1836 = $1835 & 255;
+ $1837 = 9036 + ($1836 << 2) | 0;
+ $1838 = SAFE_HEAP_LOAD($1837 | 0, 4, 0) | 0 | 0;
+ $1839 = $1838 ^ $1818;
+ $1840 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $1841 = $1840 & 255;
+ $1842 = $1841 ^ 120;
+ $1843 = 44974 + $1842 | 0;
+ $1844 = SAFE_HEAP_LOAD($1843 >> 0 | 0, 1, 0) | 0 | 0;
+ $1845 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $1846 = $1845 ^ $1844;
+ $1847 = $1846 & 255;
+ $1848 = 44974 + $1847 | 0;
+ $1849 = SAFE_HEAP_LOAD($1848 >> 0 | 0, 1, 0) | 0 | 0;
+ $1850 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $1851 = $1850 ^ $1849;
+ $1852 = $1851 & 255;
+ $1853 = 44718 + $1852 | 0;
+ $1854 = SAFE_HEAP_LOAD($1853 >> 0 | 0, 1, 0) | 0 | 0;
+ $1855 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $1856 = $1855 ^ $1854;
+ $1857 = $1856 & 255;
+ $1858 = 10060 + ($1857 << 2) | 0;
+ $1859 = SAFE_HEAP_LOAD($1858 | 0, 4, 0) | 0 | 0;
+ $1860 = $1839 ^ $1859;
+ $1861 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $1862 = $1861 & 255;
+ $1863 = $1862 ^ 107;
+ $1864 = 44974 + $1863 | 0;
+ $1865 = SAFE_HEAP_LOAD($1864 >> 0 | 0, 1, 0) | 0 | 0;
+ $1866 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $1867 = $1866 ^ $1865;
+ $1868 = $1867 & 255;
+ $1869 = 44718 + $1868 | 0;
+ $1870 = SAFE_HEAP_LOAD($1869 >> 0 | 0, 1, 0) | 0 | 0;
+ $1871 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $1872 = $1871 ^ $1870;
+ $1873 = $1872 & 255;
+ $1874 = 44718 + $1873 | 0;
+ $1875 = SAFE_HEAP_LOAD($1874 >> 0 | 0, 1, 0) | 0 | 0;
+ $1876 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $1877 = $1876 ^ $1875;
+ $1878 = $1877 & 255;
+ $1879 = 11084 + ($1878 << 2) | 0;
+ $1880 = SAFE_HEAP_LOAD($1879 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($1887 | 0, $1885 | 0, 4);
+ $1888 = $1886 << 9;
+ $1889 = $1886 >>> 23;
+ $1890 = $1888 | $1889;
+ $1891 = $0 + 4140 | 0;
+ SAFE_HEAP_STORE($1891 | 0, $1890 | 0, 4);
+ $1892 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $1893 = $1892 & 255;
+ $1894 = $1893 ^ 69;
+ $1895 = 44718 + $1894 | 0;
+ $1896 = SAFE_HEAP_LOAD($1895 >> 0 | 0, 1, 0) | 0 | 0;
+ $1897 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $1898 = $1897 ^ $1896;
+ $1899 = $1898 & 255;
+ $1900 = 44974 + $1899 | 0;
+ $1901 = SAFE_HEAP_LOAD($1900 >> 0 | 0, 1, 0) | 0 | 0;
+ $1902 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $1903 = $1902 ^ $1901;
+ $1904 = $1903 & 255;
+ $1905 = 44974 + $1904 | 0;
+ $1906 = SAFE_HEAP_LOAD($1905 >> 0 | 0, 1, 0) | 0 | 0;
+ $1907 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $1908 = $1907 ^ $1906;
+ $1909 = $1908 & 255;
+ $1910 = 8012 + ($1909 << 2) | 0;
+ $1911 = SAFE_HEAP_LOAD($1910 | 0, 4, 0) | 0 | 0;
+ $1912 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $1913 = $1912 & 255;
+ $1914 = $1913 ^ 228;
+ $1915 = 44718 + $1914 | 0;
+ $1916 = SAFE_HEAP_LOAD($1915 >> 0 | 0, 1, 0) | 0 | 0;
+ $1917 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $1918 = $1917 ^ $1916;
+ $1919 = $1918 & 255;
+ $1920 = 44718 + $1919 | 0;
+ $1921 = SAFE_HEAP_LOAD($1920 >> 0 | 0, 1, 0) | 0 | 0;
+ $1922 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $1923 = $1922 ^ $1921;
+ $1924 = $1923 & 255;
+ $1925 = 44974 + $1924 | 0;
+ $1926 = SAFE_HEAP_LOAD($1925 >> 0 | 0, 1, 0) | 0 | 0;
+ $1927 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $1928 = $1927 ^ $1926;
+ $1929 = $1928 & 255;
+ $1930 = 9036 + ($1929 << 2) | 0;
+ $1931 = SAFE_HEAP_LOAD($1930 | 0, 4, 0) | 0 | 0;
+ $1932 = $1931 ^ $1911;
+ $1933 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $1934 = $1933 & 255;
+ $1935 = $1934 ^ 228;
+ $1936 = 44974 + $1935 | 0;
+ $1937 = SAFE_HEAP_LOAD($1936 >> 0 | 0, 1, 0) | 0 | 0;
+ $1938 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $1939 = $1938 ^ $1937;
+ $1940 = $1939 & 255;
+ $1941 = 44974 + $1940 | 0;
+ $1942 = SAFE_HEAP_LOAD($1941 >> 0 | 0, 1, 0) | 0 | 0;
+ $1943 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $1944 = $1943 ^ $1942;
+ $1945 = $1944 & 255;
+ $1946 = 44718 + $1945 | 0;
+ $1947 = SAFE_HEAP_LOAD($1946 >> 0 | 0, 1, 0) | 0 | 0;
+ $1948 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $1949 = $1948 ^ $1947;
+ $1950 = $1949 & 255;
+ $1951 = 10060 + ($1950 << 2) | 0;
+ $1952 = SAFE_HEAP_LOAD($1951 | 0, 4, 0) | 0 | 0;
+ $1953 = $1932 ^ $1952;
+ $1954 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $1955 = $1954 & 255;
+ $1956 = $1955 ^ 69;
+ $1957 = 44974 + $1956 | 0;
+ $1958 = SAFE_HEAP_LOAD($1957 >> 0 | 0, 1, 0) | 0 | 0;
+ $1959 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $1960 = $1959 ^ $1958;
+ $1961 = $1960 & 255;
+ $1962 = 44718 + $1961 | 0;
+ $1963 = SAFE_HEAP_LOAD($1962 >> 0 | 0, 1, 0) | 0 | 0;
+ $1964 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $1965 = $1964 ^ $1963;
+ $1966 = $1965 & 255;
+ $1967 = 44718 + $1966 | 0;
+ $1968 = SAFE_HEAP_LOAD($1967 >> 0 | 0, 1, 0) | 0 | 0;
+ $1969 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $1970 = $1969 ^ $1968;
+ $1971 = $1970 & 255;
+ $1972 = 11084 + ($1971 << 2) | 0;
+ $1973 = SAFE_HEAP_LOAD($1972 | 0, 4, 0) | 0 | 0;
+ $1974 = $1953 ^ $1973;
+ $1975 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $1976 = $1975 & 255;
+ $1977 = $1976 ^ 125;
+ $1978 = 44718 + $1977 | 0;
+ $1979 = SAFE_HEAP_LOAD($1978 >> 0 | 0, 1, 0) | 0 | 0;
+ $1980 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $1981 = $1980 ^ $1979;
+ $1982 = $1981 & 255;
+ $1983 = 44974 + $1982 | 0;
+ $1984 = SAFE_HEAP_LOAD($1983 >> 0 | 0, 1, 0) | 0 | 0;
+ $1985 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $1986 = $1985 ^ $1984;
+ $1987 = $1986 & 255;
+ $1988 = 44974 + $1987 | 0;
+ $1989 = SAFE_HEAP_LOAD($1988 >> 0 | 0, 1, 0) | 0 | 0;
+ $1990 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $1991 = $1990 ^ $1989;
+ $1992 = $1991 & 255;
+ $1993 = 8012 + ($1992 << 2) | 0;
+ $1994 = SAFE_HEAP_LOAD($1993 | 0, 4, 0) | 0 | 0;
+ $1995 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $1996 = $1995 & 255;
+ $1997 = $1996 ^ 221;
+ $1998 = 44718 + $1997 | 0;
+ $1999 = SAFE_HEAP_LOAD($1998 >> 0 | 0, 1, 0) | 0 | 0;
+ $2000 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $2001 = $2000 ^ $1999;
+ $2002 = $2001 & 255;
+ $2003 = 44718 + $2002 | 0;
+ $2004 = SAFE_HEAP_LOAD($2003 >> 0 | 0, 1, 0) | 0 | 0;
+ $2005 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $2006 = $2005 ^ $2004;
+ $2007 = $2006 & 255;
+ $2008 = 44974 + $2007 | 0;
+ $2009 = SAFE_HEAP_LOAD($2008 >> 0 | 0, 1, 0) | 0 | 0;
+ $2010 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $2011 = $2010 ^ $2009;
+ $2012 = $2011 & 255;
+ $2013 = 9036 + ($2012 << 2) | 0;
+ $2014 = SAFE_HEAP_LOAD($2013 | 0, 4, 0) | 0 | 0;
+ $2015 = $2014 ^ $1994;
+ $2016 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $2017 = $2016 & 255;
+ $2018 = $2017 ^ 221;
+ $2019 = 44974 + $2018 | 0;
+ $2020 = SAFE_HEAP_LOAD($2019 >> 0 | 0, 1, 0) | 0 | 0;
+ $2021 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $2022 = $2021 ^ $2020;
+ $2023 = $2022 & 255;
+ $2024 = 44974 + $2023 | 0;
+ $2025 = SAFE_HEAP_LOAD($2024 >> 0 | 0, 1, 0) | 0 | 0;
+ $2026 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $2027 = $2026 ^ $2025;
+ $2028 = $2027 & 255;
+ $2029 = 44718 + $2028 | 0;
+ $2030 = SAFE_HEAP_LOAD($2029 >> 0 | 0, 1, 0) | 0 | 0;
+ $2031 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $2032 = $2031 ^ $2030;
+ $2033 = $2032 & 255;
+ $2034 = 10060 + ($2033 << 2) | 0;
+ $2035 = SAFE_HEAP_LOAD($2034 | 0, 4, 0) | 0 | 0;
+ $2036 = $2015 ^ $2035;
+ $2037 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $2038 = $2037 & 255;
+ $2039 = $2038 ^ 125;
+ $2040 = 44974 + $2039 | 0;
+ $2041 = SAFE_HEAP_LOAD($2040 >> 0 | 0, 1, 0) | 0 | 0;
+ $2042 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $2043 = $2042 ^ $2041;
+ $2044 = $2043 & 255;
+ $2045 = 44718 + $2044 | 0;
+ $2046 = SAFE_HEAP_LOAD($2045 >> 0 | 0, 1, 0) | 0 | 0;
+ $2047 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $2048 = $2047 ^ $2046;
+ $2049 = $2048 & 255;
+ $2050 = 44718 + $2049 | 0;
+ $2051 = SAFE_HEAP_LOAD($2050 >> 0 | 0, 1, 0) | 0 | 0;
+ $2052 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $2053 = $2052 ^ $2051;
+ $2054 = $2053 & 255;
+ $2055 = 11084 + ($2054 << 2) | 0;
+ $2056 = SAFE_HEAP_LOAD($2055 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($2063 | 0, $2061 | 0, 4);
+ $2064 = $2062 << 9;
+ $2065 = $2062 >>> 23;
+ $2066 = $2064 | $2065;
+ $2067 = $0 + 4148 | 0;
+ SAFE_HEAP_STORE($2067 | 0, $2066 | 0, 4);
+ $2068 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $2069 = $2068 & 255;
+ $2070 = $2069 ^ 232;
+ $2071 = 44718 + $2070 | 0;
+ $2072 = SAFE_HEAP_LOAD($2071 >> 0 | 0, 1, 0) | 0 | 0;
+ $2073 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $2074 = $2073 ^ $2072;
+ $2075 = $2074 & 255;
+ $2076 = 44974 + $2075 | 0;
+ $2077 = SAFE_HEAP_LOAD($2076 >> 0 | 0, 1, 0) | 0 | 0;
+ $2078 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $2079 = $2078 ^ $2077;
+ $2080 = $2079 & 255;
+ $2081 = 44974 + $2080 | 0;
+ $2082 = SAFE_HEAP_LOAD($2081 >> 0 | 0, 1, 0) | 0 | 0;
+ $2083 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $2084 = $2083 ^ $2082;
+ $2085 = $2084 & 255;
+ $2086 = 8012 + ($2085 << 2) | 0;
+ $2087 = SAFE_HEAP_LOAD($2086 | 0, 4, 0) | 0 | 0;
+ $2088 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $2089 = $2088 & 255;
+ $2090 = $2089 ^ 209;
+ $2091 = 44718 + $2090 | 0;
+ $2092 = SAFE_HEAP_LOAD($2091 >> 0 | 0, 1, 0) | 0 | 0;
+ $2093 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $2094 = $2093 ^ $2092;
+ $2095 = $2094 & 255;
+ $2096 = 44718 + $2095 | 0;
+ $2097 = SAFE_HEAP_LOAD($2096 >> 0 | 0, 1, 0) | 0 | 0;
+ $2098 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $2099 = $2098 ^ $2097;
+ $2100 = $2099 & 255;
+ $2101 = 44974 + $2100 | 0;
+ $2102 = SAFE_HEAP_LOAD($2101 >> 0 | 0, 1, 0) | 0 | 0;
+ $2103 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $2104 = $2103 ^ $2102;
+ $2105 = $2104 & 255;
+ $2106 = 9036 + ($2105 << 2) | 0;
+ $2107 = SAFE_HEAP_LOAD($2106 | 0, 4, 0) | 0 | 0;
+ $2108 = $2107 ^ $2087;
+ $2109 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $2110 = $2109 & 255;
+ $2111 = $2110 ^ 209;
+ $2112 = 44974 + $2111 | 0;
+ $2113 = SAFE_HEAP_LOAD($2112 >> 0 | 0, 1, 0) | 0 | 0;
+ $2114 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $2115 = $2114 ^ $2113;
+ $2116 = $2115 & 255;
+ $2117 = 44974 + $2116 | 0;
+ $2118 = SAFE_HEAP_LOAD($2117 >> 0 | 0, 1, 0) | 0 | 0;
+ $2119 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $2120 = $2119 ^ $2118;
+ $2121 = $2120 & 255;
+ $2122 = 44718 + $2121 | 0;
+ $2123 = SAFE_HEAP_LOAD($2122 >> 0 | 0, 1, 0) | 0 | 0;
+ $2124 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $2125 = $2124 ^ $2123;
+ $2126 = $2125 & 255;
+ $2127 = 10060 + ($2126 << 2) | 0;
+ $2128 = SAFE_HEAP_LOAD($2127 | 0, 4, 0) | 0 | 0;
+ $2129 = $2108 ^ $2128;
+ $2130 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $2131 = $2130 & 255;
+ $2132 = $2131 ^ 232;
+ $2133 = 44974 + $2132 | 0;
+ $2134 = SAFE_HEAP_LOAD($2133 >> 0 | 0, 1, 0) | 0 | 0;
+ $2135 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $2136 = $2135 ^ $2134;
+ $2137 = $2136 & 255;
+ $2138 = 44718 + $2137 | 0;
+ $2139 = SAFE_HEAP_LOAD($2138 >> 0 | 0, 1, 0) | 0 | 0;
+ $2140 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $2141 = $2140 ^ $2139;
+ $2142 = $2141 & 255;
+ $2143 = 44718 + $2142 | 0;
+ $2144 = SAFE_HEAP_LOAD($2143 >> 0 | 0, 1, 0) | 0 | 0;
+ $2145 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $2146 = $2145 ^ $2144;
+ $2147 = $2146 & 255;
+ $2148 = 11084 + ($2147 << 2) | 0;
+ $2149 = SAFE_HEAP_LOAD($2148 | 0, 4, 0) | 0 | 0;
+ $2150 = $2129 ^ $2149;
+ $2151 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $2152 = $2151 & 255;
+ $2153 = $2152 ^ 75;
+ $2154 = 44718 + $2153 | 0;
+ $2155 = SAFE_HEAP_LOAD($2154 >> 0 | 0, 1, 0) | 0 | 0;
+ $2156 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $2157 = $2156 ^ $2155;
+ $2158 = $2157 & 255;
+ $2159 = 44974 + $2158 | 0;
+ $2160 = SAFE_HEAP_LOAD($2159 >> 0 | 0, 1, 0) | 0 | 0;
+ $2161 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $2162 = $2161 ^ $2160;
+ $2163 = $2162 & 255;
+ $2164 = 44974 + $2163 | 0;
+ $2165 = SAFE_HEAP_LOAD($2164 >> 0 | 0, 1, 0) | 0 | 0;
+ $2166 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $2167 = $2166 ^ $2165;
+ $2168 = $2167 & 255;
+ $2169 = 8012 + ($2168 << 2) | 0;
+ $2170 = SAFE_HEAP_LOAD($2169 | 0, 4, 0) | 0 | 0;
+ $2171 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $2172 = $2171 & 255;
+ $2173 = $2172 ^ 56;
+ $2174 = 44718 + $2173 | 0;
+ $2175 = SAFE_HEAP_LOAD($2174 >> 0 | 0, 1, 0) | 0 | 0;
+ $2176 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $2177 = $2176 ^ $2175;
+ $2178 = $2177 & 255;
+ $2179 = 44718 + $2178 | 0;
+ $2180 = SAFE_HEAP_LOAD($2179 >> 0 | 0, 1, 0) | 0 | 0;
+ $2181 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $2182 = $2181 ^ $2180;
+ $2183 = $2182 & 255;
+ $2184 = 44974 + $2183 | 0;
+ $2185 = SAFE_HEAP_LOAD($2184 >> 0 | 0, 1, 0) | 0 | 0;
+ $2186 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $2187 = $2186 ^ $2185;
+ $2188 = $2187 & 255;
+ $2189 = 9036 + ($2188 << 2) | 0;
+ $2190 = SAFE_HEAP_LOAD($2189 | 0, 4, 0) | 0 | 0;
+ $2191 = $2190 ^ $2170;
+ $2192 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $2193 = $2192 & 255;
+ $2194 = $2193 ^ 56;
+ $2195 = 44974 + $2194 | 0;
+ $2196 = SAFE_HEAP_LOAD($2195 >> 0 | 0, 1, 0) | 0 | 0;
+ $2197 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $2198 = $2197 ^ $2196;
+ $2199 = $2198 & 255;
+ $2200 = 44974 + $2199 | 0;
+ $2201 = SAFE_HEAP_LOAD($2200 >> 0 | 0, 1, 0) | 0 | 0;
+ $2202 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $2203 = $2202 ^ $2201;
+ $2204 = $2203 & 255;
+ $2205 = 44718 + $2204 | 0;
+ $2206 = SAFE_HEAP_LOAD($2205 >> 0 | 0, 1, 0) | 0 | 0;
+ $2207 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $2208 = $2207 ^ $2206;
+ $2209 = $2208 & 255;
+ $2210 = 10060 + ($2209 << 2) | 0;
+ $2211 = SAFE_HEAP_LOAD($2210 | 0, 4, 0) | 0 | 0;
+ $2212 = $2191 ^ $2211;
+ $2213 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $2214 = $2213 & 255;
+ $2215 = $2214 ^ 75;
+ $2216 = 44974 + $2215 | 0;
+ $2217 = SAFE_HEAP_LOAD($2216 >> 0 | 0, 1, 0) | 0 | 0;
+ $2218 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $2219 = $2218 ^ $2217;
+ $2220 = $2219 & 255;
+ $2221 = 44718 + $2220 | 0;
+ $2222 = SAFE_HEAP_LOAD($2221 >> 0 | 0, 1, 0) | 0 | 0;
+ $2223 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $2224 = $2223 ^ $2222;
+ $2225 = $2224 & 255;
+ $2226 = 44718 + $2225 | 0;
+ $2227 = SAFE_HEAP_LOAD($2226 >> 0 | 0, 1, 0) | 0 | 0;
+ $2228 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $2229 = $2228 ^ $2227;
+ $2230 = $2229 & 255;
+ $2231 = 11084 + ($2230 << 2) | 0;
+ $2232 = SAFE_HEAP_LOAD($2231 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($2239 | 0, $2237 | 0, 4);
+ $2240 = $2238 << 9;
+ $2241 = $2238 >>> 23;
+ $2242 = $2240 | $2241;
+ $2243 = $0 + 4156 | 0;
+ SAFE_HEAP_STORE($2243 | 0, $2242 | 0, 4);
+ $2244 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $2245 = $2244 & 255;
+ $2246 = $2245 ^ 214;
+ $2247 = 44718 + $2246 | 0;
+ $2248 = SAFE_HEAP_LOAD($2247 >> 0 | 0, 1, 0) | 0 | 0;
+ $2249 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $2250 = $2249 ^ $2248;
+ $2251 = $2250 & 255;
+ $2252 = 44974 + $2251 | 0;
+ $2253 = SAFE_HEAP_LOAD($2252 >> 0 | 0, 1, 0) | 0 | 0;
+ $2254 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $2255 = $2254 ^ $2253;
+ $2256 = $2255 & 255;
+ $2257 = 44974 + $2256 | 0;
+ $2258 = SAFE_HEAP_LOAD($2257 >> 0 | 0, 1, 0) | 0 | 0;
+ $2259 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $2260 = $2259 ^ $2258;
+ $2261 = $2260 & 255;
+ $2262 = 8012 + ($2261 << 2) | 0;
+ $2263 = SAFE_HEAP_LOAD($2262 | 0, 4, 0) | 0 | 0;
+ $2264 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $2265 = $2264 & 255;
+ $2266 = $2265 ^ 13;
+ $2267 = 44718 + $2266 | 0;
+ $2268 = SAFE_HEAP_LOAD($2267 >> 0 | 0, 1, 0) | 0 | 0;
+ $2269 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $2270 = $2269 ^ $2268;
+ $2271 = $2270 & 255;
+ $2272 = 44718 + $2271 | 0;
+ $2273 = SAFE_HEAP_LOAD($2272 >> 0 | 0, 1, 0) | 0 | 0;
+ $2274 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $2275 = $2274 ^ $2273;
+ $2276 = $2275 & 255;
+ $2277 = 44974 + $2276 | 0;
+ $2278 = SAFE_HEAP_LOAD($2277 >> 0 | 0, 1, 0) | 0 | 0;
+ $2279 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $2280 = $2279 ^ $2278;
+ $2281 = $2280 & 255;
+ $2282 = 9036 + ($2281 << 2) | 0;
+ $2283 = SAFE_HEAP_LOAD($2282 | 0, 4, 0) | 0 | 0;
+ $2284 = $2283 ^ $2263;
+ $2285 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $2286 = $2285 & 255;
+ $2287 = $2286 ^ 13;
+ $2288 = 44974 + $2287 | 0;
+ $2289 = SAFE_HEAP_LOAD($2288 >> 0 | 0, 1, 0) | 0 | 0;
+ $2290 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $2291 = $2290 ^ $2289;
+ $2292 = $2291 & 255;
+ $2293 = 44974 + $2292 | 0;
+ $2294 = SAFE_HEAP_LOAD($2293 >> 0 | 0, 1, 0) | 0 | 0;
+ $2295 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $2296 = $2295 ^ $2294;
+ $2297 = $2296 & 255;
+ $2298 = 44718 + $2297 | 0;
+ $2299 = SAFE_HEAP_LOAD($2298 >> 0 | 0, 1, 0) | 0 | 0;
+ $2300 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $2301 = $2300 ^ $2299;
+ $2302 = $2301 & 255;
+ $2303 = 10060 + ($2302 << 2) | 0;
+ $2304 = SAFE_HEAP_LOAD($2303 | 0, 4, 0) | 0 | 0;
+ $2305 = $2284 ^ $2304;
+ $2306 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $2307 = $2306 & 255;
+ $2308 = $2307 ^ 214;
+ $2309 = 44974 + $2308 | 0;
+ $2310 = SAFE_HEAP_LOAD($2309 >> 0 | 0, 1, 0) | 0 | 0;
+ $2311 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $2312 = $2311 ^ $2310;
+ $2313 = $2312 & 255;
+ $2314 = 44718 + $2313 | 0;
+ $2315 = SAFE_HEAP_LOAD($2314 >> 0 | 0, 1, 0) | 0 | 0;
+ $2316 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $2317 = $2316 ^ $2315;
+ $2318 = $2317 & 255;
+ $2319 = 44718 + $2318 | 0;
+ $2320 = SAFE_HEAP_LOAD($2319 >> 0 | 0, 1, 0) | 0 | 0;
+ $2321 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $2322 = $2321 ^ $2320;
+ $2323 = $2322 & 255;
+ $2324 = 11084 + ($2323 << 2) | 0;
+ $2325 = SAFE_HEAP_LOAD($2324 | 0, 4, 0) | 0 | 0;
+ $2326 = $2305 ^ $2325;
+ $2327 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $2328 = $2327 & 255;
+ $2329 = $2328 ^ 50;
+ $2330 = 44718 + $2329 | 0;
+ $2331 = SAFE_HEAP_LOAD($2330 >> 0 | 0, 1, 0) | 0 | 0;
+ $2332 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $2333 = $2332 ^ $2331;
+ $2334 = $2333 & 255;
+ $2335 = 44974 + $2334 | 0;
+ $2336 = SAFE_HEAP_LOAD($2335 >> 0 | 0, 1, 0) | 0 | 0;
+ $2337 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $2338 = $2337 ^ $2336;
+ $2339 = $2338 & 255;
+ $2340 = 44974 + $2339 | 0;
+ $2341 = SAFE_HEAP_LOAD($2340 >> 0 | 0, 1, 0) | 0 | 0;
+ $2342 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $2343 = $2342 ^ $2341;
+ $2344 = $2343 & 255;
+ $2345 = 8012 + ($2344 << 2) | 0;
+ $2346 = SAFE_HEAP_LOAD($2345 | 0, 4, 0) | 0 | 0;
+ $2347 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $2348 = $2347 & 255;
+ $2349 = $2348 ^ 198;
+ $2350 = 44718 + $2349 | 0;
+ $2351 = SAFE_HEAP_LOAD($2350 >> 0 | 0, 1, 0) | 0 | 0;
+ $2352 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $2353 = $2352 ^ $2351;
+ $2354 = $2353 & 255;
+ $2355 = 44718 + $2354 | 0;
+ $2356 = SAFE_HEAP_LOAD($2355 >> 0 | 0, 1, 0) | 0 | 0;
+ $2357 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $2358 = $2357 ^ $2356;
+ $2359 = $2358 & 255;
+ $2360 = 44974 + $2359 | 0;
+ $2361 = SAFE_HEAP_LOAD($2360 >> 0 | 0, 1, 0) | 0 | 0;
+ $2362 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $2363 = $2362 ^ $2361;
+ $2364 = $2363 & 255;
+ $2365 = 9036 + ($2364 << 2) | 0;
+ $2366 = SAFE_HEAP_LOAD($2365 | 0, 4, 0) | 0 | 0;
+ $2367 = $2366 ^ $2346;
+ $2368 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $2369 = $2368 & 255;
+ $2370 = $2369 ^ 198;
+ $2371 = 44974 + $2370 | 0;
+ $2372 = SAFE_HEAP_LOAD($2371 >> 0 | 0, 1, 0) | 0 | 0;
+ $2373 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $2374 = $2373 ^ $2372;
+ $2375 = $2374 & 255;
+ $2376 = 44974 + $2375 | 0;
+ $2377 = SAFE_HEAP_LOAD($2376 >> 0 | 0, 1, 0) | 0 | 0;
+ $2378 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $2379 = $2378 ^ $2377;
+ $2380 = $2379 & 255;
+ $2381 = 44718 + $2380 | 0;
+ $2382 = SAFE_HEAP_LOAD($2381 >> 0 | 0, 1, 0) | 0 | 0;
+ $2383 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $2384 = $2383 ^ $2382;
+ $2385 = $2384 & 255;
+ $2386 = 10060 + ($2385 << 2) | 0;
+ $2387 = SAFE_HEAP_LOAD($2386 | 0, 4, 0) | 0 | 0;
+ $2388 = $2367 ^ $2387;
+ $2389 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $2390 = $2389 & 255;
+ $2391 = $2390 ^ 50;
+ $2392 = 44974 + $2391 | 0;
+ $2393 = SAFE_HEAP_LOAD($2392 >> 0 | 0, 1, 0) | 0 | 0;
+ $2394 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $2395 = $2394 ^ $2393;
+ $2396 = $2395 & 255;
+ $2397 = 44718 + $2396 | 0;
+ $2398 = SAFE_HEAP_LOAD($2397 >> 0 | 0, 1, 0) | 0 | 0;
+ $2399 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $2400 = $2399 ^ $2398;
+ $2401 = $2400 & 255;
+ $2402 = 44718 + $2401 | 0;
+ $2403 = SAFE_HEAP_LOAD($2402 >> 0 | 0, 1, 0) | 0 | 0;
+ $2404 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $2405 = $2404 ^ $2403;
+ $2406 = $2405 & 255;
+ $2407 = 11084 + ($2406 << 2) | 0;
+ $2408 = SAFE_HEAP_LOAD($2407 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($2415 | 0, $2413 | 0, 4);
+ $2416 = $2414 << 9;
+ $2417 = $2414 >>> 23;
+ $2418 = $2416 | $2417;
+ $2419 = $0 + 4164 | 0;
+ SAFE_HEAP_STORE($2419 | 0, $2418 | 0, 4);
+ $2420 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $2421 = $2420 & 255;
+ $2422 = $2421 ^ 216;
+ $2423 = 44718 + $2422 | 0;
+ $2424 = SAFE_HEAP_LOAD($2423 >> 0 | 0, 1, 0) | 0 | 0;
+ $2425 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $2426 = $2425 ^ $2424;
+ $2427 = $2426 & 255;
+ $2428 = 44974 + $2427 | 0;
+ $2429 = SAFE_HEAP_LOAD($2428 >> 0 | 0, 1, 0) | 0 | 0;
+ $2430 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $2431 = $2430 ^ $2429;
+ $2432 = $2431 & 255;
+ $2433 = 44974 + $2432 | 0;
+ $2434 = SAFE_HEAP_LOAD($2433 >> 0 | 0, 1, 0) | 0 | 0;
+ $2435 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $2436 = $2435 ^ $2434;
+ $2437 = $2436 & 255;
+ $2438 = 8012 + ($2437 << 2) | 0;
+ $2439 = SAFE_HEAP_LOAD($2438 | 0, 4, 0) | 0 | 0;
+ $2440 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $2441 = $2440 & 255;
+ $2442 = $2441 ^ 53;
+ $2443 = 44718 + $2442 | 0;
+ $2444 = SAFE_HEAP_LOAD($2443 >> 0 | 0, 1, 0) | 0 | 0;
+ $2445 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $2446 = $2445 ^ $2444;
+ $2447 = $2446 & 255;
+ $2448 = 44718 + $2447 | 0;
+ $2449 = SAFE_HEAP_LOAD($2448 >> 0 | 0, 1, 0) | 0 | 0;
+ $2450 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $2451 = $2450 ^ $2449;
+ $2452 = $2451 & 255;
+ $2453 = 44974 + $2452 | 0;
+ $2454 = SAFE_HEAP_LOAD($2453 >> 0 | 0, 1, 0) | 0 | 0;
+ $2455 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $2456 = $2455 ^ $2454;
+ $2457 = $2456 & 255;
+ $2458 = 9036 + ($2457 << 2) | 0;
+ $2459 = SAFE_HEAP_LOAD($2458 | 0, 4, 0) | 0 | 0;
+ $2460 = $2459 ^ $2439;
+ $2461 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $2462 = $2461 & 255;
+ $2463 = $2462 ^ 53;
+ $2464 = 44974 + $2463 | 0;
+ $2465 = SAFE_HEAP_LOAD($2464 >> 0 | 0, 1, 0) | 0 | 0;
+ $2466 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $2467 = $2466 ^ $2465;
+ $2468 = $2467 & 255;
+ $2469 = 44974 + $2468 | 0;
+ $2470 = SAFE_HEAP_LOAD($2469 >> 0 | 0, 1, 0) | 0 | 0;
+ $2471 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $2472 = $2471 ^ $2470;
+ $2473 = $2472 & 255;
+ $2474 = 44718 + $2473 | 0;
+ $2475 = SAFE_HEAP_LOAD($2474 >> 0 | 0, 1, 0) | 0 | 0;
+ $2476 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $2477 = $2476 ^ $2475;
+ $2478 = $2477 & 255;
+ $2479 = 10060 + ($2478 << 2) | 0;
+ $2480 = SAFE_HEAP_LOAD($2479 | 0, 4, 0) | 0 | 0;
+ $2481 = $2460 ^ $2480;
+ $2482 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $2483 = $2482 & 255;
+ $2484 = $2483 ^ 216;
+ $2485 = 44974 + $2484 | 0;
+ $2486 = SAFE_HEAP_LOAD($2485 >> 0 | 0, 1, 0) | 0 | 0;
+ $2487 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $2488 = $2487 ^ $2486;
+ $2489 = $2488 & 255;
+ $2490 = 44718 + $2489 | 0;
+ $2491 = SAFE_HEAP_LOAD($2490 >> 0 | 0, 1, 0) | 0 | 0;
+ $2492 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $2493 = $2492 ^ $2491;
+ $2494 = $2493 & 255;
+ $2495 = 44718 + $2494 | 0;
+ $2496 = SAFE_HEAP_LOAD($2495 >> 0 | 0, 1, 0) | 0 | 0;
+ $2497 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $2498 = $2497 ^ $2496;
+ $2499 = $2498 & 255;
+ $2500 = 11084 + ($2499 << 2) | 0;
+ $2501 = SAFE_HEAP_LOAD($2500 | 0, 4, 0) | 0 | 0;
+ $2502 = $2481 ^ $2501;
+ $2503 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $2504 = $2503 & 255;
+ $2505 = $2504 ^ 253;
+ $2506 = 44718 + $2505 | 0;
+ $2507 = SAFE_HEAP_LOAD($2506 >> 0 | 0, 1, 0) | 0 | 0;
+ $2508 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $2509 = $2508 ^ $2507;
+ $2510 = $2509 & 255;
+ $2511 = 44974 + $2510 | 0;
+ $2512 = SAFE_HEAP_LOAD($2511 >> 0 | 0, 1, 0) | 0 | 0;
+ $2513 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $2514 = $2513 ^ $2512;
+ $2515 = $2514 & 255;
+ $2516 = 44974 + $2515 | 0;
+ $2517 = SAFE_HEAP_LOAD($2516 >> 0 | 0, 1, 0) | 0 | 0;
+ $2518 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $2519 = $2518 ^ $2517;
+ $2520 = $2519 & 255;
+ $2521 = 8012 + ($2520 << 2) | 0;
+ $2522 = SAFE_HEAP_LOAD($2521 | 0, 4, 0) | 0 | 0;
+ $2523 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $2524 = $2523 & 255;
+ $2525 = $2524 ^ 152;
+ $2526 = 44718 + $2525 | 0;
+ $2527 = SAFE_HEAP_LOAD($2526 >> 0 | 0, 1, 0) | 0 | 0;
+ $2528 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $2529 = $2528 ^ $2527;
+ $2530 = $2529 & 255;
+ $2531 = 44718 + $2530 | 0;
+ $2532 = SAFE_HEAP_LOAD($2531 >> 0 | 0, 1, 0) | 0 | 0;
+ $2533 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $2534 = $2533 ^ $2532;
+ $2535 = $2534 & 255;
+ $2536 = 44974 + $2535 | 0;
+ $2537 = SAFE_HEAP_LOAD($2536 >> 0 | 0, 1, 0) | 0 | 0;
+ $2538 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $2539 = $2538 ^ $2537;
+ $2540 = $2539 & 255;
+ $2541 = 9036 + ($2540 << 2) | 0;
+ $2542 = SAFE_HEAP_LOAD($2541 | 0, 4, 0) | 0 | 0;
+ $2543 = $2542 ^ $2522;
+ $2544 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $2545 = $2544 & 255;
+ $2546 = $2545 ^ 152;
+ $2547 = 44974 + $2546 | 0;
+ $2548 = SAFE_HEAP_LOAD($2547 >> 0 | 0, 1, 0) | 0 | 0;
+ $2549 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $2550 = $2549 ^ $2548;
+ $2551 = $2550 & 255;
+ $2552 = 44974 + $2551 | 0;
+ $2553 = SAFE_HEAP_LOAD($2552 >> 0 | 0, 1, 0) | 0 | 0;
+ $2554 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $2555 = $2554 ^ $2553;
+ $2556 = $2555 & 255;
+ $2557 = 44718 + $2556 | 0;
+ $2558 = SAFE_HEAP_LOAD($2557 >> 0 | 0, 1, 0) | 0 | 0;
+ $2559 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $2560 = $2559 ^ $2558;
+ $2561 = $2560 & 255;
+ $2562 = 10060 + ($2561 << 2) | 0;
+ $2563 = SAFE_HEAP_LOAD($2562 | 0, 4, 0) | 0 | 0;
+ $2564 = $2543 ^ $2563;
+ $2565 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $2566 = $2565 & 255;
+ $2567 = $2566 ^ 253;
+ $2568 = 44974 + $2567 | 0;
+ $2569 = SAFE_HEAP_LOAD($2568 >> 0 | 0, 1, 0) | 0 | 0;
+ $2570 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $2571 = $2570 ^ $2569;
+ $2572 = $2571 & 255;
+ $2573 = 44718 + $2572 | 0;
+ $2574 = SAFE_HEAP_LOAD($2573 >> 0 | 0, 1, 0) | 0 | 0;
+ $2575 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $2576 = $2575 ^ $2574;
+ $2577 = $2576 & 255;
+ $2578 = 44718 + $2577 | 0;
+ $2579 = SAFE_HEAP_LOAD($2578 >> 0 | 0, 1, 0) | 0 | 0;
+ $2580 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $2581 = $2580 ^ $2579;
+ $2582 = $2581 & 255;
+ $2583 = 11084 + ($2582 << 2) | 0;
+ $2584 = SAFE_HEAP_LOAD($2583 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($2591 | 0, $2589 | 0, 4);
+ $2592 = $2590 << 9;
+ $2593 = $2590 >>> 23;
+ $2594 = $2592 | $2593;
+ $2595 = $0 + 4172 | 0;
+ SAFE_HEAP_STORE($2595 | 0, $2594 | 0, 4);
+ $2596 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $2597 = $2596 & 255;
+ $2598 = $2597 ^ 55;
+ $2599 = 44718 + $2598 | 0;
+ $2600 = SAFE_HEAP_LOAD($2599 >> 0 | 0, 1, 0) | 0 | 0;
+ $2601 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $2602 = $2601 ^ $2600;
+ $2603 = $2602 & 255;
+ $2604 = 44974 + $2603 | 0;
+ $2605 = SAFE_HEAP_LOAD($2604 >> 0 | 0, 1, 0) | 0 | 0;
+ $2606 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $2607 = $2606 ^ $2605;
+ $2608 = $2607 & 255;
+ $2609 = 44974 + $2608 | 0;
+ $2610 = SAFE_HEAP_LOAD($2609 >> 0 | 0, 1, 0) | 0 | 0;
+ $2611 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $2612 = $2611 ^ $2610;
+ $2613 = $2612 & 255;
+ $2614 = 8012 + ($2613 << 2) | 0;
+ $2615 = SAFE_HEAP_LOAD($2614 | 0, 4, 0) | 0 | 0;
+ $2616 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $2617 = $2616 & 255;
+ $2618 = $2617 ^ 24;
+ $2619 = 44718 + $2618 | 0;
+ $2620 = SAFE_HEAP_LOAD($2619 >> 0 | 0, 1, 0) | 0 | 0;
+ $2621 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $2622 = $2621 ^ $2620;
+ $2623 = $2622 & 255;
+ $2624 = 44718 + $2623 | 0;
+ $2625 = SAFE_HEAP_LOAD($2624 >> 0 | 0, 1, 0) | 0 | 0;
+ $2626 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $2627 = $2626 ^ $2625;
+ $2628 = $2627 & 255;
+ $2629 = 44974 + $2628 | 0;
+ $2630 = SAFE_HEAP_LOAD($2629 >> 0 | 0, 1, 0) | 0 | 0;
+ $2631 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $2632 = $2631 ^ $2630;
+ $2633 = $2632 & 255;
+ $2634 = 9036 + ($2633 << 2) | 0;
+ $2635 = SAFE_HEAP_LOAD($2634 | 0, 4, 0) | 0 | 0;
+ $2636 = $2635 ^ $2615;
+ $2637 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $2638 = $2637 & 255;
+ $2639 = $2638 ^ 24;
+ $2640 = 44974 + $2639 | 0;
+ $2641 = SAFE_HEAP_LOAD($2640 >> 0 | 0, 1, 0) | 0 | 0;
+ $2642 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $2643 = $2642 ^ $2641;
+ $2644 = $2643 & 255;
+ $2645 = 44974 + $2644 | 0;
+ $2646 = SAFE_HEAP_LOAD($2645 >> 0 | 0, 1, 0) | 0 | 0;
+ $2647 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $2648 = $2647 ^ $2646;
+ $2649 = $2648 & 255;
+ $2650 = 44718 + $2649 | 0;
+ $2651 = SAFE_HEAP_LOAD($2650 >> 0 | 0, 1, 0) | 0 | 0;
+ $2652 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $2653 = $2652 ^ $2651;
+ $2654 = $2653 & 255;
+ $2655 = 10060 + ($2654 << 2) | 0;
+ $2656 = SAFE_HEAP_LOAD($2655 | 0, 4, 0) | 0 | 0;
+ $2657 = $2636 ^ $2656;
+ $2658 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $2659 = $2658 & 255;
+ $2660 = $2659 ^ 55;
+ $2661 = 44974 + $2660 | 0;
+ $2662 = SAFE_HEAP_LOAD($2661 >> 0 | 0, 1, 0) | 0 | 0;
+ $2663 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $2664 = $2663 ^ $2662;
+ $2665 = $2664 & 255;
+ $2666 = 44718 + $2665 | 0;
+ $2667 = SAFE_HEAP_LOAD($2666 >> 0 | 0, 1, 0) | 0 | 0;
+ $2668 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $2669 = $2668 ^ $2667;
+ $2670 = $2669 & 255;
+ $2671 = 44718 + $2670 | 0;
+ $2672 = SAFE_HEAP_LOAD($2671 >> 0 | 0, 1, 0) | 0 | 0;
+ $2673 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $2674 = $2673 ^ $2672;
+ $2675 = $2674 & 255;
+ $2676 = 11084 + ($2675 << 2) | 0;
+ $2677 = SAFE_HEAP_LOAD($2676 | 0, 4, 0) | 0 | 0;
+ $2678 = $2657 ^ $2677;
+ $2679 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $2680 = $2679 & 255;
+ $2681 = $2680 ^ 113;
+ $2682 = 44718 + $2681 | 0;
+ $2683 = SAFE_HEAP_LOAD($2682 >> 0 | 0, 1, 0) | 0 | 0;
+ $2684 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $2685 = $2684 ^ $2683;
+ $2686 = $2685 & 255;
+ $2687 = 44974 + $2686 | 0;
+ $2688 = SAFE_HEAP_LOAD($2687 >> 0 | 0, 1, 0) | 0 | 0;
+ $2689 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $2690 = $2689 ^ $2688;
+ $2691 = $2690 & 255;
+ $2692 = 44974 + $2691 | 0;
+ $2693 = SAFE_HEAP_LOAD($2692 >> 0 | 0, 1, 0) | 0 | 0;
+ $2694 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $2695 = $2694 ^ $2693;
+ $2696 = $2695 & 255;
+ $2697 = 8012 + ($2696 << 2) | 0;
+ $2698 = SAFE_HEAP_LOAD($2697 | 0, 4, 0) | 0 | 0;
+ $2699 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $2700 = $2699 & 255;
+ $2701 = $2700 ^ 247;
+ $2702 = 44718 + $2701 | 0;
+ $2703 = SAFE_HEAP_LOAD($2702 >> 0 | 0, 1, 0) | 0 | 0;
+ $2704 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $2705 = $2704 ^ $2703;
+ $2706 = $2705 & 255;
+ $2707 = 44718 + $2706 | 0;
+ $2708 = SAFE_HEAP_LOAD($2707 >> 0 | 0, 1, 0) | 0 | 0;
+ $2709 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $2710 = $2709 ^ $2708;
+ $2711 = $2710 & 255;
+ $2712 = 44974 + $2711 | 0;
+ $2713 = SAFE_HEAP_LOAD($2712 >> 0 | 0, 1, 0) | 0 | 0;
+ $2714 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $2715 = $2714 ^ $2713;
+ $2716 = $2715 & 255;
+ $2717 = 9036 + ($2716 << 2) | 0;
+ $2718 = SAFE_HEAP_LOAD($2717 | 0, 4, 0) | 0 | 0;
+ $2719 = $2718 ^ $2698;
+ $2720 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $2721 = $2720 & 255;
+ $2722 = $2721 ^ 247;
+ $2723 = 44974 + $2722 | 0;
+ $2724 = SAFE_HEAP_LOAD($2723 >> 0 | 0, 1, 0) | 0 | 0;
+ $2725 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $2726 = $2725 ^ $2724;
+ $2727 = $2726 & 255;
+ $2728 = 44974 + $2727 | 0;
+ $2729 = SAFE_HEAP_LOAD($2728 >> 0 | 0, 1, 0) | 0 | 0;
+ $2730 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $2731 = $2730 ^ $2729;
+ $2732 = $2731 & 255;
+ $2733 = 44718 + $2732 | 0;
+ $2734 = SAFE_HEAP_LOAD($2733 >> 0 | 0, 1, 0) | 0 | 0;
+ $2735 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $2736 = $2735 ^ $2734;
+ $2737 = $2736 & 255;
+ $2738 = 10060 + ($2737 << 2) | 0;
+ $2739 = SAFE_HEAP_LOAD($2738 | 0, 4, 0) | 0 | 0;
+ $2740 = $2719 ^ $2739;
+ $2741 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $2742 = $2741 & 255;
+ $2743 = $2742 ^ 113;
+ $2744 = 44974 + $2743 | 0;
+ $2745 = SAFE_HEAP_LOAD($2744 >> 0 | 0, 1, 0) | 0 | 0;
+ $2746 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $2747 = $2746 ^ $2745;
+ $2748 = $2747 & 255;
+ $2749 = 44718 + $2748 | 0;
+ $2750 = SAFE_HEAP_LOAD($2749 >> 0 | 0, 1, 0) | 0 | 0;
+ $2751 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $2752 = $2751 ^ $2750;
+ $2753 = $2752 & 255;
+ $2754 = 44718 + $2753 | 0;
+ $2755 = SAFE_HEAP_LOAD($2754 >> 0 | 0, 1, 0) | 0 | 0;
+ $2756 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $2757 = $2756 ^ $2755;
+ $2758 = $2757 & 255;
+ $2759 = 11084 + ($2758 << 2) | 0;
+ $2760 = SAFE_HEAP_LOAD($2759 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($2767 | 0, $2765 | 0, 4);
+ $2768 = $2766 << 9;
+ $2769 = $2766 >>> 23;
+ $2770 = $2768 | $2769;
+ $2771 = $0 + 4180 | 0;
+ SAFE_HEAP_STORE($2771 | 0, $2770 | 0, 4);
+ $2772 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $2773 = $2772 & 255;
+ $2774 = $2773 ^ 241;
+ $2775 = 44718 + $2774 | 0;
+ $2776 = SAFE_HEAP_LOAD($2775 >> 0 | 0, 1, 0) | 0 | 0;
+ $2777 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $2778 = $2777 ^ $2776;
+ $2779 = $2778 & 255;
+ $2780 = 44974 + $2779 | 0;
+ $2781 = SAFE_HEAP_LOAD($2780 >> 0 | 0, 1, 0) | 0 | 0;
+ $2782 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $2783 = $2782 ^ $2781;
+ $2784 = $2783 & 255;
+ $2785 = 44974 + $2784 | 0;
+ $2786 = SAFE_HEAP_LOAD($2785 >> 0 | 0, 1, 0) | 0 | 0;
+ $2787 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $2788 = $2787 ^ $2786;
+ $2789 = $2788 & 255;
+ $2790 = 8012 + ($2789 << 2) | 0;
+ $2791 = SAFE_HEAP_LOAD($2790 | 0, 4, 0) | 0 | 0;
+ $2792 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $2793 = $2792 & 255;
+ $2794 = $2793 ^ 236;
+ $2795 = 44718 + $2794 | 0;
+ $2796 = SAFE_HEAP_LOAD($2795 >> 0 | 0, 1, 0) | 0 | 0;
+ $2797 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $2798 = $2797 ^ $2796;
+ $2799 = $2798 & 255;
+ $2800 = 44718 + $2799 | 0;
+ $2801 = SAFE_HEAP_LOAD($2800 >> 0 | 0, 1, 0) | 0 | 0;
+ $2802 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $2803 = $2802 ^ $2801;
+ $2804 = $2803 & 255;
+ $2805 = 44974 + $2804 | 0;
+ $2806 = SAFE_HEAP_LOAD($2805 >> 0 | 0, 1, 0) | 0 | 0;
+ $2807 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $2808 = $2807 ^ $2806;
+ $2809 = $2808 & 255;
+ $2810 = 9036 + ($2809 << 2) | 0;
+ $2811 = SAFE_HEAP_LOAD($2810 | 0, 4, 0) | 0 | 0;
+ $2812 = $2811 ^ $2791;
+ $2813 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $2814 = $2813 & 255;
+ $2815 = $2814 ^ 236;
+ $2816 = 44974 + $2815 | 0;
+ $2817 = SAFE_HEAP_LOAD($2816 >> 0 | 0, 1, 0) | 0 | 0;
+ $2818 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $2819 = $2818 ^ $2817;
+ $2820 = $2819 & 255;
+ $2821 = 44974 + $2820 | 0;
+ $2822 = SAFE_HEAP_LOAD($2821 >> 0 | 0, 1, 0) | 0 | 0;
+ $2823 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $2824 = $2823 ^ $2822;
+ $2825 = $2824 & 255;
+ $2826 = 44718 + $2825 | 0;
+ $2827 = SAFE_HEAP_LOAD($2826 >> 0 | 0, 1, 0) | 0 | 0;
+ $2828 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $2829 = $2828 ^ $2827;
+ $2830 = $2829 & 255;
+ $2831 = 10060 + ($2830 << 2) | 0;
+ $2832 = SAFE_HEAP_LOAD($2831 | 0, 4, 0) | 0 | 0;
+ $2833 = $2812 ^ $2832;
+ $2834 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $2835 = $2834 & 255;
+ $2836 = $2835 ^ 241;
+ $2837 = 44974 + $2836 | 0;
+ $2838 = SAFE_HEAP_LOAD($2837 >> 0 | 0, 1, 0) | 0 | 0;
+ $2839 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $2840 = $2839 ^ $2838;
+ $2841 = $2840 & 255;
+ $2842 = 44718 + $2841 | 0;
+ $2843 = SAFE_HEAP_LOAD($2842 >> 0 | 0, 1, 0) | 0 | 0;
+ $2844 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $2845 = $2844 ^ $2843;
+ $2846 = $2845 & 255;
+ $2847 = 44718 + $2846 | 0;
+ $2848 = SAFE_HEAP_LOAD($2847 >> 0 | 0, 1, 0) | 0 | 0;
+ $2849 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $2850 = $2849 ^ $2848;
+ $2851 = $2850 & 255;
+ $2852 = 11084 + ($2851 << 2) | 0;
+ $2853 = SAFE_HEAP_LOAD($2852 | 0, 4, 0) | 0 | 0;
+ $2854 = $2833 ^ $2853;
+ $2855 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $2856 = $2855 & 255;
+ $2857 = $2856 ^ 225;
+ $2858 = 44718 + $2857 | 0;
+ $2859 = SAFE_HEAP_LOAD($2858 >> 0 | 0, 1, 0) | 0 | 0;
+ $2860 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $2861 = $2860 ^ $2859;
+ $2862 = $2861 & 255;
+ $2863 = 44974 + $2862 | 0;
+ $2864 = SAFE_HEAP_LOAD($2863 >> 0 | 0, 1, 0) | 0 | 0;
+ $2865 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $2866 = $2865 ^ $2864;
+ $2867 = $2866 & 255;
+ $2868 = 44974 + $2867 | 0;
+ $2869 = SAFE_HEAP_LOAD($2868 >> 0 | 0, 1, 0) | 0 | 0;
+ $2870 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $2871 = $2870 ^ $2869;
+ $2872 = $2871 & 255;
+ $2873 = 8012 + ($2872 << 2) | 0;
+ $2874 = SAFE_HEAP_LOAD($2873 | 0, 4, 0) | 0 | 0;
+ $2875 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $2876 = $2875 & 255;
+ $2877 = $2876 ^ 108;
+ $2878 = 44718 + $2877 | 0;
+ $2879 = SAFE_HEAP_LOAD($2878 >> 0 | 0, 1, 0) | 0 | 0;
+ $2880 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $2881 = $2880 ^ $2879;
+ $2882 = $2881 & 255;
+ $2883 = 44718 + $2882 | 0;
+ $2884 = SAFE_HEAP_LOAD($2883 >> 0 | 0, 1, 0) | 0 | 0;
+ $2885 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $2886 = $2885 ^ $2884;
+ $2887 = $2886 & 255;
+ $2888 = 44974 + $2887 | 0;
+ $2889 = SAFE_HEAP_LOAD($2888 >> 0 | 0, 1, 0) | 0 | 0;
+ $2890 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $2891 = $2890 ^ $2889;
+ $2892 = $2891 & 255;
+ $2893 = 9036 + ($2892 << 2) | 0;
+ $2894 = SAFE_HEAP_LOAD($2893 | 0, 4, 0) | 0 | 0;
+ $2895 = $2894 ^ $2874;
+ $2896 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $2897 = $2896 & 255;
+ $2898 = $2897 ^ 108;
+ $2899 = 44974 + $2898 | 0;
+ $2900 = SAFE_HEAP_LOAD($2899 >> 0 | 0, 1, 0) | 0 | 0;
+ $2901 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $2902 = $2901 ^ $2900;
+ $2903 = $2902 & 255;
+ $2904 = 44974 + $2903 | 0;
+ $2905 = SAFE_HEAP_LOAD($2904 >> 0 | 0, 1, 0) | 0 | 0;
+ $2906 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $2907 = $2906 ^ $2905;
+ $2908 = $2907 & 255;
+ $2909 = 44718 + $2908 | 0;
+ $2910 = SAFE_HEAP_LOAD($2909 >> 0 | 0, 1, 0) | 0 | 0;
+ $2911 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $2912 = $2911 ^ $2910;
+ $2913 = $2912 & 255;
+ $2914 = 10060 + ($2913 << 2) | 0;
+ $2915 = SAFE_HEAP_LOAD($2914 | 0, 4, 0) | 0 | 0;
+ $2916 = $2895 ^ $2915;
+ $2917 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $2918 = $2917 & 255;
+ $2919 = $2918 ^ 225;
+ $2920 = 44974 + $2919 | 0;
+ $2921 = SAFE_HEAP_LOAD($2920 >> 0 | 0, 1, 0) | 0 | 0;
+ $2922 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $2923 = $2922 ^ $2921;
+ $2924 = $2923 & 255;
+ $2925 = 44718 + $2924 | 0;
+ $2926 = SAFE_HEAP_LOAD($2925 >> 0 | 0, 1, 0) | 0 | 0;
+ $2927 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $2928 = $2927 ^ $2926;
+ $2929 = $2928 & 255;
+ $2930 = 44718 + $2929 | 0;
+ $2931 = SAFE_HEAP_LOAD($2930 >> 0 | 0, 1, 0) | 0 | 0;
+ $2932 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $2933 = $2932 ^ $2931;
+ $2934 = $2933 & 255;
+ $2935 = 11084 + ($2934 << 2) | 0;
+ $2936 = SAFE_HEAP_LOAD($2935 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($2943 | 0, $2941 | 0, 4);
+ $2944 = $2942 << 9;
+ $2945 = $2942 >>> 23;
+ $2946 = $2944 | $2945;
+ $2947 = $0 + 4188 | 0;
+ SAFE_HEAP_STORE($2947 | 0, $2946 | 0, 4);
+ $2948 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $2949 = $2948 & 255;
+ $2950 = $2949 ^ 48;
+ $2951 = 44718 + $2950 | 0;
+ $2952 = SAFE_HEAP_LOAD($2951 >> 0 | 0, 1, 0) | 0 | 0;
+ $2953 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $2954 = $2953 ^ $2952;
+ $2955 = $2954 & 255;
+ $2956 = 44974 + $2955 | 0;
+ $2957 = SAFE_HEAP_LOAD($2956 >> 0 | 0, 1, 0) | 0 | 0;
+ $2958 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $2959 = $2958 ^ $2957;
+ $2960 = $2959 & 255;
+ $2961 = 44974 + $2960 | 0;
+ $2962 = SAFE_HEAP_LOAD($2961 >> 0 | 0, 1, 0) | 0 | 0;
+ $2963 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $2964 = $2963 ^ $2962;
+ $2965 = $2964 & 255;
+ $2966 = 8012 + ($2965 << 2) | 0;
+ $2967 = SAFE_HEAP_LOAD($2966 | 0, 4, 0) | 0 | 0;
+ $2968 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $2969 = $2968 & 255;
+ $2970 = $2969 ^ 67;
+ $2971 = 44718 + $2970 | 0;
+ $2972 = SAFE_HEAP_LOAD($2971 >> 0 | 0, 1, 0) | 0 | 0;
+ $2973 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $2974 = $2973 ^ $2972;
+ $2975 = $2974 & 255;
+ $2976 = 44718 + $2975 | 0;
+ $2977 = SAFE_HEAP_LOAD($2976 >> 0 | 0, 1, 0) | 0 | 0;
+ $2978 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $2979 = $2978 ^ $2977;
+ $2980 = $2979 & 255;
+ $2981 = 44974 + $2980 | 0;
+ $2982 = SAFE_HEAP_LOAD($2981 >> 0 | 0, 1, 0) | 0 | 0;
+ $2983 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $2984 = $2983 ^ $2982;
+ $2985 = $2984 & 255;
+ $2986 = 9036 + ($2985 << 2) | 0;
+ $2987 = SAFE_HEAP_LOAD($2986 | 0, 4, 0) | 0 | 0;
+ $2988 = $2987 ^ $2967;
+ $2989 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $2990 = $2989 & 255;
+ $2991 = $2990 ^ 67;
+ $2992 = 44974 + $2991 | 0;
+ $2993 = SAFE_HEAP_LOAD($2992 >> 0 | 0, 1, 0) | 0 | 0;
+ $2994 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $2995 = $2994 ^ $2993;
+ $2996 = $2995 & 255;
+ $2997 = 44974 + $2996 | 0;
+ $2998 = SAFE_HEAP_LOAD($2997 >> 0 | 0, 1, 0) | 0 | 0;
+ $2999 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $3000 = $2999 ^ $2998;
+ $3001 = $3000 & 255;
+ $3002 = 44718 + $3001 | 0;
+ $3003 = SAFE_HEAP_LOAD($3002 >> 0 | 0, 1, 0) | 0 | 0;
+ $3004 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $3005 = $3004 ^ $3003;
+ $3006 = $3005 & 255;
+ $3007 = 10060 + ($3006 << 2) | 0;
+ $3008 = SAFE_HEAP_LOAD($3007 | 0, 4, 0) | 0 | 0;
+ $3009 = $2988 ^ $3008;
+ $3010 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $3011 = $3010 & 255;
+ $3012 = $3011 ^ 48;
+ $3013 = 44974 + $3012 | 0;
+ $3014 = SAFE_HEAP_LOAD($3013 >> 0 | 0, 1, 0) | 0 | 0;
+ $3015 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $3016 = $3015 ^ $3014;
+ $3017 = $3016 & 255;
+ $3018 = 44718 + $3017 | 0;
+ $3019 = SAFE_HEAP_LOAD($3018 >> 0 | 0, 1, 0) | 0 | 0;
+ $3020 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $3021 = $3020 ^ $3019;
+ $3022 = $3021 & 255;
+ $3023 = 44718 + $3022 | 0;
+ $3024 = SAFE_HEAP_LOAD($3023 >> 0 | 0, 1, 0) | 0 | 0;
+ $3025 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $3026 = $3025 ^ $3024;
+ $3027 = $3026 & 255;
+ $3028 = 11084 + ($3027 << 2) | 0;
+ $3029 = SAFE_HEAP_LOAD($3028 | 0, 4, 0) | 0 | 0;
+ $3030 = $3009 ^ $3029;
+ $3031 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $3032 = $3031 & 255;
+ $3033 = $3032 ^ 15;
+ $3034 = 44718 + $3033 | 0;
+ $3035 = SAFE_HEAP_LOAD($3034 >> 0 | 0, 1, 0) | 0 | 0;
+ $3036 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $3037 = $3036 ^ $3035;
+ $3038 = $3037 & 255;
+ $3039 = 44974 + $3038 | 0;
+ $3040 = SAFE_HEAP_LOAD($3039 >> 0 | 0, 1, 0) | 0 | 0;
+ $3041 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $3042 = $3041 ^ $3040;
+ $3043 = $3042 & 255;
+ $3044 = 44974 + $3043 | 0;
+ $3045 = SAFE_HEAP_LOAD($3044 >> 0 | 0, 1, 0) | 0 | 0;
+ $3046 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $3047 = $3046 ^ $3045;
+ $3048 = $3047 & 255;
+ $3049 = 8012 + ($3048 << 2) | 0;
+ $3050 = SAFE_HEAP_LOAD($3049 | 0, 4, 0) | 0 | 0;
+ $3051 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $3052 = $3051 & 255;
+ $3053 = $3052 ^ 117;
+ $3054 = 44718 + $3053 | 0;
+ $3055 = SAFE_HEAP_LOAD($3054 >> 0 | 0, 1, 0) | 0 | 0;
+ $3056 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $3057 = $3056 ^ $3055;
+ $3058 = $3057 & 255;
+ $3059 = 44718 + $3058 | 0;
+ $3060 = SAFE_HEAP_LOAD($3059 >> 0 | 0, 1, 0) | 0 | 0;
+ $3061 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $3062 = $3061 ^ $3060;
+ $3063 = $3062 & 255;
+ $3064 = 44974 + $3063 | 0;
+ $3065 = SAFE_HEAP_LOAD($3064 >> 0 | 0, 1, 0) | 0 | 0;
+ $3066 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $3067 = $3066 ^ $3065;
+ $3068 = $3067 & 255;
+ $3069 = 9036 + ($3068 << 2) | 0;
+ $3070 = SAFE_HEAP_LOAD($3069 | 0, 4, 0) | 0 | 0;
+ $3071 = $3070 ^ $3050;
+ $3072 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $3073 = $3072 & 255;
+ $3074 = $3073 ^ 117;
+ $3075 = 44974 + $3074 | 0;
+ $3076 = SAFE_HEAP_LOAD($3075 >> 0 | 0, 1, 0) | 0 | 0;
+ $3077 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $3078 = $3077 ^ $3076;
+ $3079 = $3078 & 255;
+ $3080 = 44974 + $3079 | 0;
+ $3081 = SAFE_HEAP_LOAD($3080 >> 0 | 0, 1, 0) | 0 | 0;
+ $3082 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $3083 = $3082 ^ $3081;
+ $3084 = $3083 & 255;
+ $3085 = 44718 + $3084 | 0;
+ $3086 = SAFE_HEAP_LOAD($3085 >> 0 | 0, 1, 0) | 0 | 0;
+ $3087 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $3088 = $3087 ^ $3086;
+ $3089 = $3088 & 255;
+ $3090 = 10060 + ($3089 << 2) | 0;
+ $3091 = SAFE_HEAP_LOAD($3090 | 0, 4, 0) | 0 | 0;
+ $3092 = $3071 ^ $3091;
+ $3093 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $3094 = $3093 & 255;
+ $3095 = $3094 ^ 15;
+ $3096 = 44974 + $3095 | 0;
+ $3097 = SAFE_HEAP_LOAD($3096 >> 0 | 0, 1, 0) | 0 | 0;
+ $3098 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $3099 = $3098 ^ $3097;
+ $3100 = $3099 & 255;
+ $3101 = 44718 + $3100 | 0;
+ $3102 = SAFE_HEAP_LOAD($3101 >> 0 | 0, 1, 0) | 0 | 0;
+ $3103 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $3104 = $3103 ^ $3102;
+ $3105 = $3104 & 255;
+ $3106 = 44718 + $3105 | 0;
+ $3107 = SAFE_HEAP_LOAD($3106 >> 0 | 0, 1, 0) | 0 | 0;
+ $3108 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $3109 = $3108 ^ $3107;
+ $3110 = $3109 & 255;
+ $3111 = 11084 + ($3110 << 2) | 0;
+ $3112 = SAFE_HEAP_LOAD($3111 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($3119 | 0, $3117 | 0, 4);
+ $3120 = $3118 << 9;
+ $3121 = $3118 >>> 23;
+ $3122 = $3120 | $3121;
+ $3123 = $0 + 4196 | 0;
+ SAFE_HEAP_STORE($3123 | 0, $3122 | 0, 4);
+ $3124 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $3125 = $3124 & 255;
+ $3126 = $3125 ^ 248;
+ $3127 = 44718 + $3126 | 0;
+ $3128 = SAFE_HEAP_LOAD($3127 >> 0 | 0, 1, 0) | 0 | 0;
+ $3129 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $3130 = $3129 ^ $3128;
+ $3131 = $3130 & 255;
+ $3132 = 44974 + $3131 | 0;
+ $3133 = SAFE_HEAP_LOAD($3132 >> 0 | 0, 1, 0) | 0 | 0;
+ $3134 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $3135 = $3134 ^ $3133;
+ $3136 = $3135 & 255;
+ $3137 = 44974 + $3136 | 0;
+ $3138 = SAFE_HEAP_LOAD($3137 >> 0 | 0, 1, 0) | 0 | 0;
+ $3139 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $3140 = $3139 ^ $3138;
+ $3141 = $3140 & 255;
+ $3142 = 8012 + ($3141 << 2) | 0;
+ $3143 = SAFE_HEAP_LOAD($3142 | 0, 4, 0) | 0 | 0;
+ $3144 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $3145 = $3144 & 255;
+ $3146 = $3145 ^ 55;
+ $3147 = 44718 + $3146 | 0;
+ $3148 = SAFE_HEAP_LOAD($3147 >> 0 | 0, 1, 0) | 0 | 0;
+ $3149 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $3150 = $3149 ^ $3148;
+ $3151 = $3150 & 255;
+ $3152 = 44718 + $3151 | 0;
+ $3153 = SAFE_HEAP_LOAD($3152 >> 0 | 0, 1, 0) | 0 | 0;
+ $3154 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $3155 = $3154 ^ $3153;
+ $3156 = $3155 & 255;
+ $3157 = 44974 + $3156 | 0;
+ $3158 = SAFE_HEAP_LOAD($3157 >> 0 | 0, 1, 0) | 0 | 0;
+ $3159 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $3160 = $3159 ^ $3158;
+ $3161 = $3160 & 255;
+ $3162 = 9036 + ($3161 << 2) | 0;
+ $3163 = SAFE_HEAP_LOAD($3162 | 0, 4, 0) | 0 | 0;
+ $3164 = $3163 ^ $3143;
+ $3165 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $3166 = $3165 & 255;
+ $3167 = $3166 ^ 55;
+ $3168 = 44974 + $3167 | 0;
+ $3169 = SAFE_HEAP_LOAD($3168 >> 0 | 0, 1, 0) | 0 | 0;
+ $3170 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $3171 = $3170 ^ $3169;
+ $3172 = $3171 & 255;
+ $3173 = 44974 + $3172 | 0;
+ $3174 = SAFE_HEAP_LOAD($3173 >> 0 | 0, 1, 0) | 0 | 0;
+ $3175 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $3176 = $3175 ^ $3174;
+ $3177 = $3176 & 255;
+ $3178 = 44718 + $3177 | 0;
+ $3179 = SAFE_HEAP_LOAD($3178 >> 0 | 0, 1, 0) | 0 | 0;
+ $3180 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $3181 = $3180 ^ $3179;
+ $3182 = $3181 & 255;
+ $3183 = 10060 + ($3182 << 2) | 0;
+ $3184 = SAFE_HEAP_LOAD($3183 | 0, 4, 0) | 0 | 0;
+ $3185 = $3164 ^ $3184;
+ $3186 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $3187 = $3186 & 255;
+ $3188 = $3187 ^ 248;
+ $3189 = 44974 + $3188 | 0;
+ $3190 = SAFE_HEAP_LOAD($3189 >> 0 | 0, 1, 0) | 0 | 0;
+ $3191 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $3192 = $3191 ^ $3190;
+ $3193 = $3192 & 255;
+ $3194 = 44718 + $3193 | 0;
+ $3195 = SAFE_HEAP_LOAD($3194 >> 0 | 0, 1, 0) | 0 | 0;
+ $3196 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $3197 = $3196 ^ $3195;
+ $3198 = $3197 & 255;
+ $3199 = 44718 + $3198 | 0;
+ $3200 = SAFE_HEAP_LOAD($3199 >> 0 | 0, 1, 0) | 0 | 0;
+ $3201 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $3202 = $3201 ^ $3200;
+ $3203 = $3202 & 255;
+ $3204 = 11084 + ($3203 << 2) | 0;
+ $3205 = SAFE_HEAP_LOAD($3204 | 0, 4, 0) | 0 | 0;
+ $3206 = $3185 ^ $3205;
+ $3207 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $3208 = $3207 & 255;
+ $3209 = $3208 ^ 27;
+ $3210 = 44718 + $3209 | 0;
+ $3211 = SAFE_HEAP_LOAD($3210 >> 0 | 0, 1, 0) | 0 | 0;
+ $3212 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $3213 = $3212 ^ $3211;
+ $3214 = $3213 & 255;
+ $3215 = 44974 + $3214 | 0;
+ $3216 = SAFE_HEAP_LOAD($3215 >> 0 | 0, 1, 0) | 0 | 0;
+ $3217 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $3218 = $3217 ^ $3216;
+ $3219 = $3218 & 255;
+ $3220 = 44974 + $3219 | 0;
+ $3221 = SAFE_HEAP_LOAD($3220 >> 0 | 0, 1, 0) | 0 | 0;
+ $3222 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $3223 = $3222 ^ $3221;
+ $3224 = $3223 & 255;
+ $3225 = 8012 + ($3224 << 2) | 0;
+ $3226 = SAFE_HEAP_LOAD($3225 | 0, 4, 0) | 0 | 0;
+ $3227 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $3228 = $3227 & 255;
+ $3229 = $3228 ^ 38;
+ $3230 = 44718 + $3229 | 0;
+ $3231 = SAFE_HEAP_LOAD($3230 >> 0 | 0, 1, 0) | 0 | 0;
+ $3232 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $3233 = $3232 ^ $3231;
+ $3234 = $3233 & 255;
+ $3235 = 44718 + $3234 | 0;
+ $3236 = SAFE_HEAP_LOAD($3235 >> 0 | 0, 1, 0) | 0 | 0;
+ $3237 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $3238 = $3237 ^ $3236;
+ $3239 = $3238 & 255;
+ $3240 = 44974 + $3239 | 0;
+ $3241 = SAFE_HEAP_LOAD($3240 >> 0 | 0, 1, 0) | 0 | 0;
+ $3242 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $3243 = $3242 ^ $3241;
+ $3244 = $3243 & 255;
+ $3245 = 9036 + ($3244 << 2) | 0;
+ $3246 = SAFE_HEAP_LOAD($3245 | 0, 4, 0) | 0 | 0;
+ $3247 = $3246 ^ $3226;
+ $3248 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $3249 = $3248 & 255;
+ $3250 = $3249 ^ 38;
+ $3251 = 44974 + $3250 | 0;
+ $3252 = SAFE_HEAP_LOAD($3251 >> 0 | 0, 1, 0) | 0 | 0;
+ $3253 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $3254 = $3253 ^ $3252;
+ $3255 = $3254 & 255;
+ $3256 = 44974 + $3255 | 0;
+ $3257 = SAFE_HEAP_LOAD($3256 >> 0 | 0, 1, 0) | 0 | 0;
+ $3258 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $3259 = $3258 ^ $3257;
+ $3260 = $3259 & 255;
+ $3261 = 44718 + $3260 | 0;
+ $3262 = SAFE_HEAP_LOAD($3261 >> 0 | 0, 1, 0) | 0 | 0;
+ $3263 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $3264 = $3263 ^ $3262;
+ $3265 = $3264 & 255;
+ $3266 = 10060 + ($3265 << 2) | 0;
+ $3267 = SAFE_HEAP_LOAD($3266 | 0, 4, 0) | 0 | 0;
+ $3268 = $3247 ^ $3267;
+ $3269 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $3270 = $3269 & 255;
+ $3271 = $3270 ^ 27;
+ $3272 = 44974 + $3271 | 0;
+ $3273 = SAFE_HEAP_LOAD($3272 >> 0 | 0, 1, 0) | 0 | 0;
+ $3274 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $3275 = $3274 ^ $3273;
+ $3276 = $3275 & 255;
+ $3277 = 44718 + $3276 | 0;
+ $3278 = SAFE_HEAP_LOAD($3277 >> 0 | 0, 1, 0) | 0 | 0;
+ $3279 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $3280 = $3279 ^ $3278;
+ $3281 = $3280 & 255;
+ $3282 = 44718 + $3281 | 0;
+ $3283 = SAFE_HEAP_LOAD($3282 >> 0 | 0, 1, 0) | 0 | 0;
+ $3284 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $3285 = $3284 ^ $3283;
+ $3286 = $3285 & 255;
+ $3287 = 11084 + ($3286 << 2) | 0;
+ $3288 = SAFE_HEAP_LOAD($3287 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($3295 | 0, $3293 | 0, 4);
+ $3296 = $3294 << 9;
+ $3297 = $3294 >>> 23;
+ $3298 = $3296 | $3297;
+ $3299 = $0 + 4204 | 0;
+ SAFE_HEAP_STORE($3299 | 0, $3298 | 0, 4);
+ $3300 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $3301 = $3300 & 255;
+ $3302 = $3301 ^ 135;
+ $3303 = 44718 + $3302 | 0;
+ $3304 = SAFE_HEAP_LOAD($3303 >> 0 | 0, 1, 0) | 0 | 0;
+ $3305 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $3306 = $3305 ^ $3304;
+ $3307 = $3306 & 255;
+ $3308 = 44974 + $3307 | 0;
+ $3309 = SAFE_HEAP_LOAD($3308 >> 0 | 0, 1, 0) | 0 | 0;
+ $3310 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $3311 = $3310 ^ $3309;
+ $3312 = $3311 & 255;
+ $3313 = 44974 + $3312 | 0;
+ $3314 = SAFE_HEAP_LOAD($3313 >> 0 | 0, 1, 0) | 0 | 0;
+ $3315 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $3316 = $3315 ^ $3314;
+ $3317 = $3316 & 255;
+ $3318 = 8012 + ($3317 << 2) | 0;
+ $3319 = SAFE_HEAP_LOAD($3318 | 0, 4, 0) | 0 | 0;
+ $3320 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $3321 = $3320 & 255;
+ $3322 = $3321 ^ 250;
+ $3323 = 44718 + $3322 | 0;
+ $3324 = SAFE_HEAP_LOAD($3323 >> 0 | 0, 1, 0) | 0 | 0;
+ $3325 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $3326 = $3325 ^ $3324;
+ $3327 = $3326 & 255;
+ $3328 = 44718 + $3327 | 0;
+ $3329 = SAFE_HEAP_LOAD($3328 >> 0 | 0, 1, 0) | 0 | 0;
+ $3330 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $3331 = $3330 ^ $3329;
+ $3332 = $3331 & 255;
+ $3333 = 44974 + $3332 | 0;
+ $3334 = SAFE_HEAP_LOAD($3333 >> 0 | 0, 1, 0) | 0 | 0;
+ $3335 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $3336 = $3335 ^ $3334;
+ $3337 = $3336 & 255;
+ $3338 = 9036 + ($3337 << 2) | 0;
+ $3339 = SAFE_HEAP_LOAD($3338 | 0, 4, 0) | 0 | 0;
+ $3340 = $3339 ^ $3319;
+ $3341 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $3342 = $3341 & 255;
+ $3343 = $3342 ^ 250;
+ $3344 = 44974 + $3343 | 0;
+ $3345 = SAFE_HEAP_LOAD($3344 >> 0 | 0, 1, 0) | 0 | 0;
+ $3346 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $3347 = $3346 ^ $3345;
+ $3348 = $3347 & 255;
+ $3349 = 44974 + $3348 | 0;
+ $3350 = SAFE_HEAP_LOAD($3349 >> 0 | 0, 1, 0) | 0 | 0;
+ $3351 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $3352 = $3351 ^ $3350;
+ $3353 = $3352 & 255;
+ $3354 = 44718 + $3353 | 0;
+ $3355 = SAFE_HEAP_LOAD($3354 >> 0 | 0, 1, 0) | 0 | 0;
+ $3356 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $3357 = $3356 ^ $3355;
+ $3358 = $3357 & 255;
+ $3359 = 10060 + ($3358 << 2) | 0;
+ $3360 = SAFE_HEAP_LOAD($3359 | 0, 4, 0) | 0 | 0;
+ $3361 = $3340 ^ $3360;
+ $3362 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $3363 = $3362 & 255;
+ $3364 = $3363 ^ 135;
+ $3365 = 44974 + $3364 | 0;
+ $3366 = SAFE_HEAP_LOAD($3365 >> 0 | 0, 1, 0) | 0 | 0;
+ $3367 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $3368 = $3367 ^ $3366;
+ $3369 = $3368 & 255;
+ $3370 = 44718 + $3369 | 0;
+ $3371 = SAFE_HEAP_LOAD($3370 >> 0 | 0, 1, 0) | 0 | 0;
+ $3372 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $3373 = $3372 ^ $3371;
+ $3374 = $3373 & 255;
+ $3375 = 44718 + $3374 | 0;
+ $3376 = SAFE_HEAP_LOAD($3375 >> 0 | 0, 1, 0) | 0 | 0;
+ $3377 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $3378 = $3377 ^ $3376;
+ $3379 = $3378 & 255;
+ $3380 = 11084 + ($3379 << 2) | 0;
+ $3381 = SAFE_HEAP_LOAD($3380 | 0, 4, 0) | 0 | 0;
+ $3382 = $3361 ^ $3381;
+ $3383 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $3384 = $3383 & 255;
+ $3385 = $3384 ^ 250;
+ $3386 = 44718 + $3385 | 0;
+ $3387 = SAFE_HEAP_LOAD($3386 >> 0 | 0, 1, 0) | 0 | 0;
+ $3388 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $3389 = $3388 ^ $3387;
+ $3390 = $3389 & 255;
+ $3391 = 44974 + $3390 | 0;
+ $3392 = SAFE_HEAP_LOAD($3391 >> 0 | 0, 1, 0) | 0 | 0;
+ $3393 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $3394 = $3393 ^ $3392;
+ $3395 = $3394 & 255;
+ $3396 = 44974 + $3395 | 0;
+ $3397 = SAFE_HEAP_LOAD($3396 >> 0 | 0, 1, 0) | 0 | 0;
+ $3398 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $3399 = $3398 ^ $3397;
+ $3400 = $3399 & 255;
+ $3401 = 8012 + ($3400 << 2) | 0;
+ $3402 = SAFE_HEAP_LOAD($3401 | 0, 4, 0) | 0 | 0;
+ $3403 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $3404 = $3403 & 255;
+ $3405 = $3404 ^ 19;
+ $3406 = 44718 + $3405 | 0;
+ $3407 = SAFE_HEAP_LOAD($3406 >> 0 | 0, 1, 0) | 0 | 0;
+ $3408 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $3409 = $3408 ^ $3407;
+ $3410 = $3409 & 255;
+ $3411 = 44718 + $3410 | 0;
+ $3412 = SAFE_HEAP_LOAD($3411 >> 0 | 0, 1, 0) | 0 | 0;
+ $3413 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $3414 = $3413 ^ $3412;
+ $3415 = $3414 & 255;
+ $3416 = 44974 + $3415 | 0;
+ $3417 = SAFE_HEAP_LOAD($3416 >> 0 | 0, 1, 0) | 0 | 0;
+ $3418 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $3419 = $3418 ^ $3417;
+ $3420 = $3419 & 255;
+ $3421 = 9036 + ($3420 << 2) | 0;
+ $3422 = SAFE_HEAP_LOAD($3421 | 0, 4, 0) | 0 | 0;
+ $3423 = $3422 ^ $3402;
+ $3424 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $3425 = $3424 & 255;
+ $3426 = $3425 ^ 19;
+ $3427 = 44974 + $3426 | 0;
+ $3428 = SAFE_HEAP_LOAD($3427 >> 0 | 0, 1, 0) | 0 | 0;
+ $3429 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $3430 = $3429 ^ $3428;
+ $3431 = $3430 & 255;
+ $3432 = 44974 + $3431 | 0;
+ $3433 = SAFE_HEAP_LOAD($3432 >> 0 | 0, 1, 0) | 0 | 0;
+ $3434 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $3435 = $3434 ^ $3433;
+ $3436 = $3435 & 255;
+ $3437 = 44718 + $3436 | 0;
+ $3438 = SAFE_HEAP_LOAD($3437 >> 0 | 0, 1, 0) | 0 | 0;
+ $3439 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $3440 = $3439 ^ $3438;
+ $3441 = $3440 & 255;
+ $3442 = 10060 + ($3441 << 2) | 0;
+ $3443 = SAFE_HEAP_LOAD($3442 | 0, 4, 0) | 0 | 0;
+ $3444 = $3423 ^ $3443;
+ $3445 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $3446 = $3445 & 255;
+ $3447 = $3446 ^ 250;
+ $3448 = 44974 + $3447 | 0;
+ $3449 = SAFE_HEAP_LOAD($3448 >> 0 | 0, 1, 0) | 0 | 0;
+ $3450 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $3451 = $3450 ^ $3449;
+ $3452 = $3451 & 255;
+ $3453 = 44718 + $3452 | 0;
+ $3454 = SAFE_HEAP_LOAD($3453 >> 0 | 0, 1, 0) | 0 | 0;
+ $3455 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $3456 = $3455 ^ $3454;
+ $3457 = $3456 & 255;
+ $3458 = 44718 + $3457 | 0;
+ $3459 = SAFE_HEAP_LOAD($3458 >> 0 | 0, 1, 0) | 0 | 0;
+ $3460 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $3461 = $3460 ^ $3459;
+ $3462 = $3461 & 255;
+ $3463 = 11084 + ($3462 << 2) | 0;
+ $3464 = SAFE_HEAP_LOAD($3463 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($3471 | 0, $3469 | 0, 4);
+ $3472 = $3470 << 9;
+ $3473 = $3470 >>> 23;
+ $3474 = $3472 | $3473;
+ $3475 = $0 + 4212 | 0;
+ SAFE_HEAP_STORE($3475 | 0, $3474 | 0, 4);
+ $3476 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $3477 = $3476 & 255;
+ $3478 = $3477 ^ 6;
+ $3479 = 44718 + $3478 | 0;
+ $3480 = SAFE_HEAP_LOAD($3479 >> 0 | 0, 1, 0) | 0 | 0;
+ $3481 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $3482 = $3481 ^ $3480;
+ $3483 = $3482 & 255;
+ $3484 = 44974 + $3483 | 0;
+ $3485 = SAFE_HEAP_LOAD($3484 >> 0 | 0, 1, 0) | 0 | 0;
+ $3486 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $3487 = $3486 ^ $3485;
+ $3488 = $3487 & 255;
+ $3489 = 44974 + $3488 | 0;
+ $3490 = SAFE_HEAP_LOAD($3489 >> 0 | 0, 1, 0) | 0 | 0;
+ $3491 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $3492 = $3491 ^ $3490;
+ $3493 = $3492 & 255;
+ $3494 = 8012 + ($3493 << 2) | 0;
+ $3495 = SAFE_HEAP_LOAD($3494 | 0, 4, 0) | 0 | 0;
+ $3496 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $3497 = $3496 & 255;
+ $3498 = $3497 ^ 148;
+ $3499 = 44718 + $3498 | 0;
+ $3500 = SAFE_HEAP_LOAD($3499 >> 0 | 0, 1, 0) | 0 | 0;
+ $3501 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $3502 = $3501 ^ $3500;
+ $3503 = $3502 & 255;
+ $3504 = 44718 + $3503 | 0;
+ $3505 = SAFE_HEAP_LOAD($3504 >> 0 | 0, 1, 0) | 0 | 0;
+ $3506 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $3507 = $3506 ^ $3505;
+ $3508 = $3507 & 255;
+ $3509 = 44974 + $3508 | 0;
+ $3510 = SAFE_HEAP_LOAD($3509 >> 0 | 0, 1, 0) | 0 | 0;
+ $3511 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $3512 = $3511 ^ $3510;
+ $3513 = $3512 & 255;
+ $3514 = 9036 + ($3513 << 2) | 0;
+ $3515 = SAFE_HEAP_LOAD($3514 | 0, 4, 0) | 0 | 0;
+ $3516 = $3515 ^ $3495;
+ $3517 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $3518 = $3517 & 255;
+ $3519 = $3518 ^ 148;
+ $3520 = 44974 + $3519 | 0;
+ $3521 = SAFE_HEAP_LOAD($3520 >> 0 | 0, 1, 0) | 0 | 0;
+ $3522 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $3523 = $3522 ^ $3521;
+ $3524 = $3523 & 255;
+ $3525 = 44974 + $3524 | 0;
+ $3526 = SAFE_HEAP_LOAD($3525 >> 0 | 0, 1, 0) | 0 | 0;
+ $3527 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $3528 = $3527 ^ $3526;
+ $3529 = $3528 & 255;
+ $3530 = 44718 + $3529 | 0;
+ $3531 = SAFE_HEAP_LOAD($3530 >> 0 | 0, 1, 0) | 0 | 0;
+ $3532 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $3533 = $3532 ^ $3531;
+ $3534 = $3533 & 255;
+ $3535 = 10060 + ($3534 << 2) | 0;
+ $3536 = SAFE_HEAP_LOAD($3535 | 0, 4, 0) | 0 | 0;
+ $3537 = $3516 ^ $3536;
+ $3538 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $3539 = $3538 & 255;
+ $3540 = $3539 ^ 6;
+ $3541 = 44974 + $3540 | 0;
+ $3542 = SAFE_HEAP_LOAD($3541 >> 0 | 0, 1, 0) | 0 | 0;
+ $3543 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $3544 = $3543 ^ $3542;
+ $3545 = $3544 & 255;
+ $3546 = 44718 + $3545 | 0;
+ $3547 = SAFE_HEAP_LOAD($3546 >> 0 | 0, 1, 0) | 0 | 0;
+ $3548 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $3549 = $3548 ^ $3547;
+ $3550 = $3549 & 255;
+ $3551 = 44718 + $3550 | 0;
+ $3552 = SAFE_HEAP_LOAD($3551 >> 0 | 0, 1, 0) | 0 | 0;
+ $3553 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $3554 = $3553 ^ $3552;
+ $3555 = $3554 & 255;
+ $3556 = 11084 + ($3555 << 2) | 0;
+ $3557 = SAFE_HEAP_LOAD($3556 | 0, 4, 0) | 0 | 0;
+ $3558 = $3537 ^ $3557;
+ $3559 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $3560 = $3559 & 255;
+ $3561 = $3560 ^ 63;
+ $3562 = 44718 + $3561 | 0;
+ $3563 = SAFE_HEAP_LOAD($3562 >> 0 | 0, 1, 0) | 0 | 0;
+ $3564 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $3565 = $3564 ^ $3563;
+ $3566 = $3565 & 255;
+ $3567 = 44974 + $3566 | 0;
+ $3568 = SAFE_HEAP_LOAD($3567 >> 0 | 0, 1, 0) | 0 | 0;
+ $3569 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $3570 = $3569 ^ $3568;
+ $3571 = $3570 & 255;
+ $3572 = 44974 + $3571 | 0;
+ $3573 = SAFE_HEAP_LOAD($3572 >> 0 | 0, 1, 0) | 0 | 0;
+ $3574 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $3575 = $3574 ^ $3573;
+ $3576 = $3575 & 255;
+ $3577 = 8012 + ($3576 << 2) | 0;
+ $3578 = SAFE_HEAP_LOAD($3577 | 0, 4, 0) | 0 | 0;
+ $3579 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $3580 = $3579 & 255;
+ $3581 = $3580 ^ 72;
+ $3582 = 44718 + $3581 | 0;
+ $3583 = SAFE_HEAP_LOAD($3582 >> 0 | 0, 1, 0) | 0 | 0;
+ $3584 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $3585 = $3584 ^ $3583;
+ $3586 = $3585 & 255;
+ $3587 = 44718 + $3586 | 0;
+ $3588 = SAFE_HEAP_LOAD($3587 >> 0 | 0, 1, 0) | 0 | 0;
+ $3589 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $3590 = $3589 ^ $3588;
+ $3591 = $3590 & 255;
+ $3592 = 44974 + $3591 | 0;
+ $3593 = SAFE_HEAP_LOAD($3592 >> 0 | 0, 1, 0) | 0 | 0;
+ $3594 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $3595 = $3594 ^ $3593;
+ $3596 = $3595 & 255;
+ $3597 = 9036 + ($3596 << 2) | 0;
+ $3598 = SAFE_HEAP_LOAD($3597 | 0, 4, 0) | 0 | 0;
+ $3599 = $3598 ^ $3578;
+ $3600 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $3601 = $3600 & 255;
+ $3602 = $3601 ^ 72;
+ $3603 = 44974 + $3602 | 0;
+ $3604 = SAFE_HEAP_LOAD($3603 >> 0 | 0, 1, 0) | 0 | 0;
+ $3605 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $3606 = $3605 ^ $3604;
+ $3607 = $3606 & 255;
+ $3608 = 44974 + $3607 | 0;
+ $3609 = SAFE_HEAP_LOAD($3608 >> 0 | 0, 1, 0) | 0 | 0;
+ $3610 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $3611 = $3610 ^ $3609;
+ $3612 = $3611 & 255;
+ $3613 = 44718 + $3612 | 0;
+ $3614 = SAFE_HEAP_LOAD($3613 >> 0 | 0, 1, 0) | 0 | 0;
+ $3615 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $3616 = $3615 ^ $3614;
+ $3617 = $3616 & 255;
+ $3618 = 10060 + ($3617 << 2) | 0;
+ $3619 = SAFE_HEAP_LOAD($3618 | 0, 4, 0) | 0 | 0;
+ $3620 = $3599 ^ $3619;
+ $3621 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $3622 = $3621 & 255;
+ $3623 = $3622 ^ 63;
+ $3624 = 44974 + $3623 | 0;
+ $3625 = SAFE_HEAP_LOAD($3624 >> 0 | 0, 1, 0) | 0 | 0;
+ $3626 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $3627 = $3626 ^ $3625;
+ $3628 = $3627 & 255;
+ $3629 = 44718 + $3628 | 0;
+ $3630 = SAFE_HEAP_LOAD($3629 >> 0 | 0, 1, 0) | 0 | 0;
+ $3631 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $3632 = $3631 ^ $3630;
+ $3633 = $3632 & 255;
+ $3634 = 44718 + $3633 | 0;
+ $3635 = SAFE_HEAP_LOAD($3634 >> 0 | 0, 1, 0) | 0 | 0;
+ $3636 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $3637 = $3636 ^ $3635;
+ $3638 = $3637 & 255;
+ $3639 = 11084 + ($3638 << 2) | 0;
+ $3640 = SAFE_HEAP_LOAD($3639 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($3647 | 0, $3645 | 0, 4);
+ $3648 = $3646 << 9;
+ $3649 = $3646 >>> 23;
+ $3650 = $3648 | $3649;
+ $3651 = $0 + 4220 | 0;
+ SAFE_HEAP_STORE($3651 | 0, $3650 | 0, 4);
+ $3652 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $3653 = $3652 & 255;
+ $3654 = $3653 ^ 94;
+ $3655 = 44718 + $3654 | 0;
+ $3656 = SAFE_HEAP_LOAD($3655 >> 0 | 0, 1, 0) | 0 | 0;
+ $3657 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $3658 = $3657 ^ $3656;
+ $3659 = $3658 & 255;
+ $3660 = 44974 + $3659 | 0;
+ $3661 = SAFE_HEAP_LOAD($3660 >> 0 | 0, 1, 0) | 0 | 0;
+ $3662 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $3663 = $3662 ^ $3661;
+ $3664 = $3663 & 255;
+ $3665 = 44974 + $3664 | 0;
+ $3666 = SAFE_HEAP_LOAD($3665 >> 0 | 0, 1, 0) | 0 | 0;
+ $3667 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $3668 = $3667 ^ $3666;
+ $3669 = $3668 & 255;
+ $3670 = 8012 + ($3669 << 2) | 0;
+ $3671 = SAFE_HEAP_LOAD($3670 | 0, 4, 0) | 0 | 0;
+ $3672 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $3673 = $3672 & 255;
+ $3674 = $3673 ^ 242;
+ $3675 = 44718 + $3674 | 0;
+ $3676 = SAFE_HEAP_LOAD($3675 >> 0 | 0, 1, 0) | 0 | 0;
+ $3677 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $3678 = $3677 ^ $3676;
+ $3679 = $3678 & 255;
+ $3680 = 44718 + $3679 | 0;
+ $3681 = SAFE_HEAP_LOAD($3680 >> 0 | 0, 1, 0) | 0 | 0;
+ $3682 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $3683 = $3682 ^ $3681;
+ $3684 = $3683 & 255;
+ $3685 = 44974 + $3684 | 0;
+ $3686 = SAFE_HEAP_LOAD($3685 >> 0 | 0, 1, 0) | 0 | 0;
+ $3687 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $3688 = $3687 ^ $3686;
+ $3689 = $3688 & 255;
+ $3690 = 9036 + ($3689 << 2) | 0;
+ $3691 = SAFE_HEAP_LOAD($3690 | 0, 4, 0) | 0 | 0;
+ $3692 = $3691 ^ $3671;
+ $3693 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $3694 = $3693 & 255;
+ $3695 = $3694 ^ 242;
+ $3696 = 44974 + $3695 | 0;
+ $3697 = SAFE_HEAP_LOAD($3696 >> 0 | 0, 1, 0) | 0 | 0;
+ $3698 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $3699 = $3698 ^ $3697;
+ $3700 = $3699 & 255;
+ $3701 = 44974 + $3700 | 0;
+ $3702 = SAFE_HEAP_LOAD($3701 >> 0 | 0, 1, 0) | 0 | 0;
+ $3703 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $3704 = $3703 ^ $3702;
+ $3705 = $3704 & 255;
+ $3706 = 44718 + $3705 | 0;
+ $3707 = SAFE_HEAP_LOAD($3706 >> 0 | 0, 1, 0) | 0 | 0;
+ $3708 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $3709 = $3708 ^ $3707;
+ $3710 = $3709 & 255;
+ $3711 = 10060 + ($3710 << 2) | 0;
+ $3712 = SAFE_HEAP_LOAD($3711 | 0, 4, 0) | 0 | 0;
+ $3713 = $3692 ^ $3712;
+ $3714 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $3715 = $3714 & 255;
+ $3716 = $3715 ^ 94;
+ $3717 = 44974 + $3716 | 0;
+ $3718 = SAFE_HEAP_LOAD($3717 >> 0 | 0, 1, 0) | 0 | 0;
+ $3719 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $3720 = $3719 ^ $3718;
+ $3721 = $3720 & 255;
+ $3722 = 44718 + $3721 | 0;
+ $3723 = SAFE_HEAP_LOAD($3722 >> 0 | 0, 1, 0) | 0 | 0;
+ $3724 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $3725 = $3724 ^ $3723;
+ $3726 = $3725 & 255;
+ $3727 = 44718 + $3726 | 0;
+ $3728 = SAFE_HEAP_LOAD($3727 >> 0 | 0, 1, 0) | 0 | 0;
+ $3729 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $3730 = $3729 ^ $3728;
+ $3731 = $3730 & 255;
+ $3732 = 11084 + ($3731 << 2) | 0;
+ $3733 = SAFE_HEAP_LOAD($3732 | 0, 4, 0) | 0 | 0;
+ $3734 = $3713 ^ $3733;
+ $3735 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $3736 = $3735 & 255;
+ $3737 = $3736 ^ 186;
+ $3738 = 44718 + $3737 | 0;
+ $3739 = SAFE_HEAP_LOAD($3738 >> 0 | 0, 1, 0) | 0 | 0;
+ $3740 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $3741 = $3740 ^ $3739;
+ $3742 = $3741 & 255;
+ $3743 = 44974 + $3742 | 0;
+ $3744 = SAFE_HEAP_LOAD($3743 >> 0 | 0, 1, 0) | 0 | 0;
+ $3745 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $3746 = $3745 ^ $3744;
+ $3747 = $3746 & 255;
+ $3748 = 44974 + $3747 | 0;
+ $3749 = SAFE_HEAP_LOAD($3748 >> 0 | 0, 1, 0) | 0 | 0;
+ $3750 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $3751 = $3750 ^ $3749;
+ $3752 = $3751 & 255;
+ $3753 = 8012 + ($3752 << 2) | 0;
+ $3754 = SAFE_HEAP_LOAD($3753 | 0, 4, 0) | 0 | 0;
+ $3755 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $3756 = $3755 & 255;
+ $3757 = $3756 ^ 208;
+ $3758 = 44718 + $3757 | 0;
+ $3759 = SAFE_HEAP_LOAD($3758 >> 0 | 0, 1, 0) | 0 | 0;
+ $3760 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $3761 = $3760 ^ $3759;
+ $3762 = $3761 & 255;
+ $3763 = 44718 + $3762 | 0;
+ $3764 = SAFE_HEAP_LOAD($3763 >> 0 | 0, 1, 0) | 0 | 0;
+ $3765 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $3766 = $3765 ^ $3764;
+ $3767 = $3766 & 255;
+ $3768 = 44974 + $3767 | 0;
+ $3769 = SAFE_HEAP_LOAD($3768 >> 0 | 0, 1, 0) | 0 | 0;
+ $3770 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $3771 = $3770 ^ $3769;
+ $3772 = $3771 & 255;
+ $3773 = 9036 + ($3772 << 2) | 0;
+ $3774 = SAFE_HEAP_LOAD($3773 | 0, 4, 0) | 0 | 0;
+ $3775 = $3774 ^ $3754;
+ $3776 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $3777 = $3776 & 255;
+ $3778 = $3777 ^ 208;
+ $3779 = 44974 + $3778 | 0;
+ $3780 = SAFE_HEAP_LOAD($3779 >> 0 | 0, 1, 0) | 0 | 0;
+ $3781 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $3782 = $3781 ^ $3780;
+ $3783 = $3782 & 255;
+ $3784 = 44974 + $3783 | 0;
+ $3785 = SAFE_HEAP_LOAD($3784 >> 0 | 0, 1, 0) | 0 | 0;
+ $3786 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $3787 = $3786 ^ $3785;
+ $3788 = $3787 & 255;
+ $3789 = 44718 + $3788 | 0;
+ $3790 = SAFE_HEAP_LOAD($3789 >> 0 | 0, 1, 0) | 0 | 0;
+ $3791 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $3792 = $3791 ^ $3790;
+ $3793 = $3792 & 255;
+ $3794 = 10060 + ($3793 << 2) | 0;
+ $3795 = SAFE_HEAP_LOAD($3794 | 0, 4, 0) | 0 | 0;
+ $3796 = $3775 ^ $3795;
+ $3797 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $3798 = $3797 & 255;
+ $3799 = $3798 ^ 186;
+ $3800 = 44974 + $3799 | 0;
+ $3801 = SAFE_HEAP_LOAD($3800 >> 0 | 0, 1, 0) | 0 | 0;
+ $3802 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $3803 = $3802 ^ $3801;
+ $3804 = $3803 & 255;
+ $3805 = 44718 + $3804 | 0;
+ $3806 = SAFE_HEAP_LOAD($3805 >> 0 | 0, 1, 0) | 0 | 0;
+ $3807 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $3808 = $3807 ^ $3806;
+ $3809 = $3808 & 255;
+ $3810 = 44718 + $3809 | 0;
+ $3811 = SAFE_HEAP_LOAD($3810 >> 0 | 0, 1, 0) | 0 | 0;
+ $3812 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $3813 = $3812 ^ $3811;
+ $3814 = $3813 & 255;
+ $3815 = 11084 + ($3814 << 2) | 0;
+ $3816 = SAFE_HEAP_LOAD($3815 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($3823 | 0, $3821 | 0, 4);
+ $3824 = $3822 << 9;
+ $3825 = $3822 >>> 23;
+ $3826 = $3824 | $3825;
+ $3827 = $0 + 4228 | 0;
+ SAFE_HEAP_STORE($3827 | 0, $3826 | 0, 4);
+ $3828 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $3829 = $3828 & 255;
+ $3830 = $3829 ^ 174;
+ $3831 = 44718 + $3830 | 0;
+ $3832 = SAFE_HEAP_LOAD($3831 >> 0 | 0, 1, 0) | 0 | 0;
+ $3833 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $3834 = $3833 ^ $3832;
+ $3835 = $3834 & 255;
+ $3836 = 44974 + $3835 | 0;
+ $3837 = SAFE_HEAP_LOAD($3836 >> 0 | 0, 1, 0) | 0 | 0;
+ $3838 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $3839 = $3838 ^ $3837;
+ $3840 = $3839 & 255;
+ $3841 = 44974 + $3840 | 0;
+ $3842 = SAFE_HEAP_LOAD($3841 >> 0 | 0, 1, 0) | 0 | 0;
+ $3843 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $3844 = $3843 ^ $3842;
+ $3845 = $3844 & 255;
+ $3846 = 8012 + ($3845 << 2) | 0;
+ $3847 = SAFE_HEAP_LOAD($3846 | 0, 4, 0) | 0 | 0;
+ $3848 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $3849 = $3848 & 255;
+ $3850 = $3849 ^ 139;
+ $3851 = 44718 + $3850 | 0;
+ $3852 = SAFE_HEAP_LOAD($3851 >> 0 | 0, 1, 0) | 0 | 0;
+ $3853 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $3854 = $3853 ^ $3852;
+ $3855 = $3854 & 255;
+ $3856 = 44718 + $3855 | 0;
+ $3857 = SAFE_HEAP_LOAD($3856 >> 0 | 0, 1, 0) | 0 | 0;
+ $3858 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $3859 = $3858 ^ $3857;
+ $3860 = $3859 & 255;
+ $3861 = 44974 + $3860 | 0;
+ $3862 = SAFE_HEAP_LOAD($3861 >> 0 | 0, 1, 0) | 0 | 0;
+ $3863 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $3864 = $3863 ^ $3862;
+ $3865 = $3864 & 255;
+ $3866 = 9036 + ($3865 << 2) | 0;
+ $3867 = SAFE_HEAP_LOAD($3866 | 0, 4, 0) | 0 | 0;
+ $3868 = $3867 ^ $3847;
+ $3869 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $3870 = $3869 & 255;
+ $3871 = $3870 ^ 139;
+ $3872 = 44974 + $3871 | 0;
+ $3873 = SAFE_HEAP_LOAD($3872 >> 0 | 0, 1, 0) | 0 | 0;
+ $3874 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $3875 = $3874 ^ $3873;
+ $3876 = $3875 & 255;
+ $3877 = 44974 + $3876 | 0;
+ $3878 = SAFE_HEAP_LOAD($3877 >> 0 | 0, 1, 0) | 0 | 0;
+ $3879 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $3880 = $3879 ^ $3878;
+ $3881 = $3880 & 255;
+ $3882 = 44718 + $3881 | 0;
+ $3883 = SAFE_HEAP_LOAD($3882 >> 0 | 0, 1, 0) | 0 | 0;
+ $3884 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $3885 = $3884 ^ $3883;
+ $3886 = $3885 & 255;
+ $3887 = 10060 + ($3886 << 2) | 0;
+ $3888 = SAFE_HEAP_LOAD($3887 | 0, 4, 0) | 0 | 0;
+ $3889 = $3868 ^ $3888;
+ $3890 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $3891 = $3890 & 255;
+ $3892 = $3891 ^ 174;
+ $3893 = 44974 + $3892 | 0;
+ $3894 = SAFE_HEAP_LOAD($3893 >> 0 | 0, 1, 0) | 0 | 0;
+ $3895 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $3896 = $3895 ^ $3894;
+ $3897 = $3896 & 255;
+ $3898 = 44718 + $3897 | 0;
+ $3899 = SAFE_HEAP_LOAD($3898 >> 0 | 0, 1, 0) | 0 | 0;
+ $3900 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $3901 = $3900 ^ $3899;
+ $3902 = $3901 & 255;
+ $3903 = 44718 + $3902 | 0;
+ $3904 = SAFE_HEAP_LOAD($3903 >> 0 | 0, 1, 0) | 0 | 0;
+ $3905 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $3906 = $3905 ^ $3904;
+ $3907 = $3906 & 255;
+ $3908 = 11084 + ($3907 << 2) | 0;
+ $3909 = SAFE_HEAP_LOAD($3908 | 0, 4, 0) | 0 | 0;
+ $3910 = $3889 ^ $3909;
+ $3911 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $3912 = $3911 & 255;
+ $3913 = $3912 ^ 91;
+ $3914 = 44718 + $3913 | 0;
+ $3915 = SAFE_HEAP_LOAD($3914 >> 0 | 0, 1, 0) | 0 | 0;
+ $3916 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $3917 = $3916 ^ $3915;
+ $3918 = $3917 & 255;
+ $3919 = 44974 + $3918 | 0;
+ $3920 = SAFE_HEAP_LOAD($3919 >> 0 | 0, 1, 0) | 0 | 0;
+ $3921 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $3922 = $3921 ^ $3920;
+ $3923 = $3922 & 255;
+ $3924 = 44974 + $3923 | 0;
+ $3925 = SAFE_HEAP_LOAD($3924 >> 0 | 0, 1, 0) | 0 | 0;
+ $3926 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $3927 = $3926 ^ $3925;
+ $3928 = $3927 & 255;
+ $3929 = 8012 + ($3928 << 2) | 0;
+ $3930 = SAFE_HEAP_LOAD($3929 | 0, 4, 0) | 0 | 0;
+ $3931 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $3932 = $3931 & 255;
+ $3933 = $3932 ^ 48;
+ $3934 = 44718 + $3933 | 0;
+ $3935 = SAFE_HEAP_LOAD($3934 >> 0 | 0, 1, 0) | 0 | 0;
+ $3936 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $3937 = $3936 ^ $3935;
+ $3938 = $3937 & 255;
+ $3939 = 44718 + $3938 | 0;
+ $3940 = SAFE_HEAP_LOAD($3939 >> 0 | 0, 1, 0) | 0 | 0;
+ $3941 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $3942 = $3941 ^ $3940;
+ $3943 = $3942 & 255;
+ $3944 = 44974 + $3943 | 0;
+ $3945 = SAFE_HEAP_LOAD($3944 >> 0 | 0, 1, 0) | 0 | 0;
+ $3946 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $3947 = $3946 ^ $3945;
+ $3948 = $3947 & 255;
+ $3949 = 9036 + ($3948 << 2) | 0;
+ $3950 = SAFE_HEAP_LOAD($3949 | 0, 4, 0) | 0 | 0;
+ $3951 = $3950 ^ $3930;
+ $3952 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $3953 = $3952 & 255;
+ $3954 = $3953 ^ 48;
+ $3955 = 44974 + $3954 | 0;
+ $3956 = SAFE_HEAP_LOAD($3955 >> 0 | 0, 1, 0) | 0 | 0;
+ $3957 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $3958 = $3957 ^ $3956;
+ $3959 = $3958 & 255;
+ $3960 = 44974 + $3959 | 0;
+ $3961 = SAFE_HEAP_LOAD($3960 >> 0 | 0, 1, 0) | 0 | 0;
+ $3962 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $3963 = $3962 ^ $3961;
+ $3964 = $3963 & 255;
+ $3965 = 44718 + $3964 | 0;
+ $3966 = SAFE_HEAP_LOAD($3965 >> 0 | 0, 1, 0) | 0 | 0;
+ $3967 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $3968 = $3967 ^ $3966;
+ $3969 = $3968 & 255;
+ $3970 = 10060 + ($3969 << 2) | 0;
+ $3971 = SAFE_HEAP_LOAD($3970 | 0, 4, 0) | 0 | 0;
+ $3972 = $3951 ^ $3971;
+ $3973 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $3974 = $3973 & 255;
+ $3975 = $3974 ^ 91;
+ $3976 = 44974 + $3975 | 0;
+ $3977 = SAFE_HEAP_LOAD($3976 >> 0 | 0, 1, 0) | 0 | 0;
+ $3978 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $3979 = $3978 ^ $3977;
+ $3980 = $3979 & 255;
+ $3981 = 44718 + $3980 | 0;
+ $3982 = SAFE_HEAP_LOAD($3981 >> 0 | 0, 1, 0) | 0 | 0;
+ $3983 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $3984 = $3983 ^ $3982;
+ $3985 = $3984 & 255;
+ $3986 = 44718 + $3985 | 0;
+ $3987 = SAFE_HEAP_LOAD($3986 >> 0 | 0, 1, 0) | 0 | 0;
+ $3988 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $3989 = $3988 ^ $3987;
+ $3990 = $3989 & 255;
+ $3991 = 11084 + ($3990 << 2) | 0;
+ $3992 = SAFE_HEAP_LOAD($3991 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($3999 | 0, $3997 | 0, 4);
+ $4000 = $3998 << 9;
+ $4001 = $3998 >>> 23;
+ $4002 = $4000 | $4001;
+ $4003 = $0 + 4236 | 0;
+ SAFE_HEAP_STORE($4003 | 0, $4002 | 0, 4);
+ $4004 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $4005 = $4004 & 255;
+ $4006 = $4005 ^ 138;
+ $4007 = 44718 + $4006 | 0;
+ $4008 = SAFE_HEAP_LOAD($4007 >> 0 | 0, 1, 0) | 0 | 0;
+ $4009 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $4010 = $4009 ^ $4008;
+ $4011 = $4010 & 255;
+ $4012 = 44974 + $4011 | 0;
+ $4013 = SAFE_HEAP_LOAD($4012 >> 0 | 0, 1, 0) | 0 | 0;
+ $4014 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $4015 = $4014 ^ $4013;
+ $4016 = $4015 & 255;
+ $4017 = 44974 + $4016 | 0;
+ $4018 = SAFE_HEAP_LOAD($4017 >> 0 | 0, 1, 0) | 0 | 0;
+ $4019 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $4020 = $4019 ^ $4018;
+ $4021 = $4020 & 255;
+ $4022 = 8012 + ($4021 << 2) | 0;
+ $4023 = SAFE_HEAP_LOAD($4022 | 0, 4, 0) | 0 | 0;
+ $4024 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $4025 = $4024 & 255;
+ $4026 = $4025 ^ 132;
+ $4027 = 44718 + $4026 | 0;
+ $4028 = SAFE_HEAP_LOAD($4027 >> 0 | 0, 1, 0) | 0 | 0;
+ $4029 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $4030 = $4029 ^ $4028;
+ $4031 = $4030 & 255;
+ $4032 = 44718 + $4031 | 0;
+ $4033 = SAFE_HEAP_LOAD($4032 >> 0 | 0, 1, 0) | 0 | 0;
+ $4034 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $4035 = $4034 ^ $4033;
+ $4036 = $4035 & 255;
+ $4037 = 44974 + $4036 | 0;
+ $4038 = SAFE_HEAP_LOAD($4037 >> 0 | 0, 1, 0) | 0 | 0;
+ $4039 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $4040 = $4039 ^ $4038;
+ $4041 = $4040 & 255;
+ $4042 = 9036 + ($4041 << 2) | 0;
+ $4043 = SAFE_HEAP_LOAD($4042 | 0, 4, 0) | 0 | 0;
+ $4044 = $4043 ^ $4023;
+ $4045 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $4046 = $4045 & 255;
+ $4047 = $4046 ^ 132;
+ $4048 = 44974 + $4047 | 0;
+ $4049 = SAFE_HEAP_LOAD($4048 >> 0 | 0, 1, 0) | 0 | 0;
+ $4050 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $4051 = $4050 ^ $4049;
+ $4052 = $4051 & 255;
+ $4053 = 44974 + $4052 | 0;
+ $4054 = SAFE_HEAP_LOAD($4053 >> 0 | 0, 1, 0) | 0 | 0;
+ $4055 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $4056 = $4055 ^ $4054;
+ $4057 = $4056 & 255;
+ $4058 = 44718 + $4057 | 0;
+ $4059 = SAFE_HEAP_LOAD($4058 >> 0 | 0, 1, 0) | 0 | 0;
+ $4060 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $4061 = $4060 ^ $4059;
+ $4062 = $4061 & 255;
+ $4063 = 10060 + ($4062 << 2) | 0;
+ $4064 = SAFE_HEAP_LOAD($4063 | 0, 4, 0) | 0 | 0;
+ $4065 = $4044 ^ $4064;
+ $4066 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $4067 = $4066 & 255;
+ $4068 = $4067 ^ 138;
+ $4069 = 44974 + $4068 | 0;
+ $4070 = SAFE_HEAP_LOAD($4069 >> 0 | 0, 1, 0) | 0 | 0;
+ $4071 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $4072 = $4071 ^ $4070;
+ $4073 = $4072 & 255;
+ $4074 = 44718 + $4073 | 0;
+ $4075 = SAFE_HEAP_LOAD($4074 >> 0 | 0, 1, 0) | 0 | 0;
+ $4076 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $4077 = $4076 ^ $4075;
+ $4078 = $4077 & 255;
+ $4079 = 44718 + $4078 | 0;
+ $4080 = SAFE_HEAP_LOAD($4079 >> 0 | 0, 1, 0) | 0 | 0;
+ $4081 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $4082 = $4081 ^ $4080;
+ $4083 = $4082 & 255;
+ $4084 = 11084 + ($4083 << 2) | 0;
+ $4085 = SAFE_HEAP_LOAD($4084 | 0, 4, 0) | 0 | 0;
+ $4086 = $4065 ^ $4085;
+ $4087 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $4088 = $4087 & 255;
+ $4089 = 44718 + $4088 | 0;
+ $4090 = SAFE_HEAP_LOAD($4089 >> 0 | 0, 1, 0) | 0 | 0;
+ $4091 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $4092 = $4091 ^ $4090;
+ $4093 = $4092 & 255;
+ $4094 = 44974 + $4093 | 0;
+ $4095 = SAFE_HEAP_LOAD($4094 >> 0 | 0, 1, 0) | 0 | 0;
+ $4096 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $4097 = $4096 ^ $4095;
+ $4098 = $4097 & 255;
+ $4099 = 44974 + $4098 | 0;
+ $4100 = SAFE_HEAP_LOAD($4099 >> 0 | 0, 1, 0) | 0 | 0;
+ $4101 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $4102 = $4101 ^ $4100;
+ $4103 = $4102 & 255;
+ $4104 = 8012 + ($4103 << 2) | 0;
+ $4105 = SAFE_HEAP_LOAD($4104 | 0, 4, 0) | 0 | 0;
+ $4106 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $4107 = $4106 & 255;
+ $4108 = $4107 ^ 84;
+ $4109 = 44718 + $4108 | 0;
+ $4110 = SAFE_HEAP_LOAD($4109 >> 0 | 0, 1, 0) | 0 | 0;
+ $4111 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $4112 = $4111 ^ $4110;
+ $4113 = $4112 & 255;
+ $4114 = 44718 + $4113 | 0;
+ $4115 = SAFE_HEAP_LOAD($4114 >> 0 | 0, 1, 0) | 0 | 0;
+ $4116 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $4117 = $4116 ^ $4115;
+ $4118 = $4117 & 255;
+ $4119 = 44974 + $4118 | 0;
+ $4120 = SAFE_HEAP_LOAD($4119 >> 0 | 0, 1, 0) | 0 | 0;
+ $4121 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $4122 = $4121 ^ $4120;
+ $4123 = $4122 & 255;
+ $4124 = 9036 + ($4123 << 2) | 0;
+ $4125 = SAFE_HEAP_LOAD($4124 | 0, 4, 0) | 0 | 0;
+ $4126 = $4125 ^ $4105;
+ $4127 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $4128 = $4127 & 255;
+ $4129 = $4128 ^ 84;
+ $4130 = 44974 + $4129 | 0;
+ $4131 = SAFE_HEAP_LOAD($4130 >> 0 | 0, 1, 0) | 0 | 0;
+ $4132 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $4133 = $4132 ^ $4131;
+ $4134 = $4133 & 255;
+ $4135 = 44974 + $4134 | 0;
+ $4136 = SAFE_HEAP_LOAD($4135 >> 0 | 0, 1, 0) | 0 | 0;
+ $4137 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $4138 = $4137 ^ $4136;
+ $4139 = $4138 & 255;
+ $4140 = 44718 + $4139 | 0;
+ $4141 = SAFE_HEAP_LOAD($4140 >> 0 | 0, 1, 0) | 0 | 0;
+ $4142 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $4143 = $4142 ^ $4141;
+ $4144 = $4143 & 255;
+ $4145 = 10060 + ($4144 << 2) | 0;
+ $4146 = SAFE_HEAP_LOAD($4145 | 0, 4, 0) | 0 | 0;
+ $4147 = $4126 ^ $4146;
+ $4148 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $4149 = $4148 & 255;
+ $4150 = 44974 + $4149 | 0;
+ $4151 = SAFE_HEAP_LOAD($4150 >> 0 | 0, 1, 0) | 0 | 0;
+ $4152 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $4153 = $4152 ^ $4151;
+ $4154 = $4153 & 255;
+ $4155 = 44718 + $4154 | 0;
+ $4156 = SAFE_HEAP_LOAD($4155 >> 0 | 0, 1, 0) | 0 | 0;
+ $4157 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $4158 = $4157 ^ $4156;
+ $4159 = $4158 & 255;
+ $4160 = 44718 + $4159 | 0;
+ $4161 = SAFE_HEAP_LOAD($4160 >> 0 | 0, 1, 0) | 0 | 0;
+ $4162 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $4163 = $4162 ^ $4161;
+ $4164 = $4163 & 255;
+ $4165 = 11084 + ($4164 << 2) | 0;
+ $4166 = SAFE_HEAP_LOAD($4165 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($4173 | 0, $4171 | 0, 4);
+ $4174 = $4172 << 9;
+ $4175 = $4172 >>> 23;
+ $4176 = $4174 | $4175;
+ $4177 = $0 + 4244 | 0;
+ SAFE_HEAP_STORE($4177 | 0, $4176 | 0, 4);
+ $4178 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+ $4179 = $4178 & 255;
+ $4180 = $4179 ^ 188;
+ $4181 = 44718 + $4180 | 0;
+ $4182 = SAFE_HEAP_LOAD($4181 >> 0 | 0, 1, 0) | 0 | 0;
+ $4183 = SAFE_HEAP_LOAD($393 >> 0 | 0, 1, 0) | 0 | 0;
+ $4184 = $4183 ^ $4182;
+ $4185 = $4184 & 255;
+ $4186 = 44974 + $4185 | 0;
+ $4187 = SAFE_HEAP_LOAD($4186 >> 0 | 0, 1, 0) | 0 | 0;
+ $4188 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $4189 = $4188 ^ $4187;
+ $4190 = $4189 & 255;
+ $4191 = 44974 + $4190 | 0;
+ $4192 = SAFE_HEAP_LOAD($4191 >> 0 | 0, 1, 0) | 0 | 0;
+ $4193 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $4194 = $4193 ^ $4192;
+ $4195 = $4194 & 255;
+ $4196 = 8012 + ($4195 << 2) | 0;
+ $4197 = SAFE_HEAP_LOAD($4196 | 0, 4, 0) | 0 | 0;
+ $4198 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+ $4199 = $4198 & 255;
+ $4200 = $4199 ^ 223;
+ $4201 = 44718 + $4200 | 0;
+ $4202 = SAFE_HEAP_LOAD($4201 >> 0 | 0, 1, 0) | 0 | 0;
+ $4203 = SAFE_HEAP_LOAD($409 >> 0 | 0, 1, 0) | 0 | 0;
+ $4204 = $4203 ^ $4202;
+ $4205 = $4204 & 255;
+ $4206 = 44718 + $4205 | 0;
+ $4207 = SAFE_HEAP_LOAD($4206 >> 0 | 0, 1, 0) | 0 | 0;
+ $4208 = SAFE_HEAP_LOAD($224 >> 0 | 0, 1, 0) | 0 | 0;
+ $4209 = $4208 ^ $4207;
+ $4210 = $4209 & 255;
+ $4211 = 44974 + $4210 | 0;
+ $4212 = SAFE_HEAP_LOAD($4211 >> 0 | 0, 1, 0) | 0 | 0;
+ $4213 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $4214 = $4213 ^ $4212;
+ $4215 = $4214 & 255;
+ $4216 = 9036 + ($4215 << 2) | 0;
+ $4217 = SAFE_HEAP_LOAD($4216 | 0, 4, 0) | 0 | 0;
+ $4218 = $4217 ^ $4197;
+ $4219 = SAFE_HEAP_LOAD($617 >> 0 | 0, 1, 0) | 0 | 0;
+ $4220 = $4219 & 255;
+ $4221 = $4220 ^ 223;
+ $4222 = 44974 + $4221 | 0;
+ $4223 = SAFE_HEAP_LOAD($4222 >> 0 | 0, 1, 0) | 0 | 0;
+ $4224 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $4225 = $4224 ^ $4223;
+ $4226 = $4225 & 255;
+ $4227 = 44974 + $4226 | 0;
+ $4228 = SAFE_HEAP_LOAD($4227 >> 0 | 0, 1, 0) | 0 | 0;
+ $4229 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+ $4230 = $4229 ^ $4228;
+ $4231 = $4230 & 255;
+ $4232 = 44718 + $4231 | 0;
+ $4233 = SAFE_HEAP_LOAD($4232 >> 0 | 0, 1, 0) | 0 | 0;
+ $4234 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $4235 = $4234 ^ $4233;
+ $4236 = $4235 & 255;
+ $4237 = 10060 + ($4236 << 2) | 0;
+ $4238 = SAFE_HEAP_LOAD($4237 | 0, 4, 0) | 0 | 0;
+ $4239 = $4218 ^ $4238;
+ $4240 = SAFE_HEAP_LOAD($641 >> 0 | 0, 1, 0) | 0 | 0;
+ $4241 = $4240 & 255;
+ $4242 = $4241 ^ 188;
+ $4243 = 44974 + $4242 | 0;
+ $4244 = SAFE_HEAP_LOAD($4243 >> 0 | 0, 1, 0) | 0 | 0;
+ $4245 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+ $4246 = $4245 ^ $4244;
+ $4247 = $4246 & 255;
+ $4248 = 44718 + $4247 | 0;
+ $4249 = SAFE_HEAP_LOAD($4248 >> 0 | 0, 1, 0) | 0 | 0;
+ $4250 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+ $4251 = $4250 ^ $4249;
+ $4252 = $4251 & 255;
+ $4253 = 44718 + $4252 | 0;
+ $4254 = SAFE_HEAP_LOAD($4253 >> 0 | 0, 1, 0) | 0 | 0;
+ $4255 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $4256 = $4255 ^ $4254;
+ $4257 = $4256 & 255;
+ $4258 = 11084 + ($4257 << 2) | 0;
+ $4259 = SAFE_HEAP_LOAD($4258 | 0, 4, 0) | 0 | 0;
+ $4260 = $4239 ^ $4259;
+ $4261 = SAFE_HEAP_LOAD($665 >> 0 | 0, 1, 0) | 0 | 0;
+ $4262 = $4261 & 255;
+ $4263 = $4262 ^ 157;
+ $4264 = 44718 + $4263 | 0;
+ $4265 = SAFE_HEAP_LOAD($4264 >> 0 | 0, 1, 0) | 0 | 0;
+ $4266 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $4267 = $4266 ^ $4265;
+ $4268 = $4267 & 255;
+ $4269 = 44974 + $4268 | 0;
+ $4270 = SAFE_HEAP_LOAD($4269 >> 0 | 0, 1, 0) | 0 | 0;
+ $4271 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+ $4272 = $4271 ^ $4270;
+ $4273 = $4272 & 255;
+ $4274 = 44974 + $4273 | 0;
+ $4275 = SAFE_HEAP_LOAD($4274 >> 0 | 0, 1, 0) | 0 | 0;
+ $4276 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $4277 = $4276 ^ $4275;
+ $4278 = $4277 & 255;
+ $4279 = 8012 + ($4278 << 2) | 0;
+ $4280 = SAFE_HEAP_LOAD($4279 | 0, 4, 0) | 0 | 0;
+ $4281 = SAFE_HEAP_LOAD($689 >> 0 | 0, 1, 0) | 0 | 0;
+ $4282 = $4281 & 255;
+ $4283 = $4282 ^ 35;
+ $4284 = 44718 + $4283 | 0;
+ $4285 = SAFE_HEAP_LOAD($4284 >> 0 | 0, 1, 0) | 0 | 0;
+ $4286 = SAFE_HEAP_LOAD($505 >> 0 | 0, 1, 0) | 0 | 0;
+ $4287 = $4286 ^ $4285;
+ $4288 = $4287 & 255;
+ $4289 = 44718 + $4288 | 0;
+ $4290 = SAFE_HEAP_LOAD($4289 >> 0 | 0, 1, 0) | 0 | 0;
+ $4291 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+ $4292 = $4291 ^ $4290;
+ $4293 = $4292 & 255;
+ $4294 = 44974 + $4293 | 0;
+ $4295 = SAFE_HEAP_LOAD($4294 >> 0 | 0, 1, 0) | 0 | 0;
+ $4296 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $4297 = $4296 ^ $4295;
+ $4298 = $4297 & 255;
+ $4299 = 9036 + ($4298 << 2) | 0;
+ $4300 = SAFE_HEAP_LOAD($4299 | 0, 4, 0) | 0 | 0;
+ $4301 = $4300 ^ $4280;
+ $4302 = SAFE_HEAP_LOAD($713 >> 0 | 0, 1, 0) | 0 | 0;
+ $4303 = $4302 & 255;
+ $4304 = $4303 ^ 35;
+ $4305 = 44974 + $4304 | 0;
+ $4306 = SAFE_HEAP_LOAD($4305 >> 0 | 0, 1, 0) | 0 | 0;
+ $4307 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+ $4308 = $4307 ^ $4306;
+ $4309 = $4308 & 255;
+ $4310 = 44974 + $4309 | 0;
+ $4311 = SAFE_HEAP_LOAD($4310 >> 0 | 0, 1, 0) | 0 | 0;
+ $4312 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+ $4313 = $4312 ^ $4311;
+ $4314 = $4313 & 255;
+ $4315 = 44718 + $4314 | 0;
+ $4316 = SAFE_HEAP_LOAD($4315 >> 0 | 0, 1, 0) | 0 | 0;
+ $4317 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $4318 = $4317 ^ $4316;
+ $4319 = $4318 & 255;
+ $4320 = 10060 + ($4319 << 2) | 0;
+ $4321 = SAFE_HEAP_LOAD($4320 | 0, 4, 0) | 0 | 0;
+ $4322 = $4301 ^ $4321;
+ $4323 = SAFE_HEAP_LOAD($737 >> 0 | 0, 1, 0) | 0 | 0;
+ $4324 = $4323 & 255;
+ $4325 = $4324 ^ 157;
+ $4326 = 44974 + $4325 | 0;
+ $4327 = SAFE_HEAP_LOAD($4326 >> 0 | 0, 1, 0) | 0 | 0;
+ $4328 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+ $4329 = $4328 ^ $4327;
+ $4330 = $4329 & 255;
+ $4331 = 44718 + $4330 | 0;
+ $4332 = SAFE_HEAP_LOAD($4331 >> 0 | 0, 1, 0) | 0 | 0;
+ $4333 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+ $4334 = $4333 ^ $4332;
+ $4335 = $4334 & 255;
+ $4336 = 44718 + $4335 | 0;
+ $4337 = SAFE_HEAP_LOAD($4336 >> 0 | 0, 1, 0) | 0 | 0;
+ $4338 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $4339 = $4338 ^ $4337;
+ $4340 = $4339 & 255;
+ $4341 = 11084 + ($4340 << 2) | 0;
+ $4342 = SAFE_HEAP_LOAD($4341 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($4349 | 0, $4347 | 0, 4);
+ $4350 = $4348 << 9;
+ $4351 = $4348 >>> 23;
+ $4352 = $4350 | $4351;
+ $4353 = $0 + 4252 | 0;
+ SAFE_HEAP_STORE($4353 | 0, $4352 | 0, 4);
+ $$01913 = 0;
+ STACKTOP = sp;
+ return $$01913 | 0;
+}
+
+function _transform_1361($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$051157$i = 0, $$08 = 0, $$151222$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, $3574 = 0, $3575 = 0, $3576 = 0, $3577 = 
0, $3578 = 0, $3579 = 0, $358 = 0, $3580 = 0, $3581 = 0, $3582 = 0, $3583 = 0, 
$3584 = 0, $3585 = 0, $3586 = 0, $3587 = 0, $3588 = 0, $3589 = 0;
+ var $359 = 0, $3590 = 0, $3591 = 0, $3592 = 0, $3593 = 0, $3594 = 0, $3595 = 
0, $3596 = 0, $3597 = 0, $3598 = 0, $3599 = 0, $36 = 0, $360 = 0, $3600 = 0, 
$3601 = 0, $3602 = 0, $3603 = 0, $3604 = 0, $3605 = 0, $3606 = 0;
+ var $3607 = 0, $3608 = 0, $3609 = 0, $361 = 0, $3610 = 0, $3611 = 0, $3612 = 
0, $3613 = 0, $3614 = 0, $3615 = 0, $3616 = 0, $3617 = 0, $3618 = 0, $3619 = 0, 
$362 = 0, $3620 = 0, $3621 = 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, $4 = 0, $40 = 0, $400 = 0;
+ var $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, $419 = 0;
+ var $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, $437 = 0;
+ var $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, $455 = 0;
+ var $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, $473 = 0;
+ var $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, $491 = 0;
+ var $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, $509 = 0;
+ var $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, $527 = 0;
+ var $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, $545 = 0;
+ var $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, $563 = 0;
+ var $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, $581 = 0;
+ var $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, $6 = 0;
+ var $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, $617 = 0;
+ var $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, $635 = 0;
+ var $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, $653 = 0;
+ var $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, $671 = 0;
+ var $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, $69 = 0;
+ var $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, $707 = 0;
+ var $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, $725 = 0;
+ var $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, $743 = 0;
+ var $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, $761 = 0;
+ var $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, $78 = 0;
+ var $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, $798 = 0;
+ var $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, $815 = 0;
+ var $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, $833 = 0;
+ var $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, $851 = 0;
+ var $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, $87 = 0;
+ var $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, $888 = 0;
+ var $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, $905 = 0;
+ var $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, $923 = 0;
+ var $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, $941 = 0;
+ var $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, $959 = 0, $96 = 0;
+ var $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, $977 = 0, $978 = 0;
+ var $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, $995 = 0, $996 = 0;
+ var $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 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+ $30 = $27 + 4 | 0;
+ $31 = $30;
+ $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ $33 = $5;
+ $34 = $33;
+ $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+ $36 = $33 + 4 | 0;
+ $37 = $36;
+ $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+ $39 = $6;
+ $40 = $39;
+ $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+ $42 = $39 + 4 | 0;
+ $43 = $42;
+ $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+ $45 = $7;
+ $46 = $45;
+ $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+ $48 = $45 + 4 | 0;
+ $49 = $48;
+ $50 = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+ $51 = $8;
+ $52 = $51;
+ $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+ $54 = $51 + 4 | 0;
+ $55 = $54;
+ $56 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+ $57 = $9;
+ $58 = $57;
+ $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+ $60 = $57 + 4 | 0;
+ $61 = $60;
+ $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+ $63 = $10;
+ $64 = $63;
+ $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+ $66 = $63 + 4 | 0;
+ $67 = $66;
+ $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+ $69 = $11;
+ $70 = $69;
+ $71 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+ $72 = $69 + 4 | 0;
+ $73 = $72;
+ $74 = SAFE_HEAP_LOAD($73 | 0, 4, 0) | 0 | 0;
+ $$0 = $1;
+ $$08 = $2;
+ $3606 = $71;
+ $3607 = $74;
+ $3608 = $65;
+ $3609 = $68;
+ $3610 = $59;
+ $3611 = $62;
+ $3612 = $53;
+ $3613 = $56;
+ $3614 = $47;
+ $3615 = $50;
+ $3616 = $41;
+ $3617 = $44;
+ $3618 = $35;
+ $3619 = $38;
+ $3620 = $29;
+ $3621 = $32;
+ while (1) {
+  $$051157$i = 0;
+  while (1) {
+   $171 = $$051157$i << 3;
+   $172 = $$0 + $171 | 0;
+   $173 = SAFE_HEAP_LOAD($172 >> 0 | 0, 1, 0) | 0 | 0;
+   $174 = $173 & 255;
+   $175 = _bitshift64Shl($174 | 0, 0, 56) | 0;
+   $176 = tempRet0;
+   $177 = $172 + 1 | 0;
+   $178 = SAFE_HEAP_LOAD($177 >> 0 | 0, 1, 0) | 0 | 0;
+   $179 = $178 & 255;
+   $180 = _bitshift64Shl($179 | 0, 0, 48) | 0;
+   $181 = tempRet0;
+   $182 = $180 | $175;
+   $183 = $181 | $176;
+   $184 = $172 + 2 | 0;
+   $185 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+   $186 = $185 & 255;
+   $187 = _bitshift64Shl($186 | 0, 0, 40) | 0;
+   $188 = tempRet0;
+   $189 = $182 | $187;
+   $190 = $183 | $188;
+   $191 = $172 + 3 | 0;
+   $192 = SAFE_HEAP_LOAD($191 >> 0 | 0, 1, 0) | 0 | 0;
+   $193 = $192 & 255;
+   $194 = $190 | $193;
+   $195 = $172 + 4 | 0;
+   $196 = SAFE_HEAP_LOAD($195 >> 0 | 0, 1, 0) | 0 | 0;
+   $197 = $196 & 255;
+   $198 = _bitshift64Shl($197 | 0, 0, 24) | 0;
+   $199 = tempRet0;
+   $200 = $189 | $198;
+   $201 = $194 | $199;
+   $202 = $172 + 5 | 0;
+   $203 = SAFE_HEAP_LOAD($202 >> 0 | 0, 1, 0) | 0 | 0;
+   $204 = $203 & 255;
+   $205 = _bitshift64Shl($204 | 0, 0, 16) | 0;
+   $206 = tempRet0;
+   $207 = $200 | $205;
+   $208 = $201 | $206;
+   $209 = $172 + 6 | 0;
+   $210 = SAFE_HEAP_LOAD($209 >> 0 | 0, 1, 0) | 0 | 0;
+   $211 = $210 & 255;
+   $212 = _bitshift64Shl($211 | 0, 0, 8) | 0;
+   $213 = tempRet0;
+   $214 = $207 | $212;
+   $215 = $208 | $213;
+   $216 = $172 + 7 | 0;
+   $217 = SAFE_HEAP_LOAD($216 >> 0 | 0, 1, 0) | 0 | 0;
+   $218 = $217 & 255;
+   $219 = $214 | $218;
+   $220 = $3 + ($$051157$i << 3) | 0;
+   $221 = $220;
+   $222 = $221;
+   SAFE_HEAP_STORE($222 | 0, $219 | 0, 4);
+   $223 = $221 + 4 | 0;
+   $224 = $223;
+   SAFE_HEAP_STORE($224 | 0, $215 | 0, 4);
+   $225 = $$051157$i + 1 | 0;
+   $exitcond$i = ($225 | 0) == 16;
+   if ($exitcond$i) {
+    break;
+   } else {
+    $$051157$i = $225;
+   }
+  }
+  $75 = $3;
+  $76 = $75;
+  $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+  $78 = $75 + 4 | 0;
+  $79 = $78;
+  $80 = SAFE_HEAP_LOAD($79 | 0, 4, 0) | 0 | 0;
+  $81 = $12;
+  $82 = $81;
+  $83 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+  $84 = $81 + 4 | 0;
+  $85 = $84;
+  $86 = SAFE_HEAP_LOAD($85 | 0, 4, 0) | 0 | 0;
+  $87 = $13;
+  $88 = $87;
+  $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+  $90 = $87 + 4 | 0;
+  $91 = $90;
+  $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+  $93 = $14;
+  $94 = $93;
+  $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+  $96 = $93 + 4 | 0;
+  $97 = $96;
+  $98 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+  $99 = $15;
+  $100 = $99;
+  $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+  $102 = $99 + 4 | 0;
+  $103 = $102;
+  $104 = SAFE_HEAP_LOAD($103 | 0, 4, 0) | 0 | 0;
+  $105 = $16;
+  $106 = $105;
+  $107 = SAFE_HEAP_LOAD($106 | 0, 4, 0) | 0 | 0;
+  $108 = $105 + 4 | 0;
+  $109 = $108;
+  $110 = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 0;
+  $111 = $17;
+  $112 = $111;
+  $113 = SAFE_HEAP_LOAD($112 | 0, 4, 0) | 0 | 0;
+  $114 = $111 + 4 | 0;
+  $115 = $114;
+  $116 = SAFE_HEAP_LOAD($115 | 0, 4, 0) | 0 | 0;
+  $117 = $18;
+  $118 = $117;
+  $119 = SAFE_HEAP_LOAD($118 | 0, 4, 0) | 0 | 0;
+  $120 = $117 + 4 | 0;
+  $121 = $120;
+  $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+  $123 = $19;
+  $124 = $123;
+  $125 = SAFE_HEAP_LOAD($124 | 0, 4, 0) | 0 | 0;
+  $126 = $123 + 4 | 0;
+  $127 = $126;
+  $128 = SAFE_HEAP_LOAD($127 | 0, 4, 0) | 0 | 0;
+  $129 = $20;
+  $130 = $129;
+  $131 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+  $132 = $129 + 4 | 0;
+  $133 = $132;
+  $134 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 0;
+  $135 = $21;
+  $136 = $135;
+  $137 = SAFE_HEAP_LOAD($136 | 0, 4, 0) | 0 | 0;
+  $138 = $135 + 4 | 0;
+  $139 = $138;
+  $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+  $141 = $22;
+  $142 = $141;
+  $143 = SAFE_HEAP_LOAD($142 | 0, 4, 0) | 0 | 0;
+  $144 = $141 + 4 | 0;
+  $145 = $144;
+  $146 = SAFE_HEAP_LOAD($145 | 0, 4, 0) | 0 | 0;
+  $147 = $23;
+  $148 = $147;
+  $149 = SAFE_HEAP_LOAD($148 | 0, 4, 0) | 0 | 0;
+  $150 = $147 + 4 | 0;
+  $151 = $150;
+  $152 = SAFE_HEAP_LOAD($151 | 0, 4, 0) | 0 | 0;
+  $153 = $24;
+  $154 = $153;
+  $155 = SAFE_HEAP_LOAD($154 | 0, 4, 0) | 0 | 0;
+  $156 = $153 + 4 | 0;
+  $157 = $156;
+  $158 = SAFE_HEAP_LOAD($157 | 0, 4, 0) | 0 | 0;
+  $159 = $25;
+  $160 = $159;
+  $161 = SAFE_HEAP_LOAD($160 | 0, 4, 0) | 0 | 0;
+  $162 = $159 + 4 | 0;
+  $163 = $162;
+  $164 = SAFE_HEAP_LOAD($163 | 0, 4, 0) | 0 | 0;
+  $165 = $26;
+  $166 = $165;
+  $167 = SAFE_HEAP_LOAD($166 | 0, 4, 0) | 0 | 0;
+  $168 = $165 + 4 | 0;
+  $169 = $168;
+  $170 = SAFE_HEAP_LOAD($169 | 0, 4, 0) | 0 | 0;
+  $$151222$i = 0;
+  $1077 = $161;
+  $1078 = $164;
+  $1203 = $167;
+  $1204 = $170;
+  $226 = $3612;
+  $227 = $3613;
+  $251 = $3610;
+  $253 = $3611;
+  $257 = $3608;
+  $259 = $3609;
+  $269 = $3606;
+  $270 = $3607;
+  $271 = $77;
+  $272 = $80;
+  $281 = $83;
+  $282 = $86;
+  $301 = $95;
+  $302 = $98;
+  $321 = $89;
+  $322 = $92;
+  $329 = $3620;
+  $330 = $3621;
+  $354 = $3618;
+  $355 = $3616;
+  $357 = $3619;
+  $358 = $3617;
+  $367 = $3614;
+  $368 = $3615;
+  $419 = $101;
+  $420 = $104;
+  $439 = $113;
+  $440 = $116;
+  $459 = $107;
+  $460 = $110;
+  $567 = $125;
+  $568 = $128;
+  $587 = $119;
+  $588 = $122;
+  $695 = $137;
+  $696 = $140;
+  $715 = $131;
+  $716 = $134;
+  $823 = $149;
+  $824 = $152;
+  $843 = $143;
+  $844 = $146;
+  $951 = $155;
+  $952 = $158;
+  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 = 72 + ($$151222$i << 3) | 0;
+   $263 = $262;
+   $264 = $263;
+   $265 = SAFE_HEAP_LOAD($264 | 0, 4, 0) | 0 | 0;
+   $266 = $263 + 4 | 0;
+   $267 = $266;
+   $268 = SAFE_HEAP_LOAD($267 | 0, 4, 0) | 0 | 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 = $355 ^ $354;
+   $356 = $358 ^ $357;
+   $359 = $353 & $329;
+   $360 = $356 & $330;
+   $361 = $355 & $354;
+   $362 = $358 & $357;
+   $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 = $$151222$i | 1;
+   $404 = 72 + ($403 << 3) | 0;
+   $405 = $404;
+   $406 = $405;
+   $407 = SAFE_HEAP_LOAD($406 | 0, 4, 0) | 0 | 0;
+   $408 = $405 + 4 | 0;
+   $409 = $408;
+   $410 = SAFE_HEAP_LOAD($409 | 0, 4, 0) | 0 | 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 = $354 ^ $329;
+   $490 = $357 ^ $330;
+   $491 = $371 & $489;
+   $492 = $372 & $490;
+   $493 = $354 & $329;
+   $494 = $357 & $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, $355 | 0, $358 | 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 = $$151222$i | 2;
+   $534 = 72 + ($533 << 3) | 0;
+   $535 = $534;
+   $536 = $535;
+   $537 = SAFE_HEAP_LOAD($536 | 0, 4, 0) | 0 | 0;
+   $538 = $535 + 4 | 0;
+   $539 = $538;
+   $540 = SAFE_HEAP_LOAD($539 | 0, 4, 0) | 0 | 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, $354 | 0, $357 | 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 = $$151222$i | 3;
+   $662 = 72 + ($661 << 3) | 0;
+   $663 = $662;
+   $664 = $663;
+   $665 = SAFE_HEAP_LOAD($664 | 0, 4, 0) | 0 | 0;
+   $666 = $663 + 4 | 0;
+   $667 = $666;
+   $668 = SAFE_HEAP_LOAD($667 | 0, 4, 0) | 0 | 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 = $$151222$i | 4;
+   $790 = 72 + ($789 << 3) | 0;
+   $791 = $790;
+   $792 = $791;
+   $793 = SAFE_HEAP_LOAD($792 | 0, 4, 0) | 0 | 0;
+   $794 = $791 + 4 | 0;
+   $795 = $794;
+   $796 = SAFE_HEAP_LOAD($795 | 0, 4, 0) | 0 | 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 = $$151222$i | 5;
+   $918 = 72 + ($917 << 3) | 0;
+   $919 = $918;
+   $920 = $919;
+   $921 = SAFE_HEAP_LOAD($920 | 0, 4, 0) | 0 | 0;
+   $922 = $919 + 4 | 0;
+   $923 = $922;
+   $924 = SAFE_HEAP_LOAD($923 | 0, 4, 0) | 0 | 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 = $$151222$i | 6;
+   $1044 = 72 + ($1043 << 3) | 0;
+   $1045 = $1044;
+   $1046 = $1045;
+   $1047 = SAFE_HEAP_LOAD($1046 | 0, 4, 0) | 0 | 0;
+   $1048 = $1045 + 4 | 0;
+   $1049 = $1048;
+   $1050 = SAFE_HEAP_LOAD($1049 | 0, 4, 0) | 0 | 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 = $$151222$i | 7;
+   $1170 = 72 + ($1169 << 3) | 0;
+   $1171 = $1170;
+   $1172 = $1171;
+   $1173 = SAFE_HEAP_LOAD($1172 | 0, 4, 0) | 0 | 0;
+   $1174 = $1171 + 4 | 0;
+   $1175 = $1174;
+   $1176 = SAFE_HEAP_LOAD($1175 | 0, 4, 0) | 0 | 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 = $$151222$i | 8;
+   $1296 = 72 + ($1295 << 3) | 0;
+   $1297 = $1296;
+   $1298 = $1297;
+   $1299 = SAFE_HEAP_LOAD($1298 | 0, 4, 0) | 0 | 0;
+   $1300 = $1297 + 4 | 0;
+   $1301 = $1300;
+   $1302 = SAFE_HEAP_LOAD($1301 | 0, 4, 0) | 0 | 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($465 | 0, $466 | 0, $1203 | 0, $1204 | 0) | 0;
+   $1348 = tempRet0;
+   $1349 = _i64Add($1347 | 0, $1348 | 0, $1345 | 0, $1346 | 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 = $$151222$i | 9;
+   $1420 = 72 + ($1419 << 3) | 0;
+   $1421 = $1420;
+   $1422 = $1421;
+   $1423 = SAFE_HEAP_LOAD($1422 | 0, 4, 0) | 0 | 0;
+   $1424 = $1421 + 4 | 0;
+   $1425 = $1424;
+   $1426 = SAFE_HEAP_LOAD($1425 | 0, 4, 0) | 0 | 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 = $$151222$i | 10;
+   $1544 = 72 + ($1543 << 3) | 0;
+   $1545 = $1544;
+   $1546 = $1545;
+   $1547 = SAFE_HEAP_LOAD($1546 | 0, 4, 0) | 0 | 0;
+   $1548 = $1545 + 4 | 0;
+   $1549 = $1548;
+   $1550 = SAFE_HEAP_LOAD($1549 | 0, 4, 0) | 0 | 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 = $$151222$i | 11;
+   $1668 = 72 + ($1667 << 3) | 0;
+   $1669 = $1668;
+   $1670 = $1669;
+   $1671 = SAFE_HEAP_LOAD($1670 | 0, 4, 0) | 0 | 0;
+   $1672 = $1669 + 4 | 0;
+   $1673 = $1672;
+   $1674 = SAFE_HEAP_LOAD($1673 | 0, 4, 0) | 0 | 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 = $$151222$i | 12;
+   $1792 = 72 + ($1791 << 3) | 0;
+   $1793 = $1792;
+   $1794 = $1793;
+   $1795 = SAFE_HEAP_LOAD($1794 | 0, 4, 0) | 0 | 0;
+   $1796 = $1793 + 4 | 0;
+   $1797 = $1796;
+   $1798 = SAFE_HEAP_LOAD($1797 | 0, 4, 0) | 0 | 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 = $$151222$i | 13;
+   $1916 = 72 + ($1915 << 3) | 0;
+   $1917 = $1916;
+   $1918 = $1917;
+   $1919 = SAFE_HEAP_LOAD($1918 | 0, 4, 0) | 0 | 0;
+   $1920 = $1917 + 4 | 0;
+   $1921 = $1920;
+   $1922 = SAFE_HEAP_LOAD($1921 | 0, 4, 0) | 0 | 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 = $$151222$i | 14;
+   $2040 = 72 + ($2039 << 3) | 0;
+   $2041 = $2040;
+   $2042 = $2041;
+   $2043 = SAFE_HEAP_LOAD($2042 | 0, 4, 0) | 0 | 0;
+   $2044 = $2041 + 4 | 0;
+   $2045 = $2044;
+   $2046 = SAFE_HEAP_LOAD($2045 | 0, 4, 0) | 0 | 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 = $$151222$i | 15;
+   $2164 = 72 + ($2163 << 3) | 0;
+   $2165 = $2164;
+   $2166 = $2165;
+   $2167 = SAFE_HEAP_LOAD($2166 | 0, 4, 0) | 0 | 0;
+   $2168 = $2165 + 4 | 0;
+   $2169 = $2168;
+   $2170 = SAFE_HEAP_LOAD($2169 | 0, 4, 0) | 0 | 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 = $$151222$i + 16 | 0;
+   $2258 = ($2257 | 0) < 64;
+   if ($2258) {
+    $$151222$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 = $2131;
+    $355 = $2007;
+    $357 = $2132;
+    $358 = $2008;
+    $367 = $1883;
+    $368 = $1884;
+    $419 = $2219;
+    $420 = $2220;
+    $439 = $593;
+    $440 = $594;
+    $459 = $1599;
+    $460 = $1600;
+    $567 = $721;
+    $568 = $722;
+    $587 = $1723;
+    $588 = $1724;
+    $695 = $849;
+    $696 = $850;
+    $715 = $1847;
+    $716 = $1848;
+    $823 = $975;
+    $824 = $976;
+    $843 = $1971;
+    $844 = $1972;
+    $951 = $1101;
+    $952 = $1102;
+   } else {
+    break;
+   }
+  }
+  $2259 = $3;
+  $2260 = $2259;
+  SAFE_HEAP_STORE($2260 | 0, $327 | 0, 4);
+  $2261 = $2259 + 4 | 0;
+  $2262 = $2261;
+  SAFE_HEAP_STORE($2262 | 0, $328 | 0, 4);
+  $2263 = $12;
+  $2264 = $2263;
+  SAFE_HEAP_STORE($2264 | 0, $2095 | 0, 4);
+  $2265 = $2263 + 4 | 0;
+  $2266 = $2265;
+  SAFE_HEAP_STORE($2266 | 0, $2096 | 0, 4);
+  $2267 = $13;
+  $2268 = $2267;
+  SAFE_HEAP_STORE($2268 | 0, $1475 | 0, 4);
+  $2269 = $2267 + 4 | 0;
+  $2270 = $2269;
+  SAFE_HEAP_STORE($2270 | 0, $1476 | 0, 4);
+  $2271 = $14;
+  $2272 = $2271;
+  SAFE_HEAP_STORE($2272 | 0, $465 | 0, 4);
+  $2273 = $2271 + 4 | 0;
+  $2274 = $2273;
+  SAFE_HEAP_STORE($2274 | 0, $466 | 0, 4);
+  $2275 = $15;
+  $2276 = $2275;
+  SAFE_HEAP_STORE($2276 | 0, $2219 | 0, 4);
+  $2277 = $2275 + 4 | 0;
+  $2278 = $2277;
+  SAFE_HEAP_STORE($2278 | 0, $2220 | 0, 4);
+  $2279 = $16;
+  $2280 = $2279;
+  SAFE_HEAP_STORE($2280 | 0, $1599 | 0, 4);
+  $2281 = $2279 + 4 | 0;
+  $2282 = $2281;
+  SAFE_HEAP_STORE($2282 | 0, $1600 | 0, 4);
+  $2283 = $17;
+  $2284 = $2283;
+  SAFE_HEAP_STORE($2284 | 0, $593 | 0, 4);
+  $2285 = $2283 + 4 | 0;
+  $2286 = $2285;
+  SAFE_HEAP_STORE($2286 | 0, $594 | 0, 4);
+  $2287 = $18;
+  $2288 = $2287;
+  SAFE_HEAP_STORE($2288 | 0, $1723 | 0, 4);
+  $2289 = $2287 + 4 | 0;
+  $2290 = $2289;
+  SAFE_HEAP_STORE($2290 | 0, $1724 | 0, 4);
+  $2291 = $19;
+  $2292 = $2291;
+  SAFE_HEAP_STORE($2292 | 0, $721 | 0, 4);
+  $2293 = $2291 + 4 | 0;
+  $2294 = $2293;
+  SAFE_HEAP_STORE($2294 | 0, $722 | 0, 4);
+  $2295 = $20;
+  $2296 = $2295;
+  SAFE_HEAP_STORE($2296 | 0, $1847 | 0, 4);
+  $2297 = $2295 + 4 | 0;
+  $2298 = $2297;
+  SAFE_HEAP_STORE($2298 | 0, $1848 | 0, 4);
+  $2299 = $21;
+  $2300 = $2299;
+  SAFE_HEAP_STORE($2300 | 0, $849 | 0, 4);
+  $2301 = $2299 + 4 | 0;
+  $2302 = $2301;
+  SAFE_HEAP_STORE($2302 | 0, $850 | 0, 4);
+  $2303 = $22;
+  $2304 = $2303;
+  SAFE_HEAP_STORE($2304 | 0, $1971 | 0, 4);
+  $2305 = $2303 + 4 | 0;
+  $2306 = $2305;
+  SAFE_HEAP_STORE($2306 | 0, $1972 | 0, 4);
+  $2307 = $23;
+  $2308 = $2307;
+  SAFE_HEAP_STORE($2308 | 0, $975 | 0, 4);
+  $2309 = $2307 + 4 | 0;
+  $2310 = $2309;
+  SAFE_HEAP_STORE($2310 | 0, $976 | 0, 4);
+  $2311 = $24;
+  $2312 = $2311;
+  SAFE_HEAP_STORE($2312 | 0, $1101 | 0, 4);
+  $2313 = $2311 + 4 | 0;
+  $2314 = $2313;
+  SAFE_HEAP_STORE($2314 | 0, $1102 | 0, 4);
+  $2315 = $25;
+  $2316 = $2315;
+  SAFE_HEAP_STORE($2316 | 0, $1227 | 0, 4);
+  $2317 = $2315 + 4 | 0;
+  $2318 = $2317;
+  SAFE_HEAP_STORE($2318 | 0, $1228 | 0, 4);
+  $2319 = $26;
+  $2320 = $2319;
+  SAFE_HEAP_STORE($2320 | 0, $1351 | 0, 4);
+  $2321 = $2319 + 4 | 0;
+  $2322 = $2321;
+  SAFE_HEAP_STORE($2322 | 0, $1352 | 0, 4);
+  $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;
+  $3501 = _i64Add($3491 | 0, $3492 | 0, $3499 | 0, $3500 | 0) | 0;
+  $3502 = tempRet0;
+  $3503 = _i64Add($3469 | 0, $3470 | 0, $3209 | 0, $3210 | 0) | 0;
+  $3504 = tempRet0;
+  $3505 = _i64Add($3501 | 0, $3502 | 0, $3469 | 0, $3470 | 0) | 0;
+  $3506 = tempRet0;
+  $3507 = $4;
+  $3508 = $3507;
+  $3509 = SAFE_HEAP_LOAD($3508 | 0, 4, 0) | 0 | 0;
+  $3510 = $3507 + 4 | 0;
+  $3511 = $3510;
+  $3512 = SAFE_HEAP_LOAD($3511 | 0, 4, 0) | 0 | 0;
+  $3513 = _i64Add($3505 | 0, $3506 | 0, $3509 | 0, $3512 | 0) | 0;
+  $3514 = tempRet0;
+  $3515 = $4;
+  $3516 = $3515;
+  SAFE_HEAP_STORE($3516 | 0, $3513 | 0, 4);
+  $3517 = $3515 + 4 | 0;
+  $3518 = $3517;
+  SAFE_HEAP_STORE($3518 | 0, $3514 | 0, 4);
+  $3519 = $5;
+  $3520 = $3519;
+  $3521 = SAFE_HEAP_LOAD($3520 | 0, 4, 0) | 0 | 0;
+  $3522 = $3519 + 4 | 0;
+  $3523 = $3522;
+  $3524 = SAFE_HEAP_LOAD($3523 | 0, 4, 0) | 0 | 0;
+  $3525 = _i64Add($3521 | 0, $3524 | 0, $3431 | 0, $3432 | 0) | 0;
+  $3526 = tempRet0;
+  $3527 = $5;
+  $3528 = $3527;
+  SAFE_HEAP_STORE($3528 | 0, $3525 | 0, 4);
+  $3529 = $3527 + 4 | 0;
+  $3530 = $3529;
+  SAFE_HEAP_STORE($3530 | 0, $3526 | 0, 4);
+  $3531 = $6;
+  $3532 = $3531;
+  $3533 = SAFE_HEAP_LOAD($3532 | 0, 4, 0) | 0 | 0;
+  $3534 = $3531 + 4 | 0;
+  $3535 = $3534;
+  $3536 = SAFE_HEAP_LOAD($3535 | 0, 4, 0) | 0 | 0;
+  $3537 = _i64Add($3533 | 0, $3536 | 0, $3357 | 0, $3358 | 0) | 0;
+  $3538 = tempRet0;
+  $3539 = $6;
+  $3540 = $3539;
+  SAFE_HEAP_STORE($3540 | 0, $3537 | 0, 4);
+  $3541 = $3539 + 4 | 0;
+  $3542 = $3541;
+  SAFE_HEAP_STORE($3542 | 0, $3538 | 0, 4);
+  $3543 = $7;
+  $3544 = $3543;
+  $3545 = SAFE_HEAP_LOAD($3544 | 0, 4, 0) | 0 | 0;
+  $3546 = $3543 + 4 | 0;
+  $3547 = $3546;
+  $3548 = SAFE_HEAP_LOAD($3547 | 0, 4, 0) | 0 | 0;
+  $3549 = _i64Add($3545 | 0, $3548 | 0, $3283 | 0, $3284 | 0) | 0;
+  $3550 = tempRet0;
+  $3551 = $7;
+  $3552 = $3551;
+  SAFE_HEAP_STORE($3552 | 0, $3549 | 0, 4);
+  $3553 = $3551 + 4 | 0;
+  $3554 = $3553;
+  SAFE_HEAP_STORE($3554 | 0, $3550 | 0, 4);
+  $3555 = $8;
+  $3556 = $3555;
+  $3557 = SAFE_HEAP_LOAD($3556 | 0, 4, 0) | 0 | 0;
+  $3558 = $3555 + 4 | 0;
+  $3559 = $3558;
+  $3560 = SAFE_HEAP_LOAD($3559 | 0, 4, 0) | 0 | 0;
+  $3561 = _i64Add($3503 | 0, $3504 | 0, $3557 | 0, $3560 | 0) | 0;
+  $3562 = tempRet0;
+  $3563 = $8;
+  $3564 = $3563;
+  SAFE_HEAP_STORE($3564 | 0, $3561 | 0, 4);
+  $3565 = $3563 + 4 | 0;
+  $3566 = $3565;
+  SAFE_HEAP_STORE($3566 | 0, $3562 | 0, 4);
+  $3567 = $9;
+  $3568 = $3567;
+  $3569 = SAFE_HEAP_LOAD($3568 | 0, 4, 0) | 0 | 0;
+  $3570 = $3567 + 4 | 0;
+  $3571 = $3570;
+  $3572 = SAFE_HEAP_LOAD($3571 | 0, 4, 0) | 0 | 0;
+  $3573 = _i64Add($3569 | 0, $3572 | 0, $3429 | 0, $3430 | 0) | 0;
+  $3574 = tempRet0;
+  $3575 = $9;
+  $3576 = $3575;
+  SAFE_HEAP_STORE($3576 | 0, $3573 | 0, 4);
+  $3577 = $3575 + 4 | 0;
+  $3578 = $3577;
+  SAFE_HEAP_STORE($3578 | 0, $3574 | 0, 4);
+  $3579 = $10;
+  $3580 = $3579;
+  $3581 = SAFE_HEAP_LOAD($3580 | 0, 4, 0) | 0 | 0;
+  $3582 = $3579 + 4 | 0;
+  $3583 = $3582;
+  $3584 = SAFE_HEAP_LOAD($3583 | 0, 4, 0) | 0 | 0;
+  $3585 = _i64Add($3581 | 0, $3584 | 0, $3355 | 0, $3356 | 0) | 0;
+  $3586 = tempRet0;
+  $3587 = $10;
+  $3588 = $3587;
+  SAFE_HEAP_STORE($3588 | 0, $3585 | 0, 4);
+  $3589 = $3587 + 4 | 0;
+  $3590 = $3589;
+  SAFE_HEAP_STORE($3590 | 0, $3586 | 0, 4);
+  $3591 = $11;
+  $3592 = $3591;
+  $3593 = SAFE_HEAP_LOAD($3592 | 0, 4, 0) | 0 | 0;
+  $3594 = $3591 + 4 | 0;
+  $3595 = $3594;
+  $3596 = SAFE_HEAP_LOAD($3595 | 0, 4, 0) | 0 | 0;
+  $3597 = _i64Add($3593 | 0, $3596 | 0, $3281 | 0, $3282 | 0) | 0;
+  $3598 = tempRet0;
+  $3599 = $11;
+  $3600 = $3599;
+  SAFE_HEAP_STORE($3600 | 0, $3597 | 0, 4);
+  $3601 = $3599 + 4 | 0;
+  $3602 = $3601;
+  SAFE_HEAP_STORE($3602 | 0, $3598 | 0, 4);
+  $3603 = $$0 + 128 | 0;
+  $3604 = $$08 + -1 | 0;
+  $3605 = ($3604 | 0) == 0;
+  if ($3605) {
+   break;
+  } else {
+   $$0 = $3603;
+   $$08 = $3604;
+   $3606 = $3597;
+   $3607 = $3598;
+   $3608 = $3585;
+   $3609 = $3586;
+   $3610 = $3573;
+   $3611 = $3574;
+   $3612 = $3561;
+   $3613 = $3562;
+   $3614 = $3549;
+   $3615 = $3550;
+   $3616 = $3537;
+   $3617 = $3538;
+   $3618 = $3525;
+   $3619 = $3526;
+   $3620 = $3513;
+   $3621 = $3514;
+  }
+ }
+ STACKTOP = sp;
+ return 220;
+}
+
+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$i = 0, $$$0584 = 0, $$$0584676 = 0, $$$0588 = 0, $$$0588675 
= 0, $$$0606 = 0, $$$076$i = 0, $$$07681$i = 0, $$$082$i = 0, $$$i = 0, $$$i702 
= 0, $$0 = 0, $$0$copyload$i = 0, $$0$i732 = 0, $$0$ph$be$i = 0, $$0$ph34$i = 
0, $$0111$i = 0, $$028$be$i = 0, $$028$ph33$i = 0;
+ var $$02832$i = 0, $$0575$lcssa = 0, $$05751375 = 0, $$0576$lcssa = 0, 
$$05761374 = 0, $$0584$lcssa = 0, $$05841407 = 0, $$05881406 = 0, $$05921405 = 
0, $$05941404 = 0, $$05971403 = 0, $$0600 = 0, $$0601$pn$ph1389 = 0, 
$$0601$pn1379 = 0, $$0601$pn1379$phi = 0, $$06011402 = 0, $$06061401 = 0, 
$$06081400 = 0, $$06101399 = 0, $$0612 = 0;
+ var $$06131398 = 0, $$06151397 = 0, $$06171396 = 0, $$0627 = 0, $$0628$lcssa 
= 0, $$06281395 = 0, $$0657 = 0, $$0658 = 0, $$0659 = 0, $$0660 = 0, $$0661961 
= 0, $$073$lcssa$i = 0, $$073110$i = 0, $$076109$i = 0, $$079108$i = 0, $$0843 
= 0, $$1 = 0, $$1$i691866 = 0, $$1$i693882 = 0, $$1$i707896 = 0;
+ var $$1$i709910 = 0, $$1$i711929 = 0, $$1$i713948 = 0, $$1$i715971 = 0, 
$$1$i717991 = 0, $$1$i7191010 = 0, $$1$i7221029 = 0, $$1$i7241046 = 0, 
$$1$i7261061 = 0, $$1$i7301076 = 0, $$1$i853 = 0, $$10 = 0, $$15$ph = 0, $$1577 
= 0, $$1593 = 0, $$1598 = 0, $$1602 = 0, $$1602$val = 0, $$16021378 = 0, 
$$160213781387 = 0;
+ var $$160213781390 = 0, $$16021380 = 0, $$1607 = 0, $$1609 = 0, $$1611 = 0, 
$$1614 = 0, $$1616 = 0, $$1618 = 0, $$1629 = 0, $$180$i = 0, $$1844 = 0, $$2 = 
0, $$2$i = 0, $$2596 = 0, $$2599 = 0, $$2603$val = 0, $$26031123 = 0, 
$$26031384 = 0, $$2619 = 0, $$275$i = 0;
+ var $$278$i = 0, $$3$ph = 0, $$31 = 0, $$31$ph = 0, $$311088 = 0, $$31373 = 
0, $$3579$ph = 0, $$35791372 = 0, $$3587 = 0, $$3591 = 0, $$4605 = 0, $$4621 = 
0, $$5622 = 0, $$6623 = 0, $$7624 = 0, $$9626 = 0, $$cast = 0, $$cast665 = 0, 
$$cast666 = 0, $$off = 0;
+ var $$off$i = 0, $$off$i695 = 0, $$off$i699 = 0, $$off1092 = 0, $$off1097 = 
0, $$off1098 = 0, $$off13$i = 0, $$off13$i700 = 0, $$off14$i = 0, $$off14$i701 
= 0, $$off94$i = 0, $$sink = 0, $$sink$i = 0, $$sink$v$i = 0, $$sink1$i = 0, 
$$sink1$v$i = 0, $$sroa$0$1$lcssa = 0, $$sroa$0$10 = 0, $$sroa$0$10$ph = 0, 
$$sroa$0$11394 = 0;
+ var $$sroa$0$11924$ph = 0, $$sroa$0$13 = 0, $$sroa$0$15 = 0, $$sroa$0$15$ph = 
0, $$sroa$0$16943$ph = 0, $$sroa$0$17966$ph = 0, $$sroa$0$19 = 0, 
$$sroa$0$21986$ph = 0, $$sroa$0$221005$ph = 0, $$sroa$0$231024$ph = 0, 
$$sroa$0$251041$ph = 0, $$sroa$0$261056$ph = 0, $$sroa$0$27 = 0, 
$$sroa$0$281071$ph = 0, $$sroa$0$2848$ph = 0, $$sroa$0$29 = 0, $$sroa$0$29$ph = 
0, $$sroa$0$291087 = 0, $$sroa$0$291609 = 0, $$sroa$0$3 = 0;
+ var $$sroa$0$4861$ph = 0, $$sroa$0$5877$ph = 0, $$sroa$0$6891$ph = 0, 
$$sroa$0$7905$ph = 0, $$sroa$0$9 = 0, $$sroa$47$0$lcssa = 0, $$sroa$47$01393 = 
0, $$sroa$47$10 = 0, $$sroa$47$10$ph = 0, $$sroa$47$11942$ph = 0, 
$$sroa$47$12965$ph = 0, $$sroa$47$13985$ph = 0, $$sroa$47$141004$ph = 0, 
$$sroa$47$151023$ph = 0, $$sroa$47$171040$ph = 0, $$sroa$47$181055$ph = 0, 
$$sroa$47$1847$ph = 0, $$sroa$47$19 = 0, $$sroa$47$2 = 0, $$sroa$47$201070$ph = 
0;
+ var $$sroa$47$21 = 0, $$sroa$47$21$ph = 0, $$sroa$47$211086 = 0, 
$$sroa$47$3860$ph = 0, $$sroa$47$4876$ph = 0, $$sroa$47$5890$ph = 0, 
$$sroa$47$6904$ph = 0, $$sroa$47$7 = 0, $$sroa$47$7$ph = 0, $$sroa$47$8922$ph = 
0, $$sroa$81$0$lcssa = 0, $$sroa$81$01392 = 0, $$sroa$81$10 = 0, 
$$sroa$81$11$ph = 0, $$sroa$81$12921$ph = 0, $$sroa$81$14 = 0, $$sroa$81$16 = 
0, $$sroa$81$17941$ph = 0, $$sroa$81$1846$ph = 0, $$sroa$81$19964$ph = 0;
+ var $$sroa$81$2 = 0, $$sroa$81$21 = 0, $$sroa$81$23984$ph = 0, 
$$sroa$81$251003$ph = 0, $$sroa$81$271022$ph = 0, $$sroa$81$291039$ph = 0, 
$$sroa$81$301054$ph = 0, $$sroa$81$31 = 0, $$sroa$81$321069$ph = 0, 
$$sroa$81$3859$ph = 0, $$sroa$81$5875$ph = 0, $$sroa$81$6$ph1388 = 0, 
$$sroa$81$7889$ph = 0, $$sroa$81$8903$ph = 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, $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;
+ var $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, $431 = 0;
+ var $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, $45 = 0;
+ var $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, $468 = 0;
+ var $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, $486 = 0;
+ var $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, $50 = 0, $500 
= 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0;
+ var $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, $521 = 0, $522 = 0;
+ var $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, $54 = 0, $540 = 0;
+ var $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, $558 = 0, $559 = 0;
+ var $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, $576 = 0, $577 = 0;
+ var $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, $594 = 0, $595 = 0;
+ var $596 = 0, $597 = 0, $598 = 0, $599 = 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;
+ var $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, $63 = 0, $630 = 0, $631 = 0;
+ var $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, $648 = 0, $649 = 0, $65 = 0;
+ var $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, $666 = 0, $667 = 0, $668 = 0;
+ var $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, $684 = 0, $685 = 0, $686 = 0;
+ var $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, $701 = 0, $702 = 0, $703 = 0;
+ var $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, $72 = 0, $720 = 0, $721 = 0;
+ var $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, $738 = 0, $739 = 0, $74 = 0;
+ var $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, $756 = 0, $757 = 0, $758 = 0;
+ var $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, $774 = 0, $775 = 0, $776 = 0;
+ var $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, $792 = 0, $793 = 0, $794 = 0;
+ var $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, $81 = 0, $810 = 0, $811 = 0;
+ var $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, $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, $arglist_current 
= 0, $arglist_current11 = 0, $arglist_current14 = 0, $arglist_current2 = 0, 
$arglist_current20 = 0;
+ var $arglist_current5 = 0, $arglist_current8 = 0, $arglist_next = 0, 
$arglist_next12 = 0, $arglist_next15 = 0, $arglist_next21 = 0, $arglist_next3 = 
0, $arglist_next6 = 0, $arglist_next9 = 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$cond1089 = 0, 
$or$cond14 = 0, $scevgep = 0, $vararg_buffer = 0, $vararg_buffer16 = 0, label = 
0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 96 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(96 | 0);
+ $vararg_buffer16 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $7 = sp + 20 | 0;
+ $8 = sp + 16 | 0;
+ $9 = sp + 12 | 0;
+ $10 = sp + 59 | 0;
+ $11 = sp + 24 | 0;
+ $12 = ($0 | 0) == (0 | 0);
+ if ($12) {
+  $$0 = 45;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $13 = ($2 | 0) == (0 | 0);
+ if ($13) {
+  $$0 = 45;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $14 = ($1 | 0) == (0 | 0);
+ $$ = $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;
+   $$sink = $19;
+  }
+ }
+ if ((label | 0) == 6) {
+  $20 = __gcry_malloc($15) | 0;
+  $$sink = $20;
+ }
+ $21 = $$sink;
+ $22 = ($$sink | 0) == (0 | 0);
+ L13 : do {
+  if ($22) {
+   $23 = ___errno_location() | 0;
+   $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+   $25 = _gpg_err_code_from_errno($24) | 0;
+   SAFE_HEAP_STORE($$ | 0, 0 | 0, 4);
+   $$31 = $25;
+   $$sroa$0$29 = $21;
+   $$sroa$47$21 = $15;
+   label = 283;
+  } else {
+   L16 : do {
+    if ($16) {
+     $$0584$lcssa = $2;
+     $$0628$lcssa = 0;
+     $$sroa$0$1$lcssa = $21;
+     $$sroa$47$0$lcssa = $15;
+     $$sroa$81$0$lcssa = $21;
+     label = 274;
+    } else {
+     $26 = ($4 | 0) != 0;
+     $27 = ($5 | 0) == (0 | 0);
+     $$05841407 = $2;
+     $$05881406 = $3;
+     $$05921405 = 0;
+     $$05941404 = 0;
+     $$05971403 = 0;
+     $$06011402 = 0;
+     $$06061401 = 0;
+     $$06081400 = 0;
+     $$06101399 = 0;
+     $$06131398 = 0;
+     $$06151397 = 0;
+     $$06171396 = 0;
+     $$06281395 = 0;
+     $$sroa$0$11394 = $21;
+     $$sroa$47$01393 = $15;
+     $$sroa$81$01392 = $21;
+     L18 : while (1) {
+      $28 = ($$05971403 | 0) == (0 | 0);
+      $29 = ($$06011402 | 0) != (0 | 0);
+      $or$cond = $29 | $28;
+      if ($or$cond) {
+       $$1598 = $$05971403;
+       $$sroa$0$3 = $$sroa$0$11394;
+       $$sroa$47$2 = $$sroa$47$01393;
+       $$sroa$81$2 = $$sroa$81$01392;
+       label = 20;
+      } else {
+       $30 = SAFE_HEAP_LOAD($$05841407 >> 0 | 0, 1, 0) | 0 | 0;
+       $31 = $30 << 24 >> 24;
+       $memchr = _memchr(22485, $31, 71) | 0;
+       $32 = ($memchr | 0) == (0 | 0);
+       if ($32) {
+        $33 = $$05841407;
+        $34 = $$05971403;
+        $35 = $33 - $34 | 0;
+        $36 = $$sroa$0$11394;
+        $37 = $$sroa$81$01392 - $$sroa$0$11394 | 0;
+        $38 = $37 + 3 | 0;
+        $39 = $38 + $35 | 0;
+        $40 = $39 >>> 0 < $$sroa$47$01393 >>> 0;
+        do {
+         if ($40) {
+          $$sroa$0$2848$ph = $$sroa$0$11394;
+          $$sroa$47$1847$ph = $$sroa$47$01393;
+          $$sroa$81$1846$ph = $$sroa$81$01392;
+         } else {
+          $41 = $35 << 1;
+          $42 = $$sroa$47$01393 + 6 | 0;
+          $43 = $42 + $41 | 0;
+          $44 = $43 >>> 0 > $$sroa$47$01393 >>> 0;
+          if (!$44) {
+           $$1$i853 = 67;
+           label = 18;
+           break L18;
+          }
+          $45 = __gcry_realloc($36, $43) | 0;
+          $46 = ($45 | 0) == (0 | 0);
+          if ($46) {
+           $50 = ___errno_location() | 0;
+           $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+           $52 = _gpg_err_code_from_errno($51) | 0;
+           $53 = ($52 | 0) == 0;
+           if ($53) {
+            $$sroa$0$2848$ph = $$sroa$0$11394;
+            $$sroa$47$1847$ph = $$sroa$47$01393;
+            $$sroa$81$1846$ph = $$sroa$81$01392;
+            break;
+           } else {
+            $$1$i853 = $52;
+            label = 18;
+            break L18;
+           }
+          } else {
+           $47 = $45 + $37 | 0;
+           $48 = $47;
+           $49 = $45;
+           $$sroa$0$2848$ph = $49;
+           $$sroa$47$1847$ph = $43;
+           $$sroa$81$1846$ph = $48;
+           break;
+          }
+         }
+        } while (0);
+        $56 = $$sroa$81$1846$ph;
+        $57 = $56 + 1 | 0;
+        SAFE_HEAP_STORE($56 >> 0 | 0, 1 | 0, 1);
+        $58 = $35 & 65535;
+        SAFE_HEAP_STORE($57 >> 0 | 0, $58 & 255 | 0, 1);
+        SAFE_HEAP_STORE($57 + 1 >> 0 | 0, $58 >> 8 | 0, 1);
+        $59 = $56 + 3 | 0;
+        _memcpy($59 | 0, $$05971403 | 0, $35 | 0) | 0;
+        $60 = $59 + $35 | 0;
+        $61 = $60;
+        $$1598 = 0;
+        $$sroa$0$3 = $$sroa$0$2848$ph;
+        $$sroa$47$2 = $$sroa$47$1847$ph;
+        $$sroa$81$2 = $61;
+        label = 20;
+       } else {
+        $$1593 = $$05921405;
+        $$1607 = $$06061401;
+        $$1609 = $$06081400;
+        $$1611 = $$06101399;
+        $$1614 = $$06131398;
+        $$1616 = $$06151397;
+        $$1629 = $$06281395;
+        $$2596 = $$05941404;
+        $$2599 = $$05971403;
+        $$3587 = $$05841407;
+        $$3591 = $$05881406;
+        $$4605 = 0;
+        $$9626 = $$06171396;
+        $$sroa$0$27 = $$sroa$0$11394;
+        $$sroa$47$19 = $$sroa$47$01393;
+        $$sroa$81$31 = $$sroa$81$01392;
+       }
+      }
+      L30 : do {
+       if ((label | 0) == 20) {
+        label = 0;
+        $62 = ($$05941404 | 0) == (0 | 0);
+        if (!$62) {
+         $63 = ($$06151397 | 0) == 0;
+         $64 = SAFE_HEAP_LOAD($$05841407 >> 0 | 0, 1, 0) | 0 | 0;
+         if (!$63) {
+          $65 = $64 << 24 >> 24;
+          switch ($65 | 0) {
+          case 92:
+          case 39:
+          case 34:
+          case 114:
+          case 102:
+          case 110:
+          case 118:
+          case 116:
+          case 98:
+           {
+            $$1593 = $$05921405;
+            $$1607 = $$06061401;
+            $$1609 = $$06081400;
+            $$1611 = $$06101399;
+            $$1614 = $$06131398;
+            $$1616 = 0;
+            $$1629 = $$06281395;
+            $$2596 = $$05941404;
+            $$2599 = $$1598;
+            $$3587 = $$05841407;
+            $$3591 = $$05881406;
+            $$4605 = $$06011402;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+            break;
+           }
+          case 55:
+          case 54:
+          case 53:
+          case 52:
+          case 51:
+          case 50:
+          case 49:
+          case 48:
+           {
+            $66 = $$05881406 >>> 0 > 2;
+            if (!$66) {
+             label = 26;
+             break L18;
+            }
+            $67 = $$05841407 + 1 | 0;
+            $68 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+            $69 = $68 & -8;
+            $70 = $69 << 24 >> 24 == 48;
+            if (!$70) {
+             label = 26;
+             break L18;
+            }
+            $71 = $$05841407 + 2 | 0;
+            $72 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+            $73 = $72 & -8;
+            $74 = $73 << 24 >> 24 == 48;
+            if (!$74) {
+             label = 26;
+             break L18;
+            }
+            $78 = $$05881406 + -2 | 0;
+            $$1593 = $$05921405;
+            $$1607 = $$06061401;
+            $$1609 = $$06081400;
+            $$1611 = $$06101399;
+            $$1614 = $$06131398;
+            $$1616 = 0;
+            $$1629 = $$06281395;
+            $$2596 = $$05941404;
+            $$2599 = $$1598;
+            $$3587 = $71;
+            $$3591 = $78;
+            $$4605 = $$06011402;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+            break;
+           }
+          case 120:
+           {
+            $79 = $$05881406 >>> 0 > 2;
+            if (!$79) {
+             label = 33;
+             break L18;
+            }
+            $80 = $$05841407 + 1 | 0;
+            $81 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+            $$off = $81 + -48 << 24 >> 24;
+            $82 = ($$off & 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;
+              }
+             }
+            }
+            $83 = $$05841407 + 2 | 0;
+            $84 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+            $$off1092 = $84 + -48 << 24 >> 24;
+            $85 = ($$off1092 & 255) < 10;
+            if (!$85) {
+             switch ($84 << 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;
+              }
+             }
+            }
+            $89 = $$05881406 + -2 | 0;
+            $$1593 = $$05921405;
+            $$1607 = $$06061401;
+            $$1609 = $$06081400;
+            $$1611 = $$06101399;
+            $$1614 = $$06131398;
+            $$1616 = 0;
+            $$1629 = $$06281395;
+            $$2596 = $$05941404;
+            $$2599 = $$1598;
+            $$3587 = $83;
+            $$3591 = $89;
+            $$4605 = $$06011402;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+            break;
+           }
+          case 13:
+           {
+            $90 = $$05841407 + 1 | 0;
+            $91 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 0) | 0 | 0;
+            $92 = $91 << 24 >> 24 == 10;
+            $93 = $92 << 31 >> 31;
+            $$$0588 = $93 + $$05881406 | 0;
+            $$$0584 = $92 ? $90 : $$05841407;
+            $$1593 = $$05921405;
+            $$1607 = $$06061401;
+            $$1609 = $$06081400;
+            $$1611 = $$06101399;
+            $$1614 = $$06131398;
+            $$1616 = 0;
+            $$1629 = $$06281395;
+            $$2596 = $$05941404;
+            $$2599 = $$1598;
+            $$3587 = $$$0584;
+            $$3591 = $$$0588;
+            $$4605 = $$06011402;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+            break;
+           }
+          case 10:
+           {
+            $94 = $$05841407 + 1 | 0;
+            $95 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+            $96 = $95 << 24 >> 24 == 13;
+            $97 = $96 << 31 >> 31;
+            $$$0588675 = $97 + $$05881406 | 0;
+            $$$0584676 = $96 ? $94 : $$05841407;
+            $$1593 = $$05921405;
+            $$1607 = $$06061401;
+            $$1609 = $$06081400;
+            $$1611 = $$06101399;
+            $$1614 = $$06131398;
+            $$1616 = 0;
+            $$1629 = $$06281395;
+            $$2596 = $$05941404;
+            $$2599 = $$1598;
+            $$3587 = $$$0584676;
+            $$3591 = $$$0588675;
+            $$4605 = $$06011402;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+            break;
+           }
+          default:
+           {
+            label = 37;
+            break L18;
+           }
+          }
+         }
+         $101 = $64 << 24 >> 24 == 92;
+         if ($101) {
+          $$1593 = $$05921405;
+          $$1607 = $$06061401;
+          $$1609 = $$06081400;
+          $$1611 = $$06101399;
+          $$1614 = $$06131398;
+          $$1616 = 1;
+          $$1629 = $$06281395;
+          $$2596 = $$05941404;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = $$06011402;
+          $$9626 = $$06171396;
+          $$sroa$0$27 = $$sroa$0$3;
+          $$sroa$47$19 = $$sroa$47$2;
+          $$sroa$81$31 = $$sroa$81$2;
+          break;
+         }
+         $102 = $64 << 24 >> 24 == 34;
+         if (!$102) {
+          $$1593 = $$05921405;
+          $$1607 = $$06061401;
+          $$1609 = $$06081400;
+          $$1611 = $$06101399;
+          $$1614 = $$06131398;
+          $$1616 = 0;
+          $$1629 = $$06281395;
+          $$2596 = $$05941404;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = $$06011402;
+          $$9626 = $$06171396;
+          $$sroa$0$27 = $$sroa$0$3;
+          $$sroa$47$19 = $$sroa$47$2;
+          $$sroa$81$31 = $$sroa$81$2;
+          break;
+         }
+         $103 = $$05941404 + 1 | 0;
+         $104 = $$05841407;
+         $105 = $103;
+         $106 = $104 - $105 | 0;
+         $107 = $$sroa$0$3;
+         $108 = $$sroa$81$2 - $$sroa$0$3 | 0;
+         $109 = $106 + 3 | 0;
+         $110 = $109 + $108 | 0;
+         $111 = $110 >>> 0 < $$sroa$47$2 >>> 0;
+         do {
+          if ($111) {
+           $$sroa$0$4861$ph = $$sroa$0$3;
+           $$sroa$47$3860$ph = $$sroa$47$2;
+           $$sroa$81$3859$ph = $$sroa$81$2;
+          } else {
+           $112 = $106 << 1;
+           $113 = $112 + 6 | 0;
+           $114 = $113 + $$sroa$47$2 | 0;
+           $115 = $114 >>> 0 > $$sroa$47$2 >>> 0;
+           if (!$115) {
+            $$1$i691866 = 67;
+            label = 81;
+            break L18;
+           }
+           $116 = __gcry_realloc($107, $114) | 0;
+           $117 = ($116 | 0) == (0 | 0);
+           if ($117) {
+            $121 = ___errno_location() | 0;
+            $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+            $123 = _gpg_err_code_from_errno($122) | 0;
+            $124 = ($123 | 0) == 0;
+            if ($124) {
+             $$sroa$0$4861$ph = $$sroa$0$3;
+             $$sroa$47$3860$ph = $$sroa$47$2;
+             $$sroa$81$3859$ph = $$sroa$81$2;
+             break;
+            } else {
+             $$1$i691866 = $123;
+             label = 81;
+             break L18;
+            }
+           } else {
+            $118 = $116 + $108 | 0;
+            $119 = $118;
+            $120 = $116;
+            $$sroa$0$4861$ph = $120;
+            $$sroa$47$3860$ph = $114;
+            $$sroa$81$3859$ph = $119;
+            break;
+           }
+          }
+         } while (0);
+         $125 = $$sroa$81$3859$ph;
+         $126 = $125 + 1 | 0;
+         SAFE_HEAP_STORE($125 >> 0 | 0, 1 | 0, 1);
+         SAFE_HEAP_STORE($126 >> 0 | 0, 0 & 255 | 0, 1);
+         SAFE_HEAP_STORE($126 + 1 >> 0 | 0, 0 >> 8 | 0, 1);
+         $127 = $125 + 3 | 0;
+         $128 = $127;
+         $129 = ($106 | 0) == 0;
+         L61 : do {
+          if ($129) {
+           $$073$lcssa$i = $127;
+          } else {
+           $$0111$i = $106;
+           $$073110$i = $127;
+           $$076109$i = $103;
+           $$079108$i = 0;
+           while (1) {
+            $130 = ($$079108$i | 0) == 0;
+            $131 = SAFE_HEAP_LOAD($$076109$i >> 0 | 0, 1, 0) | 0 | 0;
+            $132 = $131 & 255;
+            L64 : do {
+             if ($130) {
+              $198 = $131 << 24 >> 24 == 92;
+              if ($198) {
+               $$180$i = 1;
+               $$2$i = $$0111$i;
+               $$275$i = $$073110$i;
+               $$278$i = $$076109$i;
+               break;
+              }
+              $199 = $$073110$i + 1 | 0;
+              SAFE_HEAP_STORE($$073110$i >> 0 | 0, $131 | 0, 1);
+              $$180$i = 0;
+              $$2$i = $$0111$i;
+              $$275$i = $199;
+              $$278$i = $$076109$i;
+             } else {
+              do {
+               switch ($131 << 24 >> 24) {
+               case 98:
+                {
+                 $133 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, 8 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $$0111$i;
+                 $$275$i = $133;
+                 $$278$i = $$076109$i;
+                 break L64;
+                 break;
+                }
+               case 116:
+                {
+                 $134 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, 9 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $$0111$i;
+                 $$275$i = $134;
+                 $$278$i = $$076109$i;
+                 break L64;
+                 break;
+                }
+               case 118:
+                {
+                 $135 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, 11 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $$0111$i;
+                 $$275$i = $135;
+                 $$278$i = $$076109$i;
+                 break L64;
+                 break;
+                }
+               case 110:
+                {
+                 $136 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, 10 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $$0111$i;
+                 $$275$i = $136;
+                 $$278$i = $$076109$i;
+                 break L64;
+                 break;
+                }
+               case 102:
+                {
+                 $137 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, 12 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $$0111$i;
+                 $$275$i = $137;
+                 $$278$i = $$076109$i;
+                 break L64;
+                 break;
+                }
+               case 114:
+                {
+                 $138 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, 13 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $$0111$i;
+                 $$275$i = $138;
+                 $$278$i = $$076109$i;
+                 break L64;
+                 break;
+                }
+               case 34:
+                {
+                 $139 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, 34 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $$0111$i;
+                 $$275$i = $139;
+                 $$278$i = $$076109$i;
+                 break L64;
+                 break;
+                }
+               case 39:
+                {
+                 $140 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, 39 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $$0111$i;
+                 $$275$i = $140;
+                 $$278$i = $$076109$i;
+                 break L64;
+                 break;
+                }
+               case 92:
+                {
+                 $141 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, 92 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $$0111$i;
+                 $$275$i = $141;
+                 $$278$i = $$076109$i;
+                 break L64;
+                 break;
+                }
+               case 13:
+                {
+                 $142 = $$0111$i >>> 0 > 1;
+                 $143 = $$076109$i + 1 | 0;
+                 if (!$142) {
+                  $$073$lcssa$i = $$073110$i;
+                  break L61;
+                 }
+                 $144 = SAFE_HEAP_LOAD($143 >> 0 | 0, 1, 0) | 0 | 0;
+                 $145 = $144 << 24 >> 24 == 10;
+                 $$$076$i = $145 ? $143 : $$076109$i;
+                 $146 = $145 << 31 >> 31;
+                 $$$0$i = $146 + $$0111$i | 0;
+                 $$180$i = 0;
+                 $$2$i = $$$0$i;
+                 $$275$i = $$073110$i;
+                 $$278$i = $$$076$i;
+                 break L64;
+                 break;
+                }
+               case 10:
+                {
+                 $147 = $$0111$i >>> 0 > 1;
+                 $148 = $$076109$i + 1 | 0;
+                 if (!$147) {
+                  $$073$lcssa$i = $$073110$i;
+                  break L61;
+                 }
+                 $149 = SAFE_HEAP_LOAD($148 >> 0 | 0, 1, 0) | 0 | 0;
+                 $150 = $149 << 24 >> 24 == 13;
+                 $$$07681$i = $150 ? $148 : $$076109$i;
+                 $151 = $150 << 31 >> 31;
+                 $$$082$i = $151 + $$0111$i | 0;
+                 $$180$i = 0;
+                 $$2$i = $$$082$i;
+                 $$275$i = $$073110$i;
+                 $$278$i = $$$07681$i;
+                 break L64;
+                 break;
+                }
+               case 120:
+                {
+                 $152 = $$0111$i >>> 0 > 2;
+                 if (!$152) {
+                  $$180$i = 0;
+                  $$2$i = $$0111$i;
+                  $$275$i = $$073110$i;
+                  $$278$i = $$076109$i;
+                  break L64;
+                 }
+                 $153 = $$076109$i + 1 | 0;
+                 $154 = SAFE_HEAP_LOAD($153 >> 0 | 0, 1, 0) | 0 | 0;
+                 $$off$i = $154 + -48 << 24 >> 24;
+                 $155 = ($$off$i & 255) < 10;
+                 if (!$155) {
+                  switch ($154 << 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:
+                   {
+                    $$180$i = 0;
+                    $$2$i = $$0111$i;
+                    $$275$i = $$073110$i;
+                    $$278$i = $$076109$i;
+                    break L64;
+                   }
+                  }
+                 }
+                 $156 = $$076109$i + 2 | 0;
+                 $157 = SAFE_HEAP_LOAD($156 >> 0 | 0, 1, 0) | 0 | 0;
+                 $$off94$i = $157 + -48 << 24 >> 24;
+                 $158 = ($$off94$i & 255) < 10;
+                 if (!$158) {
+                  switch ($157 << 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:
+                   {
+                    $$180$i = 0;
+                    $$2$i = $$0111$i;
+                    $$275$i = $$073110$i;
+                    $$278$i = $$076109$i;
+                    break L64;
+                   }
+                  }
+                 }
+                 $159 = $154 & 255;
+                 $160 = ($154 & 255) < 58;
+                 if ($160) {
+                  $161 = $159 + -48 | 0;
+                  $165 = $161;
+                 } else {
+                  $162 = ($154 & 255) < 71;
+                  $$sink$v$i = $162 ? -65 : -97;
+                  $$sink$i = $159 + 10 | 0;
+                  $163 = $$sink$i + $$sink$v$i | 0;
+                  $165 = $163;
+                 }
+                 $164 = $165 << 4;
+                 $166 = $157 & 255;
+                 $167 = ($157 & 255) < 58;
+                 if ($167) {
+                  $168 = $166 + -48 | 0;
+                  $172 = $168;
+                 } else {
+                  $169 = ($157 & 255) < 71;
+                  $$sink1$v$i = $169 ? -65 : -97;
+                  $$sink1$i = $166 + 10 | 0;
+                  $170 = $$sink1$i + $$sink1$v$i | 0;
+                  $172 = $170;
+                 }
+                 $171 = $172 + $164 | 0;
+                 $173 = $171 & 255;
+                 $174 = $$073110$i + 1 | 0;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, $173 | 0, 1);
+                 $175 = $$0111$i + -2 | 0;
+                 $$180$i = 0;
+                 $$2$i = $175;
+                 $$275$i = $174;
+                 $$278$i = $156;
+                 break L64;
+                 break;
+                }
+               default:
+                {
+                 $176 = $$0111$i >>> 0 > 2;
+                 $177 = $131 & -8;
+                 $178 = $177 << 24 >> 24 == 48;
+                 $179 = $176 & $178;
+                 if (!$179) {
+                  $$180$i = 0;
+                  $$2$i = $$0111$i;
+                  $$275$i = $$073110$i;
+                  $$278$i = $$076109$i;
+                  break L64;
+                 }
+                 $180 = $$076109$i + 1 | 0;
+                 $181 = SAFE_HEAP_LOAD($180 >> 0 | 0, 1, 0) | 0 | 0;
+                 $182 = $181 & -8;
+                 $183 = $182 << 24 >> 24 == 48;
+                 if (!$183) {
+                  $$180$i = 0;
+                  $$2$i = $$0111$i;
+                  $$275$i = $$073110$i;
+                  $$278$i = $$076109$i;
+                  break L64;
+                 }
+                 $184 = $$076109$i + 2 | 0;
+                 $185 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+                 $186 = $185 & -8;
+                 $187 = $186 << 24 >> 24 == 48;
+                 if (!$187) {
+                  $$180$i = 0;
+                  $$2$i = $$0111$i;
+                  $$275$i = $$073110$i;
+                  $$278$i = $$076109$i;
+                  break L64;
+                 }
+                 $188 = $$0111$i + -2 | 0;
+                 $189 = $$073110$i + 1 | 0;
+                 $190 = $132 << 6;
+                 $191 = $181 & 255;
+                 $192 = $191 << 3;
+                 $193 = $185 & 255;
+                 $194 = $190 + 80 | 0;
+                 $195 = $194 + $192 | 0;
+                 $196 = $195 + $193 | 0;
+                 $197 = $196 & 255;
+                 SAFE_HEAP_STORE($$073110$i >> 0 | 0, $197 | 0, 1);
+                 $$180$i = 0;
+                 $$2$i = $188;
+                 $$275$i = $189;
+                 $$278$i = $184;
+                 break L64;
+                }
+               }
+              } while (0);
+             }
+            } while (0);
+            $200 = $$2$i + -1 | 0;
+            $201 = $$278$i + 1 | 0;
+            $202 = ($200 | 0) == 0;
+            if ($202) {
+             $$073$lcssa$i = $$275$i;
+             break;
+            } else {
+             $$0111$i = $200;
+             $$073110$i = $$275$i;
+             $$076109$i = $201;
+             $$079108$i = $$180$i;
+            }
+           }
+          }
+         } while (0);
+         $203 = $$073$lcssa$i;
+         $204 = $203 - $128 | 0;
+         $205 = $204 & 65535;
+         SAFE_HEAP_STORE($126 >> 0 | 0, $205 & 255 | 0, 1);
+         SAFE_HEAP_STORE($126 + 1 >> 0 | 0, $205 >> 8 | 0, 1);
+         $$1593 = $$05921405;
+         $$1607 = $$06061401;
+         $$1609 = $$06081400;
+         $$1611 = $$06101399;
+         $$1614 = $$06131398;
+         $$1616 = 0;
+         $$1629 = $$06281395;
+         $$2596 = 0;
+         $$2599 = $$1598;
+         $$3587 = $$05841407;
+         $$3591 = $$05881406;
+         $$4605 = $$06011402;
+         $$9626 = $$06171396;
+         $$sroa$0$27 = $$sroa$0$4861$ph;
+         $$sroa$47$19 = $$sroa$47$3860$ph;
+         $$sroa$81$31 = $203;
+         break;
+        }
+        if ($29) {
+         $208 = SAFE_HEAP_LOAD($$05841407 >> 0 | 0, 1, 0) | 0 | 0;
+         $209 = $208 << 24 >> 24;
+         $210 = _isxdigit($209) | 0;
+         $211 = ($210 | 0) == 0;
+         if (!$211) {
+          $212 = $$06131398 + 1 | 0;
+          $$1593 = $$05921405;
+          $$1607 = $$06061401;
+          $$1609 = $$06081400;
+          $$1611 = $$06101399;
+          $$1614 = $212;
+          $$1616 = $$06151397;
+          $$1629 = $$06281395;
+          $$2596 = 0;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = $$06011402;
+          $$9626 = $$06171396;
+          $$sroa$0$27 = $$sroa$0$3;
+          $$sroa$47$19 = $$sroa$47$2;
+          $$sroa$81$31 = $$sroa$81$2;
+          break;
+         }
+         $213 = $208 << 24 >> 24 == 35;
+         if (!$213) {
+          switch ($209 | 0) {
+          case 10:
+          case 13:
+          case 12:
+          case 11:
+          case 9:
+          case 32:
+           {
+            $$1593 = $$05921405;
+            $$1607 = $$06061401;
+            $$1609 = $$06081400;
+            $$1611 = $$06101399;
+            $$1614 = $$06131398;
+            $$1616 = $$06151397;
+            $$1629 = $$06281395;
+            $$2596 = 0;
+            $$2599 = $$1598;
+            $$3587 = $$05841407;
+            $$3591 = $$05881406;
+            $$4605 = $$06011402;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+            break;
+           }
+          default:
+           {
+            label = 112;
+            break L18;
+           }
+          }
+         }
+         $214 = $$06131398 & 1;
+         $215 = ($214 | 0) == 0;
+         if (!$215) {
+          label = 87;
+          break L18;
+         }
+         $219 = ($$06131398 | 0) / 2 & -1;
+         $220 = $$sroa$0$3;
+         $221 = $$sroa$81$2 - $$sroa$0$3 | 0;
+         $222 = $219 + 3 | 0;
+         $223 = $222 + $221 | 0;
+         $224 = $223 >>> 0 < $$sroa$47$2 >>> 0;
+         do {
+          if ($224) {
+           $$sroa$0$5877$ph = $$sroa$0$3;
+           $$sroa$47$4876$ph = $$sroa$47$2;
+           $$sroa$81$5875$ph = $$sroa$81$2;
+          } else {
+           $225 = $219 << 1;
+           $226 = $225 + 6 | 0;
+           $227 = $226 + $$sroa$47$2 | 0;
+           $228 = $227 >>> 0 > $$sroa$47$2 >>> 0;
+           if (!$228) {
+            $$1$i693882 = 67;
+            label = 93;
+            break L18;
+           }
+           $229 = __gcry_realloc($220, $227) | 0;
+           $230 = ($229 | 0) == (0 | 0);
+           if ($230) {
+            $234 = ___errno_location() | 0;
+            $235 = SAFE_HEAP_LOAD($234 | 0, 4, 0) | 0 | 0;
+            $236 = _gpg_err_code_from_errno($235) | 0;
+            $237 = ($236 | 0) == 0;
+            if ($237) {
+             $$sroa$0$5877$ph = $$sroa$0$3;
+             $$sroa$47$4876$ph = $$sroa$47$2;
+             $$sroa$81$5875$ph = $$sroa$81$2;
+             break;
+            } else {
+             $$1$i693882 = $236;
+             label = 93;
+             break L18;
+            }
+           } else {
+            $231 = $229 + $221 | 0;
+            $232 = $231;
+            $233 = $229;
+            $$sroa$0$5877$ph = $233;
+            $$sroa$47$4876$ph = $227;
+            $$sroa$81$5875$ph = $232;
+            break;
+           }
+          }
+         } while (0);
+         $241 = $$sroa$81$5875$ph;
+         $242 = $241 + 1 | 0;
+         SAFE_HEAP_STORE($241 >> 0 | 0, 1 | 0, 1);
+         $243 = $219 & 65535;
+         SAFE_HEAP_STORE($242 >> 0 | 0, $243 & 255 | 0, 1);
+         SAFE_HEAP_STORE($242 + 1 >> 0 | 0, $243 >> 8 | 0, 1);
+         $244 = $241 + 3 | 0;
+         $245 = $244;
+         $$160213781387 = $$06011402 + 1 | 0;
+         $246 = $$160213781387 >>> 0 < $$05841407 >>> 0;
+         if ($246) {
+          $$0601$pn$ph1389 = $$06011402;
+          $$160213781390 = $$160213781387;
+          $$sroa$81$6$ph1388 = $245;
+         } else {
+          $$1593 = $$05921405;
+          $$1607 = $$06061401;
+          $$1609 = $$06081400;
+          $$1611 = $$06101399;
+          $$1614 = $$06131398;
+          $$1616 = $$06151397;
+          $$1629 = $$06281395;
+          $$2596 = 0;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = 0;
+          $$9626 = $$06171396;
+          $$sroa$0$27 = $$sroa$0$5877$ph;
+          $$sroa$47$19 = $$sroa$47$4876$ph;
+          $$sroa$81$31 = $245;
+          break;
+         }
+         while (1) {
+          $$0601$pn1379 = $$0601$pn$ph1389;
+          $$16021380 = $$160213781390;
+          L123 : while (1) {
+           $$1602$val = SAFE_HEAP_LOAD($$16021380 >> 0 | 0, 1, 0) | 0 | 0;
+           $247 = $$1602$val << 24 >> 24;
+           switch ($247 | 0) {
+           case 10:
+           case 13:
+           case 12:
+           case 11:
+           case 9:
+           case 32:
+            {
+             break;
+            }
+           default:
+            {
+             break L123;
+            }
+           }
+           $$1602 = $$16021380 + 1 | 0;
+           $248 = $$1602 >>> 0 < $$05841407 >>> 0;
+           if ($248) {
+            $$0601$pn1379$phi = $$16021380;
+            $$16021380 = $$1602;
+            $$0601$pn1379 = $$0601$pn1379$phi;
+           } else {
+            $$1593 = $$05921405;
+            $$1607 = $$06061401;
+            $$1609 = $$06081400;
+            $$1611 = $$06101399;
+            $$1614 = $$06131398;
+            $$1616 = $$06151397;
+            $$1629 = $$06281395;
+            $$2596 = 0;
+            $$2599 = $$1598;
+            $$3587 = $$05841407;
+            $$3591 = $$05881406;
+            $$4605 = 0;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$5877$ph;
+            $$sroa$47$19 = $$sroa$47$4876$ph;
+            $$sroa$81$31 = $$sroa$81$6$ph1388;
+            break L30;
+           }
+          }
+          $249 = $$1602$val & 255;
+          $$off$i695 = $249 + -48 | 0;
+          $250 = $$off$i695 >>> 0 < 10;
+          do {
+           if ($250) {
+            $261 = $$off$i695;
+           } else {
+            $$off13$i = $249 + -65 | 0;
+            $251 = $$off13$i >>> 0 < 6;
+            if ($251) {
+             $252 = $249 + -55 | 0;
+             $261 = $252;
+             break;
+            } else {
+             $$off14$i = $249 + -97 | 0;
+             $253 = $$off14$i >>> 0 < 6;
+             $254 = $249 + -87 | 0;
+             $$$i = $253 ? $254 : 0;
+             $261 = $$$i;
+             break;
+            }
+           }
+          } while (0);
+          $255 = $$0601$pn1379 + 2 | 0;
+          $256 = $255 >>> 0 < $$05841407 >>> 0;
+          L133 : do {
+           if ($256) {
+            $$26031384 = $255;
+            L134 : while (1) {
+             $$2603$val = SAFE_HEAP_LOAD($$26031384 >> 0 | 0, 1, 0) | 0 | 0;
+             $257 = $$2603$val << 24 >> 24;
+             switch ($257 | 0) {
+             case 10:
+             case 13:
+             case 12:
+             case 11:
+             case 9:
+             case 32:
+              {
+               break;
+              }
+             default:
+              {
+               break L134;
+              }
+             }
+             $258 = $$26031384 + 1 | 0;
+             $259 = $258 >>> 0 < $$05841407 >>> 0;
+             if ($259) {
+              $$26031384 = $258;
+             } else {
+              $$0657 = $261;
+              $$26031123 = $258;
+              break L133;
+             }
+            }
+            $260 = $261 << 4;
+            $262 = $$2603$val & 255;
+            $$off$i699 = $262 + -48 | 0;
+            $263 = $$off$i699 >>> 0 < 10;
+            do {
+             if ($263) {
+              $269 = $$off$i699;
+             } else {
+              $$off13$i700 = $262 + -65 | 0;
+              $264 = $$off13$i700 >>> 0 < 6;
+              if ($264) {
+               $265 = $262 + -55 | 0;
+               $269 = $265;
+               break;
+              } else {
+               $$off14$i701 = $262 + -97 | 0;
+               $266 = $$off14$i701 >>> 0 < 6;
+               $267 = $262 + -87 | 0;
+               $$$i702 = $266 ? $267 : 0;
+               $269 = $$$i702;
+               break;
+              }
+             }
+            } while (0);
+            $268 = $269 + $260 | 0;
+            $$0657 = $268;
+            $$26031123 = $$26031384;
+           } else {
+            $$0657 = $261;
+            $$26031123 = $255;
+           }
+          } while (0);
+          $270 = $$0657 & 255;
+          $271 = $$sroa$81$6$ph1388;
+          $272 = $271 + 1 | 0;
+          $273 = $272;
+          SAFE_HEAP_STORE($271 >> 0 | 0, $270 | 0, 1);
+          $$16021378 = $$26031123 + 1 | 0;
+          $274 = $$16021378 >>> 0 < $$05841407 >>> 0;
+          if ($274) {
+           $$0601$pn$ph1389 = $$26031123;
+           $$160213781390 = $$16021378;
+           $$sroa$81$6$ph1388 = $273;
+          } else {
+           $$1593 = $$05921405;
+           $$1607 = $$06061401;
+           $$1609 = $$06081400;
+           $$1611 = $$06101399;
+           $$1614 = $$06131398;
+           $$1616 = $$06151397;
+           $$1629 = $$06281395;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$5877$ph;
+           $$sroa$47$19 = $$sroa$47$4876$ph;
+           $$sroa$81$31 = $273;
+           break L30;
+          }
+         }
+        }
+        $278 = ($$06061401 | 0) == (0 | 0);
+        if (!$278) {
+         $279 = SAFE_HEAP_LOAD($$05841407 >> 0 | 0, 1, 0) | 0 | 0;
+         $280 = $279 << 24 >> 24 == 124;
+         $$$0606 = $280 ? 0 : $$06061401;
+         $$1593 = $$05921405;
+         $$1607 = $$$0606;
+         $$1609 = $$06081400;
+         $$1611 = $$06101399;
+         $$1614 = $$06131398;
+         $$1616 = $$06151397;
+         $$1629 = $$06281395;
+         $$2596 = 0;
+         $$2599 = $$1598;
+         $$3587 = $$05841407;
+         $$3591 = $$05881406;
+         $$4605 = 0;
+         $$9626 = $$06171396;
+         $$sroa$0$27 = $$sroa$0$3;
+         $$sroa$47$19 = $$sroa$47$2;
+         $$sroa$81$31 = $$sroa$81$2;
+         break;
+        }
+        $281 = ($$05921405 | 0) == (0 | 0);
+        if (!$281) {
+         $282 = SAFE_HEAP_LOAD($$05841407 >> 0 | 0, 1, 0) | 0 | 0;
+         $$off1097 = $282 + -48 << 24 >> 24;
+         $283 = ($$off1097 & 255) < 10;
+         if ($283) {
+          $$1593 = $$05921405;
+          $$1607 = 0;
+          $$1609 = $$06081400;
+          $$1611 = $$06101399;
+          $$1614 = $$06131398;
+          $$1616 = $$06151397;
+          $$1629 = $$06281395;
+          $$2596 = 0;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = 0;
+          $$9626 = $$06171396;
+          $$sroa$0$27 = $$sroa$0$3;
+          $$sroa$47$19 = $$sroa$47$2;
+          $$sroa$81$31 = $$sroa$81$2;
+          break;
+         }
+         switch ($282 << 24 >> 24) {
+         case 34:
+          {
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = $$06081400;
+           $$1611 = $$06101399;
+           $$1614 = $$06131398;
+           $$1616 = 0;
+           $$1629 = $$06281395;
+           $$2596 = $$05841407;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$3;
+           $$sroa$47$19 = $$sroa$47$2;
+           $$sroa$81$31 = $$sroa$81$2;
+           break L30;
+           break;
+          }
+         case 58:
+          {
+           $284 = _atoi($$05921405) | 0;
+           $285 = $$05881406 + -1 | 0;
+           $286 = $284 >>> 0 > $285 >>> 0;
+           if ($286) {
+            label = 119;
+            break L18;
+           }
+           $290 = $$sroa$0$3;
+           $291 = $$sroa$81$2 - $$sroa$0$3 | 0;
+           $292 = $291 + 3 | 0;
+           $293 = $292 + $284 | 0;
+           $294 = $293 >>> 0 < $$sroa$47$2 >>> 0;
+           do {
+            if ($294) {
+             $$sroa$0$6891$ph = $$sroa$0$3;
+             $$sroa$47$5890$ph = $$sroa$47$2;
+             $$sroa$81$7889$ph = $$sroa$81$2;
+            } else {
+             $295 = $284 << 1;
+             $296 = $$sroa$47$2 + 6 | 0;
+             $297 = $296 + $295 | 0;
+             $298 = $297 >>> 0 > $$sroa$47$2 >>> 0;
+             if (!$298) {
+              $$1$i707896 = 67;
+              label = 125;
+              break L18;
+             }
+             $299 = __gcry_realloc($290, $297) | 0;
+             $300 = ($299 | 0) == (0 | 0);
+             if ($300) {
+              $304 = ___errno_location() | 0;
+              $305 = SAFE_HEAP_LOAD($304 | 0, 4, 0) | 0 | 0;
+              $306 = _gpg_err_code_from_errno($305) | 0;
+              $307 = ($306 | 0) == 0;
+              if ($307) {
+               $$sroa$0$6891$ph = $$sroa$0$3;
+               $$sroa$47$5890$ph = $$sroa$47$2;
+               $$sroa$81$7889$ph = $$sroa$81$2;
+               break;
+              } else {
+               $$1$i707896 = $306;
+               label = 125;
+               break L18;
+              }
+             } else {
+              $301 = $299 + $291 | 0;
+              $302 = $301;
+              $303 = $299;
+              $$sroa$0$6891$ph = $303;
+              $$sroa$47$5890$ph = $297;
+              $$sroa$81$7889$ph = $302;
+              break;
+             }
+            }
+           } while (0);
+           $311 = $$sroa$81$7889$ph;
+           $312 = $311 + 1 | 0;
+           SAFE_HEAP_STORE($311 >> 0 | 0, 1 | 0, 1);
+           $313 = $284 & 65535;
+           SAFE_HEAP_STORE($312 >> 0 | 0, $313 & 255 | 0, 1);
+           SAFE_HEAP_STORE($312 + 1 >> 0 | 0, $313 >> 8 | 0, 1);
+           $314 = $311 + 3 | 0;
+           $315 = $$05841407 + 1 | 0;
+           _memcpy($314 | 0, $315 | 0, $284 | 0) | 0;
+           $316 = $314 + $284 | 0;
+           $317 = $316;
+           $318 = $$05881406 - $284 | 0;
+           $319 = $$05841407 + $284 | 0;
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = $$06081400;
+           $$1611 = $$06101399;
+           $$1614 = $$06131398;
+           $$1616 = $$06151397;
+           $$1629 = $$06281395;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $319;
+           $$3591 = $318;
+           $$4605 = 0;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$6891$ph;
+           $$sroa$47$19 = $$sroa$47$5890$ph;
+           $$sroa$81$31 = $317;
+           break L30;
+           break;
+          }
+         case 35:
+          {
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = $$06081400;
+           $$1611 = $$06101399;
+           $$1614 = 0;
+           $$1616 = $$06151397;
+           $$1629 = $$06281395;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = $$05841407;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$3;
+           $$sroa$47$19 = $$sroa$47$2;
+           $$sroa$81$31 = $$sroa$81$2;
+           break L30;
+           break;
+          }
+         case 124:
+          {
+           $$1593 = 0;
+           $$1607 = $$05841407;
+           $$1609 = $$06081400;
+           $$1611 = $$06101399;
+           $$1614 = $$06131398;
+           $$1616 = $$06151397;
+           $$1629 = $$06281395;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$3;
+           $$sroa$47$19 = $$sroa$47$2;
+           $$sroa$81$31 = $$sroa$81$2;
+           break L30;
+           break;
+          }
+         default:
+          {
+           label = 129;
+           break L18;
+          }
+         }
+        }
+        $323 = ($$06101399 | 0) == (0 | 0);
+        $324 = SAFE_HEAP_LOAD($$05841407 >> 0 | 0, 1, 0) | 0 | 0;
+        if ($323) {
+         switch ($324 << 24 >> 24) {
+         case 34:
+          {
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = $$06081400;
+           $$1611 = 0;
+           $$1614 = $$06131398;
+           $$1616 = 0;
+           $$1629 = $$06281395;
+           $$2596 = $$05841407;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$3;
+           $$sroa$47$19 = $$sroa$47$2;
+           $$sroa$81$31 = $$sroa$81$2;
+           break L30;
+           break;
+          }
+         case 40:
+          {
+           $682 = ($$06081400 | 0) == (0 | 0);
+           if (!$682) {
+            label = 239;
+            break L18;
+           }
+           $686 = $$sroa$0$3;
+           $687 = $$sroa$81$2 - $$sroa$0$3 | 0;
+           $688 = $687 + 3 | 0;
+           $689 = $688 >>> 0 < $$sroa$47$2 >>> 0;
+           do {
+            if ($689) {
+             $$sroa$0$251041$ph = $$sroa$0$3;
+             $$sroa$47$171040$ph = $$sroa$47$2;
+             $$sroa$81$291039$ph = $$sroa$81$2;
+            } else {
+             $690 = $$sroa$47$2 + 6 | 0;
+             $691 = $$sroa$47$2 >>> 0 < 4294967290;
+             if (!$691) {
+              $$1$i7241046 = 67;
+              label = 245;
+              break L18;
+             }
+             $692 = __gcry_realloc($686, $690) | 0;
+             $693 = ($692 | 0) == (0 | 0);
+             if ($693) {
+              $697 = ___errno_location() | 0;
+              $698 = SAFE_HEAP_LOAD($697 | 0, 4, 0) | 0 | 0;
+              $699 = _gpg_err_code_from_errno($698) | 0;
+              $700 = ($699 | 0) == 0;
+              if ($700) {
+               $$sroa$0$251041$ph = $$sroa$0$3;
+               $$sroa$47$171040$ph = $$sroa$47$2;
+               $$sroa$81$291039$ph = $$sroa$81$2;
+               break;
+              } else {
+               $$1$i7241046 = $699;
+               label = 245;
+               break L18;
+              }
+             } else {
+              $694 = $692 + $687 | 0;
+              $695 = $694;
+              $696 = $692;
+              $$sroa$0$251041$ph = $696;
+              $$sroa$47$171040$ph = $690;
+              $$sroa$81$291039$ph = $695;
+              break;
+             }
+            }
+           } while (0);
+           $704 = $$sroa$81$291039$ph;
+           $705 = $704 + 1 | 0;
+           $706 = $705;
+           SAFE_HEAP_STORE($704 >> 0 | 0, 3 | 0, 1);
+           $707 = $$06281395 + 1 | 0;
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = 0;
+           $$1611 = 0;
+           $$1614 = $$06131398;
+           $$1616 = $$06151397;
+           $$1629 = $707;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$251041$ph;
+           $$sroa$47$19 = $$sroa$47$171040$ph;
+           $$sroa$81$31 = $706;
+           break L30;
+           break;
+          }
+         case 41:
+          {
+           $708 = ($$06081400 | 0) == (0 | 0);
+           if (!$708) {
+            label = 248;
+            break L18;
+           }
+           $712 = $$sroa$0$3;
+           $713 = $$sroa$81$2 - $$sroa$0$3 | 0;
+           $714 = $713 + 3 | 0;
+           $715 = $714 >>> 0 < $$sroa$47$2 >>> 0;
+           do {
+            if ($715) {
+             $$sroa$0$261056$ph = $$sroa$0$3;
+             $$sroa$47$181055$ph = $$sroa$47$2;
+             $$sroa$81$301054$ph = $$sroa$81$2;
+            } else {
+             $716 = $$sroa$47$2 + 6 | 0;
+             $717 = $$sroa$47$2 >>> 0 < 4294967290;
+             if (!$717) {
+              $$1$i7261061 = 67;
+              label = 254;
+              break L18;
+             }
+             $718 = __gcry_realloc($712, $716) | 0;
+             $719 = ($718 | 0) == (0 | 0);
+             if ($719) {
+              $723 = ___errno_location() | 0;
+              $724 = SAFE_HEAP_LOAD($723 | 0, 4, 0) | 0 | 0;
+              $725 = _gpg_err_code_from_errno($724) | 0;
+              $726 = ($725 | 0) == 0;
+              if ($726) {
+               $$sroa$0$261056$ph = $$sroa$0$3;
+               $$sroa$47$181055$ph = $$sroa$47$2;
+               $$sroa$81$301054$ph = $$sroa$81$2;
+               break;
+              } else {
+               $$1$i7261061 = $725;
+               label = 254;
+               break L18;
+              }
+             } else {
+              $720 = $718 + $713 | 0;
+              $721 = $720;
+              $722 = $718;
+              $$sroa$0$261056$ph = $722;
+              $$sroa$47$181055$ph = $716;
+              $$sroa$81$301054$ph = $721;
+              break;
+             }
+            }
+           } while (0);
+           $730 = $$sroa$81$301054$ph;
+           $731 = $730 + 1 | 0;
+           $732 = $731;
+           SAFE_HEAP_STORE($730 >> 0 | 0, 4 | 0, 1);
+           $733 = $$06281395 + -1 | 0;
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = 0;
+           $$1611 = 0;
+           $$1614 = $$06131398;
+           $$1616 = $$06151397;
+           $$1629 = $733;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$261056$ph;
+           $$sroa$47$19 = $$sroa$47$181055$ph;
+           $$sroa$81$31 = $732;
+           break L30;
+           break;
+          }
+         case 35:
+          {
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = $$06081400;
+           $$1611 = 0;
+           $$1614 = 0;
+           $$1616 = $$06151397;
+           $$1629 = $$06281395;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = $$05841407;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$3;
+           $$sroa$47$19 = $$sroa$47$2;
+           $$sroa$81$31 = $$sroa$81$2;
+           break L30;
+           break;
+          }
+         case 124:
+          {
+           $$1593 = 0;
+           $$1607 = $$05841407;
+           $$1609 = $$06081400;
+           $$1611 = 0;
+           $$1614 = $$06131398;
+           $$1616 = $$06151397;
+           $$1629 = $$06281395;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$06171396;
+           $$sroa$0$27 = $$sroa$0$3;
+           $$sroa$47$19 = $$sroa$47$2;
+           $$sroa$81$31 = $$sroa$81$2;
+           break L30;
+           break;
+          }
+         case 91:
+          {
+           $734 = ($$06081400 | 0) == (0 | 0);
+           if ($734) {
+            $$1593 = 0;
+            $$1607 = 0;
+            $$1609 = $$05841407;
+            $$1611 = 0;
+            $$1614 = $$06131398;
+            $$1616 = $$06151397;
+            $$1629 = $$06281395;
+            $$2596 = 0;
+            $$2599 = $$1598;
+            $$3587 = $$05841407;
+            $$3591 = $$05881406;
+            $$4605 = 0;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+           } else {
+            label = 259;
+            break L18;
+           }
+           break;
+          }
+         case 93:
+          {
+           $738 = ($$06081400 | 0) == (0 | 0);
+           if ($738) {
+            label = 261;
+            break L18;
+           } else {
+            $$1593 = 0;
+            $$1607 = 0;
+            $$1609 = 0;
+            $$1611 = 0;
+            $$1614 = $$06131398;
+            $$1616 = $$06151397;
+            $$1629 = $$06281395;
+            $$2596 = 0;
+            $$2599 = $$1598;
+            $$3587 = $$05841407;
+            $$3591 = $$05881406;
+            $$4605 = 0;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+           }
+           break;
+          }
+         default:
+          {
+           $$off1098 = $324 + -48 << 24 >> 24;
+           $742 = ($$off1098 & 255) < 10;
+           if ($742) {
+            $743 = $324 << 24 >> 24 == 48;
+            if ($743) {
+             label = 264;
+             break L18;
+            } else {
+             $$1593 = $$05841407;
+             $$1607 = 0;
+             $$1609 = $$06081400;
+             $$1611 = 0;
+             $$1614 = $$06131398;
+             $$1616 = $$06151397;
+             $$1629 = $$06281395;
+             $$2596 = 0;
+             $$2599 = $$1598;
+             $$3587 = $$05841407;
+             $$3591 = $$05881406;
+             $$4605 = 0;
+             $$9626 = $$06171396;
+             $$sroa$0$27 = $$sroa$0$3;
+             $$sroa$47$19 = $$sroa$47$2;
+             $$sroa$81$31 = $$sroa$81$2;
+             break L30;
+            }
+           }
+           $747 = $324 << 24 >> 24;
+           $memchr663 = _memchr(22485, $747, 71) | 0;
+           $748 = ($memchr663 | 0) == (0 | 0);
+           if (!$748) {
+            $$1593 = 0;
+            $$1607 = 0;
+            $$1609 = $$06081400;
+            $$1611 = 0;
+            $$1614 = $$06131398;
+            $$1616 = $$06151397;
+            $$1629 = $$06281395;
+            $$2596 = 0;
+            $$2599 = $$05841407;
+            $$3587 = $$05841407;
+            $$3591 = $$05881406;
+            $$4605 = 0;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+           }
+           switch ($747 | 0) {
+           case 10:
+           case 13:
+           case 12:
+           case 11:
+           case 9:
+           case 32:
+            {
+             $$1593 = 0;
+             $$1607 = 0;
+             $$1609 = $$06081400;
+             $$1611 = 0;
+             $$1614 = $$06131398;
+             $$1616 = $$06151397;
+             $$1629 = $$06281395;
+             $$2596 = 0;
+             $$2599 = $$1598;
+             $$3587 = $$05841407;
+             $$3591 = $$05881406;
+             $$4605 = 0;
+             $$9626 = $$06171396;
+             $$sroa$0$27 = $$sroa$0$3;
+             $$sroa$47$19 = $$sroa$47$2;
+             $$sroa$81$31 = $$sroa$81$2;
+             break L30;
+             break;
+            }
+           default:
+            {}
+           }
+           $749 = $324 << 24 >> 24 == 123;
+           if ($749) {
+            label = 268;
+            break L18;
+           }
+           $memchr664 = _memchr(22584, $747, 3) | 0;
+           $753 = ($memchr664 | 0) == (0 | 0);
+           if (!$753) {
+            label = 270;
+            break L18;
+           }
+           $757 = $324 << 24 >> 24 == 37;
+           $or$cond1089 = $26 & $757;
+           if ($or$cond1089) {
+            $$1593 = 0;
+            $$1607 = 0;
+            $$1609 = $$06081400;
+            $$1611 = $$05841407;
+            $$1614 = $$06131398;
+            $$1616 = $$06151397;
+            $$1629 = $$06281395;
+            $$2596 = 0;
+            $$2599 = $$1598;
+            $$3587 = $$05841407;
+            $$3591 = $$05881406;
+            $$4605 = 0;
+            $$9626 = $$06171396;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+           } else {
+            label = 272;
+            break L18;
+           }
+          }
+         }
+        }
+        switch ($324 << 24 >> 24) {
+        case 77:
+        case 109:
+         {
+          SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+          $325 = SAFE_HEAP_LOAD($$05841407 >> 0 | 0, 1, 0) | 0 | 0;
+          $326 = $325 << 24 >> 24 == 109;
+          $327 = $326 ? 1 : 5;
+          if ($27) {
+           $arglist_current = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+           $328 = $arglist_current;
+           $329 = 0 + 4 | 0;
+           $expanded22 = $329;
+           $expanded = $expanded22 - 1 | 0;
+           $330 = $328 + $expanded | 0;
+           $331 = 0 + 4 | 0;
+           $expanded26 = $331;
+           $expanded25 = $expanded26 - 1 | 0;
+           $expanded24 = $expanded25 ^ -1;
+           $332 = $330 & $expanded24;
+           $333 = $332;
+           $334 = SAFE_HEAP_LOAD($333 | 0, 4, 0) | 0 | 0;
+           $arglist_next = $333 + 4 | 0;
+           SAFE_HEAP_STORE($6 | 0, $arglist_next | 0, 4);
+           $$0658 = $334;
+           $$1618 = $$06171396;
+          } else {
+           $335 = $$06171396 + 1 | 0;
+           $336 = $5 + ($$06171396 << 2) | 0;
+           $337 = SAFE_HEAP_LOAD($336 | 0, 4, 0) | 0 | 0;
+           $338 = SAFE_HEAP_LOAD($337 | 0, 4, 0) | 0 | 0;
+           $$0658 = $338;
+           $$1618 = $335;
+          }
+          $339 = __gcry_mpi_get_flag($$0658, 2) | 0;
+          $340 = ($339 | 0) == 0;
+          if ($340) {
+           $391 = __gcry_mpi_print($327, 0, 0, $8, $$0658) | 0;
+           $392 = ($391 | 0) == 0;
+           if (!$392) {
+            label = 152;
+            break L18;
+           }
+           $393 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+           $394 = $$sroa$0$3;
+           $395 = $$sroa$81$2 - $$sroa$0$3 | 0;
+           $396 = $395 + 3 | 0;
+           $397 = $396 + $393 | 0;
+           $398 = $397 >>> 0 < $$sroa$47$2 >>> 0;
+           do {
+            if ($398) {
+             $$sroa$0$11924$ph = $$sroa$0$3;
+             $$sroa$47$8922$ph = $$sroa$47$2;
+             $$sroa$81$12921$ph = $$sroa$81$2;
+            } else {
+             $399 = $393 << 1;
+             $400 = $$sroa$47$2 + 6 | 0;
+             $401 = $400 + $399 | 0;
+             $402 = $401 >>> 0 > $$sroa$47$2 >>> 0;
+             if (!$402) {
+              $$1$i711929 = 67;
+              label = 158;
+              break L18;
+             }
+             $403 = __gcry_realloc($394, $401) | 0;
+             $404 = ($403 | 0) == (0 | 0);
+             if ($404) {
+              $408 = ___errno_location() | 0;
+              $409 = SAFE_HEAP_LOAD($408 | 0, 4, 0) | 0 | 0;
+              $410 = _gpg_err_code_from_errno($409) | 0;
+              $411 = ($410 | 0) == 0;
+              if ($411) {
+               $$sroa$0$11924$ph = $$sroa$0$3;
+               $$sroa$47$8922$ph = $$sroa$47$2;
+               $$sroa$81$12921$ph = $$sroa$81$2;
+               break;
+              } else {
+               $$1$i711929 = $410;
+               label = 158;
+               break L18;
+              }
+             } else {
+              $405 = $403 + $395 | 0;
+              $406 = $405;
+              $407 = $403;
+              $$sroa$0$11924$ph = $407;
+              $$sroa$47$8922$ph = $401;
+              $$sroa$81$12921$ph = $406;
+              break;
+             }
+            }
+           } while (0);
+           $415 = $$sroa$0$11924$ph;
+           $416 = __gcry_is_secure($415) | 0;
+           $417 = ($416 | 0) == 0;
+           do {
+            if ($417) {
+             $418 = __gcry_mpi_get_flag($$0658, 1) | 0;
+             $419 = ($418 | 0) == 0;
+             if ($419) {
+              $$sroa$0$13 = $$sroa$0$11924$ph;
+              $$sroa$81$14 = $$sroa$81$12921$ph;
+              break;
+             }
+             $420 = __gcry_malloc_secure($$sroa$47$8922$ph) | 0;
+             $421 = ($420 | 0) == (0 | 0);
+             if ($421) {
+              label = 163;
+              break L18;
+             }
+             $422 = $$sroa$81$12921$ph - $$sroa$0$11924$ph | 0;
+             _memcpy($420 | 0, $415 | 0, $422 | 0) | 0;
+             $423 = $420 + $422 | 0;
+             $424 = $423;
+             $$cast665 = $$sroa$0$11924$ph;
+             __gcry_free($$cast665);
+             $425 = $420;
+             $$sroa$0$13 = $425;
+             $$sroa$81$14 = $424;
+            } else {
+             $$sroa$0$13 = $$sroa$0$11924$ph;
+             $$sroa$81$14 = $$sroa$81$12921$ph;
+            }
+           } while (0);
+           $429 = $$sroa$81$14;
+           $430 = $429 + 1 | 0;
+           SAFE_HEAP_STORE($429 >> 0 | 0, 1 | 0, 1);
+           $431 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+           $432 = $431 & 65535;
+           SAFE_HEAP_STORE($430 >> 0 | 0, $432 & 255 | 0, 1);
+           SAFE_HEAP_STORE($430 + 1 >> 0 | 0, $432 >> 8 | 0, 1);
+           $433 = $429 + 3 | 0;
+           $434 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+           $435 = __gcry_mpi_print($327, $433, $434, $8, $$0658) | 0;
+           $436 = ($435 | 0) == 0;
+           if (!$436) {
+            label = 165;
+            break L18;
+           }
+           $437 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+           $438 = $433 + $437 | 0;
+           $439 = $438;
+           $$sroa$0$15 = $$sroa$0$13;
+           $$sroa$47$10 = $$sroa$47$8922$ph;
+           $$sroa$81$16 = $439;
+          } else {
+           $341 = __gcry_mpi_get_opaque($$0658, $9) | 0;
+           $342 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+           $343 = $342 + 7 | 0;
+           $344 = $343 >>> 3;
+           SAFE_HEAP_STORE($8 | 0, $344 | 0, 4);
+           $345 = ($341 | 0) != (0 | 0);
+           $346 = ($344 | 0) != 0;
+           $or$cond14 = $345 & $346;
+           if ($or$cond14) {
+            $347 = $$sroa$0$3;
+            $348 = $$sroa$81$2 - $$sroa$0$3 | 0;
+            $349 = $348 + 3 | 0;
+            $350 = $349 + $344 | 0;
+            $351 = $350 >>> 0 < $$sroa$47$2 >>> 0;
+            do {
+             if ($351) {
+              $$sroa$0$7905$ph = $$sroa$0$3;
+              $$sroa$47$6904$ph = $$sroa$47$2;
+              $$sroa$81$8903$ph = $$sroa$81$2;
+             } else {
+              $352 = $344 << 1;
+              $353 = $$sroa$47$2 + 6 | 0;
+              $354 = $353 + $352 | 0;
+              $355 = $354 >>> 0 > $$sroa$47$2 >>> 0;
+              if (!$355) {
+               $$1$i709910 = 67;
+               label = 142;
+               break L18;
+              }
+              $356 = __gcry_realloc($347, $354) | 0;
+              $357 = ($356 | 0) == (0 | 0);
+              if ($357) {
+               $361 = ___errno_location() | 0;
+               $362 = SAFE_HEAP_LOAD($361 | 0, 4, 0) | 0 | 0;
+               $363 = _gpg_err_code_from_errno($362) | 0;
+               $364 = ($363 | 0) == 0;
+               if ($364) {
+                $$sroa$0$7905$ph = $$sroa$0$3;
+                $$sroa$47$6904$ph = $$sroa$47$2;
+                $$sroa$81$8903$ph = $$sroa$81$2;
+                break;
+               } else {
+                $$1$i709910 = $363;
+                label = 142;
+                break L18;
+               }
+              } else {
+               $358 = $356 + $348 | 0;
+               $359 = $358;
+               $360 = $356;
+               $$sroa$0$7905$ph = $360;
+               $$sroa$47$6904$ph = $354;
+               $$sroa$81$8903$ph = $359;
+               break;
+              }
+             }
+            } while (0);
+            $368 = $$sroa$0$7905$ph;
+            $369 = __gcry_is_secure($368) | 0;
+            $370 = ($369 | 0) == 0;
+            do {
+             if ($370) {
+              $371 = __gcry_mpi_get_flag($$0658, 1) | 0;
+              $372 = ($371 | 0) == 0;
+              if ($372) {
+               $$sroa$0$9 = $$sroa$0$7905$ph;
+               $$sroa$81$10 = $$sroa$81$8903$ph;
+               break;
+              }
+              $373 = __gcry_malloc_secure($$sroa$47$6904$ph) | 0;
+              $374 = ($373 | 0) == (0 | 0);
+              if ($374) {
+               label = 147;
+               break L18;
+              }
+              $375 = $$sroa$81$8903$ph - $$sroa$0$7905$ph | 0;
+              _memcpy($373 | 0, $368 | 0, $375 | 0) | 0;
+              $376 = $373 + $375 | 0;
+              $377 = $376;
+              $$cast666 = $$sroa$0$7905$ph;
+              __gcry_free($$cast666);
+              $378 = $373;
+              $$sroa$0$9 = $378;
+              $$sroa$81$10 = $377;
+             } else {
+              $$sroa$0$9 = $$sroa$0$7905$ph;
+              $$sroa$81$10 = $$sroa$81$8903$ph;
+             }
+            } while (0);
+            $382 = $$sroa$81$10;
+            $383 = $382 + 1 | 0;
+            SAFE_HEAP_STORE($382 >> 0 | 0, 1 | 0, 1);
+            $384 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+            $385 = $384 & 65535;
+            SAFE_HEAP_STORE($383 >> 0 | 0, $385 & 255 | 0, 1);
+            SAFE_HEAP_STORE($383 + 1 >> 0 | 0, $385 >> 8 | 0, 1);
+            $386 = $382 + 3 | 0;
+            $387 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+            _memcpy($386 | 0, $341 | 0, $387 | 0) | 0;
+            $388 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+            $389 = $386 + $388 | 0;
+            $390 = $389;
+            $$sroa$0$10$ph = $$sroa$0$9;
+            $$sroa$47$7$ph = $$sroa$47$6904$ph;
+            $$sroa$81$11$ph = $390;
+           } else {
+            $$sroa$0$10$ph = $$sroa$0$3;
+            $$sroa$47$7$ph = $$sroa$47$2;
+            $$sroa$81$11$ph = $$sroa$81$2;
+           }
+           $$sroa$0$15 = $$sroa$0$10$ph;
+           $$sroa$47$10 = $$sroa$47$7$ph;
+           $$sroa$81$16 = $$sroa$81$11$ph;
+          }
+          $$1593 = 0;
+          $$1607 = 0;
+          $$1609 = $$06081400;
+          $$1611 = 0;
+          $$1614 = $$06131398;
+          $$1616 = $$06151397;
+          $$1629 = $$06281395;
+          $$2596 = 0;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = 0;
+          $$9626 = $$1618;
+          $$sroa$0$27 = $$sroa$0$15;
+          $$sroa$47$19 = $$sroa$47$10;
+          $$sroa$81$31 = $$sroa$81$16;
+          break L30;
+          break;
+         }
+        case 115:
+         {
+          if ($27) {
+           $arglist_current2 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+           $440 = $arglist_current2;
+           $441 = 0 + 4 | 0;
+           $expanded29 = $441;
+           $expanded28 = $expanded29 - 1 | 0;
+           $442 = $440 + $expanded28 | 0;
+           $443 = 0 + 4 | 0;
+           $expanded33 = $443;
+           $expanded32 = $expanded33 - 1 | 0;
+           $expanded31 = $expanded32 ^ -1;
+           $444 = $442 & $expanded31;
+           $445 = $444;
+           $446 = SAFE_HEAP_LOAD($445 | 0, 4, 0) | 0 | 0;
+           $arglist_next3 = $445 + 4 | 0;
+           SAFE_HEAP_STORE($6 | 0, $arglist_next3 | 0, 4);
+           $$0659 = $446;
+           $$2619 = $$06171396;
+          } else {
+           $447 = $$06171396 + 1 | 0;
+           $448 = $5 + ($$06171396 << 2) | 0;
+           $449 = SAFE_HEAP_LOAD($448 | 0, 4, 0) | 0 | 0;
+           $450 = SAFE_HEAP_LOAD($449 | 0, 4, 0) | 0 | 0;
+           $$0659 = $450;
+           $$2619 = $447;
+          }
+          $451 = _strlen($$0659) | 0;
+          $452 = $$sroa$0$3;
+          $453 = $$sroa$81$2 - $$sroa$0$3 | 0;
+          $454 = $453 + 3 | 0;
+          $455 = $454 + $451 | 0;
+          $456 = $455 >>> 0 < $$sroa$47$2 >>> 0;
+          do {
+           if ($456) {
+            $$sroa$0$16943$ph = $$sroa$0$3;
+            $$sroa$47$11942$ph = $$sroa$47$2;
+            $$sroa$81$17941$ph = $$sroa$81$2;
+           } else {
+            $457 = $451 << 1;
+            $458 = $$sroa$47$2 + 6 | 0;
+            $459 = $458 + $457 | 0;
+            $460 = $459 >>> 0 > $$sroa$47$2 >>> 0;
+            if (!$460) {
+             $$1$i713948 = 67;
+             label = 178;
+             break L18;
+            }
+            $461 = __gcry_realloc($452, $459) | 0;
+            $462 = ($461 | 0) == (0 | 0);
+            if ($462) {
+             $466 = ___errno_location() | 0;
+             $467 = SAFE_HEAP_LOAD($466 | 0, 4, 0) | 0 | 0;
+             $468 = _gpg_err_code_from_errno($467) | 0;
+             $469 = ($468 | 0) == 0;
+             if ($469) {
+              $$sroa$0$16943$ph = $$sroa$0$3;
+              $$sroa$47$11942$ph = $$sroa$47$2;
+              $$sroa$81$17941$ph = $$sroa$81$2;
+              break;
+             } else {
+              $$1$i713948 = $468;
+              label = 178;
+              break L18;
+             }
+            } else {
+             $463 = $461 + $453 | 0;
+             $464 = $463;
+             $465 = $461;
+             $$sroa$0$16943$ph = $465;
+             $$sroa$47$11942$ph = $459;
+             $$sroa$81$17941$ph = $464;
+             break;
+            }
+           }
+          } while (0);
+          $470 = $$sroa$81$17941$ph;
+          $471 = $470 + 1 | 0;
+          SAFE_HEAP_STORE($470 >> 0 | 0, 1 | 0, 1);
+          $472 = $451 & 65535;
+          SAFE_HEAP_STORE($471 >> 0 | 0, $472 & 255 | 0, 1);
+          SAFE_HEAP_STORE($471 + 1 >> 0 | 0, $472 >> 8 | 0, 1);
+          $473 = $470 + 3 | 0;
+          _memcpy($473 | 0, $$0659 | 0, $451 | 0) | 0;
+          $474 = $473 + $451 | 0;
+          $475 = $474;
+          $$1593 = 0;
+          $$1607 = 0;
+          $$1609 = $$06081400;
+          $$1611 = 0;
+          $$1614 = $$06131398;
+          $$1616 = $$06151397;
+          $$1629 = $$06281395;
+          $$2596 = 0;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = 0;
+          $$9626 = $$2619;
+          $$sroa$0$27 = $$sroa$0$16943$ph;
+          $$sroa$47$19 = $$sroa$47$11942$ph;
+          $$sroa$81$31 = $475;
+          break L30;
+          break;
+         }
+        case 98:
+         {
+          if ($27) {
+           $arglist_current5 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+           $479 = $arglist_current5;
+           $480 = 0 + 4 | 0;
+           $expanded36 = $480;
+           $expanded35 = $expanded36 - 1 | 0;
+           $481 = $479 + $expanded35 | 0;
+           $482 = 0 + 4 | 0;
+           $expanded40 = $482;
+           $expanded39 = $expanded40 - 1 | 0;
+           $expanded38 = $expanded39 ^ -1;
+           $483 = $481 & $expanded38;
+           $484 = $483;
+           $485 = SAFE_HEAP_LOAD($484 | 0, 4, 0) | 0 | 0;
+           $arglist_next6 = $484 + 4 | 0;
+           SAFE_HEAP_STORE($6 | 0, $arglist_next6 | 0, 4);
+           $arglist_current8 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+           $486 = $arglist_current8;
+           $487 = 0 + 4 | 0;
+           $expanded43 = $487;
+           $expanded42 = $expanded43 - 1 | 0;
+           $488 = $486 + $expanded42 | 0;
+           $489 = 0 + 4 | 0;
+           $expanded47 = $489;
+           $expanded46 = $expanded47 - 1 | 0;
+           $expanded45 = $expanded46 ^ -1;
+           $490 = $488 & $expanded45;
+           $491 = $490;
+           $492 = SAFE_HEAP_LOAD($491 | 0, 4, 0) | 0 | 0;
+           $arglist_next9 = $491 + 4 | 0;
+           SAFE_HEAP_STORE($6 | 0, $arglist_next9 | 0, 4);
+           $$0660 = $492;
+           $$0661961 = $485;
+           $$4621 = $$06171396;
+          } else {
+           $493 = $$06171396 + 1 | 0;
+           $494 = $5 + ($$06171396 << 2) | 0;
+           $495 = SAFE_HEAP_LOAD($494 | 0, 4, 0) | 0 | 0;
+           $496 = SAFE_HEAP_LOAD($495 | 0, 4, 0) | 0 | 0;
+           $497 = $$06171396 + 2 | 0;
+           $498 = $5 + ($493 << 2) | 0;
+           $499 = SAFE_HEAP_LOAD($498 | 0, 4, 0) | 0 | 0;
+           $500 = SAFE_HEAP_LOAD($499 | 0, 4, 0) | 0 | 0;
+           $$0660 = $500;
+           $$0661961 = $496;
+           $$4621 = $497;
+          }
+          $501 = $$sroa$0$3;
+          $502 = $$sroa$81$2 - $$sroa$0$3 | 0;
+          $503 = $502 + 3 | 0;
+          $504 = $503 + $$0661961 | 0;
+          $505 = $504 >>> 0 < $$sroa$47$2 >>> 0;
+          do {
+           if ($505) {
+            $$sroa$0$17966$ph = $$sroa$0$3;
+            $$sroa$47$12965$ph = $$sroa$47$2;
+            $$sroa$81$19964$ph = $$sroa$81$2;
+           } else {
+            $506 = $$0661961 << 1;
+            $507 = $$sroa$47$2 + 6 | 0;
+            $508 = $507 + $506 | 0;
+            $509 = $508 >>> 0 > $$sroa$47$2 >>> 0;
+            if (!$509) {
+             $$1$i715971 = 67;
+             label = 187;
+             break L18;
+            }
+            $510 = __gcry_realloc($501, $508) | 0;
+            $511 = ($510 | 0) == (0 | 0);
+            if ($511) {
+             $515 = ___errno_location() | 0;
+             $516 = SAFE_HEAP_LOAD($515 | 0, 4, 0) | 0 | 0;
+             $517 = _gpg_err_code_from_errno($516) | 0;
+             $518 = ($517 | 0) == 0;
+             if ($518) {
+              $$sroa$0$17966$ph = $$sroa$0$3;
+              $$sroa$47$12965$ph = $$sroa$47$2;
+              $$sroa$81$19964$ph = $$sroa$81$2;
+              break;
+             } else {
+              $$1$i715971 = $517;
+              label = 187;
+              break L18;
+             }
+            } else {
+             $512 = $510 + $502 | 0;
+             $513 = $512;
+             $514 = $510;
+             $$sroa$0$17966$ph = $514;
+             $$sroa$47$12965$ph = $508;
+             $$sroa$81$19964$ph = $513;
+             break;
+            }
+           }
+          } while (0);
+          $522 = ($$0661961 | 0) == 0;
+          do {
+           if ($522) {
+            $$sroa$0$19 = $$sroa$0$17966$ph;
+            $$sroa$81$21 = $$sroa$81$19964$ph;
+           } else {
+            $523 = $$sroa$0$17966$ph;
+            $524 = __gcry_is_secure($523) | 0;
+            $525 = ($524 | 0) == 0;
+            if (!$525) {
+             $$sroa$0$19 = $$sroa$0$17966$ph;
+             $$sroa$81$21 = $$sroa$81$19964$ph;
+             break;
+            }
+            $526 = __gcry_is_secure($$0660) | 0;
+            $527 = ($526 | 0) == 0;
+            if ($527) {
+             $$sroa$0$19 = $$sroa$0$17966$ph;
+             $$sroa$81$21 = $$sroa$81$19964$ph;
+             break;
+            }
+            $528 = __gcry_malloc_secure($$sroa$47$12965$ph) | 0;
+            $529 = ($528 | 0) == (0 | 0);
+            if ($529) {
+             label = 193;
+             break L18;
+            }
+            $530 = $$sroa$81$19964$ph - $$sroa$0$17966$ph | 0;
+            _memcpy($528 | 0, $523 | 0, $530 | 0) | 0;
+            $531 = $528 + $530 | 0;
+            $532 = $531;
+            $$cast = $$sroa$0$17966$ph;
+            __gcry_free($$cast);
+            $533 = $528;
+            $$sroa$0$19 = $533;
+            $$sroa$81$21 = $532;
+           }
+          } while (0);
+          $537 = $$sroa$81$21;
+          $538 = $537 + 1 | 0;
+          SAFE_HEAP_STORE($537 >> 0 | 0, 1 | 0, 1);
+          $539 = $$0661961 & 65535;
+          SAFE_HEAP_STORE($538 >> 0 | 0, $539 & 255 | 0, 1);
+          SAFE_HEAP_STORE($538 + 1 >> 0 | 0, $539 >> 8 | 0, 1);
+          $540 = $537 + 3 | 0;
+          _memcpy($540 | 0, $$0660 | 0, $$0661961 | 0) | 0;
+          $541 = $540 + $$0661961 | 0;
+          $542 = $541;
+          $$1593 = 0;
+          $$1607 = 0;
+          $$1609 = $$06081400;
+          $$1611 = 0;
+          $$1614 = $$06131398;
+          $$1616 = $$06151397;
+          $$1629 = $$06281395;
+          $$2596 = 0;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = 0;
+          $$9626 = $$4621;
+          $$sroa$0$27 = $$sroa$0$19;
+          $$sroa$47$19 = $$sroa$47$12965$ph;
+          $$sroa$81$31 = $542;
+          break L30;
+          break;
+         }
+        case 100:
+         {
+          if ($27) {
+           $arglist_current11 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+           $543 = $arglist_current11;
+           $544 = 0 + 4 | 0;
+           $expanded50 = $544;
+           $expanded49 = $expanded50 - 1 | 0;
+           $545 = $543 + $expanded49 | 0;
+           $546 = 0 + 4 | 0;
+           $expanded54 = $546;
+           $expanded53 = $expanded54 - 1 | 0;
+           $expanded52 = $expanded53 ^ -1;
+           $547 = $545 & $expanded52;
+           $548 = $547;
+           $549 = SAFE_HEAP_LOAD($548 | 0, 4, 0) | 0 | 0;
+           $arglist_next12 = $548 + 4 | 0;
+           SAFE_HEAP_STORE($6 | 0, $arglist_next12 | 0, 4);
+           $$0627 = $549;
+           $$5622 = $$06171396;
+          } else {
+           $550 = $$06171396 + 1 | 0;
+           $551 = $5 + ($$06171396 << 2) | 0;
+           $552 = SAFE_HEAP_LOAD($551 | 0, 4, 0) | 0 | 0;
+           $553 = SAFE_HEAP_LOAD($552 | 0, 4, 0) | 0 | 0;
+           $$0627 = $553;
+           $$5622 = $550;
+          }
+          SAFE_HEAP_STORE($vararg_buffer | 0, $$0627 | 0, 4);
+          _sprintf($10, 22578, $vararg_buffer) | 0;
+          $554 = _strlen($10) | 0;
+          $555 = $$sroa$0$3;
+          $556 = $$sroa$81$2 - $$sroa$0$3 | 0;
+          $557 = $556 + 3 | 0;
+          $558 = $557 + $554 | 0;
+          $559 = $558 >>> 0 < $$sroa$47$2 >>> 0;
+          do {
+           if ($559) {
+            $$sroa$0$21986$ph = $$sroa$0$3;
+            $$sroa$47$13985$ph = $$sroa$47$2;
+            $$sroa$81$23984$ph = $$sroa$81$2;
+           } else {
+            $560 = $554 << 1;
+            $561 = $$sroa$47$2 + 6 | 0;
+            $562 = $561 + $560 | 0;
+            $563 = $562 >>> 0 > $$sroa$47$2 >>> 0;
+            if (!$563) {
+             $$1$i717991 = 67;
+             label = 204;
+             break L18;
+            }
+            $564 = __gcry_realloc($555, $562) | 0;
+            $565 = ($564 | 0) == (0 | 0);
+            if ($565) {
+             $569 = ___errno_location() | 0;
+             $570 = SAFE_HEAP_LOAD($569 | 0, 4, 0) | 0 | 0;
+             $571 = _gpg_err_code_from_errno($570) | 0;
+             $572 = ($571 | 0) == 0;
+             if ($572) {
+              $$sroa$0$21986$ph = $$sroa$0$3;
+              $$sroa$47$13985$ph = $$sroa$47$2;
+              $$sroa$81$23984$ph = $$sroa$81$2;
+              break;
+             } else {
+              $$1$i717991 = $571;
+              label = 204;
+              break L18;
+             }
+            } else {
+             $566 = $564 + $556 | 0;
+             $567 = $566;
+             $568 = $564;
+             $$sroa$0$21986$ph = $568;
+             $$sroa$47$13985$ph = $562;
+             $$sroa$81$23984$ph = $567;
+             break;
+            }
+           }
+          } while (0);
+          $573 = $$sroa$81$23984$ph;
+          $574 = $573 + 1 | 0;
+          SAFE_HEAP_STORE($573 >> 0 | 0, 1 | 0, 1);
+          $575 = $554 & 65535;
+          SAFE_HEAP_STORE($574 >> 0 | 0, $575 & 255 | 0, 1);
+          SAFE_HEAP_STORE($574 + 1 >> 0 | 0, $575 >> 8 | 0, 1);
+          $576 = $573 + 3 | 0;
+          _memcpy($576 | 0, $10 | 0, $554 | 0) | 0;
+          $577 = $576 + $554 | 0;
+          $578 = $577;
+          $$1593 = 0;
+          $$1607 = 0;
+          $$1609 = $$06081400;
+          $$1611 = 0;
+          $$1614 = $$06131398;
+          $$1616 = $$06151397;
+          $$1629 = $$06281395;
+          $$2596 = 0;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = 0;
+          $$9626 = $$5622;
+          $$sroa$0$27 = $$sroa$0$21986$ph;
+          $$sroa$47$19 = $$sroa$47$13985$ph;
+          $$sroa$81$31 = $578;
+          break L30;
+          break;
+         }
+        case 117:
+         {
+          if ($27) {
+           $arglist_current14 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+           $582 = $arglist_current14;
+           $583 = 0 + 4 | 0;
+           $expanded57 = $583;
+           $expanded56 = $expanded57 - 1 | 0;
+           $584 = $582 + $expanded56 | 0;
+           $585 = 0 + 4 | 0;
+           $expanded61 = $585;
+           $expanded60 = $expanded61 - 1 | 0;
+           $expanded59 = $expanded60 ^ -1;
+           $586 = $584 & $expanded59;
+           $587 = $586;
+           $588 = SAFE_HEAP_LOAD($587 | 0, 4, 0) | 0 | 0;
+           $arglist_next15 = $587 + 4 | 0;
+           SAFE_HEAP_STORE($6 | 0, $arglist_next15 | 0, 4);
+           $$0612 = $588;
+           $$6623 = $$06171396;
+          } else {
+           $589 = $$06171396 + 1 | 0;
+           $590 = $5 + ($$06171396 << 2) | 0;
+           $591 = SAFE_HEAP_LOAD($590 | 0, 4, 0) | 0 | 0;
+           $592 = SAFE_HEAP_LOAD($591 | 0, 4, 0) | 0 | 0;
+           $$0612 = $592;
+           $$6623 = $589;
+          }
+          SAFE_HEAP_STORE($vararg_buffer16 | 0, $$0612 | 0, 4);
+          _sprintf($11, 22581, $vararg_buffer16) | 0;
+          $593 = _strlen($11) | 0;
+          $594 = $$sroa$0$3;
+          $595 = $$sroa$81$2 - $$sroa$0$3 | 0;
+          $596 = $595 + 3 | 0;
+          $597 = $596 + $593 | 0;
+          $598 = $597 >>> 0 < $$sroa$47$2 >>> 0;
+          do {
+           if ($598) {
+            $$sroa$0$221005$ph = $$sroa$0$3;
+            $$sroa$47$141004$ph = $$sroa$47$2;
+            $$sroa$81$251003$ph = $$sroa$81$2;
+           } else {
+            $599 = $593 << 1;
+            $600 = $$sroa$47$2 + 6 | 0;
+            $601 = $600 + $599 | 0;
+            $602 = $601 >>> 0 > $$sroa$47$2 >>> 0;
+            if (!$602) {
+             $$1$i7191010 = 67;
+             label = 214;
+             break L18;
+            }
+            $603 = __gcry_realloc($594, $601) | 0;
+            $604 = ($603 | 0) == (0 | 0);
+            if ($604) {
+             $608 = ___errno_location() | 0;
+             $609 = SAFE_HEAP_LOAD($608 | 0, 4, 0) | 0 | 0;
+             $610 = _gpg_err_code_from_errno($609) | 0;
+             $611 = ($610 | 0) == 0;
+             if ($611) {
+              $$sroa$0$221005$ph = $$sroa$0$3;
+              $$sroa$47$141004$ph = $$sroa$47$2;
+              $$sroa$81$251003$ph = $$sroa$81$2;
+              break;
+             } else {
+              $$1$i7191010 = $610;
+              label = 214;
+              break L18;
+             }
+            } else {
+             $605 = $603 + $595 | 0;
+             $606 = $605;
+             $607 = $603;
+             $$sroa$0$221005$ph = $607;
+             $$sroa$47$141004$ph = $601;
+             $$sroa$81$251003$ph = $606;
+             break;
+            }
+           }
+          } while (0);
+          $612 = $$sroa$81$251003$ph;
+          $613 = $612 + 1 | 0;
+          SAFE_HEAP_STORE($612 >> 0 | 0, 1 | 0, 1);
+          $614 = $593 & 65535;
+          SAFE_HEAP_STORE($613 >> 0 | 0, $614 & 255 | 0, 1);
+          SAFE_HEAP_STORE($613 + 1 >> 0 | 0, $614 >> 8 | 0, 1);
+          $615 = $612 + 3 | 0;
+          _memcpy($615 | 0, $11 | 0, $593 | 0) | 0;
+          $616 = $615 + $593 | 0;
+          $617 = $616;
+          $$1593 = 0;
+          $$1607 = 0;
+          $$1609 = $$06081400;
+          $$1611 = 0;
+          $$1614 = $$06131398;
+          $$1616 = $$06151397;
+          $$1629 = $$06281395;
+          $$2596 = 0;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = 0;
+          $$9626 = $$6623;
+          $$sroa$0$27 = $$sroa$0$221005$ph;
+          $$sroa$47$19 = $$sroa$47$141004$ph;
+          $$sroa$81$31 = $617;
+          break L30;
+          break;
+         }
+        case 83:
+         {
+          if ($27) {
+           $arglist_current20 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+           $621 = $arglist_current20;
+           $622 = 0 + 4 | 0;
+           $expanded64 = $622;
+           $expanded63 = $expanded64 - 1 | 0;
+           $623 = $621 + $expanded63 | 0;
+           $624 = 0 + 4 | 0;
+           $expanded68 = $624;
+           $expanded67 = $expanded68 - 1 | 0;
+           $expanded66 = $expanded67 ^ -1;
+           $625 = $623 & $expanded66;
+           $626 = $625;
+           $627 = SAFE_HEAP_LOAD($626 | 0, 4, 0) | 0 | 0;
+           $arglist_next21 = $626 + 4 | 0;
+           SAFE_HEAP_STORE($6 | 0, $arglist_next21 | 0, 4);
+           $$0600 = $627;
+           $$7624 = $$06171396;
+          } else {
+           $628 = $$06171396 + 1 | 0;
+           $629 = $5 + ($$06171396 << 2) | 0;
+           $630 = SAFE_HEAP_LOAD($629 | 0, 4, 0) | 0 | 0;
+           $631 = SAFE_HEAP_LOAD($630 | 0, 4, 0) | 0 | 0;
+           $$0600 = $631;
+           $$7624 = $628;
+          }
+          $632 = ($$0600 | 0) == (0 | 0);
+          if ($632) {
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = $$06081400;
+           $$1611 = 0;
+           $$1614 = $$06131398;
+           $$1616 = $$06151397;
+           $$1629 = $$06281395;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$7624;
+           $$sroa$0$27 = $$sroa$0$3;
+           $$sroa$47$19 = $$sroa$47$2;
+           $$sroa$81$31 = $$sroa$81$2;
+           break L30;
+          }
+          $633 = SAFE_HEAP_LOAD($$0600 >> 0 | 0, 1, 0) | 0 | 0;
+          $634 = $633 << 24 >> 24 == 0;
+          if ($634) {
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = $$06081400;
+           $$1611 = 0;
+           $$1614 = $$06131398;
+           $$1616 = $$06151397;
+           $$1629 = $$06281395;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$7624;
+           $$sroa$0$27 = $$sroa$0$3;
+           $$sroa$47$19 = $$sroa$47$2;
+           $$sroa$81$31 = $$sroa$81$2;
+           break L30;
+          }
+          $635 = $$0600;
+          $$0$ph34$i = 0;
+          $$028$ph33$i = $$0600;
+          $$0843 = 0;
+          $827 = $633;
+          while (1) {
+           $$02832$i = $$028$ph33$i;
+           $637 = $827;
+           L301 : while (1) {
+            $636 = $$02832$i + 1 | 0;
+            switch ($637 << 24 >> 24) {
+            case 3:
+             {
+              label = 225;
+              break L301;
+              break;
+             }
+            case 4:
+             {
+              label = 227;
+              break L301;
+              break;
+             }
+            case 1:
+             {
+              $$0$copyload$i = SAFE_HEAP_LOAD($636 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($636 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+              $638 = $$0$copyload$i & 65535;
+              $639 = $638 + 2 | 0;
+              $640 = $636 + $639 | 0;
+              $$028$be$i = $640;
+              break;
+             }
+            default:
+             {
+              $$028$be$i = $636;
+             }
+            }
+            $641 = SAFE_HEAP_LOAD($$028$be$i >> 0 | 0, 1, 0) | 0 | 0;
+            $642 = $641 << 24 >> 24 == 0;
+            if ($642) {
+             $$1593 = 0;
+             $$1607 = 0;
+             $$1609 = $$06081400;
+             $$1611 = 0;
+             $$1614 = $$06131398;
+             $$1616 = $$06151397;
+             $$1629 = $$06281395;
+             $$2596 = 0;
+             $$2599 = $$1598;
+             $$3587 = $$05841407;
+             $$3591 = $$05881406;
+             $$4605 = 0;
+             $$9626 = $$7624;
+             $$sroa$0$27 = $$sroa$0$3;
+             $$sroa$47$19 = $$sroa$47$2;
+             $$sroa$81$31 = $$sroa$81$2;
+             break L30;
+            } else {
+             $$02832$i = $$028$be$i;
+             $637 = $641;
+            }
+           }
+           if ((label | 0) == 225) {
+            label = 0;
+            $643 = ($$0$ph34$i | 0) == 0;
+            $644 = $$02832$i;
+            $645 = $644 - $635 | 0;
+            $$1844 = $643 ? $645 : $$0843;
+            $646 = $$0$ph34$i + 1 | 0;
+            $$0$ph$be$i = $646;
+            $$2 = $$1844;
+           } else if ((label | 0) == 227) {
+            label = 0;
+            $649 = $$0$ph34$i + -1 | 0;
+            $650 = ($649 | 0) == 0;
+            if ($650) {
+             break;
+            } else {
+             $$0$ph$be$i = $649;
+             $$2 = $$0843;
+            }
+           }
+           $647 = SAFE_HEAP_LOAD($636 >> 0 | 0, 1, 0) | 0 | 0;
+           $648 = $647 << 24 >> 24 == 0;
+           if ($648) {
+            $$1593 = 0;
+            $$1607 = 0;
+            $$1609 = $$06081400;
+            $$1611 = 0;
+            $$1614 = $$06131398;
+            $$1616 = $$06151397;
+            $$1629 = $$06281395;
+            $$2596 = 0;
+            $$2599 = $$1598;
+            $$3587 = $$05841407;
+            $$3591 = $$05881406;
+            $$4605 = 0;
+            $$9626 = $$7624;
+            $$sroa$0$27 = $$sroa$0$3;
+            $$sroa$47$19 = $$sroa$47$2;
+            $$sroa$81$31 = $$sroa$81$2;
+            break L30;
+           } else {
+            $$0$ph34$i = $$0$ph$be$i;
+            $$028$ph33$i = $636;
+            $$0843 = $$2;
+            $827 = $647;
+           }
+          }
+          $651 = $636;
+          $652 = $651 - $635 | 0;
+          $653 = ($652 | 0) == 0;
+          if ($653) {
+           $$1593 = 0;
+           $$1607 = 0;
+           $$1609 = $$06081400;
+           $$1611 = 0;
+           $$1614 = $$06131398;
+           $$1616 = $$06151397;
+           $$1629 = $$06281395;
+           $$2596 = 0;
+           $$2599 = $$1598;
+           $$3587 = $$05841407;
+           $$3591 = $$05881406;
+           $$4605 = 0;
+           $$9626 = $$7624;
+           $$sroa$0$27 = $$sroa$0$3;
+           $$sroa$47$19 = $$sroa$47$2;
+           $$sroa$81$31 = $$sroa$81$2;
+           break L30;
+          }
+          $654 = $$sroa$0$3;
+          $655 = $$sroa$81$2 - $$sroa$0$3 | 0;
+          $656 = $655 + 3 | 0;
+          $657 = $656 + $652 | 0;
+          $658 = $657 >>> 0 < $$sroa$47$2 >>> 0;
+          do {
+           if ($658) {
+            $$sroa$0$231024$ph = $$sroa$0$3;
+            $$sroa$47$151023$ph = $$sroa$47$2;
+            $$sroa$81$271022$ph = $$sroa$81$2;
+           } else {
+            $659 = $652 << 1;
+            $660 = $$sroa$47$2 + 6 | 0;
+            $661 = $660 + $659 | 0;
+            $662 = $661 >>> 0 > $$sroa$47$2 >>> 0;
+            if (!$662) {
+             $$1$i7221029 = 67;
+             label = 235;
+             break L18;
+            }
+            $663 = __gcry_realloc($654, $661) | 0;
+            $664 = ($663 | 0) == (0 | 0);
+            if ($664) {
+             $668 = ___errno_location() | 0;
+             $669 = SAFE_HEAP_LOAD($668 | 0, 4, 0) | 0 | 0;
+             $670 = _gpg_err_code_from_errno($669) | 0;
+             $671 = ($670 | 0) == 0;
+             if ($671) {
+              $$sroa$0$231024$ph = $$sroa$0$3;
+              $$sroa$47$151023$ph = $$sroa$47$2;
+              $$sroa$81$271022$ph = $$sroa$81$2;
+              break;
+             } else {
+              $$1$i7221029 = $670;
+              label = 235;
+              break L18;
+             }
+            } else {
+             $665 = $663 + $655 | 0;
+             $666 = $665;
+             $667 = $663;
+             $$sroa$0$231024$ph = $667;
+             $$sroa$47$151023$ph = $661;
+             $$sroa$81$271022$ph = $666;
+             break;
+            }
+           }
+          } while (0);
+          $672 = $$sroa$81$271022$ph;
+          $673 = $$0600 + $$0843 | 0;
+          _memcpy($672 | 0, $673 | 0, $652 | 0) | 0;
+          $674 = $672 + $652 | 0;
+          $675 = $674;
+          $$1593 = 0;
+          $$1607 = 0;
+          $$1609 = $$06081400;
+          $$1611 = 0;
+          $$1614 = $$06131398;
+          $$1616 = $$06151397;
+          $$1629 = $$06281395;
+          $$2596 = 0;
+          $$2599 = $$1598;
+          $$3587 = $$05841407;
+          $$3591 = $$05881406;
+          $$4605 = 0;
+          $$9626 = $$7624;
+          $$sroa$0$27 = $$sroa$0$231024$ph;
+          $$sroa$47$19 = $$sroa$47$151023$ph;
+          $$sroa$81$31 = $675;
+          break L30;
+          break;
+         }
+        default:
+         {
+          label = 236;
+          break L18;
+         }
+        }
+       }
+      } while (0);
+      $761 = $$3587 + 1 | 0;
+      $762 = $$3591 + -1 | 0;
+      $763 = ($762 | 0) == 0;
+      if ($763) {
+       $$0584$lcssa = $761;
+       $$0628$lcssa = $$1629;
+       $$sroa$0$1$lcssa = $$sroa$0$27;
+       $$sroa$47$0$lcssa = $$sroa$47$19;
+       $$sroa$81$0$lcssa = $$sroa$81$31;
+       label = 274;
+       break L16;
+      } else {
+       $$05841407 = $761;
+       $$05881406 = $762;
+       $$05921405 = $$1593;
+       $$05941404 = $$2596;
+       $$05971403 = $$2599;
+       $$06011402 = $$4605;
+       $$06061401 = $$1607;
+       $$06081400 = $$1609;
+       $$06101399 = $$1611;
+       $$06131398 = $$1614;
+       $$06151397 = $$1616;
+       $$06171396 = $$9626;
+       $$06281395 = $$1629;
+       $$sroa$0$11394 = $$sroa$0$27;
+       $$sroa$47$01393 = $$sroa$47$19;
+       $$sroa$81$01392 = $$sroa$81$31;
+      }
+     }
+     switch (label | 0) {
+     case 18:
+      {
+       $54 = $2;
+       $55 = $33 - $54 | 0;
+       SAFE_HEAP_STORE($$ | 0, $55 | 0, 4);
+       $$31$ph = $$1$i853;
+       $$sroa$0$29$ph = $$sroa$0$11394;
+       $$sroa$47$21$ph = $$sroa$47$01393;
+       break L16;
+       break;
+      }
+     case 26:
+      {
+       $75 = $$05841407;
+       $76 = $2;
+       $77 = $75 - $76 | 0;
+       SAFE_HEAP_STORE($$ | 0, $77 | 0, 4);
+       $$31$ph = 206;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 33:
+      {
+       $86 = $$05841407;
+       $87 = $2;
+       $88 = $86 - $87 | 0;
+       SAFE_HEAP_STORE($$ | 0, $88 | 0, 4);
+       $$31$ph = 206;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 37:
+      {
+       $98 = $$05841407;
+       $99 = $2;
+       $100 = $98 - $99 | 0;
+       SAFE_HEAP_STORE($$ | 0, $100 | 0, 4);
+       $$31$ph = 206;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 81:
+      {
+       $206 = $2;
+       $207 = $104 - $206 | 0;
+       SAFE_HEAP_STORE($$ | 0, $207 | 0, 4);
+       $$31$ph = $$1$i691866;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 87:
+      {
+       $216 = $$05841407;
+       $217 = $2;
+       $218 = $216 - $217 | 0;
+       SAFE_HEAP_STORE($$ | 0, $218 | 0, 4);
+       $$31$ph = 212;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 93:
+      {
+       $238 = $$05841407;
+       $239 = $2;
+       $240 = $238 - $239 | 0;
+       SAFE_HEAP_STORE($$ | 0, $240 | 0, 4);
+       $$31$ph = $$1$i693882;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 112:
+      {
+       $275 = $$05841407;
+       $276 = $2;
+       $277 = $275 - $276 | 0;
+       SAFE_HEAP_STORE($$ | 0, $277 | 0, 4);
+       $$31$ph = 211;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 119:
+      {
+       $287 = $$05841407;
+       $288 = $2;
+       $289 = $287 - $288 | 0;
+       SAFE_HEAP_STORE($$ | 0, $289 | 0, 4);
+       $$31$ph = 202;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 125:
+      {
+       $308 = $$05841407;
+       $309 = $2;
+       $310 = $308 - $309 | 0;
+       SAFE_HEAP_STORE($$ | 0, $310 | 0, 4);
+       $$31$ph = $$1$i707896;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 129:
+      {
+       $320 = $$05841407;
+       $321 = $2;
+       $322 = $320 - $321 | 0;
+       SAFE_HEAP_STORE($$ | 0, $322 | 0, 4);
+       $$31$ph = 201;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 142:
+      {
+       $365 = $$05841407;
+       $366 = $2;
+       $367 = $365 - $366 | 0;
+       SAFE_HEAP_STORE($$ | 0, $367 | 0, 4);
+       $$10 = $$1$i709910;
+       $$sroa$0$10 = $$sroa$0$3;
+       $$sroa$47$7 = $$sroa$47$2;
+       label = 150;
+       break;
+      }
+     case 147:
+      {
+       $379 = ___errno_location() | 0;
+       $380 = SAFE_HEAP_LOAD($379 | 0, 4, 0) | 0 | 0;
+       $381 = _gpg_err_code_from_errno($380) | 0;
+       $$10 = $381;
+       $$sroa$0$10 = $$sroa$0$7905$ph;
+       $$sroa$47$7 = $$sroa$47$6904$ph;
+       label = 150;
+       break;
+      }
+     case 152:
+      {
+       __gcry_bug(22556, 1433, 22563);
+       break;
+      }
+     case 158:
+      {
+       $412 = $$05841407;
+       $413 = $2;
+       $414 = $412 - $413 | 0;
+       SAFE_HEAP_STORE($$ | 0, $414 | 0, 4);
+       $$15$ph = $$1$i711929;
+       $$sroa$0$15$ph = $$sroa$0$3;
+       $$sroa$47$10$ph = $$sroa$47$2;
+       break;
+      }
+     case 163:
+      {
+       $426 = ___errno_location() | 0;
+       $427 = SAFE_HEAP_LOAD($426 | 0, 4, 0) | 0 | 0;
+       $428 = _gpg_err_code_from_errno($427) | 0;
+       $$15$ph = $428;
+       $$sroa$0$15$ph = $$sroa$0$11924$ph;
+       $$sroa$47$10$ph = $$sroa$47$8922$ph;
+       break;
+      }
+     case 165:
+      {
+       __gcry_bug(22556, 1460, 22563);
+       break;
+      }
+     case 178:
+      {
+       $476 = $$05841407;
+       $477 = $2;
+       $478 = $476 - $477 | 0;
+       SAFE_HEAP_STORE($$ | 0, $478 | 0, 4);
+       $$31$ph = $$1$i713948;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 187:
+      {
+       $519 = $$05841407;
+       $520 = $2;
+       $521 = $519 - $520 | 0;
+       SAFE_HEAP_STORE($$ | 0, $521 | 0, 4);
+       $$311088 = $$1$i715971;
+       $$sroa$0$291087 = $$sroa$0$3;
+       $$sroa$47$211086 = $$sroa$47$2;
+       $788 = $501;
+       break L13;
+       break;
+      }
+     case 193:
+      {
+       $534 = ___errno_location() | 0;
+       $535 = SAFE_HEAP_LOAD($534 | 0, 4, 0) | 0 | 0;
+       $536 = _gpg_err_code_from_errno($535) | 0;
+       $$31 = $536;
+       $$sroa$0$29 = $$sroa$0$17966$ph;
+       $$sroa$47$21 = $$sroa$47$12965$ph;
+       label = 283;
+       break L13;
+       break;
+      }
+     case 204:
+      {
+       $579 = $$05841407;
+       $580 = $2;
+       $581 = $579 - $580 | 0;
+       SAFE_HEAP_STORE($$ | 0, $581 | 0, 4);
+       $$31$ph = $$1$i717991;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 214:
+      {
+       $618 = $$05841407;
+       $619 = $2;
+       $620 = $618 - $619 | 0;
+       SAFE_HEAP_STORE($$ | 0, $620 | 0, 4);
+       $$31$ph = $$1$i7191010;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 235:
+      {
+       $676 = $$05841407;
+       $677 = $2;
+       $678 = $676 - $677 | 0;
+       SAFE_HEAP_STORE($$ | 0, $678 | 0, 4);
+       $$31$ph = $$1$i7221029;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 236:
+      {
+       $679 = $$05841407;
+       $680 = $2;
+       $681 = $679 - $680 | 0;
+       SAFE_HEAP_STORE($$ | 0, $681 | 0, 4);
+       $$31$ph = 201;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 239:
+      {
+       $683 = $$05841407;
+       $684 = $2;
+       $685 = $683 - $684 | 0;
+       SAFE_HEAP_STORE($$ | 0, $685 | 0, 4);
+       $$31$ph = 209;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 245:
+      {
+       $701 = $$05841407;
+       $702 = $2;
+       $703 = $701 - $702 | 0;
+       SAFE_HEAP_STORE($$ | 0, $703 | 0, 4);
+       $$31$ph = $$1$i7241046;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 248:
+      {
+       $709 = $$05841407;
+       $710 = $2;
+       $711 = $709 - $710 | 0;
+       SAFE_HEAP_STORE($$ | 0, $711 | 0, 4);
+       $$31$ph = 209;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 254:
+      {
+       $727 = $$05841407;
+       $728 = $2;
+       $729 = $727 - $728 | 0;
+       SAFE_HEAP_STORE($$ | 0, $729 | 0, 4);
+       $$31$ph = $$1$i7261061;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 259:
+      {
+       $735 = $$05841407;
+       $736 = $2;
+       $737 = $735 - $736 | 0;
+       SAFE_HEAP_STORE($$ | 0, $737 | 0, 4);
+       $$31$ph = 208;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 261:
+      {
+       $739 = $$05841407;
+       $740 = $2;
+       $741 = $739 - $740 | 0;
+       SAFE_HEAP_STORE($$ | 0, $741 | 0, 4);
+       $$31$ph = 209;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 264:
+      {
+       $744 = $$05841407;
+       $745 = $2;
+       $746 = $744 - $745 | 0;
+       SAFE_HEAP_STORE($$ | 0, $746 | 0, 4);
+       $$31$ph = 207;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 268:
+      {
+       $750 = $$05841407;
+       $751 = $2;
+       $752 = $750 - $751 | 0;
+       SAFE_HEAP_STORE($$ | 0, $752 | 0, 4);
+       $$31$ph = 210;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 270:
+      {
+       $754 = $$05841407;
+       $755 = $2;
+       $756 = $754 - $755 | 0;
+       SAFE_HEAP_STORE($$ | 0, $756 | 0, 4);
+       $$31$ph = 210;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     case 272:
+      {
+       $758 = $$05841407;
+       $759 = $2;
+       $760 = $758 - $759 | 0;
+       SAFE_HEAP_STORE($$ | 0, $760 | 0, 4);
+       $$31$ph = 205;
+       $$sroa$0$29$ph = $$sroa$0$3;
+       $$sroa$47$21$ph = $$sroa$47$2;
+       break L16;
+       break;
+      }
+     }
+     if ((label | 0) == 150) {
+      $$15$ph = $$10;
+      $$sroa$0$15$ph = $$sroa$0$10;
+      $$sroa$47$10$ph = $$sroa$47$7;
+     }
+     $$31 = $$15$ph;
+     $$sroa$0$29 = $$sroa$0$15$ph;
+     $$sroa$47$21 = $$sroa$47$10$ph;
+     label = 283;
+     break L13;
+    }
+   } while (0);
+   L358 : do {
+    if ((label | 0) == 274) {
+     $764 = $$sroa$0$1$lcssa;
+     $765 = $$sroa$81$0$lcssa - $$sroa$0$1$lcssa | 0;
+     $766 = $765 + 3 | 0;
+     $767 = $766 >>> 0 < $$sroa$47$0$lcssa >>> 0;
+     L360 : do {
+      if ($767) {
+       $$sroa$0$281071$ph = $$sroa$0$1$lcssa;
+       $$sroa$47$201070$ph = $$sroa$47$0$lcssa;
+       $$sroa$81$321069$ph = $$sroa$81$0$lcssa;
+      } else {
+       $768 = $$sroa$47$0$lcssa + 6 | 0;
+       $769 = $$sroa$47$0$lcssa >>> 0 < 4294967290;
+       do {
+        if ($769) {
+         $770 = __gcry_realloc($764, $768) | 0;
+         $771 = ($770 | 0) == (0 | 0);
+         if ($771) {
+          $775 = ___errno_location() | 0;
+          $776 = SAFE_HEAP_LOAD($775 | 0, 4, 0) | 0 | 0;
+          $777 = _gpg_err_code_from_errno($776) | 0;
+          $778 = ($777 | 0) == 0;
+          if ($778) {
+           $$sroa$0$281071$ph = $$sroa$0$1$lcssa;
+           $$sroa$47$201070$ph = $$sroa$47$0$lcssa;
+           $$sroa$81$321069$ph = $$sroa$81$0$lcssa;
+           break L360;
+          } else {
+           $$1$i7301076 = $777;
+           break;
+          }
+         } else {
+          $772 = $770 + $765 | 0;
+          $773 = $772;
+          $774 = $770;
+          $$sroa$0$281071$ph = $774;
+          $$sroa$47$201070$ph = $768;
+          $$sroa$81$321069$ph = $773;
+          break L360;
+         }
+        } else {
+         $$1$i7301076 = 67;
+        }
+       } while (0);
+       $779 = $$0584$lcssa;
+       $780 = $2;
+       $781 = $779 - $780 | 0;
+       SAFE_HEAP_STORE($$ | 0, $781 | 0, 4);
+       $$31$ph = $$1$i7301076;
+       $$sroa$0$29$ph = $$sroa$0$1$lcssa;
+       $$sroa$47$21$ph = $$sroa$47$0$lcssa;
+       break L358;
+      }
+     } while (0);
+     $782 = $$sroa$81$321069$ph;
+     SAFE_HEAP_STORE($782 >> 0 | 0, 0 | 0, 1);
+     $783 = ($$0628$lcssa | 0) == 0;
+     if ($783) {
+      $784 = $$sroa$0$281071$ph;
+      $$sroa$0$291609 = $$sroa$0$281071$ph;
+      $823 = $784;
+      label = 295;
+      break L13;
+     } else {
+      $$31$ph = 203;
+      $$sroa$0$29$ph = $$sroa$0$281071$ph;
+      $$sroa$47$21$ph = $$sroa$47$201070$ph;
+     }
+    }
+   } while (0);
+   $785 = $$sroa$0$29$ph;
+   $$311088 = $$31$ph;
+   $$sroa$0$291087 = $$sroa$0$29$ph;
+   $$sroa$47$211086 = $$sroa$47$21$ph;
+   $788 = $785;
+  }
+ } while (0);
+ if ((label | 0) == 283) {
+  $786 = ($$31 | 0) == 0;
+  $787 = $$sroa$0$29;
+  if ($786) {
+   $$sroa$0$291609 = $$sroa$0$29;
+   $823 = $787;
+   label = 295;
+  } else {
+   $$311088 = $$31;
+   $$sroa$0$291087 = $$sroa$0$29;
+   $$sroa$47$211086 = $$sroa$47$21;
+   $788 = $787;
+  }
+ }
+ if ((label | 0) == 295) {
+  $821 = ($$sroa$0$291609 | 0) == 0;
+  L375 : do {
+   if ($821) {
+    $$0$i732 = 0;
+   } else {
+    $822 = SAFE_HEAP_LOAD($823 >> 0 | 0, 1, 0) | 0 | 0;
+    switch ($822 << 24 >> 24) {
+    case 0:
+     {
+      __gcry_sexp_release($823);
+      $$0$i732 = 0;
+      break L375;
+      break;
+     }
+    case 3:
+     {
+      break;
+     }
+    default:
+     {
+      $$0$i732 = $823;
+      break L375;
+     }
+    }
+    $824 = $823 + 1 | 0;
+    $825 = SAFE_HEAP_LOAD($824 >> 0 | 0, 1, 0) | 0 | 0;
+    $826 = $825 << 24 >> 24 == 4;
+    if ($826) {
+     __gcry_sexp_release($823);
+     $$0$i732 = 0;
+    } else {
+     $$0$i732 = $823;
+    }
+   }
+  } while (0);
+  SAFE_HEAP_STORE($0 | 0, $$0$i732 | 0, 4);
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $789 = ($788 | 0) == (0 | 0);
+ if ($789) {
+  $$0 = $$311088;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $790 = __gcry_is_secure($788) | 0;
+ $791 = ($790 | 0) == 0;
+ if (!$791) {
+  $792 = $788;
+  $793 = $792 & 7;
+  $794 = ($793 | 0) != 0;
+  $795 = ($$sroa$47$211086 | 0) != 0;
+  $796 = $795 & $794;
+  if ($796) {
+   $$05751375 = $$sroa$47$211086;
+   $$05761374 = $788;
+   while (1) {
+    SAFE_HEAP_STORE($$05761374 >> 0 | 0, 0 | 0, 1);
+    $797 = $$05761374 + 1 | 0;
+    $798 = $$05751375 + -1 | 0;
+    $799 = $797;
+    $800 = $799 & 7;
+    $801 = ($800 | 0) != 0;
+    $802 = ($798 | 0) != 0;
+    $803 = $802 & $801;
+    if ($803) {
+     $$05751375 = $798;
+     $$05761374 = $797;
+    } else {
+     $$0575$lcssa = $798;
+     $$0576$lcssa = $797;
+     break;
+    }
+   }
+  } else {
+   $$0575$lcssa = $$sroa$47$211086;
+   $$0576$lcssa = $788;
+  }
+  $804 = $$0575$lcssa >>> 0 < 8;
+  if ($804) {
+   $$3$ph = $$0575$lcssa;
+   $$3579$ph = $$0576$lcssa;
+  } else {
+   $805 = $$0575$lcssa + -8 | 0;
+   $806 = $805 & -8;
+   $807 = $806 + 8 | 0;
+   $$1 = $$0575$lcssa;
+   $$1577 = $$0576$lcssa;
+   while (1) {
+    $808 = $$1577;
+    $809 = $808;
+    SAFE_HEAP_STORE($809 | 0, 0 | 0, 4);
+    $810 = $808 + 4 | 0;
+    $811 = $810;
+    SAFE_HEAP_STORE($811 | 0, 0 | 0, 4);
+    $812 = $$1 + -8 | 0;
+    $813 = $$1577 + 8 | 0;
+    $814 = $812 >>> 0 > 7;
+    if ($814) {
+     $$1 = $812;
+     $$1577 = $813;
+    } else {
+     break;
+    }
+   }
+   $815 = $805 - $806 | 0;
+   $scevgep = $$0576$lcssa + $807 | 0;
+   $$3$ph = $815;
+   $$3579$ph = $scevgep;
+  }
+  $816 = ($$3$ph | 0) == 0;
+  if (!$816) {
+   $$31373 = $$3$ph;
+   $$35791372 = $$3579$ph;
+   while (1) {
+    SAFE_HEAP_STORE($$35791372 >> 0 | 0, 0 | 0, 1);
+    $817 = $$35791372 + 1 | 0;
+    $818 = $$31373 + -1 | 0;
+    $819 = ($818 | 0) == 0;
+    if ($819) {
+     break;
+    } else {
+     $$31373 = $818;
+     $$35791372 = $817;
+    }
+   }
+  }
+ }
+ $820 = $$sroa$0$291087;
+ __gcry_free($820);
+ $$0 = $$311088;
+ STACKTOP = sp;
+ return $$0 | 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, $$$i = 0, $$$i30 = 0, $$0 = 0, $$026 = 0, $$027 = 0, $$0415$i = 
0, $$0420587$i = 0, $$0421$i = 0, $$0422$i = 0, $$0423$i = 0, $$0426$i = 0, 
$$0427$ph533$i = 0, $$0427511$i = 0, $$0432$i = 0, $$0437$i = 0, $$0448586$i = 
0, $$0453634$i73 = 0, $$0455630$i = 0, $$0456$i = 0;
+ var $$0456$i29 = 0, $$0457523$i = 0, $$0460$i = 0, $$0462$i = 0, $$0468540$i 
= 0, $$0469$i = 0, $$0475$i = 0, $$0485$i = 0, $$0486653$i = 0, $$0488643$i = 
0, $$0490610$i = 0, $$0491$i = 0, $$0496606$i = 0, $$0497601$i = 0, $$0513$i = 
0, $$0515616$i = 0, $$0517$i = 0, $$052 = 0, $$0532613$i = 0, $$0543$ph$i = 0;
+ var $$0545612$i = 0, $$0551$i = 0, $$0626$i = 0, $$1 = 0, $$1$i = 0, $$10$i = 
0, $$10447$i = 0, $$10447$lobit$i = 0, $$10542$i = 0, $$11528$i = 0, $$12529$i 
= 0, $$1424$i = 0, $$1428565$i = 0, $$1430$i = 0, $$1433$ph$lcssa$i = 0, 
$$1433$ph531$i = 0, $$1433$ph532$mux$i = 0, $$1438$ph$lcssa$i = 0, 
$$1438$ph529$i = 0, $$1438$ph530$mux$i = 0;
+ var $$1449584$i = 0, $$14531$i = 0, $$1457$i = 0, $$1458549$i = 0, 
$$1461$ph$lcssa$i = 0, $$1461$ph527$i = 0, $$1463$i = 0, $$1469574$i = 0, 
$$1470$i = 0, $$1471$i = 0, $$1474$i = 0, $$1476$i = 0, $$1489$i = 0, $$1492$i 
= 0, $$15$i = 0, $$1514$i = 0, $$1516640$i = 0, $$1518614$i = 0, $$1533$i = 0, 
$$1544$i = 0;
+ var $$1546$i = 0, $$1552$i = 0, $$2 = 0, $$2425$i = 0, $$2431$lcssa$i = 0, 
$$2431578$i = 0, $$2434$i = 0, $$2439$i = 0, $$2458$i = 0, $$2462$i = 0, 
$$2464$i = 0, $$2471$i = 0, $$2472$i = 0, $$2475$i = 0, $$2477$i = 0, $$2493$i 
= 0, $$2501$i = 0, $$2534623$i = 0, $$2547$i = 0, $$3 = 0;
+ var $$3$lcssa$i = 0, $$3435$i = 0, $$3440$i = 0, $$3451525$i = 0, $$3459$i = 
0, $$3463$lcssa$i = 0, $$3463542$i = 0, $$3465$i = 0, $$3472$i = 0, $$3478$i = 
0, $$3520$i = 0, $$3535$i = 0, $$3548$i = 0, $$4 = 0, $$4$i = 0, $$4436$i = 0, 
$$4441$i = 0, $$4452537$i = 0, $$4464$i = 0, $$4466$i = 0;
+ var $$4479$i = 0, $$4495$i = 0, $$4495$lobit$i = 0, $$4536$i = 0, $$477$i = 
0, $$5$i = 0, $$5442$lcssa$i = 0, $$5442576$i = 0, $$5453546$i = 0, $$5461$i = 
0, $$5465$lcssa$i = 0, $$5465575$i = 0, $$5474$i = 0, $$5480$i = 0, $$5504$i = 
0, $$5522$i = 0, $$5537638$i = 0, $$5550$i = 0, $$6$lcssa$i = 0, $$6443$lcssa$i 
= 0;
+ var $$6443556$i = 0, $$6454553$i = 0, $$6466$lcssa$i = 0, $$6466555$i = 0, 
$$6468$i = 0, $$6481$i = 0, $$6523$i = 0, $$6538$i = 0, $$6577$i = 0, 
$$7$lcssa$i = 0, $$7444$i = 0, $$7455551$i = 0, $$7467$i = 0, $$7482$i = 0, 
$$7512$i = 0, $$7524639$i = 0, $$7539650$i = 0, $$7559$i = 0, $$8$i = 0, 
$$8540$i = 0;
+ var $$9446$i = 0, $$9484$i = 0, $$9526$i = 0, $$not$i = 0, $$not597$i = 0, 
$$old$i = 0, $$old$i35 = 0, $$old11$i = 0, $$old34$i = 0, $$old35$i = 0, 
$$old37$i = 0, $$old38$i = 0, $$old46$i = 0, $$old47$i = 0, $$old8$i = 0, 
$$pre$i = 0, $$pre$i36 = 0, $$pre$phi630$iZ2D = 0, $$pre$phi632$iZ2D = 0, 
$$pre619$i = 0;
+ var $$pre620$i = 0, $$pre622$i = 0, $$pre624$i = 0, $$pre625$i = 0, 
$$pre626$i = 0, $$pre628$i = 0, $$pre631$i = 0, $$pre670$i = 0, $$pre672$i = 0, 
$$pre673$i = 0, $$pre674$i = 0, $$pre678$i = 0, $$pre679$i = 0, $$pre680$i = 0, 
$$pre682$i = 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, $30 
= 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0;
+ var $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, $321 = 0;
+ var $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, $34 = 0;
+ var $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, $358 = 0;
+ var $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, $376 = 0;
+ var $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, $393 = 0, $394 = 0;
+ var $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, $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, $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, $brmerge$i = 0, $brmerge$i34 = 0, 
$brmerge590$i = 0, $brmerge593$i = 0, $brmerge594$i = 0, $brmerge598$i = 0, 
$brmerge655$i = 0, $brmerge658$i = 0, $brmerge659$i = 0, $exitcond = 0, 
$exitcond$i = 0, $exitcond615$i = 0, $exitcond617$i = 0, $exitcond94 = 0, 
$exitcond95 = 0, $notlhs601$i = 0, $notlhs662$i = 0;
+ var $notrhs$i = 0, $notrhs$i43 = 0, $notrhs602$i = 0, $notrhs663$i = 0, 
$or$cond = 0, $or$cond$not$i = 0, $or$cond$not$i32 = 0, $or$cond10$i = 0, 
$or$cond12$i = 0, $or$cond12$i37 = 0, $or$cond15$i = 0, $or$cond15$i38 = 0, 
$or$cond18$i = 0, $or$cond18$i40 = 0, $or$cond21$i = 0, $or$cond21$i42 = 0, 
$or$cond24$i = 0, $or$cond24$not$i = 0, $or$cond27$i = 0, $or$cond27$not$i = 0;
+ var $or$cond3$i = 0, $or$cond30$i = 0, $or$cond33$i = 0, $or$cond36$i = 0, 
$or$cond36$i44 = 0, $or$cond39$i = 0, $or$cond39$i45 = 0, $or$cond42$i = 0, 
$or$cond42$i46 = 0, $or$cond45$i = 0, $or$cond45$i48 = 0, $or$cond48$i = 0, 
$or$cond48$i41 = 0, $or$cond556$i = 0, $or$cond592$i = 0, $or$cond596$i = 0, 
$or$cond6$i = 0, $or$cond657$i = 0, $or$cond661$i = 0, $or$cond7$i = 0;
+ var $or$cond9$i = 0, $tmp$i = 0, $tmp$i47 = 0, $tmp476$i = 0, $tmp553$i = 0, 
$trunc$i = 0, $trunc$i$clear = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $5 = sp + 4 | 0;
+ $6 = sp;
+ $7 = $0 + 4 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $8 + 56 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $10 & 8;
+ $12 = ($11 | 0) == 0;
+ $$ = $12 ? $2 : 0;
+ $13 = $8 + 40 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = ($14 | 0) > 0;
+ $16 = ($$ | 0) != 0;
+ $or$cond = $15 & $16;
+ if ($or$cond) {
+  $17 = $14 << 2;
+  $18 = _malloc($17) | 0;
+  $19 = ($18 | 0) == (0 | 0);
+  if ($19) {
+   $$027 = 12;
+  } else {
+   $$0 = $18;
+   label = 3;
+  }
+ } else {
+  $$0 = 0;
+  label = 3;
+ }
+ if ((label | 0) == 3) {
+  $20 = $8 + 60 | 0;
+  $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+  $22 = ($21 | 0) == 0;
+  if ($22) {
+   SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+   $447 = $4 & 1;
+   $448 = $4 & 2;
+   $449 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $450 = $449 & 4;
+   $451 = ($$0 | 0) == (0 | 0);
+   if ($451) {
+    $$0456$i29 = 0;
+   } else {
+    $452 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    $$0456$i29 = $452;
+   }
+   $453 = $$0456$i29 << 2;
+   $454 = $8 + 52 | 0;
+   $455 = SAFE_HEAP_LOAD($454 | 0, 4, 0) | 0 | 0;
+   $456 = $455 << 3;
+   $457 = $456 + 8 | 0;
+   $458 = Math_imul($453, $455) | 0;
+   $459 = $457 + $458 | 0;
+   $460 = $459 << 1;
+   $461 = $453 + 12 | 0;
+   $462 = $461 + $456 | 0;
+   $463 = $462 + $460 | 0;
+   $464 = _malloc($463) | 0;
+   $465 = ($464 | 0) == (0 | 0);
+   if ($465) {
+    $$1$i = 12;
+    $$3 = 0;
+   } else {
+    _memset($464 | 0, 0, $463 | 0) | 0;
+    $466 = $464 + $453 | 0;
+    $467 = $466;
+    $468 = $467 & 3;
+    $469 = ($468 | 0) == 0;
+    $470 = 4 - $468 | 0;
+    $$$i30 = $469 ? 0 : $470;
+    $471 = $466 + $$$i30 | 0;
+    $472 = $471 + $457 | 0;
+    $473 = $472;
+    $474 = $473 & 3;
+    $475 = ($474 | 0) == 0;
+    $476 = 4 - $474 | 0;
+    $477 = $475 ? 0 : $476;
+    $478 = $472 + $477 | 0;
+    $479 = $478 + $457 | 0;
+    $480 = $479;
+    $481 = $480 & 3;
+    $482 = ($481 | 0) == 0;
+    $483 = 4 - $481 | 0;
+    $$477$i = $482 ? 0 : $483;
+    $484 = $479 + $$477$i | 0;
+    $485 = $484 + $456 | 0;
+    $486 = $485;
+    $487 = $486 & 3;
+    $488 = ($455 | 0) > 0;
+    if ($488) {
+     $489 = ($487 | 0) == 0;
+     $490 = 4 - $487 | 0;
+     $491 = $489 ? 0 : $490;
+     $492 = $485 + $491 | 0;
+     $$0420587$i = $492;
+     $$0448586$i = 0;
+     while (1) {
+      $493 = ($478 + ($$0448586$i << 3) | 0) + 4 | 0;
+      SAFE_HEAP_STORE($493 | 0, $$0420587$i | 0, 4);
+      $494 = $$0420587$i + $453 | 0;
+      $495 = ($471 + ($$0448586$i << 3) | 0) + 4 | 0;
+      SAFE_HEAP_STORE($495 | 0, $494 | 0, 4);
+      $496 = $494 + $453 | 0;
+      $497 = $$0448586$i + 1 | 0;
+      $exitcond94 = ($497 | 0) == ($455 | 0);
+      if ($exitcond94) {
+       $$1449584$i = 0;
+       break;
+      } else {
+       $$0420587$i = $496;
+       $$0448586$i = $497;
+      }
+     }
+     while (1) {
+      $498 = $484 + ($$1449584$i << 3) | 0;
+      SAFE_HEAP_STORE($498 | 0, -1 | 0, 4);
+      $499 = $$1449584$i + 1 | 0;
+      $exitcond = ($499 | 0) == ($455 | 0);
+      if ($exitcond) {
+       break;
+      } else {
+       $$1449584$i = $499;
+      }
+     }
+    }
+    $500 = _mbtowc($5, $1, 4) | 0;
+    $501 = ($500 | 0) < 1;
+    if ($501) {
+     $502 = ($500 | 0) < 0;
+     if ($502) {
+      $$0426$i = 1;
+      $$2 = 0;
+     } else {
+      $$0423$i = 1;
+      label = 201;
+     }
+    } else {
+     $$0423$i = $500;
+     label = 201;
+    }
+    L21 : do {
+     if ((label | 0) == 201) {
+      $503 = $1 + $$0423$i | 0;
+      $504 = $8 + 8 | 0;
+      $505 = ($450 | 0) != 0;
+      $506 = ($$0456$i29 | 0) > 0;
+      $507 = $8 + 12 | 0;
+      $508 = $8 + 44 | 0;
+      $509 = $8 + 32 | 0;
+      $510 = $8 + 36 | 0;
+      $511 = ($$0456$i29 | 0) == 0;
+      $notlhs601$i = ($447 | 0) == 0;
+      $$not597$i = ($$0456$i29 | 0) < 1;
+      $$0415$i = 0;
+      $$0421$i = $503;
+      $$0422$i = 0;
+      $$0432$i = 0;
+      $$0437$i = -1;
+      $$0460$i = $471;
+      $$1424$i = $$0423$i;
+      $$1430$i = $464;
+      $$1471$i = $471;
+      $$1474$i = $478;
+      while (1) {
+       $512 = ($$0437$i | 0) < 0;
+       if ($512) {
+        $513 = SAFE_HEAP_LOAD($504 | 0, 4, 0) | 0 | 0;
+        $514 = $513 + 8 | 0;
+        $515 = SAFE_HEAP_LOAD($514 | 0, 4, 0) | 0 | 0;
+        $516 = ($515 | 0) == (0 | 0);
+        L27 : do {
+         if ($516) {
+          $$1433$ph$lcssa$i = $$0432$i;
+          $$1438$ph$lcssa$i = $$0437$i;
+          $$1461$ph$lcssa$i = $$0460$i;
+         } else {
+          $517 = ($$0422$i | 0) != 0;
+          $518 = ($$0415$i | 0) == 95;
+          $519 = ($$0422$i | 0) == 0;
+          $520 = ($$0415$i | 0) == 10;
+          $or$cond3$i = $505 & $520;
+          $notrhs602$i = ($$0422$i | 0) < 1;
+          $or$cond$not$i32 = $notlhs601$i & $notrhs602$i;
+          $$0427$ph533$i = $513;
+          $$1433$ph531$i = $$0432$i;
+          $$1438$ph529$i = $$0437$i;
+          $$1461$ph527$i = $$0460$i;
+          $832 = $514;
+          while (1) {
+           $$0427511$i = $$0427$ph533$i;
+           $585 = $832;
+           L31 : while (1) {
+            $521 = $$0427511$i + 12 | 0;
+            $522 = SAFE_HEAP_LOAD($521 | 0, 4, 0) | 0 | 0;
+            $523 = $484 + ($522 << 3) | 0;
+            $524 = SAFE_HEAP_LOAD($523 | 0, 4, 0) | 0 | 0;
+            $525 = ($524 | 0) < ($$0422$i | 0);
+            if (!$525) {
+             $$2462$i = $$1461$ph527$i;
+             $$3435$i = $$1433$ph531$i;
+             $$3440$i = $$1438$ph529$i;
+             break;
+            }
+            $526 = $$0427511$i + 20 | 0;
+            $527 = SAFE_HEAP_LOAD($526 | 0, 4, 0) | 0 | 0;
+            $528 = ($527 | 0) == 0;
+            if ($528) {
+             label = 236;
+             break;
+            }
+            $529 = $527 & 1;
+            $530 = ($529 | 0) == 0;
+            $brmerge$i34 = $or$cond$not$i32 | $530;
+            $brmerge590$i = $or$cond3$i | $brmerge$i34;
+            L35 : do {
+             if ($brmerge590$i) {
+              $531 = $527 & 2;
+              $532 = ($531 | 0) == 0;
+              if (!$532) {
+               $533 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+               $534 = $533 | $448;
+               $535 = ($534 | 0) == 0;
+               $536 = ($533 | 0) == 10;
+               $or$cond7$i = $505 & $536;
+               $or$cond592$i = $535 | $or$cond7$i;
+               if (!$or$cond592$i) {
+                break;
+               }
+              }
+              $537 = $527 & 16;
+              $538 = ($537 | 0) == 0;
+              do {
+               if (!$538) {
+                if ($518) {
+                 break L35;
+                }
+                $539 = _iswalnum($$0415$i) | 0;
+                $540 = ($539 | 0) == 0;
+                if (!$540) {
+                 break L35;
+                }
+                $541 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                $542 = ($541 | 0) == 95;
+                if ($542) {
+                 break;
+                }
+                $543 = _iswalnum($541) | 0;
+                $544 = ($543 | 0) == 0;
+                if ($544) {
+                 break L35;
+                }
+               }
+              } while (0);
+              $545 = SAFE_HEAP_LOAD($526 | 0, 4, 0) | 0 | 0;
+              $546 = $545 & 32;
+              $547 = ($546 | 0) == 0;
+              if ($547) {
+               $556 = $545;
+              } else {
+               if ($518) {
+                $$old$i35 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                $$old8$i = ($$old$i35 | 0) == 95;
+                if ($$old8$i) {
+                 break;
+                } else {
+                 $552 = $$old$i35;
+                }
+               } else {
+                $548 = _iswalnum($$0415$i) | 0;
+                $549 = ($548 | 0) == 0;
+                $550 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                $551 = ($550 | 0) == 95;
+                $or$cond9$i = $549 | $551;
+                if ($or$cond9$i) {
+                 break;
+                } else {
+                 $552 = $550;
+                }
+               }
+               $553 = _iswalnum($552) | 0;
+               $554 = ($553 | 0) == 0;
+               if (!$554) {
+                break;
+               }
+               $$pre$i36 = SAFE_HEAP_LOAD($526 | 0, 4, 0) | 0 | 0;
+               $556 = $$pre$i36;
+              }
+              $555 = $556 & 64;
+              $557 = ($555 | 0) != 0;
+              $or$cond12$i37 = $517 & $557;
+              $558 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+              $559 = ($558 | 0) != 0;
+              $or$cond15$i38 = $559 & $or$cond12$i37;
+              do {
+               if ($or$cond15$i38) {
+                if ($518) {
+                 $562 = $558;
+                 $566 = 1;
+                } else {
+                 $560 = _iswalnum($$0415$i) | 0;
+                 $561 = ($560 | 0) != 0;
+                 $$pre619$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                 $562 = $$pre619$i;
+                 $566 = $561;
+                }
+                $563 = ($562 | 0) == 95;
+                if ($563) {
+                 if ($566) {
+                  break L35;
+                 } else {
+                  break;
+                 }
+                } else {
+                 $564 = _iswalnum($562) | 0;
+                 $565 = ($564 | 0) != 0;
+                 $tmp476$i = $566 ^ $565;
+                 if ($tmp476$i) {
+                  break;
+                 } else {
+                  break L35;
+                 }
+                }
+               }
+              } while (0);
+              $567 = SAFE_HEAP_LOAD($526 | 0, 4, 0) | 0 | 0;
+              $568 = $567 & 128;
+              $569 = ($568 | 0) == 0;
+              if ($569) {
+               label = 236;
+               break L31;
+              }
+              $570 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+              $571 = ($570 | 0) == 0;
+              $or$cond18$i40 = $519 | $571;
+              if ($or$cond18$i40) {
+               break;
+              }
+              if ($518) {
+               $574 = $570;
+               $579 = 1;
+              } else {
+               $572 = _iswalnum($$0415$i) | 0;
+               $573 = ($572 | 0) != 0;
+               $$pre620$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+               $574 = $$pre620$i;
+               $579 = $573;
+              }
+              $575 = ($574 | 0) == 95;
+              if ($575) {
+               if ($579) {
+                label = 236;
+                break L31;
+               } else {
+                break;
+               }
+              } else {
+               $576 = _iswalnum($574) | 0;
+               $577 = ($576 | 0) != 0;
+               $578 = $579 ^ $577;
+               if ($578) {
+                break;
+               } else {
+                label = 236;
+                break L31;
+               }
+              }
+             }
+            } while (0);
+            $580 = $$0427511$i + 32 | 0;
+            $581 = $$0427511$i + 40 | 0;
+            $582 = SAFE_HEAP_LOAD($581 | 0, 4, 0) | 0 | 0;
+            $583 = ($582 | 0) == (0 | 0);
+            if ($583) {
+             $$1433$ph$lcssa$i = $$1433$ph531$i;
+             $$1438$ph$lcssa$i = $$1438$ph529$i;
+             $$1461$ph$lcssa$i = $$1461$ph527$i;
+             break L27;
+            } else {
+             $$0427511$i = $580;
+             $585 = $581;
+            }
+           }
+           if ((label | 0) == 236) {
+            label = 0;
+            $584 = SAFE_HEAP_LOAD($585 | 0, 4, 0) | 0 | 0;
+            SAFE_HEAP_STORE($$1461$ph527$i | 0, $584 | 0, 4);
+            if ($506) {
+             $586 = $$1461$ph527$i + 4 | 0;
+             $587 = SAFE_HEAP_LOAD($586 | 0, 4, 0) | 0 | 0;
+             _memset($587 | 0, -1, $453 | 0) | 0;
+            }
+            $588 = $$0427511$i + 16 | 0;
+            $589 = SAFE_HEAP_LOAD($588 | 0, 4, 0) | 0 | 0;
+            $590 = ($589 | 0) == (0 | 0);
+            do {
+             if (!$590) {
+              $591 = SAFE_HEAP_LOAD($589 | 0, 4, 0) | 0 | 0;
+              $592 = ($591 | 0) > -1;
+              if (!$592) {
+               break;
+              }
+              $593 = $$1461$ph527$i + 4 | 0;
+              $$0457523$i = $589;
+              $594 = $591;
+              while (1) {
+               $595 = ($594 | 0) < ($$0456$i29 | 0);
+               if ($595) {
+                $596 = SAFE_HEAP_LOAD($593 | 0, 4, 0) | 0 | 0;
+                $597 = $596 + ($594 << 2) | 0;
+                SAFE_HEAP_STORE($597 | 0, $$0422$i | 0, 4);
+               }
+               $598 = $$0457523$i + 4 | 0;
+               $599 = SAFE_HEAP_LOAD($598 | 0, 4, 0) | 0 | 0;
+               $600 = ($599 | 0) > -1;
+               if ($600) {
+                $$0457523$i = $598;
+                $594 = $599;
+               } else {
+                break;
+               }
+              }
+             }
+            } while (0);
+            $601 = SAFE_HEAP_LOAD($$1461$ph527$i | 0, 4, 0) | 0 | 0;
+            $602 = SAFE_HEAP_LOAD($507 | 0, 4, 0) | 0 | 0;
+            $$not$i = ($601 | 0) != ($602 | 0);
+            $brmerge598$i = $$not597$i | $$not$i;
+            if ($brmerge598$i) {
+             $$1433$ph532$mux$i = $$not$i ? $$1433$ph531$i : 1;
+             $$1438$ph530$mux$i = $$not$i ? $$1438$ph529$i : $$0422$i;
+             $$pre631$i = $$1461$ph527$i + 4 | 0;
+             $$2434$i = $$1433$ph532$mux$i;
+             $$2439$i = $$1438$ph530$mux$i;
+             $$pre$phi632$iZ2D = $$pre631$i;
+            } else {
+             $603 = $$1461$ph527$i + 4 | 0;
+             $604 = SAFE_HEAP_LOAD($603 | 0, 4, 0) | 0 | 0;
+             $$3451525$i = 0;
+             while (1) {
+              $605 = $604 + ($$3451525$i << 2) | 0;
+              $606 = SAFE_HEAP_LOAD($605 | 0, 4, 0) | 0 | 0;
+              $607 = $$0 + ($$3451525$i << 2) | 0;
+              SAFE_HEAP_STORE($607 | 0, $606 | 0, 4);
+              $608 = $$3451525$i + 1 | 0;
+              $exitcond$i = ($608 | 0) == ($$0456$i29 | 0);
+              if ($exitcond$i) {
+               $$2434$i = 1;
+               $$2439$i = $$0422$i;
+               $$pre$phi632$iZ2D = $603;
+               break;
+              } else {
+               $$3451525$i = $608;
+              }
+             }
+            }
+            $609 = SAFE_HEAP_LOAD($521 | 0, 4, 0) | 0 | 0;
+            $610 = $484 + ($609 << 3) | 0;
+            SAFE_HEAP_STORE($610 | 0, $$0422$i | 0, 4);
+            $611 = ($484 + ($609 << 3) | 0) + 4 | 0;
+            SAFE_HEAP_STORE($611 | 0, $$pre$phi632$iZ2D | 0, 4);
+            $612 = $$1461$ph527$i + 8 | 0;
+            $$2462$i = $612;
+            $$3435$i = $$2434$i;
+            $$3440$i = $$2439$i;
+           }
+           $613 = $$0427511$i + 32 | 0;
+           $614 = $$0427511$i + 40 | 0;
+           $615 = SAFE_HEAP_LOAD($614 | 0, 4, 0) | 0 | 0;
+           $616 = ($615 | 0) == (0 | 0);
+           if ($616) {
+            $$1433$ph$lcssa$i = $$3435$i;
+            $$1438$ph$lcssa$i = $$3440$i;
+            $$1461$ph$lcssa$i = $$2462$i;
+            break;
+           } else {
+            $$0427$ph533$i = $613;
+            $$1433$ph531$i = $$3435$i;
+            $$1438$ph529$i = $$3440$i;
+            $$1461$ph527$i = $$2462$i;
+            $832 = $614;
+           }
+          }
+         }
+        } while (0);
+        SAFE_HEAP_STORE($$1461$ph$lcssa$i | 0, 0 | 0, 4);
+        $$old46$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+        $$old47$i = ($$old46$i | 0) == 0;
+        if ($$old47$i) {
+         $$10447$i = $$1438$ph$lcssa$i;
+         break;
+        } else {
+         $$4436$i = $$1433$ph$lcssa$i;
+         $$4441$i = $$1438$ph$lcssa$i;
+         $666 = $$old46$i;
+        }
+       } else {
+        if ($511) {
+         $$10447$i = $$0437$i;
+         break;
+        }
+        $617 = ($$0460$i | 0) != ($$1471$i | 0);
+        $618 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+        $619 = ($618 | 0) != 0;
+        $or$cond48$i41 = $617 & $619;
+        if ($or$cond48$i41) {
+         $$4436$i = $$0432$i;
+         $$4441$i = $$0437$i;
+         $666 = $618;
+        } else {
+         $$10447$i = $$0437$i;
+         break;
+        }
+       }
+       $620 = $$0422$i + $$1424$i | 0;
+       $621 = _mbtowc($5, $$0421$i, 4) | 0;
+       $622 = ($621 | 0) < 1;
+       if ($622) {
+        $623 = ($621 | 0) < 0;
+        if ($623) {
+         $$0426$i = 1;
+         $$2 = 0;
+         break L21;
+        } else {
+         $$2425$i = 1;
+        }
+       } else {
+        $$2425$i = $621;
+       }
+       $624 = $$0421$i + $$2425$i | 0;
+       $625 = SAFE_HEAP_LOAD($508 | 0, 4, 0) | 0 | 0;
+       $626 = ($625 | 0) != 0;
+       $627 = ($$4436$i | 0) != 0;
+       $or$cond21$i42 = $627 & $626;
+       if ($or$cond21$i42) {
+        $628 = SAFE_HEAP_LOAD($$1471$i | 0, 4, 0) | 0 | 0;
+        $629 = ($628 | 0) == (0 | 0);
+        if ($629) {
+         $$3463$lcssa$i = $$1474$i;
+        } else {
+         $630 = SAFE_HEAP_LOAD($510 | 0, 4, 0) | 0 | 0;
+         $631 = SAFE_HEAP_LOAD($630 | 0, 4, 0) | 0 | 0;
+         $632 = ($631 | 0) > -1;
+         $$0468540$i = $$1471$i;
+         $$3463542$i = $$1474$i;
+         while (1) {
+          $633 = $$0468540$i + 4 | 0;
+          L106 : do {
+           if ($632) {
+            $$4452537$i = 0;
+            $637 = $631;
+            while (1) {
+             $634 = $$4452537$i | 1;
+             $635 = $630 + ($634 << 2) | 0;
+             $636 = SAFE_HEAP_LOAD($635 | 0, 4, 0) | 0 | 0;
+             $638 = ($637 | 0) < ($$0456$i29 | 0);
+             if (!$638) {
+              $$4464$i = $$3463542$i;
+              break L106;
+             }
+             $639 = SAFE_HEAP_LOAD($633 | 0, 4, 0) | 0 | 0;
+             $640 = $639 + ($636 << 2) | 0;
+             $641 = SAFE_HEAP_LOAD($640 | 0, 4, 0) | 0 | 0;
+             $642 = $$0 + ($636 << 2) | 0;
+             $643 = SAFE_HEAP_LOAD($642 | 0, 4, 0) | 0 | 0;
+             $644 = ($641 | 0) == ($643 | 0);
+             if ($644) {
+              $645 = $639 + ($637 << 2) | 0;
+              $646 = SAFE_HEAP_LOAD($645 | 0, 4, 0) | 0 | 0;
+              $647 = $$0 + ($637 << 2) | 0;
+              $648 = SAFE_HEAP_LOAD($647 | 0, 4, 0) | 0 | 0;
+              $649 = ($646 | 0) < ($648 | 0);
+              if ($649) {
+               $$4464$i = $$3463542$i;
+               break L106;
+              }
+             }
+             $650 = $$4452537$i + 2 | 0;
+             $651 = $630 + ($650 << 2) | 0;
+             $652 = SAFE_HEAP_LOAD($651 | 0, 4, 0) | 0 | 0;
+             $653 = ($652 | 0) > -1;
+             if ($653) {
+              $$4452537$i = $650;
+              $637 = $652;
+             } else {
+              break;
+             }
+            }
+            $654 = $639;
+            $$pre$phi630$iZ2D = $633;
+            $658 = $654;
+            label = 265;
+           } else {
+            $$pre622$i = SAFE_HEAP_LOAD($633 | 0, 4, 0) | 0 | 0;
+            $$pre$phi630$iZ2D = $633;
+            $658 = $$pre622$i;
+            label = 265;
+           }
+          } while (0);
+          if ((label | 0) == 265) {
+           label = 0;
+           $655 = SAFE_HEAP_LOAD($$0468540$i | 0, 4, 0) | 0 | 0;
+           SAFE_HEAP_STORE($$3463542$i | 0, $655 | 0, 4);
+           $656 = $$3463542$i + 4 | 0;
+           $657 = SAFE_HEAP_LOAD($656 | 0, 4, 0) | 0 | 0;
+           SAFE_HEAP_STORE($656 | 0, $658 | 0, 4);
+           SAFE_HEAP_STORE($$pre$phi630$iZ2D | 0, $657 | 0, 4);
+           $659 = $$3463542$i + 8 | 0;
+           $$4464$i = $659;
+          }
+          $660 = $$0468540$i + 8 | 0;
+          $661 = SAFE_HEAP_LOAD($660 | 0, 4, 0) | 0 | 0;
+          $662 = ($661 | 0) == (0 | 0);
+          if ($662) {
+           $$3463$lcssa$i = $$4464$i;
+           break;
+          } else {
+           $$0468540$i = $660;
+           $$3463542$i = $$4464$i;
+          }
+         }
+        }
+        SAFE_HEAP_STORE($$3463$lcssa$i | 0, 0 | 0, 4);
+        $$2472$i = $$1471$i;
+        $$2475$i = $$1474$i;
+        $$5$i = 0;
+       } else {
+        $$2472$i = $$1474$i;
+        $$2475$i = $$1471$i;
+        $$5$i = $$4436$i;
+       }
+       $663 = SAFE_HEAP_LOAD($$2475$i | 0, 4, 0) | 0 | 0;
+       $664 = ($663 | 0) == (0 | 0);
+       if ($664) {
+        $$2431$lcssa$i = $$1430$i;
+        $$5442$lcssa$i = $$4441$i;
+        $$5465$lcssa$i = $$2472$i;
+        $$6$lcssa$i = $$5$i;
+       } else {
+        $665 = ($620 | 0) != 0;
+        $667 = ($666 | 0) == 95;
+        $668 = ($620 | 0) == 0;
+        $669 = ($666 | 0) == 10;
+        $or$cond27$i = $505 & $669;
+        $notrhs$i43 = ($620 | 0) < 1;
+        $or$cond24$not$i = $notlhs601$i & $notrhs$i43;
+        $$1469574$i = $$2475$i;
+        $$2431578$i = $$1430$i;
+        $$5442576$i = $$4441$i;
+        $$5465575$i = $$2472$i;
+        $$6577$i = $$5$i;
+        $671 = $663;
+        while (1) {
+         $670 = $671 + 8 | 0;
+         $672 = SAFE_HEAP_LOAD($670 | 0, 4, 0) | 0 | 0;
+         $673 = ($672 | 0) == (0 | 0);
+         if ($673) {
+          $$3$lcssa$i = $$2431578$i;
+          $$6443$lcssa$i = $$5442576$i;
+          $$6466$lcssa$i = $$5465575$i;
+          $$7$lcssa$i = $$6577$i;
+         } else {
+          $674 = $$1469574$i + 4 | 0;
+          $$1428565$i = $671;
+          $$6443556$i = $$5442576$i;
+          $$6466555$i = $$5465575$i;
+          $$7559$i = $$6577$i;
+          $772 = $$2431578$i;
+          $791 = $670;
+          while (1) {
+           $675 = SAFE_HEAP_LOAD($$1428565$i | 0, 4, 0) | 0 | 0;
+           $676 = $675 >>> 0 > $666 >>> 0;
+           L128 : do {
+            if ($676) {
+             $$10$i = $$7559$i;
+             $$4$i = $772;
+             $$7467$i = $$6466555$i;
+             $$9446$i = $$6443556$i;
+            } else {
+             $677 = $$1428565$i + 4 | 0;
+             $678 = SAFE_HEAP_LOAD($677 | 0, 4, 0) | 0 | 0;
+             $679 = $678 >>> 0 < $666 >>> 0;
+             if ($679) {
+              $$10$i = $$7559$i;
+              $$4$i = $772;
+              $$7467$i = $$6466555$i;
+              $$9446$i = $$6443556$i;
+              break;
+             }
+             $680 = $$1428565$i + 20 | 0;
+             $681 = SAFE_HEAP_LOAD($680 | 0, 4, 0) | 0 | 0;
+             $682 = ($681 | 0) == 0;
+             do {
+              if (!$682) {
+               $683 = $681 & 1;
+               $684 = ($683 | 0) == 0;
+               $brmerge593$i = $or$cond24$not$i | $684;
+               $brmerge594$i = $or$cond27$i | $brmerge593$i;
+               if (!$brmerge594$i) {
+                $$10$i = $$7559$i;
+                $$4$i = $772;
+                $$7467$i = $$6466555$i;
+                $$9446$i = $$6443556$i;
+                break L128;
+               }
+               $685 = $681 & 2;
+               $686 = ($685 | 0) == 0;
+               if (!$686) {
+                $687 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                $688 = $687 | $448;
+                $689 = ($688 | 0) == 0;
+                $690 = ($687 | 0) == 10;
+                $or$cond33$i = $505 & $690;
+                $or$cond596$i = $689 | $or$cond33$i;
+                if (!$or$cond596$i) {
+                 $$10$i = $$7559$i;
+                 $$4$i = $772;
+                 $$7467$i = $$6466555$i;
+                 $$9446$i = $$6443556$i;
+                 break L128;
+                }
+               }
+               $691 = $681 & 16;
+               $692 = ($691 | 0) == 0;
+               do {
+                if (!$692) {
+                 if ($667) {
+                  $$10$i = $$7559$i;
+                  $$4$i = $772;
+                  $$7467$i = $$6466555$i;
+                  $$9446$i = $$6443556$i;
+                  break L128;
+                 }
+                 $693 = _iswalnum($666) | 0;
+                 $694 = ($693 | 0) == 0;
+                 if (!$694) {
+                  $$10$i = $$7559$i;
+                  $$4$i = $772;
+                  $$7467$i = $$6466555$i;
+                  $$9446$i = $$6443556$i;
+                  break L128;
+                 }
+                 $695 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                 $696 = ($695 | 0) == 95;
+                 if ($696) {
+                  break;
+                 }
+                 $697 = _iswalnum($695) | 0;
+                 $698 = ($697 | 0) == 0;
+                 if ($698) {
+                  $$10$i = $$7559$i;
+                  $$4$i = $772;
+                  $$7467$i = $$6466555$i;
+                  $$9446$i = $$6443556$i;
+                  break L128;
+                 }
+                }
+               } while (0);
+               $699 = SAFE_HEAP_LOAD($680 | 0, 4, 0) | 0 | 0;
+               $700 = $699 & 32;
+               $701 = ($700 | 0) == 0;
+               if ($701) {
+                $710 = $699;
+               } else {
+                if ($667) {
+                 $$old34$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                 $$old35$i = ($$old34$i | 0) == 95;
+                 if ($$old35$i) {
+                  $$10$i = $$7559$i;
+                  $$4$i = $772;
+                  $$7467$i = $$6466555$i;
+                  $$9446$i = $$6443556$i;
+                  break L128;
+                 } else {
+                  $706 = $$old34$i;
+                 }
+                } else {
+                 $702 = _iswalnum($666) | 0;
+                 $703 = ($702 | 0) == 0;
+                 $704 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                 $705 = ($704 | 0) == 95;
+                 $or$cond36$i44 = $703 | $705;
+                 if ($or$cond36$i44) {
+                  $$10$i = $$7559$i;
+                  $$4$i = $772;
+                  $$7467$i = $$6466555$i;
+                  $$9446$i = $$6443556$i;
+                  break L128;
+                 } else {
+                  $706 = $704;
+                 }
+                }
+                $707 = _iswalnum($706) | 0;
+                $708 = ($707 | 0) == 0;
+                if (!$708) {
+                 $$10$i = $$7559$i;
+                 $$4$i = $772;
+                 $$7467$i = $$6466555$i;
+                 $$9446$i = $$6443556$i;
+                 break L128;
+                }
+                $$pre624$i = SAFE_HEAP_LOAD($680 | 0, 4, 0) | 0 | 0;
+                $710 = $$pre624$i;
+               }
+               $709 = $710 & 64;
+               $711 = ($709 | 0) != 0;
+               $or$cond39$i45 = $665 & $711;
+               $712 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+               $713 = ($712 | 0) != 0;
+               $or$cond42$i46 = $713 & $or$cond39$i45;
+               do {
+                if ($or$cond42$i46) {
+                 if ($667) {
+                  $716 = $712;
+                  $720 = 1;
+                 } else {
+                  $714 = _iswalnum($666) | 0;
+                  $715 = ($714 | 0) != 0;
+                  $$pre625$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                  $716 = $$pre625$i;
+                  $720 = $715;
+                 }
+                 $717 = ($716 | 0) == 95;
+                 if ($717) {
+                  if ($720) {
+                   $$10$i = $$7559$i;
+                   $$4$i = $772;
+                   $$7467$i = $$6466555$i;
+                   $$9446$i = $$6443556$i;
+                   break L128;
+                  } else {
+                   break;
+                  }
+                 } else {
+                  $718 = _iswalnum($716) | 0;
+                  $719 = ($718 | 0) != 0;
+                  $tmp$i47 = $720 ^ $719;
+                  if ($tmp$i47) {
+                   break;
+                  } else {
+                   $$10$i = $$7559$i;
+                   $$4$i = $772;
+                   $$7467$i = $$6466555$i;
+                   $$9446$i = $$6443556$i;
+                   break L128;
+                  }
+                 }
+                }
+               } while (0);
+               $721 = SAFE_HEAP_LOAD($680 | 0, 4, 0) | 0 | 0;
+               $722 = $721 & 128;
+               $723 = ($722 | 0) == 0;
+               do {
+                if (!$723) {
+                 $724 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                 $725 = ($724 | 0) == 0;
+                 $or$cond45$i48 = $668 | $725;
+                 if ($or$cond45$i48) {
+                  $$10$i = $$7559$i;
+                  $$4$i = $772;
+                  $$7467$i = $$6466555$i;
+                  $$9446$i = $$6443556$i;
+                  break L128;
+                 }
+                 if ($667) {
+                  $728 = $724;
+                  $733 = 1;
+                 } else {
+                  $726 = _iswalnum($666) | 0;
+                  $727 = ($726 | 0) != 0;
+                  $$pre626$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+                  $728 = $$pre626$i;
+                  $733 = $727;
+                 }
+                 $729 = ($728 | 0) == 95;
+                 if ($729) {
+                  if ($733) {
+                   break;
+                  } else {
+                   $$10$i = $$7559$i;
+                   $$4$i = $772;
+                   $$7467$i = $$6466555$i;
+                   $$9446$i = $$6443556$i;
+                   break L128;
+                  }
+                 } else {
+                  $730 = _iswalnum($728) | 0;
+                  $731 = ($730 | 0) != 0;
+                  $732 = $733 ^ $731;
+                  if ($732) {
+                   $$10$i = $$7559$i;
+                   $$4$i = $772;
+                   $$7467$i = $$6466555$i;
+                   $$9446$i = $$6443556$i;
+                   break L128;
+                  } else {
+                   break;
+                  }
+                 }
+                }
+               } while (0);
+               $734 = SAFE_HEAP_LOAD($680 | 0, 4, 0) | 0 | 0;
+               $735 = $734 & 4;
+               $736 = ($735 | 0) == 0;
+               do {
+                if ($736) {
+                 $745 = $734;
+                } else {
+                 $737 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+                 $738 = $737 & 2;
+                 $739 = ($738 | 0) == 0;
+                 if (!$739) {
+                  $745 = $734;
+                  break;
+                 }
+                 $740 = $$1428565$i + 24 | 0;
+                 $741 = SAFE_HEAP_LOAD($740 | 0, 4, 0) | 0 | 0;
+                 $742 = _iswctype($666, $741) | 0;
+                 $743 = ($742 | 0) == 0;
+                 if ($743) {
+                  $$10$i = $$7559$i;
+                  $$4$i = $772;
+                  $$7467$i = $$6466555$i;
+                  $$9446$i = $$6443556$i;
+                  break L128;
+                 }
+                 $$pre628$i = SAFE_HEAP_LOAD($680 | 0, 4, 0) | 0 | 0;
+                 $745 = $$pre628$i;
+                }
+               } while (0);
+               $744 = $745 & 4;
+               $746 = ($744 | 0) == 0;
+               do {
+                if (!$746) {
+                 $747 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+                 $748 = $747 & 2;
+                 $749 = ($748 | 0) == 0;
+                 if ($749) {
+                  break;
+                 }
+                 $750 = _towlower($666) | 0;
+                 $751 = $$1428565$i + 24 | 0;
+                 $752 = SAFE_HEAP_LOAD($751 | 0, 4, 0) | 0 | 0;
+                 $753 = _iswctype($750, $752) | 0;
+                 $754 = ($753 | 0) == 0;
+                 if (!$754) {
+                  break;
+                 }
+                 $755 = _towupper($666) | 0;
+                 $756 = SAFE_HEAP_LOAD($751 | 0, 4, 0) | 0 | 0;
+                 $757 = _iswctype($755, $756) | 0;
+                 $758 = ($757 | 0) == 0;
+                 if ($758) {
+                  $$10$i = $$7559$i;
+                  $$4$i = $772;
+                  $$7467$i = $$6466555$i;
+                  $$9446$i = $$6443556$i;
+                  break L128;
+                 }
+                }
+               } while (0);
+               $759 = SAFE_HEAP_LOAD($680 | 0, 4, 0) | 0 | 0;
+               $760 = $759 & 8;
+               $761 = ($760 | 0) == 0;
+               if ($761) {
+                break;
+               }
+               $762 = $$1428565$i + 28 | 0;
+               $763 = SAFE_HEAP_LOAD($762 | 0, 4, 0) | 0 | 0;
+               $764 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+               $765 = $764 & 2;
+               $766 = _tre_neg_char_classes_match($763, $666, $765) | 0;
+               $767 = ($766 | 0) == 0;
+               if (!$767) {
+                $$10$i = $$7559$i;
+                $$4$i = $772;
+                $$7467$i = $$6466555$i;
+                $$9446$i = $$6443556$i;
+                break L128;
+               }
+              }
+             } while (0);
+             if ($506) {
+              $768 = SAFE_HEAP_LOAD($674 | 0, 4, 0) | 0 | 0;
+              $$5453546$i = 0;
+              while (1) {
+               $769 = $768 + ($$5453546$i << 2) | 0;
+               $770 = SAFE_HEAP_LOAD($769 | 0, 4, 0) | 0 | 0;
+               $771 = $772 + ($$5453546$i << 2) | 0;
+               SAFE_HEAP_STORE($771 | 0, $770 | 0, 4);
+               $773 = $$5453546$i + 1 | 0;
+               $exitcond615$i = ($773 | 0) == ($$0456$i29 | 0);
+               if ($exitcond615$i) {
+                break;
+               } else {
+                $$5453546$i = $773;
+               }
+              }
+             }
+             $774 = $$1428565$i + 16 | 0;
+             $775 = SAFE_HEAP_LOAD($774 | 0, 4, 0) | 0 | 0;
+             $776 = ($775 | 0) == (0 | 0);
+             do {
+              if (!$776) {
+               $777 = SAFE_HEAP_LOAD($775 | 0, 4, 0) | 0 | 0;
+               $778 = ($777 | 0) > -1;
+               if ($778) {
+                $$1458549$i = $775;
+                $779 = $777;
+               } else {
+                break;
+               }
+               while (1) {
+                $780 = ($779 | 0) < ($$0456$i29 | 0);
+                if ($780) {
+                 $781 = $772 + ($779 << 2) | 0;
+                 SAFE_HEAP_STORE($781 | 0, $620 | 0, 4);
+                }
+                $782 = $$1458549$i + 4 | 0;
+                $783 = SAFE_HEAP_LOAD($782 | 0, 4, 0) | 0 | 0;
+                $784 = ($783 | 0) > -1;
+                if ($784) {
+                 $$1458549$i = $782;
+                 $779 = $783;
+                } else {
+                 break;
+                }
+               }
+              }
+             } while (0);
+             $785 = $$1428565$i + 12 | 0;
+             $786 = SAFE_HEAP_LOAD($785 | 0, 4, 0) | 0 | 0;
+             $787 = $484 + ($786 << 3) | 0;
+             $788 = SAFE_HEAP_LOAD($787 | 0, 4, 0) | 0 | 0;
+             $789 = ($788 | 0) < ($620 | 0);
+             if (!$789) {
+              $808 = SAFE_HEAP_LOAD($509 | 0, 4, 0) | 0 | 0;
+              $809 = ($484 + ($786 << 3) | 0) + 4 | 0;
+              $810 = SAFE_HEAP_LOAD($809 | 0, 4, 0) | 0 | 0;
+              $811 = SAFE_HEAP_LOAD($810 | 0, 4, 0) | 0 | 0;
+              $812 = _tre_tag_order($$0456$i29, $808, $772, $811) | 0;
+              $813 = ($812 | 0) == 0;
+              if ($813) {
+               $$10$i = $$7559$i;
+               $$4$i = $772;
+               $$7467$i = $$6466555$i;
+               $$9446$i = $$6443556$i;
+               break;
+              }
+              SAFE_HEAP_STORE($810 | 0, $772 | 0, 4);
+              $814 = SAFE_HEAP_LOAD($791 | 0, 4, 0) | 0 | 0;
+              $815 = SAFE_HEAP_LOAD($507 | 0, 4, 0) | 0 | 0;
+              $816 = ($814 | 0) == ($815 | 0);
+              if (!$816) {
+               $$10$i = $$7559$i;
+               $$4$i = $811;
+               $$7467$i = $$6466555$i;
+               $$9446$i = $$6443556$i;
+               break;
+              }
+              if ($506) {
+               $$7455551$i = 0;
+              } else {
+               $$10$i = 1;
+               $$4$i = $811;
+               $$7467$i = $$6466555$i;
+               $$9446$i = $620;
+               break;
+              }
+              while (1) {
+               $817 = $772 + ($$7455551$i << 2) | 0;
+               $818 = SAFE_HEAP_LOAD($817 | 0, 4, 0) | 0 | 0;
+               $819 = $$0 + ($$7455551$i << 2) | 0;
+               SAFE_HEAP_STORE($819 | 0, $818 | 0, 4);
+               $820 = $$7455551$i + 1 | 0;
+               $exitcond617$i = ($820 | 0) == ($$0456$i29 | 0);
+               if ($exitcond617$i) {
+                $$10$i = 1;
+                $$4$i = $811;
+                $$7467$i = $$6466555$i;
+                $$9446$i = $620;
+                break L128;
+               } else {
+                $$7455551$i = $820;
+               }
+              }
+             }
+             $790 = SAFE_HEAP_LOAD($791 | 0, 4, 0) | 0 | 0;
+             SAFE_HEAP_STORE($$6466555$i | 0, $790 | 0, 4);
+             $792 = $$6466555$i + 4 | 0;
+             $793 = SAFE_HEAP_LOAD($792 | 0, 4, 0) | 0 | 0;
+             SAFE_HEAP_STORE($792 | 0, $772 | 0, 4);
+             SAFE_HEAP_STORE($787 | 0, $620 | 0, 4);
+             $794 = ($484 + ($786 << 3) | 0) + 4 | 0;
+             SAFE_HEAP_STORE($794 | 0, $792 | 0, 4);
+             $795 = $790;
+             $796 = SAFE_HEAP_LOAD($507 | 0, 4, 0) | 0 | 0;
+             $797 = ($795 | 0) == ($796 | 0);
+             do {
+              if ($797) {
+               $798 = ($$6443556$i | 0) == -1;
+               if ($798) {
+                if ($506) {
+                 $$6454553$i = 0;
+                } else {
+                 $$7444$i = $620;
+                 $$8$i = 1;
+                 break;
+                }
+               } else {
+                if (!$506) {
+                 $$7444$i = $$6443556$i;
+                 $$8$i = $$7559$i;
+                 break;
+                }
+                $799 = SAFE_HEAP_LOAD($772 | 0, 4, 0) | 0 | 0;
+                $800 = SAFE_HEAP_LOAD($$0 | 0, 4, 0) | 0 | 0;
+                $801 = ($799 | 0) > ($800 | 0);
+                if ($801) {
+                 $$7444$i = $$6443556$i;
+                 $$8$i = $$7559$i;
+                 break;
+                } else {
+                 $$6454553$i = 0;
+                }
+               }
+               while (1) {
+                $802 = $772 + ($$6454553$i << 2) | 0;
+                $803 = SAFE_HEAP_LOAD($802 | 0, 4, 0) | 0 | 0;
+                $804 = $$0 + ($$6454553$i << 2) | 0;
+                SAFE_HEAP_STORE($804 | 0, $803 | 0, 4);
+                $805 = $$6454553$i + 1 | 0;
+                $806 = ($805 | 0) < ($$0456$i29 | 0);
+                if ($806) {
+                 $$6454553$i = $805;
+                } else {
+                 $$7444$i = $620;
+                 $$8$i = 1;
+                 break;
+                }
+               }
+              } else {
+               $$7444$i = $$6443556$i;
+               $$8$i = $$7559$i;
+              }
+             } while (0);
+             $807 = $$6466555$i + 8 | 0;
+             $$10$i = $$8$i;
+             $$4$i = $793;
+             $$7467$i = $807;
+             $$9446$i = $$7444$i;
+            }
+           } while (0);
+           $821 = $$1428565$i + 32 | 0;
+           $822 = $$1428565$i + 40 | 0;
+           $823 = SAFE_HEAP_LOAD($822 | 0, 4, 0) | 0 | 0;
+           $824 = ($823 | 0) == (0 | 0);
+           if ($824) {
+            $$3$lcssa$i = $$4$i;
+            $$6443$lcssa$i = $$9446$i;
+            $$6466$lcssa$i = $$7467$i;
+            $$7$lcssa$i = $$10$i;
+            break;
+           } else {
+            $$1428565$i = $821;
+            $$6443556$i = $$9446$i;
+            $$6466555$i = $$7467$i;
+            $$7559$i = $$10$i;
+            $772 = $$4$i;
+            $791 = $822;
+           }
+          }
+         }
+         $825 = $$1469574$i + 8 | 0;
+         $826 = SAFE_HEAP_LOAD($825 | 0, 4, 0) | 0 | 0;
+         $827 = ($826 | 0) == (0 | 0);
+         if ($827) {
+          $$2431$lcssa$i = $$3$lcssa$i;
+          $$5442$lcssa$i = $$6443$lcssa$i;
+          $$5465$lcssa$i = $$6466$lcssa$i;
+          $$6$lcssa$i = $$7$lcssa$i;
+          break;
+         } else {
+          $$1469574$i = $825;
+          $$2431578$i = $$3$lcssa$i;
+          $$5442576$i = $$6443$lcssa$i;
+          $$5465575$i = $$6466$lcssa$i;
+          $$6577$i = $$7$lcssa$i;
+          $671 = $826;
+         }
+        }
+       }
+       SAFE_HEAP_STORE($$5465$lcssa$i | 0, 0 | 0, 4);
+       $$0415$i = $666;
+       $$0421$i = $624;
+       $$0422$i = $620;
+       $$0432$i = $$6$lcssa$i;
+       $$0437$i = $$5442$lcssa$i;
+       $$0460$i = $$5465$lcssa$i;
+       $$1424$i = $$2425$i;
+       $$1430$i = $$2431$lcssa$i;
+       $$1471$i = $$2472$i;
+       $$1474$i = $$2475$i;
+      }
+      $$10447$lobit$i = $$10447$i >>> 31;
+      $$0426$i = $$10447$lobit$i;
+      $$2 = $$10447$i;
+     }
+    } while (0);
+    _free($464);
+    $$1$i = $$0426$i;
+    $$3 = $$2;
+   }
+   $$026 = $$1$i;
+   $$4 = $$3;
+  } else {
+   SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+   $23 = $4 & 1;
+   $24 = $4 & 2;
+   $25 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $26 = $25 & 4;
+   $27 = ___tre_mem_new_impl(0, 0) | 0;
+   $28 = ($27 | 0) == (0 | 0);
+   L218 : do {
+    if ($28) {
+     $$1 = 0;
+     $$15$i = 12;
+    } else {
+     $29 = ___tre_mem_alloc_impl($27, 0, 0, 0, 32) | 0;
+     $30 = ($29 | 0) == (0 | 0);
+     if ($30) {
+      ___tre_mem_destroy($27);
+      $$1 = 0;
+      $$15$i = 12;
+      break;
+     }
+     $31 = $29 + 24 | 0;
+     SAFE_HEAP_STORE($31 | 0, 0 | 0, 4);
+     $32 = $29 + 28 | 0;
+     SAFE_HEAP_STORE($32 | 0, 0 | 0, 4);
+     $33 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+     $34 = ($33 | 0) == 0;
+     if ($34) {
+      $$0551$i = 0;
+      label = 9;
+     } else {
+      $35 = $33 << 2;
+      $36 = _malloc($35) | 0;
+      $37 = ($36 | 0) == (0 | 0);
+      if ($37) {
+       $$052 = 0;
+       $$1514$i = 0;
+       $$1544$i = 0;
+       $$1552$i = $36;
+       $$7512$i = 12;
+      } else {
+       $$0551$i = $36;
+       label = 9;
+      }
+     }
+     L225 : do {
+      if ((label | 0) == 9) {
+       $38 = $8 + 28 | 0;
+       $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+       $40 = ($39 | 0) == 0;
+       if ($40) {
+        $$0513$i = 0;
+       } else {
+        $41 = $39 << 3;
+        $42 = _malloc($41) | 0;
+        $43 = ($42 | 0) == (0 | 0);
+        if ($43) {
+         $$052 = 0;
+         $$1514$i = $42;
+         $$1544$i = 0;
+         $$1552$i = $$0551$i;
+         $$7512$i = 12;
+         break;
+        } else {
+         $$0513$i = $42;
+        }
+       }
+       $44 = $8 + 52 | 0;
+       $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+       $46 = ($45 | 0) == 0;
+       if ($46) {
+        $$0543$ph$i = 0;
+       } else {
+        $47 = $45 << 2;
+        $48 = _malloc($47) | 0;
+        $49 = ($48 | 0) == (0 | 0);
+        if ($49) {
+         $$052 = 0;
+         $$1514$i = $$0513$i;
+         $$1544$i = $48;
+         $$1552$i = $$0551$i;
+         $$7512$i = 12;
+         break;
+        } else {
+         $$0543$ph$i = $48;
+        }
+       }
+       $50 = $8 + 8 | 0;
+       $51 = $8 + 12 | 0;
+       $52 = ($$0 | 0) == (0 | 0);
+       $53 = ($$0 | 0) != (0 | 0);
+       $54 = $8 + 32 | 0;
+       $55 = ($26 | 0) != 0;
+       $56 = ($$0551$i | 0) == (0 | 0);
+       $57 = ($$0513$i | 0) == (0 | 0);
+       $58 = ($$0543$ph$i | 0) == (0 | 0);
+       $notlhs662$i = ($23 | 0) == 0;
+       $$0462$i = $1;
+       $$0475$i = 1;
+       $$0485$i = -1;
+       $$0491$i = -1;
+       $$0517$i = $29;
+       $59 = $33;
+       L233 : while (1) {
+        $60 = ($59 | 0) > 0;
+        if ($60) {
+         $$0497601$i = 0;
+         $831 = $59;
+         while (1) {
+          $64 = $$0551$i + ($$0497601$i << 2) | 0;
+          SAFE_HEAP_STORE($64 | 0, -1 | 0, 4);
+          if ($52) {
+           $68 = $831;
+          } else {
+           $65 = $$0 + ($$0497601$i << 2) | 0;
+           SAFE_HEAP_STORE($65 | 0, -1 | 0, 4);
+           $$pre670$i = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+           $68 = $$pre670$i;
+          }
+          $66 = $$0497601$i + 1 | 0;
+          $67 = ($66 | 0) < ($68 | 0);
+          if ($67) {
+           $$0497601$i = $66;
+           $831 = $68;
+          } else {
+           break;
+          }
+         }
+        }
+        $61 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+        $62 = ($61 | 0) > 0;
+        if ($62) {
+         $63 = $61 << 2;
+         _memset($$0543$ph$i | 0, 0, $63 | 0) | 0;
+        }
+        $69 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        $70 = $$0475$i + $$0485$i | 0;
+        $71 = _mbtowc($6, $$0462$i, 4) | 0;
+        $72 = ($71 | 0) < 1;
+        if ($72) {
+         $73 = ($71 | 0) < 0;
+         if ($73) {
+          $$052 = 0;
+          $$1514$i = $$0513$i;
+          $$1544$i = $$0543$ph$i;
+          $$1552$i = $$0551$i;
+          $$7512$i = 1;
+          break L225;
+         } else {
+          $$1476$i = 1;
+         }
+        } else {
+         $$1476$i = $71;
+        }
+        $74 = $$0462$i + $$1476$i | 0;
+        $75 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        $76 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+        $77 = $76 + 8 | 0;
+        $78 = SAFE_HEAP_LOAD($77 | 0, 4, 0) | 0 | 0;
+        $79 = ($78 | 0) == (0 | 0);
+        if ($79) {
+         $$12529$i = $$0517$i;
+         $$2493$i = $$0491$i;
+         $$3459$i = $69;
+         $$3472$i = $70;
+         $$3548$i = 0;
+         $$4466$i = $74;
+         $$7482$i = $$1476$i;
+         $$8540$i = 0;
+         label = 174;
+        } else {
+         $80 = ($70 | 0) != 0;
+         $81 = ($69 | 0) == 95;
+         $82 = ($70 | 0) == 0;
+         $83 = ($69 | 0) == 10;
+         $or$cond6$i = $55 & $83;
+         $notrhs$i = ($70 | 0) < 1;
+         $or$cond$not$i = $notlhs662$i & $notrhs$i;
+         $$0515616$i = $76;
+         $$0532613$i = 0;
+         $$0545612$i = 0;
+         $$1518614$i = $$0517$i;
+         $140 = $77;
+         while (1) {
+          $84 = $$0515616$i + 20 | 0;
+          $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+          $86 = ($85 | 0) == 0;
+          L252 : do {
+           if ($86) {
+            label = 52;
+           } else {
+            $87 = $85 & 1;
+            $88 = ($87 | 0) == 0;
+            $brmerge$i = $or$cond$not$i | $88;
+            $brmerge655$i = $or$cond6$i | $brmerge$i;
+            if (!$brmerge655$i) {
+             $$1533$i = $$0532613$i;
+             $$1546$i = $$0545612$i;
+             $$5522$i = $$1518614$i;
+             break;
+            }
+            $89 = $85 & 2;
+            $90 = ($89 | 0) == 0;
+            if (!$90) {
+             $91 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+             $92 = $91 | $24;
+             $93 = ($92 | 0) == 0;
+             $94 = ($91 | 0) == 10;
+             $or$cond10$i = $55 & $94;
+             $or$cond657$i = $93 | $or$cond10$i;
+             if (!$or$cond657$i) {
+              $$1533$i = $$0532613$i;
+              $$1546$i = $$0545612$i;
+              $$5522$i = $$1518614$i;
+              break;
+             }
+            }
+            $95 = $85 & 16;
+            $96 = ($95 | 0) == 0;
+            do {
+             if (!$96) {
+              if ($81) {
+               $$1533$i = $$0532613$i;
+               $$1546$i = $$0545612$i;
+               $$5522$i = $$1518614$i;
+               break L252;
+              }
+              $97 = _iswalnum($69) | 0;
+              $98 = ($97 | 0) == 0;
+              if (!$98) {
+               $$1533$i = $$0532613$i;
+               $$1546$i = $$0545612$i;
+               $$5522$i = $$1518614$i;
+               break L252;
+              }
+              $99 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+              $100 = ($99 | 0) == 95;
+              if ($100) {
+               break;
+              }
+              $101 = _iswalnum($99) | 0;
+              $102 = ($101 | 0) == 0;
+              if ($102) {
+               $$1533$i = $$0532613$i;
+               $$1546$i = $$0545612$i;
+               $$5522$i = $$1518614$i;
+               break L252;
+              }
+             }
+            } while (0);
+            $103 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+            $104 = $103 & 32;
+            $105 = ($104 | 0) == 0;
+            if ($105) {
+             $114 = $103;
+            } else {
+             if ($81) {
+              $$old$i = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+              $$old11$i = ($$old$i | 0) == 95;
+              if ($$old11$i) {
+               $$1533$i = $$0532613$i;
+               $$1546$i = $$0545612$i;
+               $$5522$i = $$1518614$i;
+               break;
+              } else {
+               $110 = $$old$i;
+              }
+             } else {
+              $106 = _iswalnum($69) | 0;
+              $107 = ($106 | 0) == 0;
+              $108 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+              $109 = ($108 | 0) == 95;
+              $or$cond12$i = $107 | $109;
+              if ($or$cond12$i) {
+               $$1533$i = $$0532613$i;
+               $$1546$i = $$0545612$i;
+               $$5522$i = $$1518614$i;
+               break;
+              } else {
+               $110 = $108;
+              }
+             }
+             $111 = _iswalnum($110) | 0;
+             $112 = ($111 | 0) == 0;
+             if (!$112) {
+              $$1533$i = $$0532613$i;
+              $$1546$i = $$0545612$i;
+              $$5522$i = $$1518614$i;
+              break;
+             }
+             $$pre672$i = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+             $114 = $$pre672$i;
+            }
+            $113 = $114 & 64;
+            $115 = ($113 | 0) != 0;
+            $or$cond15$i = $80 & $115;
+            $116 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+            $117 = ($116 | 0) != 0;
+            $or$cond18$i = $117 & $or$cond15$i;
+            do {
+             if ($or$cond18$i) {
+              if ($81) {
+               $120 = $116;
+               $124 = 1;
+              } else {
+               $118 = _iswalnum($69) | 0;
+               $119 = ($118 | 0) != 0;
+               $$pre673$i = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+               $120 = $$pre673$i;
+               $124 = $119;
+              }
+              $121 = ($120 | 0) == 95;
+              if ($121) {
+               if ($124) {
+                $$1533$i = $$0532613$i;
+                $$1546$i = $$0545612$i;
+                $$5522$i = $$1518614$i;
+                break L252;
+               } else {
+                break;
+               }
+              } else {
+               $122 = _iswalnum($120) | 0;
+               $123 = ($122 | 0) != 0;
+               $tmp553$i = $124 ^ $123;
+               if ($tmp553$i) {
+                break;
+               } else {
+                $$1533$i = $$0532613$i;
+                $$1546$i = $$0545612$i;
+                $$5522$i = $$1518614$i;
+                break L252;
+               }
+              }
+             }
+            } while (0);
+            $125 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+            $126 = $125 & 128;
+            $127 = ($126 | 0) == 0;
+            if ($127) {
+             label = 52;
+             break;
+            }
+            $128 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+            $129 = ($128 | 0) == 0;
+            $or$cond21$i = $82 | $129;
+            if ($or$cond21$i) {
+             $$1533$i = $$0532613$i;
+             $$1546$i = $$0545612$i;
+             $$5522$i = $$1518614$i;
+             break;
+            }
+            if ($81) {
+             $132 = $128;
+             $137 = 1;
+            } else {
+             $130 = _iswalnum($69) | 0;
+             $131 = ($130 | 0) != 0;
+             $$pre674$i = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+             $132 = $$pre674$i;
+             $137 = $131;
+            }
+            $133 = ($132 | 0) == 95;
+            if ($133) {
+             if ($137) {
+              label = 52;
+              break;
+             } else {
+              $$1533$i = $$0532613$i;
+              $$1546$i = $$0545612$i;
+              $$5522$i = $$1518614$i;
+              break;
+             }
+            } else {
+             $134 = _iswalnum($132) | 0;
+             $135 = ($134 | 0) != 0;
+             $136 = $137 ^ $135;
+             if ($136) {
+              $$1533$i = $$0532613$i;
+              $$1546$i = $$0545612$i;
+              $$5522$i = $$1518614$i;
+              break;
+             } else {
+              label = 52;
+              break;
+             }
+            }
+           }
+          } while (0);
+          do {
+           if ((label | 0) == 52) {
+            label = 0;
+            $138 = ($$0545612$i | 0) == (0 | 0);
+            if ($138) {
+             $139 = SAFE_HEAP_LOAD($140 | 0, 4, 0) | 0 | 0;
+             $141 = $$0515616$i + 16 | 0;
+             $142 = SAFE_HEAP_LOAD($141 | 0, 4, 0) | 0 | 0;
+             $$1533$i = $142;
+             $$1546$i = $139;
+             $$5522$i = $$1518614$i;
+             break;
+            }
+            $143 = $$1518614$i + 28 | 0;
+            $144 = SAFE_HEAP_LOAD($143 | 0, 4, 0) | 0 | 0;
+            $145 = ($144 | 0) == (0 | 0);
+            if ($145) {
+             $146 = ___tre_mem_alloc_impl($27, 0, 0, 0, 32) | 0;
+             $147 = ($146 | 0) == (0 | 0);
+             if ($147) {
+              label = 56;
+              break L233;
+             }
+             $148 = $146 + 24 | 0;
+             SAFE_HEAP_STORE($148 | 0, $$1518614$i | 0, 4);
+             $149 = $146 + 28 | 0;
+             SAFE_HEAP_STORE($149 | 0, 0 | 0, 4);
+             $150 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+             $151 = $150 << 2;
+             $152 = ___tre_mem_alloc_impl($27, 0, 0, 0, $151) | 0;
+             $153 = $146 + 20 | 0;
+             SAFE_HEAP_STORE($153 | 0, $152 | 0, 4);
+             $154 = ($152 | 0) == (0 | 0);
+             if ($154) {
+              label = 63;
+              break L233;
+             }
+             SAFE_HEAP_STORE($143 | 0, $146 | 0, 4);
+             $$3520$i = $146;
+            } else {
+             $$3520$i = $144;
+            }
+            SAFE_HEAP_STORE($$3520$i | 0, $70 | 0, 4);
+            $155 = $$3520$i + 4 | 0;
+            SAFE_HEAP_STORE($155 | 0, $74 | 0, 4);
+            $156 = SAFE_HEAP_LOAD($140 | 0, 4, 0) | 0 | 0;
+            $157 = $$3520$i + 8 | 0;
+            SAFE_HEAP_STORE($157 | 0, $156 | 0, 4);
+            $158 = $$0515616$i + 12 | 0;
+            $159 = SAFE_HEAP_LOAD($158 | 0, 4, 0) | 0 | 0;
+            $160 = $$3520$i + 12 | 0;
+            SAFE_HEAP_STORE($160 | 0, $159 | 0, 4);
+            $161 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+            $162 = $$3520$i + 16 | 0;
+            SAFE_HEAP_STORE($162 | 0, $161 | 0, 4);
+            $163 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+            $164 = ($163 | 0) > 0;
+            if ($164) {
+             $165 = $$3520$i + 20 | 0;
+             $166 = SAFE_HEAP_LOAD($165 | 0, 4, 0) | 0 | 0;
+             $$0496606$i = 0;
+             while (1) {
+              $167 = $$0551$i + ($$0496606$i << 2) | 0;
+              $168 = SAFE_HEAP_LOAD($167 | 0, 4, 0) | 0 | 0;
+              $169 = $166 + ($$0496606$i << 2) | 0;
+              SAFE_HEAP_STORE($169 | 0, $168 | 0, 4);
+              $170 = $$0496606$i + 1 | 0;
+              $171 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+              $172 = ($170 | 0) < ($171 | 0);
+              if ($172) {
+               $$0496606$i = $170;
+              } else {
+               break;
+              }
+             }
+            }
+            $173 = $$0515616$i + 16 | 0;
+            $174 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+            $175 = ($174 | 0) == (0 | 0);
+            if ($175) {
+             $$1533$i = $$0532613$i;
+             $$1546$i = $$0545612$i;
+             $$5522$i = $$3520$i;
+             break;
+            }
+            $176 = SAFE_HEAP_LOAD($174 | 0, 4, 0) | 0 | 0;
+            $177 = ($176 | 0) > -1;
+            if (!$177) {
+             $$1533$i = $$0532613$i;
+             $$1546$i = $$0545612$i;
+             $$5522$i = $$3520$i;
+             break;
+            }
+            $178 = $$3520$i + 20 | 0;
+            $179 = SAFE_HEAP_LOAD($178 | 0, 4, 0) | 0 | 0;
+            $$0490610$i = $174;
+            $182 = $176;
+            while (1) {
+             $180 = $$0490610$i + 4 | 0;
+             $181 = $179 + ($182 << 2) | 0;
+             SAFE_HEAP_STORE($181 | 0, $70 | 0, 4);
+             $183 = SAFE_HEAP_LOAD($180 | 0, 4, 0) | 0 | 0;
+             $184 = ($183 | 0) > -1;
+             if ($184) {
+              $$0490610$i = $180;
+              $182 = $183;
+             } else {
+              $$1533$i = $$0532613$i;
+              $$1546$i = $$0545612$i;
+              $$5522$i = $$3520$i;
+              break;
+             }
+            }
+           }
+          } while (0);
+          $185 = $$0515616$i + 32 | 0;
+          $186 = $$0515616$i + 40 | 0;
+          $187 = SAFE_HEAP_LOAD($186 | 0, 4, 0) | 0 | 0;
+          $188 = ($187 | 0) == (0 | 0);
+          if ($188) {
+           break;
+          } else {
+           $$0515616$i = $185;
+           $$0532613$i = $$1533$i;
+           $$0545612$i = $$1546$i;
+           $$1518614$i = $$5522$i;
+           $140 = $186;
+          }
+         }
+         $189 = ($$1533$i | 0) == (0 | 0);
+         if ($189) {
+          $$3535$i = 0;
+         } else {
+          $190 = SAFE_HEAP_LOAD($$1533$i | 0, 4, 0) | 0 | 0;
+          $191 = ($190 | 0) > -1;
+          if ($191) {
+           $$2534623$i = $$1533$i;
+           $193 = $190;
+           while (1) {
+            $192 = $$0551$i + ($193 << 2) | 0;
+            SAFE_HEAP_STORE($192 | 0, $70 | 0, 4);
+            $194 = $$2534623$i + 4 | 0;
+            $195 = SAFE_HEAP_LOAD($194 | 0, 4, 0) | 0 | 0;
+            $196 = ($195 | 0) > -1;
+            if ($196) {
+             $$2534623$i = $194;
+             $193 = $195;
+            } else {
+             $$3535$i = $194;
+             break;
+            }
+           }
+          } else {
+           $$3535$i = $$1533$i;
+          }
+         }
+         $197 = ($$1546$i | 0) == (0 | 0);
+         if ($197) {
+          $$12529$i = $$5522$i;
+          $$2493$i = $$0491$i;
+          $$3459$i = $69;
+          $$3472$i = $70;
+          $$3548$i = 0;
+          $$4466$i = $74;
+          $$7482$i = $$1476$i;
+          $$8540$i = $$3535$i;
+          label = 174;
+         } else {
+          $$0456$i = $69;
+          $$0469$i = $70;
+          $$1463$i = $74;
+          $$1492$i = $$0491$i;
+          $$2477$i = $$1476$i;
+          $$2547$i = $$1546$i;
+          $$4536$i = $$3535$i;
+          $$6523$i = $$5522$i;
+          label = 82;
+         }
+        }
+        L315 : while (1) {
+         L316 : do {
+          if ((label | 0) == 82) {
+           label = 0;
+           $198 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+           $199 = ($$2547$i | 0) == ($198 | 0);
+           if ($199) {
+            $200 = ($$1492$i | 0) < ($$0469$i | 0);
+            if (!$200) {
+             $201 = ($$1492$i | 0) == ($$0469$i | 0);
+             $or$cond24$i = $53 & $201;
+             if (!$or$cond24$i) {
+              $$12529$i = $$6523$i;
+              $$2493$i = $$1492$i;
+              $$3459$i = $$0456$i;
+              $$3472$i = $$0469$i;
+              $$3548$i = $$2547$i;
+              $$4466$i = $$1463$i;
+              $$7482$i = $$2477$i;
+              $$8540$i = $$4536$i;
+              label = 174;
+              continue L315;
+             }
+             $202 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+             $203 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+             $204 = _tre_tag_order($202, $203, $$0551$i, $$0) | 0;
+             $205 = ($204 | 0) == 0;
+             if ($205) {
+              $$12529$i = $$6523$i;
+              $$2493$i = $$1492$i;
+              $$3459$i = $$0456$i;
+              $$3472$i = $$1492$i;
+              $$3548$i = $$2547$i;
+              $$4466$i = $$1463$i;
+              $$7482$i = $$2477$i;
+              $$8540$i = $$4536$i;
+              label = 174;
+              continue L315;
+             }
+            }
+            if ($52) {
+             $$12529$i = $$6523$i;
+             $$2493$i = $$0469$i;
+             $$3459$i = $$0456$i;
+             $$3472$i = $$0469$i;
+             $$3548$i = $$2547$i;
+             $$4466$i = $$1463$i;
+             $$7482$i = $$2477$i;
+             $$8540$i = $$4536$i;
+             label = 174;
+             continue L315;
+            }
+            $206 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+            $207 = ($206 | 0) > 0;
+            if ($207) {
+             $$0486653$i = 0;
+            } else {
+             $$12529$i = $$6523$i;
+             $$2493$i = $$0469$i;
+             $$3459$i = $$0456$i;
+             $$3472$i = $$0469$i;
+             $$3548$i = $$2547$i;
+             $$4466$i = $$1463$i;
+             $$7482$i = $$2477$i;
+             $$8540$i = $$4536$i;
+             label = 174;
+             continue L315;
+            }
+            while (1) {
+             $208 = $$0551$i + ($$0486653$i << 2) | 0;
+             $209 = SAFE_HEAP_LOAD($208 | 0, 4, 0) | 0 | 0;
+             $210 = $$0 + ($$0486653$i << 2) | 0;
+             SAFE_HEAP_STORE($210 | 0, $209 | 0, 4);
+             $211 = $$0486653$i + 1 | 0;
+             $212 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+             $213 = ($211 | 0) < ($212 | 0);
+             if ($213) {
+              $$0486653$i = $211;
+             } else {
+              $$12529$i = $$6523$i;
+              $$2493$i = $$0469$i;
+              $$3459$i = $$0456$i;
+              $$3472$i = $$0469$i;
+              $$3548$i = $$2547$i;
+              $$4466$i = $$1463$i;
+              $$7482$i = $$2477$i;
+              $$8540$i = $$4536$i;
+              label = 174;
+              continue L315;
+             }
+            }
+           }
+           $214 = $$2547$i + 8 | 0;
+           $215 = SAFE_HEAP_LOAD($214 | 0, 4, 0) | 0 | 0;
+           $216 = ($215 | 0) == (0 | 0);
+           do {
+            if ($216) {
+             label = 98;
+            } else {
+             $217 = $$2547$i + 20 | 0;
+             $218 = SAFE_HEAP_LOAD($217 | 0, 4, 0) | 0 | 0;
+             $219 = $218 & 256;
+             $220 = ($219 | 0) == 0;
+             if ($220) {
+              label = 98;
+              break;
+             }
+             $221 = $$2547$i + 24 | 0;
+             $222 = SAFE_HEAP_LOAD($221 | 0, 4, 0) | 0 | 0;
+             $223 = $222 + 1 | 0;
+             $224 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+             $225 = $224 & -9;
+             _tre_fill_pmatch($223, $$0513$i, $225, $8, $$0551$i, $$0469$i);
+             $226 = $$0513$i + ($222 << 3) | 0;
+             $227 = SAFE_HEAP_LOAD($226 | 0, 4, 0) | 0 | 0;
+             $228 = ($$0513$i + ($222 << 3) | 0) + 4 | 0;
+             $229 = SAFE_HEAP_LOAD($228 | 0, 4, 0) | 0 | 0;
+             $230 = $229 - $227 | 0;
+             $231 = $1 + $227 | 0;
+             $232 = $$1463$i + -1 | 0;
+             $233 = _strncmp($231, $232, $230) | 0;
+             $234 = ($233 | 0) == 0;
+             do {
+              if ($234) {
+               $235 = ($230 | 0) == 0;
+               $$$i = $235 & 1;
+               $236 = $$2547$i + 12 | 0;
+               $237 = SAFE_HEAP_LOAD($236 | 0, 4, 0) | 0 | 0;
+               $238 = $$0543$ph$i + ($237 << 2) | 0;
+               if ($235) {
+                $239 = SAFE_HEAP_LOAD($238 | 0, 4, 0) | 0 | 0;
+                $240 = ($239 | 0) == 0;
+                if (!$240) {
+                 $$1457$i = $$0456$i;
+                 $$1470$i = $$0469$i;
+                 $$2464$i = $$1463$i;
+                 $$2501$i = 25;
+                 $$4479$i = $$2477$i;
+                 break;
+                }
+               }
+               SAFE_HEAP_STORE($238 | 0, $$$i | 0, 4);
+               $241 = $230 + -1 | 0;
+               $242 = $$1463$i + $241 | 0;
+               $243 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+               $244 = $$0469$i + $$2477$i | 0;
+               $245 = $244 + $241 | 0;
+               $246 = _mbtowc($6, $242, 4) | 0;
+               $247 = ($246 | 0) < 1;
+               if ($247) {
+                $248 = ($246 | 0) < 0;
+                if ($248) {
+                 $$1457$i = $243;
+                 $$1470$i = $245;
+                 $$2464$i = $242;
+                 $$2501$i = 2;
+                 $$4479$i = $246;
+                 break;
+                } else {
+                 $$3478$i = 1;
+                }
+               } else {
+                $$3478$i = $246;
+               }
+               $249 = $242 + $$3478$i | 0;
+               $$1457$i = $243;
+               $$1470$i = $245;
+               $$2464$i = $249;
+               $$2501$i = 0;
+               $$4479$i = $$3478$i;
+              } else {
+               $$1457$i = $$0456$i;
+               $$1470$i = $$0469$i;
+               $$2464$i = $$1463$i;
+               $$2501$i = 25;
+               $$4479$i = $$2477$i;
+              }
+             } while (0);
+             $trunc$i = $$2501$i & 255;
+             $trunc$i$clear = $trunc$i & 31;
+             switch ($trunc$i$clear << 24 >> 24) {
+             case 25:
+              {
+               $$12529$i = $$6523$i;
+               $$2493$i = $$1492$i;
+               $$3459$i = $$1457$i;
+               $$3472$i = $$1470$i;
+               $$3548$i = $$2547$i;
+               $$4466$i = $$2464$i;
+               $$7482$i = $$4479$i;
+               $$8540$i = $$4536$i;
+               label = 174;
+               continue L315;
+               break;
+              }
+             case 0:
+              {
+               $$2458$i = $$1457$i;
+               $$2471$i = $$1470$i;
+               $$3465$i = $$2464$i;
+               $$6481$i = $$4479$i;
+               break;
+              }
+             default:
+              {
+               $$10542$i = $$4536$i;
+               $$14531$i = $$6523$i;
+               $$4495$i = $$1492$i;
+               $$5461$i = $$1457$i;
+               $$5474$i = $$1470$i;
+               $$5504$i = $$2501$i;
+               $$5550$i = $$2547$i;
+               $$6468$i = $$2464$i;
+               $$9484$i = $$4479$i;
+               break L316;
+              }
+             }
+            }
+           } while (0);
+           if ((label | 0) == 98) {
+            label = 0;
+            $250 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+            $251 = ($250 | 0) == 0;
+            if ($251) {
+             $$12529$i = $$6523$i;
+             $$2493$i = $$1492$i;
+             $$3459$i = $$0456$i;
+             $$3472$i = $$0469$i;
+             $$3548$i = $$2547$i;
+             $$4466$i = $$1463$i;
+             $$7482$i = $$2477$i;
+             $$8540$i = $$4536$i;
+             label = 174;
+             continue L315;
+            }
+            $252 = $$0469$i + $$2477$i | 0;
+            $253 = _mbtowc($6, $$1463$i, 4) | 0;
+            $254 = ($253 | 0) < 1;
+            if ($254) {
+             $255 = ($253 | 0) < 0;
+             if ($255) {
+              $$10542$i = $$4536$i;
+              $$14531$i = $$6523$i;
+              $$4495$i = $$1492$i;
+              $$5461$i = $250;
+              $$5474$i = $252;
+              $$5504$i = 2;
+              $$5550$i = $$2547$i;
+              $$6468$i = $$1463$i;
+              $$9484$i = $253;
+              break;
+             } else {
+              $$5480$i = 1;
+             }
+            } else {
+             $$5480$i = $253;
+            }
+            $256 = $$1463$i + $$5480$i | 0;
+            $$2458$i = $250;
+            $$2471$i = $252;
+            $$3465$i = $256;
+            $$6481$i = $$5480$i;
+           }
+           $257 = SAFE_HEAP_LOAD($214 | 0, 4, 0) | 0 | 0;
+           $258 = ($257 | 0) == (0 | 0);
+           if ($258) {
+            $$12529$i = $$6523$i;
+            $$2493$i = $$1492$i;
+            $$3459$i = $$2458$i;
+            $$3472$i = $$2471$i;
+            $$3548$i = $$2547$i;
+            $$4466$i = $$3465$i;
+            $$7482$i = $$6481$i;
+            $$8540$i = $$4536$i;
+            label = 174;
+            continue L315;
+           }
+           $259 = ($$2471$i | 0) != 0;
+           $260 = ($$2458$i | 0) == 95;
+           $261 = ($$2471$i | 0) == 0;
+           $262 = ($$2458$i | 0) == 10;
+           $or$cond30$i = $55 & $262;
+           $notrhs663$i = ($$2471$i | 0) < 1;
+           $or$cond27$not$i = $notlhs662$i & $notrhs663$i;
+           $$0488643$i = 0;
+           $$1516640$i = $$2547$i;
+           $$5537638$i = $$4536$i;
+           $$7524639$i = $$6523$i;
+           $358 = $214;
+           L359 : while (1) {
+            $263 = SAFE_HEAP_LOAD($$1516640$i | 0, 4, 0) | 0 | 0;
+            $264 = $263 >>> 0 > $$2458$i >>> 0;
+            L361 : do {
+             if ($264) {
+              $$11528$i = $$7524639$i;
+              $$1489$i = $$0488643$i;
+              $$6538$i = $$5537638$i;
+             } else {
+              $265 = $$1516640$i + 4 | 0;
+              $266 = SAFE_HEAP_LOAD($265 | 0, 4, 0) | 0 | 0;
+              $267 = $266 >>> 0 < $$2458$i >>> 0;
+              if ($267) {
+               $$11528$i = $$7524639$i;
+               $$1489$i = $$0488643$i;
+               $$6538$i = $$5537638$i;
+               break;
+              }
+              $268 = $$1516640$i + 20 | 0;
+              $269 = SAFE_HEAP_LOAD($268 | 0, 4, 0) | 0 | 0;
+              $270 = ($269 | 0) == 0;
+              do {
+               if (!$270) {
+                $271 = $269 & 1;
+                $272 = ($271 | 0) == 0;
+                $brmerge658$i = $or$cond27$not$i | $272;
+                $brmerge659$i = $or$cond30$i | $brmerge658$i;
+                if (!$brmerge659$i) {
+                 $$11528$i = $$7524639$i;
+                 $$1489$i = $$0488643$i;
+                 $$6538$i = $$5537638$i;
+                 break L361;
+                }
+                $273 = $269 & 2;
+                $274 = ($273 | 0) == 0;
+                if (!$274) {
+                 $275 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+                 $276 = $275 | $24;
+                 $277 = ($276 | 0) == 0;
+                 $278 = ($275 | 0) == 10;
+                 $or$cond36$i = $55 & $278;
+                 $or$cond661$i = $277 | $or$cond36$i;
+                 if (!$or$cond661$i) {
+                  $$11528$i = $$7524639$i;
+                  $$1489$i = $$0488643$i;
+                  $$6538$i = $$5537638$i;
+                  break L361;
+                 }
+                }
+                $279 = $269 & 16;
+                $280 = ($279 | 0) == 0;
+                do {
+                 if (!$280) {
+                  if ($260) {
+                   $$11528$i = $$7524639$i;
+                   $$1489$i = $$0488643$i;
+                   $$6538$i = $$5537638$i;
+                   break L361;
+                  }
+                  $281 = _iswalnum($$2458$i) | 0;
+                  $282 = ($281 | 0) == 0;
+                  if (!$282) {
+                   $$11528$i = $$7524639$i;
+                   $$1489$i = $$0488643$i;
+                   $$6538$i = $$5537638$i;
+                   break L361;
+                  }
+                  $283 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+                  $284 = ($283 | 0) == 95;
+                  if ($284) {
+                   break;
+                  }
+                  $285 = _iswalnum($283) | 0;
+                  $286 = ($285 | 0) == 0;
+                  if ($286) {
+                   $$11528$i = $$7524639$i;
+                   $$1489$i = $$0488643$i;
+                   $$6538$i = $$5537638$i;
+                   break L361;
+                  }
+                 }
+                } while (0);
+                $287 = SAFE_HEAP_LOAD($268 | 0, 4, 0) | 0 | 0;
+                $288 = $287 & 32;
+                $289 = ($288 | 0) == 0;
+                if ($289) {
+                 $298 = $287;
+                } else {
+                 if ($260) {
+                  $$old37$i = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+                  $$old38$i = ($$old37$i | 0) == 95;
+                  if ($$old38$i) {
+                   $$11528$i = $$7524639$i;
+                   $$1489$i = $$0488643$i;
+                   $$6538$i = $$5537638$i;
+                   break L361;
+                  } else {
+                   $294 = $$old37$i;
+                  }
+                 } else {
+                  $290 = _iswalnum($$2458$i) | 0;
+                  $291 = ($290 | 0) == 0;
+                  $292 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+                  $293 = ($292 | 0) == 95;
+                  $or$cond39$i = $291 | $293;
+                  if ($or$cond39$i) {
+                   $$11528$i = $$7524639$i;
+                   $$1489$i = $$0488643$i;
+                   $$6538$i = $$5537638$i;
+                   break L361;
+                  } else {
+                   $294 = $292;
+                  }
+                 }
+                 $295 = _iswalnum($294) | 0;
+                 $296 = ($295 | 0) == 0;
+                 if (!$296) {
+                  $$11528$i = $$7524639$i;
+                  $$1489$i = $$0488643$i;
+                  $$6538$i = $$5537638$i;
+                  break L361;
+                 }
+                 $$pre678$i = SAFE_HEAP_LOAD($268 | 0, 4, 0) | 0 | 0;
+                 $298 = $$pre678$i;
+                }
+                $297 = $298 & 64;
+                $299 = ($297 | 0) != 0;
+                $or$cond42$i = $259 & $299;
+                $300 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+                $301 = ($300 | 0) != 0;
+                $or$cond45$i = $301 & $or$cond42$i;
+                do {
+                 if ($or$cond45$i) {
+                  if ($260) {
+                   $304 = $300;
+                   $308 = 1;
+                  } else {
+                   $302 = _iswalnum($$2458$i) | 0;
+                   $303 = ($302 | 0) != 0;
+                   $$pre679$i = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+                   $304 = $$pre679$i;
+                   $308 = $303;
+                  }
+                  $305 = ($304 | 0) == 95;
+                  if ($305) {
+                   if ($308) {
+                    $$11528$i = $$7524639$i;
+                    $$1489$i = $$0488643$i;
+                    $$6538$i = $$5537638$i;
+                    break L361;
+                   } else {
+                    break;
+                   }
+                  } else {
+                   $306 = _iswalnum($304) | 0;
+                   $307 = ($306 | 0) != 0;
+                   $tmp$i = $308 ^ $307;
+                   if ($tmp$i) {
+                    break;
+                   } else {
+                    $$11528$i = $$7524639$i;
+                    $$1489$i = $$0488643$i;
+                    $$6538$i = $$5537638$i;
+                    break L361;
+                   }
+                  }
+                 }
+                } while (0);
+                $309 = SAFE_HEAP_LOAD($268 | 0, 4, 0) | 0 | 0;
+                $310 = $309 & 128;
+                $311 = ($310 | 0) == 0;
+                do {
+                 if (!$311) {
+                  $312 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+                  $313 = ($312 | 0) == 0;
+                  $or$cond48$i = $261 | $313;
+                  if ($or$cond48$i) {
+                   $$11528$i = $$7524639$i;
+                   $$1489$i = $$0488643$i;
+                   $$6538$i = $$5537638$i;
+                   break L361;
+                  }
+                  if ($260) {
+                   $316 = $312;
+                   $321 = 1;
+                  } else {
+                   $314 = _iswalnum($$2458$i) | 0;
+                   $315 = ($314 | 0) != 0;
+                   $$pre680$i = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+                   $316 = $$pre680$i;
+                   $321 = $315;
+                  }
+                  $317 = ($316 | 0) == 95;
+                  if ($317) {
+                   if ($321) {
+                    break;
+                   } else {
+                    $$11528$i = $$7524639$i;
+                    $$1489$i = $$0488643$i;
+                    $$6538$i = $$5537638$i;
+                    break L361;
+                   }
+                  } else {
+                   $318 = _iswalnum($316) | 0;
+                   $319 = ($318 | 0) != 0;
+                   $320 = $321 ^ $319;
+                   if ($320) {
+                    $$11528$i = $$7524639$i;
+                    $$1489$i = $$0488643$i;
+                    $$6538$i = $$5537638$i;
+                    break L361;
+                   } else {
+                    break;
+                   }
+                  }
+                 }
+                } while (0);
+                $322 = SAFE_HEAP_LOAD($268 | 0, 4, 0) | 0 | 0;
+                $323 = $322 & 4;
+                $324 = ($323 | 0) == 0;
+                do {
+                 if ($324) {
+                  $333 = $322;
+                 } else {
+                  $325 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+                  $326 = $325 & 2;
+                  $327 = ($326 | 0) == 0;
+                  if (!$327) {
+                   $333 = $322;
+                   break;
+                  }
+                  $328 = $$1516640$i + 24 | 0;
+                  $329 = SAFE_HEAP_LOAD($328 | 0, 4, 0) | 0 | 0;
+                  $330 = _iswctype($$2458$i, $329) | 0;
+                  $331 = ($330 | 0) == 0;
+                  if ($331) {
+                   $$11528$i = $$7524639$i;
+                   $$1489$i = $$0488643$i;
+                   $$6538$i = $$5537638$i;
+                   break L361;
+                  }
+                  $$pre682$i = SAFE_HEAP_LOAD($268 | 0, 4, 0) | 0 | 0;
+                  $333 = $$pre682$i;
+                 }
+                } while (0);
+                $332 = $333 & 4;
+                $334 = ($332 | 0) == 0;
+                do {
+                 if (!$334) {
+                  $335 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+                  $336 = $335 & 2;
+                  $337 = ($336 | 0) == 0;
+                  if ($337) {
+                   break;
+                  }
+                  $338 = _towlower($$2458$i) | 0;
+                  $339 = $$1516640$i + 24 | 0;
+                  $340 = SAFE_HEAP_LOAD($339 | 0, 4, 0) | 0 | 0;
+                  $341 = _iswctype($338, $340) | 0;
+                  $342 = ($341 | 0) == 0;
+                  if (!$342) {
+                   break;
+                  }
+                  $343 = _towupper($$2458$i) | 0;
+                  $344 = SAFE_HEAP_LOAD($339 | 0, 4, 0) | 0 | 0;
+                  $345 = _iswctype($343, $344) | 0;
+                  $346 = ($345 | 0) == 0;
+                  if ($346) {
+                   $$11528$i = $$7524639$i;
+                   $$1489$i = $$0488643$i;
+                   $$6538$i = $$5537638$i;
+                   break L361;
+                  }
+                 }
+                } while (0);
+                $347 = SAFE_HEAP_LOAD($268 | 0, 4, 0) | 0 | 0;
+                $348 = $347 & 8;
+                $349 = ($348 | 0) == 0;
+                if ($349) {
+                 break;
+                }
+                $350 = $$1516640$i + 28 | 0;
+                $351 = SAFE_HEAP_LOAD($350 | 0, 4, 0) | 0 | 0;
+                $352 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+                $353 = $352 & 2;
+                $354 = _tre_neg_char_classes_match($351, $$2458$i, $353) | 0;
+                $355 = ($354 | 0) == 0;
+                if (!$355) {
+                 $$11528$i = $$7524639$i;
+                 $$1489$i = $$0488643$i;
+                 $$6538$i = $$5537638$i;
+                 break L361;
+                }
+               }
+              } while (0);
+              $356 = ($$0488643$i | 0) == (0 | 0);
+              if ($356) {
+               $357 = SAFE_HEAP_LOAD($358 | 0, 4, 0) | 0 | 0;
+               $359 = $$1516640$i + 16 | 0;
+               $360 = SAFE_HEAP_LOAD($359 | 0, 4, 0) | 0 | 0;
+               $$11528$i = $$7524639$i;
+               $$1489$i = $357;
+               $$6538$i = $360;
+               break;
+              }
+              $361 = $$7524639$i + 28 | 0;
+              $362 = SAFE_HEAP_LOAD($361 | 0, 4, 0) | 0 | 0;
+              $363 = ($362 | 0) == (0 | 0);
+              if ($363) {
+               $364 = ___tre_mem_alloc_impl($27, 0, 0, 0, 32) | 0;
+               $365 = ($364 | 0) == (0 | 0);
+               if ($365) {
+                label = 148;
+                break L359;
+               }
+               $366 = $364 + 24 | 0;
+               SAFE_HEAP_STORE($366 | 0, $$7524639$i | 0, 4);
+               $367 = $364 + 28 | 0;
+               SAFE_HEAP_STORE($367 | 0, 0 | 0, 4);
+               $368 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+               $369 = $368 << 2;
+               $370 = ___tre_mem_alloc_impl($27, 0, 0, 0, $369) | 0;
+               $371 = $364 + 20 | 0;
+               SAFE_HEAP_STORE($371 | 0, $370 | 0, 4);
+               $372 = ($370 | 0) == (0 | 0);
+               if ($372) {
+                label = 155;
+                break L359;
+               }
+               SAFE_HEAP_STORE($361 | 0, $364 | 0, 4);
+               $$9526$i = $364;
+              } else {
+               $$9526$i = $362;
+              }
+              SAFE_HEAP_STORE($$9526$i | 0, $$2471$i | 0, 4);
+              $373 = $$9526$i + 4 | 0;
+              SAFE_HEAP_STORE($373 | 0, $$3465$i | 0, 4);
+              $374 = SAFE_HEAP_LOAD($358 | 0, 4, 0) | 0 | 0;
+              $375 = $$9526$i + 8 | 0;
+              SAFE_HEAP_STORE($375 | 0, $374 | 0, 4);
+              $376 = $$1516640$i + 12 | 0;
+              $377 = SAFE_HEAP_LOAD($376 | 0, 4, 0) | 0 | 0;
+              $378 = $$9526$i + 12 | 0;
+              SAFE_HEAP_STORE($378 | 0, $377 | 0, 4);
+              $379 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+              $380 = $$9526$i + 16 | 0;
+              SAFE_HEAP_STORE($380 | 0, $379 | 0, 4);
+              $381 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+              $382 = ($381 | 0) > 0;
+              if ($382) {
+               $383 = $$9526$i + 20 | 0;
+               $384 = SAFE_HEAP_LOAD($383 | 0, 4, 0) | 0 | 0;
+               $$0455630$i = 0;
+               while (1) {
+                $385 = $$0551$i + ($$0455630$i << 2) | 0;
+                $386 = SAFE_HEAP_LOAD($385 | 0, 4, 0) | 0 | 0;
+                $387 = $384 + ($$0455630$i << 2) | 0;
+                SAFE_HEAP_STORE($387 | 0, $386 | 0, 4);
+                $388 = $$0455630$i + 1 | 0;
+                $389 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+                $390 = ($388 | 0) < ($389 | 0);
+                if ($390) {
+                 $$0455630$i = $388;
+                } else {
+                 break;
+                }
+               }
+              }
+              $391 = $$1516640$i + 16 | 0;
+              $392 = SAFE_HEAP_LOAD($391 | 0, 4, 0) | 0 | 0;
+              $393 = ($392 | 0) == (0 | 0);
+              if ($393) {
+               $$11528$i = $$9526$i;
+               $$1489$i = $$0488643$i;
+               $$6538$i = $$5537638$i;
+               break;
+              }
+              $394 = SAFE_HEAP_LOAD($392 | 0, 4, 0) | 0 | 0;
+              $395 = ($394 | 0) > -1;
+              if (!$395) {
+               $$11528$i = $$9526$i;
+               $$1489$i = $$0488643$i;
+               $$6538$i = $$5537638$i;
+               break;
+              }
+              $396 = $$9526$i + 20 | 0;
+              $397 = SAFE_HEAP_LOAD($396 | 0, 4, 0) | 0 | 0;
+              $$0453634$i73 = $392;
+              $399 = $394;
+              while (1) {
+               $398 = $397 + ($399 << 2) | 0;
+               SAFE_HEAP_STORE($398 | 0, $$2471$i | 0, 4);
+               $400 = $$0453634$i73 + 4 | 0;
+               $401 = SAFE_HEAP_LOAD($400 | 0, 4, 0) | 0 | 0;
+               $402 = ($401 | 0) > -1;
+               if ($402) {
+                $$0453634$i73 = $400;
+                $399 = $401;
+               } else {
+                $$11528$i = $$9526$i;
+                $$1489$i = $$0488643$i;
+                $$6538$i = $$5537638$i;
+                break;
+               }
+              }
+             }
+            } while (0);
+            $403 = $$1516640$i + 32 | 0;
+            $404 = $$1516640$i + 40 | 0;
+            $405 = SAFE_HEAP_LOAD($404 | 0, 4, 0) | 0 | 0;
+            $406 = ($405 | 0) == (0 | 0);
+            if ($406) {
+             label = 170;
+             break;
+            } else {
+             $$0488643$i = $$1489$i;
+             $$1516640$i = $403;
+             $$5537638$i = $$6538$i;
+             $$7524639$i = $$11528$i;
+             $358 = $404;
+            }
+           }
+           if ((label | 0) == 148) {
+            label = 0;
+            ___tre_mem_destroy($27);
+            if (!$56) {
+             _free($$0551$i);
+            }
+            if (!$57) {
+             _free($$0513$i);
+            }
+            if ($58) {
+             $$10542$i = $$5537638$i;
+             $$14531$i = $$7524639$i;
+             $$4495$i = $$1492$i;
+             $$5461$i = $$2458$i;
+             $$5474$i = $$2471$i;
+             $$5504$i = 1;
+             $$5550$i = $$2547$i;
+             $$6468$i = $$3465$i;
+             $$9484$i = $$6481$i;
+             break;
+            }
+            _free($$0543$ph$i);
+            $$10542$i = $$5537638$i;
+            $$14531$i = $$7524639$i;
+            $$4495$i = $$1492$i;
+            $$5461$i = $$2458$i;
+            $$5474$i = $$2471$i;
+            $$5504$i = 1;
+            $$5550$i = $$2547$i;
+            $$6468$i = $$3465$i;
+            $$9484$i = $$6481$i;
+            break;
+           } else if ((label | 0) == 155) {
+            label = 0;
+            ___tre_mem_destroy($27);
+            if (!$56) {
+             _free($$0551$i);
+            }
+            if (!$57) {
+             _free($$0513$i);
+            }
+            if ($58) {
+             $$10542$i = $$5537638$i;
+             $$14531$i = $$7524639$i;
+             $$4495$i = $$1492$i;
+             $$5461$i = $$2458$i;
+             $$5474$i = $$2471$i;
+             $$5504$i = 1;
+             $$5550$i = $$2547$i;
+             $$6468$i = $$3465$i;
+             $$9484$i = $$6481$i;
+             break;
+            }
+            _free($$0543$ph$i);
+            $$10542$i = $$5537638$i;
+            $$14531$i = $$7524639$i;
+            $$4495$i = $$1492$i;
+            $$5461$i = $$2458$i;
+            $$5474$i = $$2471$i;
+            $$5504$i = 1;
+            $$5550$i = $$2547$i;
+            $$6468$i = $$3465$i;
+            $$9484$i = $$6481$i;
+            break;
+           } else if ((label | 0) == 170) {
+            label = 0;
+            $407 = ($$1489$i | 0) == (0 | 0);
+            if ($407) {
+             $$12529$i = $$11528$i;
+             $$2493$i = $$1492$i;
+             $$3459$i = $$2458$i;
+             $$3472$i = $$2471$i;
+             $$3548$i = $$2547$i;
+             $$4466$i = $$3465$i;
+             $$7482$i = $$6481$i;
+             $$8540$i = $$6538$i;
+             label = 174;
+             continue L315;
+            }
+            $408 = ($$6538$i | 0) == (0 | 0);
+            if ($408) {
+             $$10542$i = 0;
+             $$14531$i = $$11528$i;
+             $$4495$i = $$1492$i;
+             $$5461$i = $$2458$i;
+             $$5474$i = $$2471$i;
+             $$5504$i = 0;
+             $$5550$i = $$1489$i;
+             $$6468$i = $$3465$i;
+             $$9484$i = $$6481$i;
+             break;
+            }
+            $409 = SAFE_HEAP_LOAD($$6538$i | 0, 4, 0) | 0 | 0;
+            $410 = ($409 | 0) > -1;
+            if ($410) {
+             $$7539650$i = $$6538$i;
+             $413 = $409;
+            } else {
+             $$10542$i = $$6538$i;
+             $$14531$i = $$11528$i;
+             $$4495$i = $$1492$i;
+             $$5461$i = $$2458$i;
+             $$5474$i = $$2471$i;
+             $$5504$i = 0;
+             $$5550$i = $$1489$i;
+             $$6468$i = $$3465$i;
+             $$9484$i = $$6481$i;
+             break;
+            }
+            while (1) {
+             $411 = $$7539650$i + 4 | 0;
+             $412 = $$0551$i + ($413 << 2) | 0;
+             SAFE_HEAP_STORE($412 | 0, $$2471$i | 0, 4);
+             $414 = SAFE_HEAP_LOAD($411 | 0, 4, 0) | 0 | 0;
+             $415 = ($414 | 0) > -1;
+             if ($415) {
+              $$7539650$i = $411;
+              $413 = $414;
+             } else {
+              $$10542$i = $411;
+              $$14531$i = $$11528$i;
+              $$4495$i = $$1492$i;
+              $$5461$i = $$2458$i;
+              $$5474$i = $$2471$i;
+              $$5504$i = 0;
+              $$5550$i = $$1489$i;
+              $$6468$i = $$3465$i;
+              $$9484$i = $$6481$i;
+              break;
+             }
+            }
+           }
+          } else if ((label | 0) == 174) {
+           label = 0;
+           $416 = $$12529$i + 24 | 0;
+           $417 = SAFE_HEAP_LOAD($416 | 0, 4, 0) | 0 | 0;
+           $418 = ($417 | 0) == (0 | 0);
+           if ($418) {
+            $441 = ($$2493$i | 0) > -1;
+            $442 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+            $443 = ($442 | 0) == 0;
+            $or$cond556$i = $441 | $443;
+            if ($or$cond556$i) {
+             $$10542$i = $$8540$i;
+             $$14531$i = $$12529$i;
+             $$4495$i = $$2493$i;
+             $$5461$i = $$3459$i;
+             $$5474$i = $$3472$i;
+             $$5504$i = 27;
+             $$5550$i = $$3548$i;
+             $$6468$i = $$4466$i;
+             $$9484$i = $$7482$i;
+             break;
+            }
+            SAFE_HEAP_STORE($6 | 0, $75 | 0, 4);
+            $$10542$i = $$8540$i;
+            $$14531$i = $$12529$i;
+            $$4495$i = $$2493$i;
+            $$5461$i = $$3459$i;
+            $$5474$i = $$3472$i;
+            $$5504$i = 3;
+            $$5550$i = $$3548$i;
+            $$6468$i = $74;
+            $$9484$i = $$7482$i;
+            break;
+           }
+           $419 = $$12529$i + 8 | 0;
+           $420 = SAFE_HEAP_LOAD($419 | 0, 4, 0) | 0 | 0;
+           $421 = $420 + 20 | 0;
+           $422 = SAFE_HEAP_LOAD($421 | 0, 4, 0) | 0 | 0;
+           $423 = $422 & 256;
+           $424 = ($423 | 0) == 0;
+           if (!$424) {
+            $425 = $$12529$i + 12 | 0;
+            $426 = SAFE_HEAP_LOAD($425 | 0, 4, 0) | 0 | 0;
+            $427 = $$0543$ph$i + ($426 << 2) | 0;
+            SAFE_HEAP_STORE($427 | 0, 0 | 0, 4);
+           }
+           $428 = SAFE_HEAP_LOAD($$12529$i | 0, 4, 0) | 0 | 0;
+           $429 = $$12529$i + 4 | 0;
+           $430 = SAFE_HEAP_LOAD($429 | 0, 4, 0) | 0 | 0;
+           $431 = $$12529$i + 16 | 0;
+           $432 = SAFE_HEAP_LOAD($431 | 0, 4, 0) | 0 | 0;
+           SAFE_HEAP_STORE($6 | 0, $432 | 0, 4);
+           $433 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+           $434 = ($433 | 0) > 0;
+           if (!$434) {
+            $$10542$i = $$8540$i;
+            $$14531$i = $417;
+            $$4495$i = $$2493$i;
+            $$5461$i = $$3459$i;
+            $$5474$i = $428;
+            $$5504$i = 0;
+            $$5550$i = $420;
+            $$6468$i = $430;
+            $$9484$i = $$7482$i;
+            break;
+           }
+           $435 = $$12529$i + 20 | 0;
+           $436 = SAFE_HEAP_LOAD($435 | 0, 4, 0) | 0 | 0;
+           $$0626$i = 0;
+           while (1) {
+            $437 = $436 + ($$0626$i << 2) | 0;
+            $438 = SAFE_HEAP_LOAD($437 | 0, 4, 0) | 0 | 0;
+            $439 = $$0551$i + ($$0626$i << 2) | 0;
+            SAFE_HEAP_STORE($439 | 0, $438 | 0, 4);
+            $440 = $$0626$i + 1 | 0;
+            $exitcond95 = ($440 | 0) == ($433 | 0);
+            if ($exitcond95) {
+             $$10542$i = $$8540$i;
+             $$14531$i = $417;
+             $$4495$i = $$2493$i;
+             $$5461$i = $$3459$i;
+             $$5474$i = $428;
+             $$5504$i = 0;
+             $$5550$i = $420;
+             $$6468$i = $430;
+             $$9484$i = $$7482$i;
+             break;
+            } else {
+             $$0626$i = $440;
+            }
+           }
+          }
+         } while (0);
+         switch ($$5504$i | 0) {
+         case 2:
+          {
+           $$052 = 0;
+           $$1514$i = $$0513$i;
+           $$1544$i = $$0543$ph$i;
+           $$1552$i = $$0551$i;
+           $$7512$i = 1;
+           break L225;
+           break;
+          }
+         case 27:
+          {
+           label = 184;
+           break L233;
+           break;
+          }
+         case 0:
+          {
+           $$0456$i = $$5461$i;
+           $$0469$i = $$5474$i;
+           $$1463$i = $$6468$i;
+           $$1492$i = $$4495$i;
+           $$2477$i = $$9484$i;
+           $$2547$i = $$5550$i;
+           $$4536$i = $$10542$i;
+           $$6523$i = $$14531$i;
+           label = 82;
+           break;
+          }
+         case 3:
+          {
+           break L315;
+           break;
+          }
+         default:
+          {
+           $$1 = 0;
+           $$15$i = 12;
+           break L218;
+          }
+         }
+        }
+        $$pre$i = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+        $$0462$i = $$6468$i;
+        $$0475$i = $$9484$i;
+        $$0485$i = $70;
+        $$0491$i = $$4495$i;
+        $$0517$i = $$14531$i;
+        $59 = $$pre$i;
+       }
+       if ((label | 0) == 56) {
+        ___tre_mem_destroy($27);
+        if (!$56) {
+         _free($$0551$i);
+        }
+        if (!$57) {
+         _free($$0513$i);
+        }
+        if ($58) {
+         $$1 = 0;
+         $$15$i = 12;
+         break L218;
+        }
+        _free($$0543$ph$i);
+        $$1 = 0;
+        $$15$i = 12;
+        break L218;
+       } else if ((label | 0) == 63) {
+        ___tre_mem_destroy($27);
+        if (!$56) {
+         _free($$0551$i);
+        }
+        if (!$57) {
+         _free($$0513$i);
+        }
+        if ($58) {
+         $$1 = 0;
+         $$15$i = 12;
+         break L218;
+        }
+        _free($$0543$ph$i);
+        $$1 = 0;
+        $$15$i = 12;
+        break L218;
+       } else if ((label | 0) == 184) {
+        $$4495$lobit$i = $$4495$i >>> 31;
+        $$052 = $$4495$i;
+        $$1514$i = $$0513$i;
+        $$1544$i = $$0543$ph$i;
+        $$1552$i = $$0551$i;
+        $$7512$i = $$4495$lobit$i;
+        break;
+       }
+      }
+     } while (0);
+     ___tre_mem_destroy($27);
+     $444 = ($$1552$i | 0) == (0 | 0);
+     if (!$444) {
+      _free($$1552$i);
+     }
+     $445 = ($$1514$i | 0) == (0 | 0);
+     if (!$445) {
+      _free($$1514$i);
+     }
+     $446 = ($$1544$i | 0) == (0 | 0);
+     if ($446) {
+      $$1 = $$052;
+      $$15$i = $$7512$i;
+     } else {
+      _free($$1544$i);
+      $$1 = $$052;
+      $$15$i = $$7512$i;
+     }
+    }
+   } while (0);
+   $$026 = $$15$i;
+   $$4 = $$1;
+  }
+  $828 = ($$026 | 0) == 0;
+  if ($828) {
+   $829 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   _tre_fill_pmatch($$, $3, $829, $8, $$0, $$4);
+  }
+  $830 = ($$0 | 0) == (0 | 0);
+  if ($830) {
+   $$027 = $$026;
+  } else {
+   _free($$0);
+   $$027 = $$026;
+  }
+ }
+ STACKTOP = sp;
+ return $$027 | 0;
+}
+
+function _malloc($0) {
+ $0 = $0 | 0;
+ var $$$0190$i = 0, $$$0191$i = 0, $$$4349$i = 0, $$$i = 0, $$0 = 0, $$0$i$i = 
0, $$0$i$i$i = 0, $$0$i17$i = 0, $$0$i18$i = 0, $$01$i$i = 0, $$0187$i = 0, 
$$0189$i = 0, $$0190$i = 0, $$0191$i = 0, $$0197 = 0, $$0199 = 0, $$0206$i$i = 
0, $$0207$i$i = 0, $$0211$i$i = 0, $$0212$i$i = 0;
+ var $$024370$i = 0, $$0286$i$i = 0, $$0287$i$i = 0, $$0288$i$i = 0, 
$$0294$i$i = 0, $$0295$i$i = 0, $$0340$i = 0, $$0342$i = 0, $$0343$i = 0, 
$$0345$i = 0, $$0351$i = 0, $$0356$i = 0, $$0357$$i = 0, $$0357$i = 0, $$0359$i 
= 0, $$0360$i = 0, $$0366$i = 0, $$1194$i = 0, $$1196$i = 0, $$124469$i = 0;
+ var $$1290$i$i = 0, $$1292$i$i = 0, $$1341$i = 0, $$1346$i = 0, $$1361$i = 0, 
$$1368$i = 0, $$1372$i = 0, $$2247$ph$i = 0, $$2253$ph$i = 0, $$2353$i = 0, 
$$3$i = 0, $$3$i$i = 0, $$3$i201 = 0, $$3348$i = 0, $$3370$i = 0, $$4$lcssa$i = 
0, $$413$i = 0, $$4349$lcssa$i = 0, $$434912$i = 0, $$4355$$4$i = 0;
+ var $$4355$ph$i = 0, $$435511$i = 0, $$5256$i = 0, $$723947$i = 0, $$748$i = 
0, $$not$i = 0, $$pre = 0, $$pre$i = 0, $$pre$i$i = 0, $$pre$i19$i = 0, 
$$pre$i205 = 0, $$pre$i208 = 0, $$pre$phi$i$iZ2D = 0, $$pre$phi$i20$iZ2D = 0, 
$$pre$phi$i206Z2D = 0, $$pre$phi$iZ2D = 0, $$pre$phi10$i$iZ2D = 0, $$pre$phiZ2D 
= 0, $$pre9$i$i = 0, $1 = 0;
+ var $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, $1015 = 0, $1016 = 0;
+ var $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, $1033 = 0, $1034 = 0;
+ var $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, $1051 = 0, $1052 = 0;
+ var $1053 = 0, $1054 = 0, $1055 = 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, $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, $460 = 0, $461 = 0, $462 = 0, $463 = 0;
+ var $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, $481 = 0;
+ var $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, $5 = 0;
+ var $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, $517 = 0;
+ var $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, $535 = 0;
+ var $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, $553 = 0;
+ var $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, $571 = 0;
+ var $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, $59 = 0;
+ var $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, $607 = 0;
+ var $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, $625 = 0;
+ var $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, $643 = 0;
+ var $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, $661 = 0;
+ var $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, $68 = 0;
+ var $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, $698 = 0;
+ var $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, $715 = 0;
+ var $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, $733 = 0;
+ var $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, $751 = 0;
+ var $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, $77 = 0;
+ var $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, $788 = 0;
+ var $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, $805 = 0;
+ var $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, $823 = 0;
+ var $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, $841 = 0;
+ var $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, $86 = 0;
+ var $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, $878 = 0;
+ var $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, $896 = 0;
+ var $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, $913 = 0;
+ var $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, $931 = 0;
+ var $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, $95 = 0;
+ var $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, $968 = 0;
+ var $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, $986 = 0;
+ var $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, $cond$i = 0, 
$cond$i$i = 0, $cond$i204 = 0, $exitcond$i$i = 0, $not$$i$i = 0, $not$$i22$i = 
0;
+ var $not$7$i = 0, $or$cond$i = 0, $or$cond$i211 = 0, $or$cond1$i = 0, 
$or$cond1$i210 = 0, $or$cond10$i = 0, $or$cond11$i = 0, $or$cond12$i = 0, 
$or$cond2$i = 0, $or$cond5$i = 0, $or$cond50$i = 0, $or$cond7$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 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 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 = 70904 + ($15 << 2) | 0;
+    $17 = $16 + 8 | 0;
+    $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+    $19 = $18 + 8 | 0;
+    $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+    $21 = ($16 | 0) == ($20 | 0);
+    do {
+     if ($21) {
+      $22 = 1 << $14;
+      $23 = $22 ^ -1;
+      $24 = $8 & $23;
+      SAFE_HEAP_STORE(17716 * 4 | 0, $24 | 0, 4);
+     } else {
+      $25 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+      $26 = $20 >>> 0 < $25 >>> 0;
+      if ($26) {
+       _abort();
+      }
+      $27 = $20 + 12 | 0;
+      $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+      $29 = ($28 | 0) == ($18 | 0);
+      if ($29) {
+       SAFE_HEAP_STORE($27 | 0, $16 | 0, 4);
+       SAFE_HEAP_STORE($17 | 0, $20 | 0, 4);
+       break;
+      } else {
+       _abort();
+      }
+     }
+    } while (0);
+    $30 = $14 << 3;
+    $31 = $30 | 3;
+    $32 = $18 + 4 | 0;
+    SAFE_HEAP_STORE($32 | 0, $31 | 0, 4);
+    $33 = $18 + $30 | 0;
+    $34 = $33 + 4 | 0;
+    $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+    $36 = $35 | 1;
+    SAFE_HEAP_STORE($34 | 0, $36 | 0, 4);
+    $$0 = $19;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+   $37 = SAFE_HEAP_LOAD(70872 | 0, 4, 0) | 0 | 0;
+   $38 = $6 >>> 0 > $37 >>> 0;
+   if ($38) {
+    $39 = ($9 | 0) == 0;
+    if (!$39) {
+     $40 = $9 << $7;
+     $41 = 2 << $7;
+     $42 = 0 - $41 | 0;
+     $43 = $41 | $42;
+     $44 = $40 & $43;
+     $45 = 0 - $44 | 0;
+     $46 = $44 & $45;
+     $47 = $46 + -1 | 0;
+     $48 = $47 >>> 12;
+     $49 = $48 & 16;
+     $50 = $47 >>> $49;
+     $51 = $50 >>> 5;
+     $52 = $51 & 8;
+     $53 = $52 | $49;
+     $54 = $50 >>> $52;
+     $55 = $54 >>> 2;
+     $56 = $55 & 4;
+     $57 = $53 | $56;
+     $58 = $54 >>> $56;
+     $59 = $58 >>> 1;
+     $60 = $59 & 2;
+     $61 = $57 | $60;
+     $62 = $58 >>> $60;
+     $63 = $62 >>> 1;
+     $64 = $63 & 1;
+     $65 = $61 | $64;
+     $66 = $62 >>> $64;
+     $67 = $65 + $66 | 0;
+     $68 = $67 << 1;
+     $69 = 70904 + ($68 << 2) | 0;
+     $70 = $69 + 8 | 0;
+     $71 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+     $72 = $71 + 8 | 0;
+     $73 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     $74 = ($69 | 0) == ($73 | 0);
+     do {
+      if ($74) {
+       $75 = 1 << $67;
+       $76 = $75 ^ -1;
+       $77 = $8 & $76;
+       SAFE_HEAP_STORE(17716 * 4 | 0, $77 | 0, 4);
+       $98 = $77;
+      } else {
+       $78 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+       $79 = $73 >>> 0 < $78 >>> 0;
+       if ($79) {
+        _abort();
+       }
+       $80 = $73 + 12 | 0;
+       $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+       $82 = ($81 | 0) == ($71 | 0);
+       if ($82) {
+        SAFE_HEAP_STORE($80 | 0, $69 | 0, 4);
+        SAFE_HEAP_STORE($70 | 0, $73 | 0, 4);
+        $98 = $8;
+        break;
+       } else {
+        _abort();
+       }
+      }
+     } while (0);
+     $83 = $67 << 3;
+     $84 = $83 - $6 | 0;
+     $85 = $6 | 3;
+     $86 = $71 + 4 | 0;
+     SAFE_HEAP_STORE($86 | 0, $85 | 0, 4);
+     $87 = $71 + $6 | 0;
+     $88 = $84 | 1;
+     $89 = $87 + 4 | 0;
+     SAFE_HEAP_STORE($89 | 0, $88 | 0, 4);
+     $90 = $87 + $84 | 0;
+     SAFE_HEAP_STORE($90 | 0, $84 | 0, 4);
+     $91 = ($37 | 0) == 0;
+     if (!$91) {
+      $92 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+      $93 = $37 >>> 3;
+      $94 = $93 << 1;
+      $95 = 70904 + ($94 << 2) | 0;
+      $96 = 1 << $93;
+      $97 = $98 & $96;
+      $99 = ($97 | 0) == 0;
+      if ($99) {
+       $100 = $98 | $96;
+       SAFE_HEAP_STORE(17716 * 4 | 0, $100 | 0, 4);
+       $$pre = $95 + 8 | 0;
+       $$0199 = $95;
+       $$pre$phiZ2D = $$pre;
+      } else {
+       $101 = $95 + 8 | 0;
+       $102 = SAFE_HEAP_LOAD($101 | 0, 4, 0) | 0 | 0;
+       $103 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+       $104 = $102 >>> 0 < $103 >>> 0;
+       if ($104) {
+        _abort();
+       } else {
+        $$0199 = $102;
+        $$pre$phiZ2D = $101;
+       }
+      }
+      SAFE_HEAP_STORE($$pre$phiZ2D | 0, $92 | 0, 4);
+      $105 = $$0199 + 12 | 0;
+      SAFE_HEAP_STORE($105 | 0, $92 | 0, 4);
+      $106 = $92 + 8 | 0;
+      SAFE_HEAP_STORE($106 | 0, $$0199 | 0, 4);
+      $107 = $92 + 12 | 0;
+      SAFE_HEAP_STORE($107 | 0, $95 | 0, 4);
+     }
+     SAFE_HEAP_STORE(70872 | 0, $84 | 0, 4);
+     SAFE_HEAP_STORE(70884 | 0, $87 | 0, 4);
+     $$0 = $72;
+     STACKTOP = sp;
+     return $$0 | 0;
+    }
+    $108 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+    $109 = ($108 | 0) == 0;
+    if ($109) {
+     $$0197 = $6;
+    } else {
+     $110 = 0 - $108 | 0;
+     $111 = $108 & $110;
+     $112 = $111 + -1 | 0;
+     $113 = $112 >>> 12;
+     $114 = $113 & 16;
+     $115 = $112 >>> $114;
+     $116 = $115 >>> 5;
+     $117 = $116 & 8;
+     $118 = $117 | $114;
+     $119 = $115 >>> $117;
+     $120 = $119 >>> 2;
+     $121 = $120 & 4;
+     $122 = $118 | $121;
+     $123 = $119 >>> $121;
+     $124 = $123 >>> 1;
+     $125 = $124 & 2;
+     $126 = $122 | $125;
+     $127 = $123 >>> $125;
+     $128 = $127 >>> 1;
+     $129 = $128 & 1;
+     $130 = $126 | $129;
+     $131 = $127 >>> $129;
+     $132 = $130 + $131 | 0;
+     $133 = 71168 + ($132 << 2) | 0;
+     $134 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 0;
+     $135 = $134 + 4 | 0;
+     $136 = SAFE_HEAP_LOAD($135 | 0, 4, 0) | 0 | 0;
+     $137 = $136 & -8;
+     $138 = $137 - $6 | 0;
+     $$0189$i = $134;
+     $$0190$i = $134;
+     $$0191$i = $138;
+     while (1) {
+      $139 = $$0189$i + 16 | 0;
+      $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+      $141 = ($140 | 0) == (0 | 0);
+      if ($141) {
+       $142 = $$0189$i + 20 | 0;
+       $143 = SAFE_HEAP_LOAD($142 | 0, 4, 0) | 0 | 0;
+       $144 = ($143 | 0) == (0 | 0);
+       if ($144) {
+        break;
+       } else {
+        $146 = $143;
+       }
+      } else {
+       $146 = $140;
+      }
+      $145 = $146 + 4 | 0;
+      $147 = SAFE_HEAP_LOAD($145 | 0, 4, 0) | 0 | 0;
+      $148 = $147 & -8;
+      $149 = $148 - $6 | 0;
+      $150 = $149 >>> 0 < $$0191$i >>> 0;
+      $$$0191$i = $150 ? $149 : $$0191$i;
+      $$$0190$i = $150 ? $146 : $$0190$i;
+      $$0189$i = $146;
+      $$0190$i = $$$0190$i;
+      $$0191$i = $$$0191$i;
+     }
+     $151 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $152 = $$0190$i >>> 0 < $151 >>> 0;
+     if ($152) {
+      _abort();
+     }
+     $153 = $$0190$i + $6 | 0;
+     $154 = $$0190$i >>> 0 < $153 >>> 0;
+     if (!$154) {
+      _abort();
+     }
+     $155 = $$0190$i + 24 | 0;
+     $156 = SAFE_HEAP_LOAD($155 | 0, 4, 0) | 0 | 0;
+     $157 = $$0190$i + 12 | 0;
+     $158 = SAFE_HEAP_LOAD($157 | 0, 4, 0) | 0 | 0;
+     $159 = ($158 | 0) == ($$0190$i | 0);
+     do {
+      if ($159) {
+       $169 = $$0190$i + 20 | 0;
+       $170 = SAFE_HEAP_LOAD($169 | 0, 4, 0) | 0 | 0;
+       $171 = ($170 | 0) == (0 | 0);
+       if ($171) {
+        $172 = $$0190$i + 16 | 0;
+        $173 = SAFE_HEAP_LOAD($172 | 0, 4, 0) | 0 | 0;
+        $174 = ($173 | 0) == (0 | 0);
+        if ($174) {
+         $$3$i = 0;
+         break;
+        } else {
+         $$1194$i = $173;
+         $$1196$i = $172;
+        }
+       } else {
+        $$1194$i = $170;
+        $$1196$i = $169;
+       }
+       while (1) {
+        $175 = $$1194$i + 20 | 0;
+        $176 = SAFE_HEAP_LOAD($175 | 0, 4, 0) | 0 | 0;
+        $177 = ($176 | 0) == (0 | 0);
+        if (!$177) {
+         $$1194$i = $176;
+         $$1196$i = $175;
+         continue;
+        }
+        $178 = $$1194$i + 16 | 0;
+        $179 = SAFE_HEAP_LOAD($178 | 0, 4, 0) | 0 | 0;
+        $180 = ($179 | 0) == (0 | 0);
+        if ($180) {
+         break;
+        } else {
+         $$1194$i = $179;
+         $$1196$i = $178;
+        }
+       }
+       $181 = $$1196$i >>> 0 < $151 >>> 0;
+       if ($181) {
+        _abort();
+       } else {
+        SAFE_HEAP_STORE($$1196$i | 0, 0 | 0, 4);
+        $$3$i = $$1194$i;
+        break;
+       }
+      } else {
+       $160 = $$0190$i + 8 | 0;
+       $161 = SAFE_HEAP_LOAD($160 | 0, 4, 0) | 0 | 0;
+       $162 = $161 >>> 0 < $151 >>> 0;
+       if ($162) {
+        _abort();
+       }
+       $163 = $161 + 12 | 0;
+       $164 = SAFE_HEAP_LOAD($163 | 0, 4, 0) | 0 | 0;
+       $165 = ($164 | 0) == ($$0190$i | 0);
+       if (!$165) {
+        _abort();
+       }
+       $166 = $158 + 8 | 0;
+       $167 = SAFE_HEAP_LOAD($166 | 0, 4, 0) | 0 | 0;
+       $168 = ($167 | 0) == ($$0190$i | 0);
+       if ($168) {
+        SAFE_HEAP_STORE($163 | 0, $158 | 0, 4);
+        SAFE_HEAP_STORE($166 | 0, $161 | 0, 4);
+        $$3$i = $158;
+        break;
+       } else {
+        _abort();
+       }
+      }
+     } while (0);
+     $182 = ($156 | 0) == (0 | 0);
+     do {
+      if (!$182) {
+       $183 = $$0190$i + 28 | 0;
+       $184 = SAFE_HEAP_LOAD($183 | 0, 4, 0) | 0 | 0;
+       $185 = 71168 + ($184 << 2) | 0;
+       $186 = SAFE_HEAP_LOAD($185 | 0, 4, 0) | 0 | 0;
+       $187 = ($$0190$i | 0) == ($186 | 0);
+       if ($187) {
+        SAFE_HEAP_STORE($185 | 0, $$3$i | 0, 4);
+        $cond$i = ($$3$i | 0) == (0 | 0);
+        if ($cond$i) {
+         $188 = 1 << $184;
+         $189 = $188 ^ -1;
+         $190 = $108 & $189;
+         SAFE_HEAP_STORE(70868 | 0, $190 | 0, 4);
+         break;
+        }
+       } else {
+        $191 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+        $192 = $156 >>> 0 < $191 >>> 0;
+        if ($192) {
+         _abort();
+        }
+        $193 = $156 + 16 | 0;
+        $194 = SAFE_HEAP_LOAD($193 | 0, 4, 0) | 0 | 0;
+        $195 = ($194 | 0) == ($$0190$i | 0);
+        if ($195) {
+         SAFE_HEAP_STORE($193 | 0, $$3$i | 0, 4);
+        } else {
+         $196 = $156 + 20 | 0;
+         SAFE_HEAP_STORE($196 | 0, $$3$i | 0, 4);
+        }
+        $197 = ($$3$i | 0) == (0 | 0);
+        if ($197) {
+         break;
+        }
+       }
+       $198 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+       $199 = $$3$i >>> 0 < $198 >>> 0;
+       if ($199) {
+        _abort();
+       }
+       $200 = $$3$i + 24 | 0;
+       SAFE_HEAP_STORE($200 | 0, $156 | 0, 4);
+       $201 = $$0190$i + 16 | 0;
+       $202 = SAFE_HEAP_LOAD($201 | 0, 4, 0) | 0 | 0;
+       $203 = ($202 | 0) == (0 | 0);
+       do {
+        if (!$203) {
+         $204 = $202 >>> 0 < $198 >>> 0;
+         if ($204) {
+          _abort();
+         } else {
+          $205 = $$3$i + 16 | 0;
+          SAFE_HEAP_STORE($205 | 0, $202 | 0, 4);
+          $206 = $202 + 24 | 0;
+          SAFE_HEAP_STORE($206 | 0, $$3$i | 0, 4);
+          break;
+         }
+        }
+       } while (0);
+       $207 = $$0190$i + 20 | 0;
+       $208 = SAFE_HEAP_LOAD($207 | 0, 4, 0) | 0 | 0;
+       $209 = ($208 | 0) == (0 | 0);
+       if (!$209) {
+        $210 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+        $211 = $208 >>> 0 < $210 >>> 0;
+        if ($211) {
+         _abort();
+        } else {
+         $212 = $$3$i + 20 | 0;
+         SAFE_HEAP_STORE($212 | 0, $208 | 0, 4);
+         $213 = $208 + 24 | 0;
+         SAFE_HEAP_STORE($213 | 0, $$3$i | 0, 4);
+         break;
+        }
+       }
+      }
+     } while (0);
+     $214 = $$0191$i >>> 0 < 16;
+     if ($214) {
+      $215 = $$0191$i + $6 | 0;
+      $216 = $215 | 3;
+      $217 = $$0190$i + 4 | 0;
+      SAFE_HEAP_STORE($217 | 0, $216 | 0, 4);
+      $218 = $$0190$i + $215 | 0;
+      $219 = $218 + 4 | 0;
+      $220 = SAFE_HEAP_LOAD($219 | 0, 4, 0) | 0 | 0;
+      $221 = $220 | 1;
+      SAFE_HEAP_STORE($219 | 0, $221 | 0, 4);
+     } else {
+      $222 = $6 | 3;
+      $223 = $$0190$i + 4 | 0;
+      SAFE_HEAP_STORE($223 | 0, $222 | 0, 4);
+      $224 = $$0191$i | 1;
+      $225 = $153 + 4 | 0;
+      SAFE_HEAP_STORE($225 | 0, $224 | 0, 4);
+      $226 = $153 + $$0191$i | 0;
+      SAFE_HEAP_STORE($226 | 0, $$0191$i | 0, 4);
+      $227 = ($37 | 0) == 0;
+      if (!$227) {
+       $228 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+       $229 = $37 >>> 3;
+       $230 = $229 << 1;
+       $231 = 70904 + ($230 << 2) | 0;
+       $232 = 1 << $229;
+       $233 = $8 & $232;
+       $234 = ($233 | 0) == 0;
+       if ($234) {
+        $235 = $8 | $232;
+        SAFE_HEAP_STORE(17716 * 4 | 0, $235 | 0, 4);
+        $$pre$i = $231 + 8 | 0;
+        $$0187$i = $231;
+        $$pre$phi$iZ2D = $$pre$i;
+       } else {
+        $236 = $231 + 8 | 0;
+        $237 = SAFE_HEAP_LOAD($236 | 0, 4, 0) | 0 | 0;
+        $238 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+        $239 = $237 >>> 0 < $238 >>> 0;
+        if ($239) {
+         _abort();
+        } else {
+         $$0187$i = $237;
+         $$pre$phi$iZ2D = $236;
+        }
+       }
+       SAFE_HEAP_STORE($$pre$phi$iZ2D | 0, $228 | 0, 4);
+       $240 = $$0187$i + 12 | 0;
+       SAFE_HEAP_STORE($240 | 0, $228 | 0, 4);
+       $241 = $228 + 8 | 0;
+       SAFE_HEAP_STORE($241 | 0, $$0187$i | 0, 4);
+       $242 = $228 + 12 | 0;
+       SAFE_HEAP_STORE($242 | 0, $231 | 0, 4);
+      }
+      SAFE_HEAP_STORE(70872 | 0, $$0191$i | 0, 4);
+      SAFE_HEAP_STORE(70884 | 0, $153 | 0, 4);
+     }
+     $243 = $$0190$i + 8 | 0;
+     $$0 = $243;
+     STACKTOP = sp;
+     return $$0 | 0;
+    }
+   } else {
+    $$0197 = $6;
+   }
+  } else {
+   $244 = $0 >>> 0 > 4294967231;
+   if ($244) {
+    $$0197 = -1;
+   } else {
+    $245 = $0 + 11 | 0;
+    $246 = $245 & -8;
+    $247 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+    $248 = ($247 | 0) == 0;
+    if ($248) {
+     $$0197 = $246;
+    } else {
+     $249 = 0 - $246 | 0;
+     $250 = $245 >>> 8;
+     $251 = ($250 | 0) == 0;
+     if ($251) {
+      $$0356$i = 0;
+     } else {
+      $252 = $246 >>> 0 > 16777215;
+      if ($252) {
+       $$0356$i = 31;
+      } else {
+       $253 = $250 + 1048320 | 0;
+       $254 = $253 >>> 16;
+       $255 = $254 & 8;
+       $256 = $250 << $255;
+       $257 = $256 + 520192 | 0;
+       $258 = $257 >>> 16;
+       $259 = $258 & 4;
+       $260 = $259 | $255;
+       $261 = $256 << $259;
+       $262 = $261 + 245760 | 0;
+       $263 = $262 >>> 16;
+       $264 = $263 & 2;
+       $265 = $260 | $264;
+       $266 = 14 - $265 | 0;
+       $267 = $261 << $264;
+       $268 = $267 >>> 15;
+       $269 = $266 + $268 | 0;
+       $270 = $269 << 1;
+       $271 = $269 + 7 | 0;
+       $272 = $246 >>> $271;
+       $273 = $272 & 1;
+       $274 = $273 | $270;
+       $$0356$i = $274;
+      }
+     }
+     $275 = 71168 + ($$0356$i << 2) | 0;
+     $276 = SAFE_HEAP_LOAD($275 | 0, 4, 0) | 0 | 0;
+     $277 = ($276 | 0) == (0 | 0);
+     L123 : do {
+      if ($277) {
+       $$2353$i = 0;
+       $$3$i201 = 0;
+       $$3348$i = $249;
+       label = 86;
+      } else {
+       $278 = ($$0356$i | 0) == 31;
+       $279 = $$0356$i >>> 1;
+       $280 = 25 - $279 | 0;
+       $281 = $278 ? 0 : $280;
+       $282 = $246 << $281;
+       $$0340$i = 0;
+       $$0345$i = $249;
+       $$0351$i = $276;
+       $$0357$i = $282;
+       $$0360$i = 0;
+       while (1) {
+        $283 = $$0351$i + 4 | 0;
+        $284 = SAFE_HEAP_LOAD($283 | 0, 4, 0) | 0 | 0;
+        $285 = $284 & -8;
+        $286 = $285 - $246 | 0;
+        $287 = $286 >>> 0 < $$0345$i >>> 0;
+        if ($287) {
+         $288 = ($286 | 0) == 0;
+         if ($288) {
+          $$413$i = $$0351$i;
+          $$434912$i = 0;
+          $$435511$i = $$0351$i;
+          label = 90;
+          break L123;
+         } else {
+          $$1341$i = $$0351$i;
+          $$1346$i = $286;
+         }
+        } else {
+         $$1341$i = $$0340$i;
+         $$1346$i = $$0345$i;
+        }
+        $289 = $$0351$i + 20 | 0;
+        $290 = SAFE_HEAP_LOAD($289 | 0, 4, 0) | 0 | 0;
+        $291 = $$0357$i >>> 31;
+        $292 = ($$0351$i + 16 | 0) + ($291 << 2) | 0;
+        $293 = SAFE_HEAP_LOAD($292 | 0, 4, 0) | 0 | 0;
+        $294 = ($290 | 0) == (0 | 0);
+        $295 = ($290 | 0) == ($293 | 0);
+        $or$cond1$i = $294 | $295;
+        $$1361$i = $or$cond1$i ? $$0360$i : $290;
+        $296 = ($293 | 0) == (0 | 0);
+        $297 = $296 & 1;
+        $298 = $297 ^ 1;
+        $$0357$$i = $$0357$i << $298;
+        if ($296) {
+         $$2353$i = $$1361$i;
+         $$3$i201 = $$1341$i;
+         $$3348$i = $$1346$i;
+         label = 86;
+         break;
+        } else {
+         $$0340$i = $$1341$i;
+         $$0345$i = $$1346$i;
+         $$0351$i = $293;
+         $$0357$i = $$0357$$i;
+         $$0360$i = $$1361$i;
+        }
+       }
+      }
+     } while (0);
+     if ((label | 0) == 86) {
+      $299 = ($$2353$i | 0) == (0 | 0);
+      $300 = ($$3$i201 | 0) == (0 | 0);
+      $or$cond$i = $299 & $300;
+      if ($or$cond$i) {
+       $301 = 2 << $$0356$i;
+       $302 = 0 - $301 | 0;
+       $303 = $301 | $302;
+       $304 = $247 & $303;
+       $305 = ($304 | 0) == 0;
+       if ($305) {
+        $$0197 = $246;
+        break;
+       }
+       $306 = 0 - $304 | 0;
+       $307 = $304 & $306;
+       $308 = $307 + -1 | 0;
+       $309 = $308 >>> 12;
+       $310 = $309 & 16;
+       $311 = $308 >>> $310;
+       $312 = $311 >>> 5;
+       $313 = $312 & 8;
+       $314 = $313 | $310;
+       $315 = $311 >>> $313;
+       $316 = $315 >>> 2;
+       $317 = $316 & 4;
+       $318 = $314 | $317;
+       $319 = $315 >>> $317;
+       $320 = $319 >>> 1;
+       $321 = $320 & 2;
+       $322 = $318 | $321;
+       $323 = $319 >>> $321;
+       $324 = $323 >>> 1;
+       $325 = $324 & 1;
+       $326 = $322 | $325;
+       $327 = $323 >>> $325;
+       $328 = $326 + $327 | 0;
+       $329 = 71168 + ($328 << 2) | 0;
+       $330 = SAFE_HEAP_LOAD($329 | 0, 4, 0) | 0 | 0;
+       $$4355$ph$i = $330;
+      } else {
+       $$4355$ph$i = $$2353$i;
+      }
+      $331 = ($$4355$ph$i | 0) == (0 | 0);
+      if ($331) {
+       $$4$lcssa$i = $$3$i201;
+       $$4349$lcssa$i = $$3348$i;
+      } else {
+       $$413$i = $$3$i201;
+       $$434912$i = $$3348$i;
+       $$435511$i = $$4355$ph$i;
+       label = 90;
+      }
+     }
+     if ((label | 0) == 90) {
+      while (1) {
+       label = 0;
+       $332 = $$435511$i + 4 | 0;
+       $333 = SAFE_HEAP_LOAD($332 | 0, 4, 0) | 0 | 0;
+       $334 = $333 & -8;
+       $335 = $334 - $246 | 0;
+       $336 = $335 >>> 0 < $$434912$i >>> 0;
+       $$$4349$i = $336 ? $335 : $$434912$i;
+       $$4355$$4$i = $336 ? $$435511$i : $$413$i;
+       $337 = $$435511$i + 16 | 0;
+       $338 = SAFE_HEAP_LOAD($337 | 0, 4, 0) | 0 | 0;
+       $339 = ($338 | 0) == (0 | 0);
+       if (!$339) {
+        $$413$i = $$4355$$4$i;
+        $$434912$i = $$$4349$i;
+        $$435511$i = $338;
+        label = 90;
+        continue;
+       }
+       $340 = $$435511$i + 20 | 0;
+       $341 = SAFE_HEAP_LOAD($340 | 0, 4, 0) | 0 | 0;
+       $342 = ($341 | 0) == (0 | 0);
+       if ($342) {
+        $$4$lcssa$i = $$4355$$4$i;
+        $$4349$lcssa$i = $$$4349$i;
+        break;
+       } else {
+        $$413$i = $$4355$$4$i;
+        $$434912$i = $$$4349$i;
+        $$435511$i = $341;
+        label = 90;
+       }
+      }
+     }
+     $343 = ($$4$lcssa$i | 0) == (0 | 0);
+     if ($343) {
+      $$0197 = $246;
+     } else {
+      $344 = SAFE_HEAP_LOAD(70872 | 0, 4, 0) | 0 | 0;
+      $345 = $344 - $246 | 0;
+      $346 = $$4349$lcssa$i >>> 0 < $345 >>> 0;
+      if ($346) {
+       $347 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+       $348 = $$4$lcssa$i >>> 0 < $347 >>> 0;
+       if ($348) {
+        _abort();
+       }
+       $349 = $$4$lcssa$i + $246 | 0;
+       $350 = $$4$lcssa$i >>> 0 < $349 >>> 0;
+       if (!$350) {
+        _abort();
+       }
+       $351 = $$4$lcssa$i + 24 | 0;
+       $352 = SAFE_HEAP_LOAD($351 | 0, 4, 0) | 0 | 0;
+       $353 = $$4$lcssa$i + 12 | 0;
+       $354 = SAFE_HEAP_LOAD($353 | 0, 4, 0) | 0 | 0;
+       $355 = ($354 | 0) == ($$4$lcssa$i | 0);
+       do {
+        if ($355) {
+         $365 = $$4$lcssa$i + 20 | 0;
+         $366 = SAFE_HEAP_LOAD($365 | 0, 4, 0) | 0 | 0;
+         $367 = ($366 | 0) == (0 | 0);
+         if ($367) {
+          $368 = $$4$lcssa$i + 16 | 0;
+          $369 = SAFE_HEAP_LOAD($368 | 0, 4, 0) | 0 | 0;
+          $370 = ($369 | 0) == (0 | 0);
+          if ($370) {
+           $$3370$i = 0;
+           break;
+          } else {
+           $$1368$i = $369;
+           $$1372$i = $368;
+          }
+         } else {
+          $$1368$i = $366;
+          $$1372$i = $365;
+         }
+         while (1) {
+          $371 = $$1368$i + 20 | 0;
+          $372 = SAFE_HEAP_LOAD($371 | 0, 4, 0) | 0 | 0;
+          $373 = ($372 | 0) == (0 | 0);
+          if (!$373) {
+           $$1368$i = $372;
+           $$1372$i = $371;
+           continue;
+          }
+          $374 = $$1368$i + 16 | 0;
+          $375 = SAFE_HEAP_LOAD($374 | 0, 4, 0) | 0 | 0;
+          $376 = ($375 | 0) == (0 | 0);
+          if ($376) {
+           break;
+          } else {
+           $$1368$i = $375;
+           $$1372$i = $374;
+          }
+         }
+         $377 = $$1372$i >>> 0 < $347 >>> 0;
+         if ($377) {
+          _abort();
+         } else {
+          SAFE_HEAP_STORE($$1372$i | 0, 0 | 0, 4);
+          $$3370$i = $$1368$i;
+          break;
+         }
+        } else {
+         $356 = $$4$lcssa$i + 8 | 0;
+         $357 = SAFE_HEAP_LOAD($356 | 0, 4, 0) | 0 | 0;
+         $358 = $357 >>> 0 < $347 >>> 0;
+         if ($358) {
+          _abort();
+         }
+         $359 = $357 + 12 | 0;
+         $360 = SAFE_HEAP_LOAD($359 | 0, 4, 0) | 0 | 0;
+         $361 = ($360 | 0) == ($$4$lcssa$i | 0);
+         if (!$361) {
+          _abort();
+         }
+         $362 = $354 + 8 | 0;
+         $363 = SAFE_HEAP_LOAD($362 | 0, 4, 0) | 0 | 0;
+         $364 = ($363 | 0) == ($$4$lcssa$i | 0);
+         if ($364) {
+          SAFE_HEAP_STORE($359 | 0, $354 | 0, 4);
+          SAFE_HEAP_STORE($362 | 0, $357 | 0, 4);
+          $$3370$i = $354;
+          break;
+         } else {
+          _abort();
+         }
+        }
+       } while (0);
+       $378 = ($352 | 0) == (0 | 0);
+       do {
+        if ($378) {
+         $470 = $247;
+        } else {
+         $379 = $$4$lcssa$i + 28 | 0;
+         $380 = SAFE_HEAP_LOAD($379 | 0, 4, 0) | 0 | 0;
+         $381 = 71168 + ($380 << 2) | 0;
+         $382 = SAFE_HEAP_LOAD($381 | 0, 4, 0) | 0 | 0;
+         $383 = ($$4$lcssa$i | 0) == ($382 | 0);
+         if ($383) {
+          SAFE_HEAP_STORE($381 | 0, $$3370$i | 0, 4);
+          $cond$i204 = ($$3370$i | 0) == (0 | 0);
+          if ($cond$i204) {
+           $384 = 1 << $380;
+           $385 = $384 ^ -1;
+           $386 = $247 & $385;
+           SAFE_HEAP_STORE(70868 | 0, $386 | 0, 4);
+           $470 = $386;
+           break;
+          }
+         } else {
+          $387 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+          $388 = $352 >>> 0 < $387 >>> 0;
+          if ($388) {
+           _abort();
+          }
+          $389 = $352 + 16 | 0;
+          $390 = SAFE_HEAP_LOAD($389 | 0, 4, 0) | 0 | 0;
+          $391 = ($390 | 0) == ($$4$lcssa$i | 0);
+          if ($391) {
+           SAFE_HEAP_STORE($389 | 0, $$3370$i | 0, 4);
+          } else {
+           $392 = $352 + 20 | 0;
+           SAFE_HEAP_STORE($392 | 0, $$3370$i | 0, 4);
+          }
+          $393 = ($$3370$i | 0) == (0 | 0);
+          if ($393) {
+           $470 = $247;
+           break;
+          }
+         }
+         $394 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+         $395 = $$3370$i >>> 0 < $394 >>> 0;
+         if ($395) {
+          _abort();
+         }
+         $396 = $$3370$i + 24 | 0;
+         SAFE_HEAP_STORE($396 | 0, $352 | 0, 4);
+         $397 = $$4$lcssa$i + 16 | 0;
+         $398 = SAFE_HEAP_LOAD($397 | 0, 4, 0) | 0 | 0;
+         $399 = ($398 | 0) == (0 | 0);
+         do {
+          if (!$399) {
+           $400 = $398 >>> 0 < $394 >>> 0;
+           if ($400) {
+            _abort();
+           } else {
+            $401 = $$3370$i + 16 | 0;
+            SAFE_HEAP_STORE($401 | 0, $398 | 0, 4);
+            $402 = $398 + 24 | 0;
+            SAFE_HEAP_STORE($402 | 0, $$3370$i | 0, 4);
+            break;
+           }
+          }
+         } while (0);
+         $403 = $$4$lcssa$i + 20 | 0;
+         $404 = SAFE_HEAP_LOAD($403 | 0, 4, 0) | 0 | 0;
+         $405 = ($404 | 0) == (0 | 0);
+         if ($405) {
+          $470 = $247;
+         } else {
+          $406 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+          $407 = $404 >>> 0 < $406 >>> 0;
+          if ($407) {
+           _abort();
+          } else {
+           $408 = $$3370$i + 20 | 0;
+           SAFE_HEAP_STORE($408 | 0, $404 | 0, 4);
+           $409 = $404 + 24 | 0;
+           SAFE_HEAP_STORE($409 | 0, $$3370$i | 0, 4);
+           $470 = $247;
+           break;
+          }
+         }
+        }
+       } while (0);
+       $410 = $$4349$lcssa$i >>> 0 < 16;
+       do {
+        if ($410) {
+         $411 = $$4349$lcssa$i + $246 | 0;
+         $412 = $411 | 3;
+         $413 = $$4$lcssa$i + 4 | 0;
+         SAFE_HEAP_STORE($413 | 0, $412 | 0, 4);
+         $414 = $$4$lcssa$i + $411 | 0;
+         $415 = $414 + 4 | 0;
+         $416 = SAFE_HEAP_LOAD($415 | 0, 4, 0) | 0 | 0;
+         $417 = $416 | 1;
+         SAFE_HEAP_STORE($415 | 0, $417 | 0, 4);
+        } else {
+         $418 = $246 | 3;
+         $419 = $$4$lcssa$i + 4 | 0;
+         SAFE_HEAP_STORE($419 | 0, $418 | 0, 4);
+         $420 = $$4349$lcssa$i | 1;
+         $421 = $349 + 4 | 0;
+         SAFE_HEAP_STORE($421 | 0, $420 | 0, 4);
+         $422 = $349 + $$4349$lcssa$i | 0;
+         SAFE_HEAP_STORE($422 | 0, $$4349$lcssa$i | 0, 4);
+         $423 = $$4349$lcssa$i >>> 3;
+         $424 = $$4349$lcssa$i >>> 0 < 256;
+         if ($424) {
+          $425 = $423 << 1;
+          $426 = 70904 + ($425 << 2) | 0;
+          $427 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+          $428 = 1 << $423;
+          $429 = $427 & $428;
+          $430 = ($429 | 0) == 0;
+          if ($430) {
+           $431 = $427 | $428;
+           SAFE_HEAP_STORE(17716 * 4 | 0, $431 | 0, 4);
+           $$pre$i205 = $426 + 8 | 0;
+           $$0366$i = $426;
+           $$pre$phi$i206Z2D = $$pre$i205;
+          } else {
+           $432 = $426 + 8 | 0;
+           $433 = SAFE_HEAP_LOAD($432 | 0, 4, 0) | 0 | 0;
+           $434 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+           $435 = $433 >>> 0 < $434 >>> 0;
+           if ($435) {
+            _abort();
+           } else {
+            $$0366$i = $433;
+            $$pre$phi$i206Z2D = $432;
+           }
+          }
+          SAFE_HEAP_STORE($$pre$phi$i206Z2D | 0, $349 | 0, 4);
+          $436 = $$0366$i + 12 | 0;
+          SAFE_HEAP_STORE($436 | 0, $349 | 0, 4);
+          $437 = $349 + 8 | 0;
+          SAFE_HEAP_STORE($437 | 0, $$0366$i | 0, 4);
+          $438 = $349 + 12 | 0;
+          SAFE_HEAP_STORE($438 | 0, $426 | 0, 4);
+          break;
+         }
+         $439 = $$4349$lcssa$i >>> 8;
+         $440 = ($439 | 0) == 0;
+         if ($440) {
+          $$0359$i = 0;
+         } else {
+          $441 = $$4349$lcssa$i >>> 0 > 16777215;
+          if ($441) {
+           $$0359$i = 31;
+          } else {
+           $442 = $439 + 1048320 | 0;
+           $443 = $442 >>> 16;
+           $444 = $443 & 8;
+           $445 = $439 << $444;
+           $446 = $445 + 520192 | 0;
+           $447 = $446 >>> 16;
+           $448 = $447 & 4;
+           $449 = $448 | $444;
+           $450 = $445 << $448;
+           $451 = $450 + 245760 | 0;
+           $452 = $451 >>> 16;
+           $453 = $452 & 2;
+           $454 = $449 | $453;
+           $455 = 14 - $454 | 0;
+           $456 = $450 << $453;
+           $457 = $456 >>> 15;
+           $458 = $455 + $457 | 0;
+           $459 = $458 << 1;
+           $460 = $458 + 7 | 0;
+           $461 = $$4349$lcssa$i >>> $460;
+           $462 = $461 & 1;
+           $463 = $462 | $459;
+           $$0359$i = $463;
+          }
+         }
+         $464 = 71168 + ($$0359$i << 2) | 0;
+         $465 = $349 + 28 | 0;
+         SAFE_HEAP_STORE($465 | 0, $$0359$i | 0, 4);
+         $466 = $349 + 16 | 0;
+         $467 = $466 + 4 | 0;
+         SAFE_HEAP_STORE($467 | 0, 0 | 0, 4);
+         SAFE_HEAP_STORE($466 | 0, 0 | 0, 4);
+         $468 = 1 << $$0359$i;
+         $469 = $470 & $468;
+         $471 = ($469 | 0) == 0;
+         if ($471) {
+          $472 = $470 | $468;
+          SAFE_HEAP_STORE(70868 | 0, $472 | 0, 4);
+          SAFE_HEAP_STORE($464 | 0, $349 | 0, 4);
+          $473 = $349 + 24 | 0;
+          SAFE_HEAP_STORE($473 | 0, $464 | 0, 4);
+          $474 = $349 + 12 | 0;
+          SAFE_HEAP_STORE($474 | 0, $349 | 0, 4);
+          $475 = $349 + 8 | 0;
+          SAFE_HEAP_STORE($475 | 0, $349 | 0, 4);
+          break;
+         }
+         $476 = SAFE_HEAP_LOAD($464 | 0, 4, 0) | 0 | 0;
+         $477 = ($$0359$i | 0) == 31;
+         $478 = $$0359$i >>> 1;
+         $479 = 25 - $478 | 0;
+         $480 = $477 ? 0 : $479;
+         $481 = $$4349$lcssa$i << $480;
+         $$0342$i = $481;
+         $$0343$i = $476;
+         while (1) {
+          $482 = $$0343$i + 4 | 0;
+          $483 = SAFE_HEAP_LOAD($482 | 0, 4, 0) | 0 | 0;
+          $484 = $483 & -8;
+          $485 = ($484 | 0) == ($$4349$lcssa$i | 0);
+          if ($485) {
+           label = 148;
+           break;
+          }
+          $486 = $$0342$i >>> 31;
+          $487 = ($$0343$i + 16 | 0) + ($486 << 2) | 0;
+          $488 = $$0342$i << 1;
+          $489 = SAFE_HEAP_LOAD($487 | 0, 4, 0) | 0 | 0;
+          $490 = ($489 | 0) == (0 | 0);
+          if ($490) {
+           label = 145;
+           break;
+          } else {
+           $$0342$i = $488;
+           $$0343$i = $489;
+          }
+         }
+         if ((label | 0) == 145) {
+          $491 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+          $492 = $487 >>> 0 < $491 >>> 0;
+          if ($492) {
+           _abort();
+          } else {
+           SAFE_HEAP_STORE($487 | 0, $349 | 0, 4);
+           $493 = $349 + 24 | 0;
+           SAFE_HEAP_STORE($493 | 0, $$0343$i | 0, 4);
+           $494 = $349 + 12 | 0;
+           SAFE_HEAP_STORE($494 | 0, $349 | 0, 4);
+           $495 = $349 + 8 | 0;
+           SAFE_HEAP_STORE($495 | 0, $349 | 0, 4);
+           break;
+          }
+         } else if ((label | 0) == 148) {
+          $496 = $$0343$i + 8 | 0;
+          $497 = SAFE_HEAP_LOAD($496 | 0, 4, 0) | 0 | 0;
+          $498 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+          $499 = $497 >>> 0 >= $498 >>> 0;
+          $not$7$i = $$0343$i >>> 0 >= $498 >>> 0;
+          $500 = $499 & $not$7$i;
+          if ($500) {
+           $501 = $497 + 12 | 0;
+           SAFE_HEAP_STORE($501 | 0, $349 | 0, 4);
+           SAFE_HEAP_STORE($496 | 0, $349 | 0, 4);
+           $502 = $349 + 8 | 0;
+           SAFE_HEAP_STORE($502 | 0, $497 | 0, 4);
+           $503 = $349 + 12 | 0;
+           SAFE_HEAP_STORE($503 | 0, $$0343$i | 0, 4);
+           $504 = $349 + 24 | 0;
+           SAFE_HEAP_STORE($504 | 0, 0 | 0, 4);
+           break;
+          } else {
+           _abort();
+          }
+         }
+        }
+       } while (0);
+       $505 = $$4$lcssa$i + 8 | 0;
+       $$0 = $505;
+       STACKTOP = sp;
+       return $$0 | 0;
+      } else {
+       $$0197 = $246;
+      }
+     }
+    }
+   }
+  }
+ } while (0);
+ $506 = SAFE_HEAP_LOAD(70872 | 0, 4, 0) | 0 | 0;
+ $507 = $506 >>> 0 < $$0197 >>> 0;
+ if (!$507) {
+  $508 = $506 - $$0197 | 0;
+  $509 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+  $510 = $508 >>> 0 > 15;
+  if ($510) {
+   $511 = $509 + $$0197 | 0;
+   SAFE_HEAP_STORE(70884 | 0, $511 | 0, 4);
+   SAFE_HEAP_STORE(70872 | 0, $508 | 0, 4);
+   $512 = $508 | 1;
+   $513 = $511 + 4 | 0;
+   SAFE_HEAP_STORE($513 | 0, $512 | 0, 4);
+   $514 = $511 + $508 | 0;
+   SAFE_HEAP_STORE($514 | 0, $508 | 0, 4);
+   $515 = $$0197 | 3;
+   $516 = $509 + 4 | 0;
+   SAFE_HEAP_STORE($516 | 0, $515 | 0, 4);
+  } else {
+   SAFE_HEAP_STORE(70872 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE(70884 | 0, 0 | 0, 4);
+   $517 = $506 | 3;
+   $518 = $509 + 4 | 0;
+   SAFE_HEAP_STORE($518 | 0, $517 | 0, 4);
+   $519 = $509 + $506 | 0;
+   $520 = $519 + 4 | 0;
+   $521 = SAFE_HEAP_LOAD($520 | 0, 4, 0) | 0 | 0;
+   $522 = $521 | 1;
+   SAFE_HEAP_STORE($520 | 0, $522 | 0, 4);
+  }
+  $523 = $509 + 8 | 0;
+  $$0 = $523;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $524 = SAFE_HEAP_LOAD(70876 | 0, 4, 0) | 0 | 0;
+ $525 = $524 >>> 0 > $$0197 >>> 0;
+ if ($525) {
+  $526 = $524 - $$0197 | 0;
+  SAFE_HEAP_STORE(70876 | 0, $526 | 0, 4);
+  $527 = SAFE_HEAP_LOAD(70888 | 0, 4, 0) | 0 | 0;
+  $528 = $527 + $$0197 | 0;
+  SAFE_HEAP_STORE(70888 | 0, $528 | 0, 4);
+  $529 = $526 | 1;
+  $530 = $528 + 4 | 0;
+  SAFE_HEAP_STORE($530 | 0, $529 | 0, 4);
+  $531 = $$0197 | 3;
+  $532 = $527 + 4 | 0;
+  SAFE_HEAP_STORE($532 | 0, $531 | 0, 4);
+  $533 = $527 + 8 | 0;
+  $$0 = $533;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $534 = SAFE_HEAP_LOAD(17834 * 4 | 0, 4, 0) | 0 | 0;
+ $535 = ($534 | 0) == 0;
+ if ($535) {
+  SAFE_HEAP_STORE(71344 | 0, 4096 | 0, 4);
+  SAFE_HEAP_STORE(71340 | 0, 4096 | 0, 4);
+  SAFE_HEAP_STORE(71348 | 0, -1 | 0, 4);
+  SAFE_HEAP_STORE(71352 | 0, -1 | 0, 4);
+  SAFE_HEAP_STORE(71356 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE(71308 | 0, 0 | 0, 4);
+  $536 = $1;
+  $537 = $536 & -16;
+  $538 = $537 ^ 1431655768;
+  SAFE_HEAP_STORE($1 | 0, $538 | 0, 4);
+  SAFE_HEAP_STORE(17834 * 4 | 0, $538 | 0, 4);
+  $542 = 4096;
+ } else {
+  $$pre$i208 = SAFE_HEAP_LOAD(71344 | 0, 4, 0) | 0 | 0;
+  $542 = $$pre$i208;
+ }
+ $539 = $$0197 + 48 | 0;
+ $540 = $$0197 + 47 | 0;
+ $541 = $542 + $540 | 0;
+ $543 = 0 - $542 | 0;
+ $544 = $541 & $543;
+ $545 = $544 >>> 0 > $$0197 >>> 0;
+ if (!$545) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $546 = SAFE_HEAP_LOAD(71304 | 0, 4, 0) | 0 | 0;
+ $547 = ($546 | 0) == 0;
+ if (!$547) {
+  $548 = SAFE_HEAP_LOAD(71296 | 0, 4, 0) | 0 | 0;
+  $549 = $548 + $544 | 0;
+  $550 = $549 >>> 0 <= $548 >>> 0;
+  $551 = $549 >>> 0 > $546 >>> 0;
+  $or$cond1$i210 = $550 | $551;
+  if ($or$cond1$i210) {
+   $$0 = 0;
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ }
+ $552 = SAFE_HEAP_LOAD(71308 | 0, 4, 0) | 0 | 0;
+ $553 = $552 & 4;
+ $554 = ($553 | 0) == 0;
+ L255 : do {
+  if ($554) {
+   $555 = SAFE_HEAP_LOAD(70888 | 0, 4, 0) | 0 | 0;
+   $556 = ($555 | 0) == (0 | 0);
+   L257 : do {
+    if ($556) {
+     label = 172;
+    } else {
+     $$0$i17$i = 71312;
+     while (1) {
+      $557 = SAFE_HEAP_LOAD($$0$i17$i | 0, 4, 0) | 0 | 0;
+      $558 = $557 >>> 0 > $555 >>> 0;
+      if (!$558) {
+       $559 = $$0$i17$i + 4 | 0;
+       $560 = SAFE_HEAP_LOAD($559 | 0, 4, 0) | 0 | 0;
+       $561 = $557 + $560 | 0;
+       $562 = $561 >>> 0 > $555 >>> 0;
+       if ($562) {
+        break;
+       }
+      }
+      $563 = $$0$i17$i + 8 | 0;
+      $564 = SAFE_HEAP_LOAD($563 | 0, 4, 0) | 0 | 0;
+      $565 = ($564 | 0) == (0 | 0);
+      if ($565) {
+       label = 172;
+       break L257;
+      } else {
+       $$0$i17$i = $564;
+      }
+     }
+     $588 = $541 - $524 | 0;
+     $589 = $588 & $543;
+     $590 = $589 >>> 0 < 2147483647;
+     if ($590) {
+      $591 = _sbrk($589 | 0) | 0;
+      $592 = SAFE_HEAP_LOAD($$0$i17$i | 0, 4, 0) | 0 | 0;
+      $593 = SAFE_HEAP_LOAD($559 | 0, 4, 0) | 0 | 0;
+      $594 = $592 + $593 | 0;
+      $595 = ($591 | 0) == ($594 | 0);
+      if ($595) {
+       $596 = ($591 | 0) == (-1 | 0);
+       if (!$596) {
+        $$723947$i = $589;
+        $$748$i = $591;
+        label = 190;
+        break L255;
+       }
+      } else {
+       $$2247$ph$i = $591;
+       $$2253$ph$i = $589;
+       label = 180;
+      }
+     }
+    }
+   } while (0);
+   do {
+    if ((label | 0) == 172) {
+     $566 = _sbrk(0) | 0;
+     $567 = ($566 | 0) == (-1 | 0);
+     if (!$567) {
+      $568 = $566;
+      $569 = SAFE_HEAP_LOAD(71340 | 0, 4, 0) | 0 | 0;
+      $570 = $569 + -1 | 0;
+      $571 = $570 & $568;
+      $572 = ($571 | 0) == 0;
+      $573 = $570 + $568 | 0;
+      $574 = 0 - $569 | 0;
+      $575 = $573 & $574;
+      $576 = $575 - $568 | 0;
+      $577 = $572 ? 0 : $576;
+      $$$i = $577 + $544 | 0;
+      $578 = SAFE_HEAP_LOAD(71296 | 0, 4, 0) | 0 | 0;
+      $579 = $$$i + $578 | 0;
+      $580 = $$$i >>> 0 > $$0197 >>> 0;
+      $581 = $$$i >>> 0 < 2147483647;
+      $or$cond$i211 = $580 & $581;
+      if ($or$cond$i211) {
+       $582 = SAFE_HEAP_LOAD(71304 | 0, 4, 0) | 0 | 0;
+       $583 = ($582 | 0) == 0;
+       if (!$583) {
+        $584 = $579 >>> 0 <= $578 >>> 0;
+        $585 = $579 >>> 0 > $582 >>> 0;
+        $or$cond2$i = $584 | $585;
+        if ($or$cond2$i) {
+         break;
+        }
+       }
+       $586 = _sbrk($$$i | 0) | 0;
+       $587 = ($586 | 0) == ($566 | 0);
+       if ($587) {
+        $$723947$i = $$$i;
+        $$748$i = $566;
+        label = 190;
+        break L255;
+       } else {
+        $$2247$ph$i = $586;
+        $$2253$ph$i = $$$i;
+        label = 180;
+       }
+      }
+     }
+    }
+   } while (0);
+   L274 : do {
+    if ((label | 0) == 180) {
+     $597 = 0 - $$2253$ph$i | 0;
+     $598 = ($$2247$ph$i | 0) != (-1 | 0);
+     $599 = $$2253$ph$i >>> 0 < 2147483647;
+     $or$cond7$i = $599 & $598;
+     $600 = $539 >>> 0 > $$2253$ph$i >>> 0;
+     $or$cond10$i = $600 & $or$cond7$i;
+     do {
+      if ($or$cond10$i) {
+       $601 = SAFE_HEAP_LOAD(71344 | 0, 4, 0) | 0 | 0;
+       $602 = $540 - $$2253$ph$i | 0;
+       $603 = $602 + $601 | 0;
+       $604 = 0 - $601 | 0;
+       $605 = $603 & $604;
+       $606 = $605 >>> 0 < 2147483647;
+       if ($606) {
+        $607 = _sbrk($605 | 0) | 0;
+        $608 = ($607 | 0) == (-1 | 0);
+        if ($608) {
+         _sbrk($597 | 0) | 0;
+         break L274;
+        } else {
+         $609 = $605 + $$2253$ph$i | 0;
+         $$5256$i = $609;
+         break;
+        }
+       } else {
+        $$5256$i = $$2253$ph$i;
+       }
+      } else {
+       $$5256$i = $$2253$ph$i;
+      }
+     } while (0);
+     $610 = ($$2247$ph$i | 0) == (-1 | 0);
+     if (!$610) {
+      $$723947$i = $$5256$i;
+      $$748$i = $$2247$ph$i;
+      label = 190;
+      break L255;
+     }
+    }
+   } while (0);
+   $611 = SAFE_HEAP_LOAD(71308 | 0, 4, 0) | 0 | 0;
+   $612 = $611 | 4;
+   SAFE_HEAP_STORE(71308 | 0, $612 | 0, 4);
+   label = 187;
+  } else {
+   label = 187;
+  }
+ } while (0);
+ if ((label | 0) == 187) {
+  $613 = $544 >>> 0 < 2147483647;
+  if ($613) {
+   $614 = _sbrk($544 | 0) | 0;
+   $615 = _sbrk(0) | 0;
+   $616 = ($614 | 0) != (-1 | 0);
+   $617 = ($615 | 0) != (-1 | 0);
+   $or$cond5$i = $616 & $617;
+   $618 = $614 >>> 0 < $615 >>> 0;
+   $or$cond11$i = $618 & $or$cond5$i;
+   if ($or$cond11$i) {
+    $619 = $615;
+    $620 = $614;
+    $621 = $619 - $620 | 0;
+    $622 = $$0197 + 40 | 0;
+    $$not$i = $621 >>> 0 > $622 >>> 0;
+    if ($$not$i) {
+     $$723947$i = $621;
+     $$748$i = $614;
+     label = 190;
+    }
+   }
+  }
+ }
+ if ((label | 0) == 190) {
+  $623 = SAFE_HEAP_LOAD(71296 | 0, 4, 0) | 0 | 0;
+  $624 = $623 + $$723947$i | 0;
+  SAFE_HEAP_STORE(71296 | 0, $624 | 0, 4);
+  $625 = SAFE_HEAP_LOAD(71300 | 0, 4, 0) | 0 | 0;
+  $626 = $624 >>> 0 > $625 >>> 0;
+  if ($626) {
+   SAFE_HEAP_STORE(71300 | 0, $624 | 0, 4);
+  }
+  $627 = SAFE_HEAP_LOAD(70888 | 0, 4, 0) | 0 | 0;
+  $628 = ($627 | 0) == (0 | 0);
+  do {
+   if ($628) {
+    $629 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+    $630 = ($629 | 0) == (0 | 0);
+    $631 = $$748$i >>> 0 < $629 >>> 0;
+    $or$cond12$i = $630 | $631;
+    if ($or$cond12$i) {
+     SAFE_HEAP_STORE(70880 | 0, $$748$i | 0, 4);
+    }
+    SAFE_HEAP_STORE(71312 | 0, $$748$i | 0, 4);
+    SAFE_HEAP_STORE(71316 | 0, $$723947$i | 0, 4);
+    SAFE_HEAP_STORE(71324 | 0, 0 | 0, 4);
+    $632 = SAFE_HEAP_LOAD(17834 * 4 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE(70900 | 0, $632 | 0, 4);
+    SAFE_HEAP_STORE(70896 | 0, -1 | 0, 4);
+    $$01$i$i = 0;
+    while (1) {
+     $633 = $$01$i$i << 1;
+     $634 = 70904 + ($633 << 2) | 0;
+     $635 = $634 + 12 | 0;
+     SAFE_HEAP_STORE($635 | 0, $634 | 0, 4);
+     $636 = $634 + 8 | 0;
+     SAFE_HEAP_STORE($636 | 0, $634 | 0, 4);
+     $637 = $$01$i$i + 1 | 0;
+     $exitcond$i$i = ($637 | 0) == 32;
+     if ($exitcond$i$i) {
+      break;
+     } else {
+      $$01$i$i = $637;
+     }
+    }
+    $638 = $$723947$i + -40 | 0;
+    $639 = $$748$i + 8 | 0;
+    $640 = $639;
+    $641 = $640 & 7;
+    $642 = ($641 | 0) == 0;
+    $643 = 0 - $640 | 0;
+    $644 = $643 & 7;
+    $645 = $642 ? 0 : $644;
+    $646 = $$748$i + $645 | 0;
+    $647 = $638 - $645 | 0;
+    SAFE_HEAP_STORE(70888 | 0, $646 | 0, 4);
+    SAFE_HEAP_STORE(70876 | 0, $647 | 0, 4);
+    $648 = $647 | 1;
+    $649 = $646 + 4 | 0;
+    SAFE_HEAP_STORE($649 | 0, $648 | 0, 4);
+    $650 = $646 + $647 | 0;
+    $651 = $650 + 4 | 0;
+    SAFE_HEAP_STORE($651 | 0, 40 | 0, 4);
+    $652 = SAFE_HEAP_LOAD(71352 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE(70892 | 0, $652 | 0, 4);
+   } else {
+    $$024370$i = 71312;
+    while (1) {
+     $653 = SAFE_HEAP_LOAD($$024370$i | 0, 4, 0) | 0 | 0;
+     $654 = $$024370$i + 4 | 0;
+     $655 = SAFE_HEAP_LOAD($654 | 0, 4, 0) | 0 | 0;
+     $656 = $653 + $655 | 0;
+     $657 = ($$748$i | 0) == ($656 | 0);
+     if ($657) {
+      label = 200;
+      break;
+     }
+     $658 = $$024370$i + 8 | 0;
+     $659 = SAFE_HEAP_LOAD($658 | 0, 4, 0) | 0 | 0;
+     $660 = ($659 | 0) == (0 | 0);
+     if ($660) {
+      break;
+     } else {
+      $$024370$i = $659;
+     }
+    }
+    if ((label | 0) == 200) {
+     $661 = $$024370$i + 12 | 0;
+     $662 = SAFE_HEAP_LOAD($661 | 0, 4, 0) | 0 | 0;
+     $663 = $662 & 8;
+     $664 = ($663 | 0) == 0;
+     if ($664) {
+      $665 = $627 >>> 0 >= $653 >>> 0;
+      $666 = $627 >>> 0 < $$748$i >>> 0;
+      $or$cond50$i = $666 & $665;
+      if ($or$cond50$i) {
+       $667 = $655 + $$723947$i | 0;
+       SAFE_HEAP_STORE($654 | 0, $667 | 0, 4);
+       $668 = SAFE_HEAP_LOAD(70876 | 0, 4, 0) | 0 | 0;
+       $669 = $627 + 8 | 0;
+       $670 = $669;
+       $671 = $670 & 7;
+       $672 = ($671 | 0) == 0;
+       $673 = 0 - $670 | 0;
+       $674 = $673 & 7;
+       $675 = $672 ? 0 : $674;
+       $676 = $627 + $675 | 0;
+       $677 = $$723947$i - $675 | 0;
+       $678 = $677 + $668 | 0;
+       SAFE_HEAP_STORE(70888 | 0, $676 | 0, 4);
+       SAFE_HEAP_STORE(70876 | 0, $678 | 0, 4);
+       $679 = $678 | 1;
+       $680 = $676 + 4 | 0;
+       SAFE_HEAP_STORE($680 | 0, $679 | 0, 4);
+       $681 = $676 + $678 | 0;
+       $682 = $681 + 4 | 0;
+       SAFE_HEAP_STORE($682 | 0, 40 | 0, 4);
+       $683 = SAFE_HEAP_LOAD(71352 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE(70892 | 0, $683 | 0, 4);
+       break;
+      }
+     }
+    }
+    $684 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+    $685 = $$748$i >>> 0 < $684 >>> 0;
+    if ($685) {
+     SAFE_HEAP_STORE(70880 | 0, $$748$i | 0, 4);
+     $749 = $$748$i;
+    } else {
+     $749 = $684;
+    }
+    $686 = $$748$i + $$723947$i | 0;
+    $$124469$i = 71312;
+    while (1) {
+     $687 = SAFE_HEAP_LOAD($$124469$i | 0, 4, 0) | 0 | 0;
+     $688 = ($687 | 0) == ($686 | 0);
+     if ($688) {
+      label = 208;
+      break;
+     }
+     $689 = $$124469$i + 8 | 0;
+     $690 = SAFE_HEAP_LOAD($689 | 0, 4, 0) | 0 | 0;
+     $691 = ($690 | 0) == (0 | 0);
+     if ($691) {
+      $$0$i$i$i = 71312;
+      break;
+     } else {
+      $$124469$i = $690;
+     }
+    }
+    if ((label | 0) == 208) {
+     $692 = $$124469$i + 12 | 0;
+     $693 = SAFE_HEAP_LOAD($692 | 0, 4, 0) | 0 | 0;
+     $694 = $693 & 8;
+     $695 = ($694 | 0) == 0;
+     if ($695) {
+      SAFE_HEAP_STORE($$124469$i | 0, $$748$i | 0, 4);
+      $696 = $$124469$i + 4 | 0;
+      $697 = SAFE_HEAP_LOAD($696 | 0, 4, 0) | 0 | 0;
+      $698 = $697 + $$723947$i | 0;
+      SAFE_HEAP_STORE($696 | 0, $698 | 0, 4);
+      $699 = $$748$i + 8 | 0;
+      $700 = $699;
+      $701 = $700 & 7;
+      $702 = ($701 | 0) == 0;
+      $703 = 0 - $700 | 0;
+      $704 = $703 & 7;
+      $705 = $702 ? 0 : $704;
+      $706 = $$748$i + $705 | 0;
+      $707 = $686 + 8 | 0;
+      $708 = $707;
+      $709 = $708 & 7;
+      $710 = ($709 | 0) == 0;
+      $711 = 0 - $708 | 0;
+      $712 = $711 & 7;
+      $713 = $710 ? 0 : $712;
+      $714 = $686 + $713 | 0;
+      $715 = $714;
+      $716 = $706;
+      $717 = $715 - $716 | 0;
+      $718 = $706 + $$0197 | 0;
+      $719 = $717 - $$0197 | 0;
+      $720 = $$0197 | 3;
+      $721 = $706 + 4 | 0;
+      SAFE_HEAP_STORE($721 | 0, $720 | 0, 4);
+      $722 = ($714 | 0) == ($627 | 0);
+      do {
+       if ($722) {
+        $723 = SAFE_HEAP_LOAD(70876 | 0, 4, 0) | 0 | 0;
+        $724 = $723 + $719 | 0;
+        SAFE_HEAP_STORE(70876 | 0, $724 | 0, 4);
+        SAFE_HEAP_STORE(70888 | 0, $718 | 0, 4);
+        $725 = $724 | 1;
+        $726 = $718 + 4 | 0;
+        SAFE_HEAP_STORE($726 | 0, $725 | 0, 4);
+       } else {
+        $727 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+        $728 = ($714 | 0) == ($727 | 0);
+        if ($728) {
+         $729 = SAFE_HEAP_LOAD(70872 | 0, 4, 0) | 0 | 0;
+         $730 = $729 + $719 | 0;
+         SAFE_HEAP_STORE(70872 | 0, $730 | 0, 4);
+         SAFE_HEAP_STORE(70884 | 0, $718 | 0, 4);
+         $731 = $730 | 1;
+         $732 = $718 + 4 | 0;
+         SAFE_HEAP_STORE($732 | 0, $731 | 0, 4);
+         $733 = $718 + $730 | 0;
+         SAFE_HEAP_STORE($733 | 0, $730 | 0, 4);
+         break;
+        }
+        $734 = $714 + 4 | 0;
+        $735 = SAFE_HEAP_LOAD($734 | 0, 4, 0) | 0 | 0;
+        $736 = $735 & 3;
+        $737 = ($736 | 0) == 1;
+        if ($737) {
+         $738 = $735 & -8;
+         $739 = $735 >>> 3;
+         $740 = $735 >>> 0 < 256;
+         L326 : do {
+          if ($740) {
+           $741 = $714 + 8 | 0;
+           $742 = SAFE_HEAP_LOAD($741 | 0, 4, 0) | 0 | 0;
+           $743 = $714 + 12 | 0;
+           $744 = SAFE_HEAP_LOAD($743 | 0, 4, 0) | 0 | 0;
+           $745 = $739 << 1;
+           $746 = 70904 + ($745 << 2) | 0;
+           $747 = ($742 | 0) == ($746 | 0);
+           do {
+            if (!$747) {
+             $748 = $742 >>> 0 < $749 >>> 0;
+             if ($748) {
+              _abort();
+             }
+             $750 = $742 + 12 | 0;
+             $751 = SAFE_HEAP_LOAD($750 | 0, 4, 0) | 0 | 0;
+             $752 = ($751 | 0) == ($714 | 0);
+             if ($752) {
+              break;
+             }
+             _abort();
+            }
+           } while (0);
+           $753 = ($744 | 0) == ($742 | 0);
+           if ($753) {
+            $754 = 1 << $739;
+            $755 = $754 ^ -1;
+            $756 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+            $757 = $756 & $755;
+            SAFE_HEAP_STORE(17716 * 4 | 0, $757 | 0, 4);
+            break;
+           }
+           $758 = ($744 | 0) == ($746 | 0);
+           do {
+            if ($758) {
+             $$pre9$i$i = $744 + 8 | 0;
+             $$pre$phi10$i$iZ2D = $$pre9$i$i;
+            } else {
+             $759 = $744 >>> 0 < $749 >>> 0;
+             if ($759) {
+              _abort();
+             }
+             $760 = $744 + 8 | 0;
+             $761 = SAFE_HEAP_LOAD($760 | 0, 4, 0) | 0 | 0;
+             $762 = ($761 | 0) == ($714 | 0);
+             if ($762) {
+              $$pre$phi10$i$iZ2D = $760;
+              break;
+             }
+             _abort();
+            }
+           } while (0);
+           $763 = $742 + 12 | 0;
+           SAFE_HEAP_STORE($763 | 0, $744 | 0, 4);
+           SAFE_HEAP_STORE($$pre$phi10$i$iZ2D | 0, $742 | 0, 4);
+          } else {
+           $764 = $714 + 24 | 0;
+           $765 = SAFE_HEAP_LOAD($764 | 0, 4, 0) | 0 | 0;
+           $766 = $714 + 12 | 0;
+           $767 = SAFE_HEAP_LOAD($766 | 0, 4, 0) | 0 | 0;
+           $768 = ($767 | 0) == ($714 | 0);
+           do {
+            if ($768) {
+             $778 = $714 + 16 | 0;
+             $779 = $778 + 4 | 0;
+             $780 = SAFE_HEAP_LOAD($779 | 0, 4, 0) | 0 | 0;
+             $781 = ($780 | 0) == (0 | 0);
+             if ($781) {
+              $782 = SAFE_HEAP_LOAD($778 | 0, 4, 0) | 0 | 0;
+              $783 = ($782 | 0) == (0 | 0);
+              if ($783) {
+               $$3$i$i = 0;
+               break;
+              } else {
+               $$1290$i$i = $782;
+               $$1292$i$i = $778;
+              }
+             } else {
+              $$1290$i$i = $780;
+              $$1292$i$i = $779;
+             }
+             while (1) {
+              $784 = $$1290$i$i + 20 | 0;
+              $785 = SAFE_HEAP_LOAD($784 | 0, 4, 0) | 0 | 0;
+              $786 = ($785 | 0) == (0 | 0);
+              if (!$786) {
+               $$1290$i$i = $785;
+               $$1292$i$i = $784;
+               continue;
+              }
+              $787 = $$1290$i$i + 16 | 0;
+              $788 = SAFE_HEAP_LOAD($787 | 0, 4, 0) | 0 | 0;
+              $789 = ($788 | 0) == (0 | 0);
+              if ($789) {
+               break;
+              } else {
+               $$1290$i$i = $788;
+               $$1292$i$i = $787;
+              }
+             }
+             $790 = $$1292$i$i >>> 0 < $749 >>> 0;
+             if ($790) {
+              _abort();
+             } else {
+              SAFE_HEAP_STORE($$1292$i$i | 0, 0 | 0, 4);
+              $$3$i$i = $$1290$i$i;
+              break;
+             }
+            } else {
+             $769 = $714 + 8 | 0;
+             $770 = SAFE_HEAP_LOAD($769 | 0, 4, 0) | 0 | 0;
+             $771 = $770 >>> 0 < $749 >>> 0;
+             if ($771) {
+              _abort();
+             }
+             $772 = $770 + 12 | 0;
+             $773 = SAFE_HEAP_LOAD($772 | 0, 4, 0) | 0 | 0;
+             $774 = ($773 | 0) == ($714 | 0);
+             if (!$774) {
+              _abort();
+             }
+             $775 = $767 + 8 | 0;
+             $776 = SAFE_HEAP_LOAD($775 | 0, 4, 0) | 0 | 0;
+             $777 = ($776 | 0) == ($714 | 0);
+             if ($777) {
+              SAFE_HEAP_STORE($772 | 0, $767 | 0, 4);
+              SAFE_HEAP_STORE($775 | 0, $770 | 0, 4);
+              $$3$i$i = $767;
+              break;
+             } else {
+              _abort();
+             }
+            }
+           } while (0);
+           $791 = ($765 | 0) == (0 | 0);
+           if ($791) {
+            break;
+           }
+           $792 = $714 + 28 | 0;
+           $793 = SAFE_HEAP_LOAD($792 | 0, 4, 0) | 0 | 0;
+           $794 = 71168 + ($793 << 2) | 0;
+           $795 = SAFE_HEAP_LOAD($794 | 0, 4, 0) | 0 | 0;
+           $796 = ($714 | 0) == ($795 | 0);
+           do {
+            if ($796) {
+             SAFE_HEAP_STORE($794 | 0, $$3$i$i | 0, 4);
+             $cond$i$i = ($$3$i$i | 0) == (0 | 0);
+             if (!$cond$i$i) {
+              break;
+             }
+             $797 = 1 << $793;
+             $798 = $797 ^ -1;
+             $799 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+             $800 = $799 & $798;
+             SAFE_HEAP_STORE(70868 | 0, $800 | 0, 4);
+             break L326;
+            } else {
+             $801 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+             $802 = $765 >>> 0 < $801 >>> 0;
+             if ($802) {
+              _abort();
+             }
+             $803 = $765 + 16 | 0;
+             $804 = SAFE_HEAP_LOAD($803 | 0, 4, 0) | 0 | 0;
+             $805 = ($804 | 0) == ($714 | 0);
+             if ($805) {
+              SAFE_HEAP_STORE($803 | 0, $$3$i$i | 0, 4);
+             } else {
+              $806 = $765 + 20 | 0;
+              SAFE_HEAP_STORE($806 | 0, $$3$i$i | 0, 4);
+             }
+             $807 = ($$3$i$i | 0) == (0 | 0);
+             if ($807) {
+              break L326;
+             }
+            }
+           } while (0);
+           $808 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+           $809 = $$3$i$i >>> 0 < $808 >>> 0;
+           if ($809) {
+            _abort();
+           }
+           $810 = $$3$i$i + 24 | 0;
+           SAFE_HEAP_STORE($810 | 0, $765 | 0, 4);
+           $811 = $714 + 16 | 0;
+           $812 = SAFE_HEAP_LOAD($811 | 0, 4, 0) | 0 | 0;
+           $813 = ($812 | 0) == (0 | 0);
+           do {
+            if (!$813) {
+             $814 = $812 >>> 0 < $808 >>> 0;
+             if ($814) {
+              _abort();
+             } else {
+              $815 = $$3$i$i + 16 | 0;
+              SAFE_HEAP_STORE($815 | 0, $812 | 0, 4);
+              $816 = $812 + 24 | 0;
+              SAFE_HEAP_STORE($816 | 0, $$3$i$i | 0, 4);
+              break;
+             }
+            }
+           } while (0);
+           $817 = $811 + 4 | 0;
+           $818 = SAFE_HEAP_LOAD($817 | 0, 4, 0) | 0 | 0;
+           $819 = ($818 | 0) == (0 | 0);
+           if ($819) {
+            break;
+           }
+           $820 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+           $821 = $818 >>> 0 < $820 >>> 0;
+           if ($821) {
+            _abort();
+           } else {
+            $822 = $$3$i$i + 20 | 0;
+            SAFE_HEAP_STORE($822 | 0, $818 | 0, 4);
+            $823 = $818 + 24 | 0;
+            SAFE_HEAP_STORE($823 | 0, $$3$i$i | 0, 4);
+            break;
+           }
+          }
+         } while (0);
+         $824 = $714 + $738 | 0;
+         $825 = $738 + $719 | 0;
+         $$0$i18$i = $824;
+         $$0286$i$i = $825;
+        } else {
+         $$0$i18$i = $714;
+         $$0286$i$i = $719;
+        }
+        $826 = $$0$i18$i + 4 | 0;
+        $827 = SAFE_HEAP_LOAD($826 | 0, 4, 0) | 0 | 0;
+        $828 = $827 & -2;
+        SAFE_HEAP_STORE($826 | 0, $828 | 0, 4);
+        $829 = $$0286$i$i | 1;
+        $830 = $718 + 4 | 0;
+        SAFE_HEAP_STORE($830 | 0, $829 | 0, 4);
+        $831 = $718 + $$0286$i$i | 0;
+        SAFE_HEAP_STORE($831 | 0, $$0286$i$i | 0, 4);
+        $832 = $$0286$i$i >>> 3;
+        $833 = $$0286$i$i >>> 0 < 256;
+        if ($833) {
+         $834 = $832 << 1;
+         $835 = 70904 + ($834 << 2) | 0;
+         $836 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+         $837 = 1 << $832;
+         $838 = $836 & $837;
+         $839 = ($838 | 0) == 0;
+         do {
+          if ($839) {
+           $840 = $836 | $837;
+           SAFE_HEAP_STORE(17716 * 4 | 0, $840 | 0, 4);
+           $$pre$i19$i = $835 + 8 | 0;
+           $$0294$i$i = $835;
+           $$pre$phi$i20$iZ2D = $$pre$i19$i;
+          } else {
+           $841 = $835 + 8 | 0;
+           $842 = SAFE_HEAP_LOAD($841 | 0, 4, 0) | 0 | 0;
+           $843 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+           $844 = $842 >>> 0 < $843 >>> 0;
+           if (!$844) {
+            $$0294$i$i = $842;
+            $$pre$phi$i20$iZ2D = $841;
+            break;
+           }
+           _abort();
+          }
+         } while (0);
+         SAFE_HEAP_STORE($$pre$phi$i20$iZ2D | 0, $718 | 0, 4);
+         $845 = $$0294$i$i + 12 | 0;
+         SAFE_HEAP_STORE($845 | 0, $718 | 0, 4);
+         $846 = $718 + 8 | 0;
+         SAFE_HEAP_STORE($846 | 0, $$0294$i$i | 0, 4);
+         $847 = $718 + 12 | 0;
+         SAFE_HEAP_STORE($847 | 0, $835 | 0, 4);
+         break;
+        }
+        $848 = $$0286$i$i >>> 8;
+        $849 = ($848 | 0) == 0;
+        do {
+         if ($849) {
+          $$0295$i$i = 0;
+         } else {
+          $850 = $$0286$i$i >>> 0 > 16777215;
+          if ($850) {
+           $$0295$i$i = 31;
+           break;
+          }
+          $851 = $848 + 1048320 | 0;
+          $852 = $851 >>> 16;
+          $853 = $852 & 8;
+          $854 = $848 << $853;
+          $855 = $854 + 520192 | 0;
+          $856 = $855 >>> 16;
+          $857 = $856 & 4;
+          $858 = $857 | $853;
+          $859 = $854 << $857;
+          $860 = $859 + 245760 | 0;
+          $861 = $860 >>> 16;
+          $862 = $861 & 2;
+          $863 = $858 | $862;
+          $864 = 14 - $863 | 0;
+          $865 = $859 << $862;
+          $866 = $865 >>> 15;
+          $867 = $864 + $866 | 0;
+          $868 = $867 << 1;
+          $869 = $867 + 7 | 0;
+          $870 = $$0286$i$i >>> $869;
+          $871 = $870 & 1;
+          $872 = $871 | $868;
+          $$0295$i$i = $872;
+         }
+        } while (0);
+        $873 = 71168 + ($$0295$i$i << 2) | 0;
+        $874 = $718 + 28 | 0;
+        SAFE_HEAP_STORE($874 | 0, $$0295$i$i | 0, 4);
+        $875 = $718 + 16 | 0;
+        $876 = $875 + 4 | 0;
+        SAFE_HEAP_STORE($876 | 0, 0 | 0, 4);
+        SAFE_HEAP_STORE($875 | 0, 0 | 0, 4);
+        $877 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+        $878 = 1 << $$0295$i$i;
+        $879 = $877 & $878;
+        $880 = ($879 | 0) == 0;
+        if ($880) {
+         $881 = $877 | $878;
+         SAFE_HEAP_STORE(70868 | 0, $881 | 0, 4);
+         SAFE_HEAP_STORE($873 | 0, $718 | 0, 4);
+         $882 = $718 + 24 | 0;
+         SAFE_HEAP_STORE($882 | 0, $873 | 0, 4);
+         $883 = $718 + 12 | 0;
+         SAFE_HEAP_STORE($883 | 0, $718 | 0, 4);
+         $884 = $718 + 8 | 0;
+         SAFE_HEAP_STORE($884 | 0, $718 | 0, 4);
+         break;
+        }
+        $885 = SAFE_HEAP_LOAD($873 | 0, 4, 0) | 0 | 0;
+        $886 = ($$0295$i$i | 0) == 31;
+        $887 = $$0295$i$i >>> 1;
+        $888 = 25 - $887 | 0;
+        $889 = $886 ? 0 : $888;
+        $890 = $$0286$i$i << $889;
+        $$0287$i$i = $890;
+        $$0288$i$i = $885;
+        while (1) {
+         $891 = $$0288$i$i + 4 | 0;
+         $892 = SAFE_HEAP_LOAD($891 | 0, 4, 0) | 0 | 0;
+         $893 = $892 & -8;
+         $894 = ($893 | 0) == ($$0286$i$i | 0);
+         if ($894) {
+          label = 278;
+          break;
+         }
+         $895 = $$0287$i$i >>> 31;
+         $896 = ($$0288$i$i + 16 | 0) + ($895 << 2) | 0;
+         $897 = $$0287$i$i << 1;
+         $898 = SAFE_HEAP_LOAD($896 | 0, 4, 0) | 0 | 0;
+         $899 = ($898 | 0) == (0 | 0);
+         if ($899) {
+          label = 275;
+          break;
+         } else {
+          $$0287$i$i = $897;
+          $$0288$i$i = $898;
+         }
+        }
+        if ((label | 0) == 275) {
+         $900 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+         $901 = $896 >>> 0 < $900 >>> 0;
+         if ($901) {
+          _abort();
+         } else {
+          SAFE_HEAP_STORE($896 | 0, $718 | 0, 4);
+          $902 = $718 + 24 | 0;
+          SAFE_HEAP_STORE($902 | 0, $$0288$i$i | 0, 4);
+          $903 = $718 + 12 | 0;
+          SAFE_HEAP_STORE($903 | 0, $718 | 0, 4);
+          $904 = $718 + 8 | 0;
+          SAFE_HEAP_STORE($904 | 0, $718 | 0, 4);
+          break;
+         }
+        } else if ((label | 0) == 278) {
+         $905 = $$0288$i$i + 8 | 0;
+         $906 = SAFE_HEAP_LOAD($905 | 0, 4, 0) | 0 | 0;
+         $907 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+         $908 = $906 >>> 0 >= $907 >>> 0;
+         $not$$i22$i = $$0288$i$i >>> 0 >= $907 >>> 0;
+         $909 = $908 & $not$$i22$i;
+         if ($909) {
+          $910 = $906 + 12 | 0;
+          SAFE_HEAP_STORE($910 | 0, $718 | 0, 4);
+          SAFE_HEAP_STORE($905 | 0, $718 | 0, 4);
+          $911 = $718 + 8 | 0;
+          SAFE_HEAP_STORE($911 | 0, $906 | 0, 4);
+          $912 = $718 + 12 | 0;
+          SAFE_HEAP_STORE($912 | 0, $$0288$i$i | 0, 4);
+          $913 = $718 + 24 | 0;
+          SAFE_HEAP_STORE($913 | 0, 0 | 0, 4);
+          break;
+         } else {
+          _abort();
+         }
+        }
+       }
+      } while (0);
+      $1044 = $706 + 8 | 0;
+      $$0 = $1044;
+      STACKTOP = sp;
+      return $$0 | 0;
+     } else {
+      $$0$i$i$i = 71312;
+     }
+    }
+    while (1) {
+     $914 = SAFE_HEAP_LOAD($$0$i$i$i | 0, 4, 0) | 0 | 0;
+     $915 = $914 >>> 0 > $627 >>> 0;
+     if (!$915) {
+      $916 = $$0$i$i$i + 4 | 0;
+      $917 = SAFE_HEAP_LOAD($916 | 0, 4, 0) | 0 | 0;
+      $918 = $914 + $917 | 0;
+      $919 = $918 >>> 0 > $627 >>> 0;
+      if ($919) {
+       break;
+      }
+     }
+     $920 = $$0$i$i$i + 8 | 0;
+     $921 = SAFE_HEAP_LOAD($920 | 0, 4, 0) | 0 | 0;
+     $$0$i$i$i = $921;
+    }
+    $922 = $918 + -47 | 0;
+    $923 = $922 + 8 | 0;
+    $924 = $923;
+    $925 = $924 & 7;
+    $926 = ($925 | 0) == 0;
+    $927 = 0 - $924 | 0;
+    $928 = $927 & 7;
+    $929 = $926 ? 0 : $928;
+    $930 = $922 + $929 | 0;
+    $931 = $627 + 16 | 0;
+    $932 = $930 >>> 0 < $931 >>> 0;
+    $933 = $932 ? $627 : $930;
+    $934 = $933 + 8 | 0;
+    $935 = $933 + 24 | 0;
+    $936 = $$723947$i + -40 | 0;
+    $937 = $$748$i + 8 | 0;
+    $938 = $937;
+    $939 = $938 & 7;
+    $940 = ($939 | 0) == 0;
+    $941 = 0 - $938 | 0;
+    $942 = $941 & 7;
+    $943 = $940 ? 0 : $942;
+    $944 = $$748$i + $943 | 0;
+    $945 = $936 - $943 | 0;
+    SAFE_HEAP_STORE(70888 | 0, $944 | 0, 4);
+    SAFE_HEAP_STORE(70876 | 0, $945 | 0, 4);
+    $946 = $945 | 1;
+    $947 = $944 + 4 | 0;
+    SAFE_HEAP_STORE($947 | 0, $946 | 0, 4);
+    $948 = $944 + $945 | 0;
+    $949 = $948 + 4 | 0;
+    SAFE_HEAP_STORE($949 | 0, 40 | 0, 4);
+    $950 = SAFE_HEAP_LOAD(71352 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE(70892 | 0, $950 | 0, 4);
+    $951 = $933 + 4 | 0;
+    SAFE_HEAP_STORE($951 | 0, 27 | 0, 4);
+    {}
+    SAFE_HEAP_STORE($934 | 0, SAFE_HEAP_LOAD(71312 | 0, 4, 0) | 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($934 + 4 | 0, SAFE_HEAP_LOAD(71312 + 4 | 0, 4, 0) | 0 | 0 
| 0, 4);
+    SAFE_HEAP_STORE($934 + 8 | 0, SAFE_HEAP_LOAD(71312 + 8 | 0, 4, 0) | 0 | 0 
| 0, 4);
+    SAFE_HEAP_STORE($934 + 12 | 0, SAFE_HEAP_LOAD(71312 + 12 | 0, 4, 0) | 0 | 
0 | 0, 4);
+    SAFE_HEAP_STORE(71312 | 0, $$748$i | 0, 4);
+    SAFE_HEAP_STORE(71316 | 0, $$723947$i | 0, 4);
+    SAFE_HEAP_STORE(71324 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE(71320 | 0, $934 | 0, 4);
+    $$0$i$i = $935;
+    while (1) {
+     $952 = $$0$i$i + 4 | 0;
+     SAFE_HEAP_STORE($952 | 0, 7 | 0, 4);
+     $953 = $952 + 4 | 0;
+     $954 = $953 >>> 0 < $918 >>> 0;
+     if ($954) {
+      $$0$i$i = $952;
+     } else {
+      break;
+     }
+    }
+    $955 = ($933 | 0) == ($627 | 0);
+    if (!$955) {
+     $956 = $933;
+     $957 = $627;
+     $958 = $956 - $957 | 0;
+     $959 = SAFE_HEAP_LOAD($951 | 0, 4, 0) | 0 | 0;
+     $960 = $959 & -2;
+     SAFE_HEAP_STORE($951 | 0, $960 | 0, 4);
+     $961 = $958 | 1;
+     $962 = $627 + 4 | 0;
+     SAFE_HEAP_STORE($962 | 0, $961 | 0, 4);
+     SAFE_HEAP_STORE($933 | 0, $958 | 0, 4);
+     $963 = $958 >>> 3;
+     $964 = $958 >>> 0 < 256;
+     if ($964) {
+      $965 = $963 << 1;
+      $966 = 70904 + ($965 << 2) | 0;
+      $967 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+      $968 = 1 << $963;
+      $969 = $967 & $968;
+      $970 = ($969 | 0) == 0;
+      if ($970) {
+       $971 = $967 | $968;
+       SAFE_HEAP_STORE(17716 * 4 | 0, $971 | 0, 4);
+       $$pre$i$i = $966 + 8 | 0;
+       $$0211$i$i = $966;
+       $$pre$phi$i$iZ2D = $$pre$i$i;
+      } else {
+       $972 = $966 + 8 | 0;
+       $973 = SAFE_HEAP_LOAD($972 | 0, 4, 0) | 0 | 0;
+       $974 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+       $975 = $973 >>> 0 < $974 >>> 0;
+       if ($975) {
+        _abort();
+       } else {
+        $$0211$i$i = $973;
+        $$pre$phi$i$iZ2D = $972;
+       }
+      }
+      SAFE_HEAP_STORE($$pre$phi$i$iZ2D | 0, $627 | 0, 4);
+      $976 = $$0211$i$i + 12 | 0;
+      SAFE_HEAP_STORE($976 | 0, $627 | 0, 4);
+      $977 = $627 + 8 | 0;
+      SAFE_HEAP_STORE($977 | 0, $$0211$i$i | 0, 4);
+      $978 = $627 + 12 | 0;
+      SAFE_HEAP_STORE($978 | 0, $966 | 0, 4);
+      break;
+     }
+     $979 = $958 >>> 8;
+     $980 = ($979 | 0) == 0;
+     if ($980) {
+      $$0212$i$i = 0;
+     } else {
+      $981 = $958 >>> 0 > 16777215;
+      if ($981) {
+       $$0212$i$i = 31;
+      } else {
+       $982 = $979 + 1048320 | 0;
+       $983 = $982 >>> 16;
+       $984 = $983 & 8;
+       $985 = $979 << $984;
+       $986 = $985 + 520192 | 0;
+       $987 = $986 >>> 16;
+       $988 = $987 & 4;
+       $989 = $988 | $984;
+       $990 = $985 << $988;
+       $991 = $990 + 245760 | 0;
+       $992 = $991 >>> 16;
+       $993 = $992 & 2;
+       $994 = $989 | $993;
+       $995 = 14 - $994 | 0;
+       $996 = $990 << $993;
+       $997 = $996 >>> 15;
+       $998 = $995 + $997 | 0;
+       $999 = $998 << 1;
+       $1000 = $998 + 7 | 0;
+       $1001 = $958 >>> $1000;
+       $1002 = $1001 & 1;
+       $1003 = $1002 | $999;
+       $$0212$i$i = $1003;
+      }
+     }
+     $1004 = 71168 + ($$0212$i$i << 2) | 0;
+     $1005 = $627 + 28 | 0;
+     SAFE_HEAP_STORE($1005 | 0, $$0212$i$i | 0, 4);
+     $1006 = $627 + 20 | 0;
+     SAFE_HEAP_STORE($1006 | 0, 0 | 0, 4);
+     SAFE_HEAP_STORE($931 | 0, 0 | 0, 4);
+     $1007 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+     $1008 = 1 << $$0212$i$i;
+     $1009 = $1007 & $1008;
+     $1010 = ($1009 | 0) == 0;
+     if ($1010) {
+      $1011 = $1007 | $1008;
+      SAFE_HEAP_STORE(70868 | 0, $1011 | 0, 4);
+      SAFE_HEAP_STORE($1004 | 0, $627 | 0, 4);
+      $1012 = $627 + 24 | 0;
+      SAFE_HEAP_STORE($1012 | 0, $1004 | 0, 4);
+      $1013 = $627 + 12 | 0;
+      SAFE_HEAP_STORE($1013 | 0, $627 | 0, 4);
+      $1014 = $627 + 8 | 0;
+      SAFE_HEAP_STORE($1014 | 0, $627 | 0, 4);
+      break;
+     }
+     $1015 = SAFE_HEAP_LOAD($1004 | 0, 4, 0) | 0 | 0;
+     $1016 = ($$0212$i$i | 0) == 31;
+     $1017 = $$0212$i$i >>> 1;
+     $1018 = 25 - $1017 | 0;
+     $1019 = $1016 ? 0 : $1018;
+     $1020 = $958 << $1019;
+     $$0206$i$i = $1020;
+     $$0207$i$i = $1015;
+     while (1) {
+      $1021 = $$0207$i$i + 4 | 0;
+      $1022 = SAFE_HEAP_LOAD($1021 | 0, 4, 0) | 0 | 0;
+      $1023 = $1022 & -8;
+      $1024 = ($1023 | 0) == ($958 | 0);
+      if ($1024) {
+       label = 304;
+       break;
+      }
+      $1025 = $$0206$i$i >>> 31;
+      $1026 = ($$0207$i$i + 16 | 0) + ($1025 << 2) | 0;
+      $1027 = $$0206$i$i << 1;
+      $1028 = SAFE_HEAP_LOAD($1026 | 0, 4, 0) | 0 | 0;
+      $1029 = ($1028 | 0) == (0 | 0);
+      if ($1029) {
+       label = 301;
+       break;
+      } else {
+       $$0206$i$i = $1027;
+       $$0207$i$i = $1028;
+      }
+     }
+     if ((label | 0) == 301) {
+      $1030 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+      $1031 = $1026 >>> 0 < $1030 >>> 0;
+      if ($1031) {
+       _abort();
+      } else {
+       SAFE_HEAP_STORE($1026 | 0, $627 | 0, 4);
+       $1032 = $627 + 24 | 0;
+       SAFE_HEAP_STORE($1032 | 0, $$0207$i$i | 0, 4);
+       $1033 = $627 + 12 | 0;
+       SAFE_HEAP_STORE($1033 | 0, $627 | 0, 4);
+       $1034 = $627 + 8 | 0;
+       SAFE_HEAP_STORE($1034 | 0, $627 | 0, 4);
+       break;
+      }
+     } else if ((label | 0) == 304) {
+      $1035 = $$0207$i$i + 8 | 0;
+      $1036 = SAFE_HEAP_LOAD($1035 | 0, 4, 0) | 0 | 0;
+      $1037 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+      $1038 = $1036 >>> 0 >= $1037 >>> 0;
+      $not$$i$i = $$0207$i$i >>> 0 >= $1037 >>> 0;
+      $1039 = $1038 & $not$$i$i;
+      if ($1039) {
+       $1040 = $1036 + 12 | 0;
+       SAFE_HEAP_STORE($1040 | 0, $627 | 0, 4);
+       SAFE_HEAP_STORE($1035 | 0, $627 | 0, 4);
+       $1041 = $627 + 8 | 0;
+       SAFE_HEAP_STORE($1041 | 0, $1036 | 0, 4);
+       $1042 = $627 + 12 | 0;
+       SAFE_HEAP_STORE($1042 | 0, $$0207$i$i | 0, 4);
+       $1043 = $627 + 24 | 0;
+       SAFE_HEAP_STORE($1043 | 0, 0 | 0, 4);
+       break;
+      } else {
+       _abort();
+      }
+     }
+    }
+   }
+  } while (0);
+  $1045 = SAFE_HEAP_LOAD(70876 | 0, 4, 0) | 0 | 0;
+  $1046 = $1045 >>> 0 > $$0197 >>> 0;
+  if ($1046) {
+   $1047 = $1045 - $$0197 | 0;
+   SAFE_HEAP_STORE(70876 | 0, $1047 | 0, 4);
+   $1048 = SAFE_HEAP_LOAD(70888 | 0, 4, 0) | 0 | 0;
+   $1049 = $1048 + $$0197 | 0;
+   SAFE_HEAP_STORE(70888 | 0, $1049 | 0, 4);
+   $1050 = $1047 | 1;
+   $1051 = $1049 + 4 | 0;
+   SAFE_HEAP_STORE($1051 | 0, $1050 | 0, 4);
+   $1052 = $$0197 | 3;
+   $1053 = $1048 + 4 | 0;
+   SAFE_HEAP_STORE($1053 | 0, $1052 | 0, 4);
+   $1054 = $1048 + 8 | 0;
+   $$0 = $1054;
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ }
+ $1055 = ___errno_location() | 0;
+ SAFE_HEAP_STORE($1055 | 0, 12 | 0, 4);
+ $$0 = 0;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _transform($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$01$i = 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;
+ var $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, $1031 = 0;
+ var $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, $105 = 0;
+ var $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, $1068 = 0;
+ var $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, $1086 = 0;
+ var $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, $1103 = 0;
+ var $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, $1121 = 0;
+ var $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, $114 = 0;
+ var $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, $1158 = 0;
+ var $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, $1176 = 0;
+ var $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, $1194 = 0;
+ var $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, $1211 = 0;
+ var $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, $123 = 0;
+ var $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, $1248 = 0;
+ var $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, $1266 = 0;
+ var $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, $1284 = 0;
+ var $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, $1301 = 0;
+ var $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, $132 = 0;
+ var $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, $1338 = 0;
+ var $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, $1356 = 0;
+ var $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, $1374 = 0;
+ var $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, $1392 = 0;
+ var $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, $141 = 0;
+ var $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, $1428 = 0;
+ var $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, $1446 = 0;
+ var $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, $1464 = 0;
+ var $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, $1482 = 0;
+ var $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, $150 = 0;
+ var $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, $1518 = 0;
+ var $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, $1536 = 0;
+ var $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, $1554 = 0;
+ var $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, $1572 = 0;
+ var $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, $1590 = 0;
+ var $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, $1608 = 0;
+ var $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, $1626 = 0;
+ var $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, $1644 = 0;
+ var $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, $1662 = 0;
+ var $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, $1680 = 0;
+ var $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, $1699 = 0;
+ var $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, $1716 = 0;
+ var $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, $1734 = 0;
+ var $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, $1752 = 0;
+ var $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, $1770 = 0;
+ var $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, $1789 = 0;
+ var $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, $1806 = 0;
+ var $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, $1824 = 0;
+ var $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, $1842 = 0;
+ var $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, $1860 = 0;
+ var $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, $1879 = 0;
+ var $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, $1897 = 0;
+ var $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, $1914 = 0;
+ var $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, $1932 = 0;
+ var $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, $1950 = 0;
+ var $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, $1969 = 0;
+ var $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, $1987 = 0;
+ var $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, $2004 = 0;
+ var $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, $2022 = 0;
+ var $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, $2040 = 0;
+ var $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, $2059 = 0;
+ var $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, $2077 = 0;
+ var $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, $2095 = 0;
+ var $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, $2112 = 0;
+ var $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, $2130 = 0;
+ var $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, $2149 = 0;
+ var $215 = 0, $2150 = 0, $2151 = 0, $2152 = 0, $2153 = 0, $2154 = 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, $299 = 0, $3 = 0, $30 = 0;
+ var $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, $318 = 0;
+ var $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, $336 = 0;
+ var $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, $354 = 0;
+ var $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, $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 + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $3 = sp;
+ $4 = $0 + 160 | 0;
+ $5 = $0 + 164 | 0;
+ $6 = $0 + 168 | 0;
+ $7 = $0 + 172 | 0;
+ $8 = $0 + 176 | 0;
+ $9 = $3 + 20 | 0;
+ $10 = $3 + 4 | 0;
+ $11 = $3 + 56 | 0;
+ $12 = $3 + 8 | 0;
+ $13 = $3 + 28 | 0;
+ $14 = $3 + 12 | 0;
+ $15 = $3 + 16 | 0;
+ $16 = $3 + 36 | 0;
+ $17 = $3 + 24 | 0;
+ $18 = $3 + 44 | 0;
+ $19 = $3 + 32 | 0;
+ $20 = $3 + 52 | 0;
+ $21 = $3 + 40 | 0;
+ $22 = $3 + 60 | 0;
+ $23 = $3 + 48 | 0;
+ $$0 = $1;
+ $$05 = $2;
+ while (1) {
+  $$01$i = 0;
+  while (1) {
+   $24 = $$01$i << 2;
+   $25 = $$0 + $24 | 0;
+   $26 = $25 + 3 | 0;
+   $27 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+   $28 = $27 & 255;
+   $29 = $28 << 24;
+   $30 = $25 + 2 | 0;
+   $31 = SAFE_HEAP_LOAD($30 >> 0 | 0, 1, 0) | 0 | 0;
+   $32 = $31 & 255;
+   $33 = $32 << 16;
+   $34 = $33 | $29;
+   $35 = $25 + 1 | 0;
+   $36 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+   $37 = $36 & 255;
+   $38 = $37 << 8;
+   $39 = $34 | $38;
+   $40 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+   $41 = $40 & 255;
+   $42 = $39 | $41;
+   $43 = $3 + ($$01$i << 2) | 0;
+   SAFE_HEAP_STORE($43 | 0, $42 | 0, 4);
+   $44 = $$01$i + 1 | 0;
+   $exitcond$i = ($44 | 0) == 16;
+   if ($exitcond$i) {
+    break;
+   } else {
+    $$01$i = $44;
+   }
+  }
+  $45 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $46 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  $47 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $48 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  $49 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $50 = $47 ^ $46;
+  $51 = $50 ^ $48;
+  $52 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $53 = $51 + $45 | 0;
+  $54 = $53 + $52 | 0;
+  $55 = $54 << 11;
+  $56 = $54 >>> 21;
+  $57 = $55 | $56;
+  $58 = $57 + $49 | 0;
+  $59 = $47 << 10;
+  $60 = $47 >>> 22;
+  $61 = $59 | $60;
+  $62 = $48 ^ -1;
+  $63 = $47 | $62;
+  $64 = $63 ^ $46;
+  $65 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $66 = $45 + 1352829926 | 0;
+  $67 = $66 + $64 | 0;
+  $68 = $67 + $65 | 0;
+  $69 = $68 << 8;
+  $70 = $68 >>> 24;
+  $71 = $69 | $70;
+  $72 = $71 + $49 | 0;
+  $73 = $61 ^ $46;
+  $74 = $73 ^ $58;
+  $75 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $76 = $75 + $49 | 0;
+  $77 = $76 + $74 | 0;
+  $78 = $77 << 14;
+  $79 = $77 >>> 18;
+  $80 = $78 | $79;
+  $81 = $80 + $48 | 0;
+  $82 = $46 << 10;
+  $83 = $46 >>> 22;
+  $84 = $82 | $83;
+  $85 = $61 ^ -1;
+  $86 = $46 | $85;
+  $87 = $72 ^ $86;
+  $88 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+  $89 = $49 + 1352829926 | 0;
+  $90 = $89 + $88 | 0;
+  $91 = $90 + $87 | 0;
+  $92 = $91 << 9;
+  $93 = $91 >>> 23;
+  $94 = $92 | $93;
+  $95 = $94 + $48 | 0;
+  $96 = $58 ^ $84;
+  $97 = $96 ^ $81;
+  $98 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $99 = $98 + $48 | 0;
+  $100 = $99 + $97 | 0;
+  $101 = $100 << 15;
+  $102 = $100 >>> 17;
+  $103 = $101 | $102;
+  $104 = $103 + $61 | 0;
+  $105 = $58 << 10;
+  $106 = $58 >>> 22;
+  $107 = $105 | $106;
+  $108 = $84 ^ -1;
+  $109 = $72 | $108;
+  $110 = $95 ^ $109;
+  $111 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  $112 = $48 + 1352829926 | 0;
+  $113 = $112 + $111 | 0;
+  $114 = $113 + $110 | 0;
+  $115 = $114 << 9;
+  $116 = $114 >>> 23;
+  $117 = $115 | $116;
+  $118 = $117 + $61 | 0;
+  $119 = $72 << 10;
+  $120 = $72 >>> 22;
+  $121 = $119 | $120;
+  $122 = $81 ^ $107;
+  $123 = $122 ^ $104;
+  $124 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+  $125 = $124 + $61 | 0;
+  $126 = $125 + $123 | 0;
+  $127 = $126 << 12;
+  $128 = $126 >>> 20;
+  $129 = $127 | $128;
+  $130 = $129 + $84 | 0;
+  $131 = $81 << 10;
+  $132 = $81 >>> 22;
+  $133 = $131 | $132;
+  $134 = $121 ^ -1;
+  $135 = $95 | $134;
+  $136 = $118 ^ $135;
+  $137 = $61 + 1352829926 | 0;
+  $138 = $137 + $52 | 0;
+  $139 = $138 + $136 | 0;
+  $140 = $139 << 11;
+  $141 = $139 >>> 21;
+  $142 = $140 | $141;
+  $143 = $142 + $84 | 0;
+  $144 = $95 << 10;
+  $145 = $95 >>> 22;
+  $146 = $144 | $145;
+  $147 = $104 ^ $133;
+  $148 = $147 ^ $130;
+  $149 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $150 = $149 + $84 | 0;
+  $151 = $150 + $148 | 0;
+  $152 = $151 << 5;
+  $153 = $151 >>> 27;
+  $154 = $152 | $153;
+  $155 = $154 + $107 | 0;
+  $156 = $104 << 10;
+  $157 = $104 >>> 22;
+  $158 = $156 | $157;
+  $159 = $146 ^ -1;
+  $160 = $118 | $159;
+  $161 = $143 ^ $160;
+  $162 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+  $163 = $84 + 1352829926 | 0;
+  $164 = $163 + $162 | 0;
+  $165 = $164 + $161 | 0;
+  $166 = $165 << 13;
+  $167 = $165 >>> 19;
+  $168 = $166 | $167;
+  $169 = $168 + $121 | 0;
+  $170 = $118 << 10;
+  $171 = $118 >>> 22;
+  $172 = $170 | $171;
+  $173 = $130 ^ $158;
+  $174 = $173 ^ $155;
+  $175 = $107 + $65 | 0;
+  $176 = $175 + $174 | 0;
+  $177 = $176 << 8;
+  $178 = $176 >>> 24;
+  $179 = $177 | $178;
+  $180 = $179 + $133 | 0;
+  $181 = $130 << 10;
+  $182 = $130 >>> 22;
+  $183 = $181 | $182;
+  $184 = $172 ^ -1;
+  $185 = $143 | $184;
+  $186 = $169 ^ $185;
+  $187 = $98 + 1352829926 | 0;
+  $188 = $187 + $121 | 0;
+  $189 = $188 + $186 | 0;
+  $190 = $189 << 15;
+  $191 = $189 >>> 17;
+  $192 = $190 | $191;
+  $193 = $192 + $146 | 0;
+  $194 = $143 << 10;
+  $195 = $143 >>> 22;
+  $196 = $194 | $195;
+  $197 = $155 ^ $183;
+  $198 = $197 ^ $180;
+  $199 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+  $200 = $133 + $199 | 0;
+  $201 = $200 + $198 | 0;
+  $202 = $201 << 7;
+  $203 = $201 >>> 25;
+  $204 = $202 | $203;
+  $205 = $204 + $158 | 0;
+  $206 = $155 << 10;
+  $207 = $155 >>> 22;
+  $208 = $206 | $207;
+  $209 = $196 ^ -1;
+  $210 = $169 | $209;
+  $211 = $193 ^ $210;
+  $212 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+  $213 = $212 + 1352829926 | 0;
+  $214 = $213 + $146 | 0;
+  $215 = $214 + $211 | 0;
+  $216 = $215 << 15;
+  $217 = $215 >>> 17;
+  $218 = $216 | $217;
+  $219 = $218 + $172 | 0;
+  $220 = $169 << 10;
+  $221 = $169 >>> 22;
+  $222 = $220 | $221;
+  $223 = $180 ^ $208;
+  $224 = $223 ^ $205;
+  $225 = $158 + $111 | 0;
+  $226 = $225 + $224 | 0;
+  $227 = $226 << 9;
+  $228 = $226 >>> 23;
+  $229 = $227 | $228;
+  $230 = $229 + $183 | 0;
+  $231 = $180 << 10;
+  $232 = $180 >>> 22;
+  $233 = $231 | $232;
+  $234 = $222 ^ -1;
+  $235 = $193 | $234;
+  $236 = $219 ^ $235;
+  $237 = $149 + 1352829926 | 0;
+  $238 = $237 + $172 | 0;
+  $239 = $238 + $236 | 0;
+  $240 = $239 << 5;
+  $241 = $239 >>> 27;
+  $242 = $240 | $241;
+  $243 = $242 + $196 | 0;
+  $244 = $193 << 10;
+  $245 = $193 >>> 22;
+  $246 = $244 | $245;
+  $247 = $205 ^ $233;
+  $248 = $247 ^ $230;
+  $249 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+  $250 = $183 + $249 | 0;
+  $251 = $250 + $248 | 0;
+  $252 = $251 << 11;
+  $253 = $251 >>> 21;
+  $254 = $252 | $253;
+  $255 = $254 + $208 | 0;
+  $256 = $205 << 10;
+  $257 = $205 >>> 22;
+  $258 = $256 | $257;
+  $259 = $246 ^ -1;
+  $260 = $219 | $259;
+  $261 = $243 ^ $260;
+  $262 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+  $263 = $262 + 1352829926 | 0;
+  $264 = $263 + $196 | 0;
+  $265 = $264 + $261 | 0;
+  $266 = $265 << 7;
+  $267 = $265 >>> 25;
+  $268 = $266 | $267;
+  $269 = $268 + $222 | 0;
+  $270 = $219 << 10;
+  $271 = $219 >>> 22;
+  $272 = $270 | $271;
+  $273 = $230 ^ $258;
+  $274 = $273 ^ $255;
+  $275 = $208 + $162 | 0;
+  $276 = $275 + $274 | 0;
+  $277 = $276 << 13;
+  $278 = $276 >>> 19;
+  $279 = $277 | $278;
+  $280 = $279 + $233 | 0;
+  $281 = $230 << 10;
+  $282 = $230 >>> 22;
+  $283 = $281 | $282;
+  $284 = $272 ^ -1;
+  $285 = $243 | $284;
+  $286 = $269 ^ $285;
+  $287 = $199 + 1352829926 | 0;
+  $288 = $287 + $222 | 0;
+  $289 = $288 + $286 | 0;
+  $290 = $289 << 7;
+  $291 = $289 >>> 25;
+  $292 = $290 | $291;
+  $293 = $292 + $246 | 0;
+  $294 = $243 << 10;
+  $295 = $243 >>> 22;
+  $296 = $294 | $295;
+  $297 = $255 ^ $283;
+  $298 = $297 ^ $280;
+  $299 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+  $300 = $233 + $299 | 0;
+  $301 = $300 + $298 | 0;
+  $302 = $301 << 14;
+  $303 = $301 >>> 18;
+  $304 = $302 | $303;
+  $305 = $304 + $258 | 0;
+  $306 = $255 << 10;
+  $307 = $255 >>> 22;
+  $308 = $306 | $307;
+  $309 = $296 ^ -1;
+  $310 = $269 | $309;
+  $311 = $293 ^ $310;
+  $312 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+  $313 = $312 + 1352829926 | 0;
+  $314 = $313 + $246 | 0;
+  $315 = $314 + $311 | 0;
+  $316 = $315 << 8;
+  $317 = $315 >>> 24;
+  $318 = $316 | $317;
+  $319 = $318 + $272 | 0;
+  $320 = $269 << 10;
+  $321 = $269 >>> 22;
+  $322 = $320 | $321;
+  $323 = $280 ^ $308;
+  $324 = $323 ^ $305;
+  $325 = $258 + $212 | 0;
+  $326 = $325 + $324 | 0;
+  $327 = $326 << 15;
+  $328 = $326 >>> 17;
+  $329 = $327 | $328;
+  $330 = $329 + $283 | 0;
+  $331 = $280 << 10;
+  $332 = $280 >>> 22;
+  $333 = $331 | $332;
+  $334 = $322 ^ -1;
+  $335 = $293 | $334;
+  $336 = $319 ^ $335;
+  $337 = $249 + 1352829926 | 0;
+  $338 = $337 + $272 | 0;
+  $339 = $338 + $336 | 0;
+  $340 = $339 << 11;
+  $341 = $339 >>> 21;
+  $342 = $340 | $341;
+  $343 = $342 + $296 | 0;
+  $344 = $293 << 10;
+  $345 = $293 >>> 22;
+  $346 = $344 | $345;
+  $347 = $305 ^ $333;
+  $348 = $347 ^ $330;
+  $349 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+  $350 = $283 + $349 | 0;
+  $351 = $350 + $348 | 0;
+  $352 = $351 << 6;
+  $353 = $351 >>> 26;
+  $354 = $352 | $353;
+  $355 = $354 + $308 | 0;
+  $356 = $305 << 10;
+  $357 = $305 >>> 22;
+  $358 = $356 | $357;
+  $359 = $346 ^ -1;
+  $360 = $319 | $359;
+  $361 = $343 ^ $360;
+  $362 = $75 + 1352829926 | 0;
+  $363 = $362 + $296 | 0;
+  $364 = $363 + $361 | 0;
+  $365 = $364 << 14;
+  $366 = $364 >>> 18;
+  $367 = $365 | $366;
+  $368 = $367 + $322 | 0;
+  $369 = $319 << 10;
+  $370 = $319 >>> 22;
+  $371 = $369 | $370;
+  $372 = $330 ^ $358;
+  $373 = $372 ^ $355;
+  $374 = $308 + $262 | 0;
+  $375 = $374 + $373 | 0;
+  $376 = $375 << 7;
+  $377 = $375 >>> 25;
+  $378 = $376 | $377;
+  $379 = $378 + $333 | 0;
+  $380 = $330 << 10;
+  $381 = $330 >>> 22;
+  $382 = $380 | $381;
+  $383 = $371 ^ -1;
+  $384 = $343 | $383;
+  $385 = $368 ^ $384;
+  $386 = $299 + 1352829926 | 0;
+  $387 = $386 + $322 | 0;
+  $388 = $387 + $385 | 0;
+  $389 = $388 << 14;
+  $390 = $388 >>> 18;
+  $391 = $389 | $390;
+  $392 = $391 + $346 | 0;
+  $393 = $343 << 10;
+  $394 = $343 >>> 22;
+  $395 = $393 | $394;
+  $396 = $355 ^ $382;
+  $397 = $396 ^ $379;
+  $398 = $333 + $88 | 0;
+  $399 = $398 + $397 | 0;
+  $400 = $399 << 9;
+  $401 = $399 >>> 23;
+  $402 = $400 | $401;
+  $403 = $402 + $358 | 0;
+  $404 = $355 << 10;
+  $405 = $355 >>> 22;
+  $406 = $404 | $405;
+  $407 = $395 ^ -1;
+  $408 = $368 | $407;
+  $409 = $392 ^ $408;
+  $410 = $124 + 1352829926 | 0;
+  $411 = $410 + $346 | 0;
+  $412 = $411 + $409 | 0;
+  $413 = $412 << 12;
+  $414 = $412 >>> 20;
+  $415 = $413 | $414;
+  $416 = $415 + $371 | 0;
+  $417 = $368 << 10;
+  $418 = $368 >>> 22;
+  $419 = $417 | $418;
+  $420 = $379 ^ $406;
+  $421 = $420 ^ $403;
+  $422 = $358 + $312 | 0;
+  $423 = $422 + $421 | 0;
+  $424 = $423 << 8;
+  $425 = $423 >>> 24;
+  $426 = $424 | $425;
+  $427 = $426 + $382 | 0;
+  $428 = $379 << 10;
+  $429 = $379 >>> 22;
+  $430 = $428 | $429;
+  $431 = $419 ^ -1;
+  $432 = $392 | $431;
+  $433 = $416 ^ $432;
+  $434 = $349 + 1352829926 | 0;
+  $435 = $434 + $371 | 0;
+  $436 = $435 + $433 | 0;
+  $437 = $436 << 6;
+  $438 = $436 >>> 26;
+  $439 = $437 | $438;
+  $440 = $439 + $395 | 0;
+  $441 = $392 << 10;
+  $442 = $392 >>> 22;
+  $443 = $441 | $442;
+  $444 = $427 & $403;
+  $445 = $427 ^ -1;
+  $446 = $430 & $445;
+  $447 = $444 | $446;
+  $448 = $111 + 1518500249 | 0;
+  $449 = $448 + $382 | 0;
+  $450 = $449 + $447 | 0;
+  $451 = $450 << 7;
+  $452 = $450 >>> 25;
+  $453 = $451 | $452;
+  $454 = $453 + $406 | 0;
+  $455 = $403 << 10;
+  $456 = $403 >>> 22;
+  $457 = $455 | $456;
+  $458 = $440 & $443;
+  $459 = $443 ^ -1;
+  $460 = $416 & $459;
+  $461 = $458 | $460;
+  $462 = $199 + 1548603684 | 0;
+  $463 = $462 + $395 | 0;
+  $464 = $463 + $461 | 0;
+  $465 = $464 << 9;
+  $466 = $464 >>> 23;
+  $467 = $465 | $466;
+  $468 = $467 + $419 | 0;
+  $469 = $416 << 10;
+  $470 = $416 >>> 22;
+  $471 = $469 | $470;
+  $472 = $454 & $427;
+  $473 = $454 ^ -1;
+  $474 = $457 & $473;
+  $475 = $472 | $474;
+  $476 = $149 + 1518500249 | 0;
+  $477 = $476 + $406 | 0;
+  $478 = $477 + $475 | 0;
+  $479 = $478 << 6;
+  $480 = $478 >>> 26;
+  $481 = $479 | $480;
+  $482 = $481 + $430 | 0;
+  $483 = $427 << 10;
+  $484 = $427 >>> 22;
+  $485 = $483 | $484;
+  $486 = $468 & $471;
+  $487 = $471 ^ -1;
+  $488 = $440 & $487;
+  $489 = $486 | $488;
+  $490 = $212 + 1548603684 | 0;
+  $491 = $490 + $419 | 0;
+  $492 = $491 + $489 | 0;
+  $493 = $492 << 13;
+  $494 = $492 >>> 19;
+  $495 = $493 | $494;
+  $496 = $495 + $443 | 0;
+  $497 = $440 << 10;
+  $498 = $440 >>> 22;
+  $499 = $497 | $498;
+  $500 = $482 & $454;
+  $501 = $482 ^ -1;
+  $502 = $485 & $501;
+  $503 = $500 | $502;
+  $504 = $262 + 1518500249 | 0;
+  $505 = $504 + $430 | 0;
+  $506 = $505 + $503 | 0;
+  $507 = $506 << 8;
+  $508 = $506 >>> 24;
+  $509 = $507 | $508;
+  $510 = $509 + $457 | 0;
+  $511 = $454 << 10;
+  $512 = $454 >>> 22;
+  $513 = $511 | $512;
+  $514 = $496 & $499;
+  $515 = $499 ^ -1;
+  $516 = $468 & $515;
+  $517 = $514 | $516;
+  $518 = $124 + 1548603684 | 0;
+  $519 = $518 + $443 | 0;
+  $520 = $519 + $517 | 0;
+  $521 = $520 << 15;
+  $522 = $520 >>> 17;
+  $523 = $521 | $522;
+  $524 = $523 + $471 | 0;
+  $525 = $468 << 10;
+  $526 = $468 >>> 22;
+  $527 = $525 | $526;
+  $528 = $510 & $482;
+  $529 = $510 ^ -1;
+  $530 = $513 & $529;
+  $531 = $528 | $530;
+  $532 = $75 + 1518500249 | 0;
+  $533 = $532 + $457 | 0;
+  $534 = $533 + $531 | 0;
+  $535 = $534 << 13;
+  $536 = $534 >>> 19;
+  $537 = $535 | $536;
+  $538 = $537 + $485 | 0;
+  $539 = $482 << 10;
+  $540 = $482 >>> 22;
+  $541 = $539 | $540;
+  $542 = $524 & $527;
+  $543 = $527 ^ -1;
+  $544 = $496 & $543;
+  $545 = $542 | $544;
+  $546 = $111 + 1548603684 | 0;
+  $547 = $546 + $471 | 0;
+  $548 = $547 + $545 | 0;
+  $549 = $548 << 7;
+  $550 = $548 >>> 25;
+  $551 = $549 | $550;
+  $552 = $551 + $499 | 0;
+  $553 = $496 << 10;
+  $554 = $496 >>> 22;
+  $555 = $553 | $554;
+  $556 = $538 & $510;
+  $557 = $538 ^ -1;
+  $558 = $541 & $557;
+  $559 = $556 | $558;
+  $560 = $299 + 1518500249 | 0;
+  $561 = $560 + $485 | 0;
+  $562 = $561 + $559 | 0;
+  $563 = $562 << 11;
+  $564 = $562 >>> 21;
+  $565 = $563 | $564;
+  $566 = $565 + $513 | 0;
+  $567 = $510 << 10;
+  $568 = $510 >>> 22;
+  $569 = $567 | $568;
+  $570 = $552 & $555;
+  $571 = $555 ^ -1;
+  $572 = $524 & $571;
+  $573 = $570 | $572;
+  $574 = $52 + 1548603684 | 0;
+  $575 = $574 + $499 | 0;
+  $576 = $575 + $573 | 0;
+  $577 = $576 << 12;
+  $578 = $576 >>> 20;
+  $579 = $577 | $578;
+  $580 = $579 + $527 | 0;
+  $581 = $524 << 10;
+  $582 = $524 >>> 22;
+  $583 = $581 | $582;
+  $584 = $566 & $538;
+  $585 = $566 ^ -1;
+  $586 = $569 & $585;
+  $587 = $584 | $586;
+  $588 = $199 + 1518500249 | 0;
+  $589 = $588 + $513 | 0;
+  $590 = $589 + $587 | 0;
+  $591 = $590 << 9;
+  $592 = $590 >>> 23;
+  $593 = $591 | $592;
+  $594 = $593 + $541 | 0;
+  $595 = $538 << 10;
+  $596 = $538 >>> 22;
+  $597 = $595 | $596;
+  $598 = $580 & $583;
+  $599 = $583 ^ -1;
+  $600 = $552 & $599;
+  $601 = $598 | $600;
+  $602 = $262 + 1548603684 | 0;
+  $603 = $602 + $527 | 0;
+  $604 = $603 + $601 | 0;
+  $605 = $604 << 8;
+  $606 = $604 >>> 24;
+  $607 = $605 | $606;
+  $608 = $607 + $555 | 0;
+  $609 = $552 << 10;
+  $610 = $552 >>> 22;
+  $611 = $609 | $610;
+  $612 = $594 & $566;
+  $613 = $594 ^ -1;
+  $614 = $597 & $613;
+  $615 = $612 | $614;
+  $616 = $312 + 1518500249 | 0;
+  $617 = $616 + $541 | 0;
+  $618 = $617 + $615 | 0;
+  $619 = $618 << 7;
+  $620 = $618 >>> 25;
+  $621 = $619 | $620;
+  $622 = $621 + $569 | 0;
+  $623 = $566 << 10;
+  $624 = $566 >>> 22;
+  $625 = $623 | $624;
+  $626 = $608 & $611;
+  $627 = $611 ^ -1;
+  $628 = $580 & $627;
+  $629 = $626 | $628;
+  $630 = $65 + 1548603684 | 0;
+  $631 = $630 + $555 | 0;
+  $632 = $631 + $629 | 0;
+  $633 = $632 << 9;
+  $634 = $632 >>> 23;
+  $635 = $633 | $634;
+  $636 = $635 + $583 | 0;
+  $637 = $580 << 10;
+  $638 = $580 >>> 22;
+  $639 = $637 | $638;
+  $640 = $622 & $594;
+  $641 = $622 ^ -1;
+  $642 = $625 & $641;
+  $643 = $640 | $642;
+  $644 = $124 + 1518500249 | 0;
+  $645 = $644 + $569 | 0;
+  $646 = $645 + $643 | 0;
+  $647 = $646 << 15;
+  $648 = $646 >>> 17;
+  $649 = $647 | $648;
+  $650 = $649 + $597 | 0;
+  $651 = $594 << 10;
+  $652 = $594 >>> 22;
+  $653 = $651 | $652;
+  $654 = $636 & $639;
+  $655 = $639 ^ -1;
+  $656 = $608 & $655;
+  $657 = $654 | $656;
+  $658 = $299 + 1548603684 | 0;
+  $659 = $658 + $583 | 0;
+  $660 = $659 + $657 | 0;
+  $661 = $660 << 11;
+  $662 = $660 >>> 21;
+  $663 = $661 | $662;
+  $664 = $663 + $611 | 0;
+  $665 = $608 << 10;
+  $666 = $608 >>> 22;
+  $667 = $665 | $666;
+  $668 = $650 & $622;
+  $669 = $650 ^ -1;
+  $670 = $653 & $669;
+  $671 = $668 | $670;
+  $672 = $349 + 1518500249 | 0;
+  $673 = $672 + $597 | 0;
+  $674 = $673 + $671 | 0;
+  $675 = $674 << 7;
+  $676 = $674 >>> 25;
+  $677 = $675 | $676;
+  $678 = $677 + $625 | 0;
+  $679 = $622 << 10;
+  $680 = $622 >>> 22;
+  $681 = $679 | $680;
+  $682 = $664 & $667;
+  $683 = $667 ^ -1;
+  $684 = $636 & $683;
+  $685 = $682 | $684;
+  $686 = $88 + 1548603684 | 0;
+  $687 = $686 + $611 | 0;
+  $688 = $687 + $685 | 0;
+  $689 = $688 << 7;
+  $690 = $688 >>> 25;
+  $691 = $689 | $690;
+  $692 = $691 + $639 | 0;
+  $693 = $636 << 10;
+  $694 = $636 >>> 22;
+  $695 = $693 | $694;
+  $696 = $678 & $650;
+  $697 = $678 ^ -1;
+  $698 = $681 & $697;
+  $699 = $696 | $698;
+  $700 = $52 + 1518500249 | 0;
+  $701 = $700 + $625 | 0;
+  $702 = $701 + $699 | 0;
+  $703 = $702 << 12;
+  $704 = $702 >>> 20;
+  $705 = $703 | $704;
+  $706 = $705 + $653 | 0;
+  $707 = $650 << 10;
+  $708 = $650 >>> 22;
+  $709 = $707 | $708;
+  $710 = $692 & $695;
+  $711 = $695 ^ -1;
+  $712 = $664 & $711;
+  $713 = $710 | $712;
+  $714 = $312 + 1548603684 | 0;
+  $715 = $714 + $639 | 0;
+  $716 = $715 + $713 | 0;
+  $717 = $716 << 7;
+  $718 = $716 >>> 25;
+  $719 = $717 | $718;
+  $720 = $719 + $667 | 0;
+  $721 = $664 << 10;
+  $722 = $664 >>> 22;
+  $723 = $721 | $722;
+  $724 = $706 & $678;
+  $725 = $706 ^ -1;
+  $726 = $709 & $725;
+  $727 = $724 | $726;
+  $728 = $162 + 1518500249 | 0;
+  $729 = $728 + $653 | 0;
+  $730 = $729 + $727 | 0;
+  $731 = $730 << 15;
+  $732 = $730 >>> 17;
+  $733 = $731 | $732;
+  $734 = $733 + $681 | 0;
+  $735 = $678 << 10;
+  $736 = $678 >>> 22;
+  $737 = $735 | $736;
+  $738 = $720 & $723;
+  $739 = $723 ^ -1;
+  $740 = $692 & $739;
+  $741 = $738 | $740;
+  $742 = $249 + 1548603684 | 0;
+  $743 = $742 + $667 | 0;
+  $744 = $743 + $741 | 0;
+  $745 = $744 << 12;
+  $746 = $744 >>> 20;
+  $747 = $745 | $746;
+  $748 = $747 + $695 | 0;
+  $749 = $692 << 10;
+  $750 = $692 >>> 22;
+  $751 = $749 | $750;
+  $752 = $734 & $706;
+  $753 = $734 ^ -1;
+  $754 = $737 & $753;
+  $755 = $752 | $754;
+  $756 = $65 + 1518500249 | 0;
+  $757 = $756 + $681 | 0;
+  $758 = $757 + $755 | 0;
+  $759 = $758 << 9;
+  $760 = $758 >>> 23;
+  $761 = $759 | $760;
+  $762 = $761 + $709 | 0;
+  $763 = $706 << 10;
+  $764 = $706 >>> 22;
+  $765 = $763 | $764;
+  $766 = $748 & $751;
+  $767 = $751 ^ -1;
+  $768 = $720 & $767;
+  $769 = $766 | $768;
+  $770 = $349 + 1548603684 | 0;
+  $771 = $770 + $695 | 0;
+  $772 = $771 + $769 | 0;
+  $773 = $772 << 7;
+  $774 = $772 >>> 25;
+  $775 = $773 | $774;
+  $776 = $775 + $723 | 0;
+  $777 = $720 << 10;
+  $778 = $720 >>> 22;
+  $779 = $777 | $778;
+  $780 = $762 & $734;
+  $781 = $762 ^ -1;
+  $782 = $765 & $781;
+  $783 = $780 | $782;
+  $784 = $98 + 1518500249 | 0;
+  $785 = $784 + $709 | 0;
+  $786 = $785 + $783 | 0;
+  $787 = $786 << 11;
+  $788 = $786 >>> 21;
+  $789 = $787 | $788;
+  $790 = $789 + $737 | 0;
+  $791 = $734 << 10;
+  $792 = $734 >>> 22;
+  $793 = $791 | $792;
+  $794 = $776 & $779;
+  $795 = $779 ^ -1;
+  $796 = $748 & $795;
+  $797 = $794 | $796;
+  $798 = $149 + 1548603684 | 0;
+  $799 = $798 + $723 | 0;
+  $800 = $799 + $797 | 0;
+  $801 = $800 << 6;
+  $802 = $800 >>> 26;
+  $803 = $801 | $802;
+  $804 = $803 + $751 | 0;
+  $805 = $748 << 10;
+  $806 = $748 >>> 22;
+  $807 = $805 | $806;
+  $808 = $790 & $762;
+  $809 = $790 ^ -1;
+  $810 = $793 & $809;
+  $811 = $808 | $810;
+  $812 = $88 + 1518500249 | 0;
+  $813 = $812 + $737 | 0;
+  $814 = $813 + $811 | 0;
+  $815 = $814 << 7;
+  $816 = $814 >>> 25;
+  $817 = $815 | $816;
+  $818 = $817 + $765 | 0;
+  $819 = $762 << 10;
+  $820 = $762 >>> 22;
+  $821 = $819 | $820;
+  $822 = $804 & $807;
+  $823 = $807 ^ -1;
+  $824 = $776 & $823;
+  $825 = $822 | $824;
+  $826 = $162 + 1548603684 | 0;
+  $827 = $826 + $751 | 0;
+  $828 = $827 + $825 | 0;
+  $829 = $828 << 15;
+  $830 = $828 >>> 17;
+  $831 = $829 | $830;
+  $832 = $831 + $779 | 0;
+  $833 = $776 << 10;
+  $834 = $776 >>> 22;
+  $835 = $833 | $834;
+  $836 = $818 & $790;
+  $837 = $818 ^ -1;
+  $838 = $821 & $837;
+  $839 = $836 | $838;
+  $840 = $212 + 1518500249 | 0;
+  $841 = $840 + $765 | 0;
+  $842 = $841 + $839 | 0;
+  $843 = $842 << 13;
+  $844 = $842 >>> 19;
+  $845 = $843 | $844;
+  $846 = $845 + $793 | 0;
+  $847 = $790 << 10;
+  $848 = $790 >>> 22;
+  $849 = $847 | $848;
+  $850 = $832 & $835;
+  $851 = $835 ^ -1;
+  $852 = $804 & $851;
+  $853 = $850 | $852;
+  $854 = $75 + 1548603684 | 0;
+  $855 = $854 + $779 | 0;
+  $856 = $855 + $853 | 0;
+  $857 = $856 << 13;
+  $858 = $856 >>> 19;
+  $859 = $857 | $858;
+  $860 = $859 + $807 | 0;
+  $861 = $804 << 10;
+  $862 = $804 >>> 22;
+  $863 = $861 | $862;
+  $864 = $846 & $818;
+  $865 = $846 ^ -1;
+  $866 = $849 & $865;
+  $867 = $864 | $866;
+  $868 = $249 + 1518500249 | 0;
+  $869 = $868 + $793 | 0;
+  $870 = $869 + $867 | 0;
+  $871 = $870 << 12;
+  $872 = $870 >>> 20;
+  $873 = $871 | $872;
+  $874 = $873 + $821 | 0;
+  $875 = $818 << 10;
+  $876 = $818 >>> 22;
+  $877 = $875 | $876;
+  $878 = $860 & $863;
+  $879 = $863 ^ -1;
+  $880 = $832 & $879;
+  $881 = $878 | $880;
+  $882 = $98 + 1548603684 | 0;
+  $883 = $882 + $807 | 0;
+  $884 = $883 + $881 | 0;
+  $885 = $884 << 11;
+  $886 = $884 >>> 21;
+  $887 = $885 | $886;
+  $888 = $887 + $835 | 0;
+  $889 = $832 << 10;
+  $890 = $832 >>> 22;
+  $891 = $889 | $890;
+  $892 = $874 | $865;
+  $893 = $892 ^ $877;
+  $894 = $124 + 1859775393 | 0;
+  $895 = $894 + $821 | 0;
+  $896 = $895 + $893 | 0;
+  $897 = $896 << 11;
+  $898 = $896 >>> 21;
+  $899 = $897 | $898;
+  $900 = $899 + $849 | 0;
+  $901 = $846 << 10;
+  $902 = $846 >>> 22;
+  $903 = $901 | $902;
+  $904 = $860 ^ -1;
+  $905 = $888 | $904;
+  $906 = $905 ^ $891;
+  $907 = $312 + 1836072691 | 0;
+  $908 = $907 + $835 | 0;
+  $909 = $908 + $906 | 0;
+  $910 = $909 << 9;
+  $911 = $909 >>> 23;
+  $912 = $910 | $911;
+  $913 = $912 + $863 | 0;
+  $914 = $860 << 10;
+  $915 = $860 >>> 22;
+  $916 = $914 | $915;
+  $917 = $874 ^ -1;
+  $918 = $900 | $917;
+  $919 = $918 ^ $903;
+  $920 = $299 + 1859775393 | 0;
+  $921 = $920 + $849 | 0;
+  $922 = $921 + $919 | 0;
+  $923 = $922 << 13;
+  $924 = $922 >>> 19;
+  $925 = $923 | $924;
+  $926 = $925 + $877 | 0;
+  $927 = $874 << 10;
+  $928 = $874 >>> 22;
+  $929 = $927 | $928;
+  $930 = $888 ^ -1;
+  $931 = $913 | $930;
+  $932 = $931 ^ $916;
+  $933 = $65 + 1836072691 | 0;
+  $934 = $933 + $863 | 0;
+  $935 = $934 + $932 | 0;
+  $936 = $935 << 7;
+  $937 = $935 >>> 25;
+  $938 = $936 | $937;
+  $939 = $938 + $891 | 0;
+  $940 = $888 << 10;
+  $941 = $888 >>> 22;
+  $942 = $940 | $941;
+  $943 = $900 ^ -1;
+  $944 = $926 | $943;
+  $945 = $944 ^ $929;
+  $946 = $88 + 1859775393 | 0;
+  $947 = $946 + $877 | 0;
+  $948 = $947 + $945 | 0;
+  $949 = $948 << 6;
+  $950 = $948 >>> 26;
+  $951 = $949 | $950;
+  $952 = $951 + $903 | 0;
+  $953 = $900 << 10;
+  $954 = $900 >>> 22;
+  $955 = $953 | $954;
+  $956 = $913 ^ -1;
+  $957 = $939 | $956;
+  $958 = $957 ^ $942;
+  $959 = $75 + 1836072691 | 0;
+  $960 = $959 + $891 | 0;
+  $961 = $960 + $958 | 0;
+  $962 = $961 << 15;
+  $963 = $961 >>> 17;
+  $964 = $962 | $963;
+  $965 = $964 + $916 | 0;
+  $966 = $913 << 10;
+  $967 = $913 >>> 22;
+  $968 = $966 | $967;
+  $969 = $926 ^ -1;
+  $970 = $952 | $969;
+  $971 = $970 ^ $955;
+  $972 = $149 + 1859775393 | 0;
+  $973 = $972 + $903 | 0;
+  $974 = $973 + $971 | 0;
+  $975 = $974 << 7;
+  $976 = $974 >>> 25;
+  $977 = $975 | $976;
+  $978 = $977 + $929 | 0;
+  $979 = $926 << 10;
+  $980 = $926 >>> 22;
+  $981 = $979 | $980;
+  $982 = $939 ^ -1;
+  $983 = $965 | $982;
+  $984 = $983 ^ $968;
+  $985 = $124 + 1836072691 | 0;
+  $986 = $985 + $916 | 0;
+  $987 = $986 + $984 | 0;
+  $988 = $987 << 11;
+  $989 = $987 >>> 21;
+  $990 = $988 | $989;
+  $991 = $990 + $942 | 0;
+  $992 = $939 << 10;
+  $993 = $939 >>> 22;
+  $994 = $992 | $993;
+  $995 = $952 ^ -1;
+  $996 = $978 | $995;
+  $997 = $996 ^ $981;
+  $998 = $162 + 1859775393 | 0;
+  $999 = $998 + $929 | 0;
+  $1000 = $999 + $997 | 0;
+  $1001 = $1000 << 14;
+  $1002 = $1000 >>> 18;
+  $1003 = $1001 | $1002;
+  $1004 = $1003 + $955 | 0;
+  $1005 = $952 << 10;
+  $1006 = $952 >>> 22;
+  $1007 = $1005 | $1006;
+  $1008 = $965 ^ -1;
+  $1009 = $991 | $1008;
+  $1010 = $1009 ^ $994;
+  $1011 = $111 + 1836072691 | 0;
+  $1012 = $1011 + $942 | 0;
+  $1013 = $1012 + $1010 | 0;
+  $1014 = $1013 << 8;
+  $1015 = $1013 >>> 24;
+  $1016 = $1014 | $1015;
+  $1017 = $1016 + $968 | 0;
+  $1018 = $965 << 10;
+  $1019 = $965 >>> 22;
+  $1020 = $1018 | $1019;
+  $1021 = $978 ^ -1;
+  $1022 = $1004 | $1021;
+  $1023 = $1022 ^ $1007;
+  $1024 = $312 + 1859775393 | 0;
+  $1025 = $1024 + $955 | 0;
+  $1026 = $1025 + $1023 | 0;
+  $1027 = $1026 << 9;
+  $1028 = $1026 >>> 23;
+  $1029 = $1027 | $1028;
+  $1030 = $1029 + $981 | 0;
+  $1031 = $978 << 10;
+  $1032 = $978 >>> 22;
+  $1033 = $1031 | $1032;
+  $1034 = $991 ^ -1;
+  $1035 = $1017 | $1034;
+  $1036 = $1035 ^ $1020;
+  $1037 = $88 + 1836072691 | 0;
+  $1038 = $1037 + $968 | 0;
+  $1039 = $1038 + $1036 | 0;
+  $1040 = $1039 << 6;
+  $1041 = $1039 >>> 26;
+  $1042 = $1040 | $1041;
+  $1043 = $1042 + $994 | 0;
+  $1044 = $991 << 10;
+  $1045 = $991 >>> 22;
+  $1046 = $1044 | $1045;
+  $1047 = $1004 ^ -1;
+  $1048 = $1030 | $1047;
+  $1049 = $1048 ^ $1033;
+  $1050 = $249 + 1859775393 | 0;
+  $1051 = $1050 + $981 | 0;
+  $1052 = $1051 + $1049 | 0;
+  $1053 = $1052 << 13;
+  $1054 = $1052 >>> 19;
+  $1055 = $1053 | $1054;
+  $1056 = $1055 + $1007 | 0;
+  $1057 = $1004 << 10;
+  $1058 = $1004 >>> 22;
+  $1059 = $1057 | $1058;
+  $1060 = $1017 ^ -1;
+  $1061 = $1043 | $1060;
+  $1062 = $1061 ^ $1046;
+  $1063 = $199 + 1836072691 | 0;
+  $1064 = $1063 + $994 | 0;
+  $1065 = $1064 + $1062 | 0;
+  $1066 = $1065 << 6;
+  $1067 = $1065 >>> 26;
+  $1068 = $1066 | $1067;
+  $1069 = $1068 + $1020 | 0;
+  $1070 = $1017 << 10;
+  $1071 = $1017 >>> 22;
+  $1072 = $1070 | $1071;
+  $1073 = $1030 ^ -1;
+  $1074 = $1056 | $1073;
+  $1075 = $1074 ^ $1059;
+  $1076 = $75 + 1859775393 | 0;
+  $1077 = $1076 + $1007 | 0;
+  $1078 = $1077 + $1075 | 0;
+  $1079 = $1078 << 15;
+  $1080 = $1078 >>> 17;
+  $1081 = $1079 | $1080;
+  $1082 = $1081 + $1033 | 0;
+  $1083 = $1030 << 10;
+  $1084 = $1030 >>> 22;
+  $1085 = $1083 | $1084;
+  $1086 = $1043 ^ -1;
+  $1087 = $1069 | $1086;
+  $1088 = $1087 ^ $1072;
+  $1089 = $162 + 1836072691 | 0;
+  $1090 = $1089 + $1020 | 0;
+  $1091 = $1090 + $1088 | 0;
+  $1092 = $1091 << 14;
+  $1093 = $1091 >>> 18;
+  $1094 = $1092 | $1093;
+  $1095 = $1094 + $1046 | 0;
+  $1096 = $1043 << 10;
+  $1097 = $1043 >>> 22;
+  $1098 = $1096 | $1097;
+  $1099 = $1056 ^ -1;
+  $1100 = $1082 | $1099;
+  $1101 = $1100 ^ $1085;
+  $1102 = $98 + 1859775393 | 0;
+  $1103 = $1102 + $1033 | 0;
+  $1104 = $1103 + $1101 | 0;
+  $1105 = $1104 << 14;
+  $1106 = $1104 >>> 18;
+  $1107 = $1105 | $1106;
+  $1108 = $1107 + $1059 | 0;
+  $1109 = $1056 << 10;
+  $1110 = $1056 >>> 22;
+  $1111 = $1109 | $1110;
+  $1112 = $1069 ^ -1;
+  $1113 = $1095 | $1112;
+  $1114 = $1113 ^ $1098;
+  $1115 = $212 + 1836072691 | 0;
+  $1116 = $1115 + $1046 | 0;
+  $1117 = $1116 + $1114 | 0;
+  $1118 = $1117 << 12;
+  $1119 = $1117 >>> 20;
+  $1120 = $1118 | $1119;
+  $1121 = $1120 + $1072 | 0;
+  $1122 = $1069 << 10;
+  $1123 = $1069 >>> 22;
+  $1124 = $1122 | $1123;
+  $1125 = $1082 ^ -1;
+  $1126 = $1108 | $1125;
+  $1127 = $1126 ^ $1111;
+  $1128 = $111 + 1859775393 | 0;
+  $1129 = $1128 + $1059 | 0;
+  $1130 = $1129 + $1127 | 0;
+  $1131 = $1130 << 8;
+  $1132 = $1130 >>> 24;
+  $1133 = $1131 | $1132;
+  $1134 = $1133 + $1085 | 0;
+  $1135 = $1082 << 10;
+  $1136 = $1082 >>> 22;
+  $1137 = $1135 | $1136;
+  $1138 = $1095 ^ -1;
+  $1139 = $1121 | $1138;
+  $1140 = $1139 ^ $1124;
+  $1141 = $249 + 1836072691 | 0;
+  $1142 = $1141 + $1072 | 0;
+  $1143 = $1142 + $1140 | 0;
+  $1144 = $1143 << 13;
+  $1145 = $1143 >>> 19;
+  $1146 = $1144 | $1145;
+  $1147 = $1146 + $1098 | 0;
+  $1148 = $1095 << 10;
+  $1149 = $1095 >>> 22;
+  $1150 = $1148 | $1149;
+  $1151 = $1108 ^ -1;
+  $1152 = $1134 | $1151;
+  $1153 = $1152 ^ $1137;
+  $1154 = $52 + 1859775393 | 0;
+  $1155 = $1154 + $1085 | 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 = $1121 ^ -1;
+  $1165 = $1147 | $1164;
+  $1166 = $1165 ^ $1150;
+  $1167 = $349 + 1836072691 | 0;
+  $1168 = $1167 + $1098 | 0;
+  $1169 = $1168 + $1166 | 0;
+  $1170 = $1169 << 5;
+  $1171 = $1169 >>> 27;
+  $1172 = $1170 | $1171;
+  $1173 = $1172 + $1124 | 0;
+  $1174 = $1121 << 10;
+  $1175 = $1121 >>> 22;
+  $1176 = $1174 | $1175;
+  $1177 = $1134 ^ -1;
+  $1178 = $1160 | $1177;
+  $1179 = $1178 ^ $1163;
+  $1180 = $199 + 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 = $98 + 1836072691 | 0;
+  $1194 = $1193 + $1124 | 0;
+  $1195 = $1194 + $1192 | 0;
+  $1196 = $1195 << 14;
+  $1197 = $1195 >>> 18;
+  $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 = $262 + 1859775393 | 0;
+  $1207 = $1206 + $1137 | 0;
+  $1208 = $1207 + $1205 | 0;
+  $1209 = $1208 << 5;
+  $1210 = $1208 >>> 27;
+  $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 = $299 + 1836072691 | 0;
+  $1220 = $1219 + $1150 | 0;
+  $1221 = $1220 + $1218 | 0;
+  $1222 = $1221 << 13;
+  $1223 = $1221 >>> 19;
+  $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 = $212 + 1859775393 | 0;
+  $1233 = $1232 + $1163 | 0;
+  $1234 = $1233 + $1231 | 0;
+  $1235 = $1234 << 12;
+  $1236 = $1234 >>> 20;
+  $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 = $52 + 1836072691 | 0;
+  $1246 = $1245 + $1176 | 0;
+  $1247 = $1246 + $1244 | 0;
+  $1248 = $1247 << 13;
+  $1249 = $1247 >>> 19;
+  $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 = $65 + 1859775393 | 0;
+  $1259 = $1258 + $1189 | 0;
+  $1260 = $1259 + $1257 | 0;
+  $1261 = $1260 << 7;
+  $1262 = $1260 >>> 25;
+  $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 = $149 + 1836072691 | 0;
+  $1272 = $1271 + $1202 | 0;
+  $1273 = $1272 + $1270 | 0;
+  $1274 = $1273 << 7;
+  $1275 = $1273 >>> 25;
+  $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 = $349 + 1859775393 | 0;
+  $1285 = $1284 + $1215 | 0;
+  $1286 = $1285 + $1283 | 0;
+  $1287 = $1286 << 5;
+  $1288 = $1286 >>> 27;
+  $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 = $262 + 1836072691 | 0;
+  $1298 = $1297 + $1228 | 0;
+  $1299 = $1298 + $1296 | 0;
+  $1300 = $1299 << 5;
+  $1301 = $1299 >>> 27;
+  $1302 = $1300 | $1301;
+  $1303 = $1302 + $1254 | 0;
+  $1304 = $1251 << 10;
+  $1305 = $1251 >>> 22;
+  $1306 = $1304 | $1305;
+  $1307 = $1290 & $1293;
+  $1308 = $1293 ^ -1;
+  $1309 = $1264 & $1308;
+  $1310 = $1307 | $1309;
+  $1311 = $75 + -1894007588 | 0;
+  $1312 = $1311 + $1241 | 0;
+  $1313 = $1312 + $1310 | 0;
+  $1314 = $1313 << 11;
+  $1315 = $1313 >>> 21;
+  $1316 = $1314 | $1315;
+  $1317 = $1316 + $1267 | 0;
+  $1318 = $1264 << 10;
+  $1319 = $1264 >>> 22;
+  $1320 = $1318 | $1319;
+  $1321 = $1303 & $1277;
+  $1322 = $1303 ^ -1;
+  $1323 = $1306 & $1322;
+  $1324 = $1321 | $1323;
+  $1325 = $249 + 2053994217 | 0;
+  $1326 = $1325 + $1254 | 0;
+  $1327 = $1326 + $1324 | 0;
+  $1328 = $1327 << 15;
+  $1329 = $1327 >>> 17;
+  $1330 = $1328 | $1329;
+  $1331 = $1330 + $1280 | 0;
+  $1332 = $1277 << 10;
+  $1333 = $1277 >>> 22;
+  $1334 = $1332 | $1333;
+  $1335 = $1317 & $1320;
+  $1336 = $1320 ^ -1;
+  $1337 = $1290 & $1336;
+  $1338 = $1335 | $1337;
+  $1339 = $162 + -1894007588 | 0;
+  $1340 = $1339 + $1267 | 0;
+  $1341 = $1340 + $1338 | 0;
+  $1342 = $1341 << 12;
+  $1343 = $1341 >>> 20;
+  $1344 = $1342 | $1343;
+  $1345 = $1344 + $1293 | 0;
+  $1346 = $1290 << 10;
+  $1347 = $1290 >>> 22;
+  $1348 = $1346 | $1347;
+  $1349 = $1331 & $1303;
+  $1350 = $1331 ^ -1;
+  $1351 = $1334 & $1350;
+  $1352 = $1349 | $1351;
+  $1353 = $199 + 2053994217 | 0;
+  $1354 = $1353 + $1280 | 0;
+  $1355 = $1354 + $1352 | 0;
+  $1356 = $1355 << 5;
+  $1357 = $1355 >>> 27;
+  $1358 = $1356 | $1357;
+  $1359 = $1358 + $1306 | 0;
+  $1360 = $1303 << 10;
+  $1361 = $1303 >>> 22;
+  $1362 = $1360 | $1361;
+  $1363 = $1345 & $1348;
+  $1364 = $1348 ^ -1;
+  $1365 = $1317 & $1364;
+  $1366 = $1363 | $1365;
+  $1367 = $212 + -1894007588 | 0;
+  $1368 = $1367 + $1293 | 0;
+  $1369 = $1368 + $1366 | 0;
+  $1370 = $1369 << 14;
+  $1371 = $1369 >>> 18;
+  $1372 = $1370 | $1371;
+  $1373 = $1372 + $1320 | 0;
+  $1374 = $1317 << 10;
+  $1375 = $1317 >>> 22;
+  $1376 = $1374 | $1375;
+  $1377 = $1359 & $1331;
+  $1378 = $1359 ^ -1;
+  $1379 = $1362 & $1378;
+  $1380 = $1377 | $1379;
+  $1381 = $149 + 2053994217 | 0;
+  $1382 = $1381 + $1306 | 0;
+  $1383 = $1382 + $1380 | 0;
+  $1384 = $1383 << 8;
+  $1385 = $1383 >>> 24;
+  $1386 = $1384 | $1385;
+  $1387 = $1386 + $1334 | 0;
+  $1388 = $1331 << 10;
+  $1389 = $1331 >>> 22;
+  $1390 = $1388 | $1389;
+  $1391 = $1373 & $1376;
+  $1392 = $1376 ^ -1;
+  $1393 = $1345 & $1392;
+  $1394 = $1391 | $1393;
+  $1395 = $299 + -1894007588 | 0;
+  $1396 = $1395 + $1320 | 0;
+  $1397 = $1396 + $1394 | 0;
+  $1398 = $1397 << 15;
+  $1399 = $1397 >>> 17;
+  $1400 = $1398 | $1399;
+  $1401 = $1400 + $1348 | 0;
+  $1402 = $1345 << 10;
+  $1403 = $1345 >>> 22;
+  $1404 = $1402 | $1403;
+  $1405 = $1387 & $1359;
+  $1406 = $1387 ^ -1;
+  $1407 = $1390 & $1406;
+  $1408 = $1405 | $1407;
+  $1409 = $75 + 2053994217 | 0;
+  $1410 = $1409 + $1334 | 0;
+  $1411 = $1410 + $1408 | 0;
+  $1412 = $1411 << 11;
+  $1413 = $1411 >>> 21;
+  $1414 = $1412 | $1413;
+  $1415 = $1414 + $1362 | 0;
+  $1416 = $1359 << 10;
+  $1417 = $1359 >>> 22;
+  $1418 = $1416 | $1417;
+  $1419 = $1401 & $1404;
+  $1420 = $1404 ^ -1;
+  $1421 = $1373 & $1420;
+  $1422 = $1419 | $1421;
+  $1423 = $52 + -1894007588 | 0;
+  $1424 = $1423 + $1348 | 0;
+  $1425 = $1424 + $1422 | 0;
+  $1426 = $1425 << 14;
+  $1427 = $1425 >>> 18;
+  $1428 = $1426 | $1427;
+  $1429 = $1428 + $1376 | 0;
+  $1430 = $1373 << 10;
+  $1431 = $1373 >>> 22;
+  $1432 = $1430 | $1431;
+  $1433 = $1415 & $1387;
+  $1434 = $1415 ^ -1;
+  $1435 = $1418 & $1434;
+  $1436 = $1433 | $1435;
+  $1437 = $124 + 2053994217 | 0;
+  $1438 = $1437 + $1362 | 0;
+  $1439 = $1438 + $1436 | 0;
+  $1440 = $1439 << 14;
+  $1441 = $1439 >>> 18;
+  $1442 = $1440 | $1441;
+  $1443 = $1442 + $1390 | 0;
+  $1444 = $1387 << 10;
+  $1445 = $1387 >>> 22;
+  $1446 = $1444 | $1445;
+  $1447 = $1429 & $1432;
+  $1448 = $1432 ^ -1;
+  $1449 = $1401 & $1448;
+  $1450 = $1447 | $1449;
+  $1451 = $249 + -1894007588 | 0;
+  $1452 = $1451 + $1376 | 0;
+  $1453 = $1452 + $1450 | 0;
+  $1454 = $1453 << 15;
+  $1455 = $1453 >>> 17;
+  $1456 = $1454 | $1455;
+  $1457 = $1456 + $1404 | 0;
+  $1458 = $1401 << 10;
+  $1459 = $1401 >>> 22;
+  $1460 = $1458 | $1459;
+  $1461 = $1443 & $1415;
+  $1462 = $1443 ^ -1;
+  $1463 = $1446 & $1462;
+  $1464 = $1461 | $1463;
+  $1465 = $212 + 2053994217 | 0;
+  $1466 = $1465 + $1390 | 0;
+  $1467 = $1466 + $1464 | 0;
+  $1468 = $1467 << 14;
+  $1469 = $1467 >>> 18;
+  $1470 = $1468 | $1469;
+  $1471 = $1470 + $1418 | 0;
+  $1472 = $1415 << 10;
+  $1473 = $1415 >>> 22;
+  $1474 = $1472 | $1473;
+  $1475 = $1457 & $1460;
+  $1476 = $1460 ^ -1;
+  $1477 = $1429 & $1476;
+  $1478 = $1475 | $1477;
+  $1479 = $349 + -1894007588 | 0;
+  $1480 = $1479 + $1404 | 0;
+  $1481 = $1480 + $1478 | 0;
+  $1482 = $1481 << 9;
+  $1483 = $1481 >>> 23;
+  $1484 = $1482 | $1483;
+  $1485 = $1484 + $1432 | 0;
+  $1486 = $1429 << 10;
+  $1487 = $1429 >>> 22;
+  $1488 = $1486 | $1487;
+  $1489 = $1471 & $1443;
+  $1490 = $1471 ^ -1;
+  $1491 = $1474 & $1490;
+  $1492 = $1489 | $1491;
+  $1493 = $312 + 2053994217 | 0;
+  $1494 = $1493 + $1418 | 0;
+  $1495 = $1494 + $1492 | 0;
+  $1496 = $1495 << 6;
+  $1497 = $1495 >>> 26;
+  $1498 = $1496 | $1497;
+  $1499 = $1498 + $1446 | 0;
+  $1500 = $1443 << 10;
+  $1501 = $1443 >>> 22;
+  $1502 = $1500 | $1501;
+  $1503 = $1485 & $1488;
+  $1504 = $1488 ^ -1;
+  $1505 = $1457 & $1504;
+  $1506 = $1503 | $1505;
+  $1507 = $149 + -1894007588 | 0;
+  $1508 = $1507 + $1432 | 0;
+  $1509 = $1508 + $1506 | 0;
+  $1510 = $1509 << 8;
+  $1511 = $1509 >>> 24;
+  $1512 = $1510 | $1511;
+  $1513 = $1512 + $1460 | 0;
+  $1514 = $1457 << 10;
+  $1515 = $1457 >>> 22;
+  $1516 = $1514 | $1515;
+  $1517 = $1499 & $1471;
+  $1518 = $1499 ^ -1;
+  $1519 = $1502 & $1518;
+  $1520 = $1517 | $1519;
+  $1521 = $52 + 2053994217 | 0;
+  $1522 = $1521 + $1446 | 0;
+  $1523 = $1522 + $1520 | 0;
+  $1524 = $1523 << 14;
+  $1525 = $1523 >>> 18;
+  $1526 = $1524 | $1525;
+  $1527 = $1526 + $1474 | 0;
+  $1528 = $1471 << 10;
+  $1529 = $1471 >>> 22;
+  $1530 = $1528 | $1529;
+  $1531 = $1513 & $1516;
+  $1532 = $1516 ^ -1;
+  $1533 = $1485 & $1532;
+  $1534 = $1531 | $1533;
+  $1535 = $262 + -1894007588 | 0;
+  $1536 = $1535 + $1460 | 0;
+  $1537 = $1536 + $1534 | 0;
+  $1538 = $1537 << 9;
+  $1539 = $1537 >>> 23;
+  $1540 = $1538 | $1539;
+  $1541 = $1540 + $1488 | 0;
+  $1542 = $1485 << 10;
+  $1543 = $1485 >>> 22;
+  $1544 = $1542 | $1543;
+  $1545 = $1527 & $1499;
+  $1546 = $1527 ^ -1;
+  $1547 = $1530 & $1546;
+  $1548 = $1545 | $1547;
+  $1549 = $65 + 2053994217 | 0;
+  $1550 = $1549 + $1474 | 0;
+  $1551 = $1550 + $1548 | 0;
+  $1552 = $1551 << 6;
+  $1553 = $1551 >>> 26;
+  $1554 = $1552 | $1553;
+  $1555 = $1554 + $1502 | 0;
+  $1556 = $1499 << 10;
+  $1557 = $1499 >>> 22;
+  $1558 = $1556 | $1557;
+  $1559 = $1541 & $1544;
+  $1560 = $1544 ^ -1;
+  $1561 = $1513 & $1560;
+  $1562 = $1559 | $1561;
+  $1563 = $124 + -1894007588 | 0;
+  $1564 = $1563 + $1488 | 0;
+  $1565 = $1564 + $1562 | 0;
+  $1566 = $1565 << 14;
+  $1567 = $1565 >>> 18;
+  $1568 = $1566 | $1567;
+  $1569 = $1568 + $1516 | 0;
+  $1570 = $1513 << 10;
+  $1571 = $1513 >>> 22;
+  $1572 = $1570 | $1571;
+  $1573 = $1555 & $1527;
+  $1574 = $1555 ^ -1;
+  $1575 = $1558 & $1574;
+  $1576 = $1573 | $1575;
+  $1577 = $349 + 2053994217 | 0;
+  $1578 = $1577 + $1502 | 0;
+  $1579 = $1578 + $1576 | 0;
+  $1580 = $1579 << 9;
+  $1581 = $1579 >>> 23;
+  $1582 = $1580 | $1581;
+  $1583 = $1582 + $1530 | 0;
+  $1584 = $1527 << 10;
+  $1585 = $1527 >>> 22;
+  $1586 = $1584 | $1585;
+  $1587 = $1569 & $1572;
+  $1588 = $1572 ^ -1;
+  $1589 = $1541 & $1588;
+  $1590 = $1587 | $1589;
+  $1591 = $111 + -1894007588 | 0;
+  $1592 = $1591 + $1516 | 0;
+  $1593 = $1592 + $1590 | 0;
+  $1594 = $1593 << 5;
+  $1595 = $1593 >>> 27;
+  $1596 = $1594 | $1595;
+  $1597 = $1596 + $1544 | 0;
+  $1598 = $1541 << 10;
+  $1599 = $1541 >>> 22;
+  $1600 = $1598 | $1599;
+  $1601 = $1583 & $1555;
+  $1602 = $1583 ^ -1;
+  $1603 = $1586 & $1602;
+  $1604 = $1601 | $1603;
+  $1605 = $98 + 2053994217 | 0;
+  $1606 = $1605 + $1530 | 0;
+  $1607 = $1606 + $1604 | 0;
+  $1608 = $1607 << 12;
+  $1609 = $1607 >>> 20;
+  $1610 = $1608 | $1609;
+  $1611 = $1610 + $1558 | 0;
+  $1612 = $1555 << 10;
+  $1613 = $1555 >>> 22;
+  $1614 = $1612 | $1613;
+  $1615 = $1597 & $1600;
+  $1616 = $1600 ^ -1;
+  $1617 = $1569 & $1616;
+  $1618 = $1615 | $1617;
+  $1619 = $312 + -1894007588 | 0;
+  $1620 = $1619 + $1544 | 0;
+  $1621 = $1620 + $1618 | 0;
+  $1622 = $1621 << 6;
+  $1623 = $1621 >>> 26;
+  $1624 = $1622 | $1623;
+  $1625 = $1624 + $1572 | 0;
+  $1626 = $1569 << 10;
+  $1627 = $1569 >>> 22;
+  $1628 = $1626 | $1627;
+  $1629 = $1611 & $1583;
+  $1630 = $1611 ^ -1;
+  $1631 = $1614 & $1630;
+  $1632 = $1629 | $1631;
+  $1633 = $262 + 2053994217 | 0;
+  $1634 = $1633 + $1558 | 0;
+  $1635 = $1634 + $1632 | 0;
+  $1636 = $1635 << 9;
+  $1637 = $1635 >>> 23;
+  $1638 = $1636 | $1637;
+  $1639 = $1638 + $1586 | 0;
+  $1640 = $1583 << 10;
+  $1641 = $1583 >>> 22;
+  $1642 = $1640 | $1641;
+  $1643 = $1625 & $1628;
+  $1644 = $1628 ^ -1;
+  $1645 = $1597 & $1644;
+  $1646 = $1643 | $1645;
+  $1647 = $88 + -1894007588 | 0;
+  $1648 = $1647 + $1572 | 0;
+  $1649 = $1648 + $1646 | 0;
+  $1650 = $1649 << 8;
+  $1651 = $1649 >>> 24;
+  $1652 = $1650 | $1651;
+  $1653 = $1652 + $1600 | 0;
+  $1654 = $1597 << 10;
+  $1655 = $1597 >>> 22;
+  $1656 = $1654 | $1655;
+  $1657 = $1639 & $1611;
+  $1658 = $1639 ^ -1;
+  $1659 = $1642 & $1658;
+  $1660 = $1657 | $1659;
+  $1661 = $162 + 2053994217 | 0;
+  $1662 = $1661 + $1586 | 0;
+  $1663 = $1662 + $1660 | 0;
+  $1664 = $1663 << 12;
+  $1665 = $1663 >>> 20;
+  $1666 = $1664 | $1665;
+  $1667 = $1666 + $1614 | 0;
+  $1668 = $1611 << 10;
+  $1669 = $1611 >>> 22;
+  $1670 = $1668 | $1669;
+  $1671 = $1653 & $1656;
+  $1672 = $1656 ^ -1;
+  $1673 = $1625 & $1672;
+  $1674 = $1671 | $1673;
+  $1675 = $65 + -1894007588 | 0;
+  $1676 = $1675 + $1600 | 0;
+  $1677 = $1676 + $1674 | 0;
+  $1678 = $1677 << 6;
+  $1679 = $1677 >>> 26;
+  $1680 = $1678 | $1679;
+  $1681 = $1680 + $1628 | 0;
+  $1682 = $1625 << 10;
+  $1683 = $1625 >>> 22;
+  $1684 = $1682 | $1683;
+  $1685 = $1667 & $1639;
+  $1686 = $1667 ^ -1;
+  $1687 = $1670 & $1686;
+  $1688 = $1685 | $1687;
+  $1689 = $111 + 2053994217 | 0;
+  $1690 = $1689 + $1614 | 0;
+  $1691 = $1690 + $1688 | 0;
+  $1692 = $1691 << 5;
+  $1693 = $1691 >>> 27;
+  $1694 = $1692 | $1693;
+  $1695 = $1694 + $1642 | 0;
+  $1696 = $1639 << 10;
+  $1697 = $1639 >>> 22;
+  $1698 = $1696 | $1697;
+  $1699 = $1681 & $1684;
+  $1700 = $1684 ^ -1;
+  $1701 = $1653 & $1700;
+  $1702 = $1699 | $1701;
+  $1703 = $199 + -1894007588 | 0;
+  $1704 = $1703 + $1628 | 0;
+  $1705 = $1704 + $1702 | 0;
+  $1706 = $1705 << 5;
+  $1707 = $1705 >>> 27;
+  $1708 = $1706 | $1707;
+  $1709 = $1708 + $1656 | 0;
+  $1710 = $1653 << 10;
+  $1711 = $1653 >>> 22;
+  $1712 = $1710 | $1711;
+  $1713 = $1695 & $1667;
+  $1714 = $1695 ^ -1;
+  $1715 = $1698 & $1714;
+  $1716 = $1713 | $1715;
+  $1717 = $299 + 2053994217 | 0;
+  $1718 = $1717 + $1642 | 0;
+  $1719 = $1718 + $1716 | 0;
+  $1720 = $1719 << 15;
+  $1721 = $1719 >>> 17;
+  $1722 = $1720 | $1721;
+  $1723 = $1722 + $1670 | 0;
+  $1724 = $1667 << 10;
+  $1725 = $1667 >>> 22;
+  $1726 = $1724 | $1725;
+  $1727 = $1709 & $1712;
+  $1728 = $1712 ^ -1;
+  $1729 = $1681 & $1728;
+  $1730 = $1727 | $1729;
+  $1731 = $98 + -1894007588 | 0;
+  $1732 = $1731 + $1656 | 0;
+  $1733 = $1732 + $1730 | 0;
+  $1734 = $1733 << 12;
+  $1735 = $1733 >>> 20;
+  $1736 = $1734 | $1735;
+  $1737 = $1736 + $1684 | 0;
+  $1738 = $1681 << 10;
+  $1739 = $1681 >>> 22;
+  $1740 = $1738 | $1739;
+  $1741 = $1723 & $1695;
+  $1742 = $1723 ^ -1;
+  $1743 = $1726 & $1742;
+  $1744 = $1741 | $1743;
+  $1745 = $88 + 2053994217 | 0;
+  $1746 = $1745 + $1670 | 0;
+  $1747 = $1746 + $1744 | 0;
+  $1748 = $1747 << 8;
+  $1749 = $1747 >>> 24;
+  $1750 = $1748 | $1749;
+  $1751 = $1750 + $1698 | 0;
+  $1752 = $1695 << 10;
+  $1753 = $1695 >>> 22;
+  $1754 = $1752 | $1753;
+  $1755 = $1740 ^ -1;
+  $1756 = $1709 | $1755;
+  $1757 = $1737 ^ $1756;
+  $1758 = $149 + -1454113458 | 0;
+  $1759 = $1758 + $1684 | 0;
+  $1760 = $1759 + $1757 | 0;
+  $1761 = $1760 << 9;
+  $1762 = $1760 >>> 23;
+  $1763 = $1761 | $1762;
+  $1764 = $1763 + $1712 | 0;
+  $1765 = $1709 << 10;
+  $1766 = $1709 >>> 22;
+  $1767 = $1765 | $1766;
+  $1768 = $1723 ^ $1754;
+  $1769 = $1768 ^ $1751;
+  $1770 = $1698 + $349 | 0;
+  $1771 = $1770 + $1769 | 0;
+  $1772 = $1771 << 8;
+  $1773 = $1771 >>> 24;
+  $1774 = $1772 | $1773;
+  $1775 = $1774 + $1726 | 0;
+  $1776 = $1723 << 10;
+  $1777 = $1723 >>> 22;
+  $1778 = $1776 | $1777;
+  $1779 = $1767 ^ -1;
+  $1780 = $1737 | $1779;
+  $1781 = $1764 ^ $1780;
+  $1782 = $52 + -1454113458 | 0;
+  $1783 = $1782 + $1712 | 0;
+  $1784 = $1783 + $1781 | 0;
+  $1785 = $1784 << 15;
+  $1786 = $1784 >>> 17;
+  $1787 = $1785 | $1786;
+  $1788 = $1787 + $1740 | 0;
+  $1789 = $1737 << 10;
+  $1790 = $1737 >>> 22;
+  $1791 = $1789 | $1790;
+  $1792 = $1751 ^ $1778;
+  $1793 = $1792 ^ $1775;
+  $1794 = $1726 + $312 | 0;
+  $1795 = $1794 + $1793 | 0;
+  $1796 = $1795 << 5;
+  $1797 = $1795 >>> 27;
+  $1798 = $1796 | $1797;
+  $1799 = $1798 + $1754 | 0;
+  $1800 = $1751 << 10;
+  $1801 = $1751 >>> 22;
+  $1802 = $1800 | $1801;
+  $1803 = $1791 ^ -1;
+  $1804 = $1764 | $1803;
+  $1805 = $1788 ^ $1804;
+  $1806 = $65 + -1454113458 | 0;
+  $1807 = $1806 + $1740 | 0;
+  $1808 = $1807 + $1805 | 0;
+  $1809 = $1808 << 5;
+  $1810 = $1808 >>> 27;
+  $1811 = $1809 | $1810;
+  $1812 = $1811 + $1767 | 0;
+  $1813 = $1764 << 10;
+  $1814 = $1764 >>> 22;
+  $1815 = $1813 | $1814;
+  $1816 = $1775 ^ $1802;
+  $1817 = $1816 ^ $1799;
+  $1818 = $1754 + $299 | 0;
+  $1819 = $1818 + $1817 | 0;
+  $1820 = $1819 << 12;
+  $1821 = $1819 >>> 20;
+  $1822 = $1820 | $1821;
+  $1823 = $1822 + $1778 | 0;
+  $1824 = $1775 << 10;
+  $1825 = $1775 >>> 22;
+  $1826 = $1824 | $1825;
+  $1827 = $1815 ^ -1;
+  $1828 = $1788 | $1827;
+  $1829 = $1812 ^ $1828;
+  $1830 = $162 + -1454113458 | 0;
+  $1831 = $1830 + $1767 | 0;
+  $1832 = $1831 + $1829 | 0;
+  $1833 = $1832 << 11;
+  $1834 = $1832 >>> 21;
+  $1835 = $1833 | $1834;
+  $1836 = $1835 + $1791 | 0;
+  $1837 = $1788 << 10;
+  $1838 = $1788 >>> 22;
+  $1839 = $1837 | $1838;
+  $1840 = $1799 ^ $1826;
+  $1841 = $1840 ^ $1823;
+  $1842 = $1778 + $149 | 0;
+  $1843 = $1842 + $1841 | 0;
+  $1844 = $1843 << 9;
+  $1845 = $1843 >>> 23;
+  $1846 = $1844 | $1845;
+  $1847 = $1846 + $1802 | 0;
+  $1848 = $1799 << 10;
+  $1849 = $1799 >>> 22;
+  $1850 = $1848 | $1849;
+  $1851 = $1839 ^ -1;
+  $1852 = $1812 | $1851;
+  $1853 = $1836 ^ $1852;
+  $1854 = $111 + -1454113458 | 0;
+  $1855 = $1854 + $1791 | 0;
+  $1856 = $1855 + $1853 | 0;
+  $1857 = $1856 << 6;
+  $1858 = $1856 >>> 26;
+  $1859 = $1857 | $1858;
+  $1860 = $1859 + $1815 | 0;
+  $1861 = $1812 << 10;
+  $1862 = $1812 >>> 22;
+  $1863 = $1861 | $1862;
+  $1864 = $1823 ^ $1850;
+  $1865 = $1864 ^ $1847;
+  $1866 = $1802 + $75 | 0;
+  $1867 = $1866 + $1865 | 0;
+  $1868 = $1867 << 12;
+  $1869 = $1867 >>> 20;
+  $1870 = $1868 | $1869;
+  $1871 = $1870 + $1826 | 0;
+  $1872 = $1823 << 10;
+  $1873 = $1823 >>> 22;
+  $1874 = $1872 | $1873;
+  $1875 = $1863 ^ -1;
+  $1876 = $1836 | $1875;
+  $1877 = $1860 ^ $1876;
+  $1878 = $349 + -1454113458 | 0;
+  $1879 = $1878 + $1815 | 0;
+  $1880 = $1879 + $1877 | 0;
+  $1881 = $1880 << 8;
+  $1882 = $1880 >>> 24;
+  $1883 = $1881 | $1882;
+  $1884 = $1883 + $1839 | 0;
+  $1885 = $1836 << 10;
+  $1886 = $1836 >>> 22;
+  $1887 = $1885 | $1886;
+  $1888 = $1847 ^ $1874;
+  $1889 = $1888 ^ $1871;
+  $1890 = $1826 + $65 | 0;
+  $1891 = $1890 + $1889 | 0;
+  $1892 = $1891 << 5;
+  $1893 = $1891 >>> 27;
+  $1894 = $1892 | $1893;
+  $1895 = $1894 + $1850 | 0;
+  $1896 = $1847 << 10;
+  $1897 = $1847 >>> 22;
+  $1898 = $1896 | $1897;
+  $1899 = $1887 ^ -1;
+  $1900 = $1860 | $1899;
+  $1901 = $1884 ^ $1900;
+  $1902 = $98 + -1454113458 | 0;
+  $1903 = $1902 + $1839 | 0;
+  $1904 = $1903 + $1901 | 0;
+  $1905 = $1904 << 13;
+  $1906 = $1904 >>> 19;
+  $1907 = $1905 | $1906;
+  $1908 = $1907 + $1863 | 0;
+  $1909 = $1860 << 10;
+  $1910 = $1860 >>> 22;
+  $1911 = $1909 | $1910;
+  $1912 = $1871 ^ $1898;
+  $1913 = $1912 ^ $1895;
+  $1914 = $1850 + $249 | 0;
+  $1915 = $1914 + $1913 | 0;
+  $1916 = $1915 << 14;
+  $1917 = $1915 >>> 18;
+  $1918 = $1916 | $1917;
+  $1919 = $1918 + $1874 | 0;
+  $1920 = $1871 << 10;
+  $1921 = $1871 >>> 22;
+  $1922 = $1920 | $1921;
+  $1923 = $1911 ^ -1;
+  $1924 = $1884 | $1923;
+  $1925 = $1908 ^ $1924;
+  $1926 = $299 + -1454113458 | 0;
+  $1927 = $1926 + $1863 | 0;
+  $1928 = $1927 + $1925 | 0;
+  $1929 = $1928 << 12;
+  $1930 = $1928 >>> 20;
+  $1931 = $1929 | $1930;
+  $1932 = $1931 + $1887 | 0;
+  $1933 = $1884 << 10;
+  $1934 = $1884 >>> 22;
+  $1935 = $1933 | $1934;
+  $1936 = $1895 ^ $1922;
+  $1937 = $1936 ^ $1919;
+  $1938 = $1874 + $111 | 0;
+  $1939 = $1938 + $1937 | 0;
+  $1940 = $1939 << 6;
+  $1941 = $1939 >>> 26;
+  $1942 = $1940 | $1941;
+  $1943 = $1942 + $1898 | 0;
+  $1944 = $1895 << 10;
+  $1945 = $1895 >>> 22;
+  $1946 = $1944 | $1945;
+  $1947 = $1935 ^ -1;
+  $1948 = $1908 | $1947;
+  $1949 = $1932 ^ $1948;
+  $1950 = $88 + -1454113458 | 0;
+  $1951 = $1950 + $1887 | 0;
+  $1952 = $1951 + $1949 | 0;
+  $1953 = $1952 << 5;
+  $1954 = $1952 >>> 27;
+  $1955 = $1953 | $1954;
+  $1956 = $1955 + $1911 | 0;
+  $1957 = $1908 << 10;
+  $1958 = $1908 >>> 22;
+  $1959 = $1957 | $1958;
+  $1960 = $1919 ^ $1946;
+  $1961 = $1960 ^ $1943;
+  $1962 = $1898 + $199 | 0;
+  $1963 = $1962 + $1961 | 0;
+  $1964 = $1963 << 8;
+  $1965 = $1963 >>> 24;
+  $1966 = $1964 | $1965;
+  $1967 = $1966 + $1922 | 0;
+  $1968 = $1919 << 10;
+  $1969 = $1919 >>> 22;
+  $1970 = $1968 | $1969;
+  $1971 = $1959 ^ -1;
+  $1972 = $1932 | $1971;
+  $1973 = $1956 ^ $1972;
+  $1974 = $75 + -1454113458 | 0;
+  $1975 = $1974 + $1911 | 0;
+  $1976 = $1975 + $1973 | 0;
+  $1977 = $1976 << 12;
+  $1978 = $1976 >>> 20;
+  $1979 = $1977 | $1978;
+  $1980 = $1979 + $1935 | 0;
+  $1981 = $1932 << 10;
+  $1982 = $1932 >>> 22;
+  $1983 = $1981 | $1982;
+  $1984 = $1943 ^ $1970;
+  $1985 = $1984 ^ $1967;
+  $1986 = $1922 + $98 | 0;
+  $1987 = $1986 + $1985 | 0;
+  $1988 = $1987 << 13;
+  $1989 = $1987 >>> 19;
+  $1990 = $1988 | $1989;
+  $1991 = $1990 + $1946 | 0;
+  $1992 = $1943 << 10;
+  $1993 = $1943 >>> 22;
+  $1994 = $1992 | $1993;
+  $1995 = $1983 ^ -1;
+  $1996 = $1956 | $1995;
+  $1997 = $1980 ^ $1996;
+  $1998 = $124 + -1454113458 | 0;
+  $1999 = $1998 + $1935 | 0;
+  $2000 = $1999 + $1997 | 0;
+  $2001 = $2000 << 13;
+  $2002 = $2000 >>> 19;
+  $2003 = $2001 | $2002;
+  $2004 = $2003 + $1959 | 0;
+  $2005 = $1956 << 10;
+  $2006 = $1956 >>> 22;
+  $2007 = $2005 | $2006;
+  $2008 = $1967 ^ $1994;
+  $2009 = $2008 ^ $1991;
+  $2010 = $1946 + $262 | 0;
+  $2011 = $2010 + $2009 | 0;
+  $2012 = $2011 << 6;
+  $2013 = $2011 >>> 26;
+  $2014 = $2012 | $2013;
+  $2015 = $2014 + $1970 | 0;
+  $2016 = $1967 << 10;
+  $2017 = $1967 >>> 22;
+  $2018 = $2016 | $2017;
+  $2019 = $2007 ^ -1;
+  $2020 = $1980 | $2019;
+  $2021 = $2004 ^ $2020;
+  $2022 = $249 + -1454113458 | 0;
+  $2023 = $2022 + $1959 | 0;
+  $2024 = $2023 + $2021 | 0;
+  $2025 = $2024 << 14;
+  $2026 = $2024 >>> 18;
+  $2027 = $2025 | $2026;
+  $2028 = $2027 + $1983 | 0;
+  $2029 = $1980 << 10;
+  $2030 = $1980 >>> 22;
+  $2031 = $2029 | $2030;
+  $2032 = $1991 ^ $2018;
+  $2033 = $2032 ^ $2015;
+  $2034 = $1970 + $88 | 0;
+  $2035 = $2034 + $2033 | 0;
+  $2036 = $2035 << 5;
+  $2037 = $2035 >>> 27;
+  $2038 = $2036 | $2037;
+  $2039 = $2038 + $1994 | 0;
+  $2040 = $1991 << 10;
+  $2041 = $1991 >>> 22;
+  $2042 = $2040 | $2041;
+  $2043 = $2031 ^ -1;
+  $2044 = $2004 | $2043;
+  $2045 = $2028 ^ $2044;
+  $2046 = $212 + -1454113458 | 0;
+  $2047 = $2046 + $1983 | 0;
+  $2048 = $2047 + $2045 | 0;
+  $2049 = $2048 << 11;
+  $2050 = $2048 >>> 21;
+  $2051 = $2049 | $2050;
+  $2052 = $2051 + $2007 | 0;
+  $2053 = $2004 << 10;
+  $2054 = $2004 >>> 22;
+  $2055 = $2053 | $2054;
+  $2056 = $2015 ^ $2042;
+  $2057 = $2056 ^ $2039;
+  $2058 = $1994 + $52 | 0;
+  $2059 = $2058 + $2057 | 0;
+  $2060 = $2059 << 15;
+  $2061 = $2059 >>> 17;
+  $2062 = $2060 | $2061;
+  $2063 = $2062 + $2018 | 0;
+  $2064 = $2015 << 10;
+  $2065 = $2015 >>> 22;
+  $2066 = $2064 | $2065;
+  $2067 = $2055 ^ -1;
+  $2068 = $2028 | $2067;
+  $2069 = $2052 ^ $2068;
+  $2070 = $199 + -1454113458 | 0;
+  $2071 = $2070 + $2007 | 0;
+  $2072 = $2071 + $2069 | 0;
+  $2073 = $2072 << 8;
+  $2074 = $2072 >>> 24;
+  $2075 = $2073 | $2074;
+  $2076 = $2075 + $2031 | 0;
+  $2077 = $2028 << 10;
+  $2078 = $2028 >>> 22;
+  $2079 = $2077 | $2078;
+  $2080 = $2039 ^ $2066;
+  $2081 = $2080 ^ $2063;
+  $2082 = $2018 + $124 | 0;
+  $2083 = $2082 + $2081 | 0;
+  $2084 = $2083 << 13;
+  $2085 = $2083 >>> 19;
+  $2086 = $2084 | $2085;
+  $2087 = $2086 + $2042 | 0;
+  $2088 = $2039 << 10;
+  $2089 = $2039 >>> 22;
+  $2090 = $2088 | $2089;
+  $2091 = $2079 ^ -1;
+  $2092 = $2052 | $2091;
+  $2093 = $2076 ^ $2092;
+  $2094 = $312 + -1454113458 | 0;
+  $2095 = $2094 + $2031 | 0;
+  $2096 = $2095 + $2093 | 0;
+  $2097 = $2096 << 5;
+  $2098 = $2096 >>> 27;
+  $2099 = $2097 | $2098;
+  $2100 = $2099 + $2055 | 0;
+  $2101 = $2052 << 10;
+  $2102 = $2052 >>> 22;
+  $2103 = $2101 | $2102;
+  $2104 = $2063 ^ $2090;
+  $2105 = $2104 ^ $2087;
+  $2106 = $2042 + $162 | 0;
+  $2107 = $2106 + $2105 | 0;
+  $2108 = $2107 << 11;
+  $2109 = $2107 >>> 21;
+  $2110 = $2108 | $2109;
+  $2111 = $2110 + $2066 | 0;
+  $2112 = $2063 << 10;
+  $2113 = $2063 >>> 22;
+  $2114 = $2112 | $2113;
+  $2115 = $2103 ^ -1;
+  $2116 = $2076 | $2115;
+  $2117 = $2100 ^ $2116;
+  $2118 = $262 + -1454113458 | 0;
+  $2119 = $2118 + $2055 | 0;
+  $2120 = $2119 + $2117 | 0;
+  $2121 = $2120 << 6;
+  $2122 = $2120 >>> 26;
+  $2123 = $2121 | $2122;
+  $2124 = $2076 << 10;
+  $2125 = $2076 >>> 22;
+  $2126 = $2124 | $2125;
+  $2127 = $2087 ^ $2114;
+  $2128 = $2127 ^ $2111;
+  $2129 = $2066 + $212 | 0;
+  $2130 = $2129 + $2128 | 0;
+  $2131 = $2130 << 11;
+  $2132 = $2130 >>> 21;
+  $2133 = $2131 | $2132;
+  $2134 = $2087 << 10;
+  $2135 = $2087 >>> 22;
+  $2136 = $2134 | $2135;
+  $2137 = $2136 + $46 | 0;
+  $2138 = $2137 + $2100 | 0;
+  $2139 = $2114 + $47 | 0;
+  $2140 = $2139 + $2126 | 0;
+  SAFE_HEAP_STORE($5 | 0, $2140 | 0, 4);
+  $2141 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  $2142 = $2090 + $2141 | 0;
+  $2143 = $2142 + $2103 | 0;
+  SAFE_HEAP_STORE($6 | 0, $2143 | 0, 4);
+  $2144 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $2145 = $2079 + $2144 | 0;
+  $2146 = $2145 + $2090 | 0;
+  $2147 = $2146 + $2133 | 0;
+  SAFE_HEAP_STORE($7 | 0, $2147 | 0, 4);
+  $2148 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $2149 = $2079 + $2148 | 0;
+  $2150 = $2149 + $2111 | 0;
+  $2151 = $2150 + $2123 | 0;
+  SAFE_HEAP_STORE($8 | 0, $2151 | 0, 4);
+  SAFE_HEAP_STORE($4 | 0, $2138 | 0, 4);
+  $2152 = $$0 + 64 | 0;
+  $2153 = $$05 + -1 | 0;
+  $2154 = ($2153 | 0) == 0;
+  if ($2154) {
+   break;
+  } else {
+   $$0 = $2152;
+   $$05 = $2153;
+  }
+ }
+ STACKTOP = sp;
+ return 124;
+}
+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, $$$0259 = 0, $$$0262 = 0, $$$0269 = 0, $$$3484$i = 0, 
$$$3484704$i = 0, $$$3484705$i = 0, $$$3501$i = 0, $$$4266 = 0, $$$4502$i = 0, 
$$$5 = 0, $$$i = 0, $$0 = 0, $$0$i = 0, $$0$lcssa$i300 = 0, $$0228 = 0, 
$$0229396 = 0, $$0232 = 0, $$0235 = 0, $$0237 = 0;
+ var $$0240$lcssa = 0, $$0240$lcssa460 = 0, $$0240395 = 0, $$0243 = 0, $$0247 
= 0, $$0249$lcssa = 0, $$0249383 = 0, $$0252 = 0, $$0253 = 0, $$0254 = 0, 
$$0254$ = 0, $$0259 = 0, $$0262342 = 0, $$0262390 = 0, $$0269 = 0, $$0269$phi = 
0, $$0321 = 0, $$0463$lcssa$i = 0, $$0463593$i = 0, $$0464602$i = 0;
+ var $$0466$i = 0.0, $$0470$i = 0, $$0471$i = 0.0, $$0479$i = 0, $$0487651$i = 
0, $$0488$i = 0, $$0488662$i = 0, $$0488664$i = 0, $$0496$$9$i = 0, $$0497663$i 
= 0, $$0498$i = 0, $$05$lcssa$i = 0, $$0509591$i = 0.0, $$0510$i = 0, $$0511$i 
= 0, $$0514646$i = 0, $$0520$i = 0, $$0521$$i = 0, $$0521$i = 0, $$0523$i = 0;
+ var $$0525$i = 0, $$0527$i = 0, $$0527638$i = 0, $$0527640$i = 0, $$0530645$i 
= 0, $$056$i = 0, $$06$i = 0, $$06$i290 = 0, $$06$i298 = 0, $$1 = 0, $$1230407 
= 0, $$1233 = 0, $$1236 = 0, $$1238 = 0, $$1241406 = 0, $$1244394 = 0, $$1248 = 
0, $$1250 = 0, $$1255 = 0, $$1260 = 0;
+ var $$1263 = 0, $$1263$ = 0, $$1270 = 0, $$1322 = 0, $$1465$i = 0, $$1467$i = 
0.0, $$1469$i = 0.0, $$1472$i = 0.0, $$1480$i = 0, $$1482$lcssa$i = 0, 
$$1482670$i = 0, $$1489650$i = 0, $$1499$lcssa$i = 0, $$1499669$i = 0, 
$$1508592$i = 0, $$1512$lcssa$i = 0, $$1512616$i = 0, $$1515$i = 0, $$1524$i = 
0, $$1526$i = 0;
+ var $$1528623$i = 0, $$1531$lcssa$i = 0, $$1531639$i = 0, $$1606$i = 0, $$2 = 
0, $$2$i = 0, $$2234 = 0, $$2239 = 0, $$2242381 = 0, $$2245 = 0, $$2251 = 0, 
$$2256 = 0, $$2256$ = 0, $$2261 = 0, $$2271 = 0, $$2323$lcssa = 0, $$2323382 = 
0, $$2473$i = 0.0, $$2476$$544$i = 0, $$2476$$546$i = 0;
+ var $$2476$i = 0, $$2483$ph$i = 0, $$2490$lcssa$i = 0, $$2490631$i = 0, 
$$2500$i = 0, $$2513$i = 0, $$2516627$i = 0, $$2529$i = 0, $$2532626$i = 0, 
$$3$i = 0.0, $$3257 = 0, $$3265 = 0, $$3272 = 0, $$331 = 0, $$332 = 0, $$333 = 
0, $$3379 = 0, $$3477$i = 0, $$3484$lcssa$i = 0, $$3484657$i = 0;
+ var $$3501$lcssa$i = 0, $$3501656$i = 0, $$3533622$i = 0, $$4$i = 0.0, 
$$4258458 = 0, $$4266 = 0, $$4325 = 0, $$4478$lcssa$i = 0, $$4478599$i = 0, 
$$4492$i = 0, $$4502$i = 0, $$4518$i = 0, $$5 = 0, $$5$lcssa$i = 0, $$536$i = 
0, $$537$$i = 0, $$537$i = 0, $$540$i = 0.0, $$543$i = 0, $$545$i = 0;
+ var $$5486$lcssa$i = 0, $$5486632$i = 0, $$5493605$i = 0, $$5519$ph$i = 0, 
$$552$i = 0, $$553$i = 0, $$556$i = 0.0, $$5610$i = 0, $$6 = 0, $$6$i = 0, 
$$6268 = 0, $$6494598$i = 0, $$7 = 0, $$7495609$i = 0, $$7505$$i = 0, $$7505$i 
= 0, $$7505$ph$i = 0, $$8$i = 0, $$9$ph$i = 0, $$lcssa682$i = 0;
+ var $$neg$i = 0, $$neg571$i = 0, $$pn$i = 0, $$pr = 0, $$pr$i = 0, $$pr570$i 
= 0, $$pre = 0, $$pre$i = 0, $$pre$phi703$iZ2D = 0, $$pre452 = 0, $$pre453 = 0, 
$$pre454 = 0, $$pre696$i = 0, $$pre699$i = 0, $$pre702$i = 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, $30 
= 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0;
+ var $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, $321 = 0;
+ var $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, $34 = 0;
+ var $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, $358 = 0;
+ var $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.0, 
$372 = 0, $373 = 0, $374 = 0, $375 = 0.0, $376 = 0;
+ var $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, $393 = 0, $394 = 0;
+ var $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $40 = 0, $400 = 0, $401 
= 0, $402 = 0, $403 = 0.0, $404 = 0.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.0, 
$42 = 0, $420 = 0, $421 = 0, $422 = 0, $423 = 0.0, $424 = 0.0, $425 = 0.0, $426 
= 0.0, $427 = 0.0, $428 = 0.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.0, $455 = 0.0, 
$456 = 0.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.0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, 
$492 = 0, $493 = 0.0, $494 = 0.0, $495 = 0.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.0, $606 = 0.0, 
$607 = 0, $608 = 0.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, $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 $arglist_current = 0, $arglist_current2 = 0, $arglist_next = 0, 
$arglist_next3 = 0, $exitcond$i = 0, $expanded = 0, $expanded10 = 0, 
$expanded11 = 0, $expanded13 = 0, $expanded14 = 0, $expanded15 = 0, $expanded4 
= 0, $expanded6 = 0, $expanded7 = 0, $expanded8 = 0, $isdigit = 0, $isdigit$i = 
0, $isdigit$i292 = 0, $isdigit275 = 0, $isdigit277 = 0;
+ var $isdigit5$i = 0, $isdigit5$i288 = 0, $isdigittmp = 0, $isdigittmp$ = 0, 
$isdigittmp$i = 0, $isdigittmp$i291 = 0, $isdigittmp274 = 0, $isdigittmp276 = 
0, $isdigittmp4$i = 0, $isdigittmp4$i287 = 0, $isdigittmp7$i = 0, 
$isdigittmp7$i289 = 0, $notlhs$i = 0, $notrhs$i = 0, $or$cond = 0, $or$cond$i = 
0, $or$cond280 = 0, $or$cond282 = 0, $or$cond285 = 0, $or$cond3$not$i = 0;
+ var $or$cond412 = 0, $or$cond539$i = 0, $or$cond542$i = 0, $or$cond551$i = 0, 
$or$cond6$i = 0, $scevgep693$i = 0, $scevgep693694$i = 0, $storemerge = 0, 
$storemerge273345 = 0, $storemerge273389 = 0, $storemerge278 = 0, $sum = 0, 
$trunc = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 624 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(624 | 0);
+ $5 = sp + 24 | 0;
+ $6 = sp + 16 | 0;
+ $7 = sp + 588 | 0;
+ $8 = sp + 576 | 0;
+ $9 = sp;
+ $10 = sp + 536 | 0;
+ $11 = sp + 8 | 0;
+ $12 = sp + 528 | 0;
+ $13 = ($0 | 0) != (0 | 0);
+ $14 = $10 + 40 | 0;
+ $15 = $14;
+ $16 = $10 + 39 | 0;
+ $17 = $11 + 4 | 0;
+ $18 = $7;
+ $19 = 0 - $18 | 0;
+ $20 = $8 + 12 | 0;
+ $21 = $8 + 11 | 0;
+ $22 = $20;
+ $23 = $22 - $18 | 0;
+ $24 = -2 - $18 | 0;
+ $25 = $22 + 2 | 0;
+ $26 = $5 + 288 | 0;
+ $27 = $7 + 9 | 0;
+ $28 = $27;
+ $29 = $7 + 8 | 0;
+ $$0243 = 0;
+ $$0247 = 0;
+ $$0269 = 0;
+ $$0321 = $1;
+ L1 : while (1) {
+  $30 = ($$0247 | 0) > -1;
+  do {
+   if ($30) {
+    $31 = 2147483647 - $$0247 | 0;
+    $32 = ($$0243 | 0) > ($31 | 0);
+    if ($32) {
+     $33 = ___errno_location() | 0;
+     SAFE_HEAP_STORE($33 | 0, 75 | 0, 4);
+     $$1248 = -1;
+     break;
+    } else {
+     $34 = $$0243 + $$0247 | 0;
+     $$1248 = $34;
+     break;
+    }
+   } else {
+    $$1248 = $$0247;
+   }
+  } while (0);
+  $35 = SAFE_HEAP_LOAD($$0321 >> 0 | 0, 1, 0) | 0 | 0;
+  $36 = $35 << 24 >> 24 == 0;
+  if ($36) {
+   label = 243;
+   break;
+  } else {
+   $$1322 = $$0321;
+   $37 = $35;
+  }
+  L9 : while (1) {
+   switch ($37 << 24 >> 24) {
+   case 37:
+    {
+     $$0249383 = $$1322;
+     $$2323382 = $$1322;
+     label = 9;
+     break L9;
+     break;
+    }
+   case 0:
+    {
+     $$0249$lcssa = $$1322;
+     $$2323$lcssa = $$1322;
+     break L9;
+     break;
+    }
+   default:
+    {}
+   }
+   $38 = $$1322 + 1 | 0;
+   $$pre = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+   $$1322 = $38;
+   $37 = $$pre;
+  }
+  L12 : do {
+   if ((label | 0) == 9) {
+    while (1) {
+     label = 0;
+     $39 = $$2323382 + 1 | 0;
+     $40 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+     $41 = $40 << 24 >> 24 == 37;
+     if (!$41) {
+      $$0249$lcssa = $$0249383;
+      $$2323$lcssa = $$2323382;
+      break L12;
+     }
+     $42 = $$0249383 + 1 | 0;
+     $43 = $$2323382 + 2 | 0;
+     $44 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+     $45 = $44 << 24 >> 24 == 37;
+     if ($45) {
+      $$0249383 = $42;
+      $$2323382 = $43;
+      label = 9;
+     } else {
+      $$0249$lcssa = $42;
+      $$2323$lcssa = $43;
+      break;
+     }
+    }
+   }
+  } while (0);
+  $46 = $$0249$lcssa;
+  $47 = $$0321;
+  $48 = $46 - $47 | 0;
+  if ($13) {
+   $49 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $50 = $49 & 32;
+   $51 = ($50 | 0) == 0;
+   if ($51) {
+    ___fwritex($$0321, $48, $0) | 0;
+   }
+  }
+  $52 = ($48 | 0) == 0;
+  if (!$52) {
+   $$0269$phi = $$0269;
+   $$0243 = $48;
+   $$0247 = $$1248;
+   $$0321 = $$2323$lcssa;
+   $$0269 = $$0269$phi;
+   continue;
+  }
+  $53 = $$2323$lcssa + 1 | 0;
+  $54 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+  $55 = $54 << 24 >> 24;
+  $isdigittmp = $55 + -48 | 0;
+  $isdigit = $isdigittmp >>> 0 < 10;
+  if ($isdigit) {
+   $56 = $$2323$lcssa + 2 | 0;
+   $57 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+   $58 = $57 << 24 >> 24 == 36;
+   $59 = $$2323$lcssa + 3 | 0;
+   $$331 = $58 ? $59 : $53;
+   $$$0269 = $58 ? 1 : $$0269;
+   $isdigittmp$ = $58 ? $isdigittmp : -1;
+   $$pre452 = SAFE_HEAP_LOAD($$331 >> 0 | 0, 1, 0) | 0 | 0;
+   $$0253 = $isdigittmp$;
+   $$1270 = $$$0269;
+   $61 = $$pre452;
+   $storemerge = $$331;
+  } else {
+   $$0253 = -1;
+   $$1270 = $$0269;
+   $61 = $54;
+   $storemerge = $53;
+  }
+  $60 = $61 << 24 >> 24;
+  $62 = $60 + -32 | 0;
+  $63 = $62 >>> 0 < 32;
+  L25 : do {
+   if ($63) {
+    $$0262390 = 0;
+    $65 = $62;
+    $69 = $61;
+    $storemerge273389 = $storemerge;
+    while (1) {
+     $64 = 1 << $65;
+     $66 = $64 & 75913;
+     $67 = ($66 | 0) == 0;
+     if ($67) {
+      $$0262342 = $$0262390;
+      $78 = $69;
+      $storemerge273345 = $storemerge273389;
+      break L25;
+     }
+     $68 = $69 << 24 >> 24;
+     $70 = $68 + -32 | 0;
+     $71 = 1 << $70;
+     $72 = $71 | $$0262390;
+     $73 = $storemerge273389 + 1 | 0;
+     $74 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+     $75 = $74 << 24 >> 24;
+     $76 = $75 + -32 | 0;
+     $77 = $76 >>> 0 < 32;
+     if ($77) {
+      $$0262390 = $72;
+      $65 = $76;
+      $69 = $74;
+      $storemerge273389 = $73;
+     } else {
+      $$0262342 = $72;
+      $78 = $74;
+      $storemerge273345 = $73;
+      break;
+     }
+    }
+   } else {
+    $$0262342 = 0;
+    $78 = $61;
+    $storemerge273345 = $storemerge;
+   }
+  } while (0);
+  $79 = $78 << 24 >> 24 == 42;
+  do {
+   if ($79) {
+    $80 = $storemerge273345 + 1 | 0;
+    $81 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+    $82 = $81 << 24 >> 24;
+    $isdigittmp276 = $82 + -48 | 0;
+    $isdigit277 = $isdigittmp276 >>> 0 < 10;
+    if ($isdigit277) {
+     $83 = $storemerge273345 + 2 | 0;
+     $84 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+     $85 = $84 << 24 >> 24 == 36;
+     if ($85) {
+      $86 = $4 + ($isdigittmp276 << 2) | 0;
+      SAFE_HEAP_STORE($86 | 0, 10 | 0, 4);
+      $87 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+      $88 = $87 << 24 >> 24;
+      $89 = $88 + -48 | 0;
+      $90 = $3 + ($89 << 3) | 0;
+      $91 = $90;
+      $92 = $91;
+      $93 = SAFE_HEAP_LOAD($92 | 0, 4, 0) | 0 | 0;
+      $94 = $91 + 4 | 0;
+      $95 = $94;
+      $96 = SAFE_HEAP_LOAD($95 | 0, 4, 0) | 0 | 0;
+      $97 = $storemerge273345 + 3 | 0;
+      $$0259 = $93;
+      $$2271 = 1;
+      $storemerge278 = $97;
+     } else {
+      label = 24;
+     }
+    } else {
+     label = 24;
+    }
+    if ((label | 0) == 24) {
+     label = 0;
+     $98 = ($$1270 | 0) == 0;
+     if (!$98) {
+      $$0 = -1;
+      break L1;
+     }
+     if (!$13) {
+      $$1260 = 0;
+      $$1263 = $$0262342;
+      $$3272 = 0;
+      $$4325 = $80;
+      $$pr = $81;
+      break;
+     }
+     $arglist_current = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $99 = $arglist_current;
+     $100 = 0 + 4 | 0;
+     $expanded4 = $100;
+     $expanded = $expanded4 - 1 | 0;
+     $101 = $99 + $expanded | 0;
+     $102 = 0 + 4 | 0;
+     $expanded8 = $102;
+     $expanded7 = $expanded8 - 1 | 0;
+     $expanded6 = $expanded7 ^ -1;
+     $103 = $101 & $expanded6;
+     $104 = $103;
+     $105 = SAFE_HEAP_LOAD($104 | 0, 4, 0) | 0 | 0;
+     $arglist_next = $104 + 4 | 0;
+     SAFE_HEAP_STORE($2 | 0, $arglist_next | 0, 4);
+     $$0259 = $105;
+     $$2271 = 0;
+     $storemerge278 = $80;
+    }
+    $106 = ($$0259 | 0) < 0;
+    $107 = $$0262342 | 8192;
+    $108 = 0 - $$0259 | 0;
+    $$$0262 = $106 ? $107 : $$0262342;
+    $$$0259 = $106 ? $108 : $$0259;
+    $$pre453 = SAFE_HEAP_LOAD($storemerge278 >> 0 | 0, 1, 0) | 0 | 0;
+    $$1260 = $$$0259;
+    $$1263 = $$$0262;
+    $$3272 = $$2271;
+    $$4325 = $storemerge278;
+    $$pr = $$pre453;
+   } else {
+    $109 = $78 << 24 >> 24;
+    $isdigittmp4$i = $109 + -48 | 0;
+    $isdigit5$i = $isdigittmp4$i >>> 0 < 10;
+    if ($isdigit5$i) {
+     $$06$i = 0;
+     $113 = $storemerge273345;
+     $isdigittmp7$i = $isdigittmp4$i;
+     while (1) {
+      $110 = $$06$i * 10 | 0;
+      $111 = $110 + $isdigittmp7$i | 0;
+      $112 = $113 + 1 | 0;
+      $114 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+      $115 = $114 << 24 >> 24;
+      $isdigittmp$i = $115 + -48 | 0;
+      $isdigit$i = $isdigittmp$i >>> 0 < 10;
+      if ($isdigit$i) {
+       $$06$i = $111;
+       $113 = $112;
+       $isdigittmp7$i = $isdigittmp$i;
+      } else {
+       break;
+      }
+     }
+     $116 = ($111 | 0) < 0;
+     if ($116) {
+      $$0 = -1;
+      break L1;
+     } else {
+      $$1260 = $111;
+      $$1263 = $$0262342;
+      $$3272 = $$1270;
+      $$4325 = $112;
+      $$pr = $114;
+     }
+    } else {
+     $$1260 = 0;
+     $$1263 = $$0262342;
+     $$3272 = $$1270;
+     $$4325 = $storemerge273345;
+     $$pr = $78;
+    }
+   }
+  } while (0);
+  $117 = $$pr << 24 >> 24 == 46;
+  L45 : do {
+   if ($117) {
+    $118 = $$4325 + 1 | 0;
+    $119 = SAFE_HEAP_LOAD($118 >> 0 | 0, 1, 0) | 0 | 0;
+    $120 = $119 << 24 >> 24 == 42;
+    if (!$120) {
+     $147 = $119 << 24 >> 24;
+     $isdigittmp4$i287 = $147 + -48 | 0;
+     $isdigit5$i288 = $isdigittmp4$i287 >>> 0 < 10;
+     if ($isdigit5$i288) {
+      $$06$i290 = 0;
+      $151 = $118;
+      $isdigittmp7$i289 = $isdigittmp4$i287;
+     } else {
+      $$0254 = 0;
+      $$6 = $118;
+      break;
+     }
+     while (1) {
+      $148 = $$06$i290 * 10 | 0;
+      $149 = $148 + $isdigittmp7$i289 | 0;
+      $150 = $151 + 1 | 0;
+      $152 = SAFE_HEAP_LOAD($150 >> 0 | 0, 1, 0) | 0 | 0;
+      $153 = $152 << 24 >> 24;
+      $isdigittmp$i291 = $153 + -48 | 0;
+      $isdigit$i292 = $isdigittmp$i291 >>> 0 < 10;
+      if ($isdigit$i292) {
+       $$06$i290 = $149;
+       $151 = $150;
+       $isdigittmp7$i289 = $isdigittmp$i291;
+      } else {
+       $$0254 = $149;
+       $$6 = $150;
+       break L45;
+      }
+     }
+    }
+    $121 = $$4325 + 2 | 0;
+    $122 = SAFE_HEAP_LOAD($121 >> 0 | 0, 1, 0) | 0 | 0;
+    $123 = $122 << 24 >> 24;
+    $isdigittmp274 = $123 + -48 | 0;
+    $isdigit275 = $isdigittmp274 >>> 0 < 10;
+    if ($isdigit275) {
+     $124 = $$4325 + 3 | 0;
+     $125 = SAFE_HEAP_LOAD($124 >> 0 | 0, 1, 0) | 0 | 0;
+     $126 = $125 << 24 >> 24 == 36;
+     if ($126) {
+      $127 = $4 + ($isdigittmp274 << 2) | 0;
+      SAFE_HEAP_STORE($127 | 0, 10 | 0, 4);
+      $128 = SAFE_HEAP_LOAD($121 >> 0 | 0, 1, 0) | 0 | 0;
+      $129 = $128 << 24 >> 24;
+      $130 = $129 + -48 | 0;
+      $131 = $3 + ($130 << 3) | 0;
+      $132 = $131;
+      $133 = $132;
+      $134 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 0;
+      $135 = $132 + 4 | 0;
+      $136 = $135;
+      $137 = SAFE_HEAP_LOAD($136 | 0, 4, 0) | 0 | 0;
+      $138 = $$4325 + 4 | 0;
+      $$0254 = $134;
+      $$6 = $138;
+      break;
+     }
+    }
+    $139 = ($$3272 | 0) == 0;
+    if (!$139) {
+     $$0 = -1;
+     break L1;
+    }
+    if ($13) {
+     $arglist_current2 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $140 = $arglist_current2;
+     $141 = 0 + 4 | 0;
+     $expanded11 = $141;
+     $expanded10 = $expanded11 - 1 | 0;
+     $142 = $140 + $expanded10 | 0;
+     $143 = 0 + 4 | 0;
+     $expanded15 = $143;
+     $expanded14 = $expanded15 - 1 | 0;
+     $expanded13 = $expanded14 ^ -1;
+     $144 = $142 & $expanded13;
+     $145 = $144;
+     $146 = SAFE_HEAP_LOAD($145 | 0, 4, 0) | 0 | 0;
+     $arglist_next3 = $145 + 4 | 0;
+     SAFE_HEAP_STORE($2 | 0, $arglist_next3 | 0, 4);
+     $$0254 = $146;
+     $$6 = $121;
+    } else {
+     $$0254 = 0;
+     $$6 = $121;
+    }
+   } else {
+    $$0254 = -1;
+    $$6 = $$4325;
+   }
+  } while (0);
+  $$0252 = 0;
+  $$7 = $$6;
+  while (1) {
+   $154 = SAFE_HEAP_LOAD($$7 >> 0 | 0, 1, 0) | 0 | 0;
+   $155 = $154 << 24 >> 24;
+   $156 = $155 + -65 | 0;
+   $157 = $156 >>> 0 > 57;
+   if ($157) {
+    $$0 = -1;
+    break L1;
+   }
+   $158 = $$7 + 1 | 0;
+   $159 = (66502 + ($$0252 * 58 | 0) | 0) + $156 | 0;
+   $160 = SAFE_HEAP_LOAD($159 >> 0 | 0, 1, 0) | 0 | 0;
+   $161 = $160 & 255;
+   $162 = $161 + -1 | 0;
+   $163 = $162 >>> 0 < 8;
+   if ($163) {
+    $$0252 = $161;
+    $$7 = $158;
+   } else {
+    break;
+   }
+  }
+  $164 = $160 << 24 >> 24 == 0;
+  if ($164) {
+   $$0 = -1;
+   break;
+  }
+  $165 = $160 << 24 >> 24 == 19;
+  $166 = ($$0253 | 0) > -1;
+  do {
+   if ($165) {
+    if ($166) {
+     $$0 = -1;
+     break L1;
+    } else {
+     label = 51;
+    }
+   } else {
+    if ($166) {
+     $167 = $4 + ($$0253 << 2) | 0;
+     SAFE_HEAP_STORE($167 | 0, $161 | 0, 4);
+     $168 = $3 + ($$0253 << 3) | 0;
+     $169 = $168;
+     $170 = $169;
+     $171 = SAFE_HEAP_LOAD($170 | 0, 4, 0) | 0 | 0;
+     $172 = $169 + 4 | 0;
+     $173 = $172;
+     $174 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+     $175 = $9;
+     $176 = $175;
+     SAFE_HEAP_STORE($176 | 0, $171 | 0, 4);
+     $177 = $175 + 4 | 0;
+     $178 = $177;
+     SAFE_HEAP_STORE($178 | 0, $174 | 0, 4);
+     label = 51;
+     break;
+    }
+    if (!$13) {
+     $$0 = 0;
+     break L1;
+    }
+    _pop_arg_238($9, $161, $2);
+   }
+  } while (0);
+  if ((label | 0) == 51) {
+   label = 0;
+   if (!$13) {
+    $$0243 = 0;
+    $$0247 = $$1248;
+    $$0269 = $$3272;
+    $$0321 = $158;
+    continue;
+   }
+  }
+  $179 = SAFE_HEAP_LOAD($$7 >> 0 | 0, 1, 0) | 0 | 0;
+  $180 = $179 << 24 >> 24;
+  $181 = ($$0252 | 0) != 0;
+  $182 = $180 & 15;
+  $183 = ($182 | 0) == 3;
+  $or$cond280 = $181 & $183;
+  $184 = $180 & -33;
+  $$0235 = $or$cond280 ? $184 : $180;
+  $185 = $$1263 & 8192;
+  $186 = ($185 | 0) == 0;
+  $187 = $$1263 & -65537;
+  $$1263$ = $186 ? $$1263 : $187;
+  L74 : do {
+   switch ($$0235 | 0) {
+   case 110:
+    {
+     $trunc = $$0252 & 255;
+     switch ($trunc << 24 >> 24) {
+     case 0:
+      {
+       $194 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($194 | 0, $$1248 | 0, 4);
+       $$0243 = 0;
+       $$0247 = $$1248;
+       $$0269 = $$3272;
+       $$0321 = $158;
+       continue L1;
+       break;
+      }
+     case 1:
+      {
+       $195 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($195 | 0, $$1248 | 0, 4);
+       $$0243 = 0;
+       $$0247 = $$1248;
+       $$0269 = $$3272;
+       $$0321 = $158;
+       continue L1;
+       break;
+      }
+     case 2:
+      {
+       $196 = ($$1248 | 0) < 0;
+       $197 = $196 << 31 >> 31;
+       $198 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+       $199 = $198;
+       $200 = $199;
+       SAFE_HEAP_STORE($200 | 0, $$1248 | 0, 4);
+       $201 = $199 + 4 | 0;
+       $202 = $201;
+       SAFE_HEAP_STORE($202 | 0, $197 | 0, 4);
+       $$0243 = 0;
+       $$0247 = $$1248;
+       $$0269 = $$3272;
+       $$0321 = $158;
+       continue L1;
+       break;
+      }
+     case 3:
+      {
+       $203 = $$1248 & 65535;
+       $204 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($204 | 0, $203 | 0, 2);
+       $$0243 = 0;
+       $$0247 = $$1248;
+       $$0269 = $$3272;
+       $$0321 = $158;
+       continue L1;
+       break;
+      }
+     case 4:
+      {
+       $205 = $$1248 & 255;
+       $206 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($206 >> 0 | 0, $205 | 0, 1);
+       $$0243 = 0;
+       $$0247 = $$1248;
+       $$0269 = $$3272;
+       $$0321 = $158;
+       continue L1;
+       break;
+      }
+     case 6:
+      {
+       $207 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($207 | 0, $$1248 | 0, 4);
+       $$0243 = 0;
+       $$0247 = $$1248;
+       $$0269 = $$3272;
+       $$0321 = $158;
+       continue L1;
+       break;
+      }
+     case 7:
+      {
+       $208 = ($$1248 | 0) < 0;
+       $209 = $208 << 31 >> 31;
+       $210 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+       $211 = $210;
+       $212 = $211;
+       SAFE_HEAP_STORE($212 | 0, $$1248 | 0, 4);
+       $213 = $211 + 4 | 0;
+       $214 = $213;
+       SAFE_HEAP_STORE($214 | 0, $209 | 0, 4);
+       $$0243 = 0;
+       $$0247 = $$1248;
+       $$0269 = $$3272;
+       $$0321 = $158;
+       continue L1;
+       break;
+      }
+     default:
+      {
+       $$0243 = 0;
+       $$0247 = $$1248;
+       $$0269 = $$3272;
+       $$0321 = $158;
+       continue L1;
+      }
+     }
+     break;
+    }
+   case 112:
+    {
+     $215 = $$0254 >>> 0 > 8;
+     $216 = $215 ? $$0254 : 8;
+     $217 = $$1263$ | 8;
+     $$1236 = 120;
+     $$1255 = $216;
+     $$3265 = $217;
+     label = 63;
+     break;
+    }
+   case 88:
+   case 120:
+    {
+     $$1236 = $$0235;
+     $$1255 = $$0254;
+     $$3265 = $$1263$;
+     label = 63;
+     break;
+    }
+   case 111:
+    {
+     $257 = $9;
+     $258 = $257;
+     $259 = SAFE_HEAP_LOAD($258 | 0, 4, 0) | 0 | 0;
+     $260 = $257 + 4 | 0;
+     $261 = $260;
+     $262 = SAFE_HEAP_LOAD($261 | 0, 4, 0) | 0 | 0;
+     $263 = ($259 | 0) == 0;
+     $264 = ($262 | 0) == 0;
+     $265 = $263 & $264;
+     if ($265) {
+      $$0$lcssa$i300 = $14;
+     } else {
+      $$06$i298 = $14;
+      $267 = $259;
+      $271 = $262;
+      while (1) {
+       $266 = $267 & 7;
+       $268 = $266 | 48;
+       $269 = $268 & 255;
+       $270 = $$06$i298 + -1 | 0;
+       SAFE_HEAP_STORE($270 >> 0 | 0, $269 | 0, 1);
+       $272 = _bitshift64Lshr($267 | 0, $271 | 0, 3) | 0;
+       $273 = tempRet0;
+       $274 = ($272 | 0) == 0;
+       $275 = ($273 | 0) == 0;
+       $276 = $274 & $275;
+       if ($276) {
+        $$0$lcssa$i300 = $270;
+        break;
+       } else {
+        $$06$i298 = $270;
+        $267 = $272;
+        $271 = $273;
+       }
+      }
+     }
+     $277 = $$1263$ & 8;
+     $278 = ($277 | 0) == 0;
+     if ($278) {
+      $$0228 = $$0$lcssa$i300;
+      $$1233 = 0;
+      $$1238 = 66982;
+      $$2256 = $$0254;
+      $$4266 = $$1263$;
+      label = 76;
+     } else {
+      $279 = $$0$lcssa$i300;
+      $280 = $15 - $279 | 0;
+      $281 = ($$0254 | 0) > ($280 | 0);
+      $282 = $280 + 1 | 0;
+      $$0254$ = $281 ? $$0254 : $282;
+      $$0228 = $$0$lcssa$i300;
+      $$1233 = 0;
+      $$1238 = 66982;
+      $$2256 = $$0254$;
+      $$4266 = $$1263$;
+      label = 76;
+     }
+     break;
+    }
+   case 105:
+   case 100:
+    {
+     $283 = $9;
+     $284 = $283;
+     $285 = SAFE_HEAP_LOAD($284 | 0, 4, 0) | 0 | 0;
+     $286 = $283 + 4 | 0;
+     $287 = $286;
+     $288 = SAFE_HEAP_LOAD($287 | 0, 4, 0) | 0 | 0;
+     $289 = ($288 | 0) < 0;
+     if ($289) {
+      $290 = _i64Subtract(0, 0, $285 | 0, $288 | 0) | 0;
+      $291 = tempRet0;
+      $292 = $9;
+      $293 = $292;
+      SAFE_HEAP_STORE($293 | 0, $290 | 0, 4);
+      $294 = $292 + 4 | 0;
+      $295 = $294;
+      SAFE_HEAP_STORE($295 | 0, $291 | 0, 4);
+      $$0232 = 1;
+      $$0237 = 66982;
+      $300 = $290;
+      $301 = $291;
+      label = 75;
+      break L74;
+     }
+     $296 = $$1263$ & 2048;
+     $297 = ($296 | 0) == 0;
+     if ($297) {
+      $298 = $$1263$ & 1;
+      $299 = ($298 | 0) == 0;
+      $$ = $299 ? 66982 : 66984;
+      $$0232 = $298;
+      $$0237 = $$;
+      $300 = $285;
+      $301 = $288;
+      label = 75;
+     } else {
+      $$0232 = 1;
+      $$0237 = 66983;
+      $300 = $285;
+      $301 = $288;
+      label = 75;
+     }
+     break;
+    }
+   case 117:
+    {
+     $188 = $9;
+     $189 = $188;
+     $190 = SAFE_HEAP_LOAD($189 | 0, 4, 0) | 0 | 0;
+     $191 = $188 + 4 | 0;
+     $192 = $191;
+     $193 = SAFE_HEAP_LOAD($192 | 0, 4, 0) | 0 | 0;
+     $$0232 = 0;
+     $$0237 = 66982;
+     $300 = $190;
+     $301 = $193;
+     label = 75;
+     break;
+    }
+   case 99:
+    {
+     $321 = $9;
+     $322 = $321;
+     $323 = SAFE_HEAP_LOAD($322 | 0, 4, 0) | 0 | 0;
+     $324 = $321 + 4 | 0;
+     $325 = $324;
+     $326 = SAFE_HEAP_LOAD($325 | 0, 4, 0) | 0 | 0;
+     $327 = $323 & 255;
+     SAFE_HEAP_STORE($16 >> 0 | 0, $327 | 0, 1);
+     $$2 = $16;
+     $$2234 = 0;
+     $$2239 = 66982;
+     $$2251 = $14;
+     $$5 = 1;
+     $$6268 = $187;
+     break;
+    }
+   case 109:
+    {
+     $328 = ___errno_location() | 0;
+     $329 = SAFE_HEAP_LOAD($328 | 0, 4, 0) | 0 | 0;
+     $330 = _strerror($329) | 0;
+     $$1 = $330;
+     label = 81;
+     break;
+    }
+   case 115:
+    {
+     $331 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+     $332 = ($331 | 0) != (0 | 0);
+     $333 = $332 ? $331 : 66992;
+     $$1 = $333;
+     label = 81;
+     break;
+    }
+   case 67:
+    {
+     $340 = $9;
+     $341 = $340;
+     $342 = SAFE_HEAP_LOAD($341 | 0, 4, 0) | 0 | 0;
+     $343 = $340 + 4 | 0;
+     $344 = $343;
+     $345 = SAFE_HEAP_LOAD($344 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($11 | 0, $342 | 0, 4);
+     SAFE_HEAP_STORE($17 | 0, 0 | 0, 4);
+     SAFE_HEAP_STORE($9 | 0, $11 | 0, 4);
+     $$4258458 = -1;
+     $809 = $11;
+     label = 85;
+     break;
+    }
+   case 83:
+    {
+     $$pre454 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+     $346 = ($$0254 | 0) == 0;
+     if ($346) {
+      _pad($0, 32, $$1260, 0, $$1263$);
+      $$0240$lcssa460 = 0;
+      label = 96;
+     } else {
+      $$4258458 = $$0254;
+      $809 = $$pre454;
+      label = 85;
+     }
+     break;
+    }
+   case 65:
+   case 71:
+   case 70:
+   case 69:
+   case 97:
+   case 103:
+   case 102:
+   case 101:
+    {
+     $371 = +(+SAFE_HEAP_LOAD_D($9 | 0, 8));
+     SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+     SAFE_HEAP_STORE_D(tempDoublePtr | 0, +$371, 8);
+     $372 = SAFE_HEAP_LOAD(tempDoublePtr | 0, 4, 0) | 0 | 0;
+     $373 = SAFE_HEAP_LOAD(tempDoublePtr + 4 | 0, 4, 0) | 0 | 0;
+     $374 = ($373 | 0) < 0;
+     if ($374) {
+      $375 = -$371;
+      $$0471$i = $375;
+      $$0520$i = 1;
+      $$0521$i = 66999;
+     } else {
+      $376 = $$1263$ & 2048;
+      $377 = ($376 | 0) == 0;
+      $378 = $$1263$ & 1;
+      if ($377) {
+       $379 = ($378 | 0) == 0;
+       $$$i = $379 ? 67e3 : 67005;
+       $$0471$i = $371;
+       $$0520$i = $378;
+       $$0521$i = $$$i;
+      } else {
+       $$0471$i = $371;
+       $$0520$i = 1;
+       $$0521$i = 67002;
+      }
+     }
+     SAFE_HEAP_STORE_D(tempDoublePtr | 0, +$$0471$i, 8);
+     $380 = SAFE_HEAP_LOAD(tempDoublePtr | 0, 4, 0) | 0 | 0;
+     $381 = SAFE_HEAP_LOAD(tempDoublePtr + 4 | 0, 4, 0) | 0 | 0;
+     $382 = $381 & 2146435072;
+     $383 = $382 >>> 0 < 2146435072;
+     $384 = 0 < 0;
+     $385 = ($382 | 0) == 2146435072;
+     $386 = $385 & $384;
+     $387 = $383 | $386;
+     do {
+      if ($387) {
+       $403 = +_frexpl($$0471$i, $6);
+       $404 = $403 * 2.0;
+       $405 = $404 != 0.0;
+       if ($405) {
+        $406 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        $407 = $406 + -1 | 0;
+        SAFE_HEAP_STORE($6 | 0, $407 | 0, 4);
+       }
+       $408 = $$0235 | 32;
+       $409 = ($408 | 0) == 97;
+       if ($409) {
+        $410 = $$0235 & 32;
+        $411 = ($410 | 0) == 0;
+        $412 = $$0521$i + 9 | 0;
+        $$0521$$i = $411 ? $$0521$i : $412;
+        $413 = $$0520$i | 2;
+        $414 = $$0254 >>> 0 > 11;
+        $415 = 12 - $$0254 | 0;
+        $416 = ($415 | 0) == 0;
+        $417 = $414 | $416;
+        do {
+         if ($417) {
+          $$1472$i = $404;
+         } else {
+          $$0509591$i = 8.0;
+          $$1508592$i = $415;
+          while (1) {
+           $418 = $$1508592$i + -1 | 0;
+           $419 = $$0509591$i * 16.0;
+           $420 = ($418 | 0) == 0;
+           if ($420) {
+            break;
+           } else {
+            $$0509591$i = $419;
+            $$1508592$i = $418;
+           }
+          }
+          $421 = SAFE_HEAP_LOAD($$0521$$i >> 0 | 0, 1, 0) | 0 | 0;
+          $422 = $421 << 24 >> 24 == 45;
+          if ($422) {
+           $423 = -$404;
+           $424 = $423 - $419;
+           $425 = $419 + $424;
+           $426 = -$425;
+           $$1472$i = $426;
+           break;
+          } else {
+           $427 = $404 + $419;
+           $428 = $427 - $419;
+           $$1472$i = $428;
+           break;
+          }
+         }
+        } while (0);
+        $429 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        $430 = ($429 | 0) < 0;
+        $431 = 0 - $429 | 0;
+        $432 = $430 ? $431 : $429;
+        $433 = ($432 | 0) < 0;
+        $434 = $433 << 31 >> 31;
+        $435 = _fmt_u($432, $434, $20) | 0;
+        $436 = ($435 | 0) == ($20 | 0);
+        if ($436) {
+         SAFE_HEAP_STORE($21 >> 0 | 0, 48 | 0, 1);
+         $$0511$i = $21;
+        } else {
+         $$0511$i = $435;
+        }
+        $437 = $429 >> 31;
+        $438 = $437 & 2;
+        $439 = $438 + 43 | 0;
+        $440 = $439 & 255;
+        $441 = $$0511$i + -1 | 0;
+        SAFE_HEAP_STORE($441 >> 0 | 0, $440 | 0, 1);
+        $442 = $$0235 + 15 | 0;
+        $443 = $442 & 255;
+        $444 = $$0511$i + -2 | 0;
+        SAFE_HEAP_STORE($444 >> 0 | 0, $443 | 0, 1);
+        $notrhs$i = ($$0254 | 0) < 1;
+        $445 = $$1263$ & 8;
+        $446 = ($445 | 0) == 0;
+        $$0523$i = $7;
+        $$2473$i = $$1472$i;
+        while (1) {
+         $447 = ~~$$2473$i;
+         $448 = 66966 + $447 | 0;
+         $449 = SAFE_HEAP_LOAD($448 >> 0 | 0, 1, 0) | 0 | 0;
+         $450 = $449 & 255;
+         $451 = $450 | $410;
+         $452 = $451 & 255;
+         $453 = $$0523$i + 1 | 0;
+         SAFE_HEAP_STORE($$0523$i >> 0 | 0, $452 | 0, 1);
+         $454 = +($447 | 0);
+         $455 = $$2473$i - $454;
+         $456 = $455 * 16.0;
+         $457 = $453;
+         $458 = $457 - $18 | 0;
+         $459 = ($458 | 0) == 1;
+         do {
+          if ($459) {
+           $notlhs$i = $456 == 0.0;
+           $or$cond3$not$i = $notrhs$i & $notlhs$i;
+           $or$cond$i = $446 & $or$cond3$not$i;
+           if ($or$cond$i) {
+            $$1524$i = $453;
+            break;
+           }
+           $460 = $$0523$i + 2 | 0;
+           SAFE_HEAP_STORE($453 >> 0 | 0, 46 | 0, 1);
+           $$1524$i = $460;
+          } else {
+           $$1524$i = $453;
+          }
+         } while (0);
+         $461 = $456 != 0.0;
+         if ($461) {
+          $$0523$i = $$1524$i;
+          $$2473$i = $456;
+         } else {
+          break;
+         }
+        }
+        $462 = ($$0254 | 0) != 0;
+        $$pre699$i = $$1524$i;
+        $463 = $24 + $$pre699$i | 0;
+        $464 = ($463 | 0) < ($$0254 | 0);
+        $or$cond412 = $462 & $464;
+        $465 = $444;
+        $466 = $25 + $$0254 | 0;
+        $467 = $466 - $465 | 0;
+        $468 = $23 - $465 | 0;
+        $469 = $468 + $$pre699$i | 0;
+        $$0525$i = $or$cond412 ? $467 : $469;
+        $470 = $$0525$i + $413 | 0;
+        _pad($0, 32, $$1260, $470, $$1263$);
+        $471 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+        $472 = $471 & 32;
+        $473 = ($472 | 0) == 0;
+        if ($473) {
+         ___fwritex($$0521$$i, $413, $0) | 0;
+        }
+        $474 = $$1263$ ^ 65536;
+        _pad($0, 48, $$1260, $470, $474);
+        $475 = $$pre699$i - $18 | 0;
+        $476 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+        $477 = $476 & 32;
+        $478 = ($477 | 0) == 0;
+        if ($478) {
+         ___fwritex($7, $475, $0) | 0;
+        }
+        $479 = $22 - $465 | 0;
+        $sum = $475 + $479 | 0;
+        $480 = $$0525$i - $sum | 0;
+        _pad($0, 48, $480, 0, 0);
+        $481 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+        $482 = $481 & 32;
+        $483 = ($482 | 0) == 0;
+        if ($483) {
+         ___fwritex($444, $479, $0) | 0;
+        }
+        $484 = $$1263$ ^ 8192;
+        _pad($0, 32, $$1260, $470, $484);
+        $485 = ($470 | 0) < ($$1260 | 0);
+        $$536$i = $485 ? $$1260 : $470;
+        $$0470$i = $$536$i;
+        break;
+       }
+       $486 = ($$0254 | 0) < 0;
+       $$537$i = $486 ? 6 : $$0254;
+       if ($405) {
+        $487 = $404 * 268435456.0;
+        $488 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        $489 = $488 + -28 | 0;
+        SAFE_HEAP_STORE($6 | 0, $489 | 0, 4);
+        $$3$i = $487;
+        $$pr$i = $489;
+       } else {
+        $$pre696$i = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        $$3$i = $404;
+        $$pr$i = $$pre696$i;
+       }
+       $490 = ($$pr$i | 0) < 0;
+       $$553$i = $490 ? $5 : $26;
+       $$0498$i = $$553$i;
+       $$4$i = $$3$i;
+       while (1) {
+        $491 = ~~$$4$i >>> 0;
+        SAFE_HEAP_STORE($$0498$i | 0, $491 | 0, 4);
+        $492 = $$0498$i + 4 | 0;
+        $493 = +($491 >>> 0);
+        $494 = $$4$i - $493;
+        $495 = $494 * 1.0e9;
+        $496 = $495 != 0.0;
+        if ($496) {
+         $$0498$i = $492;
+         $$4$i = $495;
+        } else {
+         break;
+        }
+       }
+       $497 = ($$pr$i | 0) > 0;
+       if ($497) {
+        $$1482670$i = $$553$i;
+        $$1499669$i = $492;
+        $498 = $$pr$i;
+        while (1) {
+         $499 = ($498 | 0) > 29;
+         $500 = $499 ? 29 : $498;
+         $$0488662$i = $$1499669$i + -4 | 0;
+         $501 = $$0488662$i >>> 0 < $$1482670$i >>> 0;
+         do {
+          if ($501) {
+           $$2483$ph$i = $$1482670$i;
+          } else {
+           $$0488664$i = $$0488662$i;
+           $$0497663$i = 0;
+           while (1) {
+            $502 = SAFE_HEAP_LOAD($$0488664$i | 0, 4, 0) | 0 | 0;
+            $503 = _bitshift64Shl($502 | 0, 0, $500 | 0) | 0;
+            $504 = tempRet0;
+            $505 = _i64Add($503 | 0, $504 | 0, $$0497663$i | 0, 0) | 0;
+            $506 = tempRet0;
+            $507 = ___uremdi3($505 | 0, $506 | 0, 1e9, 0) | 0;
+            $508 = tempRet0;
+            SAFE_HEAP_STORE($$0488664$i | 0, $507 | 0, 4);
+            $509 = ___udivdi3($505 | 0, $506 | 0, 1e9, 0) | 0;
+            $510 = tempRet0;
+            $$0488$i = $$0488664$i + -4 | 0;
+            $511 = $$0488$i >>> 0 < $$1482670$i >>> 0;
+            if ($511) {
+             break;
+            } else {
+             $$0488664$i = $$0488$i;
+             $$0497663$i = $509;
+            }
+           }
+           $512 = ($509 | 0) == 0;
+           if ($512) {
+            $$2483$ph$i = $$1482670$i;
+            break;
+           }
+           $513 = $$1482670$i + -4 | 0;
+           SAFE_HEAP_STORE($513 | 0, $509 | 0, 4);
+           $$2483$ph$i = $513;
+          }
+         } while (0);
+         $$2500$i = $$1499669$i;
+         while (1) {
+          $514 = $$2500$i >>> 0 > $$2483$ph$i >>> 0;
+          if (!$514) {
+           break;
+          }
+          $515 = $$2500$i + -4 | 0;
+          $516 = SAFE_HEAP_LOAD($515 | 0, 4, 0) | 0 | 0;
+          $517 = ($516 | 0) == 0;
+          if ($517) {
+           $$2500$i = $515;
+          } else {
+           break;
+          }
+         }
+         $518 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+         $519 = $518 - $500 | 0;
+         SAFE_HEAP_STORE($6 | 0, $519 | 0, 4);
+         $520 = ($519 | 0) > 0;
+         if ($520) {
+          $$1482670$i = $$2483$ph$i;
+          $$1499669$i = $$2500$i;
+          $498 = $519;
+         } else {
+          $$1482$lcssa$i = $$2483$ph$i;
+          $$1499$lcssa$i = $$2500$i;
+          $$pr570$i = $519;
+          break;
+         }
+        }
+       } else {
+        $$1482$lcssa$i = $$553$i;
+        $$1499$lcssa$i = $492;
+        $$pr570$i = $$pr$i;
+       }
+       $521 = ($$pr570$i | 0) < 0;
+       if ($521) {
+        $522 = $$537$i + 25 | 0;
+        $523 = ($522 | 0) / 9 & -1;
+        $524 = $523 + 1 | 0;
+        $525 = ($408 | 0) == 102;
+        $$3484657$i = $$1482$lcssa$i;
+        $$3501656$i = $$1499$lcssa$i;
+        $527 = $$pr570$i;
+        while (1) {
+         $526 = 0 - $527 | 0;
+         $528 = ($526 | 0) > 9;
+         $529 = $528 ? 9 : $526;
+         $530 = $$3484657$i >>> 0 < $$3501656$i >>> 0;
+         do {
+          if ($530) {
+           $534 = 1 << $529;
+           $535 = $534 + -1 | 0;
+           $536 = 1e9 >>> $529;
+           $$0487651$i = 0;
+           $$1489650$i = $$3484657$i;
+           while (1) {
+            $537 = SAFE_HEAP_LOAD($$1489650$i | 0, 4, 0) | 0 | 0;
+            $538 = $537 & $535;
+            $539 = $537 >>> $529;
+            $540 = $539 + $$0487651$i | 0;
+            SAFE_HEAP_STORE($$1489650$i | 0, $540 | 0, 4);
+            $541 = Math_imul($538, $536) | 0;
+            $542 = $$1489650$i + 4 | 0;
+            $543 = $542 >>> 0 < $$3501656$i >>> 0;
+            if ($543) {
+             $$0487651$i = $541;
+             $$1489650$i = $542;
+            } else {
+             break;
+            }
+           }
+           $544 = SAFE_HEAP_LOAD($$3484657$i | 0, 4, 0) | 0 | 0;
+           $545 = ($544 | 0) == 0;
+           $546 = $$3484657$i + 4 | 0;
+           $$$3484$i = $545 ? $546 : $$3484657$i;
+           $547 = ($541 | 0) == 0;
+           if ($547) {
+            $$$3484705$i = $$$3484$i;
+            $$4502$i = $$3501656$i;
+            break;
+           }
+           $548 = $$3501656$i + 4 | 0;
+           SAFE_HEAP_STORE($$3501656$i | 0, $541 | 0, 4);
+           $$$3484705$i = $$$3484$i;
+           $$4502$i = $548;
+          } else {
+           $531 = SAFE_HEAP_LOAD($$3484657$i | 0, 4, 0) | 0 | 0;
+           $532 = ($531 | 0) == 0;
+           $533 = $$3484657$i + 4 | 0;
+           $$$3484704$i = $532 ? $533 : $$3484657$i;
+           $$$3484705$i = $$$3484704$i;
+           $$4502$i = $$3501656$i;
+          }
+         } while (0);
+         $549 = $525 ? $$553$i : $$$3484705$i;
+         $550 = $$4502$i;
+         $551 = $549;
+         $552 = $550 - $551 | 0;
+         $553 = $552 >> 2;
+         $554 = ($553 | 0) > ($524 | 0);
+         $555 = $549 + ($524 << 2) | 0;
+         $$$4502$i = $554 ? $555 : $$4502$i;
+         $556 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+         $557 = $556 + $529 | 0;
+         SAFE_HEAP_STORE($6 | 0, $557 | 0, 4);
+         $558 = ($557 | 0) < 0;
+         if ($558) {
+          $$3484657$i = $$$3484705$i;
+          $$3501656$i = $$$4502$i;
+          $527 = $557;
+         } else {
+          $$3484$lcssa$i = $$$3484705$i;
+          $$3501$lcssa$i = $$$4502$i;
+          break;
+         }
+        }
+       } else {
+        $$3484$lcssa$i = $$1482$lcssa$i;
+        $$3501$lcssa$i = $$1499$lcssa$i;
+       }
+       $559 = $$3484$lcssa$i >>> 0 < $$3501$lcssa$i >>> 0;
+       $560 = $$553$i;
+       do {
+        if ($559) {
+         $561 = $$3484$lcssa$i;
+         $562 = $560 - $561 | 0;
+         $563 = $562 >> 2;
+         $564 = $563 * 9 | 0;
+         $565 = SAFE_HEAP_LOAD($$3484$lcssa$i | 0, 4, 0) | 0 | 0;
+         $566 = $565 >>> 0 < 10;
+         if ($566) {
+          $$1515$i = $564;
+          break;
+         } else {
+          $$0514646$i = $564;
+          $$0530645$i = 10;
+         }
+         while (1) {
+          $567 = $$0530645$i * 10 | 0;
+          $568 = $$0514646$i + 1 | 0;
+          $569 = $565 >>> 0 < $567 >>> 0;
+          if ($569) {
+           $$1515$i = $568;
+           break;
+          } else {
+           $$0514646$i = $568;
+           $$0530645$i = $567;
+          }
+         }
+        } else {
+         $$1515$i = 0;
+        }
+       } while (0);
+       $570 = ($408 | 0) != 102;
+       $571 = $570 ? $$1515$i : 0;
+       $572 = $$537$i - $571 | 0;
+       $573 = ($408 | 0) == 103;
+       $574 = ($$537$i | 0) != 0;
+       $575 = $574 & $573;
+       $$neg$i = $575 << 31 >> 31;
+       $576 = $572 + $$neg$i | 0;
+       $577 = $$3501$lcssa$i;
+       $578 = $577 - $560 | 0;
+       $579 = $578 >> 2;
+       $580 = $579 * 9 | 0;
+       $581 = $580 + -9 | 0;
+       $582 = ($576 | 0) < ($581 | 0);
+       if ($582) {
+        $583 = $$553$i + 4 | 0;
+        $584 = $576 + 9216 | 0;
+        $585 = ($584 | 0) / 9 & -1;
+        $586 = $585 + -1024 | 0;
+        $587 = $583 + ($586 << 2) | 0;
+        $588 = ($584 | 0) % 9 & -1;
+        $$0527638$i = $588 + 1 | 0;
+        $589 = ($$0527638$i | 0) < 9;
+        if ($589) {
+         $$0527640$i = $$0527638$i;
+         $$1531639$i = 10;
+         while (1) {
+          $590 = $$1531639$i * 10 | 0;
+          $$0527$i = $$0527640$i + 1 | 0;
+          $exitcond$i = ($$0527$i | 0) == 9;
+          if ($exitcond$i) {
+           $$1531$lcssa$i = $590;
+           break;
+          } else {
+           $$0527640$i = $$0527$i;
+           $$1531639$i = $590;
+          }
+         }
+        } else {
+         $$1531$lcssa$i = 10;
+        }
+        $591 = SAFE_HEAP_LOAD($587 | 0, 4, 0) | 0 | 0;
+        $592 = ($591 >>> 0) % ($$1531$lcssa$i >>> 0) & -1;
+        $593 = ($592 | 0) == 0;
+        $594 = $587 + 4 | 0;
+        $595 = ($594 | 0) == ($$3501$lcssa$i | 0);
+        $or$cond539$i = $595 & $593;
+        do {
+         if ($or$cond539$i) {
+          $$4492$i = $587;
+          $$4518$i = $$1515$i;
+          $$8$i = $$3484$lcssa$i;
+         } else {
+          $596 = ($591 >>> 0) / ($$1531$lcssa$i >>> 0) & -1;
+          $597 = $596 & 1;
+          $598 = ($597 | 0) == 0;
+          $$540$i = $598 ? 9007199254740992.0 : 9007199254740994.0;
+          $599 = ($$1531$lcssa$i | 0) / 2 & -1;
+          $600 = $592 >>> 0 < $599 >>> 0;
+          if ($600) {
+           $$0466$i = .5;
+          } else {
+           $601 = ($592 | 0) == ($599 | 0);
+           $or$cond542$i = $595 & $601;
+           $$556$i = $or$cond542$i ? 1.0 : 1.5;
+           $$0466$i = $$556$i;
+          }
+          $602 = ($$0520$i | 0) == 0;
+          do {
+           if ($602) {
+            $$1467$i = $$0466$i;
+            $$1469$i = $$540$i;
+           } else {
+            $603 = SAFE_HEAP_LOAD($$0521$i >> 0 | 0, 1, 0) | 0 | 0;
+            $604 = $603 << 24 >> 24 == 45;
+            if (!$604) {
+             $$1467$i = $$0466$i;
+             $$1469$i = $$540$i;
+             break;
+            }
+            $605 = -$$540$i;
+            $606 = -$$0466$i;
+            $$1467$i = $606;
+            $$1469$i = $605;
+           }
+          } while (0);
+          $607 = $591 - $592 | 0;
+          SAFE_HEAP_STORE($587 | 0, $607 | 0, 4);
+          $608 = $$1469$i + $$1467$i;
+          $609 = $608 != $$1469$i;
+          if (!$609) {
+           $$4492$i = $587;
+           $$4518$i = $$1515$i;
+           $$8$i = $$3484$lcssa$i;
+           break;
+          }
+          $610 = $607 + $$1531$lcssa$i | 0;
+          SAFE_HEAP_STORE($587 | 0, $610 | 0, 4);
+          $611 = $610 >>> 0 > 999999999;
+          if ($611) {
+           $$2490631$i = $587;
+           $$5486632$i = $$3484$lcssa$i;
+           while (1) {
+            $612 = $$2490631$i + -4 | 0;
+            SAFE_HEAP_STORE($$2490631$i | 0, 0 | 0, 4);
+            $613 = $612 >>> 0 < $$5486632$i >>> 0;
+            if ($613) {
+             $614 = $$5486632$i + -4 | 0;
+             SAFE_HEAP_STORE($614 | 0, 0 | 0, 4);
+             $$6$i = $614;
+            } else {
+             $$6$i = $$5486632$i;
+            }
+            $615 = SAFE_HEAP_LOAD($612 | 0, 4, 0) | 0 | 0;
+            $616 = $615 + 1 | 0;
+            SAFE_HEAP_STORE($612 | 0, $616 | 0, 4);
+            $617 = $616 >>> 0 > 999999999;
+            if ($617) {
+             $$2490631$i = $612;
+             $$5486632$i = $$6$i;
+            } else {
+             $$2490$lcssa$i = $612;
+             $$5486$lcssa$i = $$6$i;
+             break;
+            }
+           }
+          } else {
+           $$2490$lcssa$i = $587;
+           $$5486$lcssa$i = $$3484$lcssa$i;
+          }
+          $618 = $$5486$lcssa$i;
+          $619 = $560 - $618 | 0;
+          $620 = $619 >> 2;
+          $621 = $620 * 9 | 0;
+          $622 = SAFE_HEAP_LOAD($$5486$lcssa$i | 0, 4, 0) | 0 | 0;
+          $623 = $622 >>> 0 < 10;
+          if ($623) {
+           $$4492$i = $$2490$lcssa$i;
+           $$4518$i = $621;
+           $$8$i = $$5486$lcssa$i;
+           break;
+          } else {
+           $$2516627$i = $621;
+           $$2532626$i = 10;
+          }
+          while (1) {
+           $624 = $$2532626$i * 10 | 0;
+           $625 = $$2516627$i + 1 | 0;
+           $626 = $622 >>> 0 < $624 >>> 0;
+           if ($626) {
+            $$4492$i = $$2490$lcssa$i;
+            $$4518$i = $625;
+            $$8$i = $$5486$lcssa$i;
+            break;
+           } else {
+            $$2516627$i = $625;
+            $$2532626$i = $624;
+           }
+          }
+         }
+        } while (0);
+        $627 = $$4492$i + 4 | 0;
+        $628 = $$3501$lcssa$i >>> 0 > $627 >>> 0;
+        $$$3501$i = $628 ? $627 : $$3501$lcssa$i;
+        $$5519$ph$i = $$4518$i;
+        $$7505$ph$i = $$$3501$i;
+        $$9$ph$i = $$8$i;
+       } else {
+        $$5519$ph$i = $$1515$i;
+        $$7505$ph$i = $$3501$lcssa$i;
+        $$9$ph$i = $$3484$lcssa$i;
+       }
+       $629 = 0 - $$5519$ph$i | 0;
+       $$7505$i = $$7505$ph$i;
+       while (1) {
+        $630 = $$7505$i >>> 0 > $$9$ph$i >>> 0;
+        if (!$630) {
+         $$lcssa682$i = 0;
+         break;
+        }
+        $631 = $$7505$i + -4 | 0;
+        $632 = SAFE_HEAP_LOAD($631 | 0, 4, 0) | 0 | 0;
+        $633 = ($632 | 0) == 0;
+        if ($633) {
+         $$7505$i = $631;
+        } else {
+         $$lcssa682$i = 1;
+         break;
+        }
+       }
+       do {
+        if ($573) {
+         $634 = $574 & 1;
+         $635 = $634 ^ 1;
+         $$537$$i = $635 + $$537$i | 0;
+         $636 = ($$537$$i | 0) > ($$5519$ph$i | 0);
+         $637 = ($$5519$ph$i | 0) > -5;
+         $or$cond6$i = $636 & $637;
+         if ($or$cond6$i) {
+          $638 = $$0235 + -1 | 0;
+          $$neg571$i = $$537$$i + -1 | 0;
+          $639 = $$neg571$i - $$5519$ph$i | 0;
+          $$0479$i = $638;
+          $$2476$i = $639;
+         } else {
+          $640 = $$0235 + -2 | 0;
+          $641 = $$537$$i + -1 | 0;
+          $$0479$i = $640;
+          $$2476$i = $641;
+         }
+         $642 = $$1263$ & 8;
+         $643 = ($642 | 0) == 0;
+         if (!$643) {
+          $$1480$i = $$0479$i;
+          $$3477$i = $$2476$i;
+          $$pre$phi703$iZ2D = $642;
+          break;
+         }
+         do {
+          if ($$lcssa682$i) {
+           $644 = $$7505$i + -4 | 0;
+           $645 = SAFE_HEAP_LOAD($644 | 0, 4, 0) | 0 | 0;
+           $646 = ($645 | 0) == 0;
+           if ($646) {
+            $$2529$i = 9;
+            break;
+           }
+           $647 = ($645 >>> 0) % 10 & -1;
+           $648 = ($647 | 0) == 0;
+           if ($648) {
+            $$1528623$i = 0;
+            $$3533622$i = 10;
+           } else {
+            $$2529$i = 0;
+            break;
+           }
+           while (1) {
+            $649 = $$3533622$i * 10 | 0;
+            $650 = $$1528623$i + 1 | 0;
+            $651 = ($645 >>> 0) % ($649 >>> 0) & -1;
+            $652 = ($651 | 0) == 0;
+            if ($652) {
+             $$1528623$i = $650;
+             $$3533622$i = $649;
+            } else {
+             $$2529$i = $650;
+             break;
+            }
+           }
+          } else {
+           $$2529$i = 9;
+          }
+         } while (0);
+         $653 = $$0479$i | 32;
+         $654 = ($653 | 0) == 102;
+         $655 = $$7505$i;
+         $656 = $655 - $560 | 0;
+         $657 = $656 >> 2;
+         $658 = $657 * 9 | 0;
+         $659 = $658 + -9 | 0;
+         if ($654) {
+          $660 = $659 - $$2529$i | 0;
+          $661 = ($660 | 0) < 0;
+          $$543$i = $661 ? 0 : $660;
+          $662 = ($$2476$i | 0) < ($$543$i | 0);
+          $$2476$$544$i = $662 ? $$2476$i : $$543$i;
+          $$1480$i = $$0479$i;
+          $$3477$i = $$2476$$544$i;
+          $$pre$phi703$iZ2D = 0;
+          break;
+         } else {
+          $663 = $659 + $$5519$ph$i | 0;
+          $664 = $663 - $$2529$i | 0;
+          $665 = ($664 | 0) < 0;
+          $$545$i = $665 ? 0 : $664;
+          $666 = ($$2476$i | 0) < ($$545$i | 0);
+          $$2476$$546$i = $666 ? $$2476$i : $$545$i;
+          $$1480$i = $$0479$i;
+          $$3477$i = $$2476$$546$i;
+          $$pre$phi703$iZ2D = 0;
+          break;
+         }
+        } else {
+         $$pre702$i = $$1263$ & 8;
+         $$1480$i = $$0235;
+         $$3477$i = $$537$i;
+         $$pre$phi703$iZ2D = $$pre702$i;
+        }
+       } while (0);
+       $667 = $$3477$i | $$pre$phi703$iZ2D;
+       $668 = ($667 | 0) != 0;
+       $669 = $668 & 1;
+       $670 = $$1480$i | 32;
+       $671 = ($670 | 0) == 102;
+       if ($671) {
+        $672 = ($$5519$ph$i | 0) > 0;
+        $673 = $672 ? $$5519$ph$i : 0;
+        $$2513$i = 0;
+        $$pn$i = $673;
+       } else {
+        $674 = ($$5519$ph$i | 0) < 0;
+        $675 = $674 ? $629 : $$5519$ph$i;
+        $676 = ($675 | 0) < 0;
+        $677 = $676 << 31 >> 31;
+        $678 = _fmt_u($675, $677, $20) | 0;
+        $679 = $678;
+        $680 = $22 - $679 | 0;
+        $681 = ($680 | 0) < 2;
+        if ($681) {
+         $$1512616$i = $678;
+         while (1) {
+          $682 = $$1512616$i + -1 | 0;
+          SAFE_HEAP_STORE($682 >> 0 | 0, 48 | 0, 1);
+          $683 = $682;
+          $684 = $22 - $683 | 0;
+          $685 = ($684 | 0) < 2;
+          if ($685) {
+           $$1512616$i = $682;
+          } else {
+           $$1512$lcssa$i = $682;
+           break;
+          }
+         }
+        } else {
+         $$1512$lcssa$i = $678;
+        }
+        $686 = $$5519$ph$i >> 31;
+        $687 = $686 & 2;
+        $688 = $687 + 43 | 0;
+        $689 = $688 & 255;
+        $690 = $$1512$lcssa$i + -1 | 0;
+        SAFE_HEAP_STORE($690 >> 0 | 0, $689 | 0, 1);
+        $691 = $$1480$i & 255;
+        $692 = $$1512$lcssa$i + -2 | 0;
+        SAFE_HEAP_STORE($692 >> 0 | 0, $691 | 0, 1);
+        $693 = $692;
+        $694 = $22 - $693 | 0;
+        $$2513$i = $692;
+        $$pn$i = $694;
+       }
+       $695 = $$0520$i + 1 | 0;
+       $696 = $695 + $$3477$i | 0;
+       $$1526$i = $696 + $669 | 0;
+       $697 = $$1526$i + $$pn$i | 0;
+       _pad($0, 32, $$1260, $697, $$1263$);
+       $698 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+       $699 = $698 & 32;
+       $700 = ($699 | 0) == 0;
+       if ($700) {
+        ___fwritex($$0521$i, $$0520$i, $0) | 0;
+       }
+       $701 = $$1263$ ^ 65536;
+       _pad($0, 48, $$1260, $697, $701);
+       do {
+        if ($671) {
+         $702 = $$9$ph$i >>> 0 > $$553$i >>> 0;
+         $$0496$$9$i = $702 ? $$553$i : $$9$ph$i;
+         $$5493605$i = $$0496$$9$i;
+         while (1) {
+          $703 = SAFE_HEAP_LOAD($$5493605$i | 0, 4, 0) | 0 | 0;
+          $704 = _fmt_u($703, 0, $27) | 0;
+          $705 = ($$5493605$i | 0) == ($$0496$$9$i | 0);
+          do {
+           if ($705) {
+            $711 = ($704 | 0) == ($27 | 0);
+            if (!$711) {
+             $$1465$i = $704;
+             break;
+            }
+            SAFE_HEAP_STORE($29 >> 0 | 0, 48 | 0, 1);
+            $$1465$i = $29;
+           } else {
+            $706 = $704 >>> 0 > $7 >>> 0;
+            if (!$706) {
+             $$1465$i = $704;
+             break;
+            }
+            $707 = $704;
+            $708 = $707 - $18 | 0;
+            _memset($7 | 0, 48, $708 | 0) | 0;
+            $$0464602$i = $704;
+            while (1) {
+             $709 = $$0464602$i + -1 | 0;
+             $710 = $709 >>> 0 > $7 >>> 0;
+             if ($710) {
+              $$0464602$i = $709;
+             } else {
+              $$1465$i = $709;
+              break;
+             }
+            }
+           }
+          } while (0);
+          $712 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+          $713 = $712 & 32;
+          $714 = ($713 | 0) == 0;
+          if ($714) {
+           $715 = $$1465$i;
+           $716 = $28 - $715 | 0;
+           ___fwritex($$1465$i, $716, $0) | 0;
+          }
+          $717 = $$5493605$i + 4 | 0;
+          $718 = $717 >>> 0 > $$553$i >>> 0;
+          if ($718) {
+           break;
+          } else {
+           $$5493605$i = $717;
+          }
+         }
+         $719 = ($667 | 0) == 0;
+         do {
+          if (!$719) {
+           $720 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+           $721 = $720 & 32;
+           $722 = ($721 | 0) == 0;
+           if (!$722) {
+            break;
+           }
+           ___fwritex(67034, 1, $0) | 0;
+          }
+         } while (0);
+         $723 = $717 >>> 0 < $$7505$i >>> 0;
+         $724 = ($$3477$i | 0) > 0;
+         $725 = $724 & $723;
+         if ($725) {
+          $$4478599$i = $$3477$i;
+          $$6494598$i = $717;
+          while (1) {
+           $726 = SAFE_HEAP_LOAD($$6494598$i | 0, 4, 0) | 0 | 0;
+           $727 = _fmt_u($726, 0, $27) | 0;
+           $728 = $727 >>> 0 > $7 >>> 0;
+           if ($728) {
+            $729 = $727;
+            $730 = $729 - $18 | 0;
+            _memset($7 | 0, 48, $730 | 0) | 0;
+            $$0463593$i = $727;
+            while (1) {
+             $731 = $$0463593$i + -1 | 0;
+             $732 = $731 >>> 0 > $7 >>> 0;
+             if ($732) {
+              $$0463593$i = $731;
+             } else {
+              $$0463$lcssa$i = $731;
+              break;
+             }
+            }
+           } else {
+            $$0463$lcssa$i = $727;
+           }
+           $733 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+           $734 = $733 & 32;
+           $735 = ($734 | 0) == 0;
+           if ($735) {
+            $736 = ($$4478599$i | 0) > 9;
+            $737 = $736 ? 9 : $$4478599$i;
+            ___fwritex($$0463$lcssa$i, $737, $0) | 0;
+           }
+           $738 = $$6494598$i + 4 | 0;
+           $739 = $$4478599$i + -9 | 0;
+           $740 = $738 >>> 0 < $$7505$i >>> 0;
+           $741 = ($$4478599$i | 0) > 9;
+           $742 = $741 & $740;
+           if ($742) {
+            $$4478599$i = $739;
+            $$6494598$i = $738;
+           } else {
+            $$4478$lcssa$i = $739;
+            break;
+           }
+          }
+         } else {
+          $$4478$lcssa$i = $$3477$i;
+         }
+         $743 = $$4478$lcssa$i + 9 | 0;
+         _pad($0, 48, $743, 9, 0);
+        } else {
+         $744 = $$9$ph$i + 4 | 0;
+         $$7505$$i = $$lcssa682$i ? $$7505$i : $744;
+         $745 = ($$3477$i | 0) > -1;
+         if ($745) {
+          $746 = ($$pre$phi703$iZ2D | 0) == 0;
+          $$5610$i = $$3477$i;
+          $$7495609$i = $$9$ph$i;
+          while (1) {
+           $747 = SAFE_HEAP_LOAD($$7495609$i | 0, 4, 0) | 0 | 0;
+           $748 = _fmt_u($747, 0, $27) | 0;
+           $749 = ($748 | 0) == ($27 | 0);
+           if ($749) {
+            SAFE_HEAP_STORE($29 >> 0 | 0, 48 | 0, 1);
+            $$0$i = $29;
+           } else {
+            $$0$i = $748;
+           }
+           $750 = ($$7495609$i | 0) == ($$9$ph$i | 0);
+           do {
+            if ($750) {
+             $754 = $$0$i + 1 | 0;
+             $755 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+             $756 = $755 & 32;
+             $757 = ($756 | 0) == 0;
+             if ($757) {
+              ___fwritex($$0$i, 1, $0) | 0;
+             }
+             $758 = ($$5610$i | 0) < 1;
+             $or$cond551$i = $746 & $758;
+             if ($or$cond551$i) {
+              $$2$i = $754;
+              break;
+             }
+             $759 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+             $760 = $759 & 32;
+             $761 = ($760 | 0) == 0;
+             if (!$761) {
+              $$2$i = $754;
+              break;
+             }
+             ___fwritex(67034, 1, $0) | 0;
+             $$2$i = $754;
+            } else {
+             $751 = $$0$i >>> 0 > $7 >>> 0;
+             if (!$751) {
+              $$2$i = $$0$i;
+              break;
+             }
+             $scevgep693$i = $$0$i + $19 | 0;
+             $scevgep693694$i = $scevgep693$i;
+             _memset($7 | 0, 48, $scevgep693694$i | 0) | 0;
+             $$1606$i = $$0$i;
+             while (1) {
+              $752 = $$1606$i + -1 | 0;
+              $753 = $752 >>> 0 > $7 >>> 0;
+              if ($753) {
+               $$1606$i = $752;
+              } else {
+               $$2$i = $752;
+               break;
+              }
+             }
+            }
+           } while (0);
+           $762 = $$2$i;
+           $763 = $28 - $762 | 0;
+           $764 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+           $765 = $764 & 32;
+           $766 = ($765 | 0) == 0;
+           if ($766) {
+            $767 = ($$5610$i | 0) > ($763 | 0);
+            $768 = $767 ? $763 : $$5610$i;
+            ___fwritex($$2$i, $768, $0) | 0;
+           }
+           $769 = $$5610$i - $763 | 0;
+           $770 = $$7495609$i + 4 | 0;
+           $771 = $770 >>> 0 < $$7505$$i >>> 0;
+           $772 = ($769 | 0) > -1;
+           $773 = $771 & $772;
+           if ($773) {
+            $$5610$i = $769;
+            $$7495609$i = $770;
+           } else {
+            $$5$lcssa$i = $769;
+            break;
+           }
+          }
+         } else {
+          $$5$lcssa$i = $$3477$i;
+         }
+         $774 = $$5$lcssa$i + 18 | 0;
+         _pad($0, 48, $774, 18, 0);
+         $775 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+         $776 = $775 & 32;
+         $777 = ($776 | 0) == 0;
+         if (!$777) {
+          break;
+         }
+         $778 = $$2513$i;
+         $779 = $22 - $778 | 0;
+         ___fwritex($$2513$i, $779, $0) | 0;
+        }
+       } while (0);
+       $780 = $$1263$ ^ 8192;
+       _pad($0, 32, $$1260, $697, $780);
+       $781 = ($697 | 0) < ($$1260 | 0);
+       $$552$i = $781 ? $$1260 : $697;
+       $$0470$i = $$552$i;
+      } else {
+       $388 = $$0235 & 32;
+       $389 = ($388 | 0) != 0;
+       $390 = $389 ? 67018 : 67022;
+       $391 = $$0471$i != $$0471$i | 0.0 != 0.0;
+       $392 = $389 ? 67026 : 67030;
+       $$0510$i = $391 ? $392 : $390;
+       $393 = $$0520$i + 3 | 0;
+       _pad($0, 32, $$1260, $393, $187);
+       $394 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+       $395 = $394 & 32;
+       $396 = ($395 | 0) == 0;
+       if ($396) {
+        ___fwritex($$0521$i, $$0520$i, $0) | 0;
+        $$pre$i = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+        $398 = $$pre$i;
+       } else {
+        $398 = $394;
+       }
+       $397 = $398 & 32;
+       $399 = ($397 | 0) == 0;
+       if ($399) {
+        ___fwritex($$0510$i, 3, $0) | 0;
+       }
+       $400 = $$1263$ ^ 8192;
+       _pad($0, 32, $$1260, $393, $400);
+       $401 = ($393 | 0) < ($$1260 | 0);
+       $402 = $401 ? $$1260 : $393;
+       $$0470$i = $402;
+      }
+     } while (0);
+     $$0243 = $$0470$i;
+     $$0247 = $$1248;
+     $$0269 = $$3272;
+     $$0321 = $158;
+     continue L1;
+     break;
+    }
+   default:
+    {
+     $$2 = $$0321;
+     $$2234 = 0;
+     $$2239 = 66982;
+     $$2251 = $14;
+     $$5 = $$0254;
+     $$6268 = $$1263$;
+    }
+   }
+  } while (0);
+  L310 : do {
+   if ((label | 0) == 63) {
+    label = 0;
+    $218 = $9;
+    $219 = $218;
+    $220 = SAFE_HEAP_LOAD($219 | 0, 4, 0) | 0 | 0;
+    $221 = $218 + 4 | 0;
+    $222 = $221;
+    $223 = SAFE_HEAP_LOAD($222 | 0, 4, 0) | 0 | 0;
+    $224 = $$1236 & 32;
+    $225 = ($220 | 0) == 0;
+    $226 = ($223 | 0) == 0;
+    $227 = $225 & $226;
+    if ($227) {
+     $$05$lcssa$i = $14;
+     $248 = 0;
+     $250 = 0;
+    } else {
+     $$056$i = $14;
+     $229 = $220;
+     $236 = $223;
+     while (1) {
+      $228 = $229 & 15;
+      $230 = 66966 + $228 | 0;
+      $231 = SAFE_HEAP_LOAD($230 >> 0 | 0, 1, 0) | 0 | 0;
+      $232 = $231 & 255;
+      $233 = $232 | $224;
+      $234 = $233 & 255;
+      $235 = $$056$i + -1 | 0;
+      SAFE_HEAP_STORE($235 >> 0 | 0, $234 | 0, 1);
+      $237 = _bitshift64Lshr($229 | 0, $236 | 0, 4) | 0;
+      $238 = tempRet0;
+      $239 = ($237 | 0) == 0;
+      $240 = ($238 | 0) == 0;
+      $241 = $239 & $240;
+      if ($241) {
+       break;
+      } else {
+       $$056$i = $235;
+       $229 = $237;
+       $236 = $238;
+      }
+     }
+     $242 = $9;
+     $243 = $242;
+     $244 = SAFE_HEAP_LOAD($243 | 0, 4, 0) | 0 | 0;
+     $245 = $242 + 4 | 0;
+     $246 = $245;
+     $247 = SAFE_HEAP_LOAD($246 | 0, 4, 0) | 0 | 0;
+     $$05$lcssa$i = $235;
+     $248 = $244;
+     $250 = $247;
+    }
+    $249 = ($248 | 0) == 0;
+    $251 = ($250 | 0) == 0;
+    $252 = $249 & $251;
+    $253 = $$3265 & 8;
+    $254 = ($253 | 0) == 0;
+    $or$cond282 = $254 | $252;
+    $255 = $$1236 >> 4;
+    $256 = 66982 + $255 | 0;
+    $$332 = $or$cond282 ? 66982 : $256;
+    $$333 = $or$cond282 ? 0 : 2;
+    $$0228 = $$05$lcssa$i;
+    $$1233 = $$333;
+    $$1238 = $$332;
+    $$2256 = $$1255;
+    $$4266 = $$3265;
+    label = 76;
+   } else if ((label | 0) == 75) {
+    label = 0;
+    $302 = _fmt_u($300, $301, $14) | 0;
+    $$0228 = $302;
+    $$1233 = $$0232;
+    $$1238 = $$0237;
+    $$2256 = $$0254;
+    $$4266 = $$1263$;
+    label = 76;
+   } else if ((label | 0) == 81) {
+    label = 0;
+    $334 = _memchr($$1, 0, $$0254) | 0;
+    $335 = ($334 | 0) == (0 | 0);
+    $336 = $334;
+    $337 = $$1;
+    $338 = $336 - $337 | 0;
+    $339 = $$1 + $$0254 | 0;
+    $$3257 = $335 ? $$0254 : $338;
+    $$1250 = $335 ? $339 : $334;
+    $$2 = $$1;
+    $$2234 = 0;
+    $$2239 = 66982;
+    $$2251 = $$1250;
+    $$5 = $$3257;
+    $$6268 = $187;
+   } else if ((label | 0) == 85) {
+    label = 0;
+    $$0229396 = $809;
+    $$0240395 = 0;
+    $$1244394 = 0;
+    while (1) {
+     $347 = SAFE_HEAP_LOAD($$0229396 | 0, 4, 0) | 0 | 0;
+     $348 = ($347 | 0) == 0;
+     if ($348) {
+      $$0240$lcssa = $$0240395;
+      $$2245 = $$1244394;
+      break;
+     }
+     $349 = _wctomb($12, $347) | 0;
+     $350 = ($349 | 0) < 0;
+     $351 = $$4258458 - $$0240395 | 0;
+     $352 = $349 >>> 0 > $351 >>> 0;
+     $or$cond285 = $350 | $352;
+     if ($or$cond285) {
+      $$0240$lcssa = $$0240395;
+      $$2245 = $349;
+      break;
+     }
+     $353 = $$0229396 + 4 | 0;
+     $354 = $349 + $$0240395 | 0;
+     $355 = $$4258458 >>> 0 > $354 >>> 0;
+     if ($355) {
+      $$0229396 = $353;
+      $$0240395 = $354;
+      $$1244394 = $349;
+     } else {
+      $$0240$lcssa = $354;
+      $$2245 = $349;
+      break;
+     }
+    }
+    $356 = ($$2245 | 0) < 0;
+    if ($356) {
+     $$0 = -1;
+     break L1;
+    }
+    _pad($0, 32, $$1260, $$0240$lcssa, $$1263$);
+    $357 = ($$0240$lcssa | 0) == 0;
+    if ($357) {
+     $$0240$lcssa460 = 0;
+     label = 96;
+    } else {
+     $$1230407 = $809;
+     $$1241406 = 0;
+     while (1) {
+      $358 = SAFE_HEAP_LOAD($$1230407 | 0, 4, 0) | 0 | 0;
+      $359 = ($358 | 0) == 0;
+      if ($359) {
+       $$0240$lcssa460 = $$0240$lcssa;
+       label = 96;
+       break L310;
+      }
+      $360 = $$1230407 + 4 | 0;
+      $361 = _wctomb($12, $358) | 0;
+      $362 = $361 + $$1241406 | 0;
+      $363 = ($362 | 0) > ($$0240$lcssa | 0);
+      if ($363) {
+       $$0240$lcssa460 = $$0240$lcssa;
+       label = 96;
+       break L310;
+      }
+      $364 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+      $365 = $364 & 32;
+      $366 = ($365 | 0) == 0;
+      if ($366) {
+       ___fwritex($12, $361, $0) | 0;
+      }
+      $367 = $362 >>> 0 < $$0240$lcssa >>> 0;
+      if ($367) {
+       $$1230407 = $360;
+       $$1241406 = $362;
+      } else {
+       $$0240$lcssa460 = $$0240$lcssa;
+       label = 96;
+       break;
+      }
+     }
+    }
+   }
+  } while (0);
+  if ((label | 0) == 96) {
+   label = 0;
+   $368 = $$1263$ ^ 8192;
+   _pad($0, 32, $$1260, $$0240$lcssa460, $368);
+   $369 = ($$1260 | 0) > ($$0240$lcssa460 | 0);
+   $370 = $369 ? $$1260 : $$0240$lcssa460;
+   $$0243 = $370;
+   $$0247 = $$1248;
+   $$0269 = $$3272;
+   $$0321 = $158;
+   continue;
+  }
+  if ((label | 0) == 76) {
+   label = 0;
+   $303 = ($$2256 | 0) > -1;
+   $304 = $$4266 & -65537;
+   $$$4266 = $303 ? $304 : $$4266;
+   $305 = $9;
+   $306 = $305;
+   $307 = SAFE_HEAP_LOAD($306 | 0, 4, 0) | 0 | 0;
+   $308 = $305 + 4 | 0;
+   $309 = $308;
+   $310 = SAFE_HEAP_LOAD($309 | 0, 4, 0) | 0 | 0;
+   $311 = ($307 | 0) != 0;
+   $312 = ($310 | 0) != 0;
+   $313 = $311 | $312;
+   $314 = ($$2256 | 0) != 0;
+   $or$cond = $314 | $313;
+   if ($or$cond) {
+    $315 = $$0228;
+    $316 = $15 - $315 | 0;
+    $317 = $313 & 1;
+    $318 = $317 ^ 1;
+    $319 = $318 + $316 | 0;
+    $320 = ($$2256 | 0) > ($319 | 0);
+    $$2256$ = $320 ? $$2256 : $319;
+    $$2 = $$0228;
+    $$2234 = $$1233;
+    $$2239 = $$1238;
+    $$2251 = $14;
+    $$5 = $$2256$;
+    $$6268 = $$$4266;
+   } else {
+    $$2 = $14;
+    $$2234 = $$1233;
+    $$2239 = $$1238;
+    $$2251 = $14;
+    $$5 = 0;
+    $$6268 = $$$4266;
+   }
+  }
+  $782 = $$2251;
+  $783 = $$2;
+  $784 = $782 - $783 | 0;
+  $785 = ($$5 | 0) < ($784 | 0);
+  $$$5 = $785 ? $784 : $$5;
+  $786 = $$$5 + $$2234 | 0;
+  $787 = ($$1260 | 0) < ($786 | 0);
+  $$2261 = $787 ? $786 : $$1260;
+  _pad($0, 32, $$2261, $786, $$6268);
+  $788 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $789 = $788 & 32;
+  $790 = ($789 | 0) == 0;
+  if ($790) {
+   ___fwritex($$2239, $$2234, $0) | 0;
+  }
+  $791 = $$6268 ^ 65536;
+  _pad($0, 48, $$2261, $786, $791);
+  _pad($0, 48, $$$5, $784, 0);
+  $792 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $793 = $792 & 32;
+  $794 = ($793 | 0) == 0;
+  if ($794) {
+   ___fwritex($$2, $784, $0) | 0;
+  }
+  $795 = $$6268 ^ 8192;
+  _pad($0, 32, $$2261, $786, $795);
+  $$0243 = $$2261;
+  $$0247 = $$1248;
+  $$0269 = $$3272;
+  $$0321 = $158;
+ }
+ L345 : do {
+  if ((label | 0) == 243) {
+   $796 = ($0 | 0) == (0 | 0);
+   if ($796) {
+    $797 = ($$0269 | 0) == 0;
+    if ($797) {
+     $$0 = 0;
+    } else {
+     $$2242381 = 1;
+     while (1) {
+      $798 = $4 + ($$2242381 << 2) | 0;
+      $799 = SAFE_HEAP_LOAD($798 | 0, 4, 0) | 0 | 0;
+      $800 = ($799 | 0) == 0;
+      if ($800) {
+       $$3379 = $$2242381;
+       break;
+      }
+      $801 = $3 + ($$2242381 << 3) | 0;
+      _pop_arg_238($801, $799, $2);
+      $802 = $$2242381 + 1 | 0;
+      $803 = ($802 | 0) < 10;
+      if ($803) {
+       $$2242381 = $802;
+      } else {
+       $$0 = 1;
+       break L345;
+      }
+     }
+     while (1) {
+      $806 = $4 + ($$3379 << 2) | 0;
+      $807 = SAFE_HEAP_LOAD($806 | 0, 4, 0) | 0 | 0;
+      $808 = ($807 | 0) == 0;
+      $804 = $$3379 + 1 | 0;
+      if (!$808) {
+       $$0 = -1;
+       break L345;
+      }
+      $805 = ($804 | 0) < 10;
+      if ($805) {
+       $$3379 = $804;
+      } else {
+       $$0 = 1;
+       break;
+      }
+     }
+    }
+   } else {
+    $$0 = $$1248;
+   }
+  }
+ } while (0);
+ STACKTOP = sp;
+ return $$0 | 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, $$0$lcssa$i = 0, $$0$lcssa$i223 = 0, $$0108$lcssa = 0, $$0108286 
= 0, $$024$lcssa$i = 0, $$02432$i = 0, $$02432$i169 = 0, $$02432$i245 = 0, 
$$025$lcssa$i = 0, $$02531$i = 0, $$02531$i170 = 0, $$02531$i246 = 0, 
$$026$ph$i = 0, $$02629$i = 0, $$02629$i184 = 0, $$02629$i260 = 0, $$027$ph$i = 
0, $$02728$i = 0, $$02728$i185 = 0;
+ var $$02728$i261 = 0, $$033$i = 0, $$033$i168 = 0, $$033$i244 = 0, 
$$034$lcssa$i = 0, $$03446$i215 = 0, $$035$lcssa$i = 0, $$03545$i216 = 0, 
$$036$lcssa$i = 0, $$03644$i217 = 0, $$037$ph$i226 = 0, $$03742$i230 = 0, 
$$038$ph$i225 = 0, $$03841$i231 = 0, $$039$ph$i224 = 0, $$03940$i232 = 0, 
$$047$i214 = 0, $$1 = 0, $$1$ph$i156 = 0, $$1$ph$i227 = 0;
+ var $$1110$lcssa = 0, $$1110285 = 0, $$1113$lcssa = 0, $$1113284 = 0, 
$$1116$lcssa = 0, $$1116283 = 0, $$130$i = 0, $$130$i183 = 0, $$130$i259 = 0, 
$$143$i229 = 0, $$2 = 0, $$2111 = 0, $$2114 = 0, $$2117 = 0, $$3 = 0, $$in = 0, 
$$phi$trans$insert297 = 0, $$pre = 0, $$pre299 = 0, $10 = 0;
+ var $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, $1015 = 0, $1016 = 0, $1017 = 0;
+ var $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, $1033 = 0, $1034 = 0, $1035 = 0;
+ var $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, $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, $6 = 0, $60 = 0, $600 = 0;
+ var $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, $617 = 0, $618 = 0, $619 = 0;
+ var $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, $635 = 0, $636 = 0, $637 = 0;
+ var $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, $653 = 0, $654 = 0, $655 = 0;
+ var $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, $671 = 0, $672 = 0, $673 = 0;
+ var $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, $69 = 0, $690 = 0, $691 = 0;
+ var $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, $707 = 0, $708 = 0, $709 = 0;
+ var $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, $725 = 0, $726 = 0, $727 = 0;
+ var $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, $743 = 0, $744 = 0, $745 = 0;
+ var $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, $761 = 0, $762 = 0, $763 = 0;
+ var $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, $78 = 0, $780 = 0, $781 = 0;
+ var $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, $798 = 0, $799 = 0, $8 = 0;
+ var $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, $815 = 0, $816 = 0, $817 = 0;
+ var $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, $833 = 0, $834 = 0, $835 = 0;
+ var $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, $851 = 0, $852 = 0, $853 = 0;
+ var $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, $87 = 0, $870 = 0, $871 = 0;
+ var $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, $888 = 0, $889 = 0, $89 = 0;
+ var $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, $905 = 0, $906 = 0, $907 = 0;
+ var $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, $923 = 0, $924 = 0, $925 = 0;
+ var $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, $941 = 0, $942 = 0, $943 = 0;
+ var $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, $959 = 0, $96 = 0, $960 = 0, $961 = 0;
+ var $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, $977 = 0, $978 = 0, $979 = 0, $98 = 0;
+ var $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, $995 = 0, $996 = 0, $997 = 0, $998 = 0;
+ var $999 = 0, $or$cond = 0, $scevgep = 0, $scevgep$i155 = 0, $scevgep$i165 = 
0, $scevgep$i211 = 0, $scevgep$i241 = 0, $scevgep296 = 0, $scevgep42$i = 0, 
$scevgep42$i166 = 0, $scevgep42$i242 = 0, $scevgep58$i212 = 0, $scevgep60$i213 
= 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 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+ $16 = $15 & 1;
+ $17 = $16 << 24 >> 24 == 0;
+ if (!$17) {
+  $$0 = 156;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $18 = $0 + 12 | 0;
+ $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+ $20 = $19 + 20 | 0;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+   $31 = ($30 | 0) == (0 | 0);
+   $32 = $8 << 4;
+   if (!$31) {
+    $33 = $5 - $32 | 0;
+    $34 = $2 + $32 | 0;
+    $35 = $4 + $32 | 0;
+    FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($30 | 0, 127 | 0) | 0) & 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 = SAFE_HEAP_LOAD($$in | 0, 4, 0) | 0 | 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 = $0 + 72 | 0;
+    $54 = $43 + 4 | 0;
+    $55 = $0 + 76 | 0;
+    $56 = $43 + 1 | 0;
+    $57 = $43 + 2 | 0;
+    $58 = $43 + 3 | 0;
+    $59 = $43 + 4 | 0;
+    $60 = $43 + 5 | 0;
+    $61 = $43 + 6 | 0;
+    $62 = $43 + 7 | 0;
+    $63 = $0 + 72 | 0;
+    $64 = $0 + 73 | 0;
+    $65 = $0 + 74 | 0;
+    $66 = $0 + 75 | 0;
+    $67 = $0 + 76 | 0;
+    $68 = $0 + 77 | 0;
+    $69 = $0 + 78 | 0;
+    $70 = $0 + 79 | 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;
+    $$0108286 = 0;
+    $$1110285 = $5;
+    $$1113284 = $4;
+    $$1116283 = $2;
+    while (1) {
+     $101 = $42;
+     $102 = $101;
+     $103 = SAFE_HEAP_LOAD($102 | 0, 4, 0) | 0 | 0;
+     $104 = $101 + 4 | 0;
+     $105 = $104;
+     $106 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+     $107 = _i64Add($103 | 0, $106 | 0, 1, 0) | 0;
+     $108 = tempRet0;
+     $109 = $42;
+     $110 = $109;
+     SAFE_HEAP_STORE($110 | 0, $107 | 0, 4);
+     $111 = $109 + 4 | 0;
+     $112 = $111;
+     SAFE_HEAP_STORE($112 | 0, $108 | 0, 4);
+     $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) {
+      $181 = $113 + 4 | 0;
+      $182 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+      $183 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+      $184 = $183 ^ $182;
+      SAFE_HEAP_STORE($43 | 0, $184 | 0, 4);
+      $185 = $113 + 8 | 0;
+      $186 = SAFE_HEAP_LOAD($181 | 0, 4, 0) | 0 | 0;
+      $187 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+      $188 = $187 ^ $186;
+      SAFE_HEAP_STORE($45 | 0, $188 | 0, 4);
+      $189 = $113 + 12 | 0;
+      $190 = SAFE_HEAP_LOAD($185 | 0, 4, 0) | 0 | 0;
+      $191 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+      $192 = $191 ^ $190;
+      SAFE_HEAP_STORE($46 | 0, $192 | 0, 4);
+      $193 = SAFE_HEAP_LOAD($189 | 0, 4, 0) | 0 | 0;
+      $194 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+      $195 = $194 ^ $193;
+      SAFE_HEAP_STORE($47 | 0, $195 | 0, 4);
+     } else {
+      $118 = $113 + 1 | 0;
+      $119 = SAFE_HEAP_LOAD($113 >> 0 | 0, 1, 0) | 0 | 0;
+      $120 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+      $121 = $120 ^ $119;
+      SAFE_HEAP_STORE($43 >> 0 | 0, $121 | 0, 1);
+      $122 = $113 + 2 | 0;
+      $123 = SAFE_HEAP_LOAD($118 >> 0 | 0, 1, 0) | 0 | 0;
+      $124 = SAFE_HEAP_LOAD($86 >> 0 | 0, 1, 0) | 0 | 0;
+      $125 = $124 ^ $123;
+      SAFE_HEAP_STORE($86 >> 0 | 0, $125 | 0, 1);
+      $126 = $113 + 3 | 0;
+      $127 = SAFE_HEAP_LOAD($122 >> 0 | 0, 1, 0) | 0 | 0;
+      $128 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 0) | 0 | 0;
+      $129 = $128 ^ $127;
+      SAFE_HEAP_STORE($87 >> 0 | 0, $129 | 0, 1);
+      $130 = $113 + 4 | 0;
+      $131 = SAFE_HEAP_LOAD($126 >> 0 | 0, 1, 0) | 0 | 0;
+      $132 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+      $133 = $132 ^ $131;
+      SAFE_HEAP_STORE($88 >> 0 | 0, $133 | 0, 1);
+      $134 = $113 + 5 | 0;
+      $135 = SAFE_HEAP_LOAD($130 >> 0 | 0, 1, 0) | 0 | 0;
+      $136 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+      $137 = $136 ^ $135;
+      SAFE_HEAP_STORE($89 >> 0 | 0, $137 | 0, 1);
+      $138 = $113 + 6 | 0;
+      $139 = SAFE_HEAP_LOAD($134 >> 0 | 0, 1, 0) | 0 | 0;
+      $140 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 0) | 0 | 0;
+      $141 = $140 ^ $139;
+      SAFE_HEAP_STORE($90 >> 0 | 0, $141 | 0, 1);
+      $142 = $113 + 7 | 0;
+      $143 = SAFE_HEAP_LOAD($138 >> 0 | 0, 1, 0) | 0 | 0;
+      $144 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+      $145 = $144 ^ $143;
+      SAFE_HEAP_STORE($91 >> 0 | 0, $145 | 0, 1);
+      $146 = $113 + 8 | 0;
+      $147 = SAFE_HEAP_LOAD($142 >> 0 | 0, 1, 0) | 0 | 0;
+      $148 = SAFE_HEAP_LOAD($92 >> 0 | 0, 1, 0) | 0 | 0;
+      $149 = $148 ^ $147;
+      SAFE_HEAP_STORE($92 >> 0 | 0, $149 | 0, 1);
+      $150 = $113 + 9 | 0;
+      $151 = SAFE_HEAP_LOAD($146 >> 0 | 0, 1, 0) | 0 | 0;
+      $152 = SAFE_HEAP_LOAD($93 >> 0 | 0, 1, 0) | 0 | 0;
+      $153 = $152 ^ $151;
+      SAFE_HEAP_STORE($93 >> 0 | 0, $153 | 0, 1);
+      $154 = $113 + 10 | 0;
+      $155 = SAFE_HEAP_LOAD($150 >> 0 | 0, 1, 0) | 0 | 0;
+      $156 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+      $157 = $156 ^ $155;
+      SAFE_HEAP_STORE($94 >> 0 | 0, $157 | 0, 1);
+      $158 = $113 + 11 | 0;
+      $159 = SAFE_HEAP_LOAD($154 >> 0 | 0, 1, 0) | 0 | 0;
+      $160 = SAFE_HEAP_LOAD($95 >> 0 | 0, 1, 0) | 0 | 0;
+      $161 = $160 ^ $159;
+      SAFE_HEAP_STORE($95 >> 0 | 0, $161 | 0, 1);
+      $162 = $113 + 12 | 0;
+      $163 = SAFE_HEAP_LOAD($158 >> 0 | 0, 1, 0) | 0 | 0;
+      $164 = SAFE_HEAP_LOAD($96 >> 0 | 0, 1, 0) | 0 | 0;
+      $165 = $164 ^ $163;
+      SAFE_HEAP_STORE($96 >> 0 | 0, $165 | 0, 1);
+      $166 = $113 + 13 | 0;
+      $167 = SAFE_HEAP_LOAD($162 >> 0 | 0, 1, 0) | 0 | 0;
+      $168 = SAFE_HEAP_LOAD($97 >> 0 | 0, 1, 0) | 0 | 0;
+      $169 = $168 ^ $167;
+      SAFE_HEAP_STORE($97 >> 0 | 0, $169 | 0, 1);
+      $170 = $113 + 14 | 0;
+      $171 = SAFE_HEAP_LOAD($166 >> 0 | 0, 1, 0) | 0 | 0;
+      $172 = SAFE_HEAP_LOAD($98 >> 0 | 0, 1, 0) | 0 | 0;
+      $173 = $172 ^ $171;
+      SAFE_HEAP_STORE($98 >> 0 | 0, $173 | 0, 1);
+      $174 = $113 + 15 | 0;
+      $175 = SAFE_HEAP_LOAD($170 >> 0 | 0, 1, 0) | 0 | 0;
+      $176 = SAFE_HEAP_LOAD($99 >> 0 | 0, 1, 0) | 0 | 0;
+      $177 = $176 ^ $175;
+      SAFE_HEAP_STORE($99 >> 0 | 0, $177 | 0, 1);
+      $178 = SAFE_HEAP_LOAD($174 >> 0 | 0, 1, 0) | 0 | 0;
+      $179 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 0) | 0 | 0;
+      $180 = $179 ^ $178;
+      SAFE_HEAP_STORE($100 >> 0 | 0, $180 | 0, 1);
+     }
+     $196 = $$1116283;
+     $197 = $196 | $44;
+     $198 = $$1113284;
+     $199 = $197 | $198;
+     $200 = $199 & 3;
+     $201 = ($200 | 0) == 0;
+     if ($201) {
+      $280 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+      $281 = $$1113284 + 4 | 0;
+      $282 = SAFE_HEAP_LOAD($$1113284 | 0, 4, 0) | 0 | 0;
+      $283 = $282 ^ $280;
+      $284 = $$1116283 + 4 | 0;
+      SAFE_HEAP_STORE($$1116283 | 0, $283 | 0, 4);
+      $285 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+      $286 = $$1113284 + 8 | 0;
+      $287 = SAFE_HEAP_LOAD($281 | 0, 4, 0) | 0 | 0;
+      $288 = $287 ^ $285;
+      $289 = $$1116283 + 8 | 0;
+      SAFE_HEAP_STORE($284 | 0, $288 | 0, 4);
+      $290 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+      $291 = $$1113284 + 12 | 0;
+      $292 = SAFE_HEAP_LOAD($286 | 0, 4, 0) | 0 | 0;
+      $293 = $292 ^ $290;
+      $294 = $$1116283 + 12 | 0;
+      SAFE_HEAP_STORE($289 | 0, $293 | 0, 4);
+      $295 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+      $296 = SAFE_HEAP_LOAD($291 | 0, 4, 0) | 0 | 0;
+      $297 = $296 ^ $295;
+      SAFE_HEAP_STORE($294 | 0, $297 | 0, 4);
+     } else {
+      $202 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+      $203 = $$1113284 + 1 | 0;
+      $204 = SAFE_HEAP_LOAD($$1113284 >> 0 | 0, 1, 0) | 0 | 0;
+      $205 = $204 ^ $202;
+      $206 = $$1116283 + 1 | 0;
+      SAFE_HEAP_STORE($$1116283 >> 0 | 0, $205 | 0, 1);
+      $207 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+      $208 = $$1113284 + 2 | 0;
+      $209 = SAFE_HEAP_LOAD($203 >> 0 | 0, 1, 0) | 0 | 0;
+      $210 = $209 ^ $207;
+      $211 = $$1116283 + 2 | 0;
+      SAFE_HEAP_STORE($206 >> 0 | 0, $210 | 0, 1);
+      $212 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+      $213 = $$1113284 + 3 | 0;
+      $214 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+      $215 = $214 ^ $212;
+      $216 = $$1116283 + 3 | 0;
+      SAFE_HEAP_STORE($211 >> 0 | 0, $215 | 0, 1);
+      $217 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+      $218 = $$1113284 + 4 | 0;
+      $219 = SAFE_HEAP_LOAD($213 >> 0 | 0, 1, 0) | 0 | 0;
+      $220 = $219 ^ $217;
+      $221 = $$1116283 + 4 | 0;
+      SAFE_HEAP_STORE($216 >> 0 | 0, $220 | 0, 1);
+      $222 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+      $223 = $$1113284 + 5 | 0;
+      $224 = SAFE_HEAP_LOAD($218 >> 0 | 0, 1, 0) | 0 | 0;
+      $225 = $224 ^ $222;
+      $226 = $$1116283 + 5 | 0;
+      SAFE_HEAP_STORE($221 >> 0 | 0, $225 | 0, 1);
+      $227 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+      $228 = $$1113284 + 6 | 0;
+      $229 = SAFE_HEAP_LOAD($223 >> 0 | 0, 1, 0) | 0 | 0;
+      $230 = $229 ^ $227;
+      $231 = $$1116283 + 6 | 0;
+      SAFE_HEAP_STORE($226 >> 0 | 0, $230 | 0, 1);
+      $232 = SAFE_HEAP_LOAD($76 >> 0 | 0, 1, 0) | 0 | 0;
+      $233 = $$1113284 + 7 | 0;
+      $234 = SAFE_HEAP_LOAD($228 >> 0 | 0, 1, 0) | 0 | 0;
+      $235 = $234 ^ $232;
+      $236 = $$1116283 + 7 | 0;
+      SAFE_HEAP_STORE($231 >> 0 | 0, $235 | 0, 1);
+      $237 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+      $238 = $$1113284 + 8 | 0;
+      $239 = SAFE_HEAP_LOAD($233 >> 0 | 0, 1, 0) | 0 | 0;
+      $240 = $239 ^ $237;
+      $241 = $$1116283 + 8 | 0;
+      SAFE_HEAP_STORE($236 >> 0 | 0, $240 | 0, 1);
+      $242 = SAFE_HEAP_LOAD($78 >> 0 | 0, 1, 0) | 0 | 0;
+      $243 = $$1113284 + 9 | 0;
+      $244 = SAFE_HEAP_LOAD($238 >> 0 | 0, 1, 0) | 0 | 0;
+      $245 = $244 ^ $242;
+      $246 = $$1116283 + 9 | 0;
+      SAFE_HEAP_STORE($241 >> 0 | 0, $245 | 0, 1);
+      $247 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+      $248 = $$1113284 + 10 | 0;
+      $249 = SAFE_HEAP_LOAD($243 >> 0 | 0, 1, 0) | 0 | 0;
+      $250 = $249 ^ $247;
+      $251 = $$1116283 + 10 | 0;
+      SAFE_HEAP_STORE($246 >> 0 | 0, $250 | 0, 1);
+      $252 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+      $253 = $$1113284 + 11 | 0;
+      $254 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+      $255 = $254 ^ $252;
+      $256 = $$1116283 + 11 | 0;
+      SAFE_HEAP_STORE($251 >> 0 | 0, $255 | 0, 1);
+      $257 = SAFE_HEAP_LOAD($81 >> 0 | 0, 1, 0) | 0 | 0;
+      $258 = $$1113284 + 12 | 0;
+      $259 = SAFE_HEAP_LOAD($253 >> 0 | 0, 1, 0) | 0 | 0;
+      $260 = $259 ^ $257;
+      $261 = $$1116283 + 12 | 0;
+      SAFE_HEAP_STORE($256 >> 0 | 0, $260 | 0, 1);
+      $262 = SAFE_HEAP_LOAD($82 >> 0 | 0, 1, 0) | 0 | 0;
+      $263 = $$1113284 + 13 | 0;
+      $264 = SAFE_HEAP_LOAD($258 >> 0 | 0, 1, 0) | 0 | 0;
+      $265 = $264 ^ $262;
+      $266 = $$1116283 + 13 | 0;
+      SAFE_HEAP_STORE($261 >> 0 | 0, $265 | 0, 1);
+      $267 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+      $268 = $$1113284 + 14 | 0;
+      $269 = SAFE_HEAP_LOAD($263 >> 0 | 0, 1, 0) | 0 | 0;
+      $270 = $269 ^ $267;
+      $271 = $$1116283 + 14 | 0;
+      SAFE_HEAP_STORE($266 >> 0 | 0, $270 | 0, 1);
+      $272 = SAFE_HEAP_LOAD($84 >> 0 | 0, 1, 0) | 0 | 0;
+      $273 = $$1113284 + 15 | 0;
+      $274 = SAFE_HEAP_LOAD($268 >> 0 | 0, 1, 0) | 0 | 0;
+      $275 = $274 ^ $272;
+      $276 = $$1116283 + 15 | 0;
+      SAFE_HEAP_STORE($271 >> 0 | 0, $275 | 0, 1);
+      $277 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+      $278 = SAFE_HEAP_LOAD($273 >> 0 | 0, 1, 0) | 0 | 0;
+      $279 = $278 ^ $277;
+      SAFE_HEAP_STORE($276 >> 0 | 0, $279 | 0, 1);
+     }
+     $298 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($39 | 0, 127 | 0) | 0) & 
127]($48, $$1116283, $$1116283) | 0;
+     $299 = $298 >>> 0 > $$0108286 >>> 0;
+     $300 = $299 ? $298 : $$0108286;
+     $301 = $197 & 3;
+     $302 = ($301 | 0) == 0;
+     if ($302) {
+      $366 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+      $367 = $$1116283 + 4 | 0;
+      $368 = SAFE_HEAP_LOAD($$1116283 | 0, 4, 0) | 0 | 0;
+      $369 = $368 ^ $366;
+      SAFE_HEAP_STORE($$1116283 | 0, $369 | 0, 4);
+      $370 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+      $371 = $$1116283 + 8 | 0;
+      $372 = SAFE_HEAP_LOAD($367 | 0, 4, 0) | 0 | 0;
+      $373 = $372 ^ $370;
+      SAFE_HEAP_STORE($367 | 0, $373 | 0, 4);
+      $374 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+      $375 = $$1116283 + 12 | 0;
+      $376 = SAFE_HEAP_LOAD($371 | 0, 4, 0) | 0 | 0;
+      $377 = $376 ^ $374;
+      SAFE_HEAP_STORE($371 | 0, $377 | 0, 4);
+      $378 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+      $379 = SAFE_HEAP_LOAD($375 | 0, 4, 0) | 0 | 0;
+      $380 = $379 ^ $378;
+      SAFE_HEAP_STORE($375 | 0, $380 | 0, 4);
+     } else {
+      $303 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+      $304 = $$1116283 + 1 | 0;
+      $305 = SAFE_HEAP_LOAD($$1116283 >> 0 | 0, 1, 0) | 0 | 0;
+      $306 = $305 ^ $303;
+      SAFE_HEAP_STORE($$1116283 >> 0 | 0, $306 | 0, 1);
+      $307 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+      $308 = $$1116283 + 2 | 0;
+      $309 = SAFE_HEAP_LOAD($304 >> 0 | 0, 1, 0) | 0 | 0;
+      $310 = $309 ^ $307;
+      SAFE_HEAP_STORE($304 >> 0 | 0, $310 | 0, 1);
+      $311 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+      $312 = $$1116283 + 3 | 0;
+      $313 = SAFE_HEAP_LOAD($308 >> 0 | 0, 1, 0) | 0 | 0;
+      $314 = $313 ^ $311;
+      SAFE_HEAP_STORE($308 >> 0 | 0, $314 | 0, 1);
+      $315 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+      $316 = $$1116283 + 4 | 0;
+      $317 = SAFE_HEAP_LOAD($312 >> 0 | 0, 1, 0) | 0 | 0;
+      $318 = $317 ^ $315;
+      SAFE_HEAP_STORE($312 >> 0 | 0, $318 | 0, 1);
+      $319 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+      $320 = $$1116283 + 5 | 0;
+      $321 = SAFE_HEAP_LOAD($316 >> 0 | 0, 1, 0) | 0 | 0;
+      $322 = $321 ^ $319;
+      SAFE_HEAP_STORE($316 >> 0 | 0, $322 | 0, 1);
+      $323 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+      $324 = $$1116283 + 6 | 0;
+      $325 = SAFE_HEAP_LOAD($320 >> 0 | 0, 1, 0) | 0 | 0;
+      $326 = $325 ^ $323;
+      SAFE_HEAP_STORE($320 >> 0 | 0, $326 | 0, 1);
+      $327 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+      $328 = $$1116283 + 7 | 0;
+      $329 = SAFE_HEAP_LOAD($324 >> 0 | 0, 1, 0) | 0 | 0;
+      $330 = $329 ^ $327;
+      SAFE_HEAP_STORE($324 >> 0 | 0, $330 | 0, 1);
+      $331 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+      $332 = $$1116283 + 8 | 0;
+      $333 = SAFE_HEAP_LOAD($328 >> 0 | 0, 1, 0) | 0 | 0;
+      $334 = $333 ^ $331;
+      SAFE_HEAP_STORE($328 >> 0 | 0, $334 | 0, 1);
+      $335 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+      $336 = $$1116283 + 9 | 0;
+      $337 = SAFE_HEAP_LOAD($332 >> 0 | 0, 1, 0) | 0 | 0;
+      $338 = $337 ^ $335;
+      SAFE_HEAP_STORE($332 >> 0 | 0, $338 | 0, 1);
+      $339 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+      $340 = $$1116283 + 10 | 0;
+      $341 = SAFE_HEAP_LOAD($336 >> 0 | 0, 1, 0) | 0 | 0;
+      $342 = $341 ^ $339;
+      SAFE_HEAP_STORE($336 >> 0 | 0, $342 | 0, 1);
+      $343 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+      $344 = $$1116283 + 11 | 0;
+      $345 = SAFE_HEAP_LOAD($340 >> 0 | 0, 1, 0) | 0 | 0;
+      $346 = $345 ^ $343;
+      SAFE_HEAP_STORE($340 >> 0 | 0, $346 | 0, 1);
+      $347 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+      $348 = $$1116283 + 12 | 0;
+      $349 = SAFE_HEAP_LOAD($344 >> 0 | 0, 1, 0) | 0 | 0;
+      $350 = $349 ^ $347;
+      SAFE_HEAP_STORE($344 >> 0 | 0, $350 | 0, 1);
+      $351 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+      $352 = $$1116283 + 13 | 0;
+      $353 = SAFE_HEAP_LOAD($348 >> 0 | 0, 1, 0) | 0 | 0;
+      $354 = $353 ^ $351;
+      SAFE_HEAP_STORE($348 >> 0 | 0, $354 | 0, 1);
+      $355 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+      $356 = $$1116283 + 14 | 0;
+      $357 = SAFE_HEAP_LOAD($352 >> 0 | 0, 1, 0) | 0 | 0;
+      $358 = $357 ^ $355;
+      SAFE_HEAP_STORE($352 >> 0 | 0, $358 | 0, 1);
+      $359 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+      $360 = $$1116283 + 15 | 0;
+      $361 = SAFE_HEAP_LOAD($356 >> 0 | 0, 1, 0) | 0 | 0;
+      $362 = $361 ^ $359;
+      SAFE_HEAP_STORE($356 >> 0 | 0, $362 | 0, 1);
+      $363 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+      $364 = SAFE_HEAP_LOAD($360 >> 0 | 0, 1, 0) | 0 | 0;
+      $365 = $364 ^ $363;
+      SAFE_HEAP_STORE($360 >> 0 | 0, $365 | 0, 1);
+     }
+     $381 = $$1113284 + 16 | 0;
+     $382 = $$1110285 + -16 | 0;
+     $383 = $$1116283 + 16 | 0;
+     $384 = $382 >>> 0 > 15;
+     if ($384) {
+      $$0108286 = $300;
+      $$1110285 = $382;
+      $$1113284 = $381;
+      $$1116283 = $383;
+     } else {
+      break;
+     }
+    }
+    $scevgep = $4 + $51 | 0;
+    $scevgep296 = $2 + $51 | 0;
+    $$0108$lcssa = $300;
+    $$1110$lcssa = $52;
+    $$1113$lcssa = $scevgep;
+    $$1116$lcssa = $scevgep296;
+   } 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) {
+   $473 = $13 + 4 | 0;
+   $474 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $475 = $389 + 4 | 0;
+   $476 = SAFE_HEAP_LOAD($389 | 0, 4, 0) | 0 | 0;
+   $477 = $476 ^ $474;
+   SAFE_HEAP_STORE($389 | 0, $477 | 0, 4);
+   $478 = $0 + 136 | 0;
+   $479 = SAFE_HEAP_LOAD($473 | 0, 4, 0) | 0 | 0;
+   $480 = $0 + 72 | 0;
+   $481 = SAFE_HEAP_LOAD($475 | 0, 4, 0) | 0 | 0;
+   $482 = $481 ^ $479;
+   SAFE_HEAP_STORE($475 | 0, $482 | 0, 4);
+   $483 = $0 + 140 | 0;
+   $484 = SAFE_HEAP_LOAD($478 | 0, 4, 0) | 0 | 0;
+   $485 = $0 + 76 | 0;
+   $486 = SAFE_HEAP_LOAD($480 | 0, 4, 0) | 0 | 0;
+   $487 = $486 ^ $484;
+   SAFE_HEAP_STORE($480 | 0, $487 | 0, 4);
+   $488 = SAFE_HEAP_LOAD($483 | 0, 4, 0) | 0 | 0;
+   $489 = SAFE_HEAP_LOAD($485 | 0, 4, 0) | 0 | 0;
+   $490 = $489 ^ $488;
+   SAFE_HEAP_STORE($485 | 0, $490 | 0, 4);
+  } else {
+   $395 = $13 + 1 | 0;
+   $396 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+   $397 = $389 + 1 | 0;
+   $398 = SAFE_HEAP_LOAD($389 >> 0 | 0, 1, 0) | 0 | 0;
+   $399 = $398 ^ $396;
+   SAFE_HEAP_STORE($389 >> 0 | 0, $399 | 0, 1);
+   $400 = $13 + 2 | 0;
+   $401 = SAFE_HEAP_LOAD($395 >> 0 | 0, 1, 0) | 0 | 0;
+   $402 = $389 + 2 | 0;
+   $403 = SAFE_HEAP_LOAD($397 >> 0 | 0, 1, 0) | 0 | 0;
+   $404 = $403 ^ $401;
+   SAFE_HEAP_STORE($397 >> 0 | 0, $404 | 0, 1);
+   $405 = $13 + 3 | 0;
+   $406 = SAFE_HEAP_LOAD($400 >> 0 | 0, 1, 0) | 0 | 0;
+   $407 = $389 + 3 | 0;
+   $408 = SAFE_HEAP_LOAD($402 >> 0 | 0, 1, 0) | 0 | 0;
+   $409 = $408 ^ $406;
+   SAFE_HEAP_STORE($402 >> 0 | 0, $409 | 0, 1);
+   $410 = $13 + 4 | 0;
+   $411 = SAFE_HEAP_LOAD($405 >> 0 | 0, 1, 0) | 0 | 0;
+   $412 = $389 + 4 | 0;
+   $413 = SAFE_HEAP_LOAD($407 >> 0 | 0, 1, 0) | 0 | 0;
+   $414 = $413 ^ $411;
+   SAFE_HEAP_STORE($407 >> 0 | 0, $414 | 0, 1);
+   $415 = $13 + 5 | 0;
+   $416 = SAFE_HEAP_LOAD($410 >> 0 | 0, 1, 0) | 0 | 0;
+   $417 = $389 + 5 | 0;
+   $418 = SAFE_HEAP_LOAD($412 >> 0 | 0, 1, 0) | 0 | 0;
+   $419 = $418 ^ $416;
+   SAFE_HEAP_STORE($412 >> 0 | 0, $419 | 0, 1);
+   $420 = $13 + 6 | 0;
+   $421 = SAFE_HEAP_LOAD($415 >> 0 | 0, 1, 0) | 0 | 0;
+   $422 = $389 + 6 | 0;
+   $423 = SAFE_HEAP_LOAD($417 >> 0 | 0, 1, 0) | 0 | 0;
+   $424 = $423 ^ $421;
+   SAFE_HEAP_STORE($417 >> 0 | 0, $424 | 0, 1);
+   $425 = $13 + 7 | 0;
+   $426 = SAFE_HEAP_LOAD($420 >> 0 | 0, 1, 0) | 0 | 0;
+   $427 = $389 + 7 | 0;
+   $428 = SAFE_HEAP_LOAD($422 >> 0 | 0, 1, 0) | 0 | 0;
+   $429 = $428 ^ $426;
+   SAFE_HEAP_STORE($422 >> 0 | 0, $429 | 0, 1);
+   $430 = $0 + 136 | 0;
+   $431 = SAFE_HEAP_LOAD($425 >> 0 | 0, 1, 0) | 0 | 0;
+   $432 = $0 + 72 | 0;
+   $433 = SAFE_HEAP_LOAD($427 >> 0 | 0, 1, 0) | 0 | 0;
+   $434 = $433 ^ $431;
+   SAFE_HEAP_STORE($427 >> 0 | 0, $434 | 0, 1);
+   $435 = $0 + 137 | 0;
+   $436 = SAFE_HEAP_LOAD($430 >> 0 | 0, 1, 0) | 0 | 0;
+   $437 = $0 + 73 | 0;
+   $438 = SAFE_HEAP_LOAD($432 >> 0 | 0, 1, 0) | 0 | 0;
+   $439 = $438 ^ $436;
+   SAFE_HEAP_STORE($432 >> 0 | 0, $439 | 0, 1);
+   $440 = $0 + 138 | 0;
+   $441 = SAFE_HEAP_LOAD($435 >> 0 | 0, 1, 0) | 0 | 0;
+   $442 = $0 + 74 | 0;
+   $443 = SAFE_HEAP_LOAD($437 >> 0 | 0, 1, 0) | 0 | 0;
+   $444 = $443 ^ $441;
+   SAFE_HEAP_STORE($437 >> 0 | 0, $444 | 0, 1);
+   $445 = $0 + 139 | 0;
+   $446 = SAFE_HEAP_LOAD($440 >> 0 | 0, 1, 0) | 0 | 0;
+   $447 = $0 + 75 | 0;
+   $448 = SAFE_HEAP_LOAD($442 >> 0 | 0, 1, 0) | 0 | 0;
+   $449 = $448 ^ $446;
+   SAFE_HEAP_STORE($442 >> 0 | 0, $449 | 0, 1);
+   $450 = $0 + 140 | 0;
+   $451 = SAFE_HEAP_LOAD($445 >> 0 | 0, 1, 0) | 0 | 0;
+   $452 = $0 + 76 | 0;
+   $453 = SAFE_HEAP_LOAD($447 >> 0 | 0, 1, 0) | 0 | 0;
+   $454 = $453 ^ $451;
+   SAFE_HEAP_STORE($447 >> 0 | 0, $454 | 0, 1);
+   $455 = $0 + 141 | 0;
+   $456 = SAFE_HEAP_LOAD($450 >> 0 | 0, 1, 0) | 0 | 0;
+   $457 = $0 + 77 | 0;
+   $458 = SAFE_HEAP_LOAD($452 >> 0 | 0, 1, 0) | 0 | 0;
+   $459 = $458 ^ $456;
+   SAFE_HEAP_STORE($452 >> 0 | 0, $459 | 0, 1);
+   $460 = $0 + 142 | 0;
+   $461 = SAFE_HEAP_LOAD($455 >> 0 | 0, 1, 0) | 0 | 0;
+   $462 = $0 + 78 | 0;
+   $463 = SAFE_HEAP_LOAD($457 >> 0 | 0, 1, 0) | 0 | 0;
+   $464 = $463 ^ $461;
+   SAFE_HEAP_STORE($457 >> 0 | 0, $464 | 0, 1);
+   $465 = $0 + 143 | 0;
+   $466 = SAFE_HEAP_LOAD($460 >> 0 | 0, 1, 0) | 0 | 0;
+   $467 = $0 + 79 | 0;
+   $468 = SAFE_HEAP_LOAD($462 >> 0 | 0, 1, 0) | 0 | 0;
+   $469 = $468 ^ $466;
+   SAFE_HEAP_STORE($462 >> 0 | 0, $469 | 0, 1);
+   $470 = SAFE_HEAP_LOAD($465 >> 0 | 0, 1, 0) | 0 | 0;
+   $471 = SAFE_HEAP_LOAD($467 >> 0 | 0, 1, 0) | 0 | 0;
+   $472 = $471 ^ $470;
+   SAFE_HEAP_STORE($467 >> 0 | 0, $472 | 0, 1);
+  }
+  $491 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+  $492 = $491 + 36 | 0;
+  $493 = SAFE_HEAP_LOAD($492 | 0, 4, 0) | 0 | 0;
+  $494 = $0 + 496 | 0;
+  $495 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($493 | 0, 127 | 0) | 0) & 
127]($494, $7, $389) | 0;
+  $496 = $495 >>> 0 > $$1 >>> 0;
+  $497 = $496 ? $495 : $$1;
+  $498 = ($1 | 0) == 0;
+  do {
+   if ($498) {
+    $646 = $7 + 4 | 0;
+    $647 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $648 = $6 + 4 | 0;
+    SAFE_HEAP_STORE($6 | 0, $647 | 0, 4);
+    $649 = $7 + 8 | 0;
+    $650 = SAFE_HEAP_LOAD($646 | 0, 4, 0) | 0 | 0;
+    $651 = $6 + 8 | 0;
+    SAFE_HEAP_STORE($648 | 0, $650 | 0, 4);
+    $652 = $7 + 12 | 0;
+    $653 = SAFE_HEAP_LOAD($649 | 0, 4, 0) | 0 | 0;
+    $654 = $6 + 12 | 0;
+    SAFE_HEAP_STORE($651 | 0, $653 | 0, 4);
+    $655 = SAFE_HEAP_LOAD($652 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($654 | 0, $655 | 0, 4);
+    $656 = $$2114;
+    $657 = $656 & 3;
+    $658 = ($657 | 0) == 0;
+    do {
+     if ($658) {
+      $659 = $$2111 >>> 0 > 3;
+      if (!$659) {
+       $$02629$i184 = $$2114;
+       $$02728$i185 = $6;
+       $$130$i183 = $$2111;
+       label = 55;
+       break;
+      }
+      $660 = $$2111 + -4 | 0;
+      $661 = $660 & -4;
+      $662 = $661 + 4 | 0;
+      $scevgep$i165 = $$2114 + $662 | 0;
+      $$02432$i169 = $$2114;
+      $$02531$i170 = $6;
+      $$033$i168 = $$2111;
+      while (1) {
+       $663 = $$02432$i169 + 4 | 0;
+       $664 = SAFE_HEAP_LOAD($$02432$i169 | 0, 4, 0) | 0 | 0;
+       $665 = $$02531$i170 + 4 | 0;
+       SAFE_HEAP_STORE($$02531$i170 | 0, $664 | 0, 4);
+       $666 = $$033$i168 + -4 | 0;
+       $667 = $666 >>> 0 > 3;
+       if ($667) {
+        $$02432$i169 = $663;
+        $$02531$i170 = $665;
+        $$033$i168 = $666;
+       } else {
+        break;
+       }
+      }
+      $scevgep42$i166 = $6 + $662 | 0;
+      $668 = $660 - $661 | 0;
+      $669 = ($668 | 0) == 0;
+      if ($669) {
+       $678 = $647;
+       $683 = $650;
+      } else {
+       $$02629$i184 = $scevgep$i165;
+       $$02728$i185 = $scevgep42$i166;
+       $$130$i183 = $668;
+       label = 55;
+      }
+     } else {
+      $$02629$i184 = $$2114;
+      $$02728$i185 = $6;
+      $$130$i183 = $$2111;
+      label = 55;
+     }
+    } while (0);
+    if ((label | 0) == 55) {
+     while (1) {
+      label = 0;
+      $670 = $$02629$i184 + 1 | 0;
+      $671 = SAFE_HEAP_LOAD($$02629$i184 >> 0 | 0, 1, 0) | 0 | 0;
+      $672 = $$02728$i185 + 1 | 0;
+      SAFE_HEAP_STORE($$02728$i185 >> 0 | 0, $671 | 0, 1);
+      $673 = $$130$i183 + -1 | 0;
+      $674 = ($673 | 0) == 0;
+      if ($674) {
+       break;
+      } else {
+       $$02629$i184 = $670;
+       $$02728$i185 = $672;
+       $$130$i183 = $673;
+       label = 55;
+      }
+     }
+     $$pre = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     $$phi$trans$insert297 = $7 + 4 | 0;
+     $$pre299 = SAFE_HEAP_LOAD($$phi$trans$insert297 | 0, 4, 0) | 0 | 0;
+     $678 = $$pre;
+     $683 = $$pre299;
+    }
+    $675 = $6 + 4 | 0;
+    $676 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    $677 = $676 ^ $678;
+    SAFE_HEAP_STORE($6 | 0, $677 | 0, 4);
+    $679 = $7 + 8 | 0;
+    $680 = $6 + 8 | 0;
+    $681 = SAFE_HEAP_LOAD($675 | 0, 4, 0) | 0 | 0;
+    $682 = $681 ^ $683;
+    SAFE_HEAP_STORE($675 | 0, $682 | 0, 4);
+    $684 = $7 + 12 | 0;
+    $685 = SAFE_HEAP_LOAD($679 | 0, 4, 0) | 0 | 0;
+    $686 = $6 + 12 | 0;
+    $687 = SAFE_HEAP_LOAD($680 | 0, 4, 0) | 0 | 0;
+    $688 = $687 ^ $685;
+    SAFE_HEAP_STORE($680 | 0, $688 | 0, 4);
+    $689 = SAFE_HEAP_LOAD($684 | 0, 4, 0) | 0 | 0;
+    $690 = SAFE_HEAP_LOAD($686 | 0, 4, 0) | 0 | 0;
+    $691 = $690 ^ $689;
+    SAFE_HEAP_STORE($686 | 0, $691 | 0, 4);
+    $692 = $6 + $$2111 | 0;
+    SAFE_HEAP_STORE($692 >> 0 | 0, -128 | 0, 1);
+    $693 = $$2117;
+    $694 = $693 & 3;
+    $695 = ($694 | 0) == 0;
+    if ($695) {
+     $696 = $$2111 >>> 0 > 3;
+     if ($696) {
+      $697 = $$2111 + -4 | 0;
+      $698 = $697 & -4;
+      $699 = $698 + 4 | 0;
+      $scevgep$i155 = $6 + $699 | 0;
+      $$02432$i = $6;
+      $$02531$i = $$2117;
+      $$033$i = $$2111;
+      while (1) {
+       $700 = $$02432$i + 4 | 0;
+       $701 = SAFE_HEAP_LOAD($$02432$i | 0, 4, 0) | 0 | 0;
+       $702 = $$02531$i + 4 | 0;
+       SAFE_HEAP_STORE($$02531$i | 0, $701 | 0, 4);
+       $703 = $$033$i + -4 | 0;
+       $704 = $703 >>> 0 > 3;
+       if ($704) {
+        $$02432$i = $700;
+        $$02531$i = $702;
+        $$033$i = $703;
+       } else {
+        break;
+       }
+      }
+      $scevgep42$i = $$2117 + $699 | 0;
+      $705 = $697 - $698 | 0;
+      $$0$lcssa$i = $705;
+      $$024$lcssa$i = $scevgep$i155;
+      $$025$lcssa$i = $scevgep42$i;
+     } else {
+      $$0$lcssa$i = $$2111;
+      $$024$lcssa$i = $6;
+      $$025$lcssa$i = $$2117;
+     }
+     $$026$ph$i = $$024$lcssa$i;
+     $$027$ph$i = $$025$lcssa$i;
+     $$1$ph$i156 = $$0$lcssa$i;
+    } else {
+     $$026$ph$i = $6;
+     $$027$ph$i = $$2117;
+     $$1$ph$i156 = $$2111;
+    }
+    $706 = ($$1$ph$i156 | 0) == 0;
+    if (!$706) {
+     $$02629$i = $$026$ph$i;
+     $$02728$i = $$027$ph$i;
+     $$130$i = $$1$ph$i156;
+     while (1) {
+      $707 = $$02629$i + 1 | 0;
+      $708 = SAFE_HEAP_LOAD($$02629$i >> 0 | 0, 1, 0) | 0 | 0;
+      $709 = $$02728$i + 1 | 0;
+      SAFE_HEAP_STORE($$02728$i >> 0 | 0, $708 | 0, 1);
+      $710 = $$130$i + -1 | 0;
+      $711 = ($710 | 0) == 0;
+      if ($711) {
+       break;
+      } else {
+       $$02629$i = $707;
+       $$02728$i = $709;
+       $$130$i = $710;
+      }
+     }
+    }
+    $712 = $0 + 80 | 0;
+    $713 = $712;
+    $714 = $713 & 3;
+    $715 = ($714 | 0) == 0;
+    if ($715) {
+     $794 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $795 = $712 + 4 | 0;
+     $796 = SAFE_HEAP_LOAD($712 | 0, 4, 0) | 0 | 0;
+     $797 = $796 ^ $794;
+     SAFE_HEAP_STORE($712 | 0, $797 | 0, 4);
+     $798 = SAFE_HEAP_LOAD($675 | 0, 4, 0) | 0 | 0;
+     $799 = $0 + 88 | 0;
+     $800 = SAFE_HEAP_LOAD($795 | 0, 4, 0) | 0 | 0;
+     $801 = $800 ^ $798;
+     SAFE_HEAP_STORE($795 | 0, $801 | 0, 4);
+     $802 = SAFE_HEAP_LOAD($680 | 0, 4, 0) | 0 | 0;
+     $803 = $0 + 92 | 0;
+     $804 = SAFE_HEAP_LOAD($799 | 0, 4, 0) | 0 | 0;
+     $805 = $804 ^ $802;
+     SAFE_HEAP_STORE($799 | 0, $805 | 0, 4);
+     $806 = SAFE_HEAP_LOAD($686 | 0, 4, 0) | 0 | 0;
+     $807 = SAFE_HEAP_LOAD($803 | 0, 4, 0) | 0 | 0;
+     $808 = $807 ^ $806;
+     SAFE_HEAP_STORE($803 | 0, $808 | 0, 4);
+     break;
+    } else {
+     $716 = $6 + 1 | 0;
+     $717 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+     $718 = $712 + 1 | 0;
+     $719 = SAFE_HEAP_LOAD($712 >> 0 | 0, 1, 0) | 0 | 0;
+     $720 = $719 ^ $717;
+     SAFE_HEAP_STORE($712 >> 0 | 0, $720 | 0, 1);
+     $721 = $6 + 2 | 0;
+     $722 = SAFE_HEAP_LOAD($716 >> 0 | 0, 1, 0) | 0 | 0;
+     $723 = $712 + 2 | 0;
+     $724 = SAFE_HEAP_LOAD($718 >> 0 | 0, 1, 0) | 0 | 0;
+     $725 = $724 ^ $722;
+     SAFE_HEAP_STORE($718 >> 0 | 0, $725 | 0, 1);
+     $726 = $6 + 3 | 0;
+     $727 = SAFE_HEAP_LOAD($721 >> 0 | 0, 1, 0) | 0 | 0;
+     $728 = $712 + 3 | 0;
+     $729 = SAFE_HEAP_LOAD($723 >> 0 | 0, 1, 0) | 0 | 0;
+     $730 = $729 ^ $727;
+     SAFE_HEAP_STORE($723 >> 0 | 0, $730 | 0, 1);
+     $731 = $6 + 4 | 0;
+     $732 = SAFE_HEAP_LOAD($726 >> 0 | 0, 1, 0) | 0 | 0;
+     $733 = $712 + 4 | 0;
+     $734 = SAFE_HEAP_LOAD($728 >> 0 | 0, 1, 0) | 0 | 0;
+     $735 = $734 ^ $732;
+     SAFE_HEAP_STORE($728 >> 0 | 0, $735 | 0, 1);
+     $736 = $6 + 5 | 0;
+     $737 = SAFE_HEAP_LOAD($731 >> 0 | 0, 1, 0) | 0 | 0;
+     $738 = $712 + 5 | 0;
+     $739 = SAFE_HEAP_LOAD($733 >> 0 | 0, 1, 0) | 0 | 0;
+     $740 = $739 ^ $737;
+     SAFE_HEAP_STORE($733 >> 0 | 0, $740 | 0, 1);
+     $741 = $6 + 6 | 0;
+     $742 = SAFE_HEAP_LOAD($736 >> 0 | 0, 1, 0) | 0 | 0;
+     $743 = $712 + 6 | 0;
+     $744 = SAFE_HEAP_LOAD($738 >> 0 | 0, 1, 0) | 0 | 0;
+     $745 = $744 ^ $742;
+     SAFE_HEAP_STORE($738 >> 0 | 0, $745 | 0, 1);
+     $746 = $6 + 7 | 0;
+     $747 = SAFE_HEAP_LOAD($741 >> 0 | 0, 1, 0) | 0 | 0;
+     $748 = $712 + 7 | 0;
+     $749 = SAFE_HEAP_LOAD($743 >> 0 | 0, 1, 0) | 0 | 0;
+     $750 = $749 ^ $747;
+     SAFE_HEAP_STORE($743 >> 0 | 0, $750 | 0, 1);
+     $751 = $6 + 8 | 0;
+     $752 = SAFE_HEAP_LOAD($746 >> 0 | 0, 1, 0) | 0 | 0;
+     $753 = $0 + 88 | 0;
+     $754 = SAFE_HEAP_LOAD($748 >> 0 | 0, 1, 0) | 0 | 0;
+     $755 = $754 ^ $752;
+     SAFE_HEAP_STORE($748 >> 0 | 0, $755 | 0, 1);
+     $756 = $6 + 9 | 0;
+     $757 = SAFE_HEAP_LOAD($751 >> 0 | 0, 1, 0) | 0 | 0;
+     $758 = $0 + 89 | 0;
+     $759 = SAFE_HEAP_LOAD($753 >> 0 | 0, 1, 0) | 0 | 0;
+     $760 = $759 ^ $757;
+     SAFE_HEAP_STORE($753 >> 0 | 0, $760 | 0, 1);
+     $761 = $6 + 10 | 0;
+     $762 = SAFE_HEAP_LOAD($756 >> 0 | 0, 1, 0) | 0 | 0;
+     $763 = $0 + 90 | 0;
+     $764 = SAFE_HEAP_LOAD($758 >> 0 | 0, 1, 0) | 0 | 0;
+     $765 = $764 ^ $762;
+     SAFE_HEAP_STORE($758 >> 0 | 0, $765 | 0, 1);
+     $766 = $6 + 11 | 0;
+     $767 = SAFE_HEAP_LOAD($761 >> 0 | 0, 1, 0) | 0 | 0;
+     $768 = $0 + 91 | 0;
+     $769 = SAFE_HEAP_LOAD($763 >> 0 | 0, 1, 0) | 0 | 0;
+     $770 = $769 ^ $767;
+     SAFE_HEAP_STORE($763 >> 0 | 0, $770 | 0, 1);
+     $771 = $6 + 12 | 0;
+     $772 = SAFE_HEAP_LOAD($766 >> 0 | 0, 1, 0) | 0 | 0;
+     $773 = $0 + 92 | 0;
+     $774 = SAFE_HEAP_LOAD($768 >> 0 | 0, 1, 0) | 0 | 0;
+     $775 = $774 ^ $772;
+     SAFE_HEAP_STORE($768 >> 0 | 0, $775 | 0, 1);
+     $776 = $6 + 13 | 0;
+     $777 = SAFE_HEAP_LOAD($771 >> 0 | 0, 1, 0) | 0 | 0;
+     $778 = $0 + 93 | 0;
+     $779 = SAFE_HEAP_LOAD($773 >> 0 | 0, 1, 0) | 0 | 0;
+     $780 = $779 ^ $777;
+     SAFE_HEAP_STORE($773 >> 0 | 0, $780 | 0, 1);
+     $781 = $6 + 14 | 0;
+     $782 = SAFE_HEAP_LOAD($776 >> 0 | 0, 1, 0) | 0 | 0;
+     $783 = $0 + 94 | 0;
+     $784 = SAFE_HEAP_LOAD($778 >> 0 | 0, 1, 0) | 0 | 0;
+     $785 = $784 ^ $782;
+     SAFE_HEAP_STORE($778 >> 0 | 0, $785 | 0, 1);
+     $786 = $6 + 15 | 0;
+     $787 = SAFE_HEAP_LOAD($781 >> 0 | 0, 1, 0) | 0 | 0;
+     $788 = $0 + 95 | 0;
+     $789 = SAFE_HEAP_LOAD($783 >> 0 | 0, 1, 0) | 0 | 0;
+     $790 = $789 ^ $787;
+     SAFE_HEAP_STORE($783 >> 0 | 0, $790 | 0, 1);
+     $791 = SAFE_HEAP_LOAD($786 >> 0 | 0, 1, 0) | 0 | 0;
+     $792 = SAFE_HEAP_LOAD($788 >> 0 | 0, 1, 0) | 0 | 0;
+     $793 = $792 ^ $791;
+     SAFE_HEAP_STORE($788 >> 0 | 0, $793 | 0, 1);
+     break;
+    }
+   } else {
+    $499 = $$2114;
+    $500 = $499 & 3;
+    $501 = ($500 | 0) == 0;
+    do {
+     if ($501) {
+      $502 = $$2111 >>> 0 > 3;
+      if (!$502) {
+       $$02629$i260 = $$2114;
+       $$02728$i261 = $6;
+       $$130$i259 = $$2111;
+       label = 37;
+       break;
+      }
+      $503 = $$2111 + -4 | 0;
+      $504 = $503 & -4;
+      $505 = $504 + 4 | 0;
+      $scevgep$i241 = $$2114 + $505 | 0;
+      $$02432$i245 = $$2114;
+      $$02531$i246 = $6;
+      $$033$i244 = $$2111;
+      while (1) {
+       $506 = $$02432$i245 + 4 | 0;
+       $507 = SAFE_HEAP_LOAD($$02432$i245 | 0, 4, 0) | 0 | 0;
+       $508 = $$02531$i246 + 4 | 0;
+       SAFE_HEAP_STORE($$02531$i246 | 0, $507 | 0, 4);
+       $509 = $$033$i244 + -4 | 0;
+       $510 = $509 >>> 0 > 3;
+       if ($510) {
+        $$02432$i245 = $506;
+        $$02531$i246 = $508;
+        $$033$i244 = $509;
+       } else {
+        break;
+       }
+      }
+      $scevgep42$i242 = $6 + $505 | 0;
+      $511 = $503 - $504 | 0;
+      $512 = ($511 | 0) == 0;
+      if (!$512) {
+       $$02629$i260 = $scevgep$i241;
+       $$02728$i261 = $scevgep42$i242;
+       $$130$i259 = $511;
+       label = 37;
+      }
+     } else {
+      $$02629$i260 = $$2114;
+      $$02728$i261 = $6;
+      $$130$i259 = $$2111;
+      label = 37;
+     }
+    } while (0);
+    if ((label | 0) == 37) {
+     while (1) {
+      label = 0;
+      $513 = $$02629$i260 + 1 | 0;
+      $514 = SAFE_HEAP_LOAD($$02629$i260 >> 0 | 0, 1, 0) | 0 | 0;
+      $515 = $$02728$i261 + 1 | 0;
+      SAFE_HEAP_STORE($$02728$i261 >> 0 | 0, $514 | 0, 1);
+      $516 = $$130$i259 + -1 | 0;
+      $517 = ($516 | 0) == 0;
+      if ($517) {
+       break;
+      } else {
+       $$02629$i260 = $513;
+       $$02728$i261 = $515;
+       $$130$i259 = $516;
+       label = 37;
+      }
+     }
+    }
+    $518 = $6 + $$2111 | 0;
+    $519 = 16 - $$2111 | 0;
+    _memset($518 | 0, 0, $519 | 0) | 0;
+    SAFE_HEAP_STORE($518 >> 0 | 0, -128 | 0, 1);
+    $520 = $0 + 80 | 0;
+    $521 = $520;
+    $522 = $521 & 3;
+    $523 = ($522 | 0) == 0;
+    if ($523) {
+     $602 = $6 + 4 | 0;
+     $603 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $604 = $520 + 4 | 0;
+     $605 = SAFE_HEAP_LOAD($520 | 0, 4, 0) | 0 | 0;
+     $606 = $605 ^ $603;
+     SAFE_HEAP_STORE($520 | 0, $606 | 0, 4);
+     $607 = $6 + 8 | 0;
+     $608 = SAFE_HEAP_LOAD($602 | 0, 4, 0) | 0 | 0;
+     $609 = $0 + 88 | 0;
+     $610 = SAFE_HEAP_LOAD($604 | 0, 4, 0) | 0 | 0;
+     $611 = $610 ^ $608;
+     SAFE_HEAP_STORE($604 | 0, $611 | 0, 4);
+     $612 = $6 + 12 | 0;
+     $613 = SAFE_HEAP_LOAD($607 | 0, 4, 0) | 0 | 0;
+     $614 = $0 + 92 | 0;
+     $615 = SAFE_HEAP_LOAD($609 | 0, 4, 0) | 0 | 0;
+     $616 = $615 ^ $613;
+     SAFE_HEAP_STORE($609 | 0, $616 | 0, 4);
+     $617 = SAFE_HEAP_LOAD($612 | 0, 4, 0) | 0 | 0;
+     $618 = SAFE_HEAP_LOAD($614 | 0, 4, 0) | 0 | 0;
+     $619 = $618 ^ $617;
+     SAFE_HEAP_STORE($614 | 0, $619 | 0, 4);
+    } else {
+     $524 = $6 + 1 | 0;
+     $525 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+     $526 = $520 + 1 | 0;
+     $527 = SAFE_HEAP_LOAD($520 >> 0 | 0, 1, 0) | 0 | 0;
+     $528 = $527 ^ $525;
+     SAFE_HEAP_STORE($520 >> 0 | 0, $528 | 0, 1);
+     $529 = $6 + 2 | 0;
+     $530 = SAFE_HEAP_LOAD($524 >> 0 | 0, 1, 0) | 0 | 0;
+     $531 = $520 + 2 | 0;
+     $532 = SAFE_HEAP_LOAD($526 >> 0 | 0, 1, 0) | 0 | 0;
+     $533 = $532 ^ $530;
+     SAFE_HEAP_STORE($526 >> 0 | 0, $533 | 0, 1);
+     $534 = $6 + 3 | 0;
+     $535 = SAFE_HEAP_LOAD($529 >> 0 | 0, 1, 0) | 0 | 0;
+     $536 = $520 + 3 | 0;
+     $537 = SAFE_HEAP_LOAD($531 >> 0 | 0, 1, 0) | 0 | 0;
+     $538 = $537 ^ $535;
+     SAFE_HEAP_STORE($531 >> 0 | 0, $538 | 0, 1);
+     $539 = $6 + 4 | 0;
+     $540 = SAFE_HEAP_LOAD($534 >> 0 | 0, 1, 0) | 0 | 0;
+     $541 = $520 + 4 | 0;
+     $542 = SAFE_HEAP_LOAD($536 >> 0 | 0, 1, 0) | 0 | 0;
+     $543 = $542 ^ $540;
+     SAFE_HEAP_STORE($536 >> 0 | 0, $543 | 0, 1);
+     $544 = $6 + 5 | 0;
+     $545 = SAFE_HEAP_LOAD($539 >> 0 | 0, 1, 0) | 0 | 0;
+     $546 = $520 + 5 | 0;
+     $547 = SAFE_HEAP_LOAD($541 >> 0 | 0, 1, 0) | 0 | 0;
+     $548 = $547 ^ $545;
+     SAFE_HEAP_STORE($541 >> 0 | 0, $548 | 0, 1);
+     $549 = $6 + 6 | 0;
+     $550 = SAFE_HEAP_LOAD($544 >> 0 | 0, 1, 0) | 0 | 0;
+     $551 = $520 + 6 | 0;
+     $552 = SAFE_HEAP_LOAD($546 >> 0 | 0, 1, 0) | 0 | 0;
+     $553 = $552 ^ $550;
+     SAFE_HEAP_STORE($546 >> 0 | 0, $553 | 0, 1);
+     $554 = $6 + 7 | 0;
+     $555 = SAFE_HEAP_LOAD($549 >> 0 | 0, 1, 0) | 0 | 0;
+     $556 = $520 + 7 | 0;
+     $557 = SAFE_HEAP_LOAD($551 >> 0 | 0, 1, 0) | 0 | 0;
+     $558 = $557 ^ $555;
+     SAFE_HEAP_STORE($551 >> 0 | 0, $558 | 0, 1);
+     $559 = $6 + 8 | 0;
+     $560 = SAFE_HEAP_LOAD($554 >> 0 | 0, 1, 0) | 0 | 0;
+     $561 = $0 + 88 | 0;
+     $562 = SAFE_HEAP_LOAD($556 >> 0 | 0, 1, 0) | 0 | 0;
+     $563 = $562 ^ $560;
+     SAFE_HEAP_STORE($556 >> 0 | 0, $563 | 0, 1);
+     $564 = $6 + 9 | 0;
+     $565 = SAFE_HEAP_LOAD($559 >> 0 | 0, 1, 0) | 0 | 0;
+     $566 = $0 + 89 | 0;
+     $567 = SAFE_HEAP_LOAD($561 >> 0 | 0, 1, 0) | 0 | 0;
+     $568 = $567 ^ $565;
+     SAFE_HEAP_STORE($561 >> 0 | 0, $568 | 0, 1);
+     $569 = $6 + 10 | 0;
+     $570 = SAFE_HEAP_LOAD($564 >> 0 | 0, 1, 0) | 0 | 0;
+     $571 = $0 + 90 | 0;
+     $572 = SAFE_HEAP_LOAD($566 >> 0 | 0, 1, 0) | 0 | 0;
+     $573 = $572 ^ $570;
+     SAFE_HEAP_STORE($566 >> 0 | 0, $573 | 0, 1);
+     $574 = $6 + 11 | 0;
+     $575 = SAFE_HEAP_LOAD($569 >> 0 | 0, 1, 0) | 0 | 0;
+     $576 = $0 + 91 | 0;
+     $577 = SAFE_HEAP_LOAD($571 >> 0 | 0, 1, 0) | 0 | 0;
+     $578 = $577 ^ $575;
+     SAFE_HEAP_STORE($571 >> 0 | 0, $578 | 0, 1);
+     $579 = $6 + 12 | 0;
+     $580 = SAFE_HEAP_LOAD($574 >> 0 | 0, 1, 0) | 0 | 0;
+     $581 = $0 + 92 | 0;
+     $582 = SAFE_HEAP_LOAD($576 >> 0 | 0, 1, 0) | 0 | 0;
+     $583 = $582 ^ $580;
+     SAFE_HEAP_STORE($576 >> 0 | 0, $583 | 0, 1);
+     $584 = $6 + 13 | 0;
+     $585 = SAFE_HEAP_LOAD($579 >> 0 | 0, 1, 0) | 0 | 0;
+     $586 = $0 + 93 | 0;
+     $587 = SAFE_HEAP_LOAD($581 >> 0 | 0, 1, 0) | 0 | 0;
+     $588 = $587 ^ $585;
+     SAFE_HEAP_STORE($581 >> 0 | 0, $588 | 0, 1);
+     $589 = $6 + 14 | 0;
+     $590 = SAFE_HEAP_LOAD($584 >> 0 | 0, 1, 0) | 0 | 0;
+     $591 = $0 + 94 | 0;
+     $592 = SAFE_HEAP_LOAD($586 >> 0 | 0, 1, 0) | 0 | 0;
+     $593 = $592 ^ $590;
+     SAFE_HEAP_STORE($586 >> 0 | 0, $593 | 0, 1);
+     $594 = $6 + 15 | 0;
+     $595 = SAFE_HEAP_LOAD($589 >> 0 | 0, 1, 0) | 0 | 0;
+     $596 = $0 + 95 | 0;
+     $597 = SAFE_HEAP_LOAD($591 >> 0 | 0, 1, 0) | 0 | 0;
+     $598 = $597 ^ $595;
+     SAFE_HEAP_STORE($591 >> 0 | 0, $598 | 0, 1);
+     $599 = SAFE_HEAP_LOAD($594 >> 0 | 0, 1, 0) | 0 | 0;
+     $600 = SAFE_HEAP_LOAD($596 >> 0 | 0, 1, 0) | 0 | 0;
+     $601 = $600 ^ $599;
+     SAFE_HEAP_STORE($596 >> 0 | 0, $601 | 0, 1);
+    }
+    $620 = $$2117;
+    $621 = $499 | $620;
+    $622 = $621 & 3;
+    $623 = ($622 | 0) == 0;
+    if ($623) {
+     $624 = $$2111 >>> 0 > 3;
+     if ($624) {
+      $625 = $$2111 + -4 | 0;
+      $626 = $625 & -4;
+      $627 = $626 + 4 | 0;
+      $scevgep58$i212 = $7 + $627 | 0;
+      $$03446$i215 = $7;
+      $$03545$i216 = $$2114;
+      $$03644$i217 = $$2117;
+      $$047$i214 = $$2111;
+      while (1) {
+       $628 = $$03545$i216 + 4 | 0;
+       $629 = SAFE_HEAP_LOAD($$03545$i216 | 0, 4, 0) | 0 | 0;
+       $630 = $$03446$i215 + 4 | 0;
+       $631 = SAFE_HEAP_LOAD($$03446$i215 | 0, 4, 0) | 0 | 0;
+       $632 = $631 ^ $629;
+       $633 = $$03644$i217 + 4 | 0;
+       SAFE_HEAP_STORE($$03644$i217 | 0, $632 | 0, 4);
+       $634 = $$047$i214 + -4 | 0;
+       $635 = $634 >>> 0 > 3;
+       if ($635) {
+        $$03446$i215 = $630;
+        $$03545$i216 = $628;
+        $$03644$i217 = $633;
+        $$047$i214 = $634;
+       } else {
+        break;
+       }
+      }
+      $scevgep$i211 = $$2114 + $627 | 0;
+      $scevgep60$i213 = $$2117 + $627 | 0;
+      $636 = $625 - $626 | 0;
+      $$0$lcssa$i223 = $636;
+      $$034$lcssa$i = $scevgep58$i212;
+      $$035$lcssa$i = $scevgep$i211;
+      $$036$lcssa$i = $scevgep60$i213;
+     } else {
+      $$0$lcssa$i223 = $$2111;
+      $$034$lcssa$i = $7;
+      $$035$lcssa$i = $$2114;
+      $$036$lcssa$i = $$2117;
+     }
+     $$037$ph$i226 = $$034$lcssa$i;
+     $$038$ph$i225 = $$035$lcssa$i;
+     $$039$ph$i224 = $$036$lcssa$i;
+     $$1$ph$i227 = $$0$lcssa$i223;
+    } else {
+     $$037$ph$i226 = $7;
+     $$038$ph$i225 = $$2114;
+     $$039$ph$i224 = $$2117;
+     $$1$ph$i227 = $$2111;
+    }
+    $637 = ($$1$ph$i227 | 0) == 0;
+    if (!$637) {
+     $$03742$i230 = $$037$ph$i226;
+     $$03841$i231 = $$038$ph$i225;
+     $$03940$i232 = $$039$ph$i224;
+     $$143$i229 = $$1$ph$i227;
+     while (1) {
+      $638 = $$03841$i231 + 1 | 0;
+      $639 = SAFE_HEAP_LOAD($$03841$i231 >> 0 | 0, 1, 0) | 0 | 0;
+      $640 = $$03742$i230 + 1 | 0;
+      $641 = SAFE_HEAP_LOAD($$03742$i230 >> 0 | 0, 1, 0) | 0 | 0;
+      $642 = $641 ^ $639;
+      $643 = $$03940$i232 + 1 | 0;
+      SAFE_HEAP_STORE($$03940$i232 >> 0 | 0, $642 | 0, 1);
+      $644 = $$143$i229 + -1 | 0;
+      $645 = ($644 | 0) == 0;
+      if ($645) {
+       break;
+      } else {
+       $$03742$i230 = $640;
+       $$03841$i231 = $638;
+       $$03940$i232 = $643;
+       $$143$i229 = $644;
+      }
+     }
+    }
+   }
+  } while (0);
+  $$2 = $497;
+ }
+ $809 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+ $810 = $809 & 8;
+ $811 = $810 << 24 >> 24 == 0;
+ if ($811) {
+  $$3 = $$2;
+ } else {
+  $812 = $0 + 416 | 0;
+  $813 = $0 + 80 | 0;
+  $814 = $0 + 64 | 0;
+  $815 = $812;
+  $816 = $813;
+  $817 = $816 | $815;
+  $818 = $814;
+  $819 = $817 | $818;
+  $820 = $819 & 3;
+  $821 = ($820 | 0) == 0;
+  if ($821) {
+   $915 = SAFE_HEAP_LOAD($813 | 0, 4, 0) | 0 | 0;
+   $916 = SAFE_HEAP_LOAD($814 | 0, 4, 0) | 0 | 0;
+   $917 = $916 ^ $915;
+   $918 = $0 + 420 | 0;
+   SAFE_HEAP_STORE($812 | 0, $917 | 0, 4);
+   $919 = $0 + 88 | 0;
+   $920 = $813 + 4 | 0;
+   $921 = SAFE_HEAP_LOAD($920 | 0, 4, 0) | 0 | 0;
+   $922 = $0 + 72 | 0;
+   $923 = $814 + 4 | 0;
+   $924 = SAFE_HEAP_LOAD($923 | 0, 4, 0) | 0 | 0;
+   $925 = $924 ^ $921;
+   $926 = $0 + 424 | 0;
+   SAFE_HEAP_STORE($918 | 0, $925 | 0, 4);
+   $927 = $0 + 92 | 0;
+   $928 = SAFE_HEAP_LOAD($919 | 0, 4, 0) | 0 | 0;
+   $929 = $0 + 76 | 0;
+   $930 = SAFE_HEAP_LOAD($922 | 0, 4, 0) | 0 | 0;
+   $931 = $930 ^ $928;
+   $932 = $0 + 428 | 0;
+   SAFE_HEAP_STORE($926 | 0, $931 | 0, 4);
+   $933 = SAFE_HEAP_LOAD($927 | 0, 4, 0) | 0 | 0;
+   $934 = SAFE_HEAP_LOAD($929 | 0, 4, 0) | 0 | 0;
+   $935 = $934 ^ $933;
+   SAFE_HEAP_STORE($932 | 0, $935 | 0, 4);
+  } else {
+   $822 = $813 + 1 | 0;
+   $823 = SAFE_HEAP_LOAD($813 >> 0 | 0, 1, 0) | 0 | 0;
+   $824 = $814 + 1 | 0;
+   $825 = SAFE_HEAP_LOAD($814 >> 0 | 0, 1, 0) | 0 | 0;
+   $826 = $825 ^ $823;
+   $827 = $812 + 1 | 0;
+   SAFE_HEAP_STORE($812 >> 0 | 0, $826 | 0, 1);
+   $828 = $813 + 2 | 0;
+   $829 = SAFE_HEAP_LOAD($822 >> 0 | 0, 1, 0) | 0 | 0;
+   $830 = $814 + 2 | 0;
+   $831 = SAFE_HEAP_LOAD($824 >> 0 | 0, 1, 0) | 0 | 0;
+   $832 = $831 ^ $829;
+   $833 = $812 + 2 | 0;
+   SAFE_HEAP_STORE($827 >> 0 | 0, $832 | 0, 1);
+   $834 = $813 + 3 | 0;
+   $835 = SAFE_HEAP_LOAD($828 >> 0 | 0, 1, 0) | 0 | 0;
+   $836 = $814 + 3 | 0;
+   $837 = SAFE_HEAP_LOAD($830 >> 0 | 0, 1, 0) | 0 | 0;
+   $838 = $837 ^ $835;
+   $839 = $812 + 3 | 0;
+   SAFE_HEAP_STORE($833 >> 0 | 0, $838 | 0, 1);
+   $840 = $813 + 4 | 0;
+   $841 = SAFE_HEAP_LOAD($834 >> 0 | 0, 1, 0) | 0 | 0;
+   $842 = $814 + 4 | 0;
+   $843 = SAFE_HEAP_LOAD($836 >> 0 | 0, 1, 0) | 0 | 0;
+   $844 = $843 ^ $841;
+   $845 = $0 + 420 | 0;
+   SAFE_HEAP_STORE($839 >> 0 | 0, $844 | 0, 1);
+   $846 = $813 + 5 | 0;
+   $847 = SAFE_HEAP_LOAD($840 >> 0 | 0, 1, 0) | 0 | 0;
+   $848 = $814 + 5 | 0;
+   $849 = SAFE_HEAP_LOAD($842 >> 0 | 0, 1, 0) | 0 | 0;
+   $850 = $849 ^ $847;
+   $851 = $845 + 1 | 0;
+   SAFE_HEAP_STORE($845 >> 0 | 0, $850 | 0, 1);
+   $852 = $813 + 6 | 0;
+   $853 = SAFE_HEAP_LOAD($846 >> 0 | 0, 1, 0) | 0 | 0;
+   $854 = $814 + 6 | 0;
+   $855 = SAFE_HEAP_LOAD($848 >> 0 | 0, 1, 0) | 0 | 0;
+   $856 = $855 ^ $853;
+   $857 = $845 + 2 | 0;
+   SAFE_HEAP_STORE($851 >> 0 | 0, $856 | 0, 1);
+   $858 = $813 + 7 | 0;
+   $859 = SAFE_HEAP_LOAD($852 >> 0 | 0, 1, 0) | 0 | 0;
+   $860 = $814 + 7 | 0;
+   $861 = SAFE_HEAP_LOAD($854 >> 0 | 0, 1, 0) | 0 | 0;
+   $862 = $861 ^ $859;
+   $863 = $845 + 3 | 0;
+   SAFE_HEAP_STORE($857 >> 0 | 0, $862 | 0, 1);
+   $864 = $0 + 88 | 0;
+   $865 = SAFE_HEAP_LOAD($858 >> 0 | 0, 1, 0) | 0 | 0;
+   $866 = $0 + 72 | 0;
+   $867 = SAFE_HEAP_LOAD($860 >> 0 | 0, 1, 0) | 0 | 0;
+   $868 = $867 ^ $865;
+   $869 = $0 + 424 | 0;
+   SAFE_HEAP_STORE($863 >> 0 | 0, $868 | 0, 1);
+   $870 = $0 + 89 | 0;
+   $871 = SAFE_HEAP_LOAD($864 >> 0 | 0, 1, 0) | 0 | 0;
+   $872 = $0 + 73 | 0;
+   $873 = SAFE_HEAP_LOAD($866 >> 0 | 0, 1, 0) | 0 | 0;
+   $874 = $873 ^ $871;
+   $875 = $869 + 1 | 0;
+   SAFE_HEAP_STORE($869 >> 0 | 0, $874 | 0, 1);
+   $876 = $0 + 90 | 0;
+   $877 = SAFE_HEAP_LOAD($870 >> 0 | 0, 1, 0) | 0 | 0;
+   $878 = $0 + 74 | 0;
+   $879 = SAFE_HEAP_LOAD($872 >> 0 | 0, 1, 0) | 0 | 0;
+   $880 = $879 ^ $877;
+   $881 = $869 + 2 | 0;
+   SAFE_HEAP_STORE($875 >> 0 | 0, $880 | 0, 1);
+   $882 = $0 + 91 | 0;
+   $883 = SAFE_HEAP_LOAD($876 >> 0 | 0, 1, 0) | 0 | 0;
+   $884 = $0 + 75 | 0;
+   $885 = SAFE_HEAP_LOAD($878 >> 0 | 0, 1, 0) | 0 | 0;
+   $886 = $885 ^ $883;
+   $887 = $869 + 3 | 0;
+   SAFE_HEAP_STORE($881 >> 0 | 0, $886 | 0, 1);
+   $888 = $0 + 92 | 0;
+   $889 = SAFE_HEAP_LOAD($882 >> 0 | 0, 1, 0) | 0 | 0;
+   $890 = $0 + 76 | 0;
+   $891 = SAFE_HEAP_LOAD($884 >> 0 | 0, 1, 0) | 0 | 0;
+   $892 = $891 ^ $889;
+   $893 = $0 + 428 | 0;
+   SAFE_HEAP_STORE($887 >> 0 | 0, $892 | 0, 1);
+   $894 = $0 + 93 | 0;
+   $895 = SAFE_HEAP_LOAD($888 >> 0 | 0, 1, 0) | 0 | 0;
+   $896 = $0 + 77 | 0;
+   $897 = SAFE_HEAP_LOAD($890 >> 0 | 0, 1, 0) | 0 | 0;
+   $898 = $897 ^ $895;
+   $899 = $893 + 1 | 0;
+   SAFE_HEAP_STORE($893 >> 0 | 0, $898 | 0, 1);
+   $900 = $0 + 94 | 0;
+   $901 = SAFE_HEAP_LOAD($894 >> 0 | 0, 1, 0) | 0 | 0;
+   $902 = $0 + 78 | 0;
+   $903 = SAFE_HEAP_LOAD($896 >> 0 | 0, 1, 0) | 0 | 0;
+   $904 = $903 ^ $901;
+   $905 = $893 + 2 | 0;
+   SAFE_HEAP_STORE($899 >> 0 | 0, $904 | 0, 1);
+   $906 = $0 + 95 | 0;
+   $907 = SAFE_HEAP_LOAD($900 >> 0 | 0, 1, 0) | 0 | 0;
+   $908 = $0 + 79 | 0;
+   $909 = SAFE_HEAP_LOAD($902 >> 0 | 0, 1, 0) | 0 | 0;
+   $910 = $909 ^ $907;
+   $911 = $893 + 3 | 0;
+   SAFE_HEAP_STORE($905 >> 0 | 0, $910 | 0, 1);
+   $912 = SAFE_HEAP_LOAD($906 >> 0 | 0, 1, 0) | 0 | 0;
+   $913 = SAFE_HEAP_LOAD($908 >> 0 | 0, 1, 0) | 0 | 0;
+   $914 = $913 ^ $912;
+   SAFE_HEAP_STORE($911 >> 0 | 0, $914 | 0, 1);
+  }
+  $936 = $0 + 144 | 0;
+  $937 = $936;
+  $938 = $937 | $815;
+  $939 = $938 & 3;
+  $940 = ($939 | 0) == 0;
+  if ($940) {
+   $1019 = $0 + 148 | 0;
+   $1020 = SAFE_HEAP_LOAD($936 | 0, 4, 0) | 0 | 0;
+   $1021 = $0 + 420 | 0;
+   $1022 = SAFE_HEAP_LOAD($812 | 0, 4, 0) | 0 | 0;
+   $1023 = $1022 ^ $1020;
+   SAFE_HEAP_STORE($812 | 0, $1023 | 0, 4);
+   $1024 = $0 + 152 | 0;
+   $1025 = SAFE_HEAP_LOAD($1019 | 0, 4, 0) | 0 | 0;
+   $1026 = $0 + 424 | 0;
+   $1027 = SAFE_HEAP_LOAD($1021 | 0, 4, 0) | 0 | 0;
+   $1028 = $1027 ^ $1025;
+   SAFE_HEAP_STORE($1021 | 0, $1028 | 0, 4);
+   $1029 = $0 + 156 | 0;
+   $1030 = SAFE_HEAP_LOAD($1024 | 0, 4, 0) | 0 | 0;
+   $1031 = $0 + 428 | 0;
+   $1032 = SAFE_HEAP_LOAD($1026 | 0, 4, 0) | 0 | 0;
+   $1033 = $1032 ^ $1030;
+   SAFE_HEAP_STORE($1026 | 0, $1033 | 0, 4);
+   $1034 = SAFE_HEAP_LOAD($1029 | 0, 4, 0) | 0 | 0;
+   $1035 = SAFE_HEAP_LOAD($1031 | 0, 4, 0) | 0 | 0;
+   $1036 = $1035 ^ $1034;
+   SAFE_HEAP_STORE($1031 | 0, $1036 | 0, 4);
+  } else {
+   $941 = $0 + 145 | 0;
+   $942 = SAFE_HEAP_LOAD($936 >> 0 | 0, 1, 0) | 0 | 0;
+   $943 = $812 + 1 | 0;
+   $944 = SAFE_HEAP_LOAD($812 >> 0 | 0, 1, 0) | 0 | 0;
+   $945 = $944 ^ $942;
+   SAFE_HEAP_STORE($812 >> 0 | 0, $945 | 0, 1);
+   $946 = $0 + 146 | 0;
+   $947 = SAFE_HEAP_LOAD($941 >> 0 | 0, 1, 0) | 0 | 0;
+   $948 = $812 + 2 | 0;
+   $949 = SAFE_HEAP_LOAD($943 >> 0 | 0, 1, 0) | 0 | 0;
+   $950 = $949 ^ $947;
+   SAFE_HEAP_STORE($943 >> 0 | 0, $950 | 0, 1);
+   $951 = $0 + 147 | 0;
+   $952 = SAFE_HEAP_LOAD($946 >> 0 | 0, 1, 0) | 0 | 0;
+   $953 = $812 + 3 | 0;
+   $954 = SAFE_HEAP_LOAD($948 >> 0 | 0, 1, 0) | 0 | 0;
+   $955 = $954 ^ $952;
+   SAFE_HEAP_STORE($948 >> 0 | 0, $955 | 0, 1);
+   $956 = $0 + 148 | 0;
+   $957 = SAFE_HEAP_LOAD($951 >> 0 | 0, 1, 0) | 0 | 0;
+   $958 = $0 + 420 | 0;
+   $959 = SAFE_HEAP_LOAD($953 >> 0 | 0, 1, 0) | 0 | 0;
+   $960 = $959 ^ $957;
+   SAFE_HEAP_STORE($953 >> 0 | 0, $960 | 0, 1);
+   $961 = $0 + 149 | 0;
+   $962 = SAFE_HEAP_LOAD($956 >> 0 | 0, 1, 0) | 0 | 0;
+   $963 = $958 + 1 | 0;
+   $964 = SAFE_HEAP_LOAD($958 >> 0 | 0, 1, 0) | 0 | 0;
+   $965 = $964 ^ $962;
+   SAFE_HEAP_STORE($958 >> 0 | 0, $965 | 0, 1);
+   $966 = $0 + 150 | 0;
+   $967 = SAFE_HEAP_LOAD($961 >> 0 | 0, 1, 0) | 0 | 0;
+   $968 = $958 + 2 | 0;
+   $969 = SAFE_HEAP_LOAD($963 >> 0 | 0, 1, 0) | 0 | 0;
+   $970 = $969 ^ $967;
+   SAFE_HEAP_STORE($963 >> 0 | 0, $970 | 0, 1);
+   $971 = $0 + 151 | 0;
+   $972 = SAFE_HEAP_LOAD($966 >> 0 | 0, 1, 0) | 0 | 0;
+   $973 = $958 + 3 | 0;
+   $974 = SAFE_HEAP_LOAD($968 >> 0 | 0, 1, 0) | 0 | 0;
+   $975 = $974 ^ $972;
+   SAFE_HEAP_STORE($968 >> 0 | 0, $975 | 0, 1);
+   $976 = $0 + 152 | 0;
+   $977 = SAFE_HEAP_LOAD($971 >> 0 | 0, 1, 0) | 0 | 0;
+   $978 = $0 + 424 | 0;
+   $979 = SAFE_HEAP_LOAD($973 >> 0 | 0, 1, 0) | 0 | 0;
+   $980 = $979 ^ $977;
+   SAFE_HEAP_STORE($973 >> 0 | 0, $980 | 0, 1);
+   $981 = $0 + 153 | 0;
+   $982 = SAFE_HEAP_LOAD($976 >> 0 | 0, 1, 0) | 0 | 0;
+   $983 = $978 + 1 | 0;
+   $984 = SAFE_HEAP_LOAD($978 >> 0 | 0, 1, 0) | 0 | 0;
+   $985 = $984 ^ $982;
+   SAFE_HEAP_STORE($978 >> 0 | 0, $985 | 0, 1);
+   $986 = $0 + 154 | 0;
+   $987 = SAFE_HEAP_LOAD($981 >> 0 | 0, 1, 0) | 0 | 0;
+   $988 = $978 + 2 | 0;
+   $989 = SAFE_HEAP_LOAD($983 >> 0 | 0, 1, 0) | 0 | 0;
+   $990 = $989 ^ $987;
+   SAFE_HEAP_STORE($983 >> 0 | 0, $990 | 0, 1);
+   $991 = $0 + 155 | 0;
+   $992 = SAFE_HEAP_LOAD($986 >> 0 | 0, 1, 0) | 0 | 0;
+   $993 = $978 + 3 | 0;
+   $994 = SAFE_HEAP_LOAD($988 >> 0 | 0, 1, 0) | 0 | 0;
+   $995 = $994 ^ $992;
+   SAFE_HEAP_STORE($988 >> 0 | 0, $995 | 0, 1);
+   $996 = $0 + 156 | 0;
+   $997 = SAFE_HEAP_LOAD($991 >> 0 | 0, 1, 0) | 0 | 0;
+   $998 = $0 + 428 | 0;
+   $999 = SAFE_HEAP_LOAD($993 >> 0 | 0, 1, 0) | 0 | 0;
+   $1000 = $999 ^ $997;
+   SAFE_HEAP_STORE($993 >> 0 | 0, $1000 | 0, 1);
+   $1001 = $0 + 157 | 0;
+   $1002 = SAFE_HEAP_LOAD($996 >> 0 | 0, 1, 0) | 0 | 0;
+   $1003 = $998 + 1 | 0;
+   $1004 = SAFE_HEAP_LOAD($998 >> 0 | 0, 1, 0) | 0 | 0;
+   $1005 = $1004 ^ $1002;
+   SAFE_HEAP_STORE($998 >> 0 | 0, $1005 | 0, 1);
+   $1006 = $0 + 158 | 0;
+   $1007 = SAFE_HEAP_LOAD($1001 >> 0 | 0, 1, 0) | 0 | 0;
+   $1008 = $998 + 2 | 0;
+   $1009 = SAFE_HEAP_LOAD($1003 >> 0 | 0, 1, 0) | 0 | 0;
+   $1010 = $1009 ^ $1007;
+   SAFE_HEAP_STORE($1003 >> 0 | 0, $1010 | 0, 1);
+   $1011 = $0 + 159 | 0;
+   $1012 = SAFE_HEAP_LOAD($1006 >> 0 | 0, 1, 0) | 0 | 0;
+   $1013 = $998 + 3 | 0;
+   $1014 = SAFE_HEAP_LOAD($1008 >> 0 | 0, 1, 0) | 0 | 0;
+   $1015 = $1014 ^ $1012;
+   SAFE_HEAP_STORE($1008 >> 0 | 0, $1015 | 0, 1);
+   $1016 = SAFE_HEAP_LOAD($1011 >> 0 | 0, 1, 0) | 0 | 0;
+   $1017 = SAFE_HEAP_LOAD($1013 >> 0 | 0, 1, 0) | 0 | 0;
+   $1018 = $1017 ^ $1016;
+   SAFE_HEAP_STORE($1013 >> 0 | 0, $1018 | 0, 1);
+  }
+  $1037 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+  $1038 = $1037 + 36 | 0;
+  $1039 = SAFE_HEAP_LOAD($1038 | 0, 4, 0) | 0 | 0;
+  $1040 = $0 + 496 | 0;
+  $1041 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($1039 | 0, 127 | 0) | 0) & 
127]($1040, $812, $812) | 0;
+  $1042 = $1041 >>> 0 > $$2 >>> 0;
+  $1043 = $1042 ? $1041 : $$2;
+  $1044 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+  $1045 = $1044 | 1;
+  SAFE_HEAP_STORE($14 >> 0 | 0, $1045 | 0, 1);
+  $$3 = $1043;
+ }
+ $1046 = ($$3 | 0) == 0;
+ if ($1046) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $1047 = $$3 + 16 | 0;
+ ___gcry_burn_stack($1047);
+ $$0 = 0;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+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, $$075155 = 0, $$076154 = 0, $$078153 = 0, $$080 = 0, $$081$lcssa 
= 0, $$1152 = 0, $$177151 = 0, $$179150 = 0, $$182$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, $1011 = 0, $1012 = 
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, $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, $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;
+ var $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, $53 = 0, $530 = 0;
+ var $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, $548 = 0, $549 = 0;
+ var $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, $566 = 0, $567 = 0;
+ var $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, $584 = 0, $585 = 0;
+ var $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, $6 = 
0, $60 = 0, $600 = 0, $601 = 0, $602 = 0;
+ var $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, $620 = 0;
+ var $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, $639 = 0;
+ var $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, $657 = 0;
+ var $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, $675 = 0;
+ var $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, $693 = 0;
+ var $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, $710 = 0;
+ var $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, $729 = 0;
+ var $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, $747 = 0;
+ var $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, $765 = 0;
+ var $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, $783 = 0;
+ var $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, $800 = 0;
+ var $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, $819 = 0;
+ var $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, $834 = 0, $835 = 0, $836 = 0, $837 = 0;
+ var $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, $851 
= 0, $852 = 0, $853 = 0, $854 = 0, $855 = 0;
+ var $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, $87 
= 0, $870 = 0, $871 = 0, $872 = 0, $873 = 0;
+ var $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, $888 
= 0, $889 = 0, $89 = 0, $890 = 0, $891 = 0;
+ var $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, 
$905 = 0, $906 = 0, $907 = 0, $908 = 0, $909 = 0;
+ var $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, $923 
= 0, $924 = 0, $925 = 0, $926 = 0, $927 = 0;
+ var $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, $941 
= 0, $942 = 0, $943 = 0, $944 = 0, $945 = 0;
+ var $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, $959 = 0, $96 
= 0, $960 = 0, $961 = 0, $962 = 0, $963 = 0;
+ var $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, $977 = 0, $978 
= 0, $979 = 0, $98 = 0, $980 = 0, $981 = 0;
+ var $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, $995 = 0, 
$996 = 0, $997 = 0, $998 = 0, $999 = 0, label = 0;
+ var 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 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $14 = ($13 | 0) == (0 | 0);
+  if (!$14) {
+   FUNCTION_TABLE_v[(SAFE_FT_MASK($13 | 0, 127 | 0) | 0) & 127]();
+  }
+  $512 = $7 + 492 | 0;
+  $513 = SAFE_HEAP_LOAD($512 | 0, 4, 0) | 0 | 0;
+  $514 = ($3 | 0) == 0;
+  if ($514) {
+   $$182$lcssa = 0;
+  } else {
+   $515 = $0 + 464 | 0;
+   $516 = $0 + 64 | 0;
+   $517 = $516;
+   $518 = $516 + 4 | 0;
+   $519 = $0 + 72 | 0;
+   $520 = $0 + 76 | 0;
+   $521 = $6 + 4 | 0;
+   $522 = $6 + 8 | 0;
+   $523 = $6 + 12 | 0;
+   $524 = $517 & 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 = $0 + 160 | 0;
+   $534 = $6 + 1 | 0;
+   $535 = $6 + 2 | 0;
+   $536 = $6 + 3 | 0;
+   $537 = $6 + 4 | 0;
+   $538 = $537 + 1 | 0;
+   $539 = $537 + 2 | 0;
+   $540 = $537 + 3 | 0;
+   $541 = $6 + 8 | 0;
+   $542 = $541 + 1 | 0;
+   $543 = $541 + 2 | 0;
+   $544 = $541 + 3 | 0;
+   $545 = $6 + 12 | 0;
+   $546 = $545 + 1 | 0;
+   $547 = $545 + 2 | 0;
+   $548 = $545 + 3 | 0;
+   $549 = $6 + 1 | 0;
+   $550 = $526 + 1 | 0;
+   $551 = $6 + 2 | 0;
+   $552 = $526 + 2 | 0;
+   $553 = $6 + 3 | 0;
+   $554 = $526 + 3 | 0;
+   $555 = $6 + 4 | 0;
+   $556 = $526 + 4 | 0;
+   $557 = $555 + 1 | 0;
+   $558 = $526 + 5 | 0;
+   $559 = $555 + 2 | 0;
+   $560 = $526 + 6 | 0;
+   $561 = $555 + 3 | 0;
+   $562 = $526 + 7 | 0;
+   $563 = $6 + 8 | 0;
+   $564 = $0 + 88 | 0;
+   $565 = $563 + 1 | 0;
+   $566 = $0 + 89 | 0;
+   $567 = $563 + 2 | 0;
+   $568 = $0 + 90 | 0;
+   $569 = $563 + 3 | 0;
+   $570 = $0 + 91 | 0;
+   $571 = $6 + 12 | 0;
+   $572 = $0 + 92 | 0;
+   $573 = $571 + 1 | 0;
+   $574 = $0 + 93 | 0;
+   $575 = $571 + 2 | 0;
+   $576 = $0 + 94 | 0;
+   $577 = $571 + 3 | 0;
+   $578 = $0 + 95 | 0;
+   $579 = $516 + 1 | 0;
+   $580 = $6 + 1 | 0;
+   $581 = $516 + 2 | 0;
+   $582 = $6 + 2 | 0;
+   $583 = $516 + 3 | 0;
+   $584 = $6 + 3 | 0;
+   $585 = $516 + 4 | 0;
+   $586 = $6 + 4 | 0;
+   $587 = $516 + 5 | 0;
+   $588 = $586 + 1 | 0;
+   $589 = $516 + 6 | 0;
+   $590 = $586 + 2 | 0;
+   $591 = $516 + 7 | 0;
+   $592 = $586 + 3 | 0;
+   $593 = $0 + 72 | 0;
+   $594 = $6 + 8 | 0;
+   $595 = $0 + 73 | 0;
+   $596 = $594 + 1 | 0;
+   $597 = $0 + 74 | 0;
+   $598 = $594 + 2 | 0;
+   $599 = $0 + 75 | 0;
+   $600 = $594 + 3 | 0;
+   $601 = $0 + 76 | 0;
+   $602 = $6 + 12 | 0;
+   $603 = $0 + 77 | 0;
+   $604 = $602 + 1 | 0;
+   $605 = $0 + 78 | 0;
+   $606 = $602 + 2 | 0;
+   $607 = $0 + 79 | 0;
+   $608 = $602 + 3 | 0;
+   $609 = $6 + 1 | 0;
+   $610 = $6 + 2 | 0;
+   $611 = $6 + 3 | 0;
+   $612 = $6 + 4 | 0;
+   $613 = $612 + 1 | 0;
+   $614 = $612 + 2 | 0;
+   $615 = $612 + 3 | 0;
+   $616 = $6 + 8 | 0;
+   $617 = $616 + 1 | 0;
+   $618 = $616 + 2 | 0;
+   $619 = $616 + 3 | 0;
+   $620 = $6 + 12 | 0;
+   $621 = $620 + 1 | 0;
+   $622 = $620 + 2 | 0;
+   $623 = $620 + 3 | 0;
+   $624 = $516 + 1 | 0;
+   $625 = $516 + 2 | 0;
+   $626 = $516 + 3 | 0;
+   $627 = $516 + 4 | 0;
+   $628 = $516 + 5 | 0;
+   $629 = $516 + 6 | 0;
+   $630 = $516 + 7 | 0;
+   $631 = $0 + 72 | 0;
+   $632 = $0 + 73 | 0;
+   $633 = $0 + 74 | 0;
+   $634 = $0 + 75 | 0;
+   $635 = $0 + 76 | 0;
+   $636 = $0 + 77 | 0;
+   $637 = $0 + 78 | 0;
+   $638 = $0 + 79 | 0;
+   $$1152 = $3;
+   $$177151 = $1;
+   $$179150 = $2;
+   while (1) {
+    $639 = $515;
+    $640 = $639;
+    $641 = SAFE_HEAP_LOAD($640 | 0, 4, 0) | 0 | 0;
+    $642 = $639 + 4 | 0;
+    $643 = $642;
+    $644 = SAFE_HEAP_LOAD($643 | 0, 4, 0) | 0 | 0;
+    $645 = _i64Add($641 | 0, $644 | 0, 1, 0) | 0;
+    $646 = tempRet0;
+    $647 = $515;
+    $648 = $647;
+    SAFE_HEAP_STORE($648 | 0, $645 | 0, 4);
+    $649 = $647 + 4 | 0;
+    $650 = $649;
+    SAFE_HEAP_STORE($650 | 0, $646 | 0, 4);
+    $651 = ($645 | 0) == 0;
+    $652 = 0 == 0;
+    $653 = $651 & $652;
+    if ($653) {
+     label = 34;
+    } else {
+     $654 = _llvm_cttz_i32($645 | 0) | 0;
+     $655 = $654 >>> 0 < 16;
+     if ($655) {
+      $656 = $533 + ($654 << 4) | 0;
+      $$0 = $656;
+     } else {
+      label = 34;
+     }
+    }
+    if ((label | 0) == 34) {
+     label = 0;
+     $657 = __gcry_cipher_ocb_get_l($0, $6, $645, $646) | 0;
+     $$0 = $657;
+    }
+    $658 = $$0;
+    $659 = $658 | $517;
+    $660 = $659 & 3;
+    $661 = ($660 | 0) == 0;
+    if ($661) {
+     $725 = $$0 + 4 | 0;
+     $726 = SAFE_HEAP_LOAD($$0 | 0, 4, 0) | 0 | 0;
+     $727 = SAFE_HEAP_LOAD($516 | 0, 4, 0) | 0 | 0;
+     $728 = $727 ^ $726;
+     SAFE_HEAP_STORE($516 | 0, $728 | 0, 4);
+     $729 = $$0 + 8 | 0;
+     $730 = SAFE_HEAP_LOAD($725 | 0, 4, 0) | 0 | 0;
+     $731 = SAFE_HEAP_LOAD($518 | 0, 4, 0) | 0 | 0;
+     $732 = $731 ^ $730;
+     SAFE_HEAP_STORE($518 | 0, $732 | 0, 4);
+     $733 = $$0 + 12 | 0;
+     $734 = SAFE_HEAP_LOAD($729 | 0, 4, 0) | 0 | 0;
+     $735 = SAFE_HEAP_LOAD($519 | 0, 4, 0) | 0 | 0;
+     $736 = $735 ^ $734;
+     SAFE_HEAP_STORE($519 | 0, $736 | 0, 4);
+     $737 = SAFE_HEAP_LOAD($733 | 0, 4, 0) | 0 | 0;
+     $738 = SAFE_HEAP_LOAD($520 | 0, 4, 0) | 0 | 0;
+     $739 = $738 ^ $737;
+     SAFE_HEAP_STORE($520 | 0, $739 | 0, 4);
+    } else {
+     $662 = $$0 + 1 | 0;
+     $663 = SAFE_HEAP_LOAD($$0 >> 0 | 0, 1, 0) | 0 | 0;
+     $664 = SAFE_HEAP_LOAD($516 >> 0 | 0, 1, 0) | 0 | 0;
+     $665 = $664 ^ $663;
+     SAFE_HEAP_STORE($516 >> 0 | 0, $665 | 0, 1);
+     $666 = $$0 + 2 | 0;
+     $667 = SAFE_HEAP_LOAD($662 >> 0 | 0, 1, 0) | 0 | 0;
+     $668 = SAFE_HEAP_LOAD($624 >> 0 | 0, 1, 0) | 0 | 0;
+     $669 = $668 ^ $667;
+     SAFE_HEAP_STORE($624 >> 0 | 0, $669 | 0, 1);
+     $670 = $$0 + 3 | 0;
+     $671 = SAFE_HEAP_LOAD($666 >> 0 | 0, 1, 0) | 0 | 0;
+     $672 = SAFE_HEAP_LOAD($625 >> 0 | 0, 1, 0) | 0 | 0;
+     $673 = $672 ^ $671;
+     SAFE_HEAP_STORE($625 >> 0 | 0, $673 | 0, 1);
+     $674 = $$0 + 4 | 0;
+     $675 = SAFE_HEAP_LOAD($670 >> 0 | 0, 1, 0) | 0 | 0;
+     $676 = SAFE_HEAP_LOAD($626 >> 0 | 0, 1, 0) | 0 | 0;
+     $677 = $676 ^ $675;
+     SAFE_HEAP_STORE($626 >> 0 | 0, $677 | 0, 1);
+     $678 = $$0 + 5 | 0;
+     $679 = SAFE_HEAP_LOAD($674 >> 0 | 0, 1, 0) | 0 | 0;
+     $680 = SAFE_HEAP_LOAD($627 >> 0 | 0, 1, 0) | 0 | 0;
+     $681 = $680 ^ $679;
+     SAFE_HEAP_STORE($627 >> 0 | 0, $681 | 0, 1);
+     $682 = $$0 + 6 | 0;
+     $683 = SAFE_HEAP_LOAD($678 >> 0 | 0, 1, 0) | 0 | 0;
+     $684 = SAFE_HEAP_LOAD($628 >> 0 | 0, 1, 0) | 0 | 0;
+     $685 = $684 ^ $683;
+     SAFE_HEAP_STORE($628 >> 0 | 0, $685 | 0, 1);
+     $686 = $$0 + 7 | 0;
+     $687 = SAFE_HEAP_LOAD($682 >> 0 | 0, 1, 0) | 0 | 0;
+     $688 = SAFE_HEAP_LOAD($629 >> 0 | 0, 1, 0) | 0 | 0;
+     $689 = $688 ^ $687;
+     SAFE_HEAP_STORE($629 >> 0 | 0, $689 | 0, 1);
+     $690 = $$0 + 8 | 0;
+     $691 = SAFE_HEAP_LOAD($686 >> 0 | 0, 1, 0) | 0 | 0;
+     $692 = SAFE_HEAP_LOAD($630 >> 0 | 0, 1, 0) | 0 | 0;
+     $693 = $692 ^ $691;
+     SAFE_HEAP_STORE($630 >> 0 | 0, $693 | 0, 1);
+     $694 = $$0 + 9 | 0;
+     $695 = SAFE_HEAP_LOAD($690 >> 0 | 0, 1, 0) | 0 | 0;
+     $696 = SAFE_HEAP_LOAD($631 >> 0 | 0, 1, 0) | 0 | 0;
+     $697 = $696 ^ $695;
+     SAFE_HEAP_STORE($631 >> 0 | 0, $697 | 0, 1);
+     $698 = $$0 + 10 | 0;
+     $699 = SAFE_HEAP_LOAD($694 >> 0 | 0, 1, 0) | 0 | 0;
+     $700 = SAFE_HEAP_LOAD($632 >> 0 | 0, 1, 0) | 0 | 0;
+     $701 = $700 ^ $699;
+     SAFE_HEAP_STORE($632 >> 0 | 0, $701 | 0, 1);
+     $702 = $$0 + 11 | 0;
+     $703 = SAFE_HEAP_LOAD($698 >> 0 | 0, 1, 0) | 0 | 0;
+     $704 = SAFE_HEAP_LOAD($633 >> 0 | 0, 1, 0) | 0 | 0;
+     $705 = $704 ^ $703;
+     SAFE_HEAP_STORE($633 >> 0 | 0, $705 | 0, 1);
+     $706 = $$0 + 12 | 0;
+     $707 = SAFE_HEAP_LOAD($702 >> 0 | 0, 1, 0) | 0 | 0;
+     $708 = SAFE_HEAP_LOAD($634 >> 0 | 0, 1, 0) | 0 | 0;
+     $709 = $708 ^ $707;
+     SAFE_HEAP_STORE($634 >> 0 | 0, $709 | 0, 1);
+     $710 = $$0 + 13 | 0;
+     $711 = SAFE_HEAP_LOAD($706 >> 0 | 0, 1, 0) | 0 | 0;
+     $712 = SAFE_HEAP_LOAD($635 >> 0 | 0, 1, 0) | 0 | 0;
+     $713 = $712 ^ $711;
+     SAFE_HEAP_STORE($635 >> 0 | 0, $713 | 0, 1);
+     $714 = $$0 + 14 | 0;
+     $715 = SAFE_HEAP_LOAD($710 >> 0 | 0, 1, 0) | 0 | 0;
+     $716 = SAFE_HEAP_LOAD($636 >> 0 | 0, 1, 0) | 0 | 0;
+     $717 = $716 ^ $715;
+     SAFE_HEAP_STORE($636 >> 0 | 0, $717 | 0, 1);
+     $718 = $$0 + 15 | 0;
+     $719 = SAFE_HEAP_LOAD($714 >> 0 | 0, 1, 0) | 0 | 0;
+     $720 = SAFE_HEAP_LOAD($637 >> 0 | 0, 1, 0) | 0 | 0;
+     $721 = $720 ^ $719;
+     SAFE_HEAP_STORE($637 >> 0 | 0, $721 | 0, 1);
+     $722 = SAFE_HEAP_LOAD($718 >> 0 | 0, 1, 0) | 0 | 0;
+     $723 = SAFE_HEAP_LOAD($638 >> 0 | 0, 1, 0) | 0 | 0;
+     $724 = $723 ^ $722;
+     SAFE_HEAP_STORE($638 >> 0 | 0, $724 | 0, 1);
+    }
+    $740 = $$179150;
+    $741 = $740 & 3;
+    $742 = ($741 | 0) == 0;
+    if ($742) {
+     $774 = $$179150 + 4 | 0;
+     $775 = SAFE_HEAP_LOAD($$179150 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($6 | 0, $775 | 0, 4);
+     $776 = $$179150 + 8 | 0;
+     $777 = SAFE_HEAP_LOAD($774 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($521 | 0, $777 | 0, 4);
+     $778 = $$179150 + 12 | 0;
+     $779 = SAFE_HEAP_LOAD($776 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($522 | 0, $779 | 0, 4);
+     $780 = SAFE_HEAP_LOAD($778 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($523 | 0, $780 | 0, 4);
+    } else {
+     $743 = $$179150 + 1 | 0;
+     $744 = SAFE_HEAP_LOAD($$179150 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($6 >> 0 | 0, $744 | 0, 1);
+     $745 = $$179150 + 2 | 0;
+     $746 = SAFE_HEAP_LOAD($743 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($609 >> 0 | 0, $746 | 0, 1);
+     $747 = $$179150 + 3 | 0;
+     $748 = SAFE_HEAP_LOAD($745 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($610 >> 0 | 0, $748 | 0, 1);
+     $749 = $$179150 + 4 | 0;
+     $750 = SAFE_HEAP_LOAD($747 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($611 >> 0 | 0, $750 | 0, 1);
+     $751 = $$179150 + 5 | 0;
+     $752 = SAFE_HEAP_LOAD($749 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($612 >> 0 | 0, $752 | 0, 1);
+     $753 = $$179150 + 6 | 0;
+     $754 = SAFE_HEAP_LOAD($751 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($613 >> 0 | 0, $754 | 0, 1);
+     $755 = $$179150 + 7 | 0;
+     $756 = SAFE_HEAP_LOAD($753 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($614 >> 0 | 0, $756 | 0, 1);
+     $757 = $$179150 + 8 | 0;
+     $758 = SAFE_HEAP_LOAD($755 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($615 >> 0 | 0, $758 | 0, 1);
+     $759 = $$179150 + 9 | 0;
+     $760 = SAFE_HEAP_LOAD($757 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($616 >> 0 | 0, $760 | 0, 1);
+     $761 = $$179150 + 10 | 0;
+     $762 = SAFE_HEAP_LOAD($759 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($617 >> 0 | 0, $762 | 0, 1);
+     $763 = $$179150 + 11 | 0;
+     $764 = SAFE_HEAP_LOAD($761 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($618 >> 0 | 0, $764 | 0, 1);
+     $765 = $$179150 + 12 | 0;
+     $766 = SAFE_HEAP_LOAD($763 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($619 >> 0 | 0, $766 | 0, 1);
+     $767 = $$179150 + 13 | 0;
+     $768 = SAFE_HEAP_LOAD($765 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($620 >> 0 | 0, $768 | 0, 1);
+     $769 = $$179150 + 14 | 0;
+     $770 = SAFE_HEAP_LOAD($767 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($621 >> 0 | 0, $770 | 0, 1);
+     $771 = $$179150 + 15 | 0;
+     $772 = SAFE_HEAP_LOAD($769 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($622 >> 0 | 0, $772 | 0, 1);
+     $773 = SAFE_HEAP_LOAD($771 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($623 >> 0 | 0, $773 | 0, 1);
+    }
+    if ($525) {
+     $878 = SAFE_HEAP_LOAD($516 | 0, 4, 0) | 0 | 0;
+     $879 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $880 = $879 ^ $878;
+     SAFE_HEAP_STORE($6 | 0, $880 | 0, 4);
+     $881 = SAFE_HEAP_LOAD($518 | 0, 4, 0) | 0 | 0;
+     $882 = SAFE_HEAP_LOAD($521 | 0, 4, 0) | 0 | 0;
+     $883 = $882 ^ $881;
+     SAFE_HEAP_STORE($521 | 0, $883 | 0, 4);
+     $884 = SAFE_HEAP_LOAD($519 | 0, 4, 0) | 0 | 0;
+     $885 = SAFE_HEAP_LOAD($522 | 0, 4, 0) | 0 | 0;
+     $886 = $885 ^ $884;
+     SAFE_HEAP_STORE($522 | 0, $886 | 0, 4);
+     $887 = SAFE_HEAP_LOAD($520 | 0, 4, 0) | 0 | 0;
+     $888 = SAFE_HEAP_LOAD($523 | 0, 4, 0) | 0 | 0;
+     $889 = $888 ^ $887;
+     SAFE_HEAP_STORE($523 | 0, $889 | 0, 4);
+     $890 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($513 | 0, 127 | 0) | 0) & 
127]($7, $6, $6) | 0;
+     $891 = SAFE_HEAP_LOAD($516 | 0, 4, 0) | 0 | 0;
+     $892 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $893 = $892 ^ $891;
+     SAFE_HEAP_STORE($6 | 0, $893 | 0, 4);
+     $894 = SAFE_HEAP_LOAD($518 | 0, 4, 0) | 0 | 0;
+     $895 = SAFE_HEAP_LOAD($521 | 0, 4, 0) | 0 | 0;
+     $896 = $895 ^ $894;
+     SAFE_HEAP_STORE($521 | 0, $896 | 0, 4);
+     $897 = SAFE_HEAP_LOAD($519 | 0, 4, 0) | 0 | 0;
+     $898 = SAFE_HEAP_LOAD($522 | 0, 4, 0) | 0 | 0;
+     $899 = $898 ^ $897;
+     SAFE_HEAP_STORE($522 | 0, $899 | 0, 4);
+     $900 = SAFE_HEAP_LOAD($520 | 0, 4, 0) | 0 | 0;
+     $901 = SAFE_HEAP_LOAD($523 | 0, 4, 0) | 0 | 0;
+     $902 = $901 ^ $900;
+     SAFE_HEAP_STORE($523 | 0, $902 | 0, 4);
+     $1012 = $890;
+    } else {
+     $781 = SAFE_HEAP_LOAD($516 >> 0 | 0, 1, 0) | 0 | 0;
+     $782 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+     $783 = $782 ^ $781;
+     SAFE_HEAP_STORE($6 >> 0 | 0, $783 | 0, 1);
+     $784 = SAFE_HEAP_LOAD($579 >> 0 | 0, 1, 0) | 0 | 0;
+     $785 = SAFE_HEAP_LOAD($580 >> 0 | 0, 1, 0) | 0 | 0;
+     $786 = $785 ^ $784;
+     SAFE_HEAP_STORE($580 >> 0 | 0, $786 | 0, 1);
+     $787 = SAFE_HEAP_LOAD($581 >> 0 | 0, 1, 0) | 0 | 0;
+     $788 = SAFE_HEAP_LOAD($582 >> 0 | 0, 1, 0) | 0 | 0;
+     $789 = $788 ^ $787;
+     SAFE_HEAP_STORE($582 >> 0 | 0, $789 | 0, 1);
+     $790 = SAFE_HEAP_LOAD($583 >> 0 | 0, 1, 0) | 0 | 0;
+     $791 = SAFE_HEAP_LOAD($584 >> 0 | 0, 1, 0) | 0 | 0;
+     $792 = $791 ^ $790;
+     SAFE_HEAP_STORE($584 >> 0 | 0, $792 | 0, 1);
+     $793 = SAFE_HEAP_LOAD($585 >> 0 | 0, 1, 0) | 0 | 0;
+     $794 = SAFE_HEAP_LOAD($586 >> 0 | 0, 1, 0) | 0 | 0;
+     $795 = $794 ^ $793;
+     SAFE_HEAP_STORE($586 >> 0 | 0, $795 | 0, 1);
+     $796 = SAFE_HEAP_LOAD($587 >> 0 | 0, 1, 0) | 0 | 0;
+     $797 = SAFE_HEAP_LOAD($588 >> 0 | 0, 1, 0) | 0 | 0;
+     $798 = $797 ^ $796;
+     SAFE_HEAP_STORE($588 >> 0 | 0, $798 | 0, 1);
+     $799 = SAFE_HEAP_LOAD($589 >> 0 | 0, 1, 0) | 0 | 0;
+     $800 = SAFE_HEAP_LOAD($590 >> 0 | 0, 1, 0) | 0 | 0;
+     $801 = $800 ^ $799;
+     SAFE_HEAP_STORE($590 >> 0 | 0, $801 | 0, 1);
+     $802 = SAFE_HEAP_LOAD($591 >> 0 | 0, 1, 0) | 0 | 0;
+     $803 = SAFE_HEAP_LOAD($592 >> 0 | 0, 1, 0) | 0 | 0;
+     $804 = $803 ^ $802;
+     SAFE_HEAP_STORE($592 >> 0 | 0, $804 | 0, 1);
+     $805 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+     $806 = SAFE_HEAP_LOAD($594 >> 0 | 0, 1, 0) | 0 | 0;
+     $807 = $806 ^ $805;
+     SAFE_HEAP_STORE($594 >> 0 | 0, $807 | 0, 1);
+     $808 = SAFE_HEAP_LOAD($595 >> 0 | 0, 1, 0) | 0 | 0;
+     $809 = SAFE_HEAP_LOAD($596 >> 0 | 0, 1, 0) | 0 | 0;
+     $810 = $809 ^ $808;
+     SAFE_HEAP_STORE($596 >> 0 | 0, $810 | 0, 1);
+     $811 = SAFE_HEAP_LOAD($597 >> 0 | 0, 1, 0) | 0 | 0;
+     $812 = SAFE_HEAP_LOAD($598 >> 0 | 0, 1, 0) | 0 | 0;
+     $813 = $812 ^ $811;
+     SAFE_HEAP_STORE($598 >> 0 | 0, $813 | 0, 1);
+     $814 = SAFE_HEAP_LOAD($599 >> 0 | 0, 1, 0) | 0 | 0;
+     $815 = SAFE_HEAP_LOAD($600 >> 0 | 0, 1, 0) | 0 | 0;
+     $816 = $815 ^ $814;
+     SAFE_HEAP_STORE($600 >> 0 | 0, $816 | 0, 1);
+     $817 = SAFE_HEAP_LOAD($601 >> 0 | 0, 1, 0) | 0 | 0;
+     $818 = SAFE_HEAP_LOAD($602 >> 0 | 0, 1, 0) | 0 | 0;
+     $819 = $818 ^ $817;
+     SAFE_HEAP_STORE($602 >> 0 | 0, $819 | 0, 1);
+     $820 = SAFE_HEAP_LOAD($603 >> 0 | 0, 1, 0) | 0 | 0;
+     $821 = SAFE_HEAP_LOAD($604 >> 0 | 0, 1, 0) | 0 | 0;
+     $822 = $821 ^ $820;
+     SAFE_HEAP_STORE($604 >> 0 | 0, $822 | 0, 1);
+     $823 = SAFE_HEAP_LOAD($605 >> 0 | 0, 1, 0) | 0 | 0;
+     $824 = SAFE_HEAP_LOAD($606 >> 0 | 0, 1, 0) | 0 | 0;
+     $825 = $824 ^ $823;
+     SAFE_HEAP_STORE($606 >> 0 | 0, $825 | 0, 1);
+     $826 = SAFE_HEAP_LOAD($607 >> 0 | 0, 1, 0) | 0 | 0;
+     $827 = SAFE_HEAP_LOAD($608 >> 0 | 0, 1, 0) | 0 | 0;
+     $828 = $827 ^ $826;
+     SAFE_HEAP_STORE($608 >> 0 | 0, $828 | 0, 1);
+     $829 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($513 | 0, 127 | 0) | 0) & 
127]($7, $6, $6) | 0;
+     $830 = SAFE_HEAP_LOAD($516 >> 0 | 0, 1, 0) | 0 | 0;
+     $831 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+     $832 = $831 ^ $830;
+     SAFE_HEAP_STORE($6 >> 0 | 0, $832 | 0, 1);
+     $833 = SAFE_HEAP_LOAD($579 >> 0 | 0, 1, 0) | 0 | 0;
+     $834 = SAFE_HEAP_LOAD($580 >> 0 | 0, 1, 0) | 0 | 0;
+     $835 = $834 ^ $833;
+     SAFE_HEAP_STORE($580 >> 0 | 0, $835 | 0, 1);
+     $836 = SAFE_HEAP_LOAD($581 >> 0 | 0, 1, 0) | 0 | 0;
+     $837 = SAFE_HEAP_LOAD($582 >> 0 | 0, 1, 0) | 0 | 0;
+     $838 = $837 ^ $836;
+     SAFE_HEAP_STORE($582 >> 0 | 0, $838 | 0, 1);
+     $839 = SAFE_HEAP_LOAD($583 >> 0 | 0, 1, 0) | 0 | 0;
+     $840 = SAFE_HEAP_LOAD($584 >> 0 | 0, 1, 0) | 0 | 0;
+     $841 = $840 ^ $839;
+     SAFE_HEAP_STORE($584 >> 0 | 0, $841 | 0, 1);
+     $842 = SAFE_HEAP_LOAD($585 >> 0 | 0, 1, 0) | 0 | 0;
+     $843 = SAFE_HEAP_LOAD($586 >> 0 | 0, 1, 0) | 0 | 0;
+     $844 = $843 ^ $842;
+     SAFE_HEAP_STORE($586 >> 0 | 0, $844 | 0, 1);
+     $845 = SAFE_HEAP_LOAD($587 >> 0 | 0, 1, 0) | 0 | 0;
+     $846 = SAFE_HEAP_LOAD($588 >> 0 | 0, 1, 0) | 0 | 0;
+     $847 = $846 ^ $845;
+     SAFE_HEAP_STORE($588 >> 0 | 0, $847 | 0, 1);
+     $848 = SAFE_HEAP_LOAD($589 >> 0 | 0, 1, 0) | 0 | 0;
+     $849 = SAFE_HEAP_LOAD($590 >> 0 | 0, 1, 0) | 0 | 0;
+     $850 = $849 ^ $848;
+     SAFE_HEAP_STORE($590 >> 0 | 0, $850 | 0, 1);
+     $851 = SAFE_HEAP_LOAD($591 >> 0 | 0, 1, 0) | 0 | 0;
+     $852 = SAFE_HEAP_LOAD($592 >> 0 | 0, 1, 0) | 0 | 0;
+     $853 = $852 ^ $851;
+     SAFE_HEAP_STORE($592 >> 0 | 0, $853 | 0, 1);
+     $854 = SAFE_HEAP_LOAD($593 >> 0 | 0, 1, 0) | 0 | 0;
+     $855 = SAFE_HEAP_LOAD($594 >> 0 | 0, 1, 0) | 0 | 0;
+     $856 = $855 ^ $854;
+     SAFE_HEAP_STORE($594 >> 0 | 0, $856 | 0, 1);
+     $857 = SAFE_HEAP_LOAD($595 >> 0 | 0, 1, 0) | 0 | 0;
+     $858 = SAFE_HEAP_LOAD($596 >> 0 | 0, 1, 0) | 0 | 0;
+     $859 = $858 ^ $857;
+     SAFE_HEAP_STORE($596 >> 0 | 0, $859 | 0, 1);
+     $860 = SAFE_HEAP_LOAD($597 >> 0 | 0, 1, 0) | 0 | 0;
+     $861 = SAFE_HEAP_LOAD($598 >> 0 | 0, 1, 0) | 0 | 0;
+     $862 = $861 ^ $860;
+     SAFE_HEAP_STORE($598 >> 0 | 0, $862 | 0, 1);
+     $863 = SAFE_HEAP_LOAD($599 >> 0 | 0, 1, 0) | 0 | 0;
+     $864 = SAFE_HEAP_LOAD($600 >> 0 | 0, 1, 0) | 0 | 0;
+     $865 = $864 ^ $863;
+     SAFE_HEAP_STORE($600 >> 0 | 0, $865 | 0, 1);
+     $866 = SAFE_HEAP_LOAD($601 >> 0 | 0, 1, 0) | 0 | 0;
+     $867 = SAFE_HEAP_LOAD($602 >> 0 | 0, 1, 0) | 0 | 0;
+     $868 = $867 ^ $866;
+     SAFE_HEAP_STORE($602 >> 0 | 0, $868 | 0, 1);
+     $869 = SAFE_HEAP_LOAD($603 >> 0 | 0, 1, 0) | 0 | 0;
+     $870 = SAFE_HEAP_LOAD($604 >> 0 | 0, 1, 0) | 0 | 0;
+     $871 = $870 ^ $869;
+     SAFE_HEAP_STORE($604 >> 0 | 0, $871 | 0, 1);
+     $872 = SAFE_HEAP_LOAD($605 >> 0 | 0, 1, 0) | 0 | 0;
+     $873 = SAFE_HEAP_LOAD($606 >> 0 | 0, 1, 0) | 0 | 0;
+     $874 = $873 ^ $872;
+     SAFE_HEAP_STORE($606 >> 0 | 0, $874 | 0, 1);
+     $875 = SAFE_HEAP_LOAD($607 >> 0 | 0, 1, 0) | 0 | 0;
+     $876 = SAFE_HEAP_LOAD($608 >> 0 | 0, 1, 0) | 0 | 0;
+     $877 = $876 ^ $875;
+     SAFE_HEAP_STORE($608 >> 0 | 0, $877 | 0, 1);
+     $1012 = $829;
+    }
+    if ($529) {
+     $951 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $952 = SAFE_HEAP_LOAD($526 | 0, 4, 0) | 0 | 0;
+     $953 = $952 ^ $951;
+     SAFE_HEAP_STORE($526 | 0, $953 | 0, 4);
+     $954 = SAFE_HEAP_LOAD($521 | 0, 4, 0) | 0 | 0;
+     $955 = SAFE_HEAP_LOAD($530 | 0, 4, 0) | 0 | 0;
+     $956 = $955 ^ $954;
+     SAFE_HEAP_STORE($530 | 0, $956 | 0, 4);
+     $957 = SAFE_HEAP_LOAD($522 | 0, 4, 0) | 0 | 0;
+     $958 = SAFE_HEAP_LOAD($531 | 0, 4, 0) | 0 | 0;
+     $959 = $958 ^ $957;
+     SAFE_HEAP_STORE($531 | 0, $959 | 0, 4);
+     $960 = SAFE_HEAP_LOAD($523 | 0, 4, 0) | 0 | 0;
+     $961 = SAFE_HEAP_LOAD($532 | 0, 4, 0) | 0 | 0;
+     $962 = $961 ^ $960;
+     SAFE_HEAP_STORE($532 | 0, $962 | 0, 4);
+     $963 = $951 & 255;
+     $968 = $963;
+    } else {
+     $903 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+     $904 = SAFE_HEAP_LOAD($526 >> 0 | 0, 1, 0) | 0 | 0;
+     $905 = $904 ^ $903;
+     SAFE_HEAP_STORE($526 >> 0 | 0, $905 | 0, 1);
+     $906 = SAFE_HEAP_LOAD($549 >> 0 | 0, 1, 0) | 0 | 0;
+     $907 = SAFE_HEAP_LOAD($550 >> 0 | 0, 1, 0) | 0 | 0;
+     $908 = $907 ^ $906;
+     SAFE_HEAP_STORE($550 >> 0 | 0, $908 | 0, 1);
+     $909 = SAFE_HEAP_LOAD($551 >> 0 | 0, 1, 0) | 0 | 0;
+     $910 = SAFE_HEAP_LOAD($552 >> 0 | 0, 1, 0) | 0 | 0;
+     $911 = $910 ^ $909;
+     SAFE_HEAP_STORE($552 >> 0 | 0, $911 | 0, 1);
+     $912 = SAFE_HEAP_LOAD($553 >> 0 | 0, 1, 0) | 0 | 0;
+     $913 = SAFE_HEAP_LOAD($554 >> 0 | 0, 1, 0) | 0 | 0;
+     $914 = $913 ^ $912;
+     SAFE_HEAP_STORE($554 >> 0 | 0, $914 | 0, 1);
+     $915 = SAFE_HEAP_LOAD($555 >> 0 | 0, 1, 0) | 0 | 0;
+     $916 = SAFE_HEAP_LOAD($556 >> 0 | 0, 1, 0) | 0 | 0;
+     $917 = $916 ^ $915;
+     SAFE_HEAP_STORE($556 >> 0 | 0, $917 | 0, 1);
+     $918 = SAFE_HEAP_LOAD($557 >> 0 | 0, 1, 0) | 0 | 0;
+     $919 = SAFE_HEAP_LOAD($558 >> 0 | 0, 1, 0) | 0 | 0;
+     $920 = $919 ^ $918;
+     SAFE_HEAP_STORE($558 >> 0 | 0, $920 | 0, 1);
+     $921 = SAFE_HEAP_LOAD($559 >> 0 | 0, 1, 0) | 0 | 0;
+     $922 = SAFE_HEAP_LOAD($560 >> 0 | 0, 1, 0) | 0 | 0;
+     $923 = $922 ^ $921;
+     SAFE_HEAP_STORE($560 >> 0 | 0, $923 | 0, 1);
+     $924 = SAFE_HEAP_LOAD($561 >> 0 | 0, 1, 0) | 0 | 0;
+     $925 = SAFE_HEAP_LOAD($562 >> 0 | 0, 1, 0) | 0 | 0;
+     $926 = $925 ^ $924;
+     SAFE_HEAP_STORE($562 >> 0 | 0, $926 | 0, 1);
+     $927 = SAFE_HEAP_LOAD($563 >> 0 | 0, 1, 0) | 0 | 0;
+     $928 = SAFE_HEAP_LOAD($564 >> 0 | 0, 1, 0) | 0 | 0;
+     $929 = $928 ^ $927;
+     SAFE_HEAP_STORE($564 >> 0 | 0, $929 | 0, 1);
+     $930 = SAFE_HEAP_LOAD($565 >> 0 | 0, 1, 0) | 0 | 0;
+     $931 = SAFE_HEAP_LOAD($566 >> 0 | 0, 1, 0) | 0 | 0;
+     $932 = $931 ^ $930;
+     SAFE_HEAP_STORE($566 >> 0 | 0, $932 | 0, 1);
+     $933 = SAFE_HEAP_LOAD($567 >> 0 | 0, 1, 0) | 0 | 0;
+     $934 = SAFE_HEAP_LOAD($568 >> 0 | 0, 1, 0) | 0 | 0;
+     $935 = $934 ^ $933;
+     SAFE_HEAP_STORE($568 >> 0 | 0, $935 | 0, 1);
+     $936 = SAFE_HEAP_LOAD($569 >> 0 | 0, 1, 0) | 0 | 0;
+     $937 = SAFE_HEAP_LOAD($570 >> 0 | 0, 1, 0) | 0 | 0;
+     $938 = $937 ^ $936;
+     SAFE_HEAP_STORE($570 >> 0 | 0, $938 | 0, 1);
+     $939 = SAFE_HEAP_LOAD($571 >> 0 | 0, 1, 0) | 0 | 0;
+     $940 = SAFE_HEAP_LOAD($572 >> 0 | 0, 1, 0) | 0 | 0;
+     $941 = $940 ^ $939;
+     SAFE_HEAP_STORE($572 >> 0 | 0, $941 | 0, 1);
+     $942 = SAFE_HEAP_LOAD($573 >> 0 | 0, 1, 0) | 0 | 0;
+     $943 = SAFE_HEAP_LOAD($574 >> 0 | 0, 1, 0) | 0 | 0;
+     $944 = $943 ^ $942;
+     SAFE_HEAP_STORE($574 >> 0 | 0, $944 | 0, 1);
+     $945 = SAFE_HEAP_LOAD($575 >> 0 | 0, 1, 0) | 0 | 0;
+     $946 = SAFE_HEAP_LOAD($576 >> 0 | 0, 1, 0) | 0 | 0;
+     $947 = $946 ^ $945;
+     SAFE_HEAP_STORE($576 >> 0 | 0, $947 | 0, 1);
+     $948 = SAFE_HEAP_LOAD($577 >> 0 | 0, 1, 0) | 0 | 0;
+     $949 = SAFE_HEAP_LOAD($578 >> 0 | 0, 1, 0) | 0 | 0;
+     $950 = $949 ^ $948;
+     SAFE_HEAP_STORE($578 >> 0 | 0, $950 | 0, 1);
+     $968 = $903;
+    }
+    $964 = $$177151;
+    $965 = $964 & 3;
+    $966 = ($965 | 0) == 0;
+    if ($966) {
+     $998 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $999 = $$177151 + 4 | 0;
+     SAFE_HEAP_STORE($$177151 | 0, $998 | 0, 4);
+     $1000 = SAFE_HEAP_LOAD($521 | 0, 4, 0) | 0 | 0;
+     $1001 = $$177151 + 8 | 0;
+     SAFE_HEAP_STORE($999 | 0, $1000 | 0, 4);
+     $1002 = SAFE_HEAP_LOAD($522 | 0, 4, 0) | 0 | 0;
+     $1003 = $$177151 + 12 | 0;
+     SAFE_HEAP_STORE($1001 | 0, $1002 | 0, 4);
+     $1004 = SAFE_HEAP_LOAD($523 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($1003 | 0, $1004 | 0, 4);
+    } else {
+     $967 = $$177151 + 1 | 0;
+     SAFE_HEAP_STORE($$177151 >> 0 | 0, $968 | 0, 1);
+     $969 = SAFE_HEAP_LOAD($534 >> 0 | 0, 1, 0) | 0 | 0;
+     $970 = $$177151 + 2 | 0;
+     SAFE_HEAP_STORE($967 >> 0 | 0, $969 | 0, 1);
+     $971 = SAFE_HEAP_LOAD($535 >> 0 | 0, 1, 0) | 0 | 0;
+     $972 = $$177151 + 3 | 0;
+     SAFE_HEAP_STORE($970 >> 0 | 0, $971 | 0, 1);
+     $973 = SAFE_HEAP_LOAD($536 >> 0 | 0, 1, 0) | 0 | 0;
+     $974 = $$177151 + 4 | 0;
+     SAFE_HEAP_STORE($972 >> 0 | 0, $973 | 0, 1);
+     $975 = SAFE_HEAP_LOAD($537 >> 0 | 0, 1, 0) | 0 | 0;
+     $976 = $$177151 + 5 | 0;
+     SAFE_HEAP_STORE($974 >> 0 | 0, $975 | 0, 1);
+     $977 = SAFE_HEAP_LOAD($538 >> 0 | 0, 1, 0) | 0 | 0;
+     $978 = $$177151 + 6 | 0;
+     SAFE_HEAP_STORE($976 >> 0 | 0, $977 | 0, 1);
+     $979 = SAFE_HEAP_LOAD($539 >> 0 | 0, 1, 0) | 0 | 0;
+     $980 = $$177151 + 7 | 0;
+     SAFE_HEAP_STORE($978 >> 0 | 0, $979 | 0, 1);
+     $981 = SAFE_HEAP_LOAD($540 >> 0 | 0, 1, 0) | 0 | 0;
+     $982 = $$177151 + 8 | 0;
+     SAFE_HEAP_STORE($980 >> 0 | 0, $981 | 0, 1);
+     $983 = SAFE_HEAP_LOAD($541 >> 0 | 0, 1, 0) | 0 | 0;
+     $984 = $$177151 + 9 | 0;
+     SAFE_HEAP_STORE($982 >> 0 | 0, $983 | 0, 1);
+     $985 = SAFE_HEAP_LOAD($542 >> 0 | 0, 1, 0) | 0 | 0;
+     $986 = $$177151 + 10 | 0;
+     SAFE_HEAP_STORE($984 >> 0 | 0, $985 | 0, 1);
+     $987 = SAFE_HEAP_LOAD($543 >> 0 | 0, 1, 0) | 0 | 0;
+     $988 = $$177151 + 11 | 0;
+     SAFE_HEAP_STORE($986 >> 0 | 0, $987 | 0, 1);
+     $989 = SAFE_HEAP_LOAD($544 >> 0 | 0, 1, 0) | 0 | 0;
+     $990 = $$177151 + 12 | 0;
+     SAFE_HEAP_STORE($988 >> 0 | 0, $989 | 0, 1);
+     $991 = SAFE_HEAP_LOAD($545 >> 0 | 0, 1, 0) | 0 | 0;
+     $992 = $$177151 + 13 | 0;
+     SAFE_HEAP_STORE($990 >> 0 | 0, $991 | 0, 1);
+     $993 = SAFE_HEAP_LOAD($546 >> 0 | 0, 1, 0) | 0 | 0;
+     $994 = $$177151 + 14 | 0;
+     SAFE_HEAP_STORE($992 >> 0 | 0, $993 | 0, 1);
+     $995 = SAFE_HEAP_LOAD($547 >> 0 | 0, 1, 0) | 0 | 0;
+     $996 = $$177151 + 15 | 0;
+     SAFE_HEAP_STORE($994 >> 0 | 0, $995 | 0, 1);
+     $997 = SAFE_HEAP_LOAD($548 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($996 >> 0 | 0, $997 | 0, 1);
+    }
+    $1005 = $$179150 + 16 | 0;
+    $1006 = $$177151 + 16 | 0;
+    $1007 = $$1152 + -1 | 0;
+    $1008 = ($1007 | 0) == 0;
+    if ($1008) {
+     $$182$lcssa = $1012;
+     break;
+    } else {
+     $$1152 = $1007;
+     $$177151 = $1006;
+     $$179150 = $1005;
+    }
+   }
+  }
+  $$2 = $$182$lcssa;
+ } else {
+  $9 = $7 + 496 | 0;
+  $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $11 = ($10 | 0) == (0 | 0);
+  if (!$11) {
+   FUNCTION_TABLE_v[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 127]();
+  }
+  $15 = $7 + 488 | 0;
+  $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $17 = ($3 | 0) == 0;
+  if ($17) {
+   $$081$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 = $5 + 4 | 0;
+   $25 = $5 + 8 | 0;
+   $26 = $5 + 12 | 0;
+   $27 = $0 + 80 | 0;
+   $28 = $27;
+   $29 = $28 & 3;
+   $30 = ($29 | 0) == 0;
+   $31 = $27 + 4 | 0;
+   $32 = $0 + 88 | 0;
+   $33 = $0 + 92 | 0;
+   $34 = $20 & 3;
+   $35 = ($34 | 0) == 0;
+   $36 = $0 + 160 | 0;
+   $37 = $5 + 1 | 0;
+   $38 = $5 + 2 | 0;
+   $39 = $5 + 3 | 0;
+   $40 = $5 + 4 | 0;
+   $41 = $40 + 1 | 0;
+   $42 = $40 + 2 | 0;
+   $43 = $40 + 3 | 0;
+   $44 = $5 + 8 | 0;
+   $45 = $44 + 1 | 0;
+   $46 = $44 + 2 | 0;
+   $47 = $44 + 3 | 0;
+   $48 = $5 + 12 | 0;
+   $49 = $48 + 1 | 0;
+   $50 = $48 + 2 | 0;
+   $51 = $48 + 3 | 0;
+   $52 = $19 + 1 | 0;
+   $53 = $5 + 1 | 0;
+   $54 = $19 + 2 | 0;
+   $55 = $5 + 2 | 0;
+   $56 = $19 + 3 | 0;
+   $57 = $5 + 3 | 0;
+   $58 = $19 + 4 | 0;
+   $59 = $5 + 4 | 0;
+   $60 = $19 + 5 | 0;
+   $61 = $59 + 1 | 0;
+   $62 = $19 + 6 | 0;
+   $63 = $59 + 2 | 0;
+   $64 = $19 + 7 | 0;
+   $65 = $59 + 3 | 0;
+   $66 = $0 + 72 | 0;
+   $67 = $5 + 8 | 0;
+   $68 = $0 + 73 | 0;
+   $69 = $67 + 1 | 0;
+   $70 = $0 + 74 | 0;
+   $71 = $67 + 2 | 0;
+   $72 = $0 + 75 | 0;
+   $73 = $67 + 3 | 0;
+   $74 = $0 + 76 | 0;
+   $75 = $5 + 12 | 0;
+   $76 = $0 + 77 | 0;
+   $77 = $75 + 1 | 0;
+   $78 = $0 + 78 | 0;
+   $79 = $75 + 2 | 0;
+   $80 = $0 + 79 | 0;
+   $81 = $75 + 3 | 0;
+   $82 = $5 + 1 | 0;
+   $83 = $27 + 1 | 0;
+   $84 = $5 + 2 | 0;
+   $85 = $27 + 2 | 0;
+   $86 = $5 + 3 | 0;
+   $87 = $27 + 3 | 0;
+   $88 = $5 + 4 | 0;
+   $89 = $27 + 4 | 0;
+   $90 = $88 + 1 | 0;
+   $91 = $27 + 5 | 0;
+   $92 = $88 + 2 | 0;
+   $93 = $27 + 6 | 0;
+   $94 = $88 + 3 | 0;
+   $95 = $27 + 7 | 0;
+   $96 = $5 + 8 | 0;
+   $97 = $0 + 88 | 0;
+   $98 = $96 + 1 | 0;
+   $99 = $0 + 89 | 0;
+   $100 = $96 + 2 | 0;
+   $101 = $0 + 90 | 0;
+   $102 = $96 + 3 | 0;
+   $103 = $0 + 91 | 0;
+   $104 = $5 + 12 | 0;
+   $105 = $0 + 92 | 0;
+   $106 = $104 + 1 | 0;
+   $107 = $0 + 93 | 0;
+   $108 = $104 + 2 | 0;
+   $109 = $0 + 94 | 0;
+   $110 = $104 + 3 | 0;
+   $111 = $0 + 95 | 0;
+   $112 = $5 + 1 | 0;
+   $113 = $5 + 2 | 0;
+   $114 = $5 + 3 | 0;
+   $115 = $5 + 4 | 0;
+   $116 = $115 + 1 | 0;
+   $117 = $115 + 2 | 0;
+   $118 = $115 + 3 | 0;
+   $119 = $5 + 8 | 0;
+   $120 = $119 + 1 | 0;
+   $121 = $119 + 2 | 0;
+   $122 = $119 + 3 | 0;
+   $123 = $5 + 12 | 0;
+   $124 = $123 + 1 | 0;
+   $125 = $123 + 2 | 0;
+   $126 = $123 + 3 | 0;
+   $127 = $19 + 1 | 0;
+   $128 = $19 + 2 | 0;
+   $129 = $19 + 3 | 0;
+   $130 = $19 + 4 | 0;
+   $131 = $19 + 5 | 0;
+   $132 = $19 + 6 | 0;
+   $133 = $19 + 7 | 0;
+   $134 = $0 + 72 | 0;
+   $135 = $0 + 73 | 0;
+   $136 = $0 + 74 | 0;
+   $137 = $0 + 75 | 0;
+   $138 = $0 + 76 | 0;
+   $139 = $0 + 77 | 0;
+   $140 = $0 + 78 | 0;
+   $141 = $0 + 79 | 0;
+   $$075155 = $3;
+   $$076154 = $1;
+   $$078153 = $2;
+   while (1) {
+    $142 = $18;
+    $143 = $142;
+    $144 = SAFE_HEAP_LOAD($143 | 0, 4, 0) | 0 | 0;
+    $145 = $142 + 4 | 0;
+    $146 = $145;
+    $147 = SAFE_HEAP_LOAD($146 | 0, 4, 0) | 0 | 0;
+    $148 = _i64Add($144 | 0, $147 | 0, 1, 0) | 0;
+    $149 = tempRet0;
+    $150 = $18;
+    $151 = $150;
+    SAFE_HEAP_STORE($151 | 0, $148 | 0, 4);
+    $152 = $150 + 4 | 0;
+    $153 = $152;
+    SAFE_HEAP_STORE($153 | 0, $149 | 0, 4);
+    $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 = $36 + ($157 << 4) | 0;
+      $$080 = $159;
+     } else {
+      label = 11;
+     }
+    }
+    if ((label | 0) == 11) {
+     label = 0;
+     $160 = __gcry_cipher_ocb_get_l($0, $5, $148, $149) | 0;
+     $$080 = $160;
+    }
+    $161 = $$080;
+    $162 = $161 | $20;
+    $163 = $162 & 3;
+    $164 = ($163 | 0) == 0;
+    if ($164) {
+     $228 = $$080 + 4 | 0;
+     $229 = SAFE_HEAP_LOAD($$080 | 0, 4, 0) | 0 | 0;
+     $230 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+     $231 = $230 ^ $229;
+     SAFE_HEAP_STORE($19 | 0, $231 | 0, 4);
+     $232 = $$080 + 8 | 0;
+     $233 = SAFE_HEAP_LOAD($228 | 0, 4, 0) | 0 | 0;
+     $234 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+     $235 = $234 ^ $233;
+     SAFE_HEAP_STORE($21 | 0, $235 | 0, 4);
+     $236 = $$080 + 12 | 0;
+     $237 = SAFE_HEAP_LOAD($232 | 0, 4, 0) | 0 | 0;
+     $238 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+     $239 = $238 ^ $237;
+     SAFE_HEAP_STORE($22 | 0, $239 | 0, 4);
+     $240 = SAFE_HEAP_LOAD($236 | 0, 4, 0) | 0 | 0;
+     $241 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+     $242 = $241 ^ $240;
+     SAFE_HEAP_STORE($23 | 0, $242 | 0, 4);
+    } else {
+     $165 = $$080 + 1 | 0;
+     $166 = SAFE_HEAP_LOAD($$080 >> 0 | 0, 1, 0) | 0 | 0;
+     $167 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+     $168 = $167 ^ $166;
+     SAFE_HEAP_STORE($19 >> 0 | 0, $168 | 0, 1);
+     $169 = $$080 + 2 | 0;
+     $170 = SAFE_HEAP_LOAD($165 >> 0 | 0, 1, 0) | 0 | 0;
+     $171 = SAFE_HEAP_LOAD($127 >> 0 | 0, 1, 0) | 0 | 0;
+     $172 = $171 ^ $170;
+     SAFE_HEAP_STORE($127 >> 0 | 0, $172 | 0, 1);
+     $173 = $$080 + 3 | 0;
+     $174 = SAFE_HEAP_LOAD($169 >> 0 | 0, 1, 0) | 0 | 0;
+     $175 = SAFE_HEAP_LOAD($128 >> 0 | 0, 1, 0) | 0 | 0;
+     $176 = $175 ^ $174;
+     SAFE_HEAP_STORE($128 >> 0 | 0, $176 | 0, 1);
+     $177 = $$080 + 4 | 0;
+     $178 = SAFE_HEAP_LOAD($173 >> 0 | 0, 1, 0) | 0 | 0;
+     $179 = SAFE_HEAP_LOAD($129 >> 0 | 0, 1, 0) | 0 | 0;
+     $180 = $179 ^ $178;
+     SAFE_HEAP_STORE($129 >> 0 | 0, $180 | 0, 1);
+     $181 = $$080 + 5 | 0;
+     $182 = SAFE_HEAP_LOAD($177 >> 0 | 0, 1, 0) | 0 | 0;
+     $183 = SAFE_HEAP_LOAD($130 >> 0 | 0, 1, 0) | 0 | 0;
+     $184 = $183 ^ $182;
+     SAFE_HEAP_STORE($130 >> 0 | 0, $184 | 0, 1);
+     $185 = $$080 + 6 | 0;
+     $186 = SAFE_HEAP_LOAD($181 >> 0 | 0, 1, 0) | 0 | 0;
+     $187 = SAFE_HEAP_LOAD($131 >> 0 | 0, 1, 0) | 0 | 0;
+     $188 = $187 ^ $186;
+     SAFE_HEAP_STORE($131 >> 0 | 0, $188 | 0, 1);
+     $189 = $$080 + 7 | 0;
+     $190 = SAFE_HEAP_LOAD($185 >> 0 | 0, 1, 0) | 0 | 0;
+     $191 = SAFE_HEAP_LOAD($132 >> 0 | 0, 1, 0) | 0 | 0;
+     $192 = $191 ^ $190;
+     SAFE_HEAP_STORE($132 >> 0 | 0, $192 | 0, 1);
+     $193 = $$080 + 8 | 0;
+     $194 = SAFE_HEAP_LOAD($189 >> 0 | 0, 1, 0) | 0 | 0;
+     $195 = SAFE_HEAP_LOAD($133 >> 0 | 0, 1, 0) | 0 | 0;
+     $196 = $195 ^ $194;
+     SAFE_HEAP_STORE($133 >> 0 | 0, $196 | 0, 1);
+     $197 = $$080 + 9 | 0;
+     $198 = SAFE_HEAP_LOAD($193 >> 0 | 0, 1, 0) | 0 | 0;
+     $199 = SAFE_HEAP_LOAD($134 >> 0 | 0, 1, 0) | 0 | 0;
+     $200 = $199 ^ $198;
+     SAFE_HEAP_STORE($134 >> 0 | 0, $200 | 0, 1);
+     $201 = $$080 + 10 | 0;
+     $202 = SAFE_HEAP_LOAD($197 >> 0 | 0, 1, 0) | 0 | 0;
+     $203 = SAFE_HEAP_LOAD($135 >> 0 | 0, 1, 0) | 0 | 0;
+     $204 = $203 ^ $202;
+     SAFE_HEAP_STORE($135 >> 0 | 0, $204 | 0, 1);
+     $205 = $$080 + 11 | 0;
+     $206 = SAFE_HEAP_LOAD($201 >> 0 | 0, 1, 0) | 0 | 0;
+     $207 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+     $208 = $207 ^ $206;
+     SAFE_HEAP_STORE($136 >> 0 | 0, $208 | 0, 1);
+     $209 = $$080 + 12 | 0;
+     $210 = SAFE_HEAP_LOAD($205 >> 0 | 0, 1, 0) | 0 | 0;
+     $211 = SAFE_HEAP_LOAD($137 >> 0 | 0, 1, 0) | 0 | 0;
+     $212 = $211 ^ $210;
+     SAFE_HEAP_STORE($137 >> 0 | 0, $212 | 0, 1);
+     $213 = $$080 + 13 | 0;
+     $214 = SAFE_HEAP_LOAD($209 >> 0 | 0, 1, 0) | 0 | 0;
+     $215 = SAFE_HEAP_LOAD($138 >> 0 | 0, 1, 0) | 0 | 0;
+     $216 = $215 ^ $214;
+     SAFE_HEAP_STORE($138 >> 0 | 0, $216 | 0, 1);
+     $217 = $$080 + 14 | 0;
+     $218 = SAFE_HEAP_LOAD($213 >> 0 | 0, 1, 0) | 0 | 0;
+     $219 = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 0) | 0 | 0;
+     $220 = $219 ^ $218;
+     SAFE_HEAP_STORE($139 >> 0 | 0, $220 | 0, 1);
+     $221 = $$080 + 15 | 0;
+     $222 = SAFE_HEAP_LOAD($217 >> 0 | 0, 1, 0) | 0 | 0;
+     $223 = SAFE_HEAP_LOAD($140 >> 0 | 0, 1, 0) | 0 | 0;
+     $224 = $223 ^ $222;
+     SAFE_HEAP_STORE($140 >> 0 | 0, $224 | 0, 1);
+     $225 = SAFE_HEAP_LOAD($221 >> 0 | 0, 1, 0) | 0 | 0;
+     $226 = SAFE_HEAP_LOAD($141 >> 0 | 0, 1, 0) | 0 | 0;
+     $227 = $226 ^ $225;
+     SAFE_HEAP_STORE($141 >> 0 | 0, $227 | 0, 1);
+    }
+    $243 = $$078153;
+    $244 = $243 & 3;
+    $245 = ($244 | 0) == 0;
+    if ($245) {
+     $277 = $$078153 + 4 | 0;
+     $278 = SAFE_HEAP_LOAD($$078153 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($5 | 0, $278 | 0, 4);
+     $279 = $$078153 + 8 | 0;
+     $280 = SAFE_HEAP_LOAD($277 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($24 | 0, $280 | 0, 4);
+     $281 = $$078153 + 12 | 0;
+     $282 = SAFE_HEAP_LOAD($279 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($25 | 0, $282 | 0, 4);
+     $283 = SAFE_HEAP_LOAD($281 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($26 | 0, $283 | 0, 4);
+    } else {
+     $246 = $$078153 + 1 | 0;
+     $247 = SAFE_HEAP_LOAD($$078153 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($5 >> 0 | 0, $247 | 0, 1);
+     $248 = $$078153 + 2 | 0;
+     $249 = SAFE_HEAP_LOAD($246 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($112 >> 0 | 0, $249 | 0, 1);
+     $250 = $$078153 + 3 | 0;
+     $251 = SAFE_HEAP_LOAD($248 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($113 >> 0 | 0, $251 | 0, 1);
+     $252 = $$078153 + 4 | 0;
+     $253 = SAFE_HEAP_LOAD($250 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($114 >> 0 | 0, $253 | 0, 1);
+     $254 = $$078153 + 5 | 0;
+     $255 = SAFE_HEAP_LOAD($252 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($115 >> 0 | 0, $255 | 0, 1);
+     $256 = $$078153 + 6 | 0;
+     $257 = SAFE_HEAP_LOAD($254 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($116 >> 0 | 0, $257 | 0, 1);
+     $258 = $$078153 + 7 | 0;
+     $259 = SAFE_HEAP_LOAD($256 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($117 >> 0 | 0, $259 | 0, 1);
+     $260 = $$078153 + 8 | 0;
+     $261 = SAFE_HEAP_LOAD($258 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($118 >> 0 | 0, $261 | 0, 1);
+     $262 = $$078153 + 9 | 0;
+     $263 = SAFE_HEAP_LOAD($260 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($119 >> 0 | 0, $263 | 0, 1);
+     $264 = $$078153 + 10 | 0;
+     $265 = SAFE_HEAP_LOAD($262 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($120 >> 0 | 0, $265 | 0, 1);
+     $266 = $$078153 + 11 | 0;
+     $267 = SAFE_HEAP_LOAD($264 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($121 >> 0 | 0, $267 | 0, 1);
+     $268 = $$078153 + 12 | 0;
+     $269 = SAFE_HEAP_LOAD($266 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($122 >> 0 | 0, $269 | 0, 1);
+     $270 = $$078153 + 13 | 0;
+     $271 = SAFE_HEAP_LOAD($268 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($123 >> 0 | 0, $271 | 0, 1);
+     $272 = $$078153 + 14 | 0;
+     $273 = SAFE_HEAP_LOAD($270 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($124 >> 0 | 0, $273 | 0, 1);
+     $274 = $$078153 + 15 | 0;
+     $275 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($125 >> 0 | 0, $275 | 0, 1);
+     $276 = SAFE_HEAP_LOAD($274 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($126 >> 0 | 0, $276 | 0, 1);
+    }
+    if ($30) {
+     $332 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $333 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+     $334 = $333 ^ $332;
+     SAFE_HEAP_STORE($27 | 0, $334 | 0, 4);
+     $335 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+     $336 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+     $337 = $336 ^ $335;
+     SAFE_HEAP_STORE($31 | 0, $337 | 0, 4);
+     $338 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     $339 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+     $340 = $339 ^ $338;
+     SAFE_HEAP_STORE($32 | 0, $340 | 0, 4);
+     $341 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+     $342 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+     $343 = $342 ^ $341;
+     SAFE_HEAP_STORE($33 | 0, $343 | 0, 4);
+     $344 = $332 & 255;
+     $347 = $344;
+    } else {
+     $284 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+     $285 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+     $286 = $285 ^ $284;
+     SAFE_HEAP_STORE($27 >> 0 | 0, $286 | 0, 1);
+     $287 = SAFE_HEAP_LOAD($82 >> 0 | 0, 1, 0) | 0 | 0;
+     $288 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+     $289 = $288 ^ $287;
+     SAFE_HEAP_STORE($83 >> 0 | 0, $289 | 0, 1);
+     $290 = SAFE_HEAP_LOAD($84 >> 0 | 0, 1, 0) | 0 | 0;
+     $291 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+     $292 = $291 ^ $290;
+     SAFE_HEAP_STORE($85 >> 0 | 0, $292 | 0, 1);
+     $293 = SAFE_HEAP_LOAD($86 >> 0 | 0, 1, 0) | 0 | 0;
+     $294 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 0) | 0 | 0;
+     $295 = $294 ^ $293;
+     SAFE_HEAP_STORE($87 >> 0 | 0, $295 | 0, 1);
+     $296 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+     $297 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+     $298 = $297 ^ $296;
+     SAFE_HEAP_STORE($89 >> 0 | 0, $298 | 0, 1);
+     $299 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 0) | 0 | 0;
+     $300 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+     $301 = $300 ^ $299;
+     SAFE_HEAP_STORE($91 >> 0 | 0, $301 | 0, 1);
+     $302 = SAFE_HEAP_LOAD($92 >> 0 | 0, 1, 0) | 0 | 0;
+     $303 = SAFE_HEAP_LOAD($93 >> 0 | 0, 1, 0) | 0 | 0;
+     $304 = $303 ^ $302;
+     SAFE_HEAP_STORE($93 >> 0 | 0, $304 | 0, 1);
+     $305 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+     $306 = SAFE_HEAP_LOAD($95 >> 0 | 0, 1, 0) | 0 | 0;
+     $307 = $306 ^ $305;
+     SAFE_HEAP_STORE($95 >> 0 | 0, $307 | 0, 1);
+     $308 = SAFE_HEAP_LOAD($96 >> 0 | 0, 1, 0) | 0 | 0;
+     $309 = SAFE_HEAP_LOAD($97 >> 0 | 0, 1, 0) | 0 | 0;
+     $310 = $309 ^ $308;
+     SAFE_HEAP_STORE($97 >> 0 | 0, $310 | 0, 1);
+     $311 = SAFE_HEAP_LOAD($98 >> 0 | 0, 1, 0) | 0 | 0;
+     $312 = SAFE_HEAP_LOAD($99 >> 0 | 0, 1, 0) | 0 | 0;
+     $313 = $312 ^ $311;
+     SAFE_HEAP_STORE($99 >> 0 | 0, $313 | 0, 1);
+     $314 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 0) | 0 | 0;
+     $315 = SAFE_HEAP_LOAD($101 >> 0 | 0, 1, 0) | 0 | 0;
+     $316 = $315 ^ $314;
+     SAFE_HEAP_STORE($101 >> 0 | 0, $316 | 0, 1);
+     $317 = SAFE_HEAP_LOAD($102 >> 0 | 0, 1, 0) | 0 | 0;
+     $318 = SAFE_HEAP_LOAD($103 >> 0 | 0, 1, 0) | 0 | 0;
+     $319 = $318 ^ $317;
+     SAFE_HEAP_STORE($103 >> 0 | 0, $319 | 0, 1);
+     $320 = SAFE_HEAP_LOAD($104 >> 0 | 0, 1, 0) | 0 | 0;
+     $321 = SAFE_HEAP_LOAD($105 >> 0 | 0, 1, 0) | 0 | 0;
+     $322 = $321 ^ $320;
+     SAFE_HEAP_STORE($105 >> 0 | 0, $322 | 0, 1);
+     $323 = SAFE_HEAP_LOAD($106 >> 0 | 0, 1, 0) | 0 | 0;
+     $324 = SAFE_HEAP_LOAD($107 >> 0 | 0, 1, 0) | 0 | 0;
+     $325 = $324 ^ $323;
+     SAFE_HEAP_STORE($107 >> 0 | 0, $325 | 0, 1);
+     $326 = SAFE_HEAP_LOAD($108 >> 0 | 0, 1, 0) | 0 | 0;
+     $327 = SAFE_HEAP_LOAD($109 >> 0 | 0, 1, 0) | 0 | 0;
+     $328 = $327 ^ $326;
+     SAFE_HEAP_STORE($109 >> 0 | 0, $328 | 0, 1);
+     $329 = SAFE_HEAP_LOAD($110 >> 0 | 0, 1, 0) | 0 | 0;
+     $330 = SAFE_HEAP_LOAD($111 >> 0 | 0, 1, 0) | 0 | 0;
+     $331 = $330 ^ $329;
+     SAFE_HEAP_STORE($111 >> 0 | 0, $331 | 0, 1);
+     $347 = $284;
+    }
+    if ($35) {
+     $442 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+     $443 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $444 = $443 ^ $442;
+     SAFE_HEAP_STORE($5 | 0, $444 | 0, 4);
+     $445 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+     $446 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+     $447 = $446 ^ $445;
+     SAFE_HEAP_STORE($24 | 0, $447 | 0, 4);
+     $448 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+     $449 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     $450 = $449 ^ $448;
+     SAFE_HEAP_STORE($25 | 0, $450 | 0, 4);
+     $451 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+     $452 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+     $453 = $452 ^ $451;
+     SAFE_HEAP_STORE($26 | 0, $453 | 0, 4);
+     $454 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($16 | 0, 127 | 0) | 0) & 
127]($7, $5, $5) | 0;
+     $455 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+     $456 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $457 = $456 ^ $455;
+     SAFE_HEAP_STORE($5 | 0, $457 | 0, 4);
+     $458 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+     $459 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+     $460 = $459 ^ $458;
+     SAFE_HEAP_STORE($24 | 0, $460 | 0, 4);
+     $461 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+     $462 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     $463 = $462 ^ $461;
+     SAFE_HEAP_STORE($25 | 0, $463 | 0, 4);
+     $464 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+     $465 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+     $466 = $465 ^ $464;
+     SAFE_HEAP_STORE($26 | 0, $466 | 0, 4);
+     $1011 = $454;
+    } else {
+     $345 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+     $346 = $347 ^ $345;
+     SAFE_HEAP_STORE($5 >> 0 | 0, $346 | 0, 1);
+     $348 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+     $349 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+     $350 = $349 ^ $348;
+     SAFE_HEAP_STORE($53 >> 0 | 0, $350 | 0, 1);
+     $351 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+     $352 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+     $353 = $352 ^ $351;
+     SAFE_HEAP_STORE($55 >> 0 | 0, $353 | 0, 1);
+     $354 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+     $355 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+     $356 = $355 ^ $354;
+     SAFE_HEAP_STORE($57 >> 0 | 0, $356 | 0, 1);
+     $357 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+     $358 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+     $359 = $358 ^ $357;
+     SAFE_HEAP_STORE($59 >> 0 | 0, $359 | 0, 1);
+     $360 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+     $361 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+     $362 = $361 ^ $360;
+     SAFE_HEAP_STORE($61 >> 0 | 0, $362 | 0, 1);
+     $363 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+     $364 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+     $365 = $364 ^ $363;
+     SAFE_HEAP_STORE($63 >> 0 | 0, $365 | 0, 1);
+     $366 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+     $367 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+     $368 = $367 ^ $366;
+     SAFE_HEAP_STORE($65 >> 0 | 0, $368 | 0, 1);
+     $369 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+     $370 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+     $371 = $370 ^ $369;
+     SAFE_HEAP_STORE($67 >> 0 | 0, $371 | 0, 1);
+     $372 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+     $373 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+     $374 = $373 ^ $372;
+     SAFE_HEAP_STORE($69 >> 0 | 0, $374 | 0, 1);
+     $375 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+     $376 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+     $377 = $376 ^ $375;
+     SAFE_HEAP_STORE($71 >> 0 | 0, $377 | 0, 1);
+     $378 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+     $379 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+     $380 = $379 ^ $378;
+     SAFE_HEAP_STORE($73 >> 0 | 0, $380 | 0, 1);
+     $381 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+     $382 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+     $383 = $382 ^ $381;
+     SAFE_HEAP_STORE($75 >> 0 | 0, $383 | 0, 1);
+     $384 = SAFE_HEAP_LOAD($76 >> 0 | 0, 1, 0) | 0 | 0;
+     $385 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+     $386 = $385 ^ $384;
+     SAFE_HEAP_STORE($77 >> 0 | 0, $386 | 0, 1);
+     $387 = SAFE_HEAP_LOAD($78 >> 0 | 0, 1, 0) | 0 | 0;
+     $388 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+     $389 = $388 ^ $387;
+     SAFE_HEAP_STORE($79 >> 0 | 0, $389 | 0, 1);
+     $390 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+     $391 = SAFE_HEAP_LOAD($81 >> 0 | 0, 1, 0) | 0 | 0;
+     $392 = $391 ^ $390;
+     SAFE_HEAP_STORE($81 >> 0 | 0, $392 | 0, 1);
+     $393 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($16 | 0, 127 | 0) | 0) & 
127]($7, $5, $5) | 0;
+     $394 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+     $395 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+     $396 = $395 ^ $394;
+     SAFE_HEAP_STORE($5 >> 0 | 0, $396 | 0, 1);
+     $397 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+     $398 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+     $399 = $398 ^ $397;
+     SAFE_HEAP_STORE($53 >> 0 | 0, $399 | 0, 1);
+     $400 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+     $401 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+     $402 = $401 ^ $400;
+     SAFE_HEAP_STORE($55 >> 0 | 0, $402 | 0, 1);
+     $403 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+     $404 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+     $405 = $404 ^ $403;
+     SAFE_HEAP_STORE($57 >> 0 | 0, $405 | 0, 1);
+     $406 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+     $407 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+     $408 = $407 ^ $406;
+     SAFE_HEAP_STORE($59 >> 0 | 0, $408 | 0, 1);
+     $409 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+     $410 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+     $411 = $410 ^ $409;
+     SAFE_HEAP_STORE($61 >> 0 | 0, $411 | 0, 1);
+     $412 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+     $413 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+     $414 = $413 ^ $412;
+     SAFE_HEAP_STORE($63 >> 0 | 0, $414 | 0, 1);
+     $415 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+     $416 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+     $417 = $416 ^ $415;
+     SAFE_HEAP_STORE($65 >> 0 | 0, $417 | 0, 1);
+     $418 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+     $419 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+     $420 = $419 ^ $418;
+     SAFE_HEAP_STORE($67 >> 0 | 0, $420 | 0, 1);
+     $421 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+     $422 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+     $423 = $422 ^ $421;
+     SAFE_HEAP_STORE($69 >> 0 | 0, $423 | 0, 1);
+     $424 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+     $425 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+     $426 = $425 ^ $424;
+     SAFE_HEAP_STORE($71 >> 0 | 0, $426 | 0, 1);
+     $427 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+     $428 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+     $429 = $428 ^ $427;
+     SAFE_HEAP_STORE($73 >> 0 | 0, $429 | 0, 1);
+     $430 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+     $431 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+     $432 = $431 ^ $430;
+     SAFE_HEAP_STORE($75 >> 0 | 0, $432 | 0, 1);
+     $433 = SAFE_HEAP_LOAD($76 >> 0 | 0, 1, 0) | 0 | 0;
+     $434 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+     $435 = $434 ^ $433;
+     SAFE_HEAP_STORE($77 >> 0 | 0, $435 | 0, 1);
+     $436 = SAFE_HEAP_LOAD($78 >> 0 | 0, 1, 0) | 0 | 0;
+     $437 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+     $438 = $437 ^ $436;
+     SAFE_HEAP_STORE($79 >> 0 | 0, $438 | 0, 1);
+     $439 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+     $440 = SAFE_HEAP_LOAD($81 >> 0 | 0, 1, 0) | 0 | 0;
+     $441 = $440 ^ $439;
+     SAFE_HEAP_STORE($81 >> 0 | 0, $441 | 0, 1);
+     $1011 = $393;
+    }
+    $467 = $$076154;
+    $468 = $467 & 3;
+    $469 = ($468 | 0) == 0;
+    if ($469) {
+     $501 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $502 = $$076154 + 4 | 0;
+     SAFE_HEAP_STORE($$076154 | 0, $501 | 0, 4);
+     $503 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+     $504 = $$076154 + 8 | 0;
+     SAFE_HEAP_STORE($502 | 0, $503 | 0, 4);
+     $505 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     $506 = $$076154 + 12 | 0;
+     SAFE_HEAP_STORE($504 | 0, $505 | 0, 4);
+     $507 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($506 | 0, $507 | 0, 4);
+    } else {
+     $470 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+     $471 = $$076154 + 1 | 0;
+     SAFE_HEAP_STORE($$076154 >> 0 | 0, $470 | 0, 1);
+     $472 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+     $473 = $$076154 + 2 | 0;
+     SAFE_HEAP_STORE($471 >> 0 | 0, $472 | 0, 1);
+     $474 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+     $475 = $$076154 + 3 | 0;
+     SAFE_HEAP_STORE($473 >> 0 | 0, $474 | 0, 1);
+     $476 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+     $477 = $$076154 + 4 | 0;
+     SAFE_HEAP_STORE($475 >> 0 | 0, $476 | 0, 1);
+     $478 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+     $479 = $$076154 + 5 | 0;
+     SAFE_HEAP_STORE($477 >> 0 | 0, $478 | 0, 1);
+     $480 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+     $481 = $$076154 + 6 | 0;
+     SAFE_HEAP_STORE($479 >> 0 | 0, $480 | 0, 1);
+     $482 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+     $483 = $$076154 + 7 | 0;
+     SAFE_HEAP_STORE($481 >> 0 | 0, $482 | 0, 1);
+     $484 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+     $485 = $$076154 + 8 | 0;
+     SAFE_HEAP_STORE($483 >> 0 | 0, $484 | 0, 1);
+     $486 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+     $487 = $$076154 + 9 | 0;
+     SAFE_HEAP_STORE($485 >> 0 | 0, $486 | 0, 1);
+     $488 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+     $489 = $$076154 + 10 | 0;
+     SAFE_HEAP_STORE($487 >> 0 | 0, $488 | 0, 1);
+     $490 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+     $491 = $$076154 + 11 | 0;
+     SAFE_HEAP_STORE($489 >> 0 | 0, $490 | 0, 1);
+     $492 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+     $493 = $$076154 + 12 | 0;
+     SAFE_HEAP_STORE($491 >> 0 | 0, $492 | 0, 1);
+     $494 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 0 | 0;
+     $495 = $$076154 + 13 | 0;
+     SAFE_HEAP_STORE($493 >> 0 | 0, $494 | 0, 1);
+     $496 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+     $497 = $$076154 + 14 | 0;
+     SAFE_HEAP_STORE($495 >> 0 | 0, $496 | 0, 1);
+     $498 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+     $499 = $$076154 + 15 | 0;
+     SAFE_HEAP_STORE($497 >> 0 | 0, $498 | 0, 1);
+     $500 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($499 >> 0 | 0, $500 | 0, 1);
+    }
+    $508 = $$078153 + 16 | 0;
+    $509 = $$076154 + 16 | 0;
+    $510 = $$075155 + -1 | 0;
+    $511 = ($510 | 0) == 0;
+    if ($511) {
+     $$081$lcssa = $1011;
+     break;
+    } else {
+     $$075155 = $510;
+     $$076154 = $509;
+     $$078153 = $508;
+    }
+   }
+  }
+  $$2 = $$081$lcssa;
+ }
+ $1009 = ($$2 | 0) == 0;
+ if ($1009) {
+  STACKTOP = sp;
+  return;
+ }
+ $1010 = $$2 + 16 | 0;
+ ___gcry_burn_stack($1010);
+ STACKTOP = sp;
+ return;
+}
+
+function _transform_1312($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, $1712 = 0;
+ var $1713 = 0, $1714 = 0, $1715 = 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, $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, $4 = 0, $40 = 
0, $400 = 0, $401 = 0, $402 = 0, $403 = 0;
+ var $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, $420 = 0, $421 = 0;
+ var $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, $439 = 0, $44 = 0;
+ var $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, $457 = 0, $458 = 0;
+ var $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, $475 = 0, $476 = 0;
+ var $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, $493 = 0, $494 = 0;
+ var $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, $509 = 0, $51 = 0, $510 = 0, $511 = 0;
+ var $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, $53 = 0;
+ var $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, $548 = 0;
+ var $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, $566 = 0;
+ var $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, $584 = 0;
+ var $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, $6 = 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, $834 = 0, $835 = 0, $836 = 0;
+ var $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, $851 = 0, $852 = 0, $853 = 0, $854 = 0;
+ var $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, $87 = 0, $870 = 0, $871 = 0, $872 = 0;
+ var $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, $888 = 0, $889 = 0, $89 = 0, $890 = 0;
+ var $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, $905 = 0, $906 = 0, $907 = 0, $908 = 0;
+ var $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, $923 = 0, $924 = 0, $925 = 0, $926 = 0;
+ var $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, $941 = 0, $942 = 0, $943 = 0, $944 = 0;
+ var $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, $959 
= 0, $96 = 0, $960 = 0, $961 = 0, $962 = 0;
+ var $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, $977 
= 0, $978 = 0, $979 = 0, $98 = 0, $980 = 0;
+ var $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, 
$995 = 0, $996 = 0, $997 = 0, $998 = 0, $999 = 0;
+ var 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $$pre9 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $$pre10 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $$pre11 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $$pre12 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $$0 = $1;
+ $$08 = $2;
+ $13 = $$pre10;
+ $14 = $$pre11;
+ $16 = $$pre9;
+ $37 = $$pre12;
+ $9 = $$pre;
+ while (1) {
+  $8 = $9 << 5;
+  $10 = $9 >>> 27;
+  $11 = $8 | $10;
+  $12 = $14 ^ $13;
+  $15 = $12 & $16;
+  $17 = $15 ^ $14;
+  $18 = SAFE_HEAP_LOAD($$0 >> 0 | 0, 1, 0) | 0 | 0;
+  $19 = $18 & 255;
+  $20 = $19 << 24;
+  $21 = $$0 + 1 | 0;
+  $22 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+  $23 = $22 & 255;
+  $24 = $23 << 16;
+  $25 = $24 | $20;
+  $26 = $$0 + 2 | 0;
+  $27 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+  $28 = $27 & 255;
+  $29 = $28 << 8;
+  $30 = $25 | $29;
+  $31 = $$0 + 3 | 0;
+  $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 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 ^ $13;
+  $47 = $46 & $9;
+  $48 = $47 ^ $13;
+  $49 = $$0 + 4 | 0;
+  $50 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+  $51 = $50 & 255;
+  $52 = $51 << 24;
+  $53 = $$0 + 5 | 0;
+  $54 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+  $55 = $54 & 255;
+  $56 = $55 << 16;
+  $57 = $56 | $52;
+  $58 = $$0 + 6 | 0;
+  $59 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+  $60 = $59 & 255;
+  $61 = $60 << 8;
+  $62 = $57 | $61;
+  $63 = $$0 + 7 | 0;
+  $64 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+  $65 = $64 & 255;
+  $66 = $62 | $65;
+  $67 = $14 + 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 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+  $82 = $81 & 255;
+  $83 = $82 << 24;
+  $84 = $$0 + 9 | 0;
+  $85 = SAFE_HEAP_LOAD($84 >> 0 | 0, 1, 0) | 0 | 0;
+  $86 = $85 & 255;
+  $87 = $86 << 16;
+  $88 = $87 | $83;
+  $89 = $$0 + 10 | 0;
+  $90 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+  $91 = $90 & 255;
+  $92 = $91 << 8;
+  $93 = $88 | $92;
+  $94 = $$0 + 11 | 0;
+  $95 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+  $96 = $95 & 255;
+  $97 = $93 | $96;
+  $98 = $13 + 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 = SAFE_HEAP_LOAD($111 >> 0 | 0, 1, 0) | 0 | 0;
+  $113 = $112 & 255;
+  $114 = $113 << 24;
+  $115 = $$0 + 13 | 0;
+  $116 = SAFE_HEAP_LOAD($115 >> 0 | 0, 1, 0) | 0 | 0;
+  $117 = $116 & 255;
+  $118 = $117 << 16;
+  $119 = $118 | $114;
+  $120 = $$0 + 14 | 0;
+  $121 = SAFE_HEAP_LOAD($120 >> 0 | 0, 1, 0) | 0 | 0;
+  $122 = $121 & 255;
+  $123 = $122 << 8;
+  $124 = $119 | $123;
+  $125 = $$0 + 15 | 0;
+  $126 = SAFE_HEAP_LOAD($125 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($142 >> 0 | 0, 1, 0) | 0 | 0;
+  $144 = $143 & 255;
+  $145 = $144 << 24;
+  $146 = $$0 + 17 | 0;
+  $147 = SAFE_HEAP_LOAD($146 >> 0 | 0, 1, 0) | 0 | 0;
+  $148 = $147 & 255;
+  $149 = $148 << 16;
+  $150 = $149 | $145;
+  $151 = $$0 + 18 | 0;
+  $152 = SAFE_HEAP_LOAD($151 >> 0 | 0, 1, 0) | 0 | 0;
+  $153 = $152 & 255;
+  $154 = $153 << 8;
+  $155 = $150 | $154;
+  $156 = $$0 + 19 | 0;
+  $157 = SAFE_HEAP_LOAD($156 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($173 >> 0 | 0, 1, 0) | 0 | 0;
+  $175 = $174 & 255;
+  $176 = $175 << 24;
+  $177 = $$0 + 21 | 0;
+  $178 = SAFE_HEAP_LOAD($177 >> 0 | 0, 1, 0) | 0 | 0;
+  $179 = $178 & 255;
+  $180 = $179 << 16;
+  $181 = $180 | $176;
+  $182 = $$0 + 22 | 0;
+  $183 = SAFE_HEAP_LOAD($182 >> 0 | 0, 1, 0) | 0 | 0;
+  $184 = $183 & 255;
+  $185 = $184 << 8;
+  $186 = $181 | $185;
+  $187 = $$0 + 23 | 0;
+  $188 = SAFE_HEAP_LOAD($187 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($204 >> 0 | 0, 1, 0) | 0 | 0;
+  $206 = $205 & 255;
+  $207 = $206 << 24;
+  $208 = $$0 + 25 | 0;
+  $209 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+  $210 = $209 & 255;
+  $211 = $210 << 16;
+  $212 = $211 | $207;
+  $213 = $$0 + 26 | 0;
+  $214 = SAFE_HEAP_LOAD($213 >> 0 | 0, 1, 0) | 0 | 0;
+  $215 = $214 & 255;
+  $216 = $215 << 8;
+  $217 = $212 | $216;
+  $218 = $$0 + 27 | 0;
+  $219 = SAFE_HEAP_LOAD($218 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($235 >> 0 | 0, 1, 0) | 0 | 0;
+  $237 = $236 & 255;
+  $238 = $237 << 24;
+  $239 = $$0 + 29 | 0;
+  $240 = SAFE_HEAP_LOAD($239 >> 0 | 0, 1, 0) | 0 | 0;
+  $241 = $240 & 255;
+  $242 = $241 << 16;
+  $243 = $242 | $238;
+  $244 = $$0 + 30 | 0;
+  $245 = SAFE_HEAP_LOAD($244 >> 0 | 0, 1, 0) | 0 | 0;
+  $246 = $245 & 255;
+  $247 = $246 << 8;
+  $248 = $243 | $247;
+  $249 = $$0 + 31 | 0;
+  $250 = SAFE_HEAP_LOAD($249 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($266 >> 0 | 0, 1, 0) | 0 | 0;
+  $268 = $267 & 255;
+  $269 = $268 << 24;
+  $270 = $$0 + 33 | 0;
+  $271 = SAFE_HEAP_LOAD($270 >> 0 | 0, 1, 0) | 0 | 0;
+  $272 = $271 & 255;
+  $273 = $272 << 16;
+  $274 = $273 | $269;
+  $275 = $$0 + 34 | 0;
+  $276 = SAFE_HEAP_LOAD($275 >> 0 | 0, 1, 0) | 0 | 0;
+  $277 = $276 & 255;
+  $278 = $277 << 8;
+  $279 = $274 | $278;
+  $280 = $$0 + 35 | 0;
+  $281 = SAFE_HEAP_LOAD($280 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($297 >> 0 | 0, 1, 0) | 0 | 0;
+  $299 = $298 & 255;
+  $300 = $299 << 24;
+  $301 = $$0 + 37 | 0;
+  $302 = SAFE_HEAP_LOAD($301 >> 0 | 0, 1, 0) | 0 | 0;
+  $303 = $302 & 255;
+  $304 = $303 << 16;
+  $305 = $304 | $300;
+  $306 = $$0 + 38 | 0;
+  $307 = SAFE_HEAP_LOAD($306 >> 0 | 0, 1, 0) | 0 | 0;
+  $308 = $307 & 255;
+  $309 = $308 << 8;
+  $310 = $305 | $309;
+  $311 = $$0 + 39 | 0;
+  $312 = SAFE_HEAP_LOAD($311 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($328 >> 0 | 0, 1, 0) | 0 | 0;
+  $330 = $329 & 255;
+  $331 = $330 << 24;
+  $332 = $$0 + 41 | 0;
+  $333 = SAFE_HEAP_LOAD($332 >> 0 | 0, 1, 0) | 0 | 0;
+  $334 = $333 & 255;
+  $335 = $334 << 16;
+  $336 = $335 | $331;
+  $337 = $$0 + 42 | 0;
+  $338 = SAFE_HEAP_LOAD($337 >> 0 | 0, 1, 0) | 0 | 0;
+  $339 = $338 & 255;
+  $340 = $339 << 8;
+  $341 = $336 | $340;
+  $342 = $$0 + 43 | 0;
+  $343 = SAFE_HEAP_LOAD($342 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($359 >> 0 | 0, 1, 0) | 0 | 0;
+  $361 = $360 & 255;
+  $362 = $361 << 24;
+  $363 = $$0 + 45 | 0;
+  $364 = SAFE_HEAP_LOAD($363 >> 0 | 0, 1, 0) | 0 | 0;
+  $365 = $364 & 255;
+  $366 = $365 << 16;
+  $367 = $366 | $362;
+  $368 = $$0 + 46 | 0;
+  $369 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $370 = $369 & 255;
+  $371 = $370 << 8;
+  $372 = $367 | $371;
+  $373 = $$0 + 47 | 0;
+  $374 = SAFE_HEAP_LOAD($373 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($390 >> 0 | 0, 1, 0) | 0 | 0;
+  $392 = $391 & 255;
+  $393 = $392 << 24;
+  $394 = $$0 + 49 | 0;
+  $395 = SAFE_HEAP_LOAD($394 >> 0 | 0, 1, 0) | 0 | 0;
+  $396 = $395 & 255;
+  $397 = $396 << 16;
+  $398 = $397 | $393;
+  $399 = $$0 + 50 | 0;
+  $400 = SAFE_HEAP_LOAD($399 >> 0 | 0, 1, 0) | 0 | 0;
+  $401 = $400 & 255;
+  $402 = $401 << 8;
+  $403 = $398 | $402;
+  $404 = $$0 + 51 | 0;
+  $405 = SAFE_HEAP_LOAD($404 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($421 >> 0 | 0, 1, 0) | 0 | 0;
+  $423 = $422 & 255;
+  $424 = $423 << 24;
+  $425 = $$0 + 53 | 0;
+  $426 = SAFE_HEAP_LOAD($425 >> 0 | 0, 1, 0) | 0 | 0;
+  $427 = $426 & 255;
+  $428 = $427 << 16;
+  $429 = $428 | $424;
+  $430 = $$0 + 54 | 0;
+  $431 = SAFE_HEAP_LOAD($430 >> 0 | 0, 1, 0) | 0 | 0;
+  $432 = $431 & 255;
+  $433 = $432 << 8;
+  $434 = $429 | $433;
+  $435 = $$0 + 55 | 0;
+  $436 = SAFE_HEAP_LOAD($435 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($452 >> 0 | 0, 1, 0) | 0 | 0;
+  $454 = $453 & 255;
+  $455 = $454 << 24;
+  $456 = $$0 + 57 | 0;
+  $457 = SAFE_HEAP_LOAD($456 >> 0 | 0, 1, 0) | 0 | 0;
+  $458 = $457 & 255;
+  $459 = $458 << 16;
+  $460 = $459 | $455;
+  $461 = $$0 + 58 | 0;
+  $462 = SAFE_HEAP_LOAD($461 >> 0 | 0, 1, 0) | 0 | 0;
+  $463 = $462 & 255;
+  $464 = $463 << 8;
+  $465 = $460 | $464;
+  $466 = $$0 + 59 | 0;
+  $467 = SAFE_HEAP_LOAD($466 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($483 >> 0 | 0, 1, 0) | 0 | 0;
+  $485 = $484 & 255;
+  $486 = $485 << 24;
+  $487 = $$0 + 61 | 0;
+  $488 = SAFE_HEAP_LOAD($487 >> 0 | 0, 1, 0) | 0 | 0;
+  $489 = $488 & 255;
+  $490 = $489 << 16;
+  $491 = $490 | $486;
+  $492 = $$0 + 62 | 0;
+  $493 = SAFE_HEAP_LOAD($492 >> 0 | 0, 1, 0) | 0 | 0;
+  $494 = $493 & 255;
+  $495 = $494 << 8;
+  $496 = $491 | $495;
+  $497 = $$0 + 63 | 0;
+  $498 = SAFE_HEAP_LOAD($497 >> 0 | 0, 1, 0) | 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;
+  SAFE_HEAP_STORE($3 | 0, $1704 | 0, 4);
+  $1705 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $1706 = $1682 + $1705 | 0;
+  SAFE_HEAP_STORE($4 | 0, $1706 | 0, 4);
+  $1707 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  $1708 = $1699 + $1707 | 0;
+  SAFE_HEAP_STORE($5 | 0, $1708 | 0, 4);
+  $1709 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $1710 = $1685 + $1709 | 0;
+  SAFE_HEAP_STORE($6 | 0, $1710 | 0, 4);
+  $1711 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  $1712 = $1667 + $1711 | 0;
+  SAFE_HEAP_STORE($7 | 0, $1712 | 0, 4);
+  $1713 = $$0 + 64 | 0;
+  $1714 = $$08 + -1 | 0;
+  $1715 = ($1714 | 0) == 0;
+  if ($1715) {
+   break;
+  } else {
+   $$0 = $1713;
+   $$08 = $1714;
+   $13 = $1708;
+   $14 = $1710;
+   $16 = $1706;
+   $37 = $1712;
+   $9 = $1704;
+  }
+ }
+ return 104;
+}
+
+function __gcry_rngcsprng_randomize($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$040$i = 0, $$$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, 
$$0183538 = 0, $$03637 = 0, $$03768$i = 0, $$03867$i = 0, $$03966$i = 0, 
$$040$i = 0, $$1$lcssa$i = 0, $$169$i = 0, $$lcssa65$i = 0, $$op = 0, $$pre = 
0, $$pre$i = 0;
+ var $$pre$i$i = 0, $$pre$phi$i$iZ2D = 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, $$pre37$i$i = 0, $$pre38$i$i = 0, $$pre39$i$i = 0, 
$$pre40$i$i = 0, $$pre76$i = 0, $$pre77$i = 0, $$pre78$i = 0, $$pre79$i = 0, 
$$pre80$i = 0, $$pre81$i = 0;
+ var $$pre82$i = 0, $$pre83$i = 0, $$pre85$i = 0, $$pre86$i = 0, $$pre87$i = 
0, $$pre88$i = 0, $$pre89$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$357$0$extract$shift$i = 0, 
$$sroa$357$0$extract$trunc$i = 0, $$sroa$362$0$extract$shift$i = 0, 
$$sroa$362$0$extract$trunc$i = 0, $$sroa$4$0$extract$shift = 0, 
$$sroa$4$0$extract$trunc = 0, $$sroa$426$0$extract$shift = 0, 
$$sroa$426$0$extract$trunc = 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, $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 $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$i = 0, $or$cond = 0;
+ var $or$cond$i = 0, $pool_balance$promoted$i = 0, $pool_readpos$promoted$i = 
0, $scevgep$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;
+ var $vararg_buffer5 = 0, $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 + 136 | 0;
+ $vararg_buffer38 = sp + 128 | 0;
+ $vararg_buffer36 = sp + 120 | 0;
+ $vararg_buffer34 = sp + 112 | 0;
+ $vararg_buffer32 = sp + 104 | 0;
+ $vararg_buffer30 = sp + 96 | 0;
+ $vararg_buffer28 = sp + 88 | 0;
+ $vararg_buffer26 = sp + 80 | 0;
+ $vararg_buffer24 = sp + 72 | 0;
+ $vararg_buffer20 = sp + 64 | 0;
+ $vararg_buffer18 = sp + 56 | 0;
+ $vararg_buffer16 = sp + 48 | 0;
+ $vararg_buffer13 = sp + 40 | 0;
+ $vararg_buffer9 = sp + 32 | 0;
+ $vararg_buffer5 = sp + 24 | 0;
+ $vararg_buffer3 = sp + 16 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $3 = sp + 144 | 0;
+ $4 = sp + 224 | 0;
+ $5 = sp + 140 | 0;
+ _initialize();
+ $6 = SAFE_HEAP_LOAD(17661 * 4 | 0, 4, 0) | 0 | 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(12596) | 0;
+ $11 = ($10 | 0) == 0;
+ if (!$11) {
+  $12 = _gpg_strerror($10) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $12 | 0, 4);
+  __gcry_log_fatal(50172, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17645 * 4 | 0, 1 | 0, 4);
+ $13 = $9 >>> 0 > 1;
+ if ($13) {
+  $14 = SAFE_HEAP_LOAD(17660 * 4 | 0, 4, 0) | 0 | 0;
+  $15 = $14 + $1 | 0;
+  SAFE_HEAP_STORE(17660 * 4 | 0, $15 | 0, 4);
+  $16 = SAFE_HEAP_LOAD(17659 * 4 | 0, 4, 0) | 0 | 0;
+  $17 = $16 + 1 | 0;
+  SAFE_HEAP_STORE(17659 * 4 | 0, $17 | 0, 4);
+ } else {
+  $18 = SAFE_HEAP_LOAD(17658 * 4 | 0, 4, 0) | 0 | 0;
+  $19 = $18 + $1 | 0;
+  SAFE_HEAP_STORE(17658 * 4 | 0, $19 | 0, 4);
+  $20 = SAFE_HEAP_LOAD(17657 * 4 | 0, 4, 0) | 0 | 0;
+  $21 = $20 + 1 | 0;
+  SAFE_HEAP_STORE(17657 * 4 | 0, $21 | 0, 4);
+ }
+ $22 = ($1 | 0) == 0;
+ L8 : do {
+  if (!$22) {
+   $23 = $3 + 12 | 0;
+   $24 = $3 + 36 | 0;
+   $25 = ($9 | 0) != 2;
+   $26 = ($9 | 0) == 2;
+   $27 = $1 >>> 0 > 600;
+   $28 = $27 ? 600 : $1;
+   $$0183538 = $0;
+   $$03637 = $1;
+   $453 = $28;
+   L10 : while (1) {
+    $$0$i = $$0183538;
+    $$040$i = $453;
+    while (1) {
+     $29 = _getpid() | 0;
+     SAFE_HEAP_STORE($5 | 0, $29 | 0, 4);
+     $30 = SAFE_HEAP_LOAD(3160 * 4 | 0, 4, 0) | 0 | 0;
+     $31 = ($30 | 0) == -1;
+     if ($31) {
+      $$0$$0$$0$$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      SAFE_HEAP_STORE(3160 * 4 | 0, $$0$$0$$0$$i | 0, 4);
+     }
+     $32 = SAFE_HEAP_LOAD(3160 * 4 | 0, 4, 0) | 0 | 0;
+     $$0$$0$$0$11$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $33 = ($32 | 0) == ($$0$$0$$0$11$i | 0);
+     if (!$33) {
+      $$0$$0$$0$12$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      SAFE_HEAP_STORE(3160 * 4 | 0, $$0$$0$$0$12$i | 0, 4);
+      $34 = SAFE_HEAP_LOAD(3160 * 4 | 0, 4, 0) | 0 | 0;
+      $$sroa$3$0$extract$shift = $34 >>> 24;
+      $$sroa$3$0$extract$trunc = $$sroa$3$0$extract$shift & 255;
+      $35 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+      $36 = ($35 | 0) == 0;
+      $37 = $34 >>> 8;
+      $38 = $37 & 255;
+      $39 = $34 >>> 16;
+      $40 = $39 & 255;
+      if ($36) {
+       label = 14;
+       break L10;
+      }
+      $41 = $34 & 255;
+      $42 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+      $43 = $42 + 4 | 0;
+      SAFE_HEAP_STORE(17655 * 4 | 0, $43 | 0, 4);
+      $44 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+      $45 = $44 + 1 | 0;
+      SAFE_HEAP_STORE(17654 * 4 | 0, $45 | 0, 4);
+      $46 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+      $47 = $46 + 1 | 0;
+      SAFE_HEAP_STORE(17662 * 4 | 0, $47 | 0, 4);
+      $48 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+      $49 = $48 + $46 | 0;
+      $50 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+      $51 = $50 ^ $41;
+      SAFE_HEAP_STORE($49 >> 0 | 0, $51 | 0, 1);
+      $52 = $47 >>> 0 > 599;
+      if ($52) {
+       SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+       _mix_pool($48);
+       $53 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+       $54 = $53 + 1 | 0;
+       SAFE_HEAP_STORE(17651 * 4 | 0, $54 | 0, 4);
+       SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+       $$pre$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+       $$pre76$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+       $56 = $$pre$i;
+       $58 = $$pre76$i;
+      } else {
+       $56 = $47;
+       $58 = $48;
+      }
+      $55 = $56 + 1 | 0;
+      SAFE_HEAP_STORE(17662 * 4 | 0, $55 | 0, 4);
+      $57 = $58 + $56 | 0;
+      $59 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+      $60 = $59 ^ $38;
+      SAFE_HEAP_STORE($57 >> 0 | 0, $60 | 0, 1);
+      $61 = $55 >>> 0 > 599;
+      if ($61) {
+       SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+       _mix_pool($58);
+       $392 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+       $393 = $392 + 1 | 0;
+       SAFE_HEAP_STORE(17651 * 4 | 0, $393 | 0, 4);
+       SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+       $$pre77$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+       $$pre78$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+       $395 = $$pre77$i;
+       $397 = $$pre78$i;
+      } else {
+       $395 = $55;
+       $397 = $58;
+      }
+      $394 = $395 + 1 | 0;
+      SAFE_HEAP_STORE(17662 * 4 | 0, $394 | 0, 4);
+      $396 = $397 + $395 | 0;
+      $398 = SAFE_HEAP_LOAD($396 >> 0 | 0, 1, 0) | 0 | 0;
+      $399 = $398 ^ $40;
+      SAFE_HEAP_STORE($396 >> 0 | 0, $399 | 0, 1);
+      $400 = $394 >>> 0 > 599;
+      if ($400) {
+       SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+       _mix_pool($397);
+       $401 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+       $402 = $401 + 1 | 0;
+       SAFE_HEAP_STORE(17651 * 4 | 0, $402 | 0, 4);
+       SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+      }
+      $403 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+      $404 = $403 + 1 | 0;
+      SAFE_HEAP_STORE(17662 * 4 | 0, $404 | 0, 4);
+      $405 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+      $406 = $405 + $403 | 0;
+      $407 = SAFE_HEAP_LOAD($406 >> 0 | 0, 1, 0) | 0 | 0;
+      $408 = $407 ^ $$sroa$3$0$extract$trunc;
+      SAFE_HEAP_STORE($406 >> 0 | 0, $408 | 0, 1);
+      $409 = $404 >>> 0 > 599;
+      if ($409) {
+       SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+       _mix_pool($405);
+       $410 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+       $411 = $410 + 1 | 0;
+       SAFE_HEAP_STORE(17651 * 4 | 0, $411 | 0, 4);
+       SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+      }
+      SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+     }
+     $62 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+     $63 = ($62 | 0) == 0;
+     if ($63) {
+      label = 19;
+      break L10;
+     }
+     $64 = $$040$i >>> 0 > 600;
+     if ($64) {
+      label = 21;
+      break L10;
+     }
+     $65 = SAFE_HEAP_LOAD(17650 * 4 | 0, 4, 0) | 0 | 0;
+     $66 = ($65 | 0) == 0;
+     L35 : do {
+      if ($66) {
+       $67 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+       $68 = ($67 | 0) == (0 | 0);
+       L37 : do {
+        if (!$68) {
+         $69 = _open($67, 0, $vararg_buffer3) | 0;
+         $70 = ($69 | 0) == -1;
+         if ($70) {
+          $71 = ___errno_location() | 0;
+          $72 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+          $73 = ($72 | 0) == 2;
+          if ($73) {
+           SAFE_HEAP_STORE(17666 * 4 | 0, 1 | 0, 4);
+           break;
+          } else {
+           $74 = __gcry_gettext(50521) | 0;
+           $75 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+           $76 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+           $77 = _strerror($76) | 0;
+           SAFE_HEAP_STORE($vararg_buffer5 | 0, $75 | 0, 4);
+           $vararg_ptr8 = $vararg_buffer5 + 4 | 0;
+           SAFE_HEAP_STORE($vararg_ptr8 | 0, $77 | 0, 4);
+           __gcry_log_info($74, $vararg_buffer5);
+           break;
+          }
+         }
+         $78 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+         $79 = _lock_seed_file($69, $78, 0) | 0;
+         $80 = ($79 | 0) == 0;
+         if (!$80) {
+          _close($69) | 0;
+          break;
+         }
+         $81 = _fstat($69, $3) | 0;
+         $82 = ($81 | 0) == 0;
+         if (!$82) {
+          $83 = __gcry_gettext(50542) | 0;
+          $84 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+          $85 = ___errno_location() | 0;
+          $86 = SAFE_HEAP_LOAD($85 | 0, 4, 0) | 0 | 0;
+          $87 = _strerror($86) | 0;
+          SAFE_HEAP_STORE($vararg_buffer9 | 0, $84 | 0, 4);
+          $vararg_ptr12 = $vararg_buffer9 + 4 | 0;
+          SAFE_HEAP_STORE($vararg_ptr12 | 0, $87 | 0, 4);
+          __gcry_log_info($83, $vararg_buffer9);
+          _close($69) | 0;
+          break;
+         }
+         $88 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+         $89 = $88 & 61440;
+         $90 = ($89 | 0) == 32768;
+         if (!$90) {
+          $91 = __gcry_gettext(50563) | 0;
+          $92 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+          SAFE_HEAP_STORE($vararg_buffer13 | 0, $92 | 0, 4);
+          __gcry_log_info($91, $vararg_buffer13);
+          _close($69) | 0;
+          break;
+         }
+         $93 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+         switch ($93 | 0) {
+         case 0:
+          {
+           $94 = __gcry_gettext(50601) | 0;
+           __gcry_log_info($94, $vararg_buffer16);
+           _close($69) | 0;
+           SAFE_HEAP_STORE(17666 * 4 | 0, 1 | 0, 4);
+           break L37;
+           break;
+          }
+         case 600:
+          {
+           L57 : while (1) {
+            $96 = _read($69, $4, 600) | 0;
+            switch ($96 | 0) {
+            case 600:
+             {
+              break L57;
+              break;
+             }
+            case -1:
+             {
+              break;
+             }
+            default:
+             {
+              label = 38;
+              break L10;
+             }
+            }
+            $97 = ___errno_location() | 0;
+            $98 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+            $99 = ($98 | 0) == 4;
+            if (!$99) {
+             $$pre$phi$i$iZ2D = $97;
+             label = 40;
+             break L10;
+            }
+           }
+           _close($69) | 0;
+           $104 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+           $105 = ($104 | 0) == 0;
+           if ($105) {
+            label = 42;
+            break L10;
+           }
+           $106 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+           $107 = $106 + 600 | 0;
+           SAFE_HEAP_STORE(17655 * 4 | 0, $107 | 0, 4);
+           $108 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+           $109 = $108 + 1 | 0;
+           SAFE_HEAP_STORE(17654 * 4 | 0, $109 | 0, 4);
+           $$01113$us$i$i$i = $4;
+           $121 = 599;
+           while (1) {
+            $110 = $$01113$us$i$i$i + 1 | 0;
+            $111 = SAFE_HEAP_LOAD($$01113$us$i$i$i >> 0 | 0, 1, 0) | 0 | 0;
+            $112 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+            $113 = $112 + 1 | 0;
+            SAFE_HEAP_STORE(17662 * 4 | 0, $113 | 0, 4);
+            $114 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+            $115 = $114 + $112 | 0;
+            $116 = SAFE_HEAP_LOAD($115 >> 0 | 0, 1, 0) | 0 | 0;
+            $117 = $116 ^ $111;
+            SAFE_HEAP_STORE($115 >> 0 | 0, $117 | 0, 1);
+            $118 = $113 >>> 0 > 599;
+            if ($118) {
+             SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+             _mix_pool($114);
+             $119 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+             $120 = $119 + 1 | 0;
+             SAFE_HEAP_STORE(17651 * 4 | 0, $120 | 0, 4);
+             $122 = ($121 | 0) == 0;
+             $123 = $122 & 1;
+             SAFE_HEAP_STORE(17663 * 4 | 0, $123 | 0, 4);
+            }
+            $124 = $121 + -1 | 0;
+            $125 = ($121 | 0) == 0;
+            if ($125) {
+             break;
+            } else {
+             $$01113$us$i$i$i = $110;
+             $121 = $124;
+            }
+           }
+           $126 = _getpid() | 0;
+           $$sroa$362$0$extract$shift$i = $126 >>> 24;
+           $$sroa$362$0$extract$trunc$i = $$sroa$362$0$extract$shift$i & 255;
+           $127 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+           $128 = ($127 | 0) == 0;
+           $129 = $126 >>> 8;
+           $130 = $129 & 255;
+           $131 = $126 >>> 16;
+           $132 = $131 & 255;
+           if ($128) {
+            label = 48;
+            break L10;
+           }
+           $133 = $126 & 255;
+           $134 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+           $135 = $134 + 4 | 0;
+           SAFE_HEAP_STORE(17655 * 4 | 0, $135 | 0, 4);
+           $136 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+           $137 = $136 + 1 | 0;
+           SAFE_HEAP_STORE(17654 * 4 | 0, $137 | 0, 4);
+           $138 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+           $139 = $138 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $139 | 0, 4);
+           $140 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+           $141 = $140 + $138 | 0;
+           $142 = SAFE_HEAP_LOAD($141 >> 0 | 0, 1, 0) | 0 | 0;
+           $143 = $142 ^ $133;
+           SAFE_HEAP_STORE($141 >> 0 | 0, $143 | 0, 1);
+           $144 = $139 >>> 0 > 599;
+           if ($144) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($140);
+            $145 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $146 = $145 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $146 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+            $$pre$i$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+            $$pre29$i$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+            $148 = $$pre$i$i;
+            $150 = $$pre29$i$i;
+           } else {
+            $148 = $139;
+            $150 = $140;
+           }
+           $147 = $148 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $147 | 0, 4);
+           $149 = $150 + $148 | 0;
+           $151 = SAFE_HEAP_LOAD($149 >> 0 | 0, 1, 0) | 0 | 0;
+           $152 = $151 ^ $130;
+           SAFE_HEAP_STORE($149 >> 0 | 0, $152 | 0, 1);
+           $153 = $147 >>> 0 > 599;
+           if ($153) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($150);
+            $250 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $251 = $250 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $251 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+            $$pre30$i$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+            $$pre31$i$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+            $253 = $$pre30$i$i;
+            $255 = $$pre31$i$i;
+           } else {
+            $253 = $147;
+            $255 = $150;
+           }
+           $252 = $253 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $252 | 0, 4);
+           $254 = $255 + $253 | 0;
+           $256 = SAFE_HEAP_LOAD($254 >> 0 | 0, 1, 0) | 0 | 0;
+           $257 = $256 ^ $132;
+           SAFE_HEAP_STORE($254 >> 0 | 0, $257 | 0, 1);
+           $258 = $252 >>> 0 > 599;
+           if ($258) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($255);
+            $259 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $260 = $259 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $260 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+           }
+           $261 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+           $262 = $261 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $262 | 0, 4);
+           $263 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+           $264 = $263 + $261 | 0;
+           $265 = SAFE_HEAP_LOAD($264 >> 0 | 0, 1, 0) | 0 | 0;
+           $266 = $265 ^ $$sroa$362$0$extract$trunc$i;
+           SAFE_HEAP_STORE($264 >> 0 | 0, $266 | 0, 1);
+           $267 = $262 >>> 0 > 599;
+           if ($267) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($263);
+            $268 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $269 = $268 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $269 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+           }
+           $155 = _time(0 | 0) | 0;
+           $$sroa$357$0$extract$shift$i = $155 >>> 24;
+           $$sroa$357$0$extract$trunc$i = $$sroa$357$0$extract$shift$i & 255;
+           $270 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+           $271 = ($270 | 0) == 0;
+           $272 = $155 >>> 8;
+           $175 = $272 & 255;
+           $273 = $155 >>> 16;
+           $233 = $273 & 255;
+           if ($271) {
+            label = 52;
+            break L10;
+           }
+           $154 = $155 & 255;
+           $156 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+           $157 = $156 + 4 | 0;
+           SAFE_HEAP_STORE(17655 * 4 | 0, $157 | 0, 4);
+           $158 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+           $159 = $158 + 1 | 0;
+           SAFE_HEAP_STORE(17654 * 4 | 0, $159 | 0, 4);
+           $160 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+           $161 = $160 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $161 | 0, 4);
+           $162 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+           $163 = $162 + $160 | 0;
+           $164 = SAFE_HEAP_LOAD($163 >> 0 | 0, 1, 0) | 0 | 0;
+           $165 = $164 ^ $154;
+           SAFE_HEAP_STORE($163 >> 0 | 0, $165 | 0, 1);
+           $166 = $161 >>> 0 > 599;
+           if ($166) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($162);
+            $167 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $168 = $167 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $168 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+            $$pre32$i$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+            $$pre33$i$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+            $170 = $$pre32$i$i;
+            $172 = $$pre33$i$i;
+           } else {
+            $170 = $161;
+            $172 = $162;
+           }
+           $169 = $170 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $169 | 0, 4);
+           $171 = $172 + $170 | 0;
+           $173 = SAFE_HEAP_LOAD($171 >> 0 | 0, 1, 0) | 0 | 0;
+           $174 = $173 ^ $175;
+           SAFE_HEAP_STORE($171 >> 0 | 0, $174 | 0, 1);
+           $176 = $169 >>> 0 > 599;
+           if ($176) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($172);
+            $225 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $226 = $225 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $226 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+            $$pre34$i$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+            $$pre35$i$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+            $228 = $$pre34$i$i;
+            $230 = $$pre35$i$i;
+           } else {
+            $228 = $169;
+            $230 = $172;
+           }
+           $227 = $228 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $227 | 0, 4);
+           $229 = $230 + $228 | 0;
+           $231 = SAFE_HEAP_LOAD($229 >> 0 | 0, 1, 0) | 0 | 0;
+           $232 = $231 ^ $233;
+           SAFE_HEAP_STORE($229 >> 0 | 0, $232 | 0, 1);
+           $234 = $227 >>> 0 > 599;
+           if ($234) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($230);
+            $235 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $236 = $235 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $236 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+           }
+           $237 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+           $238 = $237 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $238 | 0, 4);
+           $239 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+           $240 = $239 + $237 | 0;
+           $241 = SAFE_HEAP_LOAD($240 >> 0 | 0, 1, 0) | 0 | 0;
+           $242 = $241 ^ $$sroa$357$0$extract$trunc$i;
+           SAFE_HEAP_STORE($240 >> 0 | 0, $242 | 0, 1);
+           $243 = $238 >>> 0 > 599;
+           if ($243) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($239);
+            $244 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $245 = $244 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $245 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+           }
+           $178 = _clock() | 0;
+           $$sroa$3$0$extract$shift$i = $178 >>> 24;
+           $$sroa$3$0$extract$trunc$i = $$sroa$3$0$extract$shift$i & 255;
+           $246 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+           $247 = ($246 | 0) == 0;
+           $248 = $178 >>> 8;
+           $198 = $248 & 255;
+           $249 = $178 >>> 16;
+           $210 = $249 & 255;
+           if ($247) {
+            label = 56;
+            break L10;
+           }
+           $177 = $178 & 255;
+           $179 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+           $180 = $179 + 4 | 0;
+           SAFE_HEAP_STORE(17655 * 4 | 0, $180 | 0, 4);
+           $181 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+           $182 = $181 + 1 | 0;
+           SAFE_HEAP_STORE(17654 * 4 | 0, $182 | 0, 4);
+           $183 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+           $184 = $183 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $184 | 0, 4);
+           $185 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+           $186 = $185 + $183 | 0;
+           $187 = SAFE_HEAP_LOAD($186 >> 0 | 0, 1, 0) | 0 | 0;
+           $188 = $187 ^ $177;
+           SAFE_HEAP_STORE($186 >> 0 | 0, $188 | 0, 1);
+           $189 = $184 >>> 0 > 599;
+           if ($189) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($185);
+            $190 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $191 = $190 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $191 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+            $$pre36$i$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+            $$pre37$i$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+            $193 = $$pre36$i$i;
+            $195 = $$pre37$i$i;
+           } else {
+            $193 = $184;
+            $195 = $185;
+           }
+           $192 = $193 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $192 | 0, 4);
+           $194 = $195 + $193 | 0;
+           $196 = SAFE_HEAP_LOAD($194 >> 0 | 0, 1, 0) | 0 | 0;
+           $197 = $196 ^ $198;
+           SAFE_HEAP_STORE($194 >> 0 | 0, $197 | 0, 1);
+           $199 = $192 >>> 0 > 599;
+           if ($199) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($195);
+            $202 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $203 = $202 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $203 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+            $$pre38$i$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+            $$pre39$i$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+            $205 = $$pre38$i$i;
+            $207 = $$pre39$i$i;
+           } else {
+            $205 = $192;
+            $207 = $195;
+           }
+           $204 = $205 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $204 | 0, 4);
+           $206 = $207 + $205 | 0;
+           $208 = SAFE_HEAP_LOAD($206 >> 0 | 0, 1, 0) | 0 | 0;
+           $209 = $208 ^ $210;
+           SAFE_HEAP_STORE($206 >> 0 | 0, $209 | 0, 1);
+           $211 = $204 >>> 0 > 599;
+           if ($211) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($207);
+            $212 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $213 = $212 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $213 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+           }
+           $214 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+           $215 = $214 + 1 | 0;
+           SAFE_HEAP_STORE(17662 * 4 | 0, $215 | 0, 4);
+           $216 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+           $217 = $216 + $214 | 0;
+           $218 = SAFE_HEAP_LOAD($217 >> 0 | 0, 1, 0) | 0 | 0;
+           $219 = $218 ^ $$sroa$3$0$extract$trunc$i;
+           SAFE_HEAP_STORE($217 >> 0 | 0, $219 | 0, 1);
+           $220 = $215 >>> 0 > 599;
+           if ($220) {
+            SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+            _mix_pool($216);
+            $221 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+            $222 = $221 + 1 | 0;
+            SAFE_HEAP_STORE(17651 * 4 | 0, $222 | 0, 4);
+            SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+           }
+           $223 = SAFE_HEAP_LOAD(17649 * 4 | 0, 4, 0) | 0 | 0;
+           $224 = ($223 | 0) == (0 | 0);
+           if ($224) {
+            label = 60;
+            break L10;
+           }
+           $200 = __gcry_rndlinux_gather_random(80, 0, 16, 0) | 0;
+           $201 = ($200 | 0) < 0;
+           if ($201) {
+            label = 62;
+            break L10;
+           }
+           SAFE_HEAP_STORE(17666 * 4 | 0, 1 | 0, 4);
+           SAFE_HEAP_STORE(17650 * 4 | 0, 1 | 0, 4);
+           break L35;
+           break;
+          }
+         default:
+          {
+           $95 = __gcry_gettext(50634) | 0;
+           __gcry_log_info($95, $vararg_buffer18);
+           _close($69) | 0;
+           break L37;
+          }
+         }
+        }
+       } while (0);
+      }
+     } while (0);
+     $274 = SAFE_HEAP_LOAD(17667 * 4 | 0, 4, 0) | 0 | 0;
+     $275 = ($274 | 0) != 0;
+     $or$cond$i = $25 | $275;
+     if (!$or$cond$i) {
+      SAFE_HEAP_STORE(17668 * 4 | 0, 0 | 0, 4);
+      $276 = $$040$i >>> 0 < 16;
+      $$$040$i = $276 ? 16 : $$040$i;
+      $277 = SAFE_HEAP_LOAD(17649 * 4 | 0, 4, 0) | 0 | 0;
+      $278 = ($277 | 0) == (0 | 0);
+      if ($278) {
+       label = 85;
+       break L10;
+      }
+      $279 = __gcry_rndlinux_gather_random(80, 4, $$$040$i, 2) | 0;
+      $280 = ($279 | 0) < 0;
+      if ($280) {
+       label = 87;
+       break L10;
+      }
+      $281 = SAFE_HEAP_LOAD(17668 * 4 | 0, 4, 0) | 0 | 0;
+      $282 = $281 + $$$040$i | 0;
+      SAFE_HEAP_STORE(17668 * 4 | 0, $282 | 0, 4);
+      SAFE_HEAP_STORE(17667 * 4 | 0, 1 | 0, 4);
+     }
+     if ($26) {
+      $283 = SAFE_HEAP_LOAD(17668 * 4 | 0, 4, 0) | 0 | 0;
+      $284 = $283 >>> 0 < $$040$i >>> 0;
+      if ($284) {
+       $285 = ($283 | 0) < 0;
+       if ($285) {
+        SAFE_HEAP_STORE(17668 * 4 | 0, 0 | 0, 4);
+        $287 = 0;
+       } else {
+        $287 = $283;
+       }
+       $286 = $$040$i - $287 | 0;
+       $288 = $286 >>> 0 > 600;
+       if ($288) {
+        label = 94;
+        break L10;
+       }
+       $289 = SAFE_HEAP_LOAD(17649 * 4 | 0, 4, 0) | 0 | 0;
+       $290 = ($289 | 0) == (0 | 0);
+       if ($290) {
+        label = 96;
+        break L10;
+       }
+       $291 = __gcry_rndlinux_gather_random(80, 4, $286, 2) | 0;
+       $292 = ($291 | 0) < 0;
+       if ($292) {
+        label = 98;
+        break L10;
+       }
+       $293 = SAFE_HEAP_LOAD(17668 * 4 | 0, 4, 0) | 0 | 0;
+       $294 = $293 + $286 | 0;
+       SAFE_HEAP_STORE(17668 * 4 | 0, $294 | 0, 4);
+      }
+     }
+     while (1) {
+      $295 = SAFE_HEAP_LOAD(17650 * 4 | 0, 4, 0) | 0 | 0;
+      $296 = ($295 | 0) == 0;
+      if (!$296) {
+       break;
+      }
+      $297 = SAFE_HEAP_LOAD(17652 * 4 | 0, 4, 0) | 0 | 0;
+      $298 = $297 + 1 | 0;
+      SAFE_HEAP_STORE(17652 * 4 | 0, $298 | 0, 4);
+      $299 = SAFE_HEAP_LOAD(17649 * 4 | 0, 4, 0) | 0 | 0;
+      $300 = ($299 | 0) == (0 | 0);
+      if ($300) {
+       label = 102;
+       break L10;
+      }
+      $301 = __gcry_rndlinux_gather_random(80, 3, 120, 1) | 0;
+      $302 = ($301 | 0) < 0;
+      if ($302) {
+       label = 104;
+       break L10;
+      }
+     }
+     _do_fast_random_poll();
+     $303 = SAFE_HEAP_LOAD(3160 * 4 | 0, 4, 0) | 0 | 0;
+     $$sroa$426$0$extract$shift = $303 >>> 24;
+     $$sroa$426$0$extract$trunc = $$sroa$426$0$extract$shift & 255;
+     $304 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+     $305 = ($304 | 0) == 0;
+     $306 = $303 >>> 8;
+     $307 = $306 & 255;
+     $308 = $303 >>> 16;
+     $309 = $308 & 255;
+     if ($305) {
+      label = 106;
+      break L10;
+     }
+     $310 = $303 & 255;
+     $311 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+     $312 = $311 + 4 | 0;
+     SAFE_HEAP_STORE(17655 * 4 | 0, $312 | 0, 4);
+     $313 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+     $314 = $313 + 1 | 0;
+     SAFE_HEAP_STORE(17654 * 4 | 0, $314 | 0, 4);
+     $315 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+     $316 = $315 + 1 | 0;
+     SAFE_HEAP_STORE(17662 * 4 | 0, $316 | 0, 4);
+     $317 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+     $318 = $317 + $315 | 0;
+     $319 = SAFE_HEAP_LOAD($318 >> 0 | 0, 1, 0) | 0 | 0;
+     $320 = $319 ^ $310;
+     SAFE_HEAP_STORE($318 >> 0 | 0, $320 | 0, 1);
+     $321 = $316 >>> 0 > 599;
+     if ($321) {
+      SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+      _mix_pool($317);
+      $322 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+      $323 = $322 + 1 | 0;
+      SAFE_HEAP_STORE(17651 * 4 | 0, $323 | 0, 4);
+      SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+      $$pre79$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+      $$pre80$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+      $325 = $$pre79$i;
+      $327 = $$pre80$i;
+     } else {
+      $325 = $316;
+      $327 = $317;
+     }
+     $324 = $325 + 1 | 0;
+     SAFE_HEAP_STORE(17662 * 4 | 0, $324 | 0, 4);
+     $326 = $327 + $325 | 0;
+     $328 = SAFE_HEAP_LOAD($326 >> 0 | 0, 1, 0) | 0 | 0;
+     $329 = $328 ^ $307;
+     SAFE_HEAP_STORE($326 >> 0 | 0, $329 | 0, 1);
+     $330 = $324 >>> 0 > 599;
+     if ($330) {
+      SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+      _mix_pool($327);
+      $412 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+      $413 = $412 + 1 | 0;
+      SAFE_HEAP_STORE(17651 * 4 | 0, $413 | 0, 4);
+      SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+      $$pre81$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+      $$pre82$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+      $415 = $$pre81$i;
+      $417 = $$pre82$i;
+     } else {
+      $415 = $324;
+      $417 = $327;
+     }
+     $414 = $415 + 1 | 0;
+     SAFE_HEAP_STORE(17662 * 4 | 0, $414 | 0, 4);
+     $416 = $417 + $415 | 0;
+     $418 = SAFE_HEAP_LOAD($416 >> 0 | 0, 1, 0) | 0 | 0;
+     $419 = $418 ^ $309;
+     SAFE_HEAP_STORE($416 >> 0 | 0, $419 | 0, 1);
+     $420 = $414 >>> 0 > 599;
+     if ($420) {
+      SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+      _mix_pool($417);
+      $421 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+      $422 = $421 + 1 | 0;
+      SAFE_HEAP_STORE(17651 * 4 | 0, $422 | 0, 4);
+      SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+     }
+     $423 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+     $424 = $423 + 1 | 0;
+     SAFE_HEAP_STORE(17662 * 4 | 0, $424 | 0, 4);
+     $331 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+     $425 = $331 + $423 | 0;
+     $426 = SAFE_HEAP_LOAD($425 >> 0 | 0, 1, 0) | 0 | 0;
+     $427 = $426 ^ $$sroa$426$0$extract$trunc;
+     SAFE_HEAP_STORE($425 >> 0 | 0, $427 | 0, 1);
+     $428 = $424 >>> 0 > 599;
+     if ($428) {
+      SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+      _mix_pool($331);
+      $429 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+      $430 = $429 + 1 | 0;
+      SAFE_HEAP_STORE(17651 * 4 | 0, $430 | 0, 4);
+      SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+     } else {
+      $$pre83$i = SAFE_HEAP_LOAD(17663 * 4 | 0, 4, 0) | 0 | 0;
+      $431 = ($$pre83$i | 0) == 0;
+      if ($431) {
+       _mix_pool($331);
+       $332 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+       $333 = $332 + 1 | 0;
+       SAFE_HEAP_STORE(17651 * 4 | 0, $333 | 0, 4);
+      }
+     }
+     $334 = SAFE_HEAP_LOAD(17648 * 4 | 0, 4, 0) | 0 | 0;
+     $335 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+     $$03768$i = $334;
+     $$03867$i = $335;
+     $$03966$i = 0;
+     while (1) {
+      $336 = SAFE_HEAP_LOAD($$03867$i | 0, 4, 0) | 0 | 0;
+      $337 = $336 + -1515870811 | 0;
+      SAFE_HEAP_STORE($$03768$i | 0, $337 | 0, 4);
+      $338 = $$03966$i + 1 | 0;
+      $339 = $$03768$i + 4 | 0;
+      $340 = $$03867$i + 4 | 0;
+      $exitcond$i = ($338 | 0) == 150;
+      if ($exitcond$i) {
+       break;
+      } else {
+       $$03768$i = $339;
+       $$03867$i = $340;
+       $$03966$i = $338;
+      }
+     }
+     _mix_pool($335);
+     $341 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+     $342 = $341 + 1 | 0;
+     SAFE_HEAP_STORE(17651 * 4 | 0, $342 | 0, 4);
+     $343 = SAFE_HEAP_LOAD(17648 * 4 | 0, 4, 0) | 0 | 0;
+     _mix_pool($343);
+     $344 = SAFE_HEAP_LOAD(17656 * 4 | 0, 4, 0) | 0 | 0;
+     $345 = $344 + 1 | 0;
+     SAFE_HEAP_STORE(17656 * 4 | 0, $345 | 0, 4);
+     $346 = $$040$i + -1 | 0;
+     $347 = ($$040$i | 0) == 0;
+     if ($347) {
+      $$pre85$i = SAFE_HEAP_LOAD(17668 * 4 | 0, 4, 0) | 0 | 0;
+      $$1$lcssa$i = $$0$i;
+      $$lcssa65$i = $346;
+      $359 = $$pre85$i;
+     } else {
+      $348 = SAFE_HEAP_LOAD(17648 * 4 | 0, 4, 0) | 0 | 0;
+      $pool_readpos$promoted$i = SAFE_HEAP_LOAD(17669 * 4 | 0, 4, 0) | 0 | 0;
+      $pool_balance$promoted$i = SAFE_HEAP_LOAD(17668 * 4 | 0, 4, 0) | 0 | 0;
+      $$169$i = $$0$i;
+      $350 = $pool_readpos$promoted$i;
+      $356 = $346;
+      while (1) {
+       $349 = $350 + 1 | 0;
+       $351 = $348 + $350 | 0;
+       $352 = SAFE_HEAP_LOAD($351 >> 0 | 0, 1, 0) | 0 | 0;
+       $353 = $$169$i + 1 | 0;
+       SAFE_HEAP_STORE($$169$i >> 0 | 0, $352 | 0, 1);
+       $354 = $349 >>> 0 > 599;
+       $$$i = $354 ? 0 : $349;
+       $355 = $356 + -1 | 0;
+       $357 = ($356 | 0) == 0;
+       if ($357) {
+        break;
+       } else {
+        $$169$i = $353;
+        $350 = $$$i;
+        $356 = $355;
+       }
+      }
+      $scevgep$i = $$0$i + $$040$i | 0;
+      $358 = $pool_balance$promoted$i - $$040$i | 0;
+      SAFE_HEAP_STORE(17669 * 4 | 0, $$$i | 0, 4);
+      SAFE_HEAP_STORE(17668 * 4 | 0, $358 | 0, 4);
+      $$1$lcssa$i = $scevgep$i;
+      $$lcssa65$i = -1;
+      $359 = $358;
+     }
+     $360 = ($359 | 0) < 0;
+     if ($360) {
+      SAFE_HEAP_STORE(17668 * 4 | 0, 0 | 0, 4);
+     }
+     $361 = SAFE_HEAP_LOAD(17648 * 4 | 0, 4, 0) | 0 | 0;
+     _memset($361 | 0, 0, 600) | 0;
+     $362 = _getpid() | 0;
+     $$0$$0$$0$13$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $363 = ($362 | 0) == ($$0$$0$$0$13$i | 0);
+     if ($363) {
+      break;
+     }
+     $364 = _getpid() | 0;
+     $$sroa$4$0$extract$shift = $364 >>> 24;
+     $$sroa$4$0$extract$trunc = $$sroa$4$0$extract$shift & 255;
+     $365 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+     $366 = ($365 | 0) == 0;
+     $367 = $364 >>> 8;
+     $368 = $367 & 255;
+     $369 = $364 >>> 16;
+     $370 = $369 & 255;
+     if ($366) {
+      label = 122;
+      break L10;
+     }
+     $371 = $364 & 255;
+     $372 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+     $373 = $372 + 4 | 0;
+     SAFE_HEAP_STORE(17655 * 4 | 0, $373 | 0, 4);
+     $374 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+     $375 = $374 + 1 | 0;
+     SAFE_HEAP_STORE(17654 * 4 | 0, $375 | 0, 4);
+     $376 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+     $377 = $376 + 1 | 0;
+     SAFE_HEAP_STORE(17662 * 4 | 0, $377 | 0, 4);
+     $378 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+     $379 = $378 + $376 | 0;
+     $380 = SAFE_HEAP_LOAD($379 >> 0 | 0, 1, 0) | 0 | 0;
+     $381 = $380 ^ $371;
+     SAFE_HEAP_STORE($379 >> 0 | 0, $381 | 0, 1);
+     $382 = $377 >>> 0 > 599;
+     if ($382) {
+      SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+      _mix_pool($378);
+      $383 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+      $384 = $383 + 1 | 0;
+      SAFE_HEAP_STORE(17651 * 4 | 0, $384 | 0, 4);
+      SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+      $$pre86$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+      $$pre87$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+      $386 = $$pre86$i;
+      $388 = $$pre87$i;
+     } else {
+      $386 = $377;
+      $388 = $378;
+     }
+     $385 = $386 + 1 | 0;
+     SAFE_HEAP_STORE(17662 * 4 | 0, $385 | 0, 4);
+     $387 = $388 + $386 | 0;
+     $389 = SAFE_HEAP_LOAD($387 >> 0 | 0, 1, 0) | 0 | 0;
+     $390 = $389 ^ $368;
+     SAFE_HEAP_STORE($387 >> 0 | 0, $390 | 0, 1);
+     $391 = $385 >>> 0 > 599;
+     if ($391) {
+      SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+      _mix_pool($388);
+      $432 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+      $433 = $432 + 1 | 0;
+      SAFE_HEAP_STORE(17651 * 4 | 0, $433 | 0, 4);
+      SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+      $$pre88$i = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+      $$pre89$i = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+      $435 = $$pre88$i;
+      $437 = $$pre89$i;
+     } else {
+      $435 = $385;
+      $437 = $388;
+     }
+     $434 = $435 + 1 | 0;
+     SAFE_HEAP_STORE(17662 * 4 | 0, $434 | 0, 4);
+     $436 = $437 + $435 | 0;
+     $438 = SAFE_HEAP_LOAD($436 >> 0 | 0, 1, 0) | 0 | 0;
+     $439 = $438 ^ $370;
+     SAFE_HEAP_STORE($436 >> 0 | 0, $439 | 0, 1);
+     $440 = $434 >>> 0 > 599;
+     if ($440) {
+      SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+      _mix_pool($437);
+      $441 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+      $442 = $441 + 1 | 0;
+      SAFE_HEAP_STORE(17651 * 4 | 0, $442 | 0, 4);
+      SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+     }
+     $443 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+     $444 = $443 + 1 | 0;
+     SAFE_HEAP_STORE(17662 * 4 | 0, $444 | 0, 4);
+     $445 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+     $446 = $445 + $443 | 0;
+     $447 = SAFE_HEAP_LOAD($446 >> 0 | 0, 1, 0) | 0 | 0;
+     $448 = $447 ^ $$sroa$4$0$extract$trunc;
+     SAFE_HEAP_STORE($446 >> 0 | 0, $448 | 0, 1);
+     $449 = $444 >>> 0 > 599;
+     if ($449) {
+      SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+      _mix_pool($445);
+      $450 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+      $451 = $450 + 1 | 0;
+      SAFE_HEAP_STORE(17651 * 4 | 0, $451 | 0, 4);
+      SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+     }
+     SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+     SAFE_HEAP_STORE(3160 * 4 | 0, $364 | 0, 4);
+     $$0$i = $$1$lcssa$i;
+     $$040$i = $$lcssa65$i;
+    }
+    $452 = $$03637 - $453 | 0;
+    $454 = ($452 | 0) == 0;
+    if ($454) {
+     break L8;
+    }
+    $455 = $$0183538 + $453 | 0;
+    $$pre = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+    $456 = $452 >>> 0 > 600;
+    $457 = $456 ? 600 : $452;
+    $458 = ($$pre | 0) == 0;
+    if ($458) {
+     label = 9;
+     break;
+    } else {
+     $$0183538 = $455;
+     $$03637 = $452;
+     $453 = $457;
+    }
+   }
+   switch (label | 0) {
+   case 9:
+    {
+     __gcry_assert_failed(50424, 50439, 934, 50464);
+     break;
+    }
+   case 14:
+    {
+     __gcry_assert_failed(50424, 50439, 1074, 50474);
+     break;
+    }
+   case 19:
+    {
+     __gcry_assert_failed(50424, 50439, 953, 50464);
+     break;
+    }
+   case 21:
+    {
+     __gcry_log_bug(50489, $vararg_buffer1);
+     break;
+    }
+   case 38:
+    {
+     $$pre40$i$i = ___errno_location() | 0;
+     $$pre$phi$i$iZ2D = $$pre40$i$i;
+     $100 = __gcry_gettext(50688) | 0;
+     $101 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+     $102 = SAFE_HEAP_LOAD($$pre$phi$i$iZ2D | 0, 4, 0) | 0 | 0;
+     $103 = _strerror($102) | 0;
+     SAFE_HEAP_STORE($vararg_buffer20 | 0, $101 | 0, 4);
+     $vararg_ptr23 = $vararg_buffer20 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr23 | 0, $103 | 0, 4);
+     __gcry_log_fatal($100, $vararg_buffer20);
+     break;
+    }
+   case 40:
+    {
+     $100 = __gcry_gettext(50688) | 0;
+     $101 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+     $102 = SAFE_HEAP_LOAD($$pre$phi$i$iZ2D | 0, 4, 0) | 0 | 0;
+     $103 = _strerror($102) | 0;
+     SAFE_HEAP_STORE($vararg_buffer20 | 0, $101 | 0, 4);
+     $vararg_ptr23 = $vararg_buffer20 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr23 | 0, $103 | 0, 4);
+     __gcry_log_fatal($100, $vararg_buffer20);
+     break;
+    }
+   case 42:
+    {
+     __gcry_assert_failed(50424, 50439, 1074, 50474);
+     break;
+    }
+   case 48:
+    {
+     __gcry_assert_failed(50424, 50439, 1074, 50474);
+     break;
+    }
+   case 52:
+    {
+     __gcry_assert_failed(50424, 50439, 1074, 50474);
+     break;
+    }
+   case 56:
+    {
+     __gcry_assert_failed(50424, 50439, 1074, 50474);
+     break;
+    }
+   case 60:
+    {
+     __gcry_log_fatal(50709, $vararg_buffer24);
+     break;
+    }
+   case 62:
+    {
+     __gcry_log_fatal(50760, $vararg_buffer26);
+     break;
+    }
+   case 85:
+    {
+     __gcry_log_fatal(50709, $vararg_buffer28);
+     break;
+    }
+   case 87:
+    {
+     __gcry_log_fatal(50760, $vararg_buffer30);
+     break;
+    }
+   case 94:
+    {
+     __gcry_bug(50439, 995, 50464);
+     break;
+    }
+   case 96:
+    {
+     __gcry_log_fatal(50709, $vararg_buffer32);
+     break;
+    }
+   case 98:
+    {
+     __gcry_log_fatal(50760, $vararg_buffer34);
+     break;
+    }
+   case 102:
+    {
+     __gcry_log_fatal(50709, $vararg_buffer36);
+     break;
+    }
+   case 104:
+    {
+     __gcry_log_fatal(50760, $vararg_buffer38);
+     break;
+    }
+   case 106:
+    {
+     __gcry_assert_failed(50424, 50439, 1074, 50474);
+     break;
+    }
+   case 122:
+    {
+     __gcry_assert_failed(50424, 50439, 1074, 50474);
+     break;
+    }
+   }
+  }
+ } while (0);
+ SAFE_HEAP_STORE(17645 * 4 | 0, 0 | 0, 4);
+ $459 = _gpgrt_lock_unlock(12596) | 0;
+ $460 = ($459 | 0) == 0;
+ if ($460) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $461 = _gpg_strerror($459) | 0;
+  SAFE_HEAP_STORE($vararg_buffer40 | 0, $461 | 0, 4);
+  __gcry_log_fatal(50247, $vararg_buffer40);
+ }
+}
+
+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 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+ $5 = $4 & 255;
+ $6 = $5 << 24;
+ $7 = $2 + 2 | 0;
+ $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = $8 & 255;
+ $10 = $9 << 16;
+ $11 = $10 | $6;
+ $12 = $2 + 1 | 0;
+ $13 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = $13 & 255;
+ $15 = $14 << 8;
+ $16 = $11 | $15;
+ $17 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $18 = $17 & 255;
+ $19 = $16 | $18;
+ $20 = $0 + 4112 | 0;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = $19 ^ $21;
+ $23 = $2 + 4 | 0;
+ $24 = $2 + 7 | 0;
+ $25 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+ $26 = $25 & 255;
+ $27 = $26 << 24;
+ $28 = $2 + 6 | 0;
+ $29 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+ $30 = $29 & 255;
+ $31 = $30 << 16;
+ $32 = $31 | $27;
+ $33 = $2 + 5 | 0;
+ $34 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+ $35 = $34 & 255;
+ $36 = $35 << 8;
+ $37 = $32 | $36;
+ $38 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+ $39 = $38 & 255;
+ $40 = $37 | $39;
+ $41 = $0 + 4116 | 0;
+ $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+ $43 = $40 ^ $42;
+ $44 = $2 + 8 | 0;
+ $45 = $2 + 11 | 0;
+ $46 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+ $47 = $46 & 255;
+ $48 = $47 << 24;
+ $49 = $2 + 10 | 0;
+ $50 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+ $51 = $50 & 255;
+ $52 = $51 << 16;
+ $53 = $52 | $48;
+ $54 = $2 + 9 | 0;
+ $55 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+ $56 = $55 & 255;
+ $57 = $56 << 8;
+ $58 = $53 | $57;
+ $59 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+ $60 = $59 & 255;
+ $61 = $58 | $60;
+ $62 = $0 + 4120 | 0;
+ $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+ $64 = $61 ^ $63;
+ $65 = $2 + 12 | 0;
+ $66 = $2 + 15 | 0;
+ $67 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+ $68 = $67 & 255;
+ $69 = $68 << 24;
+ $70 = $2 + 14 | 0;
+ $71 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+ $72 = $71 & 255;
+ $73 = $72 << 16;
+ $74 = $73 | $69;
+ $75 = $2 + 13 | 0;
+ $76 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+ $77 = $76 & 255;
+ $78 = $77 << 8;
+ $79 = $74 | $78;
+ $80 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+ $81 = $80 & 255;
+ $82 = $79 | $81;
+ $83 = $0 + 4124 | 0;
+ $84 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+ $85 = $82 ^ $84;
+ $86 = $22 & 255;
+ $87 = $0 + ($86 << 2) | 0;
+ $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+ $89 = $22 >>> 8;
+ $90 = $89 & 255;
+ $91 = ($0 + 1024 | 0) + ($90 << 2) | 0;
+ $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+ $93 = $92 ^ $88;
+ $94 = $22 >>> 16;
+ $95 = $94 & 255;
+ $96 = ($0 + 2048 | 0) + ($95 << 2) | 0;
+ $97 = SAFE_HEAP_LOAD($96 | 0, 4, 0) | 0 | 0;
+ $98 = $93 ^ $97;
+ $99 = $22 >>> 24;
+ $100 = ($0 + 3072 | 0) + ($99 << 2) | 0;
+ $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+ $102 = $98 ^ $101;
+ $103 = $43 & 255;
+ $104 = ($0 + 1024 | 0) + ($103 << 2) | 0;
+ $105 = SAFE_HEAP_LOAD($104 | 0, 4, 0) | 0 | 0;
+ $106 = $43 >>> 8;
+ $107 = $106 & 255;
+ $108 = ($0 + 2048 | 0) + ($107 << 2) | 0;
+ $109 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+ $110 = $109 ^ $105;
+ $111 = $43 >>> 16;
+ $112 = $111 & 255;
+ $113 = ($0 + 3072 | 0) + ($112 << 2) | 0;
+ $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+ $115 = $110 ^ $114;
+ $116 = $43 >>> 24;
+ $117 = $0 + ($116 << 2) | 0;
+ $118 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+ $119 = $115 ^ $118;
+ $120 = $119 + $102 | 0;
+ $121 = $0 + 4252 | 0;
+ $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($132 | 0, 4, 0) | 0 | 0;
+ $134 = $120 + $133 | 0;
+ $135 = $134 ^ $131;
+ $136 = $135 & 255;
+ $137 = $0 + ($136 << 2) | 0;
+ $138 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+ $139 = $135 >>> 8;
+ $140 = $139 & 255;
+ $141 = ($0 + 1024 | 0) + ($140 << 2) | 0;
+ $142 = SAFE_HEAP_LOAD($141 | 0, 4, 0) | 0 | 0;
+ $143 = $142 ^ $138;
+ $144 = $135 >>> 16;
+ $145 = $144 & 255;
+ $146 = ($0 + 2048 | 0) + ($145 << 2) | 0;
+ $147 = SAFE_HEAP_LOAD($146 | 0, 4, 0) | 0 | 0;
+ $148 = $143 ^ $147;
+ $149 = $135 >>> 24;
+ $150 = ($0 + 3072 | 0) + ($149 << 2) | 0;
+ $151 = SAFE_HEAP_LOAD($150 | 0, 4, 0) | 0 | 0;
+ $152 = $148 ^ $151;
+ $153 = $126 & 255;
+ $154 = ($0 + 1024 | 0) + ($153 << 2) | 0;
+ $155 = SAFE_HEAP_LOAD($154 | 0, 4, 0) | 0 | 0;
+ $156 = $125 >>> 9;
+ $157 = $156 & 255;
+ $158 = ($0 + 2048 | 0) + ($157 << 2) | 0;
+ $159 = SAFE_HEAP_LOAD($158 | 0, 4, 0) | 0 | 0;
+ $160 = $159 ^ $155;
+ $161 = $125 >>> 17;
+ $162 = $161 & 255;
+ $163 = ($0 + 3072 | 0) + ($162 << 2) | 0;
+ $164 = SAFE_HEAP_LOAD($163 | 0, 4, 0) | 0 | 0;
+ $165 = $160 ^ $164;
+ $166 = $128 >>> 24;
+ $167 = $0 + ($166 << 2) | 0;
+ $168 = SAFE_HEAP_LOAD($167 | 0, 4, 0) | 0 | 0;
+ $169 = $165 ^ $168;
+ $170 = $169 + $152 | 0;
+ $171 = $0 + 4244 | 0;
+ $172 = SAFE_HEAP_LOAD($171 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($182 | 0, 4, 0) | 0 | 0;
+ $184 = $170 + $183 | 0;
+ $185 = $184 ^ $181;
+ $186 = $185 & 255;
+ $187 = $0 + ($186 << 2) | 0;
+ $188 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+ $189 = $185 >>> 8;
+ $190 = $189 & 255;
+ $191 = ($0 + 1024 | 0) + ($190 << 2) | 0;
+ $192 = SAFE_HEAP_LOAD($191 | 0, 4, 0) | 0 | 0;
+ $193 = $192 ^ $188;
+ $194 = $185 >>> 16;
+ $195 = $194 & 255;
+ $196 = ($0 + 2048 | 0) + ($195 << 2) | 0;
+ $197 = SAFE_HEAP_LOAD($196 | 0, 4, 0) | 0 | 0;
+ $198 = $193 ^ $197;
+ $199 = $185 >>> 24;
+ $200 = ($0 + 3072 | 0) + ($199 << 2) | 0;
+ $201 = SAFE_HEAP_LOAD($200 | 0, 4, 0) | 0 | 0;
+ $202 = $198 ^ $201;
+ $203 = $176 & 255;
+ $204 = ($0 + 1024 | 0) + ($203 << 2) | 0;
+ $205 = SAFE_HEAP_LOAD($204 | 0, 4, 0) | 0 | 0;
+ $206 = $175 >>> 9;
+ $207 = $206 & 255;
+ $208 = ($0 + 2048 | 0) + ($207 << 2) | 0;
+ $209 = SAFE_HEAP_LOAD($208 | 0, 4, 0) | 0 | 0;
+ $210 = $209 ^ $205;
+ $211 = $175 >>> 17;
+ $212 = $211 & 255;
+ $213 = ($0 + 3072 | 0) + ($212 << 2) | 0;
+ $214 = SAFE_HEAP_LOAD($213 | 0, 4, 0) | 0 | 0;
+ $215 = $210 ^ $214;
+ $216 = $178 >>> 24;
+ $217 = $0 + ($216 << 2) | 0;
+ $218 = SAFE_HEAP_LOAD($217 | 0, 4, 0) | 0 | 0;
+ $219 = $215 ^ $218;
+ $220 = $219 + $202 | 0;
+ $221 = $0 + 4236 | 0;
+ $222 = SAFE_HEAP_LOAD($221 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($232 | 0, 4, 0) | 0 | 0;
+ $234 = $220 + $233 | 0;
+ $235 = $234 ^ $231;
+ $236 = $235 & 255;
+ $237 = $0 + ($236 << 2) | 0;
+ $238 = SAFE_HEAP_LOAD($237 | 0, 4, 0) | 0 | 0;
+ $239 = $235 >>> 8;
+ $240 = $239 & 255;
+ $241 = ($0 + 1024 | 0) + ($240 << 2) | 0;
+ $242 = SAFE_HEAP_LOAD($241 | 0, 4, 0) | 0 | 0;
+ $243 = $242 ^ $238;
+ $244 = $235 >>> 16;
+ $245 = $244 & 255;
+ $246 = ($0 + 2048 | 0) + ($245 << 2) | 0;
+ $247 = SAFE_HEAP_LOAD($246 | 0, 4, 0) | 0 | 0;
+ $248 = $243 ^ $247;
+ $249 = $235 >>> 24;
+ $250 = ($0 + 3072 | 0) + ($249 << 2) | 0;
+ $251 = SAFE_HEAP_LOAD($250 | 0, 4, 0) | 0 | 0;
+ $252 = $248 ^ $251;
+ $253 = $226 & 255;
+ $254 = ($0 + 1024 | 0) + ($253 << 2) | 0;
+ $255 = SAFE_HEAP_LOAD($254 | 0, 4, 0) | 0 | 0;
+ $256 = $225 >>> 9;
+ $257 = $256 & 255;
+ $258 = ($0 + 2048 | 0) + ($257 << 2) | 0;
+ $259 = SAFE_HEAP_LOAD($258 | 0, 4, 0) | 0 | 0;
+ $260 = $259 ^ $255;
+ $261 = $225 >>> 17;
+ $262 = $261 & 255;
+ $263 = ($0 + 3072 | 0) + ($262 << 2) | 0;
+ $264 = SAFE_HEAP_LOAD($263 | 0, 4, 0) | 0 | 0;
+ $265 = $260 ^ $264;
+ $266 = $228 >>> 24;
+ $267 = $0 + ($266 << 2) | 0;
+ $268 = SAFE_HEAP_LOAD($267 | 0, 4, 0) | 0 | 0;
+ $269 = $265 ^ $268;
+ $270 = $269 + $252 | 0;
+ $271 = $0 + 4228 | 0;
+ $272 = SAFE_HEAP_LOAD($271 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($282 | 0, 4, 0) | 0 | 0;
+ $284 = $270 + $283 | 0;
+ $285 = $284 ^ $281;
+ $286 = $285 & 255;
+ $287 = $0 + ($286 << 2) | 0;
+ $288 = SAFE_HEAP_LOAD($287 | 0, 4, 0) | 0 | 0;
+ $289 = $285 >>> 8;
+ $290 = $289 & 255;
+ $291 = ($0 + 1024 | 0) + ($290 << 2) | 0;
+ $292 = SAFE_HEAP_LOAD($291 | 0, 4, 0) | 0 | 0;
+ $293 = $292 ^ $288;
+ $294 = $285 >>> 16;
+ $295 = $294 & 255;
+ $296 = ($0 + 2048 | 0) + ($295 << 2) | 0;
+ $297 = SAFE_HEAP_LOAD($296 | 0, 4, 0) | 0 | 0;
+ $298 = $293 ^ $297;
+ $299 = $285 >>> 24;
+ $300 = ($0 + 3072 | 0) + ($299 << 2) | 0;
+ $301 = SAFE_HEAP_LOAD($300 | 0, 4, 0) | 0 | 0;
+ $302 = $298 ^ $301;
+ $303 = $276 & 255;
+ $304 = ($0 + 1024 | 0) + ($303 << 2) | 0;
+ $305 = SAFE_HEAP_LOAD($304 | 0, 4, 0) | 0 | 0;
+ $306 = $275 >>> 9;
+ $307 = $306 & 255;
+ $308 = ($0 + 2048 | 0) + ($307 << 2) | 0;
+ $309 = SAFE_HEAP_LOAD($308 | 0, 4, 0) | 0 | 0;
+ $310 = $309 ^ $305;
+ $311 = $275 >>> 17;
+ $312 = $311 & 255;
+ $313 = ($0 + 3072 | 0) + ($312 << 2) | 0;
+ $314 = SAFE_HEAP_LOAD($313 | 0, 4, 0) | 0 | 0;
+ $315 = $310 ^ $314;
+ $316 = $278 >>> 24;
+ $317 = $0 + ($316 << 2) | 0;
+ $318 = SAFE_HEAP_LOAD($317 | 0, 4, 0) | 0 | 0;
+ $319 = $315 ^ $318;
+ $320 = $319 + $302 | 0;
+ $321 = $0 + 4220 | 0;
+ $322 = SAFE_HEAP_LOAD($321 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($332 | 0, 4, 0) | 0 | 0;
+ $334 = $320 + $333 | 0;
+ $335 = $334 ^ $331;
+ $336 = $335 & 255;
+ $337 = $0 + ($336 << 2) | 0;
+ $338 = SAFE_HEAP_LOAD($337 | 0, 4, 0) | 0 | 0;
+ $339 = $335 >>> 8;
+ $340 = $339 & 255;
+ $341 = ($0 + 1024 | 0) + ($340 << 2) | 0;
+ $342 = SAFE_HEAP_LOAD($341 | 0, 4, 0) | 0 | 0;
+ $343 = $342 ^ $338;
+ $344 = $335 >>> 16;
+ $345 = $344 & 255;
+ $346 = ($0 + 2048 | 0) + ($345 << 2) | 0;
+ $347 = SAFE_HEAP_LOAD($346 | 0, 4, 0) | 0 | 0;
+ $348 = $343 ^ $347;
+ $349 = $335 >>> 24;
+ $350 = ($0 + 3072 | 0) + ($349 << 2) | 0;
+ $351 = SAFE_HEAP_LOAD($350 | 0, 4, 0) | 0 | 0;
+ $352 = $348 ^ $351;
+ $353 = $326 & 255;
+ $354 = ($0 + 1024 | 0) + ($353 << 2) | 0;
+ $355 = SAFE_HEAP_LOAD($354 | 0, 4, 0) | 0 | 0;
+ $356 = $325 >>> 9;
+ $357 = $356 & 255;
+ $358 = ($0 + 2048 | 0) + ($357 << 2) | 0;
+ $359 = SAFE_HEAP_LOAD($358 | 0, 4, 0) | 0 | 0;
+ $360 = $359 ^ $355;
+ $361 = $325 >>> 17;
+ $362 = $361 & 255;
+ $363 = ($0 + 3072 | 0) + ($362 << 2) | 0;
+ $364 = SAFE_HEAP_LOAD($363 | 0, 4, 0) | 0 | 0;
+ $365 = $360 ^ $364;
+ $366 = $328 >>> 24;
+ $367 = $0 + ($366 << 2) | 0;
+ $368 = SAFE_HEAP_LOAD($367 | 0, 4, 0) | 0 | 0;
+ $369 = $365 ^ $368;
+ $370 = $369 + $352 | 0;
+ $371 = $0 + 4212 | 0;
+ $372 = SAFE_HEAP_LOAD($371 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($382 | 0, 4, 0) | 0 | 0;
+ $384 = $370 + $383 | 0;
+ $385 = $384 ^ $381;
+ $386 = $385 & 255;
+ $387 = $0 + ($386 << 2) | 0;
+ $388 = SAFE_HEAP_LOAD($387 | 0, 4, 0) | 0 | 0;
+ $389 = $385 >>> 8;
+ $390 = $389 & 255;
+ $391 = ($0 + 1024 | 0) + ($390 << 2) | 0;
+ $392 = SAFE_HEAP_LOAD($391 | 0, 4, 0) | 0 | 0;
+ $393 = $392 ^ $388;
+ $394 = $385 >>> 16;
+ $395 = $394 & 255;
+ $396 = ($0 + 2048 | 0) + ($395 << 2) | 0;
+ $397 = SAFE_HEAP_LOAD($396 | 0, 4, 0) | 0 | 0;
+ $398 = $393 ^ $397;
+ $399 = $385 >>> 24;
+ $400 = ($0 + 3072 | 0) + ($399 << 2) | 0;
+ $401 = SAFE_HEAP_LOAD($400 | 0, 4, 0) | 0 | 0;
+ $402 = $398 ^ $401;
+ $403 = $376 & 255;
+ $404 = ($0 + 1024 | 0) + ($403 << 2) | 0;
+ $405 = SAFE_HEAP_LOAD($404 | 0, 4, 0) | 0 | 0;
+ $406 = $375 >>> 9;
+ $407 = $406 & 255;
+ $408 = ($0 + 2048 | 0) + ($407 << 2) | 0;
+ $409 = SAFE_HEAP_LOAD($408 | 0, 4, 0) | 0 | 0;
+ $410 = $409 ^ $405;
+ $411 = $375 >>> 17;
+ $412 = $411 & 255;
+ $413 = ($0 + 3072 | 0) + ($412 << 2) | 0;
+ $414 = SAFE_HEAP_LOAD($413 | 0, 4, 0) | 0 | 0;
+ $415 = $410 ^ $414;
+ $416 = $378 >>> 24;
+ $417 = $0 + ($416 << 2) | 0;
+ $418 = SAFE_HEAP_LOAD($417 | 0, 4, 0) | 0 | 0;
+ $419 = $415 ^ $418;
+ $420 = $419 + $402 | 0;
+ $421 = $0 + 4204 | 0;
+ $422 = SAFE_HEAP_LOAD($421 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($432 | 0, 4, 0) | 0 | 0;
+ $434 = $420 + $433 | 0;
+ $435 = $434 ^ $431;
+ $436 = $435 & 255;
+ $437 = $0 + ($436 << 2) | 0;
+ $438 = SAFE_HEAP_LOAD($437 | 0, 4, 0) | 0 | 0;
+ $439 = $435 >>> 8;
+ $440 = $439 & 255;
+ $441 = ($0 + 1024 | 0) + ($440 << 2) | 0;
+ $442 = SAFE_HEAP_LOAD($441 | 0, 4, 0) | 0 | 0;
+ $443 = $442 ^ $438;
+ $444 = $435 >>> 16;
+ $445 = $444 & 255;
+ $446 = ($0 + 2048 | 0) + ($445 << 2) | 0;
+ $447 = SAFE_HEAP_LOAD($446 | 0, 4, 0) | 0 | 0;
+ $448 = $443 ^ $447;
+ $449 = $435 >>> 24;
+ $450 = ($0 + 3072 | 0) + ($449 << 2) | 0;
+ $451 = SAFE_HEAP_LOAD($450 | 0, 4, 0) | 0 | 0;
+ $452 = $448 ^ $451;
+ $453 = $426 & 255;
+ $454 = ($0 + 1024 | 0) + ($453 << 2) | 0;
+ $455 = SAFE_HEAP_LOAD($454 | 0, 4, 0) | 0 | 0;
+ $456 = $425 >>> 9;
+ $457 = $456 & 255;
+ $458 = ($0 + 2048 | 0) + ($457 << 2) | 0;
+ $459 = SAFE_HEAP_LOAD($458 | 0, 4, 0) | 0 | 0;
+ $460 = $459 ^ $455;
+ $461 = $425 >>> 17;
+ $462 = $461 & 255;
+ $463 = ($0 + 3072 | 0) + ($462 << 2) | 0;
+ $464 = SAFE_HEAP_LOAD($463 | 0, 4, 0) | 0 | 0;
+ $465 = $460 ^ $464;
+ $466 = $428 >>> 24;
+ $467 = $0 + ($466 << 2) | 0;
+ $468 = SAFE_HEAP_LOAD($467 | 0, 4, 0) | 0 | 0;
+ $469 = $465 ^ $468;
+ $470 = $469 + $452 | 0;
+ $471 = $0 + 4196 | 0;
+ $472 = SAFE_HEAP_LOAD($471 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($482 | 0, 4, 0) | 0 | 0;
+ $484 = $470 + $483 | 0;
+ $485 = $484 ^ $481;
+ $486 = $485 & 255;
+ $487 = $0 + ($486 << 2) | 0;
+ $488 = SAFE_HEAP_LOAD($487 | 0, 4, 0) | 0 | 0;
+ $489 = $485 >>> 8;
+ $490 = $489 & 255;
+ $491 = ($0 + 1024 | 0) + ($490 << 2) | 0;
+ $492 = SAFE_HEAP_LOAD($491 | 0, 4, 0) | 0 | 0;
+ $493 = $492 ^ $488;
+ $494 = $485 >>> 16;
+ $495 = $494 & 255;
+ $496 = ($0 + 2048 | 0) + ($495 << 2) | 0;
+ $497 = SAFE_HEAP_LOAD($496 | 0, 4, 0) | 0 | 0;
+ $498 = $493 ^ $497;
+ $499 = $485 >>> 24;
+ $500 = ($0 + 3072 | 0) + ($499 << 2) | 0;
+ $501 = SAFE_HEAP_LOAD($500 | 0, 4, 0) | 0 | 0;
+ $502 = $498 ^ $501;
+ $503 = $476 & 255;
+ $504 = ($0 + 1024 | 0) + ($503 << 2) | 0;
+ $505 = SAFE_HEAP_LOAD($504 | 0, 4, 0) | 0 | 0;
+ $506 = $475 >>> 9;
+ $507 = $506 & 255;
+ $508 = ($0 + 2048 | 0) + ($507 << 2) | 0;
+ $509 = SAFE_HEAP_LOAD($508 | 0, 4, 0) | 0 | 0;
+ $510 = $509 ^ $505;
+ $511 = $475 >>> 17;
+ $512 = $511 & 255;
+ $513 = ($0 + 3072 | 0) + ($512 << 2) | 0;
+ $514 = SAFE_HEAP_LOAD($513 | 0, 4, 0) | 0 | 0;
+ $515 = $510 ^ $514;
+ $516 = $478 >>> 24;
+ $517 = $0 + ($516 << 2) | 0;
+ $518 = SAFE_HEAP_LOAD($517 | 0, 4, 0) | 0 | 0;
+ $519 = $515 ^ $518;
+ $520 = $519 + $502 | 0;
+ $521 = $0 + 4188 | 0;
+ $522 = SAFE_HEAP_LOAD($521 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($532 | 0, 4, 0) | 0 | 0;
+ $534 = $520 + $533 | 0;
+ $535 = $534 ^ $531;
+ $536 = $535 & 255;
+ $537 = $0 + ($536 << 2) | 0;
+ $538 = SAFE_HEAP_LOAD($537 | 0, 4, 0) | 0 | 0;
+ $539 = $535 >>> 8;
+ $540 = $539 & 255;
+ $541 = ($0 + 1024 | 0) + ($540 << 2) | 0;
+ $542 = SAFE_HEAP_LOAD($541 | 0, 4, 0) | 0 | 0;
+ $543 = $542 ^ $538;
+ $544 = $535 >>> 16;
+ $545 = $544 & 255;
+ $546 = ($0 + 2048 | 0) + ($545 << 2) | 0;
+ $547 = SAFE_HEAP_LOAD($546 | 0, 4, 0) | 0 | 0;
+ $548 = $543 ^ $547;
+ $549 = $535 >>> 24;
+ $550 = ($0 + 3072 | 0) + ($549 << 2) | 0;
+ $551 = SAFE_HEAP_LOAD($550 | 0, 4, 0) | 0 | 0;
+ $552 = $548 ^ $551;
+ $553 = $526 & 255;
+ $554 = ($0 + 1024 | 0) + ($553 << 2) | 0;
+ $555 = SAFE_HEAP_LOAD($554 | 0, 4, 0) | 0 | 0;
+ $556 = $525 >>> 9;
+ $557 = $556 & 255;
+ $558 = ($0 + 2048 | 0) + ($557 << 2) | 0;
+ $559 = SAFE_HEAP_LOAD($558 | 0, 4, 0) | 0 | 0;
+ $560 = $559 ^ $555;
+ $561 = $525 >>> 17;
+ $562 = $561 & 255;
+ $563 = ($0 + 3072 | 0) + ($562 << 2) | 0;
+ $564 = SAFE_HEAP_LOAD($563 | 0, 4, 0) | 0 | 0;
+ $565 = $560 ^ $564;
+ $566 = $528 >>> 24;
+ $567 = $0 + ($566 << 2) | 0;
+ $568 = SAFE_HEAP_LOAD($567 | 0, 4, 0) | 0 | 0;
+ $569 = $565 ^ $568;
+ $570 = $569 + $552 | 0;
+ $571 = $0 + 4180 | 0;
+ $572 = SAFE_HEAP_LOAD($571 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($582 | 0, 4, 0) | 0 | 0;
+ $584 = $570 + $583 | 0;
+ $585 = $584 ^ $581;
+ $586 = $585 & 255;
+ $587 = $0 + ($586 << 2) | 0;
+ $588 = SAFE_HEAP_LOAD($587 | 0, 4, 0) | 0 | 0;
+ $589 = $585 >>> 8;
+ $590 = $589 & 255;
+ $591 = ($0 + 1024 | 0) + ($590 << 2) | 0;
+ $592 = SAFE_HEAP_LOAD($591 | 0, 4, 0) | 0 | 0;
+ $593 = $592 ^ $588;
+ $594 = $585 >>> 16;
+ $595 = $594 & 255;
+ $596 = ($0 + 2048 | 0) + ($595 << 2) | 0;
+ $597 = SAFE_HEAP_LOAD($596 | 0, 4, 0) | 0 | 0;
+ $598 = $593 ^ $597;
+ $599 = $585 >>> 24;
+ $600 = ($0 + 3072 | 0) + ($599 << 2) | 0;
+ $601 = SAFE_HEAP_LOAD($600 | 0, 4, 0) | 0 | 0;
+ $602 = $598 ^ $601;
+ $603 = $576 & 255;
+ $604 = ($0 + 1024 | 0) + ($603 << 2) | 0;
+ $605 = SAFE_HEAP_LOAD($604 | 0, 4, 0) | 0 | 0;
+ $606 = $575 >>> 9;
+ $607 = $606 & 255;
+ $608 = ($0 + 2048 | 0) + ($607 << 2) | 0;
+ $609 = SAFE_HEAP_LOAD($608 | 0, 4, 0) | 0 | 0;
+ $610 = $609 ^ $605;
+ $611 = $575 >>> 17;
+ $612 = $611 & 255;
+ $613 = ($0 + 3072 | 0) + ($612 << 2) | 0;
+ $614 = SAFE_HEAP_LOAD($613 | 0, 4, 0) | 0 | 0;
+ $615 = $610 ^ $614;
+ $616 = $578 >>> 24;
+ $617 = $0 + ($616 << 2) | 0;
+ $618 = SAFE_HEAP_LOAD($617 | 0, 4, 0) | 0 | 0;
+ $619 = $615 ^ $618;
+ $620 = $619 + $602 | 0;
+ $621 = $0 + 4172 | 0;
+ $622 = SAFE_HEAP_LOAD($621 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($632 | 0, 4, 0) | 0 | 0;
+ $634 = $620 + $633 | 0;
+ $635 = $634 ^ $631;
+ $636 = $635 & 255;
+ $637 = $0 + ($636 << 2) | 0;
+ $638 = SAFE_HEAP_LOAD($637 | 0, 4, 0) | 0 | 0;
+ $639 = $635 >>> 8;
+ $640 = $639 & 255;
+ $641 = ($0 + 1024 | 0) + ($640 << 2) | 0;
+ $642 = SAFE_HEAP_LOAD($641 | 0, 4, 0) | 0 | 0;
+ $643 = $642 ^ $638;
+ $644 = $635 >>> 16;
+ $645 = $644 & 255;
+ $646 = ($0 + 2048 | 0) + ($645 << 2) | 0;
+ $647 = SAFE_HEAP_LOAD($646 | 0, 4, 0) | 0 | 0;
+ $648 = $643 ^ $647;
+ $649 = $635 >>> 24;
+ $650 = ($0 + 3072 | 0) + ($649 << 2) | 0;
+ $651 = SAFE_HEAP_LOAD($650 | 0, 4, 0) | 0 | 0;
+ $652 = $648 ^ $651;
+ $653 = $626 & 255;
+ $654 = ($0 + 1024 | 0) + ($653 << 2) | 0;
+ $655 = SAFE_HEAP_LOAD($654 | 0, 4, 0) | 0 | 0;
+ $656 = $625 >>> 9;
+ $657 = $656 & 255;
+ $658 = ($0 + 2048 | 0) + ($657 << 2) | 0;
+ $659 = SAFE_HEAP_LOAD($658 | 0, 4, 0) | 0 | 0;
+ $660 = $659 ^ $655;
+ $661 = $625 >>> 17;
+ $662 = $661 & 255;
+ $663 = ($0 + 3072 | 0) + ($662 << 2) | 0;
+ $664 = SAFE_HEAP_LOAD($663 | 0, 4, 0) | 0 | 0;
+ $665 = $660 ^ $664;
+ $666 = $628 >>> 24;
+ $667 = $0 + ($666 << 2) | 0;
+ $668 = SAFE_HEAP_LOAD($667 | 0, 4, 0) | 0 | 0;
+ $669 = $665 ^ $668;
+ $670 = $669 + $652 | 0;
+ $671 = $0 + 4164 | 0;
+ $672 = SAFE_HEAP_LOAD($671 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($682 | 0, 4, 0) | 0 | 0;
+ $684 = $670 + $683 | 0;
+ $685 = $684 ^ $681;
+ $686 = $685 & 255;
+ $687 = $0 + ($686 << 2) | 0;
+ $688 = SAFE_HEAP_LOAD($687 | 0, 4, 0) | 0 | 0;
+ $689 = $685 >>> 8;
+ $690 = $689 & 255;
+ $691 = ($0 + 1024 | 0) + ($690 << 2) | 0;
+ $692 = SAFE_HEAP_LOAD($691 | 0, 4, 0) | 0 | 0;
+ $693 = $692 ^ $688;
+ $694 = $685 >>> 16;
+ $695 = $694 & 255;
+ $696 = ($0 + 2048 | 0) + ($695 << 2) | 0;
+ $697 = SAFE_HEAP_LOAD($696 | 0, 4, 0) | 0 | 0;
+ $698 = $693 ^ $697;
+ $699 = $685 >>> 24;
+ $700 = ($0 + 3072 | 0) + ($699 << 2) | 0;
+ $701 = SAFE_HEAP_LOAD($700 | 0, 4, 0) | 0 | 0;
+ $702 = $698 ^ $701;
+ $703 = $676 & 255;
+ $704 = ($0 + 1024 | 0) + ($703 << 2) | 0;
+ $705 = SAFE_HEAP_LOAD($704 | 0, 4, 0) | 0 | 0;
+ $706 = $675 >>> 9;
+ $707 = $706 & 255;
+ $708 = ($0 + 2048 | 0) + ($707 << 2) | 0;
+ $709 = SAFE_HEAP_LOAD($708 | 0, 4, 0) | 0 | 0;
+ $710 = $709 ^ $705;
+ $711 = $675 >>> 17;
+ $712 = $711 & 255;
+ $713 = ($0 + 3072 | 0) + ($712 << 2) | 0;
+ $714 = SAFE_HEAP_LOAD($713 | 0, 4, 0) | 0 | 0;
+ $715 = $710 ^ $714;
+ $716 = $678 >>> 24;
+ $717 = $0 + ($716 << 2) | 0;
+ $718 = SAFE_HEAP_LOAD($717 | 0, 4, 0) | 0 | 0;
+ $719 = $715 ^ $718;
+ $720 = $719 + $702 | 0;
+ $721 = $0 + 4156 | 0;
+ $722 = SAFE_HEAP_LOAD($721 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($732 | 0, 4, 0) | 0 | 0;
+ $734 = $720 + $733 | 0;
+ $735 = $734 ^ $731;
+ $736 = $735 & 255;
+ $737 = $0 + ($736 << 2) | 0;
+ $738 = SAFE_HEAP_LOAD($737 | 0, 4, 0) | 0 | 0;
+ $739 = $735 >>> 8;
+ $740 = $739 & 255;
+ $741 = ($0 + 1024 | 0) + ($740 << 2) | 0;
+ $742 = SAFE_HEAP_LOAD($741 | 0, 4, 0) | 0 | 0;
+ $743 = $742 ^ $738;
+ $744 = $735 >>> 16;
+ $745 = $744 & 255;
+ $746 = ($0 + 2048 | 0) + ($745 << 2) | 0;
+ $747 = SAFE_HEAP_LOAD($746 | 0, 4, 0) | 0 | 0;
+ $748 = $743 ^ $747;
+ $749 = $735 >>> 24;
+ $750 = ($0 + 3072 | 0) + ($749 << 2) | 0;
+ $751 = SAFE_HEAP_LOAD($750 | 0, 4, 0) | 0 | 0;
+ $752 = $748 ^ $751;
+ $753 = $726 & 255;
+ $754 = ($0 + 1024 | 0) + ($753 << 2) | 0;
+ $755 = SAFE_HEAP_LOAD($754 | 0, 4, 0) | 0 | 0;
+ $756 = $725 >>> 9;
+ $757 = $756 & 255;
+ $758 = ($0 + 2048 | 0) + ($757 << 2) | 0;
+ $759 = SAFE_HEAP_LOAD($758 | 0, 4, 0) | 0 | 0;
+ $760 = $759 ^ $755;
+ $761 = $725 >>> 17;
+ $762 = $761 & 255;
+ $763 = ($0 + 3072 | 0) + ($762 << 2) | 0;
+ $764 = SAFE_HEAP_LOAD($763 | 0, 4, 0) | 0 | 0;
+ $765 = $760 ^ $764;
+ $766 = $728 >>> 24;
+ $767 = $0 + ($766 << 2) | 0;
+ $768 = SAFE_HEAP_LOAD($767 | 0, 4, 0) | 0 | 0;
+ $769 = $765 ^ $768;
+ $770 = $769 + $752 | 0;
+ $771 = $0 + 4148 | 0;
+ $772 = SAFE_HEAP_LOAD($771 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($782 | 0, 4, 0) | 0 | 0;
+ $784 = $770 + $783 | 0;
+ $785 = $784 ^ $781;
+ $786 = $785 & 255;
+ $787 = $0 + ($786 << 2) | 0;
+ $788 = SAFE_HEAP_LOAD($787 | 0, 4, 0) | 0 | 0;
+ $789 = $785 >>> 8;
+ $790 = $789 & 255;
+ $791 = ($0 + 1024 | 0) + ($790 << 2) | 0;
+ $792 = SAFE_HEAP_LOAD($791 | 0, 4, 0) | 0 | 0;
+ $793 = $792 ^ $788;
+ $794 = $785 >>> 16;
+ $795 = $794 & 255;
+ $796 = ($0 + 2048 | 0) + ($795 << 2) | 0;
+ $797 = SAFE_HEAP_LOAD($796 | 0, 4, 0) | 0 | 0;
+ $798 = $793 ^ $797;
+ $799 = $785 >>> 24;
+ $800 = ($0 + 3072 | 0) + ($799 << 2) | 0;
+ $801 = SAFE_HEAP_LOAD($800 | 0, 4, 0) | 0 | 0;
+ $802 = $798 ^ $801;
+ $803 = $776 & 255;
+ $804 = ($0 + 1024 | 0) + ($803 << 2) | 0;
+ $805 = SAFE_HEAP_LOAD($804 | 0, 4, 0) | 0 | 0;
+ $806 = $775 >>> 9;
+ $807 = $806 & 255;
+ $808 = ($0 + 2048 | 0) + ($807 << 2) | 0;
+ $809 = SAFE_HEAP_LOAD($808 | 0, 4, 0) | 0 | 0;
+ $810 = $809 ^ $805;
+ $811 = $775 >>> 17;
+ $812 = $811 & 255;
+ $813 = ($0 + 3072 | 0) + ($812 << 2) | 0;
+ $814 = SAFE_HEAP_LOAD($813 | 0, 4, 0) | 0 | 0;
+ $815 = $810 ^ $814;
+ $816 = $778 >>> 24;
+ $817 = $0 + ($816 << 2) | 0;
+ $818 = SAFE_HEAP_LOAD($817 | 0, 4, 0) | 0 | 0;
+ $819 = $815 ^ $818;
+ $820 = $819 + $802 | 0;
+ $821 = $0 + 4140 | 0;
+ $822 = SAFE_HEAP_LOAD($821 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($832 | 0, 4, 0) | 0 | 0;
+ $834 = $820 + $833 | 0;
+ $835 = $834 ^ $831;
+ $836 = $835 & 255;
+ $837 = $0 + ($836 << 2) | 0;
+ $838 = SAFE_HEAP_LOAD($837 | 0, 4, 0) | 0 | 0;
+ $839 = $835 >>> 8;
+ $840 = $839 & 255;
+ $841 = ($0 + 1024 | 0) + ($840 << 2) | 0;
+ $842 = SAFE_HEAP_LOAD($841 | 0, 4, 0) | 0 | 0;
+ $843 = $842 ^ $838;
+ $844 = $835 >>> 16;
+ $845 = $844 & 255;
+ $846 = ($0 + 2048 | 0) + ($845 << 2) | 0;
+ $847 = SAFE_HEAP_LOAD($846 | 0, 4, 0) | 0 | 0;
+ $848 = $843 ^ $847;
+ $849 = $835 >>> 24;
+ $850 = ($0 + 3072 | 0) + ($849 << 2) | 0;
+ $851 = SAFE_HEAP_LOAD($850 | 0, 4, 0) | 0 | 0;
+ $852 = $848 ^ $851;
+ $853 = $826 & 255;
+ $854 = ($0 + 1024 | 0) + ($853 << 2) | 0;
+ $855 = SAFE_HEAP_LOAD($854 | 0, 4, 0) | 0 | 0;
+ $856 = $825 >>> 9;
+ $857 = $856 & 255;
+ $858 = ($0 + 2048 | 0) + ($857 << 2) | 0;
+ $859 = SAFE_HEAP_LOAD($858 | 0, 4, 0) | 0 | 0;
+ $860 = $859 ^ $855;
+ $861 = $825 >>> 17;
+ $862 = $861 & 255;
+ $863 = ($0 + 3072 | 0) + ($862 << 2) | 0;
+ $864 = SAFE_HEAP_LOAD($863 | 0, 4, 0) | 0 | 0;
+ $865 = $860 ^ $864;
+ $866 = $828 >>> 24;
+ $867 = $0 + ($866 << 2) | 0;
+ $868 = SAFE_HEAP_LOAD($867 | 0, 4, 0) | 0 | 0;
+ $869 = $865 ^ $868;
+ $870 = $869 + $852 | 0;
+ $871 = $0 + 4132 | 0;
+ $872 = SAFE_HEAP_LOAD($871 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($882 | 0, 4, 0) | 0 | 0;
+ $884 = $870 + $883 | 0;
+ $885 = $884 ^ $881;
+ $886 = $0 + 4096 | 0;
+ $887 = SAFE_HEAP_LOAD($886 | 0, 4, 0) | 0 | 0;
+ $888 = $887 ^ $835;
+ $889 = $888 >>> 24;
+ $890 = $889 & 255;
+ $891 = $1 + 3 | 0;
+ SAFE_HEAP_STORE($891 >> 0 | 0, $890 | 0, 1);
+ $892 = $888 >>> 16;
+ $893 = $892 & 255;
+ $894 = $1 + 2 | 0;
+ SAFE_HEAP_STORE($894 >> 0 | 0, $893 | 0, 1);
+ $895 = $888 >>> 8;
+ $896 = $895 & 255;
+ $897 = $1 + 1 | 0;
+ SAFE_HEAP_STORE($897 >> 0 | 0, $896 | 0, 1);
+ $898 = $888 & 255;
+ SAFE_HEAP_STORE($1 >> 0 | 0, $898 | 0, 1);
+ $899 = $0 + 4100 | 0;
+ $900 = SAFE_HEAP_LOAD($899 | 0, 4, 0) | 0 | 0;
+ $901 = $900 ^ $828;
+ $902 = $1 + 4 | 0;
+ $903 = $901 >>> 24;
+ $904 = $903 & 255;
+ $905 = $1 + 7 | 0;
+ SAFE_HEAP_STORE($905 >> 0 | 0, $904 | 0, 1);
+ $906 = $901 >>> 16;
+ $907 = $906 & 255;
+ $908 = $1 + 6 | 0;
+ SAFE_HEAP_STORE($908 >> 0 | 0, $907 | 0, 1);
+ $909 = $901 >>> 8;
+ $910 = $909 & 255;
+ $911 = $1 + 5 | 0;
+ SAFE_HEAP_STORE($911 >> 0 | 0, $910 | 0, 1);
+ $912 = $901 & 255;
+ SAFE_HEAP_STORE($902 >> 0 | 0, $912 | 0, 1);
+ $913 = $0 + 4104 | 0;
+ $914 = SAFE_HEAP_LOAD($913 | 0, 4, 0) | 0 | 0;
+ $915 = $885 ^ $914;
+ $916 = $1 + 8 | 0;
+ $917 = $915 >>> 24;
+ $918 = $917 & 255;
+ $919 = $1 + 11 | 0;
+ SAFE_HEAP_STORE($919 >> 0 | 0, $918 | 0, 1);
+ $920 = $915 >>> 16;
+ $921 = $920 & 255;
+ $922 = $1 + 10 | 0;
+ SAFE_HEAP_STORE($922 >> 0 | 0, $921 | 0, 1);
+ $923 = $915 >>> 8;
+ $924 = $923 & 255;
+ $925 = $1 + 9 | 0;
+ SAFE_HEAP_STORE($925 >> 0 | 0, $924 | 0, 1);
+ $926 = $915 & 255;
+ SAFE_HEAP_STORE($916 >> 0 | 0, $926 | 0, 1);
+ $927 = $0 + 4108 | 0;
+ $928 = SAFE_HEAP_LOAD($927 | 0, 4, 0) | 0 | 0;
+ $929 = $928 ^ $878;
+ $930 = $1 + 12 | 0;
+ $931 = $929 >>> 24;
+ $932 = $931 & 255;
+ $933 = $1 + 15 | 0;
+ SAFE_HEAP_STORE($933 >> 0 | 0, $932 | 0, 1);
+ $934 = $929 >>> 16;
+ $935 = $934 & 255;
+ $936 = $1 + 14 | 0;
+ SAFE_HEAP_STORE($936 >> 0 | 0, $935 | 0, 1);
+ $937 = $929 >>> 8;
+ $938 = $937 & 255;
+ $939 = $1 + 13 | 0;
+ SAFE_HEAP_STORE($939 >> 0 | 0, $938 | 0, 1);
+ $940 = $929 & 255;
+ SAFE_HEAP_STORE($930 >> 0 | 0, $940 | 0, 1);
+ return 36;
+}
+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 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+ $5 = $4 & 255;
+ $6 = $5 << 24;
+ $7 = $2 + 2 | 0;
+ $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = $8 & 255;
+ $10 = $9 << 16;
+ $11 = $10 | $6;
+ $12 = $2 + 1 | 0;
+ $13 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = $13 & 255;
+ $15 = $14 << 8;
+ $16 = $11 | $15;
+ $17 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $18 = $17 & 255;
+ $19 = $16 | $18;
+ $20 = $0 + 4096 | 0;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = $19 ^ $21;
+ $23 = $2 + 4 | 0;
+ $24 = $2 + 7 | 0;
+ $25 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+ $26 = $25 & 255;
+ $27 = $26 << 24;
+ $28 = $2 + 6 | 0;
+ $29 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+ $30 = $29 & 255;
+ $31 = $30 << 16;
+ $32 = $31 | $27;
+ $33 = $2 + 5 | 0;
+ $34 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+ $35 = $34 & 255;
+ $36 = $35 << 8;
+ $37 = $32 | $36;
+ $38 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+ $39 = $38 & 255;
+ $40 = $37 | $39;
+ $41 = $0 + 4100 | 0;
+ $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+ $43 = $40 ^ $42;
+ $44 = $2 + 8 | 0;
+ $45 = $2 + 11 | 0;
+ $46 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+ $47 = $46 & 255;
+ $48 = $47 << 24;
+ $49 = $2 + 10 | 0;
+ $50 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+ $51 = $50 & 255;
+ $52 = $51 << 16;
+ $53 = $52 | $48;
+ $54 = $2 + 9 | 0;
+ $55 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+ $56 = $55 & 255;
+ $57 = $56 << 8;
+ $58 = $53 | $57;
+ $59 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+ $60 = $59 & 255;
+ $61 = $58 | $60;
+ $62 = $0 + 4104 | 0;
+ $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+ $64 = $61 ^ $63;
+ $65 = $2 + 12 | 0;
+ $66 = $2 + 15 | 0;
+ $67 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+ $68 = $67 & 255;
+ $69 = $68 << 24;
+ $70 = $2 + 14 | 0;
+ $71 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+ $72 = $71 & 255;
+ $73 = $72 << 16;
+ $74 = $73 | $69;
+ $75 = $2 + 13 | 0;
+ $76 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+ $77 = $76 & 255;
+ $78 = $77 << 8;
+ $79 = $74 | $78;
+ $80 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+ $81 = $80 & 255;
+ $82 = $79 | $81;
+ $83 = $0 + 4108 | 0;
+ $84 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+ $85 = $82 ^ $84;
+ $86 = $22 & 255;
+ $87 = $0 + ($86 << 2) | 0;
+ $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+ $89 = $22 >>> 8;
+ $90 = $89 & 255;
+ $91 = ($0 + 1024 | 0) + ($90 << 2) | 0;
+ $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+ $93 = $92 ^ $88;
+ $94 = $22 >>> 16;
+ $95 = $94 & 255;
+ $96 = ($0 + 2048 | 0) + ($95 << 2) | 0;
+ $97 = SAFE_HEAP_LOAD($96 | 0, 4, 0) | 0 | 0;
+ $98 = $93 ^ $97;
+ $99 = $22 >>> 24;
+ $100 = ($0 + 3072 | 0) + ($99 << 2) | 0;
+ $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+ $102 = $98 ^ $101;
+ $103 = $43 & 255;
+ $104 = ($0 + 1024 | 0) + ($103 << 2) | 0;
+ $105 = SAFE_HEAP_LOAD($104 | 0, 4, 0) | 0 | 0;
+ $106 = $43 >>> 8;
+ $107 = $106 & 255;
+ $108 = ($0 + 2048 | 0) + ($107 << 2) | 0;
+ $109 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+ $110 = $109 ^ $105;
+ $111 = $43 >>> 16;
+ $112 = $111 & 255;
+ $113 = ($0 + 3072 | 0) + ($112 << 2) | 0;
+ $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+ $115 = $110 ^ $114;
+ $116 = $43 >>> 24;
+ $117 = $0 + ($116 << 2) | 0;
+ $118 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+ $119 = $115 ^ $118;
+ $120 = $119 + $102 | 0;
+ $121 = $0 + 4132 | 0;
+ $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+ $123 = $119 + $122 | 0;
+ $124 = $123 + $120 | 0;
+ $125 = $0 + 4128 | 0;
+ $126 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+ $139 = $128 >>> 9;
+ $140 = $139 & 255;
+ $141 = ($0 + 1024 | 0) + ($140 << 2) | 0;
+ $142 = SAFE_HEAP_LOAD($141 | 0, 4, 0) | 0 | 0;
+ $143 = $142 ^ $138;
+ $144 = $128 >>> 17;
+ $145 = $144 & 255;
+ $146 = ($0 + 2048 | 0) + ($145 << 2) | 0;
+ $147 = SAFE_HEAP_LOAD($146 | 0, 4, 0) | 0 | 0;
+ $148 = $143 ^ $147;
+ $149 = $131 >>> 24;
+ $150 = ($0 + 3072 | 0) + ($149 << 2) | 0;
+ $151 = SAFE_HEAP_LOAD($150 | 0, 4, 0) | 0 | 0;
+ $152 = $148 ^ $151;
+ $153 = $135 & 255;
+ $154 = ($0 + 1024 | 0) + ($153 << 2) | 0;
+ $155 = SAFE_HEAP_LOAD($154 | 0, 4, 0) | 0 | 0;
+ $156 = $135 >>> 8;
+ $157 = $156 & 255;
+ $158 = ($0 + 2048 | 0) + ($157 << 2) | 0;
+ $159 = SAFE_HEAP_LOAD($158 | 0, 4, 0) | 0 | 0;
+ $160 = $159 ^ $155;
+ $161 = $135 >>> 16;
+ $162 = $161 & 255;
+ $163 = ($0 + 3072 | 0) + ($162 << 2) | 0;
+ $164 = SAFE_HEAP_LOAD($163 | 0, 4, 0) | 0 | 0;
+ $165 = $160 ^ $164;
+ $166 = $135 >>> 24;
+ $167 = $0 + ($166 << 2) | 0;
+ $168 = SAFE_HEAP_LOAD($167 | 0, 4, 0) | 0 | 0;
+ $169 = $165 ^ $168;
+ $170 = $169 + $152 | 0;
+ $171 = $0 + 4140 | 0;
+ $172 = SAFE_HEAP_LOAD($171 | 0, 4, 0) | 0 | 0;
+ $173 = $169 + $172 | 0;
+ $174 = $173 + $170 | 0;
+ $175 = $0 + 4136 | 0;
+ $176 = SAFE_HEAP_LOAD($175 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+ $189 = $178 >>> 9;
+ $190 = $189 & 255;
+ $191 = ($0 + 1024 | 0) + ($190 << 2) | 0;
+ $192 = SAFE_HEAP_LOAD($191 | 0, 4, 0) | 0 | 0;
+ $193 = $192 ^ $188;
+ $194 = $178 >>> 17;
+ $195 = $194 & 255;
+ $196 = ($0 + 2048 | 0) + ($195 << 2) | 0;
+ $197 = SAFE_HEAP_LOAD($196 | 0, 4, 0) | 0 | 0;
+ $198 = $193 ^ $197;
+ $199 = $181 >>> 24;
+ $200 = ($0 + 3072 | 0) + ($199 << 2) | 0;
+ $201 = SAFE_HEAP_LOAD($200 | 0, 4, 0) | 0 | 0;
+ $202 = $198 ^ $201;
+ $203 = $185 & 255;
+ $204 = ($0 + 1024 | 0) + ($203 << 2) | 0;
+ $205 = SAFE_HEAP_LOAD($204 | 0, 4, 0) | 0 | 0;
+ $206 = $185 >>> 8;
+ $207 = $206 & 255;
+ $208 = ($0 + 2048 | 0) + ($207 << 2) | 0;
+ $209 = SAFE_HEAP_LOAD($208 | 0, 4, 0) | 0 | 0;
+ $210 = $209 ^ $205;
+ $211 = $185 >>> 16;
+ $212 = $211 & 255;
+ $213 = ($0 + 3072 | 0) + ($212 << 2) | 0;
+ $214 = SAFE_HEAP_LOAD($213 | 0, 4, 0) | 0 | 0;
+ $215 = $210 ^ $214;
+ $216 = $185 >>> 24;
+ $217 = $0 + ($216 << 2) | 0;
+ $218 = SAFE_HEAP_LOAD($217 | 0, 4, 0) | 0 | 0;
+ $219 = $215 ^ $218;
+ $220 = $219 + $202 | 0;
+ $221 = $0 + 4148 | 0;
+ $222 = SAFE_HEAP_LOAD($221 | 0, 4, 0) | 0 | 0;
+ $223 = $219 + $222 | 0;
+ $224 = $223 + $220 | 0;
+ $225 = $0 + 4144 | 0;
+ $226 = SAFE_HEAP_LOAD($225 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($237 | 0, 4, 0) | 0 | 0;
+ $239 = $228 >>> 9;
+ $240 = $239 & 255;
+ $241 = ($0 + 1024 | 0) + ($240 << 2) | 0;
+ $242 = SAFE_HEAP_LOAD($241 | 0, 4, 0) | 0 | 0;
+ $243 = $242 ^ $238;
+ $244 = $228 >>> 17;
+ $245 = $244 & 255;
+ $246 = ($0 + 2048 | 0) + ($245 << 2) | 0;
+ $247 = SAFE_HEAP_LOAD($246 | 0, 4, 0) | 0 | 0;
+ $248 = $243 ^ $247;
+ $249 = $231 >>> 24;
+ $250 = ($0 + 3072 | 0) + ($249 << 2) | 0;
+ $251 = SAFE_HEAP_LOAD($250 | 0, 4, 0) | 0 | 0;
+ $252 = $248 ^ $251;
+ $253 = $235 & 255;
+ $254 = ($0 + 1024 | 0) + ($253 << 2) | 0;
+ $255 = SAFE_HEAP_LOAD($254 | 0, 4, 0) | 0 | 0;
+ $256 = $235 >>> 8;
+ $257 = $256 & 255;
+ $258 = ($0 + 2048 | 0) + ($257 << 2) | 0;
+ $259 = SAFE_HEAP_LOAD($258 | 0, 4, 0) | 0 | 0;
+ $260 = $259 ^ $255;
+ $261 = $235 >>> 16;
+ $262 = $261 & 255;
+ $263 = ($0 + 3072 | 0) + ($262 << 2) | 0;
+ $264 = SAFE_HEAP_LOAD($263 | 0, 4, 0) | 0 | 0;
+ $265 = $260 ^ $264;
+ $266 = $235 >>> 24;
+ $267 = $0 + ($266 << 2) | 0;
+ $268 = SAFE_HEAP_LOAD($267 | 0, 4, 0) | 0 | 0;
+ $269 = $265 ^ $268;
+ $270 = $269 + $252 | 0;
+ $271 = $0 + 4156 | 0;
+ $272 = SAFE_HEAP_LOAD($271 | 0, 4, 0) | 0 | 0;
+ $273 = $269 + $272 | 0;
+ $274 = $273 + $270 | 0;
+ $275 = $0 + 4152 | 0;
+ $276 = SAFE_HEAP_LOAD($275 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($287 | 0, 4, 0) | 0 | 0;
+ $289 = $278 >>> 9;
+ $290 = $289 & 255;
+ $291 = ($0 + 1024 | 0) + ($290 << 2) | 0;
+ $292 = SAFE_HEAP_LOAD($291 | 0, 4, 0) | 0 | 0;
+ $293 = $292 ^ $288;
+ $294 = $278 >>> 17;
+ $295 = $294 & 255;
+ $296 = ($0 + 2048 | 0) + ($295 << 2) | 0;
+ $297 = SAFE_HEAP_LOAD($296 | 0, 4, 0) | 0 | 0;
+ $298 = $293 ^ $297;
+ $299 = $281 >>> 24;
+ $300 = ($0 + 3072 | 0) + ($299 << 2) | 0;
+ $301 = SAFE_HEAP_LOAD($300 | 0, 4, 0) | 0 | 0;
+ $302 = $298 ^ $301;
+ $303 = $285 & 255;
+ $304 = ($0 + 1024 | 0) + ($303 << 2) | 0;
+ $305 = SAFE_HEAP_LOAD($304 | 0, 4, 0) | 0 | 0;
+ $306 = $285 >>> 8;
+ $307 = $306 & 255;
+ $308 = ($0 + 2048 | 0) + ($307 << 2) | 0;
+ $309 = SAFE_HEAP_LOAD($308 | 0, 4, 0) | 0 | 0;
+ $310 = $309 ^ $305;
+ $311 = $285 >>> 16;
+ $312 = $311 & 255;
+ $313 = ($0 + 3072 | 0) + ($312 << 2) | 0;
+ $314 = SAFE_HEAP_LOAD($313 | 0, 4, 0) | 0 | 0;
+ $315 = $310 ^ $314;
+ $316 = $285 >>> 24;
+ $317 = $0 + ($316 << 2) | 0;
+ $318 = SAFE_HEAP_LOAD($317 | 0, 4, 0) | 0 | 0;
+ $319 = $315 ^ $318;
+ $320 = $319 + $302 | 0;
+ $321 = $0 + 4164 | 0;
+ $322 = SAFE_HEAP_LOAD($321 | 0, 4, 0) | 0 | 0;
+ $323 = $319 + $322 | 0;
+ $324 = $323 + $320 | 0;
+ $325 = $0 + 4160 | 0;
+ $326 = SAFE_HEAP_LOAD($325 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($337 | 0, 4, 0) | 0 | 0;
+ $339 = $328 >>> 9;
+ $340 = $339 & 255;
+ $341 = ($0 + 1024 | 0) + ($340 << 2) | 0;
+ $342 = SAFE_HEAP_LOAD($341 | 0, 4, 0) | 0 | 0;
+ $343 = $342 ^ $338;
+ $344 = $328 >>> 17;
+ $345 = $344 & 255;
+ $346 = ($0 + 2048 | 0) + ($345 << 2) | 0;
+ $347 = SAFE_HEAP_LOAD($346 | 0, 4, 0) | 0 | 0;
+ $348 = $343 ^ $347;
+ $349 = $331 >>> 24;
+ $350 = ($0 + 3072 | 0) + ($349 << 2) | 0;
+ $351 = SAFE_HEAP_LOAD($350 | 0, 4, 0) | 0 | 0;
+ $352 = $348 ^ $351;
+ $353 = $335 & 255;
+ $354 = ($0 + 1024 | 0) + ($353 << 2) | 0;
+ $355 = SAFE_HEAP_LOAD($354 | 0, 4, 0) | 0 | 0;
+ $356 = $335 >>> 8;
+ $357 = $356 & 255;
+ $358 = ($0 + 2048 | 0) + ($357 << 2) | 0;
+ $359 = SAFE_HEAP_LOAD($358 | 0, 4, 0) | 0 | 0;
+ $360 = $359 ^ $355;
+ $361 = $335 >>> 16;
+ $362 = $361 & 255;
+ $363 = ($0 + 3072 | 0) + ($362 << 2) | 0;
+ $364 = SAFE_HEAP_LOAD($363 | 0, 4, 0) | 0 | 0;
+ $365 = $360 ^ $364;
+ $366 = $335 >>> 24;
+ $367 = $0 + ($366 << 2) | 0;
+ $368 = SAFE_HEAP_LOAD($367 | 0, 4, 0) | 0 | 0;
+ $369 = $365 ^ $368;
+ $370 = $369 + $352 | 0;
+ $371 = $0 + 4172 | 0;
+ $372 = SAFE_HEAP_LOAD($371 | 0, 4, 0) | 0 | 0;
+ $373 = $369 + $372 | 0;
+ $374 = $373 + $370 | 0;
+ $375 = $0 + 4168 | 0;
+ $376 = SAFE_HEAP_LOAD($375 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($387 | 0, 4, 0) | 0 | 0;
+ $389 = $378 >>> 9;
+ $390 = $389 & 255;
+ $391 = ($0 + 1024 | 0) + ($390 << 2) | 0;
+ $392 = SAFE_HEAP_LOAD($391 | 0, 4, 0) | 0 | 0;
+ $393 = $392 ^ $388;
+ $394 = $378 >>> 17;
+ $395 = $394 & 255;
+ $396 = ($0 + 2048 | 0) + ($395 << 2) | 0;
+ $397 = SAFE_HEAP_LOAD($396 | 0, 4, 0) | 0 | 0;
+ $398 = $393 ^ $397;
+ $399 = $381 >>> 24;
+ $400 = ($0 + 3072 | 0) + ($399 << 2) | 0;
+ $401 = SAFE_HEAP_LOAD($400 | 0, 4, 0) | 0 | 0;
+ $402 = $398 ^ $401;
+ $403 = $385 & 255;
+ $404 = ($0 + 1024 | 0) + ($403 << 2) | 0;
+ $405 = SAFE_HEAP_LOAD($404 | 0, 4, 0) | 0 | 0;
+ $406 = $385 >>> 8;
+ $407 = $406 & 255;
+ $408 = ($0 + 2048 | 0) + ($407 << 2) | 0;
+ $409 = SAFE_HEAP_LOAD($408 | 0, 4, 0) | 0 | 0;
+ $410 = $409 ^ $405;
+ $411 = $385 >>> 16;
+ $412 = $411 & 255;
+ $413 = ($0 + 3072 | 0) + ($412 << 2) | 0;
+ $414 = SAFE_HEAP_LOAD($413 | 0, 4, 0) | 0 | 0;
+ $415 = $410 ^ $414;
+ $416 = $385 >>> 24;
+ $417 = $0 + ($416 << 2) | 0;
+ $418 = SAFE_HEAP_LOAD($417 | 0, 4, 0) | 0 | 0;
+ $419 = $415 ^ $418;
+ $420 = $419 + $402 | 0;
+ $421 = $0 + 4180 | 0;
+ $422 = SAFE_HEAP_LOAD($421 | 0, 4, 0) | 0 | 0;
+ $423 = $419 + $422 | 0;
+ $424 = $423 + $420 | 0;
+ $425 = $0 + 4176 | 0;
+ $426 = SAFE_HEAP_LOAD($425 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($437 | 0, 4, 0) | 0 | 0;
+ $439 = $428 >>> 9;
+ $440 = $439 & 255;
+ $441 = ($0 + 1024 | 0) + ($440 << 2) | 0;
+ $442 = SAFE_HEAP_LOAD($441 | 0, 4, 0) | 0 | 0;
+ $443 = $442 ^ $438;
+ $444 = $428 >>> 17;
+ $445 = $444 & 255;
+ $446 = ($0 + 2048 | 0) + ($445 << 2) | 0;
+ $447 = SAFE_HEAP_LOAD($446 | 0, 4, 0) | 0 | 0;
+ $448 = $443 ^ $447;
+ $449 = $431 >>> 24;
+ $450 = ($0 + 3072 | 0) + ($449 << 2) | 0;
+ $451 = SAFE_HEAP_LOAD($450 | 0, 4, 0) | 0 | 0;
+ $452 = $448 ^ $451;
+ $453 = $435 & 255;
+ $454 = ($0 + 1024 | 0) + ($453 << 2) | 0;
+ $455 = SAFE_HEAP_LOAD($454 | 0, 4, 0) | 0 | 0;
+ $456 = $435 >>> 8;
+ $457 = $456 & 255;
+ $458 = ($0 + 2048 | 0) + ($457 << 2) | 0;
+ $459 = SAFE_HEAP_LOAD($458 | 0, 4, 0) | 0 | 0;
+ $460 = $459 ^ $455;
+ $461 = $435 >>> 16;
+ $462 = $461 & 255;
+ $463 = ($0 + 3072 | 0) + ($462 << 2) | 0;
+ $464 = SAFE_HEAP_LOAD($463 | 0, 4, 0) | 0 | 0;
+ $465 = $460 ^ $464;
+ $466 = $435 >>> 24;
+ $467 = $0 + ($466 << 2) | 0;
+ $468 = SAFE_HEAP_LOAD($467 | 0, 4, 0) | 0 | 0;
+ $469 = $465 ^ $468;
+ $470 = $469 + $452 | 0;
+ $471 = $0 + 4188 | 0;
+ $472 = SAFE_HEAP_LOAD($471 | 0, 4, 0) | 0 | 0;
+ $473 = $469 + $472 | 0;
+ $474 = $473 + $470 | 0;
+ $475 = $0 + 4184 | 0;
+ $476 = SAFE_HEAP_LOAD($475 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($487 | 0, 4, 0) | 0 | 0;
+ $489 = $478 >>> 9;
+ $490 = $489 & 255;
+ $491 = ($0 + 1024 | 0) + ($490 << 2) | 0;
+ $492 = SAFE_HEAP_LOAD($491 | 0, 4, 0) | 0 | 0;
+ $493 = $492 ^ $488;
+ $494 = $478 >>> 17;
+ $495 = $494 & 255;
+ $496 = ($0 + 2048 | 0) + ($495 << 2) | 0;
+ $497 = SAFE_HEAP_LOAD($496 | 0, 4, 0) | 0 | 0;
+ $498 = $493 ^ $497;
+ $499 = $481 >>> 24;
+ $500 = ($0 + 3072 | 0) + ($499 << 2) | 0;
+ $501 = SAFE_HEAP_LOAD($500 | 0, 4, 0) | 0 | 0;
+ $502 = $498 ^ $501;
+ $503 = $485 & 255;
+ $504 = ($0 + 1024 | 0) + ($503 << 2) | 0;
+ $505 = SAFE_HEAP_LOAD($504 | 0, 4, 0) | 0 | 0;
+ $506 = $485 >>> 8;
+ $507 = $506 & 255;
+ $508 = ($0 + 2048 | 0) + ($507 << 2) | 0;
+ $509 = SAFE_HEAP_LOAD($508 | 0, 4, 0) | 0 | 0;
+ $510 = $509 ^ $505;
+ $511 = $485 >>> 16;
+ $512 = $511 & 255;
+ $513 = ($0 + 3072 | 0) + ($512 << 2) | 0;
+ $514 = SAFE_HEAP_LOAD($513 | 0, 4, 0) | 0 | 0;
+ $515 = $510 ^ $514;
+ $516 = $485 >>> 24;
+ $517 = $0 + ($516 << 2) | 0;
+ $518 = SAFE_HEAP_LOAD($517 | 0, 4, 0) | 0 | 0;
+ $519 = $515 ^ $518;
+ $520 = $519 + $502 | 0;
+ $521 = $0 + 4196 | 0;
+ $522 = SAFE_HEAP_LOAD($521 | 0, 4, 0) | 0 | 0;
+ $523 = $519 + $522 | 0;
+ $524 = $523 + $520 | 0;
+ $525 = $0 + 4192 | 0;
+ $526 = SAFE_HEAP_LOAD($525 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($537 | 0, 4, 0) | 0 | 0;
+ $539 = $528 >>> 9;
+ $540 = $539 & 255;
+ $541 = ($0 + 1024 | 0) + ($540 << 2) | 0;
+ $542 = SAFE_HEAP_LOAD($541 | 0, 4, 0) | 0 | 0;
+ $543 = $542 ^ $538;
+ $544 = $528 >>> 17;
+ $545 = $544 & 255;
+ $546 = ($0 + 2048 | 0) + ($545 << 2) | 0;
+ $547 = SAFE_HEAP_LOAD($546 | 0, 4, 0) | 0 | 0;
+ $548 = $543 ^ $547;
+ $549 = $531 >>> 24;
+ $550 = ($0 + 3072 | 0) + ($549 << 2) | 0;
+ $551 = SAFE_HEAP_LOAD($550 | 0, 4, 0) | 0 | 0;
+ $552 = $548 ^ $551;
+ $553 = $535 & 255;
+ $554 = ($0 + 1024 | 0) + ($553 << 2) | 0;
+ $555 = SAFE_HEAP_LOAD($554 | 0, 4, 0) | 0 | 0;
+ $556 = $535 >>> 8;
+ $557 = $556 & 255;
+ $558 = ($0 + 2048 | 0) + ($557 << 2) | 0;
+ $559 = SAFE_HEAP_LOAD($558 | 0, 4, 0) | 0 | 0;
+ $560 = $559 ^ $555;
+ $561 = $535 >>> 16;
+ $562 = $561 & 255;
+ $563 = ($0 + 3072 | 0) + ($562 << 2) | 0;
+ $564 = SAFE_HEAP_LOAD($563 | 0, 4, 0) | 0 | 0;
+ $565 = $560 ^ $564;
+ $566 = $535 >>> 24;
+ $567 = $0 + ($566 << 2) | 0;
+ $568 = SAFE_HEAP_LOAD($567 | 0, 4, 0) | 0 | 0;
+ $569 = $565 ^ $568;
+ $570 = $569 + $552 | 0;
+ $571 = $0 + 4204 | 0;
+ $572 = SAFE_HEAP_LOAD($571 | 0, 4, 0) | 0 | 0;
+ $573 = $569 + $572 | 0;
+ $574 = $573 + $570 | 0;
+ $575 = $0 + 4200 | 0;
+ $576 = SAFE_HEAP_LOAD($575 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($587 | 0, 4, 0) | 0 | 0;
+ $589 = $578 >>> 9;
+ $590 = $589 & 255;
+ $591 = ($0 + 1024 | 0) + ($590 << 2) | 0;
+ $592 = SAFE_HEAP_LOAD($591 | 0, 4, 0) | 0 | 0;
+ $593 = $592 ^ $588;
+ $594 = $578 >>> 17;
+ $595 = $594 & 255;
+ $596 = ($0 + 2048 | 0) + ($595 << 2) | 0;
+ $597 = SAFE_HEAP_LOAD($596 | 0, 4, 0) | 0 | 0;
+ $598 = $593 ^ $597;
+ $599 = $581 >>> 24;
+ $600 = ($0 + 3072 | 0) + ($599 << 2) | 0;
+ $601 = SAFE_HEAP_LOAD($600 | 0, 4, 0) | 0 | 0;
+ $602 = $598 ^ $601;
+ $603 = $585 & 255;
+ $604 = ($0 + 1024 | 0) + ($603 << 2) | 0;
+ $605 = SAFE_HEAP_LOAD($604 | 0, 4, 0) | 0 | 0;
+ $606 = $585 >>> 8;
+ $607 = $606 & 255;
+ $608 = ($0 + 2048 | 0) + ($607 << 2) | 0;
+ $609 = SAFE_HEAP_LOAD($608 | 0, 4, 0) | 0 | 0;
+ $610 = $609 ^ $605;
+ $611 = $585 >>> 16;
+ $612 = $611 & 255;
+ $613 = ($0 + 3072 | 0) + ($612 << 2) | 0;
+ $614 = SAFE_HEAP_LOAD($613 | 0, 4, 0) | 0 | 0;
+ $615 = $610 ^ $614;
+ $616 = $585 >>> 24;
+ $617 = $0 + ($616 << 2) | 0;
+ $618 = SAFE_HEAP_LOAD($617 | 0, 4, 0) | 0 | 0;
+ $619 = $615 ^ $618;
+ $620 = $619 + $602 | 0;
+ $621 = $0 + 4212 | 0;
+ $622 = SAFE_HEAP_LOAD($621 | 0, 4, 0) | 0 | 0;
+ $623 = $619 + $622 | 0;
+ $624 = $623 + $620 | 0;
+ $625 = $0 + 4208 | 0;
+ $626 = SAFE_HEAP_LOAD($625 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($637 | 0, 4, 0) | 0 | 0;
+ $639 = $628 >>> 9;
+ $640 = $639 & 255;
+ $641 = ($0 + 1024 | 0) + ($640 << 2) | 0;
+ $642 = SAFE_HEAP_LOAD($641 | 0, 4, 0) | 0 | 0;
+ $643 = $642 ^ $638;
+ $644 = $628 >>> 17;
+ $645 = $644 & 255;
+ $646 = ($0 + 2048 | 0) + ($645 << 2) | 0;
+ $647 = SAFE_HEAP_LOAD($646 | 0, 4, 0) | 0 | 0;
+ $648 = $643 ^ $647;
+ $649 = $631 >>> 24;
+ $650 = ($0 + 3072 | 0) + ($649 << 2) | 0;
+ $651 = SAFE_HEAP_LOAD($650 | 0, 4, 0) | 0 | 0;
+ $652 = $648 ^ $651;
+ $653 = $635 & 255;
+ $654 = ($0 + 1024 | 0) + ($653 << 2) | 0;
+ $655 = SAFE_HEAP_LOAD($654 | 0, 4, 0) | 0 | 0;
+ $656 = $635 >>> 8;
+ $657 = $656 & 255;
+ $658 = ($0 + 2048 | 0) + ($657 << 2) | 0;
+ $659 = SAFE_HEAP_LOAD($658 | 0, 4, 0) | 0 | 0;
+ $660 = $659 ^ $655;
+ $661 = $635 >>> 16;
+ $662 = $661 & 255;
+ $663 = ($0 + 3072 | 0) + ($662 << 2) | 0;
+ $664 = SAFE_HEAP_LOAD($663 | 0, 4, 0) | 0 | 0;
+ $665 = $660 ^ $664;
+ $666 = $635 >>> 24;
+ $667 = $0 + ($666 << 2) | 0;
+ $668 = SAFE_HEAP_LOAD($667 | 0, 4, 0) | 0 | 0;
+ $669 = $665 ^ $668;
+ $670 = $669 + $652 | 0;
+ $671 = $0 + 4220 | 0;
+ $672 = SAFE_HEAP_LOAD($671 | 0, 4, 0) | 0 | 0;
+ $673 = $669 + $672 | 0;
+ $674 = $673 + $670 | 0;
+ $675 = $0 + 4216 | 0;
+ $676 = SAFE_HEAP_LOAD($675 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($687 | 0, 4, 0) | 0 | 0;
+ $689 = $678 >>> 9;
+ $690 = $689 & 255;
+ $691 = ($0 + 1024 | 0) + ($690 << 2) | 0;
+ $692 = SAFE_HEAP_LOAD($691 | 0, 4, 0) | 0 | 0;
+ $693 = $692 ^ $688;
+ $694 = $678 >>> 17;
+ $695 = $694 & 255;
+ $696 = ($0 + 2048 | 0) + ($695 << 2) | 0;
+ $697 = SAFE_HEAP_LOAD($696 | 0, 4, 0) | 0 | 0;
+ $698 = $693 ^ $697;
+ $699 = $681 >>> 24;
+ $700 = ($0 + 3072 | 0) + ($699 << 2) | 0;
+ $701 = SAFE_HEAP_LOAD($700 | 0, 4, 0) | 0 | 0;
+ $702 = $698 ^ $701;
+ $703 = $685 & 255;
+ $704 = ($0 + 1024 | 0) + ($703 << 2) | 0;
+ $705 = SAFE_HEAP_LOAD($704 | 0, 4, 0) | 0 | 0;
+ $706 = $685 >>> 8;
+ $707 = $706 & 255;
+ $708 = ($0 + 2048 | 0) + ($707 << 2) | 0;
+ $709 = SAFE_HEAP_LOAD($708 | 0, 4, 0) | 0 | 0;
+ $710 = $709 ^ $705;
+ $711 = $685 >>> 16;
+ $712 = $711 & 255;
+ $713 = ($0 + 3072 | 0) + ($712 << 2) | 0;
+ $714 = SAFE_HEAP_LOAD($713 | 0, 4, 0) | 0 | 0;
+ $715 = $710 ^ $714;
+ $716 = $685 >>> 24;
+ $717 = $0 + ($716 << 2) | 0;
+ $718 = SAFE_HEAP_LOAD($717 | 0, 4, 0) | 0 | 0;
+ $719 = $715 ^ $718;
+ $720 = $719 + $702 | 0;
+ $721 = $0 + 4228 | 0;
+ $722 = SAFE_HEAP_LOAD($721 | 0, 4, 0) | 0 | 0;
+ $723 = $719 + $722 | 0;
+ $724 = $723 + $720 | 0;
+ $725 = $0 + 4224 | 0;
+ $726 = SAFE_HEAP_LOAD($725 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($737 | 0, 4, 0) | 0 | 0;
+ $739 = $728 >>> 9;
+ $740 = $739 & 255;
+ $741 = ($0 + 1024 | 0) + ($740 << 2) | 0;
+ $742 = SAFE_HEAP_LOAD($741 | 0, 4, 0) | 0 | 0;
+ $743 = $742 ^ $738;
+ $744 = $728 >>> 17;
+ $745 = $744 & 255;
+ $746 = ($0 + 2048 | 0) + ($745 << 2) | 0;
+ $747 = SAFE_HEAP_LOAD($746 | 0, 4, 0) | 0 | 0;
+ $748 = $743 ^ $747;
+ $749 = $731 >>> 24;
+ $750 = ($0 + 3072 | 0) + ($749 << 2) | 0;
+ $751 = SAFE_HEAP_LOAD($750 | 0, 4, 0) | 0 | 0;
+ $752 = $748 ^ $751;
+ $753 = $735 & 255;
+ $754 = ($0 + 1024 | 0) + ($753 << 2) | 0;
+ $755 = SAFE_HEAP_LOAD($754 | 0, 4, 0) | 0 | 0;
+ $756 = $735 >>> 8;
+ $757 = $756 & 255;
+ $758 = ($0 + 2048 | 0) + ($757 << 2) | 0;
+ $759 = SAFE_HEAP_LOAD($758 | 0, 4, 0) | 0 | 0;
+ $760 = $759 ^ $755;
+ $761 = $735 >>> 16;
+ $762 = $761 & 255;
+ $763 = ($0 + 3072 | 0) + ($762 << 2) | 0;
+ $764 = SAFE_HEAP_LOAD($763 | 0, 4, 0) | 0 | 0;
+ $765 = $760 ^ $764;
+ $766 = $735 >>> 24;
+ $767 = $0 + ($766 << 2) | 0;
+ $768 = SAFE_HEAP_LOAD($767 | 0, 4, 0) | 0 | 0;
+ $769 = $765 ^ $768;
+ $770 = $769 + $752 | 0;
+ $771 = $0 + 4236 | 0;
+ $772 = SAFE_HEAP_LOAD($771 | 0, 4, 0) | 0 | 0;
+ $773 = $769 + $772 | 0;
+ $774 = $773 + $770 | 0;
+ $775 = $0 + 4232 | 0;
+ $776 = SAFE_HEAP_LOAD($775 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($787 | 0, 4, 0) | 0 | 0;
+ $789 = $778 >>> 9;
+ $790 = $789 & 255;
+ $791 = ($0 + 1024 | 0) + ($790 << 2) | 0;
+ $792 = SAFE_HEAP_LOAD($791 | 0, 4, 0) | 0 | 0;
+ $793 = $792 ^ $788;
+ $794 = $778 >>> 17;
+ $795 = $794 & 255;
+ $796 = ($0 + 2048 | 0) + ($795 << 2) | 0;
+ $797 = SAFE_HEAP_LOAD($796 | 0, 4, 0) | 0 | 0;
+ $798 = $793 ^ $797;
+ $799 = $781 >>> 24;
+ $800 = ($0 + 3072 | 0) + ($799 << 2) | 0;
+ $801 = SAFE_HEAP_LOAD($800 | 0, 4, 0) | 0 | 0;
+ $802 = $798 ^ $801;
+ $803 = $785 & 255;
+ $804 = ($0 + 1024 | 0) + ($803 << 2) | 0;
+ $805 = SAFE_HEAP_LOAD($804 | 0, 4, 0) | 0 | 0;
+ $806 = $785 >>> 8;
+ $807 = $806 & 255;
+ $808 = ($0 + 2048 | 0) + ($807 << 2) | 0;
+ $809 = SAFE_HEAP_LOAD($808 | 0, 4, 0) | 0 | 0;
+ $810 = $809 ^ $805;
+ $811 = $785 >>> 16;
+ $812 = $811 & 255;
+ $813 = ($0 + 3072 | 0) + ($812 << 2) | 0;
+ $814 = SAFE_HEAP_LOAD($813 | 0, 4, 0) | 0 | 0;
+ $815 = $810 ^ $814;
+ $816 = $785 >>> 24;
+ $817 = $0 + ($816 << 2) | 0;
+ $818 = SAFE_HEAP_LOAD($817 | 0, 4, 0) | 0 | 0;
+ $819 = $815 ^ $818;
+ $820 = $819 + $802 | 0;
+ $821 = $0 + 4244 | 0;
+ $822 = SAFE_HEAP_LOAD($821 | 0, 4, 0) | 0 | 0;
+ $823 = $819 + $822 | 0;
+ $824 = $823 + $820 | 0;
+ $825 = $0 + 4240 | 0;
+ $826 = SAFE_HEAP_LOAD($825 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($837 | 0, 4, 0) | 0 | 0;
+ $839 = $828 >>> 9;
+ $840 = $839 & 255;
+ $841 = ($0 + 1024 | 0) + ($840 << 2) | 0;
+ $842 = SAFE_HEAP_LOAD($841 | 0, 4, 0) | 0 | 0;
+ $843 = $842 ^ $838;
+ $844 = $828 >>> 17;
+ $845 = $844 & 255;
+ $846 = ($0 + 2048 | 0) + ($845 << 2) | 0;
+ $847 = SAFE_HEAP_LOAD($846 | 0, 4, 0) | 0 | 0;
+ $848 = $843 ^ $847;
+ $849 = $831 >>> 24;
+ $850 = ($0 + 3072 | 0) + ($849 << 2) | 0;
+ $851 = SAFE_HEAP_LOAD($850 | 0, 4, 0) | 0 | 0;
+ $852 = $848 ^ $851;
+ $853 = $835 & 255;
+ $854 = ($0 + 1024 | 0) + ($853 << 2) | 0;
+ $855 = SAFE_HEAP_LOAD($854 | 0, 4, 0) | 0 | 0;
+ $856 = $835 >>> 8;
+ $857 = $856 & 255;
+ $858 = ($0 + 2048 | 0) + ($857 << 2) | 0;
+ $859 = SAFE_HEAP_LOAD($858 | 0, 4, 0) | 0 | 0;
+ $860 = $859 ^ $855;
+ $861 = $835 >>> 16;
+ $862 = $861 & 255;
+ $863 = ($0 + 3072 | 0) + ($862 << 2) | 0;
+ $864 = SAFE_HEAP_LOAD($863 | 0, 4, 0) | 0 | 0;
+ $865 = $860 ^ $864;
+ $866 = $835 >>> 24;
+ $867 = $0 + ($866 << 2) | 0;
+ $868 = SAFE_HEAP_LOAD($867 | 0, 4, 0) | 0 | 0;
+ $869 = $865 ^ $868;
+ $870 = $869 + $852 | 0;
+ $871 = $0 + 4252 | 0;
+ $872 = SAFE_HEAP_LOAD($871 | 0, 4, 0) | 0 | 0;
+ $873 = $869 + $872 | 0;
+ $874 = $873 + $870 | 0;
+ $875 = $0 + 4248 | 0;
+ $876 = SAFE_HEAP_LOAD($875 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($886 | 0, 4, 0) | 0 | 0;
+ $888 = $887 ^ $831;
+ $889 = $888 >>> 24;
+ $890 = $889 & 255;
+ $891 = $1 + 3 | 0;
+ SAFE_HEAP_STORE($891 >> 0 | 0, $890 | 0, 1);
+ $892 = $888 >>> 16;
+ $893 = $892 & 255;
+ $894 = $1 + 2 | 0;
+ SAFE_HEAP_STORE($894 >> 0 | 0, $893 | 0, 1);
+ $895 = $888 >>> 8;
+ $896 = $895 & 255;
+ $897 = $1 + 1 | 0;
+ SAFE_HEAP_STORE($897 >> 0 | 0, $896 | 0, 1);
+ $898 = $888 & 255;
+ SAFE_HEAP_STORE($1 >> 0 | 0, $898 | 0, 1);
+ $899 = $0 + 4116 | 0;
+ $900 = SAFE_HEAP_LOAD($899 | 0, 4, 0) | 0 | 0;
+ $901 = $900 ^ $835;
+ $902 = $1 + 4 | 0;
+ $903 = $901 >>> 24;
+ $904 = $903 & 255;
+ $905 = $1 + 7 | 0;
+ SAFE_HEAP_STORE($905 >> 0 | 0, $904 | 0, 1);
+ $906 = $901 >>> 16;
+ $907 = $906 & 255;
+ $908 = $1 + 6 | 0;
+ SAFE_HEAP_STORE($908 >> 0 | 0, $907 | 0, 1);
+ $909 = $901 >>> 8;
+ $910 = $909 & 255;
+ $911 = $1 + 5 | 0;
+ SAFE_HEAP_STORE($911 >> 0 | 0, $910 | 0, 1);
+ $912 = $901 & 255;
+ SAFE_HEAP_STORE($902 >> 0 | 0, $912 | 0, 1);
+ $913 = $0 + 4120 | 0;
+ $914 = SAFE_HEAP_LOAD($913 | 0, 4, 0) | 0 | 0;
+ $915 = $914 ^ $881;
+ $916 = $1 + 8 | 0;
+ $917 = $915 >>> 24;
+ $918 = $917 & 255;
+ $919 = $1 + 11 | 0;
+ SAFE_HEAP_STORE($919 >> 0 | 0, $918 | 0, 1);
+ $920 = $915 >>> 16;
+ $921 = $920 & 255;
+ $922 = $1 + 10 | 0;
+ SAFE_HEAP_STORE($922 >> 0 | 0, $921 | 0, 1);
+ $923 = $915 >>> 8;
+ $924 = $923 & 255;
+ $925 = $1 + 9 | 0;
+ SAFE_HEAP_STORE($925 >> 0 | 0, $924 | 0, 1);
+ $926 = $915 & 255;
+ SAFE_HEAP_STORE($916 >> 0 | 0, $926 | 0, 1);
+ $927 = $0 + 4124 | 0;
+ $928 = SAFE_HEAP_LOAD($927 | 0, 4, 0) | 0 | 0;
+ $929 = $885 ^ $928;
+ $930 = $1 + 12 | 0;
+ $931 = $929 >>> 24;
+ $932 = $931 & 255;
+ $933 = $1 + 15 | 0;
+ SAFE_HEAP_STORE($933 >> 0 | 0, $932 | 0, 1);
+ $934 = $929 >>> 16;
+ $935 = $934 & 255;
+ $936 = $1 + 14 | 0;
+ SAFE_HEAP_STORE($936 >> 0 | 0, $935 | 0, 1);
+ $937 = $929 >>> 8;
+ $938 = $937 & 255;
+ $939 = $1 + 13 | 0;
+ SAFE_HEAP_STORE($939 >> 0 | 0, $938 | 0, 1);
+ $940 = $929 & 255;
+ SAFE_HEAP_STORE($930 >> 0 | 0, $940 | 0, 1);
+ return 36;
+}
+function __gcry_mpi_powm($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $$$0597 = 0, $$025$i$i = 0, $$026$i$i = 0, $$028$i$i = 0, 
$$036$i$i = 0, $$0534 = 0, $$0535 = 0, $$0536 = 0, $$0536658 = 0, $$0538 = 0, 
$$0540 = 0, $$0542 = 0, $$0542655 = 0, $$0545 = 0, $$0548 = 0, $$0550 = 0, 
$$0551 = 0, $$0551654 = 0, $$0554 = 0;
+ var $$0556763 = 0, $$0559772 = 0, $$0560783 = 0, $$0561 = 0, $$0562$lcssa = 
0, $$0562$ph = 0, $$0567$lcssa = 0, $$0567$ph = 0, $$0567743 = 0, $$0573$ph = 
0, $$0579759 = 0, $$0581$lcssa = 0, $$0581$ph = 0, $$0581742 = 0, $$0586778 = 
0, $$0591785 = 0, $$0592788 = 0, $$0593791 = 0, $$0594795 = 0, $$0595 = 0;
+ var $$0596777 = 0, $$0597$lcssa = 0, $$0597776 = 0, $$0599775 = 0, $$0643 = 
0, $$0644 = 0, $$0719 = 0, $$1$i$i = 0, $$1$ph = 0, $$10 = 0, $$11 = 0, $$12 = 
0, $$127$i$i = 0, $$129$i$i = 0, $$1537 = 0, $$1539 = 0, $$1539656 = 0, $$1543 
= 0, $$1546 = 0, $$1552 = 0;
+ var $$1555 = 0, $$1563 = 0, $$1568 = 0, $$1574$lcssa = 0, $$1574751 = 0, 
$$1574751$phi = 0, $$1580729 = 0, $$1582750 = 0, $$1587$lcssa = 0, $$1587$ph = 
0, $$1587741 = 0, $$1600$lcssa833 = 0, $$1600$lcssa834 = 0, $$1600758 = 0, 
$$1645$ph = 0, $$2$lcssa = 0, $$2544 = 0, $$2553 = 0, $$2588 = 0, 
$$2601$lcssa835 = 0;
+ var $$2601$lcssa836 = 0, $$2601728 = 0, $$2646$ph = 0, $$2752 = 0, $$2752$phi 
= 0, $$3647$lcssa = 0, $$3647749 = 0, $$4566$ph = 0, $$4571$ph = 0, 
$$4577$lcssa = 0, $$4577735 = 0, $$4577735$phi = 0, $$4585$ph = 0, $$4585734 = 
0, $$4590718 = 0, $$4590718$us = 0, $$5$lcssa = 0, $$5572724 = 0, $$5578723 = 
0, $$5578723$phi = 0;
+ var $$5736 = 0, $$5736$phi = 0, $$6650$be = 0, $$6650$lcssa = 0, $$6650733 = 
0, $$6725 = 0, $$6725$phi = 0, $$7 = 0, $$7651$ph = 0, $$7651722 = 0, $$8 = 0, 
$$8652 = 0, $$9 = 0, $$neg677 = 0, $$neg680 = 0, $$neg683 = 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, $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, $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, 
$exitcond = 0, $exitcond$i$i = 0, $exitcond820 = 0, $exitcond825 = 0;
+ var $exitcond826 = 0, $exitcond827 = 0, $exitcond828 = 0, $exitcond829 = 0, 
$exitcond830 = 0, $exitcond831 = 0, $or$cond = 0, $storemerge = 0, 
$storemerge$i606 = 0, $storemerge$i614 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 240 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(240 | 0);
+ $4 = sp + 176 | 0;
+ $5 = sp + 112 | 0;
+ $6 = sp + 80 | 0;
+ $7 = sp + 60 | 0;
+ $8 = sp + 40 | 0;
+ $9 = sp + 20 | 0;
+ $10 = sp;
+ $11 = $2 + 4 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = $3 + 4 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = $14 << 1;
+ $16 = $3 + 8 | 0;
+ $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+ $18 = $12 << 5;
+ $19 = ($18 | 0) > 512;
+ if ($19) {
+  $$0595 = 5;
+ } else {
+  $20 = ($18 | 0) > 256;
+  if ($20) {
+   $$0595 = 4;
+  } else {
+   $21 = ($18 | 0) > 128;
+   if ($21) {
+    $$0595 = 3;
+   } else {
+    $22 = ($18 | 0) > 64;
+    $$ = $22 ? 2 : 1;
+    $$0595 = $$;
+   }
+  }
+ }
+ $23 = $2 + 12 | 0;
+ $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ $25 = $24 & 1;
+ $26 = ($25 | 0) != 0;
+ $27 = $3 + 12 | 0;
+ $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+ $29 = $28 & 1;
+ $30 = ($29 | 0) != 0;
+ $31 = ($1 | 0) == (0 | 0);
+ if ($31) {
+  $37 = 0;
+ } else {
+  $32 = $1 + 12 | 0;
+  $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+  $34 = $33 & 1;
+  $35 = ($34 | 0) != 0;
+  $37 = $35;
+ }
+ $36 = $37 & 1;
+ $38 = $0 + 16 | 0;
+ $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+ $40 = $2 + 16 | 0;
+ $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+ $42 = ($14 | 0) == 0;
+ if ($42) {
+  __gcry_divide_by_zero();
+ }
+ $43 = ($12 | 0) == 0;
+ if ($43) {
+  $44 = ($14 | 0) == 1;
+  if ($44) {
+   $46 = $3 + 16 | 0;
+   $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+   $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+   $49 = ($48 | 0) != 1;
+   $50 = $49 & 1;
+   $51 = $0 + 4 | 0;
+   SAFE_HEAP_STORE($51 | 0, $50 | 0, 4);
+   if ($49) {
+    label = 13;
+   }
+  } else {
+   $45 = $0 + 4 | 0;
+   SAFE_HEAP_STORE($45 | 0, 1 | 0, 4);
+   label = 13;
+  }
+  if ((label | 0) == 13) {
+   $52 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $53 = ($52 | 0) < 1;
+   if ($53) {
+    __gcry_mpi_resize($0, 1);
+    $$pre = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+    $54 = $$pre;
+   } else {
+    $54 = $39;
+   }
+   SAFE_HEAP_STORE($54 | 0, 1 | 0, 4);
+  }
+  $55 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($55 | 0, 0 | 0, 4);
+  STACKTOP = sp;
+  return;
+ }
+ $56 = $30 ? $14 : 0;
+ $57 = __gcry_mpi_alloc_limb_space($14, $29) | 0;
+ $58 = $14 + -1 | 0;
+ $59 = $3 + 16 | 0;
+ $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+ $61 = $60 + ($58 << 2) | 0;
+ $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+ $63 = $62 >>> 0 < 65536;
+ $64 = $62 >>> 0 < 256;
+ $65 = $64 ? 0 : 8;
+ $66 = $62 >>> 0 < 16777216;
+ $67 = $66 ? 16 : 24;
+ $68 = $63 ? $65 : $67;
+ $69 = $62 >>> $68;
+ $70 = 45555 + $69 | 0;
+ $71 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+ $72 = $71 & 255;
+ $$neg677 = 32 - $72 | 0;
+ $73 = $$neg677 - $68 | 0;
+ $74 = ($73 | 0) != 0;
+ if ($74) {
+  __gcry_mpih_lshift($57, $60, $14, $73) | 0;
+ } else {
+  $75 = ($14 | 0) > 0;
+  if ($75) {
+   $$0594795 = 0;
+   while (1) {
+    $76 = $60 + ($$0594795 << 2) | 0;
+    $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+    $78 = $57 + ($$0594795 << 2) | 0;
+    SAFE_HEAP_STORE($78 | 0, $77 | 0, 4);
+    $79 = $$0594795 + 1 | 0;
+    $exitcond831 = ($79 | 0) == ($14 | 0);
+    if ($exitcond831) {
+     break;
+    } else {
+     $$0594795 = $79;
+    }
+   }
+  }
+ }
+ $80 = $1 + 4 | 0;
+ $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+ $82 = $1 + 8 | 0;
+ $83 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+ $84 = ($81 | 0) > ($14 | 0);
+ L31 : do {
+  if ($84) {
+   $85 = $81 + 1 | 0;
+   $86 = $37 ? $85 : 0;
+   $87 = __gcry_mpi_alloc_limb_space($85, $36) | 0;
+   $88 = ($81 | 0) > 0;
+   if ($88) {
+    $89 = $1 + 16 | 0;
+    $90 = SAFE_HEAP_LOAD($89 | 0, 4, 0) | 0 | 0;
+    $$0593791 = 0;
+    while (1) {
+     $91 = $90 + ($$0593791 << 2) | 0;
+     $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+     $93 = $87 + ($$0593791 << 2) | 0;
+     SAFE_HEAP_STORE($93 | 0, $92 | 0, 4);
+     $94 = $$0593791 + 1 | 0;
+     $exitcond830 = ($94 | 0) == ($81 | 0);
+     if ($exitcond830) {
+      break;
+     } else {
+      $$0593791 = $94;
+     }
+    }
+   }
+   $95 = $87 + ($14 << 2) | 0;
+   __gcry_mpih_divrem($95, 0, $87, $81, $57, $14) | 0;
+   $$0538 = $14;
+   while (1) {
+    $96 = ($$0538 | 0) > 0;
+    if (!$96) {
+     $$0536 = $87;
+     $$0542 = $87;
+     $$0551 = $86;
+     $$1539 = $$0538;
+     label = 29;
+     break L31;
+    }
+    $97 = $$0538 + -1 | 0;
+    $98 = $87 + ($97 << 2) | 0;
+    $99 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+    $100 = ($99 | 0) == 0;
+    if ($100) {
+     $$0538 = $97;
+    } else {
+     $$0536658 = $87;
+     $$0542655 = $87;
+     $$0551654 = $86;
+     $$1539656 = $$0538;
+     label = 31;
+     break;
+    }
+   }
+  } else {
+   $101 = $1 + 16 | 0;
+   $102 = SAFE_HEAP_LOAD($101 | 0, 4, 0) | 0 | 0;
+   $$0536 = $102;
+   $$0542 = 0;
+   $$0551 = 0;
+   $$1539 = $81;
+   label = 29;
+  }
+ } while (0);
+ if ((label | 0) == 29) {
+  $103 = ($$1539 | 0) == 0;
+  if ($103) {
+   $104 = $0 + 4 | 0;
+   SAFE_HEAP_STORE($104 | 0, 0 | 0, 4);
+   $105 = $0 + 8 | 0;
+   SAFE_HEAP_STORE($105 | 0, 0 | 0, 4);
+   $$0548 = 0;
+   $$0561 = 0;
+   $$1546 = 0;
+   $$1555 = 0;
+   $$2544 = $$0542;
+   $$2553 = $$0551;
+  } else {
+   $$0536658 = $$0536;
+   $$0542655 = $$0542;
+   $$0551654 = $$0551;
+   $$1539656 = $$1539;
+   label = 31;
+  }
+ }
+ do {
+  if ((label | 0) == 31) {
+   $106 = ($39 | 0) == ($$0536658 | 0);
+   if ($106) {
+    $107 = ($$0542655 | 0) == (0 | 0);
+    if (!$107) {
+     __gcry_assert_failed(45811, 45822, 515, 45832);
+    }
+    $108 = $37 ? $$1539656 : 0;
+    $109 = __gcry_mpi_alloc_limb_space($$1539656, $36) | 0;
+    $110 = ($$1539656 | 0) > 0;
+    if ($110) {
+     $$0592788 = 0;
+     while (1) {
+      $111 = $39 + ($$0592788 << 2) | 0;
+      $112 = SAFE_HEAP_LOAD($111 | 0, 4, 0) | 0 | 0;
+      $113 = $109 + ($$0592788 << 2) | 0;
+      SAFE_HEAP_STORE($113 | 0, $112 | 0, 4);
+      $114 = $$0592788 + 1 | 0;
+      $exitcond829 = ($114 | 0) == ($$1539656 | 0);
+      if ($exitcond829) {
+       $$1537 = $109;
+       $$1543 = $109;
+       $$1552 = $108;
+       break;
+      } else {
+       $$0592788 = $114;
+      }
+     }
+    } else {
+     $$1537 = $109;
+     $$1543 = $109;
+     $$1552 = $108;
+    }
+   } else {
+    $$1537 = $$0536658;
+    $$1543 = $$0542655;
+    $$1552 = $$0551654;
+   }
+   $115 = ($39 | 0) == ($41 | 0);
+   if ($115) {
+    $116 = $26 ? $12 : 0;
+    $117 = __gcry_mpi_alloc_limb_space($12, $25) | 0;
+    $118 = ($12 | 0) > 0;
+    if ($118) {
+     $$0591785 = 0;
+     while (1) {
+      $119 = $39 + ($$0591785 << 2) | 0;
+      $120 = SAFE_HEAP_LOAD($119 | 0, 4, 0) | 0 | 0;
+      $121 = $117 + ($$0591785 << 2) | 0;
+      SAFE_HEAP_STORE($121 | 0, $120 | 0, 4);
+      $122 = $$0591785 + 1 | 0;
+      $exitcond828 = ($122 | 0) == ($12 | 0);
+      if ($exitcond828) {
+       $$0535 = $117;
+       $$0545 = $117;
+       $$0554 = $116;
+       break;
+      } else {
+       $$0591785 = $122;
+      }
+     }
+    } else {
+     $$0535 = $117;
+     $$0545 = $117;
+     $$0554 = $116;
+    }
+   } else {
+    $$0535 = $41;
+    $$0545 = 0;
+    $$0554 = 0;
+   }
+   $123 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $124 = ($123 | 0) < ($15 | 0);
+   if ($124) {
+    __gcry_mpi_resize($0, $15);
+    $125 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+    $$0534 = $125;
+   } else {
+    $$0534 = $39;
+   }
+   $126 = $15 + 2 | 0;
+   $127 = $30 ? $126 : 0;
+   $128 = __gcry_mpi_alloc_limb_space($126, $29) | 0;
+   {}
+   SAFE_HEAP_STORE($6 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($6 + 4 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($6 + 8 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($6 + 12 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($6 + 16 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($6 + 20 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($6 + 24 | 0, 0 | 0 | 0, 4);
+   $129 = SAFE_HEAP_LOAD($$0535 | 0, 4, 0) | 0 | 0;
+   $130 = $129 & 1;
+   $131 = ($130 | 0) != 0;
+   $132 = ($83 | 0) != 0;
+   $133 = $132 & $131;
+   $134 = $$0595 >>> 0 > 1;
+   if ($134) {
+    $135 = ($$1539656 | 0) < 16;
+    if ($135) {
+     __gcry_mpih_mul($128, $$1537, $$1539656, $$1537, $$1539656) | 0;
+    } else {
+     __gcry_mpih_mul_karatsuba_case($128, $$1537, $$1539656, $$1537, 
$$1539656, $6);
+    }
+    $136 = $$1539656 << 1;
+    $137 = ($136 | 0) > ($14 | 0);
+    if ($137) {
+     $138 = $128 + ($14 << 2) | 0;
+     __gcry_mpih_divrem($138, 0, $128, $136, $57, $14) | 0;
+     $$0643 = $14;
+    } else {
+     $$0643 = $136;
+    }
+   } else {
+    $$0643 = 0;
+   }
+   $139 = __gcry_mpi_alloc_limb_space($$1539656, $25) | 0;
+   SAFE_HEAP_STORE($4 | 0, $139 | 0, 4);
+   SAFE_HEAP_STORE($5 | 0, $$1539656 | 0, 4);
+   $140 = ($$1539656 | 0) > 0;
+   if ($140) {
+    $$0560783 = 0;
+    while (1) {
+     $146 = $$1537 + ($$0560783 << 2) | 0;
+     $147 = SAFE_HEAP_LOAD($146 | 0, 4, 0) | 0 | 0;
+     $148 = $139 + ($$0560783 << 2) | 0;
+     SAFE_HEAP_STORE($148 | 0, $147 | 0, 4);
+     $149 = $$0560783 + 1 | 0;
+     $exitcond827 = ($149 | 0) == ($$1539656 | 0);
+     if ($exitcond827) {
+      break;
+     } else {
+      $$0560783 = $149;
+     }
+    }
+   }
+   $141 = $$0595 + -1 | 0;
+   $142 = 1 << $141;
+   $143 = ($142 | 0) > 1;
+   if ($143) {
+    $144 = ($$0643 | 0) < 16;
+    $145 = $$0534 + ($14 << 2) | 0;
+    $$0586778 = 1;
+    $$0596777 = $139;
+    $$0597776 = $$1539656;
+    $$0599775 = $$1539656;
+    while (1) {
+     $150 = ($$0643 | 0) < ($$0599775 | 0);
+     if ($150) {
+      if ($144) {
+       __gcry_mpih_mul($$0534, $$0596777, $$0599775, $128, $$0643) | 0;
+      } else {
+       __gcry_mpih_mul_karatsuba_case($$0534, $$0596777, $$0599775, $128, 
$$0643, $6);
+      }
+      $154 = $$0599775 + $$0643 | 0;
+      $155 = ($154 | 0) > ($14 | 0);
+      if ($155) {
+       __gcry_mpih_divrem($145, 0, $$0534, $154, $57, $14) | 0;
+       $$0644 = $14;
+      } else {
+       $$0644 = $154;
+      }
+     } else {
+      $151 = ($$0599775 | 0) < 16;
+      if ($151) {
+       __gcry_mpih_mul($$0534, $128, $$0643, $$0596777, $$0599775) | 0;
+      } else {
+       __gcry_mpih_mul_karatsuba_case($$0534, $128, $$0643, $$0596777, 
$$0599775, $6);
+      }
+      $152 = $$0599775 + $$0643 | 0;
+      $153 = ($152 | 0) > ($14 | 0);
+      if ($153) {
+       __gcry_mpih_divrem($145, 0, $$0534, $152, $57, $14) | 0;
+       $$0644 = $14;
+      } else {
+       $$0644 = $152;
+      }
+     }
+     $156 = __gcry_mpi_alloc_limb_space($$0644, $25) | 0;
+     $157 = $4 + ($$0586778 << 2) | 0;
+     SAFE_HEAP_STORE($157 | 0, $156 | 0, 4);
+     $158 = $5 + ($$0586778 << 2) | 0;
+     SAFE_HEAP_STORE($158 | 0, $$0644 | 0, 4);
+     $159 = ($$0597776 | 0) < ($$0644 | 0);
+     $$$0597 = $159 ? $$0644 : $$0597776;
+     $160 = ($$0644 | 0) > 0;
+     if ($160) {
+      $$0559772 = 0;
+      while (1) {
+       $161 = $$0534 + ($$0559772 << 2) | 0;
+       $162 = SAFE_HEAP_LOAD($161 | 0, 4, 0) | 0 | 0;
+       $163 = $156 + ($$0559772 << 2) | 0;
+       SAFE_HEAP_STORE($163 | 0, $162 | 0, 4);
+       $164 = $$0559772 + 1 | 0;
+       $exitcond825 = ($164 | 0) == ($$0644 | 0);
+       if ($exitcond825) {
+        break;
+       } else {
+        $$0559772 = $164;
+       }
+      }
+     }
+     $165 = $$0586778 + 1 | 0;
+     $exitcond826 = ($165 | 0) == ($142 | 0);
+     if ($exitcond826) {
+      $$0597$lcssa = $$$0597;
+      break;
+     } else {
+      $$0586778 = $165;
+      $$0596777 = $156;
+      $$0597776 = $$$0597;
+      $$0599775 = $$0644;
+     }
+    }
+   } else {
+    $$0597$lcssa = $$1539656;
+   }
+   $166 = __gcry_mpi_alloc_limb_space($$0597$lcssa, $25) | 0;
+   $167 = ($$0597$lcssa | 0) > 0;
+   if ($167) {
+    $168 = $$0597$lcssa << 2;
+    _memset($166 | 0, 0, $168 | 0) | 0;
+   }
+   $169 = $12 + -1 | 0;
+   $170 = ($$0595 | 0) == 1;
+   if ($170) {
+    $$1645$ph = $$1539656;
+   } else {
+    $171 = ($14 | 0) > 0;
+    if ($171) {
+     $172 = $14 << 2;
+     _memset($$0534 | 0, 0, $172 | 0) | 0;
+     $$1645$ph = $14;
+    } else {
+     $$1645$ph = $14;
+    }
+   }
+   if ($140) {
+    $$0556763 = 0;
+    while (1) {
+     $173 = $$1537 + ($$0556763 << 2) | 0;
+     $174 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+     $175 = $$0534 + ($$0556763 << 2) | 0;
+     SAFE_HEAP_STORE($175 | 0, $174 | 0, 4);
+     $176 = $$0556763 + 1 | 0;
+     $exitcond820 = ($176 | 0) == ($$1539656 | 0);
+     if ($exitcond820) {
+      break;
+     } else {
+      $$0556763 = $176;
+     }
+    }
+   }
+   $177 = $$0535 + ($169 << 2) | 0;
+   $178 = SAFE_HEAP_LOAD($177 | 0, 4, 0) | 0 | 0;
+   $179 = $178 >>> 0 < 65536;
+   $180 = $178 >>> 0 < 256;
+   $181 = $180 ? 0 : 8;
+   $182 = $178 >>> 0 < 16777216;
+   $183 = $182 ? 16 : 24;
+   $184 = $179 ? $181 : $183;
+   $185 = $178 >>> $184;
+   $186 = 45555 + $185 | 0;
+   $187 = SAFE_HEAP_LOAD($186 >> 0 | 0, 1, 0) | 0 | 0;
+   $188 = $187 & 255;
+   $$neg680 = 32 - $188 | 0;
+   $189 = $$neg680 - $184 | 0;
+   $190 = $178 << $189;
+   $191 = $190 << 1;
+   $192 = 31 - $189 | 0;
+   $193 = 32 - $$0595 | 0;
+   $194 = ($141 | 0) == 31;
+   $195 = $7 + 4 | 0;
+   $196 = $8 + 4 | 0;
+   $197 = $8 + 8 | 0;
+   $198 = $7 + 8 | 0;
+   $199 = $8 + 12 | 0;
+   $200 = $7 + 12 | 0;
+   $201 = $7 + 16 | 0;
+   $202 = $8 + 16 | 0;
+   $$0562$ph = $191;
+   $$0567$ph = $192;
+   $$0573$ph = $128;
+   $$0581$ph = 0;
+   $$1$ph = $$0534;
+   $$1587$ph = $169;
+   $$2646$ph = $$1645$ph;
+   L109 : while (1) {
+    $203 = ($$0562$ph | 0) == 0;
+    if ($203) {
+     $$0567743 = $$0567$ph;
+     $$0581742 = $$0581$ph;
+     $$1587741 = $$1587$ph;
+     while (1) {
+      $204 = $$0567743 + $$0581742 | 0;
+      $205 = $$1587741 + -1 | 0;
+      $206 = ($$1587741 | 0) < 1;
+      if ($206) {
+       $$4566$ph = 0;
+       $$4571$ph = 0;
+       $$4585$ph = $204;
+       break L109;
+      }
+      $207 = $$0535 + ($205 << 2) | 0;
+      $208 = SAFE_HEAP_LOAD($207 | 0, 4, 0) | 0 | 0;
+      $209 = ($208 | 0) == 0;
+      if ($209) {
+       $$0567743 = 32;
+       $$0581742 = $204;
+       $$1587741 = $205;
+      } else {
+       $$0562$lcssa = $208;
+       $$0567$lcssa = 32;
+       $$0581$lcssa = $204;
+       $$1587$lcssa = $205;
+       break;
+      }
+     }
+    } else {
+     $$0562$lcssa = $$0562$ph;
+     $$0567$lcssa = $$0567$ph;
+     $$0581$lcssa = $$0581$ph;
+     $$1587$lcssa = $$1587$ph;
+    }
+    $210 = $$0562$lcssa >>> 0 < 65536;
+    $211 = $$0562$lcssa >>> 0 < 256;
+    $212 = $211 ? 0 : 8;
+    $213 = $$0562$lcssa >>> 0 < 16777216;
+    $214 = $213 ? 16 : 24;
+    $215 = $210 ? $212 : $214;
+    $216 = $$0562$lcssa >>> $215;
+    $217 = 45555 + $216 | 0;
+    $218 = SAFE_HEAP_LOAD($217 >> 0 | 0, 1, 0) | 0 | 0;
+    $219 = $218 & 255;
+    $$neg683 = 32 - $215 | 0;
+    $220 = $$neg683 - $219 | 0;
+    $221 = $$0562$lcssa << $220;
+    $222 = $$0567$lcssa - $220 | 0;
+    $223 = $220 + $$0581$lcssa | 0;
+    $224 = ($222 | 0) < ($$0595 | 0);
+    if ($224) {
+     $228 = $$1587$lcssa + -1 | 0;
+     $229 = ($$1587$lcssa | 0) < 1;
+     if ($229) {
+      label = 94;
+      break;
+     }
+     $230 = $221 >>> $193;
+     $231 = $$0535 + ($228 << 2) | 0;
+     $232 = SAFE_HEAP_LOAD($231 | 0, 4, 0) | 0 | 0;
+     $233 = $222 + $193 | 0;
+     $234 = $232 >>> $233;
+     $235 = $234 | $230;
+     $236 = $$0595 - $222 | 0;
+     $237 = $232 << $236;
+     $$0550 = $235;
+     $$1563 = $237;
+     $$1568 = $233;
+     $$2588 = $228;
+    } else {
+     $225 = $221 >>> $193;
+     $226 = $221 << $$0595;
+     $227 = $222 - $$0595 | 0;
+     $$0550 = $225;
+     $$1563 = $226;
+     $$1568 = $227;
+     $$2588 = $$1587$lcssa;
+    }
+    $238 = 0 - $$0550 | 0;
+    $239 = $$0550 & $238;
+    $240 = $239 >>> 0 < 65536;
+    $241 = $239 >>> 0 < 256;
+    $242 = $241 ? 0 : 8;
+    $243 = $239 >>> 0 < 16777216;
+    $244 = $243 ? 16 : 24;
+    $245 = $240 ? $242 : $244;
+    $246 = $239 >>> $245;
+    $247 = 45555 + $246 | 0;
+    $248 = SAFE_HEAP_LOAD($247 >> 0 | 0, 1, 0) | 0 | 0;
+    $249 = $248 & 255;
+    $250 = $249 + -1 | 0;
+    $251 = $250 + $245 | 0;
+    $252 = $$0550 >>> $251;
+    $253 = $252 >>> 1;
+    $254 = $223 + $$0595 | 0;
+    $255 = $254 - $251 | 0;
+    $256 = ($255 | 0) == 0;
+    if ($256) {
+     $$1574$lcssa = $$0573$ph;
+     $$2$lcssa = $$1$ph;
+     $$3647$lcssa = $$2646$ph;
+    } else {
+     $$1574751 = $$0573$ph;
+     $$1582750 = $255;
+     $$2752 = $$1$ph;
+     $$3647749 = $$2646$ph;
+     while (1) {
+      $257 = ($$3647749 | 0) < 16;
+      if ($257) {
+       __gcry_mpih_mul($$1574751, $$2752, $$3647749, $$2752, $$3647749) | 0;
+      } else {
+       __gcry_mpih_mul_karatsuba_case($$1574751, $$2752, $$3647749, $$2752, 
$$3647749, $6);
+      }
+      $258 = $$3647749 << 1;
+      $259 = ($258 | 0) > ($14 | 0);
+      if ($259) {
+       $260 = $$1574751 + ($14 << 2) | 0;
+       __gcry_mpih_divrem($260, 0, $$1574751, $258, $57, $14) | 0;
+       $storemerge$i606 = $14;
+      } else {
+       $storemerge$i606 = $258;
+      }
+      $261 = $$1582750 + -1 | 0;
+      $262 = ($261 | 0) == 0;
+      if ($262) {
+       $$1574$lcssa = $$2752;
+       $$2$lcssa = $$1574751;
+       $$3647$lcssa = $storemerge$i606;
+       break;
+      } else {
+       $$2752$phi = $$1574751;
+       $$1574751$phi = $$2752;
+       $$1582750 = $261;
+       $$3647749 = $storemerge$i606;
+       $$2752 = $$2752$phi;
+       $$1574751 = $$1574751$phi;
+      }
+     }
+    }
+    do {
+     if ($194) {
+      $$1600$lcssa834 = 0;
+      label = 90;
+     } else {
+      $$0579759 = 0;
+      $$1600758 = 0;
+      while (1) {
+       $263 = $5 + ($$0579759 << 2) | 0;
+       $264 = SAFE_HEAP_LOAD($263 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($195 | 0, $264 | 0, 4);
+       SAFE_HEAP_STORE($7 | 0, $264 | 0, 4);
+       SAFE_HEAP_STORE($196 | 0, $264 | 0, 4);
+       SAFE_HEAP_STORE($8 | 0, $264 | 0, 4);
+       SAFE_HEAP_STORE($197 | 0, 0 | 0, 4);
+       SAFE_HEAP_STORE($198 | 0, 0 | 0, 4);
+       SAFE_HEAP_STORE($199 | 0, 0 | 0, 4);
+       SAFE_HEAP_STORE($200 | 0, 0 | 0, 4);
+       SAFE_HEAP_STORE($201 | 0, $166 | 0, 4);
+       $265 = $4 + ($$0579759 << 2) | 0;
+       $266 = SAFE_HEAP_LOAD($265 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($202 | 0, $266 | 0, 4);
+       $267 = ($$0579759 | 0) == ($253 | 0);
+       $268 = $267 & 1;
+       __gcry_mpi_set_cond($7, $8, $268) | 0;
+       $269 = $267 ? $264 : 0;
+       $270 = $269 | $$1600758;
+       $271 = $$0579759 + 1 | 0;
+       $272 = ($271 | 0) < ($142 | 0);
+       if ($272) {
+        $$0579759 = $271;
+        $$1600758 = $270;
+       } else {
+        break;
+       }
+      }
+      $273 = ($270 | 0) < 16;
+      if ($273) {
+       $$1600$lcssa834 = $270;
+       label = 90;
+       break;
+      }
+      __gcry_mpih_mul_karatsuba_case($$1574$lcssa, $$2$lcssa, $$3647$lcssa, 
$166, $270, $6);
+      $$1600$lcssa833 = $270;
+     }
+    } while (0);
+    if ((label | 0) == 90) {
+     label = 0;
+     __gcry_mpih_mul($$1574$lcssa, $$2$lcssa, $$3647$lcssa, $166, 
$$1600$lcssa834) | 0;
+     $$1600$lcssa833 = $$1600$lcssa834;
+    }
+    $274 = $$1600$lcssa833 + $$3647$lcssa | 0;
+    $275 = ($274 | 0) > ($14 | 0);
+    if (!$275) {
+     $$0562$ph = $$1563;
+     $$0567$ph = $$1568;
+     $$0573$ph = $$2$lcssa;
+     $$0581$ph = $251;
+     $$1$ph = $$1574$lcssa;
+     $$1587$ph = $$2588;
+     $$2646$ph = $274;
+     continue;
+    }
+    $276 = $$1574$lcssa + ($14 << 2) | 0;
+    __gcry_mpih_divrem($276, 0, $$1574$lcssa, $274, $57, $14) | 0;
+    $$0562$ph = $$1563;
+    $$0567$ph = $$1568;
+    $$0573$ph = $$2$lcssa;
+    $$0581$ph = $251;
+    $$1$ph = $$1574$lcssa;
+    $$1587$ph = $$2588;
+    $$2646$ph = $14;
+   }
+   if ((label | 0) == 94) {
+    $277 = 32 - $222 | 0;
+    $278 = $221 >>> $277;
+    $279 = ($222 | 0) == 0;
+    if ($279) {
+     $$4566$ph = $278;
+     $$4571$ph = 0;
+     $$4585$ph = $223;
+    } else {
+     $280 = $$0567$lcssa + $$0581$lcssa | 0;
+     $281 = 0 - $278 | 0;
+     $282 = $278 & $281;
+     $283 = $282 >>> 0 < 65536;
+     $284 = $282 >>> 0 < 256;
+     $285 = $284 ? 0 : 8;
+     $286 = $282 >>> 0 < 16777216;
+     $287 = $286 ? 16 : 24;
+     $288 = $283 ? $285 : $287;
+     $289 = $282 >>> $288;
+     $290 = 45555 + $289 | 0;
+     $291 = SAFE_HEAP_LOAD($290 >> 0 | 0, 1, 0) | 0 | 0;
+     $292 = $291 & 255;
+     $293 = $288 + -1 | 0;
+     $294 = $293 + $292 | 0;
+     $295 = $278 >>> $294;
+     $296 = $280 - $294 | 0;
+     $$4566$ph = $295;
+     $$4571$ph = $294;
+     $$4585$ph = $296;
+    }
+   }
+   $297 = ($$4585$ph | 0) == 0;
+   if ($297) {
+    $$4577$lcssa = $$0573$ph;
+    $$5$lcssa = $$1$ph;
+    $$6650$lcssa = $$2646$ph;
+   } else {
+    $$4577735 = $$0573$ph;
+    $$4585734 = $$4585$ph;
+    $$5736 = $$1$ph;
+    $$6650733 = $$2646$ph;
+    while (1) {
+     $298 = $$4585734 + -1 | 0;
+     $299 = ($$6650733 | 0) < 16;
+     if ($299) {
+      __gcry_mpih_mul($$4577735, $$5736, $$6650733, $$5736, $$6650733) | 0;
+     } else {
+      __gcry_mpih_mul_karatsuba_case($$4577735, $$5736, $$6650733, $$5736, 
$$6650733, $6);
+     }
+     $300 = $$6650733 << 1;
+     $301 = ($300 | 0) > ($14 | 0);
+     if ($301) {
+      $303 = $$4577735 + ($14 << 2) | 0;
+      __gcry_mpih_divrem($303, 0, $$4577735, $300, $57, $14) | 0;
+      $$6650$be = $14;
+     } else {
+      $$6650$be = $300;
+     }
+     $302 = ($298 | 0) == 0;
+     if ($302) {
+      $$4577$lcssa = $$5736;
+      $$5$lcssa = $$4577735;
+      $$6650$lcssa = $$6650$be;
+      break;
+     } else {
+      $$5736$phi = $$4577735;
+      $$4577735$phi = $$5736;
+      $$4585734 = $298;
+      $$6650733 = $$6650$be;
+      $$5736 = $$5736$phi;
+      $$4577735 = $$4577735$phi;
+     }
+    }
+   }
+   $304 = ($$4566$ph | 0) == 0;
+   do {
+    if ($304) {
+     $$7 = $$5$lcssa;
+     $$8652 = $$6650$lcssa;
+    } else {
+     do {
+      if ($194) {
+       $$2601$lcssa836 = 0;
+       label = 108;
+      } else {
+       $305 = $9 + 4 | 0;
+       $306 = $10 + 4 | 0;
+       $307 = $10 + 8 | 0;
+       $308 = $9 + 8 | 0;
+       $309 = $10 + 12 | 0;
+       $310 = $9 + 12 | 0;
+       $311 = $9 + 16 | 0;
+       $312 = $10 + 16 | 0;
+       $313 = $$4566$ph >>> 1;
+       $$1580729 = 0;
+       $$2601728 = 0;
+       while (1) {
+        $314 = $5 + ($$1580729 << 2) | 0;
+        $315 = SAFE_HEAP_LOAD($314 | 0, 4, 0) | 0 | 0;
+        SAFE_HEAP_STORE($305 | 0, $315 | 0, 4);
+        SAFE_HEAP_STORE($9 | 0, $315 | 0, 4);
+        SAFE_HEAP_STORE($306 | 0, $315 | 0, 4);
+        SAFE_HEAP_STORE($10 | 0, $315 | 0, 4);
+        SAFE_HEAP_STORE($307 | 0, 0 | 0, 4);
+        SAFE_HEAP_STORE($308 | 0, 0 | 0, 4);
+        SAFE_HEAP_STORE($309 | 0, 0 | 0, 4);
+        SAFE_HEAP_STORE($310 | 0, 0 | 0, 4);
+        SAFE_HEAP_STORE($311 | 0, $166 | 0, 4);
+        $316 = $4 + ($$1580729 << 2) | 0;
+        $317 = SAFE_HEAP_LOAD($316 | 0, 4, 0) | 0 | 0;
+        SAFE_HEAP_STORE($312 | 0, $317 | 0, 4);
+        $318 = ($$1580729 | 0) == ($313 | 0);
+        $319 = $318 & 1;
+        __gcry_mpi_set_cond($9, $10, $319) | 0;
+        $320 = $318 ? $315 : 0;
+        $321 = $320 | $$2601728;
+        $322 = $$1580729 + 1 | 0;
+        $323 = ($322 | 0) < ($142 | 0);
+        if ($323) {
+         $$1580729 = $322;
+         $$2601728 = $321;
+        } else {
+         break;
+        }
+       }
+       $324 = ($321 | 0) < 16;
+       if ($324) {
+        $$2601$lcssa836 = $321;
+        label = 108;
+        break;
+       }
+       __gcry_mpih_mul_karatsuba_case($$4577$lcssa, $$5$lcssa, $$6650$lcssa, 
$166, $321, $6);
+       $$2601$lcssa835 = $321;
+      }
+     } while (0);
+     if ((label | 0) == 108) {
+      __gcry_mpih_mul($$4577$lcssa, $$5$lcssa, $$6650$lcssa, $166, 
$$2601$lcssa836) | 0;
+      $$2601$lcssa835 = $$2601$lcssa836;
+     }
+     $325 = $$2601$lcssa835 + $$6650$lcssa | 0;
+     $326 = ($325 | 0) > ($14 | 0);
+     if ($326) {
+      $327 = $$4577$lcssa + ($14 << 2) | 0;
+      __gcry_mpih_divrem($327, 0, $$4577$lcssa, $325, $57, $14) | 0;
+      $$7651$ph = $14;
+     } else {
+      $$7651$ph = $325;
+     }
+     $328 = ($$4571$ph | 0) == 0;
+     if ($328) {
+      $$7 = $$4577$lcssa;
+      $$8652 = $$7651$ph;
+      break;
+     } else {
+      $$5572724 = $$4571$ph;
+      $$5578723 = $$5$lcssa;
+      $$6725 = $$4577$lcssa;
+      $$7651722 = $$7651$ph;
+     }
+     while (1) {
+      $329 = ($$7651722 | 0) < 16;
+      if ($329) {
+       __gcry_mpih_mul($$5578723, $$6725, $$7651722, $$6725, $$7651722) | 0;
+      } else {
+       __gcry_mpih_mul_karatsuba_case($$5578723, $$6725, $$7651722, $$6725, 
$$7651722, $6);
+      }
+      $330 = $$7651722 << 1;
+      $331 = ($330 | 0) > ($14 | 0);
+      if ($331) {
+       $332 = $$5578723 + ($14 << 2) | 0;
+       __gcry_mpih_divrem($332, 0, $$5578723, $330, $57, $14) | 0;
+       $storemerge$i614 = $14;
+      } else {
+       $storemerge$i614 = $330;
+      }
+      $333 = $$5572724 + -1 | 0;
+      $334 = ($333 | 0) == 0;
+      if ($334) {
+       $$7 = $$5578723;
+       $$8652 = $storemerge$i614;
+       break;
+      } else {
+       $$6725$phi = $$5578723;
+       $$5578723$phi = $$6725;
+       $$5572724 = $333;
+       $$7651722 = $storemerge$i614;
+       $$6725 = $$6725$phi;
+       $$5578723 = $$5578723$phi;
+      }
+     }
+    }
+   } while (0);
+   $335 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+   do {
+    if ($74) {
+     $336 = __gcry_mpih_lshift($335, $$7, $$8652, $73) | 0;
+     $337 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+     $338 = ($336 | 0) == 0;
+     if ($338) {
+      $$8 = $337;
+      $$9 = $$8652;
+      break;
+     }
+     $339 = $$8652 + 1 | 0;
+     $340 = $337 + ($$8652 << 2) | 0;
+     SAFE_HEAP_STORE($340 | 0, $336 | 0, 4);
+     $$8 = $337;
+     $$9 = $339;
+    } else {
+     $341 = ($335 | 0) == ($$7 | 0);
+     if ($341) {
+      $$8 = $$7;
+      $$9 = $$8652;
+      break;
+     }
+     $342 = ($$8652 | 0) > 0;
+     if ($342) {
+      $$0719 = 0;
+     } else {
+      $$8 = $335;
+      $$9 = $$8652;
+      break;
+     }
+     while (1) {
+      $343 = $$7 + ($$0719 << 2) | 0;
+      $344 = SAFE_HEAP_LOAD($343 | 0, 4, 0) | 0 | 0;
+      $345 = $335 + ($$0719 << 2) | 0;
+      SAFE_HEAP_STORE($345 | 0, $344 | 0, 4);
+      $346 = $$0719 + 1 | 0;
+      $exitcond = ($346 | 0) == ($$8652 | 0);
+      if ($exitcond) {
+       $$8 = $335;
+       $$9 = $$8652;
+       break;
+      } else {
+       $$0719 = $346;
+      }
+     }
+    }
+   } while (0);
+   $347 = ($$9 | 0) < ($14 | 0);
+   if ($347) {
+    $$10 = $$9;
+   } else {
+    $348 = $$8 + ($14 << 2) | 0;
+    __gcry_mpih_divrem($348, 0, $$8, $$9, $57, $14) | 0;
+    $$10 = $14;
+   }
+   if ($74) {
+    __gcry_mpih_rshift($$8, $$8, $$10, $73) | 0;
+    $$11 = $$10;
+   } else {
+    $$11 = $$10;
+   }
+   while (1) {
+    $349 = ($$11 | 0) > 0;
+    if (!$349) {
+     break;
+    }
+    $350 = $$11 + -1 | 0;
+    $351 = $$8 + ($350 << 2) | 0;
+    $352 = SAFE_HEAP_LOAD($351 | 0, 4, 0) | 0 | 0;
+    $353 = ($352 | 0) == 0;
+    if ($353) {
+     $$11 = $350;
+    } else {
+     break;
+    }
+   }
+   __gcry_mpih_release_karatsuba_ctx($6);
+   if (!$194) {
+    if ($26) {
+     $$4590718$us = 0;
+     while (1) {
+      $354 = $4 + ($$4590718$us << 2) | 0;
+      $355 = SAFE_HEAP_LOAD($354 | 0, 4, 0) | 0 | 0;
+      $356 = $5 + ($$4590718$us << 2) | 0;
+      $357 = SAFE_HEAP_LOAD($356 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_free_limb_space($355, $357);
+      $358 = $$4590718$us + 1 | 0;
+      $359 = ($358 | 0) < ($142 | 0);
+      if ($359) {
+       $$4590718$us = $358;
+      } else {
+       break;
+      }
+     }
+    } else {
+     $$4590718 = 0;
+     while (1) {
+      $360 = $4 + ($$4590718 << 2) | 0;
+      $361 = SAFE_HEAP_LOAD($360 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_free_limb_space($361, 0);
+      $362 = $$4590718 + 1 | 0;
+      $363 = ($362 | 0) < ($142 | 0);
+      if ($363) {
+       $$4590718 = $362;
+      } else {
+       break;
+      }
+     }
+    }
+   }
+   $364 = $26 ? $$0597$lcssa : 0;
+   __gcry_mpi_free_limb_space($166, $364);
+   $365 = ($$11 | 0) != 0;
+   $or$cond = $133 & $365;
+   L205 : do {
+    if ($or$cond) {
+     if ($74) {
+      __gcry_mpih_rshift($57, $57, $14, $73) | 0;
+     }
+     $366 = __gcry_mpih_sub_n($$8, $57, $$8, $$11) | 0;
+     $367 = $14 - $$11 | 0;
+     $368 = ($367 | 0) == 0;
+     L210 : do {
+      if ($368) {
+       $storemerge = $14;
+      } else {
+       $369 = $$8 + ($$11 << 2) | 0;
+       $370 = $57 + ($$11 << 2) | 0;
+       $371 = $370 + 4 | 0;
+       $372 = SAFE_HEAP_LOAD($370 | 0, 4, 0) | 0 | 0;
+       $373 = $372 - $366 | 0;
+       $374 = $369 + 4 | 0;
+       SAFE_HEAP_STORE($369 | 0, $373 | 0, 4);
+       $375 = $373 >>> 0 > $372 >>> 0;
+       if ($375) {
+        $$025$i$i = $367;
+        $$026$i$i = $371;
+        $$028$i$i = $374;
+        while (1) {
+         $376 = $$025$i$i + -1 | 0;
+         $377 = ($376 | 0) == 0;
+         if ($377) {
+          $storemerge = $14;
+          break L210;
+         }
+         $378 = $$026$i$i + 4 | 0;
+         $379 = SAFE_HEAP_LOAD($$026$i$i | 0, 4, 0) | 0 | 0;
+         $380 = $379 + -1 | 0;
+         $381 = $$028$i$i + 4 | 0;
+         SAFE_HEAP_STORE($$028$i$i | 0, $380 | 0, 4);
+         $382 = ($379 | 0) == 0;
+         if ($382) {
+          $$025$i$i = $376;
+          $$026$i$i = $378;
+          $$028$i$i = $381;
+         } else {
+          $$1$i$i = $376;
+          $$127$i$i = $378;
+          $$129$i$i = $381;
+          break;
+         }
+        }
+       } else {
+        $$1$i$i = $367;
+        $$127$i$i = $371;
+        $$129$i$i = $374;
+       }
+       $383 = ($$129$i$i | 0) == ($$127$i$i | 0);
+       if ($383) {
+        $storemerge = $14;
+        break;
+       }
+       $384 = $$1$i$i + -1 | 0;
+       $385 = ($$1$i$i | 0) > 1;
+       if ($385) {
+        $$036$i$i = 0;
+       } else {
+        $storemerge = $14;
+        break;
+       }
+       while (1) {
+        $386 = $$127$i$i + ($$036$i$i << 2) | 0;
+        $387 = SAFE_HEAP_LOAD($386 | 0, 4, 0) | 0 | 0;
+        $388 = $$129$i$i + ($$036$i$i << 2) | 0;
+        SAFE_HEAP_STORE($388 | 0, $387 | 0, 4);
+        $389 = $$036$i$i + 1 | 0;
+        $exitcond$i$i = ($389 | 0) == ($384 | 0);
+        if ($exitcond$i$i) {
+         $storemerge = $14;
+         break;
+        } else {
+         $$036$i$i = $389;
+        }
+       }
+      }
+     } while (0);
+     while (1) {
+      $390 = ($storemerge | 0) > 0;
+      if (!$390) {
+       $$0540 = $17;
+       $$12 = $storemerge;
+       break L205;
+      }
+      $391 = $storemerge + -1 | 0;
+      $392 = $$8 + ($391 << 2) | 0;
+      $393 = SAFE_HEAP_LOAD($392 | 0, 4, 0) | 0 | 0;
+      $394 = ($393 | 0) == 0;
+      if ($394) {
+       $storemerge = $391;
+      } else {
+       $$0540 = $17;
+       $$12 = $storemerge;
+       break;
+      }
+     }
+    } else {
+     $$0540 = 0;
+     $$12 = $$11;
+    }
+   } while (0);
+   $395 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+   $396 = ($395 | 0) == ($$8 | 0);
+   if ($396) {
+    $397 = $0 + 4 | 0;
+    SAFE_HEAP_STORE($397 | 0, $$12 | 0, 4);
+    $398 = $0 + 8 | 0;
+    SAFE_HEAP_STORE($398 | 0, $$0540 | 0, 4);
+    $$0548 = $128;
+    $$0561 = $127;
+    $$1546 = $$0545;
+    $$1555 = $$0554;
+    $$2544 = $$1543;
+    $$2553 = $$1552;
+    break;
+   } else {
+    __gcry_assert_failed(45847, 45822, 786, 45832);
+   }
+  }
+ } while (0);
+ $399 = ($57 | 0) == (0 | 0);
+ if (!$399) {
+  __gcry_mpi_free_limb_space($57, $56);
+ }
+ $400 = ($$2544 | 0) == (0 | 0);
+ if (!$400) {
+  __gcry_mpi_free_limb_space($$2544, $$2553);
+ }
+ $401 = ($$1546 | 0) == (0 | 0);
+ if (!$401) {
+  __gcry_mpi_free_limb_space($$1546, $$1555);
+ }
+ $402 = ($$0548 | 0) == (0 | 0);
+ if ($402) {
+  STACKTOP = sp;
+  return;
+ }
+ __gcry_mpi_free_limb_space($$0548, $$0561);
+ STACKTOP = sp;
+ return;
+}
+
+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, $331 = 0;
+ var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, 
$339 = 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$cond93 = 0, $vararg_buffer = 0, $vararg_buffer10 = 0, 
$vararg_buffer12 = 0, $vararg_buffer14 = 0, $vararg_buffer16 = 0, 
$vararg_buffer18 = 0, $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;
+ var $vararg_buffer69 = 0, $vararg_buffer8 = 0, $vararg_ptr1 = 0, 
$vararg_ptr42 = 0, $vararg_ptr43 = 0, $vararg_ptr44 = 0, $vararg_ptr45 = 0, 
$vararg_ptr46 = 0, $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;
+ var $vararg_ptr59 = 0, $vararg_ptr63 = 0, $vararg_ptr64 = 0, $vararg_ptr65 = 
0, $vararg_ptr66 = 0, $vararg_ptr67 = 0, $vararg_ptr68 = 0, dest = 0, 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;
+ SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($14 | 0, 0 | 0, 4);
+ dest = $10;
+ stop = dest + 44 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ dest = $11;
+ stop = dest + 60 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  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, 46925, 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, 46885, 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, 48632, 0) | 0;
+   $28 = ($27 | 0) == (0 | 0);
+   if (!$28) {
+    $29 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $30 = $29 | 32;
+    SAFE_HEAP_STORE($14 | 0, $30 | 0, 4);
+    __gcry_sexp_release($27);
+   }
+   $31 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $39 = __gcry_ecc_model2str($38) | 0;
+     $40 = $10 + 4 | 0;
+     $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+     $42 = __gcry_ecc_dialect2str($41) | 0;
+     SAFE_HEAP_STORE($vararg_buffer | 0, $39 | 0, 4);
+     $vararg_ptr1 = $vararg_buffer + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr1 | 0, $42 | 0, 4);
+     __gcry_log_debug(48646, $vararg_buffer);
+     $43 = $10 + 40 | 0;
+     $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+     $45 = ($44 | 0) == (0 | 0);
+     if (!$45) {
+      SAFE_HEAP_STORE($vararg_buffer2 | 0, $44 | 0, 4);
+      __gcry_log_debug(48671, $vararg_buffer2);
+     }
+     $46 = $10 + 8 | 0;
+     $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48693, $47);
+     $48 = $10 + 12 | 0;
+     $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48709, $49);
+     $50 = $10 + 16 | 0;
+     $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48725, $51);
+     $52 = $10 + 32 | 0;
+     $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48741, $53);
+     $54 = $10 + 36 | 0;
+     $55 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48757, $55);
+     $56 = $10 + 20 | 0;
+     __gcry_mpi_point_log(48773, $56, 0);
+     $$pre$phi116Z2D = $40;
+     $$pre$phi118Z2D = $46;
+     $$pre$phi120Z2D = $48;
+     $$pre$phi122Z2D = $50;
+    }
+    $57 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+    $58 = SAFE_HEAP_LOAD($$pre$phi116Z2D | 0, 4, 0) | 0 | 0;
+    $59 = SAFE_HEAP_LOAD($$pre$phi118Z2D | 0, 4, 0) | 0 | 0;
+    $60 = SAFE_HEAP_LOAD($$pre$phi120Z2D | 0, 4, 0) | 0 | 0;
+    $61 = SAFE_HEAP_LOAD($$pre$phi122Z2D | 0, 4, 0) | 0 | 0;
+    $62 = __gcry_mpi_ec_p_internal_new($57, $58, 0, $59, $60, $61) | 0;
+    $63 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $64 = $63 & 4096;
+    $65 = ($64 | 0) == 0;
+    if ($65) {
+     $66 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+     $67 = SAFE_HEAP_LOAD($$pre$phi118Z2D | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     $74 = ($73 | 0) == 1;
+     if ($74) {
+      $75 = __gcry_mpi_snew(256) | 0;
+      $76 = $11 + 56 | 0;
+      SAFE_HEAP_STORE($76 | 0, $75 | 0, 4);
+      $77 = __gcry_random_bytes_secure(32, $71) | 0;
+      $78 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+      $79 = $78 & 255;
+      $80 = $79 & 63;
+      $81 = $80 | 64;
+      $82 = $81 & 255;
+      SAFE_HEAP_STORE($77 >> 0 | 0, $82 | 0, 1);
+      $83 = $77 + 31 | 0;
+      $84 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+      $85 = $84 & 255;
+      $86 = $85 & 248;
+      $87 = $86 & 255;
+      SAFE_HEAP_STORE($83 >> 0 | 0, $87 | 0, 1);
+      $88 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_set_buffer($88, $77, 32, 0);
+      __gcry_free($77);
+      $$pre$i = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+      $$pre1$i = $10 + 32 | 0;
+      $$pre$phi$iZ2D = $76;
+      $$pre$phi2$iZ2D = $$pre1$i;
+      $94 = $$pre$i;
+     } else {
+      $89 = $10 + 32 | 0;
+      $90 = SAFE_HEAP_LOAD($89 | 0, 4, 0) | 0 | 0;
+      $91 = __gcry_dsa_gen_k($90, $71) | 0;
+      $92 = $11 + 56 | 0;
+      SAFE_HEAP_STORE($92 | 0, $91 | 0, 4);
+      $$pre$phi$iZ2D = $92;
+      $$pre$phi2$iZ2D = $89;
+      $94 = $91;
+     }
+     $93 = $10 + 20 | 0;
+     __gcry_mpi_ec_mul_point($8, $94, $93, $62);
+     $95 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($11 | 0, $95 | 0, 4);
+     $96 = SAFE_HEAP_LOAD($$pre$phi116Z2D | 0, 4, 0) | 0 | 0;
+     $97 = $11 + 4 | 0;
+     SAFE_HEAP_STORE($97 | 0, $96 | 0, 4);
+     $98 = SAFE_HEAP_LOAD($$pre$phi118Z2D | 0, 4, 0) | 0 | 0;
+     $99 = __gcry_mpi_copy($98) | 0;
+     $100 = $11 + 8 | 0;
+     SAFE_HEAP_STORE($100 | 0, $99 | 0, 4);
+     $101 = SAFE_HEAP_LOAD($$pre$phi120Z2D | 0, 4, 0) | 0 | 0;
+     $102 = __gcry_mpi_copy($101) | 0;
+     $103 = $11 + 12 | 0;
+     SAFE_HEAP_STORE($103 | 0, $102 | 0, 4);
+     $104 = SAFE_HEAP_LOAD($$pre$phi122Z2D | 0, 4, 0) | 0 | 0;
+     $105 = __gcry_mpi_copy($104) | 0;
+     $106 = $11 + 16 | 0;
+     SAFE_HEAP_STORE($106 | 0, $105 | 0, 4);
+     $107 = $11 + 20 | 0;
+     __gcry_mpi_point_init($107);
+     $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+     $109 = SAFE_HEAP_LOAD($93 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_set($108, $109) | 0;
+     $110 = $11 + 24 | 0;
+     $111 = SAFE_HEAP_LOAD($110 | 0, 4, 0) | 0 | 0;
+     $112 = $10 + 24 | 0;
+     $113 = SAFE_HEAP_LOAD($112 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_set($111, $113) | 0;
+     $114 = $11 + 28 | 0;
+     $115 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+     $116 = $10 + 28 | 0;
+     $117 = SAFE_HEAP_LOAD($116 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_set($115, $117) | 0;
+     $118 = SAFE_HEAP_LOAD($$pre$phi2$iZ2D | 0, 4, 0) | 0 | 0;
+     $119 = __gcry_mpi_copy($118) | 0;
+     $120 = $11 + 32 | 0;
+     SAFE_HEAP_STORE($120 | 0, $119 | 0, 4);
+     $121 = $10 + 36 | 0;
+     $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+     $123 = __gcry_mpi_copy($122) | 0;
+     $124 = $11 + 36 | 0;
+     SAFE_HEAP_STORE($124 | 0, $123 | 0, 4);
+     $125 = $11 + 44 | 0;
+     __gcry_mpi_point_init($125);
+     $126 = __gcry_mpi_new($68) | 0;
+     $127 = __gcry_mpi_new($68) | 0;
+     $128 = __gcry_mpi_ec_get_affine($126, $127, $8, $62) | 0;
+     $129 = ($128 | 0) == 0;
+     if (!$129) {
+      SAFE_HEAP_STORE($vararg_buffer5 | 0, 48835 | 0, 4);
+      __gcry_log_fatal(48787, $vararg_buffer5);
+     }
+     $130 = SAFE_HEAP_LOAD($$pre$phi116Z2D | 0, 4, 0) | 0 | 0;
+     $131 = ($130 | 0) == 1;
+     do {
+      if ($131) {
+       $132 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 0;
+       $133 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($132, $133) | 0;
+       $134 = $11 + 48 | 0;
+       $135 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 0;
+       $136 = $8 + 4 | 0;
+       $137 = SAFE_HEAP_LOAD($136 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($135, $137) | 0;
+       $138 = $11 + 52 | 0;
+       $139 = SAFE_HEAP_LOAD($138 | 0, 4, 0) | 0 | 0;
+       $140 = $8 + 8 | 0;
+       $141 = SAFE_HEAP_LOAD($140 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($139, $141) | 0;
+       $$2$i = $126;
+       $$284$i = $127;
+      } else {
+       $142 = __gcry_mpi_new($68) | 0;
+       $143 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+       $144 = ($143 | 0) == 0;
+       $145 = SAFE_HEAP_LOAD($$pre$phi118Z2D | 0, 4, 0) | 0 | 0;
+       if ($144) {
+        __gcry_mpi_sub($142, $145, $127);
+       } else {
+        __gcry_mpi_sub($142, $145, $126);
+       }
+       $146 = __gcry_mpi_cmp($142, $127) | 0;
+       $147 = ($146 | 0) < 0;
+       if (!$147) {
+        __gcry_mpi_free($142);
+        $155 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 0;
+        $156 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_set($155, $156) | 0;
+        $157 = $11 + 48 | 0;
+        $158 = SAFE_HEAP_LOAD($157 | 0, 4, 0) | 0 | 0;
+        $159 = $8 + 4 | 0;
+        $160 = SAFE_HEAP_LOAD($159 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_set($158, $160) | 0;
+        $161 = $11 + 52 | 0;
+        $162 = SAFE_HEAP_LOAD($161 | 0, 4, 0) | 0 | 0;
+        $163 = $8 + 8 | 0;
+        $164 = SAFE_HEAP_LOAD($163 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_set($162, $164) | 0;
+        $165 = __gcry_get_debug_flag(1) | 0;
+        $166 = ($165 | 0) == 0;
+        if ($166) {
+         $$2$i = $126;
+         $$284$i = $127;
+         break;
+        }
+        __gcry_log_debug(48877, $vararg_buffer10);
+        $$2$i = $126;
+        $$284$i = $127;
+        break;
+       }
+       $148 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+       $149 = ($148 | 0) == 0;
+       if ($149) {
+        __gcry_mpi_free($127);
+        $$081$i = $126;
+        $$082$i = $142;
+       } else {
+        __gcry_mpi_free($126);
+        $$081$i = $142;
+        $$082$i = $127;
+       }
+       $150 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+       $151 = SAFE_HEAP_LOAD($$pre$phi2$iZ2D | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_sub($150, $151, $150);
+       $152 = __gcry_mpi_const(1) | 0;
+       __gcry_mpi_point_set($125, $$081$i, $$082$i, $152) | 0;
+       $153 = __gcry_get_debug_flag(1) | 0;
+       $154 = ($153 | 0) == 0;
+       if ($154) {
+        $$2$i = $$081$i;
+        $$284$i = $$082$i;
+       } else {
+        __gcry_log_debug(48837, $vararg_buffer8);
+        $$2$i = $$081$i;
+        $$284$i = $$082$i;
+       }
+      }
+     } while (0);
+     __gcry_mpi_point_free_parts($8);
+     $167 = $63 & 16384;
+     $168 = ($167 | 0) == 0;
+     do {
+      if ($168) {
+       $169 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+       $170 = ($169 | 0) == 1;
+       $171 = $66 + -64 | 0;
+       if (!$170) {
+        $172 = __gcry_mpi_new($171) | 0;
+        $173 = __gcry_mpi_new($171) | 0;
+        $174 = __gcry_mpi_new($171) | 0;
+        $175 = __gcry_mpi_new($171) | 0;
+        $176 = __gcry_mpi_new($171) | 0;
+        $177 = __gcry_get_debug_flag(1) | 0;
+        $178 = ($177 | 0) == 0;
+        if (!$178) {
+         __gcry_log_debug(48930, $vararg_buffer12);
+        }
+        __gcry_mpi_point_init($6);
+        dest = $$byval_copy;
+        src = $11;
+        stop = dest + 44 | 0;
+        do {
+         SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 4, 0) | 0 | 0 | 0, 
4);
+         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 {
+         SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 4, 0) | 0 | 0 | 0, 
4);
+         dest = dest + 4 | 0;
+         src = src + 4 | 0;
+        } while ((dest | 0) < (stop | 0));
+        $179 = $5 + 44 | 0;
+        __gcry_mpi_point_init($179);
+        $180 = SAFE_HEAP_LOAD($179 | 0, 4, 0) | 0 | 0;
+        $181 = $11 + 44 | 0;
+        $182 = SAFE_HEAP_LOAD($181 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_set($180, $182) | 0;
+        $183 = $5 + 48 | 0;
+        $184 = SAFE_HEAP_LOAD($183 | 0, 4, 0) | 0 | 0;
+        $185 = $11 + 48 | 0;
+        $186 = SAFE_HEAP_LOAD($185 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_set($184, $186) | 0;
+        $187 = $5 + 52 | 0;
+        $188 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+        $189 = $11 + 52 | 0;
+        $190 = SAFE_HEAP_LOAD($189 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_set($188, $190) | 0;
+        __gcry_mpi_randomize($172, $171, 0);
+        $191 = __gcry_ecc_ecdsa_sign($172, $11, $175, $176, 0, 0) | 0;
+        $192 = ($191 | 0) == 0;
+        if (!$192) {
+         __gcry_log_fatal(48944, $vararg_buffer14);
+        }
+        $193 = __gcry_ecc_ecdsa_verify($172, $5, $175, $176) | 0;
+        $194 = ($193 | 0) == 0;
+        if (!$194) {
+         __gcry_log_fatal(48974, $vararg_buffer16);
+        }
+        $195 = __gcry_get_debug_flag(1) | 0;
+        $196 = ($195 | 0) == 0;
+        if (!$196) {
+         __gcry_log_debug(49012, $vararg_buffer18);
+        }
+        __gcry_mpi_point_free_parts($179);
+        __gcry_ecc_curve_free($5);
+        __gcry_mpi_point_free_parts($6);
+        __gcry_mpi_free($176);
+        __gcry_mpi_free($175);
+        __gcry_mpi_free($174);
+        __gcry_mpi_free($173);
+        __gcry_mpi_free($172);
+        break;
+       }
+       $197 = __gcry_get_debug_flag(1) | 0;
+       $198 = ($197 | 0) == 0;
+       if (!$198) {
+        __gcry_log_debug(48930, $vararg_buffer20);
+       }
+       __gcry_mpi_point_init($3);
+       dest = $$byval_copy71;
+       src = $11;
+       stop = dest + 44 | 0;
+       do {
+        SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 4, 0) | 0 | 0 | 0, 
4);
+        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 {
+        SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 4, 0) | 0 | 0 | 0, 
4);
+        dest = dest + 4 | 0;
+        src = src + 4 | 0;
+       } while ((dest | 0) < (stop | 0));
+       $199 = $2 + 44 | 0;
+       __gcry_mpi_point_init($199);
+       $200 = SAFE_HEAP_LOAD($199 | 0, 4, 0) | 0 | 0;
+       $201 = $11 + 44 | 0;
+       $202 = SAFE_HEAP_LOAD($201 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($200, $202) | 0;
+       $203 = $2 + 48 | 0;
+       $204 = SAFE_HEAP_LOAD($203 | 0, 4, 0) | 0 | 0;
+       $205 = $11 + 48 | 0;
+       $206 = SAFE_HEAP_LOAD($205 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($204, $206) | 0;
+       $207 = $2 + 52 | 0;
+       $208 = SAFE_HEAP_LOAD($207 | 0, 4, 0) | 0 | 0;
+       $209 = $11 + 52 | 0;
+       $210 = SAFE_HEAP_LOAD($209 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($208, $210) | 0;
+       $211 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+       $212 = ($211 | 0) == 1;
+       if ($212) {
+        $213 = __gcry_mpi_new(256) | 0;
+        $214 = __gcry_random_bytes(32, 0) | 0;
+        $215 = SAFE_HEAP_LOAD($214 >> 0 | 0, 1, 0) | 0 | 0;
+        $216 = $215 & 255;
+        $217 = $216 & 63;
+        $218 = $217 | 64;
+        $219 = $218 & 255;
+        SAFE_HEAP_STORE($214 >> 0 | 0, $219 | 0, 1);
+        $220 = $214 + 31 | 0;
+        $221 = SAFE_HEAP_LOAD($220 >> 0 | 0, 1, 0) | 0 | 0;
+        $222 = $221 & 255;
+        $223 = $222 & 248;
+        $224 = $223 & 255;
+        SAFE_HEAP_STORE($220 >> 0 | 0, $224 | 0, 1);
+        __gcry_mpi_set_buffer($213, $214, 32, 0);
+        __gcry_free($214);
+        $$0$i$i = $213;
+       } else {
+        $225 = __gcry_mpi_new($171) | 0;
+        __gcry_mpi_randomize($225, $171, 0);
+        $$0$i$i = $225;
+       }
+       $226 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+       $227 = $2 + 4 | 0;
+       $228 = SAFE_HEAP_LOAD($227 | 0, 4, 0) | 0 | 0;
+       $229 = $2 + 8 | 0;
+       $230 = SAFE_HEAP_LOAD($229 | 0, 4, 0) | 0 | 0;
+       $231 = $2 + 12 | 0;
+       $232 = SAFE_HEAP_LOAD($231 | 0, 4, 0) | 0 | 0;
+       $233 = $2 + 16 | 0;
+       $234 = SAFE_HEAP_LOAD($233 | 0, 4, 0) | 0 | 0;
+       $235 = __gcry_mpi_ec_p_internal_new($226, $228, 0, $230, $232, $234) | 
0;
+       $236 = __gcry_mpi_new(0) | 0;
+       $237 = __gcry_mpi_new(0) | 0;
+       __gcry_mpi_ec_mul_point($3, $$0$i$i, $199, $235);
+       $238 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+       $239 = ($238 | 0) == 1;
+       if (!$239) {
+        $240 = $235 + 36 | 0;
+        $241 = SAFE_HEAP_LOAD($240 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_ec_mul_point($3, $241, $3, $235);
+       }
+       $242 = __gcry_mpi_ec_get_affine($236, 0, $3, $235) | 0;
+       $243 = ($242 | 0) == 0;
+       if (!$243) {
+        __gcry_log_fatal(49047, $vararg_buffer22);
+       }
+       $244 = $2 + 20 | 0;
+       __gcry_mpi_ec_mul_point($3, $$0$i$i, $244, $235);
+       $245 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_ec_mul_point($3, $245, $3, $235);
+       $246 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+       $247 = ($246 | 0) == 1;
+       if (!$247) {
+        $248 = $235 + 36 | 0;
+        $249 = SAFE_HEAP_LOAD($248 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_ec_mul_point($3, $249, $3, $235);
+       }
+       $250 = __gcry_mpi_ec_get_affine($237, 0, $3, $235) | 0;
+       $251 = ($250 | 0) == 0;
+       if (!$251) {
+        __gcry_log_fatal(49095, $vararg_buffer24);
+       }
+       $252 = __gcry_mpi_cmp($236, $237) | 0;
+       $253 = ($252 | 0) == 0;
+       if ($253) {
+        __gcry_mpi_free($236);
+        __gcry_mpi_free($237);
+        __gcry_mpi_ec_free($235);
+        __gcry_mpi_point_free_parts($199);
+        __gcry_ecc_curve_free($2);
+        __gcry_mpi_point_free_parts($3);
+        __gcry_mpi_free($$0$i$i);
+        break;
+       } else {
+        __gcry_log_fatal(49144, $vararg_buffer26);
+       }
+      }
+     } while (0);
+     $$0102110 = $$284$i;
+     $$0105109 = $$2$i;
+     $$pre$phi124Z2D = $107;
+    } else {
+     $254 = __gcry_ecc_eddsa_genkey($11, $10, $62, $63) | 0;
+     $255 = ($254 | 0) == 0;
+     if (!$255) {
+      $$076 = 0;
+      $$078 = 0;
+      $$079 = $62;
+      $$081 = 0;
+      $$082 = 0;
+      $$2 = 0;
+      $$285 = $254;
+      $$3 = 0;
+      $$3108 = 0;
+      break;
+     }
+     $$pre123 = $11 + 20 | 0;
+     $$0102110 = 0;
+     $$0105109 = 0;
+     $$pre$phi124Z2D = $$pre123;
+    }
+    $256 = __gcry_mpi_new(0) | 0;
+    $257 = __gcry_mpi_new(0) | 0;
+    $258 = __gcry_mpi_ec_get_affine($256, $257, $$pre$phi124Z2D, $62) | 0;
+    $259 = ($258 | 0) == 0;
+    if (!$259) {
+     SAFE_HEAP_STORE($vararg_buffer28 | 0, 49163 | 0, 4);
+     __gcry_log_fatal(48787, $vararg_buffer28);
+    }
+    $260 = $11 + 8 | 0;
+    $261 = SAFE_HEAP_LOAD($260 | 0, 4, 0) | 0 | 0;
+    $262 = __gcry_ecc_ec2os($256, $257, $261) | 0;
+    $263 = $11 + 4 | 0;
+    $264 = SAFE_HEAP_LOAD($263 | 0, 4, 0) | 0 | 0;
+    $265 = ($264 | 0) == 1;
+    do {
+     if ($265) {
+      $266 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+      $267 = $266 & 2048;
+      $268 = ($267 | 0) == 0;
+      if ($268) {
+       $269 = $11 + 44 | 0;
+       $270 = $266 >>> 10;
+       $$lobit = $270 & 1;
+       $271 = __gcry_ecc_eddsa_encodepoint($269, $62, $256, $257, $$lobit, 
$15, $16) | 0;
+       $272 = ($271 | 0) == 0;
+       if ($272) {
+        $273 = __gcry_mpi_new(0) | 0;
+        $274 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+        $275 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+        $276 = $275 << 3;
+        __gcry_mpi_set_opaque($273, $274, $276) | 0;
+        $$1 = $273;
+        $$2104 = $$0102110;
+        $$2107 = $$0105109;
+        break;
+       }
+       $$187 = $271;
+       STACKTOP = sp;
+       return $$187 | 0;
+      } else {
+       label = 71;
+      }
+     } else {
+      label = 71;
+     }
+    } while (0);
+    if ((label | 0) == 71) {
+     $277 = ($$0105109 | 0) == (0 | 0);
+     if ($277) {
+      $278 = __gcry_mpi_new(0) | 0;
+      $279 = __gcry_mpi_new(0) | 0;
+      $280 = $11 + 44 | 0;
+      $281 = __gcry_mpi_ec_get_affine($278, $279, $280, $62) | 0;
+      $282 = ($281 | 0) == 0;
+      if ($282) {
+       $$1103 = $279;
+       $$1106 = $278;
+      } else {
+       SAFE_HEAP_STORE($vararg_buffer31 | 0, 48835 | 0, 4);
+       __gcry_log_fatal(48787, $vararg_buffer31);
+      }
+     } else {
+      $$1103 = $$0102110;
+      $$1106 = $$0105109;
+     }
+     $283 = SAFE_HEAP_LOAD($260 | 0, 4, 0) | 0 | 0;
+     $284 = __gcry_ecc_ec2os($$1106, $$1103, $283) | 0;
+     $$1 = $284;
+     $$2104 = $$1103;
+     $$2107 = $$1106;
+    }
+    $285 = $11 + 56 | 0;
+    $286 = SAFE_HEAP_LOAD($285 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($285 | 0, 0 | 0, 4);
+    $287 = $10 + 40 | 0;
+    $288 = SAFE_HEAP_LOAD($287 | 0, 4, 0) | 0 | 0;
+    $289 = ($288 | 0) == (0 | 0);
+    if (!$289) {
+     SAFE_HEAP_STORE($vararg_buffer34 | 0, $288 | 0, 4);
+     $290 = __gcry_sexp_build($12, 0, 49165, $vararg_buffer34) | 0;
+     $291 = ($290 | 0) == 0;
+     if (!$291) {
+      $$076 = $286;
+      $$078 = $262;
+      $$079 = $62;
+      $$081 = $257;
+      $$082 = $256;
+      $$2 = $$1;
+      $$285 = $290;
+      $$3 = $$2104;
+      $$3108 = $$2107;
+      break;
+     }
+    }
+    $292 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $293 = $292 & 4608;
+    $294 = ($293 | 0) == 0;
+    if ($294) {
+     $303 = $292;
+    } else {
+     $295 = $292 & 512;
+     $296 = ($293 | 0) != 4608;
+     $297 = ($295 | 0) != 0;
+     $298 = $297 ? 49176 : 49190;
+     $299 = $296 ? $298 : 49204;
+     $300 = __gcry_sexp_build($13, 0, $299, $vararg_buffer37) | 0;
+     $301 = ($300 | 0) == 0;
+     if (!$301) {
+      $$076 = $286;
+      $$078 = $262;
+      $$079 = $62;
+      $$081 = $257;
+      $$082 = $256;
+      $$2 = $$1;
+      $$285 = $300;
+      $$3 = $$2104;
+      $$3108 = $$2107;
+      break;
+     }
+     $$pre = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+     $303 = $$pre;
+    }
+    $302 = $303 & 512;
+    $304 = ($302 | 0) == 0;
+    $305 = SAFE_HEAP_LOAD($287 | 0, 4, 0) | 0 | 0;
+    $306 = ($305 | 0) == (0 | 0);
+    $or$cond93 = $304 | $306;
+    $307 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    $308 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    if ($or$cond93) {
+     SAFE_HEAP_STORE($vararg_buffer60 | 0, $307 | 0, 4);
+     $vararg_ptr63 = $vararg_buffer60 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr63 | 0, $308 | 0, 4);
+     $vararg_ptr64 = $vararg_buffer60 + 8 | 0;
+     SAFE_HEAP_STORE($vararg_ptr64 | 0, $$1 | 0, 4);
+     $vararg_ptr65 = $vararg_buffer60 + 12 | 0;
+     SAFE_HEAP_STORE($vararg_ptr65 | 0, $307 | 0, 4);
+     $vararg_ptr66 = $vararg_buffer60 + 16 | 0;
+     SAFE_HEAP_STORE($vararg_ptr66 | 0, $308 | 0, 4);
+     $vararg_ptr67 = $vararg_buffer60 + 20 | 0;
+     SAFE_HEAP_STORE($vararg_ptr67 | 0, $$1 | 0, 4);
+     $vararg_ptr68 = $vararg_buffer60 + 24 | 0;
+     SAFE_HEAP_STORE($vararg_ptr68 | 0, $286 | 0, 4);
+     $319 = __gcry_sexp_build($1, 0, 49360, $vararg_buffer60) | 0;
+     $$184 = $319;
+    } else {
+     $309 = SAFE_HEAP_LOAD($260 | 0, 4, 0) | 0 | 0;
+     $310 = $11 + 12 | 0;
+     $311 = SAFE_HEAP_LOAD($310 | 0, 4, 0) | 0 | 0;
+     $312 = $11 + 16 | 0;
+     $313 = SAFE_HEAP_LOAD($312 | 0, 4, 0) | 0 | 0;
+     $314 = $11 + 32 | 0;
+     $315 = SAFE_HEAP_LOAD($314 | 0, 4, 0) | 0 | 0;
+     $316 = $11 + 36 | 0;
+     $317 = SAFE_HEAP_LOAD($316 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($vararg_buffer39 | 0, $307 | 0, 4);
+     $vararg_ptr42 = $vararg_buffer39 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr42 | 0, $308 | 0, 4);
+     $vararg_ptr43 = $vararg_buffer39 + 8 | 0;
+     SAFE_HEAP_STORE($vararg_ptr43 | 0, $309 | 0, 4);
+     $vararg_ptr44 = $vararg_buffer39 + 12 | 0;
+     SAFE_HEAP_STORE($vararg_ptr44 | 0, $311 | 0, 4);
+     $vararg_ptr45 = $vararg_buffer39 + 16 | 0;
+     SAFE_HEAP_STORE($vararg_ptr45 | 0, $313 | 0, 4);
+     $vararg_ptr46 = $vararg_buffer39 + 20 | 0;
+     SAFE_HEAP_STORE($vararg_ptr46 | 0, $262 | 0, 4);
+     $vararg_ptr47 = $vararg_buffer39 + 24 | 0;
+     SAFE_HEAP_STORE($vararg_ptr47 | 0, $315 | 0, 4);
+     $vararg_ptr48 = $vararg_buffer39 + 28 | 0;
+     SAFE_HEAP_STORE($vararg_ptr48 | 0, $317 | 0, 4);
+     $vararg_ptr49 = $vararg_buffer39 + 32 | 0;
+     SAFE_HEAP_STORE($vararg_ptr49 | 0, $$1 | 0, 4);
+     $vararg_ptr50 = $vararg_buffer39 + 36 | 0;
+     SAFE_HEAP_STORE($vararg_ptr50 | 0, $307 | 0, 4);
+     $vararg_ptr51 = $vararg_buffer39 + 40 | 0;
+     SAFE_HEAP_STORE($vararg_ptr51 | 0, $308 | 0, 4);
+     $vararg_ptr52 = $vararg_buffer39 + 44 | 0;
+     SAFE_HEAP_STORE($vararg_ptr52 | 0, $309 | 0, 4);
+     $vararg_ptr53 = $vararg_buffer39 + 48 | 0;
+     SAFE_HEAP_STORE($vararg_ptr53 | 0, $311 | 0, 4);
+     $vararg_ptr54 = $vararg_buffer39 + 52 | 0;
+     SAFE_HEAP_STORE($vararg_ptr54 | 0, $313 | 0, 4);
+     $vararg_ptr55 = $vararg_buffer39 + 56 | 0;
+     SAFE_HEAP_STORE($vararg_ptr55 | 0, $262 | 0, 4);
+     $vararg_ptr56 = $vararg_buffer39 + 60 | 0;
+     SAFE_HEAP_STORE($vararg_ptr56 | 0, $315 | 0, 4);
+     $vararg_ptr57 = $vararg_buffer39 + 64 | 0;
+     SAFE_HEAP_STORE($vararg_ptr57 | 0, $317 | 0, 4);
+     $vararg_ptr58 = $vararg_buffer39 + 68 | 0;
+     SAFE_HEAP_STORE($vararg_ptr58 | 0, $$1 | 0, 4);
+     $vararg_ptr59 = $vararg_buffer39 + 72 | 0;
+     SAFE_HEAP_STORE($vararg_ptr59 | 0, $286 | 0, 4);
+     $318 = __gcry_sexp_build($1, 0, 49224, $vararg_buffer39) | 0;
+     $$184 = $318;
+    }
+    $320 = ($$184 | 0) == 0;
+    if ($320) {
+     $321 = __gcry_get_debug_flag(1) | 0;
+     $322 = ($321 | 0) == 0;
+     if ($322) {
+      $$076 = $286;
+      $$078 = $262;
+      $$079 = $62;
+      $$081 = $257;
+      $$082 = $256;
+      $$2 = $$1;
+      $$285 = 0;
+      $$3 = $$2104;
+      $$3108 = $$2107;
+     } else {
+      $323 = SAFE_HEAP_LOAD($260 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(49436, $323);
+      $324 = $11 + 12 | 0;
+      $325 = SAFE_HEAP_LOAD($324 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(49452, $325);
+      $326 = $11 + 16 | 0;
+      $327 = SAFE_HEAP_LOAD($326 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(49468, $327);
+      __gcry_log_printmpi(49484, $262);
+      $328 = $11 + 32 | 0;
+      $329 = SAFE_HEAP_LOAD($328 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(49500, $329);
+      $330 = $11 + 36 | 0;
+      $331 = SAFE_HEAP_LOAD($330 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(49516, $331);
+      __gcry_log_printmpi(49532, $$1);
+      __gcry_log_printmpi(49548, $286);
+      $332 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+      $333 = $332 & 4096;
+      $334 = ($333 | 0) == 0;
+      if ($334) {
+       $$076 = $286;
+       $$078 = $262;
+       $$079 = $62;
+       $$081 = $257;
+       $$082 = $256;
+       $$2 = $$1;
+       $$285 = 0;
+       $$3 = $$2104;
+       $$3108 = $$2107;
+      } else {
+       __gcry_log_debug(49564, $vararg_buffer69);
+       $$076 = $286;
+       $$078 = $262;
+       $$079 = $62;
+       $$081 = $257;
+       $$082 = $256;
+       $$2 = $$1;
+       $$285 = 0;
+       $$3 = $$2104;
+       $$3108 = $$2107;
+      }
+     }
+    } else {
+     $$076 = $286;
+     $$078 = $262;
+     $$079 = $62;
+     $$081 = $257;
+     $$082 = $256;
+     $$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);
+ $335 = $11 + 44 | 0;
+ __gcry_mpi_point_free_parts($335);
+ $336 = $11 + 56 | 0;
+ $337 = SAFE_HEAP_LOAD($336 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($337);
+ __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);
+ $338 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ __gcry_sexp_release($338);
+ $339 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ __gcry_sexp_release($339);
+ $$187 = $$285;
+ STACKTOP = sp;
+ return $$187 | 0;
+}
+
+function __gcry_cipher_ocb_set_nonce($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$0$lcssa$i = 0, $$0121196 = 0, $$0122$lcssa211 = 0, $$0122183 = 
0, $$0123$lcssa210 = 0, $$0123182 = 0, $$0127$lcssa209 = 0, $$0127191 = 0, 
$$0131$lcssa208 = 0, $$0131190 = 0, $$024$lcssa$i = 0, $$02432$i = 0, 
$$025$lcssa$i = 0, $$02531$i = 0, $$026$ph$i = 0, $$02629$i = 0, $$027$ph$i = 
0, $$02728$i = 0, $$033$i = 0;
+ var $$1 = 0, $$1$ph$i = 0, $$1124 = 0, $$1128 = 0, $$1132 = 0, $$130$i = 0, 
$$3$ph = 0, $$3126$ph = 0, $$3126180 = 0, $$3130$ph = 0, $$3130188 = 0, 
$$3134$ph = 0, $$3134187 = 0, $$3181 = 0, $$pre = 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, $387 = 0, $388 = 0, $389 = 0, $39 
= 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0;
+ var $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, $410 = 0;
+ var $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, $429 = 0;
+ var $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, $446 = 0, $447 = 0;
+ var $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, $463 = 0, $464 = 0, $465 = 0;
+ var $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, $481 = 0, $482 = 0, $483 = 0;
+ var $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, $5 = 0, $50 = 0, $500 = 0;
+ var $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, $517 = 0, $518 = 0, $519 = 0;
+ var $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, $535 = 0, $536 = 0, $537 = 0;
+ var $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, $553 = 0, $554 = 0, $555 = 0;
+ var $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, $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, $scevgep$i = 0, 
$scevgep206 = 0, $scevgep42$i = 0, dest = 0, label = 0, sp = 0, stop = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $3 = sp + 24 | 0;
+ $4 = sp;
+ $5 = $0 + 56 | 0;
+ $6 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = $13 + 20 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 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;
+ }
+ {}
+ SAFE_HEAP_STORE($3 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($3 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($3 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($3 + 12 | 0, 0 | 0 | 0, 4);
+ $20 = $13 + 36 | 0;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = $0 + 496 | 0;
+ $23 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($21 | 0, 127 | 0) | 0) & 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) {
+  $76 = $9 + 4 | 0;
+  $77 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $78 = $0 + 148 | 0;
+  SAFE_HEAP_STORE($24 | 0, $77 | 0, 4);
+  $79 = $0 + 136 | 0;
+  $80 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+  $81 = $0 + 152 | 0;
+  SAFE_HEAP_STORE($78 | 0, $80 | 0, 4);
+  $82 = $0 + 140 | 0;
+  $83 = SAFE_HEAP_LOAD($79 | 0, 4, 0) | 0 | 0;
+  $84 = $0 + 156 | 0;
+  SAFE_HEAP_STORE($81 | 0, $83 | 0, 4);
+  $85 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($84 | 0, $85 | 0, 4);
+ } else {
+  $30 = $9 + 1 | 0;
+  $31 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+  $32 = $0 + 145 | 0;
+  SAFE_HEAP_STORE($24 >> 0 | 0, $31 | 0, 1);
+  $33 = $9 + 2 | 0;
+  $34 = SAFE_HEAP_LOAD($30 >> 0 | 0, 1, 0) | 0 | 0;
+  $35 = $0 + 146 | 0;
+  SAFE_HEAP_STORE($32 >> 0 | 0, $34 | 0, 1);
+  $36 = $9 + 3 | 0;
+  $37 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+  $38 = $0 + 147 | 0;
+  SAFE_HEAP_STORE($35 >> 0 | 0, $37 | 0, 1);
+  $39 = $9 + 4 | 0;
+  $40 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+  $41 = $0 + 148 | 0;
+  SAFE_HEAP_STORE($38 >> 0 | 0, $40 | 0, 1);
+  $42 = $9 + 5 | 0;
+  $43 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+  $44 = $0 + 149 | 0;
+  SAFE_HEAP_STORE($41 >> 0 | 0, $43 | 0, 1);
+  $45 = $9 + 6 | 0;
+  $46 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+  $47 = $0 + 150 | 0;
+  SAFE_HEAP_STORE($44 >> 0 | 0, $46 | 0, 1);
+  $48 = $9 + 7 | 0;
+  $49 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+  $50 = $0 + 151 | 0;
+  SAFE_HEAP_STORE($47 >> 0 | 0, $49 | 0, 1);
+  $51 = $0 + 136 | 0;
+  $52 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 0 | 0;
+  $53 = $0 + 152 | 0;
+  SAFE_HEAP_STORE($50 >> 0 | 0, $52 | 0, 1);
+  $54 = $0 + 137 | 0;
+  $55 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+  $56 = $0 + 153 | 0;
+  SAFE_HEAP_STORE($53 >> 0 | 0, $55 | 0, 1);
+  $57 = $0 + 138 | 0;
+  $58 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+  $59 = $0 + 154 | 0;
+  SAFE_HEAP_STORE($56 >> 0 | 0, $58 | 0, 1);
+  $60 = $0 + 139 | 0;
+  $61 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+  $62 = $0 + 155 | 0;
+  SAFE_HEAP_STORE($59 >> 0 | 0, $61 | 0, 1);
+  $63 = $0 + 140 | 0;
+  $64 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+  $65 = $0 + 156 | 0;
+  SAFE_HEAP_STORE($62 >> 0 | 0, $64 | 0, 1);
+  $66 = $0 + 141 | 0;
+  $67 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+  $68 = $0 + 157 | 0;
+  SAFE_HEAP_STORE($65 >> 0 | 0, $67 | 0, 1);
+  $69 = $0 + 142 | 0;
+  $70 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+  $71 = $0 + 158 | 0;
+  SAFE_HEAP_STORE($68 >> 0 | 0, $70 | 0, 1);
+  $72 = $0 + 143 | 0;
+  $73 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+  $74 = $0 + 159 | 0;
+  SAFE_HEAP_STORE($71 >> 0 | 0, $73 | 0, 1);
+  $75 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($74 >> 0 | 0, $75 | 0, 1);
+ }
+ _double_block($24);
+ $86 = $0 + 160 | 0;
+ $87 = $86;
+ $88 = $25 | $87;
+ $89 = $88 & 3;
+ $90 = ($89 | 0) == 0;
+ if ($90) {
+  $137 = $0 + 148 | 0;
+  $138 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+  $139 = $86 + 4 | 0;
+  SAFE_HEAP_STORE($86 | 0, $138 | 0, 4);
+  $140 = $0 + 152 | 0;
+  $141 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+  $142 = $86 + 8 | 0;
+  SAFE_HEAP_STORE($139 | 0, $141 | 0, 4);
+  $143 = $0 + 156 | 0;
+  $144 = SAFE_HEAP_LOAD($140 | 0, 4, 0) | 0 | 0;
+  $145 = $86 + 12 | 0;
+  SAFE_HEAP_STORE($142 | 0, $144 | 0, 4);
+  $146 = SAFE_HEAP_LOAD($143 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($145 | 0, $146 | 0, 4);
+ } else {
+  $91 = $0 + 145 | 0;
+  $92 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+  $93 = $86 + 1 | 0;
+  SAFE_HEAP_STORE($86 >> 0 | 0, $92 | 0, 1);
+  $94 = $0 + 146 | 0;
+  $95 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+  $96 = $86 + 2 | 0;
+  SAFE_HEAP_STORE($93 >> 0 | 0, $95 | 0, 1);
+  $97 = $0 + 147 | 0;
+  $98 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+  $99 = $86 + 3 | 0;
+  SAFE_HEAP_STORE($96 >> 0 | 0, $98 | 0, 1);
+  $100 = $0 + 148 | 0;
+  $101 = SAFE_HEAP_LOAD($97 >> 0 | 0, 1, 0) | 0 | 0;
+  $102 = $86 + 4 | 0;
+  SAFE_HEAP_STORE($99 >> 0 | 0, $101 | 0, 1);
+  $103 = $0 + 149 | 0;
+  $104 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 0) | 0 | 0;
+  $105 = $86 + 5 | 0;
+  SAFE_HEAP_STORE($102 >> 0 | 0, $104 | 0, 1);
+  $106 = $0 + 150 | 0;
+  $107 = SAFE_HEAP_LOAD($103 >> 0 | 0, 1, 0) | 0 | 0;
+  $108 = $86 + 6 | 0;
+  SAFE_HEAP_STORE($105 >> 0 | 0, $107 | 0, 1);
+  $109 = $0 + 151 | 0;
+  $110 = SAFE_HEAP_LOAD($106 >> 0 | 0, 1, 0) | 0 | 0;
+  $111 = $86 + 7 | 0;
+  SAFE_HEAP_STORE($108 >> 0 | 0, $110 | 0, 1);
+  $112 = $0 + 152 | 0;
+  $113 = SAFE_HEAP_LOAD($109 >> 0 | 0, 1, 0) | 0 | 0;
+  $114 = $86 + 8 | 0;
+  SAFE_HEAP_STORE($111 >> 0 | 0, $113 | 0, 1);
+  $115 = $0 + 153 | 0;
+  $116 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+  $117 = $86 + 9 | 0;
+  SAFE_HEAP_STORE($114 >> 0 | 0, $116 | 0, 1);
+  $118 = $0 + 154 | 0;
+  $119 = SAFE_HEAP_LOAD($115 >> 0 | 0, 1, 0) | 0 | 0;
+  $120 = $86 + 10 | 0;
+  SAFE_HEAP_STORE($117 >> 0 | 0, $119 | 0, 1);
+  $121 = $0 + 155 | 0;
+  $122 = SAFE_HEAP_LOAD($118 >> 0 | 0, 1, 0) | 0 | 0;
+  $123 = $86 + 11 | 0;
+  SAFE_HEAP_STORE($120 >> 0 | 0, $122 | 0, 1);
+  $124 = $0 + 156 | 0;
+  $125 = SAFE_HEAP_LOAD($121 >> 0 | 0, 1, 0) | 0 | 0;
+  $126 = $86 + 12 | 0;
+  SAFE_HEAP_STORE($123 >> 0 | 0, $125 | 0, 1);
+  $127 = $0 + 157 | 0;
+  $128 = SAFE_HEAP_LOAD($124 >> 0 | 0, 1, 0) | 0 | 0;
+  $129 = $86 + 13 | 0;
+  SAFE_HEAP_STORE($126 >> 0 | 0, $128 | 0, 1);
+  $130 = $0 + 158 | 0;
+  $131 = SAFE_HEAP_LOAD($127 >> 0 | 0, 1, 0) | 0 | 0;
+  $132 = $86 + 14 | 0;
+  SAFE_HEAP_STORE($129 >> 0 | 0, $131 | 0, 1);
+  $133 = $0 + 159 | 0;
+  $134 = SAFE_HEAP_LOAD($130 >> 0 | 0, 1, 0) | 0 | 0;
+  $135 = $86 + 15 | 0;
+  SAFE_HEAP_STORE($132 >> 0 | 0, $134 | 0, 1);
+  $136 = SAFE_HEAP_LOAD($133 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($135 >> 0 | 0, $136 | 0, 1);
+ }
+ _double_block($86);
+ $$0121196 = 1;
+ while (1) {
+  $147 = $86 + ($$0121196 << 4) | 0;
+  $148 = $$0121196 + -1 | 0;
+  $149 = $86 + ($148 << 4) | 0;
+  $150 = $147;
+  $151 = $149;
+  $152 = $151 | $150;
+  $153 = $152 & 3;
+  $154 = ($153 | 0) == 0;
+  if ($154) {
+   $201 = ($86 + ($148 << 4) | 0) + 4 | 0;
+   $202 = SAFE_HEAP_LOAD($149 | 0, 4, 0) | 0 | 0;
+   $203 = ($86 + ($$0121196 << 4) | 0) + 4 | 0;
+   SAFE_HEAP_STORE($147 | 0, $202 | 0, 4);
+   $204 = ($86 + ($148 << 4) | 0) + 8 | 0;
+   $205 = SAFE_HEAP_LOAD($201 | 0, 4, 0) | 0 | 0;
+   $206 = ($86 + ($$0121196 << 4) | 0) + 8 | 0;
+   SAFE_HEAP_STORE($203 | 0, $205 | 0, 4);
+   $207 = ($86 + ($148 << 4) | 0) + 12 | 0;
+   $208 = SAFE_HEAP_LOAD($204 | 0, 4, 0) | 0 | 0;
+   $209 = ($86 + ($$0121196 << 4) | 0) + 12 | 0;
+   SAFE_HEAP_STORE($206 | 0, $208 | 0, 4);
+   $210 = SAFE_HEAP_LOAD($207 | 0, 4, 0) | 0 | 0;
+   SAFE_HEAP_STORE($209 | 0, $210 | 0, 4);
+  } else {
+   $155 = ($86 + ($148 << 4) | 0) + 1 | 0;
+   $156 = SAFE_HEAP_LOAD($149 >> 0 | 0, 1, 0) | 0 | 0;
+   $157 = ($86 + ($$0121196 << 4) | 0) + 1 | 0;
+   SAFE_HEAP_STORE($147 >> 0 | 0, $156 | 0, 1);
+   $158 = ($86 + ($148 << 4) | 0) + 2 | 0;
+   $159 = SAFE_HEAP_LOAD($155 >> 0 | 0, 1, 0) | 0 | 0;
+   $160 = ($86 + ($$0121196 << 4) | 0) + 2 | 0;
+   SAFE_HEAP_STORE($157 >> 0 | 0, $159 | 0, 1);
+   $161 = ($86 + ($148 << 4) | 0) + 3 | 0;
+   $162 = SAFE_HEAP_LOAD($158 >> 0 | 0, 1, 0) | 0 | 0;
+   $163 = ($86 + ($$0121196 << 4) | 0) + 3 | 0;
+   SAFE_HEAP_STORE($160 >> 0 | 0, $162 | 0, 1);
+   $164 = ($86 + ($148 << 4) | 0) + 4 | 0;
+   $165 = SAFE_HEAP_LOAD($161 >> 0 | 0, 1, 0) | 0 | 0;
+   $166 = ($86 + ($$0121196 << 4) | 0) + 4 | 0;
+   SAFE_HEAP_STORE($163 >> 0 | 0, $165 | 0, 1);
+   $167 = ($86 + ($148 << 4) | 0) + 5 | 0;
+   $168 = SAFE_HEAP_LOAD($164 >> 0 | 0, 1, 0) | 0 | 0;
+   $169 = ($86 + ($$0121196 << 4) | 0) + 5 | 0;
+   SAFE_HEAP_STORE($166 >> 0 | 0, $168 | 0, 1);
+   $170 = ($86 + ($148 << 4) | 0) + 6 | 0;
+   $171 = SAFE_HEAP_LOAD($167 >> 0 | 0, 1, 0) | 0 | 0;
+   $172 = ($86 + ($$0121196 << 4) | 0) + 6 | 0;
+   SAFE_HEAP_STORE($169 >> 0 | 0, $171 | 0, 1);
+   $173 = ($86 + ($148 << 4) | 0) + 7 | 0;
+   $174 = SAFE_HEAP_LOAD($170 >> 0 | 0, 1, 0) | 0 | 0;
+   $175 = ($86 + ($$0121196 << 4) | 0) + 7 | 0;
+   SAFE_HEAP_STORE($172 >> 0 | 0, $174 | 0, 1);
+   $176 = ($86 + ($148 << 4) | 0) + 8 | 0;
+   $177 = SAFE_HEAP_LOAD($173 >> 0 | 0, 1, 0) | 0 | 0;
+   $178 = ($86 + ($$0121196 << 4) | 0) + 8 | 0;
+   SAFE_HEAP_STORE($175 >> 0 | 0, $177 | 0, 1);
+   $179 = ($86 + ($148 << 4) | 0) + 9 | 0;
+   $180 = SAFE_HEAP_LOAD($176 >> 0 | 0, 1, 0) | 0 | 0;
+   $181 = ($86 + ($$0121196 << 4) | 0) + 9 | 0;
+   SAFE_HEAP_STORE($178 >> 0 | 0, $180 | 0, 1);
+   $182 = ($86 + ($148 << 4) | 0) + 10 | 0;
+   $183 = SAFE_HEAP_LOAD($179 >> 0 | 0, 1, 0) | 0 | 0;
+   $184 = ($86 + ($$0121196 << 4) | 0) + 10 | 0;
+   SAFE_HEAP_STORE($181 >> 0 | 0, $183 | 0, 1);
+   $185 = ($86 + ($148 << 4) | 0) + 11 | 0;
+   $186 = SAFE_HEAP_LOAD($182 >> 0 | 0, 1, 0) | 0 | 0;
+   $187 = ($86 + ($$0121196 << 4) | 0) + 11 | 0;
+   SAFE_HEAP_STORE($184 >> 0 | 0, $186 | 0, 1);
+   $188 = ($86 + ($148 << 4) | 0) + 12 | 0;
+   $189 = SAFE_HEAP_LOAD($185 >> 0 | 0, 1, 0) | 0 | 0;
+   $190 = ($86 + ($$0121196 << 4) | 0) + 12 | 0;
+   SAFE_HEAP_STORE($187 >> 0 | 0, $189 | 0, 1);
+   $191 = ($86 + ($148 << 4) | 0) + 13 | 0;
+   $192 = SAFE_HEAP_LOAD($188 >> 0 | 0, 1, 0) | 0 | 0;
+   $193 = ($86 + ($$0121196 << 4) | 0) + 13 | 0;
+   SAFE_HEAP_STORE($190 >> 0 | 0, $192 | 0, 1);
+   $194 = ($86 + ($148 << 4) | 0) + 14 | 0;
+   $195 = SAFE_HEAP_LOAD($191 >> 0 | 0, 1, 0) | 0 | 0;
+   $196 = ($86 + ($$0121196 << 4) | 0) + 14 | 0;
+   SAFE_HEAP_STORE($193 >> 0 | 0, $195 | 0, 1);
+   $197 = ($86 + ($148 << 4) | 0) + 15 | 0;
+   $198 = SAFE_HEAP_LOAD($194 >> 0 | 0, 1, 0) | 0 | 0;
+   $199 = ($86 + ($$0121196 << 4) | 0) + 15 | 0;
+   SAFE_HEAP_STORE($196 >> 0 | 0, $198 | 0, 1);
+   $200 = SAFE_HEAP_LOAD($197 >> 0 | 0, 1, 0) | 0 | 0;
+   SAFE_HEAP_STORE($199 >> 0 | 0, $200 | 0, 1);
+  }
+  _double_block($147);
+  $211 = $$0121196 + 1 | 0;
+  $exitcond = ($211 | 0) == 16;
+  if ($exitcond) {
+   break;
+  } else {
+   $$0121196 = $211;
+  }
+ }
+ $212 = 16 - $2 | 0;
+ _memset($3 | 0, 0, $212 | 0) | 0;
+ $213 = $3 + $212 | 0;
+ $214 = $213;
+ $215 = $1;
+ $216 = $214 | $215;
+ $217 = $216 & 3;
+ $218 = ($217 | 0) == 0;
+ if ($218) {
+  $219 = $2 >>> 0 > 3;
+  if ($219) {
+   $220 = $2 + -4 | 0;
+   $221 = $220 & -4;
+   $222 = $221 + 4 | 0;
+   $scevgep$i = $1 + $222 | 0;
+   $$02432$i = $1;
+   $$02531$i = $213;
+   $$033$i = $2;
+   while (1) {
+    $223 = $$02432$i + 4 | 0;
+    $224 = SAFE_HEAP_LOAD($$02432$i | 0, 4, 0) | 0 | 0;
+    $225 = $$02531$i + 4 | 0;
+    SAFE_HEAP_STORE($$02531$i | 0, $224 | 0, 4);
+    $226 = $$033$i + -4 | 0;
+    $227 = $226 >>> 0 > 3;
+    if ($227) {
+     $$02432$i = $223;
+     $$02531$i = $225;
+     $$033$i = $226;
+    } else {
+     break;
+    }
+   }
+   $scevgep42$i = $213 + $222 | 0;
+   $228 = $220 - $221 | 0;
+   $$0$lcssa$i = $228;
+   $$024$lcssa$i = $scevgep$i;
+   $$025$lcssa$i = $scevgep42$i;
+  } else {
+   $$0$lcssa$i = $2;
+   $$024$lcssa$i = $1;
+   $$025$lcssa$i = $213;
+  }
+  $$026$ph$i = $$024$lcssa$i;
+  $$027$ph$i = $$025$lcssa$i;
+  $$1$ph$i = $$0$lcssa$i;
+ } else {
+  $$026$ph$i = $1;
+  $$027$ph$i = $213;
+  $$1$ph$i = $2;
+ }
+ $229 = ($$1$ph$i | 0) == 0;
+ if (!$229) {
+  $$02629$i = $$026$ph$i;
+  $$02728$i = $$027$ph$i;
+  $$130$i = $$1$ph$i;
+  while (1) {
+   $230 = $$02629$i + 1 | 0;
+   $231 = SAFE_HEAP_LOAD($$02629$i >> 0 | 0, 1, 0) | 0 | 0;
+   $232 = $$02728$i + 1 | 0;
+   SAFE_HEAP_STORE($$02728$i >> 0 | 0, $231 | 0, 1);
+   $233 = $$130$i + -1 | 0;
+   $234 = ($233 | 0) == 0;
+   if ($234) {
+    break;
+   } else {
+    $$02629$i = $230;
+    $$02728$i = $232;
+    $$130$i = $233;
+   }
+  }
+ }
+ $235 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+ $236 = $235 & 255;
+ $237 = $236 << 4;
+ $238 = $237 & 255;
+ SAFE_HEAP_STORE($3 >> 0 | 0, $238 | 0, 1);
+ $239 = $212 + -1 | 0;
+ $240 = $3 + $239 | 0;
+ $241 = SAFE_HEAP_LOAD($240 >> 0 | 0, 1, 0) | 0 | 0;
+ $242 = $241 & 255;
+ $243 = $242 | 1;
+ $244 = $243 & 255;
+ SAFE_HEAP_STORE($240 >> 0 | 0, $244 | 0, 1);
+ $245 = $3 + 15 | 0;
+ $246 = SAFE_HEAP_LOAD($245 >> 0 | 0, 1, 0) | 0 | 0;
+ $247 = $246 & 255;
+ $248 = $247 & 192;
+ $249 = $248 & 255;
+ SAFE_HEAP_STORE($245 >> 0 | 0, $249 | 0, 1);
+ $250 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $251 = $250 + 36 | 0;
+ $252 = SAFE_HEAP_LOAD($251 | 0, 4, 0) | 0 | 0;
+ $253 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($252 | 0, 127 | 0) | 0) & 127]($22, 
$3, $3) | 0;
+ $254 = $253 >>> 0 > $23 >>> 0;
+ $255 = $254 ? $253 : $23;
+ $256 = $4;
+ $257 = $3;
+ $258 = $3 + 4 | 0;
+ $259 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $260 = $4 + 4 | 0;
+ SAFE_HEAP_STORE($4 | 0, $259 | 0, 4);
+ $261 = $3 + 8 | 0;
+ $262 = SAFE_HEAP_LOAD($258 | 0, 4, 0) | 0 | 0;
+ $263 = $4 + 8 | 0;
+ SAFE_HEAP_STORE($260 | 0, $262 | 0, 4);
+ $264 = $3 + 12 | 0;
+ $265 = SAFE_HEAP_LOAD($261 | 0, 4, 0) | 0 | 0;
+ $266 = $4 + 12 | 0;
+ SAFE_HEAP_STORE($263 | 0, $265 | 0, 4);
+ $267 = SAFE_HEAP_LOAD($264 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($266 | 0, $267 | 0, 4);
+ $268 = $4 + 16 | 0;
+ $269 = $3 + 1 | 0;
+ $270 = $269;
+ $271 = $270 & 3;
+ $272 = ($271 | 0) == 0;
+ if ($272) {
+  $304 = $3 + 4 | 0;
+  $305 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $306 = $3 + 5 | 0;
+  $307 = SAFE_HEAP_LOAD($269 | 0, 4, 0) | 0 | 0;
+  $308 = $307 ^ $305;
+  $309 = $4 + 20 | 0;
+  SAFE_HEAP_STORE($268 | 0, $308 | 0, 4);
+  $310 = SAFE_HEAP_LOAD($304 | 0, 4, 0) | 0 | 0;
+  $311 = SAFE_HEAP_LOAD($306 | 0, 4, 0) | 0 | 0;
+  $312 = $311 ^ $310;
+  SAFE_HEAP_STORE($309 | 0, $312 | 0, 4);
+ } else {
+  $273 = $259 & 255;
+  $274 = $3 + 2 | 0;
+  $275 = SAFE_HEAP_LOAD($269 >> 0 | 0, 1, 0) | 0 | 0;
+  $276 = $275 ^ $273;
+  $277 = $4 + 17 | 0;
+  SAFE_HEAP_STORE($268 >> 0 | 0, $276 | 0, 1);
+  $278 = $3 + 3 | 0;
+  $279 = SAFE_HEAP_LOAD($274 >> 0 | 0, 1, 0) | 0 | 0;
+  $280 = $279 ^ $275;
+  $281 = $4 + 18 | 0;
+  SAFE_HEAP_STORE($277 >> 0 | 0, $280 | 0, 1);
+  $282 = $3 + 4 | 0;
+  $283 = SAFE_HEAP_LOAD($278 >> 0 | 0, 1, 0) | 0 | 0;
+  $284 = $283 ^ $279;
+  $285 = $4 + 19 | 0;
+  SAFE_HEAP_STORE($281 >> 0 | 0, $284 | 0, 1);
+  $286 = $3 + 5 | 0;
+  $287 = SAFE_HEAP_LOAD($282 >> 0 | 0, 1, 0) | 0 | 0;
+  $288 = $287 ^ $283;
+  $289 = $4 + 20 | 0;
+  SAFE_HEAP_STORE($285 >> 0 | 0, $288 | 0, 1);
+  $290 = $3 + 6 | 0;
+  $291 = SAFE_HEAP_LOAD($286 >> 0 | 0, 1, 0) | 0 | 0;
+  $292 = $291 ^ $287;
+  $293 = $4 + 21 | 0;
+  SAFE_HEAP_STORE($289 >> 0 | 0, $292 | 0, 1);
+  $294 = $3 + 7 | 0;
+  $295 = SAFE_HEAP_LOAD($290 >> 0 | 0, 1, 0) | 0 | 0;
+  $296 = $295 ^ $291;
+  $297 = $4 + 22 | 0;
+  SAFE_HEAP_STORE($293 >> 0 | 0, $296 | 0, 1);
+  $298 = $3 + 8 | 0;
+  $299 = SAFE_HEAP_LOAD($294 >> 0 | 0, 1, 0) | 0 | 0;
+  $300 = $299 ^ $295;
+  $301 = $4 + 23 | 0;
+  SAFE_HEAP_STORE($297 >> 0 | 0, $300 | 0, 1);
+  $302 = SAFE_HEAP_LOAD($298 >> 0 | 0, 1, 0) | 0 | 0;
+  $303 = $302 ^ $299;
+  SAFE_HEAP_STORE($301 >> 0 | 0, $303 | 0, 1);
+ }
+ $313 = $0 + 64 | 0;
+ $314 = $247 >>> 3;
+ $315 = $314 & 7;
+ $316 = $4 + $315 | 0;
+ $317 = $247 & 7;
+ $318 = ($317 | 0) == 0;
+ if ($318) {
+  $319 = SAFE_HEAP_LOAD($316 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($313 >> 0 | 0, $319 | 0, 1);
+  $320 = $313 + 1 | 0;
+  $321 = $316 + 1 | 0;
+  $322 = SAFE_HEAP_LOAD($321 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($320 >> 0 | 0, $322 | 0, 1);
+  $323 = $313 + 2 | 0;
+  $324 = $316 + 2 | 0;
+  $325 = SAFE_HEAP_LOAD($324 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($323 >> 0 | 0, $325 | 0, 1);
+  $326 = $313 + 3 | 0;
+  $327 = $316 + 3 | 0;
+  $328 = SAFE_HEAP_LOAD($327 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($326 >> 0 | 0, $328 | 0, 1);
+  $329 = $313 + 4 | 0;
+  $330 = $316 + 4 | 0;
+  $331 = SAFE_HEAP_LOAD($330 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($329 >> 0 | 0, $331 | 0, 1);
+  $332 = $313 + 5 | 0;
+  $333 = $316 + 5 | 0;
+  $334 = SAFE_HEAP_LOAD($333 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($332 >> 0 | 0, $334 | 0, 1);
+  $335 = $313 + 6 | 0;
+  $336 = $316 + 6 | 0;
+  $337 = SAFE_HEAP_LOAD($336 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($335 >> 0 | 0, $337 | 0, 1);
+  $338 = $313 + 7 | 0;
+  $339 = $316 + 7 | 0;
+  $340 = SAFE_HEAP_LOAD($339 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($338 >> 0 | 0, $340 | 0, 1);
+  $341 = $0 + 72 | 0;
+  $342 = $316 + 8 | 0;
+  $343 = SAFE_HEAP_LOAD($342 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($341 >> 0 | 0, $343 | 0, 1);
+  $344 = $0 + 73 | 0;
+  $345 = $316 + 9 | 0;
+  $346 = SAFE_HEAP_LOAD($345 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($344 >> 0 | 0, $346 | 0, 1);
+  $347 = $0 + 74 | 0;
+  $348 = $316 + 10 | 0;
+  $349 = SAFE_HEAP_LOAD($348 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($347 >> 0 | 0, $349 | 0, 1);
+  $350 = $0 + 75 | 0;
+  $351 = $316 + 11 | 0;
+  $352 = SAFE_HEAP_LOAD($351 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($350 >> 0 | 0, $352 | 0, 1);
+  $353 = $0 + 76 | 0;
+  $354 = $316 + 12 | 0;
+  $355 = SAFE_HEAP_LOAD($354 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($353 >> 0 | 0, $355 | 0, 1);
+  $356 = $0 + 77 | 0;
+  $357 = $316 + 13 | 0;
+  $358 = SAFE_HEAP_LOAD($357 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($356 >> 0 | 0, $358 | 0, 1);
+  $359 = $0 + 78 | 0;
+  $360 = $316 + 14 | 0;
+  $361 = SAFE_HEAP_LOAD($360 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($359 >> 0 | 0, $361 | 0, 1);
+  $362 = $0 + 79 | 0;
+  $363 = $316 + 15 | 0;
+  $364 = SAFE_HEAP_LOAD($363 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($362 >> 0 | 0, $364 | 0, 1);
+ } else {
+  $365 = 8 - $317 | 0;
+  $$pre = SAFE_HEAP_LOAD($316 >> 0 | 0, 1, 0) | 0 | 0;
+  $366 = $$pre & 255;
+  $367 = $366 << $317;
+  $368 = $316 + 1 | 0;
+  $369 = SAFE_HEAP_LOAD($368 >> 0 | 0, 1, 0) | 0 | 0;
+  $370 = $369 & 255;
+  $371 = $370 >>> $365;
+  $372 = $371 | $367;
+  $373 = $372 & 255;
+  SAFE_HEAP_STORE($313 >> 0 | 0, $373 | 0, 1);
+  $374 = $313 + 1 | 0;
+  $375 = $369 & 255;
+  $376 = $375 << $317;
+  $377 = $316 + 2 | 0;
+  $378 = SAFE_HEAP_LOAD($377 >> 0 | 0, 1, 0) | 0 | 0;
+  $379 = $378 & 255;
+  $380 = $379 >>> $365;
+  $381 = $380 | $376;
+  $382 = $381 & 255;
+  SAFE_HEAP_STORE($374 >> 0 | 0, $382 | 0, 1);
+  $383 = $313 + 2 | 0;
+  $384 = $378 & 255;
+  $385 = $384 << $317;
+  $386 = $316 + 3 | 0;
+  $387 = SAFE_HEAP_LOAD($386 >> 0 | 0, 1, 0) | 0 | 0;
+  $388 = $387 & 255;
+  $389 = $388 >>> $365;
+  $390 = $389 | $385;
+  $391 = $390 & 255;
+  SAFE_HEAP_STORE($383 >> 0 | 0, $391 | 0, 1);
+  $392 = $313 + 3 | 0;
+  $393 = $387 & 255;
+  $394 = $393 << $317;
+  $395 = $316 + 4 | 0;
+  $396 = SAFE_HEAP_LOAD($395 >> 0 | 0, 1, 0) | 0 | 0;
+  $397 = $396 & 255;
+  $398 = $397 >>> $365;
+  $399 = $398 | $394;
+  $400 = $399 & 255;
+  SAFE_HEAP_STORE($392 >> 0 | 0, $400 | 0, 1);
+  $401 = $313 + 4 | 0;
+  $402 = $396 & 255;
+  $403 = $402 << $317;
+  $404 = $316 + 5 | 0;
+  $405 = SAFE_HEAP_LOAD($404 >> 0 | 0, 1, 0) | 0 | 0;
+  $406 = $405 & 255;
+  $407 = $406 >>> $365;
+  $408 = $407 | $403;
+  $409 = $408 & 255;
+  SAFE_HEAP_STORE($401 >> 0 | 0, $409 | 0, 1);
+  $410 = $313 + 5 | 0;
+  $411 = $405 & 255;
+  $412 = $411 << $317;
+  $413 = $316 + 6 | 0;
+  $414 = SAFE_HEAP_LOAD($413 >> 0 | 0, 1, 0) | 0 | 0;
+  $415 = $414 & 255;
+  $416 = $415 >>> $365;
+  $417 = $416 | $412;
+  $418 = $417 & 255;
+  SAFE_HEAP_STORE($410 >> 0 | 0, $418 | 0, 1);
+  $419 = $313 + 6 | 0;
+  $420 = $414 & 255;
+  $421 = $420 << $317;
+  $422 = $316 + 7 | 0;
+  $423 = SAFE_HEAP_LOAD($422 >> 0 | 0, 1, 0) | 0 | 0;
+  $424 = $423 & 255;
+  $425 = $424 >>> $365;
+  $426 = $425 | $421;
+  $427 = $426 & 255;
+  SAFE_HEAP_STORE($419 >> 0 | 0, $427 | 0, 1);
+  $428 = $313 + 7 | 0;
+  $429 = $423 & 255;
+  $430 = $429 << $317;
+  $431 = $316 + 8 | 0;
+  $432 = SAFE_HEAP_LOAD($431 >> 0 | 0, 1, 0) | 0 | 0;
+  $433 = $432 & 255;
+  $434 = $433 >>> $365;
+  $435 = $434 | $430;
+  $436 = $435 & 255;
+  SAFE_HEAP_STORE($428 >> 0 | 0, $436 | 0, 1);
+  $437 = $0 + 72 | 0;
+  $438 = $432 & 255;
+  $439 = $438 << $317;
+  $440 = $316 + 9 | 0;
+  $441 = SAFE_HEAP_LOAD($440 >> 0 | 0, 1, 0) | 0 | 0;
+  $442 = $441 & 255;
+  $443 = $442 >>> $365;
+  $444 = $443 | $439;
+  $445 = $444 & 255;
+  SAFE_HEAP_STORE($437 >> 0 | 0, $445 | 0, 1);
+  $446 = $0 + 73 | 0;
+  $447 = $441 & 255;
+  $448 = $447 << $317;
+  $449 = $316 + 10 | 0;
+  $450 = SAFE_HEAP_LOAD($449 >> 0 | 0, 1, 0) | 0 | 0;
+  $451 = $450 & 255;
+  $452 = $451 >>> $365;
+  $453 = $452 | $448;
+  $454 = $453 & 255;
+  SAFE_HEAP_STORE($446 >> 0 | 0, $454 | 0, 1);
+  $455 = $0 + 74 | 0;
+  $456 = $450 & 255;
+  $457 = $456 << $317;
+  $458 = $316 + 11 | 0;
+  $459 = SAFE_HEAP_LOAD($458 >> 0 | 0, 1, 0) | 0 | 0;
+  $460 = $459 & 255;
+  $461 = $460 >>> $365;
+  $462 = $461 | $457;
+  $463 = $462 & 255;
+  SAFE_HEAP_STORE($455 >> 0 | 0, $463 | 0, 1);
+  $464 = $0 + 75 | 0;
+  $465 = $459 & 255;
+  $466 = $465 << $317;
+  $467 = $316 + 12 | 0;
+  $468 = SAFE_HEAP_LOAD($467 >> 0 | 0, 1, 0) | 0 | 0;
+  $469 = $468 & 255;
+  $470 = $469 >>> $365;
+  $471 = $470 | $466;
+  $472 = $471 & 255;
+  SAFE_HEAP_STORE($464 >> 0 | 0, $472 | 0, 1);
+  $473 = $0 + 76 | 0;
+  $474 = $468 & 255;
+  $475 = $474 << $317;
+  $476 = $316 + 13 | 0;
+  $477 = SAFE_HEAP_LOAD($476 >> 0 | 0, 1, 0) | 0 | 0;
+  $478 = $477 & 255;
+  $479 = $478 >>> $365;
+  $480 = $479 | $475;
+  $481 = $480 & 255;
+  SAFE_HEAP_STORE($473 >> 0 | 0, $481 | 0, 1);
+  $482 = $0 + 77 | 0;
+  $483 = $477 & 255;
+  $484 = $483 << $317;
+  $485 = $316 + 14 | 0;
+  $486 = SAFE_HEAP_LOAD($485 >> 0 | 0, 1, 0) | 0 | 0;
+  $487 = $486 & 255;
+  $488 = $487 >>> $365;
+  $489 = $488 | $484;
+  $490 = $489 & 255;
+  SAFE_HEAP_STORE($482 >> 0 | 0, $490 | 0, 1);
+  $491 = $0 + 78 | 0;
+  $492 = $486 & 255;
+  $493 = $492 << $317;
+  $494 = $316 + 15 | 0;
+  $495 = SAFE_HEAP_LOAD($494 >> 0 | 0, 1, 0) | 0 | 0;
+  $496 = $495 & 255;
+  $497 = $496 >>> $365;
+  $498 = $497 | $493;
+  $499 = $498 & 255;
+  SAFE_HEAP_STORE($491 >> 0 | 0, $499 | 0, 1);
+  $500 = $0 + 79 | 0;
+  $501 = $495 & 255;
+  $502 = $501 << $317;
+  $503 = $316 + 16 | 0;
+  $504 = SAFE_HEAP_LOAD($503 >> 0 | 0, 1, 0) | 0 | 0;
+  $505 = $504 & 255;
+  $506 = $505 >>> $365;
+  $507 = $506 | $502;
+  $508 = $507 & 255;
+  SAFE_HEAP_STORE($500 >> 0 | 0, $508 | 0, 1);
+ }
+ $509 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+ $510 = $0 + 80 | 0;
+ $511 = $0 + 432 | 0;
+ $512 = $509 & -15;
+ $513 = $512 | 2;
+ dest = $510;
+ stop = dest + 36 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ {}
+ SAFE_HEAP_STORE($511 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($511 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($511 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($511 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($511 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($511 + 20 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($511 + 24 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($511 + 28 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($5 >> 0 | 0, $513 | 0, 1);
+ $514 = $0 + 464 | 0;
+ $515 = $9 + 353 | 0;
+ {}
+ SAFE_HEAP_STORE($514 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($514 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($514 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($514 + 12 | 0, 0 | 0 | 0, 4);
+ $516 = SAFE_HEAP_LOAD($515 >> 0 | 0, 1, 0) | 0 | 0;
+ $517 = $516 & -4;
+ SAFE_HEAP_STORE($515 >> 0 | 0, $517 | 0, 1);
+ $518 = $257 & 4;
+ $519 = ($518 | 0) == 0;
+ if ($519) {
+  $$0127$lcssa209 = 16;
+  $$0131$lcssa208 = $3;
+  label = 34;
+ } else {
+  $$0127191 = 16;
+  $$0131190 = $3;
+  while (1) {
+   SAFE_HEAP_STORE($$0131190 >> 0 | 0, 0 | 0, 1);
+   $520 = $$0131190 + 1 | 0;
+   $521 = $$0127191 + -1 | 0;
+   $522 = $520;
+   $523 = $522 & 7;
+   $524 = ($523 | 0) != 0;
+   $525 = ($521 | 0) != 0;
+   $526 = $525 & $524;
+   if ($526) {
+    $$0127191 = $521;
+    $$0131190 = $520;
+   } else {
+    break;
+   }
+  }
+  $527 = $521 >>> 0 < 8;
+  if ($527) {
+   $$3130$ph = $521;
+   $$3134$ph = $520;
+  } else {
+   $$0127$lcssa209 = $521;
+   $$0131$lcssa208 = $520;
+   label = 34;
+  }
+ }
+ if ((label | 0) == 34) {
+  $528 = $$0127$lcssa209 + -8 | 0;
+  $529 = $528 & -8;
+  $530 = $529 + 8 | 0;
+  $$1128 = $$0127$lcssa209;
+  $$1132 = $$0131$lcssa208;
+  while (1) {
+   $531 = $$1132;
+   $532 = $531;
+   SAFE_HEAP_STORE($532 | 0, 0 | 0, 4);
+   $533 = $531 + 4 | 0;
+   $534 = $533;
+   SAFE_HEAP_STORE($534 | 0, 0 | 0, 4);
+   $535 = $$1128 + -8 | 0;
+   $536 = $$1132 + 8 | 0;
+   $537 = $535 >>> 0 > 7;
+   if ($537) {
+    $$1128 = $535;
+    $$1132 = $536;
+   } else {
+    break;
+   }
+  }
+  $538 = $528 - $529 | 0;
+  $scevgep206 = $$0131$lcssa208 + $530 | 0;
+  $$3130$ph = $538;
+  $$3134$ph = $scevgep206;
+ }
+ $539 = ($$3130$ph | 0) == 0;
+ if (!$539) {
+  $$3130188 = $$3130$ph;
+  $$3134187 = $$3134$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3134187 >> 0 | 0, 0 | 0, 1);
+   $542 = $$3134187 + 1 | 0;
+   $543 = $$3130188 + -1 | 0;
+   $544 = ($543 | 0) == 0;
+   if ($544) {
+    break;
+   } else {
+    $$3130188 = $543;
+    $$3134187 = $542;
+   }
+  }
+ }
+ $540 = $256 & 4;
+ $541 = ($540 | 0) == 0;
+ if ($541) {
+  $$0122$lcssa211 = 24;
+  $$0123$lcssa210 = $4;
+  label = 42;
+ } else {
+  $$0122183 = 24;
+  $$0123182 = $4;
+  while (1) {
+   SAFE_HEAP_STORE($$0123182 >> 0 | 0, 0 | 0, 1);
+   $545 = $$0123182 + 1 | 0;
+   $546 = $$0122183 + -1 | 0;
+   $547 = $545;
+   $548 = $547 & 7;
+   $549 = ($548 | 0) != 0;
+   $550 = ($546 | 0) != 0;
+   $551 = $550 & $549;
+   if ($551) {
+    $$0122183 = $546;
+    $$0123182 = $545;
+   } else {
+    break;
+   }
+  }
+  $552 = $546 >>> 0 < 8;
+  if ($552) {
+   $$3$ph = $546;
+   $$3126$ph = $545;
+  } else {
+   $$0122$lcssa211 = $546;
+   $$0123$lcssa210 = $545;
+   label = 42;
+  }
+ }
+ if ((label | 0) == 42) {
+  $553 = $$0122$lcssa211 + -8 | 0;
+  $554 = $553 & -8;
+  $555 = $554 + 8 | 0;
+  $$1 = $$0122$lcssa211;
+  $$1124 = $$0123$lcssa210;
+  while (1) {
+   $556 = $$1124;
+   $557 = $556;
+   SAFE_HEAP_STORE($557 | 0, 0 | 0, 4);
+   $558 = $556 + 4 | 0;
+   $559 = $558;
+   SAFE_HEAP_STORE($559 | 0, 0 | 0, 4);
+   $560 = $$1 + -8 | 0;
+   $561 = $$1124 + 8 | 0;
+   $562 = $560 >>> 0 > 7;
+   if ($562) {
+    $$1 = $560;
+    $$1124 = $561;
+   } else {
+    break;
+   }
+  }
+  $563 = $553 - $554 | 0;
+  $scevgep = $$0123$lcssa210 + $555 | 0;
+  $$3$ph = $563;
+  $$3126$ph = $scevgep;
+ }
+ $564 = ($$3$ph | 0) == 0;
+ if (!$564) {
+  $$3126180 = $$3126$ph;
+  $$3181 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3126180 >> 0 | 0, 0 | 0, 1);
+   $565 = $$3126180 + 1 | 0;
+   $566 = $$3181 + -1 | 0;
+   $567 = ($566 | 0) == 0;
+   if ($567) {
+    break;
+   } else {
+    $$3126180 = $565;
+    $$3181 = $566;
+   }
+  }
+ }
+ $568 = ($255 | 0) == 0;
+ if ($568) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $569 = $255 + 16 | 0;
+ ___gcry_burn_stack($569);
+ $$0 = 0;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function __gcry_pk_util_data_to_mpi($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$0$ph = 0, $$02325$i = 0, $$02325$i309 = 0, $$02325$i313 = 0, 
$$02325$i317 = 0, $$02325$i321 = 0, $$02325$i325 = 0, $$0278$ph = 0, $$0280 = 
0, $$0281$ph = 0, $$0283$ph = 0, $$0285$ph = 0, $$0289$ph = 0, $$0291$ph = 0, 
$$0299332 = 0, $$1 = 0, $$1$i = 0, $$1$i311 = 0, $$1$i315 = 0;
+ var $$1$i319 = 0, $$1$i323 = 0, $$1$i327 = 0, $$10$ph = 0, $$1279 = 0, $$1282 
= 0, $$1284 = 0, $$1288 = 0, $$1290 = 0, $$1292 = 0, $$17$ph = 0, $$21$ph = 0, 
$$23 = 0, $$3 = 0, $$391 = 0, $$392 = 0, $$4 = 0, $$7 = 0, $$8 = 0, $$9 = 0;
+ var $$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, $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, $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;
+ 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, $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, $cond$i = 0, $cond$i310 = 0, 
$cond$i314 = 0, $cond$i318 = 0, $cond$i322 = 0, $cond$i326 = 0, $not$ = 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;
+ var $or$cond24 = 0, $or$cond26 = 0, $or$cond28 = 0, $or$cond30 = 0, 
$or$cond34 = 0, $or$cond4 = 0, $or$cond6 = 0, $or$cond8 = 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;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+ $12 = __gcry_sexp_find_token($0, 37643, 0) | 0;
+ $13 = ($12 | 0) == (0 | 0);
+ if ($13) {
+  $14 = __gcry_sexp_nth_mpi($0, 0, 0) | 0;
+  SAFE_HEAP_STORE($1 | 0, $14 | 0, 4);
+  $15 = ($14 | 0) != (0 | 0);
+  $16 = $15 ? 0 : 65;
+  $$0280 = $16;
+  STACKTOP = sp;
+  return $$0280 | 0;
+ }
+ $17 = __gcry_sexp_find_token($12, 46885, 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;
+  $not$ = ($19 | 0) != 0;
+  $$ = $not$ & 1;
+  __gcry_sexp_release($17);
+  $$1288 = $$;
+ }
+ $20 = SAFE_HEAP_LOAD($$pre | 0, 4, 0) | 0 | 0;
+ $21 = ($20 | 0) == 5;
+ if ($21) {
+  SAFE_HEAP_STORE($$pre | 0, 0 | 0, 4);
+ }
+ $22 = __gcry_sexp_find_token($12, 37648, 0) | 0;
+ $23 = ($22 | 0) != (0 | 0);
+ if ($23) {
+  $54 = 0;
+  $99 = 0;
+  label = 9;
+ } else {
+  $24 = __gcry_sexp_find_token($12, 40697, 0) | 0;
+  $25 = ($24 | 0) == (0 | 0);
+  if ($25) {
+   $$23 = 65;
+   $321 = 0;
+  } else {
+   $54 = $24;
+   $99 = 1;
+   label = 9;
+  }
+ }
+ L13 : do {
+  if ((label | 0) == 9) {
+   $26 = ($$1288 | 0) == 0;
+   if ($26) {
+    $27 = SAFE_HEAP_LOAD($$pre | 0, 4, 0) | 0 | 0;
+    $28 = ($27 | 0) == 0;
+    if ($28) {
+     $29 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+     $30 = $29 & 4096;
+     $31 = ($30 | 0) == 0;
+     if (!$31) {
+      L20 : do {
+       if ($99) {
+        $32 = __gcry_sexp_find_token($12, 37537, 0) | 0;
+        $33 = ($32 | 0) == (0 | 0);
+        if ($33) {
+         $$3 = 65;
+        } else {
+         $34 = __gcry_sexp_nth_data($32, 1, $3) | 0;
+         $35 = ($34 | 0) == (0 | 0);
+         L23 : do {
+          if ($35) {
+           $$0285$ph = 68;
+          } else {
+           $36 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+           $$02325$i = 0;
+           while (1) {
+            $37 = 4248 + ($$02325$i << 3) | 0;
+            $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+            $39 = _strlen($38) | 0;
+            $40 = ($39 | 0) == ($36 | 0);
+            if ($40) {
+             $41 = _memcmp($38, $34, $36) | 0;
+             $42 = ($41 | 0) == 0;
+             if ($42) {
+              label = 19;
+              break;
+             }
+            }
+            $43 = $$02325$i + 1 | 0;
+            $cond$i = ($43 | 0) == 12;
+            if ($cond$i) {
+             label = 20;
+             break;
+            } else {
+             $$02325$i = $43;
+            }
+           }
+           do {
+            if ((label | 0) == 19) {
+             $44 = (4248 + ($$02325$i << 3) | 0) + 4 | 0;
+             $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+             $$1$i = $45;
+            } else if ((label | 0) == 20) {
+             $46 = $36 + 1 | 0;
+             $47 = __gcry_malloc($46) | 0;
+             $48 = ($47 | 0) == (0 | 0);
+             if ($48) {
+              $49 = $2 + 16 | 0;
+              SAFE_HEAP_STORE($49 | 0, 0 | 0, 4);
+              $$0285$ph = 5;
+              break L23;
+             } else {
+              _memcpy($47 | 0, $34 | 0, $36 | 0) | 0;
+              $50 = $47 + $36 | 0;
+              SAFE_HEAP_STORE($50 >> 0 | 0, 0 | 0, 1);
+              $51 = __gcry_md_map_name($47) | 0;
+              __gcry_free($47);
+              $$1$i = $51;
+              break;
+             }
+            }
+           } while (0);
+           $52 = $2 + 16 | 0;
+           SAFE_HEAP_STORE($52 | 0, $$1$i | 0, 4);
+           $53 = ($$1$i | 0) == 0;
+           if ($53) {
+            $$0285$ph = 5;
+           } else {
+            __gcry_sexp_release($32);
+            $55 = __gcry_sexp_nth_buffer($54, 1, $5) | 0;
+            $56 = ($55 | 0) == (0 | 0);
+            if ($56) {
+             SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+             $57 = __gcry_malloc(1) | 0;
+             $58 = ($57 | 0) == (0 | 0);
+             if ($58) {
+              $62 = _gpg_err_code_from_syserror() | 0;
+              $63 = ($62 | 0) == 0;
+              if ($63) {
+               $$0299332 = 0;
+              } else {
+               $$3 = $62;
+               break L20;
+              }
+             } else {
+              $$0299332 = $57;
+             }
+            } else {
+             $59 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+             $60 = $59 << 3;
+             $61 = $60 >>> 0 < $59 >>> 0;
+             if ($61) {
+              __gcry_free($55);
+              $$3 = 67;
+              break L20;
+             } else {
+              $$0299332 = $55;
+             }
+            }
+            $64 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+            $65 = $64 << 3;
+            $66 = __gcry_mpi_set_opaque(0, $$0299332, $65) | 0;
+            SAFE_HEAP_STORE($1 | 0, $66 | 0, 4);
+            $$3 = 0;
+            break L20;
+           }
+          }
+         } while (0);
+         __gcry_sexp_release($32);
+         $$3 = $$0285$ph;
+        }
+       } else {
+        $$3 = 65;
+       }
+      } while (0);
+      $$23 = $$3;
+      $321 = $54;
+      break;
+     }
+     $or$cond = $23 & $28;
+     if ($or$cond) {
+      $67 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+      $68 = $67 & 18;
+      $69 = ($68 | 0) == 0;
+      if (!$69) {
+       $70 = __gcry_sexp_length($22) | 0;
+       $71 = ($70 | 0) == 3;
+       if (!$71) {
+        $$23 = 65;
+        $321 = $54;
+        break;
+       }
+       $72 = __gcry_sexp_nth_data($22, 1, $3) | 0;
+       $73 = ($72 | 0) != (0 | 0);
+       $74 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+       $75 = ($74 | 0) != 0;
+       $or$cond4 = $73 & $75;
+       if (!$or$cond4) {
+        $$23 = 65;
+        $321 = $54;
+        break;
+       }
+       $$02325$i309 = 0;
+       while (1) {
+        $76 = 4248 + ($$02325$i309 << 3) | 0;
+        $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+        $78 = _strlen($77) | 0;
+        $79 = ($78 | 0) == ($74 | 0);
+        if ($79) {
+         $80 = _memcmp($77, $72, $74) | 0;
+         $81 = ($80 | 0) == 0;
+         if ($81) {
+          label = 40;
+          break;
+         }
+        }
+        $82 = $$02325$i309 + 1 | 0;
+        $cond$i310 = ($82 | 0) == 12;
+        if ($cond$i310) {
+         label = 41;
+         break;
+        } else {
+         $$02325$i309 = $82;
+        }
+       }
+       do {
+        if ((label | 0) == 40) {
+         $83 = (4248 + ($$02325$i309 << 3) | 0) + 4 | 0;
+         $84 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+         $$1$i311 = $84;
+         label = 44;
+        } else if ((label | 0) == 41) {
+         $85 = $74 + 1 | 0;
+         $86 = __gcry_malloc($85) | 0;
+         $87 = ($86 | 0) == (0 | 0);
+         if ($87) {
+          $88 = $2 + 16 | 0;
+          SAFE_HEAP_STORE($88 | 0, 0 | 0, 4);
+          $$4 = 5;
+          break;
+         } else {
+          _memcpy($86 | 0, $72 | 0, $74 | 0) | 0;
+          $89 = $86 + $74 | 0;
+          SAFE_HEAP_STORE($89 >> 0 | 0, 0 | 0, 1);
+          $90 = __gcry_md_map_name($86) | 0;
+          __gcry_free($86);
+          $$1$i311 = $90;
+          label = 44;
+          break;
+         }
+        }
+       } while (0);
+       do {
+        if ((label | 0) == 44) {
+         $91 = $2 + 16 | 0;
+         SAFE_HEAP_STORE($91 | 0, $$1$i311 | 0, 4);
+         $92 = ($$1$i311 | 0) == 0;
+         if ($92) {
+          $$4 = 5;
+         } else {
+          $93 = __gcry_sexp_nth_buffer($22, 2, $6) | 0;
+          $94 = ($93 | 0) == (0 | 0);
+          if ($94) {
+           $$4 = 65;
+          } else {
+           $95 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+           $96 = $95 << 3;
+           $97 = $96 >>> 0 < $95 >>> 0;
+           if ($97) {
+            __gcry_free($93);
+            $$4 = 67;
+            break;
+           } else {
+            $98 = __gcry_mpi_set_opaque(0, $93, $96) | 0;
+            SAFE_HEAP_STORE($1 | 0, $98 | 0, 4);
+            $$4 = 0;
+            break;
+           }
+          }
+         }
+        }
+       } while (0);
+       $$23 = $$4;
+       $321 = $54;
+       break;
+      }
+     }
+     $or$cond6 = $99 & $28;
+     if ($or$cond6) {
+      $100 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+      $101 = $100 & 2;
+      $102 = ($101 | 0) == 0;
+      if (!$102) {
+       $$23 = 70;
+       $321 = $54;
+       break;
+      }
+      $103 = __gcry_sexp_nth_mpi($54, 1, 5) | 0;
+      SAFE_HEAP_STORE($1 | 0, $103 | 0, 4);
+      $104 = ($103 | 0) == (0 | 0);
+      $$391 = $104 ? 65 : 0;
+      $$23 = $$391;
+      $321 = $54;
+      break;
+     } else {
+      $127 = 0;
+     }
+    } else {
+     $105 = ($27 | 0) == 1;
+     $or$cond8 = $99 & $105;
+     if ($or$cond8) {
+      $106 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+      $107 = ($106 | 0) == 0;
+      if ($107) {
+       $108 = __gcry_sexp_nth_data($54, 1, $7) | 0;
+       $109 = ($108 | 0) != (0 | 0);
+       $110 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       $111 = ($110 | 0) != 0;
+       $or$cond10 = $109 & $111;
+       L77 : do {
+        if ($or$cond10) {
+         $112 = __gcry_sexp_find_token($12, 37553, 0) | 0;
+         $113 = ($112 | 0) == (0 | 0);
+         L79 : do {
+          if ($113) {
+           $$1290 = 0;
+           $$1292 = 0;
+          } else {
+           $114 = __gcry_sexp_nth_data($112, 1, $3) | 0;
+           $115 = ($114 | 0) == (0 | 0);
+           if ($115) {
+            __gcry_sexp_release($112);
+            $$7 = 68;
+            break L77;
+           }
+           $116 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+           $117 = ($116 | 0) == 0;
+           do {
+            if ($117) {
+             $$0289$ph = 0;
+             $$0291$ph = 0;
+            } else {
+             $118 = __gcry_malloc($116) | 0;
+             $119 = ($118 | 0) == (0 | 0);
+             if ($119) {
+              $121 = _gpg_err_code_from_syserror() | 0;
+              __gcry_sexp_release($112);
+              $122 = ($121 | 0) == 0;
+              if ($122) {
+               $$1290 = 0;
+               $$1292 = 0;
+               break L79;
+              } else {
+               $$7 = $121;
+               break L77;
+              }
+             } else {
+              $120 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+              _memcpy($118 | 0, $114 | 0, $120 | 0) | 0;
+              $$0289$ph = $120;
+              $$0291$ph = $118;
+              break;
+             }
+            }
+           } while (0);
+           __gcry_sexp_release($112);
+           $$1290 = $$0289$ph;
+           $$1292 = $$0291$ph;
+          }
+         } while (0);
+         $123 = $2 + 4 | 0;
+         $124 = SAFE_HEAP_LOAD($123 | 0, 4, 0) | 0 | 0;
+         $125 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+         $126 = __gcry_rsa_pkcs1_encode_for_enc($1, $124, $108, $125, $$1292, 
$$1290) | 0;
+         __gcry_free($$1292);
+         $$7 = $126;
+        } else {
+         $$7 = 65;
+        }
+       } while (0);
+       $$23 = $$7;
+       $321 = $54;
+       break;
+      } else {
+       $127 = $105;
+      }
+     } else {
+      $127 = $105;
+     }
+    }
+    $or$cond12 = $23 & $127;
+    if ($or$cond12) {
+     $128 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $129 = $128 & -2;
+     $switch = ($129 | 0) == 2;
+     if ($switch) {
+      $130 = __gcry_sexp_length($22) | 0;
+      $131 = ($130 | 0) == 3;
+      if (!$131) {
+       $$23 = 65;
+       $321 = $54;
+       break;
+      }
+      $132 = __gcry_sexp_nth_data($22, 1, $3) | 0;
+      $133 = ($132 | 0) != (0 | 0);
+      $134 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+      $135 = ($134 | 0) != 0;
+      $or$cond14 = $133 & $135;
+      if (!$or$cond14) {
+       $$23 = 65;
+       $321 = $54;
+       break;
+      }
+      $$02325$i313 = 0;
+      while (1) {
+       $136 = 4248 + ($$02325$i313 << 3) | 0;
+       $137 = SAFE_HEAP_LOAD($136 | 0, 4, 0) | 0 | 0;
+       $138 = _strlen($137) | 0;
+       $139 = ($138 | 0) == ($134 | 0);
+       if ($139) {
+        $140 = _memcmp($137, $132, $134) | 0;
+        $141 = ($140 | 0) == 0;
+        if ($141) {
+         label = 74;
+         break;
+        }
+       }
+       $142 = $$02325$i313 + 1 | 0;
+       $cond$i314 = ($142 | 0) == 12;
+       if ($cond$i314) {
+        label = 75;
+        break;
+       } else {
+        $$02325$i313 = $142;
+       }
+      }
+      do {
+       if ((label | 0) == 74) {
+        $143 = (4248 + ($$02325$i313 << 3) | 0) + 4 | 0;
+        $144 = SAFE_HEAP_LOAD($143 | 0, 4, 0) | 0 | 0;
+        $$1$i315 = $144;
+        label = 78;
+       } else if ((label | 0) == 75) {
+        $145 = $134 + 1 | 0;
+        $146 = __gcry_malloc($145) | 0;
+        $147 = ($146 | 0) == (0 | 0);
+        if ($147) {
+         $148 = $2 + 16 | 0;
+         SAFE_HEAP_STORE($148 | 0, 0 | 0, 4);
+         $$8 = 5;
+         break;
+        } else {
+         _memcpy($146 | 0, $132 | 0, $134 | 0) | 0;
+         $149 = $146 + $134 | 0;
+         SAFE_HEAP_STORE($149 >> 0 | 0, 0 | 0, 1);
+         $150 = __gcry_md_map_name($146) | 0;
+         __gcry_free($146);
+         $$1$i315 = $150;
+         label = 78;
+         break;
+        }
+       }
+      } while (0);
+      if ((label | 0) == 78) {
+       $151 = $2 + 16 | 0;
+       SAFE_HEAP_STORE($151 | 0, $$1$i315 | 0, 4);
+       $152 = ($$1$i315 | 0) == 0;
+       if ($152) {
+        $$8 = 5;
+       } else {
+        $153 = __gcry_sexp_nth_data($22, 2, $8) | 0;
+        $154 = ($153 | 0) != (0 | 0);
+        $155 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+        $156 = ($155 | 0) != 0;
+        $or$cond16 = $154 & $156;
+        if ($or$cond16) {
+         $157 = $2 + 4 | 0;
+         $158 = SAFE_HEAP_LOAD($157 | 0, 4, 0) | 0 | 0;
+         $159 = SAFE_HEAP_LOAD($151 | 0, 4, 0) | 0 | 0;
+         $160 = __gcry_rsa_pkcs1_encode_for_sig($1, $158, $153, $155, $159) | 
0;
+         $$8 = $160;
+        } else {
+         $$8 = 65;
+        }
+       }
+      }
+      $$23 = $$8;
+      $321 = $54;
+      break;
+     }
+    }
+    $161 = ($27 | 0) == 2;
+    $or$cond18 = $99 & $161;
+    if ($or$cond18) {
+     $162 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $163 = $162 & -2;
+     $switch308 = ($163 | 0) == 2;
+     if ($switch308) {
+      $164 = __gcry_sexp_length($54) | 0;
+      $165 = ($164 | 0) == 2;
+      if ($165) {
+       $166 = __gcry_sexp_nth_data($54, 1, $9) | 0;
+       $167 = ($166 | 0) != (0 | 0);
+       $168 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+       $169 = ($168 | 0) != 0;
+       $or$cond20 = $167 & $169;
+       if ($or$cond20) {
+        $170 = $2 + 4 | 0;
+        $171 = SAFE_HEAP_LOAD($170 | 0, 4, 0) | 0 | 0;
+        $172 = __gcry_rsa_pkcs1_encode_raw_for_sig($1, $171, $166, $168) | 0;
+        $$9 = $172;
+       } else {
+        $$9 = 65;
+       }
+      } else {
+       $$9 = 65;
+      }
+      $$23 = $$9;
+      $321 = $54;
+      break;
+     }
+    }
+    $173 = ($27 | 0) == 3;
+    $or$cond22 = $99 & $173;
+    if ($or$cond22) {
+     $174 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $175 = ($174 | 0) == 0;
+     if ($175) {
+      $176 = __gcry_sexp_nth_data($54, 1, $10) | 0;
+      $177 = ($176 | 0) != (0 | 0);
+      $178 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+      $179 = ($178 | 0) != 0;
+      $or$cond24 = $177 & $179;
+      L126 : do {
+       if ($or$cond24) {
+        $180 = __gcry_sexp_find_token($12, 37537, 0) | 0;
+        $181 = ($180 | 0) == (0 | 0);
+        L128 : do {
+         if (!$181) {
+          $182 = __gcry_sexp_nth_data($180, 1, $3) | 0;
+          $183 = ($182 | 0) == (0 | 0);
+          L130 : do {
+           if ($183) {
+            $$10$ph = 68;
+           } else {
+            $184 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+            $$02325$i317 = 0;
+            while (1) {
+             $185 = 4248 + ($$02325$i317 << 3) | 0;
+             $186 = SAFE_HEAP_LOAD($185 | 0, 4, 0) | 0 | 0;
+             $187 = _strlen($186) | 0;
+             $188 = ($187 | 0) == ($184 | 0);
+             if ($188) {
+              $189 = _memcmp($186, $182, $184) | 0;
+              $190 = ($189 | 0) == 0;
+              if ($190) {
+               label = 97;
+               break;
+              }
+             }
+             $191 = $$02325$i317 + 1 | 0;
+             $cond$i318 = ($191 | 0) == 12;
+             if ($cond$i318) {
+              label = 98;
+              break;
+             } else {
+              $$02325$i317 = $191;
+             }
+            }
+            do {
+             if ((label | 0) == 97) {
+              $192 = (4248 + ($$02325$i317 << 3) | 0) + 4 | 0;
+              $193 = SAFE_HEAP_LOAD($192 | 0, 4, 0) | 0 | 0;
+              $$1$i319 = $193;
+             } else if ((label | 0) == 98) {
+              $194 = $184 + 1 | 0;
+              $195 = __gcry_malloc($194) | 0;
+              $196 = ($195 | 0) == (0 | 0);
+              if ($196) {
+               $197 = $2 + 16 | 0;
+               SAFE_HEAP_STORE($197 | 0, 0 | 0, 4);
+               $$10$ph = 5;
+               break L130;
+              } else {
+               _memcpy($195 | 0, $182 | 0, $184 | 0) | 0;
+               $198 = $195 + $184 | 0;
+               SAFE_HEAP_STORE($198 >> 0 | 0, 0 | 0, 1);
+               $199 = __gcry_md_map_name($195) | 0;
+               __gcry_free($195);
+               $$1$i319 = $199;
+               break;
+              }
+             }
+            } while (0);
+            $200 = $2 + 16 | 0;
+            SAFE_HEAP_STORE($200 | 0, $$1$i319 | 0, 4);
+            $201 = ($$1$i319 | 0) == 0;
+            if ($201) {
+             $$10$ph = 5;
+            } else {
+             __gcry_sexp_release($180);
+             break L128;
+            }
+           }
+          } while (0);
+          __gcry_sexp_release($180);
+          $$17$ph = $$10$ph;
+          break L126;
+         }
+        } while (0);
+        $202 = __gcry_sexp_find_token($12, 37547, 0) | 0;
+        $203 = ($202 | 0) == (0 | 0);
+        L147 : do {
+         if (!$203) {
+          $204 = __gcry_sexp_nth_data($202, 1, $3) | 0;
+          $205 = ($204 | 0) == (0 | 0);
+          if ($205) {
+           __gcry_sexp_release($202);
+           $$17$ph = 68;
+           break L126;
+          }
+          $206 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+          $207 = ($206 | 0) == 0;
+          do {
+           if (!$207) {
+            $208 = __gcry_malloc($206) | 0;
+            $209 = $2 + 20 | 0;
+            SAFE_HEAP_STORE($209 | 0, $208 | 0, 4);
+            $210 = ($208 | 0) == (0 | 0);
+            if ($210) {
+             $213 = _gpg_err_code_from_syserror() | 0;
+             __gcry_sexp_release($202);
+             $214 = ($213 | 0) == 0;
+             if ($214) {
+              break L147;
+             } else {
+              $$17$ph = $213;
+              break L126;
+             }
+            } else {
+             $211 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+             _memcpy($208 | 0, $204 | 0, $211 | 0) | 0;
+             $212 = $2 + 24 | 0;
+             SAFE_HEAP_STORE($212 | 0, $211 | 0, 4);
+             break;
+            }
+           }
+          } while (0);
+          __gcry_sexp_release($202);
+         }
+        } while (0);
+        $215 = __gcry_sexp_find_token($12, 37553, 0) | 0;
+        $216 = ($215 | 0) == (0 | 0);
+        L159 : do {
+         if ($216) {
+          $$1282 = 0;
+          $$1284 = 0;
+         } else {
+          $217 = __gcry_sexp_nth_data($215, 1, $3) | 0;
+          $218 = ($217 | 0) == (0 | 0);
+          if ($218) {
+           __gcry_sexp_release($215);
+           $$17$ph = 68;
+           break L126;
+          }
+          $219 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+          $220 = ($219 | 0) == 0;
+          do {
+           if ($220) {
+            $$0281$ph = 0;
+            $$0283$ph = 0;
+           } else {
+            $221 = __gcry_malloc($219) | 0;
+            $222 = ($221 | 0) == (0 | 0);
+            if ($222) {
+             $224 = _gpg_err_code_from_syserror() | 0;
+             __gcry_sexp_release($215);
+             $225 = ($224 | 0) == 0;
+             if ($225) {
+              $$1282 = 0;
+              $$1284 = 0;
+              break L159;
+             } else {
+              $$17$ph = $224;
+              break L126;
+             }
+            } else {
+             $223 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+             _memcpy($221 | 0, $217 | 0, $223 | 0) | 0;
+             $$0281$ph = $223;
+             $$0283$ph = $221;
+             break;
+            }
+           }
+          } while (0);
+          __gcry_sexp_release($215);
+          $$1282 = $$0281$ph;
+          $$1284 = $$0283$ph;
+         }
+        } while (0);
+        $226 = $2 + 4 | 0;
+        $227 = SAFE_HEAP_LOAD($226 | 0, 4, 0) | 0 | 0;
+        $228 = $2 + 16 | 0;
+        $229 = SAFE_HEAP_LOAD($228 | 0, 4, 0) | 0 | 0;
+        $230 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+        $231 = $2 + 20 | 0;
+        $232 = SAFE_HEAP_LOAD($231 | 0, 4, 0) | 0 | 0;
+        $233 = $2 + 24 | 0;
+        $234 = SAFE_HEAP_LOAD($233 | 0, 4, 0) | 0 | 0;
+        $235 = __gcry_rsa_oaep_encode($1, $227, $229, $176, $230, $232, $234, 
$$1284, $$1282) | 0;
+        __gcry_free($$1284);
+        $$17$ph = $235;
+       } else {
+        $$17$ph = 65;
+       }
+      } while (0);
+      $$23 = $$17$ph;
+      $321 = $54;
+      break;
+     }
+    }
+    $236 = ($27 | 0) == 4;
+    $or$cond26 = $23 & $236;
+    if ($or$cond26) {
+     $237 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $238 = ($237 | 0) == 2;
+     if (!$238) {
+      $291 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+      $292 = ($291 | 0) == 3;
+      if (!$292) {
+       $$23 = 70;
+       $321 = $54;
+       break;
+      }
+      $293 = __gcry_sexp_length($22) | 0;
+      $294 = ($293 | 0) == 3;
+      if (!$294) {
+       $$23 = 65;
+       $321 = $54;
+       break;
+      }
+      $295 = __gcry_sexp_nth_data($22, 1, $3) | 0;
+      $296 = ($295 | 0) != (0 | 0);
+      $297 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+      $298 = ($297 | 0) != 0;
+      $or$cond34 = $296 & $298;
+      if ($or$cond34) {
+       $$02325$i325 = 0;
+      } else {
+       $$23 = 65;
+       $321 = $54;
+       break;
+      }
+      while (1) {
+       $299 = 4248 + ($$02325$i325 << 3) | 0;
+       $300 = SAFE_HEAP_LOAD($299 | 0, 4, 0) | 0 | 0;
+       $301 = _strlen($300) | 0;
+       $302 = ($301 | 0) == ($297 | 0);
+       if ($302) {
+        $303 = _memcmp($300, $295, $297) | 0;
+        $304 = ($303 | 0) == 0;
+        if ($304) {
+         label = 155;
+         break;
+        }
+       }
+       $305 = $$02325$i325 + 1 | 0;
+       $cond$i326 = ($305 | 0) == 12;
+       if ($cond$i326) {
+        label = 156;
+        break;
+       } else {
+        $$02325$i325 = $305;
+       }
+      }
+      do {
+       if ((label | 0) == 155) {
+        $306 = (4248 + ($$02325$i325 << 3) | 0) + 4 | 0;
+        $307 = SAFE_HEAP_LOAD($306 | 0, 4, 0) | 0 | 0;
+        $$1$i327 = $307;
+       } else if ((label | 0) == 156) {
+        $308 = $297 + 1 | 0;
+        $309 = __gcry_malloc($308) | 0;
+        $310 = ($309 | 0) == (0 | 0);
+        if ($310) {
+         $311 = $2 + 16 | 0;
+         SAFE_HEAP_STORE($311 | 0, 0 | 0, 4);
+         $$23 = 5;
+         $321 = $54;
+         break L13;
+        } else {
+         _memcpy($309 | 0, $295 | 0, $297 | 0) | 0;
+         $312 = $309 + $297 | 0;
+         SAFE_HEAP_STORE($312 >> 0 | 0, 0 | 0, 1);
+         $313 = __gcry_md_map_name($309) | 0;
+         __gcry_free($309);
+         $$1$i327 = $313;
+         break;
+        }
+       }
+      } while (0);
+      $314 = $2 + 16 | 0;
+      SAFE_HEAP_STORE($314 | 0, $$1$i327 | 0, 4);
+      $315 = ($$1$i327 | 0) == 0;
+      if ($315) {
+       $$23 = 5;
+       $321 = $54;
+       break;
+      }
+      $316 = __gcry_sexp_nth_mpi($22, 2, 5) | 0;
+      SAFE_HEAP_STORE($1 | 0, $316 | 0, 4);
+      $317 = ($316 | 0) == (0 | 0);
+      $318 = $2 + 32 | 0;
+      SAFE_HEAP_STORE($318 | 0, 67 | 0, 4);
+      $319 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+      $320 = $2 + 36 | 0;
+      SAFE_HEAP_STORE($320 | 0, $319 | 0, 4);
+      $$392 = $317 ? 65 : 0;
+      $$23 = $$392;
+      $321 = $54;
+      break;
+     }
+     $239 = __gcry_sexp_length($22) | 0;
+     $240 = ($239 | 0) == 3;
+     if ($240) {
+      $241 = __gcry_sexp_nth_data($22, 1, $3) | 0;
+      $242 = ($241 | 0) != (0 | 0);
+      $243 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+      $244 = ($243 | 0) != 0;
+      $or$cond28 = $242 & $244;
+      if ($or$cond28) {
+       $$02325$i321 = 0;
+       while (1) {
+        $245 = 4248 + ($$02325$i321 << 3) | 0;
+        $246 = SAFE_HEAP_LOAD($245 | 0, 4, 0) | 0 | 0;
+        $247 = _strlen($246) | 0;
+        $248 = ($247 | 0) == ($243 | 0);
+        if ($248) {
+         $249 = _memcmp($246, $241, $243) | 0;
+         $250 = ($249 | 0) == 0;
+         if ($250) {
+          label = 130;
+          break;
+         }
+        }
+        $251 = $$02325$i321 + 1 | 0;
+        $cond$i322 = ($251 | 0) == 12;
+        if ($cond$i322) {
+         label = 131;
+         break;
+        } else {
+         $$02325$i321 = $251;
+        }
+       }
+       do {
+        if ((label | 0) == 130) {
+         $252 = (4248 + ($$02325$i321 << 3) | 0) + 4 | 0;
+         $253 = SAFE_HEAP_LOAD($252 | 0, 4, 0) | 0 | 0;
+         $$1$i323 = $253;
+         label = 134;
+        } else if ((label | 0) == 131) {
+         $254 = $243 + 1 | 0;
+         $255 = __gcry_malloc($254) | 0;
+         $256 = ($255 | 0) == (0 | 0);
+         if ($256) {
+          $257 = $2 + 16 | 0;
+          SAFE_HEAP_STORE($257 | 0, 0 | 0, 4);
+          $$21$ph = 5;
+          break;
+         } else {
+          _memcpy($255 | 0, $241 | 0, $243 | 0) | 0;
+          $258 = $255 + $243 | 0;
+          SAFE_HEAP_STORE($258 >> 0 | 0, 0 | 0, 1);
+          $259 = __gcry_md_map_name($255) | 0;
+          __gcry_free($255);
+          $$1$i323 = $259;
+          label = 134;
+          break;
+         }
+        }
+       } while (0);
+       L205 : do {
+        if ((label | 0) == 134) {
+         $260 = $2 + 16 | 0;
+         SAFE_HEAP_STORE($260 | 0, $$1$i323 | 0, 4);
+         $261 = ($$1$i323 | 0) == 0;
+         if ($261) {
+          $$21$ph = 5;
+         } else {
+          $262 = __gcry_sexp_nth_data($22, 2, $11) | 0;
+          $263 = ($262 | 0) != (0 | 0);
+          $264 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+          $265 = ($264 | 0) != 0;
+          $or$cond30 = $263 & $265;
+          if ($or$cond30) {
+           $266 = __gcry_sexp_find_token($12, 37653, 0) | 0;
+           $267 = ($266 | 0) == (0 | 0);
+           if (!$267) {
+            $268 = __gcry_sexp_nth_data($266, 1, $3) | 0;
+            $269 = ($268 | 0) == (0 | 0);
+            if ($269) {
+             $$21$ph = 68;
+             break;
+            }
+            $270 = _strtoul($268, 0, 10) | 0;
+            $271 = $2 + 28 | 0;
+            SAFE_HEAP_STORE($271 | 0, $270 | 0, 4);
+            __gcry_sexp_release($266);
+           }
+           $272 = __gcry_sexp_find_token($12, 37553, 0) | 0;
+           $273 = ($272 | 0) == (0 | 0);
+           L213 : do {
+            if ($273) {
+             $$1 = 0;
+             $$1279 = 0;
+            } else {
+             $274 = __gcry_sexp_nth_data($272, 1, $3) | 0;
+             $275 = ($274 | 0) == (0 | 0);
+             if ($275) {
+              __gcry_sexp_release($272);
+              $$21$ph = 68;
+              break L205;
+             }
+             $276 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+             $277 = ($276 | 0) == 0;
+             do {
+              if ($277) {
+               $$0$ph = 0;
+               $$0278$ph = 0;
+              } else {
+               $278 = __gcry_malloc($276) | 0;
+               $279 = ($278 | 0) == (0 | 0);
+               if ($279) {
+                $281 = _gpg_err_code_from_syserror() | 0;
+                __gcry_sexp_release($272);
+                $282 = ($281 | 0) == 0;
+                if ($282) {
+                 $$1 = 0;
+                 $$1279 = 0;
+                 break L213;
+                } else {
+                 $$21$ph = $281;
+                 break L205;
+                }
+               } else {
+                $280 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+                _memcpy($278 | 0, $274 | 0, $280 | 0) | 0;
+                $$0$ph = $280;
+                $$0278$ph = $278;
+                break;
+               }
+              }
+             } while (0);
+             __gcry_sexp_release($272);
+             $$1 = $$0$ph;
+             $$1279 = $$0278$ph;
+            }
+           } while (0);
+           $283 = $2 + 4 | 0;
+           $284 = SAFE_HEAP_LOAD($283 | 0, 4, 0) | 0 | 0;
+           $285 = $284 + -1 | 0;
+           $286 = SAFE_HEAP_LOAD($260 | 0, 4, 0) | 0 | 0;
+           $287 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+           $288 = $2 + 28 | 0;
+           $289 = SAFE_HEAP_LOAD($288 | 0, 4, 0) | 0 | 0;
+           $290 = __gcry_rsa_pss_encode($1, $285, $286, $262, $287, $289, 
$$1279, $$1) | 0;
+           __gcry_free($$1279);
+           $$21$ph = $290;
+          } else {
+           $$21$ph = 65;
+          }
+         }
+        }
+       } while (0);
+       $$23 = $$21$ph;
+       $321 = $54;
+      } else {
+       $$23 = 65;
+       $321 = $54;
+      }
+     } else {
+      $$23 = 65;
+      $321 = $54;
+     }
+    } else {
+     $$23 = 70;
+     $321 = $54;
+    }
+   } else {
+    $$23 = 72;
+    $321 = $54;
+   }
+  }
+ } while (0);
+ __gcry_sexp_release($12);
+ __gcry_sexp_release($22);
+ __gcry_sexp_release($321);
+ $322 = ($$23 | 0) == 0;
+ if ($322) {
+  $323 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $324 = $2 + 12 | 0;
+  SAFE_HEAP_STORE($324 | 0, $323 | 0, 4);
+  $$0280 = 0;
+  STACKTOP = sp;
+  return $$0280 | 0;
+ } else {
+  $325 = $2 + 20 | 0;
+  $326 = SAFE_HEAP_LOAD($325 | 0, 4, 0) | 0 | 0;
+  __gcry_free($326);
+  SAFE_HEAP_STORE($325 | 0, 0 | 0, 4);
+  $$0280 = $$23;
+  STACKTOP = sp;
+  return $$0280 | 0;
+ }
+ return 0 | 0;
+}
+
+function __gcry_vcontrol($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$ = 0, $$0$i = 0, $$03536$i = 0, $$105 = 0, $$106 = 0, $$107 = 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;
+ 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, $2 = 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, $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, $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;
+ var $arglist_current74 = 0, $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;
+ var $arglist_next6 = 0, $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;
+ var $expanded119 = 0, $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;
+ var $expanded147 = 0, $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;
+ var $expanded175 = 0, $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;
+ var $expanded203 = 0, $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;
+ var $expanded231 = 0, $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;
+ var $expanded259 = 0, $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, $not$ = 0, $not$113 = 0, $not$117 = 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;
+    $not$117 = ($3 | 0) != 0;
+    $$ = $not$117 & 1;
+    $$2 = $$;
+    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();
+    SAFE_HEAP_STORE(17583 * 4 | 0, 1 | 0, 4);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 24:
+   {
+    _global_init();
+    $arglist_current = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $4 = $arglist_current;
+    $5 = 0 + 4 | 0;
+    $expanded112 = $5;
+    $expanded = $expanded112 - 1 | 0;
+    $6 = $4 + $expanded | 0;
+    $7 = 0 + 4 | 0;
+    $expanded116 = $7;
+    $expanded115 = $expanded116 - 1 | 0;
+    $expanded114 = $expanded115 ^ -1;
+    $8 = $6 & $expanded114;
+    $9 = $8;
+    $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    $arglist_next = $9 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next | 0, 4);
+    __gcry_secmem_init($10);
+    $11 = __gcry_secmem_get_flags() | 0;
+    $12 = $11 >>> 2;
+    $$lobit = $12 & 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);
+    $13 = __gcry_secmem_get_flags() | 0;
+    $14 = $13 | 1;
+    __gcry_secmem_set_flags($14);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 28:
+   {
+    __gcry_set_preferred_rng_type(0);
+    $15 = __gcry_secmem_get_flags() | 0;
+    $16 = $15 | 2;
+    __gcry_secmem_set_flags($16);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 29:
+   {
+    __gcry_set_preferred_rng_type(0);
+    $17 = __gcry_secmem_get_flags() | 0;
+    $18 = $17 & -3;
+    __gcry_secmem_set_flags($18);
+    $$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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $19 = $arglist_current2;
+    $20 = 0 + 4 | 0;
+    $expanded119 = $20;
+    $expanded118 = $expanded119 - 1 | 0;
+    $21 = $19 + $expanded118 | 0;
+    $22 = 0 + 4 | 0;
+    $expanded123 = $22;
+    $expanded122 = $expanded123 - 1 | 0;
+    $expanded121 = $expanded122 ^ -1;
+    $23 = $21 & $expanded121;
+    $24 = $23;
+    $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+    $arglist_next3 = $24 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next3 | 0, 4);
+    __gcry_set_random_seed_file($25);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 46:
+   {
+    __gcry_set_preferred_rng_type(0);
+    $26 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+    $27 = ($26 | 0) == 0;
+    if ($27) {
+     _global_init();
+    }
+    $28 = __gcry_fips_is_operational() | 0;
+    $29 = ($28 | 0) == 0;
+    if ($29) {
+     $$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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $30 = $arglist_current5;
+    $31 = 0 + 4 | 0;
+    $expanded126 = $31;
+    $expanded125 = $expanded126 - 1 | 0;
+    $32 = $30 + $expanded125 | 0;
+    $33 = 0 + 4 | 0;
+    $expanded130 = $33;
+    $expanded129 = $expanded130 - 1 | 0;
+    $expanded128 = $expanded129 ^ -1;
+    $34 = $32 & $expanded128;
+    $35 = $34;
+    $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+    $arglist_next6 = $35 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next6 | 0, 4);
+    __gcry_set_log_verbosity($36);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 20:
+   {
+    $arglist_current8 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $37 = $arglist_current8;
+    $38 = 0 + 4 | 0;
+    $expanded133 = $38;
+    $expanded132 = $expanded133 - 1 | 0;
+    $39 = $37 + $expanded132 | 0;
+    $40 = 0 + 4 | 0;
+    $expanded137 = $40;
+    $expanded136 = $expanded137 - 1 | 0;
+    $expanded135 = $expanded136 ^ -1;
+    $41 = $39 & $expanded135;
+    $42 = $41;
+    $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+    $arglist_next9 = $42 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next9 | 0, 4);
+    $44 = SAFE_HEAP_LOAD(17584 * 4 | 0, 4, 0) | 0 | 0;
+    $45 = $44 | $43;
+    SAFE_HEAP_STORE(17584 * 4 | 0, $45 | 0, 4);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 21:
+   {
+    $arglist_current11 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $46 = $arglist_current11;
+    $47 = 0 + 4 | 0;
+    $expanded140 = $47;
+    $expanded139 = $expanded140 - 1 | 0;
+    $48 = $46 + $expanded139 | 0;
+    $49 = 0 + 4 | 0;
+    $expanded144 = $49;
+    $expanded143 = $expanded144 - 1 | 0;
+    $expanded142 = $expanded143 ^ -1;
+    $50 = $48 & $expanded142;
+    $51 = $50;
+    $52 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+    $arglist_next12 = $51 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next12 | 0, 4);
+    $53 = $52 ^ -1;
+    $54 = SAFE_HEAP_LOAD(17584 * 4 | 0, 4, 0) | 0 | 0;
+    $55 = $54 & $53;
+    SAFE_HEAP_STORE(17584 * 4 | 0, $55 | 0, 4);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 36:
+   {
+    _global_init();
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 40:
+   {
+    $56 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+    $$2 = $56;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 39:
+   {
+    $57 = SAFE_HEAP_LOAD(17585 * 4 | 0, 4, 0) | 0 | 0;
+    $$2 = $57;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 38:
+   {
+    $58 = SAFE_HEAP_LOAD(17585 * 4 | 0, 4, 0) | 0 | 0;
+    $59 = ($58 | 0) == 0;
+    if (!$59) {
+     $$2 = 0;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+    _global_init();
+    __gcry_random_initialize(0);
+    SAFE_HEAP_STORE(17585 * 4 | 0, 1 | 0, 4);
+    $60 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+    $61 = ($60 | 0) == 0;
+    if ($61) {
+     _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);
+    $62 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+    $63 = ($62 | 0) == 0;
+    if ($63) {
+     _global_init();
+    }
+    $64 = __gcry_fips_is_operational() | 0;
+    $65 = ($64 | 0) == 0;
+    if ($65) {
+     $$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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $66 = $arglist_current14;
+    $67 = 0 + 4 | 0;
+    $expanded147 = $67;
+    $expanded146 = $expanded147 - 1 | 0;
+    $68 = $66 + $expanded146 | 0;
+    $69 = 0 + 4 | 0;
+    $expanded151 = $69;
+    $expanded150 = $expanded151 - 1 | 0;
+    $expanded149 = $expanded150 ^ -1;
+    $70 = $68 & $expanded149;
+    $71 = $70;
+    $72 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+    $arglist_next15 = $71 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next15 | 0, 4);
+    __gcry_set_random_daemon_socket($72);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 50:
+   {
+    __gcry_set_preferred_rng_type(0);
+    __gcry_random_initialize(1);
+    $arglist_current17 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $73 = $arglist_current17;
+    $74 = 0 + 4 | 0;
+    $expanded154 = $74;
+    $expanded153 = $expanded154 - 1 | 0;
+    $75 = $73 + $expanded153 | 0;
+    $76 = 0 + 4 | 0;
+    $expanded158 = $76;
+    $expanded157 = $expanded158 - 1 | 0;
+    $expanded156 = $expanded157 ^ -1;
+    $77 = $75 & $expanded156;
+    $78 = $77;
+    $79 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+    $arglist_next18 = $78 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next18 | 0, 4);
+    $80 = ($79 | 0) != 0;
+    $81 = $80 & 1;
+    __gcry_use_random_daemon($81) | 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $82 = $arglist_current20;
+    $83 = 0 + 4 | 0;
+    $expanded161 = $83;
+    $expanded160 = $expanded161 - 1 | 0;
+    $84 = $82 + $expanded160 | 0;
+    $85 = 0 + 4 | 0;
+    $expanded165 = $85;
+    $expanded164 = $expanded165 - 1 | 0;
+    $expanded163 = $expanded164 ^ -1;
+    $86 = $84 & $expanded163;
+    $87 = $86;
+    $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+    $arglist_next21 = $87 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next21 | 0, 4);
+    __gcry_set_preferred_rng_type(0);
+    $89 = ($88 | 0) != (0 | 0);
+    $90 = $89 ? 55 : 54;
+    SAFE_HEAP_STORE($vararg_buffer | 0, 22224 | 0, 4);
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22238, $vararg_buffer) | 0;
+    SAFE_HEAP_STORE($vararg_buffer22 | 0, 22264 | 0, 4);
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22251, $vararg_buffer22) | 0;
+    SAFE_HEAP_STORE($vararg_buffer26 | 0, 22289 | 0, 4);
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22276, $vararg_buffer26) | 0;
+    SAFE_HEAP_STORE($vararg_buffer30 | 0, 22310 | 0, 4);
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22297, $vararg_buffer30) | 0;
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22324, $vararg_buffer34) | 0;
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22340, $vararg_buffer37) | 0;
+    $91 = __gcry_mpi_get_hw_config() | 0;
+    SAFE_HEAP_STORE($vararg_buffer40 | 0, $91 | 0, 4);
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22352, $vararg_buffer40) | 0;
+    $92 = __gcry_get_hw_features() | 0;
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22365, $vararg_buffer44) | 0;
+    $93 = __gcry_enum_hw_features(0, $2) | 0;
+    $94 = ($93 | 0) == (0 | 0);
+    if (!$94) {
+     $$03536$i = 0;
+     $98 = $93;
+     while (1) {
+      $95 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+      $96 = $95 & $92;
+      $97 = ($96 | 0) == 0;
+      if (!$97) {
+       SAFE_HEAP_STORE($vararg_buffer47 | 0, $98 | 0, 4);
+       FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22374, $vararg_buffer47) | 0;
+      }
+      $99 = $$03536$i + 1 | 0;
+      $100 = __gcry_enum_hw_features($99, $2) | 0;
+      $101 = ($100 | 0) == (0 | 0);
+      if ($101) {
+       break;
+      } else {
+       $$03536$i = $99;
+       $98 = $100;
+      }
+     }
+    }
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22378, $vararg_buffer51) | 0;
+    $102 = __gcry_fips_mode() | 0;
+    $103 = ($102 | 0) != 0;
+    $104 = $103 ? 121 : 110;
+    $105 = __gcry_enforced_fips_mode() | 0;
+    $106 = ($105 | 0) != 0;
+    $107 = $106 ? 121 : 110;
+    SAFE_HEAP_STORE($vararg_buffer54 | 0, $104 | 0, 4);
+    $vararg_ptr57 = $vararg_buffer54 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr57 | 0, $107 | 0, 4);
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22380, $vararg_buffer54) | 0;
+    $108 = __gcry_get_rng_type(0) | 0;
+    switch ($108 | 0) {
+    case 1:
+     {
+      $$0$i = 22423;
+      break;
+     }
+    case 2:
+     {
+      $$0$i = 22418;
+      break;
+     }
+    case 3:
+     {
+      $$0$i = 22411;
+      break;
+     }
+    default:
+     {
+      __gcry_bug(22203, 321, 22398);
+     }
+    }
+    SAFE_HEAP_STORE($vararg_buffer59 | 0, $$0$i | 0, 4);
+    $vararg_ptr62 = $vararg_buffer59 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr62 | 0, $108 | 0, 4);
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($90 | 0, 127 | 0) | 0) & 127]($88, 
22432, $vararg_buffer59) | 0;
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 54:
+   {
+    __gcry_set_preferred_rng_type(0);
+    $109 = __gcry_fips_test_operational() | 0;
+    $not$113 = ($109 | 0) != 0;
+    $$105 = $not$113 & 1;
+    $$2 = $$105;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 55:
+   {
+    $110 = __gcry_fips_mode() | 0;
+    $111 = ($110 | 0) == 0;
+    if ($111) {
+     $$2 = 0;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+    $112 = __gcry_is_fips_mode_inactive() | 0;
+    $113 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+    $114 = $113 | $112;
+    $115 = ($114 | 0) == 0;
+    $$106 = $115 & 1;
+    $$2 = $$106;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 56:
+   {
+    __gcry_set_preferred_rng_type(0);
+    $116 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+    $117 = ($116 | 0) == 0;
+    if ($117) {
+     SAFE_HEAP_STORE(17582 * 4 | 0, 1 | 0, 4);
+     $$2 = 0;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+    $118 = __gcry_fips_test_error_or_operational() | 0;
+    $119 = ($118 | 0) == 0;
+    if ($119) {
+     $120 = __gcry_fips_is_operational() | 0;
+     $not$ = ($120 | 0) != 0;
+     $$107 = $not$ & 1;
+     STACKTOP = sp;
+     return $$107 | 0;
+    }
+    __gcry_fips_run_selftests(1) | 0;
+    $120 = __gcry_fips_is_operational() | 0;
+    $not$ = ($120 | 0) != 0;
+    $$107 = $not$ & 1;
+    STACKTOP = sp;
+    return $$107 | 0;
+    break;
+   }
+  case 57:
+   {
+    _global_init();
+    $121 = __gcry_fips_run_selftests(1) | 0;
+    $$2 = $121;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 58:
+   {
+    $arglist_current65 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $122 = $arglist_current65;
+    $123 = 0 + 4 | 0;
+    $expanded168 = $123;
+    $expanded167 = $expanded168 - 1 | 0;
+    $124 = $122 + $expanded167 | 0;
+    $125 = 0 + 4 | 0;
+    $expanded172 = $125;
+    $expanded171 = $expanded172 - 1 | 0;
+    $expanded170 = $expanded171 ^ -1;
+    $126 = $124 & $expanded170;
+    $127 = $126;
+    $128 = SAFE_HEAP_LOAD($127 | 0, 4, 0) | 0 | 0;
+    $arglist_next66 = $127 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next66 | 0, 4);
+    $arglist_current68 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $129 = $arglist_current68;
+    $130 = 0 + 4 | 0;
+    $expanded175 = $130;
+    $expanded174 = $expanded175 - 1 | 0;
+    $131 = $129 + $expanded174 | 0;
+    $132 = 0 + 4 | 0;
+    $expanded179 = $132;
+    $expanded178 = $expanded179 - 1 | 0;
+    $expanded177 = $expanded178 ^ -1;
+    $133 = $131 & $expanded177;
+    $134 = $133;
+    $135 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 0;
+    $arglist_next69 = $134 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next69 | 0, 4);
+    $arglist_current71 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $136 = $arglist_current71;
+    $137 = 0 + 4 | 0;
+    $expanded182 = $137;
+    $expanded181 = $expanded182 - 1 | 0;
+    $138 = $136 + $expanded181 | 0;
+    $139 = 0 + 4 | 0;
+    $expanded186 = $139;
+    $expanded185 = $expanded186 - 1 | 0;
+    $expanded184 = $expanded185 ^ -1;
+    $140 = $138 & $expanded184;
+    $141 = $140;
+    $142 = SAFE_HEAP_LOAD($141 | 0, 4, 0) | 0 | 0;
+    $arglist_next72 = $141 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next72 | 0, 4);
+    $arglist_current74 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $143 = $arglist_current74;
+    $144 = 0 + 4 | 0;
+    $expanded189 = $144;
+    $expanded188 = $expanded189 - 1 | 0;
+    $145 = $143 + $expanded188 | 0;
+    $146 = 0 + 4 | 0;
+    $expanded193 = $146;
+    $expanded192 = $expanded193 - 1 | 0;
+    $expanded191 = $expanded192 ^ -1;
+    $147 = $145 & $expanded191;
+    $148 = $147;
+    $149 = SAFE_HEAP_LOAD($148 | 0, 4, 0) | 0 | 0;
+    $arglist_next75 = $148 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next75 | 0, 4);
+    $arglist_current77 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $150 = $arglist_current77;
+    $151 = 0 + 4 | 0;
+    $expanded196 = $151;
+    $expanded195 = $expanded196 - 1 | 0;
+    $152 = $150 + $expanded195 | 0;
+    $153 = 0 + 4 | 0;
+    $expanded200 = $153;
+    $expanded199 = $expanded200 - 1 | 0;
+    $expanded198 = $expanded199 ^ -1;
+    $154 = $152 & $expanded198;
+    $155 = $154;
+    $156 = SAFE_HEAP_LOAD($155 | 0, 4, 0) | 0 | 0;
+    $arglist_next78 = $155 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next78 | 0, 4);
+    $arglist_current80 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $157 = $arglist_current80;
+    $158 = 0 + 4 | 0;
+    $expanded203 = $158;
+    $expanded202 = $expanded203 - 1 | 0;
+    $159 = $157 + $expanded202 | 0;
+    $160 = 0 + 4 | 0;
+    $expanded207 = $160;
+    $expanded206 = $expanded207 - 1 | 0;
+    $expanded205 = $expanded206 ^ -1;
+    $161 = $159 & $expanded205;
+    $162 = $161;
+    $163 = SAFE_HEAP_LOAD($162 | 0, 4, 0) | 0 | 0;
+    $arglist_next81 = $162 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next81 | 0, 4);
+    $arglist_current83 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $164 = $arglist_current83;
+    $165 = 0 + 4 | 0;
+    $expanded210 = $165;
+    $expanded209 = $expanded210 - 1 | 0;
+    $166 = $164 + $expanded209 | 0;
+    $167 = 0 + 4 | 0;
+    $expanded214 = $167;
+    $expanded213 = $expanded214 - 1 | 0;
+    $expanded212 = $expanded213 ^ -1;
+    $168 = $166 & $expanded212;
+    $169 = $168;
+    $170 = SAFE_HEAP_LOAD($169 | 0, 4, 0) | 0 | 0;
+    $arglist_next84 = $169 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next84 | 0, 4);
+    $arglist_current86 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $171 = $arglist_current86;
+    $172 = 0 + 4 | 0;
+    $expanded217 = $172;
+    $expanded216 = $expanded217 - 1 | 0;
+    $173 = $171 + $expanded216 | 0;
+    $174 = 0 + 4 | 0;
+    $expanded221 = $174;
+    $expanded220 = $expanded221 - 1 | 0;
+    $expanded219 = $expanded220 ^ -1;
+    $175 = $173 & $expanded219;
+    $176 = $175;
+    $177 = SAFE_HEAP_LOAD($176 | 0, 4, 0) | 0 | 0;
+    $arglist_next87 = $176 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next87 | 0, 4);
+    $178 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+    $179 = ($178 | 0) == 0;
+    if ($179) {
+     _global_init();
+    }
+    $180 = __gcry_fips_is_operational() | 0;
+    $181 = ($180 | 0) == 0;
+    if ($181) {
+     $$2 = 176;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+    $182 = __gcry_random_init_external_test($128, $135, $142, $149, $156, 
$163, $170, $177) | 0;
+    $$2 = $182;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 59:
+   {
+    $arglist_current89 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $183 = $arglist_current89;
+    $184 = 0 + 4 | 0;
+    $expanded224 = $184;
+    $expanded223 = $expanded224 - 1 | 0;
+    $185 = $183 + $expanded223 | 0;
+    $186 = 0 + 4 | 0;
+    $expanded228 = $186;
+    $expanded227 = $expanded228 - 1 | 0;
+    $expanded226 = $expanded227 ^ -1;
+    $187 = $185 & $expanded226;
+    $188 = $187;
+    $189 = SAFE_HEAP_LOAD($188 | 0, 4, 0) | 0 | 0;
+    $arglist_next90 = $188 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next90 | 0, 4);
+    $arglist_current92 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $190 = $arglist_current92;
+    $191 = 0 + 4 | 0;
+    $expanded231 = $191;
+    $expanded230 = $expanded231 - 1 | 0;
+    $192 = $190 + $expanded230 | 0;
+    $193 = 0 + 4 | 0;
+    $expanded235 = $193;
+    $expanded234 = $expanded235 - 1 | 0;
+    $expanded233 = $expanded234 ^ -1;
+    $194 = $192 & $expanded233;
+    $195 = $194;
+    $196 = SAFE_HEAP_LOAD($195 | 0, 4, 0) | 0 | 0;
+    $arglist_next93 = $195 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next93 | 0, 4);
+    $arglist_current95 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $197 = $arglist_current95;
+    $198 = 0 + 4 | 0;
+    $expanded238 = $198;
+    $expanded237 = $expanded238 - 1 | 0;
+    $199 = $197 + $expanded237 | 0;
+    $200 = 0 + 4 | 0;
+    $expanded242 = $200;
+    $expanded241 = $expanded242 - 1 | 0;
+    $expanded240 = $expanded241 ^ -1;
+    $201 = $199 & $expanded240;
+    $202 = $201;
+    $203 = SAFE_HEAP_LOAD($202 | 0, 4, 0) | 0 | 0;
+    $arglist_next96 = $202 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next96 | 0, 4);
+    $204 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+    $205 = ($204 | 0) == 0;
+    if ($205) {
+     _global_init();
+    }
+    $206 = __gcry_fips_is_operational() | 0;
+    $207 = ($206 | 0) == 0;
+    if ($207) {
+     $$2 = 176;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+    $208 = __gcry_random_run_external_test($189, $196, $203) | 0;
+    $$2 = $208;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 60:
+   {
+    $arglist_current98 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $209 = $arglist_current98;
+    $210 = 0 + 4 | 0;
+    $expanded245 = $210;
+    $expanded244 = $expanded245 - 1 | 0;
+    $211 = $209 + $expanded244 | 0;
+    $212 = 0 + 4 | 0;
+    $expanded249 = $212;
+    $expanded248 = $expanded249 - 1 | 0;
+    $expanded247 = $expanded248 ^ -1;
+    $213 = $211 & $expanded247;
+    $214 = $213;
+    $215 = SAFE_HEAP_LOAD($214 | 0, 4, 0) | 0 | 0;
+    $arglist_next99 = $214 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next99 | 0, 4);
+    __gcry_random_deinit_external_test($215);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 61:
+   {
+    $arglist_current101 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $216 = $arglist_current101;
+    $217 = 0 + 4 | 0;
+    $expanded252 = $217;
+    $expanded251 = $expanded252 - 1 | 0;
+    $218 = $216 + $expanded251 | 0;
+    $219 = 0 + 4 | 0;
+    $expanded256 = $219;
+    $expanded255 = $expanded256 - 1 | 0;
+    $expanded254 = $expanded255 ^ -1;
+    $220 = $218 & $expanded254;
+    $221 = $220;
+    $222 = SAFE_HEAP_LOAD($221 | 0, 4, 0) | 0 | 0;
+    $arglist_next102 = $221 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next102 | 0, 4);
+    switch ($222 | 0) {
+    case 30111:
+     {
+      $223 = _gpgrt_lock_init(1120) | 0;
+      $$2 = $223;
+      STACKTOP = sp;
+      return $$2 | 0;
+      break;
+     }
+    case 30112:
+     {
+      $224 = _gpgrt_lock_lock(1120) | 0;
+      $$2 = $224;
+      STACKTOP = sp;
+      return $$2 | 0;
+      break;
+     }
+    case 30113:
+     {
+      $225 = _gpgrt_lock_unlock(1120) | 0;
+      $$2 = $225;
+      STACKTOP = sp;
+      return $$2 | 0;
+      break;
+     }
+    case 30114:
+     {
+      $226 = _gpgrt_lock_destroy(1120) | 0;
+      $$2 = $226;
+      STACKTOP = sp;
+      return $$2 | 0;
+      break;
+     }
+    default:
+     {
+      $$2 = 61;
+      STACKTOP = sp;
+      return $$2 | 0;
+     }
+    }
+    break;
+   }
+  case 63:
+   {
+    $arglist_current104 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $227 = $arglist_current104;
+    $228 = 0 + 4 | 0;
+    $expanded259 = $228;
+    $expanded258 = $expanded259 - 1 | 0;
+    $229 = $227 + $expanded258 | 0;
+    $230 = 0 + 4 | 0;
+    $expanded263 = $230;
+    $expanded262 = $expanded263 - 1 | 0;
+    $expanded261 = $expanded262 ^ -1;
+    $231 = $229 & $expanded261;
+    $232 = $231;
+    $233 = SAFE_HEAP_LOAD($232 | 0, 4, 0) | 0 | 0;
+    $arglist_next105 = $232 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next105 | 0, 4);
+    $234 = __gcry_disable_hw_feature($233) | 0;
+    $$2 = $234;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 64:
+   {
+    $235 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+    $236 = ($235 | 0) == 0;
+    if (!$236) {
+     $$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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $237 = $arglist_current107;
+    $238 = 0 + 4 | 0;
+    $expanded266 = $238;
+    $expanded265 = $expanded266 - 1 | 0;
+    $239 = $237 + $expanded265 | 0;
+    $240 = 0 + 4 | 0;
+    $expanded270 = $240;
+    $expanded269 = $expanded270 - 1 | 0;
+    $expanded268 = $expanded269 ^ -1;
+    $241 = $239 & $expanded268;
+    $242 = $241;
+    $243 = SAFE_HEAP_LOAD($242 | 0, 4, 0) | 0 | 0;
+    $arglist_next108 = $242 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next108 | 0, 4);
+    $244 = ($243 | 0) > 0;
+    if (!$244) {
+     $$2 = 0;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+    __gcry_set_preferred_rng_type($243);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 66:
+   {
+    $arglist_current110 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $245 = $arglist_current110;
+    $246 = 0 + 4 | 0;
+    $expanded273 = $246;
+    $expanded272 = $expanded273 - 1 | 0;
+    $247 = $245 + $expanded272 | 0;
+    $248 = 0 + 4 | 0;
+    $expanded277 = $248;
+    $expanded276 = $expanded277 - 1 | 0;
+    $expanded275 = $expanded276 ^ -1;
+    $249 = $247 & $expanded275;
+    $250 = $249;
+    $251 = SAFE_HEAP_LOAD($250 | 0, 4, 0) | 0 | 0;
+    $arglist_next111 = $250 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $arglist_next111 | 0, 4);
+    $252 = ($251 | 0) == (0 | 0);
+    if ($252) {
+     $$2 = 0;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+    $253 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+    $254 = $253 ^ 1;
+    $255 = __gcry_get_rng_type($254) | 0;
+    SAFE_HEAP_STORE($251 | 0, $255 | 0, 4);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 67:
+   {
+    __gcry_set_preferred_rng_type(0);
+    $256 = __gcry_secmem_get_flags() | 0;
+    $257 = $256 | 8;
+    __gcry_secmem_set_flags($257);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+    break;
+   }
+  case 68:
+   {
+    __gcry_set_preferred_rng_type(0);
+    $258 = __gcry_secmem_get_flags() | 0;
+    $259 = $258 | 16;
+    __gcry_secmem_set_flags($259);
+    $$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_sexp_vextract_param($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $$$037$i$i = 0, $$$037$i$i205 = 0, $$$037$i$i226 = 0, 
$$$037$i$i250 = 0, $$0 = 0, $$0$copyload$i$i = 0, $$0$copyload$i$i198 = 0, 
$$0$copyload$i$i220 = 0, $$0$copyload$i$i241 = 0, $$0$copyload9$i$i = 0, 
$$0$copyload9$i$i208 = 0, $$0$copyload9$i$i229 = 0, $$0$copyload9$i$i253 = 0, 
$$0150$lcssa = 0, $$0150314 = 0, $$0151313 = 0, $$0156320 = 0, $$0162$lcssa364 
= 0, $$0162319 = 0;
+ var $$0178$lcssa = 0, $$0178308 = 0, $$0178312 = 0, $$0181 = 0, 
$$03443$i$lcssa$i = 0, $$03443$i$lcssa$i196 = 0, $$03443$i$lcssa$i218 = 0, 
$$03443$i$lcssa$i239 = 0, $$03443$i24$i = 0, $$03443$i40$i = 0, 
$$03443$i40$i243 = 0, $$03443$i8$i = 0, $$03443$ph$i$i = 0, $$03443$ph$i$i192 = 
0, $$03443$ph$i$i214 = 0, $$03443$ph$i$i235 = 0, $$03742$ph$i$i = 0, 
$$03742$ph$i$i193 = 0, $$03742$ph$i$i215 = 0, $$03742$ph$i$i236 = 0;
+ var $$044$i$lcssa$i = 0, $$044$i$lcssa$i195 = 0, $$044$i$lcssa$i217 = 0, 
$$044$i$lcssa$i238 = 0, $$044$i23$i = 0, $$044$i39$i = 0, $$044$i39$i244 = 0, 
$$044$i7$i = 0, $$044$ph$i$i = 0, $$044$ph$i$i191 = 0, $$044$ph$i$i213 = 0, 
$$044$ph$i$i234 = 0, $$1$i$i = 0, $$1$i$i204 = 0, $$1$i$i225 = 0, $$1$i$i249 = 
0, $$1$ph$i$i = 0, $$1$ph$i$i201 = 0, $$1$ph$i$i222 = 0, $$1$ph$i$i246 = 0;
+ var $$1157 = 0, $$1163 = 0, $$1182 = 0, $$135$i$i = 0, $$135$i$i203 = 0, 
$$135$i$i224 = 0, $$135$i$i248 = 0, $$2$i = 0, $$2$i257 = 0, $$2158 = 0, $$2164 
= 0, $$3159 = 0, $$3165 = 0, $$3171 = 0, $$4160 = 0, $$4166 = 0, $$5161 = 0, 
$$6174 = 0, $$9 = 0, $$in = 0;
+ var $$ph$i$i = 0, $$ph$i$i189 = 0, $$ph$i$i211 = 0, $$ph$i$i232 = 0, 
$$ph49$i$i = 0, $$ph49$i$i190 = 0, $$ph49$i$i212 = 0, $$ph49$i$i233 = 0, 
$$pre$$i = 0, $$pre$$i255 = 0, $$pre$i = 0, $$pre$i254 = 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, $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;
+ var $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, $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, $arglist_current = 0, $arglist_current2 = 0;
+ var $arglist_next = 0, $arglist_next3 = 0, $expanded = 0, $expanded10 = 0, 
$expanded11 = 0, $expanded13 = 0, $expanded14 = 0, $expanded15 = 0, $expanded4 
= 0, $expanded6 = 0, $expanded7 = 0, $expanded8 = 0, $or$cond183 = 0, 
$or$cond184 = 0, dest = 0, label = 0, sp = 0, stop = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 112 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(112 | 0);
+ $4 = sp + 84 | 0;
+ $5 = sp + 80 | 0;
+ $6 = sp;
+ $7 = sp + 88 | 0;
+ dest = $7;
+ stop = dest + 20 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+  dest = dest + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $8 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = $8 << 24 >> 24 == 0;
+ do {
+  if ($9) {
+   $$0162$lcssa364 = 0;
+  } else {
+   $$0156320 = $2;
+   $$0162319 = 0;
+   $10 = $8;
+   L2 : while (1) {
+    L4 : do {
+     switch ($10 << 24 >> 24) {
+     case 63:
+     case 47:
+     case 45:
+     case 43:
+     case 38:
+      {
+       $$1163 = $$0162319;
+       $$2158 = $$0156320;
+       break;
+      }
+     default:
+      {
+       $11 = $10 << 24 >> 24;
+       switch ($11 | 0) {
+       case 10:
+       case 13:
+       case 12:
+       case 11:
+       case 9:
+       case 32:
+        {
+         $$1163 = $$0162319;
+         $$2158 = $$0156320;
+         break L4;
+         break;
+        }
+       default:
+        {}
+       }
+       $12 = $10 << 24 >> 24 == 39;
+       if ($12) {
+        $13 = $$0156320 + 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 = 94;
+         break L2;
+        } else {
+         $$1157 = $14;
+        }
+       } else {
+        $$1157 = $$0156320;
+       }
+       $arglist_current = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+       $arglist_next = $22 + 4 | 0;
+       SAFE_HEAP_STORE($3 | 0, $arglist_next | 0, 4);
+       $24 = $6 + ($$0162319 << 2) | 0;
+       SAFE_HEAP_STORE($24 | 0, $23 | 0, 4);
+       $25 = ($23 | 0) == (0 | 0);
+       if ($25) {
+        $$0 = 128;
+        label = 94;
+        break L2;
+       }
+       $26 = $$0162319 + 1 | 0;
+       $$1163 = $26;
+       $$2158 = $$1157;
+      }
+     }
+    } while (0);
+    $27 = $$2158 + 1 | 0;
+    $28 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+    $29 = $28 << 24 >> 24 != 0;
+    $30 = $$1163 >>> 0 < 20;
+    $31 = $30 & $29;
+    if ($31) {
+     $$0156320 = $27;
+     $$0162319 = $$1163;
+     $10 = $28;
+    } else {
+     label = 9;
+     break;
+    }
+   }
+   if ((label | 0) == 9) {
+    $32 = $28 << 24 >> 24 == 0;
+    if ($32) {
+     $$0162$lcssa364 = $$1163;
+     break;
+    } else {
+     $$0 = 183;
+    }
+    STACKTOP = sp;
+    return $$0 | 0;
+   } else if ((label | 0) == 94) {
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+  }
+ } while (0);
+ $arglist_current2 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+ $arglist_next3 = $38 + 4 | 0;
+ SAFE_HEAP_STORE($3 | 0, $arglist_next3 | 0, 4);
+ $40 = ($39 | 0) == (0 | 0);
+ if (!$40) {
+  $$0 = 45;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $41 = ($1 | 0) == (0 | 0);
+ L21 : do {
+  if ($41) {
+   $$0150$lcssa = $0;
+   $$0178$lcssa = 0;
+   label = 12;
+  } else {
+   $$0150314 = $0;
+   $$0151313 = $1;
+   $$0178312 = 0;
+   while (1) {
+    $42 = SAFE_HEAP_LOAD($$0151313 >> 0 | 0, 1, 0) | 0 | 0;
+    $43 = $42 << 24 >> 24 == 0;
+    if ($43) {
+     $$0150$lcssa = $$0150314;
+     $$0178$lcssa = $$0178312;
+     label = 12;
+     break L21;
+    }
+    $44 = _strchr($$0151313, 33) | 0;
+    $45 = ($44 | 0) == ($$0151313 | 0);
+    if ($45) {
+     $$0178308 = $$0178312;
+     $$4166 = $$0162$lcssa364;
+     $$6174 = 0;
+     $$9 = 27;
+     break L21;
+    }
+    $46 = ($44 | 0) == (0 | 0);
+    $47 = $44;
+    $48 = $$0151313;
+    $49 = $47 - $48 | 0;
+    $50 = $46 ? 0 : $49;
+    $51 = __gcry_sexp_find_token($$0150314, $$0151313, $50) | 0;
+    $52 = ($51 | 0) == (0 | 0);
+    if ($52) {
+     $$0178308 = $$0178312;
+     $$4166 = $$0162$lcssa364;
+     $$6174 = 0;
+     $$9 = 27;
+     break L21;
+    }
+    $53 = $50 + 1 | 0;
+    $54 = $$0151313 + $53 | 0;
+    __gcry_sexp_release($$0178312);
+    $55 = ($50 | 0) == 0;
+    $$ = $55 ? 0 : $54;
+    $56 = ($$ | 0) == (0 | 0);
+    if ($56) {
+     $$0150$lcssa = $51;
+     $$0178$lcssa = $51;
+     label = 12;
+     break;
+    } else {
+     $$0150314 = $51;
+     $$0151313 = $$;
+     $$0178312 = $51;
+    }
+   }
+  }
+ } while (0);
+ L27 : do {
+  if ((label | 0) == 12) {
+   $$0181 = 43;
+   $$2164 = 0;
+   $$3159 = $2;
+   L29 : while (1) {
+    $57 = SAFE_HEAP_LOAD($$3159 >> 0 | 0, 1, 0) | 0 | 0;
+    L31 : do {
+     switch ($57 << 24 >> 24) {
+     case 0:
+      {
+       break L29;
+       break;
+      }
+     case 47:
+     case 45:
+     case 43:
+     case 38:
+      {
+       $58 = $57 << 24 >> 24;
+       $$1182 = $58;
+       $$3165 = $$2164;
+       $$5161 = $$3159;
+       break;
+      }
+     default:
+      {
+       $59 = $57 << 24 >> 24;
+       switch ($59 | 0) {
+       case 10:
+       case 13:
+       case 12:
+       case 11:
+       case 9:
+       case 32:
+        {
+         $$1182 = $$0181;
+         $$3165 = $$2164;
+         $$5161 = $$3159;
+         break L31;
+         break;
+        }
+       default:
+        {}
+       }
+       switch ($57 << 24 >> 24) {
+       case 63:
+        {
+         $$1182 = $$0181;
+         $$3165 = $$2164;
+         $$5161 = $$3159;
+         break L31;
+         break;
+        }
+       case 39:
+        {
+         $60 = $$3159 + 1 | 0;
+         $61 = _strchr($60, 39) | 0;
+         $62 = ($61 | 0) == (0 | 0);
+         $63 = ($61 | 0) == ($60 | 0);
+         $or$cond184 = $62 | $63;
+         if ($or$cond184) {
+          $$0178308 = $$0178$lcssa;
+          $$4166 = $$2164;
+          $$6174 = 0;
+          $$9 = 29;
+          break L27;
+         }
+         $64 = $61;
+         $65 = $60;
+         $66 = $64 - $65 | 0;
+         $67 = __gcry_sexp_find_token($$0150$lcssa, $60, $66) | 0;
+         $$3171 = $67;
+         $$4160 = $61;
+         break;
+        }
+       default:
+        {
+         $68 = __gcry_sexp_find_token($$0150$lcssa, $$3159, 1) | 0;
+         $$3171 = $68;
+         $$4160 = $$3159;
+        }
+       }
+       $69 = ($$3171 | 0) == (0 | 0);
+       do {
+        if ($69) {
+         $70 = $$4160 + 1 | 0;
+         $71 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+         $72 = $71 << 24 >> 24 == 63;
+         if (!$72) {
+          $$0178308 = $$0178$lcssa;
+          $$4166 = $$2164;
+          $$6174 = 0;
+          $$9 = 68;
+          break L27;
+         }
+         $73 = ($$0181 | 0) == 38;
+         $74 = $6 + ($$2164 << 2) | 0;
+         if (!$73) {
+          $81 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+          SAFE_HEAP_STORE($81 | 0, 0 | 0, 4);
+          break;
+         }
+         $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+         $76 = $75 + 12 | 0;
+         $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+         $78 = ($77 | 0) == (0 | 0);
+         if ($78) {
+          SAFE_HEAP_STORE($75 | 0, 0 | 0, 4);
+          $79 = $75 + 4 | 0;
+          SAFE_HEAP_STORE($79 | 0, 0 | 0, 4);
+         }
+         $80 = $75 + 8 | 0;
+         SAFE_HEAP_STORE($80 | 0, 0 | 0, 4);
+        } else {
+         L49 : do {
+          switch ($$0181 | 0) {
+          case 38:
+           {
+            $82 = $6 + ($$2164 << 2) | 0;
+            $83 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+            $84 = $83 + 12 | 0;
+            $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+            $86 = ($85 | 0) == (0 | 0);
+            if ($86) {
+             SAFE_HEAP_STORE($83 | 0, 0 | 0, 4);
+             $121 = SAFE_HEAP_LOAD($$3171 >> 0 | 0, 1, 0) | 0 | 0;
+             $122 = $121 << 24 >> 24 == 3;
+             if (!$122) {
+              label = 58;
+              break L29;
+             }
+             $123 = $$3171 + 1 | 0;
+             $124 = SAFE_HEAP_LOAD($123 >> 0 | 0, 1, 0) | 0 | 0;
+             $125 = $124 << 24 >> 24 == 1;
+             $$03443$ph$i$i192 = $123;
+             $$03742$ph$i$i193 = 1;
+             $$044$ph$i$i191 = 0;
+             $$ph$i$i189 = $125;
+             $$ph49$i$i190 = $124;
+             while (1) {
+              L74 : do {
+               if ($$ph$i$i189) {
+                $$03443$i$lcssa$i196 = $$03443$ph$i$i192;
+                $$044$i$lcssa$i195 = $$044$ph$i$i191;
+                label = 49;
+               } else {
+                $$03443$i24$i = $$03443$ph$i$i192;
+                $$044$i23$i = $$044$ph$i$i191;
+                $131 = $$ph49$i$i190;
+                L75 : while (1) {
+                 switch ($131 << 24 >> 24) {
+                 case 0:
+                  {
+                   label = 58;
+                   break L29;
+                   break;
+                  }
+                 case 4:
+                  {
+                   break L75;
+                   break;
+                  }
+                 case 3:
+                  {
+                   $132 = $$044$i23$i + 1 | 0;
+                   $$1$ph$i$i201 = $132;
+                   break;
+                  }
+                 default:
+                  {
+                   $$1$ph$i$i201 = $$044$i23$i;
+                  }
+                 }
+                 $134 = $$03443$i24$i + 1 | 0;
+                 $135 = SAFE_HEAP_LOAD($134 >> 0 | 0, 1, 0) | 0 | 0;
+                 $136 = $135 << 24 >> 24 == 1;
+                 if ($136) {
+                  $$03443$i$lcssa$i196 = $134;
+                  $$044$i$lcssa$i195 = $$1$ph$i$i201;
+                  label = 49;
+                  break L74;
+                 } else {
+                  $$03443$i24$i = $134;
+                  $$044$i23$i = $$1$ph$i$i201;
+                  $131 = $135;
+                 }
+                }
+                $133 = $$044$i23$i + -1 | 0;
+                $$1$i$i204 = $133;
+                $$135$i$i203 = $$03443$i24$i;
+               }
+              } while (0);
+              if ((label | 0) == 49) {
+               label = 0;
+               $126 = $$03443$i$lcssa$i196 + 1 | 0;
+               $$0$copyload$i$i198 = SAFE_HEAP_LOAD($126 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($126 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+               $127 = $$0$copyload$i$i198 & 65535;
+               $128 = $127 + 2 | 0;
+               $129 = $126 + $128 | 0;
+               $130 = $129 + -1 | 0;
+               $$1$i$i204 = $$044$i$lcssa$i195;
+               $$135$i$i203 = $130;
+              }
+              $137 = ($$1$i$i204 | 0) == 0;
+              $138 = $137 << 31 >> 31;
+              $$$037$i$i205 = $138 + $$03742$ph$i$i193 | 0;
+              $139 = $$135$i$i203 + 1 | 0;
+              $140 = ($$$037$i$i205 | 0) > 0;
+              $141 = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 0) | 0 | 0;
+              $142 = $141 << 24 >> 24 == 1;
+              if ($140) {
+               $$03443$ph$i$i192 = $139;
+               $$03742$ph$i$i193 = $$$037$i$i205;
+               $$044$ph$i$i191 = $$1$i$i204;
+               $$ph$i$i189 = $142;
+               $$ph49$i$i190 = $141;
+              } else {
+               break;
+              }
+             }
+             if (!$142) {
+              label = 58;
+              break L29;
+             }
+             $143 = $$135$i$i203 + 2 | 0;
+             $$0$copyload9$i$i208 = SAFE_HEAP_LOAD($143 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($143 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+             $144 = $$0$copyload9$i$i208 & 65535;
+             $145 = $$135$i$i203 + 4 | 0;
+             $146 = $$0$copyload9$i$i208 << 16 >> 16 == 0;
+             if ($146) {
+              label = 58;
+              break L29;
+             }
+             $147 = __gcry_malloc($144) | 0;
+             $148 = ($147 | 0) == (0 | 0);
+             if ($148) {
+              label = 58;
+              break L29;
+             }
+             _memcpy($147 | 0, $145 | 0, $144 | 0) | 0;
+             SAFE_HEAP_STORE($83 | 0, $144 | 0, 4);
+             SAFE_HEAP_STORE($84 | 0, $147 | 0, 4);
+             $149 = $83 + 8 | 0;
+             SAFE_HEAP_STORE($149 | 0, $144 | 0, 4);
+             $150 = $83 + 4 | 0;
+             SAFE_HEAP_STORE($150 | 0, 0 | 0, 4);
+             $151 = $7 + $$2164 | 0;
+             SAFE_HEAP_STORE($151 >> 0 | 0, 2 | 0, 1);
+             $214 = $83;
+             break L49;
+            } else {
+             $87 = SAFE_HEAP_LOAD($$3171 >> 0 | 0, 1, 0) | 0 | 0;
+             $88 = $87 << 24 >> 24 == 3;
+             if (!$88) {
+              $$0178308 = $$0178$lcssa;
+              $$4166 = $$2164;
+              $$6174 = $$3171;
+              $$9 = 65;
+              break L27;
+             }
+             $89 = $$3171 + 1 | 0;
+             $90 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+             $91 = $90 << 24 >> 24 == 1;
+             $$03443$ph$i$i = $89;
+             $$03742$ph$i$i = 1;
+             $$044$ph$i$i = 0;
+             $$ph$i$i = $91;
+             $$ph49$i$i = $90;
+             while (1) {
+              L92 : do {
+               if ($$ph$i$i) {
+                $$03443$i$lcssa$i = $$03443$ph$i$i;
+                $$044$i$lcssa$i = $$044$ph$i$i;
+                label = 36;
+               } else {
+                $$03443$i8$i = $$03443$ph$i$i;
+                $$044$i7$i = $$044$ph$i$i;
+                $97 = $$ph49$i$i;
+                L93 : while (1) {
+                 switch ($97 << 24 >> 24) {
+                 case 0:
+                  {
+                   $$0178308 = $$0178$lcssa;
+                   $$4166 = $$2164;
+                   $$6174 = $$3171;
+                   $$9 = 65;
+                   break L27;
+                   break;
+                  }
+                 case 4:
+                  {
+                   break L93;
+                   break;
+                  }
+                 case 3:
+                  {
+                   $98 = $$044$i7$i + 1 | 0;
+                   $$1$ph$i$i = $98;
+                   break;
+                  }
+                 default:
+                  {
+                   $$1$ph$i$i = $$044$i7$i;
+                  }
+                 }
+                 $100 = $$03443$i8$i + 1 | 0;
+                 $101 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 0) | 0 | 0;
+                 $102 = $101 << 24 >> 24 == 1;
+                 if ($102) {
+                  $$03443$i$lcssa$i = $100;
+                  $$044$i$lcssa$i = $$1$ph$i$i;
+                  label = 36;
+                  break L92;
+                 } else {
+                  $$03443$i8$i = $100;
+                  $$044$i7$i = $$1$ph$i$i;
+                  $97 = $101;
+                 }
+                }
+                $99 = $$044$i7$i + -1 | 0;
+                $$1$i$i = $99;
+                $$135$i$i = $$03443$i8$i;
+               }
+              } while (0);
+              if ((label | 0) == 36) {
+               label = 0;
+               $92 = $$03443$i$lcssa$i + 1 | 0;
+               $$0$copyload$i$i = SAFE_HEAP_LOAD($92 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($92 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+               $93 = $$0$copyload$i$i & 65535;
+               $94 = $93 + 2 | 0;
+               $95 = $92 + $94 | 0;
+               $96 = $95 + -1 | 0;
+               $$1$i$i = $$044$i$lcssa$i;
+               $$135$i$i = $96;
+              }
+              $103 = ($$1$i$i | 0) == 0;
+              $104 = $103 << 31 >> 31;
+              $$$037$i$i = $104 + $$03742$ph$i$i | 0;
+              $105 = $$135$i$i + 1 | 0;
+              $106 = ($$$037$i$i | 0) > 0;
+              $107 = SAFE_HEAP_LOAD($105 >> 0 | 0, 1, 0) | 0 | 0;
+              $108 = $107 << 24 >> 24 == 1;
+              if ($106) {
+               $$03443$ph$i$i = $105;
+               $$03742$ph$i$i = $$$037$i$i;
+               $$044$ph$i$i = $$1$i$i;
+               $$ph$i$i = $108;
+               $$ph49$i$i = $107;
+              } else {
+               break;
+              }
+             }
+             if (!$108) {
+              $$0178308 = $$0178$lcssa;
+              $$4166 = $$2164;
+              $$6174 = $$3171;
+              $$9 = 65;
+              break L27;
+             }
+             $109 = $$135$i$i + 2 | 0;
+             $$0$copyload9$i$i = SAFE_HEAP_LOAD($109 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($109 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+             $110 = $$0$copyload9$i$i & 65535;
+             $111 = $$135$i$i + 4 | 0;
+             $112 = $$0$copyload9$i$i << 16 >> 16 == 0;
+             if ($112) {
+              $$0178308 = $$0178$lcssa;
+              $$4166 = $$2164;
+              $$6174 = $$3171;
+              $$9 = 65;
+              break L27;
+             }
+             $113 = $83 + 4 | 0;
+             $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+             $115 = $114 + $110 | 0;
+             $116 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+             $117 = $115 >>> 0 > $116 >>> 0;
+             if ($117) {
+              $$0178308 = $$0178$lcssa;
+              $$4166 = $$2164;
+              $$6174 = $$3171;
+              $$9 = 200;
+              break L27;
+             }
+             $118 = $85 + $114 | 0;
+             _memcpy($118 | 0, $111 | 0, $110 | 0) | 0;
+             $119 = $83 + 8 | 0;
+             SAFE_HEAP_STORE($119 | 0, $110 | 0, 4);
+             $120 = $7 + $$2164 | 0;
+             SAFE_HEAP_STORE($120 >> 0 | 0, 1 | 0, 1);
+             $214 = $83;
+             break L49;
+            }
+            break;
+           }
+          case 47:
+           {
+            $152 = __gcry_sexp_nth_mpi($$3171, 1, 8) | 0;
+            $153 = $6 + ($$2164 << 2) | 0;
+            $154 = SAFE_HEAP_LOAD($153 | 0, 4, 0) | 0 | 0;
+            SAFE_HEAP_STORE($154 | 0, $152 | 0, 4);
+            $214 = $154;
+            break;
+           }
+          case 45:
+           {
+            $155 = SAFE_HEAP_LOAD($$3171 >> 0 | 0, 1, 0) | 0 | 0;
+            $156 = $155 << 24 >> 24 == 3;
+            L108 : do {
+             if ($156) {
+              $157 = $$3171 + 1 | 0;
+              $158 = SAFE_HEAP_LOAD($157 >> 0 | 0, 1, 0) | 0 | 0;
+              $159 = $158 << 24 >> 24 == 1;
+              $$03443$ph$i$i214 = $157;
+              $$03742$ph$i$i215 = 1;
+              $$044$ph$i$i213 = 0;
+              $$ph$i$i211 = $159;
+              $$ph49$i$i212 = $158;
+              while (1) {
+               L112 : do {
+                if ($$ph$i$i211) {
+                 $$03443$i$lcssa$i218 = $$03443$ph$i$i214;
+                 $$044$i$lcssa$i217 = $$044$ph$i$i213;
+                 label = 64;
+                } else {
+                 $$03443$i40$i = $$03443$ph$i$i214;
+                 $$044$i39$i = $$044$ph$i$i213;
+                 $165 = $$ph49$i$i212;
+                 L113 : while (1) {
+                  switch ($165 << 24 >> 24) {
+                  case 0:
+                   {
+                    $$2$i = 0;
+                    break L108;
+                    break;
+                   }
+                  case 4:
+                   {
+                    break L113;
+                    break;
+                   }
+                  case 3:
+                   {
+                    $166 = $$044$i39$i + 1 | 0;
+                    $$1$ph$i$i222 = $166;
+                    break;
+                   }
+                  default:
+                   {
+                    $$1$ph$i$i222 = $$044$i39$i;
+                   }
+                  }
+                  $168 = $$03443$i40$i + 1 | 0;
+                  $169 = SAFE_HEAP_LOAD($168 >> 0 | 0, 1, 0) | 0 | 0;
+                  $170 = $169 << 24 >> 24 == 1;
+                  if ($170) {
+                   $$03443$i$lcssa$i218 = $168;
+                   $$044$i$lcssa$i217 = $$1$ph$i$i222;
+                   label = 64;
+                   break L112;
+                  } else {
+                   $$03443$i40$i = $168;
+                   $$044$i39$i = $$1$ph$i$i222;
+                   $165 = $169;
+                  }
+                 }
+                 $167 = $$044$i39$i + -1 | 0;
+                 $$1$i$i225 = $167;
+                 $$135$i$i224 = $$03443$i40$i;
+                }
+               } while (0);
+               if ((label | 0) == 64) {
+                label = 0;
+                $160 = $$03443$i$lcssa$i218 + 1 | 0;
+                $$0$copyload$i$i220 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 1) | 0 
| (SAFE_HEAP_LOAD($160 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+                $161 = $$0$copyload$i$i220 & 65535;
+                $162 = $161 + 2 | 0;
+                $163 = $160 + $162 | 0;
+                $164 = $163 + -1 | 0;
+                $$1$i$i225 = $$044$i$lcssa$i217;
+                $$135$i$i224 = $164;
+               }
+               $171 = ($$1$i$i225 | 0) == 0;
+               $172 = $171 << 31 >> 31;
+               $$$037$i$i226 = $172 + $$03742$ph$i$i215 | 0;
+               $173 = $$135$i$i224 + 1 | 0;
+               $174 = ($$$037$i$i226 | 0) > 0;
+               $175 = SAFE_HEAP_LOAD($173 >> 0 | 0, 1, 0) | 0 | 0;
+               $176 = $175 << 24 >> 24 == 1;
+               if ($174) {
+                $$03443$ph$i$i214 = $173;
+                $$03742$ph$i$i215 = $$$037$i$i226;
+                $$044$ph$i$i213 = $$1$i$i225;
+                $$ph$i$i211 = $176;
+                $$ph49$i$i212 = $175;
+               } else {
+                break;
+               }
+              }
+              if ($176) {
+               $177 = $$135$i$i224 + 4 | 0;
+               $178 = $$135$i$i224 + 2 | 0;
+               $$0$copyload9$i$i229 = SAFE_HEAP_LOAD($178 >> 0 | 0, 1, 1) | 0 
| (SAFE_HEAP_LOAD($178 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+               $179 = $$0$copyload9$i$i229 & 65535;
+               $180 = __gcry_mpi_scan($5, 1, $177, $179, 0) | 0;
+               $181 = ($180 | 0) == 0;
+               $$pre$i = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+               $$pre$$i = $181 ? $$pre$i : 0;
+               $$2$i = $$pre$$i;
+              } else {
+               $$2$i = 0;
+              }
+             } else {
+              $$2$i = 0;
+             }
+            } while (0);
+            $182 = $6 + ($$2164 << 2) | 0;
+            $183 = SAFE_HEAP_LOAD($182 | 0, 4, 0) | 0 | 0;
+            SAFE_HEAP_STORE($183 | 0, $$2$i | 0, 4);
+            $214 = $183;
+            break;
+           }
+          default:
+           {
+            $184 = SAFE_HEAP_LOAD($$3171 >> 0 | 0, 1, 0) | 0 | 0;
+            $185 = $184 << 24 >> 24 == 3;
+            L51 : do {
+             if ($185) {
+              $186 = $$3171 + 1 | 0;
+              $187 = SAFE_HEAP_LOAD($186 >> 0 | 0, 1, 0) | 0 | 0;
+              $188 = $187 << 24 >> 24 == 1;
+              $$03443$ph$i$i235 = $186;
+              $$03742$ph$i$i236 = 1;
+              $$044$ph$i$i234 = 0;
+              $$ph$i$i232 = $188;
+              $$ph49$i$i233 = $187;
+              while (1) {
+               L55 : do {
+                if ($$ph$i$i232) {
+                 $$03443$i$lcssa$i239 = $$03443$ph$i$i235;
+                 $$044$i$lcssa$i238 = $$044$ph$i$i234;
+                 label = 76;
+                } else {
+                 $$03443$i40$i243 = $$03443$ph$i$i235;
+                 $$044$i39$i244 = $$044$ph$i$i234;
+                 $194 = $$ph49$i$i233;
+                 L56 : while (1) {
+                  switch ($194 << 24 >> 24) {
+                  case 0:
+                   {
+                    $$2$i257 = 0;
+                    break L51;
+                    break;
+                   }
+                  case 4:
+                   {
+                    break L56;
+                    break;
+                   }
+                  case 3:
+                   {
+                    $195 = $$044$i39$i244 + 1 | 0;
+                    $$1$ph$i$i246 = $195;
+                    break;
+                   }
+                  default:
+                   {
+                    $$1$ph$i$i246 = $$044$i39$i244;
+                   }
+                  }
+                  $197 = $$03443$i40$i243 + 1 | 0;
+                  $198 = SAFE_HEAP_LOAD($197 >> 0 | 0, 1, 0) | 0 | 0;
+                  $199 = $198 << 24 >> 24 == 1;
+                  if ($199) {
+                   $$03443$i$lcssa$i239 = $197;
+                   $$044$i$lcssa$i238 = $$1$ph$i$i246;
+                   label = 76;
+                   break L55;
+                  } else {
+                   $$03443$i40$i243 = $197;
+                   $$044$i39$i244 = $$1$ph$i$i246;
+                   $194 = $198;
+                  }
+                 }
+                 $196 = $$044$i39$i244 + -1 | 0;
+                 $$1$i$i249 = $196;
+                 $$135$i$i248 = $$03443$i40$i243;
+                }
+               } while (0);
+               if ((label | 0) == 76) {
+                label = 0;
+                $189 = $$03443$i$lcssa$i239 + 1 | 0;
+                $$0$copyload$i$i241 = SAFE_HEAP_LOAD($189 >> 0 | 0, 1, 1) | 0 
| (SAFE_HEAP_LOAD($189 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+                $190 = $$0$copyload$i$i241 & 65535;
+                $191 = $190 + 2 | 0;
+                $192 = $189 + $191 | 0;
+                $193 = $192 + -1 | 0;
+                $$1$i$i249 = $$044$i$lcssa$i238;
+                $$135$i$i248 = $193;
+               }
+               $200 = ($$1$i$i249 | 0) == 0;
+               $201 = $200 << 31 >> 31;
+               $$$037$i$i250 = $201 + $$03742$ph$i$i236 | 0;
+               $202 = $$135$i$i248 + 1 | 0;
+               $203 = ($$$037$i$i250 | 0) > 0;
+               $204 = SAFE_HEAP_LOAD($202 >> 0 | 0, 1, 0) | 0 | 0;
+               $205 = $204 << 24 >> 24 == 1;
+               if ($203) {
+                $$03443$ph$i$i235 = $202;
+                $$03742$ph$i$i236 = $$$037$i$i250;
+                $$044$ph$i$i234 = $$1$i$i249;
+                $$ph$i$i232 = $205;
+                $$ph49$i$i233 = $204;
+               } else {
+                break;
+               }
+              }
+              if ($205) {
+               $206 = $$135$i$i248 + 4 | 0;
+               $207 = $$135$i$i248 + 2 | 0;
+               $$0$copyload9$i$i253 = SAFE_HEAP_LOAD($207 >> 0 | 0, 1, 1) | 0 
| (SAFE_HEAP_LOAD($207 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+               $208 = $$0$copyload9$i$i253 & 65535;
+               $209 = __gcry_mpi_scan($4, 5, $206, $208, 0) | 0;
+               $210 = ($209 | 0) == 0;
+               $$pre$i254 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+               $$pre$$i255 = $210 ? $$pre$i254 : 0;
+               $$2$i257 = $$pre$$i255;
+              } else {
+               $$2$i257 = 0;
+              }
+             } else {
+              $$2$i257 = 0;
+             }
+            } while (0);
+            $211 = $6 + ($$2164 << 2) | 0;
+            $212 = SAFE_HEAP_LOAD($211 | 0, 4, 0) | 0 | 0;
+            SAFE_HEAP_STORE($212 | 0, $$2$i257 | 0, 4);
+            $214 = $212;
+           }
+          }
+         } while (0);
+         __gcry_sexp_release($$3171);
+         $213 = SAFE_HEAP_LOAD($214 | 0, 4, 0) | 0 | 0;
+         $215 = ($213 | 0) == (0 | 0);
+         if ($215) {
+          $$0178308 = $$0178$lcssa;
+          $$4166 = $$2164;
+          $$6174 = 0;
+          $$9 = 65;
+          break L27;
+         }
+        }
+       } while (0);
+       $216 = $$2164 + 1 | 0;
+       $$1182 = $$0181;
+       $$3165 = $216;
+       $$5161 = $$4160;
+      }
+     }
+    } while (0);
+    $217 = $$5161 + 1 | 0;
+    $$0181 = $$1182;
+    $$2164 = $$3165;
+    $$3159 = $217;
+   }
+   if ((label | 0) == 58) {
+    SAFE_HEAP_STORE($84 | 0, 0 | 0, 4);
+    $$0178308 = $$0178$lcssa;
+    $$4166 = $$2164;
+    $$6174 = $$3171;
+    $$9 = 65;
+    break;
+   }
+   __gcry_sexp_release($$0178$lcssa);
+   $$0 = 0;
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ } while (0);
+ __gcry_sexp_release($$0178308);
+ __gcry_sexp_release($$6174);
+ $218 = ($$4166 | 0) == 0;
+ if ($218) {
+  $$0 = $$9;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  $$in = $$4166;
+ }
+ while (1) {
+  $219 = $$in + -1 | 0;
+  $220 = $7 + $219 | 0;
+  $221 = SAFE_HEAP_LOAD($220 >> 0 | 0, 1, 0) | 0 | 0;
+  $222 = $221 << 24 >> 24 == 0;
+  $223 = $6 + ($219 << 2) | 0;
+  if ($222) {
+   $224 = SAFE_HEAP_LOAD($223 | 0, 4, 0) | 0 | 0;
+   $225 = SAFE_HEAP_LOAD($224 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_release($225);
+   SAFE_HEAP_STORE($224 | 0, 0 | 0, 4);
+  } else {
+   $226 = SAFE_HEAP_LOAD($223 | 0, 4, 0) | 0 | 0;
+   $227 = $226 + 12 | 0;
+   $228 = SAFE_HEAP_LOAD($227 | 0, 4, 0) | 0 | 0;
+   __gcry_free($228);
+   {}
+   SAFE_HEAP_STORE($226 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($226 + 4 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($226 + 8 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($226 + 12 | 0, 0 | 0 | 0, 4);
+  }
+  $229 = ($219 | 0) == 0;
+  if ($229) {
+   $$0 = $$9;
+   break;
+  } else {
+   $$in = $219;
+  }
+ }
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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$ph124 = 0, 
$$072$lcssa150 = 0, $$072115 = 0, $$073$lcssa149 = 0, $$073114 = 0, 
$$074$lcssa121$i = 0, $$074107$i = 0, $$078$lcssa124$i = 0, $$078$ph122 = 0, 
$$078100$i = 0, $$082$lcssa123$i = 0, $$08299$i = 0, $$1 = 0, $$1$i = 0, $$174 
= 0, $$175$i = 0, $$179$i = 0;
+ var $$183$i = 0, $$3$ph = 0, $$3$ph$i = 0, $$3105$i = 0, $$3119 = 0, $$376$ph 
= 0, $$376118 = 0, $$377$ph$i = 0, $$377104$i = 0, $$381$ph$i = 0, $$38198$i = 
0, $$385$ph$i = 0, $$38597$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, $387 = 0, $388 = 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, $or$cond = 0, $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, $scevgep148 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, 
$vararg_buffer4 = 0, $vararg_buffer7 = 0, dest = 0, label = 0, sp = 0, src = 0;
+ var stop = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer7 = sp + 24 | 0;
+ $vararg_buffer4 = sp + 16 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $3 = sp + 32 | 0;
+ $4 = sp + 40 | 0;
+ $5 = SAFE_HEAP_LOAD(17672 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == 0;
+ if ($6) {
+  __gcry_assert_failed(51340, 51065, 444, 51359);
+ }
+ $7 = $2 + 4 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = ($8 | 0) == (0 | 0);
+ if ($9) {
+  __gcry_assert_failed(51375, 51065, 445, 51359);
+ }
+ $10 = $2 + 8 | 0;
+ $11 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+ $$mask = $11 & 1;
+ $12 = $$mask << 24 >> 24 == 0;
+ if ($12) {
+  __gcry_assert_failed(51394, 51065, 446, 51359);
+ }
+ $13 = SAFE_HEAP_LOAD(17673 * 4 | 0, 4, 0) | 0 | 0;
+ $14 = ($13 | 0) == (0 | 0);
+ if ($14) {
+  __gcry_assert_failed(51413, 51065, 448, 51359);
+ }
+ $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 = $3 + 4 | 0;
+ $21 = $4 + 1 | 0;
+ $22 = $4 + 2 | 0;
+ $23 = $4 + 3 | 0;
+ $24 = $4 + 4 | 0;
+ $25 = $4 + 5 | 0;
+ $26 = $4 + 6 | 0;
+ $27 = $4 + 7 | 0;
+ $28 = $4 + 8 | 0;
+ $29 = $4 + 9 | 0;
+ $30 = $4 + 10 | 0;
+ $31 = $4 + 11 | 0;
+ $32 = $4 + 12 | 0;
+ $33 = $4 + 13 | 0;
+ $34 = $4 + 14 | 0;
+ $35 = $4 + 15 | 0;
+ $36 = $2 + 17 | 0;
+ $37 = $13 + 1 | 0;
+ $38 = $2 + 18 | 0;
+ $39 = $13 + 17 | 0;
+ $40 = $13 + 2 | 0;
+ $41 = $2 + 19 | 0;
+ $42 = $13 + 18 | 0;
+ $43 = $13 + 3 | 0;
+ $44 = $2 + 20 | 0;
+ $45 = $13 + 19 | 0;
+ $46 = $13 + 4 | 0;
+ $47 = $2 + 21 | 0;
+ $48 = $13 + 20 | 0;
+ $49 = $13 + 5 | 0;
+ $50 = $2 + 22 | 0;
+ $51 = $13 + 21 | 0;
+ $52 = $13 + 6 | 0;
+ $53 = $2 + 23 | 0;
+ $54 = $13 + 22 | 0;
+ $55 = $13 + 7 | 0;
+ $56 = $2 + 24 | 0;
+ $57 = $13 + 23 | 0;
+ $58 = $13 + 8 | 0;
+ $59 = $2 + 25 | 0;
+ $60 = $13 + 24 | 0;
+ $61 = $13 + 9 | 0;
+ $62 = $2 + 26 | 0;
+ $63 = $13 + 25 | 0;
+ $64 = $13 + 10 | 0;
+ $65 = $2 + 27 | 0;
+ $66 = $13 + 26 | 0;
+ $67 = $13 + 11 | 0;
+ $68 = $2 + 28 | 0;
+ $69 = $13 + 27 | 0;
+ $70 = $13 + 12 | 0;
+ $71 = $2 + 29 | 0;
+ $72 = $13 + 28 | 0;
+ $73 = $13 + 13 | 0;
+ $74 = $2 + 30 | 0;
+ $75 = $13 + 29 | 0;
+ $76 = $13 + 14 | 0;
+ $77 = $2 + 31 | 0;
+ $78 = $13 + 30 | 0;
+ $79 = $13 + 15 | 0;
+ $80 = $2 + 32 | 0;
+ $81 = $13 + 31 | 0;
+ $82 = $13 + 33 | 0;
+ $83 = $13 + 34 | 0;
+ $84 = $13 + 35 | 0;
+ $85 = $13 + 36 | 0;
+ $86 = $13 + 37 | 0;
+ $87 = $13 + 38 | 0;
+ $88 = $13 + 39 | 0;
+ $89 = $13 + 40 | 0;
+ $90 = $13 + 41 | 0;
+ $91 = $13 + 42 | 0;
+ $92 = $13 + 43 | 0;
+ $93 = $13 + 44 | 0;
+ $94 = $13 + 45 | 0;
+ $95 = $13 + 46 | 0;
+ $96 = $13 + 47 | 0;
+ $97 = $13;
+ $98 = $97 & 7;
+ $99 = ($98 | 0) == 0;
+ $100 = $15;
+ $101 = $100 & 7;
+ $102 = ($101 | 0) == 0;
+ $103 = $2 + 51 | 0;
+ $104 = $2 + 34 | 0;
+ $105 = $2 + 56 | 0;
+ $106 = $16;
+ $107 = $106 & 7;
+ $108 = ($107 | 0) == 0;
+ $$071$ph124 = $0;
+ $$078$ph122 = $1;
+ L16 : while (1) {
+  while (1) {
+   $109 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+   $110 = ($109 | 0) == (0 | 0);
+   if ($110) {
+    $111 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+    $112 = $111 >>> 0 > 1e3;
+    if ($112) {
+     _x931_reseed($2);
+     SAFE_HEAP_STORE($19 | 0, 0 | 0, 4);
+    }
+   }
+   $113 = SAFE_HEAP_LOAD(17672 * 4 | 0, 4, 0) | 0 | 0;
+   $114 = ($113 | 0) == 0;
+   if ($114) {
+    label = 16;
+    break L16;
+   }
+   $115 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+   $116 = ($115 | 0) == (0 | 0);
+   $117 = SAFE_HEAP_LOAD(17674 * 4 | 0, 4, 0) | 0 | 0;
+   $118 = ($117 | 0) == ($2 | 0);
+   $or$cond$i = $116 | $118;
+   $119 = SAFE_HEAP_LOAD(17675 * 4 | 0, 4, 0) | 0 | 0;
+   $120 = ($119 | 0) == ($2 | 0);
+   $or$cond3$i = $or$cond$i | $120;
+   $121 = SAFE_HEAP_LOAD(17676 * 4 | 0, 4, 0) | 0 | 0;
+   $122 = ($121 | 0) == ($2 | 0);
+   $or$cond5$i = $or$cond3$i | $122;
+   if ($or$cond5$i) {
+    $132 = SAFE_HEAP_LOAD(17677 * 4 | 0, 4, 0) | 0 | 0;
+    $133 = ($132 | 0) == 0;
+    if ($133) {
+     $134 = _getpid() | 0;
+     SAFE_HEAP_STORE(17678 * 4 | 0, $134 | 0, 4);
+     $135 = _getppid() | 0;
+     SAFE_HEAP_STORE(17679 * 4 | 0, $135 | 0, 4);
+    }
+    $136 = _gettimeofday($3 | 0, 0 | 0) | 0;
+    $137 = ($136 | 0) == 0;
+    if (!$137) {
+     label = 22;
+     break L16;
+    }
+    $141 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+    $142 = $141 << 4;
+    $143 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    $144 = SAFE_HEAP_LOAD(17677 * 4 | 0, 4, 0) | 0 | 0;
+    $145 = ($143 | 0) == ($144 | 0);
+    $146 = SAFE_HEAP_LOAD(17680 * 4 | 0, 4, 0) | 0 | 0;
+    $147 = ($142 | 0) == ($146 | 0);
+    $or$cond7$i = $145 & $147;
+    if ($or$cond7$i) {
+     $148 = SAFE_HEAP_LOAD(35680 * 2 | 0, 2, 0) | 0 | 0;
+     $149 = $148 + 1 << 16 >> 16;
+     $150 = $149 & 65535;
+     $151 = $150 & 4095;
+     $152 = $151 & 65535;
+     SAFE_HEAP_STORE(35680 * 2 | 0, $152 | 0, 2);
+     $165 = $152;
+    } else {
+     SAFE_HEAP_STORE(35680 * 2 | 0, 0 | 0, 2);
+     SAFE_HEAP_STORE(17677 * 4 | 0, $143 | 0, 4);
+     SAFE_HEAP_STORE(17680 * 4 | 0, $142 | 0, 4);
+     $165 = 0;
+    }
+    $153 = $143 >>> 24;
+    $154 = $153 & 255;
+    SAFE_HEAP_STORE($4 >> 0 | 0, $154 | 0, 1);
+    $155 = $143 >>> 16;
+    $156 = $155 & 255;
+    SAFE_HEAP_STORE($21 >> 0 | 0, $156 | 0, 1);
+    $157 = $143 >>> 8;
+    $158 = $157 & 255;
+    SAFE_HEAP_STORE($22 >> 0 | 0, $158 | 0, 1);
+    $159 = $143 & 255;
+    SAFE_HEAP_STORE($23 >> 0 | 0, $159 | 0, 1);
+    $160 = $141 >>> 12;
+    $161 = $160 & 255;
+    SAFE_HEAP_STORE($24 >> 0 | 0, $161 | 0, 1);
+    $162 = $141 >>> 4;
+    $163 = $162 & 255;
+    SAFE_HEAP_STORE($25 >> 0 | 0, $163 | 0, 1);
+    $164 = $165 & 65535;
+    $166 = $164 >>> 8;
+    $167 = $166 & 15;
+    $168 = $167 | $142;
+    $169 = $168 & 255;
+    SAFE_HEAP_STORE($26 >> 0 | 0, $169 | 0, 1);
+    $170 = $165 & 255;
+    SAFE_HEAP_STORE($27 >> 0 | 0, $170 | 0, 1);
+    $171 = SAFE_HEAP_LOAD(17678 * 4 | 0, 4, 0) | 0 | 0;
+    $172 = $171 >>> 24;
+    $173 = $172 & 255;
+    SAFE_HEAP_STORE($28 >> 0 | 0, $173 | 0, 1);
+    $174 = $171 >>> 16;
+    $175 = $174 & 255;
+    SAFE_HEAP_STORE($29 >> 0 | 0, $175 | 0, 1);
+    $176 = $171 >>> 8;
+    $177 = $176 & 255;
+    SAFE_HEAP_STORE($30 >> 0 | 0, $177 | 0, 1);
+    $178 = $171 & 255;
+    SAFE_HEAP_STORE($31 >> 0 | 0, $178 | 0, 1);
+    $179 = SAFE_HEAP_LOAD(17679 * 4 | 0, 4, 0) | 0 | 0;
+    $180 = $179 >>> 24;
+    $181 = $180 & 255;
+    SAFE_HEAP_STORE($32 >> 0 | 0, $181 | 0, 1);
+    $182 = $179 >>> 16;
+    $183 = $182 & 255;
+    SAFE_HEAP_STORE($33 >> 0 | 0, $183 | 0, 1);
+    $184 = $179 >>> 8;
+    $185 = $184 & 255;
+    SAFE_HEAP_STORE($34 >> 0 | 0, $185 | 0, 1);
+    $186 = $179 & 255;
+    SAFE_HEAP_STORE($35 >> 0 | 0, $186 | 0, 1);
+    $187 = $179 + 1 | 0;
+    SAFE_HEAP_STORE(17679 * 4 | 0, $187 | 0, 4);
+    $188 = ($187 | 0) == 0;
+    if ($188) {
+     $189 = $171 + 1 | 0;
+     SAFE_HEAP_STORE(17678 * 4 | 0, $189 | 0, 4);
+    }
+   } else {
+    dest = $4;
+    src = $115;
+    stop = dest + 15 | 0;
+    do {
+     SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+     dest = dest + 1 | 0;
+     src = src + 1 | 0;
+    } while ((dest | 0) < (stop | 0));
+    $123 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+    $124 = $123 >>> 24;
+    $125 = $124 & 255;
+    SAFE_HEAP_STORE($32 >> 0 | 0, $125 | 0, 1);
+    $126 = $123 >>> 16;
+    $127 = $126 & 255;
+    SAFE_HEAP_STORE($33 >> 0 | 0, $127 | 0, 1);
+    $128 = $123 >>> 8;
+    $129 = $128 & 255;
+    SAFE_HEAP_STORE($34 >> 0 | 0, $129 | 0, 1);
+    $130 = $123 & 255;
+    SAFE_HEAP_STORE($35 >> 0 | 0, $130 | 0, 1);
+    $131 = $123 + 1 | 0;
+    SAFE_HEAP_STORE($105 | 0, $131 | 0, 4);
+   }
+   $190 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $191 = __gcry_cipher_encrypt($190, $13, 16, $4, 16) | 0;
+   $192 = ($191 | 0) == 0;
+   if (!$192) {
+    label = 30;
+    break L16;
+   }
+   $194 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+   $195 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+   $196 = $195 ^ $194;
+   SAFE_HEAP_STORE($15 >> 0 | 0, $196 | 0, 1);
+   $197 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+   $198 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+   $199 = $198 ^ $197;
+   SAFE_HEAP_STORE($39 >> 0 | 0, $199 | 0, 1);
+   $200 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+   $201 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+   $202 = $201 ^ $200;
+   SAFE_HEAP_STORE($42 >> 0 | 0, $202 | 0, 1);
+   $203 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+   $204 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+   $205 = $204 ^ $203;
+   SAFE_HEAP_STORE($45 >> 0 | 0, $205 | 0, 1);
+   $206 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+   $207 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+   $208 = $207 ^ $206;
+   SAFE_HEAP_STORE($48 >> 0 | 0, $208 | 0, 1);
+   $209 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+   $210 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+   $211 = $210 ^ $209;
+   SAFE_HEAP_STORE($51 >> 0 | 0, $211 | 0, 1);
+   $212 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+   $213 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+   $214 = $213 ^ $212;
+   SAFE_HEAP_STORE($54 >> 0 | 0, $214 | 0, 1);
+   $215 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+   $216 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+   $217 = $216 ^ $215;
+   SAFE_HEAP_STORE($57 >> 0 | 0, $217 | 0, 1);
+   $218 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+   $219 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+   $220 = $219 ^ $218;
+   SAFE_HEAP_STORE($60 >> 0 | 0, $220 | 0, 1);
+   $221 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+   $222 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+   $223 = $222 ^ $221;
+   SAFE_HEAP_STORE($63 >> 0 | 0, $223 | 0, 1);
+   $224 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+   $225 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+   $226 = $225 ^ $224;
+   SAFE_HEAP_STORE($66 >> 0 | 0, $226 | 0, 1);
+   $227 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+   $228 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+   $229 = $228 ^ $227;
+   SAFE_HEAP_STORE($69 >> 0 | 0, $229 | 0, 1);
+   $230 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+   $231 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+   $232 = $231 ^ $230;
+   SAFE_HEAP_STORE($72 >> 0 | 0, $232 | 0, 1);
+   $233 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+   $234 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+   $235 = $234 ^ $233;
+   SAFE_HEAP_STORE($75 >> 0 | 0, $235 | 0, 1);
+   $236 = SAFE_HEAP_LOAD($76 >> 0 | 0, 1, 0) | 0 | 0;
+   $237 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+   $238 = $237 ^ $236;
+   SAFE_HEAP_STORE($78 >> 0 | 0, $238 | 0, 1);
+   $239 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+   $240 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+   $241 = $240 ^ $239;
+   SAFE_HEAP_STORE($81 >> 0 | 0, $241 | 0, 1);
+   $242 = __gcry_cipher_encrypt($190, $16, 16, $15, 16) | 0;
+   $243 = ($242 | 0) == 0;
+   if (!$243) {
+    label = 32;
+    break L16;
+   }
+   $245 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+   $246 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+   $247 = $246 ^ $245;
+   SAFE_HEAP_STORE($15 >> 0 | 0, $247 | 0, 1);
+   $248 = SAFE_HEAP_LOAD($82 >> 0 | 0, 1, 0) | 0 | 0;
+   $249 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+   $250 = $249 ^ $248;
+   SAFE_HEAP_STORE($39 >> 0 | 0, $250 | 0, 1);
+   $251 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+   $252 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+   $253 = $252 ^ $251;
+   SAFE_HEAP_STORE($42 >> 0 | 0, $253 | 0, 1);
+   $254 = SAFE_HEAP_LOAD($84 >> 0 | 0, 1, 0) | 0 | 0;
+   $255 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+   $256 = $255 ^ $254;
+   SAFE_HEAP_STORE($45 >> 0 | 0, $256 | 0, 1);
+   $257 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+   $258 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+   $259 = $258 ^ $257;
+   SAFE_HEAP_STORE($48 >> 0 | 0, $259 | 0, 1);
+   $260 = SAFE_HEAP_LOAD($86 >> 0 | 0, 1, 0) | 0 | 0;
+   $261 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+   $262 = $261 ^ $260;
+   SAFE_HEAP_STORE($51 >> 0 | 0, $262 | 0, 1);
+   $263 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 0) | 0 | 0;
+   $264 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+   $265 = $264 ^ $263;
+   SAFE_HEAP_STORE($54 >> 0 | 0, $265 | 0, 1);
+   $266 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+   $267 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+   $268 = $267 ^ $266;
+   SAFE_HEAP_STORE($57 >> 0 | 0, $268 | 0, 1);
+   $269 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+   $270 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+   $271 = $270 ^ $269;
+   SAFE_HEAP_STORE($60 >> 0 | 0, $271 | 0, 1);
+   $272 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 0) | 0 | 0;
+   $273 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+   $274 = $273 ^ $272;
+   SAFE_HEAP_STORE($63 >> 0 | 0, $274 | 0, 1);
+   $275 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+   $276 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+   $277 = $276 ^ $275;
+   SAFE_HEAP_STORE($66 >> 0 | 0, $277 | 0, 1);
+   $278 = SAFE_HEAP_LOAD($92 >> 0 | 0, 1, 0) | 0 | 0;
+   $279 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+   $280 = $279 ^ $278;
+   SAFE_HEAP_STORE($69 >> 0 | 0, $280 | 0, 1);
+   $281 = SAFE_HEAP_LOAD($93 >> 0 | 0, 1, 0) | 0 | 0;
+   $282 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+   $283 = $282 ^ $281;
+   SAFE_HEAP_STORE($72 >> 0 | 0, $283 | 0, 1);
+   $284 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+   $285 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+   $286 = $285 ^ $284;
+   SAFE_HEAP_STORE($75 >> 0 | 0, $286 | 0, 1);
+   $287 = SAFE_HEAP_LOAD($95 >> 0 | 0, 1, 0) | 0 | 0;
+   $288 = SAFE_HEAP_LOAD($76 >> 0 | 0, 1, 0) | 0 | 0;
+   $289 = $288 ^ $287;
+   SAFE_HEAP_STORE($78 >> 0 | 0, $289 | 0, 1);
+   $290 = SAFE_HEAP_LOAD($96 >> 0 | 0, 1, 0) | 0 | 0;
+   $291 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+   $292 = $291 ^ $290;
+   SAFE_HEAP_STORE($81 >> 0 | 0, $292 | 0, 1);
+   $293 = __gcry_cipher_encrypt($190, $36, 16, $15, 16) | 0;
+   $294 = ($293 | 0) == 0;
+   if (!$294) {
+    label = 35;
+    break L16;
+   }
+   if ($99) {
+    $$0$lcssa122$i = $13;
+    $$074$lcssa121$i = 16;
+    label = 38;
+   } else {
+    $$0108$i = $13;
+    $$074107$i = 16;
+    while (1) {
+     SAFE_HEAP_STORE($$0108$i >> 0 | 0, 0 | 0, 1);
+     $296 = $$0108$i + 1 | 0;
+     $297 = $$074107$i + -1 | 0;
+     $298 = $296;
+     $299 = $298 & 7;
+     $300 = ($299 | 0) != 0;
+     $301 = ($297 | 0) != 0;
+     $302 = $301 & $300;
+     if ($302) {
+      $$0108$i = $296;
+      $$074107$i = $297;
+     } else {
+      break;
+     }
+    }
+    $303 = $297 >>> 0 < 8;
+    if ($303) {
+     $$3$ph$i = $296;
+     $$377$ph$i = $297;
+    } else {
+     $$0$lcssa122$i = $296;
+     $$074$lcssa121$i = $297;
+     label = 38;
+    }
+   }
+   if ((label | 0) == 38) {
+    label = 0;
+    $304 = $$074$lcssa121$i + -8 | 0;
+    $305 = $304 & -8;
+    $$1$i = $$0$lcssa122$i;
+    $$175$i = $$074$lcssa121$i;
+    while (1) {
+     $306 = $$1$i;
+     $307 = $306;
+     SAFE_HEAP_STORE($307 | 0, 0 | 0, 4);
+     $308 = $306 + 4 | 0;
+     $309 = $308;
+     SAFE_HEAP_STORE($309 | 0, 0 | 0, 4);
+     $310 = $$175$i + -8 | 0;
+     $311 = $$1$i + 8 | 0;
+     $312 = $310 >>> 0 > 7;
+     if ($312) {
+      $$1$i = $311;
+      $$175$i = $310;
+     } else {
+      break;
+     }
+    }
+    $313 = $305 + 8 | 0;
+    $314 = $304 - $305 | 0;
+    $scevgep120$i = $$0$lcssa122$i + $313 | 0;
+    $$3$ph$i = $scevgep120$i;
+    $$377$ph$i = $314;
+   }
+   $315 = ($$377$ph$i | 0) == 0;
+   if (!$315) {
+    $$3105$i = $$3$ph$i;
+    $$377104$i = $$377$ph$i;
+    while (1) {
+     SAFE_HEAP_STORE($$3105$i >> 0 | 0, 0 | 0, 1);
+     $316 = $$3105$i + 1 | 0;
+     $317 = $$377104$i + -1 | 0;
+     $318 = ($317 | 0) == 0;
+     if ($318) {
+      break;
+     } else {
+      $$3105$i = $316;
+      $$377104$i = $317;
+     }
+    }
+   }
+   if ($102) {
+    $$078$lcssa124$i = 16;
+    $$082$lcssa123$i = $15;
+    label = 46;
+   } else {
+    $$078100$i = 16;
+    $$08299$i = $15;
+    while (1) {
+     SAFE_HEAP_STORE($$08299$i >> 0 | 0, 0 | 0, 1);
+     $319 = $$08299$i + 1 | 0;
+     $320 = $$078100$i + -1 | 0;
+     $321 = $319;
+     $322 = $321 & 7;
+     $323 = ($322 | 0) != 0;
+     $324 = ($320 | 0) != 0;
+     $325 = $324 & $323;
+     if ($325) {
+      $$078100$i = $320;
+      $$08299$i = $319;
+     } else {
+      break;
+     }
+    }
+    $326 = $320 >>> 0 < 8;
+    if ($326) {
+     $$381$ph$i = $320;
+     $$385$ph$i = $319;
+    } else {
+     $$078$lcssa124$i = $320;
+     $$082$lcssa123$i = $319;
+     label = 46;
+    }
+   }
+   if ((label | 0) == 46) {
+    label = 0;
+    $327 = $$078$lcssa124$i + -8 | 0;
+    $328 = $327 & -8;
+    $$179$i = $$078$lcssa124$i;
+    $$183$i = $$082$lcssa123$i;
+    while (1) {
+     $329 = $$183$i;
+     $330 = $329;
+     SAFE_HEAP_STORE($330 | 0, 0 | 0, 4);
+     $331 = $329 + 4 | 0;
+     $332 = $331;
+     SAFE_HEAP_STORE($332 | 0, 0 | 0, 4);
+     $333 = $$179$i + -8 | 0;
+     $334 = $$183$i + 8 | 0;
+     $335 = $333 >>> 0 > 7;
+     if ($335) {
+      $$179$i = $333;
+      $$183$i = $334;
+     } else {
+      break;
+     }
+    }
+    $336 = $328 + 8 | 0;
+    $337 = $327 - $328 | 0;
+    $scevgep$i = $$082$lcssa123$i + $336 | 0;
+    $$381$ph$i = $337;
+    $$385$ph$i = $scevgep$i;
+   }
+   $338 = ($$381$ph$i | 0) == 0;
+   if (!$338) {
+    $$38198$i = $$381$ph$i;
+    $$38597$i = $$385$ph$i;
+    while (1) {
+     SAFE_HEAP_STORE($$38597$i >> 0 | 0, 0 | 0, 1);
+     $339 = $$38597$i + 1 | 0;
+     $340 = $$38198$i + -1 | 0;
+     $341 = ($340 | 0) == 0;
+     if ($341) {
+      break;
+     } else {
+      $$38198$i = $340;
+      $$38597$i = $339;
+     }
+    }
+   }
+   $342 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+   $343 = $342 + 1 | 0;
+   SAFE_HEAP_STORE($19 | 0, $343 | 0, 4);
+   $344 = SAFE_HEAP_LOAD($103 >> 0 | 0, 1, 0) | 0 | 0;
+   $345 = $344 << 24 >> 24 == 0;
+   if (!$345) {
+    $346 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+    $347 = ($346 | 0) == (0 | 0);
+    $348 = SAFE_HEAP_LOAD(17674 * 4 | 0, 4, 0) | 0 | 0;
+    $349 = ($348 | 0) == ($2 | 0);
+    $or$cond = $347 | $349;
+    $350 = SAFE_HEAP_LOAD(17675 * 4 | 0, 4, 0) | 0 | 0;
+    $351 = ($350 | 0) == ($2 | 0);
+    $or$cond82 = $or$cond | $351;
+    $352 = SAFE_HEAP_LOAD(17676 * 4 | 0, 4, 0) | 0 | 0;
+    $353 = ($352 | 0) == ($2 | 0);
+    $or$cond84 = $or$cond82 | $353;
+    if (!$or$cond84) {
+     label = 58;
+     break;
+    }
+   }
+   $354 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+   $$mask79 = $354 & 2;
+   $355 = $$mask79 << 24 >> 24 == 0;
+   if (!$355) {
+    label = 55;
+    break;
+   }
+   dest = $104;
+   src = $16;
+   stop = dest + 16 | 0;
+   do {
+    SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+    dest = dest + 1 | 0;
+    src = src + 1 | 0;
+   } while ((dest | 0) < (stop | 0));
+   $356 = $354 | 2;
+   SAFE_HEAP_STORE($10 >> 0 | 0, $356 | 0, 1);
+  }
+  if ((label | 0) == 55) {
+   label = 0;
+   $357 = _memcmp($104, $16, 16) | 0;
+   $358 = ($357 | 0) == 0;
+   if ($358) {
+    label = 56;
+    break;
+   }
+   $359 = $$078$ph122 >>> 0 < 16;
+   $360 = $359 ? $$078$ph122 : 16;
+   dest = $104;
+   src = $16;
+   stop = dest + 16 | 0;
+   do {
+    SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+    dest = dest + 1 | 0;
+    src = src + 1 | 0;
+   } while ((dest | 0) < (stop | 0));
+   $363 = $360;
+  } else if ((label | 0) == 58) {
+   label = 0;
+   $361 = $$078$ph122 >>> 0 < 16;
+   $362 = $361 ? $$078$ph122 : 16;
+   $363 = $362;
+  }
+  _memcpy($$071$ph124 | 0, $16 | 0, $363 | 0) | 0;
+  if ($108) {
+   $$072$lcssa150 = 16;
+   $$073$lcssa149 = $16;
+   label = 62;
+  } else {
+   $$072115 = 16;
+   $$073114 = $16;
+   while (1) {
+    SAFE_HEAP_STORE($$073114 >> 0 | 0, 0 | 0, 1);
+    $364 = $$073114 + 1 | 0;
+    $365 = $$072115 + -1 | 0;
+    $366 = $364;
+    $367 = $366 & 7;
+    $368 = ($367 | 0) != 0;
+    $369 = ($365 | 0) != 0;
+    $370 = $369 & $368;
+    if ($370) {
+     $$072115 = $365;
+     $$073114 = $364;
+    } else {
+     break;
+    }
+   }
+   $371 = $365 >>> 0 < 8;
+   if ($371) {
+    $$3$ph = $365;
+    $$376$ph = $364;
+   } else {
+    $$072$lcssa150 = $365;
+    $$073$lcssa149 = $364;
+    label = 62;
+   }
+  }
+  if ((label | 0) == 62) {
+   label = 0;
+   $372 = $$072$lcssa150 + -8 | 0;
+   $373 = $372 & -8;
+   $scevgep = $$073$lcssa149 + 8 | 0;
+   $$1 = $$072$lcssa150;
+   $$174 = $$073$lcssa149;
+   while (1) {
+    $374 = $$174;
+    $375 = $374;
+    SAFE_HEAP_STORE($375 | 0, 0 | 0, 4);
+    $376 = $374 + 4 | 0;
+    $377 = $376;
+    SAFE_HEAP_STORE($377 | 0, 0 | 0, 4);
+    $378 = $$1 + -8 | 0;
+    $379 = $$174 + 8 | 0;
+    $380 = $378 >>> 0 > 7;
+    if ($380) {
+     $$1 = $378;
+     $$174 = $379;
+    } else {
+     break;
+    }
+   }
+   $381 = $372 - $373 | 0;
+   $scevgep148 = $scevgep + $373 | 0;
+   $$3$ph = $381;
+   $$376$ph = $scevgep148;
+  }
+  $382 = ($$3$ph | 0) == 0;
+  if (!$382) {
+   $$3119 = $$3$ph;
+   $$376118 = $$376$ph;
+   while (1) {
+    SAFE_HEAP_STORE($$376118 >> 0 | 0, 0 | 0, 1);
+    $383 = $$376118 + 1 | 0;
+    $384 = $$3119 + -1 | 0;
+    $385 = ($384 | 0) == 0;
+    if ($385) {
+     break;
+    } else {
+     $$3119 = $384;
+     $$376118 = $383;
+    }
+   }
+  }
+  $386 = $$071$ph124 + $363 | 0;
+  $387 = $$078$ph122 - $363 | 0;
+  $388 = ($387 | 0) == 0;
+  if ($388) {
+   $$0 = 0;
+   label = 68;
+   break;
+  } else {
+   $$071$ph124 = $386;
+   $$078$ph122 = $387;
+  }
+ }
+ if ((label | 0) == 16) {
+  __gcry_assert_failed(51340, 51065, 274, 51443);
+ } else if ((label | 0) == 22) {
+  $138 = ___errno_location() | 0;
+  $139 = SAFE_HEAP_LOAD($138 | 0, 4, 0) | 0 | 0;
+  $140 = _strerror($139) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $140 | 0, 4);
+  __gcry_log_fatal(51455, $vararg_buffer);
+ } else if ((label | 0) == 30) {
+  $193 = __gcry_strerror($191) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $193 | 0, 4);
+  __gcry_log_fatal(51482, $vararg_buffer1);
+ } else if ((label | 0) == 32) {
+  $244 = __gcry_strerror($242) | 0;
+  SAFE_HEAP_STORE($vararg_buffer4 | 0, $244 | 0, 4);
+  __gcry_log_fatal(51482, $vararg_buffer4);
+ } else if ((label | 0) == 35) {
+  $295 = __gcry_strerror($293) | 0;
+  SAFE_HEAP_STORE($vararg_buffer7 | 0, $295 | 0, 4);
+  __gcry_log_fatal(51482, $vararg_buffer7);
+ } else if ((label | 0) == 56) {
+  __gcry_fips_signal_error(51065, 502, 51359, 0, 51516);
+  $$0 = -1;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else if ((label | 0) == 68) {
+  STACKTOP = sp;
+  return $$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, $$0$lcssa$i = 0, $$0$lcssa$i$i = 0, $$0$lcssa$i$i163 = 0, 
$$0$lcssa$i$i223 = 0, $$0$lcssa$i279 = 0, $$0134296 = 0, $$0134296$us = 0, 
$$0135 = 0, $$0139 = 0, $$0143 = 0, $$024$lcssa$i = 0, $$024$lcssa$i278 = 0, 
$$02432$i = 0, $$02432$i271 = 0, $$025$lcssa$i = 0, $$025$lcssa$i277 = 0, 
$$02531$i = 0, $$02531$i272 = 0, $$026$ph$i = 0;
+ var $$026$ph$i282 = 0, $$02629$i = 0, $$02629$i286 = 0, $$027$ph$i = 0, 
$$027$ph$i281 = 0, $$02728$i = 0, $$02728$i287 = 0, $$033$i = 0, $$033$i270 = 
0, $$050$ph$i$i = 0, $$050$ph$i$i167 = 0, $$050$ph$i$i227 = 0, 
$$050$ph$i$i257$us = 0, $$05061$i$i = 0, $$05061$i$i171 = 0, $$05061$i$i201 = 
0, $$05061$i$i231 = 0, $$05061$i$i261 = 0, $$05061$i$i261$us = 0, $$05166$i$i = 
0;
+ var $$05166$i$i150 = 0, $$05166$i$i180 = 0, $$05166$i$i210 = 0, 
$$05166$i$i240$us = 0, $$052$lcssa$i$i = 0, $$052$lcssa$i$i162 = 0, 
$$052$lcssa$i$i222 = 0, $$053$lcssa$i$i = 0, $$053$lcssa$i$i161 = 0, 
$$053$lcssa$i$i221 = 0, $$05364$i$i = 0, $$05364$i$i151 = 0, $$05364$i$i181 = 
0, $$05364$i$i211 = 0, $$05364$i$i241$us = 0, $$054$lcssa$i$i = 0, 
$$054$lcssa$i$i160 = 0, $$054$lcssa$i$i220 = 0, $$05463$i$i = 0, $$05463$i$i152 
= 0;
+ var $$05463$i$i182 = 0, $$05463$i$i212 = 0, $$05463$i$i242$us = 0, 
$$055$ph$i$i = 0, $$055$ph$i$i166 = 0, $$055$ph$i$i226 = 0, $$055$ph$i$i256$us 
= 0, $$05560$i$i = 0, $$05560$i$i172 = 0, $$05560$i$i202 = 0, $$05560$i$i232 = 
0, $$05560$i$i262 = 0, $$05560$i$i262$us = 0, $$05659$i$i = 0, $$05659$i$i173 = 
0, $$05659$i$i203 = 0, $$05659$i$i233 = 0, $$05659$i$i263 = 0, 
$$05659$i$i263$us = 0, $$057$ph$i$i = 0;
+ var $$057$ph$i$i165 = 0, $$057$ph$i$i225 = 0, $$057$ph$i$i255$us = 0, 
$$05758$i$i204 = 0, $$067$i$i = 0, $$067$i$i149 = 0, $$067$i$i179 = 0, 
$$067$i$i209 = 0, $$067$i$i239$us = 0, $$1 = 0, $$1$ph$i = 0, $$1$ph$i$i = 0, 
$$1$ph$i$i168 = 0, $$1$ph$i$i228 = 0, $$1$ph$i$i258$us = 0, $$1$ph$i283 = 0, 
$$1136295 = 0, $$1136295$us = 0, $$1140292 = 0, $$1140292$us = 0;
+ var $$1144291 = 0, $$1144291$us = 0, $$130$i = 0, $$130$i285 = 0, $$162$i$i = 
0, $$162$i$i170 = 0, $$162$i$i200 = 0, $$162$i$i230 = 0, $$162$i$i260 = 0, 
$$162$i$i260$us = 0, $$2 = 0, $$2137 = 0, $$2141 = 0, $$2145 = 0, $$3 = 0, 
$$3138 = 0, $$3142 = 0, $$3146 = 0, $$pre = 0, $$pre311 = 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, $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, $or$cond = 0, $scevgep$i = 0, $scevgep$i$i = 0, $scevgep$i$i154 = 0, 
$scevgep$i$i184 = 0, $scevgep$i$i214 = 0, $scevgep$i$i244$us = 0, $scevgep$i267 
= 0, $scevgep42$i = 0, $scevgep42$i268 = 0, $scevgep82$i$i = 0;
+ var $scevgep82$i$i147 = 0, $scevgep82$i$i177 = 0, $scevgep82$i$i207 = 0, 
$scevgep82$i$i237$us = 0, $scevgep84$i$i = 0, $scevgep84$i$i155 = 0, 
$scevgep84$i$i185 = 0, $scevgep84$i$i215 = 0, $scevgep84$i$i245 = 0, label = 0, 
sp = 0;
+ sp = STACKTOP;
+ $5 = $0 + 12 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 36 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $6 + 20 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $10 << 1;
+ $12 = $2 >>> 0 < $4 >>> 0;
+ if ($12) {
+  $$0 = 200;
+  return $$0 | 0;
+ }
+ $13 = $0 + 112 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 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;
+  if ($26) {
+   $27 = $4 >>> 0 > 3;
+   if ($27) {
+    $28 = $4 + -4 | 0;
+    $29 = $28 & -4;
+    $30 = $29 + 4 | 0;
+    $$05166$i$i = $3;
+    $$05364$i$i = $19;
+    $$05463$i$i = $1;
+    $$067$i$i = $4;
+    while (1) {
+     $31 = $$05166$i$i + 4 | 0;
+     $32 = SAFE_HEAP_LOAD($$05166$i$i | 0, 4, 0) | 0 | 0;
+     $33 = SAFE_HEAP_LOAD($$05364$i$i | 0, 4, 0) | 0 | 0;
+     $34 = $33 ^ $32;
+     $35 = $$05463$i$i + 4 | 0;
+     SAFE_HEAP_STORE($$05463$i$i | 0, $34 | 0, 4);
+     $36 = $$05364$i$i + 4 | 0;
+     SAFE_HEAP_STORE($$05364$i$i | 0, $32 | 0, 4);
+     $37 = $$067$i$i + -4 | 0;
+     $38 = $37 >>> 0 > 3;
+     if ($38) {
+      $$05166$i$i = $31;
+      $$05364$i$i = $36;
+      $$05463$i$i = $35;
+      $$067$i$i = $37;
+     } else {
+      break;
+     }
+    }
+    $scevgep82$i$i = $1 + $30 | 0;
+    $scevgep$i$i = $3 + $30 | 0;
+    $scevgep84$i$i = $19 + $30 | 0;
+    $39 = $28 - $29 | 0;
+    $$0$lcssa$i$i = $39;
+    $$052$lcssa$i$i = $scevgep$i$i;
+    $$053$lcssa$i$i = $scevgep84$i$i;
+    $$054$lcssa$i$i = $scevgep82$i$i;
+   } else {
+    $$0$lcssa$i$i = $4;
+    $$052$lcssa$i$i = $3;
+    $$053$lcssa$i$i = $19;
+    $$054$lcssa$i$i = $1;
+   }
+   $$050$ph$i$i = $$054$lcssa$i$i;
+   $$055$ph$i$i = $$053$lcssa$i$i;
+   $$057$ph$i$i = $$052$lcssa$i$i;
+   $$1$ph$i$i = $$0$lcssa$i$i;
+  } else {
+   $$050$ph$i$i = $1;
+   $$055$ph$i$i = $19;
+   $$057$ph$i$i = $3;
+   $$1$ph$i$i = $4;
+  }
+  $40 = ($$1$ph$i$i | 0) == 0;
+  if ($40) {
+   $50 = $14;
+  } else {
+   $$05061$i$i = $$050$ph$i$i;
+   $$05560$i$i = $$055$ph$i$i;
+   $$05659$i$i = $$057$ph$i$i;
+   $$162$i$i = $$1$ph$i$i;
+   while (1) {
+    $41 = $$05659$i$i + 1 | 0;
+    $42 = SAFE_HEAP_LOAD($$05659$i$i >> 0 | 0, 1, 0) | 0 | 0;
+    $43 = SAFE_HEAP_LOAD($$05560$i$i >> 0 | 0, 1, 0) | 0 | 0;
+    $44 = $42 ^ $43;
+    $45 = $$05061$i$i + 1 | 0;
+    SAFE_HEAP_STORE($$05061$i$i >> 0 | 0, $44 | 0, 1);
+    $46 = $$05560$i$i + 1 | 0;
+    SAFE_HEAP_STORE($$05560$i$i >> 0 | 0, $42 | 0, 1);
+    $47 = $$162$i$i + -1 | 0;
+    $48 = ($47 | 0) == 0;
+    if ($48) {
+     break;
+    } else {
+     $$05061$i$i = $45;
+     $$05560$i$i = $46;
+     $$05659$i$i = $41;
+     $$162$i$i = $47;
+    }
+   }
+   $$pre = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $50 = $$pre;
+  }
+  $49 = $50 - $4 | 0;
+  SAFE_HEAP_STORE($13 | 0, $49 | 0, 4);
+  $$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 = $64 & $63;
+  if ($or$cond) {
+   $65 = $14 + -4 | 0;
+   $66 = $65 & -4;
+   $67 = $66 + 4 | 0;
+   $$05166$i$i180 = $3;
+   $$05364$i$i181 = $56;
+   $$05463$i$i182 = $1;
+   $$067$i$i179 = $14;
+   while (1) {
+    $68 = $$05166$i$i180 + 4 | 0;
+    $69 = SAFE_HEAP_LOAD($$05166$i$i180 | 0, 4, 0) | 0 | 0;
+    $70 = SAFE_HEAP_LOAD($$05364$i$i181 | 0, 4, 0) | 0 | 0;
+    $71 = $70 ^ $69;
+    $72 = $$05463$i$i182 + 4 | 0;
+    SAFE_HEAP_STORE($$05463$i$i182 | 0, $71 | 0, 4);
+    $73 = $$05364$i$i181 + 4 | 0;
+    SAFE_HEAP_STORE($$05364$i$i181 | 0, $69 | 0, 4);
+    $74 = $$067$i$i179 + -4 | 0;
+    $75 = $74 >>> 0 > 3;
+    if ($75) {
+     $$05166$i$i180 = $68;
+     $$05364$i$i181 = $73;
+     $$05463$i$i182 = $72;
+     $$067$i$i179 = $74;
+    } else {
+     break;
+    }
+   }
+   $scevgep82$i$i177 = $1 + $67 | 0;
+   $scevgep$i$i184 = $3 + $67 | 0;
+   $scevgep84$i$i185 = $56 + $67 | 0;
+   $76 = $65 - $66 | 0;
+   $77 = ($76 | 0) == 0;
+   if ($77) {
+    $89 = $14;
+   } else {
+    $$05061$i$i201 = $scevgep82$i$i177;
+    $$05560$i$i202 = $scevgep84$i$i185;
+    $$05659$i$i203 = $scevgep$i$i184;
+    $$05758$i$i204 = $scevgep$i$i184;
+    $$162$i$i200 = $76;
+    label = 18;
+   }
+  } else {
+   $$05061$i$i201 = $1;
+   $$05560$i$i202 = $56;
+   $$05659$i$i203 = $3;
+   $$05758$i$i204 = $3;
+   $$162$i$i200 = $14;
+   label = 18;
+  }
+  if ((label | 0) == 18) {
+   while (1) {
+    label = 0;
+    $78 = $$05659$i$i203 + 1 | 0;
+    $79 = SAFE_HEAP_LOAD($$05659$i$i203 >> 0 | 0, 1, 0) | 0 | 0;
+    $80 = SAFE_HEAP_LOAD($$05560$i$i202 >> 0 | 0, 1, 0) | 0 | 0;
+    $81 = $$05758$i$i204 + 1 | 0;
+    $82 = SAFE_HEAP_LOAD($$05758$i$i204 >> 0 | 0, 1, 0) | 0 | 0;
+    $83 = $82 ^ $80;
+    $84 = $$05061$i$i201 + 1 | 0;
+    SAFE_HEAP_STORE($$05061$i$i201 >> 0 | 0, $83 | 0, 1);
+    $85 = $$05560$i$i202 + 1 | 0;
+    SAFE_HEAP_STORE($$05560$i$i202 >> 0 | 0, $79 | 0, 1);
+    $86 = $$162$i$i200 + -1 | 0;
+    $87 = ($86 | 0) == 0;
+    if ($87) {
+     break;
+    } else {
+     $$05061$i$i201 = $84;
+     $$05560$i$i202 = $85;
+     $$05659$i$i203 = $78;
+     $$05758$i$i204 = $81;
+     $$162$i$i200 = $86;
+     label = 18;
+    }
+   }
+   $$pre311 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $89 = $$pre311;
+  }
+  $88 = $1 + $89 | 0;
+  $90 = $3 + $89 | 0;
+  SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+  $$0135 = $88;
+  $$0139 = $90;
+  $$0143 = $52;
+ }
+ $91 = $$0143 >>> 0 < $11 >>> 0;
+ L35 : do {
+  if ($91) {
+   $$1 = 0;
+   $$2137 = $$0135;
+   $$2141 = $$0139;
+   $$2145 = $$0143;
+  } else {
+   $92 = $0 + 24 | 0;
+   $93 = SAFE_HEAP_LOAD($92 | 0, 4, 0) | 0 | 0;
+   $94 = ($93 | 0) == (0 | 0);
+   if (!$94) {
+    $134 = ($$0143 >>> 0) / ($10 >>> 0) & -1;
+    $135 = $0 + 496 | 0;
+    $136 = $0 + 64 | 0;
+    FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($93 | 0, 127 | 0) | 0) & 127]($135, 
$136, $$0135, $$0139, $134);
+    $137 = Math_imul($134, $10) | 0;
+    $138 = $$0135 + $137 | 0;
+    $139 = $$0139 + $137 | 0;
+    $140 = $$0143 - $137 | 0;
+    $$1 = 0;
+    $$2137 = $138;
+    $$2141 = $139;
+    $$2145 = $140;
+    break;
+   }
+   $95 = $0 + 496 | 0;
+   $96 = $0 + 64 | 0;
+   $97 = $96;
+   $98 = $10 >>> 0 > 3;
+   $99 = $10 + -4 | 0;
+   $100 = $99 & -4;
+   $101 = $100 + 4 | 0;
+   $scevgep84$i$i245 = $96 + $101 | 0;
+   $102 = $99 - $100 | 0;
+   if ($98) {
+    $$0134296$us = 0;
+    $$1136295$us = $$0135;
+    $$1140292$us = $$0139;
+    $$1144291$us = $$0143;
+   } else {
+    $103 = ($10 | 0) == 0;
+    $$0134296 = 0;
+    $$1136295 = $$0135;
+    $$1140292 = $$0139;
+    $$1144291 = $$0143;
+    while (1) {
+     $141 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 
127]($95, $96, $96) | 0;
+     $142 = $141 >>> 0 > $$0134296 >>> 0;
+     $143 = $142 ? $141 : $$0134296;
+     if (!$103) {
+      $$05061$i$i261 = $$1136295;
+      $$05560$i$i262 = $96;
+      $$05659$i$i263 = $$1140292;
+      $$162$i$i260 = $10;
+      while (1) {
+       $144 = $$05659$i$i263 + 1 | 0;
+       $145 = SAFE_HEAP_LOAD($$05659$i$i263 >> 0 | 0, 1, 0) | 0 | 0;
+       $146 = SAFE_HEAP_LOAD($$05560$i$i262 >> 0 | 0, 1, 0) | 0 | 0;
+       $147 = $145 ^ $146;
+       $148 = $$05061$i$i261 + 1 | 0;
+       SAFE_HEAP_STORE($$05061$i$i261 >> 0 | 0, $147 | 0, 1);
+       $149 = $$05560$i$i262 + 1 | 0;
+       SAFE_HEAP_STORE($$05560$i$i262 >> 0 | 0, $145 | 0, 1);
+       $150 = $$162$i$i260 + -1 | 0;
+       $151 = ($150 | 0) == 0;
+       if ($151) {
+        break;
+       } else {
+        $$05061$i$i261 = $148;
+        $$05560$i$i262 = $149;
+        $$05659$i$i263 = $144;
+        $$162$i$i260 = $150;
+       }
+      }
+     }
+     $152 = $$1136295 + $10 | 0;
+     $153 = $$1140292 + $10 | 0;
+     $154 = $$1144291 - $10 | 0;
+     $155 = $154 >>> 0 < $11 >>> 0;
+     if ($155) {
+      $$1 = $143;
+      $$2137 = $152;
+      $$2141 = $153;
+      $$2145 = $154;
+      break L35;
+     } else {
+      $$0134296 = $143;
+      $$1136295 = $152;
+      $$1140292 = $153;
+      $$1144291 = $154;
+     }
+    }
+   }
+   while (1) {
+    $104 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($95, 
$96, $96) | 0;
+    $105 = $104 >>> 0 > $$0134296$us >>> 0;
+    $106 = $105 ? $104 : $$0134296$us;
+    $107 = $$1140292$us;
+    $108 = $$1136295$us;
+    $109 = $107 | $97;
+    $110 = $109 | $108;
+    $111 = $110 & 3;
+    $112 = ($111 | 0) == 0;
+    if ($112) {
+     $$05166$i$i240$us = $$1140292$us;
+     $$05364$i$i241$us = $96;
+     $$05463$i$i242$us = $$1136295$us;
+     $$067$i$i239$us = $10;
+     while (1) {
+      $113 = $$05166$i$i240$us + 4 | 0;
+      $114 = SAFE_HEAP_LOAD($$05166$i$i240$us | 0, 4, 0) | 0 | 0;
+      $115 = SAFE_HEAP_LOAD($$05364$i$i241$us | 0, 4, 0) | 0 | 0;
+      $116 = $115 ^ $114;
+      $117 = $$05463$i$i242$us + 4 | 0;
+      SAFE_HEAP_STORE($$05463$i$i242$us | 0, $116 | 0, 4);
+      $118 = $$05364$i$i241$us + 4 | 0;
+      SAFE_HEAP_STORE($$05364$i$i241$us | 0, $114 | 0, 4);
+      $119 = $$067$i$i239$us + -4 | 0;
+      $120 = $119 >>> 0 > 3;
+      if ($120) {
+       $$05166$i$i240$us = $113;
+       $$05364$i$i241$us = $118;
+       $$05463$i$i242$us = $117;
+       $$067$i$i239$us = $119;
+      } else {
+       break;
+      }
+     }
+     $scevgep82$i$i237$us = $$1136295$us + $101 | 0;
+     $scevgep$i$i244$us = $$1140292$us + $101 | 0;
+     $$050$ph$i$i257$us = $scevgep82$i$i237$us;
+     $$055$ph$i$i256$us = $scevgep84$i$i245;
+     $$057$ph$i$i255$us = $scevgep$i$i244$us;
+     $$1$ph$i$i258$us = $102;
+    } else {
+     $$050$ph$i$i257$us = $$1136295$us;
+     $$055$ph$i$i256$us = $96;
+     $$057$ph$i$i255$us = $$1140292$us;
+     $$1$ph$i$i258$us = $10;
+    }
+    $121 = ($$1$ph$i$i258$us | 0) == 0;
+    if (!$121) {
+     $$05061$i$i261$us = $$050$ph$i$i257$us;
+     $$05560$i$i262$us = $$055$ph$i$i256$us;
+     $$05659$i$i263$us = $$057$ph$i$i255$us;
+     $$162$i$i260$us = $$1$ph$i$i258$us;
+     while (1) {
+      $122 = $$05659$i$i263$us + 1 | 0;
+      $123 = SAFE_HEAP_LOAD($$05659$i$i263$us >> 0 | 0, 1, 0) | 0 | 0;
+      $124 = SAFE_HEAP_LOAD($$05560$i$i262$us >> 0 | 0, 1, 0) | 0 | 0;
+      $125 = $123 ^ $124;
+      $126 = $$05061$i$i261$us + 1 | 0;
+      SAFE_HEAP_STORE($$05061$i$i261$us >> 0 | 0, $125 | 0, 1);
+      $127 = $$05560$i$i262$us + 1 | 0;
+      SAFE_HEAP_STORE($$05560$i$i262$us >> 0 | 0, $123 | 0, 1);
+      $128 = $$162$i$i260$us + -1 | 0;
+      $129 = ($128 | 0) == 0;
+      if ($129) {
+       break;
+      } else {
+       $$05061$i$i261$us = $126;
+       $$05560$i$i262$us = $127;
+       $$05659$i$i263$us = $122;
+       $$162$i$i260$us = $128;
+      }
+     }
+    }
+    $130 = $$1136295$us + $10 | 0;
+    $131 = $$1140292$us + $10 | 0;
+    $132 = $$1144291$us - $10 | 0;
+    $133 = $132 >>> 0 < $11 >>> 0;
+    if ($133) {
+     $$1 = $106;
+     $$2137 = $130;
+     $$2141 = $131;
+     $$2145 = $132;
+     break;
+    } else {
+     $$0134296$us = $106;
+     $$1136295$us = $130;
+     $$1140292$us = $131;
+     $$1144291$us = $132;
+    }
+   }
+  }
+ } while (0);
+ $156 = $$2145 >>> 0 < $10 >>> 0;
+ if ($156) {
+  $$2 = $$1;
+  $$3138 = $$2137;
+  $$3142 = $$2141;
+  $$3146 = $$2145;
+ } else {
+  $157 = $0 + 96 | 0;
+  $158 = $0 + 64 | 0;
+  $159 = $157;
+  $160 = $158;
+  $161 = $160 | $159;
+  $162 = $161 & 3;
+  $163 = ($162 | 0) == 0;
+  if ($163) {
+   $164 = $10 >>> 0 > 3;
+   if ($164) {
+    $165 = $10 + -4 | 0;
+    $166 = $165 & -4;
+    $167 = $166 + 4 | 0;
+    $scevgep$i267 = $158 + $167 | 0;
+    $$02432$i271 = $158;
+    $$02531$i272 = $157;
+    $$033$i270 = $10;
+    while (1) {
+     $168 = $$02432$i271 + 4 | 0;
+     $169 = SAFE_HEAP_LOAD($$02432$i271 | 0, 4, 0) | 0 | 0;
+     $170 = $$02531$i272 + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i272 | 0, $169 | 0, 4);
+     $171 = $$033$i270 + -4 | 0;
+     $172 = $171 >>> 0 > 3;
+     if ($172) {
+      $$02432$i271 = $168;
+      $$02531$i272 = $170;
+      $$033$i270 = $171;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i268 = ($0 + 96 | 0) + $167 | 0;
+    $173 = $165 - $166 | 0;
+    $$0$lcssa$i279 = $173;
+    $$024$lcssa$i278 = $scevgep$i267;
+    $$025$lcssa$i277 = $scevgep42$i268;
+   } else {
+    $$0$lcssa$i279 = $10;
+    $$024$lcssa$i278 = $158;
+    $$025$lcssa$i277 = $157;
+   }
+   $$026$ph$i282 = $$024$lcssa$i278;
+   $$027$ph$i281 = $$025$lcssa$i277;
+   $$1$ph$i283 = $$0$lcssa$i279;
+  } else {
+   $$026$ph$i282 = $158;
+   $$027$ph$i281 = $157;
+   $$1$ph$i283 = $10;
+  }
+  $174 = ($$1$ph$i283 | 0) == 0;
+  if (!$174) {
+   $$02629$i286 = $$026$ph$i282;
+   $$02728$i287 = $$027$ph$i281;
+   $$130$i285 = $$1$ph$i283;
+   while (1) {
+    $175 = $$02629$i286 + 1 | 0;
+    $176 = SAFE_HEAP_LOAD($$02629$i286 >> 0 | 0, 1, 0) | 0 | 0;
+    $177 = $$02728$i287 + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i287 >> 0 | 0, $176 | 0, 1);
+    $178 = $$130$i285 + -1 | 0;
+    $179 = ($178 | 0) == 0;
+    if ($179) {
+     break;
+    } else {
+     $$02629$i286 = $175;
+     $$02728$i287 = $177;
+     $$130$i285 = $178;
+    }
+   }
+  }
+  $180 = $0 + 496 | 0;
+  $181 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($180, 
$158, $158) | 0;
+  $182 = $181 >>> 0 > $$1 >>> 0;
+  $183 = $182 ? $181 : $$1;
+  $184 = $$2141;
+  $185 = $$2137;
+  $186 = $184 | $160;
+  $187 = $186 | $185;
+  $188 = $187 & 3;
+  $189 = ($188 | 0) == 0;
+  if ($189) {
+   $190 = $10 >>> 0 > 3;
+   if ($190) {
+    $191 = $10 + -4 | 0;
+    $192 = $191 & -4;
+    $193 = $192 + 4 | 0;
+    $$05166$i$i210 = $$2141;
+    $$05364$i$i211 = $158;
+    $$05463$i$i212 = $$2137;
+    $$067$i$i209 = $10;
+    while (1) {
+     $194 = $$05166$i$i210 + 4 | 0;
+     $195 = SAFE_HEAP_LOAD($$05166$i$i210 | 0, 4, 0) | 0 | 0;
+     $196 = SAFE_HEAP_LOAD($$05364$i$i211 | 0, 4, 0) | 0 | 0;
+     $197 = $196 ^ $195;
+     $198 = $$05463$i$i212 + 4 | 0;
+     SAFE_HEAP_STORE($$05463$i$i212 | 0, $197 | 0, 4);
+     $199 = $$05364$i$i211 + 4 | 0;
+     SAFE_HEAP_STORE($$05364$i$i211 | 0, $195 | 0, 4);
+     $200 = $$067$i$i209 + -4 | 0;
+     $201 = $200 >>> 0 > 3;
+     if ($201) {
+      $$05166$i$i210 = $194;
+      $$05364$i$i211 = $199;
+      $$05463$i$i212 = $198;
+      $$067$i$i209 = $200;
+     } else {
+      break;
+     }
+    }
+    $scevgep82$i$i207 = $$2137 + $193 | 0;
+    $scevgep$i$i214 = $$2141 + $193 | 0;
+    $scevgep84$i$i215 = $158 + $193 | 0;
+    $202 = $191 - $192 | 0;
+    $$0$lcssa$i$i223 = $202;
+    $$052$lcssa$i$i222 = $scevgep$i$i214;
+    $$053$lcssa$i$i221 = $scevgep84$i$i215;
+    $$054$lcssa$i$i220 = $scevgep82$i$i207;
+   } else {
+    $$0$lcssa$i$i223 = $10;
+    $$052$lcssa$i$i222 = $$2141;
+    $$053$lcssa$i$i221 = $158;
+    $$054$lcssa$i$i220 = $$2137;
+   }
+   $$050$ph$i$i227 = $$054$lcssa$i$i220;
+   $$055$ph$i$i226 = $$053$lcssa$i$i221;
+   $$057$ph$i$i225 = $$052$lcssa$i$i222;
+   $$1$ph$i$i228 = $$0$lcssa$i$i223;
+  } else {
+   $$050$ph$i$i227 = $$2137;
+   $$055$ph$i$i226 = $158;
+   $$057$ph$i$i225 = $$2141;
+   $$1$ph$i$i228 = $10;
+  }
+  $203 = ($$1$ph$i$i228 | 0) == 0;
+  if (!$203) {
+   $$05061$i$i231 = $$050$ph$i$i227;
+   $$05560$i$i232 = $$055$ph$i$i226;
+   $$05659$i$i233 = $$057$ph$i$i225;
+   $$162$i$i230 = $$1$ph$i$i228;
+   while (1) {
+    $204 = $$05659$i$i233 + 1 | 0;
+    $205 = SAFE_HEAP_LOAD($$05659$i$i233 >> 0 | 0, 1, 0) | 0 | 0;
+    $206 = SAFE_HEAP_LOAD($$05560$i$i232 >> 0 | 0, 1, 0) | 0 | 0;
+    $207 = $205 ^ $206;
+    $208 = $$05061$i$i231 + 1 | 0;
+    SAFE_HEAP_STORE($$05061$i$i231 >> 0 | 0, $207 | 0, 1);
+    $209 = $$05560$i$i232 + 1 | 0;
+    SAFE_HEAP_STORE($$05560$i$i232 >> 0 | 0, $205 | 0, 1);
+    $210 = $$162$i$i230 + -1 | 0;
+    $211 = ($210 | 0) == 0;
+    if ($211) {
+     break;
+    } else {
+     $$05061$i$i231 = $208;
+     $$05560$i$i232 = $209;
+     $$05659$i$i233 = $204;
+     $$162$i$i230 = $210;
+    }
+   }
+  }
+  $212 = $$2137 + $10 | 0;
+  $213 = $$2141 + $10 | 0;
+  $214 = $$2145 - $10 | 0;
+  $$2 = $183;
+  $$3138 = $212;
+  $$3142 = $213;
+  $$3146 = $214;
+ }
+ $215 = ($$3146 | 0) == 0;
+ if ($215) {
+  $$3 = $$2;
+ } else {
+  $216 = $0 + 96 | 0;
+  $217 = $0 + 64 | 0;
+  $218 = $216;
+  $219 = $217;
+  $220 = $219 | $218;
+  $221 = $220 & 3;
+  $222 = ($221 | 0) == 0;
+  if ($222) {
+   $223 = $10 >>> 0 > 3;
+   if ($223) {
+    $224 = $10 + -4 | 0;
+    $225 = $224 & -4;
+    $226 = $225 + 4 | 0;
+    $scevgep$i = $217 + $226 | 0;
+    $$02432$i = $217;
+    $$02531$i = $216;
+    $$033$i = $10;
+    while (1) {
+     $227 = $$02432$i + 4 | 0;
+     $228 = SAFE_HEAP_LOAD($$02432$i | 0, 4, 0) | 0 | 0;
+     $229 = $$02531$i + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i | 0, $228 | 0, 4);
+     $230 = $$033$i + -4 | 0;
+     $231 = $230 >>> 0 > 3;
+     if ($231) {
+      $$02432$i = $227;
+      $$02531$i = $229;
+      $$033$i = $230;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i = ($0 + 96 | 0) + $226 | 0;
+    $232 = $224 - $225 | 0;
+    $$0$lcssa$i = $232;
+    $$024$lcssa$i = $scevgep$i;
+    $$025$lcssa$i = $scevgep42$i;
+   } else {
+    $$0$lcssa$i = $10;
+    $$024$lcssa$i = $217;
+    $$025$lcssa$i = $216;
+   }
+   $$026$ph$i = $$024$lcssa$i;
+   $$027$ph$i = $$025$lcssa$i;
+   $$1$ph$i = $$0$lcssa$i;
+  } else {
+   $$026$ph$i = $217;
+   $$027$ph$i = $216;
+   $$1$ph$i = $10;
+  }
+  $233 = ($$1$ph$i | 0) == 0;
+  if (!$233) {
+   $$02629$i = $$026$ph$i;
+   $$02728$i = $$027$ph$i;
+   $$130$i = $$1$ph$i;
+   while (1) {
+    $234 = $$02629$i + 1 | 0;
+    $235 = SAFE_HEAP_LOAD($$02629$i >> 0 | 0, 1, 0) | 0 | 0;
+    $236 = $$02728$i + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i >> 0 | 0, $235 | 0, 1);
+    $237 = $$130$i + -1 | 0;
+    $238 = ($237 | 0) == 0;
+    if ($238) {
+     break;
+    } else {
+     $$02629$i = $234;
+     $$02728$i = $236;
+     $$130$i = $237;
+    }
+   }
+  }
+  $239 = $0 + 496 | 0;
+  $240 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($239, 
$217, $217) | 0;
+  $241 = $240 >>> 0 > $$2 >>> 0;
+  $242 = $241 ? $240 : $$2;
+  $243 = $10 - $$3146 | 0;
+  SAFE_HEAP_STORE($13 | 0, $243 | 0, 4);
+  $244 = $$3142;
+  $245 = $$3138;
+  $246 = $244 | $219;
+  $247 = $246 | $245;
+  $248 = $247 & 3;
+  $249 = ($248 | 0) == 0;
+  if ($249) {
+   $250 = $$3146 >>> 0 > 3;
+   if ($250) {
+    $251 = $$3146 + -4 | 0;
+    $252 = $251 & -4;
+    $253 = $252 + 4 | 0;
+    $$05166$i$i150 = $$3142;
+    $$05364$i$i151 = $217;
+    $$05463$i$i152 = $$3138;
+    $$067$i$i149 = $$3146;
+    while (1) {
+     $254 = $$05166$i$i150 + 4 | 0;
+     $255 = SAFE_HEAP_LOAD($$05166$i$i150 | 0, 4, 0) | 0 | 0;
+     $256 = SAFE_HEAP_LOAD($$05364$i$i151 | 0, 4, 0) | 0 | 0;
+     $257 = $256 ^ $255;
+     $258 = $$05463$i$i152 + 4 | 0;
+     SAFE_HEAP_STORE($$05463$i$i152 | 0, $257 | 0, 4);
+     $259 = $$05364$i$i151 + 4 | 0;
+     SAFE_HEAP_STORE($$05364$i$i151 | 0, $255 | 0, 4);
+     $260 = $$067$i$i149 + -4 | 0;
+     $261 = $260 >>> 0 > 3;
+     if ($261) {
+      $$05166$i$i150 = $254;
+      $$05364$i$i151 = $259;
+      $$05463$i$i152 = $258;
+      $$067$i$i149 = $260;
+     } else {
+      break;
+     }
+    }
+    $scevgep82$i$i147 = $$3138 + $253 | 0;
+    $scevgep$i$i154 = $$3142 + $253 | 0;
+    $scevgep84$i$i155 = $217 + $253 | 0;
+    $262 = $251 - $252 | 0;
+    $$0$lcssa$i$i163 = $262;
+    $$052$lcssa$i$i162 = $scevgep$i$i154;
+    $$053$lcssa$i$i161 = $scevgep84$i$i155;
+    $$054$lcssa$i$i160 = $scevgep82$i$i147;
+   } else {
+    $$0$lcssa$i$i163 = $$3146;
+    $$052$lcssa$i$i162 = $$3142;
+    $$053$lcssa$i$i161 = $217;
+    $$054$lcssa$i$i160 = $$3138;
+   }
+   $$050$ph$i$i167 = $$054$lcssa$i$i160;
+   $$055$ph$i$i166 = $$053$lcssa$i$i161;
+   $$057$ph$i$i165 = $$052$lcssa$i$i162;
+   $$1$ph$i$i168 = $$0$lcssa$i$i163;
+  } else {
+   $$050$ph$i$i167 = $$3138;
+   $$055$ph$i$i166 = $217;
+   $$057$ph$i$i165 = $$3142;
+   $$1$ph$i$i168 = $$3146;
+  }
+  $263 = ($$1$ph$i$i168 | 0) == 0;
+  if ($263) {
+   $$3 = $242;
+  } else {
+   $$05061$i$i171 = $$050$ph$i$i167;
+   $$05560$i$i172 = $$055$ph$i$i166;
+   $$05659$i$i173 = $$057$ph$i$i165;
+   $$162$i$i170 = $$1$ph$i$i168;
+   while (1) {
+    $264 = $$05659$i$i173 + 1 | 0;
+    $265 = SAFE_HEAP_LOAD($$05659$i$i173 >> 0 | 0, 1, 0) | 0 | 0;
+    $266 = SAFE_HEAP_LOAD($$05560$i$i172 >> 0 | 0, 1, 0) | 0 | 0;
+    $267 = $265 ^ $266;
+    $268 = $$05061$i$i171 + 1 | 0;
+    SAFE_HEAP_STORE($$05061$i$i171 >> 0 | 0, $267 | 0, 1);
+    $269 = $$05560$i$i172 + 1 | 0;
+    SAFE_HEAP_STORE($$05560$i$i172 >> 0 | 0, $265 | 0, 1);
+    $270 = $$162$i$i170 + -1 | 0;
+    $271 = ($270 | 0) == 0;
+    if ($271) {
+     $$3 = $242;
+     break;
+    } else {
+     $$05061$i$i171 = $268;
+     $$05560$i$i172 = $269;
+     $$05659$i$i173 = $264;
+     $$162$i$i170 = $270;
+    }
+   }
+  }
+ }
+ $272 = ($$3 | 0) == 0;
+ if ($272) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $273 = $$3 + 16 | 0;
+ ___gcry_burn_stack($273);
+ $$0 = 0;
+ return $$0 | 0;
+}
+
+function _rsa_generate($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$$i = 0, $$$i36 = 0, $$0 = 0, $$0130$i = 0, $$0131$i = 0, $$0131$us$i = 
0, $$0133$i = 0, $$0133$us$i = 0, $$0141166$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;
+ var $$2$i = 0, $$3$i = 0, $$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;
+ 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, $2 = 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 $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, $notlhs$i = 0, $notrhs$i = 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, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_ptr10 = 0, $vararg_ptr3 = 
0, $vararg_ptr4 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, 
$vararg_ptr8 = 0, $vararg_ptr9 = 0;
+ var dest = 0, label = 0, sp = 0, stop = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 176 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(176 | 0);
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $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 + 88 | 0;
+ $9 = sp + 84 | 0;
+ $10 = sp + 80 | 0;
+ $11 = sp + 56 | 0;
+ $12 = sp + 48 | 0;
+ $13 = sp + 44 | 0;
+ SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+ {}
+ SAFE_HEAP_STORE($11 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($11 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($11 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($11 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($11 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($11 + 20 | 0, 0 | 0 | 0, 4);
+ $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, 46885, 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, 41502, 0) | 0;
+  $24 = ($23 | 0) == (0 | 0);
+  if ($24) {
+   label = 7;
+  } else {
+   $41 = $23;
+   label = 11;
+  }
+ }
+ do {
+  if ((label | 0) == 7) {
+   $25 = __gcry_sexp_find_token($0, 41515, 0) | 0;
+   $26 = ($25 | 0) == (0 | 0);
+   if (!$26) {
+    $27 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    $28 = $27 | 64;
+    SAFE_HEAP_STORE($12 | 0, $28 | 0, 4);
+    __gcry_sexp_release($25);
+   }
+   $29 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $30 = $29 & 64;
+   $31 = ($30 | 0) == 0;
+   if ($31) {
+    $32 = __gcry_fips_mode() | 0;
+    $33 = ($32 | 0) == 0;
+    if ($33) {
+     $151 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     $152 = $151 & 32;
+     $153 = ($152 | 0) == 0;
+     if ($153) {
+      $154 = __gcry_sexp_find_token($0, 48632, 0) | 0;
+      $155 = ($154 | 0) == (0 | 0);
+      if (!$155) {
+       $156 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+       $157 = $156 | 32;
+       SAFE_HEAP_STORE($12 | 0, $157 | 0, 4);
+       __gcry_sexp_release($154);
+      }
+     }
+     $158 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+     $159 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $160 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     $161 = $160 >>> 5;
+     $$lobit = $161 & 1;
+     $162 = __gcry_fips_mode() | 0;
+     $163 = ($162 | 0) == 0;
+     if (!$163) {
+      $164 = $158 >>> 0 > 1023;
+      $165 = ($$lobit | 0) == 0;
+      $or$cond$i35 = $164 & $165;
+      if (!$or$cond$i35) {
+       $$2 = 55;
+       break;
+      }
+     }
+     $166 = 2 - $$lobit | 0;
+     $167 = $158 & 1;
+     $$$i36 = $167 + $158 | 0;
+     $168 = ($159 | 0) == 1;
+     $$0130$i = $168 ? 65537 : $159;
+     $169 = __gcry_mpi_alloc(1) | 0;
+     $170 = ($$0130$i | 0) == 0;
+     if ($170) {
+      __gcry_mpi_set_ui($169, 41) | 0;
+      $171 = __gcry_mpi_new($$$i36) | 0;
+      $172 = $$$i36 >>> 1;
+      $$0131$i = 0;
+      $$0133$i = 0;
+      while (1) {
+       $184 = ($$0131$i | 0) == (0 | 0);
+       if (!$184) {
+        __gcry_mpi_release($$0131$i);
+       }
+       $185 = ($$0133$i | 0) == (0 | 0);
+       if (!$185) {
+        __gcry_mpi_release($$0133$i);
+       }
+       $186 = __gcry_generate_secret_prime($172, $166, 0, 0) | 0;
+       $187 = __gcry_generate_secret_prime($172, $166, 0, 0) | 0;
+       $188 = __gcry_mpi_cmp($186, $187) | 0;
+       $189 = ($188 | 0) > 0;
+       if ($189) {
+        __gcry_mpi_swap($186, $187);
+       }
+       __gcry_mpi_mul($171, $186, $187);
+       $190 = __gcry_mpi_get_nbits($171) | 0;
+       $191 = ($190 | 0) == ($$$i36 | 0);
+       if ($191) {
+        $$1132$lcssa$i = $186;
+        $$1134$lcssa$i = $187;
+        $$1140$i = 0;
+        $208 = $171;
+        break;
+       } else {
+        $$0131$i = $186;
+        $$0133$i = $187;
+       }
+      }
+     } else {
+      $173 = $$0130$i | 1;
+      __gcry_mpi_set_ui($169, $173) | 0;
+      $174 = __gcry_mpi_new($$$i36) | 0;
+      $175 = $$$i36 >>> 1;
+      $$0131$us$i = 0;
+      $$0133$us$i = 0;
+      while (1) {
+       $176 = ($$0131$us$i | 0) == (0 | 0);
+       if (!$176) {
+        __gcry_mpi_release($$0131$us$i);
+       }
+       $177 = ($$0133$us$i | 0) == (0 | 0);
+       if (!$177) {
+        __gcry_mpi_release($$0133$us$i);
+       }
+       $178 = __gcry_generate_secret_prime($175, $166, 73, $169) | 0;
+       $179 = __gcry_generate_secret_prime($175, $166, 73, $169) | 0;
+       $180 = __gcry_mpi_cmp($178, $179) | 0;
+       $181 = ($180 | 0) > 0;
+       if ($181) {
+        __gcry_mpi_swap($178, $179);
+       }
+       __gcry_mpi_mul($174, $178, $179);
+       $182 = __gcry_mpi_get_nbits($174) | 0;
+       $183 = ($182 | 0) == ($$$i36 | 0);
+       if ($183) {
+        $$1132$lcssa$i = $178;
+        $$1134$lcssa$i = $179;
+        $$1140$i = 1;
+        $208 = $174;
+        break;
+       } else {
+        $$0131$us$i = $178;
+        $$0133$us$i = $179;
+       }
+      }
+     }
+     $192 = $$1132$lcssa$i + 4 | 0;
+     $193 = SAFE_HEAP_LOAD($192 | 0, 4, 0) | 0 | 0;
+     $194 = __gcry_mpi_alloc_secure($193) | 0;
+     $195 = SAFE_HEAP_LOAD($192 | 0, 4, 0) | 0 | 0;
+     $196 = __gcry_mpi_alloc_secure($195) | 0;
+     $197 = __gcry_mpi_snew($$$i36) | 0;
+     $198 = __gcry_mpi_snew($$$i36) | 0;
+     $199 = __gcry_mpi_snew($$$i36) | 0;
+     __gcry_mpi_sub_ui($194, $$1132$lcssa$i, 1);
+     __gcry_mpi_sub_ui($196, $$1134$lcssa$i, 1);
+     __gcry_mpi_mul($197, $194, $196);
+     __gcry_mpi_gcd($198, $194, $196) | 0;
+     __gcry_mpi_fdiv_q($199, $197, $198);
+     $200 = __gcry_mpi_gcd($194, $169, $197) | 0;
+     $201 = ($200 | 0) == 0;
+     if ($201) {
+      if ($$1140$i) {
+       __gcry_bug(41560, 287, 41812);
+      } else {
+       while (1) {
+        __gcry_mpi_add_ui($169, $169, 2);
+        $202 = __gcry_mpi_gcd($194, $169, $197) | 0;
+        $203 = ($202 | 0) == 0;
+        if (!$203) {
+         break;
+        }
+       }
+      }
+     }
+     $204 = __gcry_mpi_snew($$$i36) | 0;
+     __gcry_mpi_invm($204, $169, $199) | 0;
+     $205 = __gcry_mpi_snew($$$i36) | 0;
+     __gcry_mpi_invm($205, $$1132$lcssa$i, $$1134$lcssa$i) | 0;
+     $206 = __gcry_get_debug_flag(1) | 0;
+     $207 = ($206 | 0) == 0;
+     if (!$207) {
+      __gcry_log_printmpi(41825, $$1132$lcssa$i);
+      __gcry_log_printmpi(41831, $$1134$lcssa$i);
+      __gcry_log_printmpi(41837, $197);
+      __gcry_log_printmpi(41843, $198);
+      __gcry_log_printmpi(41849, $199);
+      __gcry_log_printmpi(41855, $208);
+      __gcry_log_printmpi(41861, $169);
+      __gcry_log_printmpi(41867, $204);
+      __gcry_log_printmpi(41873, $205);
+     }
+     __gcry_mpi_release($194);
+     __gcry_mpi_release($196);
+     __gcry_mpi_release($197);
+     __gcry_mpi_release($199);
+     __gcry_mpi_release($198);
+     SAFE_HEAP_STORE($11 | 0, $208 | 0, 4);
+     $209 = $11 + 4 | 0;
+     SAFE_HEAP_STORE($209 | 0, $169 | 0, 4);
+     $210 = $11 + 12 | 0;
+     SAFE_HEAP_STORE($210 | 0, $$1132$lcssa$i | 0, 4);
+     $211 = $11 + 16 | 0;
+     SAFE_HEAP_STORE($211 | 0, $$1134$lcssa$i | 0, 4);
+     $212 = $11 + 8 | 0;
+     SAFE_HEAP_STORE($212 | 0, $204 | 0, 4);
+     $213 = $11 + 20 | 0;
+     SAFE_HEAP_STORE($213 | 0, $205 | 0, 4);
+     $214 = $$$i36 + -64 | 0;
+     $215 = _test_keys($11, $214) | 0;
+     $216 = ($215 | 0) == 0;
+     if ($216) {
+      $$pre$phi54Z2D = $209;
+      $$pre$phi56Z2D = $212;
+      $$pre$phi58Z2D = $210;
+      $$pre$phi60Z2D = $211;
+      $$pre$phi62Z2D = $213;
+      $$pre$phiZ2D = $11;
+      label = 86;
+     } else {
+      $217 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_release($217);
+      SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+      $218 = SAFE_HEAP_LOAD($209 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_release($218);
+      SAFE_HEAP_STORE($209 | 0, 0 | 0, 4);
+      $219 = SAFE_HEAP_LOAD($210 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_release($219);
+      SAFE_HEAP_STORE($210 | 0, 0 | 0, 4);
+      $220 = SAFE_HEAP_LOAD($211 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_release($220);
+      SAFE_HEAP_STORE($211 | 0, 0 | 0, 4);
+      $221 = SAFE_HEAP_LOAD($212 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_release($221);
+      SAFE_HEAP_STORE($212 | 0, 0 | 0, 4);
+      $222 = SAFE_HEAP_LOAD($213 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_release($222);
+      SAFE_HEAP_STORE($213 | 0, 0 | 0, 4);
+      __gcry_fips_signal_error(41560, 334, 41812, 0, 41745);
+      $$2 = 50;
+     }
+    } else {
+     $41 = 0;
+     label = 11;
+    }
+   } else {
+    $41 = 0;
+    label = 11;
+   }
+  }
+ } while (0);
+ if ((label | 0) == 11) {
+  $34 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $35 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $36 = ($35 | 0) == 1;
+  $$$i = $36 ? 65537 : $35;
+  $37 = $34 & 255;
+  $notlhs$i = $34 >>> 0 < 1024;
+  $notrhs$i = ($37 | 0) != 0;
+  $or$cond151$not$i = $notlhs$i | $notrhs$i;
+  $38 = $$$i >>> 0 < 3;
+  $or$cond152$i = $or$cond151$not$i | $38;
+  $39 = $$$i & 1;
+  $40 = ($39 | 0) == 0;
+  $or$cond154$i = $or$cond152$i | $40;
+  if ($or$cond154$i) {
+   $$142 = 0;
+   $$3$i = 55;
+  } else {
+   SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+   $42 = ($41 | 0) == (0 | 0);
+   L68 : do {
+    if ($42) {
+     $43 = $34 >>> 1;
+     $44 = __gcry_mpi_snew($43) | 0;
+     __gcry_mpi_randomize($44, $43, 2);
+     $45 = $43 + -1 | 0;
+     __gcry_mpi_set_highbit($44, $45);
+     $46 = $43 + -2 | 0;
+     __gcry_mpi_set_bit($44, $46);
+     $47 = __gcry_mpi_get_nbits($44) | 0;
+     $48 = ($47 | 0) == ($43 | 0);
+     if (!$48) {
+      __gcry_assert_failed(41524, 41560, 360, 41566);
+     }
+     SAFE_HEAP_STORE($4 | 0, $44 | 0, 4);
+     $49 = __gcry_mpi_snew($43) | 0;
+     $50 = $43 + -100 | 0;
+     $51 = 0;
+     while (1) {
+      __gcry_mpi_release($51);
+      $52 = __gcry_mpi_snew($43) | 0;
+      __gcry_mpi_randomize($52, $43, 2);
+      __gcry_mpi_set_highbit($52, $45);
+      __gcry_mpi_set_bit($52, $46);
+      $53 = __gcry_mpi_get_nbits($52) | 0;
+      $54 = ($53 | 0) == ($43 | 0);
+      if (!$54) {
+       label = 17;
+       break;
+      }
+      SAFE_HEAP_STORE($7 | 0, $52 | 0, 4);
+      __gcry_mpi_sub($49, $44, $52);
+      $55 = __gcry_mpi_get_nbits($49) | 0;
+      $56 = $55 >>> 0 > $50 >>> 0;
+      if ($56) {
+       break;
+      } else {
+       $51 = $52;
+      }
+     }
+     if ((label | 0) == 17) {
+      __gcry_assert_failed(41524, 41560, 360, 41566);
+     }
+     __gcry_mpi_release($49);
+     $57 = __gcry_mpi_snew(101) | 0;
+     __gcry_mpi_randomize($57, 101, 2);
+     __gcry_mpi_set_highbit($57, 100);
+     $58 = __gcry_mpi_get_nbits($57) | 0;
+     $59 = ($58 | 0) == 101;
+     if (!$59) {
+      __gcry_assert_failed(41583, 41560, 375, 41617);
+     }
+     SAFE_HEAP_STORE($2 | 0, $57 | 0, 4);
+     $60 = __gcry_mpi_snew(101) | 0;
+     __gcry_mpi_randomize($60, 101, 2);
+     __gcry_mpi_set_highbit($60, 100);
+     $61 = __gcry_mpi_get_nbits($60) | 0;
+     $62 = ($61 | 0) == 101;
+     if (!$62) {
+      __gcry_assert_failed(41583, 41560, 375, 41617);
+     }
+     SAFE_HEAP_STORE($3 | 0, $60 | 0, 4);
+     $63 = __gcry_mpi_snew(101) | 0;
+     __gcry_mpi_randomize($63, 101, 2);
+     __gcry_mpi_set_highbit($63, 100);
+     $64 = __gcry_mpi_get_nbits($63) | 0;
+     $65 = ($64 | 0) == 101;
+     if (!$65) {
+      __gcry_assert_failed(41583, 41560, 375, 41617);
+     }
+     SAFE_HEAP_STORE($5 | 0, $63 | 0, 4);
+     $66 = __gcry_mpi_snew(101) | 0;
+     __gcry_mpi_randomize($66, 101, 2);
+     __gcry_mpi_set_highbit($66, 100);
+     $67 = __gcry_mpi_get_nbits($66) | 0;
+     $68 = ($67 | 0) == 101;
+     if ($68) {
+      SAFE_HEAP_STORE($6 | 0, $66 | 0, 4);
+      label = 39;
+      break;
+     } else {
+      __gcry_assert_failed(41583, 41560, 375, 41617);
+     }
+    } else {
+     $69 = $8 + 4 | 0;
+     $70 = $69 + 12 | 0;
+     dest = $70;
+     stop = dest + 40 | 0;
+     do {
+      SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+      dest = dest + 4 | 0;
+     } while ((dest | 0) < (stop | 0));
+     SAFE_HEAP_STORE($8 | 0, 41634 | 0, 4);
+     $71 = $8 + 8 | 0;
+     SAFE_HEAP_STORE($71 | 0, 41638 | 0, 4);
+     $72 = $8 + 16 | 0;
+     SAFE_HEAP_STORE($72 | 0, 41642 | 0, 4);
+     $73 = $8 + 24 | 0;
+     SAFE_HEAP_STORE($73 | 0, 41645 | 0, 4);
+     $74 = $8 + 32 | 0;
+     SAFE_HEAP_STORE($74 | 0, 41649 | 0, 4);
+     $75 = $8 + 40 | 0;
+     SAFE_HEAP_STORE($75 | 0, 41653 | 0, 4);
+     SAFE_HEAP_STORE($69 | 0, $2 | 0, 4);
+     $76 = $8 + 12 | 0;
+     SAFE_HEAP_STORE($76 | 0, $3 | 0, 4);
+     $77 = $8 + 20 | 0;
+     SAFE_HEAP_STORE($77 | 0, $4 | 0, 4);
+     $78 = $8 + 28 | 0;
+     SAFE_HEAP_STORE($78 | 0, $5 | 0, 4);
+     $79 = $8 + 36 | 0;
+     SAFE_HEAP_STORE($79 | 0, $6 | 0, 4);
+     $80 = $8 + 44 | 0;
+     SAFE_HEAP_STORE($80 | 0, $7 | 0, 4);
+     $$0141166$i = 0;
+     $81 = 41634;
+     while (1) {
+      $82 = __gcry_sexp_find_token($41, $81, 0) | 0;
+      $83 = ($82 | 0) == (0 | 0);
+      if (!$83) {
+       $84 = ($8 + ($$0141166$i << 3) | 0) + 4 | 0;
+       $85 = __gcry_sexp_nth_mpi($82, 1, 5) | 0;
+       $86 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($86 | 0, $85 | 0, 4);
+       __gcry_sexp_release($82);
+      }
+      $87 = $$0141166$i + 1 | 0;
+      $88 = $8 + ($87 << 3) | 0;
+      $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+      $90 = ($89 | 0) == (0 | 0);
+      if ($90) {
+       break;
+      } else {
+       $$0141166$i = $87;
+       $81 = $89;
+      }
+     }
+     $91 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $92 = ($91 | 0) == (0 | 0);
+     L98 : do {
+      if (!$92) {
+       $93 = 1;
+       while (1) {
+        $$phi$trans$insert$i = ($8 + ($93 << 3) | 0) + 4 | 0;
+        $$pre$i = SAFE_HEAP_LOAD($$phi$trans$insert$i | 0, 4, 0) | 0 | 0;
+        $94 = SAFE_HEAP_LOAD($$pre$i | 0, 4, 0) | 0 | 0;
+        $95 = ($94 | 0) == (0 | 0);
+        $96 = $93 + 1 | 0;
+        if ($95) {
+         break L98;
+        }
+        $$phi$trans$insert = $8 + ($96 << 3) | 0;
+        $$pre = SAFE_HEAP_LOAD($$phi$trans$insert | 0, 4, 0) | 0 | 0;
+        $97 = ($$pre | 0) == (0 | 0);
+        if ($97) {
+         break;
+        } else {
+         $93 = $96;
+        }
+       }
+       label = 39;
+       break L68;
+      }
+     } while (0);
+     __gcry_mpi_release($91);
+     $98 = 1;
+     while (1) {
+      $$phi$trans$insert171$i = ($8 + ($98 << 3) | 0) + 4 | 0;
+      $$pre172$i = SAFE_HEAP_LOAD($$phi$trans$insert171$i | 0, 4, 0) | 0 | 0;
+      $99 = SAFE_HEAP_LOAD($$pre172$i | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_release($99);
+      $100 = $98 + 1 | 0;
+      $101 = $8 + ($100 << 3) | 0;
+      $102 = SAFE_HEAP_LOAD($101 | 0, 4, 0) | 0 | 0;
+      $103 = ($102 | 0) == (0 | 0);
+      if ($103) {
+       break;
+      } else {
+       $98 = $100;
+      }
+     }
+     $$0147$i = 0;
+     $$0148$i = 0;
+     $$0149$i = 0;
+     $$1146$i = 0;
+     $$2$i = 128;
+    }
+   } while (0);
+   if ((label | 0) == 39) {
+    $104 = __gcry_mpi_alloc_set_ui($$$i) | 0;
+    $105 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    $106 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    $107 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    $108 = __gcry_derive_x931_prime($105, $106, $107, $104, 0, 0) | 0;
+    $109 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $110 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $111 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    $112 = __gcry_derive_x931_prime($109, $110, $111, $104, 0, 0) | 0;
+    $113 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_release($113);
+    SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+    $114 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_release($114);
+    SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+    $115 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_release($115);
+    SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+    $116 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_release($116);
+    SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+    $117 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_release($117);
+    SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+    $118 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_release($118);
+    SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+    $119 = ($108 | 0) != (0 | 0);
+    $120 = ($112 | 0) != (0 | 0);
+    $or$cond$i = $119 & $120;
+    if ($or$cond$i) {
+     $$0147$i = $108;
+     $$0148$i = $112;
+     $$0149$i = $104;
+     $$1146$i = 1;
+     $$2$i = 128;
+    } else {
+     __gcry_mpi_release($108);
+     __gcry_mpi_release($112);
+     __gcry_mpi_release($104);
+     $$0147$i = $108;
+     $$0148$i = $112;
+     $$0149$i = $104;
+     $$1146$i = 0;
+     $$2$i = 21;
+    }
+   }
+   if ($$1146$i) {
+    $121 = __gcry_mpi_cmp($$0147$i, $$0148$i) | 0;
+    $122 = ($121 | 0) > 0;
+    if ($122) {
+     __gcry_mpi_swap($$0147$i, $$0148$i);
+     $$041 = 1;
+    } else {
+     $$041 = 0;
+    }
+    $123 = __gcry_mpi_new($34) | 0;
+    __gcry_mpi_mul($123, $$0147$i, $$0148$i);
+    $124 = $34 >>> 1;
+    $125 = __gcry_mpi_snew($124) | 0;
+    $126 = __gcry_mpi_snew($124) | 0;
+    $127 = __gcry_mpi_snew($34) | 0;
+    __gcry_mpi_sub_ui($125, $$0147$i, 1);
+    __gcry_mpi_sub_ui($126, $$0148$i, 1);
+    __gcry_mpi_mul($127, $125, $126);
+    $128 = __gcry_mpi_snew($34) | 0;
+    $129 = __gcry_mpi_gcd($128, $$0149$i, $127) | 0;
+    $130 = ($129 | 0) == 0;
+    if ($130) {
+     __gcry_assert_failed(41656, 41560, 541, 41690);
+    }
+    __gcry_mpi_gcd($128, $125, $126) | 0;
+    __gcry_mpi_release($126);
+    __gcry_mpi_fdiv_q($125, $127, $128);
+    __gcry_mpi_release($127);
+    __gcry_mpi_invm($128, $$0149$i, $125) | 0;
+    __gcry_mpi_invm($125, $$0147$i, $$0148$i) | 0;
+    $131 = __gcry_get_debug_flag(1) | 0;
+    $132 = ($131 | 0) == 0;
+    if (!$132) {
+     $133 = ($$041 | 0) == 0;
+     if (!$133) {
+      __gcry_log_debug(41704, $vararg_buffer);
+     }
+     __gcry_log_printmpi(45379, $$0147$i);
+     __gcry_log_printmpi(41725, $$0148$i);
+     __gcry_log_printmpi(41729, $123);
+     __gcry_log_printmpi(41733, $$0149$i);
+     __gcry_log_printmpi(41737, $128);
+     __gcry_log_printmpi(41741, $125);
+    }
+    SAFE_HEAP_STORE($11 | 0, $123 | 0, 4);
+    $134 = $11 + 4 | 0;
+    SAFE_HEAP_STORE($134 | 0, $$0149$i | 0, 4);
+    $135 = $11 + 12 | 0;
+    SAFE_HEAP_STORE($135 | 0, $$0147$i | 0, 4);
+    $136 = $11 + 16 | 0;
+    SAFE_HEAP_STORE($136 | 0, $$0148$i | 0, 4);
+    $137 = $11 + 8 | 0;
+    SAFE_HEAP_STORE($137 | 0, $128 | 0, 4);
+    $138 = $11 + 20 | 0;
+    SAFE_HEAP_STORE($138 | 0, $125 | 0, 4);
+    $139 = $34 + -64 | 0;
+    $140 = _test_keys($11, $139) | 0;
+    $141 = ($140 | 0) == 0;
+    if ($141) {
+     $$142 = $$041;
+     $$3$i = 0;
+    } else {
+     $142 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_release($142);
+     SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+     $143 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_release($143);
+     SAFE_HEAP_STORE($134 | 0, 0 | 0, 4);
+     $144 = SAFE_HEAP_LOAD($135 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_release($144);
+     SAFE_HEAP_STORE($135 | 0, 0 | 0, 4);
+     $145 = SAFE_HEAP_LOAD($136 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_release($145);
+     SAFE_HEAP_STORE($136 | 0, 0 | 0, 4);
+     $146 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_release($146);
+     SAFE_HEAP_STORE($137 | 0, 0 | 0, 4);
+     $147 = SAFE_HEAP_LOAD($138 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_release($147);
+     SAFE_HEAP_STORE($138 | 0, 0 | 0, 4);
+     __gcry_fips_signal_error(41560, 586, 41690, 0, 41745);
+     $$142 = $$041;
+     $$3$i = 50;
+    }
+   } else {
+    $$142 = 0;
+    $$3$i = $$2$i;
+   }
+  }
+  __gcry_sexp_release($41);
+  $148 = ($$3$i | 0) == 0;
+  $149 = ($$142 | 0) != 0;
+  $or$cond = $149 & $148;
+  if ($or$cond) {
+   $150 = __gcry_sexp_new($13, 41783, 0, 1) | 0;
+   $$1 = $150;
+  } else {
+   $$1 = $$3$i;
+  }
+  $223 = ($$1 | 0) == 0;
+  if ($223) {
+   $$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 = 86;
+  } else {
+   $$2 = $$1;
+  }
+ }
+ if ((label | 0) == 86) {
+  $224 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+  $225 = SAFE_HEAP_LOAD($$pre$phi54Z2D | 0, 4, 0) | 0 | 0;
+  $226 = SAFE_HEAP_LOAD($$pre$phi56Z2D | 0, 4, 0) | 0 | 0;
+  $227 = SAFE_HEAP_LOAD($$pre$phi58Z2D | 0, 4, 0) | 0 | 0;
+  $228 = SAFE_HEAP_LOAD($$pre$phi60Z2D | 0, 4, 0) | 0 | 0;
+  $229 = SAFE_HEAP_LOAD($$pre$phi62Z2D | 0, 4, 0) | 0 | 0;
+  $230 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $224 | 0, 4);
+  $vararg_ptr3 = $vararg_buffer1 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr3 | 0, $225 | 0, 4);
+  $vararg_ptr4 = $vararg_buffer1 + 8 | 0;
+  SAFE_HEAP_STORE($vararg_ptr4 | 0, $224 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer1 + 12 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, $225 | 0, 4);
+  $vararg_ptr6 = $vararg_buffer1 + 16 | 0;
+  SAFE_HEAP_STORE($vararg_ptr6 | 0, $226 | 0, 4);
+  $vararg_ptr7 = $vararg_buffer1 + 20 | 0;
+  SAFE_HEAP_STORE($vararg_ptr7 | 0, $227 | 0, 4);
+  $vararg_ptr8 = $vararg_buffer1 + 24 | 0;
+  SAFE_HEAP_STORE($vararg_ptr8 | 0, $228 | 0, 4);
+  $vararg_ptr9 = $vararg_buffer1 + 28 | 0;
+  SAFE_HEAP_STORE($vararg_ptr9 | 0, $229 | 0, 4);
+  $vararg_ptr10 = $vararg_buffer1 + 32 | 0;
+  SAFE_HEAP_STORE($vararg_ptr10 | 0, $230 | 0, 4);
+  $231 = __gcry_sexp_build($1, 0, 41879, $vararg_buffer1) | 0;
+  $$2 = $231;
+ }
+ $232 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($232);
+ $233 = $11 + 4 | 0;
+ $234 = SAFE_HEAP_LOAD($233 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($234);
+ $235 = $11 + 12 | 0;
+ $236 = SAFE_HEAP_LOAD($235 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($236);
+ $237 = $11 + 16 | 0;
+ $238 = SAFE_HEAP_LOAD($237 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($238);
+ $239 = $11 + 8 | 0;
+ $240 = SAFE_HEAP_LOAD($239 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($240);
+ $241 = $11 + 20 | 0;
+ $242 = SAFE_HEAP_LOAD($241 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($242);
+ $243 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ __gcry_sexp_release($243);
+ $$0 = $$2;
+ STACKTOP = sp;
+ 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, $$0$lcssa$i = 0, $$0$lcssa$i163 = 0, $$0$lcssa$i206 = 0, 
$$0$lcssa$i226 = 0, $$0$lcssa$i280 = 0, $$0134295 = 0, $$0134295$us = 0, $$0135 
= 0, $$0139 = 0, $$0143 = 0, $$024$lcssa$i = 0, $$024$lcssa$i279 = 0, $$02432$i 
= 0, $$02432$i272 = 0, $$025$lcssa$i = 0, $$025$lcssa$i278 = 0, $$02531$i = 0, 
$$02531$i273 = 0, $$026$ph$i = 0;
+ var $$026$ph$i283 = 0, $$02629$i = 0, $$02629$i287 = 0, $$027$ph$i = 0, 
$$027$ph$i282 = 0, $$02728$i = 0, $$02728$i288 = 0, $$033$i = 0, $$033$i271 = 
0, $$034$lcssa$i = 0, $$034$lcssa$i162 = 0, $$034$lcssa$i225 = 0, $$03446$i = 
0, $$03446$i152 = 0, $$03446$i181 = 0, $$03446$i215 = 0, $$03446$i244$us = 0, 
$$035$lcssa$i = 0, $$035$lcssa$i161 = 0, $$035$lcssa$i224 = 0;
+ var $$03545$i = 0, $$03545$i153 = 0, $$03545$i182 = 0, $$03545$i216 = 0, 
$$03545$i245$us = 0, $$036$lcssa$i = 0, $$036$lcssa$i160 = 0, $$036$lcssa$i223 
= 0, $$03644$i = 0, $$03644$i154 = 0, $$03644$i183 = 0, $$03644$i217 = 0, 
$$03644$i246$us = 0, $$037$ph$i = 0, $$037$ph$i167 = 0, $$037$ph$i230 = 0, 
$$037$ph$i259$us = 0, $$03742$i = 0, $$03742$i171 = 0, $$03742$i200 = 0;
+ var $$03742$i234 = 0, $$03742$i263 = 0, $$03742$i263$us = 0, $$038$ph$i = 0, 
$$038$ph$i166 = 0, $$038$ph$i229 = 0, $$038$ph$i258$us = 0, $$03841$i = 0, 
$$03841$i172 = 0, $$03841$i201 = 0, $$03841$i235 = 0, $$03841$i264 = 0, 
$$03841$i264$us = 0, $$039$ph$i = 0, $$039$ph$i165 = 0, $$039$ph$i228 = 0, 
$$039$ph$i257$us = 0, $$03940$i = 0, $$03940$i173 = 0, $$03940$i202 = 0;
+ var $$03940$i236 = 0, $$03940$i265 = 0, $$03940$i265$us = 0, $$047$i = 0, 
$$047$i151 = 0, $$047$i180 = 0, $$047$i214 = 0, $$047$i243$us = 0, $$1 = 0, 
$$1$ph$i = 0, $$1$ph$i168 = 0, $$1$ph$i207 = 0, $$1$ph$i231 = 0, $$1$ph$i260$us 
= 0, $$1$ph$i284 = 0, $$1136294 = 0, $$1136294$us = 0, $$1140293 = 0, 
$$1140293$us = 0, $$1144292 = 0;
+ var $$1144292$us = 0, $$130$i = 0, $$130$i286 = 0, $$143$i = 0, $$143$i170 = 
0, $$143$i199 = 0, $$143$i233 = 0, $$143$i262 = 0, $$143$i262$us = 0, $$2 = 0, 
$$2137 = 0, $$2141 = 0, $$2145 = 0, $$3 = 0, $$3138 = 0, $$3142 = 0, $$3146 = 
0, $$pre = 0, $$pre307 = 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, $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, $or$cond = 0, 
$scevgep$i = 0, $scevgep$i147 = 0, $scevgep$i176 = 0, $scevgep$i205 = 0, 
$scevgep$i210 = 0, $scevgep$i239$us = 0, $scevgep$i268 = 0, $scevgep42$i = 0, 
$scevgep42$i269 = 0, $scevgep58$i = 0, $scevgep58$i148 = 0, $scevgep58$i177 = 
0, $scevgep58$i211 = 0;
+ var $scevgep58$i240 = 0, $scevgep60$i = 0, $scevgep60$i149 = 0, 
$scevgep60$i178 = 0, $scevgep60$i212 = 0, $scevgep60$i241$us = 0, label = 0, sp 
= 0;
+ sp = STACKTOP;
+ $5 = $0 + 12 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 36 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $6 + 20 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $10 << 1;
+ $12 = $2 >>> 0 < $4 >>> 0;
+ if ($12) {
+  $$0 = 200;
+  return $$0 | 0;
+ }
+ $13 = $0 + 112 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 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;
+  if ($26) {
+   $27 = $4 >>> 0 > 3;
+   if ($27) {
+    $28 = $4 + -4 | 0;
+    $29 = $28 & -4;
+    $30 = $29 + 4 | 0;
+    $scevgep58$i = $19 + $30 | 0;
+    $$03446$i = $3;
+    $$03545$i = $19;
+    $$03644$i = $1;
+    $$047$i = $4;
+    while (1) {
+     $31 = $$03446$i + 4 | 0;
+     $32 = SAFE_HEAP_LOAD($$03446$i | 0, 4, 0) | 0 | 0;
+     $33 = $$03545$i + 4 | 0;
+     $34 = SAFE_HEAP_LOAD($$03545$i | 0, 4, 0) | 0 | 0;
+     $35 = $34 ^ $32;
+     SAFE_HEAP_STORE($$03545$i | 0, $35 | 0, 4);
+     $36 = $$03644$i + 4 | 0;
+     SAFE_HEAP_STORE($$03644$i | 0, $35 | 0, 4);
+     $37 = $$047$i + -4 | 0;
+     $38 = $37 >>> 0 > 3;
+     if ($38) {
+      $$03446$i = $31;
+      $$03545$i = $33;
+      $$03644$i = $36;
+      $$047$i = $37;
+     } else {
+      break;
+     }
+    }
+    $scevgep$i = $3 + $30 | 0;
+    $scevgep60$i = $1 + $30 | 0;
+    $39 = $28 - $29 | 0;
+    $$0$lcssa$i = $39;
+    $$034$lcssa$i = $scevgep$i;
+    $$035$lcssa$i = $scevgep58$i;
+    $$036$lcssa$i = $scevgep60$i;
+   } else {
+    $$0$lcssa$i = $4;
+    $$034$lcssa$i = $3;
+    $$035$lcssa$i = $19;
+    $$036$lcssa$i = $1;
+   }
+   $$037$ph$i = $$034$lcssa$i;
+   $$038$ph$i = $$035$lcssa$i;
+   $$039$ph$i = $$036$lcssa$i;
+   $$1$ph$i = $$0$lcssa$i;
+  } else {
+   $$037$ph$i = $3;
+   $$038$ph$i = $19;
+   $$039$ph$i = $1;
+   $$1$ph$i = $4;
+  }
+  $40 = ($$1$ph$i | 0) == 0;
+  if ($40) {
+   $50 = $14;
+  } else {
+   $$03742$i = $$037$ph$i;
+   $$03841$i = $$038$ph$i;
+   $$03940$i = $$039$ph$i;
+   $$143$i = $$1$ph$i;
+   while (1) {
+    $41 = $$03742$i + 1 | 0;
+    $42 = SAFE_HEAP_LOAD($$03742$i >> 0 | 0, 1, 0) | 0 | 0;
+    $43 = $$03841$i + 1 | 0;
+    $44 = SAFE_HEAP_LOAD($$03841$i >> 0 | 0, 1, 0) | 0 | 0;
+    $45 = $44 ^ $42;
+    SAFE_HEAP_STORE($$03841$i >> 0 | 0, $45 | 0, 1);
+    $46 = $$03940$i + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i >> 0 | 0, $45 | 0, 1);
+    $47 = $$143$i + -1 | 0;
+    $48 = ($47 | 0) == 0;
+    if ($48) {
+     break;
+    } else {
+     $$03742$i = $41;
+     $$03841$i = $43;
+     $$03940$i = $46;
+     $$143$i = $47;
+    }
+   }
+   $$pre = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $50 = $$pre;
+  }
+  $49 = $50 - $4 | 0;
+  SAFE_HEAP_STORE($13 | 0, $49 | 0, 4);
+  $$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 = $64 & $63;
+  if ($or$cond) {
+   $65 = $14 + -4 | 0;
+   $66 = $65 & -4;
+   $67 = $66 + 4 | 0;
+   $scevgep58$i177 = $56 + $67 | 0;
+   $$03446$i181 = $3;
+   $$03545$i182 = $56;
+   $$03644$i183 = $1;
+   $$047$i180 = $14;
+   while (1) {
+    $68 = $$03446$i181 + 4 | 0;
+    $69 = SAFE_HEAP_LOAD($$03446$i181 | 0, 4, 0) | 0 | 0;
+    $70 = $$03545$i182 + 4 | 0;
+    $71 = SAFE_HEAP_LOAD($$03545$i182 | 0, 4, 0) | 0 | 0;
+    $72 = $71 ^ $69;
+    SAFE_HEAP_STORE($$03545$i182 | 0, $72 | 0, 4);
+    $73 = $$03644$i183 + 4 | 0;
+    SAFE_HEAP_STORE($$03644$i183 | 0, $72 | 0, 4);
+    $74 = $$047$i180 + -4 | 0;
+    $75 = $74 >>> 0 > 3;
+    if ($75) {
+     $$03446$i181 = $68;
+     $$03545$i182 = $70;
+     $$03644$i183 = $73;
+     $$047$i180 = $74;
+    } else {
+     break;
+    }
+   }
+   $scevgep$i176 = $3 + $67 | 0;
+   $scevgep60$i178 = $1 + $67 | 0;
+   $76 = $65 - $66 | 0;
+   $77 = ($76 | 0) == 0;
+   if ($77) {
+    $87 = $14;
+   } else {
+    $$03742$i200 = $scevgep$i176;
+    $$03841$i201 = $scevgep58$i177;
+    $$03940$i202 = $scevgep60$i178;
+    $$143$i199 = $76;
+    label = 18;
+   }
+  } else {
+   $$03742$i200 = $3;
+   $$03841$i201 = $56;
+   $$03940$i202 = $1;
+   $$143$i199 = $14;
+   label = 18;
+  }
+  if ((label | 0) == 18) {
+   while (1) {
+    label = 0;
+    $78 = $$03742$i200 + 1 | 0;
+    $79 = SAFE_HEAP_LOAD($$03742$i200 >> 0 | 0, 1, 0) | 0 | 0;
+    $80 = $$03841$i201 + 1 | 0;
+    $81 = SAFE_HEAP_LOAD($$03841$i201 >> 0 | 0, 1, 0) | 0 | 0;
+    $82 = $81 ^ $79;
+    SAFE_HEAP_STORE($$03841$i201 >> 0 | 0, $82 | 0, 1);
+    $83 = $$03940$i202 + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i202 >> 0 | 0, $82 | 0, 1);
+    $84 = $$143$i199 + -1 | 0;
+    $85 = ($84 | 0) == 0;
+    if ($85) {
+     break;
+    } else {
+     $$03742$i200 = $78;
+     $$03841$i201 = $80;
+     $$03940$i202 = $83;
+     $$143$i199 = $84;
+     label = 18;
+    }
+   }
+   $$pre307 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $87 = $$pre307;
+  }
+  $86 = $1 + $87 | 0;
+  $88 = $3 + $87 | 0;
+  SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+  $$0135 = $86;
+  $$0139 = $88;
+  $$0143 = $52;
+ }
+ $89 = $$0143 >>> 0 < $11 >>> 0;
+ L35 : do {
+  if ($89) {
+   $$1 = 0;
+   $$2137 = $$0135;
+   $$2141 = $$0139;
+   $$2145 = $$0143;
+  } else {
+   $90 = $0 + 20 | 0;
+   $91 = SAFE_HEAP_LOAD($90 | 0, 4, 0) | 0 | 0;
+   $92 = ($91 | 0) == (0 | 0);
+   if (!$92) {
+    $132 = ($$0143 >>> 0) / ($10 >>> 0) & -1;
+    $133 = $0 + 496 | 0;
+    $134 = $0 + 64 | 0;
+    FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($91 | 0, 127 | 0) | 0) & 127]($133, 
$134, $$0135, $$0139, $132);
+    $135 = Math_imul($132, $10) | 0;
+    $136 = $$0135 + $135 | 0;
+    $137 = $$0139 + $135 | 0;
+    $138 = $$0143 - $135 | 0;
+    $$1 = 0;
+    $$2137 = $136;
+    $$2141 = $137;
+    $$2145 = $138;
+    break;
+   }
+   $93 = $0 + 496 | 0;
+   $94 = $0 + 64 | 0;
+   $95 = $94;
+   $96 = $10 >>> 0 > 3;
+   $97 = $10 + -4 | 0;
+   $98 = $97 & -4;
+   $99 = $98 + 4 | 0;
+   $scevgep58$i240 = $94 + $99 | 0;
+   $100 = $97 - $98 | 0;
+   if ($96) {
+    $$0134295$us = 0;
+    $$1136294$us = $$0135;
+    $$1140293$us = $$0139;
+    $$1144292$us = $$0143;
+   } else {
+    $101 = ($10 | 0) == 0;
+    $$0134295 = 0;
+    $$1136294 = $$0135;
+    $$1140293 = $$0139;
+    $$1144292 = $$0143;
+    while (1) {
+     $139 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 
127]($93, $94, $94) | 0;
+     $140 = $139 >>> 0 > $$0134295 >>> 0;
+     $141 = $140 ? $139 : $$0134295;
+     if (!$101) {
+      $$03742$i263 = $$1140293;
+      $$03841$i264 = $94;
+      $$03940$i265 = $$1136294;
+      $$143$i262 = $10;
+      while (1) {
+       $142 = $$03742$i263 + 1 | 0;
+       $143 = SAFE_HEAP_LOAD($$03742$i263 >> 0 | 0, 1, 0) | 0 | 0;
+       $144 = $$03841$i264 + 1 | 0;
+       $145 = SAFE_HEAP_LOAD($$03841$i264 >> 0 | 0, 1, 0) | 0 | 0;
+       $146 = $145 ^ $143;
+       SAFE_HEAP_STORE($$03841$i264 >> 0 | 0, $146 | 0, 1);
+       $147 = $$03940$i265 + 1 | 0;
+       SAFE_HEAP_STORE($$03940$i265 >> 0 | 0, $146 | 0, 1);
+       $148 = $$143$i262 + -1 | 0;
+       $149 = ($148 | 0) == 0;
+       if ($149) {
+        break;
+       } else {
+        $$03742$i263 = $142;
+        $$03841$i264 = $144;
+        $$03940$i265 = $147;
+        $$143$i262 = $148;
+       }
+      }
+     }
+     $150 = $$1136294 + $10 | 0;
+     $151 = $$1140293 + $10 | 0;
+     $152 = $$1144292 - $10 | 0;
+     $153 = $152 >>> 0 < $11 >>> 0;
+     if ($153) {
+      $$1 = $141;
+      $$2137 = $150;
+      $$2141 = $151;
+      $$2145 = $152;
+      break L35;
+     } else {
+      $$0134295 = $141;
+      $$1136294 = $150;
+      $$1140293 = $151;
+      $$1144292 = $152;
+     }
+    }
+   }
+   while (1) {
+    $102 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($93, 
$94, $94) | 0;
+    $103 = $102 >>> 0 > $$0134295$us >>> 0;
+    $104 = $103 ? $102 : $$0134295$us;
+    $105 = $$1140293$us;
+    $106 = $$1136294$us;
+    $107 = $105 | $95;
+    $108 = $107 | $106;
+    $109 = $108 & 3;
+    $110 = ($109 | 0) == 0;
+    if ($110) {
+     $scevgep$i239$us = $$1140293$us + $99 | 0;
+     $$03446$i244$us = $$1140293$us;
+     $$03545$i245$us = $94;
+     $$03644$i246$us = $$1136294$us;
+     $$047$i243$us = $10;
+     while (1) {
+      $111 = $$03446$i244$us + 4 | 0;
+      $112 = SAFE_HEAP_LOAD($$03446$i244$us | 0, 4, 0) | 0 | 0;
+      $113 = $$03545$i245$us + 4 | 0;
+      $114 = SAFE_HEAP_LOAD($$03545$i245$us | 0, 4, 0) | 0 | 0;
+      $115 = $114 ^ $112;
+      SAFE_HEAP_STORE($$03545$i245$us | 0, $115 | 0, 4);
+      $116 = $$03644$i246$us + 4 | 0;
+      SAFE_HEAP_STORE($$03644$i246$us | 0, $115 | 0, 4);
+      $117 = $$047$i243$us + -4 | 0;
+      $118 = $117 >>> 0 > 3;
+      if ($118) {
+       $$03446$i244$us = $111;
+       $$03545$i245$us = $113;
+       $$03644$i246$us = $116;
+       $$047$i243$us = $117;
+      } else {
+       break;
+      }
+     }
+     $scevgep60$i241$us = $$1136294$us + $99 | 0;
+     $$037$ph$i259$us = $scevgep$i239$us;
+     $$038$ph$i258$us = $scevgep58$i240;
+     $$039$ph$i257$us = $scevgep60$i241$us;
+     $$1$ph$i260$us = $100;
+    } else {
+     $$037$ph$i259$us = $$1140293$us;
+     $$038$ph$i258$us = $94;
+     $$039$ph$i257$us = $$1136294$us;
+     $$1$ph$i260$us = $10;
+    }
+    $119 = ($$1$ph$i260$us | 0) == 0;
+    if (!$119) {
+     $$03742$i263$us = $$037$ph$i259$us;
+     $$03841$i264$us = $$038$ph$i258$us;
+     $$03940$i265$us = $$039$ph$i257$us;
+     $$143$i262$us = $$1$ph$i260$us;
+     while (1) {
+      $120 = $$03742$i263$us + 1 | 0;
+      $121 = SAFE_HEAP_LOAD($$03742$i263$us >> 0 | 0, 1, 0) | 0 | 0;
+      $122 = $$03841$i264$us + 1 | 0;
+      $123 = SAFE_HEAP_LOAD($$03841$i264$us >> 0 | 0, 1, 0) | 0 | 0;
+      $124 = $123 ^ $121;
+      SAFE_HEAP_STORE($$03841$i264$us >> 0 | 0, $124 | 0, 1);
+      $125 = $$03940$i265$us + 1 | 0;
+      SAFE_HEAP_STORE($$03940$i265$us >> 0 | 0, $124 | 0, 1);
+      $126 = $$143$i262$us + -1 | 0;
+      $127 = ($126 | 0) == 0;
+      if ($127) {
+       break;
+      } else {
+       $$03742$i263$us = $120;
+       $$03841$i264$us = $122;
+       $$03940$i265$us = $125;
+       $$143$i262$us = $126;
+      }
+     }
+    }
+    $128 = $$1136294$us + $10 | 0;
+    $129 = $$1140293$us + $10 | 0;
+    $130 = $$1144292$us - $10 | 0;
+    $131 = $130 >>> 0 < $11 >>> 0;
+    if ($131) {
+     $$1 = $104;
+     $$2137 = $128;
+     $$2141 = $129;
+     $$2145 = $130;
+     break;
+    } else {
+     $$0134295$us = $104;
+     $$1136294$us = $128;
+     $$1140293$us = $129;
+     $$1144292$us = $130;
+    }
+   }
+  }
+ } 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;
+  if ($161) {
+   $162 = $10 >>> 0 > 3;
+   if ($162) {
+    $163 = $10 + -4 | 0;
+    $164 = $163 & -4;
+    $165 = $164 + 4 | 0;
+    $scevgep$i268 = $156 + $165 | 0;
+    $$02432$i272 = $156;
+    $$02531$i273 = $155;
+    $$033$i271 = $10;
+    while (1) {
+     $166 = $$02432$i272 + 4 | 0;
+     $167 = SAFE_HEAP_LOAD($$02432$i272 | 0, 4, 0) | 0 | 0;
+     $168 = $$02531$i273 + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i273 | 0, $167 | 0, 4);
+     $169 = $$033$i271 + -4 | 0;
+     $170 = $169 >>> 0 > 3;
+     if ($170) {
+      $$02432$i272 = $166;
+      $$02531$i273 = $168;
+      $$033$i271 = $169;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i269 = ($0 + 96 | 0) + $165 | 0;
+    $171 = $163 - $164 | 0;
+    $$0$lcssa$i280 = $171;
+    $$024$lcssa$i279 = $scevgep$i268;
+    $$025$lcssa$i278 = $scevgep42$i269;
+   } else {
+    $$0$lcssa$i280 = $10;
+    $$024$lcssa$i279 = $156;
+    $$025$lcssa$i278 = $155;
+   }
+   $$026$ph$i283 = $$024$lcssa$i279;
+   $$027$ph$i282 = $$025$lcssa$i278;
+   $$1$ph$i284 = $$0$lcssa$i280;
+  } else {
+   $$026$ph$i283 = $156;
+   $$027$ph$i282 = $155;
+   $$1$ph$i284 = $10;
+  }
+  $172 = ($$1$ph$i284 | 0) == 0;
+  if (!$172) {
+   $$02629$i287 = $$026$ph$i283;
+   $$02728$i288 = $$027$ph$i282;
+   $$130$i286 = $$1$ph$i284;
+   while (1) {
+    $173 = $$02629$i287 + 1 | 0;
+    $174 = SAFE_HEAP_LOAD($$02629$i287 >> 0 | 0, 1, 0) | 0 | 0;
+    $175 = $$02728$i288 + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i288 >> 0 | 0, $174 | 0, 1);
+    $176 = $$130$i286 + -1 | 0;
+    $177 = ($176 | 0) == 0;
+    if ($177) {
+     break;
+    } else {
+     $$02629$i287 = $173;
+     $$02728$i288 = $175;
+     $$130$i286 = $176;
+    }
+   }
+  }
+  $178 = $0 + 496 | 0;
+  $179 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 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;
+  if ($187) {
+   $188 = $10 >>> 0 > 3;
+   if ($188) {
+    $189 = $10 + -4 | 0;
+    $190 = $189 & -4;
+    $191 = $190 + 4 | 0;
+    $scevgep58$i211 = $156 + $191 | 0;
+    $$03446$i215 = $$2141;
+    $$03545$i216 = $156;
+    $$03644$i217 = $$2137;
+    $$047$i214 = $10;
+    while (1) {
+     $192 = $$03446$i215 + 4 | 0;
+     $193 = SAFE_HEAP_LOAD($$03446$i215 | 0, 4, 0) | 0 | 0;
+     $194 = $$03545$i216 + 4 | 0;
+     $195 = SAFE_HEAP_LOAD($$03545$i216 | 0, 4, 0) | 0 | 0;
+     $196 = $195 ^ $193;
+     SAFE_HEAP_STORE($$03545$i216 | 0, $196 | 0, 4);
+     $197 = $$03644$i217 + 4 | 0;
+     SAFE_HEAP_STORE($$03644$i217 | 0, $196 | 0, 4);
+     $198 = $$047$i214 + -4 | 0;
+     $199 = $198 >>> 0 > 3;
+     if ($199) {
+      $$03446$i215 = $192;
+      $$03545$i216 = $194;
+      $$03644$i217 = $197;
+      $$047$i214 = $198;
+     } else {
+      break;
+     }
+    }
+    $scevgep$i210 = $$2141 + $191 | 0;
+    $scevgep60$i212 = $$2137 + $191 | 0;
+    $200 = $189 - $190 | 0;
+    $$0$lcssa$i226 = $200;
+    $$034$lcssa$i225 = $scevgep$i210;
+    $$035$lcssa$i224 = $scevgep58$i211;
+    $$036$lcssa$i223 = $scevgep60$i212;
+   } else {
+    $$0$lcssa$i226 = $10;
+    $$034$lcssa$i225 = $$2141;
+    $$035$lcssa$i224 = $156;
+    $$036$lcssa$i223 = $$2137;
+   }
+   $$037$ph$i230 = $$034$lcssa$i225;
+   $$038$ph$i229 = $$035$lcssa$i224;
+   $$039$ph$i228 = $$036$lcssa$i223;
+   $$1$ph$i231 = $$0$lcssa$i226;
+  } else {
+   $$037$ph$i230 = $$2141;
+   $$038$ph$i229 = $156;
+   $$039$ph$i228 = $$2137;
+   $$1$ph$i231 = $10;
+  }
+  $201 = ($$1$ph$i231 | 0) == 0;
+  if (!$201) {
+   $$03742$i234 = $$037$ph$i230;
+   $$03841$i235 = $$038$ph$i229;
+   $$03940$i236 = $$039$ph$i228;
+   $$143$i233 = $$1$ph$i231;
+   while (1) {
+    $202 = $$03742$i234 + 1 | 0;
+    $203 = SAFE_HEAP_LOAD($$03742$i234 >> 0 | 0, 1, 0) | 0 | 0;
+    $204 = $$03841$i235 + 1 | 0;
+    $205 = SAFE_HEAP_LOAD($$03841$i235 >> 0 | 0, 1, 0) | 0 | 0;
+    $206 = $205 ^ $203;
+    SAFE_HEAP_STORE($$03841$i235 >> 0 | 0, $206 | 0, 1);
+    $207 = $$03940$i236 + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i236 >> 0 | 0, $206 | 0, 1);
+    $208 = $$143$i233 + -1 | 0;
+    $209 = ($208 | 0) == 0;
+    if ($209) {
+     break;
+    } else {
+     $$03742$i234 = $202;
+     $$03841$i235 = $204;
+     $$03940$i236 = $207;
+     $$143$i233 = $208;
+    }
+   }
+  }
+  $210 = $$2137 + $10 | 0;
+  $211 = $$2141 + $10 | 0;
+  $212 = $$2145 - $10 | 0;
+  $$2 = $181;
+  $$3138 = $210;
+  $$3142 = $211;
+  $$3146 = $212;
+ }
+ $213 = ($$3146 | 0) == 0;
+ if ($213) {
+  $$3 = $$2;
+ } else {
+  $214 = $0 + 96 | 0;
+  $215 = $0 + 64 | 0;
+  $216 = $214;
+  $217 = $215;
+  $218 = $217 | $216;
+  $219 = $218 & 3;
+  $220 = ($219 | 0) == 0;
+  if ($220) {
+   $221 = $10 >>> 0 > 3;
+   if ($221) {
+    $222 = $10 + -4 | 0;
+    $223 = $222 & -4;
+    $224 = $223 + 4 | 0;
+    $scevgep$i205 = $215 + $224 | 0;
+    $$02432$i = $215;
+    $$02531$i = $214;
+    $$033$i = $10;
+    while (1) {
+     $225 = $$02432$i + 4 | 0;
+     $226 = SAFE_HEAP_LOAD($$02432$i | 0, 4, 0) | 0 | 0;
+     $227 = $$02531$i + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i | 0, $226 | 0, 4);
+     $228 = $$033$i + -4 | 0;
+     $229 = $228 >>> 0 > 3;
+     if ($229) {
+      $$02432$i = $225;
+      $$02531$i = $227;
+      $$033$i = $228;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i = ($0 + 96 | 0) + $224 | 0;
+    $230 = $222 - $223 | 0;
+    $$0$lcssa$i206 = $230;
+    $$024$lcssa$i = $scevgep$i205;
+    $$025$lcssa$i = $scevgep42$i;
+   } else {
+    $$0$lcssa$i206 = $10;
+    $$024$lcssa$i = $215;
+    $$025$lcssa$i = $214;
+   }
+   $$026$ph$i = $$024$lcssa$i;
+   $$027$ph$i = $$025$lcssa$i;
+   $$1$ph$i207 = $$0$lcssa$i206;
+  } else {
+   $$026$ph$i = $215;
+   $$027$ph$i = $214;
+   $$1$ph$i207 = $10;
+  }
+  $231 = ($$1$ph$i207 | 0) == 0;
+  if (!$231) {
+   $$02629$i = $$026$ph$i;
+   $$02728$i = $$027$ph$i;
+   $$130$i = $$1$ph$i207;
+   while (1) {
+    $232 = $$02629$i + 1 | 0;
+    $233 = SAFE_HEAP_LOAD($$02629$i >> 0 | 0, 1, 0) | 0 | 0;
+    $234 = $$02728$i + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i >> 0 | 0, $233 | 0, 1);
+    $235 = $$130$i + -1 | 0;
+    $236 = ($235 | 0) == 0;
+    if ($236) {
+     break;
+    } else {
+     $$02629$i = $232;
+     $$02728$i = $234;
+     $$130$i = $235;
+    }
+   }
+  }
+  $237 = $0 + 496 | 0;
+  $238 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($237, 
$215, $215) | 0;
+  $239 = $238 >>> 0 > $$2 >>> 0;
+  $240 = $239 ? $238 : $$2;
+  $241 = $10 - $$3146 | 0;
+  SAFE_HEAP_STORE($13 | 0, $241 | 0, 4);
+  $242 = $$3142;
+  $243 = $$3138;
+  $244 = $242 | $217;
+  $245 = $244 | $243;
+  $246 = $245 & 3;
+  $247 = ($246 | 0) == 0;
+  if ($247) {
+   $248 = $$3146 >>> 0 > 3;
+   if ($248) {
+    $249 = $$3146 + -4 | 0;
+    $250 = $249 & -4;
+    $251 = $250 + 4 | 0;
+    $scevgep58$i148 = $215 + $251 | 0;
+    $$03446$i152 = $$3142;
+    $$03545$i153 = $215;
+    $$03644$i154 = $$3138;
+    $$047$i151 = $$3146;
+    while (1) {
+     $252 = $$03446$i152 + 4 | 0;
+     $253 = SAFE_HEAP_LOAD($$03446$i152 | 0, 4, 0) | 0 | 0;
+     $254 = $$03545$i153 + 4 | 0;
+     $255 = SAFE_HEAP_LOAD($$03545$i153 | 0, 4, 0) | 0 | 0;
+     $256 = $255 ^ $253;
+     SAFE_HEAP_STORE($$03545$i153 | 0, $256 | 0, 4);
+     $257 = $$03644$i154 + 4 | 0;
+     SAFE_HEAP_STORE($$03644$i154 | 0, $256 | 0, 4);
+     $258 = $$047$i151 + -4 | 0;
+     $259 = $258 >>> 0 > 3;
+     if ($259) {
+      $$03446$i152 = $252;
+      $$03545$i153 = $254;
+      $$03644$i154 = $257;
+      $$047$i151 = $258;
+     } else {
+      break;
+     }
+    }
+    $scevgep$i147 = $$3142 + $251 | 0;
+    $scevgep60$i149 = $$3138 + $251 | 0;
+    $260 = $249 - $250 | 0;
+    $$0$lcssa$i163 = $260;
+    $$034$lcssa$i162 = $scevgep$i147;
+    $$035$lcssa$i161 = $scevgep58$i148;
+    $$036$lcssa$i160 = $scevgep60$i149;
+   } else {
+    $$0$lcssa$i163 = $$3146;
+    $$034$lcssa$i162 = $$3142;
+    $$035$lcssa$i161 = $215;
+    $$036$lcssa$i160 = $$3138;
+   }
+   $$037$ph$i167 = $$034$lcssa$i162;
+   $$038$ph$i166 = $$035$lcssa$i161;
+   $$039$ph$i165 = $$036$lcssa$i160;
+   $$1$ph$i168 = $$0$lcssa$i163;
+  } else {
+   $$037$ph$i167 = $$3142;
+   $$038$ph$i166 = $215;
+   $$039$ph$i165 = $$3138;
+   $$1$ph$i168 = $$3146;
+  }
+  $261 = ($$1$ph$i168 | 0) == 0;
+  if ($261) {
+   $$3 = $240;
+  } else {
+   $$03742$i171 = $$037$ph$i167;
+   $$03841$i172 = $$038$ph$i166;
+   $$03940$i173 = $$039$ph$i165;
+   $$143$i170 = $$1$ph$i168;
+   while (1) {
+    $262 = $$03742$i171 + 1 | 0;
+    $263 = SAFE_HEAP_LOAD($$03742$i171 >> 0 | 0, 1, 0) | 0 | 0;
+    $264 = $$03841$i172 + 1 | 0;
+    $265 = SAFE_HEAP_LOAD($$03841$i172 >> 0 | 0, 1, 0) | 0 | 0;
+    $266 = $265 ^ $263;
+    SAFE_HEAP_STORE($$03841$i172 >> 0 | 0, $266 | 0, 1);
+    $267 = $$03940$i173 + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i173 >> 0 | 0, $266 | 0, 1);
+    $268 = $$143$i170 + -1 | 0;
+    $269 = ($268 | 0) == 0;
+    if ($269) {
+     $$3 = $240;
+     break;
+    } else {
+     $$03742$i171 = $262;
+     $$03841$i172 = $264;
+     $$03940$i173 = $267;
+     $$143$i170 = $268;
+    }
+   }
+  }
+ }
+ $270 = ($$3 | 0) == 0;
+ if ($270) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $271 = $$3 + 16 | 0;
+ ___gcry_burn_stack($271);
+ $$0 = 0;
+ return $$0 | 0;
+}
+
+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, 
$$0211222 = 0, $$0212 = 0, $$0212226 = 0, $$0212227 = 0, $$0213 = 0, $$0235 = 
0, $$0235$phi = 0, $$1 = 0, $$1223 = 0, $$1224 = 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ switch ($10 | 0) {
+ case 2:
+  {
+   $11 = __gcry_mpi_get_nbits($1) | 0;
+   $12 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set_ui($12, 0) | 0;
+   $13 = $0 + 4 | 0;
+   $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set_ui($14, 1) | 0;
+   $15 = $0 + 8 | 0;
+   $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set_ui($16, 1) | 0;
+   $17 = ($1 | 0) == (0 | 0);
+   if (!$17) {
+    $19 = $1 + 12 | 0;
+    $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+    $21 = $20 & 1;
+    $22 = ($21 | 0) == 0;
+    if (!$22) {
+     $23 = __gcry_mpi_new(0) | 0;
+     SAFE_HEAP_STORE($7 | 0, $23 | 0, 4);
+     $24 = __gcry_mpi_new(0) | 0;
+     $25 = $7 + 4 | 0;
+     SAFE_HEAP_STORE($25 | 0, $24 | 0, 4);
+     $26 = __gcry_mpi_new(0) | 0;
+     $27 = $7 + 8 | 0;
+     SAFE_HEAP_STORE($27 | 0, $26 | 0, 4);
+     $$0212226 = $11 + -1 | 0;
+     $28 = ($$0212226 | 0) > -1;
+     if ($28) {
+      $$0212227 = $$0212226;
+      while (1) {
+       __gcry_mpi_ec_dup_point($0, $0, $3);
+       __gcry_mpi_ec_add_points($7, $0, $2, $3);
+       $29 = __gcry_mpi_test_bit($1, $$0212227) | 0;
+       $30 = ($29 | 0) == 0;
+       if (!$30) {
+        $32 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_set($32, $23) | 0;
+        $33 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_set($33, $24) | 0;
+        $34 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_set($34, $26) | 0;
+       }
+       $$0212 = $$0212227 + -1 | 0;
+       $31 = ($$0212 | 0) > -1;
+       if ($31) {
+        $$0212227 = $$0212;
+       } else {
+        break;
+       }
+      }
+     }
+     __gcry_mpi_free($23);
+     __gcry_mpi_free($24);
+     __gcry_mpi_free($26);
+     STACKTOP = sp;
+     return;
+    }
+   }
+   $$1223 = $11 + -1 | 0;
+   $18 = ($$1223 | 0) > -1;
+   if ($18) {
+    $$1224 = $$1223;
+   } else {
+    STACKTOP = sp;
+    return;
+   }
+   while (1) {
+    __gcry_mpi_ec_dup_point($0, $0, $3);
+    $35 = __gcry_mpi_test_bit($1, $$1224) | 0;
+    $36 = ($35 | 0) == 0;
+    if (!$36) {
+     __gcry_mpi_ec_add_points($0, $0, $2, $3);
+    }
+    $$1 = $$1224 + -1 | 0;
+    $37 = ($$1 | 0) > -1;
+    if ($37) {
+     $$1224 = $$1;
+    } else {
+     break;
+    }
+   }
+   STACKTOP = sp;
+   return;
+   break;
+  }
+ case 1:
+  {
+   $38 = __gcry_mpi_get_nbits($1) | 0;
+   $39 = __gcry_mpi_new(0) | 0;
+   SAFE_HEAP_STORE($4 | 0, $39 | 0, 4);
+   $40 = __gcry_mpi_new(0) | 0;
+   $41 = $4 + 4 | 0;
+   SAFE_HEAP_STORE($41 | 0, $40 | 0, 4);
+   $42 = __gcry_mpi_new(0) | 0;
+   $43 = $4 + 8 | 0;
+   SAFE_HEAP_STORE($43 | 0, $42 | 0, 4);
+   $44 = __gcry_mpi_new(0) | 0;
+   $45 = __gcry_mpi_new(0) | 0;
+   $46 = $5 + 4 | 0;
+   SAFE_HEAP_STORE($46 | 0, $45 | 0, 4);
+   $47 = __gcry_mpi_new(0) | 0;
+   $48 = $5 + 8 | 0;
+   SAFE_HEAP_STORE($48 | 0, $47 | 0, 4);
+   $49 = __gcry_mpi_new(0) | 0;
+   SAFE_HEAP_STORE($8 | 0, $49 | 0, 4);
+   $50 = __gcry_mpi_new(0) | 0;
+   $51 = $8 + 4 | 0;
+   SAFE_HEAP_STORE($51 | 0, $50 | 0, 4);
+   $52 = __gcry_mpi_new(0) | 0;
+   $53 = $8 + 8 | 0;
+   SAFE_HEAP_STORE($53 | 0, $52 | 0, 4);
+   $54 = __gcry_mpi_new(0) | 0;
+   SAFE_HEAP_STORE($9 | 0, $54 | 0, 4);
+   $55 = __gcry_mpi_new(0) | 0;
+   $56 = $9 + 4 | 0;
+   SAFE_HEAP_STORE($56 | 0, $55 | 0, 4);
+   $57 = __gcry_mpi_new(0) | 0;
+   $58 = $9 + 8 | 0;
+   SAFE_HEAP_STORE($58 | 0, $57 | 0, 4);
+   __gcry_mpi_set_ui($39, 1) | 0;
+   __gcry_mpi_free($44);
+   $59 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+   $60 = __gcry_mpi_copy($59) | 0;
+   SAFE_HEAP_STORE($5 | 0, $60 | 0, 4);
+   __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 = SAFE_HEAP_LOAD($$0209232 | 0, 4, 0) | 0 | 0;
+     $71 = SAFE_HEAP_LOAD($$0208233 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_swap_cond($70, $71, $69);
+     $72 = $$0209232 + 8 | 0;
+     $73 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     $74 = $$0208233 + 8 | 0;
+     $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_swap_cond($73, $75, $69);
+     $76 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $77 = SAFE_HEAP_LOAD($$0235 | 0, 4, 0) | 0 | 0;
+     $78 = SAFE_HEAP_LOAD($$0208233 | 0, 4, 0) | 0 | 0;
+     $79 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_add($77, $78, $79);
+     $80 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $81 = ($80 | 0) == (0 | 0);
+     if ($81) {
+      $82 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($77, $77, $82);
+     } else {
+      __gcry_mpi_mod_barrett($77, $77, $80);
+     }
+     $83 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     $84 = SAFE_HEAP_LOAD($$0208233 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_sub($83, $84, $83);
+     $85 = SAFE_HEAP_LOAD($$0207234 | 0, 4, 0) | 0 | 0;
+     $86 = SAFE_HEAP_LOAD($$0209232 | 0, 4, 0) | 0 | 0;
+     $87 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_add($85, $86, $87);
+     $88 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $89 = ($88 | 0) == (0 | 0);
+     if ($89) {
+      $90 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($85, $85, $90);
+     } else {
+      __gcry_mpi_mod_barrett($85, $85, $88);
+     }
+     $91 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     $92 = SAFE_HEAP_LOAD($$0209232 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_sub($91, $92, $91);
+     $93 = SAFE_HEAP_LOAD($$0208233 | 0, 4, 0) | 0 | 0;
+     $94 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     $95 = SAFE_HEAP_LOAD($$0235 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($93, $94, $95);
+     $96 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $97 = ($96 | 0) == (0 | 0);
+     if ($97) {
+      $98 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($93, $93, $98);
+     } else {
+      __gcry_mpi_mod_barrett($93, $93, $96);
+     }
+     $99 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     $100 = SAFE_HEAP_LOAD($$0207234 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($99, $100, $99);
+     $101 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $102 = ($101 | 0) == (0 | 0);
+     if ($102) {
+      $103 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($99, $99, $103);
+     } else {
+      __gcry_mpi_mod_barrett($99, $99, $101);
+     }
+     $104 = SAFE_HEAP_LOAD($$0209232 | 0, 4, 0) | 0 | 0;
+     $105 = SAFE_HEAP_LOAD($$0207234 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($104, $105, $105);
+     $106 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $107 = ($106 | 0) == (0 | 0);
+     if ($107) {
+      $108 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($104, $104, $108);
+     } else {
+      __gcry_mpi_mod_barrett($104, $104, $106);
+     }
+     $109 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($109, $109, $109);
+     $110 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $111 = ($110 | 0) == (0 | 0);
+     if ($111) {
+      $112 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($109, $109, $112);
+     } else {
+      __gcry_mpi_mod_barrett($109, $109, $110);
+     }
+     $113 = SAFE_HEAP_LOAD($$0235 | 0, 4, 0) | 0 | 0;
+     $114 = SAFE_HEAP_LOAD($$0208233 | 0, 4, 0) | 0 | 0;
+     $115 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_add($113, $114, $115);
+     $116 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $117 = ($116 | 0) == (0 | 0);
+     if ($117) {
+      $118 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($113, $113, $118);
+     } else {
+      __gcry_mpi_mod_barrett($113, $113, $116);
+     }
+     $119 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     $120 = SAFE_HEAP_LOAD($$0208233 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_sub($119, $120, $119);
+     $121 = SAFE_HEAP_LOAD($$0207234 | 0, 4, 0) | 0 | 0;
+     $122 = SAFE_HEAP_LOAD($$0209232 | 0, 4, 0) | 0 | 0;
+     $123 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($121, $122, $123);
+     $124 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $125 = ($124 | 0) == (0 | 0);
+     if ($125) {
+      $126 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($121, $121, $126);
+     } else {
+      __gcry_mpi_mod_barrett($121, $121, $124);
+     }
+     $127 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     $128 = SAFE_HEAP_LOAD($$0209232 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_sub($127, $128, $127);
+     $129 = SAFE_HEAP_LOAD($$0235 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($129, $129, $129);
+     $130 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $131 = ($130 | 0) == (0 | 0);
+     if ($131) {
+      $132 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($129, $129, $132);
+     } else {
+      __gcry_mpi_mod_barrett($129, $129, $130);
+     }
+     $133 = $$0235 + 8 | 0;
+     $134 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 0;
+     $135 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($134, $135, $135);
+     $136 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $137 = ($136 | 0) == (0 | 0);
+     if ($137) {
+      $138 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($134, $134, $138);
+     } else {
+      __gcry_mpi_mod_barrett($134, $134, $136);
+     }
+     $139 = $$0207234 + 8 | 0;
+     $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+     $141 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     $142 = SAFE_HEAP_LOAD($68 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($140, $141, $142);
+     $143 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $144 = ($143 | 0) == (0 | 0);
+     if ($144) {
+      $145 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($140, $140, $145);
+     } else {
+      __gcry_mpi_mod_barrett($140, $140, $143);
+     }
+     $146 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($146, $146, $76);
+     $147 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $148 = ($147 | 0) == (0 | 0);
+     if ($148) {
+      $149 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($146, $146, $149);
+     } else {
+      __gcry_mpi_mod_barrett($146, $146, $147);
+     }
+     $150 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+     $151 = SAFE_HEAP_LOAD($$0209232 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_add($150, $151, $150);
+     $152 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $153 = ($152 | 0) == (0 | 0);
+     if ($153) {
+      $154 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($150, $150, $154);
+     } else {
+      __gcry_mpi_mod_barrett($150, $150, $152);
+     }
+     $155 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+     $156 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($155, $155, $156);
+     $157 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $158 = ($157 | 0) == (0 | 0);
+     if ($158) {
+      $159 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($155, $155, $159);
+     } else {
+      __gcry_mpi_mod_barrett($155, $155, $157);
+     }
+     $160 = SAFE_HEAP_LOAD($$0207234 | 0, 4, 0) | 0 | 0;
+     $161 = SAFE_HEAP_LOAD($$0235 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_swap_cond($160, $161, $69);
+     $162 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+     $163 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($165 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($168 | 0, 4, 0) | 0 | 0;
+   $170 = ($169 | 0) == 0;
+   if ($170) {
+    $171 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set_ui($171, 1) | 0;
+    $172 = $0 + 8 | 0;
+    $173 = SAFE_HEAP_LOAD($172 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set_ui($173, 0) | 0;
+   } else {
+    $174 = __gcry_mpi_new(0) | 0;
+    $175 = $3 + 16 | 0;
+    $176 = SAFE_HEAP_LOAD($175 | 0, 4, 0) | 0 | 0;
+    $177 = __gcry_mpi_invm($174, $42, $176) | 0;
+    $178 = ($177 | 0) == 0;
+    if ($178) {
+     __gcry_log_error(45341, $vararg_buffer);
+     __gcry_log_printmpi(45375, $42);
+     $179 = SAFE_HEAP_LOAD($175 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(45379, $179);
+    }
+    $180 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mul($180, $39, $174);
+    $181 = $3 + 60 | 0;
+    $182 = SAFE_HEAP_LOAD($181 | 0, 4, 0) | 0 | 0;
+    $183 = ($182 | 0) == (0 | 0);
+    if ($183) {
+     $184 = SAFE_HEAP_LOAD($175 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mod($180, $180, $184);
+    } else {
+     __gcry_mpi_mod_barrett($180, $180, $182);
+    }
+    $185 = $0 + 8 | 0;
+    $186 = SAFE_HEAP_LOAD($185 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set_ui($186, 1) | 0;
+    __gcry_mpi_free($174);
+   }
+   __gcry_mpi_free($39);
+   SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+   __gcry_mpi_free($40);
+   SAFE_HEAP_STORE($41 | 0, 0 | 0, 4);
+   __gcry_mpi_free($42);
+   SAFE_HEAP_STORE($43 | 0, 0 | 0, 4);
+   __gcry_mpi_free($60);
+   SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+   __gcry_mpi_free($45);
+   SAFE_HEAP_STORE($46 | 0, 0 | 0, 4);
+   __gcry_mpi_free($47);
+   SAFE_HEAP_STORE($48 | 0, 0 | 0, 4);
+   __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 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+   $189 = __gcry_mpi_alloc_like($188) | 0;
+   $190 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+   $191 = __gcry_mpi_alloc_like($190) | 0;
+   $192 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+   $193 = __gcry_mpi_alloc_like($192) | 0;
+   $194 = __gcry_mpi_copy($1) | 0;
+   $195 = $2 + 4 | 0;
+   $196 = SAFE_HEAP_LOAD($195 | 0, 4, 0) | 0 | 0;
+   $197 = __gcry_mpi_copy($196) | 0;
+   $198 = $194 + 8 | 0;
+   $199 = SAFE_HEAP_LOAD($198 | 0, 4, 0) | 0 | 0;
+   $200 = ($199 | 0) == 0;
+   if (!$200) {
+    SAFE_HEAP_STORE($198 | 0, 0 | 0, 4);
+    $201 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+    $202 = __gcry_mpi_invm($197, $197, $201) | 0;
+    $203 = ($202 | 0) == 0;
+    if ($203) {
+     __gcry_log_error(45341, $vararg_buffer1);
+     __gcry_log_printmpi(45375, $197);
+     $204 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(45379, $204);
+    }
+   }
+   $205 = $2 + 8 | 0;
+   $206 = SAFE_HEAP_LOAD($205 | 0, 4, 0) | 0 | 0;
+   $207 = __gcry_mpi_cmp_ui($206, 1) | 0;
+   $208 = ($207 | 0) == 0;
+   if ($208) {
+    $209 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($189, $209) | 0;
+    __gcry_mpi_set($191, $197) | 0;
+   } else {
+    $210 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+    $211 = __gcry_mpi_alloc_like($210) | 0;
+    $212 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+    $213 = __gcry_mpi_alloc_like($212) | 0;
+    $214 = SAFE_HEAP_LOAD($205 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mul($211, $214, $214);
+    $215 = $3 + 60 | 0;
+    $216 = SAFE_HEAP_LOAD($215 | 0, 4, 0) | 0 | 0;
+    $217 = ($216 | 0) == (0 | 0);
+    if ($217) {
+     $218 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mod($211, $211, $218);
+    } else {
+     __gcry_mpi_mod_barrett($211, $211, $216);
+    }
+    $219 = SAFE_HEAP_LOAD($205 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mul($213, $219, $211);
+    $220 = SAFE_HEAP_LOAD($215 | 0, 4, 0) | 0 | 0;
+    $221 = ($220 | 0) == (0 | 0);
+    if ($221) {
+     $222 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mod($213, $213, $222);
+    } else {
+     __gcry_mpi_mod_barrett($213, $213, $220);
+    }
+    $223 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+    $224 = __gcry_mpi_invm($211, $211, $223) | 0;
+    $225 = ($224 | 0) == 0;
+    if ($225) {
+     __gcry_log_error(45341, $vararg_buffer3);
+     __gcry_log_printmpi(45375, $211);
+     $226 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(45379, $226);
+    }
+    $227 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mul($189, $227, $211);
+    $228 = SAFE_HEAP_LOAD($215 | 0, 4, 0) | 0 | 0;
+    $229 = ($228 | 0) == (0 | 0);
+    if ($229) {
+     $230 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mod($189, $189, $230);
+    } else {
+     __gcry_mpi_mod_barrett($189, $189, $228);
+    }
+    $231 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+    $232 = __gcry_mpi_invm($213, $213, $231) | 0;
+    $233 = ($232 | 0) == 0;
+    if ($233) {
+     __gcry_log_error(45341, $vararg_buffer5);
+     __gcry_log_printmpi(45375, $213);
+     $234 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(45379, $234);
+    }
+    __gcry_mpi_mul($191, $197, $213);
+    $235 = SAFE_HEAP_LOAD($215 | 0, 4, 0) | 0 | 0;
+    $236 = ($235 | 0) == (0 | 0);
+    if ($236) {
+     $237 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   if ($242) {
+    __gcry_mpi_clear($243);
+    $244 = $0 + 4 | 0;
+    $245 = SAFE_HEAP_LOAD($244 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_clear($245);
+    $246 = $0 + 8 | 0;
+    $247 = SAFE_HEAP_LOAD($246 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_clear($247);
+    $$0213 = 0;
+   } else {
+    $248 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($243, $248) | 0;
+    $249 = $0 + 4 | 0;
+    $250 = SAFE_HEAP_LOAD($249 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($250, $197) | 0;
+    $251 = $0 + 8 | 0;
+    $252 = SAFE_HEAP_LOAD($251 | 0, 4, 0) | 0 | 0;
+    $253 = SAFE_HEAP_LOAD($205 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($252, $253) | 0;
+    $phitmp = $241 + -2 | 0;
+    $$0213 = $phitmp;
+   }
+   __gcry_mpi_free($197);
+   SAFE_HEAP_STORE($4 | 0, $189 | 0, 4);
+   $254 = $4 + 4 | 0;
+   SAFE_HEAP_STORE($254 | 0, $191 | 0, 4);
+   $255 = $4 + 8 | 0;
+   SAFE_HEAP_STORE($255 | 0, $239 | 0, 4);
+   $256 = __gcry_mpi_new(0) | 0;
+   SAFE_HEAP_STORE($5 | 0, $256 | 0, 4);
+   $257 = __gcry_mpi_new(0) | 0;
+   $258 = $5 + 4 | 0;
+   SAFE_HEAP_STORE($258 | 0, $257 | 0, 4);
+   $259 = __gcry_mpi_new(0) | 0;
+   $260 = $5 + 8 | 0;
+   SAFE_HEAP_STORE($260 | 0, $259 | 0, 4);
+   $261 = __gcry_mpi_new(0) | 0;
+   SAFE_HEAP_STORE($6 | 0, $261 | 0, 4);
+   $262 = __gcry_mpi_new(0) | 0;
+   $263 = $6 + 4 | 0;
+   SAFE_HEAP_STORE($263 | 0, $262 | 0, 4);
+   $264 = __gcry_mpi_new(0) | 0;
+   $265 = $6 + 8 | 0;
+   SAFE_HEAP_STORE($265 | 0, $264 | 0, 4);
+   $266 = ($$0213 | 0) == 0;
+   if (!$266) {
+    $267 = $0 + 4 | 0;
+    $268 = $0 + 8 | 0;
+    $$0211222 = $$0213;
+    while (1) {
+     __gcry_mpi_ec_dup_point($0, $0, $3);
+     $269 = __gcry_mpi_test_bit($193, $$0211222) | 0;
+     $270 = ($269 | 0) == 1;
+     if ($270) {
+      $271 = __gcry_mpi_test_bit($194, $$0211222) | 0;
+      $272 = ($271 | 0) == 0;
+      if ($272) {
+       $273 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($256, $273) | 0;
+       $274 = SAFE_HEAP_LOAD($267 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($257, $274) | 0;
+       $275 = SAFE_HEAP_LOAD($268 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($259, $275) | 0;
+       __gcry_mpi_ec_add_points($0, $5, $4, $3);
+      }
+     }
+     $276 = __gcry_mpi_test_bit($193, $$0211222) | 0;
+     $277 = ($276 | 0) == 0;
+     if ($277) {
+      $278 = __gcry_mpi_test_bit($194, $$0211222) | 0;
+      $279 = ($278 | 0) == 1;
+      if ($279) {
+       $280 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($256, $280) | 0;
+       $281 = SAFE_HEAP_LOAD($267 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set($257, $281) | 0;
+       $282 = SAFE_HEAP_LOAD($268 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_sub($262, $283, $262);
+       __gcry_mpi_ec_add_points($0, $5, $6, $3);
+      }
+     }
+     $284 = $$0211222 + -1 | 0;
+     $285 = ($284 | 0) == 0;
+     if ($285) {
+      break;
+     } else {
+      $$0211222 = $284;
+     }
+    }
+   }
+   __gcry_mpi_free($189);
+   SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+   __gcry_mpi_free($191);
+   SAFE_HEAP_STORE($254 | 0, 0 | 0, 4);
+   __gcry_mpi_free($239);
+   SAFE_HEAP_STORE($255 | 0, 0 | 0, 4);
+   __gcry_mpi_free($256);
+   SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+   __gcry_mpi_free($257);
+   SAFE_HEAP_STORE($258 | 0, 0 | 0, 4);
+   __gcry_mpi_free($259);
+   SAFE_HEAP_STORE($260 | 0, 0 | 0, 4);
+   __gcry_mpi_free($261);
+   SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+   __gcry_mpi_free($262);
+   SAFE_HEAP_STORE($263 | 0, 0 | 0, 4);
+   __gcry_mpi_free($264);
+   SAFE_HEAP_STORE($265 | 0, 0 | 0, 4);
+   __gcry_mpi_free($193);
+   __gcry_mpi_free($194);
+   STACKTOP = sp;
+   return;
+  }
+ }
+}
+
+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 $$ = 0, $$$2267 = 0, $$$i = 0, $$$i170 = 0, $$$i184 = 0, $$$i198 = 0, 
$$$i212 = 0, $$0151 = 0, $$0154 = 0, $$0155296 = 0, $$0157 = 0, $$0158 = 0, 
$$0159 = 0, $$0160 = 0, $$0160302303 = 0, $$0163 = 0, $$0262 = 0, $$0265 = 0, 
$$0269 = 0, $$0273 = 0;
+ var $$0277 = 0, $$090107$i = 0, $$090107$i174 = 0, $$090107$i188 = 0, 
$$090107$i202 = 0, $$090107$i216 = 0, $$090107$in$i = 0, $$090107$in$i172 = 0, 
$$090107$in$i186 = 0, $$090107$in$i200 = 0, $$090107$in$i214 = 0, $$092106$i = 
0, $$092106$i173 = 0, $$092106$i187 = 0, $$092106$i201 = 0, $$092106$i215 = 0, 
$$1263 = 0, $$1266 = 0, $$1270 = 0, $$1274 = 0;
+ var $$1278 = 0, $$2$lcssa$i = 0, $$2$lcssa$i180 = 0, $$2$lcssa$i194 = 0, 
$$2$lcssa$i208 = 0, $$2$lcssa$i222 = 0, $$2153$lcssa = 0, $$2153$ph = 0, 
$$2153297 = 0, $$2264306 = 0, $$2264307 = 0, $$2267 = 0, $$2267$ = 0, $$2271 = 
0, $$2275 = 0, $$2279 = 0, $$286 = 0, $$288 = 0, $$296$i = 0, $$296$i177 = 0;
+ var $$296$i191 = 0, $$296$i205 = 0, $$296$i219 = 0, $$3268 = 0, $$3272 = 0, 
$$3276 = 0, $$3280 = 0, $$3280300304 = 0, $$3280301 = 0, $$7 = 0, $$lobit = 0, 
$$lobit290 = 0, $$lobit292 = 0, $$lobit294 = 0, $$pn = 0, $$pre = 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, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, 
$36 = 0, $37 = 0, $38 = 0, $39 = 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, $exitcond = 0, $or$cond = 0, 
$or$cond166 = 0, $or$cond168 = 0, $scevgep = 0, $storemerge = 0, $trunc = 0, 
$trunc$clear = 0, $trunc293 = 0, $trunc293$clear = 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);
+ $$ = $7 ? $5 : $3;
+ $8 = $4 + 8 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 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;
+ }
+ SAFE_HEAP_STORE($$ | 0, 0 | 0, 4);
+ switch ($0 | 0) {
+ case 1:
+  {
+   $13 = $4 + 4 | 0;
+   $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $15 = $14 << 2;
+   $16 = ($14 | 0) == 0;
+   $$$i = $16 ? 1 : $15;
+   $17 = $4 + 12 | 0;
+   $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+   $19 = $18 & 1;
+   $20 = ($19 | 0) == 0;
+   if ($20) {
+    $22 = __gcry_malloc($$$i) | 0;
+    $23 = $22;
+   } else {
+    $21 = __gcry_malloc_secure($$$i) | 0;
+    $23 = $21;
+   }
+   $24 = ($23 | 0) == (0 | 0);
+   if ($24) {
+    $49 = _gpg_err_code_from_syserror() | 0;
+    $$7 = $49;
+    STACKTOP = sp;
+    return $$7 | 0;
+   }
+   $25 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $26 = ($25 | 0) > 0;
+   if ($26) {
+    $27 = $4 + 16 | 0;
+    $$090107$in$i = $25;
+    $$092106$i = $23;
+    while (1) {
+     $$090107$i = $$090107$in$i + -1 | 0;
+     $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+     $29 = $28 + ($$090107$i << 2) | 0;
+     $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+     $31 = $30 >>> 24;
+     $32 = $31 & 255;
+     $33 = $$092106$i + 1 | 0;
+     SAFE_HEAP_STORE($$092106$i >> 0 | 0, $32 | 0, 1);
+     $34 = $30 >>> 16;
+     $35 = $34 & 255;
+     $36 = $$092106$i + 2 | 0;
+     SAFE_HEAP_STORE($33 >> 0 | 0, $35 | 0, 1);
+     $37 = $30 >>> 8;
+     $38 = $37 & 255;
+     $39 = $$092106$i + 3 | 0;
+     SAFE_HEAP_STORE($36 >> 0 | 0, $38 | 0, 1);
+     $40 = $30 & 255;
+     $41 = $$092106$i + 4 | 0;
+     SAFE_HEAP_STORE($39 >> 0 | 0, $40 | 0, 1);
+     $42 = ($$090107$in$i | 0) > 1;
+     if ($42) {
+      $$090107$in$i = $$090107$i;
+      $$092106$i = $41;
+     } else {
+      break;
+     }
+    }
+   }
+   if ($16) {
+    $$2279 = 0;
+   } else {
+    $$0277 = $15;
+    $$296$i = $23;
+    while (1) {
+     $43 = SAFE_HEAP_LOAD($$296$i >> 0 | 0, 1, 0) | 0 | 0;
+     $44 = $43 << 24 >> 24 == 0;
+     if (!$44) {
+      $$1278 = $$0277;
+      $$2$lcssa$i = $$296$i;
+      break;
+     }
+     $45 = $$296$i + 1 | 0;
+     $46 = $$0277 + -1 | 0;
+     $47 = ($46 | 0) == 0;
+     if ($47) {
+      $$1278 = 0;
+      $$2$lcssa$i = $45;
+      break;
+     } else {
+      $$0277 = $46;
+      $$296$i = $45;
+     }
+    }
+    $48 = ($$2$lcssa$i | 0) == ($23 | 0);
+    if ($48) {
+     $$2279 = $$1278;
+    } else {
+     _memmove($23 | 0, $$2$lcssa$i | 0, $$1278 | 0) | 0;
+     $$2279 = $$1278;
+    }
+   }
+   $50 = ($$0159 | 0) == 0;
+   do {
+    if ($50) {
+     $55 = ($$2279 | 0) == 0;
+     if ($55) {
+      $56 = ($1 | 0) == (0 | 0);
+      if ($56) {
+       $$3280301 = 0;
+       break;
+      } else {
+       $$0160302303 = 0;
+       $$3280300304 = 0;
+       label = 26;
+       break;
+      }
+     } else {
+      $57 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+      $$lobit294 = ($57 & 255) >>> 7;
+      $58 = $$lobit294 & 255;
+      $$0160 = $58;
+      $$pn = $58;
+      label = 23;
+      break;
+     }
+    } else {
+     _twocompl($23, $$2279);
+     $51 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+     $52 = $51 << 24 >> 24 < 0;
+     $$lobit292 = ($51 & 255) >>> 7;
+     $53 = $$lobit292 & 255;
+     $54 = $53 ^ 1;
+     $$286 = $52 ? 0 : 2;
+     $$0160 = $$286;
+     $$pn = $54;
+     label = 23;
+    }
+   } while (0);
+   do {
+    if ((label | 0) == 23) {
+     $$3280 = $$pn + $$2279 | 0;
+     $59 = ($1 | 0) != (0 | 0);
+     $60 = $$3280 >>> 0 > $2 >>> 0;
+     $or$cond = $59 & $60;
+     if (!$or$cond) {
+      if ($59) {
+       $$0160302303 = $$0160;
+       $$3280300304 = $$3280;
+       label = 26;
+       break;
+      } else {
+       $$3280301 = $$3280;
+       break;
+      }
+     }
+     __gcry_free($23);
+     $$7 = 66;
+     STACKTOP = sp;
+     return $$7 | 0;
+    }
+   } while (0);
+   if ((label | 0) == 26) {
+    $trunc293 = $$0160302303 & 255;
+    $trunc293$clear = $trunc293 & 3;
+    switch ($trunc293$clear << 24 >> 24) {
+    case 1:
+     {
+      $61 = $1 + 1 | 0;
+      SAFE_HEAP_STORE($1 >> 0 | 0, 0 | 0, 1);
+      $$0163 = $61;
+      break;
+     }
+    case 0:
+     {
+      $$0163 = $1;
+      break;
+     }
+    default:
+     {
+      $62 = $1 + 1 | 0;
+      SAFE_HEAP_STORE($1 >> 0 | 0, -1 | 0, 1);
+      $$0163 = $62;
+     }
+    }
+    $63 = ($$0160302303 | 0) != 0;
+    $64 = $63 & 1;
+    $65 = $$3280300304 - $64 | 0;
+    _memcpy($$0163 | 0, $23 | 0, $65 | 0) | 0;
+    $$3280301 = $$3280300304;
+   }
+   __gcry_free($23);
+   SAFE_HEAP_STORE($$ | 0, $$3280301 | 0, 4);
+   $$7 = 0;
+   STACKTOP = sp;
+   return $$7 | 0;
+   break;
+  }
+ case 5:
+  {
+   $66 = $6 + 7 | 0;
+   $67 = $66 >>> 3;
+   $68 = ($1 | 0) != (0 | 0);
+   $69 = $67 >>> 0 > $2 >>> 0;
+   $or$cond166 = $68 & $69;
+   if ($or$cond166) {
+    $$7 = 66;
+    STACKTOP = sp;
+    return $$7 | 0;
+   }
+   if ($68) {
+    $70 = $4 + 4 | 0;
+    $71 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+    $72 = $71 << 2;
+    $73 = ($71 | 0) == 0;
+    $$$i170 = $73 ? 1 : $72;
+    $74 = $4 + 12 | 0;
+    $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+    $76 = $75 & 1;
+    $77 = ($76 | 0) == 0;
+    if ($77) {
+     $79 = __gcry_malloc($$$i170) | 0;
+     $80 = $79;
+    } else {
+     $78 = __gcry_malloc_secure($$$i170) | 0;
+     $80 = $78;
+    }
+    $81 = ($80 | 0) == (0 | 0);
+    if ($81) {
+     $106 = _gpg_err_code_from_syserror() | 0;
+     $$7 = $106;
+     STACKTOP = sp;
+     return $$7 | 0;
+    }
+    $82 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+    $83 = ($82 | 0) > 0;
+    if ($83) {
+     $84 = $4 + 16 | 0;
+     $$090107$in$i172 = $82;
+     $$092106$i173 = $80;
+     while (1) {
+      $$090107$i174 = $$090107$in$i172 + -1 | 0;
+      $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+      $86 = $85 + ($$090107$i174 << 2) | 0;
+      $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+      $88 = $87 >>> 24;
+      $89 = $88 & 255;
+      $90 = $$092106$i173 + 1 | 0;
+      SAFE_HEAP_STORE($$092106$i173 >> 0 | 0, $89 | 0, 1);
+      $91 = $87 >>> 16;
+      $92 = $91 & 255;
+      $93 = $$092106$i173 + 2 | 0;
+      SAFE_HEAP_STORE($90 >> 0 | 0, $92 | 0, 1);
+      $94 = $87 >>> 8;
+      $95 = $94 & 255;
+      $96 = $$092106$i173 + 3 | 0;
+      SAFE_HEAP_STORE($93 >> 0 | 0, $95 | 0, 1);
+      $97 = $87 & 255;
+      $98 = $$092106$i173 + 4 | 0;
+      SAFE_HEAP_STORE($96 >> 0 | 0, $97 | 0, 1);
+      $99 = ($$090107$in$i172 | 0) > 1;
+      if ($99) {
+       $$090107$in$i172 = $$090107$i174;
+       $$092106$i173 = $98;
+      } else {
+       break;
+      }
+     }
+    }
+    if ($73) {
+     $$2275 = 0;
+    } else {
+     $$0273 = $72;
+     $$296$i177 = $80;
+     while (1) {
+      $100 = SAFE_HEAP_LOAD($$296$i177 >> 0 | 0, 1, 0) | 0 | 0;
+      $101 = $100 << 24 >> 24 == 0;
+      if (!$101) {
+       $$1274 = $$0273;
+       $$2$lcssa$i180 = $$296$i177;
+       break;
+      }
+      $102 = $$296$i177 + 1 | 0;
+      $103 = $$0273 + -1 | 0;
+      $104 = ($103 | 0) == 0;
+      if ($104) {
+       $$1274 = 0;
+       $$2$lcssa$i180 = $102;
+       break;
+      } else {
+       $$0273 = $103;
+       $$296$i177 = $102;
+      }
+     }
+     $105 = ($$2$lcssa$i180 | 0) == ($80 | 0);
+     if ($105) {
+      $$2275 = $$1274;
+     } else {
+      _memmove($80 | 0, $$2$lcssa$i180 | 0, $$1274 | 0) | 0;
+      $$2275 = $$1274;
+     }
+    }
+    _memcpy($1 | 0, $80 | 0, $$2275 | 0) | 0;
+    __gcry_free($80);
+    $$3276 = $$2275;
+   } else {
+    $$3276 = $67;
+   }
+   SAFE_HEAP_STORE($$ | 0, $$3276 | 0, 4);
+   $$7 = 0;
+   STACKTOP = sp;
+   return $$7 | 0;
+   break;
+  }
+ case 2:
+  {
+   $107 = $6 + 7 | 0;
+   $108 = $107 >>> 3;
+   $109 = ($$0159 | 0) == 0;
+   if (!$109) {
+    $$7 = 45;
+    STACKTOP = sp;
+    return $$7 | 0;
+   }
+   $110 = ($1 | 0) != (0 | 0);
+   $111 = $108 + 2 | 0;
+   $112 = $111 >>> 0 > $2 >>> 0;
+   $or$cond168 = $110 & $112;
+   if ($or$cond168) {
+    $$7 = 66;
+    STACKTOP = sp;
+    return $$7 | 0;
+   }
+   if ($110) {
+    $113 = $6 >>> 8;
+    $114 = $113 & 255;
+    SAFE_HEAP_STORE($1 >> 0 | 0, $114 | 0, 1);
+    $115 = $6 & 255;
+    $116 = $1 + 1 | 0;
+    SAFE_HEAP_STORE($116 >> 0 | 0, $115 | 0, 1);
+    $117 = $4 + 4 | 0;
+    $118 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+    $119 = $118 << 2;
+    $120 = ($118 | 0) == 0;
+    $$$i184 = $120 ? 1 : $119;
+    $121 = $4 + 12 | 0;
+    $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+    $123 = $122 & 1;
+    $124 = ($123 | 0) == 0;
+    if ($124) {
+     $126 = __gcry_malloc($$$i184) | 0;
+     $127 = $126;
+    } else {
+     $125 = __gcry_malloc_secure($$$i184) | 0;
+     $127 = $125;
+    }
+    $128 = ($127 | 0) == (0 | 0);
+    if ($128) {
+     $154 = _gpg_err_code_from_syserror() | 0;
+     $$7 = $154;
+     STACKTOP = sp;
+     return $$7 | 0;
+    }
+    $129 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+    $130 = ($129 | 0) > 0;
+    if ($130) {
+     $131 = $4 + 16 | 0;
+     $$090107$in$i186 = $129;
+     $$092106$i187 = $127;
+     while (1) {
+      $$090107$i188 = $$090107$in$i186 + -1 | 0;
+      $132 = SAFE_HEAP_LOAD($131 | 0, 4, 0) | 0 | 0;
+      $133 = $132 + ($$090107$i188 << 2) | 0;
+      $134 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 0;
+      $135 = $134 >>> 24;
+      $136 = $135 & 255;
+      $137 = $$092106$i187 + 1 | 0;
+      SAFE_HEAP_STORE($$092106$i187 >> 0 | 0, $136 | 0, 1);
+      $138 = $134 >>> 16;
+      $139 = $138 & 255;
+      $140 = $$092106$i187 + 2 | 0;
+      SAFE_HEAP_STORE($137 >> 0 | 0, $139 | 0, 1);
+      $141 = $134 >>> 8;
+      $142 = $141 & 255;
+      $143 = $$092106$i187 + 3 | 0;
+      SAFE_HEAP_STORE($140 >> 0 | 0, $142 | 0, 1);
+      $144 = $134 & 255;
+      $145 = $$092106$i187 + 4 | 0;
+      SAFE_HEAP_STORE($143 >> 0 | 0, $144 | 0, 1);
+      $146 = ($$090107$in$i186 | 0) > 1;
+      if ($146) {
+       $$090107$in$i186 = $$090107$i188;
+       $$092106$i187 = $145;
+      } else {
+       break;
+      }
+     }
+    }
+    if ($120) {
+     $$2271 = 0;
+    } else {
+     $$0269 = $119;
+     $$296$i191 = $127;
+     while (1) {
+      $147 = SAFE_HEAP_LOAD($$296$i191 >> 0 | 0, 1, 0) | 0 | 0;
+      $148 = $147 << 24 >> 24 == 0;
+      if (!$148) {
+       $$1270 = $$0269;
+       $$2$lcssa$i194 = $$296$i191;
+       break;
+      }
+      $149 = $$296$i191 + 1 | 0;
+      $150 = $$0269 + -1 | 0;
+      $151 = ($150 | 0) == 0;
+      if ($151) {
+       $$1270 = 0;
+       $$2$lcssa$i194 = $149;
+       break;
+      } else {
+       $$0269 = $150;
+       $$296$i191 = $149;
+      }
+     }
+     $152 = ($$2$lcssa$i194 | 0) == ($127 | 0);
+     if ($152) {
+      $$2271 = $$1270;
+     } else {
+      _memmove($127 | 0, $$2$lcssa$i194 | 0, $$1270 | 0) | 0;
+      $$2271 = $$1270;
+     }
+    }
+    $153 = $1 + 2 | 0;
+    _memcpy($153 | 0, $127 | 0, $$2271 | 0) | 0;
+    __gcry_free($127);
+    $$3272 = $$2271;
+   } else {
+    $$3272 = $108;
+   }
+   $155 = $$3272 + 2 | 0;
+   SAFE_HEAP_STORE($$ | 0, $155 | 0, 4);
+   $$7 = 0;
+   STACKTOP = sp;
+   return $$7 | 0;
+   break;
+  }
+ case 3:
+  {
+   $156 = $4 + 4 | 0;
+   $157 = SAFE_HEAP_LOAD($156 | 0, 4, 0) | 0 | 0;
+   $158 = $157 << 2;
+   $159 = ($157 | 0) == 0;
+   $$$i198 = $159 ? 1 : $158;
+   $160 = $4 + 12 | 0;
+   $161 = SAFE_HEAP_LOAD($160 | 0, 4, 0) | 0 | 0;
+   $162 = $161 & 1;
+   $163 = ($162 | 0) == 0;
+   if ($163) {
+    $165 = __gcry_malloc($$$i198) | 0;
+    $166 = $165;
+   } else {
+    $164 = __gcry_malloc_secure($$$i198) | 0;
+    $166 = $164;
+   }
+   $167 = ($166 | 0) == (0 | 0);
+   if ($167) {
+    $192 = _gpg_err_code_from_syserror() | 0;
+    $$7 = $192;
+    STACKTOP = sp;
+    return $$7 | 0;
+   }
+   $168 = SAFE_HEAP_LOAD($156 | 0, 4, 0) | 0 | 0;
+   $169 = ($168 | 0) > 0;
+   if ($169) {
+    $170 = $4 + 16 | 0;
+    $$090107$in$i200 = $168;
+    $$092106$i201 = $166;
+    while (1) {
+     $$090107$i202 = $$090107$in$i200 + -1 | 0;
+     $171 = SAFE_HEAP_LOAD($170 | 0, 4, 0) | 0 | 0;
+     $172 = $171 + ($$090107$i202 << 2) | 0;
+     $173 = SAFE_HEAP_LOAD($172 | 0, 4, 0) | 0 | 0;
+     $174 = $173 >>> 24;
+     $175 = $174 & 255;
+     $176 = $$092106$i201 + 1 | 0;
+     SAFE_HEAP_STORE($$092106$i201 >> 0 | 0, $175 | 0, 1);
+     $177 = $173 >>> 16;
+     $178 = $177 & 255;
+     $179 = $$092106$i201 + 2 | 0;
+     SAFE_HEAP_STORE($176 >> 0 | 0, $178 | 0, 1);
+     $180 = $173 >>> 8;
+     $181 = $180 & 255;
+     $182 = $$092106$i201 + 3 | 0;
+     SAFE_HEAP_STORE($179 >> 0 | 0, $181 | 0, 1);
+     $183 = $173 & 255;
+     $184 = $$092106$i201 + 4 | 0;
+     SAFE_HEAP_STORE($182 >> 0 | 0, $183 | 0, 1);
+     $185 = ($$090107$in$i200 | 0) > 1;
+     if ($185) {
+      $$090107$in$i200 = $$090107$i202;
+      $$092106$i201 = $184;
+     } else {
+      break;
+     }
+    }
+   }
+   if ($159) {
+    $$2267 = 0;
+   } else {
+    $$0265 = $158;
+    $$296$i205 = $166;
+    while (1) {
+     $186 = SAFE_HEAP_LOAD($$296$i205 >> 0 | 0, 1, 0) | 0 | 0;
+     $187 = $186 << 24 >> 24 == 0;
+     if (!$187) {
+      $$1266 = $$0265;
+      $$2$lcssa$i208 = $$296$i205;
+      break;
+     }
+     $188 = $$296$i205 + 1 | 0;
+     $189 = $$0265 + -1 | 0;
+     $190 = ($189 | 0) == 0;
+     if ($190) {
+      $$1266 = 0;
+      $$2$lcssa$i208 = $188;
+      break;
+     } else {
+      $$0265 = $189;
+      $$296$i205 = $188;
+     }
+    }
+    $191 = ($$2$lcssa$i208 | 0) == ($166 | 0);
+    if ($191) {
+     $$2267 = $$1266;
+    } else {
+     _memmove($166 | 0, $$2$lcssa$i208 | 0, $$1266 | 0) | 0;
+     $$2267 = $$1266;
+    }
+   }
+   $193 = ($$0159 | 0) == 0;
+   if ($193) {
+    $198 = ($$2267 | 0) == 0;
+    if ($198) {
+     $$0158 = 0;
+     $$3268 = 0;
+    } else {
+     $199 = SAFE_HEAP_LOAD($166 >> 0 | 0, 1, 0) | 0 | 0;
+     $$lobit290 = ($199 & 255) >>> 7;
+     $200 = $$lobit290 & 255;
+     $$$2267 = $200 + $$2267 | 0;
+     $$0158 = $200;
+     $$3268 = $$$2267;
+    }
+   } else {
+    _twocompl($166, $$2267);
+    $194 = SAFE_HEAP_LOAD($166 >> 0 | 0, 1, 0) | 0 | 0;
+    $195 = $194 << 24 >> 24 < 0;
+    $$lobit = ($194 & 255) >>> 7;
+    $196 = $$lobit & 255;
+    $197 = $196 ^ 1;
+    $$2267$ = $197 + $$2267 | 0;
+    $$288 = $195 ? 0 : 2;
+    $$0158 = $$288;
+    $$3268 = $$2267$;
+   }
+   $201 = ($1 | 0) == (0 | 0);
+   $$pre = $$3268 + 4 | 0;
+   if (!$201) {
+    $202 = $$pre >>> 0 > $2 >>> 0;
+    if ($202) {
+     __gcry_free($166);
+     $$7 = 66;
+     STACKTOP = sp;
+     return $$7 | 0;
+    }
+    $203 = $$3268 >>> 24;
+    $204 = $203 & 255;
+    $205 = $1 + 1 | 0;
+    SAFE_HEAP_STORE($1 >> 0 | 0, $204 | 0, 1);
+    $206 = $$3268 >>> 16;
+    $207 = $206 & 255;
+    $208 = $1 + 2 | 0;
+    SAFE_HEAP_STORE($205 >> 0 | 0, $207 | 0, 1);
+    $209 = $$3268 >>> 8;
+    $210 = $209 & 255;
+    $211 = $1 + 3 | 0;
+    SAFE_HEAP_STORE($208 >> 0 | 0, $210 | 0, 1);
+    $212 = $$3268 & 255;
+    $213 = $1 + 4 | 0;
+    SAFE_HEAP_STORE($211 >> 0 | 0, $212 | 0, 1);
+    $trunc = $$0158 & 255;
+    $trunc$clear = $trunc & 3;
+    switch ($trunc$clear << 24 >> 24) {
+    case 1:
+     {
+      $214 = $1 + 5 | 0;
+      SAFE_HEAP_STORE($213 >> 0 | 0, 0 | 0, 1);
+      $$0157 = $214;
+      break;
+     }
+    case 0:
+     {
+      $$0157 = $213;
+      break;
+     }
+    default:
+     {
+      $215 = $1 + 5 | 0;
+      SAFE_HEAP_STORE($213 >> 0 | 0, -1 | 0, 1);
+      $$0157 = $215;
+     }
+    }
+    $216 = ($$0158 | 0) != 0;
+    $217 = $216 & 1;
+    $218 = $$3268 - $217 | 0;
+    _memcpy($$0157 | 0, $166 | 0, $218 | 0) | 0;
+   }
+   __gcry_free($166);
+   SAFE_HEAP_STORE($$ | 0, $$pre | 0, 4);
+   $$7 = 0;
+   STACKTOP = sp;
+   return $$7 | 0;
+   break;
+  }
+ case 4:
+  {
+   $219 = $4 + 4 | 0;
+   $220 = SAFE_HEAP_LOAD($219 | 0, 4, 0) | 0 | 0;
+   $221 = $220 << 2;
+   $222 = ($220 | 0) == 0;
+   $$$i212 = $222 ? 1 : $221;
+   $223 = $4 + 12 | 0;
+   $224 = SAFE_HEAP_LOAD($223 | 0, 4, 0) | 0 | 0;
+   $225 = $224 & 1;
+   $226 = ($225 | 0) == 0;
+   if ($226) {
+    $228 = __gcry_malloc($$$i212) | 0;
+    $229 = $228;
+   } else {
+    $227 = __gcry_malloc_secure($$$i212) | 0;
+    $229 = $227;
+   }
+   $230 = ($229 | 0) == (0 | 0);
+   if ($230) {
+    $255 = _gpg_err_code_from_syserror() | 0;
+    $$7 = $255;
+    STACKTOP = sp;
+    return $$7 | 0;
+   }
+   $231 = SAFE_HEAP_LOAD($219 | 0, 4, 0) | 0 | 0;
+   $232 = ($231 | 0) > 0;
+   if ($232) {
+    $233 = $4 + 16 | 0;
+    $$090107$in$i214 = $231;
+    $$092106$i215 = $229;
+    while (1) {
+     $$090107$i216 = $$090107$in$i214 + -1 | 0;
+     $234 = SAFE_HEAP_LOAD($233 | 0, 4, 0) | 0 | 0;
+     $235 = $234 + ($$090107$i216 << 2) | 0;
+     $236 = SAFE_HEAP_LOAD($235 | 0, 4, 0) | 0 | 0;
+     $237 = $236 >>> 24;
+     $238 = $237 & 255;
+     $239 = $$092106$i215 + 1 | 0;
+     SAFE_HEAP_STORE($$092106$i215 >> 0 | 0, $238 | 0, 1);
+     $240 = $236 >>> 16;
+     $241 = $240 & 255;
+     $242 = $$092106$i215 + 2 | 0;
+     SAFE_HEAP_STORE($239 >> 0 | 0, $241 | 0, 1);
+     $243 = $236 >>> 8;
+     $244 = $243 & 255;
+     $245 = $$092106$i215 + 3 | 0;
+     SAFE_HEAP_STORE($242 >> 0 | 0, $244 | 0, 1);
+     $246 = $236 & 255;
+     $247 = $$092106$i215 + 4 | 0;
+     SAFE_HEAP_STORE($245 >> 0 | 0, $246 | 0, 1);
+     $248 = ($$090107$in$i214 | 0) > 1;
+     if ($248) {
+      $$090107$in$i214 = $$090107$i216;
+      $$092106$i215 = $247;
+     } else {
+      break;
+     }
+    }
+   }
+   if ($222) {
+    $$2264307 = 0;
+    $292 = 1;
+    label = 106;
+   } else {
+    $$0262 = $221;
+    $$296$i219 = $229;
+    while (1) {
+     $249 = SAFE_HEAP_LOAD($$296$i219 >> 0 | 0, 1, 0) | 0 | 0;
+     $250 = $249 << 24 >> 24 == 0;
+     if (!$250) {
+      $$1263 = $$0262;
+      $$2$lcssa$i222 = $$296$i219;
+      break;
+     }
+     $251 = $$296$i219 + 1 | 0;
+     $252 = $$0262 + -1 | 0;
+     $253 = ($252 | 0) == 0;
+     if ($253) {
+      $$1263 = 0;
+      $$2$lcssa$i222 = $251;
+      break;
+     } else {
+      $$0262 = $252;
+      $$296$i219 = $251;
+     }
+    }
+    $254 = ($$2$lcssa$i222 | 0) == ($229 | 0);
+    if (!$254) {
+     _memmove($229 | 0, $$2$lcssa$i222 | 0, $$1263 | 0) | 0;
+    }
+    $256 = ($$1263 | 0) == 0;
+    if ($256) {
+     $$2264307 = 0;
+     $292 = 1;
+     label = 106;
+    } else {
+     $257 = SAFE_HEAP_LOAD($229 >> 0 | 0, 1, 0) | 0 | 0;
+     $258 = $257 << 24 >> 24 < 0;
+     if ($258) {
+      $$2264307 = $$1263;
+      $292 = 0;
+      label = 106;
+     } else {
+      $$0154 = 0;
+      $$2264306 = $$1263;
+      $293 = 0;
+     }
+    }
+   }
+   if ((label | 0) == 106) {
+    $$0154 = 2;
+    $$2264306 = $$2264307;
+    $293 = $292;
+   }
+   $259 = ($1 | 0) == (0 | 0);
+   $260 = $$2264306 << 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($229);
+     $$7 = 66;
+     STACKTOP = sp;
+     return $$7 | 0;
+    }
+    $265 = ($$0159 | 0) == 0;
+    if ($265) {
+     $$0151 = $1;
+    } else {
+     $266 = $1 + 1 | 0;
+     SAFE_HEAP_STORE($1 >> 0 | 0, 45 | 0, 1);
+     $$0151 = $266;
+    }
+    $267 = ($$0154 | 0) == 0;
+    if ($267) {
+     $$2153$ph = $$0151;
+    } else {
+     $268 = $$0151 + 1 | 0;
+     SAFE_HEAP_STORE($$0151 >> 0 | 0, 48 | 0, 1);
+     $269 = $$0151 + 2 | 0;
+     SAFE_HEAP_STORE($268 >> 0 | 0, 48 | 0, 1);
+     $$2153$ph = $269;
+    }
+    if ($293) {
+     $$2153$lcssa = $$2153$ph;
+    } else {
+     $$0155296 = 0;
+     $$2153297 = $$2153$ph;
+     while (1) {
+      $270 = $229 + $$0155296 | 0;
+      $271 = SAFE_HEAP_LOAD($270 >> 0 | 0, 1, 0) | 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 = $$2153297 + 1 | 0;
+      SAFE_HEAP_STORE($$2153297 >> 0 | 0, $278 | 0, 1);
+      $280 = $272 & 15;
+      $281 = $280 >>> 0 < 10;
+      $282 = $280 | 48;
+      $283 = $280 + 55 | 0;
+      $284 = $281 ? $282 : $283;
+      $285 = $284 & 255;
+      $286 = $$2153297 + 2 | 0;
+      SAFE_HEAP_STORE($279 >> 0 | 0, $285 | 0, 1);
+      $287 = $$0155296 + 1 | 0;
+      $exitcond = ($287 | 0) == ($$2264306 | 0);
+      if ($exitcond) {
+       break;
+      } else {
+       $$0155296 = $287;
+       $$2153297 = $286;
+      }
+     }
+     $scevgep = $$2153$ph + $260 | 0;
+     $$2153$lcssa = $scevgep;
+    }
+    $288 = $$2153$lcssa + 1 | 0;
+    SAFE_HEAP_STORE($$2153$lcssa >> 0 | 0, 0 | 0, 1);
+    $289 = $288;
+    $290 = $1;
+    $291 = $289 - $290 | 0;
+    $storemerge = $291;
+   }
+   SAFE_HEAP_STORE($$ | 0, $storemerge | 0, 4);
+   __gcry_free($229);
+   $$7 = 0;
+   STACKTOP = sp;
+   return $$7 | 0;
+   break;
+  }
+ default:
+  {
+   $$7 = 45;
+   STACKTOP = sp;
+   return $$7 | 0;
+  }
+ }
+ return 0 | 0;
+}
+
+function _do_encrypt($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0$lcssa$i = 0, $$01$i = 0, $$lcssa$i = 0, $$sroa$045$0$lcssa$i = 0, 
$$sroa$045$05$i = 0, $$sroa$115$0$lcssa$i = 0, $$sroa$115$02$i = 0, 
$$sroa$47$0$lcssa$i = 0, $$sroa$47$04$i = 0, $$sroa$85$0$lcssa$i = 0, 
$$sroa$85$03$i = 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, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 
0, $303 = 0, $304 = 0, $305 = 0, $306 = 0;
+ var $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, $324 = 0;
+ var $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, $342 = 0;
+ var $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, $360 = 0;
+ var $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, $379 = 0;
+ var $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, $397 = 0;
+ var $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, $413 = 0, $414 = 0;
+ var $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, $431 = 0, $432 = 0;
+ var $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, $45 = 0, $450 = 0;
+ var $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, $468 = 0, $469 = 0;
+ var $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, $486 = 0, $487 = 0;
+ var $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, $503 = 0, $504 = 0;
+ var $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, $521 = 0, $522 = 0;
+ var $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, $54 = 0, $540 = 0;
+ var $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, $558 = 0, $559 = 0;
+ var $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, $576 = 0, $577 = 0;
+ var $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, $594 = 0, $595 = 0;
+ var $596 = 0, $597 = 0, $598 = 0, $599 = 0, $6 = 0, $60 = 0, $600 = 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 + 3 | 0;
+ $6 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+ $7 = $6 & 255;
+ $8 = $7 << 24;
+ $9 = $2 + 2 | 0;
+ $10 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+ $11 = $10 & 255;
+ $12 = $11 << 16;
+ $13 = $12 | $8;
+ $14 = $2 + 1 | 0;
+ $15 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+ $16 = $15 & 255;
+ $17 = $16 << 8;
+ $18 = $13 | $17;
+ $19 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $20 = $19 & 255;
+ $21 = $18 | $20;
+ $22 = $2 + 4 | 0;
+ $23 = $2 + 7 | 0;
+ $24 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+ $25 = $24 & 255;
+ $26 = $25 << 24;
+ $27 = $2 + 6 | 0;
+ $28 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+ $29 = $28 & 255;
+ $30 = $29 << 16;
+ $31 = $30 | $26;
+ $32 = $2 + 5 | 0;
+ $33 = SAFE_HEAP_LOAD($32 >> 0 | 0, 1, 0) | 0 | 0;
+ $34 = $33 & 255;
+ $35 = $34 << 8;
+ $36 = $31 | $35;
+ $37 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+ $38 = $37 & 255;
+ $39 = $36 | $38;
+ $40 = $2 + 8 | 0;
+ $41 = $2 + 11 | 0;
+ $42 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+ $43 = $42 & 255;
+ $44 = $43 << 24;
+ $45 = $2 + 10 | 0;
+ $46 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+ $47 = $46 & 255;
+ $48 = $47 << 16;
+ $49 = $48 | $44;
+ $50 = $2 + 9 | 0;
+ $51 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+ $52 = $51 & 255;
+ $53 = $52 << 8;
+ $54 = $49 | $53;
+ $55 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $56 = $55 & 255;
+ $57 = $54 | $56;
+ $58 = $2 + 12 | 0;
+ $59 = $2 + 15 | 0;
+ $60 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+ $61 = $60 & 255;
+ $62 = $61 << 24;
+ $63 = $2 + 14 | 0;
+ $64 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+ $65 = $64 & 255;
+ $66 = $65 << 16;
+ $67 = $66 | $62;
+ $68 = $2 + 13 | 0;
+ $69 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+ $70 = $69 & 255;
+ $71 = $70 << 8;
+ $72 = $67 | $71;
+ $73 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+ $74 = $73 & 255;
+ $75 = $72 | $74;
+ $76 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $77 = $76 ^ $21;
+ $78 = $0 + 4 | 0;
+ $79 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+ $80 = $79 ^ $39;
+ $81 = $0 + 8 | 0;
+ $82 = SAFE_HEAP_LOAD($81 | 0, 4, 0) | 0 | 0;
+ $83 = $82 ^ $57;
+ $84 = $0 + 12 | 0;
+ $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+ $86 = $85 ^ $75;
+ $87 = $77 & 255;
+ $88 = 4800 + ($87 << 2) | 0;
+ $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+ $90 = $77 >>> 8;
+ $91 = $90 & 255;
+ $92 = 4800 + ($91 << 2) | 0;
+ $93 = SAFE_HEAP_LOAD($92 | 0, 4, 0) | 0 | 0;
+ $94 = $93 << 8;
+ $95 = $93 >>> 24;
+ $96 = $94 | $95;
+ $97 = $77 >>> 16;
+ $98 = $97 & 255;
+ $99 = 4800 + ($98 << 2) | 0;
+ $100 = SAFE_HEAP_LOAD($99 | 0, 4, 0) | 0 | 0;
+ $101 = $100 << 16;
+ $102 = $100 >>> 16;
+ $103 = $101 | $102;
+ $104 = $77 >>> 24;
+ $105 = 4800 + ($104 << 2) | 0;
+ $106 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+ $107 = $106 << 24;
+ $108 = $106 >>> 8;
+ $109 = $107 | $108;
+ $110 = $0 + 16 | 0;
+ $111 = SAFE_HEAP_LOAD($110 | 0, 4, 0) | 0 | 0;
+ $112 = $111 ^ $89;
+ $113 = $80 & 255;
+ $114 = 4800 + ($113 << 2) | 0;
+ $115 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+ $116 = $109 ^ $115;
+ $117 = $80 >>> 8;
+ $118 = $117 & 255;
+ $119 = 4800 + ($118 << 2) | 0;
+ $120 = SAFE_HEAP_LOAD($119 | 0, 4, 0) | 0 | 0;
+ $121 = $120 << 8;
+ $122 = $120 >>> 24;
+ $123 = $121 | $122;
+ $124 = $112 ^ $123;
+ $125 = $80 >>> 16;
+ $126 = $125 & 255;
+ $127 = 4800 + ($126 << 2) | 0;
+ $128 = SAFE_HEAP_LOAD($127 | 0, 4, 0) | 0 | 0;
+ $129 = $128 << 16;
+ $130 = $128 >>> 16;
+ $131 = $129 | $130;
+ $132 = $131 ^ $96;
+ $133 = $80 >>> 24;
+ $134 = 4800 + ($133 << 2) | 0;
+ $135 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 0;
+ $136 = $135 << 24;
+ $137 = $135 >>> 8;
+ $138 = $136 | $137;
+ $139 = $138 ^ $103;
+ $140 = $0 + 20 | 0;
+ $141 = SAFE_HEAP_LOAD($140 | 0, 4, 0) | 0 | 0;
+ $142 = $116 ^ $141;
+ $143 = $83 & 255;
+ $144 = 4800 + ($143 << 2) | 0;
+ $145 = SAFE_HEAP_LOAD($144 | 0, 4, 0) | 0 | 0;
+ $146 = $139 ^ $145;
+ $147 = $83 >>> 8;
+ $148 = $147 & 255;
+ $149 = 4800 + ($148 << 2) | 0;
+ $150 = SAFE_HEAP_LOAD($149 | 0, 4, 0) | 0 | 0;
+ $151 = $150 << 8;
+ $152 = $150 >>> 24;
+ $153 = $151 | $152;
+ $154 = $142 ^ $153;
+ $155 = $83 >>> 16;
+ $156 = $155 & 255;
+ $157 = 4800 + ($156 << 2) | 0;
+ $158 = SAFE_HEAP_LOAD($157 | 0, 4, 0) | 0 | 0;
+ $159 = $158 << 16;
+ $160 = $158 >>> 16;
+ $161 = $159 | $160;
+ $162 = $124 ^ $161;
+ $163 = $83 >>> 24;
+ $164 = 4800 + ($163 << 2) | 0;
+ $165 = SAFE_HEAP_LOAD($164 | 0, 4, 0) | 0 | 0;
+ $166 = $165 << 24;
+ $167 = $165 >>> 8;
+ $168 = $166 | $167;
+ $169 = $132 ^ $168;
+ $170 = $0 + 24 | 0;
+ $171 = SAFE_HEAP_LOAD($170 | 0, 4, 0) | 0 | 0;
+ $172 = $146 ^ $171;
+ $173 = $86 & 255;
+ $174 = 4800 + ($173 << 2) | 0;
+ $175 = SAFE_HEAP_LOAD($174 | 0, 4, 0) | 0 | 0;
+ $176 = $169 ^ $175;
+ $177 = $86 >>> 8;
+ $178 = $177 & 255;
+ $179 = 4800 + ($178 << 2) | 0;
+ $180 = SAFE_HEAP_LOAD($179 | 0, 4, 0) | 0 | 0;
+ $181 = $180 << 8;
+ $182 = $180 >>> 24;
+ $183 = $181 | $182;
+ $184 = $172 ^ $183;
+ $185 = $86 >>> 16;
+ $186 = $185 & 255;
+ $187 = 4800 + ($186 << 2) | 0;
+ $188 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+ $189 = $188 << 16;
+ $190 = $188 >>> 16;
+ $191 = $189 | $190;
+ $192 = $154 ^ $191;
+ $193 = $86 >>> 24;
+ $194 = 4800 + ($193 << 2) | 0;
+ $195 = SAFE_HEAP_LOAD($194 | 0, 4, 0) | 0 | 0;
+ $196 = $195 << 24;
+ $197 = $195 >>> 8;
+ $198 = $196 | $197;
+ $199 = $162 ^ $198;
+ $200 = $0 + 28 | 0;
+ $201 = SAFE_HEAP_LOAD($200 | 0, 4, 0) | 0 | 0;
+ $202 = $176 ^ $201;
+ $203 = ($4 | 0) > 2;
+ $204 = $199 & 255;
+ if ($203) {
+  $$01$i = 2;
+  $$sroa$045$05$i = $199;
+  $$sroa$115$02$i = $202;
+  $$sroa$47$04$i = $192;
+  $$sroa$85$03$i = $184;
+  $206 = $204;
+  while (1) {
+   $205 = 4800 + ($206 << 2) | 0;
+   $207 = SAFE_HEAP_LOAD($205 | 0, 4, 0) | 0 | 0;
+   $208 = $$sroa$045$05$i >>> 8;
+   $209 = $208 & 255;
+   $210 = 4800 + ($209 << 2) | 0;
+   $211 = SAFE_HEAP_LOAD($210 | 0, 4, 0) | 0 | 0;
+   $212 = $211 << 8;
+   $213 = $211 >>> 24;
+   $214 = $212 | $213;
+   $215 = $$sroa$045$05$i >>> 16;
+   $216 = $215 & 255;
+   $217 = 4800 + ($216 << 2) | 0;
+   $218 = SAFE_HEAP_LOAD($217 | 0, 4, 0) | 0 | 0;
+   $219 = $218 << 16;
+   $220 = $218 >>> 16;
+   $221 = $219 | $220;
+   $222 = $$sroa$045$05$i >>> 24;
+   $223 = 4800 + ($222 << 2) | 0;
+   $224 = SAFE_HEAP_LOAD($223 | 0, 4, 0) | 0 | 0;
+   $225 = $224 << 24;
+   $226 = $224 >>> 8;
+   $227 = $225 | $226;
+   $228 = $0 + ($$01$i << 4) | 0;
+   $229 = SAFE_HEAP_LOAD($228 | 0, 4, 0) | 0 | 0;
+   $230 = $229 ^ $207;
+   $231 = $$sroa$47$04$i & 255;
+   $232 = 4800 + ($231 << 2) | 0;
+   $233 = SAFE_HEAP_LOAD($232 | 0, 4, 0) | 0 | 0;
+   $234 = $227 ^ $233;
+   $235 = $$sroa$47$04$i >>> 8;
+   $236 = $235 & 255;
+   $237 = 4800 + ($236 << 2) | 0;
+   $238 = SAFE_HEAP_LOAD($237 | 0, 4, 0) | 0 | 0;
+   $239 = $238 << 8;
+   $240 = $238 >>> 24;
+   $241 = $239 | $240;
+   $242 = $230 ^ $241;
+   $243 = $$sroa$47$04$i >>> 16;
+   $244 = $243 & 255;
+   $245 = 4800 + ($244 << 2) | 0;
+   $246 = SAFE_HEAP_LOAD($245 | 0, 4, 0) | 0 | 0;
+   $247 = $246 << 16;
+   $248 = $246 >>> 16;
+   $249 = $247 | $248;
+   $250 = $249 ^ $214;
+   $251 = $$sroa$47$04$i >>> 24;
+   $252 = 4800 + ($251 << 2) | 0;
+   $253 = SAFE_HEAP_LOAD($252 | 0, 4, 0) | 0 | 0;
+   $254 = $253 << 24;
+   $255 = $253 >>> 8;
+   $256 = $254 | $255;
+   $257 = $256 ^ $221;
+   $258 = ($0 + ($$01$i << 4) | 0) + 4 | 0;
+   $259 = SAFE_HEAP_LOAD($258 | 0, 4, 0) | 0 | 0;
+   $260 = $234 ^ $259;
+   $261 = $$sroa$85$03$i & 255;
+   $262 = 4800 + ($261 << 2) | 0;
+   $263 = SAFE_HEAP_LOAD($262 | 0, 4, 0) | 0 | 0;
+   $264 = $257 ^ $263;
+   $265 = $$sroa$85$03$i >>> 8;
+   $266 = $265 & 255;
+   $267 = 4800 + ($266 << 2) | 0;
+   $268 = SAFE_HEAP_LOAD($267 | 0, 4, 0) | 0 | 0;
+   $269 = $268 << 8;
+   $270 = $268 >>> 24;
+   $271 = $269 | $270;
+   $272 = $260 ^ $271;
+   $273 = $$sroa$85$03$i >>> 16;
+   $274 = $273 & 255;
+   $275 = 4800 + ($274 << 2) | 0;
+   $276 = SAFE_HEAP_LOAD($275 | 0, 4, 0) | 0 | 0;
+   $277 = $276 << 16;
+   $278 = $276 >>> 16;
+   $279 = $277 | $278;
+   $280 = $242 ^ $279;
+   $281 = $$sroa$85$03$i >>> 24;
+   $282 = 4800 + ($281 << 2) | 0;
+   $283 = SAFE_HEAP_LOAD($282 | 0, 4, 0) | 0 | 0;
+   $284 = $283 << 24;
+   $285 = $283 >>> 8;
+   $286 = $284 | $285;
+   $287 = $250 ^ $286;
+   $288 = ($0 + ($$01$i << 4) | 0) + 8 | 0;
+   $289 = SAFE_HEAP_LOAD($288 | 0, 4, 0) | 0 | 0;
+   $290 = $264 ^ $289;
+   $291 = $$sroa$115$02$i & 255;
+   $292 = 4800 + ($291 << 2) | 0;
+   $293 = SAFE_HEAP_LOAD($292 | 0, 4, 0) | 0 | 0;
+   $294 = $287 ^ $293;
+   $295 = $$sroa$115$02$i >>> 8;
+   $296 = $295 & 255;
+   $297 = 4800 + ($296 << 2) | 0;
+   $298 = SAFE_HEAP_LOAD($297 | 0, 4, 0) | 0 | 0;
+   $299 = $298 << 8;
+   $300 = $298 >>> 24;
+   $301 = $299 | $300;
+   $302 = $290 ^ $301;
+   $303 = $$sroa$115$02$i >>> 16;
+   $304 = $303 & 255;
+   $305 = 4800 + ($304 << 2) | 0;
+   $306 = SAFE_HEAP_LOAD($305 | 0, 4, 0) | 0 | 0;
+   $307 = $306 << 16;
+   $308 = $306 >>> 16;
+   $309 = $307 | $308;
+   $310 = $272 ^ $309;
+   $311 = $$sroa$115$02$i >>> 24;
+   $312 = 4800 + ($311 << 2) | 0;
+   $313 = SAFE_HEAP_LOAD($312 | 0, 4, 0) | 0 | 0;
+   $314 = $313 << 24;
+   $315 = $313 >>> 8;
+   $316 = $314 | $315;
+   $317 = $280 ^ $316;
+   $318 = ($0 + ($$01$i << 4) | 0) + 12 | 0;
+   $319 = SAFE_HEAP_LOAD($318 | 0, 4, 0) | 0 | 0;
+   $320 = $294 ^ $319;
+   $321 = $$01$i | 1;
+   $322 = $317 & 255;
+   $323 = 4800 + ($322 << 2) | 0;
+   $324 = SAFE_HEAP_LOAD($323 | 0, 4, 0) | 0 | 0;
+   $325 = $317 >>> 8;
+   $326 = $325 & 255;
+   $327 = 4800 + ($326 << 2) | 0;
+   $328 = SAFE_HEAP_LOAD($327 | 0, 4, 0) | 0 | 0;
+   $329 = $328 << 8;
+   $330 = $328 >>> 24;
+   $331 = $329 | $330;
+   $332 = $317 >>> 16;
+   $333 = $332 & 255;
+   $334 = 4800 + ($333 << 2) | 0;
+   $335 = SAFE_HEAP_LOAD($334 | 0, 4, 0) | 0 | 0;
+   $336 = $335 << 16;
+   $337 = $335 >>> 16;
+   $338 = $336 | $337;
+   $339 = $317 >>> 24;
+   $340 = 4800 + ($339 << 2) | 0;
+   $341 = SAFE_HEAP_LOAD($340 | 0, 4, 0) | 0 | 0;
+   $342 = $341 << 24;
+   $343 = $341 >>> 8;
+   $344 = $342 | $343;
+   $345 = $0 + ($321 << 4) | 0;
+   $346 = SAFE_HEAP_LOAD($345 | 0, 4, 0) | 0 | 0;
+   $347 = $346 ^ $324;
+   $348 = $310 & 255;
+   $349 = 4800 + ($348 << 2) | 0;
+   $350 = SAFE_HEAP_LOAD($349 | 0, 4, 0) | 0 | 0;
+   $351 = $344 ^ $350;
+   $352 = $310 >>> 8;
+   $353 = $352 & 255;
+   $354 = 4800 + ($353 << 2) | 0;
+   $355 = SAFE_HEAP_LOAD($354 | 0, 4, 0) | 0 | 0;
+   $356 = $355 << 8;
+   $357 = $355 >>> 24;
+   $358 = $356 | $357;
+   $359 = $347 ^ $358;
+   $360 = $310 >>> 16;
+   $361 = $360 & 255;
+   $362 = 4800 + ($361 << 2) | 0;
+   $363 = SAFE_HEAP_LOAD($362 | 0, 4, 0) | 0 | 0;
+   $364 = $363 << 16;
+   $365 = $363 >>> 16;
+   $366 = $364 | $365;
+   $367 = $366 ^ $331;
+   $368 = $310 >>> 24;
+   $369 = 4800 + ($368 << 2) | 0;
+   $370 = SAFE_HEAP_LOAD($369 | 0, 4, 0) | 0 | 0;
+   $371 = $370 << 24;
+   $372 = $370 >>> 8;
+   $373 = $371 | $372;
+   $374 = $373 ^ $338;
+   $375 = ($0 + ($321 << 4) | 0) + 4 | 0;
+   $376 = SAFE_HEAP_LOAD($375 | 0, 4, 0) | 0 | 0;
+   $377 = $351 ^ $376;
+   $378 = $302 & 255;
+   $379 = 4800 + ($378 << 2) | 0;
+   $380 = SAFE_HEAP_LOAD($379 | 0, 4, 0) | 0 | 0;
+   $381 = $374 ^ $380;
+   $382 = $302 >>> 8;
+   $383 = $382 & 255;
+   $384 = 4800 + ($383 << 2) | 0;
+   $385 = SAFE_HEAP_LOAD($384 | 0, 4, 0) | 0 | 0;
+   $386 = $385 << 8;
+   $387 = $385 >>> 24;
+   $388 = $386 | $387;
+   $389 = $377 ^ $388;
+   $390 = $302 >>> 16;
+   $391 = $390 & 255;
+   $392 = 4800 + ($391 << 2) | 0;
+   $393 = SAFE_HEAP_LOAD($392 | 0, 4, 0) | 0 | 0;
+   $394 = $393 << 16;
+   $395 = $393 >>> 16;
+   $396 = $394 | $395;
+   $397 = $359 ^ $396;
+   $398 = $302 >>> 24;
+   $399 = 4800 + ($398 << 2) | 0;
+   $400 = SAFE_HEAP_LOAD($399 | 0, 4, 0) | 0 | 0;
+   $401 = $400 << 24;
+   $402 = $400 >>> 8;
+   $403 = $401 | $402;
+   $404 = $367 ^ $403;
+   $405 = ($0 + ($321 << 4) | 0) + 8 | 0;
+   $406 = SAFE_HEAP_LOAD($405 | 0, 4, 0) | 0 | 0;
+   $407 = $381 ^ $406;
+   $408 = $320 & 255;
+   $409 = 4800 + ($408 << 2) | 0;
+   $410 = SAFE_HEAP_LOAD($409 | 0, 4, 0) | 0 | 0;
+   $411 = $404 ^ $410;
+   $412 = $320 >>> 8;
+   $413 = $412 & 255;
+   $414 = 4800 + ($413 << 2) | 0;
+   $415 = SAFE_HEAP_LOAD($414 | 0, 4, 0) | 0 | 0;
+   $416 = $415 << 8;
+   $417 = $415 >>> 24;
+   $418 = $416 | $417;
+   $419 = $407 ^ $418;
+   $420 = $320 >>> 16;
+   $421 = $420 & 255;
+   $422 = 4800 + ($421 << 2) | 0;
+   $423 = SAFE_HEAP_LOAD($422 | 0, 4, 0) | 0 | 0;
+   $424 = $423 << 16;
+   $425 = $423 >>> 16;
+   $426 = $424 | $425;
+   $427 = $389 ^ $426;
+   $428 = $320 >>> 24;
+   $429 = 4800 + ($428 << 2) | 0;
+   $430 = SAFE_HEAP_LOAD($429 | 0, 4, 0) | 0 | 0;
+   $431 = $430 << 24;
+   $432 = $430 >>> 8;
+   $433 = $431 | $432;
+   $434 = $397 ^ $433;
+   $435 = ($0 + ($321 << 4) | 0) + 12 | 0;
+   $436 = SAFE_HEAP_LOAD($435 | 0, 4, 0) | 0 | 0;
+   $437 = $411 ^ $436;
+   $438 = $$01$i + 2 | 0;
+   $439 = ($438 | 0) < ($4 | 0);
+   $440 = $434 & 255;
+   if ($439) {
+    $$01$i = $438;
+    $$sroa$045$05$i = $434;
+    $$sroa$115$02$i = $437;
+    $$sroa$47$04$i = $427;
+    $$sroa$85$03$i = $419;
+    $206 = $440;
+   } else {
+    break;
+   }
+  }
+  $441 = $4 + 1 | 0;
+  $442 = $441 & -2;
+  $$0$lcssa$i = $442;
+  $$lcssa$i = $440;
+  $$sroa$045$0$lcssa$i = $434;
+  $$sroa$115$0$lcssa$i = $437;
+  $$sroa$47$0$lcssa$i = $427;
+  $$sroa$85$0$lcssa$i = $419;
+ } else {
+  $$0$lcssa$i = 2;
+  $$lcssa$i = $204;
+  $$sroa$045$0$lcssa$i = $199;
+  $$sroa$115$0$lcssa$i = $202;
+  $$sroa$47$0$lcssa$i = $192;
+  $$sroa$85$0$lcssa$i = $184;
+ }
+ $443 = $$lcssa$i << 2;
+ $444 = 4801 + $443 | 0;
+ $445 = SAFE_HEAP_LOAD($444 >> 0 | 0, 1, 0) | 0 | 0;
+ $446 = $445 & 255;
+ $447 = $$sroa$045$0$lcssa$i >>> 6;
+ $448 = $447 & 1020;
+ $449 = 4801 + $448 | 0;
+ $450 = SAFE_HEAP_LOAD($449 >> 0 | 0, 1, 0) | 0 | 0;
+ $451 = $450 & 255;
+ $452 = $451 << 8;
+ $453 = $$sroa$045$0$lcssa$i >>> 14;
+ $454 = $453 & 1020;
+ $455 = 4801 + $454 | 0;
+ $456 = SAFE_HEAP_LOAD($455 >> 0 | 0, 1, 0) | 0 | 0;
+ $457 = $456 & 255;
+ $458 = $457 << 16;
+ $459 = $$sroa$045$0$lcssa$i >>> 24;
+ $460 = $459 << 2;
+ $461 = 4801 + $460 | 0;
+ $462 = SAFE_HEAP_LOAD($461 >> 0 | 0, 1, 0) | 0 | 0;
+ $463 = $462 & 255;
+ $464 = $463 << 24;
+ $465 = $0 + ($$0$lcssa$i << 4) | 0;
+ $466 = SAFE_HEAP_LOAD($465 | 0, 4, 0) | 0 | 0;
+ $467 = $466 ^ $446;
+ $468 = $$sroa$47$0$lcssa$i << 2;
+ $469 = $468 & 1020;
+ $470 = 4801 + $469 | 0;
+ $471 = SAFE_HEAP_LOAD($470 >> 0 | 0, 1, 0) | 0 | 0;
+ $472 = $471 & 255;
+ $473 = $472 | $464;
+ $474 = $$sroa$47$0$lcssa$i >>> 6;
+ $475 = $474 & 1020;
+ $476 = 4801 + $475 | 0;
+ $477 = SAFE_HEAP_LOAD($476 >> 0 | 0, 1, 0) | 0 | 0;
+ $478 = $477 & 255;
+ $479 = $478 << 8;
+ $480 = $479 ^ $466;
+ $481 = $$sroa$47$0$lcssa$i >>> 14;
+ $482 = $481 & 1020;
+ $483 = 4801 + $482 | 0;
+ $484 = SAFE_HEAP_LOAD($483 >> 0 | 0, 1, 0) | 0 | 0;
+ $485 = $484 & 255;
+ $486 = $485 << 16;
+ $487 = $486 | $452;
+ $488 = $$sroa$47$0$lcssa$i >>> 24;
+ $489 = $488 << 2;
+ $490 = 4801 + $489 | 0;
+ $491 = SAFE_HEAP_LOAD($490 >> 0 | 0, 1, 0) | 0 | 0;
+ $492 = $491 & 255;
+ $493 = $492 << 24;
+ $494 = $493 | $458;
+ $495 = ($0 + ($$0$lcssa$i << 4) | 0) + 4 | 0;
+ $496 = SAFE_HEAP_LOAD($495 | 0, 4, 0) | 0 | 0;
+ $497 = $496 ^ $473;
+ $498 = $$sroa$85$0$lcssa$i << 2;
+ $499 = $498 & 1020;
+ $500 = 4801 + $499 | 0;
+ $501 = SAFE_HEAP_LOAD($500 >> 0 | 0, 1, 0) | 0 | 0;
+ $502 = $501 & 255;
+ $503 = $494 | $502;
+ $504 = $$sroa$85$0$lcssa$i >>> 6;
+ $505 = $504 & 1020;
+ $506 = 4801 + $505 | 0;
+ $507 = SAFE_HEAP_LOAD($506 >> 0 | 0, 1, 0) | 0 | 0;
+ $508 = $507 & 255;
+ $509 = $508 << 8;
+ $510 = $509 ^ $496;
+ $511 = $$sroa$85$0$lcssa$i >>> 14;
+ $512 = $511 & 1020;
+ $513 = 4801 + $512 | 0;
+ $514 = SAFE_HEAP_LOAD($513 >> 0 | 0, 1, 0) | 0 | 0;
+ $515 = $514 & 255;
+ $516 = $515 << 16;
+ $517 = $516 ^ $466;
+ $518 = $$sroa$85$0$lcssa$i >>> 24;
+ $519 = $518 << 2;
+ $520 = 4801 + $519 | 0;
+ $521 = SAFE_HEAP_LOAD($520 >> 0 | 0, 1, 0) | 0 | 0;
+ $522 = $521 & 255;
+ $523 = $522 << 24;
+ $524 = $487 | $523;
+ $525 = ($0 + ($$0$lcssa$i << 4) | 0) + 8 | 0;
+ $526 = SAFE_HEAP_LOAD($525 | 0, 4, 0) | 0 | 0;
+ $527 = $526 ^ $503;
+ $528 = $$sroa$115$0$lcssa$i << 2;
+ $529 = $528 & 1020;
+ $530 = 4801 + $529 | 0;
+ $531 = SAFE_HEAP_LOAD($530 >> 0 | 0, 1, 0) | 0 | 0;
+ $532 = $531 & 255;
+ $533 = $524 | $532;
+ $534 = $$sroa$115$0$lcssa$i >>> 6;
+ $535 = $534 & 1020;
+ $536 = 4801 + $535 | 0;
+ $537 = SAFE_HEAP_LOAD($536 >> 0 | 0, 1, 0) | 0 | 0;
+ $538 = $537 & 255;
+ $539 = $538 << 8;
+ $540 = $539 ^ $527;
+ $541 = $$sroa$115$0$lcssa$i >>> 14;
+ $542 = $541 & 1020;
+ $543 = 4801 + $542 | 0;
+ $544 = SAFE_HEAP_LOAD($543 >> 0 | 0, 1, 0) | 0 | 0;
+ $545 = $544 & 255;
+ $546 = $545 << 16;
+ $547 = $546 ^ $496;
+ $548 = $$sroa$115$0$lcssa$i >>> 24;
+ $549 = $548 << 2;
+ $550 = 4801 + $549 | 0;
+ $551 = SAFE_HEAP_LOAD($550 >> 0 | 0, 1, 0) | 0 | 0;
+ $552 = $551 & 255;
+ $553 = $552 << 24;
+ $554 = $553 ^ $466;
+ $555 = ($0 + ($$0$lcssa$i << 4) | 0) + 12 | 0;
+ $556 = SAFE_HEAP_LOAD($555 | 0, 4, 0) | 0 | 0;
+ $557 = $556 ^ $533;
+ $558 = $554 >>> 24;
+ $559 = $558 & 255;
+ $560 = $1 + 3 | 0;
+ SAFE_HEAP_STORE($560 >> 0 | 0, $559 | 0, 1);
+ $561 = $517 >>> 16;
+ $562 = $561 & 255;
+ $563 = $1 + 2 | 0;
+ SAFE_HEAP_STORE($563 >> 0 | 0, $562 | 0, 1);
+ $564 = $480 >>> 8;
+ $565 = $564 & 255;
+ $566 = $1 + 1 | 0;
+ SAFE_HEAP_STORE($566 >> 0 | 0, $565 | 0, 1);
+ $567 = $467 & 255;
+ SAFE_HEAP_STORE($1 >> 0 | 0, $567 | 0, 1);
+ $568 = $1 + 4 | 0;
+ $569 = $497 >>> 24;
+ $570 = $569 & 255;
+ $571 = $1 + 7 | 0;
+ SAFE_HEAP_STORE($571 >> 0 | 0, $570 | 0, 1);
+ $572 = $547 >>> 16;
+ $573 = $572 & 255;
+ $574 = $1 + 6 | 0;
+ SAFE_HEAP_STORE($574 >> 0 | 0, $573 | 0, 1);
+ $575 = $510 >>> 8;
+ $576 = $575 & 255;
+ $577 = $1 + 5 | 0;
+ SAFE_HEAP_STORE($577 >> 0 | 0, $576 | 0, 1);
+ $578 = $497 & 255;
+ SAFE_HEAP_STORE($568 >> 0 | 0, $578 | 0, 1);
+ $579 = $1 + 8 | 0;
+ $580 = $527 >>> 24;
+ $581 = $580 & 255;
+ $582 = $1 + 11 | 0;
+ SAFE_HEAP_STORE($582 >> 0 | 0, $581 | 0, 1);
+ $583 = $527 >>> 16;
+ $584 = $583 & 255;
+ $585 = $1 + 10 | 0;
+ SAFE_HEAP_STORE($585 >> 0 | 0, $584 | 0, 1);
+ $586 = $540 >>> 8;
+ $587 = $586 & 255;
+ $588 = $1 + 9 | 0;
+ SAFE_HEAP_STORE($588 >> 0 | 0, $587 | 0, 1);
+ $589 = $527 & 255;
+ SAFE_HEAP_STORE($579 >> 0 | 0, $589 | 0, 1);
+ $590 = $1 + 12 | 0;
+ $591 = $557 >>> 24;
+ $592 = $591 & 255;
+ $593 = $1 + 15 | 0;
+ SAFE_HEAP_STORE($593 >> 0 | 0, $592 | 0, 1);
+ $594 = $557 >>> 16;
+ $595 = $594 & 255;
+ $596 = $1 + 14 | 0;
+ SAFE_HEAP_STORE($596 >> 0 | 0, $595 | 0, 1);
+ $597 = $557 >>> 8;
+ $598 = $597 & 255;
+ $599 = $1 + 13 | 0;
+ SAFE_HEAP_STORE($599 >> 0 | 0, $598 | 0, 1);
+ $600 = $557 & 255;
+ SAFE_HEAP_STORE($590 >> 0 | 0, $600 | 0, 1);
+ return 64;
+}
+
+function __gcry_poly1305_init($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$0 = 0, $$0$i18$i$lcssa134 = 0, $$0$i18$i85 = 0, 
$$0$i41$lcssa132 = 0, $$0$i4195 = 0, $$016$i = 0, $$032$i$lcssa131 = 0, 
$$032$i17$i$lcssa133 = 0, $$032$i17$i84 = 0, $$032$i94 = 0, $$036$lcssa136 = 0, 
$$03663 = 0, $$037$lcssa135 = 0, $$03762 = 0, $$1 = 0, $$1$i20$i = 0, $$1$i42 = 
0, $$133$i = 0, $$133$i19$i = 0;
+ var $$138 = 0, $$3$i$ph = 0, $$3$i22$i$ph = 0, $$3$i22$i82 = 0, $$3$i92 = 0, 
$$3$ph = 0, $$335$i$ph = 0, $$335$i21$i$ph = 0, $$335$i21$i81 = 0, $$335$i91 = 
0, $$340$ph = 0, $$34060 = 0, $$361 = 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, $3 = 0, $30 = 
0, $300 = 0, $301 = 0, $302 = 0, $303 = 0;
+ var $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, $321 = 0;
+ var $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, $34 = 0;
+ var $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, $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, 
$exitcond = 0, $indvars$iv = 0, $indvars$iv$next = 0, $scevgep = 0, $scevgep129 
= 0, $scevgep130 = 0, $vararg_buffer = 0, dest = 0, label = 0, sp = 0, stop = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 816 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(816 | 0);
+ $vararg_buffer = sp + 96 | 0;
+ $3 = sp + 412 | 0;
+ $4 = sp + 320 | 0;
+ $5 = sp;
+ $6 = sp + 228 | 0;
+ $7 = sp + 136 | 0;
+ $8 = sp + 776 | 0;
+ $9 = sp + 520 | 0;
+ $10 = sp + 504 | 0;
+ $11 = sp + 104 | 0;
+ $12 = SAFE_HEAP_LOAD(17642 * 4 | 0, 4, 0) | 0 | 0;
+ $13 = ($12 | 0) == 0;
+ if ($13) {
+  SAFE_HEAP_STORE(17642 * 4 | 0, 1 | 0, 4);
+  dest = $6;
+  stop = dest + 92 | 0;
+  do {
+   SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+   dest = dest + 4 | 0;
+  } while ((dest | 0) < (stop | 0));
+  dest = $7;
+  stop = dest + 92 | 0;
+  do {
+   SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+   dest = dest + 4 | 0;
+  } while ((dest | 0) < (stop | 0));
+  dest = $10;
+  stop = dest + 16 | 0;
+  do {
+   SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+   dest = dest + 1 | 0;
+  } while ((dest | 0) < (stop | 0));
+  dest = $3;
+  stop = dest + 92 | 0;
+  do {
+   SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+   dest = dest + 4 | 0;
+  } while ((dest | 0) < (stop | 0));
+  __gcry_poly1305_init($3, 49754, 32) | 0;
+  __gcry_poly1305_update($3, 49786, 131);
+  $14 = $3 + 3 | 0;
+  $15 = $14;
+  $16 = $15 & 3;
+  $17 = 0 - $16 | 0;
+  $18 = $14 + $17 | 0;
+  $19 = $3 + 84 | 0;
+  $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+  $21 = $20 + 12 | 0;
+  $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+  $23 = $3 + 68 | 0;
+  $24 = $3 + 88 | 0;
+  $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+  $26 = FUNCTION_TABLE_iiiii[(SAFE_FT_MASK($22 | 0, 127 | 0) | 0) & 127]($18, 
$23, $25, $10) | 0;
+  ___gcry_burn_stack($26);
+  $27 = $3;
+  $28 = $27 & 4;
+  $29 = ($28 | 0) == 0;
+  if ($29) {
+   $$0$i41$lcssa132 = $3;
+   $$032$i$lcssa131 = 92;
+   label = 5;
+  } else {
+   $$0$i4195 = $3;
+   $$032$i94 = 92;
+   while (1) {
+    SAFE_HEAP_STORE($$0$i4195 >> 0 | 0, 0 | 0, 1);
+    $30 = $$0$i4195 + 1 | 0;
+    $31 = $$032$i94 + -1 | 0;
+    $32 = $30;
+    $33 = $32 & 7;
+    $34 = ($33 | 0) != 0;
+    $35 = ($31 | 0) != 0;
+    $36 = $35 & $34;
+    if ($36) {
+     $$0$i4195 = $30;
+     $$032$i94 = $31;
+    } else {
+     break;
+    }
+   }
+   $37 = $31 >>> 0 < 8;
+   if ($37) {
+    $$3$i$ph = $30;
+    $$335$i$ph = $31;
+   } else {
+    $$0$i41$lcssa132 = $30;
+    $$032$i$lcssa131 = $31;
+    label = 5;
+   }
+  }
+  if ((label | 0) == 5) {
+   $38 = $$032$i$lcssa131 + -8 | 0;
+   $39 = $38 & -8;
+   $40 = $39 + 8 | 0;
+   $$1$i42 = $$0$i41$lcssa132;
+   $$133$i = $$032$i$lcssa131;
+   while (1) {
+    $41 = $$1$i42;
+    $42 = $41;
+    SAFE_HEAP_STORE($42 | 0, 0 | 0, 4);
+    $43 = $41 + 4 | 0;
+    $44 = $43;
+    SAFE_HEAP_STORE($44 | 0, 0 | 0, 4);
+    $45 = $$133$i + -8 | 0;
+    $46 = $$1$i42 + 8 | 0;
+    $47 = $45 >>> 0 > 7;
+    if ($47) {
+     $$1$i42 = $46;
+     $$133$i = $45;
+    } else {
+     break;
+    }
+   }
+   $48 = $38 - $39 | 0;
+   $scevgep130 = $$0$i41$lcssa132 + $40 | 0;
+   $$3$i$ph = $scevgep130;
+   $$335$i$ph = $48;
+  }
+  $49 = ($$335$i$ph | 0) == 0;
+  if (!$49) {
+   $$3$i92 = $$3$i$ph;
+   $$335$i91 = $$335$i$ph;
+   while (1) {
+    SAFE_HEAP_STORE($$3$i92 >> 0 | 0, 0 | 0, 1);
+    $50 = $$3$i92 + 1 | 0;
+    $51 = $$335$i91 + -1 | 0;
+    $52 = ($51 | 0) == 0;
+    if ($52) {
+     break;
+    } else {
+     $$3$i92 = $50;
+     $$335$i91 = $51;
+    }
+   }
+  }
+  $53 = _memcmp(49917, $10, 16) | 0;
+  $54 = ($53 | 0) == 0;
+  if ($54) {
+   dest = $10;
+   stop = dest + 16 | 0;
+   do {
+    SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+    dest = dest + 1 | 0;
+   } while ((dest | 0) < (stop | 0));
+   __gcry_poly1305_init($6, 49754, 32) | 0;
+   __gcry_poly1305_update($6, 49786, 32);
+   __gcry_poly1305_update($6, 49818, 64);
+   __gcry_poly1305_update($6, 49882, 16);
+   __gcry_poly1305_update($6, 49898, 8);
+   __gcry_poly1305_update($6, 49906, 4);
+   __gcry_poly1305_update($6, 49910, 2);
+   __gcry_poly1305_update($6, 49912, 1);
+   __gcry_poly1305_update($6, 49913, 1);
+   __gcry_poly1305_update($6, 49914, 1);
+   __gcry_poly1305_update($6, 49915, 1);
+   __gcry_poly1305_update($6, 49916, 1);
+   $55 = $6 + 3 | 0;
+   $56 = $55;
+   $57 = $56 & 3;
+   $58 = 0 - $57 | 0;
+   $59 = $55 + $58 | 0;
+   $60 = $6 + 84 | 0;
+   $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+   $62 = $61 + 12 | 0;
+   $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+   $64 = $6 + 68 | 0;
+   $65 = $6 + 88 | 0;
+   $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+   $67 = FUNCTION_TABLE_iiiii[(SAFE_FT_MASK($63 | 0, 127 | 0) | 0) & 127]($59, 
$64, $66, $10) | 0;
+   ___gcry_burn_stack($67);
+   $68 = _memcmp(49917, $10, 16) | 0;
+   $69 = ($68 | 0) == 0;
+   if ($69) {
+    dest = $10;
+    stop = dest + 16 | 0;
+    do {
+     SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+     dest = dest + 1 | 0;
+    } while ((dest | 0) < (stop | 0));
+    dest = $4;
+    stop = dest + 92 | 0;
+    do {
+     SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+     dest = dest + 4 | 0;
+    } while ((dest | 0) < (stop | 0));
+    __gcry_poly1305_init($4, 49933, 32) | 0;
+    __gcry_poly1305_update($4, 49965, 16);
+    $70 = $4 + 3 | 0;
+    $71 = $70;
+    $72 = $71 & 3;
+    $73 = 0 - $72 | 0;
+    $74 = $70 + $73 | 0;
+    $75 = $4 + 84 | 0;
+    $76 = SAFE_HEAP_LOAD($75 | 0, 4, 0) | 0 | 0;
+    $77 = $76 + 12 | 0;
+    $78 = SAFE_HEAP_LOAD($77 | 0, 4, 0) | 0 | 0;
+    $79 = $4 + 68 | 0;
+    $80 = $4 + 88 | 0;
+    $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+    $82 = FUNCTION_TABLE_iiiii[(SAFE_FT_MASK($78 | 0, 127 | 0) | 0) & 
127]($74, $79, $81, $10) | 0;
+    ___gcry_burn_stack($82);
+    $83 = $4;
+    $84 = $83 & 4;
+    $85 = ($84 | 0) == 0;
+    if ($85) {
+     $$0$i18$i$lcssa134 = $4;
+     $$032$i17$i$lcssa133 = 92;
+     label = 15;
+    } else {
+     $$0$i18$i85 = $4;
+     $$032$i17$i84 = 92;
+     while (1) {
+      SAFE_HEAP_STORE($$0$i18$i85 >> 0 | 0, 0 | 0, 1);
+      $86 = $$0$i18$i85 + 1 | 0;
+      $87 = $$032$i17$i84 + -1 | 0;
+      $88 = $86;
+      $89 = $88 & 7;
+      $90 = ($89 | 0) != 0;
+      $91 = ($87 | 0) != 0;
+      $92 = $91 & $90;
+      if ($92) {
+       $$0$i18$i85 = $86;
+       $$032$i17$i84 = $87;
+      } else {
+       break;
+      }
+     }
+     $93 = $87 >>> 0 < 8;
+     if ($93) {
+      $$3$i22$i$ph = $86;
+      $$335$i21$i$ph = $87;
+     } else {
+      $$0$i18$i$lcssa134 = $86;
+      $$032$i17$i$lcssa133 = $87;
+      label = 15;
+     }
+    }
+    if ((label | 0) == 15) {
+     $94 = $$032$i17$i$lcssa133 + -8 | 0;
+     $95 = $94 & -8;
+     $96 = $95 + 8 | 0;
+     $$1$i20$i = $$0$i18$i$lcssa134;
+     $$133$i19$i = $$032$i17$i$lcssa133;
+     while (1) {
+      $97 = $$1$i20$i;
+      $98 = $97;
+      SAFE_HEAP_STORE($98 | 0, 0 | 0, 4);
+      $99 = $97 + 4 | 0;
+      $100 = $99;
+      SAFE_HEAP_STORE($100 | 0, 0 | 0, 4);
+      $101 = $$133$i19$i + -8 | 0;
+      $102 = $$1$i20$i + 8 | 0;
+      $103 = $101 >>> 0 > 7;
+      if ($103) {
+       $$1$i20$i = $102;
+       $$133$i19$i = $101;
+      } else {
+       break;
+      }
+     }
+     $104 = $94 - $95 | 0;
+     $scevgep129 = $$0$i18$i$lcssa134 + $96 | 0;
+     $$3$i22$i$ph = $scevgep129;
+     $$335$i21$i$ph = $104;
+    }
+    $105 = ($$335$i21$i$ph | 0) == 0;
+    if (!$105) {
+     $$3$i22$i82 = $$3$i22$i$ph;
+     $$335$i21$i81 = $$335$i21$i$ph;
+     while (1) {
+      SAFE_HEAP_STORE($$3$i22$i82 >> 0 | 0, 0 | 0, 1);
+      $106 = $$3$i22$i82 + 1 | 0;
+      $107 = $$335$i21$i81 + -1 | 0;
+      $108 = ($107 | 0) == 0;
+      if ($108) {
+       break;
+      } else {
+       $$3$i22$i82 = $106;
+       $$335$i21$i81 = $107;
+      }
+     }
+    }
+    $109 = _memcmp(49981, $10, 16) | 0;
+    $110 = ($109 | 0) == 0;
+    if ($110) {
+     __gcry_poly1305_init($7, 49997, 32) | 0;
+     $111 = $5 + 3 | 0;
+     $112 = $111;
+     $113 = $112 & 3;
+     $114 = 0 - $113 | 0;
+     $115 = $111 + $114 | 0;
+     $116 = $5 + 84 | 0;
+     $117 = $5 + 68 | 0;
+     $118 = $5 + 88 | 0;
+     $119 = $5 + 8 | 0;
+     $120 = $5 + 16 | 0;
+     $121 = $5 + 24 | 0;
+     $122 = $5 + 32 | 0;
+     $123 = $5 + 40 | 0;
+     $124 = $5 + 48 | 0;
+     $125 = $5 + 56 | 0;
+     $126 = $5 + 64 | 0;
+     $127 = $5 + 72 | 0;
+     $128 = $5 + 80 | 0;
+     $129 = $118 + 1 | 0;
+     $130 = $118 + 2 | 0;
+     $131 = $118 + 3 | 0;
+     $indvars$iv = 0;
+     while (1) {
+      $132 = $indvars$iv & 255;
+      _memset($8 | 0, $132 | 0, 32) | 0;
+      $133 = ($indvars$iv | 0) == 0;
+      if (!$133) {
+       _memset($9 | 0, $132 | 0, $indvars$iv | 0) | 0;
+      }
+      dest = $5;
+      stop = dest + 92 | 0;
+      do {
+       SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+       dest = dest + 4 | 0;
+      } while ((dest | 0) < (stop | 0));
+      __gcry_poly1305_init($5, $8, 32) | 0;
+      __gcry_poly1305_update($5, $9, $indvars$iv);
+      $134 = SAFE_HEAP_LOAD($116 | 0, 4, 0) | 0 | 0;
+      $135 = $134 + 12 | 0;
+      $136 = SAFE_HEAP_LOAD($135 | 0, 4, 0) | 0 | 0;
+      $137 = SAFE_HEAP_LOAD($118 | 0, 4, 0) | 0 | 0;
+      $138 = FUNCTION_TABLE_iiiii[(SAFE_FT_MASK($136 | 0, 127 | 0) | 0) & 
127]($115, $117, $137, $10) | 0;
+      ___gcry_burn_stack($138);
+      $139 = $5;
+      $140 = $139;
+      SAFE_HEAP_STORE($140 | 0, 0 | 0, 4);
+      $141 = $139 + 4 | 0;
+      $142 = $141;
+      SAFE_HEAP_STORE($142 | 0, 0 | 0, 4);
+      $143 = $119;
+      $144 = $143;
+      SAFE_HEAP_STORE($144 | 0, 0 | 0, 4);
+      $145 = $143 + 4 | 0;
+      $146 = $145;
+      SAFE_HEAP_STORE($146 | 0, 0 | 0, 4);
+      $147 = $120;
+      $148 = $147;
+      SAFE_HEAP_STORE($148 | 0, 0 | 0, 4);
+      $149 = $147 + 4 | 0;
+      $150 = $149;
+      SAFE_HEAP_STORE($150 | 0, 0 | 0, 4);
+      $151 = $121;
+      $152 = $151;
+      SAFE_HEAP_STORE($152 | 0, 0 | 0, 4);
+      $153 = $151 + 4 | 0;
+      $154 = $153;
+      SAFE_HEAP_STORE($154 | 0, 0 | 0, 4);
+      $155 = $122;
+      $156 = $155;
+      SAFE_HEAP_STORE($156 | 0, 0 | 0, 4);
+      $157 = $155 + 4 | 0;
+      $158 = $157;
+      SAFE_HEAP_STORE($158 | 0, 0 | 0, 4);
+      $159 = $123;
+      $160 = $159;
+      SAFE_HEAP_STORE($160 | 0, 0 | 0, 4);
+      $161 = $159 + 4 | 0;
+      $162 = $161;
+      SAFE_HEAP_STORE($162 | 0, 0 | 0, 4);
+      $163 = $124;
+      $164 = $163;
+      SAFE_HEAP_STORE($164 | 0, 0 | 0, 4);
+      $165 = $163 + 4 | 0;
+      $166 = $165;
+      SAFE_HEAP_STORE($166 | 0, 0 | 0, 4);
+      $167 = $125;
+      $168 = $167;
+      SAFE_HEAP_STORE($168 | 0, 0 | 0, 4);
+      $169 = $167 + 4 | 0;
+      $170 = $169;
+      SAFE_HEAP_STORE($170 | 0, 0 | 0, 4);
+      $171 = $126;
+      $172 = $171;
+      SAFE_HEAP_STORE($172 | 0, 0 | 0, 4);
+      $173 = $171 + 4 | 0;
+      $174 = $173;
+      SAFE_HEAP_STORE($174 | 0, 0 | 0, 4);
+      $175 = $127;
+      $176 = $175;
+      SAFE_HEAP_STORE($176 | 0, 0 | 0, 4);
+      $177 = $175 + 4 | 0;
+      $178 = $177;
+      SAFE_HEAP_STORE($178 | 0, 0 | 0, 4);
+      $179 = $128;
+      $180 = $179;
+      SAFE_HEAP_STORE($180 | 0, 0 | 0, 4);
+      $181 = $179 + 4 | 0;
+      $182 = $181;
+      SAFE_HEAP_STORE($182 | 0, 0 | 0, 4);
+      SAFE_HEAP_STORE($118 >> 0 | 0, 0 | 0, 1);
+      SAFE_HEAP_STORE($129 >> 0 | 0, 0 | 0, 1);
+      SAFE_HEAP_STORE($130 >> 0 | 0, 0 | 0, 1);
+      SAFE_HEAP_STORE($131 >> 0 | 0, 0 | 0, 1);
+      __gcry_poly1305_update($7, $10, 16);
+      $indvars$iv$next = $indvars$iv + 1 | 0;
+      $exitcond = ($indvars$iv$next | 0) == 256;
+      if ($exitcond) {
+       break;
+      } else {
+       $indvars$iv = $indvars$iv$next;
+      }
+     }
+     $183 = $7 + 3 | 0;
+     $184 = $183;
+     $185 = $184 & 3;
+     $186 = 0 - $185 | 0;
+     $187 = $183 + $186 | 0;
+     $188 = $7 + 84 | 0;
+     $189 = SAFE_HEAP_LOAD($188 | 0, 4, 0) | 0 | 0;
+     $190 = $189 + 12 | 0;
+     $191 = SAFE_HEAP_LOAD($190 | 0, 4, 0) | 0 | 0;
+     $192 = $7 + 68 | 0;
+     $193 = $7 + 88 | 0;
+     $194 = SAFE_HEAP_LOAD($193 | 0, 4, 0) | 0 | 0;
+     $195 = FUNCTION_TABLE_iiiii[(SAFE_FT_MASK($191 | 0, 127 | 0) | 0) & 
127]($187, $192, $194, $10) | 0;
+     ___gcry_burn_stack($195);
+     $196 = _memcmp(50029, $10, 16) | 0;
+     $197 = ($196 | 0) == 0;
+     $$ = $197 ? 0 : 50045;
+     $$016$i = $$;
+    } else {
+     $$016$i = 50117;
+    }
+   } else {
+    $$016$i = 50093;
+   }
+  } else {
+   $$016$i = 50069;
+  }
+  SAFE_HEAP_STORE(17643 * 4 | 0, $$016$i | 0, 4);
+  $198 = ($$016$i | 0) == (0 | 0);
+  if (!$198) {
+   SAFE_HEAP_STORE($vararg_buffer | 0, $$016$i | 0, 4);
+   __gcry_log_error(50141, $vararg_buffer);
+  }
+ }
+ $199 = ($2 | 0) == 32;
+ if (!$199) {
+  $$0 = 44;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $200 = SAFE_HEAP_LOAD(17643 * 4 | 0, 4, 0) | 0 | 0;
+ $201 = ($200 | 0) == (0 | 0);
+ if (!$201) {
+  $$0 = 50;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $202 = $0 + 84 | 0;
+ SAFE_HEAP_STORE($202 | 0, 12580 | 0, 4);
+ $203 = $11;
+ $204 = $1;
+ $205 = $204 & 3;
+ $206 = ($205 | 0) == 0;
+ if ($206) {
+  $301 = $1 + 4 | 0;
+  $302 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  $303 = $11 + 4 | 0;
+  SAFE_HEAP_STORE($11 | 0, $302 | 0, 4);
+  $304 = $1 + 8 | 0;
+  $305 = SAFE_HEAP_LOAD($301 | 0, 4, 0) | 0 | 0;
+  $306 = $11 + 8 | 0;
+  SAFE_HEAP_STORE($303 | 0, $305 | 0, 4);
+  $307 = $1 + 12 | 0;
+  $308 = SAFE_HEAP_LOAD($304 | 0, 4, 0) | 0 | 0;
+  $309 = $11 + 12 | 0;
+  SAFE_HEAP_STORE($306 | 0, $308 | 0, 4);
+  $310 = $1 + 16 | 0;
+  $311 = SAFE_HEAP_LOAD($307 | 0, 4, 0) | 0 | 0;
+  $312 = $11 + 16 | 0;
+  SAFE_HEAP_STORE($309 | 0, $311 | 0, 4);
+  $313 = $1 + 20 | 0;
+  $314 = SAFE_HEAP_LOAD($310 | 0, 4, 0) | 0 | 0;
+  $315 = $11 + 20 | 0;
+  SAFE_HEAP_STORE($312 | 0, $314 | 0, 4);
+  $316 = $1 + 24 | 0;
+  $317 = SAFE_HEAP_LOAD($313 | 0, 4, 0) | 0 | 0;
+  $318 = $11 + 24 | 0;
+  SAFE_HEAP_STORE($315 | 0, $317 | 0, 4);
+  $319 = $1 + 28 | 0;
+  $320 = SAFE_HEAP_LOAD($316 | 0, 4, 0) | 0 | 0;
+  $321 = $11 + 28 | 0;
+  SAFE_HEAP_STORE($318 | 0, $320 | 0, 4);
+  $322 = SAFE_HEAP_LOAD($319 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($321 | 0, $322 | 0, 4);
+  $330 = 12580;
+ } else {
+  $207 = $1 + 1 | 0;
+  $208 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $209 = $11 + 1 | 0;
+  SAFE_HEAP_STORE($11 >> 0 | 0, $208 | 0, 1);
+  $210 = $1 + 2 | 0;
+  $211 = SAFE_HEAP_LOAD($207 >> 0 | 0, 1, 0) | 0 | 0;
+  $212 = $11 + 2 | 0;
+  SAFE_HEAP_STORE($209 >> 0 | 0, $211 | 0, 1);
+  $213 = $1 + 3 | 0;
+  $214 = SAFE_HEAP_LOAD($210 >> 0 | 0, 1, 0) | 0 | 0;
+  $215 = $11 + 3 | 0;
+  SAFE_HEAP_STORE($212 >> 0 | 0, $214 | 0, 1);
+  $216 = $1 + 4 | 0;
+  $217 = SAFE_HEAP_LOAD($213 >> 0 | 0, 1, 0) | 0 | 0;
+  $218 = $11 + 4 | 0;
+  SAFE_HEAP_STORE($215 >> 0 | 0, $217 | 0, 1);
+  $219 = $1 + 5 | 0;
+  $220 = SAFE_HEAP_LOAD($216 >> 0 | 0, 1, 0) | 0 | 0;
+  $221 = $11 + 5 | 0;
+  SAFE_HEAP_STORE($218 >> 0 | 0, $220 | 0, 1);
+  $222 = $1 + 6 | 0;
+  $223 = SAFE_HEAP_LOAD($219 >> 0 | 0, 1, 0) | 0 | 0;
+  $224 = $11 + 6 | 0;
+  SAFE_HEAP_STORE($221 >> 0 | 0, $223 | 0, 1);
+  $225 = $1 + 7 | 0;
+  $226 = SAFE_HEAP_LOAD($222 >> 0 | 0, 1, 0) | 0 | 0;
+  $227 = $11 + 7 | 0;
+  SAFE_HEAP_STORE($224 >> 0 | 0, $226 | 0, 1);
+  $228 = $1 + 8 | 0;
+  $229 = SAFE_HEAP_LOAD($225 >> 0 | 0, 1, 0) | 0 | 0;
+  $230 = $11 + 8 | 0;
+  SAFE_HEAP_STORE($227 >> 0 | 0, $229 | 0, 1);
+  $231 = $1 + 9 | 0;
+  $232 = SAFE_HEAP_LOAD($228 >> 0 | 0, 1, 0) | 0 | 0;
+  $233 = $11 + 9 | 0;
+  SAFE_HEAP_STORE($230 >> 0 | 0, $232 | 0, 1);
+  $234 = $1 + 10 | 0;
+  $235 = SAFE_HEAP_LOAD($231 >> 0 | 0, 1, 0) | 0 | 0;
+  $236 = $11 + 10 | 0;
+  SAFE_HEAP_STORE($233 >> 0 | 0, $235 | 0, 1);
+  $237 = $1 + 11 | 0;
+  $238 = SAFE_HEAP_LOAD($234 >> 0 | 0, 1, 0) | 0 | 0;
+  $239 = $11 + 11 | 0;
+  SAFE_HEAP_STORE($236 >> 0 | 0, $238 | 0, 1);
+  $240 = $1 + 12 | 0;
+  $241 = SAFE_HEAP_LOAD($237 >> 0 | 0, 1, 0) | 0 | 0;
+  $242 = $11 + 12 | 0;
+  SAFE_HEAP_STORE($239 >> 0 | 0, $241 | 0, 1);
+  $243 = $1 + 13 | 0;
+  $244 = SAFE_HEAP_LOAD($240 >> 0 | 0, 1, 0) | 0 | 0;
+  $245 = $11 + 13 | 0;
+  SAFE_HEAP_STORE($242 >> 0 | 0, $244 | 0, 1);
+  $246 = $1 + 14 | 0;
+  $247 = SAFE_HEAP_LOAD($243 >> 0 | 0, 1, 0) | 0 | 0;
+  $248 = $11 + 14 | 0;
+  SAFE_HEAP_STORE($245 >> 0 | 0, $247 | 0, 1);
+  $249 = $1 + 15 | 0;
+  $250 = SAFE_HEAP_LOAD($246 >> 0 | 0, 1, 0) | 0 | 0;
+  $251 = $11 + 15 | 0;
+  SAFE_HEAP_STORE($248 >> 0 | 0, $250 | 0, 1);
+  $252 = $1 + 16 | 0;
+  $253 = SAFE_HEAP_LOAD($249 >> 0 | 0, 1, 0) | 0 | 0;
+  $254 = $11 + 16 | 0;
+  SAFE_HEAP_STORE($251 >> 0 | 0, $253 | 0, 1);
+  $255 = $1 + 17 | 0;
+  $256 = SAFE_HEAP_LOAD($252 >> 0 | 0, 1, 0) | 0 | 0;
+  $257 = $11 + 17 | 0;
+  SAFE_HEAP_STORE($254 >> 0 | 0, $256 | 0, 1);
+  $258 = $1 + 18 | 0;
+  $259 = SAFE_HEAP_LOAD($255 >> 0 | 0, 1, 0) | 0 | 0;
+  $260 = $11 + 18 | 0;
+  SAFE_HEAP_STORE($257 >> 0 | 0, $259 | 0, 1);
+  $261 = $1 + 19 | 0;
+  $262 = SAFE_HEAP_LOAD($258 >> 0 | 0, 1, 0) | 0 | 0;
+  $263 = $11 + 19 | 0;
+  SAFE_HEAP_STORE($260 >> 0 | 0, $262 | 0, 1);
+  $264 = $1 + 20 | 0;
+  $265 = SAFE_HEAP_LOAD($261 >> 0 | 0, 1, 0) | 0 | 0;
+  $266 = $11 + 20 | 0;
+  SAFE_HEAP_STORE($263 >> 0 | 0, $265 | 0, 1);
+  $267 = $1 + 21 | 0;
+  $268 = SAFE_HEAP_LOAD($264 >> 0 | 0, 1, 0) | 0 | 0;
+  $269 = $11 + 21 | 0;
+  SAFE_HEAP_STORE($266 >> 0 | 0, $268 | 0, 1);
+  $270 = $1 + 22 | 0;
+  $271 = SAFE_HEAP_LOAD($267 >> 0 | 0, 1, 0) | 0 | 0;
+  $272 = $11 + 22 | 0;
+  SAFE_HEAP_STORE($269 >> 0 | 0, $271 | 0, 1);
+  $273 = $1 + 23 | 0;
+  $274 = SAFE_HEAP_LOAD($270 >> 0 | 0, 1, 0) | 0 | 0;
+  $275 = $11 + 23 | 0;
+  SAFE_HEAP_STORE($272 >> 0 | 0, $274 | 0, 1);
+  $276 = $1 + 24 | 0;
+  $277 = SAFE_HEAP_LOAD($273 >> 0 | 0, 1, 0) | 0 | 0;
+  $278 = $11 + 24 | 0;
+  SAFE_HEAP_STORE($275 >> 0 | 0, $277 | 0, 1);
+  $279 = $1 + 25 | 0;
+  $280 = SAFE_HEAP_LOAD($276 >> 0 | 0, 1, 0) | 0 | 0;
+  $281 = $11 + 25 | 0;
+  SAFE_HEAP_STORE($278 >> 0 | 0, $280 | 0, 1);
+  $282 = $1 + 26 | 0;
+  $283 = SAFE_HEAP_LOAD($279 >> 0 | 0, 1, 0) | 0 | 0;
+  $284 = $11 + 26 | 0;
+  SAFE_HEAP_STORE($281 >> 0 | 0, $283 | 0, 1);
+  $285 = $1 + 27 | 0;
+  $286 = SAFE_HEAP_LOAD($282 >> 0 | 0, 1, 0) | 0 | 0;
+  $287 = $11 + 27 | 0;
+  SAFE_HEAP_STORE($284 >> 0 | 0, $286 | 0, 1);
+  $288 = $1 + 28 | 0;
+  $289 = SAFE_HEAP_LOAD($285 >> 0 | 0, 1, 0) | 0 | 0;
+  $290 = $11 + 28 | 0;
+  SAFE_HEAP_STORE($287 >> 0 | 0, $289 | 0, 1);
+  $291 = $1 + 29 | 0;
+  $292 = SAFE_HEAP_LOAD($288 >> 0 | 0, 1, 0) | 0 | 0;
+  $293 = $11 + 29 | 0;
+  SAFE_HEAP_STORE($290 >> 0 | 0, $292 | 0, 1);
+  $294 = $1 + 30 | 0;
+  $295 = SAFE_HEAP_LOAD($291 >> 0 | 0, 1, 0) | 0 | 0;
+  $296 = $11 + 30 | 0;
+  SAFE_HEAP_STORE($293 >> 0 | 0, $295 | 0, 1);
+  $297 = $1 + 31 | 0;
+  $298 = SAFE_HEAP_LOAD($294 >> 0 | 0, 1, 0) | 0 | 0;
+  $299 = $11 + 31 | 0;
+  SAFE_HEAP_STORE($296 >> 0 | 0, $298 | 0, 1);
+  $300 = SAFE_HEAP_LOAD($297 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($299 >> 0 | 0, $300 | 0, 1);
+  $$pre = SAFE_HEAP_LOAD($202 | 0, 4, 0) | 0 | 0;
+  $330 = $$pre;
+ }
+ $323 = $0 + 3 | 0;
+ $324 = $323;
+ $325 = $324 & 3;
+ $326 = 0 - $325 | 0;
+ $327 = $323 + $326 | 0;
+ $328 = $0 + 88 | 0;
+ SAFE_HEAP_STORE($328 | 0, 0 | 0, 4);
+ $329 = $330 + 4 | 0;
+ $331 = SAFE_HEAP_LOAD($329 | 0, 4, 0) | 0 | 0;
+ FUNCTION_TABLE_vii[(SAFE_FT_MASK($331 | 0, 63 | 0) | 0) & 63]($327, $11);
+ $332 = $203 & 4;
+ $333 = ($332 | 0) == 0;
+ if ($333) {
+  $$036$lcssa136 = 32;
+  $$037$lcssa135 = $11;
+  label = 36;
+ } else {
+  $$03663 = 32;
+  $$03762 = $11;
+  while (1) {
+   SAFE_HEAP_STORE($$03762 >> 0 | 0, 0 | 0, 1);
+   $334 = $$03762 + 1 | 0;
+   $335 = $$03663 + -1 | 0;
+   $336 = $334;
+   $337 = $336 & 7;
+   $338 = ($337 | 0) != 0;
+   $339 = ($335 | 0) != 0;
+   $340 = $339 & $338;
+   if ($340) {
+    $$03663 = $335;
+    $$03762 = $334;
+   } else {
+    break;
+   }
+  }
+  $341 = $335 >>> 0 < 8;
+  if ($341) {
+   $$3$ph = $335;
+   $$340$ph = $334;
+  } else {
+   $$036$lcssa136 = $335;
+   $$037$lcssa135 = $334;
+   label = 36;
+  }
+ }
+ if ((label | 0) == 36) {
+  $342 = $$036$lcssa136 + -8 | 0;
+  $343 = $342 & -8;
+  $344 = $343 + 8 | 0;
+  $$1 = $$036$lcssa136;
+  $$138 = $$037$lcssa135;
+  while (1) {
+   $345 = $$138;
+   $346 = $345;
+   SAFE_HEAP_STORE($346 | 0, 0 | 0, 4);
+   $347 = $345 + 4 | 0;
+   $348 = $347;
+   SAFE_HEAP_STORE($348 | 0, 0 | 0, 4);
+   $349 = $$1 + -8 | 0;
+   $350 = $$138 + 8 | 0;
+   $351 = $349 >>> 0 > 7;
+   if ($351) {
+    $$1 = $349;
+    $$138 = $350;
+   } else {
+    break;
+   }
+  }
+  $352 = $342 - $343 | 0;
+  $scevgep = $$037$lcssa135 + $344 | 0;
+  $$3$ph = $352;
+  $$340$ph = $scevgep;
+ }
+ $353 = ($$3$ph | 0) == 0;
+ if ($353) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  $$34060 = $$340$ph;
+  $$361 = $$3$ph;
+ }
+ while (1) {
+  SAFE_HEAP_STORE($$34060 >> 0 | 0, 0 | 0, 1);
+  $354 = $$34060 + 1 | 0;
+  $355 = $$361 + -1 | 0;
+  $356 = ($355 | 0) == 0;
+  if ($356) {
+   $$0 = 0;
+   break;
+  } else {
+   $$34060 = $354;
+   $$361 = $355;
+  }
+ }
+ 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 = 0, $$07993 = 0, $$08092 = 0, $$08490 = 0, $$08490$us = 0, 
$$1$lcssa = 0, $$181 = 0, $$191 = 0, $$191$us = 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, $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, $not$ = 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 + 12 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = $7 + 20 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($20 + 1 >> 0 | 
0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($20 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($20 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+ $22 = $19 + 4 | 0;
+ $23 = $22;
+ $24 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($23 + 1 >> 0 | 
0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($23 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($23 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+ $25 = $17;
+ $26 = $25;
+ SAFE_HEAP_STORE($26 >> 0 | 0, $21 & 255 | 0, 1);
+ SAFE_HEAP_STORE($26 + 1 >> 0 | 0, $21 >> 8 & 255 | 0, 1);
+ SAFE_HEAP_STORE($26 + 2 >> 0 | 0, $21 >> 16 & 255 | 0, 1);
+ SAFE_HEAP_STORE($26 + 3 >> 0 | 0, $21 >> 24 | 0, 1);
+ $27 = $25 + 4 | 0;
+ $28 = $27;
+ SAFE_HEAP_STORE($28 >> 0 | 0, $24 & 255 | 0, 1);
+ SAFE_HEAP_STORE($28 + 1 >> 0 | 0, $24 >> 8 & 255 | 0, 1);
+ SAFE_HEAP_STORE($28 + 2 >> 0 | 0, $24 >> 16 & 255 | 0, 1);
+ SAFE_HEAP_STORE($28 + 3 >> 0 | 0, $24 >> 24 | 0, 1);
+ $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;
+ SAFE_HEAP_STORE($34 >> 0 | 0, $33 | 0, 1);
+ $35 = $32 >>> 8;
+ $36 = $35 & 255;
+ $37 = $5 + 6 | 0;
+ SAFE_HEAP_STORE($37 >> 0 | 0, $36 | 0, 1);
+ $38 = $32 >>> 16;
+ $39 = $38 & 255;
+ $40 = $5 + 5 | 0;
+ SAFE_HEAP_STORE($40 >> 0 | 0, $39 | 0, 1);
+ $41 = $32 >>> 24;
+ $42 = $41 & 255;
+ $43 = $5 + 4 | 0;
+ SAFE_HEAP_STORE($43 >> 0 | 0, $42 | 0, 1);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ $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;
+ $$07993 = 0;
+ $$08092 = 5;
+ $265 = 0;
+ $266 = $42;
+ $267 = $39;
+ $268 = $36;
+ $269 = $33;
+ $270 = $42;
+ $271 = 0;
+ $272 = 0;
+ $273 = 0;
+ $274 = 0;
+ while (1) {
+  if ($44) {
+   $$1$lcssa = $$07993;
+   $275 = $265;
+   $276 = $266;
+   $277 = $267;
+   $278 = $268;
+   $279 = $269;
+   $280 = $270;
+   $281 = $271;
+   $282 = $272;
+   $283 = $273;
+   $284 = $274;
+  } else {
+   if ($49) {
+    $$08490$us = $31;
+    $$191$us = $$07993;
+    $103 = $269;
+    $108 = $268;
+    $251 = $267;
+    $256 = $271;
+    $259 = $272;
+    $262 = $273;
+    while (1) {
+     $77 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+     $78 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $79 = $78 ^ $77;
+     SAFE_HEAP_STORE($18 | 0, $79 | 0, 4);
+     $80 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+     $81 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+     $82 = $81 ^ $80;
+     SAFE_HEAP_STORE($51 | 0, $82 | 0, 4);
+     $83 = $$08490$us << 3;
+     $84 = $83 + -8 | 0;
+     $85 = $1 + $84 | 0;
+     $86 = $85;
+     $87 = $86;
+     $88 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($87 + 1 >> 
0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($87 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($87 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $89 = $86 + 4 | 0;
+     $90 = $89;
+     $91 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($90 + 1 >> 
0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($90 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($90 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $92 = $52;
+     $93 = $92;
+     SAFE_HEAP_STORE($93 >> 0 | 0, $88 & 255 | 0, 1);
+     SAFE_HEAP_STORE($93 + 1 >> 0 | 0, $88 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($93 + 2 >> 0 | 0, $88 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($93 + 3 >> 0 | 0, $88 >> 24 | 0, 1);
+     $94 = $92 + 4 | 0;
+     $95 = $94;
+     SAFE_HEAP_STORE($95 >> 0 | 0, $91 & 255 | 0, 1);
+     SAFE_HEAP_STORE($95 + 1 >> 0 | 0, $91 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($95 + 2 >> 0 | 0, $91 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($95 + 3 >> 0 | 0, $91 >> 24 | 0, 1);
+     $96 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $97 = $96 + 40 | 0;
+     $98 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+     $99 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($98 | 0, 127 | 0) | 0) & 
127]($53, $18, $18) | 0;
+     $100 = $99 >>> 0 > $$191$us >>> 0;
+     $101 = $100 ? $99 : $$191$us;
+     $102 = $103 + -1 << 24 >> 24;
+     SAFE_HEAP_STORE($34 >> 0 | 0, $102 | 0, 1);
+     $104 = $103 << 24 >> 24 == 0;
+     $105 = $78 & 255;
+     $106 = $81 & 255;
+     if ($104) {
+      $107 = $108 + -1 << 24 >> 24;
+      SAFE_HEAP_STORE($37 >> 0 | 0, $107 | 0, 1);
+      $109 = $108 << 24 >> 24 == 0;
+      if ($109) {
+       $250 = $251 + -1 << 24 >> 24;
+       SAFE_HEAP_STORE($40 >> 0 | 0, $250 | 0, 1);
+       $252 = $251 << 24 >> 24 == 0;
+       if ($252) {
+        $253 = $106 + -1 << 24 >> 24;
+        SAFE_HEAP_STORE($43 >> 0 | 0, $253 | 0, 1);
+        $254 = $106 << 24 >> 24 == 0;
+        if ($254) {
+         $255 = $256 + -1 << 24 >> 24;
+         SAFE_HEAP_STORE($54 >> 0 | 0, $255 | 0, 1);
+         $257 = $256 << 24 >> 24 == 0;
+         if ($257) {
+          $258 = $259 + -1 << 24 >> 24;
+          SAFE_HEAP_STORE($55 >> 0 | 0, $258 | 0, 1);
+          $260 = $259 << 24 >> 24 == 0;
+          if ($260) {
+           $261 = $262 + -1 << 24 >> 24;
+           SAFE_HEAP_STORE($56 >> 0 | 0, $261 | 0, 1);
+           $263 = $262 << 24 >> 24 == 0;
+           if ($263) {
+            $264 = $105 + -1 << 24 >> 24;
+            SAFE_HEAP_STORE($5 >> 0 | 0, $264 | 0, 1);
+            $285 = $264;
+            $286 = $253;
+            $287 = $250;
+            $288 = $107;
+            $289 = $255;
+            $290 = $258;
+            $291 = $261;
+           } else {
+            $285 = $105;
+            $286 = $253;
+            $287 = $250;
+            $288 = $107;
+            $289 = $255;
+            $290 = $258;
+            $291 = $261;
+           }
+          } else {
+           $285 = $105;
+           $286 = $253;
+           $287 = $250;
+           $288 = $107;
+           $289 = $255;
+           $290 = $258;
+           $291 = $262;
+          }
+         } else {
+          $285 = $105;
+          $286 = $253;
+          $287 = $250;
+          $288 = $107;
+          $289 = $255;
+          $290 = $259;
+          $291 = $262;
+         }
+        } else {
+         $285 = $105;
+         $286 = $253;
+         $287 = $250;
+         $288 = $107;
+         $289 = $256;
+         $290 = $259;
+         $291 = $262;
+        }
+       } else {
+        $285 = $105;
+        $286 = $106;
+        $287 = $250;
+        $288 = $107;
+        $289 = $256;
+        $290 = $259;
+        $291 = $262;
+       }
+      } else {
+       $285 = $105;
+       $286 = $106;
+       $287 = $251;
+       $288 = $107;
+       $289 = $256;
+       $290 = $259;
+       $291 = $262;
+      }
+     } else {
+      $285 = $105;
+      $286 = $106;
+      $287 = $251;
+      $288 = $108;
+      $289 = $256;
+      $290 = $259;
+      $291 = $262;
+     }
+     $110 = $18;
+     $111 = $110;
+     $112 = SAFE_HEAP_LOAD($111 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($111 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($111 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($111 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $113 = $110 + 4 | 0;
+     $114 = $113;
+     $115 = SAFE_HEAP_LOAD($114 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($114 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($114 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($114 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $116 = $17;
+     $117 = $116;
+     SAFE_HEAP_STORE($117 >> 0 | 0, $112 & 255 | 0, 1);
+     SAFE_HEAP_STORE($117 + 1 >> 0 | 0, $112 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($117 + 2 >> 0 | 0, $112 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($117 + 3 >> 0 | 0, $112 >> 24 | 0, 1);
+     $118 = $116 + 4 | 0;
+     $119 = $118;
+     SAFE_HEAP_STORE($119 >> 0 | 0, $115 & 255 | 0, 1);
+     SAFE_HEAP_STORE($119 + 1 >> 0 | 0, $115 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($119 + 2 >> 0 | 0, $115 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($119 + 3 >> 0 | 0, $115 >> 24 | 0, 1);
+     $120 = $52;
+     $121 = $120;
+     $122 = SAFE_HEAP_LOAD($121 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($121 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($121 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($121 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $123 = $120 + 4 | 0;
+     $124 = $123;
+     $125 = SAFE_HEAP_LOAD($124 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($124 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($124 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($124 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $126 = $85;
+     $127 = $126;
+     SAFE_HEAP_STORE($127 >> 0 | 0, $122 & 255 | 0, 1);
+     SAFE_HEAP_STORE($127 + 1 >> 0 | 0, $122 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($127 + 2 >> 0 | 0, $122 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($127 + 3 >> 0 | 0, $122 >> 24 | 0, 1);
+     $128 = $126 + 4 | 0;
+     $129 = $128;
+     SAFE_HEAP_STORE($129 >> 0 | 0, $125 & 255 | 0, 1);
+     SAFE_HEAP_STORE($129 + 1 >> 0 | 0, $125 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($129 + 2 >> 0 | 0, $125 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($129 + 3 >> 0 | 0, $125 >> 24 | 0, 1);
+     $130 = $$08490$us + -1 | 0;
+     $131 = ($130 | 0) == 0;
+     if ($131) {
+      $$1$lcssa = $101;
+      $275 = $285;
+      $276 = $286;
+      $277 = $287;
+      $278 = $288;
+      $279 = $102;
+      $280 = $286;
+      $281 = $289;
+      $282 = $290;
+      $283 = $291;
+      $284 = $285;
+      break;
+     } else {
+      $$08490$us = $130;
+      $$191$us = $101;
+      $103 = $102;
+      $108 = $288;
+      $251 = $287;
+      $256 = $289;
+      $259 = $290;
+      $262 = $291;
+     }
+    }
+   } else {
+    $$08490 = $31;
+    $$191 = $$07993;
+    $134 = $274;
+    $137 = $273;
+    $140 = $272;
+    $143 = $271;
+    $146 = $270;
+    $176 = $269;
+    $179 = $268;
+    $237 = $267;
+    $240 = $266;
+    $249 = $265;
+    while (1) {
+     $132 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+     $133 = $134 ^ $132;
+     SAFE_HEAP_STORE($18 >> 0 | 0, $133 | 0, 1);
+     $135 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+     $136 = $137 ^ $135;
+     SAFE_HEAP_STORE($58 >> 0 | 0, $136 | 0, 1);
+     $138 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+     $139 = $140 ^ $138;
+     SAFE_HEAP_STORE($60 >> 0 | 0, $139 | 0, 1);
+     $141 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+     $142 = $143 ^ $141;
+     SAFE_HEAP_STORE($62 >> 0 | 0, $142 | 0, 1);
+     $144 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+     $145 = $146 ^ $144;
+     SAFE_HEAP_STORE($64 >> 0 | 0, $145 | 0, 1);
+     $147 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+     $148 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+     $149 = $148 ^ $147;
+     SAFE_HEAP_STORE($67 >> 0 | 0, $149 | 0, 1);
+     $150 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+     $151 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+     $152 = $151 ^ $150;
+     SAFE_HEAP_STORE($70 >> 0 | 0, $152 | 0, 1);
+     $153 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+     $154 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+     $155 = $154 ^ $153;
+     SAFE_HEAP_STORE($73 >> 0 | 0, $155 | 0, 1);
+     $156 = $$08490 << 3;
+     $157 = $156 + -8 | 0;
+     $158 = $1 + $157 | 0;
+     $159 = $158;
+     $160 = $159;
+     $161 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($160 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($160 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($160 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $162 = $159 + 4 | 0;
+     $163 = $162;
+     $164 = SAFE_HEAP_LOAD($163 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($163 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($163 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($163 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $165 = $52;
+     $166 = $165;
+     SAFE_HEAP_STORE($166 >> 0 | 0, $161 & 255 | 0, 1);
+     SAFE_HEAP_STORE($166 + 1 >> 0 | 0, $161 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($166 + 2 >> 0 | 0, $161 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($166 + 3 >> 0 | 0, $161 >> 24 | 0, 1);
+     $167 = $165 + 4 | 0;
+     $168 = $167;
+     SAFE_HEAP_STORE($168 >> 0 | 0, $164 & 255 | 0, 1);
+     SAFE_HEAP_STORE($168 + 1 >> 0 | 0, $164 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($168 + 2 >> 0 | 0, $164 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($168 + 3 >> 0 | 0, $164 >> 24 | 0, 1);
+     $169 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $170 = $169 + 40 | 0;
+     $171 = SAFE_HEAP_LOAD($170 | 0, 4, 0) | 0 | 0;
+     $172 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($171 | 0, 127 | 0) | 0) & 
127]($53, $18, $18) | 0;
+     $173 = $172 >>> 0 > $$191 >>> 0;
+     $174 = $173 ? $172 : $$191;
+     $175 = $176 + -1 << 24 >> 24;
+     SAFE_HEAP_STORE($34 >> 0 | 0, $175 | 0, 1);
+     $177 = $176 << 24 >> 24 == 0;
+     if ($177) {
+      $178 = $179 + -1 << 24 >> 24;
+      SAFE_HEAP_STORE($37 >> 0 | 0, $178 | 0, 1);
+      $180 = $179 << 24 >> 24 == 0;
+      if ($180) {
+       $236 = $237 + -1 << 24 >> 24;
+       SAFE_HEAP_STORE($40 >> 0 | 0, $236 | 0, 1);
+       $238 = $237 << 24 >> 24 == 0;
+       if ($238) {
+        $239 = $240 + -1 << 24 >> 24;
+        SAFE_HEAP_STORE($43 >> 0 | 0, $239 | 0, 1);
+        $241 = $240 << 24 >> 24 == 0;
+        if ($241) {
+         $242 = $143 + -1 << 24 >> 24;
+         SAFE_HEAP_STORE($74 >> 0 | 0, $242 | 0, 1);
+         $243 = $143 << 24 >> 24 == 0;
+         if ($243) {
+          $244 = $140 + -1 << 24 >> 24;
+          SAFE_HEAP_STORE($75 >> 0 | 0, $244 | 0, 1);
+          $245 = $140 << 24 >> 24 == 0;
+          if ($245) {
+           $246 = $137 + -1 << 24 >> 24;
+           SAFE_HEAP_STORE($76 >> 0 | 0, $246 | 0, 1);
+           $247 = $137 << 24 >> 24 == 0;
+           if ($247) {
+            $248 = $249 + -1 << 24 >> 24;
+            SAFE_HEAP_STORE($5 >> 0 | 0, $248 | 0, 1);
+            $292 = $248;
+            $293 = $239;
+            $294 = $236;
+            $295 = $178;
+            $296 = $239;
+            $297 = $242;
+            $298 = $244;
+            $299 = $246;
+            $300 = $248;
+           } else {
+            $292 = $249;
+            $293 = $239;
+            $294 = $236;
+            $295 = $178;
+            $296 = $239;
+            $297 = $242;
+            $298 = $244;
+            $299 = $246;
+            $300 = $134;
+           }
+          } else {
+           $292 = $249;
+           $293 = $239;
+           $294 = $236;
+           $295 = $178;
+           $296 = $239;
+           $297 = $242;
+           $298 = $244;
+           $299 = $137;
+           $300 = $134;
+          }
+         } else {
+          $292 = $249;
+          $293 = $239;
+          $294 = $236;
+          $295 = $178;
+          $296 = $239;
+          $297 = $242;
+          $298 = $140;
+          $299 = $137;
+          $300 = $134;
+         }
+        } else {
+         $292 = $249;
+         $293 = $239;
+         $294 = $236;
+         $295 = $178;
+         $296 = $239;
+         $297 = $143;
+         $298 = $140;
+         $299 = $137;
+         $300 = $134;
+        }
+       } else {
+        $292 = $249;
+        $293 = $240;
+        $294 = $236;
+        $295 = $178;
+        $296 = $146;
+        $297 = $143;
+        $298 = $140;
+        $299 = $137;
+        $300 = $134;
+       }
+      } else {
+       $292 = $249;
+       $293 = $240;
+       $294 = $237;
+       $295 = $178;
+       $296 = $146;
+       $297 = $143;
+       $298 = $140;
+       $299 = $137;
+       $300 = $134;
+      }
+     } else {
+      $292 = $249;
+      $293 = $240;
+      $294 = $237;
+      $295 = $179;
+      $296 = $146;
+      $297 = $143;
+      $298 = $140;
+      $299 = $137;
+      $300 = $134;
+     }
+     $181 = $18;
+     $182 = $181;
+     $183 = SAFE_HEAP_LOAD($182 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($182 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($182 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($182 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $184 = $181 + 4 | 0;
+     $185 = $184;
+     $186 = SAFE_HEAP_LOAD($185 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($185 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($185 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($185 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $187 = $17;
+     $188 = $187;
+     SAFE_HEAP_STORE($188 >> 0 | 0, $183 & 255 | 0, 1);
+     SAFE_HEAP_STORE($188 + 1 >> 0 | 0, $183 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($188 + 2 >> 0 | 0, $183 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($188 + 3 >> 0 | 0, $183 >> 24 | 0, 1);
+     $189 = $187 + 4 | 0;
+     $190 = $189;
+     SAFE_HEAP_STORE($190 >> 0 | 0, $186 & 255 | 0, 1);
+     SAFE_HEAP_STORE($190 + 1 >> 0 | 0, $186 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($190 + 2 >> 0 | 0, $186 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($190 + 3 >> 0 | 0, $186 >> 24 | 0, 1);
+     $191 = $52;
+     $192 = $191;
+     $193 = SAFE_HEAP_LOAD($192 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($192 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($192 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($192 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $194 = $191 + 4 | 0;
+     $195 = $194;
+     $196 = SAFE_HEAP_LOAD($195 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($195 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($195 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($195 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $197 = $158;
+     $198 = $197;
+     SAFE_HEAP_STORE($198 >> 0 | 0, $193 & 255 | 0, 1);
+     SAFE_HEAP_STORE($198 + 1 >> 0 | 0, $193 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($198 + 2 >> 0 | 0, $193 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($198 + 3 >> 0 | 0, $193 >> 24 | 0, 1);
+     $199 = $197 + 4 | 0;
+     $200 = $199;
+     SAFE_HEAP_STORE($200 >> 0 | 0, $196 & 255 | 0, 1);
+     SAFE_HEAP_STORE($200 + 1 >> 0 | 0, $196 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($200 + 2 >> 0 | 0, $196 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($200 + 3 >> 0 | 0, $196 >> 24 | 0, 1);
+     $201 = $$08490 + -1 | 0;
+     $202 = ($201 | 0) == 0;
+     if ($202) {
+      $$1$lcssa = $174;
+      $275 = $292;
+      $276 = $293;
+      $277 = $294;
+      $278 = $295;
+      $279 = $175;
+      $280 = $296;
+      $281 = $297;
+      $282 = $298;
+      $283 = $299;
+      $284 = $300;
+      break;
+     } else {
+      $$08490 = $201;
+      $$191 = $174;
+      $134 = $300;
+      $137 = $299;
+      $140 = $298;
+      $143 = $297;
+      $146 = $296;
+      $176 = $175;
+      $179 = $295;
+      $237 = $294;
+      $240 = $293;
+      $249 = $292;
+     }
+    }
+   }
+  }
+  $203 = $$08092 + -1 | 0;
+  $204 = ($$08092 | 0) > 0;
+  if ($204) {
+   $$07993 = $$1$lcssa;
+   $$08092 = $203;
+   $265 = $275;
+   $266 = $276;
+   $267 = $277;
+   $268 = $278;
+   $269 = $279;
+   $270 = $280;
+   $271 = $281;
+   $272 = $282;
+   $273 = $283;
+   $274 = $284;
+  } else {
+   break;
+  }
+ }
+ $205 = $0 + 56 | 0;
+ $206 = SAFE_HEAP_LOAD($205 >> 0 | 0, 1, 0) | 0 | 0;
+ $207 = $206 & 2;
+ $208 = $207 << 24 >> 24 == 0;
+ if ($208) {
+  $209 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+  $210 = $209 << 24 >> 24 == -90;
+  if ($210) {
+   $213 = $0 + 97 | 0;
+   $214 = SAFE_HEAP_LOAD($213 >> 0 | 0, 1, 0) | 0 | 0;
+   $215 = $214 << 24 >> 24 == -90;
+   if ($215) {
+    $220 = $0 + 98 | 0;
+    $221 = SAFE_HEAP_LOAD($220 >> 0 | 0, 1, 0) | 0 | 0;
+    $222 = $221 << 24 >> 24 == -90;
+    if ($222) {
+     $223 = $0 + 99 | 0;
+     $224 = SAFE_HEAP_LOAD($223 >> 0 | 0, 1, 0) | 0 | 0;
+     $225 = $224 << 24 >> 24 == -90;
+     if ($225) {
+      $226 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+      $227 = $226 << 24 >> 24 == -90;
+      if ($227) {
+       $228 = $0 + 101 | 0;
+       $229 = SAFE_HEAP_LOAD($228 >> 0 | 0, 1, 0) | 0 | 0;
+       $230 = $229 << 24 >> 24 == -90;
+       if ($230) {
+        $231 = $0 + 102 | 0;
+        $232 = SAFE_HEAP_LOAD($231 >> 0 | 0, 1, 0) | 0 | 0;
+        $233 = $232 << 24 >> 24 == -90;
+        if ($233) {
+         $234 = $0 + 103 | 0;
+         $235 = SAFE_HEAP_LOAD($234 >> 0 | 0, 1, 0) | 0 | 0;
+         $not$ = $235 << 24 >> 24 != -90;
+         $$ = $not$ & 1;
+         $$181 = $$;
+        } else {
+         $$181 = 1;
+        }
+       } else {
+        $$181 = 1;
+       }
+      } else {
+       $$181 = 1;
+      }
+     } else {
+      $$181 = 1;
+     }
+    } else {
+     $$181 = 1;
+    }
+   } else {
+    $$181 = 1;
+   }
+  } else {
+   $$181 = 1;
+  }
+ } else {
+  $211 = $0 + 64 | 0;
+  $212 = _memcmp($17, $211, 8) | 0;
+  $$181 = $212;
+ }
+ $216 = ($$1$lcssa | 0) == 0;
+ if (!$216) {
+  $217 = $$1$lcssa + 16 | 0;
+  ___gcry_burn_stack($217);
+ }
+ $218 = ($$181 | 0) != 0;
+ $219 = $218 ? 10 : 0;
+ $$0 = $219;
+ STACKTOP = sp;
+ return $$0 | 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, $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, $267 = 0, $268 = 0, $269 
= 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0;
+ var $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, $290 = 0;
+ var $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, $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, 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = $7 + 20 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+ $20 = $19 & 2;
+ $21 = $20 << 24 >> 24 == 0;
+ if ($21) {
+  $33 = $1;
+  $34 = $33;
+  SAFE_HEAP_STORE($34 >> 0 | 0, -1499027802 & 255 | 0, 1);
+  SAFE_HEAP_STORE($34 + 1 >> 0 | 0, -1499027802 >> 8 & 255 | 0, 1);
+  SAFE_HEAP_STORE($34 + 2 >> 0 | 0, -1499027802 >> 16 & 255 | 0, 1);
+  SAFE_HEAP_STORE($34 + 3 >> 0 | 0, -1499027802 >> 24 | 0, 1);
+  $35 = $33 + 4 | 0;
+  $36 = $35;
+  SAFE_HEAP_STORE($36 >> 0 | 0, -1499027802 & 255 | 0, 1);
+  SAFE_HEAP_STORE($36 + 1 >> 0 | 0, -1499027802 >> 8 & 255 | 0, 1);
+  SAFE_HEAP_STORE($36 + 2 >> 0 | 0, -1499027802 >> 16 & 255 | 0, 1);
+  SAFE_HEAP_STORE($36 + 3 >> 0 | 0, -1499027802 >> 24 | 0, 1);
+  $$pre$phiZ2D = $1;
+ } else {
+  $22 = $0 + 64 | 0;
+  $23 = $22;
+  $24 = $23;
+  $25 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($24 + 1 >> 0 
| 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($24 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($24 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+  $26 = $23 + 4 | 0;
+  $27 = $26;
+  $28 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($27 + 1 >> 0 
| 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($27 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($27 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+  $29 = $1;
+  $30 = $29;
+  SAFE_HEAP_STORE($30 >> 0 | 0, $25 & 255 | 0, 1);
+  SAFE_HEAP_STORE($30 + 1 >> 0 | 0, $25 >> 8 & 255 | 0, 1);
+  SAFE_HEAP_STORE($30 + 2 >> 0 | 0, $25 >> 16 & 255 | 0, 1);
+  SAFE_HEAP_STORE($30 + 3 >> 0 | 0, $25 >> 24 | 0, 1);
+  $31 = $29 + 4 | 0;
+  $32 = $31;
+  SAFE_HEAP_STORE($32 >> 0 | 0, $28 & 255 | 0, 1);
+  SAFE_HEAP_STORE($32 + 1 >> 0 | 0, $28 >> 8 & 255 | 0, 1);
+  SAFE_HEAP_STORE($32 + 2 >> 0 | 0, $28 >> 16 & 255 | 0, 1);
+  SAFE_HEAP_STORE($32 + 3 >> 0 | 0, $28 >> 24 | 0, 1);
+  $$pre$phiZ2D = $1;
+ }
+ $37 = $1 + 8 | 0;
+ _memmove($37 | 0, $3 | 0, $4 | 0) | 0;
+ $38 = $5;
+ $39 = $38;
+ SAFE_HEAP_STORE($39 | 0, 0 | 0, 4);
+ $40 = $38 + 4 | 0;
+ $41 = $40;
+ SAFE_HEAP_STORE($41 | 0, 0 | 0, 4);
+ $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 = $17 + 1 | 0;
+ $54 = $5 + 7 | 0;
+ $55 = $5 + 6 | 0;
+ $56 = $5 + 5 | 0;
+ $57 = $5 + 4 | 0;
+ $58 = $5 + 3 | 0;
+ $59 = $5 + 2 | 0;
+ $60 = $5 + 1 | 0;
+ $61 = $1 + 1 | 0;
+ $62 = $17 + 2 | 0;
+ $63 = $1 + 2 | 0;
+ $64 = $17 + 3 | 0;
+ $65 = $1 + 3 | 0;
+ $66 = $17 + 4 | 0;
+ $67 = $1 + 4 | 0;
+ $68 = $17 + 5 | 0;
+ $69 = $5 + 5 | 0;
+ $70 = $1 + 5 | 0;
+ $71 = $17 + 6 | 0;
+ $72 = $5 + 6 | 0;
+ $73 = $1 + 6 | 0;
+ $74 = $17 + 7 | 0;
+ $75 = $5 + 7 | 0;
+ $76 = $1 + 7 | 0;
+ $77 = $5 + 7 | 0;
+ $78 = $5 + 6 | 0;
+ $79 = $5 + 5 | 0;
+ $80 = $5 + 4 | 0;
+ $81 = $5 + 3 | 0;
+ $82 = $5 + 2 | 0;
+ $83 = $5 + 1 | 0;
+ $$06169 = 0;
+ $$06268 = 0;
+ $245 = 0;
+ $246 = 0;
+ $247 = 0;
+ $248 = 0;
+ $249 = 0;
+ $250 = 0;
+ $251 = 0;
+ $252 = 0;
+ $253 = 0;
+ $254 = 0;
+ $255 = 0;
+ $256 = 0;
+ $257 = 0;
+ $258 = 0;
+ while (1) {
+  if ($42) {
+   $$1$lcssa = $$06169;
+   $259 = $245;
+   $260 = $246;
+   $261 = $247;
+   $262 = $248;
+   $263 = $249;
+   $264 = $250;
+   $265 = $251;
+   $266 = $252;
+   $267 = $253;
+   $268 = $254;
+   $269 = $255;
+   $270 = $256;
+   $271 = $257;
+   $272 = $258;
+  } else {
+   if ($49) {
+    $$06466$us = 1;
+    $$167$us = $$06169;
+    $113 = $258;
+    $116 = $248;
+    $229 = $247;
+    $232 = $246;
+    $235 = $254;
+    $238 = $253;
+    $241 = $252;
+    $244 = $245;
+    $273 = $256;
+    $274 = $257;
+    while (1) {
+     $84 = $$pre$phiZ2D;
+     $85 = $84;
+     $86 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($85 + 1 >> 
0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($85 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($85 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $87 = $84 + 4 | 0;
+     $88 = $87;
+     $89 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($88 + 1 >> 
0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($88 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($88 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $90 = $17;
+     $91 = $90;
+     SAFE_HEAP_STORE($91 >> 0 | 0, $86 & 255 | 0, 1);
+     SAFE_HEAP_STORE($91 + 1 >> 0 | 0, $86 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($91 + 2 >> 0 | 0, $86 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($91 + 3 >> 0 | 0, $86 >> 24 | 0, 1);
+     $92 = $90 + 4 | 0;
+     $93 = $92;
+     SAFE_HEAP_STORE($93 >> 0 | 0, $89 & 255 | 0, 1);
+     SAFE_HEAP_STORE($93 + 1 >> 0 | 0, $89 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($93 + 2 >> 0 | 0, $89 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($93 + 3 >> 0 | 0, $89 >> 24 | 0, 1);
+     $94 = $$06466$us << 3;
+     $95 = $1 + $94 | 0;
+     $96 = $95;
+     $97 = $96;
+     $98 = SAFE_HEAP_LOAD($97 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($97 + 1 >> 
0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($97 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($97 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $99 = $96 + 4 | 0;
+     $100 = $99;
+     $101 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($100 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($100 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($100 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $102 = $43;
+     $103 = $102;
+     SAFE_HEAP_STORE($103 >> 0 | 0, $98 & 255 | 0, 1);
+     SAFE_HEAP_STORE($103 + 1 >> 0 | 0, $98 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($103 + 2 >> 0 | 0, $98 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($103 + 3 >> 0 | 0, $98 >> 24 | 0, 1);
+     $104 = $102 + 4 | 0;
+     $105 = $104;
+     SAFE_HEAP_STORE($105 >> 0 | 0, $101 & 255 | 0, 1);
+     SAFE_HEAP_STORE($105 + 1 >> 0 | 0, $101 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($105 + 2 >> 0 | 0, $101 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($105 + 3 >> 0 | 0, $101 >> 24 | 0, 1);
+     $106 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $107 = $106 + 36 | 0;
+     $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+     $109 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($108 | 0, 127 | 0) | 0) & 
127]($44, $17, $17) | 0;
+     $110 = $109 >>> 0 > $$167$us >>> 0;
+     $111 = $110 ? $109 : $$167$us;
+     $112 = $113 + 1 << 24 >> 24;
+     SAFE_HEAP_STORE($77 >> 0 | 0, $112 | 0, 1);
+     $114 = $112 << 24 >> 24 == 0;
+     if ($114) {
+      $115 = $116 + 1 << 24 >> 24;
+      SAFE_HEAP_STORE($78 >> 0 | 0, $115 | 0, 1);
+      $117 = $115 << 24 >> 24 == 0;
+      if ($117) {
+       $228 = $229 + 1 << 24 >> 24;
+       SAFE_HEAP_STORE($79 >> 0 | 0, $228 | 0, 1);
+       $230 = $228 << 24 >> 24 == 0;
+       if ($230) {
+        $231 = $232 + 1 << 24 >> 24;
+        SAFE_HEAP_STORE($80 >> 0 | 0, $231 | 0, 1);
+        $233 = $231 << 24 >> 24 == 0;
+        if ($233) {
+         $234 = $235 + 1 << 24 >> 24;
+         SAFE_HEAP_STORE($81 >> 0 | 0, $234 | 0, 1);
+         $236 = $234 << 24 >> 24 == 0;
+         if ($236) {
+          $237 = $238 + 1 << 24 >> 24;
+          SAFE_HEAP_STORE($82 >> 0 | 0, $237 | 0, 1);
+          $239 = $237 << 24 >> 24 == 0;
+          if ($239) {
+           $240 = $241 + 1 << 24 >> 24;
+           SAFE_HEAP_STORE($83 >> 0 | 0, $240 | 0, 1);
+           $242 = $240 << 24 >> 24 == 0;
+           if ($242) {
+            $243 = $244 + 1 << 24 >> 24;
+            SAFE_HEAP_STORE($5 >> 0 | 0, $243 | 0, 1);
+            $281 = 0;
+            $282 = 0;
+            $283 = 0;
+            $284 = 0;
+            $285 = 0;
+            $286 = 0;
+            $287 = 0;
+           } else {
+            $281 = 0;
+            $282 = 0;
+            $283 = $240;
+            $284 = 0;
+            $285 = 0;
+            $286 = 0;
+            $287 = 0;
+           }
+          } else {
+           $281 = 0;
+           $282 = 0;
+           $283 = $241;
+           $284 = $237;
+           $285 = 0;
+           $286 = 0;
+           $287 = 0;
+          }
+         } else {
+          $281 = 0;
+          $282 = 0;
+          $283 = $241;
+          $284 = $238;
+          $285 = $234;
+          $286 = 0;
+          $287 = 0;
+         }
+        } else {
+         $281 = 0;
+         $282 = 0;
+         $283 = $241;
+         $284 = $238;
+         $285 = $235;
+         $286 = 0;
+         $287 = 0;
+        }
+       } else {
+        $281 = $228;
+        $282 = 0;
+        $283 = $241;
+        $284 = $238;
+        $285 = $235;
+        $286 = $228;
+        $287 = 0;
+       }
+      } else {
+       $281 = $229;
+       $282 = $115;
+       $283 = $241;
+       $284 = $238;
+       $285 = $235;
+       $286 = $273;
+       $287 = $115;
+      }
+     } else {
+      $281 = $229;
+      $282 = $116;
+      $283 = $241;
+      $284 = $238;
+      $285 = $235;
+      $286 = $273;
+      $287 = $274;
+     }
+     $118 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+     $119 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $120 = $119 ^ $118;
+     SAFE_HEAP_STORE($1 | 0, $120 | 0, 4);
+     $121 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+     $122 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+     $123 = $122 ^ $121;
+     SAFE_HEAP_STORE($52 | 0, $123 | 0, 4);
+     $124 = $43;
+     $125 = $124;
+     $126 = SAFE_HEAP_LOAD($125 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($125 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($125 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($125 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $127 = $124 + 4 | 0;
+     $128 = $127;
+     $129 = SAFE_HEAP_LOAD($128 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($128 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($128 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($128 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $130 = $95;
+     $131 = $130;
+     SAFE_HEAP_STORE($131 >> 0 | 0, $126 & 255 | 0, 1);
+     SAFE_HEAP_STORE($131 + 1 >> 0 | 0, $126 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($131 + 2 >> 0 | 0, $126 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($131 + 3 >> 0 | 0, $126 >> 24 | 0, 1);
+     $132 = $130 + 4 | 0;
+     $133 = $132;
+     SAFE_HEAP_STORE($133 >> 0 | 0, $129 & 255 | 0, 1);
+     SAFE_HEAP_STORE($133 + 1 >> 0 | 0, $129 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($133 + 2 >> 0 | 0, $129 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($133 + 3 >> 0 | 0, $129 >> 24 | 0, 1);
+     $134 = $$06466$us + 1 | 0;
+     $135 = $134 >>> 0 > $15 >>> 0;
+     $136 = $122 & 255;
+     $137 = $119 & 255;
+     if ($135) {
+      $$1$lcssa = $111;
+      $259 = $137;
+      $260 = $136;
+      $261 = $281;
+      $262 = $282;
+      $263 = $136;
+      $264 = $137;
+      $265 = $137;
+      $266 = $283;
+      $267 = $284;
+      $268 = $285;
+      $269 = $136;
+      $270 = $286;
+      $271 = $287;
+      $272 = $112;
+      break;
+     } else {
+      $$06466$us = $134;
+      $$167$us = $111;
+      $113 = $112;
+      $116 = $282;
+      $229 = $281;
+      $232 = $136;
+      $235 = $285;
+      $238 = $284;
+      $241 = $283;
+      $244 = $137;
+      $273 = $286;
+      $274 = $287;
+     }
+    }
+   } else {
+    $$06466 = 1;
+    $$167 = $$06169;
+    $167 = $258;
+    $170 = $257;
+    $212 = $256;
+    $215 = $255;
+    $218 = $254;
+    $221 = $253;
+    $224 = $252;
+    $227 = $251;
+    $275 = $245;
+    $276 = $246;
+    $277 = $247;
+    $278 = $248;
+    $279 = $249;
+    $280 = $250;
+    while (1) {
+     $138 = $$pre$phiZ2D;
+     $139 = $138;
+     $140 = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($139 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($139 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($139 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $141 = $138 + 4 | 0;
+     $142 = $141;
+     $143 = SAFE_HEAP_LOAD($142 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($142 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($142 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($142 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $144 = $17;
+     $145 = $144;
+     SAFE_HEAP_STORE($145 >> 0 | 0, $140 & 255 | 0, 1);
+     SAFE_HEAP_STORE($145 + 1 >> 0 | 0, $140 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($145 + 2 >> 0 | 0, $140 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($145 + 3 >> 0 | 0, $140 >> 24 | 0, 1);
+     $146 = $144 + 4 | 0;
+     $147 = $146;
+     SAFE_HEAP_STORE($147 >> 0 | 0, $143 & 255 | 0, 1);
+     SAFE_HEAP_STORE($147 + 1 >> 0 | 0, $143 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($147 + 2 >> 0 | 0, $143 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($147 + 3 >> 0 | 0, $143 >> 24 | 0, 1);
+     $148 = $$06466 << 3;
+     $149 = $1 + $148 | 0;
+     $150 = $149;
+     $151 = $150;
+     $152 = SAFE_HEAP_LOAD($151 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($151 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($151 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($151 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $153 = $150 + 4 | 0;
+     $154 = $153;
+     $155 = SAFE_HEAP_LOAD($154 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($154 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($154 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($154 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $156 = $43;
+     $157 = $156;
+     SAFE_HEAP_STORE($157 >> 0 | 0, $152 & 255 | 0, 1);
+     SAFE_HEAP_STORE($157 + 1 >> 0 | 0, $152 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($157 + 2 >> 0 | 0, $152 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($157 + 3 >> 0 | 0, $152 >> 24 | 0, 1);
+     $158 = $156 + 4 | 0;
+     $159 = $158;
+     SAFE_HEAP_STORE($159 >> 0 | 0, $155 & 255 | 0, 1);
+     SAFE_HEAP_STORE($159 + 1 >> 0 | 0, $155 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($159 + 2 >> 0 | 0, $155 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($159 + 3 >> 0 | 0, $155 >> 24 | 0, 1);
+     $160 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $161 = $160 + 36 | 0;
+     $162 = SAFE_HEAP_LOAD($161 | 0, 4, 0) | 0 | 0;
+     $163 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($162 | 0, 127 | 0) | 0) & 
127]($44, $17, $17) | 0;
+     $164 = $163 >>> 0 > $$167 >>> 0;
+     $165 = $164 ? $163 : $$167;
+     $166 = $167 + 1 << 24 >> 24;
+     SAFE_HEAP_STORE($54 >> 0 | 0, $166 | 0, 1);
+     $168 = $166 << 24 >> 24 == 0;
+     if ($168) {
+      $169 = $170 + 1 << 24 >> 24;
+      SAFE_HEAP_STORE($55 >> 0 | 0, $169 | 0, 1);
+      $171 = $169 << 24 >> 24 == 0;
+      if ($171) {
+       $211 = $212 + 1 << 24 >> 24;
+       SAFE_HEAP_STORE($56 >> 0 | 0, $211 | 0, 1);
+       $213 = $211 << 24 >> 24 == 0;
+       if ($213) {
+        $214 = $215 + 1 << 24 >> 24;
+        SAFE_HEAP_STORE($57 >> 0 | 0, $214 | 0, 1);
+        $216 = $214 << 24 >> 24 == 0;
+        if ($216) {
+         $217 = $218 + 1 << 24 >> 24;
+         SAFE_HEAP_STORE($58 >> 0 | 0, $217 | 0, 1);
+         $219 = $217 << 24 >> 24 == 0;
+         if ($219) {
+          $220 = $221 + 1 << 24 >> 24;
+          SAFE_HEAP_STORE($59 >> 0 | 0, $220 | 0, 1);
+          $222 = $220 << 24 >> 24 == 0;
+          if ($222) {
+           $223 = $224 + 1 << 24 >> 24;
+           SAFE_HEAP_STORE($60 >> 0 | 0, $223 | 0, 1);
+           $225 = $223 << 24 >> 24 == 0;
+           if ($225) {
+            $226 = $227 + 1 << 24 >> 24;
+            SAFE_HEAP_STORE($5 >> 0 | 0, $226 | 0, 1);
+            $174 = $226;
+            $177 = 0;
+            $180 = 0;
+            $183 = 0;
+            $186 = 0;
+            $288 = $226;
+            $289 = 0;
+            $290 = 0;
+            $291 = 0;
+            $292 = 0;
+            $293 = 0;
+           } else {
+            $174 = $280;
+            $177 = $223;
+            $180 = 0;
+            $183 = 0;
+            $186 = 0;
+            $288 = $275;
+            $289 = 0;
+            $290 = 0;
+            $291 = 0;
+            $292 = 0;
+            $293 = 0;
+           }
+          } else {
+           $174 = $280;
+           $177 = $224;
+           $180 = $220;
+           $183 = 0;
+           $186 = 0;
+           $288 = $275;
+           $289 = 0;
+           $290 = 0;
+           $291 = 0;
+           $292 = 0;
+           $293 = 0;
+          }
+         } else {
+          $174 = $280;
+          $177 = $224;
+          $180 = $221;
+          $183 = $217;
+          $186 = 0;
+          $288 = $275;
+          $289 = 0;
+          $290 = 0;
+          $291 = 0;
+          $292 = 0;
+          $293 = 0;
+         }
+        } else {
+         $174 = $280;
+         $177 = $224;
+         $180 = $221;
+         $183 = $218;
+         $186 = $214;
+         $288 = $275;
+         $289 = $214;
+         $290 = 0;
+         $291 = 0;
+         $292 = 0;
+         $293 = 0;
+        }
+       } else {
+        $174 = $280;
+        $177 = $224;
+        $180 = $221;
+        $183 = $218;
+        $186 = $279;
+        $288 = $275;
+        $289 = $276;
+        $290 = $211;
+        $291 = 0;
+        $292 = $211;
+        $293 = 0;
+       }
+      } else {
+       $174 = $280;
+       $177 = $224;
+       $180 = $221;
+       $183 = $218;
+       $186 = $279;
+       $288 = $275;
+       $289 = $276;
+       $290 = $277;
+       $291 = $169;
+       $292 = $212;
+       $293 = $169;
+      }
+     } else {
+      $174 = $280;
+      $177 = $224;
+      $180 = $221;
+      $183 = $218;
+      $186 = $279;
+      $288 = $275;
+      $289 = $276;
+      $290 = $277;
+      $291 = $278;
+      $292 = $212;
+      $293 = $170;
+     }
+     $172 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+     $173 = $174 ^ $172;
+     SAFE_HEAP_STORE($1 >> 0 | 0, $173 | 0, 1);
+     $175 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+     $176 = $177 ^ $175;
+     SAFE_HEAP_STORE($61 >> 0 | 0, $176 | 0, 1);
+     $178 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+     $179 = $180 ^ $178;
+     SAFE_HEAP_STORE($63 >> 0 | 0, $179 | 0, 1);
+     $181 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+     $182 = $183 ^ $181;
+     SAFE_HEAP_STORE($65 >> 0 | 0, $182 | 0, 1);
+     $184 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+     $185 = $186 ^ $184;
+     SAFE_HEAP_STORE($67 >> 0 | 0, $185 | 0, 1);
+     $187 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+     $188 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+     $189 = $188 ^ $187;
+     SAFE_HEAP_STORE($70 >> 0 | 0, $189 | 0, 1);
+     $190 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+     $191 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+     $192 = $191 ^ $190;
+     SAFE_HEAP_STORE($73 >> 0 | 0, $192 | 0, 1);
+     $193 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+     $194 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+     $195 = $194 ^ $193;
+     SAFE_HEAP_STORE($76 >> 0 | 0, $195 | 0, 1);
+     $196 = $43;
+     $197 = $196;
+     $198 = SAFE_HEAP_LOAD($197 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($197 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($197 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($197 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $199 = $196 + 4 | 0;
+     $200 = $199;
+     $201 = SAFE_HEAP_LOAD($200 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($200 + 1 
>> 0 | 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($200 + 2 >> 0 | 0, 1, 1) | 0) << 16 
| (SAFE_HEAP_LOAD($200 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+     $202 = $149;
+     $203 = $202;
+     SAFE_HEAP_STORE($203 >> 0 | 0, $198 & 255 | 0, 1);
+     SAFE_HEAP_STORE($203 + 1 >> 0 | 0, $198 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($203 + 2 >> 0 | 0, $198 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($203 + 3 >> 0 | 0, $198 >> 24 | 0, 1);
+     $204 = $202 + 4 | 0;
+     $205 = $204;
+     SAFE_HEAP_STORE($205 >> 0 | 0, $201 & 255 | 0, 1);
+     SAFE_HEAP_STORE($205 + 1 >> 0 | 0, $201 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($205 + 2 >> 0 | 0, $201 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($205 + 3 >> 0 | 0, $201 >> 24 | 0, 1);
+     $206 = $$06466 + 1 | 0;
+     $207 = $206 >>> 0 > $15 >>> 0;
+     if ($207) {
+      $$1$lcssa = $165;
+      $259 = $288;
+      $260 = $289;
+      $261 = $290;
+      $262 = $291;
+      $263 = $186;
+      $264 = $174;
+      $265 = $174;
+      $266 = $177;
+      $267 = $180;
+      $268 = $183;
+      $269 = $186;
+      $270 = $292;
+      $271 = $293;
+      $272 = $166;
+      break;
+     } else {
+      $$06466 = $206;
+      $$167 = $165;
+      $167 = $166;
+      $170 = $293;
+      $212 = $292;
+      $215 = $186;
+      $218 = $183;
+      $221 = $180;
+      $224 = $177;
+      $227 = $174;
+      $275 = $288;
+      $276 = $289;
+      $277 = $290;
+      $278 = $291;
+      $279 = $186;
+      $280 = $174;
+     }
+    }
+   }
+  }
+  $208 = $$06268 + 1 | 0;
+  $exitcond = ($208 | 0) == 6;
+  if ($exitcond) {
+   break;
+  } else {
+   $$06169 = $$1$lcssa;
+   $$06268 = $208;
+   $245 = $259;
+   $246 = $260;
+   $247 = $261;
+   $248 = $262;
+   $249 = $263;
+   $250 = $264;
+   $251 = $265;
+   $252 = $266;
+   $253 = $267;
+   $254 = $268;
+   $255 = $269;
+   $256 = $270;
+   $257 = $271;
+   $258 = $272;
+  }
+ }
+ $209 = ($$1$lcssa | 0) == 0;
+ if ($209) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $210 = $$1$lcssa + 16 | 0;
+ ___gcry_burn_stack($210);
+ $$0 = 0;
+ STACKTOP = sp;
+ 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, $$$v = 0, $$0$lcssa$i = 0, $$0$lcssa$i135 = 0, $$0$lcssa$i156 = 
0, $$0$lcssa$i183 = 0, $$0$lcssa$i208 = 0, $$0$lcssa$i231 = 0, $$0122246 = 0, 
$$0122246$us = 0, $$0125 = 0, $$0126245 = 0, $$0126245$us = 0, $$0128242 = 0, 
$$0129244 = 0, $$0129244$us = 0, $$0130243 = 0, $$0130243$us = 0, $$024$lcssa$i 
= 0, $$024$lcssa$i155 = 0;
+ var $$024$lcssa$i207 = 0, $$024$lcssa$i230 = 0, $$02432$i = 0, $$02432$i148 = 
0, $$02432$i200 = 0, $$02432$i223 = 0, $$025$lcssa$i = 0, $$025$lcssa$i154 = 0, 
$$025$lcssa$i206 = 0, $$025$lcssa$i229 = 0, $$02531$i = 0, $$02531$i149 = 0, 
$$02531$i201 = 0, $$02531$i224 = 0, $$026$ph$i = 0, $$026$ph$i159 = 0, 
$$026$ph$i211 = 0, $$026$ph$i234 = 0, $$02629$i = 0, $$02629$i163 = 0;
+ var $$02629$i215 = 0, $$02629$i238 = 0, $$027$ph$i = 0, $$027$ph$i158 = 0, 
$$027$ph$i210 = 0, $$027$ph$i233 = 0, $$02728$i = 0, $$02728$i164 = 0, 
$$02728$i216 = 0, $$02728$i239 = 0, $$033$i = 0, $$033$i147 = 0, $$033$i199 = 
0, $$033$i222 = 0, $$034$lcssa$i = 0, $$034$lcssa$i182 = 0, $$03446$i = 0, 
$$03446$i172 = 0, $$03545$i = 0, $$03545$i173 = 0;
+ var $$036$lcssa$i = 0, $$036$lcssa$i180 = 0, $$037$ph$i = 0, $$037$ph$i187 = 
0, $$03742$i = 0, $$03742$i191 = 0, $$03841$i = 0, $$03841$i192 = 0, $$039$ph$i 
= 0, $$039$ph$i185 = 0, $$03940$i = 0, $$03940$i193 = 0, $$047$i = 0, 
$$047$i171 = 0, $$050$ph$i$us = 0, $$05061$i = 0, $$05061$i$us = 0, 
$$05166$i$us = 0, $$05265$i$us = 0, $$05364$i$us = 0;
+ var $$05463$i$us = 0, $$055$ph$i$us = 0, $$05560$i = 0, $$05560$i$us = 0, 
$$056$ph$i$us = 0, $$05659$i = 0, $$05659$i$us = 0, $$057$ph$i$us = 0, 
$$05758$i = 0, $$05758$i$us = 0, $$067$i$us = 0, $$1 = 0, $$1$ph$i = 0, 
$$1$ph$i136 = 0, $$1$ph$i141$us = 0, $$1$ph$i160 = 0, $$1$ph$i188 = 0, 
$$1$ph$i212 = 0, $$1$ph$i235 = 0, $$1124 = 0;
+ var $$1127 = 0, $$1131 = 0, $$130$i = 0, $$130$i162 = 0, $$130$i214 = 0, 
$$130$i237 = 0, $$133 = 0, $$143$i = 0, $$143$i190 = 0, $$162$i = 0, $$162$i$us 
= 0, $$2 = 0, $$phi$trans$insert = 0, $$pre = 0, $$pre$phiZ2D = 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, $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, $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 $exitcond260 = 0, $exitcond263 = 0, $or$cond = 0, $or$cond132 = 0, 
$scevgep = 0, $scevgep$i = 0, $scevgep$i134 = 0, $scevgep$i139$us = 0, 
$scevgep$i144 = 0, $scevgep$i167 = 0, $scevgep$i196 = 0, $scevgep$i219 = 0, 
$scevgep259 = 0, $scevgep262 = 0, $scevgep42$i = 0, $scevgep42$i145 = 0, 
$scevgep42$i197 = 0, $scevgep42$i220 = 0, $scevgep58$i = 0, $scevgep58$i168 = 0;
+ var $scevgep80$i = 0, $scevgep82$i$us = 0, $scevgep84$i = 0, label = 0, sp = 
0;
+ sp = STACKTOP;
+ $5 = $0 + 12 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 20 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $6 + 40 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = ($4 >>> 0) / ($8 >>> 0) & -1;
+ $12 = $2 >>> 0 < $4 >>> 0;
+ if ($12) {
+  $$0125 = 200;
+  return $$0125 | 0;
+ }
+ $13 = ($4 >>> 0) % ($8 >>> 0) & -1;
+ $14 = ($13 | 0) == 0;
+ if ($14) {
+  $$phi$trans$insert = $0 + 52 | 0;
+  $$pre = SAFE_HEAP_LOAD($$phi$trans$insert | 0, 4, 0) | 0 | 0;
+  $$pre$phiZ2D = $$phi$trans$insert;
+  $21 = $$pre;
+ } else {
+  $15 = $8 >>> 0 < $4 >>> 0;
+  if (!$15) {
+   $$0125 = 139;
+   return $$0125 | 0;
+  }
+  $16 = $0 + 52 | 0;
+  $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+  $18 = $17 & 4;
+  $19 = ($18 | 0) == 0;
+  if ($19) {
+   $$0125 = 139;
+   return $$0125 | 0;
+  } else {
+   $$pre$phiZ2D = $16;
+   $21 = $17;
+  }
+ }
+ $20 = $21 & 4;
+ $22 = ($20 | 0) != 0;
+ $23 = $8 >>> 0 < $4 >>> 0;
+ $or$cond = $23 & $22;
+ if ($or$cond) {
+  $$$v = $14 ? -2 : -1;
+  $$ = $$$v + $11 | 0;
+  $24 = $0 + 96 | 0;
+  $25 = $0 + 64 | 0;
+  $26 = $24;
+  $27 = $25;
+  $28 = $27 | $26;
+  $29 = $28 & 3;
+  $30 = ($29 | 0) == 0;
+  if ($30) {
+   $31 = $8 >>> 0 > 3;
+   if ($31) {
+    $32 = $8 + -4 | 0;
+    $33 = $32 & -4;
+    $34 = $33 + 4 | 0;
+    $scevgep$i = $25 + $34 | 0;
+    $$02432$i = $25;
+    $$02531$i = $24;
+    $$033$i = $8;
+    while (1) {
+     $35 = $$02432$i + 4 | 0;
+     $36 = SAFE_HEAP_LOAD($$02432$i | 0, 4, 0) | 0 | 0;
+     $37 = $$02531$i + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i | 0, $36 | 0, 4);
+     $38 = $$033$i + -4 | 0;
+     $39 = $38 >>> 0 > 3;
+     if ($39) {
+      $$02432$i = $35;
+      $$02531$i = $37;
+      $$033$i = $38;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i = ($0 + 96 | 0) + $34 | 0;
+    $40 = $32 - $33 | 0;
+    $$0$lcssa$i = $40;
+    $$024$lcssa$i = $scevgep$i;
+    $$025$lcssa$i = $scevgep42$i;
+   } else {
+    $$0$lcssa$i = $8;
+    $$024$lcssa$i = $25;
+    $$025$lcssa$i = $24;
+   }
+   $$026$ph$i = $$024$lcssa$i;
+   $$027$ph$i = $$025$lcssa$i;
+   $$1$ph$i = $$0$lcssa$i;
+  } else {
+   $$026$ph$i = $25;
+   $$027$ph$i = $24;
+   $$1$ph$i = $8;
+  }
+  $41 = ($$1$ph$i | 0) == 0;
+  if ($41) {
+   $$1124 = $$;
+  } else {
+   $$02629$i = $$026$ph$i;
+   $$02728$i = $$027$ph$i;
+   $$130$i = $$1$ph$i;
+   while (1) {
+    $42 = $$02629$i + 1 | 0;
+    $43 = SAFE_HEAP_LOAD($$02629$i >> 0 | 0, 1, 0) | 0 | 0;
+    $44 = $$02728$i + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i >> 0 | 0, $43 | 0, 1);
+    $45 = $$130$i + -1 | 0;
+    $46 = ($45 | 0) == 0;
+    if ($46) {
+     $$1124 = $$;
+     break;
+    } else {
+     $$02629$i = $42;
+     $$02728$i = $44;
+     $$130$i = $45;
+    }
+   }
+  }
+ } else {
+  $$1124 = $11;
+ }
+ $47 = $0 + 32 | 0;
+ $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+ $49 = ($48 | 0) == (0 | 0);
+ do {
+  if ($49) {
+   $50 = ($$1124 | 0) == 0;
+   if ($50) {
+    $$1 = 0;
+    $$1127 = $1;
+    $$1131 = $3;
+   } else {
+    $51 = $0 + 496 | 0;
+    $52 = $0 + 96 | 0;
+    $53 = $0 + 64 | 0;
+    $54 = $52;
+    $55 = $53;
+    $56 = $55 | $54;
+    $57 = $8 >>> 0 > 3;
+    $58 = $8 + -4 | 0;
+    $59 = $58 & -4;
+    $60 = $59 + 4 | 0;
+    $scevgep80$i = ($0 + 96 | 0) + $60 | 0;
+    $scevgep84$i = $53 + $60 | 0;
+    $61 = $58 - $59 | 0;
+    $62 = Math_imul($$1124, $8) | 0;
+    $scevgep = $3 + $62 | 0;
+    if ($57) {
+     $$0122246$us = 0;
+     $$0126245$us = $1;
+     $$0129244$us = 0;
+     $$0130243$us = $3;
+    } else {
+     $63 = ($8 | 0) == 0;
+     $$0122246 = 0;
+     $$0126245 = $1;
+     $$0129244 = 0;
+     $$0130243 = $3;
+     while (1) {
+      $102 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 
127]($51, $52, $$0130243) | 0;
+      $103 = $102 >>> 0 > $$0122246 >>> 0;
+      $104 = $103 ? $102 : $$0122246;
+      if (!$63) {
+       $$05061$i = $$0126245;
+       $$05560$i = $53;
+       $$05659$i = $$0130243;
+       $$05758$i = $52;
+       $$162$i = $8;
+       while (1) {
+        $105 = $$05659$i + 1 | 0;
+        $106 = SAFE_HEAP_LOAD($$05659$i >> 0 | 0, 1, 0) | 0 | 0;
+        $107 = SAFE_HEAP_LOAD($$05560$i >> 0 | 0, 1, 0) | 0 | 0;
+        $108 = $$05758$i + 1 | 0;
+        $109 = SAFE_HEAP_LOAD($$05758$i >> 0 | 0, 1, 0) | 0 | 0;
+        $110 = $109 ^ $107;
+        $111 = $$05061$i + 1 | 0;
+        SAFE_HEAP_STORE($$05061$i >> 0 | 0, $110 | 0, 1);
+        $112 = $$05560$i + 1 | 0;
+        SAFE_HEAP_STORE($$05560$i >> 0 | 0, $106 | 0, 1);
+        $113 = $$162$i + -1 | 0;
+        $114 = ($113 | 0) == 0;
+        if ($114) {
+         break;
+        } else {
+         $$05061$i = $111;
+         $$05560$i = $112;
+         $$05659$i = $105;
+         $$05758$i = $108;
+         $$162$i = $113;
+        }
+       }
+      }
+      $115 = $$0130243 + $8 | 0;
+      $116 = $$0126245 + $8 | 0;
+      $117 = $$0129244 + 1 | 0;
+      $exitcond263 = ($117 | 0) == ($$1124 | 0);
+      if ($exitcond263) {
+       break;
+      } else {
+       $$0122246 = $104;
+       $$0126245 = $116;
+       $$0129244 = $117;
+       $$0130243 = $115;
+      }
+     }
+     $scevgep262 = $1 + $62 | 0;
+     $$1 = $104;
+     $$1127 = $scevgep262;
+     $$1131 = $scevgep;
+     break;
+    }
+    while (1) {
+     $64 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 
127]($51, $52, $$0130243$us) | 0;
+     $65 = $64 >>> 0 > $$0122246$us >>> 0;
+     $66 = $65 ? $64 : $$0122246$us;
+     $67 = $$0130243$us;
+     $68 = $$0126245$us;
+     $69 = $56 | $67;
+     $70 = $69 | $68;
+     $71 = $70 & 3;
+     $72 = ($71 | 0) == 0;
+     if ($72) {
+      $scevgep$i139$us = $$0130243$us + $60 | 0;
+      $$05166$i$us = $52;
+      $$05265$i$us = $$0130243$us;
+      $$05364$i$us = $53;
+      $$05463$i$us = $$0126245$us;
+      $$067$i$us = $8;
+      while (1) {
+       $73 = $$05265$i$us + 4 | 0;
+       $74 = SAFE_HEAP_LOAD($$05265$i$us | 0, 4, 0) | 0 | 0;
+       $75 = SAFE_HEAP_LOAD($$05364$i$us | 0, 4, 0) | 0 | 0;
+       $76 = $$05166$i$us + 4 | 0;
+       $77 = SAFE_HEAP_LOAD($$05166$i$us | 0, 4, 0) | 0 | 0;
+       $78 = $77 ^ $75;
+       $79 = $$05463$i$us + 4 | 0;
+       SAFE_HEAP_STORE($$05463$i$us | 0, $78 | 0, 4);
+       $80 = $$05364$i$us + 4 | 0;
+       SAFE_HEAP_STORE($$05364$i$us | 0, $74 | 0, 4);
+       $81 = $$067$i$us + -4 | 0;
+       $82 = $81 >>> 0 > 3;
+       if ($82) {
+        $$05166$i$us = $76;
+        $$05265$i$us = $73;
+        $$05364$i$us = $80;
+        $$05463$i$us = $79;
+        $$067$i$us = $81;
+       } else {
+        break;
+       }
+      }
+      $scevgep82$i$us = $$0126245$us + $60 | 0;
+      $$050$ph$i$us = $scevgep82$i$us;
+      $$055$ph$i$us = $scevgep84$i;
+      $$056$ph$i$us = $scevgep$i139$us;
+      $$057$ph$i$us = $scevgep80$i;
+      $$1$ph$i141$us = $61;
+     } else {
+      $$050$ph$i$us = $$0126245$us;
+      $$055$ph$i$us = $53;
+      $$056$ph$i$us = $$0130243$us;
+      $$057$ph$i$us = $52;
+      $$1$ph$i141$us = $8;
+     }
+     $83 = ($$1$ph$i141$us | 0) == 0;
+     if (!$83) {
+      $$05061$i$us = $$050$ph$i$us;
+      $$05560$i$us = $$055$ph$i$us;
+      $$05659$i$us = $$056$ph$i$us;
+      $$05758$i$us = $$057$ph$i$us;
+      $$162$i$us = $$1$ph$i141$us;
+      while (1) {
+       $84 = $$05659$i$us + 1 | 0;
+       $85 = SAFE_HEAP_LOAD($$05659$i$us >> 0 | 0, 1, 0) | 0 | 0;
+       $86 = SAFE_HEAP_LOAD($$05560$i$us >> 0 | 0, 1, 0) | 0 | 0;
+       $87 = $$05758$i$us + 1 | 0;
+       $88 = SAFE_HEAP_LOAD($$05758$i$us >> 0 | 0, 1, 0) | 0 | 0;
+       $89 = $88 ^ $86;
+       $90 = $$05061$i$us + 1 | 0;
+       SAFE_HEAP_STORE($$05061$i$us >> 0 | 0, $89 | 0, 1);
+       $91 = $$05560$i$us + 1 | 0;
+       SAFE_HEAP_STORE($$05560$i$us >> 0 | 0, $85 | 0, 1);
+       $92 = $$162$i$us + -1 | 0;
+       $93 = ($92 | 0) == 0;
+       if ($93) {
+        break;
+       } else {
+        $$05061$i$us = $90;
+        $$05560$i$us = $91;
+        $$05659$i$us = $84;
+        $$05758$i$us = $87;
+        $$162$i$us = $92;
+       }
+      }
+     }
+     $94 = $$0130243$us + $8 | 0;
+     $95 = $$0126245$us + $8 | 0;
+     $96 = $$0129244$us + 1 | 0;
+     $exitcond260 = ($96 | 0) == ($$1124 | 0);
+     if ($exitcond260) {
+      break;
+     } else {
+      $$0122246$us = $66;
+      $$0126245$us = $95;
+      $$0129244$us = $96;
+      $$0130243$us = $94;
+     }
+    }
+    $scevgep259 = $1 + $62 | 0;
+    $$1 = $66;
+    $$1127 = $scevgep259;
+    $$1131 = $scevgep;
+   }
+  } else {
+   $97 = $0 + 496 | 0;
+   $98 = $0 + 64 | 0;
+   FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($48 | 0, 127 | 0) | 0) & 127]($97, $98, 
$1, $3, $$1124);
+   $99 = Math_imul($$1124, $8) | 0;
+   $100 = $3 + $99 | 0;
+   $101 = $1 + $99 | 0;
+   $$1 = 0;
+   $$1127 = $101;
+   $$1131 = $100;
+  }
+ } while (0);
+ $118 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+ $119 = $118 & 4;
+ $120 = ($119 | 0) != 0;
+ $or$cond132 = $23 & $120;
+ if ($or$cond132) {
+  $$133 = $14 ? $8 : $13;
+  $121 = $0 + 96 | 0;
+  $122 = $0 + 64 | 0;
+  $123 = $121;
+  $124 = $122;
+  $125 = $124 | $123;
+  $126 = $125 & 3;
+  $127 = ($126 | 0) == 0;
+  if ($127) {
+   $128 = $8 >>> 0 > 3;
+   if ($128) {
+    $129 = $8 + -4 | 0;
+    $130 = $129 & -4;
+    $131 = $130 + 4 | 0;
+    $scevgep$i196 = $122 + $131 | 0;
+    $$02432$i200 = $122;
+    $$02531$i201 = $121;
+    $$033$i199 = $8;
+    while (1) {
+     $132 = $$02432$i200 + 4 | 0;
+     $133 = SAFE_HEAP_LOAD($$02432$i200 | 0, 4, 0) | 0 | 0;
+     $134 = $$02531$i201 + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i201 | 0, $133 | 0, 4);
+     $135 = $$033$i199 + -4 | 0;
+     $136 = $135 >>> 0 > 3;
+     if ($136) {
+      $$02432$i200 = $132;
+      $$02531$i201 = $134;
+      $$033$i199 = $135;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i197 = ($0 + 96 | 0) + $131 | 0;
+    $137 = $129 - $130 | 0;
+    $$0$lcssa$i208 = $137;
+    $$024$lcssa$i207 = $scevgep$i196;
+    $$025$lcssa$i206 = $scevgep42$i197;
+   } else {
+    $$0$lcssa$i208 = $8;
+    $$024$lcssa$i207 = $122;
+    $$025$lcssa$i206 = $121;
+   }
+   $$026$ph$i211 = $$024$lcssa$i207;
+   $$027$ph$i210 = $$025$lcssa$i206;
+   $$1$ph$i212 = $$0$lcssa$i208;
+  } else {
+   $$026$ph$i211 = $122;
+   $$027$ph$i210 = $121;
+   $$1$ph$i212 = $8;
+  }
+  $138 = ($$1$ph$i212 | 0) == 0;
+  if (!$138) {
+   $$02629$i215 = $$026$ph$i211;
+   $$02728$i216 = $$027$ph$i210;
+   $$130$i214 = $$1$ph$i212;
+   while (1) {
+    $139 = $$02629$i215 + 1 | 0;
+    $140 = SAFE_HEAP_LOAD($$02629$i215 >> 0 | 0, 1, 0) | 0 | 0;
+    $141 = $$02728$i216 + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i216 >> 0 | 0, $140 | 0, 1);
+    $142 = $$130$i214 + -1 | 0;
+    $143 = ($142 | 0) == 0;
+    if ($143) {
+     break;
+    } else {
+     $$02629$i215 = $139;
+     $$02728$i216 = $141;
+     $$130$i214 = $142;
+    }
+   }
+  }
+  $144 = $$1131 + $8 | 0;
+  $145 = $144;
+  $146 = $145 | $124;
+  $147 = $146 & 3;
+  $148 = ($147 | 0) == 0;
+  if ($148) {
+   $149 = $$133 >>> 0 > 3;
+   if ($149) {
+    $150 = $$133 + -4 | 0;
+    $151 = $150 & -4;
+    $152 = $151 + 4 | 0;
+    $scevgep$i219 = $144 + $152 | 0;
+    $$02432$i223 = $144;
+    $$02531$i224 = $122;
+    $$033$i222 = $$133;
+    while (1) {
+     $153 = $$02432$i223 + 4 | 0;
+     $154 = SAFE_HEAP_LOAD($$02432$i223 | 0, 4, 0) | 0 | 0;
+     $155 = $$02531$i224 + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i224 | 0, $154 | 0, 4);
+     $156 = $$033$i222 + -4 | 0;
+     $157 = $156 >>> 0 > 3;
+     if ($157) {
+      $$02432$i223 = $153;
+      $$02531$i224 = $155;
+      $$033$i222 = $156;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i220 = $122 + $152 | 0;
+    $158 = $150 - $151 | 0;
+    $$0$lcssa$i231 = $158;
+    $$024$lcssa$i230 = $scevgep$i219;
+    $$025$lcssa$i229 = $scevgep42$i220;
+   } else {
+    $$0$lcssa$i231 = $$133;
+    $$024$lcssa$i230 = $144;
+    $$025$lcssa$i229 = $122;
+   }
+   $$026$ph$i234 = $$024$lcssa$i230;
+   $$027$ph$i233 = $$025$lcssa$i229;
+   $$1$ph$i235 = $$0$lcssa$i231;
+  } else {
+   $$026$ph$i234 = $144;
+   $$027$ph$i233 = $122;
+   $$1$ph$i235 = $$133;
+  }
+  $159 = ($$1$ph$i235 | 0) == 0;
+  if (!$159) {
+   $$02629$i238 = $$026$ph$i234;
+   $$02728$i239 = $$027$ph$i233;
+   $$130$i237 = $$1$ph$i235;
+   while (1) {
+    $160 = $$02629$i238 + 1 | 0;
+    $161 = SAFE_HEAP_LOAD($$02629$i238 >> 0 | 0, 1, 0) | 0 | 0;
+    $162 = $$02728$i239 + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i239 >> 0 | 0, $161 | 0, 1);
+    $163 = $$130$i237 + -1 | 0;
+    $164 = ($163 | 0) == 0;
+    if ($164) {
+     break;
+    } else {
+     $$02629$i238 = $160;
+     $$02728$i239 = $162;
+     $$130$i237 = $163;
+    }
+   }
+  }
+  $165 = $0 + 496 | 0;
+  $166 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 127]($165, 
$$1127, $$1131) | 0;
+  $167 = $166 >>> 0 > $$1 >>> 0;
+  $168 = $167 ? $166 : $$1;
+  $169 = $$1127;
+  $170 = $169 | $124;
+  $171 = $170 & 3;
+  $172 = ($171 | 0) == 0;
+  if ($172) {
+   $173 = $$133 >>> 0 > 3;
+   if ($173) {
+    $174 = $$133 + -4 | 0;
+    $175 = $174 & -4;
+    $176 = $175 + 4 | 0;
+    $scevgep$i167 = $$1127 + $176 | 0;
+    $$03446$i172 = $122;
+    $$03545$i173 = $$1127;
+    $$047$i171 = $$133;
+    while (1) {
+     $177 = $$03545$i173 + 4 | 0;
+     $178 = SAFE_HEAP_LOAD($$03545$i173 | 0, 4, 0) | 0 | 0;
+     $179 = $$03446$i172 + 4 | 0;
+     $180 = SAFE_HEAP_LOAD($$03446$i172 | 0, 4, 0) | 0 | 0;
+     $181 = $180 ^ $178;
+     SAFE_HEAP_STORE($$03545$i173 | 0, $181 | 0, 4);
+     $182 = $$047$i171 + -4 | 0;
+     $183 = $182 >>> 0 > 3;
+     if ($183) {
+      $$03446$i172 = $179;
+      $$03545$i173 = $177;
+      $$047$i171 = $182;
+     } else {
+      break;
+     }
+    }
+    $scevgep58$i168 = $122 + $176 | 0;
+    $184 = $174 - $175 | 0;
+    $$0$lcssa$i183 = $184;
+    $$034$lcssa$i182 = $scevgep58$i168;
+    $$036$lcssa$i180 = $scevgep$i167;
+   } else {
+    $$0$lcssa$i183 = $$133;
+    $$034$lcssa$i182 = $122;
+    $$036$lcssa$i180 = $$1127;
+   }
+   $$037$ph$i187 = $$034$lcssa$i182;
+   $$039$ph$i185 = $$036$lcssa$i180;
+   $$1$ph$i188 = $$0$lcssa$i183;
+  } else {
+   $$037$ph$i187 = $122;
+   $$039$ph$i185 = $$1127;
+   $$1$ph$i188 = $$133;
+  }
+  $185 = ($$1$ph$i188 | 0) == 0;
+  if (!$185) {
+   $$03742$i191 = $$037$ph$i187;
+   $$03841$i192 = $$039$ph$i185;
+   $$03940$i193 = $$039$ph$i185;
+   $$143$i190 = $$1$ph$i188;
+   while (1) {
+    $186 = $$03841$i192 + 1 | 0;
+    $187 = SAFE_HEAP_LOAD($$03841$i192 >> 0 | 0, 1, 0) | 0 | 0;
+    $188 = $$03742$i191 + 1 | 0;
+    $189 = SAFE_HEAP_LOAD($$03742$i191 >> 0 | 0, 1, 0) | 0 | 0;
+    $190 = $189 ^ $187;
+    $191 = $$03940$i193 + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i193 >> 0 | 0, $190 | 0, 1);
+    $192 = $$143$i190 + -1 | 0;
+    $193 = ($192 | 0) == 0;
+    if ($193) {
+     break;
+    } else {
+     $$03742$i191 = $188;
+     $$03841$i192 = $186;
+     $$03940$i193 = $191;
+     $$143$i190 = $192;
+    }
+   }
+  }
+  $194 = $$1127 + $8 | 0;
+  $195 = $194;
+  $196 = $195 | $169;
+  $197 = $196 & 3;
+  $198 = ($197 | 0) == 0;
+  if ($198) {
+   $199 = $$133 >>> 0 > 3;
+   if ($199) {
+    $200 = $$133 + -4 | 0;
+    $201 = $200 & -4;
+    $202 = $201 + 4 | 0;
+    $scevgep$i144 = $$1127 + $202 | 0;
+    $$02432$i148 = $$1127;
+    $$02531$i149 = $194;
+    $$033$i147 = $$133;
+    while (1) {
+     $203 = $$02432$i148 + 4 | 0;
+     $204 = SAFE_HEAP_LOAD($$02432$i148 | 0, 4, 0) | 0 | 0;
+     $205 = $$02531$i149 + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i149 | 0, $204 | 0, 4);
+     $206 = $$033$i147 + -4 | 0;
+     $207 = $206 >>> 0 > 3;
+     if ($207) {
+      $$02432$i148 = $203;
+      $$02531$i149 = $205;
+      $$033$i147 = $206;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i145 = $194 + $202 | 0;
+    $208 = $200 - $201 | 0;
+    $$0$lcssa$i156 = $208;
+    $$024$lcssa$i155 = $scevgep$i144;
+    $$025$lcssa$i154 = $scevgep42$i145;
+   } else {
+    $$0$lcssa$i156 = $$133;
+    $$024$lcssa$i155 = $$1127;
+    $$025$lcssa$i154 = $194;
+   }
+   $$026$ph$i159 = $$024$lcssa$i155;
+   $$027$ph$i158 = $$025$lcssa$i154;
+   $$1$ph$i160 = $$0$lcssa$i156;
+  } else {
+   $$026$ph$i159 = $$1127;
+   $$027$ph$i158 = $194;
+   $$1$ph$i160 = $$133;
+  }
+  $209 = ($$1$ph$i160 | 0) == 0;
+  if (!$209) {
+   $$02629$i163 = $$026$ph$i159;
+   $$02728$i164 = $$027$ph$i158;
+   $$130$i162 = $$1$ph$i160;
+   while (1) {
+    $210 = $$02629$i163 + 1 | 0;
+    $211 = SAFE_HEAP_LOAD($$02629$i163 >> 0 | 0, 1, 0) | 0 | 0;
+    $212 = $$02728$i164 + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i164 >> 0 | 0, $211 | 0, 1);
+    $213 = $$130$i162 + -1 | 0;
+    $214 = ($213 | 0) == 0;
+    if ($214) {
+     break;
+    } else {
+     $$02629$i163 = $210;
+     $$02728$i164 = $212;
+     $$130$i162 = $213;
+    }
+   }
+  }
+  $215 = $$133 >>> 0 < $8 >>> 0;
+  if ($215) {
+   $$0128242 = $$133;
+   while (1) {
+    $216 = $$1127 + $$0128242 | 0;
+    $217 = SAFE_HEAP_LOAD($216 >> 0 | 0, 1, 0) | 0 | 0;
+    $218 = $122 + $$0128242 | 0;
+    SAFE_HEAP_STORE($218 >> 0 | 0, $217 | 0, 1);
+    $219 = $$0128242 + 1 | 0;
+    $exitcond = ($219 | 0) == ($8 | 0);
+    if ($exitcond) {
+     break;
+    } else {
+     $$0128242 = $219;
+    }
+   }
+  }
+  $220 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 127]($165, 
$$1127, $122) | 0;
+  $221 = $220 >>> 0 > $168 >>> 0;
+  $222 = $221 ? $220 : $168;
+  $223 = $169 | $123;
+  $224 = $223 & 3;
+  $225 = ($224 | 0) == 0;
+  if ($225) {
+   $226 = $8 >>> 0 > 3;
+   if ($226) {
+    $227 = $8 + -4 | 0;
+    $228 = $227 & -4;
+    $229 = $228 + 4 | 0;
+    $scevgep$i134 = $$1127 + $229 | 0;
+    $$03446$i = $121;
+    $$03545$i = $$1127;
+    $$047$i = $8;
+    while (1) {
+     $230 = $$03545$i + 4 | 0;
+     $231 = SAFE_HEAP_LOAD($$03545$i | 0, 4, 0) | 0 | 0;
+     $232 = $$03446$i + 4 | 0;
+     $233 = SAFE_HEAP_LOAD($$03446$i | 0, 4, 0) | 0 | 0;
+     $234 = $233 ^ $231;
+     SAFE_HEAP_STORE($$03545$i | 0, $234 | 0, 4);
+     $235 = $$047$i + -4 | 0;
+     $236 = $235 >>> 0 > 3;
+     if ($236) {
+      $$03446$i = $232;
+      $$03545$i = $230;
+      $$047$i = $235;
+     } else {
+      break;
+     }
+    }
+    $scevgep58$i = ($0 + 96 | 0) + $229 | 0;
+    $237 = $227 - $228 | 0;
+    $$0$lcssa$i135 = $237;
+    $$034$lcssa$i = $scevgep58$i;
+    $$036$lcssa$i = $scevgep$i134;
+   } else {
+    $$0$lcssa$i135 = $8;
+    $$034$lcssa$i = $121;
+    $$036$lcssa$i = $$1127;
+   }
+   $$037$ph$i = $$034$lcssa$i;
+   $$039$ph$i = $$036$lcssa$i;
+   $$1$ph$i136 = $$0$lcssa$i135;
+  } else {
+   $$037$ph$i = $121;
+   $$039$ph$i = $$1127;
+   $$1$ph$i136 = $8;
+  }
+  $238 = ($$1$ph$i136 | 0) == 0;
+  if ($238) {
+   $$2 = $222;
+  } else {
+   $$03742$i = $$037$ph$i;
+   $$03841$i = $$039$ph$i;
+   $$03940$i = $$039$ph$i;
+   $$143$i = $$1$ph$i136;
+   while (1) {
+    $239 = $$03841$i + 1 | 0;
+    $240 = SAFE_HEAP_LOAD($$03841$i >> 0 | 0, 1, 0) | 0 | 0;
+    $241 = $$03742$i + 1 | 0;
+    $242 = SAFE_HEAP_LOAD($$03742$i >> 0 | 0, 1, 0) | 0 | 0;
+    $243 = $242 ^ $240;
+    $244 = $$03940$i + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i >> 0 | 0, $243 | 0, 1);
+    $245 = $$143$i + -1 | 0;
+    $246 = ($245 | 0) == 0;
+    if ($246) {
+     $$2 = $222;
+     break;
+    } else {
+     $$03742$i = $241;
+     $$03841$i = $239;
+     $$03940$i = $244;
+     $$143$i = $245;
+    }
+   }
+  }
+ } else {
+  $$2 = $$1;
+ }
+ $247 = ($$2 | 0) == 0;
+ if ($247) {
+  $$0125 = 0;
+  return $$0125 | 0;
+ }
+ $248 = $$2 + 16 | 0;
+ ___gcry_burn_stack($248);
+ $$0125 = 0;
+ return $$0125 | 0;
+}
+
+function _free($0) {
+ $0 = $0 | 0;
+ var $$0211$i = 0, $$0211$in$i = 0, $$0381 = 0, $$0382 = 0, $$0394 = 0, $$0401 
= 0, $$1 = 0, $$1380 = 0, $$1385 = 0, $$1388 = 0, $$1396 = 0, $$1400 = 0, $$2 = 
0, $$3 = 0, $$3398 = 0, $$pre = 0, $$pre$phi439Z2D = 0, $$pre$phi441Z2D = 0, 
$$pre$phiZ2D = 0, $$pre438 = 0;
+ var $$pre440 = 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, $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, $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, $cond418 = 0, $cond419 = 0, $not$ = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == (0 | 0);
+ if ($1) {
+  return;
+ }
+ $2 = $0 + -8 | 0;
+ $3 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+ $4 = $2 >>> 0 < $3 >>> 0;
+ if ($4) {
+  _abort();
+ }
+ $5 = $0 + -4 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6 & 3;
+ $8 = ($7 | 0) == 1;
+ if ($8) {
+  _abort();
+ }
+ $9 = $6 & -8;
+ $10 = $2 + $9 | 0;
+ $11 = $6 & 1;
+ $12 = ($11 | 0) == 0;
+ do {
+  if ($12) {
+   $13 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+   $14 = ($7 | 0) == 0;
+   if ($14) {
+    return;
+   }
+   $15 = 0 - $13 | 0;
+   $16 = $2 + $15 | 0;
+   $17 = $13 + $9 | 0;
+   $18 = $16 >>> 0 < $3 >>> 0;
+   if ($18) {
+    _abort();
+   }
+   $19 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+   $20 = ($16 | 0) == ($19 | 0);
+   if ($20) {
+    $105 = $10 + 4 | 0;
+    $106 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+    $107 = $106 & 3;
+    $108 = ($107 | 0) == 3;
+    if (!$108) {
+     $$1 = $16;
+     $$1380 = $17;
+     break;
+    }
+    SAFE_HEAP_STORE(70872 | 0, $17 | 0, 4);
+    $109 = $106 & -2;
+    SAFE_HEAP_STORE($105 | 0, $109 | 0, 4);
+    $110 = $17 | 1;
+    $111 = $16 + 4 | 0;
+    SAFE_HEAP_STORE($111 | 0, $110 | 0, 4);
+    $112 = $16 + $17 | 0;
+    SAFE_HEAP_STORE($112 | 0, $17 | 0, 4);
+    return;
+   }
+   $21 = $13 >>> 3;
+   $22 = $13 >>> 0 < 256;
+   if ($22) {
+    $23 = $16 + 8 | 0;
+    $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+    $25 = $16 + 12 | 0;
+    $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+    $27 = $21 << 1;
+    $28 = 70904 + ($27 << 2) | 0;
+    $29 = ($24 | 0) == ($28 | 0);
+    if (!$29) {
+     $30 = $24 >>> 0 < $3 >>> 0;
+     if ($30) {
+      _abort();
+     }
+     $31 = $24 + 12 | 0;
+     $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+     $33 = ($32 | 0) == ($16 | 0);
+     if (!$33) {
+      _abort();
+     }
+    }
+    $34 = ($26 | 0) == ($24 | 0);
+    if ($34) {
+     $35 = 1 << $21;
+     $36 = $35 ^ -1;
+     $37 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+     $38 = $37 & $36;
+     SAFE_HEAP_STORE(17716 * 4 | 0, $38 | 0, 4);
+     $$1 = $16;
+     $$1380 = $17;
+     break;
+    }
+    $39 = ($26 | 0) == ($28 | 0);
+    if ($39) {
+     $$pre440 = $26 + 8 | 0;
+     $$pre$phi441Z2D = $$pre440;
+    } else {
+     $40 = $26 >>> 0 < $3 >>> 0;
+     if ($40) {
+      _abort();
+     }
+     $41 = $26 + 8 | 0;
+     $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+     $43 = ($42 | 0) == ($16 | 0);
+     if ($43) {
+      $$pre$phi441Z2D = $41;
+     } else {
+      _abort();
+     }
+    }
+    $44 = $24 + 12 | 0;
+    SAFE_HEAP_STORE($44 | 0, $26 | 0, 4);
+    SAFE_HEAP_STORE($$pre$phi441Z2D | 0, $24 | 0, 4);
+    $$1 = $16;
+    $$1380 = $17;
+    break;
+   }
+   $45 = $16 + 24 | 0;
+   $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+   $47 = $16 + 12 | 0;
+   $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+   $49 = ($48 | 0) == ($16 | 0);
+   do {
+    if ($49) {
+     $59 = $16 + 16 | 0;
+     $60 = $59 + 4 | 0;
+     $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+     $62 = ($61 | 0) == (0 | 0);
+     if ($62) {
+      $63 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+      $64 = ($63 | 0) == (0 | 0);
+      if ($64) {
+       $$3 = 0;
+       break;
+      } else {
+       $$1385 = $63;
+       $$1388 = $59;
+      }
+     } else {
+      $$1385 = $61;
+      $$1388 = $60;
+     }
+     while (1) {
+      $65 = $$1385 + 20 | 0;
+      $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+      $67 = ($66 | 0) == (0 | 0);
+      if (!$67) {
+       $$1385 = $66;
+       $$1388 = $65;
+       continue;
+      }
+      $68 = $$1385 + 16 | 0;
+      $69 = SAFE_HEAP_LOAD($68 | 0, 4, 0) | 0 | 0;
+      $70 = ($69 | 0) == (0 | 0);
+      if ($70) {
+       break;
+      } else {
+       $$1385 = $69;
+       $$1388 = $68;
+      }
+     }
+     $71 = $$1388 >>> 0 < $3 >>> 0;
+     if ($71) {
+      _abort();
+     } else {
+      SAFE_HEAP_STORE($$1388 | 0, 0 | 0, 4);
+      $$3 = $$1385;
+      break;
+     }
+    } else {
+     $50 = $16 + 8 | 0;
+     $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+     $52 = $51 >>> 0 < $3 >>> 0;
+     if ($52) {
+      _abort();
+     }
+     $53 = $51 + 12 | 0;
+     $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+     $55 = ($54 | 0) == ($16 | 0);
+     if (!$55) {
+      _abort();
+     }
+     $56 = $48 + 8 | 0;
+     $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+     $58 = ($57 | 0) == ($16 | 0);
+     if ($58) {
+      SAFE_HEAP_STORE($53 | 0, $48 | 0, 4);
+      SAFE_HEAP_STORE($56 | 0, $51 | 0, 4);
+      $$3 = $48;
+      break;
+     } else {
+      _abort();
+     }
+    }
+   } while (0);
+   $72 = ($46 | 0) == (0 | 0);
+   if ($72) {
+    $$1 = $16;
+    $$1380 = $17;
+   } else {
+    $73 = $16 + 28 | 0;
+    $74 = SAFE_HEAP_LOAD($73 | 0, 4, 0) | 0 | 0;
+    $75 = 71168 + ($74 << 2) | 0;
+    $76 = SAFE_HEAP_LOAD($75 | 0, 4, 0) | 0 | 0;
+    $77 = ($16 | 0) == ($76 | 0);
+    if ($77) {
+     SAFE_HEAP_STORE($75 | 0, $$3 | 0, 4);
+     $cond418 = ($$3 | 0) == (0 | 0);
+     if ($cond418) {
+      $78 = 1 << $74;
+      $79 = $78 ^ -1;
+      $80 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+      $81 = $80 & $79;
+      SAFE_HEAP_STORE(70868 | 0, $81 | 0, 4);
+      $$1 = $16;
+      $$1380 = $17;
+      break;
+     }
+    } else {
+     $82 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $83 = $46 >>> 0 < $82 >>> 0;
+     if ($83) {
+      _abort();
+     }
+     $84 = $46 + 16 | 0;
+     $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+     $86 = ($85 | 0) == ($16 | 0);
+     if ($86) {
+      SAFE_HEAP_STORE($84 | 0, $$3 | 0, 4);
+     } else {
+      $87 = $46 + 20 | 0;
+      SAFE_HEAP_STORE($87 | 0, $$3 | 0, 4);
+     }
+     $88 = ($$3 | 0) == (0 | 0);
+     if ($88) {
+      $$1 = $16;
+      $$1380 = $17;
+      break;
+     }
+    }
+    $89 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+    $90 = $$3 >>> 0 < $89 >>> 0;
+    if ($90) {
+     _abort();
+    }
+    $91 = $$3 + 24 | 0;
+    SAFE_HEAP_STORE($91 | 0, $46 | 0, 4);
+    $92 = $16 + 16 | 0;
+    $93 = SAFE_HEAP_LOAD($92 | 0, 4, 0) | 0 | 0;
+    $94 = ($93 | 0) == (0 | 0);
+    do {
+     if (!$94) {
+      $95 = $93 >>> 0 < $89 >>> 0;
+      if ($95) {
+       _abort();
+      } else {
+       $96 = $$3 + 16 | 0;
+       SAFE_HEAP_STORE($96 | 0, $93 | 0, 4);
+       $97 = $93 + 24 | 0;
+       SAFE_HEAP_STORE($97 | 0, $$3 | 0, 4);
+       break;
+      }
+     }
+    } while (0);
+    $98 = $92 + 4 | 0;
+    $99 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+    $100 = ($99 | 0) == (0 | 0);
+    if ($100) {
+     $$1 = $16;
+     $$1380 = $17;
+    } else {
+     $101 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $102 = $99 >>> 0 < $101 >>> 0;
+     if ($102) {
+      _abort();
+     } else {
+      $103 = $$3 + 20 | 0;
+      SAFE_HEAP_STORE($103 | 0, $99 | 0, 4);
+      $104 = $99 + 24 | 0;
+      SAFE_HEAP_STORE($104 | 0, $$3 | 0, 4);
+      $$1 = $16;
+      $$1380 = $17;
+      break;
+     }
+    }
+   }
+  } else {
+   $$1 = $2;
+   $$1380 = $9;
+  }
+ } while (0);
+ $113 = $$1 >>> 0 < $10 >>> 0;
+ if (!$113) {
+  _abort();
+ }
+ $114 = $10 + 4 | 0;
+ $115 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+ $116 = $115 & 1;
+ $117 = ($116 | 0) == 0;
+ if ($117) {
+  _abort();
+ }
+ $118 = $115 & 2;
+ $119 = ($118 | 0) == 0;
+ if ($119) {
+  $120 = SAFE_HEAP_LOAD(70888 | 0, 4, 0) | 0 | 0;
+  $121 = ($10 | 0) == ($120 | 0);
+  if ($121) {
+   $122 = SAFE_HEAP_LOAD(70876 | 0, 4, 0) | 0 | 0;
+   $123 = $122 + $$1380 | 0;
+   SAFE_HEAP_STORE(70876 | 0, $123 | 0, 4);
+   SAFE_HEAP_STORE(70888 | 0, $$1 | 0, 4);
+   $124 = $123 | 1;
+   $125 = $$1 + 4 | 0;
+   SAFE_HEAP_STORE($125 | 0, $124 | 0, 4);
+   $126 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+   $127 = ($$1 | 0) == ($126 | 0);
+   if (!$127) {
+    return;
+   }
+   SAFE_HEAP_STORE(70884 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE(70872 | 0, 0 | 0, 4);
+   return;
+  }
+  $128 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+  $129 = ($10 | 0) == ($128 | 0);
+  if ($129) {
+   $130 = SAFE_HEAP_LOAD(70872 | 0, 4, 0) | 0 | 0;
+   $131 = $130 + $$1380 | 0;
+   SAFE_HEAP_STORE(70872 | 0, $131 | 0, 4);
+   SAFE_HEAP_STORE(70884 | 0, $$1 | 0, 4);
+   $132 = $131 | 1;
+   $133 = $$1 + 4 | 0;
+   SAFE_HEAP_STORE($133 | 0, $132 | 0, 4);
+   $134 = $$1 + $131 | 0;
+   SAFE_HEAP_STORE($134 | 0, $131 | 0, 4);
+   return;
+  }
+  $135 = $115 & -8;
+  $136 = $135 + $$1380 | 0;
+  $137 = $115 >>> 3;
+  $138 = $115 >>> 0 < 256;
+  do {
+   if ($138) {
+    $139 = $10 + 8 | 0;
+    $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+    $141 = $10 + 12 | 0;
+    $142 = SAFE_HEAP_LOAD($141 | 0, 4, 0) | 0 | 0;
+    $143 = $137 << 1;
+    $144 = 70904 + ($143 << 2) | 0;
+    $145 = ($140 | 0) == ($144 | 0);
+    if (!$145) {
+     $146 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $147 = $140 >>> 0 < $146 >>> 0;
+     if ($147) {
+      _abort();
+     }
+     $148 = $140 + 12 | 0;
+     $149 = SAFE_HEAP_LOAD($148 | 0, 4, 0) | 0 | 0;
+     $150 = ($149 | 0) == ($10 | 0);
+     if (!$150) {
+      _abort();
+     }
+    }
+    $151 = ($142 | 0) == ($140 | 0);
+    if ($151) {
+     $152 = 1 << $137;
+     $153 = $152 ^ -1;
+     $154 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+     $155 = $154 & $153;
+     SAFE_HEAP_STORE(17716 * 4 | 0, $155 | 0, 4);
+     break;
+    }
+    $156 = ($142 | 0) == ($144 | 0);
+    if ($156) {
+     $$pre438 = $142 + 8 | 0;
+     $$pre$phi439Z2D = $$pre438;
+    } else {
+     $157 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $158 = $142 >>> 0 < $157 >>> 0;
+     if ($158) {
+      _abort();
+     }
+     $159 = $142 + 8 | 0;
+     $160 = SAFE_HEAP_LOAD($159 | 0, 4, 0) | 0 | 0;
+     $161 = ($160 | 0) == ($10 | 0);
+     if ($161) {
+      $$pre$phi439Z2D = $159;
+     } else {
+      _abort();
+     }
+    }
+    $162 = $140 + 12 | 0;
+    SAFE_HEAP_STORE($162 | 0, $142 | 0, 4);
+    SAFE_HEAP_STORE($$pre$phi439Z2D | 0, $140 | 0, 4);
+   } else {
+    $163 = $10 + 24 | 0;
+    $164 = SAFE_HEAP_LOAD($163 | 0, 4, 0) | 0 | 0;
+    $165 = $10 + 12 | 0;
+    $166 = SAFE_HEAP_LOAD($165 | 0, 4, 0) | 0 | 0;
+    $167 = ($166 | 0) == ($10 | 0);
+    do {
+     if ($167) {
+      $178 = $10 + 16 | 0;
+      $179 = $178 + 4 | 0;
+      $180 = SAFE_HEAP_LOAD($179 | 0, 4, 0) | 0 | 0;
+      $181 = ($180 | 0) == (0 | 0);
+      if ($181) {
+       $182 = SAFE_HEAP_LOAD($178 | 0, 4, 0) | 0 | 0;
+       $183 = ($182 | 0) == (0 | 0);
+       if ($183) {
+        $$3398 = 0;
+        break;
+       } else {
+        $$1396 = $182;
+        $$1400 = $178;
+       }
+      } else {
+       $$1396 = $180;
+       $$1400 = $179;
+      }
+      while (1) {
+       $184 = $$1396 + 20 | 0;
+       $185 = SAFE_HEAP_LOAD($184 | 0, 4, 0) | 0 | 0;
+       $186 = ($185 | 0) == (0 | 0);
+       if (!$186) {
+        $$1396 = $185;
+        $$1400 = $184;
+        continue;
+       }
+       $187 = $$1396 + 16 | 0;
+       $188 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+       $189 = ($188 | 0) == (0 | 0);
+       if ($189) {
+        break;
+       } else {
+        $$1396 = $188;
+        $$1400 = $187;
+       }
+      }
+      $190 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+      $191 = $$1400 >>> 0 < $190 >>> 0;
+      if ($191) {
+       _abort();
+      } else {
+       SAFE_HEAP_STORE($$1400 | 0, 0 | 0, 4);
+       $$3398 = $$1396;
+       break;
+      }
+     } else {
+      $168 = $10 + 8 | 0;
+      $169 = SAFE_HEAP_LOAD($168 | 0, 4, 0) | 0 | 0;
+      $170 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+      $171 = $169 >>> 0 < $170 >>> 0;
+      if ($171) {
+       _abort();
+      }
+      $172 = $169 + 12 | 0;
+      $173 = SAFE_HEAP_LOAD($172 | 0, 4, 0) | 0 | 0;
+      $174 = ($173 | 0) == ($10 | 0);
+      if (!$174) {
+       _abort();
+      }
+      $175 = $166 + 8 | 0;
+      $176 = SAFE_HEAP_LOAD($175 | 0, 4, 0) | 0 | 0;
+      $177 = ($176 | 0) == ($10 | 0);
+      if ($177) {
+       SAFE_HEAP_STORE($172 | 0, $166 | 0, 4);
+       SAFE_HEAP_STORE($175 | 0, $169 | 0, 4);
+       $$3398 = $166;
+       break;
+      } else {
+       _abort();
+      }
+     }
+    } while (0);
+    $192 = ($164 | 0) == (0 | 0);
+    if (!$192) {
+     $193 = $10 + 28 | 0;
+     $194 = SAFE_HEAP_LOAD($193 | 0, 4, 0) | 0 | 0;
+     $195 = 71168 + ($194 << 2) | 0;
+     $196 = SAFE_HEAP_LOAD($195 | 0, 4, 0) | 0 | 0;
+     $197 = ($10 | 0) == ($196 | 0);
+     if ($197) {
+      SAFE_HEAP_STORE($195 | 0, $$3398 | 0, 4);
+      $cond419 = ($$3398 | 0) == (0 | 0);
+      if ($cond419) {
+       $198 = 1 << $194;
+       $199 = $198 ^ -1;
+       $200 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+       $201 = $200 & $199;
+       SAFE_HEAP_STORE(70868 | 0, $201 | 0, 4);
+       break;
+      }
+     } else {
+      $202 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+      $203 = $164 >>> 0 < $202 >>> 0;
+      if ($203) {
+       _abort();
+      }
+      $204 = $164 + 16 | 0;
+      $205 = SAFE_HEAP_LOAD($204 | 0, 4, 0) | 0 | 0;
+      $206 = ($205 | 0) == ($10 | 0);
+      if ($206) {
+       SAFE_HEAP_STORE($204 | 0, $$3398 | 0, 4);
+      } else {
+       $207 = $164 + 20 | 0;
+       SAFE_HEAP_STORE($207 | 0, $$3398 | 0, 4);
+      }
+      $208 = ($$3398 | 0) == (0 | 0);
+      if ($208) {
+       break;
+      }
+     }
+     $209 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $210 = $$3398 >>> 0 < $209 >>> 0;
+     if ($210) {
+      _abort();
+     }
+     $211 = $$3398 + 24 | 0;
+     SAFE_HEAP_STORE($211 | 0, $164 | 0, 4);
+     $212 = $10 + 16 | 0;
+     $213 = SAFE_HEAP_LOAD($212 | 0, 4, 0) | 0 | 0;
+     $214 = ($213 | 0) == (0 | 0);
+     do {
+      if (!$214) {
+       $215 = $213 >>> 0 < $209 >>> 0;
+       if ($215) {
+        _abort();
+       } else {
+        $216 = $$3398 + 16 | 0;
+        SAFE_HEAP_STORE($216 | 0, $213 | 0, 4);
+        $217 = $213 + 24 | 0;
+        SAFE_HEAP_STORE($217 | 0, $$3398 | 0, 4);
+        break;
+       }
+      }
+     } while (0);
+     $218 = $212 + 4 | 0;
+     $219 = SAFE_HEAP_LOAD($218 | 0, 4, 0) | 0 | 0;
+     $220 = ($219 | 0) == (0 | 0);
+     if (!$220) {
+      $221 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+      $222 = $219 >>> 0 < $221 >>> 0;
+      if ($222) {
+       _abort();
+      } else {
+       $223 = $$3398 + 20 | 0;
+       SAFE_HEAP_STORE($223 | 0, $219 | 0, 4);
+       $224 = $219 + 24 | 0;
+       SAFE_HEAP_STORE($224 | 0, $$3398 | 0, 4);
+       break;
+      }
+     }
+    }
+   }
+  } while (0);
+  $225 = $136 | 1;
+  $226 = $$1 + 4 | 0;
+  SAFE_HEAP_STORE($226 | 0, $225 | 0, 4);
+  $227 = $$1 + $136 | 0;
+  SAFE_HEAP_STORE($227 | 0, $136 | 0, 4);
+  $228 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+  $229 = ($$1 | 0) == ($228 | 0);
+  if ($229) {
+   SAFE_HEAP_STORE(70872 | 0, $136 | 0, 4);
+   return;
+  } else {
+   $$2 = $136;
+  }
+ } else {
+  $230 = $115 & -2;
+  SAFE_HEAP_STORE($114 | 0, $230 | 0, 4);
+  $231 = $$1380 | 1;
+  $232 = $$1 + 4 | 0;
+  SAFE_HEAP_STORE($232 | 0, $231 | 0, 4);
+  $233 = $$1 + $$1380 | 0;
+  SAFE_HEAP_STORE($233 | 0, $$1380 | 0, 4);
+  $$2 = $$1380;
+ }
+ $234 = $$2 >>> 3;
+ $235 = $$2 >>> 0 < 256;
+ if ($235) {
+  $236 = $234 << 1;
+  $237 = 70904 + ($236 << 2) | 0;
+  $238 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+  $239 = 1 << $234;
+  $240 = $238 & $239;
+  $241 = ($240 | 0) == 0;
+  if ($241) {
+   $242 = $238 | $239;
+   SAFE_HEAP_STORE(17716 * 4 | 0, $242 | 0, 4);
+   $$pre = $237 + 8 | 0;
+   $$0401 = $237;
+   $$pre$phiZ2D = $$pre;
+  } else {
+   $243 = $237 + 8 | 0;
+   $244 = SAFE_HEAP_LOAD($243 | 0, 4, 0) | 0 | 0;
+   $245 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+   $246 = $244 >>> 0 < $245 >>> 0;
+   if ($246) {
+    _abort();
+   } else {
+    $$0401 = $244;
+    $$pre$phiZ2D = $243;
+   }
+  }
+  SAFE_HEAP_STORE($$pre$phiZ2D | 0, $$1 | 0, 4);
+  $247 = $$0401 + 12 | 0;
+  SAFE_HEAP_STORE($247 | 0, $$1 | 0, 4);
+  $248 = $$1 + 8 | 0;
+  SAFE_HEAP_STORE($248 | 0, $$0401 | 0, 4);
+  $249 = $$1 + 12 | 0;
+  SAFE_HEAP_STORE($249 | 0, $237 | 0, 4);
+  return;
+ }
+ $250 = $$2 >>> 8;
+ $251 = ($250 | 0) == 0;
+ if ($251) {
+  $$0394 = 0;
+ } else {
+  $252 = $$2 >>> 0 > 16777215;
+  if ($252) {
+   $$0394 = 31;
+  } else {
+   $253 = $250 + 1048320 | 0;
+   $254 = $253 >>> 16;
+   $255 = $254 & 8;
+   $256 = $250 << $255;
+   $257 = $256 + 520192 | 0;
+   $258 = $257 >>> 16;
+   $259 = $258 & 4;
+   $260 = $259 | $255;
+   $261 = $256 << $259;
+   $262 = $261 + 245760 | 0;
+   $263 = $262 >>> 16;
+   $264 = $263 & 2;
+   $265 = $260 | $264;
+   $266 = 14 - $265 | 0;
+   $267 = $261 << $264;
+   $268 = $267 >>> 15;
+   $269 = $266 + $268 | 0;
+   $270 = $269 << 1;
+   $271 = $269 + 7 | 0;
+   $272 = $$2 >>> $271;
+   $273 = $272 & 1;
+   $274 = $273 | $270;
+   $$0394 = $274;
+  }
+ }
+ $275 = 71168 + ($$0394 << 2) | 0;
+ $276 = $$1 + 28 | 0;
+ SAFE_HEAP_STORE($276 | 0, $$0394 | 0, 4);
+ $277 = $$1 + 16 | 0;
+ $278 = $$1 + 20 | 0;
+ SAFE_HEAP_STORE($278 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($277 | 0, 0 | 0, 4);
+ $279 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+ $280 = 1 << $$0394;
+ $281 = $279 & $280;
+ $282 = ($281 | 0) == 0;
+ do {
+  if ($282) {
+   $283 = $279 | $280;
+   SAFE_HEAP_STORE(70868 | 0, $283 | 0, 4);
+   SAFE_HEAP_STORE($275 | 0, $$1 | 0, 4);
+   $284 = $$1 + 24 | 0;
+   SAFE_HEAP_STORE($284 | 0, $275 | 0, 4);
+   $285 = $$1 + 12 | 0;
+   SAFE_HEAP_STORE($285 | 0, $$1 | 0, 4);
+   $286 = $$1 + 8 | 0;
+   SAFE_HEAP_STORE($286 | 0, $$1 | 0, 4);
+  } else {
+   $287 = SAFE_HEAP_LOAD($275 | 0, 4, 0) | 0 | 0;
+   $288 = ($$0394 | 0) == 31;
+   $289 = $$0394 >>> 1;
+   $290 = 25 - $289 | 0;
+   $291 = $288 ? 0 : $290;
+   $292 = $$2 << $291;
+   $$0381 = $292;
+   $$0382 = $287;
+   while (1) {
+    $293 = $$0382 + 4 | 0;
+    $294 = SAFE_HEAP_LOAD($293 | 0, 4, 0) | 0 | 0;
+    $295 = $294 & -8;
+    $296 = ($295 | 0) == ($$2 | 0);
+    if ($296) {
+     label = 130;
+     break;
+    }
+    $297 = $$0381 >>> 31;
+    $298 = ($$0382 + 16 | 0) + ($297 << 2) | 0;
+    $299 = $$0381 << 1;
+    $300 = SAFE_HEAP_LOAD($298 | 0, 4, 0) | 0 | 0;
+    $301 = ($300 | 0) == (0 | 0);
+    if ($301) {
+     label = 127;
+     break;
+    } else {
+     $$0381 = $299;
+     $$0382 = $300;
+    }
+   }
+   if ((label | 0) == 127) {
+    $302 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+    $303 = $298 >>> 0 < $302 >>> 0;
+    if ($303) {
+     _abort();
+    } else {
+     SAFE_HEAP_STORE($298 | 0, $$1 | 0, 4);
+     $304 = $$1 + 24 | 0;
+     SAFE_HEAP_STORE($304 | 0, $$0382 | 0, 4);
+     $305 = $$1 + 12 | 0;
+     SAFE_HEAP_STORE($305 | 0, $$1 | 0, 4);
+     $306 = $$1 + 8 | 0;
+     SAFE_HEAP_STORE($306 | 0, $$1 | 0, 4);
+     break;
+    }
+   } else if ((label | 0) == 130) {
+    $307 = $$0382 + 8 | 0;
+    $308 = SAFE_HEAP_LOAD($307 | 0, 4, 0) | 0 | 0;
+    $309 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+    $310 = $308 >>> 0 >= $309 >>> 0;
+    $not$ = $$0382 >>> 0 >= $309 >>> 0;
+    $311 = $310 & $not$;
+    if ($311) {
+     $312 = $308 + 12 | 0;
+     SAFE_HEAP_STORE($312 | 0, $$1 | 0, 4);
+     SAFE_HEAP_STORE($307 | 0, $$1 | 0, 4);
+     $313 = $$1 + 8 | 0;
+     SAFE_HEAP_STORE($313 | 0, $308 | 0, 4);
+     $314 = $$1 + 12 | 0;
+     SAFE_HEAP_STORE($314 | 0, $$0382 | 0, 4);
+     $315 = $$1 + 24 | 0;
+     SAFE_HEAP_STORE($315 | 0, 0 | 0, 4);
+     break;
+    } else {
+     _abort();
+    }
+   }
+  }
+ } while (0);
+ $316 = SAFE_HEAP_LOAD(70896 | 0, 4, 0) | 0 | 0;
+ $317 = $316 + -1 | 0;
+ SAFE_HEAP_STORE(70896 | 0, $317 | 0, 4);
+ $318 = ($317 | 0) == 0;
+ if ($318) {
+  $$0211$in$i = 71320;
+ } else {
+  return;
+ }
+ while (1) {
+  $$0211$i = SAFE_HEAP_LOAD($$0211$in$i | 0, 4, 0) | 0 | 0;
+  $319 = ($$0211$i | 0) == (0 | 0);
+  $320 = $$0211$i + 8 | 0;
+  if ($319) {
+   break;
+  } else {
+   $$0211$in$i = $320;
+  }
+ }
+ SAFE_HEAP_STORE(70896 | 0, -1 | 0, 4);
+ return;
+}
+
+function _do_decrypt($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0$i = 0, $$0$in$i = 0, $$sroa$045$0$i = 0, $$sroa$112$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, $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, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 
= 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0;
+ var $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, $293 = 0;
+ var $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, $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, $4 = 0, $40 = 0, $400 = 0;
+ var $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, $419 = 0;
+ var $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, $437 = 0;
+ var $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, $455 = 0;
+ var $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, $473 = 0;
+ var $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, $491 = 0;
+ var $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, $509 = 0;
+ var $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, $527 = 0;
+ var $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, $545 = 0;
+ var $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, $563 = 0;
+ var $564 = 0, $565 = 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 + 3 | 0;
+ $6 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+ $7 = $6 & 255;
+ $8 = $7 << 24;
+ $9 = $2 + 2 | 0;
+ $10 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+ $11 = $10 & 255;
+ $12 = $11 << 16;
+ $13 = $12 | $8;
+ $14 = $2 + 1 | 0;
+ $15 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+ $16 = $15 & 255;
+ $17 = $16 << 8;
+ $18 = $13 | $17;
+ $19 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $20 = $19 & 255;
+ $21 = $18 | $20;
+ $22 = $2 + 4 | 0;
+ $23 = $2 + 7 | 0;
+ $24 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+ $25 = $24 & 255;
+ $26 = $25 << 24;
+ $27 = $2 + 6 | 0;
+ $28 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+ $29 = $28 & 255;
+ $30 = $29 << 16;
+ $31 = $30 | $26;
+ $32 = $2 + 5 | 0;
+ $33 = SAFE_HEAP_LOAD($32 >> 0 | 0, 1, 0) | 0 | 0;
+ $34 = $33 & 255;
+ $35 = $34 << 8;
+ $36 = $31 | $35;
+ $37 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+ $38 = $37 & 255;
+ $39 = $36 | $38;
+ $40 = $2 + 8 | 0;
+ $41 = $2 + 11 | 0;
+ $42 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+ $43 = $42 & 255;
+ $44 = $43 << 24;
+ $45 = $2 + 10 | 0;
+ $46 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+ $47 = $46 & 255;
+ $48 = $47 << 16;
+ $49 = $48 | $44;
+ $50 = $2 + 9 | 0;
+ $51 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+ $52 = $51 & 255;
+ $53 = $52 << 8;
+ $54 = $49 | $53;
+ $55 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $56 = $55 & 255;
+ $57 = $54 | $56;
+ $58 = $2 + 12 | 0;
+ $59 = $2 + 15 | 0;
+ $60 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+ $61 = $60 & 255;
+ $62 = $61 << 24;
+ $63 = $2 + 14 | 0;
+ $64 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+ $65 = $64 & 255;
+ $66 = $65 << 16;
+ $67 = $66 | $62;
+ $68 = $2 + 13 | 0;
+ $69 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+ $70 = $69 & 255;
+ $71 = $70 << 8;
+ $72 = $67 | $71;
+ $73 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+ $74 = $73 & 255;
+ $75 = $72 | $74;
+ $76 = $0 + 240 | 0;
+ $77 = $76 + ($4 << 4) | 0;
+ $78 = SAFE_HEAP_LOAD($77 | 0, 4, 0) | 0 | 0;
+ $79 = $78 ^ $21;
+ $80 = ($76 + ($4 << 4) | 0) + 4 | 0;
+ $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+ $82 = $81 ^ $39;
+ $83 = ($76 + ($4 << 4) | 0) + 8 | 0;
+ $84 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+ $85 = $84 ^ $57;
+ $86 = ($76 + ($4 << 4) | 0) + 12 | 0;
+ $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+ $88 = $87 ^ $75;
+ $$0$in$i = $4;
+ $$sroa$045$0$i = $79;
+ $$sroa$112$0$i = $88;
+ $$sroa$44$0$i = $82;
+ $$sroa$82$0$i = $85;
+ while (1) {
+  $$0$i = $$0$in$i + -1 | 0;
+  $89 = ($$0$i | 0) > 1;
+  $90 = $$sroa$045$0$i & 255;
+  $91 = 5824 + ($90 << 2) | 0;
+  $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+  $93 = $$sroa$045$0$i >>> 8;
+  $94 = $93 & 255;
+  $95 = 5824 + ($94 << 2) | 0;
+  $96 = SAFE_HEAP_LOAD($95 | 0, 4, 0) | 0 | 0;
+  $97 = $96 << 8;
+  $98 = $96 >>> 24;
+  $99 = $97 | $98;
+  $100 = $$sroa$045$0$i >>> 16;
+  $101 = $100 & 255;
+  $102 = 5824 + ($101 << 2) | 0;
+  $103 = SAFE_HEAP_LOAD($102 | 0, 4, 0) | 0 | 0;
+  $104 = $103 << 16;
+  $105 = $103 >>> 16;
+  $106 = $104 | $105;
+  $107 = $$sroa$045$0$i >>> 24;
+  $108 = 5824 + ($107 << 2) | 0;
+  $109 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+  $110 = $109 << 24;
+  $111 = $109 >>> 8;
+  $112 = $110 | $111;
+  if (!$89) {
+   break;
+  }
+  $113 = $76 + ($$0$i << 4) | 0;
+  $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+  $115 = $114 ^ $92;
+  $116 = $$sroa$44$0$i & 255;
+  $117 = 5824 + ($116 << 2) | 0;
+  $118 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+  $119 = $118 ^ $99;
+  $120 = $$sroa$44$0$i >>> 8;
+  $121 = $120 & 255;
+  $122 = 5824 + ($121 << 2) | 0;
+  $123 = SAFE_HEAP_LOAD($122 | 0, 4, 0) | 0 | 0;
+  $124 = $123 << 8;
+  $125 = $123 >>> 24;
+  $126 = $124 | $125;
+  $127 = $126 ^ $106;
+  $128 = $$sroa$44$0$i >>> 16;
+  $129 = $128 & 255;
+  $130 = 5824 + ($129 << 2) | 0;
+  $131 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+  $132 = $131 << 16;
+  $133 = $131 >>> 16;
+  $134 = $132 | $133;
+  $135 = $134 ^ $112;
+  $136 = $$sroa$44$0$i >>> 24;
+  $137 = 5824 + ($136 << 2) | 0;
+  $138 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+  $139 = $138 << 24;
+  $140 = $138 >>> 8;
+  $141 = $139 | $140;
+  $142 = $115 ^ $141;
+  $143 = ($76 + ($$0$i << 4) | 0) + 4 | 0;
+  $144 = SAFE_HEAP_LOAD($143 | 0, 4, 0) | 0 | 0;
+  $145 = $119 ^ $144;
+  $146 = $$sroa$82$0$i & 255;
+  $147 = 5824 + ($146 << 2) | 0;
+  $148 = SAFE_HEAP_LOAD($147 | 0, 4, 0) | 0 | 0;
+  $149 = $127 ^ $148;
+  $150 = $$sroa$82$0$i >>> 8;
+  $151 = $150 & 255;
+  $152 = 5824 + ($151 << 2) | 0;
+  $153 = SAFE_HEAP_LOAD($152 | 0, 4, 0) | 0 | 0;
+  $154 = $153 << 8;
+  $155 = $153 >>> 24;
+  $156 = $154 | $155;
+  $157 = $135 ^ $156;
+  $158 = $$sroa$82$0$i >>> 16;
+  $159 = $158 & 255;
+  $160 = 5824 + ($159 << 2) | 0;
+  $161 = SAFE_HEAP_LOAD($160 | 0, 4, 0) | 0 | 0;
+  $162 = $161 << 16;
+  $163 = $161 >>> 16;
+  $164 = $162 | $163;
+  $165 = $142 ^ $164;
+  $166 = $$sroa$82$0$i >>> 24;
+  $167 = 5824 + ($166 << 2) | 0;
+  $168 = SAFE_HEAP_LOAD($167 | 0, 4, 0) | 0 | 0;
+  $169 = $168 << 24;
+  $170 = $168 >>> 8;
+  $171 = $169 | $170;
+  $172 = $145 ^ $171;
+  $173 = ($76 + ($$0$i << 4) | 0) + 8 | 0;
+  $174 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+  $175 = $149 ^ $174;
+  $176 = $$sroa$112$0$i & 255;
+  $177 = 5824 + ($176 << 2) | 0;
+  $178 = SAFE_HEAP_LOAD($177 | 0, 4, 0) | 0 | 0;
+  $179 = $157 ^ $178;
+  $180 = $$sroa$112$0$i >>> 8;
+  $181 = $180 & 255;
+  $182 = 5824 + ($181 << 2) | 0;
+  $183 = SAFE_HEAP_LOAD($182 | 0, 4, 0) | 0 | 0;
+  $184 = $183 << 8;
+  $185 = $183 >>> 24;
+  $186 = $184 | $185;
+  $187 = $165 ^ $186;
+  $188 = $$sroa$112$0$i >>> 16;
+  $189 = $188 & 255;
+  $190 = 5824 + ($189 << 2) | 0;
+  $191 = SAFE_HEAP_LOAD($190 | 0, 4, 0) | 0 | 0;
+  $192 = $191 << 16;
+  $193 = $191 >>> 16;
+  $194 = $192 | $193;
+  $195 = $172 ^ $194;
+  $196 = $$sroa$112$0$i >>> 24;
+  $197 = 5824 + ($196 << 2) | 0;
+  $198 = SAFE_HEAP_LOAD($197 | 0, 4, 0) | 0 | 0;
+  $199 = $198 << 24;
+  $200 = $198 >>> 8;
+  $201 = $199 | $200;
+  $202 = $175 ^ $201;
+  $203 = ($76 + ($$0$i << 4) | 0) + 12 | 0;
+  $204 = SAFE_HEAP_LOAD($203 | 0, 4, 0) | 0 | 0;
+  $205 = $179 ^ $204;
+  $206 = $$0$in$i + -2 | 0;
+  $207 = $187 & 255;
+  $208 = 5824 + ($207 << 2) | 0;
+  $209 = SAFE_HEAP_LOAD($208 | 0, 4, 0) | 0 | 0;
+  $210 = $187 >>> 8;
+  $211 = $210 & 255;
+  $212 = 5824 + ($211 << 2) | 0;
+  $213 = SAFE_HEAP_LOAD($212 | 0, 4, 0) | 0 | 0;
+  $214 = $213 << 8;
+  $215 = $213 >>> 24;
+  $216 = $214 | $215;
+  $217 = $187 >>> 16;
+  $218 = $217 & 255;
+  $219 = 5824 + ($218 << 2) | 0;
+  $220 = SAFE_HEAP_LOAD($219 | 0, 4, 0) | 0 | 0;
+  $221 = $220 << 16;
+  $222 = $220 >>> 16;
+  $223 = $221 | $222;
+  $224 = $187 >>> 24;
+  $225 = 5824 + ($224 << 2) | 0;
+  $226 = SAFE_HEAP_LOAD($225 | 0, 4, 0) | 0 | 0;
+  $227 = $226 << 24;
+  $228 = $226 >>> 8;
+  $229 = $227 | $228;
+  $230 = $76 + ($206 << 4) | 0;
+  $231 = SAFE_HEAP_LOAD($230 | 0, 4, 0) | 0 | 0;
+  $232 = $231 ^ $209;
+  $233 = $195 & 255;
+  $234 = 5824 + ($233 << 2) | 0;
+  $235 = SAFE_HEAP_LOAD($234 | 0, 4, 0) | 0 | 0;
+  $236 = $235 ^ $216;
+  $237 = $195 >>> 8;
+  $238 = $237 & 255;
+  $239 = 5824 + ($238 << 2) | 0;
+  $240 = SAFE_HEAP_LOAD($239 | 0, 4, 0) | 0 | 0;
+  $241 = $240 << 8;
+  $242 = $240 >>> 24;
+  $243 = $241 | $242;
+  $244 = $243 ^ $223;
+  $245 = $195 >>> 16;
+  $246 = $245 & 255;
+  $247 = 5824 + ($246 << 2) | 0;
+  $248 = SAFE_HEAP_LOAD($247 | 0, 4, 0) | 0 | 0;
+  $249 = $248 << 16;
+  $250 = $248 >>> 16;
+  $251 = $249 | $250;
+  $252 = $251 ^ $229;
+  $253 = $195 >>> 24;
+  $254 = 5824 + ($253 << 2) | 0;
+  $255 = SAFE_HEAP_LOAD($254 | 0, 4, 0) | 0 | 0;
+  $256 = $255 << 24;
+  $257 = $255 >>> 8;
+  $258 = $256 | $257;
+  $259 = $232 ^ $258;
+  $260 = ($76 + ($206 << 4) | 0) + 4 | 0;
+  $261 = SAFE_HEAP_LOAD($260 | 0, 4, 0) | 0 | 0;
+  $262 = $236 ^ $261;
+  $263 = $202 & 255;
+  $264 = 5824 + ($263 << 2) | 0;
+  $265 = SAFE_HEAP_LOAD($264 | 0, 4, 0) | 0 | 0;
+  $266 = $244 ^ $265;
+  $267 = $202 >>> 8;
+  $268 = $267 & 255;
+  $269 = 5824 + ($268 << 2) | 0;
+  $270 = SAFE_HEAP_LOAD($269 | 0, 4, 0) | 0 | 0;
+  $271 = $270 << 8;
+  $272 = $270 >>> 24;
+  $273 = $271 | $272;
+  $274 = $252 ^ $273;
+  $275 = $202 >>> 16;
+  $276 = $275 & 255;
+  $277 = 5824 + ($276 << 2) | 0;
+  $278 = SAFE_HEAP_LOAD($277 | 0, 4, 0) | 0 | 0;
+  $279 = $278 << 16;
+  $280 = $278 >>> 16;
+  $281 = $279 | $280;
+  $282 = $259 ^ $281;
+  $283 = $202 >>> 24;
+  $284 = 5824 + ($283 << 2) | 0;
+  $285 = SAFE_HEAP_LOAD($284 | 0, 4, 0) | 0 | 0;
+  $286 = $285 << 24;
+  $287 = $285 >>> 8;
+  $288 = $286 | $287;
+  $289 = $262 ^ $288;
+  $290 = ($76 + ($206 << 4) | 0) + 8 | 0;
+  $291 = SAFE_HEAP_LOAD($290 | 0, 4, 0) | 0 | 0;
+  $292 = $266 ^ $291;
+  $293 = $205 & 255;
+  $294 = 5824 + ($293 << 2) | 0;
+  $295 = SAFE_HEAP_LOAD($294 | 0, 4, 0) | 0 | 0;
+  $296 = $274 ^ $295;
+  $297 = $205 >>> 8;
+  $298 = $297 & 255;
+  $299 = 5824 + ($298 << 2) | 0;
+  $300 = SAFE_HEAP_LOAD($299 | 0, 4, 0) | 0 | 0;
+  $301 = $300 << 8;
+  $302 = $300 >>> 24;
+  $303 = $301 | $302;
+  $304 = $282 ^ $303;
+  $305 = $205 >>> 16;
+  $306 = $305 & 255;
+  $307 = 5824 + ($306 << 2) | 0;
+  $308 = SAFE_HEAP_LOAD($307 | 0, 4, 0) | 0 | 0;
+  $309 = $308 << 16;
+  $310 = $308 >>> 16;
+  $311 = $309 | $310;
+  $312 = $289 ^ $311;
+  $313 = $205 >>> 24;
+  $314 = 5824 + ($313 << 2) | 0;
+  $315 = SAFE_HEAP_LOAD($314 | 0, 4, 0) | 0 | 0;
+  $316 = $315 << 24;
+  $317 = $315 >>> 8;
+  $318 = $316 | $317;
+  $319 = $292 ^ $318;
+  $320 = ($76 + ($206 << 4) | 0) + 12 | 0;
+  $321 = SAFE_HEAP_LOAD($320 | 0, 4, 0) | 0 | 0;
+  $322 = $296 ^ $321;
+  $$0$in$i = $206;
+  $$sroa$045$0$i = $304;
+  $$sroa$112$0$i = $322;
+  $$sroa$44$0$i = $312;
+  $$sroa$82$0$i = $319;
+ }
+ $323 = $0 + 256 | 0;
+ $324 = SAFE_HEAP_LOAD($323 | 0, 4, 0) | 0 | 0;
+ $325 = $324 ^ $92;
+ $326 = $$sroa$44$0$i & 255;
+ $327 = 5824 + ($326 << 2) | 0;
+ $328 = SAFE_HEAP_LOAD($327 | 0, 4, 0) | 0 | 0;
+ $329 = $328 ^ $99;
+ $330 = $$sroa$44$0$i >>> 8;
+ $331 = $330 & 255;
+ $332 = 5824 + ($331 << 2) | 0;
+ $333 = SAFE_HEAP_LOAD($332 | 0, 4, 0) | 0 | 0;
+ $334 = $333 << 8;
+ $335 = $333 >>> 24;
+ $336 = $334 | $335;
+ $337 = $336 ^ $106;
+ $338 = $$sroa$44$0$i >>> 16;
+ $339 = $338 & 255;
+ $340 = 5824 + ($339 << 2) | 0;
+ $341 = SAFE_HEAP_LOAD($340 | 0, 4, 0) | 0 | 0;
+ $342 = $341 << 16;
+ $343 = $341 >>> 16;
+ $344 = $342 | $343;
+ $345 = $344 ^ $112;
+ $346 = $$sroa$44$0$i >>> 24;
+ $347 = 5824 + ($346 << 2) | 0;
+ $348 = SAFE_HEAP_LOAD($347 | 0, 4, 0) | 0 | 0;
+ $349 = $348 << 24;
+ $350 = $348 >>> 8;
+ $351 = $349 | $350;
+ $352 = $325 ^ $351;
+ $353 = $0 + 260 | 0;
+ $354 = SAFE_HEAP_LOAD($353 | 0, 4, 0) | 0 | 0;
+ $355 = $329 ^ $354;
+ $356 = $$sroa$82$0$i & 255;
+ $357 = 5824 + ($356 << 2) | 0;
+ $358 = SAFE_HEAP_LOAD($357 | 0, 4, 0) | 0 | 0;
+ $359 = $337 ^ $358;
+ $360 = $$sroa$82$0$i >>> 8;
+ $361 = $360 & 255;
+ $362 = 5824 + ($361 << 2) | 0;
+ $363 = SAFE_HEAP_LOAD($362 | 0, 4, 0) | 0 | 0;
+ $364 = $363 << 8;
+ $365 = $363 >>> 24;
+ $366 = $364 | $365;
+ $367 = $345 ^ $366;
+ $368 = $$sroa$82$0$i >>> 16;
+ $369 = $368 & 255;
+ $370 = 5824 + ($369 << 2) | 0;
+ $371 = SAFE_HEAP_LOAD($370 | 0, 4, 0) | 0 | 0;
+ $372 = $371 << 16;
+ $373 = $371 >>> 16;
+ $374 = $372 | $373;
+ $375 = $352 ^ $374;
+ $376 = $$sroa$82$0$i >>> 24;
+ $377 = 5824 + ($376 << 2) | 0;
+ $378 = SAFE_HEAP_LOAD($377 | 0, 4, 0) | 0 | 0;
+ $379 = $378 << 24;
+ $380 = $378 >>> 8;
+ $381 = $379 | $380;
+ $382 = $355 ^ $381;
+ $383 = $0 + 264 | 0;
+ $384 = SAFE_HEAP_LOAD($383 | 0, 4, 0) | 0 | 0;
+ $385 = $359 ^ $384;
+ $386 = $$sroa$112$0$i & 255;
+ $387 = 5824 + ($386 << 2) | 0;
+ $388 = SAFE_HEAP_LOAD($387 | 0, 4, 0) | 0 | 0;
+ $389 = $367 ^ $388;
+ $390 = $$sroa$112$0$i >>> 8;
+ $391 = $390 & 255;
+ $392 = 5824 + ($391 << 2) | 0;
+ $393 = SAFE_HEAP_LOAD($392 | 0, 4, 0) | 0 | 0;
+ $394 = $393 << 8;
+ $395 = $393 >>> 24;
+ $396 = $394 | $395;
+ $397 = $375 ^ $396;
+ $398 = $$sroa$112$0$i >>> 16;
+ $399 = $398 & 255;
+ $400 = 5824 + ($399 << 2) | 0;
+ $401 = SAFE_HEAP_LOAD($400 | 0, 4, 0) | 0 | 0;
+ $402 = $401 << 16;
+ $403 = $401 >>> 16;
+ $404 = $402 | $403;
+ $405 = $382 ^ $404;
+ $406 = $$sroa$112$0$i >>> 24;
+ $407 = 5824 + ($406 << 2) | 0;
+ $408 = SAFE_HEAP_LOAD($407 | 0, 4, 0) | 0 | 0;
+ $409 = $408 << 24;
+ $410 = $408 >>> 8;
+ $411 = $409 | $410;
+ $412 = $385 ^ $411;
+ $413 = $0 + 268 | 0;
+ $414 = SAFE_HEAP_LOAD($413 | 0, 4, 0) | 0 | 0;
+ $415 = $389 ^ $414;
+ $416 = $397 & 255;
+ $417 = 6848 + $416 | 0;
+ $418 = SAFE_HEAP_LOAD($417 >> 0 | 0, 1, 0) | 0 | 0;
+ $419 = $418 & 255;
+ $420 = $397 >>> 8;
+ $421 = $420 & 255;
+ $422 = 6848 + $421 | 0;
+ $423 = SAFE_HEAP_LOAD($422 >> 0 | 0, 1, 0) | 0 | 0;
+ $424 = $423 & 255;
+ $425 = $424 << 8;
+ $426 = $397 >>> 16;
+ $427 = $426 & 255;
+ $428 = 6848 + $427 | 0;
+ $429 = SAFE_HEAP_LOAD($428 >> 0 | 0, 1, 0) | 0 | 0;
+ $430 = $429 & 255;
+ $431 = $430 << 16;
+ $432 = $397 >>> 24;
+ $433 = 6848 + $432 | 0;
+ $434 = SAFE_HEAP_LOAD($433 >> 0 | 0, 1, 0) | 0 | 0;
+ $435 = $434 & 255;
+ $436 = $435 << 24;
+ $437 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+ $438 = $437 ^ $419;
+ $439 = $405 & 255;
+ $440 = 6848 + $439 | 0;
+ $441 = SAFE_HEAP_LOAD($440 >> 0 | 0, 1, 0) | 0 | 0;
+ $442 = $441 & 255;
+ $443 = $442 | $425;
+ $444 = $405 >>> 8;
+ $445 = $444 & 255;
+ $446 = 6848 + $445 | 0;
+ $447 = SAFE_HEAP_LOAD($446 >> 0 | 0, 1, 0) | 0 | 0;
+ $448 = $447 & 255;
+ $449 = $448 << 8;
+ $450 = $449 | $431;
+ $451 = $405 >>> 16;
+ $452 = $451 & 255;
+ $453 = 6848 + $452 | 0;
+ $454 = SAFE_HEAP_LOAD($453 >> 0 | 0, 1, 0) | 0 | 0;
+ $455 = $454 & 255;
+ $456 = $455 << 16;
+ $457 = $456 | $436;
+ $458 = $405 >>> 24;
+ $459 = 6848 + $458 | 0;
+ $460 = SAFE_HEAP_LOAD($459 >> 0 | 0, 1, 0) | 0 | 0;
+ $461 = $460 & 255;
+ $462 = $461 << 24;
+ $463 = $462 ^ $437;
+ $464 = $76 + 4 | 0;
+ $465 = SAFE_HEAP_LOAD($464 | 0, 4, 0) | 0 | 0;
+ $466 = $465 ^ $443;
+ $467 = $412 & 255;
+ $468 = 6848 + $467 | 0;
+ $469 = SAFE_HEAP_LOAD($468 >> 0 | 0, 1, 0) | 0 | 0;
+ $470 = $469 & 255;
+ $471 = $450 | $470;
+ $472 = $412 >>> 8;
+ $473 = $472 & 255;
+ $474 = 6848 + $473 | 0;
+ $475 = SAFE_HEAP_LOAD($474 >> 0 | 0, 1, 0) | 0 | 0;
+ $476 = $475 & 255;
+ $477 = $476 << 8;
+ $478 = $457 | $477;
+ $479 = $412 >>> 16;
+ $480 = $479 & 255;
+ $481 = 6848 + $480 | 0;
+ $482 = SAFE_HEAP_LOAD($481 >> 0 | 0, 1, 0) | 0 | 0;
+ $483 = $482 & 255;
+ $484 = $483 << 16;
+ $485 = $484 ^ $437;
+ $486 = $412 >>> 24;
+ $487 = 6848 + $486 | 0;
+ $488 = SAFE_HEAP_LOAD($487 >> 0 | 0, 1, 0) | 0 | 0;
+ $489 = $488 & 255;
+ $490 = $489 << 24;
+ $491 = $490 ^ $465;
+ $492 = $0 + 248 | 0;
+ $493 = SAFE_HEAP_LOAD($492 | 0, 4, 0) | 0 | 0;
+ $494 = $493 ^ $471;
+ $495 = $415 & 255;
+ $496 = 6848 + $495 | 0;
+ $497 = SAFE_HEAP_LOAD($496 >> 0 | 0, 1, 0) | 0 | 0;
+ $498 = $497 & 255;
+ $499 = $478 | $498;
+ $500 = $415 >>> 8;
+ $501 = $500 & 255;
+ $502 = 6848 + $501 | 0;
+ $503 = SAFE_HEAP_LOAD($502 >> 0 | 0, 1, 0) | 0 | 0;
+ $504 = $503 & 255;
+ $505 = $504 << 8;
+ $506 = $505 ^ $437;
+ $507 = $415 >>> 16;
+ $508 = $507 & 255;
+ $509 = 6848 + $508 | 0;
+ $510 = SAFE_HEAP_LOAD($509 >> 0 | 0, 1, 0) | 0 | 0;
+ $511 = $510 & 255;
+ $512 = $511 << 16;
+ $513 = $512 ^ $465;
+ $514 = $415 >>> 24;
+ $515 = 6848 + $514 | 0;
+ $516 = SAFE_HEAP_LOAD($515 >> 0 | 0, 1, 0) | 0 | 0;
+ $517 = $516 & 255;
+ $518 = $517 << 24;
+ $519 = $518 ^ $494;
+ $520 = $0 + 252 | 0;
+ $521 = SAFE_HEAP_LOAD($520 | 0, 4, 0) | 0 | 0;
+ $522 = $521 ^ $499;
+ $523 = $463 >>> 24;
+ $524 = $523 & 255;
+ $525 = $1 + 3 | 0;
+ SAFE_HEAP_STORE($525 >> 0 | 0, $524 | 0, 1);
+ $526 = $485 >>> 16;
+ $527 = $526 & 255;
+ $528 = $1 + 2 | 0;
+ SAFE_HEAP_STORE($528 >> 0 | 0, $527 | 0, 1);
+ $529 = $506 >>> 8;
+ $530 = $529 & 255;
+ $531 = $1 + 1 | 0;
+ SAFE_HEAP_STORE($531 >> 0 | 0, $530 | 0, 1);
+ $532 = $438 & 255;
+ SAFE_HEAP_STORE($1 >> 0 | 0, $532 | 0, 1);
+ $533 = $1 + 4 | 0;
+ $534 = $491 >>> 24;
+ $535 = $534 & 255;
+ $536 = $1 + 7 | 0;
+ SAFE_HEAP_STORE($536 >> 0 | 0, $535 | 0, 1);
+ $537 = $513 >>> 16;
+ $538 = $537 & 255;
+ $539 = $1 + 6 | 0;
+ SAFE_HEAP_STORE($539 >> 0 | 0, $538 | 0, 1);
+ $540 = $466 >>> 8;
+ $541 = $540 & 255;
+ $542 = $1 + 5 | 0;
+ SAFE_HEAP_STORE($542 >> 0 | 0, $541 | 0, 1);
+ $543 = $466 & 255;
+ SAFE_HEAP_STORE($533 >> 0 | 0, $543 | 0, 1);
+ $544 = $1 + 8 | 0;
+ $545 = $519 >>> 24;
+ $546 = $545 & 255;
+ $547 = $1 + 11 | 0;
+ SAFE_HEAP_STORE($547 >> 0 | 0, $546 | 0, 1);
+ $548 = $494 >>> 16;
+ $549 = $548 & 255;
+ $550 = $1 + 10 | 0;
+ SAFE_HEAP_STORE($550 >> 0 | 0, $549 | 0, 1);
+ $551 = $494 >>> 8;
+ $552 = $551 & 255;
+ $553 = $1 + 9 | 0;
+ SAFE_HEAP_STORE($553 >> 0 | 0, $552 | 0, 1);
+ $554 = $494 & 255;
+ SAFE_HEAP_STORE($544 >> 0 | 0, $554 | 0, 1);
+ $555 = $1 + 12 | 0;
+ $556 = $522 >>> 24;
+ $557 = $556 & 255;
+ $558 = $1 + 15 | 0;
+ SAFE_HEAP_STORE($558 >> 0 | 0, $557 | 0, 1);
+ $559 = $522 >>> 16;
+ $560 = $559 & 255;
+ $561 = $1 + 14 | 0;
+ SAFE_HEAP_STORE($561 >> 0 | 0, $560 | 0, 1);
+ $562 = $522 >>> 8;
+ $563 = $562 & 255;
+ $564 = $1 + 13 | 0;
+ SAFE_HEAP_STORE($564 >> 0 | 0, $563 | 0, 1);
+ $565 = $522 & 255;
+ SAFE_HEAP_STORE($555 >> 0 | 0, $565 | 0, 1);
+ return 64;
+}
+
+function _do_setkey($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$0152 = 0, $$$1149 = 0, $$$2154 = 0, $$$4 = 0, $$0 = 0, $$0$i$i$ph = 0, 
$$0$i12$i$ph = 0, $$0$i9$i$ph = 0, $$0138 = 0, $$0144220 = 0, $$0146 = 0, 
$$0147208 = 0, $$0148218 = 0, $$0152217 = 0, $$0155219 = 0, $$06$i$ph = 0, 
$$06$i164 = 0, $$1149$lcssa = 0, $$1149211 = 0, $$1153206 = 0;
+ var $$1156216 = 0, $$2150207 = 0, $$2154$lcssa = 0, $$2154202 = 0, 
$$2157$lcssa = 0, $$2157210 = 0, $$3151$lcssa = 0, $$3151203 = 0, $$3158184 = 
0, $$4$lcssa = 0, $$4159185 = 0, $$4195 = 0, $$5 = 0, $$5189 = 0, $$5191 = 0, 
$$6201 = 0, $$7$lcssa = 0, $$7194 = 0, $$phi$trans$insert243 = 0, $$pr = 0;
+ var $$pre = 0, $$pre242 = 0, $$pre244 = 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, $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, $or$cond161 = 0, $uglygep = 0, $uglygep233 = 
0, $uglygep235 = 0, $uglygep238 = 0, $umax = 0, $umax239 = 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 + 1592 | 0;
+ $3 = sp + 1024 | 0;
+ $4 = sp + 512 | 0;
+ $5 = sp;
+ $6 = sp + 1600 | 0;
+ $7 = sp + 1528 | 0;
+ $8 = __gcry_fips_mode() | 0;
+ $9 = SAFE_HEAP_LOAD(17616 * 4 | 0, 4, 0) | 0 | 0;
+ $10 = $9 | $8;
+ $11 = ($10 | 0) == 0;
+ L1 : do {
+  if ($11) {
+   SAFE_HEAP_STORE(17616 * 4 | 0, 1 | 0, 4);
+   _do_setkey($3, 37769, 16) | 0;
+   $12 = $3 + 496 | 0;
+   $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $14 = ($13 | 0) == (0 | 0);
+   if (!$14) {
+    FUNCTION_TABLE_v[(SAFE_FT_MASK($13 | 0, 127 | 0) | 0) & 127]();
+   }
+   $15 = $3 + 488 | 0;
+   $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+   FUNCTION_TABLE_iiii[(SAFE_FT_MASK($16 | 0, 127 | 0) | 0) & 127]($3, $6, 
37785) | 0;
+   $17 = _memcmp($6, 37801, 16) | 0;
+   $18 = ($17 | 0) == 0;
+   do {
+    if ($18) {
+     _check_decryption_preparation($3);
+     $19 = $3 + 500 | 0;
+     $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+     $21 = ($20 | 0) == (0 | 0);
+     if (!$21) {
+      FUNCTION_TABLE_v[(SAFE_FT_MASK($20 | 0, 127 | 0) | 0) & 127]();
+     }
+     $22 = $3 + 492 | 0;
+     $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+     FUNCTION_TABLE_iiii[(SAFE_FT_MASK($23 | 0, 127 | 0) | 0) & 127]($3, $6, 
$6) | 0;
+     $24 = _memcmp($6, 37785, 16) | 0;
+     $25 = ($24 | 0) == 0;
+     if ($25) {
+      _do_setkey($4, 37906, 24) | 0;
+      $26 = $4 + 496 | 0;
+      $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+      $28 = ($27 | 0) == (0 | 0);
+      if (!$28) {
+       FUNCTION_TABLE_v[(SAFE_FT_MASK($27 | 0, 127 | 0) | 0) & 127]();
+      }
+      $29 = $4 + 488 | 0;
+      $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+      FUNCTION_TABLE_iiii[(SAFE_FT_MASK($30 | 0, 127 | 0) | 0) & 127]($4, $6, 
37930) | 0;
+      $31 = _memcmp($6, 37946, 16) | 0;
+      $32 = ($31 | 0) == 0;
+      if ($32) {
+       _check_decryption_preparation($4);
+       $33 = $4 + 500 | 0;
+       $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+       $35 = ($34 | 0) == (0 | 0);
+       if (!$35) {
+        FUNCTION_TABLE_v[(SAFE_FT_MASK($34 | 0, 127 | 0) | 0) & 127]();
+       }
+       $36 = $4 + 492 | 0;
+       $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+       FUNCTION_TABLE_iiii[(SAFE_FT_MASK($37 | 0, 127 | 0) | 0) & 127]($4, $6, 
$6) | 0;
+       $38 = _memcmp($6, 37930, 16) | 0;
+       $39 = ($38 | 0) == 0;
+       if ($39) {
+        _do_setkey($5, 38026, 32) | 0;
+        $40 = $5 + 496 | 0;
+        $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+        $42 = ($41 | 0) == (0 | 0);
+        if (!$42) {
+         FUNCTION_TABLE_v[(SAFE_FT_MASK($41 | 0, 127 | 0) | 0) & 127]();
+        }
+        $43 = $5 + 488 | 0;
+        $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+        FUNCTION_TABLE_iiii[(SAFE_FT_MASK($44 | 0, 127 | 0) | 0) & 127]($5, 
$6, 38058) | 0;
+        $45 = _memcmp($6, 38074, 16) | 0;
+        $46 = ($45 | 0) == 0;
+        if ($46) {
+         _check_decryption_preparation($5);
+         $47 = $5 + 500 | 0;
+         $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+         $49 = ($48 | 0) == (0 | 0);
+         if (!$49) {
+          FUNCTION_TABLE_v[(SAFE_FT_MASK($48 | 0, 127 | 0) | 0) & 127]();
+         }
+         $50 = $5 + 492 | 0;
+         $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+         FUNCTION_TABLE_iiii[(SAFE_FT_MASK($51 | 0, 127 | 0) | 0) & 127]($5, 
$6, $6) | 0;
+         $52 = _memcmp($6, 38058, 16) | 0;
+         $53 = ($52 | 0) == 0;
+         if ($53) {
+          $54 = __gcry_selftest_helper_ctr(37765, 1, 2, 61, 9, 16, 504) | 0;
+          $55 = ($54 | 0) == (0 | 0);
+          if (!$55) {
+           $$06$i$ph = $54;
+           label = 25;
+           break;
+          }
+          $56 = __gcry_selftest_helper_cbc(37765, 1, 2, 60, 10, 16, 504) | 0;
+          $57 = ($56 | 0) == (0 | 0);
+          if (!$57) {
+           $$06$i$ph = $56;
+           label = 25;
+           break;
+          }
+          $58 = __gcry_selftest_helper_cfb(37765, 1, 2, 58, 10, 16, 504) | 0;
+          SAFE_HEAP_STORE(17617 * 4 | 0, $58 | 0, 4);
+          $59 = ($58 | 0) == (0 | 0);
+          if ($59) {
+           break L1;
+          } else {
+           $$06$i164 = $58;
+           break;
+          }
+         } else {
+          $$0$i$i$ph = 38090;
+         }
+        } else {
+         $$0$i$i$ph = 38122;
+        }
+        $$06$i$ph = $$0$i$i$ph;
+        label = 25;
+        break;
+       } else {
+        $$0$i9$i$ph = 37962;
+       }
+      } else {
+       $$0$i9$i$ph = 37994;
+      }
+      $$06$i$ph = $$0$i9$i$ph;
+      label = 25;
+     } else {
+      $$0$i12$i$ph = 37817;
+      label = 8;
+     }
+    } else {
+     $$0$i12$i$ph = 37849;
+     label = 8;
+    }
+   } while (0);
+   if ((label | 0) == 8) {
+    $$06$i$ph = $$0$i12$i$ph;
+    label = 25;
+   }
+   if ((label | 0) == 25) {
+    SAFE_HEAP_STORE(17617 * 4 | 0, $$06$i$ph | 0, 4);
+    $$06$i164 = $$06$i$ph;
+   }
+   SAFE_HEAP_STORE($vararg_buffer | 0, $$06$i164 | 0, 4);
+   __gcry_log_error(43455, $vararg_buffer);
+   label = 28;
+  } else {
+   label = 28;
+  }
+ } while (0);
+ if ((label | 0) == 28) {
+  $$pr = SAFE_HEAP_LOAD(17617 * 4 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($61 | 0, $$0138 | 0, 4);
+ $62 = $0 + 484 | 0;
+ $63 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+ $64 = $63 & -2;
+ SAFE_HEAP_STORE($62 >> 0 | 0, $64 | 0, 1);
+ $65 = $0 + 488 | 0;
+ SAFE_HEAP_STORE($65 | 0, 68 | 0, 4);
+ $66 = $0 + 492 | 0;
+ SAFE_HEAP_STORE($66 | 0, 69 | 0, 4);
+ $67 = $0 + 496 | 0;
+ SAFE_HEAP_STORE($67 | 0, 70 | 0, 4);
+ $68 = $0 + 500 | 0;
+ SAFE_HEAP_STORE($68 | 0, 71 | 0, 4);
+ $69 = SAFE_HEAP_LOAD(4800 | 0, 1, 0) | 0 | 0;
+ $70 = SAFE_HEAP_LOAD(4832 >> 0 | 0, 1, 0) | 0 | 0;
+ $71 = SAFE_HEAP_LOAD(4864 >> 0 | 0, 1, 0) | 0 | 0;
+ $72 = SAFE_HEAP_LOAD(4896 >> 0 | 0, 1, 0) | 0 | 0;
+ $73 = SAFE_HEAP_LOAD(4928 >> 0 | 0, 1, 0) | 0 | 0;
+ $74 = SAFE_HEAP_LOAD(4960 >> 0 | 0, 1, 0) | 0 | 0;
+ $75 = SAFE_HEAP_LOAD(4992 >> 0 | 0, 1, 0) | 0 | 0;
+ $76 = SAFE_HEAP_LOAD(5024 >> 0 | 0, 1, 0) | 0 | 0;
+ $77 = SAFE_HEAP_LOAD(5056 >> 0 | 0, 1, 0) | 0 | 0;
+ $78 = SAFE_HEAP_LOAD(5088 >> 0 | 0, 1, 0) | 0 | 0;
+ $79 = SAFE_HEAP_LOAD(5120 >> 0 | 0, 1, 0) | 0 | 0;
+ $80 = SAFE_HEAP_LOAD(5152 >> 0 | 0, 1, 0) | 0 | 0;
+ $81 = SAFE_HEAP_LOAD(5184 >> 0 | 0, 1, 0) | 0 | 0;
+ $82 = SAFE_HEAP_LOAD(5216 >> 0 | 0, 1, 0) | 0 | 0;
+ $83 = SAFE_HEAP_LOAD(5248 >> 0 | 0, 1, 0) | 0 | 0;
+ $84 = SAFE_HEAP_LOAD(5280 >> 0 | 0, 1, 0) | 0 | 0;
+ $85 = SAFE_HEAP_LOAD(5312 >> 0 | 0, 1, 0) | 0 | 0;
+ $86 = SAFE_HEAP_LOAD(5344 >> 0 | 0, 1, 0) | 0 | 0;
+ $87 = SAFE_HEAP_LOAD(5376 >> 0 | 0, 1, 0) | 0 | 0;
+ $88 = SAFE_HEAP_LOAD(5408 >> 0 | 0, 1, 0) | 0 | 0;
+ $89 = SAFE_HEAP_LOAD(5440 >> 0 | 0, 1, 0) | 0 | 0;
+ $90 = SAFE_HEAP_LOAD(5472 >> 0 | 0, 1, 0) | 0 | 0;
+ $91 = SAFE_HEAP_LOAD(5504 >> 0 | 0, 1, 0) | 0 | 0;
+ $92 = SAFE_HEAP_LOAD(5536 >> 0 | 0, 1, 0) | 0 | 0;
+ $93 = SAFE_HEAP_LOAD(5568 >> 0 | 0, 1, 0) | 0 | 0;
+ $94 = SAFE_HEAP_LOAD(5600 >> 0 | 0, 1, 0) | 0 | 0;
+ $95 = SAFE_HEAP_LOAD(5632 >> 0 | 0, 1, 0) | 0 | 0;
+ $96 = SAFE_HEAP_LOAD(5664 >> 0 | 0, 1, 0) | 0 | 0;
+ $97 = SAFE_HEAP_LOAD(5696 >> 0 | 0, 1, 0) | 0 | 0;
+ $98 = SAFE_HEAP_LOAD(5728 >> 0 | 0, 1, 0) | 0 | 0;
+ $99 = SAFE_HEAP_LOAD(5760 >> 0 | 0, 1, 0) | 0 | 0;
+ $100 = SAFE_HEAP_LOAD(5792 >> 0 | 0, 1, 0) | 0 | 0;
+ $101 = SAFE_HEAP_LOAD(5823 >> 0 | 0, 1, 0) | 0 | 0;
+ $$0144220 = 0;
+ while (1) {
+  $102 = $1 + $$0144220 | 0;
+  $103 = SAFE_HEAP_LOAD($102 >> 0 | 0, 1, 0) | 0 | 0;
+  $104 = $$0144220 & 3;
+  $105 = $$0144220 >> 2;
+  $106 = ($7 + ($105 << 2) | 0) + $104 | 0;
+  SAFE_HEAP_STORE($106 >> 0 | 0, $103 | 0, 1);
+  $107 = $$0144220 + 1 | 0;
+  $exitcond = ($107 | 0) == ($2 | 0);
+  if ($exitcond) {
+   break;
+  } else {
+   $$0144220 = $107;
+  }
+ }
+ $108 = $$0146 + -1 | 0;
+ $109 = $7 + 32 | 0;
+ $$0155219 = $108;
+ while (1) {
+  $111 = $7 + ($$0155219 << 2) | 0;
+  $112 = SAFE_HEAP_LOAD($111 | 0, 4, 0) | 0 | 0;
+  $113 = $109 + ($$0155219 << 2) | 0;
+  SAFE_HEAP_STORE($113 | 0, $112 | 0, 4);
+  $114 = $$0155219 + -1 | 0;
+  $115 = ($$0155219 | 0) > 0;
+  if ($115) {
+   $$0155219 = $114;
+  } else {
+   break;
+  }
+ }
+ $110 = $$0138 | 1;
+ $$0148218 = 0;
+ $$0152217 = 0;
+ $$1156216 = 0;
+ while (1) {
+  $116 = ($$1156216 | 0) < ($$0146 | 0);
+  $117 = ($$0148218 | 0) < 4;
+  $118 = $116 & $117;
+  if ($118) {
+   $119 = $$0152217 << 4;
+   $120 = $$0148218 << 2;
+   $121 = $119 + $120 | 0;
+   $uglygep235 = $0 + $121 | 0;
+   $122 = $$1156216 << 2;
+   $uglygep238 = $109 + $122 | 0;
+   $123 = $$1156216 - $$0146 | 0;
+   $124 = $$0148218 + -4 | 0;
+   $125 = $123 >>> 0 > $124 >>> 0;
+   $umax239 = $125 ? $123 : $124;
+   $126 = Math_imul($umax239, -4) | 0;
+   _memcpy($uglygep235 | 0, $uglygep238 | 0, $126 | 0) | 0;
+   $$1149211 = $$0148218;
+   $$2157210 = $$1156216;
+   while (1) {
+    $146 = $$2157210 + 1 | 0;
+    $147 = $$1149211 + 1 | 0;
+    $148 = ($146 | 0) < ($$0146 | 0);
+    $149 = ($147 | 0) < 4;
+    $150 = $148 & $149;
+    if ($150) {
+     $$1149211 = $147;
+     $$2157210 = $146;
+    } else {
+     $$1149$lcssa = $147;
+     $$2157$lcssa = $146;
+     break;
+    }
+   }
+  } else {
+   $$1149$lcssa = $$0148218;
+   $$2157$lcssa = $$1156216;
+  }
+  $151 = ($$1149$lcssa | 0) == 4;
+  $152 = $151 & 1;
+  $$$0152 = $152 + $$0152217 | 0;
+  $$$1149 = $151 ? 0 : $$1149$lcssa;
+  $153 = ($$2157$lcssa | 0) < ($$0146 | 0);
+  $154 = ($$$0152 | 0) < ($110 | 0);
+  $or$cond = $153 & $154;
+  if ($or$cond) {
+   $$0148218 = $$$1149;
+   $$0152217 = $$$0152;
+   $$1156216 = $$2157$lcssa;
+  } else {
+   break;
+  }
+ }
+ if ($154) {
+  $127 = ($109 + ($108 << 2) | 0) + 1 | 0;
+  $128 = ($109 + ($108 << 2) | 0) + 2 | 0;
+  $129 = $109 + 1 | 0;
+  $130 = ($109 + ($108 << 2) | 0) + 3 | 0;
+  $131 = $109 + 2 | 0;
+  $132 = $109 + ($108 << 2) | 0;
+  $133 = $109 + 3 | 0;
+  $134 = ($$0146 | 0) == 8;
+  $135 = $$0146 >>> 1;
+  $136 = $135 + -1 | 0;
+  $137 = $109 + ($136 << 2) | 0;
+  $138 = $109 + ($135 << 2) | 0;
+  $139 = ($109 + ($136 << 2) | 0) + 1 | 0;
+  $140 = ($109 + ($135 << 2) | 0) + 1 | 0;
+  $141 = ($109 + ($136 << 2) | 0) + 2 | 0;
+  $142 = ($109 + ($135 << 2) | 0) + 2 | 0;
+  $143 = ($109 + ($136 << 2) | 0) + 3 | 0;
+  $144 = ($109 + ($135 << 2) | 0) + 3 | 0;
+  $$5189 = $135 + 1 | 0;
+  $145 = $$5189 >>> 0 < 8;
+  $$phi$trans$insert243 = $109 + ($135 << 2) | 0;
+  $$0147208 = 0;
+  $$1153206 = $$$0152;
+  $$2150207 = $$$1149;
+  while (1) {
+   $156 = SAFE_HEAP_LOAD($127 >> 0 | 0, 1, 0) | 0 | 0;
+   $157 = $156 & 255;
+   $158 = $157 << 2;
+   $159 = 4801 + $158 | 0;
+   $160 = SAFE_HEAP_LOAD($159 >> 0 | 0, 1, 0) | 0 | 0;
+   $161 = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 0;
+   $162 = $161 & 65535;
+   $163 = $161 & 255;
+   $164 = $163 ^ $160;
+   SAFE_HEAP_STORE($109 >> 0 | 0, $164 | 0, 1);
+   $165 = SAFE_HEAP_LOAD($128 >> 0 | 0, 1, 0) | 0 | 0;
+   $166 = $165 & 255;
+   $167 = $166 << 2;
+   $168 = 4801 + $167 | 0;
+   $169 = SAFE_HEAP_LOAD($168 >> 0 | 0, 1, 0) | 0 | 0;
+   $170 = ($162 & 65535) >>> 8;
+   $171 = $170 & 255;
+   $172 = $171 ^ $169;
+   SAFE_HEAP_STORE($129 >> 0 | 0, $172 | 0, 1);
+   $173 = SAFE_HEAP_LOAD($130 >> 0 | 0, 1, 0) | 0 | 0;
+   $174 = $173 & 255;
+   $175 = $174 << 2;
+   $176 = 4801 + $175 | 0;
+   $177 = SAFE_HEAP_LOAD($176 >> 0 | 0, 1, 0) | 0 | 0;
+   $178 = $161 >>> 16;
+   $179 = $178 & 255;
+   $180 = $179 ^ $177;
+   SAFE_HEAP_STORE($131 >> 0 | 0, $180 | 0, 1);
+   $181 = SAFE_HEAP_LOAD($132 >> 0 | 0, 1, 0) | 0 | 0;
+   $182 = $181 & 255;
+   $183 = $182 << 2;
+   $184 = 4801 + $183 | 0;
+   $185 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+   $186 = $161 >>> 24;
+   $187 = $186 & 255;
+   $188 = $187 ^ $185;
+   SAFE_HEAP_STORE($133 >> 0 | 0, $188 | 0, 1);
+   $189 = $$0147208 + 1 | 0;
+   $190 = 7104 + ($$0147208 << 2) | 0;
+   $191 = SAFE_HEAP_LOAD($190 | 0, 4, 0) | 0 | 0;
+   $192 = $164 & 255;
+   $193 = $192 ^ $191;
+   $194 = $193 & 255;
+   SAFE_HEAP_STORE($109 >> 0 | 0, $194 | 0, 1);
+   if ($134) {
+    $$pre242 = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 0;
+    $$4159185 = 1;
+    $205 = $$pre242;
+    while (1) {
+     $202 = $109 + ($$4159185 << 2) | 0;
+     $203 = SAFE_HEAP_LOAD($202 | 0, 4, 0) | 0 | 0;
+     $204 = $203 ^ $205;
+     SAFE_HEAP_STORE($202 | 0, $204 | 0, 4);
+     $206 = $$4159185 + 1 | 0;
+     $207 = ($206 | 0) < ($135 | 0);
+     if ($207) {
+      $$4159185 = $206;
+      $205 = $204;
+     } else {
+      break;
+     }
+    }
+    $208 = SAFE_HEAP_LOAD($137 >> 0 | 0, 1, 0) | 0 | 0;
+    $209 = $208 & 255;
+    $210 = $209 << 2;
+    $211 = 4801 + $210 | 0;
+    $212 = SAFE_HEAP_LOAD($211 >> 0 | 0, 1, 0) | 0 | 0;
+    $213 = SAFE_HEAP_LOAD($138 >> 0 | 0, 1, 0) | 0 | 0;
+    $214 = $213 ^ $212;
+    SAFE_HEAP_STORE($138 >> 0 | 0, $214 | 0, 1);
+    $215 = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 0) | 0 | 0;
+    $216 = $215 & 255;
+    $217 = $216 << 2;
+    $218 = 4801 + $217 | 0;
+    $219 = SAFE_HEAP_LOAD($218 >> 0 | 0, 1, 0) | 0 | 0;
+    $220 = SAFE_HEAP_LOAD($140 >> 0 | 0, 1, 0) | 0 | 0;
+    $221 = $220 ^ $219;
+    SAFE_HEAP_STORE($140 >> 0 | 0, $221 | 0, 1);
+    $222 = SAFE_HEAP_LOAD($141 >> 0 | 0, 1, 0) | 0 | 0;
+    $223 = $222 & 255;
+    $224 = $223 << 2;
+    $225 = 4801 + $224 | 0;
+    $226 = SAFE_HEAP_LOAD($225 >> 0 | 0, 1, 0) | 0 | 0;
+    $227 = SAFE_HEAP_LOAD($142 >> 0 | 0, 1, 0) | 0 | 0;
+    $228 = $227 ^ $226;
+    SAFE_HEAP_STORE($142 >> 0 | 0, $228 | 0, 1);
+    $229 = SAFE_HEAP_LOAD($143 >> 0 | 0, 1, 0) | 0 | 0;
+    $230 = $229 & 255;
+    $231 = $230 << 2;
+    $232 = 4801 + $231 | 0;
+    $233 = SAFE_HEAP_LOAD($232 >> 0 | 0, 1, 0) | 0 | 0;
+    $234 = SAFE_HEAP_LOAD($144 >> 0 | 0, 1, 0) | 0 | 0;
+    $235 = $234 ^ $233;
+    SAFE_HEAP_STORE($144 >> 0 | 0, $235 | 0, 1);
+    if ($145) {
+     $$pre244 = SAFE_HEAP_LOAD($$phi$trans$insert243 | 0, 4, 0) | 0 | 0;
+     $$5191 = $$5189;
+     $239 = $$pre244;
+     while (1) {
+      $236 = $109 + ($$5191 << 2) | 0;
+      $237 = SAFE_HEAP_LOAD($236 | 0, 4, 0) | 0 | 0;
+      $238 = $237 ^ $239;
+      SAFE_HEAP_STORE($236 | 0, $238 | 0, 4);
+      $$5 = $$5191 + 1 | 0;
+      $240 = ($$5 | 0) < 8;
+      if ($240) {
+       $$5191 = $$5;
+       $239 = $238;
+      } else {
+       break;
+      }
+     }
+    }
+   } else {
+    $$pre = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 0;
+    $$3158184 = 1;
+    $199 = $$pre;
+    while (1) {
+     $196 = $109 + ($$3158184 << 2) | 0;
+     $197 = SAFE_HEAP_LOAD($196 | 0, 4, 0) | 0 | 0;
+     $198 = $197 ^ $199;
+     SAFE_HEAP_STORE($196 | 0, $198 | 0, 4);
+     $200 = $$3158184 + 1 | 0;
+     $201 = ($200 | 0) < ($$0146 | 0);
+     if ($201) {
+      $$3158184 = $200;
+      $199 = $198;
+     } else {
+      break;
+     }
+    }
+   }
+   $195 = ($$1153206 | 0) < ($110 | 0);
+   if ($195) {
+    $$2154202 = $$1153206;
+    $$3151203 = $$2150207;
+    $$6201 = 0;
+    while (1) {
+     $241 = ($$6201 | 0) < ($$0146 | 0);
+     $242 = ($$3151203 | 0) < 4;
+     $243 = $241 & $242;
+     if ($243) {
+      $244 = $$2154202 << 4;
+      $245 = $$3151203 << 2;
+      $246 = $244 + $245 | 0;
+      $uglygep = $0 + $246 | 0;
+      $247 = $$6201 << 2;
+      $uglygep233 = $109 + $247 | 0;
+      $248 = $$6201 - $$0146 | 0;
+      $249 = $$3151203 + -4 | 0;
+      $250 = $248 >>> 0 > $249 >>> 0;
+      $umax = $250 ? $248 : $249;
+      $251 = Math_imul($umax, -4) | 0;
+      _memcpy($uglygep | 0, $uglygep233 | 0, $251 | 0) | 0;
+      $$4195 = $$3151203;
+      $$7194 = $$6201;
+      while (1) {
+       $252 = $$7194 + 1 | 0;
+       $253 = $$4195 + 1 | 0;
+       $254 = ($252 | 0) < ($$0146 | 0);
+       $255 = ($253 | 0) < 4;
+       $256 = $254 & $255;
+       if ($256) {
+        $$4195 = $253;
+        $$7194 = $252;
+       } else {
+        $$4$lcssa = $253;
+        $$7$lcssa = $252;
+        break;
+       }
+      }
+     } else {
+      $$4$lcssa = $$3151203;
+      $$7$lcssa = $$6201;
+     }
+     $257 = ($$4$lcssa | 0) == 4;
+     $258 = $257 & 1;
+     $$$2154 = $258 + $$2154202 | 0;
+     $$$4 = $257 ? 0 : $$4$lcssa;
+     $259 = ($$7$lcssa | 0) < ($$0146 | 0);
+     $260 = ($$$2154 | 0) < ($110 | 0);
+     $or$cond161 = $259 & $260;
+     if ($or$cond161) {
+      $$2154202 = $$$2154;
+      $$3151203 = $$$4;
+      $$6201 = $$7$lcssa;
+     } else {
+      $$2154$lcssa = $$$2154;
+      $$3151$lcssa = $$$4;
+      break;
+     }
+    }
+   } else {
+    $$2154$lcssa = $$1153206;
+    $$3151$lcssa = $$2150207;
+   }
+   $155 = ($$2154$lcssa | 0) < ($110 | 0);
+   if ($155) {
+    $$0147208 = $189;
+    $$1153206 = $$2154$lcssa;
+    $$2150207 = $$3151$lcssa;
+   } else {
+    break;
+   }
+  }
+ }
+ $261 = $7;
+ $262 = $261;
+ SAFE_HEAP_STORE($262 | 0, 0 | 0, 4);
+ $263 = $261 + 4 | 0;
+ $264 = $263;
+ SAFE_HEAP_STORE($264 | 0, 0 | 0, 4);
+ $265 = $7 + 8 | 0;
+ $266 = $265;
+ $267 = $266;
+ SAFE_HEAP_STORE($267 | 0, 0 | 0, 4);
+ $268 = $266 + 4 | 0;
+ $269 = $268;
+ SAFE_HEAP_STORE($269 | 0, 0 | 0, 4);
+ $270 = $7 + 16 | 0;
+ $271 = $270;
+ $272 = $271;
+ SAFE_HEAP_STORE($272 | 0, 0 | 0, 4);
+ $273 = $271 + 4 | 0;
+ $274 = $273;
+ SAFE_HEAP_STORE($274 | 0, 0 | 0, 4);
+ $275 = $7 + 24 | 0;
+ $276 = $275;
+ $277 = $276;
+ SAFE_HEAP_STORE($277 | 0, 0 | 0, 4);
+ $278 = $276 + 4 | 0;
+ $279 = $278;
+ SAFE_HEAP_STORE($279 | 0, 0 | 0, 4);
+ $280 = $7 + 32 | 0;
+ $281 = $280;
+ $282 = $281;
+ SAFE_HEAP_STORE($282 | 0, 0 | 0, 4);
+ $283 = $281 + 4 | 0;
+ $284 = $283;
+ SAFE_HEAP_STORE($284 | 0, 0 | 0, 4);
+ $285 = $7 + 40 | 0;
+ $286 = $285;
+ $287 = $286;
+ SAFE_HEAP_STORE($287 | 0, 0 | 0, 4);
+ $288 = $286 + 4 | 0;
+ $289 = $288;
+ SAFE_HEAP_STORE($289 | 0, 0 | 0, 4);
+ $290 = $7 + 48 | 0;
+ $291 = $290;
+ $292 = $291;
+ SAFE_HEAP_STORE($292 | 0, 0 | 0, 4);
+ $293 = $291 + 4 | 0;
+ $294 = $293;
+ SAFE_HEAP_STORE($294 | 0, 0 | 0, 4);
+ $295 = $7 + 56 | 0;
+ $296 = $295;
+ $297 = $296;
+ SAFE_HEAP_STORE($297 | 0, 0 | 0, 4);
+ $298 = $296 + 4 | 0;
+ $299 = $298;
+ SAFE_HEAP_STORE($299 | 0, 0 | 0, 4);
+ $$0 = 0;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _dispose_chunk($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0417 = 0, $$0418 = 0, $$0429 = 0, $$0436 = 0, $$1 = 0, $$1416 = 0, 
$$1424 = 0, $$1427 = 0, $$1431 = 0, $$1435 = 0, $$2 = 0, $$3 = 0, $$3433 = 0, 
$$pre = 0, $$pre$phi22Z2D = 0, $$pre$phi24Z2D = 0, $$pre$phiZ2D = 0, $$pre21 = 
0, $$pre23 = 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, $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, $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, $cond = 0, $cond16 = 0, $not$ = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $2 = $0 + $1 | 0;
+ $3 = $0 + 4 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $4 & 1;
+ $6 = ($5 | 0) == 0;
+ do {
+  if ($6) {
+   $7 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $8 = $4 & 3;
+   $9 = ($8 | 0) == 0;
+   if ($9) {
+    return;
+   }
+   $10 = 0 - $7 | 0;
+   $11 = $0 + $10 | 0;
+   $12 = $7 + $1 | 0;
+   $13 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+   $14 = $11 >>> 0 < $13 >>> 0;
+   if ($14) {
+    _abort();
+   }
+   $15 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+   $16 = ($11 | 0) == ($15 | 0);
+   if ($16) {
+    $101 = $2 + 4 | 0;
+    $102 = SAFE_HEAP_LOAD($101 | 0, 4, 0) | 0 | 0;
+    $103 = $102 & 3;
+    $104 = ($103 | 0) == 3;
+    if (!$104) {
+     $$1 = $11;
+     $$1416 = $12;
+     break;
+    }
+    SAFE_HEAP_STORE(70872 | 0, $12 | 0, 4);
+    $105 = $102 & -2;
+    SAFE_HEAP_STORE($101 | 0, $105 | 0, 4);
+    $106 = $12 | 1;
+    $107 = $11 + 4 | 0;
+    SAFE_HEAP_STORE($107 | 0, $106 | 0, 4);
+    $108 = $11 + $12 | 0;
+    SAFE_HEAP_STORE($108 | 0, $12 | 0, 4);
+    return;
+   }
+   $17 = $7 >>> 3;
+   $18 = $7 >>> 0 < 256;
+   if ($18) {
+    $19 = $11 + 8 | 0;
+    $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+    $21 = $11 + 12 | 0;
+    $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+    $23 = $17 << 1;
+    $24 = 70904 + ($23 << 2) | 0;
+    $25 = ($20 | 0) == ($24 | 0);
+    if (!$25) {
+     $26 = $20 >>> 0 < $13 >>> 0;
+     if ($26) {
+      _abort();
+     }
+     $27 = $20 + 12 | 0;
+     $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+     $29 = ($28 | 0) == ($11 | 0);
+     if (!$29) {
+      _abort();
+     }
+    }
+    $30 = ($22 | 0) == ($20 | 0);
+    if ($30) {
+     $31 = 1 << $17;
+     $32 = $31 ^ -1;
+     $33 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+     $34 = $33 & $32;
+     SAFE_HEAP_STORE(17716 * 4 | 0, $34 | 0, 4);
+     $$1 = $11;
+     $$1416 = $12;
+     break;
+    }
+    $35 = ($22 | 0) == ($24 | 0);
+    if ($35) {
+     $$pre23 = $22 + 8 | 0;
+     $$pre$phi24Z2D = $$pre23;
+    } else {
+     $36 = $22 >>> 0 < $13 >>> 0;
+     if ($36) {
+      _abort();
+     }
+     $37 = $22 + 8 | 0;
+     $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+     $39 = ($38 | 0) == ($11 | 0);
+     if ($39) {
+      $$pre$phi24Z2D = $37;
+     } else {
+      _abort();
+     }
+    }
+    $40 = $20 + 12 | 0;
+    SAFE_HEAP_STORE($40 | 0, $22 | 0, 4);
+    SAFE_HEAP_STORE($$pre$phi24Z2D | 0, $20 | 0, 4);
+    $$1 = $11;
+    $$1416 = $12;
+    break;
+   }
+   $41 = $11 + 24 | 0;
+   $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+   $43 = $11 + 12 | 0;
+   $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+   $45 = ($44 | 0) == ($11 | 0);
+   do {
+    if ($45) {
+     $55 = $11 + 16 | 0;
+     $56 = $55 + 4 | 0;
+     $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+     $58 = ($57 | 0) == (0 | 0);
+     if ($58) {
+      $59 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+      $60 = ($59 | 0) == (0 | 0);
+      if ($60) {
+       $$3 = 0;
+       break;
+      } else {
+       $$1424 = $59;
+       $$1427 = $55;
+      }
+     } else {
+      $$1424 = $57;
+      $$1427 = $56;
+     }
+     while (1) {
+      $61 = $$1424 + 20 | 0;
+      $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+      $63 = ($62 | 0) == (0 | 0);
+      if (!$63) {
+       $$1424 = $62;
+       $$1427 = $61;
+       continue;
+      }
+      $64 = $$1424 + 16 | 0;
+      $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+      $66 = ($65 | 0) == (0 | 0);
+      if ($66) {
+       break;
+      } else {
+       $$1424 = $65;
+       $$1427 = $64;
+      }
+     }
+     $67 = $$1427 >>> 0 < $13 >>> 0;
+     if ($67) {
+      _abort();
+     } else {
+      SAFE_HEAP_STORE($$1427 | 0, 0 | 0, 4);
+      $$3 = $$1424;
+      break;
+     }
+    } else {
+     $46 = $11 + 8 | 0;
+     $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+     $48 = $47 >>> 0 < $13 >>> 0;
+     if ($48) {
+      _abort();
+     }
+     $49 = $47 + 12 | 0;
+     $50 = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+     $51 = ($50 | 0) == ($11 | 0);
+     if (!$51) {
+      _abort();
+     }
+     $52 = $44 + 8 | 0;
+     $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+     $54 = ($53 | 0) == ($11 | 0);
+     if ($54) {
+      SAFE_HEAP_STORE($49 | 0, $44 | 0, 4);
+      SAFE_HEAP_STORE($52 | 0, $47 | 0, 4);
+      $$3 = $44;
+      break;
+     } else {
+      _abort();
+     }
+    }
+   } while (0);
+   $68 = ($42 | 0) == (0 | 0);
+   if ($68) {
+    $$1 = $11;
+    $$1416 = $12;
+   } else {
+    $69 = $11 + 28 | 0;
+    $70 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+    $71 = 71168 + ($70 << 2) | 0;
+    $72 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+    $73 = ($11 | 0) == ($72 | 0);
+    if ($73) {
+     SAFE_HEAP_STORE($71 | 0, $$3 | 0, 4);
+     $cond = ($$3 | 0) == (0 | 0);
+     if ($cond) {
+      $74 = 1 << $70;
+      $75 = $74 ^ -1;
+      $76 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+      $77 = $76 & $75;
+      SAFE_HEAP_STORE(70868 | 0, $77 | 0, 4);
+      $$1 = $11;
+      $$1416 = $12;
+      break;
+     }
+    } else {
+     $78 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $79 = $42 >>> 0 < $78 >>> 0;
+     if ($79) {
+      _abort();
+     }
+     $80 = $42 + 16 | 0;
+     $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+     $82 = ($81 | 0) == ($11 | 0);
+     if ($82) {
+      SAFE_HEAP_STORE($80 | 0, $$3 | 0, 4);
+     } else {
+      $83 = $42 + 20 | 0;
+      SAFE_HEAP_STORE($83 | 0, $$3 | 0, 4);
+     }
+     $84 = ($$3 | 0) == (0 | 0);
+     if ($84) {
+      $$1 = $11;
+      $$1416 = $12;
+      break;
+     }
+    }
+    $85 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+    $86 = $$3 >>> 0 < $85 >>> 0;
+    if ($86) {
+     _abort();
+    }
+    $87 = $$3 + 24 | 0;
+    SAFE_HEAP_STORE($87 | 0, $42 | 0, 4);
+    $88 = $11 + 16 | 0;
+    $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+    $90 = ($89 | 0) == (0 | 0);
+    do {
+     if (!$90) {
+      $91 = $89 >>> 0 < $85 >>> 0;
+      if ($91) {
+       _abort();
+      } else {
+       $92 = $$3 + 16 | 0;
+       SAFE_HEAP_STORE($92 | 0, $89 | 0, 4);
+       $93 = $89 + 24 | 0;
+       SAFE_HEAP_STORE($93 | 0, $$3 | 0, 4);
+       break;
+      }
+     }
+    } while (0);
+    $94 = $88 + 4 | 0;
+    $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+    $96 = ($95 | 0) == (0 | 0);
+    if ($96) {
+     $$1 = $11;
+     $$1416 = $12;
+    } else {
+     $97 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $98 = $95 >>> 0 < $97 >>> 0;
+     if ($98) {
+      _abort();
+     } else {
+      $99 = $$3 + 20 | 0;
+      SAFE_HEAP_STORE($99 | 0, $95 | 0, 4);
+      $100 = $95 + 24 | 0;
+      SAFE_HEAP_STORE($100 | 0, $$3 | 0, 4);
+      $$1 = $11;
+      $$1416 = $12;
+      break;
+     }
+    }
+   }
+  } else {
+   $$1 = $0;
+   $$1416 = $1;
+  }
+ } while (0);
+ $109 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+ $110 = $2 >>> 0 < $109 >>> 0;
+ if ($110) {
+  _abort();
+ }
+ $111 = $2 + 4 | 0;
+ $112 = SAFE_HEAP_LOAD($111 | 0, 4, 0) | 0 | 0;
+ $113 = $112 & 2;
+ $114 = ($113 | 0) == 0;
+ if ($114) {
+  $115 = SAFE_HEAP_LOAD(70888 | 0, 4, 0) | 0 | 0;
+  $116 = ($2 | 0) == ($115 | 0);
+  if ($116) {
+   $117 = SAFE_HEAP_LOAD(70876 | 0, 4, 0) | 0 | 0;
+   $118 = $117 + $$1416 | 0;
+   SAFE_HEAP_STORE(70876 | 0, $118 | 0, 4);
+   SAFE_HEAP_STORE(70888 | 0, $$1 | 0, 4);
+   $119 = $118 | 1;
+   $120 = $$1 + 4 | 0;
+   SAFE_HEAP_STORE($120 | 0, $119 | 0, 4);
+   $121 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+   $122 = ($$1 | 0) == ($121 | 0);
+   if (!$122) {
+    return;
+   }
+   SAFE_HEAP_STORE(70884 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE(70872 | 0, 0 | 0, 4);
+   return;
+  }
+  $123 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+  $124 = ($2 | 0) == ($123 | 0);
+  if ($124) {
+   $125 = SAFE_HEAP_LOAD(70872 | 0, 4, 0) | 0 | 0;
+   $126 = $125 + $$1416 | 0;
+   SAFE_HEAP_STORE(70872 | 0, $126 | 0, 4);
+   SAFE_HEAP_STORE(70884 | 0, $$1 | 0, 4);
+   $127 = $126 | 1;
+   $128 = $$1 + 4 | 0;
+   SAFE_HEAP_STORE($128 | 0, $127 | 0, 4);
+   $129 = $$1 + $126 | 0;
+   SAFE_HEAP_STORE($129 | 0, $126 | 0, 4);
+   return;
+  }
+  $130 = $112 & -8;
+  $131 = $130 + $$1416 | 0;
+  $132 = $112 >>> 3;
+  $133 = $112 >>> 0 < 256;
+  do {
+   if ($133) {
+    $134 = $2 + 8 | 0;
+    $135 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 0;
+    $136 = $2 + 12 | 0;
+    $137 = SAFE_HEAP_LOAD($136 | 0, 4, 0) | 0 | 0;
+    $138 = $132 << 1;
+    $139 = 70904 + ($138 << 2) | 0;
+    $140 = ($135 | 0) == ($139 | 0);
+    if (!$140) {
+     $141 = $135 >>> 0 < $109 >>> 0;
+     if ($141) {
+      _abort();
+     }
+     $142 = $135 + 12 | 0;
+     $143 = SAFE_HEAP_LOAD($142 | 0, 4, 0) | 0 | 0;
+     $144 = ($143 | 0) == ($2 | 0);
+     if (!$144) {
+      _abort();
+     }
+    }
+    $145 = ($137 | 0) == ($135 | 0);
+    if ($145) {
+     $146 = 1 << $132;
+     $147 = $146 ^ -1;
+     $148 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+     $149 = $148 & $147;
+     SAFE_HEAP_STORE(17716 * 4 | 0, $149 | 0, 4);
+     break;
+    }
+    $150 = ($137 | 0) == ($139 | 0);
+    if ($150) {
+     $$pre21 = $137 + 8 | 0;
+     $$pre$phi22Z2D = $$pre21;
+    } else {
+     $151 = $137 >>> 0 < $109 >>> 0;
+     if ($151) {
+      _abort();
+     }
+     $152 = $137 + 8 | 0;
+     $153 = SAFE_HEAP_LOAD($152 | 0, 4, 0) | 0 | 0;
+     $154 = ($153 | 0) == ($2 | 0);
+     if ($154) {
+      $$pre$phi22Z2D = $152;
+     } else {
+      _abort();
+     }
+    }
+    $155 = $135 + 12 | 0;
+    SAFE_HEAP_STORE($155 | 0, $137 | 0, 4);
+    SAFE_HEAP_STORE($$pre$phi22Z2D | 0, $135 | 0, 4);
+   } else {
+    $156 = $2 + 24 | 0;
+    $157 = SAFE_HEAP_LOAD($156 | 0, 4, 0) | 0 | 0;
+    $158 = $2 + 12 | 0;
+    $159 = SAFE_HEAP_LOAD($158 | 0, 4, 0) | 0 | 0;
+    $160 = ($159 | 0) == ($2 | 0);
+    do {
+     if ($160) {
+      $170 = $2 + 16 | 0;
+      $171 = $170 + 4 | 0;
+      $172 = SAFE_HEAP_LOAD($171 | 0, 4, 0) | 0 | 0;
+      $173 = ($172 | 0) == (0 | 0);
+      if ($173) {
+       $174 = SAFE_HEAP_LOAD($170 | 0, 4, 0) | 0 | 0;
+       $175 = ($174 | 0) == (0 | 0);
+       if ($175) {
+        $$3433 = 0;
+        break;
+       } else {
+        $$1431 = $174;
+        $$1435 = $170;
+       }
+      } else {
+       $$1431 = $172;
+       $$1435 = $171;
+      }
+      while (1) {
+       $176 = $$1431 + 20 | 0;
+       $177 = SAFE_HEAP_LOAD($176 | 0, 4, 0) | 0 | 0;
+       $178 = ($177 | 0) == (0 | 0);
+       if (!$178) {
+        $$1431 = $177;
+        $$1435 = $176;
+        continue;
+       }
+       $179 = $$1431 + 16 | 0;
+       $180 = SAFE_HEAP_LOAD($179 | 0, 4, 0) | 0 | 0;
+       $181 = ($180 | 0) == (0 | 0);
+       if ($181) {
+        break;
+       } else {
+        $$1431 = $180;
+        $$1435 = $179;
+       }
+      }
+      $182 = $$1435 >>> 0 < $109 >>> 0;
+      if ($182) {
+       _abort();
+      } else {
+       SAFE_HEAP_STORE($$1435 | 0, 0 | 0, 4);
+       $$3433 = $$1431;
+       break;
+      }
+     } else {
+      $161 = $2 + 8 | 0;
+      $162 = SAFE_HEAP_LOAD($161 | 0, 4, 0) | 0 | 0;
+      $163 = $162 >>> 0 < $109 >>> 0;
+      if ($163) {
+       _abort();
+      }
+      $164 = $162 + 12 | 0;
+      $165 = SAFE_HEAP_LOAD($164 | 0, 4, 0) | 0 | 0;
+      $166 = ($165 | 0) == ($2 | 0);
+      if (!$166) {
+       _abort();
+      }
+      $167 = $159 + 8 | 0;
+      $168 = SAFE_HEAP_LOAD($167 | 0, 4, 0) | 0 | 0;
+      $169 = ($168 | 0) == ($2 | 0);
+      if ($169) {
+       SAFE_HEAP_STORE($164 | 0, $159 | 0, 4);
+       SAFE_HEAP_STORE($167 | 0, $162 | 0, 4);
+       $$3433 = $159;
+       break;
+      } else {
+       _abort();
+      }
+     }
+    } while (0);
+    $183 = ($157 | 0) == (0 | 0);
+    if (!$183) {
+     $184 = $2 + 28 | 0;
+     $185 = SAFE_HEAP_LOAD($184 | 0, 4, 0) | 0 | 0;
+     $186 = 71168 + ($185 << 2) | 0;
+     $187 = SAFE_HEAP_LOAD($186 | 0, 4, 0) | 0 | 0;
+     $188 = ($2 | 0) == ($187 | 0);
+     if ($188) {
+      SAFE_HEAP_STORE($186 | 0, $$3433 | 0, 4);
+      $cond16 = ($$3433 | 0) == (0 | 0);
+      if ($cond16) {
+       $189 = 1 << $185;
+       $190 = $189 ^ -1;
+       $191 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+       $192 = $191 & $190;
+       SAFE_HEAP_STORE(70868 | 0, $192 | 0, 4);
+       break;
+      }
+     } else {
+      $193 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+      $194 = $157 >>> 0 < $193 >>> 0;
+      if ($194) {
+       _abort();
+      }
+      $195 = $157 + 16 | 0;
+      $196 = SAFE_HEAP_LOAD($195 | 0, 4, 0) | 0 | 0;
+      $197 = ($196 | 0) == ($2 | 0);
+      if ($197) {
+       SAFE_HEAP_STORE($195 | 0, $$3433 | 0, 4);
+      } else {
+       $198 = $157 + 20 | 0;
+       SAFE_HEAP_STORE($198 | 0, $$3433 | 0, 4);
+      }
+      $199 = ($$3433 | 0) == (0 | 0);
+      if ($199) {
+       break;
+      }
+     }
+     $200 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $201 = $$3433 >>> 0 < $200 >>> 0;
+     if ($201) {
+      _abort();
+     }
+     $202 = $$3433 + 24 | 0;
+     SAFE_HEAP_STORE($202 | 0, $157 | 0, 4);
+     $203 = $2 + 16 | 0;
+     $204 = SAFE_HEAP_LOAD($203 | 0, 4, 0) | 0 | 0;
+     $205 = ($204 | 0) == (0 | 0);
+     do {
+      if (!$205) {
+       $206 = $204 >>> 0 < $200 >>> 0;
+       if ($206) {
+        _abort();
+       } else {
+        $207 = $$3433 + 16 | 0;
+        SAFE_HEAP_STORE($207 | 0, $204 | 0, 4);
+        $208 = $204 + 24 | 0;
+        SAFE_HEAP_STORE($208 | 0, $$3433 | 0, 4);
+        break;
+       }
+      }
+     } while (0);
+     $209 = $203 + 4 | 0;
+     $210 = SAFE_HEAP_LOAD($209 | 0, 4, 0) | 0 | 0;
+     $211 = ($210 | 0) == (0 | 0);
+     if (!$211) {
+      $212 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+      $213 = $210 >>> 0 < $212 >>> 0;
+      if ($213) {
+       _abort();
+      } else {
+       $214 = $$3433 + 20 | 0;
+       SAFE_HEAP_STORE($214 | 0, $210 | 0, 4);
+       $215 = $210 + 24 | 0;
+       SAFE_HEAP_STORE($215 | 0, $$3433 | 0, 4);
+       break;
+      }
+     }
+    }
+   }
+  } while (0);
+  $216 = $131 | 1;
+  $217 = $$1 + 4 | 0;
+  SAFE_HEAP_STORE($217 | 0, $216 | 0, 4);
+  $218 = $$1 + $131 | 0;
+  SAFE_HEAP_STORE($218 | 0, $131 | 0, 4);
+  $219 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+  $220 = ($$1 | 0) == ($219 | 0);
+  if ($220) {
+   SAFE_HEAP_STORE(70872 | 0, $131 | 0, 4);
+   return;
+  } else {
+   $$2 = $131;
+  }
+ } else {
+  $221 = $112 & -2;
+  SAFE_HEAP_STORE($111 | 0, $221 | 0, 4);
+  $222 = $$1416 | 1;
+  $223 = $$1 + 4 | 0;
+  SAFE_HEAP_STORE($223 | 0, $222 | 0, 4);
+  $224 = $$1 + $$1416 | 0;
+  SAFE_HEAP_STORE($224 | 0, $$1416 | 0, 4);
+  $$2 = $$1416;
+ }
+ $225 = $$2 >>> 3;
+ $226 = $$2 >>> 0 < 256;
+ if ($226) {
+  $227 = $225 << 1;
+  $228 = 70904 + ($227 << 2) | 0;
+  $229 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+  $230 = 1 << $225;
+  $231 = $229 & $230;
+  $232 = ($231 | 0) == 0;
+  if ($232) {
+   $233 = $229 | $230;
+   SAFE_HEAP_STORE(17716 * 4 | 0, $233 | 0, 4);
+   $$pre = $228 + 8 | 0;
+   $$0436 = $228;
+   $$pre$phiZ2D = $$pre;
+  } else {
+   $234 = $228 + 8 | 0;
+   $235 = SAFE_HEAP_LOAD($234 | 0, 4, 0) | 0 | 0;
+   $236 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+   $237 = $235 >>> 0 < $236 >>> 0;
+   if ($237) {
+    _abort();
+   } else {
+    $$0436 = $235;
+    $$pre$phiZ2D = $234;
+   }
+  }
+  SAFE_HEAP_STORE($$pre$phiZ2D | 0, $$1 | 0, 4);
+  $238 = $$0436 + 12 | 0;
+  SAFE_HEAP_STORE($238 | 0, $$1 | 0, 4);
+  $239 = $$1 + 8 | 0;
+  SAFE_HEAP_STORE($239 | 0, $$0436 | 0, 4);
+  $240 = $$1 + 12 | 0;
+  SAFE_HEAP_STORE($240 | 0, $228 | 0, 4);
+  return;
+ }
+ $241 = $$2 >>> 8;
+ $242 = ($241 | 0) == 0;
+ if ($242) {
+  $$0429 = 0;
+ } else {
+  $243 = $$2 >>> 0 > 16777215;
+  if ($243) {
+   $$0429 = 31;
+  } else {
+   $244 = $241 + 1048320 | 0;
+   $245 = $244 >>> 16;
+   $246 = $245 & 8;
+   $247 = $241 << $246;
+   $248 = $247 + 520192 | 0;
+   $249 = $248 >>> 16;
+   $250 = $249 & 4;
+   $251 = $250 | $246;
+   $252 = $247 << $250;
+   $253 = $252 + 245760 | 0;
+   $254 = $253 >>> 16;
+   $255 = $254 & 2;
+   $256 = $251 | $255;
+   $257 = 14 - $256 | 0;
+   $258 = $252 << $255;
+   $259 = $258 >>> 15;
+   $260 = $257 + $259 | 0;
+   $261 = $260 << 1;
+   $262 = $260 + 7 | 0;
+   $263 = $$2 >>> $262;
+   $264 = $263 & 1;
+   $265 = $264 | $261;
+   $$0429 = $265;
+  }
+ }
+ $266 = 71168 + ($$0429 << 2) | 0;
+ $267 = $$1 + 28 | 0;
+ SAFE_HEAP_STORE($267 | 0, $$0429 | 0, 4);
+ $268 = $$1 + 16 | 0;
+ $269 = $$1 + 20 | 0;
+ SAFE_HEAP_STORE($269 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($268 | 0, 0 | 0, 4);
+ $270 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+ $271 = 1 << $$0429;
+ $272 = $270 & $271;
+ $273 = ($272 | 0) == 0;
+ if ($273) {
+  $274 = $270 | $271;
+  SAFE_HEAP_STORE(70868 | 0, $274 | 0, 4);
+  SAFE_HEAP_STORE($266 | 0, $$1 | 0, 4);
+  $275 = $$1 + 24 | 0;
+  SAFE_HEAP_STORE($275 | 0, $266 | 0, 4);
+  $276 = $$1 + 12 | 0;
+  SAFE_HEAP_STORE($276 | 0, $$1 | 0, 4);
+  $277 = $$1 + 8 | 0;
+  SAFE_HEAP_STORE($277 | 0, $$1 | 0, 4);
+  return;
+ }
+ $278 = SAFE_HEAP_LOAD($266 | 0, 4, 0) | 0 | 0;
+ $279 = ($$0429 | 0) == 31;
+ $280 = $$0429 >>> 1;
+ $281 = 25 - $280 | 0;
+ $282 = $279 ? 0 : $281;
+ $283 = $$2 << $282;
+ $$0417 = $283;
+ $$0418 = $278;
+ while (1) {
+  $284 = $$0418 + 4 | 0;
+  $285 = SAFE_HEAP_LOAD($284 | 0, 4, 0) | 0 | 0;
+  $286 = $285 & -8;
+  $287 = ($286 | 0) == ($$2 | 0);
+  if ($287) {
+   label = 127;
+   break;
+  }
+  $288 = $$0417 >>> 31;
+  $289 = ($$0418 + 16 | 0) + ($288 << 2) | 0;
+  $290 = $$0417 << 1;
+  $291 = SAFE_HEAP_LOAD($289 | 0, 4, 0) | 0 | 0;
+  $292 = ($291 | 0) == (0 | 0);
+  if ($292) {
+   label = 124;
+   break;
+  } else {
+   $$0417 = $290;
+   $$0418 = $291;
+  }
+ }
+ if ((label | 0) == 124) {
+  $293 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+  $294 = $289 >>> 0 < $293 >>> 0;
+  if ($294) {
+   _abort();
+  }
+  SAFE_HEAP_STORE($289 | 0, $$1 | 0, 4);
+  $295 = $$1 + 24 | 0;
+  SAFE_HEAP_STORE($295 | 0, $$0418 | 0, 4);
+  $296 = $$1 + 12 | 0;
+  SAFE_HEAP_STORE($296 | 0, $$1 | 0, 4);
+  $297 = $$1 + 8 | 0;
+  SAFE_HEAP_STORE($297 | 0, $$1 | 0, 4);
+  return;
+ } else if ((label | 0) == 127) {
+  $298 = $$0418 + 8 | 0;
+  $299 = SAFE_HEAP_LOAD($298 | 0, 4, 0) | 0 | 0;
+  $300 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+  $301 = $299 >>> 0 >= $300 >>> 0;
+  $not$ = $$0418 >>> 0 >= $300 >>> 0;
+  $302 = $301 & $not$;
+  if (!$302) {
+   _abort();
+  }
+  $303 = $299 + 12 | 0;
+  SAFE_HEAP_STORE($303 | 0, $$1 | 0, 4);
+  SAFE_HEAP_STORE($298 | 0, $$1 | 0, 4);
+  $304 = $$1 + 8 | 0;
+  SAFE_HEAP_STORE($304 | 0, $299 | 0, 4);
+  $305 = $$1 + 12 | 0;
+  SAFE_HEAP_STORE($305 | 0, $$0418 | 0, 4);
+  $306 = $$1 + 24 | 0;
+  SAFE_HEAP_STORE($306 | 0, 0 | 0, 4);
+  return;
+ }
+}
+
+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, $$0$lcssa = 0, $$016$i = 0, $$016$in$i = 0, $$0579678 = 0, $$0584 
= 0, $$0586 = 0, $$0587 = 0, $$0588 = 0, $$0589 = 0, $$0590 = 0, $$0591 = 0, 
$$0592 = 0, $$0593 = 0, $$0594664 = 0, $$0595 = 0, $$0596 = 0, $$0597 = 0, 
$$0598 = 0, $$0602 = 0;
+ var $$0605 = 0, $$0606 = 0, $$0607669 = 0, $$0607669$in = 0, $$0608 = 0, 
$$0609685 = 0, $$0610 = 0, $$0614 = 0, $$0620 = 0, $$0623 = 0, $$0628 = 0, 
$$0629 = 0, $$0630 = 0, $$0631 = 0, $$0687 = 0, $$1 = 0, $$1576 = 0, $$1580673 
= 0, $$1580673$in = 0, $$1582$lcssa = 0;
+ var $$1582677 = 0, $$1611$lcssa = 0, $$1611684 = 0, $$1615$lcssa = 0, 
$$1615683 = 0, $$1621 = 0, $$1624 = 0, $$2577 = 0, $$2583$lcssa = 0, $$2583672 
= 0, $$2600 = 0, $$2604 = 0, $$2612 = 0, $$2616 = 0, $$2622 = 0, $$2625 = 0, 
$$2668 = 0, $$3 = 0, $$3578 = 0, $$3601 = 0;
+ var $$3613 = 0, $$3617 = 0, $$4 = 0, $$4618 = 0, $$5 = 0, $$5619 = 0, $$632 = 
0, $$639 = 0, $$643 = 0, $$644 = 0, $$645 = 0, $$645$v = 0, $$646 = 0, $$647 = 
0, $$647$v = 0, $$648 = 0, $$649 = 0, $$649$v = 0, $$650 = 0, $$651 = 0;
+ var $$651$v = 0, $$652 = 0, $$653 = 0, $$653$v = 0, $$654 = 0, $$655 = 0, 
$$655$v = 0, $$656 = 0, $$656$v = 0, $$657 = 0, $$658 = 0, $$658$v = 0, $$659 = 
0, $$neg660 = 0, $$neg661 = 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, $29 = 0, $30 = 
0, $31 = 0, $32 = 0, $33 = 0, $34 = 0;
+ var $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, $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 = 0, $or$cond633 = 0, $or$cond634 = 0, $or$cond635 = 0, 
$or$cond636 = 0, $or$cond637 = 0, $or$cond638 = 0, $or$cond640 = 0, $or$cond641 
= 0, $or$cond642 = 0, label = 0;
+ var sp = 0;
+ sp = STACKTOP;
+ switch ($5 | 0) {
+ case 0:
+  {
+   __gcry_divide_by_zero();
+   break;
+  }
+ case 1:
+  {
+   $6 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $7 = $3 + -1 | 0;
+   $8 = $2 + ($7 << 2) | 0;
+   $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+   $10 = $9 >>> 0 < $6 >>> 0;
+   $11 = $10 ? 0 : $6;
+   $$ = $9 - $11 | 0;
+   $12 = $10 & 1;
+   $$632 = $12 ^ 1;
+   $13 = $0 + ($1 << 2) | 0;
+   $14 = $3 + -2 | 0;
+   $15 = ($14 | 0) > -1;
+   if ($15) {
+    $16 = $6 >>> 16;
+    $17 = $6 & 65535;
+    $$0579678 = $14;
+    $$1582677 = $$;
+    while (1) {
+     $18 = ($$1582677 >>> 0) % ($16 >>> 0) & -1;
+     $19 = ($$1582677 >>> 0) / ($16 >>> 0) & -1;
+     $20 = Math_imul($19, $17) | 0;
+     $21 = $18 << 16;
+     $22 = $2 + ($$0579678 << 2) | 0;
+     $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 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;
+      $$644 = $30 + $27 | 0;
+      $$645$v = $or$cond ? -2 : -1;
+      $$645 = $$645$v + $19 | 0;
+      $$0584 = $$645;
+      $$0587 = $$644;
+     } else {
+      $$0584 = $19;
+      $$0587 = $25;
+     }
+     $31 = $$0587 - $20 | 0;
+     $32 = ($31 >>> 0) % ($16 >>> 0) & -1;
+     $33 = ($31 >>> 0) / ($16 >>> 0) & -1;
+     $34 = Math_imul($33, $17) | 0;
+     $35 = $32 << 16;
+     $36 = $23 & 65535;
+     $37 = $36 | $35;
+     $38 = $37 >>> 0 < $34 >>> 0;
+     if ($38) {
+      $39 = $37 + $6 | 0;
+      $40 = $39 >>> 0 >= $6 >>> 0;
+      $41 = $39 >>> 0 < $34 >>> 0;
+      $or$cond633 = $40 & $41;
+      $42 = $or$cond633 ? $6 : 0;
+      $$646 = $42 + $39 | 0;
+      $$647$v = $or$cond633 ? -2 : -1;
+      $$647 = $$647$v + $33 | 0;
+      $$0586 = $$647;
+      $$0592 = $$646;
+     } else {
+      $$0586 = $33;
+      $$0592 = $37;
+     }
+     $43 = $$0592 - $34 | 0;
+     $44 = $$0584 << 16;
+     $45 = $$0586 | $44;
+     $46 = $13 + ($$0579678 << 2) | 0;
+     SAFE_HEAP_STORE($46 | 0, $45 | 0, 4);
+     $47 = $$0579678 + -1 | 0;
+     $48 = ($$0579678 | 0) > 0;
+     if ($48) {
+      $$0579678 = $47;
+      $$1582677 = $43;
+     } else {
+      $$1582$lcssa = $43;
+      break;
+     }
+    }
+   } else {
+    $$1582$lcssa = $$;
+   }
+   $49 = 0 - $1 | 0;
+   $50 = $13 + ($49 << 2) | 0;
+   $51 = ($1 | 0) > 0;
+   if ($51) {
+    $52 = $6 >>> 16;
+    $53 = $6 & 65535;
+    $$1580673$in = $1;
+    $$2583672 = $$1582$lcssa;
+    while (1) {
+     $$1580673 = $$1580673$in + -1 | 0;
+     $54 = ($$2583672 >>> 0) % ($52 >>> 0) & -1;
+     $55 = ($$2583672 >>> 0) / ($52 >>> 0) & -1;
+     $56 = Math_imul($55, $53) | 0;
+     $57 = $54 << 16;
+     $58 = $57 >>> 0 < $56 >>> 0;
+     if ($58) {
+      $59 = $57 + $6 | 0;
+      $60 = $59 >>> 0 >= $6 >>> 0;
+      $61 = $59 >>> 0 < $56 >>> 0;
+      $or$cond634 = $60 & $61;
+      $62 = $or$cond634 ? $6 : 0;
+      $$648 = $62 + $59 | 0;
+      $$649$v = $or$cond634 ? -2 : -1;
+      $$649 = $$649$v + $55 | 0;
+      $$0595 = $$649;
+      $$0606 = $$648;
+     } else {
+      $$0595 = $55;
+      $$0606 = $57;
+     }
+     $63 = $$0606 - $56 | 0;
+     $64 = ($63 >>> 0) % ($52 >>> 0) & -1;
+     $65 = ($63 >>> 0) / ($52 >>> 0) & -1;
+     $66 = Math_imul($65, $53) | 0;
+     $67 = $64 << 16;
+     $68 = $67 >>> 0 < $66 >>> 0;
+     if ($68) {
+      $69 = $67 + $6 | 0;
+      $70 = $69 >>> 0 >= $6 >>> 0;
+      $71 = $69 >>> 0 < $66 >>> 0;
+      $or$cond635 = $70 & $71;
+      $72 = $or$cond635 ? $6 : 0;
+      $$650 = $72 + $69 | 0;
+      $$651$v = $or$cond635 ? -2 : -1;
+      $$651 = $$651$v + $65 | 0;
+      $$0605 = $$651;
+      $$0608 = $$650;
+     } else {
+      $$0605 = $65;
+      $$0608 = $67;
+     }
+     $73 = $$0608 - $66 | 0;
+     $74 = $$0595 << 16;
+     $75 = $$0605 | $74;
+     $76 = $50 + ($$1580673 << 2) | 0;
+     SAFE_HEAP_STORE($76 | 0, $75 | 0, 4);
+     $77 = ($$1580673$in | 0) > 1;
+     if ($77) {
+      $$1580673$in = $$1580673;
+      $$2583672 = $73;
+     } else {
+      $$2583$lcssa = $73;
+      break;
+     }
+    }
+   } else {
+    $$2583$lcssa = $$1582$lcssa;
+   }
+   SAFE_HEAP_STORE($2 | 0, $$2583$lcssa | 0, 4);
+   $$3578 = $$632;
+   return $$3578 | 0;
+   break;
+  }
+ case 2:
+  {
+   $78 = $3 + -2 | 0;
+   $79 = $2 + ($78 << 2) | 0;
+   $80 = $4 + 4 | 0;
+   $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+   $82 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $83 = 0 - $82 | 0;
+   $84 = $79 + 4 | 0;
+   $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+   $86 = SAFE_HEAP_LOAD($79 | 0, 4, 0) | 0 | 0;
+   $87 = $85 >>> 0 < $81 >>> 0;
+   if ($87) {
+    $$0610 = $85;
+    $$0614 = $86;
+    $$1576 = 0;
+   } else {
+    $88 = $85 >>> 0 <= $81 >>> 0;
+    $89 = $86 >>> 0 < $82 >>> 0;
+    $or$cond636 = $88 & $89;
+    $90 = $86 - $82 | 0;
+    if ($or$cond636) {
+     $$0610 = $85;
+     $$0614 = $86;
+     $$1576 = 0;
+    } else {
+     $91 = $85 - $81 | 0;
+     $92 = $90 >>> 0 > $86 >>> 0;
+     $$neg660 = $92 << 31 >> 31;
+     $93 = $91 + $$neg660 | 0;
+     $$0610 = $93;
+     $$0614 = $90;
+     $$1576 = 1;
+    }
+   }
+   $94 = $1 + -3 | 0;
+   $95 = $94 + $3 | 0;
+   $96 = ($95 | 0) > -1;
+   if ($96) {
+    $97 = ($82 | 0) != 0;
+    $98 = $97 & 1;
+    $99 = $82 - $98 | 0;
+    $100 = $81 >>> 16;
+    $101 = $81 & 65535;
+    $102 = $82 & 65535;
+    $103 = $82 >>> 16;
+    $$0609685 = $95;
+    $$0687 = $79;
+    $$1611684 = $$0610;
+    $$1615683 = $$0614;
+    while (1) {
+     $104 = ($$0609685 | 0) < ($1 | 0);
+     if ($104) {
+      SAFE_HEAP_STORE($$0687 | 0, 0 | 0, 4);
+      $$1 = $$0687;
+     } else {
+      $105 = $$0687 + -4 | 0;
+      $$1 = $105;
+     }
+     $106 = ($$1611684 | 0) == ($81 | 0);
+     if ($106) {
+      $107 = $$1615683 + $81 | 0;
+      $108 = $107 >>> 0 < $81 >>> 0;
+      if ($108) {
+       $109 = SAFE_HEAP_LOAD($$1 | 0, 4, 0) | 0 | 0;
+       $110 = $109 + $82 | 0;
+       $111 = $107 - $82 | 0;
+       $112 = $110 >>> 0 < $109 >>> 0;
+       $113 = $112 & 1;
+       $114 = $111 + $113 | 0;
+       $115 = $0 + ($$0609685 << 2) | 0;
+       SAFE_HEAP_STORE($115 | 0, -1 | 0, 4);
+       $$5 = $114;
+       $$5619 = $110;
+      } else {
+       $$0620 = -1;
+       $$0623 = $107;
+       $$2612 = $99;
+       $$2616 = $83;
+       label = 34;
+      }
+     } else {
+      $116 = ($$1611684 >>> 0) % ($100 >>> 0) & -1;
+      $117 = ($$1611684 >>> 0) / ($100 >>> 0) & -1;
+      $118 = Math_imul($117, $101) | 0;
+      $119 = $116 << 16;
+      $120 = $$1615683 >>> 16;
+      $121 = $119 | $120;
+      $122 = $121 >>> 0 < $118 >>> 0;
+      if ($122) {
+       $123 = $121 + $81 | 0;
+       $124 = $123 >>> 0 >= $81 >>> 0;
+       $125 = $123 >>> 0 < $118 >>> 0;
+       $or$cond637 = $124 & $125;
+       $126 = $or$cond637 ? $81 : 0;
+       $$652 = $126 + $123 | 0;
+       $$653$v = $or$cond637 ? -2 : -1;
+       $$653 = $$653$v + $117 | 0;
+       $$0628 = $$653;
+       $$0631 = $$652;
+      } else {
+       $$0628 = $117;
+       $$0631 = $121;
+      }
+      $127 = $$0631 - $118 | 0;
+      $128 = ($127 >>> 0) % ($100 >>> 0) & -1;
+      $129 = ($127 >>> 0) / ($100 >>> 0) & -1;
+      $130 = Math_imul($129, $101) | 0;
+      $131 = $128 << 16;
+      $132 = $$1615683 & 65535;
+      $133 = $131 | $132;
+      $134 = $133 >>> 0 < $130 >>> 0;
+      if ($134) {
+       $135 = $133 + $81 | 0;
+       $136 = $135 >>> 0 >= $81 >>> 0;
+       $137 = $135 >>> 0 < $130 >>> 0;
+       $or$cond638 = $136 & $137;
+       $138 = $or$cond638 ? $81 : 0;
+       $$654 = $138 + $135 | 0;
+       $$655$v = $or$cond638 ? -2 : -1;
+       $$655 = $$655$v + $129 | 0;
+       $$0629 = $$655;
+       $$0630 = $$654;
+      } else {
+       $$0629 = $129;
+       $$0630 = $133;
+      }
+      $139 = $$0630 - $130 | 0;
+      $140 = $$0628 << 16;
+      $141 = $$0629 | $140;
+      $142 = $$0629 & 65535;
+      $143 = $141 >>> 16;
+      $144 = Math_imul($142, $102) | 0;
+      $145 = Math_imul($143, $102) | 0;
+      $146 = Math_imul($142, $103) | 0;
+      $147 = Math_imul($143, $103) | 0;
+      $148 = $144 >>> 16;
+      $149 = $148 + $146 | 0;
+      $150 = $149 + $145 | 0;
+      $151 = $150 >>> 0 < $146 >>> 0;
+      $152 = $147 + 65536 | 0;
+      $$639 = $151 ? $152 : $147;
+      $153 = $150 >>> 16;
+      $154 = $$639 + $153 | 0;
+      $155 = $150 << 16;
+      $156 = $144 & 65535;
+      $157 = $155 | $156;
+      $$0620 = $141;
+      $$0623 = $139;
+      $$2612 = $154;
+      $$2616 = $157;
+      label = 34;
+     }
+     if ((label | 0) == 34) {
+      label = 0;
+      $158 = SAFE_HEAP_LOAD($$1 | 0, 4, 0) | 0 | 0;
+      $$1621 = $$0620;
+      $$1624 = $$0623;
+      $$3613 = $$2612;
+      $$3617 = $$2616;
+      while (1) {
+       $159 = $$3613 >>> 0 > $$1624 >>> 0;
+       if (!$159) {
+        $160 = ($$3613 | 0) == ($$1624 | 0);
+        $161 = $$3617 >>> 0 > $158 >>> 0;
+        $or$cond640 = $161 & $160;
+        if (!$or$cond640) {
+         $$2622 = $$1621;
+         $$2625 = $$1624;
+         $$4 = $$3613;
+         $$4618 = $$3617;
+         break;
+        }
+       }
+       $162 = $$1621 + -1 | 0;
+       $163 = $$3617 - $82 | 0;
+       $164 = $163 >>> 0 > $$3617 >>> 0;
+       $165 = $164 & 1;
+       $166 = $$3613 - $165 | 0;
+       $167 = $$1624 + $81 | 0;
+       $168 = $167 >>> 0 < $81 >>> 0;
+       if ($168) {
+        $$2622 = $162;
+        $$2625 = $167;
+        $$4 = $166;
+        $$4618 = $163;
+        break;
+       } else {
+        $$1621 = $162;
+        $$1624 = $167;
+        $$3613 = $166;
+        $$3617 = $163;
+       }
+      }
+      $169 = $0 + ($$0609685 << 2) | 0;
+      SAFE_HEAP_STORE($169 | 0, $$2622 | 0, 4);
+      $170 = $158 - $$4618 | 0;
+      $171 = $$2625 - $$4 | 0;
+      $172 = $170 >>> 0 > $158 >>> 0;
+      $$neg661 = $172 << 31 >> 31;
+      $173 = $171 + $$neg661 | 0;
+      $$5 = $173;
+      $$5619 = $170;
+     }
+     $174 = $$0609685 + -1 | 0;
+     $175 = ($$0609685 | 0) > 0;
+     if ($175) {
+      $$0609685 = $174;
+      $$0687 = $$1;
+      $$1611684 = $$5;
+      $$1615683 = $$5619;
+     } else {
+      $$0$lcssa = $$1;
+      $$1611$lcssa = $$5;
+      $$1615$lcssa = $$5619;
+      break;
+     }
+    }
+   } else {
+    $$0$lcssa = $79;
+    $$1611$lcssa = $$0610;
+    $$1615$lcssa = $$0614;
+   }
+   $176 = $$0$lcssa + 4 | 0;
+   SAFE_HEAP_STORE($176 | 0, $$1611$lcssa | 0, 4);
+   SAFE_HEAP_STORE($$0$lcssa | 0, $$1615$lcssa | 0, 4);
+   $$3578 = $$1576;
+   return $$3578 | 0;
+   break;
+  }
+ default:
+  {
+   $177 = $3 - $5 | 0;
+   $178 = $2 + ($177 << 2) | 0;
+   $179 = $5 + -1 | 0;
+   $180 = $4 + ($179 << 2) | 0;
+   $181 = SAFE_HEAP_LOAD($180 | 0, 4, 0) | 0 | 0;
+   $182 = $5 + -2 | 0;
+   $183 = $4 + ($182 << 2) | 0;
+   $184 = SAFE_HEAP_LOAD($183 | 0, 4, 0) | 0 | 0;
+   $185 = $178 + ($179 << 2) | 0;
+   $186 = SAFE_HEAP_LOAD($185 | 0, 4, 0) | 0 | 0;
+   $187 = $186 >>> 0 < $181 >>> 0;
+   L3 : do {
+    if ($187) {
+     $$0602 = $186;
+     $$2577 = 0;
+    } else {
+     $188 = $186 >>> 0 > $181 >>> 0;
+     L5 : do {
+      if (!$188) {
+       $$016$in$i = $179;
+       while (1) {
+        $$016$i = $$016$in$i + -1 | 0;
+        $189 = ($$016$in$i | 0) > 0;
+        if (!$189) {
+         break L5;
+        }
+        $190 = $178 + ($$016$i << 2) | 0;
+        $191 = SAFE_HEAP_LOAD($190 | 0, 4, 0) | 0 | 0;
+        $192 = $4 + ($$016$i << 2) | 0;
+        $193 = SAFE_HEAP_LOAD($192 | 0, 4, 0) | 0 | 0;
+        $194 = ($191 | 0) == ($193 | 0);
+        if ($194) {
+         $$016$in$i = $$016$i;
+        } else {
+         break;
+        }
+       }
+       $195 = $191 >>> 0 > $193 >>> 0;
+       if (!$195) {
+        $$0602 = $186;
+        $$2577 = 0;
+        break L3;
+       }
+      }
+     } while (0);
+     __gcry_mpih_sub_n($178, $178, $4, $5) | 0;
+     $196 = SAFE_HEAP_LOAD($185 | 0, 4, 0) | 0 | 0;
+     $$0602 = $196;
+     $$2577 = 1;
+    }
+   } while (0);
+   $197 = $3 + $1 | 0;
+   $198 = $197 - $5 | 0;
+   $199 = ($198 | 0) > 0;
+   if (!$199) {
+    $$3578 = $$2577;
+    return $$3578 | 0;
+   }
+   $200 = $181 >>> 16;
+   $201 = $181 & 65535;
+   $202 = $184 & 65535;
+   $203 = $184 >>> 16;
+   $204 = ($182 | 0) > -1;
+   $$0607669$in = $198;
+   $$2668 = $178;
+   $215 = $$0602;
+   while (1) {
+    $$0607669 = $$0607669$in + -1 | 0;
+    $205 = ($$0607669$in | 0) > ($1 | 0);
+    if ($205) {
+     $206 = $$2668 + -4 | 0;
+     $207 = $206 + ($5 << 2) | 0;
+     $208 = SAFE_HEAP_LOAD($207 | 0, 4, 0) | 0 | 0;
+     $$0596 = $208;
+     $$3 = $206;
+    } else {
+     if ($204) {
+      $209 = $$2668 + 4 | 0;
+      $$0594664 = $182;
+      while (1) {
+       $210 = $$2668 + ($$0594664 << 2) | 0;
+       $211 = SAFE_HEAP_LOAD($210 | 0, 4, 0) | 0 | 0;
+       $212 = $209 + ($$0594664 << 2) | 0;
+       SAFE_HEAP_STORE($212 | 0, $211 | 0, 4);
+       $213 = $$0594664 + -1 | 0;
+       $214 = ($$0594664 | 0) > 0;
+       if ($214) {
+        $$0594664 = $213;
+       } else {
+        break;
+       }
+      }
+     }
+     SAFE_HEAP_STORE($$2668 | 0, 0 | 0, 4);
+     $$0596 = $215;
+     $$3 = $$2668;
+    }
+    $216 = ($215 | 0) == ($181 | 0);
+    L26 : do {
+     if ($216) {
+      $$2600 = -1;
+     } else {
+      $217 = ($215 >>> 0) % ($200 >>> 0) & -1;
+      $218 = ($215 >>> 0) / ($200 >>> 0) & -1;
+      $219 = Math_imul($218, $201) | 0;
+      $220 = $217 << 16;
+      $221 = $$3 + ($179 << 2) | 0;
+      $222 = SAFE_HEAP_LOAD($221 | 0, 4, 0) | 0 | 0;
+      $223 = $222 >>> 16;
+      $224 = $223 | $220;
+      $225 = $224 >>> 0 < $219 >>> 0;
+      if ($225) {
+       $226 = $224 + $181 | 0;
+       $227 = $226 >>> 0 >= $181 >>> 0;
+       $228 = $226 >>> 0 < $219 >>> 0;
+       $or$cond641 = $227 & $228;
+       $$656$v = $or$cond641 ? -2 : -1;
+       $$656 = $$656$v + $218 | 0;
+       $229 = $or$cond641 ? $181 : 0;
+       $$657 = $229 + $226 | 0;
+       $$0589 = $$657;
+       $$0591 = $$656;
+      } else {
+       $$0589 = $224;
+       $$0591 = $218;
+      }
+      $230 = $$0589 - $219 | 0;
+      $231 = ($230 >>> 0) % ($200 >>> 0) & -1;
+      $232 = ($230 >>> 0) / ($200 >>> 0) & -1;
+      $233 = Math_imul($232, $201) | 0;
+      $234 = $231 << 16;
+      $235 = $222 & 65535;
+      $236 = $235 | $234;
+      $237 = $236 >>> 0 < $233 >>> 0;
+      if ($237) {
+       $238 = $236 + $181 | 0;
+       $239 = $238 >>> 0 >= $181 >>> 0;
+       $240 = $238 >>> 0 < $233 >>> 0;
+       $or$cond642 = $239 & $240;
+       $$658$v = $or$cond642 ? -2 : -1;
+       $$658 = $$658$v + $232 | 0;
+       $241 = $or$cond642 ? $181 : 0;
+       $$659 = $241 + $238 | 0;
+       $$0588 = $$659;
+       $$0590 = $$658;
+      } else {
+       $$0588 = $236;
+       $$0590 = $232;
+      }
+      $242 = $$0588 - $233 | 0;
+      $243 = $$0591 << 16;
+      $244 = $$0590 | $243;
+      $245 = $$0590 & 65535;
+      $246 = $244 >>> 16;
+      $247 = Math_imul($245, $202) | 0;
+      $248 = Math_imul($246, $202) | 0;
+      $249 = Math_imul($245, $203) | 0;
+      $250 = Math_imul($246, $203) | 0;
+      $251 = $247 >>> 16;
+      $252 = $251 + $249 | 0;
+      $253 = $252 + $248 | 0;
+      $254 = $253 >>> 0 < $249 >>> 0;
+      $255 = $250 + 65536 | 0;
+      $$643 = $254 ? $255 : $250;
+      $256 = $253 >>> 16;
+      $257 = $$643 + $256 | 0;
+      $258 = $253 << 16;
+      $259 = $247 & 65535;
+      $260 = $258 | $259;
+      $261 = $$3 + ($182 << 2) | 0;
+      $$0593 = $242;
+      $$0597 = $257;
+      $$0598 = $244;
+      $$2604 = $260;
+      while (1) {
+       $262 = $$0597 >>> 0 > $$0593 >>> 0;
+       if (!$262) {
+        $263 = ($$0597 | 0) == ($$0593 | 0);
+        if (!$263) {
+         $$2600 = $$0598;
+         break L26;
+        }
+        $264 = SAFE_HEAP_LOAD($261 | 0, 4, 0) | 0 | 0;
+        $265 = $$2604 >>> 0 > $264 >>> 0;
+        if (!$265) {
+         $$2600 = $$0598;
+         break L26;
+        }
+       }
+       $266 = $$0598 + -1 | 0;
+       $267 = $$0593 + $181 | 0;
+       $268 = $267 >>> 0 < $181 >>> 0;
+       if ($268) {
+        $$2600 = $266;
+        break L26;
+       }
+       $269 = $$2604 >>> 0 < $184 >>> 0;
+       $270 = $269 & 1;
+       $271 = $$0597 - $270 | 0;
+       $272 = $$2604 - $184 | 0;
+       $$0593 = $267;
+       $$0597 = $271;
+       $$0598 = $266;
+       $$2604 = $272;
+      }
+     }
+    } while (0);
+    $273 = __gcry_mpih_submul_1($$3, $4, $5, $$2600) | 0;
+    $274 = ($$0596 | 0) == ($273 | 0);
+    if ($274) {
+     $$3601 = $$2600;
+    } else {
+     $275 = $$2600 + -1 | 0;
+     __gcry_mpih_add_n($$3, $$3, $4, $5) | 0;
+     $$3601 = $275;
+    }
+    $276 = $0 + ($$0607669 << 2) | 0;
+    SAFE_HEAP_STORE($276 | 0, $$3601 | 0, 4);
+    $277 = $$3 + ($179 << 2) | 0;
+    $278 = SAFE_HEAP_LOAD($277 | 0, 4, 0) | 0 | 0;
+    $279 = ($$0607669$in | 0) > 1;
+    if ($279) {
+     $$0607669$in = $$0607669;
+     $$2668 = $$3;
+     $215 = $278;
+    } else {
+     $$3578 = $$2577;
+     break;
+    }
+   }
+   return $$3578 | 0;
+  }
+ }
+ return 0 | 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;
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ dest = $5;
+ stop = dest + 60 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $6 = __gcry_sexp_find_token($0, 46885, 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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;
+    SAFE_HEAP_STORE($vararg_buffer | 0, $12 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, $13 | 0, 4);
+    $vararg_ptr2 = $vararg_buffer + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr2 | 0, $14 | 0, 4);
+    $vararg_ptr3 = $vararg_buffer + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr3 | 0, $3 | 0, 4);
+    $vararg_ptr4 = $vararg_buffer + 16 | 0;
+    SAFE_HEAP_STORE($vararg_ptr4 | 0, $15 | 0, 4);
+    $vararg_ptr5 = $vararg_buffer + 20 | 0;
+    SAFE_HEAP_STORE($vararg_ptr5 | 0, $16 | 0, 4);
+    $vararg_ptr6 = $vararg_buffer + 24 | 0;
+    SAFE_HEAP_STORE($vararg_ptr6 | 0, $4 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer + 28 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, $17 | 0, 4);
+    $vararg_ptr8 = $vararg_buffer + 32 | 0;
+    SAFE_HEAP_STORE($vararg_ptr8 | 0, 0 | 0, 4);
+    $18 = __gcry_sexp_extract_param($0, 0, 47225, $vararg_buffer) | 0;
+    $$034 = $18;
+    label = 6;
+   }
+  } else {
+   $$0 = 0;
+   $$033 = $6;
+   $$1 = 0;
+   $$2 = $8;
+  }
+ }
+ if ((label | 0) == 5) {
+  $19 = $5 + 56 | 0;
+  SAFE_HEAP_STORE($vararg_buffer9 | 0, $4 | 0, 4);
+  $vararg_ptr12 = $vararg_buffer9 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr12 | 0, $19 | 0, 4);
+  $vararg_ptr13 = $vararg_buffer9 + 8 | 0;
+  SAFE_HEAP_STORE($vararg_ptr13 | 0, 0 | 0, 4);
+  $20 = __gcry_sexp_extract_param($0, 0, 47244, $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, 46925, 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    $35 = ($34 | 0) == (0 | 0);
+    if (!$35) {
+     $36 = $5 + 20 | 0;
+     __gcry_mpi_point_init($36);
+     $37 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $42 = $41 >>> 11;
+     $43 = $42 & 2;
+     SAFE_HEAP_STORE($5 | 0, $43 | 0, 4);
+     $44 = $41 >>> 12;
+     $$lobit = $44 & 1;
+     $45 = $5 + 4 | 0;
+     SAFE_HEAP_STORE($45 | 0, $$lobit | 0, 4);
+    }
+    $46 = __gcry_get_debug_flag(1) | 0;
+    $47 = ($46 | 0) == 0;
+    if ($47) {
+     $$pre38 = $5 + 8 | 0;
+     $$pre$phiZ2D = $$pre38;
+    } else {
+     $48 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $49 = __gcry_ecc_model2str($48) | 0;
+     $50 = $5 + 4 | 0;
+     $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+     $52 = __gcry_ecc_dialect2str($51) | 0;
+     SAFE_HEAP_STORE($vararg_buffer14 | 0, $49 | 0, 4);
+     $vararg_ptr17 = $vararg_buffer14 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr17 | 0, $52 | 0, 4);
+     __gcry_log_debug(48153, $vararg_buffer14);
+     $53 = $5 + 40 | 0;
+     $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+     $55 = ($54 | 0) == (0 | 0);
+     if (!$55) {
+      SAFE_HEAP_STORE($vararg_buffer18 | 0, $54 | 0, 4);
+      __gcry_log_debug(48177, $vararg_buffer18);
+     }
+     $56 = $5 + 8 | 0;
+     $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48198, $57);
+     $58 = $5 + 12 | 0;
+     $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48214, $59);
+     $60 = $5 + 16 | 0;
+     $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48230, $61);
+     $62 = $5 + 20 | 0;
+     __gcry_mpi_point_log(48246, $62, 0);
+     $63 = $5 + 32 | 0;
+     $64 = SAFE_HEAP_LOAD($63 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48260, $64);
+     $65 = $5 + 36 | 0;
+     $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48276, $66);
+     $67 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(48292, $67);
+     $68 = __gcry_fips_mode() | 0;
+     $69 = ($68 | 0) == 0;
+     if ($69) {
+      $70 = $5 + 56 | 0;
+      $71 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(48308, $71);
+      $$pre$phiZ2D = $56;
+     } else {
+      $$pre$phiZ2D = $56;
+     }
+    }
+    $72 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+    $73 = ($72 | 0) == (0 | 0);
+    if ($73) {
+     $$0 = 0;
+     $$033 = $22;
+     $$1 = $$032;
+     $$2 = 68;
+    } else {
+     $74 = $5 + 12 | 0;
+     $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     $76 = ($75 | 0) == (0 | 0);
+     if ($76) {
+      $$0 = 0;
+      $$033 = $22;
+      $$1 = $$032;
+      $$2 = 68;
+     } else {
+      $77 = $5 + 16 | 0;
+      $78 = SAFE_HEAP_LOAD($77 | 0, 4, 0) | 0 | 0;
+      $79 = ($78 | 0) == (0 | 0);
+      if ($79) {
+       $$0 = 0;
+       $$033 = $22;
+       $$1 = $$032;
+       $$2 = 68;
+      } else {
+       $80 = $5 + 20 | 0;
+       $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+       $82 = ($81 | 0) == (0 | 0);
+       if ($82) {
+        $$0 = 0;
+        $$033 = $22;
+        $$1 = $$032;
+        $$2 = 68;
+       } else {
+        $83 = $5 + 32 | 0;
+        $84 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+        $85 = ($84 | 0) == (0 | 0);
+        if ($85) {
+         $$0 = 0;
+         $$033 = $22;
+         $$1 = $$032;
+         $$2 = 68;
+        } else {
+         $86 = $5 + 36 | 0;
+         $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+         $88 = ($87 | 0) == (0 | 0);
+         if ($88) {
+          $$0 = 0;
+          $$033 = $22;
+          $$1 = $$032;
+          $$2 = 68;
+         } else {
+          $89 = $5 + 56 | 0;
+          $90 = SAFE_HEAP_LOAD($89 | 0, 4, 0) | 0 | 0;
+          $91 = ($90 | 0) == (0 | 0);
+          if ($91) {
+           $$0 = 0;
+           $$033 = $22;
+           $$1 = $$032;
+           $$2 = 68;
+          } else {
+           $92 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+           $93 = $5 + 4 | 0;
+           $94 = SAFE_HEAP_LOAD($93 | 0, 4, 0) | 0 | 0;
+           $95 = __gcry_mpi_ec_p_internal_new($92, $94, 0, $72, $75, $78) | 0;
+           $96 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($99 | 0, 4, 0) | 0 | 0;
+            $101 = ($100 | 0) == 1;
+            $102 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+             __gcry_mpi_point_init($1);
+             $107 = __gcry_mpi_new(0) | 0;
+             $108 = SAFE_HEAP_LOAD($95 | 0, 4, 0) | 0 | 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(48324, $vararg_buffer21);
+               $$046$i = 7;
+               $$1$i = 0;
+               $$144$i = 0;
+              } else {
+               $116 = $5 + 28 | 0;
+               $117 = SAFE_HEAP_LOAD($116 | 0, 4, 0) | 0 | 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(48376, $vararg_buffer23);
+                $$046$i = 7;
+                $$1$i = 0;
+                $$144$i = 0;
+                break;
+               }
+               $122 = SAFE_HEAP_LOAD($93 | 0, 4, 0) | 0 | 0;
+               $123 = ($122 | 0) == 1;
+               do {
+                if (!$123) {
+                 $124 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+                 __gcry_mpi_ec_mul_point($1, $124, $111, $95);
+                 $125 = $1 + 8 | 0;
+                 $126 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 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(48421, $vararg_buffer25);
+                 $$046$i = 7;
+                 $$1$i = 0;
+                 $$144$i = 0;
+                 break L45;
+                }
+               } while (0);
+               $131 = $5 + 52 | 0;
+               $132 = SAFE_HEAP_LOAD($131 | 0, 4, 0) | 0 | 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(48468, $vararg_buffer27);
+                $$046$i = 7;
+                $$1$i = 0;
+                $$144$i = 0;
+                break;
+               }
+               $137 = SAFE_HEAP_LOAD($89 | 0, 4, 0) | 0 | 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(48514, $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(48468, $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 = SAFE_HEAP_LOAD($131 | 0, 4, 0) | 0 | 0;
+               $149 = __gcry_mpi_cmp_ui($148, 1) | 0;
+               $150 = ($149 | 0) == 0;
+               if ($150) {
+                $151 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($155 | 0, 4, 0) | 0 | 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(48551, $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(48468, $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(48551, $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 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($174);
+ $175 = $5 + 12 | 0;
+ $176 = SAFE_HEAP_LOAD($175 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($176);
+ $177 = $5 + 16 | 0;
+ $178 = SAFE_HEAP_LOAD($177 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($178);
+ $179 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($179);
+ $180 = $5 + 20 | 0;
+ __gcry_mpi_point_free_parts($180);
+ $181 = $5 + 32 | 0;
+ $182 = SAFE_HEAP_LOAD($181 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($182);
+ $183 = $5 + 36 | 0;
+ $184 = SAFE_HEAP_LOAD($183 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($184);
+ $185 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($185);
+ $186 = $5 + 44 | 0;
+ __gcry_mpi_point_free_parts($186);
+ $187 = $5 + 56 | 0;
+ $188 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($vararg_buffer39 | 0, $191 | 0, 4);
+ __gcry_log_debug(48611, $vararg_buffer39);
+ $$036 = $$2;
+ STACKTOP = sp;
+ return $$036 | 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, 
$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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ switch ($3 | 0) {
+ case 0:
+  {
+   $4 = $1 + 4 | 0;
+   $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $6 = __gcry_mpi_cmp_ui($5, 0) | 0;
+   $7 = ($6 | 0) == 0;
+   if (!$7) {
+    $8 = $1 + 8 | 0;
+    $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    $10 = __gcry_mpi_cmp_ui($9, 0) | 0;
+    $11 = ($10 | 0) == 0;
+    if (!$11) {
+     $17 = $2 + 48 | 0;
+     $18 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+     $19 = $18 & 1;
+     $20 = $19 << 24 >> 24 == 0;
+     if ($20) {
+      $21 = $18 | 1;
+      SAFE_HEAP_STORE($17 >> 0 | 0, $21 | 0, 1);
+      $22 = $2 + 16 | 0;
+      $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+      $24 = __gcry_mpi_alloc_like($23) | 0;
+      $25 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_sub_ui($24, $25, 3);
+      $26 = $2 + 20 | 0;
+      $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+      $28 = __gcry_mpi_cmp($27, $24) | 0;
+      $29 = ($28 | 0) == 0;
+      $30 = $29 & 1;
+      $31 = $2 + 52 | 0;
+      SAFE_HEAP_STORE($31 | 0, $30 | 0, 4);
+      __gcry_mpi_free($24);
+      $$pre$phi$i$iZ2D = $31;
+     } else {
+      $$pre$i$i = $2 + 52 | 0;
+      $$pre$phi$i$iZ2D = $$pre$i$i;
+     }
+     $32 = SAFE_HEAP_LOAD($$pre$phi$i$iZ2D | 0, 4, 0) | 0 | 0;
+     $33 = ($32 | 0) == 0;
+     $34 = $2 + 64 | 0;
+     do {
+      if ($33) {
+       $66 = $2 + 76 | 0;
+       $67 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+       $68 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_mul($67, $68, $68);
+       $69 = $2 + 60 | 0;
+       $70 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+       $71 = ($70 | 0) == (0 | 0);
+       if ($71) {
+        $72 = $2 + 16 | 0;
+        $73 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_mod($67, $67, $73);
+       } else {
+        __gcry_mpi_mod_barrett($67, $67, $70);
+       }
+       $74 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+       $75 = __gcry_mpi_const(3) | 0;
+       __gcry_mpi_mul($74, $74, $75);
+       $76 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+       $77 = ($76 | 0) == (0 | 0);
+       if ($77) {
+        $78 = $2 + 16 | 0;
+        $79 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+       $81 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+       $82 = __gcry_mpi_const(4) | 0;
+       $$idx$val$i = SAFE_HEAP_LOAD($$idx$pre$phi$iZZ2D | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_powm($80, $81, $82, $$idx$val$i);
+       $83 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+       $84 = $2 + 20 | 0;
+       $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_mul($83, $83, $85);
+       $86 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+       $87 = ($86 | 0) == (0 | 0);
+       if ($87) {
+        $88 = SAFE_HEAP_LOAD($$idx$pre$phi$iZZ2D | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_mod($83, $83, $88);
+       } else {
+        __gcry_mpi_mod_barrett($83, $83, $86);
+       }
+       $89 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+       $90 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_add($89, $89, $90);
+       $91 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+       $92 = ($91 | 0) == (0 | 0);
+       if ($92) {
+        $93 = SAFE_HEAP_LOAD($$idx$pre$phi$iZZ2D | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+       $36 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_mul($35, $36, $36);
+       $37 = $2 + 60 | 0;
+       $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+       $39 = ($38 | 0) == (0 | 0);
+       if ($39) {
+        $40 = $2 + 16 | 0;
+        $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_mod($35, $35, $41);
+       } else {
+        __gcry_mpi_mod_barrett($35, $35, $38);
+       }
+       $42 = $2 + 76 | 0;
+       $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+       $44 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+       $45 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_sub($43, $44, $45);
+       $46 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+       $47 = __gcry_mpi_const(3) | 0;
+       __gcry_mpi_mul($46, $46, $47);
+       $48 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+       $49 = ($48 | 0) == (0 | 0);
+       if ($49) {
+        $50 = $2 + 16 | 0;
+        $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_mod($46, $46, $51);
+       } else {
+        __gcry_mpi_mod_barrett($46, $46, $48);
+       }
+       $52 = $2 + 68 | 0;
+       $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+       $54 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+       $55 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_add($53, $54, $55);
+       $56 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+       $57 = ($56 | 0) == (0 | 0);
+       if ($57) {
+        $58 = $2 + 16 | 0;
+        $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_mod($53, $53, $59);
+       } else {
+        __gcry_mpi_mod_barrett($53, $53, $56);
+       }
+       $60 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+       $61 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_mul($60, $60, $61);
+       $62 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+       $63 = ($62 | 0) == (0 | 0);
+       if ($63) {
+        $64 = $2 + 16 | 0;
+        $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+     $96 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+     $97 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($95, $96, $97);
+     $98 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $99 = ($98 | 0) == (0 | 0);
+     if ($99) {
+      $100 = $2 + 16 | 0;
+      $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($95, $95, $101);
+     } else {
+      __gcry_mpi_mod_barrett($95, $95, $98);
+     }
+     $102 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_lshift($102, $102, 1);
+     $103 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $104 = ($103 | 0) == (0 | 0);
+     if ($104) {
+      $105 = $2 + 16 | 0;
+      $106 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($102, $102, $106);
+     } else {
+      __gcry_mpi_mod_barrett($102, $102, $103);
+     }
+     $107 = $2 + 68 | 0;
+     $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+     $109 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($108, $109, $109);
+     $110 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $111 = ($110 | 0) == (0 | 0);
+     if ($111) {
+      $112 = $2 + 16 | 0;
+      $113 = SAFE_HEAP_LOAD($112 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($108, $108, $113);
+     } else {
+      __gcry_mpi_mod_barrett($108, $108, $110);
+     }
+     $114 = $2 + 80 | 0;
+     $115 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+     $116 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+     $117 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($115, $116, $117);
+     $118 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $119 = ($118 | 0) == (0 | 0);
+     if ($119) {
+      $120 = $2 + 16 | 0;
+      $121 = SAFE_HEAP_LOAD($120 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($115, $115, $121);
+     } else {
+      __gcry_mpi_mod_barrett($115, $115, $118);
+     }
+     $122 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+     $123 = __gcry_mpi_const(4) | 0;
+     __gcry_mpi_mul($122, $122, $123);
+     $124 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $125 = ($124 | 0) == (0 | 0);
+     if ($125) {
+      $126 = $2 + 16 | 0;
+      $127 = SAFE_HEAP_LOAD($126 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($122, $122, $127);
+     } else {
+      __gcry_mpi_mod_barrett($122, $122, $124);
+     }
+     $128 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+     $129 = $2 + 76 | 0;
+     $130 = SAFE_HEAP_LOAD($129 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($128, $130, $130);
+     $131 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $132 = ($131 | 0) == (0 | 0);
+     if ($132) {
+      $133 = $2 + 16 | 0;
+      $134 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($128, $128, $134);
+     } else {
+      __gcry_mpi_mod_barrett($128, $128, $131);
+     }
+     $135 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+     $136 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_lshift($135, $136, 1);
+     $137 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $138 = ($137 | 0) == (0 | 0);
+     if ($138) {
+      $139 = $2 + 16 | 0;
+      $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($135, $135, $140);
+     } else {
+      __gcry_mpi_mod_barrett($135, $135, $137);
+     }
+     $141 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+     $142 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_sub($141, $141, $142);
+     $143 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($143, $143, $143);
+     $144 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $145 = ($144 | 0) == (0 | 0);
+     if ($145) {
+      $146 = $2 + 16 | 0;
+      $147 = SAFE_HEAP_LOAD($146 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($143, $143, $147);
+     } else {
+      __gcry_mpi_mod_barrett($143, $143, $144);
+     }
+     $148 = $2 + 84 | 0;
+     $149 = SAFE_HEAP_LOAD($148 | 0, 4, 0) | 0 | 0;
+     $150 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+     $151 = __gcry_mpi_const(5) | 0;
+     __gcry_mpi_mul($149, $150, $151);
+     $152 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $153 = ($152 | 0) == (0 | 0);
+     if ($153) {
+      $154 = $2 + 16 | 0;
+      $155 = SAFE_HEAP_LOAD($154 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($149, $149, $155);
+     } else {
+      __gcry_mpi_mod_barrett($149, $149, $152);
+     }
+     $156 = $0 + 4 | 0;
+     $157 = SAFE_HEAP_LOAD($156 | 0, 4, 0) | 0 | 0;
+     $158 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+     $159 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_sub($157, $158, $159);
+     $160 = SAFE_HEAP_LOAD($156 | 0, 4, 0) | 0 | 0;
+     $161 = SAFE_HEAP_LOAD($129 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($160, $160, $161);
+     $162 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+     $163 = ($162 | 0) == (0 | 0);
+     if ($163) {
+      $164 = $2 + 16 | 0;
+      $165 = SAFE_HEAP_LOAD($164 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($160, $160, $165);
+     } else {
+      __gcry_mpi_mod_barrett($160, $160, $162);
+     }
+     $166 = SAFE_HEAP_LOAD($156 | 0, 4, 0) | 0 | 0;
+     $167 = SAFE_HEAP_LOAD($148 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_sub($166, $166, $167);
+     STACKTOP = sp;
+     return;
+    }
+   }
+   $12 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set_ui($12, 1) | 0;
+   $13 = $0 + 4 | 0;
+   $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set_ui($14, 1) | 0;
+   $15 = $0 + 8 | 0;
+   $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set_ui($16, 0) | 0;
+   STACKTOP = sp;
+   return;
+   break;
+  }
+ case 1:
+  {
+   SAFE_HEAP_STORE($vararg_buffer | 0, 45508 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, 45456 | 0, 4);
+   __gcry_log_fatal(45482, $vararg_buffer);
+   break;
+  }
+ case 2:
+  {
+   $168 = $2 + 64 | 0;
+   $169 = SAFE_HEAP_LOAD($168 | 0, 4, 0) | 0 | 0;
+   $170 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+   $171 = $1 + 4 | 0;
+   $172 = SAFE_HEAP_LOAD($171 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_add($169, $170, $172);
+   $173 = $2 + 60 | 0;
+   $174 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $175 = ($174 | 0) == (0 | 0);
+   if ($175) {
+    $176 = $2 + 16 | 0;
+    $177 = SAFE_HEAP_LOAD($176 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($169, $169, $177);
+   } else {
+    __gcry_mpi_mod_barrett($169, $169, $174);
+   }
+   $178 = SAFE_HEAP_LOAD($168 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($178, $178, $178);
+   $179 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $180 = ($179 | 0) == (0 | 0);
+   if ($180) {
+    $181 = $2 + 16 | 0;
+    $182 = SAFE_HEAP_LOAD($181 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($178, $178, $182);
+   } else {
+    __gcry_mpi_mod_barrett($178, $178, $179);
+   }
+   $183 = $2 + 68 | 0;
+   $184 = SAFE_HEAP_LOAD($183 | 0, 4, 0) | 0 | 0;
+   $185 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($184, $185, $185);
+   $186 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $187 = ($186 | 0) == (0 | 0);
+   if ($187) {
+    $188 = $2 + 16 | 0;
+    $189 = SAFE_HEAP_LOAD($188 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($184, $184, $189);
+   } else {
+    __gcry_mpi_mod_barrett($184, $184, $186);
+   }
+   $190 = $2 + 72 | 0;
+   $191 = SAFE_HEAP_LOAD($190 | 0, 4, 0) | 0 | 0;
+   $192 = SAFE_HEAP_LOAD($171 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($191, $192, $192);
+   $193 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $194 = ($193 | 0) == (0 | 0);
+   if ($194) {
+    $195 = $2 + 16 | 0;
+    $196 = SAFE_HEAP_LOAD($195 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($191, $191, $196);
+   } else {
+    __gcry_mpi_mod_barrett($191, $191, $193);
+   }
+   $197 = $2 + 4 | 0;
+   $198 = SAFE_HEAP_LOAD($197 | 0, 4, 0) | 0 | 0;
+   $199 = ($198 | 0) == 1;
+   $200 = $2 + 76 | 0;
+   $201 = SAFE_HEAP_LOAD($200 | 0, 4, 0) | 0 | 0;
+   do {
+    if ($199) {
+     $202 = SAFE_HEAP_LOAD($183 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_set($201, $202) | 0;
+     $203 = SAFE_HEAP_LOAD($200 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_neg($203, $203);
+    } else {
+     $204 = $2 + 20 | 0;
+     $205 = SAFE_HEAP_LOAD($204 | 0, 4, 0) | 0 | 0;
+     $206 = SAFE_HEAP_LOAD($183 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($201, $205, $206);
+     $207 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+     $208 = ($207 | 0) == (0 | 0);
+     if ($208) {
+      $209 = $2 + 16 | 0;
+      $210 = SAFE_HEAP_LOAD($209 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($201, $201, $210);
+      break;
+     } else {
+      __gcry_mpi_mod_barrett($201, $201, $207);
+      break;
+     }
+    }
+   } while (0);
+   $211 = $2 + 80 | 0;
+   $212 = SAFE_HEAP_LOAD($211 | 0, 4, 0) | 0 | 0;
+   $213 = SAFE_HEAP_LOAD($200 | 0, 4, 0) | 0 | 0;
+   $214 = SAFE_HEAP_LOAD($190 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_add($212, $213, $214);
+   $215 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $216 = ($215 | 0) == (0 | 0);
+   if ($216) {
+    $217 = $2 + 16 | 0;
+    $218 = SAFE_HEAP_LOAD($217 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($212, $212, $218);
+   } else {
+    __gcry_mpi_mod_barrett($212, $212, $215);
+   }
+   $219 = $2 + 84 | 0;
+   $220 = SAFE_HEAP_LOAD($219 | 0, 4, 0) | 0 | 0;
+   $221 = $1 + 8 | 0;
+   $222 = SAFE_HEAP_LOAD($221 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($220, $222, $222);
+   $223 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $224 = ($223 | 0) == (0 | 0);
+   if ($224) {
+    $225 = $2 + 16 | 0;
+    $226 = SAFE_HEAP_LOAD($225 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($220, $220, $226);
+   } else {
+    __gcry_mpi_mod_barrett($220, $220, $223);
+   }
+   $227 = $2 + 88 | 0;
+   $228 = SAFE_HEAP_LOAD($227 | 0, 4, 0) | 0 | 0;
+   $229 = SAFE_HEAP_LOAD($219 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_lshift($228, $229, 1);
+   $230 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $231 = ($230 | 0) == (0 | 0);
+   if ($231) {
+    $232 = $2 + 16 | 0;
+    $233 = SAFE_HEAP_LOAD($232 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($228, $228, $233);
+   } else {
+    __gcry_mpi_mod_barrett($228, $228, $230);
+   }
+   $234 = SAFE_HEAP_LOAD($227 | 0, 4, 0) | 0 | 0;
+   $235 = SAFE_HEAP_LOAD($211 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_sub($234, $235, $234);
+   $236 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $237 = SAFE_HEAP_LOAD($168 | 0, 4, 0) | 0 | 0;
+   $238 = SAFE_HEAP_LOAD($183 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_sub($236, $237, $238);
+   $239 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $240 = SAFE_HEAP_LOAD($190 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_sub($239, $239, $240);
+   $241 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $242 = SAFE_HEAP_LOAD($227 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($241, $241, $242);
+   $243 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $244 = ($243 | 0) == (0 | 0);
+   if ($244) {
+    $245 = $2 + 16 | 0;
+    $246 = SAFE_HEAP_LOAD($245 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($241, $241, $246);
+   } else {
+    __gcry_mpi_mod_barrett($241, $241, $243);
+   }
+   $247 = $0 + 4 | 0;
+   $248 = SAFE_HEAP_LOAD($247 | 0, 4, 0) | 0 | 0;
+   $249 = SAFE_HEAP_LOAD($200 | 0, 4, 0) | 0 | 0;
+   $250 = SAFE_HEAP_LOAD($190 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_sub($248, $249, $250);
+   $251 = SAFE_HEAP_LOAD($247 | 0, 4, 0) | 0 | 0;
+   $252 = SAFE_HEAP_LOAD($211 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($251, $251, $252);
+   $253 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $254 = ($253 | 0) == (0 | 0);
+   if ($254) {
+    $255 = $2 + 16 | 0;
+    $256 = SAFE_HEAP_LOAD($255 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($251, $251, $256);
+   } else {
+    __gcry_mpi_mod_barrett($251, $251, $253);
+   }
+   $257 = $0 + 8 | 0;
+   $258 = SAFE_HEAP_LOAD($257 | 0, 4, 0) | 0 | 0;
+   $259 = SAFE_HEAP_LOAD($211 | 0, 4, 0) | 0 | 0;
+   $260 = SAFE_HEAP_LOAD($227 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($258, $259, $260);
+   $261 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $262 = ($261 | 0) == (0 | 0);
+   if ($262) {
+    $263 = $2 + 16 | 0;
+    $264 = SAFE_HEAP_LOAD($263 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($258, $258, $264);
+    STACKTOP = sp;
+    return;
+   } else {
+    __gcry_mpi_mod_barrett($258, $258, $261);
+    STACKTOP = sp;
+    return;
+   }
+   break;
+  }
+ default:
+  {
+   STACKTOP = sp;
+   return;
+  }
+ }
+}
+
+function ___intscan($0, $1, $2, $3, $4) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ $4 = $4 | 0;
+ var $$0154222 = 0, $$0157 = 0, $$0157$ = 0, $$0159 = 0, $$1155188 = 0, $$1158 
= 0, $$1160 = 0, $$1160169 = 0, $$1165 = 0, $$1165167 = 0, $$1165168 = 0, $$166 
= 0, $$2156206 = 0, $$2161$be = 0, $$2161$lcssa = 0, $$3162$be = 0, 
$$3162$lcssa = 0, $$3162211 = 0, $$4163$be = 0, $$4163$lcssa = 0;
+ var $$5$be = 0, $$6$be = 0, $$6$lcssa = 0, $$7$be = 0, $$7194 = 0, $$8 = 0, 
$$9$be = 0, $$lcssa = 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, 
$215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0;
+ var $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, $237 = 0;
+ var $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, $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, $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, $or$cond = 0, $or$cond12 = 0, $or$cond183 = 0, 
$or$cond5 = 0, $or$cond7 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $5 = $1 >>> 0 > 36;
+ L1 : do {
+  if ($5) {
+   $8 = ___errno_location() | 0;
+   SAFE_HEAP_STORE($8 | 0, 22 | 0, 4);
+   $289 = 0;
+   $290 = 0;
+  } else {
+   $6 = $0 + 4 | 0;
+   $7 = $0 + 100 | 0;
+   while (1) {
+    $9 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    $10 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $11 = $9 >>> 0 < $10 >>> 0;
+    if ($11) {
+     $12 = $9 + 1 | 0;
+     SAFE_HEAP_STORE($6 | 0, $12 | 0, 4);
+     $13 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 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;
+    }
+   }
+   $19 = ($16 | 0) == 45;
+   L11 : do {
+    switch ($16 | 0) {
+    case 43:
+    case 45:
+     {
+      $20 = $19 << 31 >> 31;
+      $21 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      $22 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+      $23 = $21 >>> 0 < $22 >>> 0;
+      if ($23) {
+       $24 = $21 + 1 | 0;
+       SAFE_HEAP_STORE($6 | 0, $24 | 0, 4);
+       $25 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $33 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     $34 = $32 >>> 0 < $33 >>> 0;
+     if ($34) {
+      $35 = $32 + 1 | 0;
+      SAFE_HEAP_STORE($6 | 0, $35 | 0, 4);
+      $36 = SAFE_HEAP_LOAD($32 >> 0 | 0, 1, 0) | 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) {
+       $$1160169 = $40;
+       $$1165168 = 8;
+       label = 46;
+       break;
+      } else {
+       $$1160 = $40;
+       $$1165 = $1;
+       label = 32;
+       break;
+      }
+     }
+     $42 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $43 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     $44 = $42 >>> 0 < $43 >>> 0;
+     if ($44) {
+      $45 = $42 + 1 | 0;
+      SAFE_HEAP_STORE($6 | 0, $45 | 0, 4);
+      $46 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+      $47 = $46 & 255;
+      $50 = $47;
+     } else {
+      $48 = ___shgetc($0) | 0;
+      $50 = $48;
+     }
+     $49 = 61369 + $50 | 0;
+     $51 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+     $52 = ($51 & 255) > 15;
+     if ($52) {
+      $53 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+      $54 = ($53 | 0) == (0 | 0);
+      if (!$54) {
+       $55 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $56 = $55 + -1 | 0;
+       SAFE_HEAP_STORE($6 | 0, $56 | 0, 4);
+      }
+      $57 = ($2 | 0) == 0;
+      if ($57) {
+       ___shlim($0, 0);
+       $289 = 0;
+       $290 = 0;
+       break L1;
+      }
+      if ($54) {
+       $289 = 0;
+       $290 = 0;
+       break L1;
+      }
+      $58 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      $59 = $58 + -1 | 0;
+      SAFE_HEAP_STORE($6 | 0, $59 | 0, 4);
+      $289 = 0;
+      $290 = 0;
+      break L1;
+     } else {
+      $$1160169 = $50;
+      $$1165168 = 16;
+      label = 46;
+     }
+    } else {
+     $$166 = $28 ? 10 : $1;
+     $60 = 61369 + $$0159 | 0;
+     $61 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+     $62 = $61 & 255;
+     $63 = $62 >>> 0 < $$166 >>> 0;
+     if ($63) {
+      $$1160 = $$0159;
+      $$1165 = $$166;
+      label = 32;
+     } else {
+      $64 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+      $65 = ($64 | 0) == (0 | 0);
+      if (!$65) {
+       $66 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $67 = $66 + -1 | 0;
+       SAFE_HEAP_STORE($6 | 0, $67 | 0, 4);
+      }
+      ___shlim($0, 0);
+      $68 = ___errno_location() | 0;
+      SAFE_HEAP_STORE($68 | 0, 22 | 0, 4);
+      $289 = 0;
+      $290 = 0;
+      break L1;
+     }
+    }
+   } while (0);
+   if ((label | 0) == 32) {
+    $69 = ($$1165 | 0) == 10;
+    if ($69) {
+     $70 = $$1160 + -48 | 0;
+     $71 = $70 >>> 0 < 10;
+     if ($71) {
+      $$0154222 = 0;
+      $74 = $70;
+      while (1) {
+       $72 = $$0154222 * 10 | 0;
+       $73 = $72 + $74 | 0;
+       $75 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $76 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       $77 = $75 >>> 0 < $76 >>> 0;
+       if ($77) {
+        $78 = $75 + 1 | 0;
+        SAFE_HEAP_STORE($6 | 0, $78 | 0, 4);
+        $79 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+        $80 = $79 & 255;
+        $$2161$be = $80;
+       } else {
+        $81 = ___shgetc($0) | 0;
+        $$2161$be = $81;
+       }
+       $82 = $$2161$be + -48 | 0;
+       $83 = $82 >>> 0 < 10;
+       $84 = $73 >>> 0 < 429496729;
+       $85 = $83 & $84;
+       if ($85) {
+        $$0154222 = $73;
+        $74 = $82;
+       } else {
+        break;
+       }
+      }
+      $$2161$lcssa = $$2161$be;
+      $291 = $73;
+      $292 = 0;
+     } else {
+      $$2161$lcssa = $$1160;
+      $291 = 0;
+      $292 = 0;
+     }
+     $86 = $$2161$lcssa + -48 | 0;
+     $87 = $86 >>> 0 < 10;
+     if ($87) {
+      $$3162211 = $$2161$lcssa;
+      $88 = $291;
+      $89 = $292;
+      $92 = $86;
+      while (1) {
+       $90 = ___muldi3($88 | 0, $89 | 0, 10, 0) | 0;
+       $91 = tempRet0;
+       $93 = ($92 | 0) < 0;
+       $94 = $93 << 31 >> 31;
+       $95 = $92 ^ -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) {
+        $$3162$lcssa = $$3162211;
+        $$lcssa = $92;
+        $293 = $88;
+        $294 = $89;
+        break;
+       }
+       $102 = _i64Add($90 | 0, $91 | 0, $92 | 0, $94 | 0) | 0;
+       $103 = tempRet0;
+       $104 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $105 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       $106 = $104 >>> 0 < $105 >>> 0;
+       if ($106) {
+        $107 = $104 + 1 | 0;
+        SAFE_HEAP_STORE($6 | 0, $107 | 0, 4);
+        $108 = SAFE_HEAP_LOAD($104 >> 0 | 0, 1, 0) | 0 | 0;
+        $109 = $108 & 255;
+        $$3162$be = $109;
+       } else {
+        $110 = ___shgetc($0) | 0;
+        $$3162$be = $110;
+       }
+       $111 = $$3162$be + -48 | 0;
+       $112 = $111 >>> 0 < 10;
+       $113 = $103 >>> 0 < 429496729;
+       $114 = $102 >>> 0 < 2576980378;
+       $115 = ($103 | 0) == 429496729;
+       $116 = $115 & $114;
+       $117 = $113 | $116;
+       $or$cond7 = $112 & $117;
+       if ($or$cond7) {
+        $$3162211 = $$3162$be;
+        $88 = $102;
+        $89 = $103;
+        $92 = $111;
+       } else {
+        $$3162$lcssa = $$3162$be;
+        $$lcssa = $111;
+        $293 = $102;
+        $294 = $103;
+        break;
+       }
+      }
+      $118 = $$lcssa >>> 0 > 9;
+      if ($118) {
+       $$1158 = $$0157;
+       $262 = $294;
+       $264 = $293;
+      } else {
+       $$1165167 = 10;
+       $$8 = $$3162$lcssa;
+       $295 = $293;
+       $296 = $294;
+       label = 72;
+      }
+     } else {
+      $$1158 = $$0157;
+      $262 = $292;
+      $264 = $291;
+     }
+    } else {
+     $$1160169 = $$1160;
+     $$1165168 = $$1165;
+     label = 46;
+    }
+   }
+   L63 : do {
+    if ((label | 0) == 46) {
+     $119 = $$1165168 + -1 | 0;
+     $120 = $119 & $$1165168;
+     $121 = ($120 | 0) == 0;
+     if ($121) {
+      $126 = $$1165168 * 23 | 0;
+      $127 = $126 >>> 5;
+      $128 = $127 & 7;
+      $129 = 61625 + $128 | 0;
+      $130 = SAFE_HEAP_LOAD($129 >> 0 | 0, 1, 0) | 0 | 0;
+      $131 = $130 << 24 >> 24;
+      $132 = 61369 + $$1160169 | 0;
+      $133 = SAFE_HEAP_LOAD($132 >> 0 | 0, 1, 0) | 0 | 0;
+      $134 = $133 & 255;
+      $135 = $134 >>> 0 < $$1165168 >>> 0;
+      if ($135) {
+       $$1155188 = 0;
+       $138 = $134;
+       while (1) {
+        $136 = $$1155188 << $131;
+        $137 = $138 | $136;
+        $139 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        $140 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+        $141 = $139 >>> 0 < $140 >>> 0;
+        if ($141) {
+         $142 = $139 + 1 | 0;
+         SAFE_HEAP_STORE($6 | 0, $142 | 0, 4);
+         $143 = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 0) | 0 | 0;
+         $144 = $143 & 255;
+         $$4163$be = $144;
+        } else {
+         $145 = ___shgetc($0) | 0;
+         $$4163$be = $145;
+        }
+        $146 = 61369 + $$4163$be | 0;
+        $147 = SAFE_HEAP_LOAD($146 >> 0 | 0, 1, 0) | 0 | 0;
+        $148 = $147 & 255;
+        $149 = $148 >>> 0 < $$1165168 >>> 0;
+        $150 = $137 >>> 0 < 134217728;
+        $151 = $150 & $149;
+        if ($151) {
+         $$1155188 = $137;
+         $138 = $148;
+        } else {
+         break;
+        }
+       }
+       $$4163$lcssa = $$4163$be;
+       $155 = $147;
+       $157 = 0;
+       $159 = $137;
+      } else {
+       $$4163$lcssa = $$1160169;
+       $155 = $133;
+       $157 = 0;
+       $159 = 0;
+      }
+      $152 = _bitshift64Lshr(-1, -1, $131 | 0) | 0;
+      $153 = tempRet0;
+      $154 = $155 & 255;
+      $156 = $154 >>> 0 >= $$1165168 >>> 0;
+      $158 = $157 >>> 0 > $153 >>> 0;
+      $160 = $159 >>> 0 > $152 >>> 0;
+      $161 = ($157 | 0) == ($153 | 0);
+      $162 = $161 & $160;
+      $163 = $158 | $162;
+      $or$cond183 = $156 | $163;
+      if ($or$cond183) {
+       $$1165167 = $$1165168;
+       $$8 = $$4163$lcssa;
+       $295 = $159;
+       $296 = $157;
+       label = 72;
+       break;
+      } else {
+       $164 = $159;
+       $165 = $157;
+       $169 = $155;
+      }
+      while (1) {
+       $166 = _bitshift64Shl($164 | 0, $165 | 0, $131 | 0) | 0;
+       $167 = tempRet0;
+       $168 = $169 & 255;
+       $170 = $168 | $166;
+       $171 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $172 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       $173 = $171 >>> 0 < $172 >>> 0;
+       if ($173) {
+        $174 = $171 + 1 | 0;
+        SAFE_HEAP_STORE($6 | 0, $174 | 0, 4);
+        $175 = SAFE_HEAP_LOAD($171 >> 0 | 0, 1, 0) | 0 | 0;
+        $176 = $175 & 255;
+        $$5$be = $176;
+       } else {
+        $177 = ___shgetc($0) | 0;
+        $$5$be = $177;
+       }
+       $178 = 61369 + $$5$be | 0;
+       $179 = SAFE_HEAP_LOAD($178 >> 0 | 0, 1, 0) | 0 | 0;
+       $180 = $179 & 255;
+       $181 = $180 >>> 0 >= $$1165168 >>> 0;
+       $182 = $167 >>> 0 > $153 >>> 0;
+       $183 = $170 >>> 0 > $152 >>> 0;
+       $184 = ($167 | 0) == ($153 | 0);
+       $185 = $184 & $183;
+       $186 = $182 | $185;
+       $or$cond = $181 | $186;
+       if ($or$cond) {
+        $$1165167 = $$1165168;
+        $$8 = $$5$be;
+        $295 = $170;
+        $296 = $167;
+        label = 72;
+        break L63;
+       } else {
+        $164 = $170;
+        $165 = $167;
+        $169 = $179;
+       }
+      }
+     }
+     $122 = 61369 + $$1160169 | 0;
+     $123 = SAFE_HEAP_LOAD($122 >> 0 | 0, 1, 0) | 0 | 0;
+     $124 = $123 & 255;
+     $125 = $124 >>> 0 < $$1165168 >>> 0;
+     if ($125) {
+      $$2156206 = 0;
+      $189 = $124;
+      while (1) {
+       $187 = Math_imul($$2156206, $$1165168) | 0;
+       $188 = $189 + $187 | 0;
+       $190 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $191 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       $192 = $190 >>> 0 < $191 >>> 0;
+       if ($192) {
+        $193 = $190 + 1 | 0;
+        SAFE_HEAP_STORE($6 | 0, $193 | 0, 4);
+        $194 = SAFE_HEAP_LOAD($190 >> 0 | 0, 1, 0) | 0 | 0;
+        $195 = $194 & 255;
+        $$6$be = $195;
+       } else {
+        $196 = ___shgetc($0) | 0;
+        $$6$be = $196;
+       }
+       $197 = 61369 + $$6$be | 0;
+       $198 = SAFE_HEAP_LOAD($197 >> 0 | 0, 1, 0) | 0 | 0;
+       $199 = $198 & 255;
+       $200 = $199 >>> 0 < $$1165168 >>> 0;
+       $201 = $188 >>> 0 < 119304647;
+       $202 = $201 & $200;
+       if ($202) {
+        $$2156206 = $188;
+        $189 = $199;
+       } else {
+        break;
+       }
+      }
+      $$6$lcssa = $$6$be;
+      $204 = $198;
+      $297 = $188;
+      $298 = 0;
+     } else {
+      $$6$lcssa = $$1160169;
+      $204 = $123;
+      $297 = 0;
+      $298 = 0;
+     }
+     $203 = $204 & 255;
+     $205 = $203 >>> 0 < $$1165168 >>> 0;
+     if ($205) {
+      $206 = ___udivdi3(-1, -1, $$1165168 | 0, 0) | 0;
+      $207 = tempRet0;
+      $$7194 = $$6$lcssa;
+      $208 = $298;
+      $210 = $297;
+      $218 = $204;
+      while (1) {
+       $209 = $208 >>> 0 > $207 >>> 0;
+       $211 = $210 >>> 0 > $206 >>> 0;
+       $212 = ($208 | 0) == ($207 | 0);
+       $213 = $212 & $211;
+       $214 = $209 | $213;
+       if ($214) {
+        $$1165167 = $$1165168;
+        $$8 = $$7194;
+        $295 = $210;
+        $296 = $208;
+        label = 72;
+        break L63;
+       }
+       $215 = ___muldi3($210 | 0, $208 | 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) {
+        $$1165167 = $$1165168;
+        $$8 = $$7194;
+        $295 = $210;
+        $296 = $208;
+        label = 72;
+        break L63;
+       }
+       $225 = _i64Add($217 | 0, 0, $215 | 0, $216 | 0) | 0;
+       $226 = tempRet0;
+       $227 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $228 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       $229 = $227 >>> 0 < $228 >>> 0;
+       if ($229) {
+        $230 = $227 + 1 | 0;
+        SAFE_HEAP_STORE($6 | 0, $230 | 0, 4);
+        $231 = SAFE_HEAP_LOAD($227 >> 0 | 0, 1, 0) | 0 | 0;
+        $232 = $231 & 255;
+        $$7$be = $232;
+       } else {
+        $233 = ___shgetc($0) | 0;
+        $$7$be = $233;
+       }
+       $234 = 61369 + $$7$be | 0;
+       $235 = SAFE_HEAP_LOAD($234 >> 0 | 0, 1, 0) | 0 | 0;
+       $236 = $235 & 255;
+       $237 = $236 >>> 0 < $$1165168 >>> 0;
+       if ($237) {
+        $$7194 = $$7$be;
+        $208 = $226;
+        $210 = $225;
+        $218 = $235;
+       } else {
+        $$1165167 = $$1165168;
+        $$8 = $$7$be;
+        $295 = $225;
+        $296 = $226;
+        label = 72;
+        break;
+       }
+      }
+     } else {
+      $$1165167 = $$1165168;
+      $$8 = $$6$lcssa;
+      $295 = $297;
+      $296 = $298;
+      label = 72;
+     }
+    }
+   } while (0);
+   if ((label | 0) == 72) {
+    $238 = 61369 + $$8 | 0;
+    $239 = SAFE_HEAP_LOAD($238 >> 0 | 0, 1, 0) | 0 | 0;
+    $240 = $239 & 255;
+    $241 = $240 >>> 0 < $$1165167 >>> 0;
+    if ($241) {
+     while (1) {
+      $242 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      $243 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+      $244 = $242 >>> 0 < $243 >>> 0;
+      if ($244) {
+       $245 = $242 + 1 | 0;
+       SAFE_HEAP_STORE($6 | 0, $245 | 0, 4);
+       $246 = SAFE_HEAP_LOAD($242 >> 0 | 0, 1, 0) | 0 | 0;
+       $247 = $246 & 255;
+       $$9$be = $247;
+      } else {
+       $248 = ___shgetc($0) | 0;
+       $$9$be = $248;
+      }
+      $249 = 61369 + $$9$be | 0;
+      $250 = SAFE_HEAP_LOAD($249 >> 0 | 0, 1, 0) | 0 | 0;
+      $251 = $250 & 255;
+      $252 = $251 >>> 0 < $$1165167 >>> 0;
+      if (!$252) {
+       break;
+      }
+     }
+     $253 = ___errno_location() | 0;
+     SAFE_HEAP_STORE($253 | 0, 34 | 0, 4);
+     $254 = $3 & 1;
+     $255 = ($254 | 0) == 0;
+     $256 = 0 == 0;
+     $257 = $255 & $256;
+     $$0157$ = $257 ? $$0157 : 0;
+     $$1158 = $$0157$;
+     $262 = $4;
+     $264 = $3;
+    } else {
+     $$1158 = $$0157;
+     $262 = $296;
+     $264 = $295;
+    }
+   }
+   $258 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $259 = ($258 | 0) == (0 | 0);
+   if (!$259) {
+    $260 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    $261 = $260 + -1 | 0;
+    SAFE_HEAP_STORE($6 | 0, $261 | 0, 4);
+   }
+   $263 = $262 >>> 0 < $4 >>> 0;
+   $265 = $264 >>> 0 < $3 >>> 0;
+   $266 = ($262 | 0) == ($4 | 0);
+   $267 = $266 & $265;
+   $268 = $263 | $267;
+   if (!$268) {
+    $269 = $3 & 1;
+    $270 = ($269 | 0) != 0;
+    $271 = 0 != 0;
+    $272 = $270 | $271;
+    $273 = ($$1158 | 0) != 0;
+    $or$cond12 = $272 | $273;
+    if (!$or$cond12) {
+     $274 = ___errno_location() | 0;
+     SAFE_HEAP_STORE($274 | 0, 34 | 0, 4);
+     $275 = _i64Add($3 | 0, $4 | 0, -1, -1) | 0;
+     $276 = tempRet0;
+     $289 = $276;
+     $290 = $275;
+     break;
+    }
+    $277 = $262 >>> 0 > $4 >>> 0;
+    $278 = $264 >>> 0 > $3 >>> 0;
+    $279 = ($262 | 0) == ($4 | 0);
+    $280 = $279 & $278;
+    $281 = $277 | $280;
+    if ($281) {
+     $282 = ___errno_location() | 0;
+     SAFE_HEAP_STORE($282 | 0, 34 | 0, 4);
+     $289 = $4;
+     $290 = $3;
+     break;
+    }
+   }
+   $283 = ($$1158 | 0) < 0;
+   $284 = $283 << 31 >> 31;
+   $285 = $264 ^ $$1158;
+   $286 = $262 ^ $284;
+   $287 = _i64Subtract($285 | 0, $286 | 0, $$1158 | 0, $284 | 0) | 0;
+   $288 = tempRet0;
+   $289 = $288;
+   $290 = $287;
+  }
+ } while (0);
+ tempRet0 = $289;
+ return $290 | 0;
+}
+
+function __gcry_aes_ocb_auth($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$06692 = 0, $$072 = 0, $$093 = 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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) == (0 | 0);
+ if (!$7) {
+  FUNCTION_TABLE_v[(SAFE_FT_MASK($6 | 0, 127 | 0) | 0) & 127]();
+ }
+ $8 = $4 + 488 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = ($2 | 0) == 0;
+ if ($10) {
+  $11 = $3;
+  $12 = $11;
+  SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+  $13 = $11 + 4 | 0;
+  $14 = $13;
+  SAFE_HEAP_STORE($14 | 0, 0 | 0, 4);
+  $15 = $3 + 8 | 0;
+  $16 = $15;
+  $17 = $16;
+  SAFE_HEAP_STORE($17 | 0, 0 | 0, 4);
+  $18 = $16 + 4 | 0;
+  $19 = $18;
+  SAFE_HEAP_STORE($19 | 0, 0 | 0, 4);
+  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 = $3 + 4 | 0;
+ $27 = $3 + 8 | 0;
+ $28 = $3 + 12 | 0;
+ $29 = $0 + 448 | 0;
+ $30 = $29;
+ $31 = $30 & 3;
+ $32 = ($31 | 0) == 0;
+ $33 = $0 + 452 | 0;
+ $34 = $0 + 456 | 0;
+ $35 = $0 + 460 | 0;
+ $36 = $0 + 160 | 0;
+ $37 = $3 + 1 | 0;
+ $38 = $29 + 1 | 0;
+ $39 = $3 + 2 | 0;
+ $40 = $29 + 2 | 0;
+ $41 = $3 + 3 | 0;
+ $42 = $29 + 3 | 0;
+ $43 = $3 + 4 | 0;
+ $44 = $0 + 452 | 0;
+ $45 = $43 + 1 | 0;
+ $46 = $44 + 1 | 0;
+ $47 = $43 + 2 | 0;
+ $48 = $44 + 2 | 0;
+ $49 = $43 + 3 | 0;
+ $50 = $44 + 3 | 0;
+ $51 = $3 + 8 | 0;
+ $52 = $0 + 456 | 0;
+ $53 = $51 + 1 | 0;
+ $54 = $52 + 1 | 0;
+ $55 = $51 + 2 | 0;
+ $56 = $52 + 2 | 0;
+ $57 = $51 + 3 | 0;
+ $58 = $52 + 3 | 0;
+ $59 = $3 + 12 | 0;
+ $60 = $0 + 460 | 0;
+ $61 = $59 + 1 | 0;
+ $62 = $60 + 1 | 0;
+ $63 = $59 + 2 | 0;
+ $64 = $60 + 2 | 0;
+ $65 = $59 + 3 | 0;
+ $66 = $60 + 3 | 0;
+ $67 = $21 + 1 | 0;
+ $68 = $3 + 1 | 0;
+ $69 = $21 + 2 | 0;
+ $70 = $3 + 2 | 0;
+ $71 = $21 + 3 | 0;
+ $72 = $3 + 3 | 0;
+ $73 = $0 + 436 | 0;
+ $74 = $3 + 4 | 0;
+ $75 = $73 + 1 | 0;
+ $76 = $74 + 1 | 0;
+ $77 = $73 + 2 | 0;
+ $78 = $74 + 2 | 0;
+ $79 = $73 + 3 | 0;
+ $80 = $74 + 3 | 0;
+ $81 = $0 + 440 | 0;
+ $82 = $3 + 8 | 0;
+ $83 = $81 + 1 | 0;
+ $84 = $82 + 1 | 0;
+ $85 = $81 + 2 | 0;
+ $86 = $82 + 2 | 0;
+ $87 = $81 + 3 | 0;
+ $88 = $82 + 3 | 0;
+ $89 = $0 + 444 | 0;
+ $90 = $3 + 12 | 0;
+ $91 = $89 + 1 | 0;
+ $92 = $90 + 1 | 0;
+ $93 = $89 + 2 | 0;
+ $94 = $90 + 2 | 0;
+ $95 = $89 + 3 | 0;
+ $96 = $90 + 3 | 0;
+ $97 = $21 + 1 | 0;
+ $98 = $21 + 2 | 0;
+ $99 = $21 + 3 | 0;
+ $100 = $0 + 436 | 0;
+ $101 = $100 + 1 | 0;
+ $102 = $100 + 2 | 0;
+ $103 = $100 + 3 | 0;
+ $104 = $0 + 440 | 0;
+ $105 = $104 + 1 | 0;
+ $106 = $104 + 2 | 0;
+ $107 = $104 + 3 | 0;
+ $108 = $0 + 444 | 0;
+ $109 = $108 + 1 | 0;
+ $110 = $108 + 2 | 0;
+ $111 = $108 + 3 | 0;
+ $$06692 = $1;
+ $$093 = $2;
+ while (1) {
+  $112 = $20;
+  $113 = $112;
+  $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+  $115 = $112 + 4 | 0;
+  $116 = $115;
+  $117 = SAFE_HEAP_LOAD($116 | 0, 4, 0) | 0 | 0;
+  $118 = _i64Add($114 | 0, $117 | 0, 1, 0) | 0;
+  $119 = tempRet0;
+  $120 = $20;
+  $121 = $120;
+  SAFE_HEAP_STORE($121 | 0, $118 | 0, 4);
+  $122 = $120 + 4 | 0;
+  $123 = $122;
+  SAFE_HEAP_STORE($123 | 0, $119 | 0, 4);
+  $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 = $36 + ($127 << 4) | 0;
+    $$072 = $129;
+   } else {
+    label = 9;
+   }
+  }
+  if ((label | 0) == 9) {
+   label = 0;
+   $130 = __gcry_cipher_ocb_get_l($0, $3, $118, $119) | 0;
+   $$072 = $130;
+  }
+  $131 = $$072;
+  $132 = $131 | $22;
+  $133 = $132 & 3;
+  $134 = ($133 | 0) == 0;
+  if ($134) {
+   $198 = $$072 + 4 | 0;
+   $199 = SAFE_HEAP_LOAD($$072 | 0, 4, 0) | 0 | 0;
+   $200 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   $201 = $200 ^ $199;
+   SAFE_HEAP_STORE($21 | 0, $201 | 0, 4);
+   $202 = $$072 + 8 | 0;
+   $203 = SAFE_HEAP_LOAD($198 | 0, 4, 0) | 0 | 0;
+   $204 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+   $205 = $204 ^ $203;
+   SAFE_HEAP_STORE($23 | 0, $205 | 0, 4);
+   $206 = $$072 + 12 | 0;
+   $207 = SAFE_HEAP_LOAD($202 | 0, 4, 0) | 0 | 0;
+   $208 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+   $209 = $208 ^ $207;
+   SAFE_HEAP_STORE($24 | 0, $209 | 0, 4);
+   $210 = SAFE_HEAP_LOAD($206 | 0, 4, 0) | 0 | 0;
+   $211 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+   $212 = $211 ^ $210;
+   SAFE_HEAP_STORE($25 | 0, $212 | 0, 4);
+  } else {
+   $135 = $$072 + 1 | 0;
+   $136 = SAFE_HEAP_LOAD($$072 >> 0 | 0, 1, 0) | 0 | 0;
+   $137 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+   $138 = $137 ^ $136;
+   SAFE_HEAP_STORE($21 >> 0 | 0, $138 | 0, 1);
+   $139 = $$072 + 2 | 0;
+   $140 = SAFE_HEAP_LOAD($135 >> 0 | 0, 1, 0) | 0 | 0;
+   $141 = SAFE_HEAP_LOAD($97 >> 0 | 0, 1, 0) | 0 | 0;
+   $142 = $141 ^ $140;
+   SAFE_HEAP_STORE($97 >> 0 | 0, $142 | 0, 1);
+   $143 = $$072 + 3 | 0;
+   $144 = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 0) | 0 | 0;
+   $145 = SAFE_HEAP_LOAD($98 >> 0 | 0, 1, 0) | 0 | 0;
+   $146 = $145 ^ $144;
+   SAFE_HEAP_STORE($98 >> 0 | 0, $146 | 0, 1);
+   $147 = $$072 + 4 | 0;
+   $148 = SAFE_HEAP_LOAD($143 >> 0 | 0, 1, 0) | 0 | 0;
+   $149 = SAFE_HEAP_LOAD($99 >> 0 | 0, 1, 0) | 0 | 0;
+   $150 = $149 ^ $148;
+   SAFE_HEAP_STORE($99 >> 0 | 0, $150 | 0, 1);
+   $151 = $$072 + 5 | 0;
+   $152 = SAFE_HEAP_LOAD($147 >> 0 | 0, 1, 0) | 0 | 0;
+   $153 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 0) | 0 | 0;
+   $154 = $153 ^ $152;
+   SAFE_HEAP_STORE($100 >> 0 | 0, $154 | 0, 1);
+   $155 = $$072 + 6 | 0;
+   $156 = SAFE_HEAP_LOAD($151 >> 0 | 0, 1, 0) | 0 | 0;
+   $157 = SAFE_HEAP_LOAD($101 >> 0 | 0, 1, 0) | 0 | 0;
+   $158 = $157 ^ $156;
+   SAFE_HEAP_STORE($101 >> 0 | 0, $158 | 0, 1);
+   $159 = $$072 + 7 | 0;
+   $160 = SAFE_HEAP_LOAD($155 >> 0 | 0, 1, 0) | 0 | 0;
+   $161 = SAFE_HEAP_LOAD($102 >> 0 | 0, 1, 0) | 0 | 0;
+   $162 = $161 ^ $160;
+   SAFE_HEAP_STORE($102 >> 0 | 0, $162 | 0, 1);
+   $163 = $$072 + 8 | 0;
+   $164 = SAFE_HEAP_LOAD($159 >> 0 | 0, 1, 0) | 0 | 0;
+   $165 = SAFE_HEAP_LOAD($103 >> 0 | 0, 1, 0) | 0 | 0;
+   $166 = $165 ^ $164;
+   SAFE_HEAP_STORE($103 >> 0 | 0, $166 | 0, 1);
+   $167 = $$072 + 9 | 0;
+   $168 = SAFE_HEAP_LOAD($163 >> 0 | 0, 1, 0) | 0 | 0;
+   $169 = SAFE_HEAP_LOAD($104 >> 0 | 0, 1, 0) | 0 | 0;
+   $170 = $169 ^ $168;
+   SAFE_HEAP_STORE($104 >> 0 | 0, $170 | 0, 1);
+   $171 = $$072 + 10 | 0;
+   $172 = SAFE_HEAP_LOAD($167 >> 0 | 0, 1, 0) | 0 | 0;
+   $173 = SAFE_HEAP_LOAD($105 >> 0 | 0, 1, 0) | 0 | 0;
+   $174 = $173 ^ $172;
+   SAFE_HEAP_STORE($105 >> 0 | 0, $174 | 0, 1);
+   $175 = $$072 + 11 | 0;
+   $176 = SAFE_HEAP_LOAD($171 >> 0 | 0, 1, 0) | 0 | 0;
+   $177 = SAFE_HEAP_LOAD($106 >> 0 | 0, 1, 0) | 0 | 0;
+   $178 = $177 ^ $176;
+   SAFE_HEAP_STORE($106 >> 0 | 0, $178 | 0, 1);
+   $179 = $$072 + 12 | 0;
+   $180 = SAFE_HEAP_LOAD($175 >> 0 | 0, 1, 0) | 0 | 0;
+   $181 = SAFE_HEAP_LOAD($107 >> 0 | 0, 1, 0) | 0 | 0;
+   $182 = $181 ^ $180;
+   SAFE_HEAP_STORE($107 >> 0 | 0, $182 | 0, 1);
+   $183 = $$072 + 13 | 0;
+   $184 = SAFE_HEAP_LOAD($179 >> 0 | 0, 1, 0) | 0 | 0;
+   $185 = SAFE_HEAP_LOAD($108 >> 0 | 0, 1, 0) | 0 | 0;
+   $186 = $185 ^ $184;
+   SAFE_HEAP_STORE($108 >> 0 | 0, $186 | 0, 1);
+   $187 = $$072 + 14 | 0;
+   $188 = SAFE_HEAP_LOAD($183 >> 0 | 0, 1, 0) | 0 | 0;
+   $189 = SAFE_HEAP_LOAD($109 >> 0 | 0, 1, 0) | 0 | 0;
+   $190 = $189 ^ $188;
+   SAFE_HEAP_STORE($109 >> 0 | 0, $190 | 0, 1);
+   $191 = $$072 + 15 | 0;
+   $192 = SAFE_HEAP_LOAD($187 >> 0 | 0, 1, 0) | 0 | 0;
+   $193 = SAFE_HEAP_LOAD($110 >> 0 | 0, 1, 0) | 0 | 0;
+   $194 = $193 ^ $192;
+   SAFE_HEAP_STORE($110 >> 0 | 0, $194 | 0, 1);
+   $195 = SAFE_HEAP_LOAD($191 >> 0 | 0, 1, 0) | 0 | 0;
+   $196 = SAFE_HEAP_LOAD($111 >> 0 | 0, 1, 0) | 0 | 0;
+   $197 = $196 ^ $195;
+   SAFE_HEAP_STORE($111 >> 0 | 0, $197 | 0, 1);
+  }
+  $213 = $$06692;
+  $214 = $213 | $22;
+  $215 = $214 & 3;
+  $216 = ($215 | 0) == 0;
+  if ($216) {
+   $280 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   $281 = $$06692 + 4 | 0;
+   $282 = SAFE_HEAP_LOAD($$06692 | 0, 4, 0) | 0 | 0;
+   $283 = $282 ^ $280;
+   SAFE_HEAP_STORE($3 | 0, $283 | 0, 4);
+   $284 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+   $285 = $$06692 + 8 | 0;
+   $286 = SAFE_HEAP_LOAD($281 | 0, 4, 0) | 0 | 0;
+   $287 = $286 ^ $284;
+   SAFE_HEAP_STORE($26 | 0, $287 | 0, 4);
+   $288 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+   $289 = $$06692 + 12 | 0;
+   $290 = SAFE_HEAP_LOAD($285 | 0, 4, 0) | 0 | 0;
+   $291 = $290 ^ $288;
+   SAFE_HEAP_STORE($27 | 0, $291 | 0, 4);
+   $292 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+   $293 = SAFE_HEAP_LOAD($289 | 0, 4, 0) | 0 | 0;
+   $294 = $293 ^ $292;
+   SAFE_HEAP_STORE($28 | 0, $294 | 0, 4);
+  } else {
+   $217 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+   $218 = $$06692 + 1 | 0;
+   $219 = SAFE_HEAP_LOAD($$06692 >> 0 | 0, 1, 0) | 0 | 0;
+   $220 = $219 ^ $217;
+   SAFE_HEAP_STORE($3 >> 0 | 0, $220 | 0, 1);
+   $221 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+   $222 = $$06692 + 2 | 0;
+   $223 = SAFE_HEAP_LOAD($218 >> 0 | 0, 1, 0) | 0 | 0;
+   $224 = $223 ^ $221;
+   SAFE_HEAP_STORE($68 >> 0 | 0, $224 | 0, 1);
+   $225 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+   $226 = $$06692 + 3 | 0;
+   $227 = SAFE_HEAP_LOAD($222 >> 0 | 0, 1, 0) | 0 | 0;
+   $228 = $227 ^ $225;
+   SAFE_HEAP_STORE($70 >> 0 | 0, $228 | 0, 1);
+   $229 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+   $230 = $$06692 + 4 | 0;
+   $231 = SAFE_HEAP_LOAD($226 >> 0 | 0, 1, 0) | 0 | 0;
+   $232 = $231 ^ $229;
+   SAFE_HEAP_STORE($72 >> 0 | 0, $232 | 0, 1);
+   $233 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+   $234 = $$06692 + 5 | 0;
+   $235 = SAFE_HEAP_LOAD($230 >> 0 | 0, 1, 0) | 0 | 0;
+   $236 = $235 ^ $233;
+   SAFE_HEAP_STORE($74 >> 0 | 0, $236 | 0, 1);
+   $237 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+   $238 = $$06692 + 6 | 0;
+   $239 = SAFE_HEAP_LOAD($234 >> 0 | 0, 1, 0) | 0 | 0;
+   $240 = $239 ^ $237;
+   SAFE_HEAP_STORE($76 >> 0 | 0, $240 | 0, 1);
+   $241 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+   $242 = $$06692 + 7 | 0;
+   $243 = SAFE_HEAP_LOAD($238 >> 0 | 0, 1, 0) | 0 | 0;
+   $244 = $243 ^ $241;
+   SAFE_HEAP_STORE($78 >> 0 | 0, $244 | 0, 1);
+   $245 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+   $246 = $$06692 + 8 | 0;
+   $247 = SAFE_HEAP_LOAD($242 >> 0 | 0, 1, 0) | 0 | 0;
+   $248 = $247 ^ $245;
+   SAFE_HEAP_STORE($80 >> 0 | 0, $248 | 0, 1);
+   $249 = SAFE_HEAP_LOAD($81 >> 0 | 0, 1, 0) | 0 | 0;
+   $250 = $$06692 + 9 | 0;
+   $251 = SAFE_HEAP_LOAD($246 >> 0 | 0, 1, 0) | 0 | 0;
+   $252 = $251 ^ $249;
+   SAFE_HEAP_STORE($82 >> 0 | 0, $252 | 0, 1);
+   $253 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+   $254 = $$06692 + 10 | 0;
+   $255 = SAFE_HEAP_LOAD($250 >> 0 | 0, 1, 0) | 0 | 0;
+   $256 = $255 ^ $253;
+   SAFE_HEAP_STORE($84 >> 0 | 0, $256 | 0, 1);
+   $257 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+   $258 = $$06692 + 11 | 0;
+   $259 = SAFE_HEAP_LOAD($254 >> 0 | 0, 1, 0) | 0 | 0;
+   $260 = $259 ^ $257;
+   SAFE_HEAP_STORE($86 >> 0 | 0, $260 | 0, 1);
+   $261 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 0) | 0 | 0;
+   $262 = $$06692 + 12 | 0;
+   $263 = SAFE_HEAP_LOAD($258 >> 0 | 0, 1, 0) | 0 | 0;
+   $264 = $263 ^ $261;
+   SAFE_HEAP_STORE($88 >> 0 | 0, $264 | 0, 1);
+   $265 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+   $266 = $$06692 + 13 | 0;
+   $267 = SAFE_HEAP_LOAD($262 >> 0 | 0, 1, 0) | 0 | 0;
+   $268 = $267 ^ $265;
+   SAFE_HEAP_STORE($90 >> 0 | 0, $268 | 0, 1);
+   $269 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+   $270 = $$06692 + 14 | 0;
+   $271 = SAFE_HEAP_LOAD($266 >> 0 | 0, 1, 0) | 0 | 0;
+   $272 = $271 ^ $269;
+   SAFE_HEAP_STORE($92 >> 0 | 0, $272 | 0, 1);
+   $273 = SAFE_HEAP_LOAD($93 >> 0 | 0, 1, 0) | 0 | 0;
+   $274 = $$06692 + 15 | 0;
+   $275 = SAFE_HEAP_LOAD($270 >> 0 | 0, 1, 0) | 0 | 0;
+   $276 = $275 ^ $273;
+   SAFE_HEAP_STORE($94 >> 0 | 0, $276 | 0, 1);
+   $277 = SAFE_HEAP_LOAD($95 >> 0 | 0, 1, 0) | 0 | 0;
+   $278 = SAFE_HEAP_LOAD($274 >> 0 | 0, 1, 0) | 0 | 0;
+   $279 = $278 ^ $277;
+   SAFE_HEAP_STORE($96 >> 0 | 0, $279 | 0, 1);
+  }
+  $295 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($9 | 0, 127 | 0) | 0) & 127]($4, 
$3, $3) | 0;
+  if ($32) {
+   $344 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+   $345 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+   $346 = $345 ^ $344;
+   SAFE_HEAP_STORE($29 | 0, $346 | 0, 4);
+   $347 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+   $348 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+   $349 = $348 ^ $347;
+   SAFE_HEAP_STORE($33 | 0, $349 | 0, 4);
+   $350 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+   $351 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+   $352 = $351 ^ $350;
+   SAFE_HEAP_STORE($34 | 0, $352 | 0, 4);
+   $353 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+   $354 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+   $355 = $354 ^ $353;
+   SAFE_HEAP_STORE($35 | 0, $355 | 0, 4);
+  } else {
+   $296 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+   $297 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+   $298 = $297 ^ $296;
+   SAFE_HEAP_STORE($29 >> 0 | 0, $298 | 0, 1);
+   $299 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+   $300 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+   $301 = $300 ^ $299;
+   SAFE_HEAP_STORE($38 >> 0 | 0, $301 | 0, 1);
+   $302 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+   $303 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+   $304 = $303 ^ $302;
+   SAFE_HEAP_STORE($40 >> 0 | 0, $304 | 0, 1);
+   $305 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+   $306 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+   $307 = $306 ^ $305;
+   SAFE_HEAP_STORE($42 >> 0 | 0, $307 | 0, 1);
+   $308 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+   $309 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+   $310 = $309 ^ $308;
+   SAFE_HEAP_STORE($44 >> 0 | 0, $310 | 0, 1);
+   $311 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+   $312 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+   $313 = $312 ^ $311;
+   SAFE_HEAP_STORE($46 >> 0 | 0, $313 | 0, 1);
+   $314 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+   $315 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 0 | 0;
+   $316 = $315 ^ $314;
+   SAFE_HEAP_STORE($48 >> 0 | 0, $316 | 0, 1);
+   $317 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+   $318 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+   $319 = $318 ^ $317;
+   SAFE_HEAP_STORE($50 >> 0 | 0, $319 | 0, 1);
+   $320 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+   $321 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+   $322 = $321 ^ $320;
+   SAFE_HEAP_STORE($52 >> 0 | 0, $322 | 0, 1);
+   $323 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+   $324 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+   $325 = $324 ^ $323;
+   SAFE_HEAP_STORE($54 >> 0 | 0, $325 | 0, 1);
+   $326 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+   $327 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+   $328 = $327 ^ $326;
+   SAFE_HEAP_STORE($56 >> 0 | 0, $328 | 0, 1);
+   $329 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+   $330 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+   $331 = $330 ^ $329;
+   SAFE_HEAP_STORE($58 >> 0 | 0, $331 | 0, 1);
+   $332 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+   $333 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+   $334 = $333 ^ $332;
+   SAFE_HEAP_STORE($60 >> 0 | 0, $334 | 0, 1);
+   $335 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+   $336 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+   $337 = $336 ^ $335;
+   SAFE_HEAP_STORE($62 >> 0 | 0, $337 | 0, 1);
+   $338 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+   $339 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+   $340 = $339 ^ $338;
+   SAFE_HEAP_STORE($64 >> 0 | 0, $340 | 0, 1);
+   $341 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+   $342 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+   $343 = $342 ^ $341;
+   SAFE_HEAP_STORE($66 >> 0 | 0, $343 | 0, 1);
+  }
+  $356 = $$06692 + 16 | 0;
+  $357 = $$093 + -1 | 0;
+  $358 = ($357 | 0) == 0;
+  if ($358) {
+   break;
+  } else {
+   $$06692 = $356;
+   $$093 = $357;
+  }
+ }
+ $359 = $3;
+ $360 = $359;
+ SAFE_HEAP_STORE($360 | 0, 0 | 0, 4);
+ $361 = $359 + 4 | 0;
+ $362 = $361;
+ SAFE_HEAP_STORE($362 | 0, 0 | 0, 4);
+ $363 = $3 + 8 | 0;
+ $364 = $363;
+ $365 = $364;
+ SAFE_HEAP_STORE($365 | 0, 0 | 0, 4);
+ $366 = $364 + 4 | 0;
+ $367 = $366;
+ SAFE_HEAP_STORE($367 | 0, 0 | 0, 4);
+ $368 = ($295 | 0) == 0;
+ if ($368) {
+  STACKTOP = sp;
+  return;
+ }
+ $369 = $295 + 16 | 0;
+ ___gcry_burn_stack($369);
+ STACKTOP = sp;
+ 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, $398 = 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, dest = 0, label = 0;
+ var sp = 0, stop = 0;
+ sp = STACKTOP;
+ __gcry_md_block_write($0, 0, 0);
+ $1 = $0 + 128 | 0;
+ $2 = $1;
+ $3 = $2;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 + 4 | 0;
+ $6 = $5;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = $0 + 136 | 0;
+ $9 = $8;
+ $10 = $9;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $9 + 4 | 0;
+ $13 = $12;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ $25 = ($24 | 0) < 0;
+ $26 = $25 << 31 >> 31;
+ $27 = _i64Add($24 | 0, $26 | 0, $15 | 0, $16 | 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($34 | 0, 0, $21 | 0, $22 | 0) | 0;
+ $36 = tempRet0;
+ $37 = _bitshift64Shl($27 | 0, $28 | 0, 3) | 0;
+ $38 = tempRet0;
+ $39 = _bitshift64Shl($35 | 0, $36 | 0, 3) | 0;
+ $40 = tempRet0;
+ $41 = _bitshift64Lshr($27 | 0, $28 | 0, 61) | 0;
+ $42 = tempRet0;
+ $43 = $39 | $41;
+ $40 | $42;
+ $44 = ($24 | 0) < 112;
+ $45 = $24 + 1 | 0;
+ SAFE_HEAP_STORE($23 | 0, $45 | 0, 4);
+ $46 = $0 + $24 | 0;
+ SAFE_HEAP_STORE($46 >> 0 | 0, -128 | 0, 1);
+ $47 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ if ($44) {
+  $49 = ($47 | 0) < 112;
+  if ($49) {
+   $51 = $47;
+   while (1) {
+    $50 = $51 + 1 | 0;
+    SAFE_HEAP_STORE($23 | 0, $50 | 0, 4);
+    $52 = $0 + $51 | 0;
+    SAFE_HEAP_STORE($52 >> 0 | 0, 0 | 0, 1);
+    $53 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+    $54 = ($53 | 0) < 112;
+    if ($54) {
+     $51 = $53;
+    } else {
+     break;
+    }
+   }
+  }
+ } else {
+  $48 = ($47 | 0) < 128;
+  if ($48) {
+   $56 = $47;
+   while (1) {
+    $55 = $56 + 1 | 0;
+    SAFE_HEAP_STORE($23 | 0, $55 | 0, 4);
+    $57 = $0 + $56 | 0;
+    SAFE_HEAP_STORE($57 >> 0 | 0, 0 | 0, 1);
+    $58 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+    $59 = ($58 | 0) < 128;
+    if ($59) {
+     $56 = $58;
+    } else {
+     break;
+    }
+   }
+  }
+  __gcry_md_block_write($0, 0, 0);
+  dest = $0;
+  stop = dest + 112 | 0;
+  do {
+   SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+   dest = dest + 4 | 0;
+  } while ((dest | 0) < (stop | 0));
+ }
+ $60 = $0 + 112 | 0;
+ $61 = _bitshift64Lshr($35 | 0, $36 | 0, 53) | 0;
+ $62 = tempRet0;
+ $63 = $61 & 255;
+ SAFE_HEAP_STORE($60 >> 0 | 0, $63 | 0, 1);
+ $64 = _bitshift64Lshr($35 | 0, $36 | 0, 45) | 0;
+ $65 = tempRet0;
+ $66 = $64 & 255;
+ $67 = $0 + 113 | 0;
+ SAFE_HEAP_STORE($67 >> 0 | 0, $66 | 0, 1);
+ $68 = _bitshift64Lshr($35 | 0, $36 | 0, 37) | 0;
+ $69 = tempRet0;
+ $70 = $68 & 255;
+ $71 = $0 + 114 | 0;
+ SAFE_HEAP_STORE($71 >> 0 | 0, $70 | 0, 1);
+ $72 = _bitshift64Lshr($35 | 0, $36 | 0, 29) | 0;
+ $73 = tempRet0;
+ $74 = $72 & 255;
+ $75 = $0 + 115 | 0;
+ SAFE_HEAP_STORE($75 >> 0 | 0, $74 | 0, 1);
+ $76 = _bitshift64Lshr($35 | 0, $36 | 0, 21) | 0;
+ $77 = tempRet0;
+ $78 = $76 & 255;
+ $79 = $0 + 116 | 0;
+ SAFE_HEAP_STORE($79 >> 0 | 0, $78 | 0, 1);
+ $80 = _bitshift64Lshr($35 | 0, $36 | 0, 13) | 0;
+ $81 = tempRet0;
+ $82 = $80 & 255;
+ $83 = $0 + 117 | 0;
+ SAFE_HEAP_STORE($83 >> 0 | 0, $82 | 0, 1);
+ $84 = _bitshift64Lshr($35 | 0, $36 | 0, 5) | 0;
+ $85 = tempRet0;
+ $86 = $84 & 255;
+ $87 = $0 + 118 | 0;
+ SAFE_HEAP_STORE($87 >> 0 | 0, $86 | 0, 1);
+ $88 = $43 & 255;
+ $89 = $0 + 119 | 0;
+ SAFE_HEAP_STORE($89 >> 0 | 0, $88 | 0, 1);
+ $90 = $0 + 120 | 0;
+ $91 = _bitshift64Lshr($27 | 0, $28 | 0, 53) | 0;
+ $92 = tempRet0;
+ $93 = $91 & 255;
+ SAFE_HEAP_STORE($90 >> 0 | 0, $93 | 0, 1);
+ $94 = _bitshift64Lshr($27 | 0, $28 | 0, 45) | 0;
+ $95 = tempRet0;
+ $96 = $94 & 255;
+ $97 = $0 + 121 | 0;
+ SAFE_HEAP_STORE($97 >> 0 | 0, $96 | 0, 1);
+ $98 = _bitshift64Lshr($27 | 0, $28 | 0, 37) | 0;
+ $99 = tempRet0;
+ $100 = $98 & 255;
+ $101 = $0 + 122 | 0;
+ SAFE_HEAP_STORE($101 >> 0 | 0, $100 | 0, 1);
+ $102 = _bitshift64Lshr($27 | 0, $28 | 0, 29) | 0;
+ $103 = tempRet0;
+ $104 = $102 & 255;
+ $105 = $0 + 123 | 0;
+ SAFE_HEAP_STORE($105 >> 0 | 0, $104 | 0, 1);
+ $106 = _bitshift64Lshr($27 | 0, $28 | 0, 21) | 0;
+ $107 = tempRet0;
+ $108 = $106 & 255;
+ $109 = $0 + 124 | 0;
+ SAFE_HEAP_STORE($109 >> 0 | 0, $108 | 0, 1);
+ $110 = _bitshift64Lshr($27 | 0, $28 | 0, 13) | 0;
+ $111 = tempRet0;
+ $112 = $110 & 255;
+ $113 = $0 + 125 | 0;
+ SAFE_HEAP_STORE($113 >> 0 | 0, $112 | 0, 1);
+ $114 = _bitshift64Lshr($27 | 0, $28 | 0, 5) | 0;
+ $115 = tempRet0;
+ $116 = $114 & 255;
+ $117 = $0 + 126 | 0;
+ SAFE_HEAP_STORE($117 >> 0 | 0, $116 | 0, 1);
+ $118 = $37 & 255;
+ $119 = $0 + 127 | 0;
+ SAFE_HEAP_STORE($119 >> 0 | 0, $118 | 0, 1);
+ _transform_1361($0, $0, 1) | 0;
+ ___gcry_burn_stack(220);
+ $120 = $0 + 160 | 0;
+ $121 = $120;
+ $122 = $121;
+ $123 = SAFE_HEAP_LOAD($122 | 0, 4, 0) | 0 | 0;
+ $124 = $121 + 4 | 0;
+ $125 = $124;
+ $126 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 0;
+ $127 = _bitshift64Lshr($123 | 0, $126 | 0, 56) | 0;
+ $128 = tempRet0;
+ $129 = $127 & 255;
+ SAFE_HEAP_STORE($0 >> 0 | 0, $129 | 0, 1);
+ $130 = _bitshift64Lshr($123 | 0, $126 | 0, 48) | 0;
+ $131 = tempRet0;
+ $132 = $130 & 255;
+ $133 = $0 + 1 | 0;
+ SAFE_HEAP_STORE($133 >> 0 | 0, $132 | 0, 1);
+ $134 = _bitshift64Lshr($123 | 0, $126 | 0, 40) | 0;
+ $135 = tempRet0;
+ $136 = $134 & 255;
+ $137 = $0 + 2 | 0;
+ SAFE_HEAP_STORE($137 >> 0 | 0, $136 | 0, 1);
+ $138 = $126 & 255;
+ $139 = $0 + 3 | 0;
+ SAFE_HEAP_STORE($139 >> 0 | 0, $138 | 0, 1);
+ $140 = _bitshift64Lshr($123 | 0, $126 | 0, 24) | 0;
+ $141 = tempRet0;
+ $142 = $140 & 255;
+ $143 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($143 >> 0 | 0, $142 | 0, 1);
+ $144 = _bitshift64Lshr($123 | 0, $126 | 0, 16) | 0;
+ $145 = tempRet0;
+ $146 = $144 & 255;
+ $147 = $0 + 5 | 0;
+ SAFE_HEAP_STORE($147 >> 0 | 0, $146 | 0, 1);
+ $148 = _bitshift64Lshr($123 | 0, $126 | 0, 8) | 0;
+ $149 = tempRet0;
+ $150 = $148 & 255;
+ $151 = $0 + 6 | 0;
+ SAFE_HEAP_STORE($151 >> 0 | 0, $150 | 0, 1);
+ $152 = $123 & 255;
+ $153 = $0 + 7 | 0;
+ SAFE_HEAP_STORE($153 >> 0 | 0, $152 | 0, 1);
+ $154 = $0 + 8 | 0;
+ $155 = $0 + 168 | 0;
+ $156 = $155;
+ $157 = $156;
+ $158 = SAFE_HEAP_LOAD($157 | 0, 4, 0) | 0 | 0;
+ $159 = $156 + 4 | 0;
+ $160 = $159;
+ $161 = SAFE_HEAP_LOAD($160 | 0, 4, 0) | 0 | 0;
+ $162 = _bitshift64Lshr($158 | 0, $161 | 0, 56) | 0;
+ $163 = tempRet0;
+ $164 = $162 & 255;
+ SAFE_HEAP_STORE($154 >> 0 | 0, $164 | 0, 1);
+ $165 = _bitshift64Lshr($158 | 0, $161 | 0, 48) | 0;
+ $166 = tempRet0;
+ $167 = $165 & 255;
+ $168 = $0 + 9 | 0;
+ SAFE_HEAP_STORE($168 >> 0 | 0, $167 | 0, 1);
+ $169 = _bitshift64Lshr($158 | 0, $161 | 0, 40) | 0;
+ $170 = tempRet0;
+ $171 = $169 & 255;
+ $172 = $0 + 10 | 0;
+ SAFE_HEAP_STORE($172 >> 0 | 0, $171 | 0, 1);
+ $173 = $161 & 255;
+ $174 = $0 + 11 | 0;
+ SAFE_HEAP_STORE($174 >> 0 | 0, $173 | 0, 1);
+ $175 = _bitshift64Lshr($158 | 0, $161 | 0, 24) | 0;
+ $176 = tempRet0;
+ $177 = $175 & 255;
+ $178 = $0 + 12 | 0;
+ SAFE_HEAP_STORE($178 >> 0 | 0, $177 | 0, 1);
+ $179 = _bitshift64Lshr($158 | 0, $161 | 0, 16) | 0;
+ $180 = tempRet0;
+ $181 = $179 & 255;
+ $182 = $0 + 13 | 0;
+ SAFE_HEAP_STORE($182 >> 0 | 0, $181 | 0, 1);
+ $183 = _bitshift64Lshr($158 | 0, $161 | 0, 8) | 0;
+ $184 = tempRet0;
+ $185 = $183 & 255;
+ $186 = $0 + 14 | 0;
+ SAFE_HEAP_STORE($186 >> 0 | 0, $185 | 0, 1);
+ $187 = $158 & 255;
+ $188 = $0 + 15 | 0;
+ SAFE_HEAP_STORE($188 >> 0 | 0, $187 | 0, 1);
+ $189 = $0 + 16 | 0;
+ $190 = $0 + 176 | 0;
+ $191 = $190;
+ $192 = $191;
+ $193 = SAFE_HEAP_LOAD($192 | 0, 4, 0) | 0 | 0;
+ $194 = $191 + 4 | 0;
+ $195 = $194;
+ $196 = SAFE_HEAP_LOAD($195 | 0, 4, 0) | 0 | 0;
+ $197 = _bitshift64Lshr($193 | 0, $196 | 0, 56) | 0;
+ $198 = tempRet0;
+ $199 = $197 & 255;
+ SAFE_HEAP_STORE($189 >> 0 | 0, $199 | 0, 1);
+ $200 = _bitshift64Lshr($193 | 0, $196 | 0, 48) | 0;
+ $201 = tempRet0;
+ $202 = $200 & 255;
+ $203 = $0 + 17 | 0;
+ SAFE_HEAP_STORE($203 >> 0 | 0, $202 | 0, 1);
+ $204 = _bitshift64Lshr($193 | 0, $196 | 0, 40) | 0;
+ $205 = tempRet0;
+ $206 = $204 & 255;
+ $207 = $0 + 18 | 0;
+ SAFE_HEAP_STORE($207 >> 0 | 0, $206 | 0, 1);
+ $208 = $196 & 255;
+ $209 = $0 + 19 | 0;
+ SAFE_HEAP_STORE($209 >> 0 | 0, $208 | 0, 1);
+ $210 = _bitshift64Lshr($193 | 0, $196 | 0, 24) | 0;
+ $211 = tempRet0;
+ $212 = $210 & 255;
+ $213 = $0 + 20 | 0;
+ SAFE_HEAP_STORE($213 >> 0 | 0, $212 | 0, 1);
+ $214 = _bitshift64Lshr($193 | 0, $196 | 0, 16) | 0;
+ $215 = tempRet0;
+ $216 = $214 & 255;
+ $217 = $0 + 21 | 0;
+ SAFE_HEAP_STORE($217 >> 0 | 0, $216 | 0, 1);
+ $218 = _bitshift64Lshr($193 | 0, $196 | 0, 8) | 0;
+ $219 = tempRet0;
+ $220 = $218 & 255;
+ $221 = $0 + 22 | 0;
+ SAFE_HEAP_STORE($221 >> 0 | 0, $220 | 0, 1);
+ $222 = $193 & 255;
+ $223 = $0 + 23 | 0;
+ SAFE_HEAP_STORE($223 >> 0 | 0, $222 | 0, 1);
+ $224 = $0 + 24 | 0;
+ $225 = $0 + 184 | 0;
+ $226 = $225;
+ $227 = $226;
+ $228 = SAFE_HEAP_LOAD($227 | 0, 4, 0) | 0 | 0;
+ $229 = $226 + 4 | 0;
+ $230 = $229;
+ $231 = SAFE_HEAP_LOAD($230 | 0, 4, 0) | 0 | 0;
+ $232 = _bitshift64Lshr($228 | 0, $231 | 0, 56) | 0;
+ $233 = tempRet0;
+ $234 = $232 & 255;
+ SAFE_HEAP_STORE($224 >> 0 | 0, $234 | 0, 1);
+ $235 = _bitshift64Lshr($228 | 0, $231 | 0, 48) | 0;
+ $236 = tempRet0;
+ $237 = $235 & 255;
+ $238 = $0 + 25 | 0;
+ SAFE_HEAP_STORE($238 >> 0 | 0, $237 | 0, 1);
+ $239 = _bitshift64Lshr($228 | 0, $231 | 0, 40) | 0;
+ $240 = tempRet0;
+ $241 = $239 & 255;
+ $242 = $0 + 26 | 0;
+ SAFE_HEAP_STORE($242 >> 0 | 0, $241 | 0, 1);
+ $243 = $231 & 255;
+ $244 = $0 + 27 | 0;
+ SAFE_HEAP_STORE($244 >> 0 | 0, $243 | 0, 1);
+ $245 = _bitshift64Lshr($228 | 0, $231 | 0, 24) | 0;
+ $246 = tempRet0;
+ $247 = $245 & 255;
+ $248 = $0 + 28 | 0;
+ SAFE_HEAP_STORE($248 >> 0 | 0, $247 | 0, 1);
+ $249 = _bitshift64Lshr($228 | 0, $231 | 0, 16) | 0;
+ $250 = tempRet0;
+ $251 = $249 & 255;
+ $252 = $0 + 29 | 0;
+ SAFE_HEAP_STORE($252 >> 0 | 0, $251 | 0, 1);
+ $253 = _bitshift64Lshr($228 | 0, $231 | 0, 8) | 0;
+ $254 = tempRet0;
+ $255 = $253 & 255;
+ $256 = $0 + 30 | 0;
+ SAFE_HEAP_STORE($256 >> 0 | 0, $255 | 0, 1);
+ $257 = $228 & 255;
+ $258 = $0 + 31 | 0;
+ SAFE_HEAP_STORE($258 >> 0 | 0, $257 | 0, 1);
+ $259 = $0 + 32 | 0;
+ $260 = $0 + 192 | 0;
+ $261 = $260;
+ $262 = $261;
+ $263 = SAFE_HEAP_LOAD($262 | 0, 4, 0) | 0 | 0;
+ $264 = $261 + 4 | 0;
+ $265 = $264;
+ $266 = SAFE_HEAP_LOAD($265 | 0, 4, 0) | 0 | 0;
+ $267 = _bitshift64Lshr($263 | 0, $266 | 0, 56) | 0;
+ $268 = tempRet0;
+ $269 = $267 & 255;
+ SAFE_HEAP_STORE($259 >> 0 | 0, $269 | 0, 1);
+ $270 = _bitshift64Lshr($263 | 0, $266 | 0, 48) | 0;
+ $271 = tempRet0;
+ $272 = $270 & 255;
+ $273 = $0 + 33 | 0;
+ SAFE_HEAP_STORE($273 >> 0 | 0, $272 | 0, 1);
+ $274 = _bitshift64Lshr($263 | 0, $266 | 0, 40) | 0;
+ $275 = tempRet0;
+ $276 = $274 & 255;
+ $277 = $0 + 34 | 0;
+ SAFE_HEAP_STORE($277 >> 0 | 0, $276 | 0, 1);
+ $278 = $266 & 255;
+ $279 = $0 + 35 | 0;
+ SAFE_HEAP_STORE($279 >> 0 | 0, $278 | 0, 1);
+ $280 = _bitshift64Lshr($263 | 0, $266 | 0, 24) | 0;
+ $281 = tempRet0;
+ $282 = $280 & 255;
+ $283 = $0 + 36 | 0;
+ SAFE_HEAP_STORE($283 >> 0 | 0, $282 | 0, 1);
+ $284 = _bitshift64Lshr($263 | 0, $266 | 0, 16) | 0;
+ $285 = tempRet0;
+ $286 = $284 & 255;
+ $287 = $0 + 37 | 0;
+ SAFE_HEAP_STORE($287 >> 0 | 0, $286 | 0, 1);
+ $288 = _bitshift64Lshr($263 | 0, $266 | 0, 8) | 0;
+ $289 = tempRet0;
+ $290 = $288 & 255;
+ $291 = $0 + 38 | 0;
+ SAFE_HEAP_STORE($291 >> 0 | 0, $290 | 0, 1);
+ $292 = $263 & 255;
+ $293 = $0 + 39 | 0;
+ SAFE_HEAP_STORE($293 >> 0 | 0, $292 | 0, 1);
+ $294 = $0 + 40 | 0;
+ $295 = $0 + 200 | 0;
+ $296 = $295;
+ $297 = $296;
+ $298 = SAFE_HEAP_LOAD($297 | 0, 4, 0) | 0 | 0;
+ $299 = $296 + 4 | 0;
+ $300 = $299;
+ $301 = SAFE_HEAP_LOAD($300 | 0, 4, 0) | 0 | 0;
+ $302 = _bitshift64Lshr($298 | 0, $301 | 0, 56) | 0;
+ $303 = tempRet0;
+ $304 = $302 & 255;
+ SAFE_HEAP_STORE($294 >> 0 | 0, $304 | 0, 1);
+ $305 = _bitshift64Lshr($298 | 0, $301 | 0, 48) | 0;
+ $306 = tempRet0;
+ $307 = $305 & 255;
+ $308 = $0 + 41 | 0;
+ SAFE_HEAP_STORE($308 >> 0 | 0, $307 | 0, 1);
+ $309 = _bitshift64Lshr($298 | 0, $301 | 0, 40) | 0;
+ $310 = tempRet0;
+ $311 = $309 & 255;
+ $312 = $0 + 42 | 0;
+ SAFE_HEAP_STORE($312 >> 0 | 0, $311 | 0, 1);
+ $313 = $301 & 255;
+ $314 = $0 + 43 | 0;
+ SAFE_HEAP_STORE($314 >> 0 | 0, $313 | 0, 1);
+ $315 = _bitshift64Lshr($298 | 0, $301 | 0, 24) | 0;
+ $316 = tempRet0;
+ $317 = $315 & 255;
+ $318 = $0 + 44 | 0;
+ SAFE_HEAP_STORE($318 >> 0 | 0, $317 | 0, 1);
+ $319 = _bitshift64Lshr($298 | 0, $301 | 0, 16) | 0;
+ $320 = tempRet0;
+ $321 = $319 & 255;
+ $322 = $0 + 45 | 0;
+ SAFE_HEAP_STORE($322 >> 0 | 0, $321 | 0, 1);
+ $323 = _bitshift64Lshr($298 | 0, $301 | 0, 8) | 0;
+ $324 = tempRet0;
+ $325 = $323 & 255;
+ $326 = $0 + 46 | 0;
+ SAFE_HEAP_STORE($326 >> 0 | 0, $325 | 0, 1);
+ $327 = $298 & 255;
+ $328 = $0 + 47 | 0;
+ SAFE_HEAP_STORE($328 >> 0 | 0, $327 | 0, 1);
+ $329 = $0 + 48 | 0;
+ $330 = $0 + 208 | 0;
+ $331 = $330;
+ $332 = $331;
+ $333 = SAFE_HEAP_LOAD($332 | 0, 4, 0) | 0 | 0;
+ $334 = $331 + 4 | 0;
+ $335 = $334;
+ $336 = SAFE_HEAP_LOAD($335 | 0, 4, 0) | 0 | 0;
+ $337 = _bitshift64Lshr($333 | 0, $336 | 0, 56) | 0;
+ $338 = tempRet0;
+ $339 = $337 & 255;
+ SAFE_HEAP_STORE($329 >> 0 | 0, $339 | 0, 1);
+ $340 = _bitshift64Lshr($333 | 0, $336 | 0, 48) | 0;
+ $341 = tempRet0;
+ $342 = $340 & 255;
+ $343 = $0 + 49 | 0;
+ SAFE_HEAP_STORE($343 >> 0 | 0, $342 | 0, 1);
+ $344 = _bitshift64Lshr($333 | 0, $336 | 0, 40) | 0;
+ $345 = tempRet0;
+ $346 = $344 & 255;
+ $347 = $0 + 50 | 0;
+ SAFE_HEAP_STORE($347 >> 0 | 0, $346 | 0, 1);
+ $348 = $336 & 255;
+ $349 = $0 + 51 | 0;
+ SAFE_HEAP_STORE($349 >> 0 | 0, $348 | 0, 1);
+ $350 = _bitshift64Lshr($333 | 0, $336 | 0, 24) | 0;
+ $351 = tempRet0;
+ $352 = $350 & 255;
+ $353 = $0 + 52 | 0;
+ SAFE_HEAP_STORE($353 >> 0 | 0, $352 | 0, 1);
+ $354 = _bitshift64Lshr($333 | 0, $336 | 0, 16) | 0;
+ $355 = tempRet0;
+ $356 = $354 & 255;
+ $357 = $0 + 53 | 0;
+ SAFE_HEAP_STORE($357 >> 0 | 0, $356 | 0, 1);
+ $358 = _bitshift64Lshr($333 | 0, $336 | 0, 8) | 0;
+ $359 = tempRet0;
+ $360 = $358 & 255;
+ $361 = $0 + 54 | 0;
+ SAFE_HEAP_STORE($361 >> 0 | 0, $360 | 0, 1);
+ $362 = $333 & 255;
+ $363 = $0 + 55 | 0;
+ SAFE_HEAP_STORE($363 >> 0 | 0, $362 | 0, 1);
+ $364 = $0 + 56 | 0;
+ $365 = $0 + 216 | 0;
+ $366 = $365;
+ $367 = $366;
+ $368 = SAFE_HEAP_LOAD($367 | 0, 4, 0) | 0 | 0;
+ $369 = $366 + 4 | 0;
+ $370 = $369;
+ $371 = SAFE_HEAP_LOAD($370 | 0, 4, 0) | 0 | 0;
+ $372 = _bitshift64Lshr($368 | 0, $371 | 0, 56) | 0;
+ $373 = tempRet0;
+ $374 = $372 & 255;
+ SAFE_HEAP_STORE($364 >> 0 | 0, $374 | 0, 1);
+ $375 = _bitshift64Lshr($368 | 0, $371 | 0, 48) | 0;
+ $376 = tempRet0;
+ $377 = $375 & 255;
+ $378 = $0 + 57 | 0;
+ SAFE_HEAP_STORE($378 >> 0 | 0, $377 | 0, 1);
+ $379 = _bitshift64Lshr($368 | 0, $371 | 0, 40) | 0;
+ $380 = tempRet0;
+ $381 = $379 & 255;
+ $382 = $0 + 58 | 0;
+ SAFE_HEAP_STORE($382 >> 0 | 0, $381 | 0, 1);
+ $383 = $371 & 255;
+ $384 = $0 + 59 | 0;
+ SAFE_HEAP_STORE($384 >> 0 | 0, $383 | 0, 1);
+ $385 = _bitshift64Lshr($368 | 0, $371 | 0, 24) | 0;
+ $386 = tempRet0;
+ $387 = $385 & 255;
+ $388 = $0 + 60 | 0;
+ SAFE_HEAP_STORE($388 >> 0 | 0, $387 | 0, 1);
+ $389 = _bitshift64Lshr($368 | 0, $371 | 0, 16) | 0;
+ $390 = tempRet0;
+ $391 = $389 & 255;
+ $392 = $0 + 61 | 0;
+ SAFE_HEAP_STORE($392 >> 0 | 0, $391 | 0, 1);
+ $393 = _bitshift64Lshr($368 | 0, $371 | 0, 8) | 0;
+ $394 = tempRet0;
+ $395 = $393 & 255;
+ $396 = $0 + 62 | 0;
+ SAFE_HEAP_STORE($396 >> 0 | 0, $395 | 0, 1);
+ $397 = $368 & 255;
+ $398 = $0 + 63 | 0;
+ SAFE_HEAP_STORE($398 >> 0 | 0, $397 | 0, 1);
+ 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 = 0, $$03744$us = 0, 
$$03744$us$phi = 0, $$03843 = 0, $$03843$us = 0, $$03942$us = 0, $$045 = 0, 
$$045$us = 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, $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;
+ 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, $scevgep = 0, label = 0, 
sp = 0;
+ sp = STACKTOP;
+ $6 = $0 + 496 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ if (!$8) {
+  FUNCTION_TABLE_v[(SAFE_FT_MASK($7 | 0, 127 | 0) | 0) & 127]();
+ }
+ $9 = $0 + 488 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = ($4 | 0) == 0;
+ if ($11) {
+  return;
+ }
+ $12 = ($5 | 0) == 0;
+ if ($12) {
+  $32 = $4 << 4;
+  $33 = $32 + -16 | 0;
+  $$03744$us = $1;
+  $$03843$us = $3;
+  $$03942$us = $2;
+  $$045$us = $4;
+  while (1) {
+   $34 = $$03942$us;
+   $35 = $$03843$us;
+   $36 = $35 | $34;
+   $37 = $$03744$us;
+   $38 = $36 | $37;
+   $39 = $38 & 3;
+   $40 = ($39 | 0) == 0;
+   if ($40) {
+    $134 = $$03843$us + 4 | 0;
+    $135 = SAFE_HEAP_LOAD($$03843$us | 0, 4, 0) | 0 | 0;
+    $136 = $$03744$us + 4 | 0;
+    $137 = SAFE_HEAP_LOAD($$03744$us | 0, 4, 0) | 0 | 0;
+    $138 = $137 ^ $135;
+    $139 = $$03942$us + 4 | 0;
+    SAFE_HEAP_STORE($$03942$us | 0, $138 | 0, 4);
+    $140 = $$03843$us + 8 | 0;
+    $141 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 0;
+    $142 = $$03744$us + 8 | 0;
+    $143 = SAFE_HEAP_LOAD($136 | 0, 4, 0) | 0 | 0;
+    $144 = $143 ^ $141;
+    $145 = $$03942$us + 8 | 0;
+    SAFE_HEAP_STORE($139 | 0, $144 | 0, 4);
+    $146 = $$03843$us + 12 | 0;
+    $147 = SAFE_HEAP_LOAD($140 | 0, 4, 0) | 0 | 0;
+    $148 = $$03744$us + 12 | 0;
+    $149 = SAFE_HEAP_LOAD($142 | 0, 4, 0) | 0 | 0;
+    $150 = $149 ^ $147;
+    $151 = $$03942$us + 12 | 0;
+    SAFE_HEAP_STORE($145 | 0, $150 | 0, 4);
+    $152 = SAFE_HEAP_LOAD($146 | 0, 4, 0) | 0 | 0;
+    $153 = SAFE_HEAP_LOAD($148 | 0, 4, 0) | 0 | 0;
+    $154 = $153 ^ $152;
+    SAFE_HEAP_STORE($151 | 0, $154 | 0, 4);
+   } else {
+    $41 = $$03843$us + 1 | 0;
+    $42 = SAFE_HEAP_LOAD($$03843$us >> 0 | 0, 1, 0) | 0 | 0;
+    $43 = $$03744$us + 1 | 0;
+    $44 = SAFE_HEAP_LOAD($$03744$us >> 0 | 0, 1, 0) | 0 | 0;
+    $45 = $44 ^ $42;
+    $46 = $$03942$us + 1 | 0;
+    SAFE_HEAP_STORE($$03942$us >> 0 | 0, $45 | 0, 1);
+    $47 = $$03843$us + 2 | 0;
+    $48 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+    $49 = $$03744$us + 2 | 0;
+    $50 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+    $51 = $50 ^ $48;
+    $52 = $$03942$us + 2 | 0;
+    SAFE_HEAP_STORE($46 >> 0 | 0, $51 | 0, 1);
+    $53 = $$03843$us + 3 | 0;
+    $54 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+    $55 = $$03744$us + 3 | 0;
+    $56 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+    $57 = $56 ^ $54;
+    $58 = $$03942$us + 3 | 0;
+    SAFE_HEAP_STORE($52 >> 0 | 0, $57 | 0, 1);
+    $59 = $$03843$us + 4 | 0;
+    $60 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+    $61 = $$03744$us + 4 | 0;
+    $62 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+    $63 = $62 ^ $60;
+    $64 = $$03942$us + 4 | 0;
+    SAFE_HEAP_STORE($58 >> 0 | 0, $63 | 0, 1);
+    $65 = $$03843$us + 5 | 0;
+    $66 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+    $67 = $$03744$us + 5 | 0;
+    $68 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+    $69 = $68 ^ $66;
+    $70 = $$03942$us + 5 | 0;
+    SAFE_HEAP_STORE($64 >> 0 | 0, $69 | 0, 1);
+    $71 = $$03843$us + 6 | 0;
+    $72 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+    $73 = $$03744$us + 6 | 0;
+    $74 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+    $75 = $74 ^ $72;
+    $76 = $$03942$us + 6 | 0;
+    SAFE_HEAP_STORE($70 >> 0 | 0, $75 | 0, 1);
+    $77 = $$03843$us + 7 | 0;
+    $78 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+    $79 = $$03744$us + 7 | 0;
+    $80 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+    $81 = $80 ^ $78;
+    $82 = $$03942$us + 7 | 0;
+    SAFE_HEAP_STORE($76 >> 0 | 0, $81 | 0, 1);
+    $83 = $$03843$us + 8 | 0;
+    $84 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+    $85 = $$03744$us + 8 | 0;
+    $86 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+    $87 = $86 ^ $84;
+    $88 = $$03942$us + 8 | 0;
+    SAFE_HEAP_STORE($82 >> 0 | 0, $87 | 0, 1);
+    $89 = $$03843$us + 9 | 0;
+    $90 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+    $91 = $$03744$us + 9 | 0;
+    $92 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+    $93 = $92 ^ $90;
+    $94 = $$03942$us + 9 | 0;
+    SAFE_HEAP_STORE($88 >> 0 | 0, $93 | 0, 1);
+    $95 = $$03843$us + 10 | 0;
+    $96 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+    $97 = $$03744$us + 10 | 0;
+    $98 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+    $99 = $98 ^ $96;
+    $100 = $$03942$us + 10 | 0;
+    SAFE_HEAP_STORE($94 >> 0 | 0, $99 | 0, 1);
+    $101 = $$03843$us + 11 | 0;
+    $102 = SAFE_HEAP_LOAD($95 >> 0 | 0, 1, 0) | 0 | 0;
+    $103 = $$03744$us + 11 | 0;
+    $104 = SAFE_HEAP_LOAD($97 >> 0 | 0, 1, 0) | 0 | 0;
+    $105 = $104 ^ $102;
+    $106 = $$03942$us + 11 | 0;
+    SAFE_HEAP_STORE($100 >> 0 | 0, $105 | 0, 1);
+    $107 = $$03843$us + 12 | 0;
+    $108 = SAFE_HEAP_LOAD($101 >> 0 | 0, 1, 0) | 0 | 0;
+    $109 = $$03744$us + 12 | 0;
+    $110 = SAFE_HEAP_LOAD($103 >> 0 | 0, 1, 0) | 0 | 0;
+    $111 = $110 ^ $108;
+    $112 = $$03942$us + 12 | 0;
+    SAFE_HEAP_STORE($106 >> 0 | 0, $111 | 0, 1);
+    $113 = $$03843$us + 13 | 0;
+    $114 = SAFE_HEAP_LOAD($107 >> 0 | 0, 1, 0) | 0 | 0;
+    $115 = $$03744$us + 13 | 0;
+    $116 = SAFE_HEAP_LOAD($109 >> 0 | 0, 1, 0) | 0 | 0;
+    $117 = $116 ^ $114;
+    $118 = $$03942$us + 13 | 0;
+    SAFE_HEAP_STORE($112 >> 0 | 0, $117 | 0, 1);
+    $119 = $$03843$us + 14 | 0;
+    $120 = SAFE_HEAP_LOAD($113 >> 0 | 0, 1, 0) | 0 | 0;
+    $121 = $$03744$us + 14 | 0;
+    $122 = SAFE_HEAP_LOAD($115 >> 0 | 0, 1, 0) | 0 | 0;
+    $123 = $122 ^ $120;
+    $124 = $$03942$us + 14 | 0;
+    SAFE_HEAP_STORE($118 >> 0 | 0, $123 | 0, 1);
+    $125 = $$03843$us + 15 | 0;
+    $126 = SAFE_HEAP_LOAD($119 >> 0 | 0, 1, 0) | 0 | 0;
+    $127 = $$03744$us + 15 | 0;
+    $128 = SAFE_HEAP_LOAD($121 >> 0 | 0, 1, 0) | 0 | 0;
+    $129 = $128 ^ $126;
+    $130 = $$03942$us + 15 | 0;
+    SAFE_HEAP_STORE($124 >> 0 | 0, $129 | 0, 1);
+    $131 = SAFE_HEAP_LOAD($125 >> 0 | 0, 1, 0) | 0 | 0;
+    $132 = SAFE_HEAP_LOAD($127 >> 0 | 0, 1, 0) | 0 | 0;
+    $133 = $132 ^ $131;
+    SAFE_HEAP_STORE($130 >> 0 | 0, $133 | 0, 1);
+   }
+   $155 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 127]($0, 
$$03942$us, $$03942$us) | 0;
+   $156 = $$03843$us + 16 | 0;
+   $157 = $$03942$us + 16 | 0;
+   $158 = $$045$us + -1 | 0;
+   $159 = ($158 | 0) == 0;
+   if ($159) {
+    break;
+   } else {
+    $$03744$us$phi = $$03942$us;
+    $$03843$us = $156;
+    $$03942$us = $157;
+    $$045$us = $158;
+    $$03744$us = $$03744$us$phi;
+   }
+  }
+  $scevgep = $2 + $33 | 0;
+  $$036$lcssa = $155;
+  $$037$lcssa = $scevgep;
+ } else {
+  $13 = $2;
+  $14 = $2 + 4 | 0;
+  $15 = $2 + 8 | 0;
+  $16 = $2 + 12 | 0;
+  $17 = $2 + 1 | 0;
+  $18 = $2 + 2 | 0;
+  $19 = $2 + 3 | 0;
+  $20 = $2 + 4 | 0;
+  $21 = $2 + 5 | 0;
+  $22 = $2 + 6 | 0;
+  $23 = $2 + 7 | 0;
+  $24 = $2 + 8 | 0;
+  $25 = $2 + 9 | 0;
+  $26 = $2 + 10 | 0;
+  $27 = $2 + 11 | 0;
+  $28 = $2 + 12 | 0;
+  $29 = $2 + 13 | 0;
+  $30 = $2 + 14 | 0;
+  $31 = $2 + 15 | 0;
+  $$03744 = $1;
+  $$03843 = $3;
+  $$045 = $4;
+  while (1) {
+   $160 = $$03843;
+   $161 = $160 | $13;
+   $162 = $$03744;
+   $163 = $161 | $162;
+   $164 = $163 & 3;
+   $165 = ($164 | 0) == 0;
+   if ($165) {
+    $244 = $$03843 + 4 | 0;
+    $245 = SAFE_HEAP_LOAD($$03843 | 0, 4, 0) | 0 | 0;
+    $246 = $$03744 + 4 | 0;
+    $247 = SAFE_HEAP_LOAD($$03744 | 0, 4, 0) | 0 | 0;
+    $248 = $247 ^ $245;
+    SAFE_HEAP_STORE($2 | 0, $248 | 0, 4);
+    $249 = $$03843 + 8 | 0;
+    $250 = SAFE_HEAP_LOAD($244 | 0, 4, 0) | 0 | 0;
+    $251 = $$03744 + 8 | 0;
+    $252 = SAFE_HEAP_LOAD($246 | 0, 4, 0) | 0 | 0;
+    $253 = $252 ^ $250;
+    SAFE_HEAP_STORE($14 | 0, $253 | 0, 4);
+    $254 = $$03843 + 12 | 0;
+    $255 = SAFE_HEAP_LOAD($249 | 0, 4, 0) | 0 | 0;
+    $256 = $$03744 + 12 | 0;
+    $257 = SAFE_HEAP_LOAD($251 | 0, 4, 0) | 0 | 0;
+    $258 = $257 ^ $255;
+    SAFE_HEAP_STORE($15 | 0, $258 | 0, 4);
+    $259 = SAFE_HEAP_LOAD($254 | 0, 4, 0) | 0 | 0;
+    $260 = SAFE_HEAP_LOAD($256 | 0, 4, 0) | 0 | 0;
+    $261 = $260 ^ $259;
+    SAFE_HEAP_STORE($16 | 0, $261 | 0, 4);
+   } else {
+    $166 = $$03843 + 1 | 0;
+    $167 = SAFE_HEAP_LOAD($$03843 >> 0 | 0, 1, 0) | 0 | 0;
+    $168 = $$03744 + 1 | 0;
+    $169 = SAFE_HEAP_LOAD($$03744 >> 0 | 0, 1, 0) | 0 | 0;
+    $170 = $169 ^ $167;
+    SAFE_HEAP_STORE($2 >> 0 | 0, $170 | 0, 1);
+    $171 = $$03843 + 2 | 0;
+    $172 = SAFE_HEAP_LOAD($166 >> 0 | 0, 1, 0) | 0 | 0;
+    $173 = $$03744 + 2 | 0;
+    $174 = SAFE_HEAP_LOAD($168 >> 0 | 0, 1, 0) | 0 | 0;
+    $175 = $174 ^ $172;
+    SAFE_HEAP_STORE($17 >> 0 | 0, $175 | 0, 1);
+    $176 = $$03843 + 3 | 0;
+    $177 = SAFE_HEAP_LOAD($171 >> 0 | 0, 1, 0) | 0 | 0;
+    $178 = $$03744 + 3 | 0;
+    $179 = SAFE_HEAP_LOAD($173 >> 0 | 0, 1, 0) | 0 | 0;
+    $180 = $179 ^ $177;
+    SAFE_HEAP_STORE($18 >> 0 | 0, $180 | 0, 1);
+    $181 = $$03843 + 4 | 0;
+    $182 = SAFE_HEAP_LOAD($176 >> 0 | 0, 1, 0) | 0 | 0;
+    $183 = $$03744 + 4 | 0;
+    $184 = SAFE_HEAP_LOAD($178 >> 0 | 0, 1, 0) | 0 | 0;
+    $185 = $184 ^ $182;
+    SAFE_HEAP_STORE($19 >> 0 | 0, $185 | 0, 1);
+    $186 = $$03843 + 5 | 0;
+    $187 = SAFE_HEAP_LOAD($181 >> 0 | 0, 1, 0) | 0 | 0;
+    $188 = $$03744 + 5 | 0;
+    $189 = SAFE_HEAP_LOAD($183 >> 0 | 0, 1, 0) | 0 | 0;
+    $190 = $189 ^ $187;
+    SAFE_HEAP_STORE($20 >> 0 | 0, $190 | 0, 1);
+    $191 = $$03843 + 6 | 0;
+    $192 = SAFE_HEAP_LOAD($186 >> 0 | 0, 1, 0) | 0 | 0;
+    $193 = $$03744 + 6 | 0;
+    $194 = SAFE_HEAP_LOAD($188 >> 0 | 0, 1, 0) | 0 | 0;
+    $195 = $194 ^ $192;
+    SAFE_HEAP_STORE($21 >> 0 | 0, $195 | 0, 1);
+    $196 = $$03843 + 7 | 0;
+    $197 = SAFE_HEAP_LOAD($191 >> 0 | 0, 1, 0) | 0 | 0;
+    $198 = $$03744 + 7 | 0;
+    $199 = SAFE_HEAP_LOAD($193 >> 0 | 0, 1, 0) | 0 | 0;
+    $200 = $199 ^ $197;
+    SAFE_HEAP_STORE($22 >> 0 | 0, $200 | 0, 1);
+    $201 = $$03843 + 8 | 0;
+    $202 = SAFE_HEAP_LOAD($196 >> 0 | 0, 1, 0) | 0 | 0;
+    $203 = $$03744 + 8 | 0;
+    $204 = SAFE_HEAP_LOAD($198 >> 0 | 0, 1, 0) | 0 | 0;
+    $205 = $204 ^ $202;
+    SAFE_HEAP_STORE($23 >> 0 | 0, $205 | 0, 1);
+    $206 = $$03843 + 9 | 0;
+    $207 = SAFE_HEAP_LOAD($201 >> 0 | 0, 1, 0) | 0 | 0;
+    $208 = $$03744 + 9 | 0;
+    $209 = SAFE_HEAP_LOAD($203 >> 0 | 0, 1, 0) | 0 | 0;
+    $210 = $209 ^ $207;
+    SAFE_HEAP_STORE($24 >> 0 | 0, $210 | 0, 1);
+    $211 = $$03843 + 10 | 0;
+    $212 = SAFE_HEAP_LOAD($206 >> 0 | 0, 1, 0) | 0 | 0;
+    $213 = $$03744 + 10 | 0;
+    $214 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+    $215 = $214 ^ $212;
+    SAFE_HEAP_STORE($25 >> 0 | 0, $215 | 0, 1);
+    $216 = $$03843 + 11 | 0;
+    $217 = SAFE_HEAP_LOAD($211 >> 0 | 0, 1, 0) | 0 | 0;
+    $218 = $$03744 + 11 | 0;
+    $219 = SAFE_HEAP_LOAD($213 >> 0 | 0, 1, 0) | 0 | 0;
+    $220 = $219 ^ $217;
+    SAFE_HEAP_STORE($26 >> 0 | 0, $220 | 0, 1);
+    $221 = $$03843 + 12 | 0;
+    $222 = SAFE_HEAP_LOAD($216 >> 0 | 0, 1, 0) | 0 | 0;
+    $223 = $$03744 + 12 | 0;
+    $224 = SAFE_HEAP_LOAD($218 >> 0 | 0, 1, 0) | 0 | 0;
+    $225 = $224 ^ $222;
+    SAFE_HEAP_STORE($27 >> 0 | 0, $225 | 0, 1);
+    $226 = $$03843 + 13 | 0;
+    $227 = SAFE_HEAP_LOAD($221 >> 0 | 0, 1, 0) | 0 | 0;
+    $228 = $$03744 + 13 | 0;
+    $229 = SAFE_HEAP_LOAD($223 >> 0 | 0, 1, 0) | 0 | 0;
+    $230 = $229 ^ $227;
+    SAFE_HEAP_STORE($28 >> 0 | 0, $230 | 0, 1);
+    $231 = $$03843 + 14 | 0;
+    $232 = SAFE_HEAP_LOAD($226 >> 0 | 0, 1, 0) | 0 | 0;
+    $233 = $$03744 + 14 | 0;
+    $234 = SAFE_HEAP_LOAD($228 >> 0 | 0, 1, 0) | 0 | 0;
+    $235 = $234 ^ $232;
+    SAFE_HEAP_STORE($29 >> 0 | 0, $235 | 0, 1);
+    $236 = $$03843 + 15 | 0;
+    $237 = SAFE_HEAP_LOAD($231 >> 0 | 0, 1, 0) | 0 | 0;
+    $238 = $$03744 + 15 | 0;
+    $239 = SAFE_HEAP_LOAD($233 >> 0 | 0, 1, 0) | 0 | 0;
+    $240 = $239 ^ $237;
+    SAFE_HEAP_STORE($30 >> 0 | 0, $240 | 0, 1);
+    $241 = SAFE_HEAP_LOAD($236 >> 0 | 0, 1, 0) | 0 | 0;
+    $242 = SAFE_HEAP_LOAD($238 >> 0 | 0, 1, 0) | 0 | 0;
+    $243 = $242 ^ $241;
+    SAFE_HEAP_STORE($31 >> 0 | 0, $243 | 0, 1);
+   }
+   $262 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 127]($0, 
$2, $2) | 0;
+   $263 = $$03843 + 16 | 0;
+   $264 = $$045 + -1 | 0;
+   $265 = ($264 | 0) == 0;
+   if ($265) {
+    $$036$lcssa = $262;
+    $$037$lcssa = $2;
+    break;
+   } else {
+    $$03744 = $2;
+    $$03843 = $263;
+    $$045 = $264;
+   }
+  }
+ }
+ $266 = ($$037$lcssa | 0) == ($1 | 0);
+ do {
+  if (!$266) {
+   $267 = $1;
+   $268 = $$037$lcssa;
+   $269 = $268 | $267;
+   $270 = $269 & 3;
+   $271 = ($270 | 0) == 0;
+   if ($271) {
+    $318 = $$037$lcssa + 4 | 0;
+    $319 = SAFE_HEAP_LOAD($$037$lcssa | 0, 4, 0) | 0 | 0;
+    $320 = $1 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $319 | 0, 4);
+    $321 = $$037$lcssa + 8 | 0;
+    $322 = SAFE_HEAP_LOAD($318 | 0, 4, 0) | 0 | 0;
+    $323 = $1 + 8 | 0;
+    SAFE_HEAP_STORE($320 | 0, $322 | 0, 4);
+    $324 = $$037$lcssa + 12 | 0;
+    $325 = SAFE_HEAP_LOAD($321 | 0, 4, 0) | 0 | 0;
+    $326 = $1 + 12 | 0;
+    SAFE_HEAP_STORE($323 | 0, $325 | 0, 4);
+    $327 = SAFE_HEAP_LOAD($324 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($326 | 0, $327 | 0, 4);
+    break;
+   } else {
+    $272 = $$037$lcssa + 1 | 0;
+    $273 = SAFE_HEAP_LOAD($$037$lcssa >> 0 | 0, 1, 0) | 0 | 0;
+    $274 = $1 + 1 | 0;
+    SAFE_HEAP_STORE($1 >> 0 | 0, $273 | 0, 1);
+    $275 = $$037$lcssa + 2 | 0;
+    $276 = SAFE_HEAP_LOAD($272 >> 0 | 0, 1, 0) | 0 | 0;
+    $277 = $1 + 2 | 0;
+    SAFE_HEAP_STORE($274 >> 0 | 0, $276 | 0, 1);
+    $278 = $$037$lcssa + 3 | 0;
+    $279 = SAFE_HEAP_LOAD($275 >> 0 | 0, 1, 0) | 0 | 0;
+    $280 = $1 + 3 | 0;
+    SAFE_HEAP_STORE($277 >> 0 | 0, $279 | 0, 1);
+    $281 = $$037$lcssa + 4 | 0;
+    $282 = SAFE_HEAP_LOAD($278 >> 0 | 0, 1, 0) | 0 | 0;
+    $283 = $1 + 4 | 0;
+    SAFE_HEAP_STORE($280 >> 0 | 0, $282 | 0, 1);
+    $284 = $$037$lcssa + 5 | 0;
+    $285 = SAFE_HEAP_LOAD($281 >> 0 | 0, 1, 0) | 0 | 0;
+    $286 = $1 + 5 | 0;
+    SAFE_HEAP_STORE($283 >> 0 | 0, $285 | 0, 1);
+    $287 = $$037$lcssa + 6 | 0;
+    $288 = SAFE_HEAP_LOAD($284 >> 0 | 0, 1, 0) | 0 | 0;
+    $289 = $1 + 6 | 0;
+    SAFE_HEAP_STORE($286 >> 0 | 0, $288 | 0, 1);
+    $290 = $$037$lcssa + 7 | 0;
+    $291 = SAFE_HEAP_LOAD($287 >> 0 | 0, 1, 0) | 0 | 0;
+    $292 = $1 + 7 | 0;
+    SAFE_HEAP_STORE($289 >> 0 | 0, $291 | 0, 1);
+    $293 = $$037$lcssa + 8 | 0;
+    $294 = SAFE_HEAP_LOAD($290 >> 0 | 0, 1, 0) | 0 | 0;
+    $295 = $1 + 8 | 0;
+    SAFE_HEAP_STORE($292 >> 0 | 0, $294 | 0, 1);
+    $296 = $$037$lcssa + 9 | 0;
+    $297 = SAFE_HEAP_LOAD($293 >> 0 | 0, 1, 0) | 0 | 0;
+    $298 = $1 + 9 | 0;
+    SAFE_HEAP_STORE($295 >> 0 | 0, $297 | 0, 1);
+    $299 = $$037$lcssa + 10 | 0;
+    $300 = SAFE_HEAP_LOAD($296 >> 0 | 0, 1, 0) | 0 | 0;
+    $301 = $1 + 10 | 0;
+    SAFE_HEAP_STORE($298 >> 0 | 0, $300 | 0, 1);
+    $302 = $$037$lcssa + 11 | 0;
+    $303 = SAFE_HEAP_LOAD($299 >> 0 | 0, 1, 0) | 0 | 0;
+    $304 = $1 + 11 | 0;
+    SAFE_HEAP_STORE($301 >> 0 | 0, $303 | 0, 1);
+    $305 = $$037$lcssa + 12 | 0;
+    $306 = SAFE_HEAP_LOAD($302 >> 0 | 0, 1, 0) | 0 | 0;
+    $307 = $1 + 12 | 0;
+    SAFE_HEAP_STORE($304 >> 0 | 0, $306 | 0, 1);
+    $308 = $$037$lcssa + 13 | 0;
+    $309 = SAFE_HEAP_LOAD($305 >> 0 | 0, 1, 0) | 0 | 0;
+    $310 = $1 + 13 | 0;
+    SAFE_HEAP_STORE($307 >> 0 | 0, $309 | 0, 1);
+    $311 = $$037$lcssa + 14 | 0;
+    $312 = SAFE_HEAP_LOAD($308 >> 0 | 0, 1, 0) | 0 | 0;
+    $313 = $1 + 14 | 0;
+    SAFE_HEAP_STORE($310 >> 0 | 0, $312 | 0, 1);
+    $314 = $$037$lcssa + 15 | 0;
+    $315 = SAFE_HEAP_LOAD($311 >> 0 | 0, 1, 0) | 0 | 0;
+    $316 = $1 + 15 | 0;
+    SAFE_HEAP_STORE($313 >> 0 | 0, $315 | 0, 1);
+    $317 = SAFE_HEAP_LOAD($314 >> 0 | 0, 1, 0) | 0 | 0;
+    SAFE_HEAP_STORE($316 >> 0 | 0, $317 | 0, 1);
+    break;
+   }
+  }
+ } while (0);
+ $328 = ($$036$lcssa | 0) == 0;
+ if ($328) {
+  return;
+ }
+ $329 = $$036$lcssa + 16 | 0;
+ ___gcry_burn_stack($329);
+ return;
+}
+
+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, $$0108$ph = 0, $$0113$lcssa187 = 0, 
$$0113156 = 0, $$0117$lcssa186 = 0, $$0117155 = 0, $$0121 = 0, $$0127 = 0, 
$$1109149 = 0, $$1114 = 0, $$1118 = 0, $$1122 = 0, $$1128148 = 0, $$1150 = 0, 
$$2 = 0, $$2110 = 0, $$2123163 = 0, $$2129 = 0;
+ var $$3111164 = 0, $$3116$ph = 0, $$3116161 = 0, $$3120$ph = 0, $$3120160 = 
0, $$3124 = 0, $$3165 = 0, $$4 = 0, $$4112 = 0, $$4125 = 0, $$4125$ = 0, $$6 = 
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, $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;
+ var $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, $233 = 0;
+ var $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, $251 = 0;
+ var $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, $27 = 0;
+ var $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, $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, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, $or$cond = 0, $or$cond3 = 0, $scevgep181 = 0, $scevgep182 = 
0, $scevgep183 = 0, $scevgep184 = 0, $scevgep185 = 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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 36 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $0 + 164 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = ($2 | 0) == 0;
+ if ($11) {
+  $12 = ($10 | 0) != 0;
+  $13 = ($3 | 0) != 0;
+  $or$cond = $13 & $12;
+  if ($or$cond) {
+   $$0108$ph = 0;
+  } else {
+   $$0 = 0;
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ } else {
+  $$0108$ph = $2;
+ }
+ $14 = ($3 | 0) == 0;
+ $15 = $0 + 148 | 0;
+ $16 = $0 + 64 | 0;
+ $17 = $16;
+ $18 = $15;
+ $19 = $17 | $18;
+ $20 = $19 & 3;
+ $21 = ($20 | 0) == 0;
+ $22 = $16 + 4 | 0;
+ $23 = $0 + 152 | 0;
+ $24 = $0 + 72 | 0;
+ $25 = $0 + 156 | 0;
+ $26 = $0 + 76 | 0;
+ $27 = $0 + 160 | 0;
+ $28 = $0 + 496 | 0;
+ $29 = $0 + 28 | 0;
+ $30 = $4;
+ $31 = $30 & 7;
+ $32 = ($31 | 0) == 0;
+ $33 = $16 + 1 | 0;
+ $34 = $0 + 149 | 0;
+ $35 = $16 + 2 | 0;
+ $36 = $0 + 150 | 0;
+ $37 = $16 + 3 | 0;
+ $38 = $0 + 151 | 0;
+ $39 = $16 + 4 | 0;
+ $40 = $0 + 152 | 0;
+ $41 = $16 + 5 | 0;
+ $42 = $0 + 153 | 0;
+ $43 = $16 + 6 | 0;
+ $44 = $0 + 154 | 0;
+ $45 = $16 + 7 | 0;
+ $46 = $0 + 155 | 0;
+ $47 = $0 + 72 | 0;
+ $48 = $0 + 156 | 0;
+ $49 = $0 + 73 | 0;
+ $50 = $0 + 157 | 0;
+ $51 = $0 + 74 | 0;
+ $52 = $0 + 158 | 0;
+ $53 = $0 + 75 | 0;
+ $54 = $0 + 159 | 0;
+ $55 = $0 + 76 | 0;
+ $56 = $0 + 160 | 0;
+ $57 = $0 + 77 | 0;
+ $58 = $0 + 161 | 0;
+ $59 = $0 + 78 | 0;
+ $60 = $0 + 162 | 0;
+ $61 = $0 + 79 | 0;
+ $62 = $0 + 163 | 0;
+ $63 = $16 + 1 | 0;
+ $64 = $16 + 2 | 0;
+ $65 = $16 + 3 | 0;
+ $66 = $16 + 4 | 0;
+ $67 = $16 + 5 | 0;
+ $68 = $16 + 6 | 0;
+ $69 = $16 + 7 | 0;
+ $70 = $0 + 72 | 0;
+ $71 = $0 + 73 | 0;
+ $72 = $0 + 74 | 0;
+ $73 = $0 + 75 | 0;
+ $74 = $0 + 76 | 0;
+ $75 = $0 + 77 | 0;
+ $76 = $0 + 78 | 0;
+ $77 = $0 + 79 | 0;
+ $$0107 = $1;
+ $$0108 = $$0108$ph;
+ $$0121 = 0;
+ $$0127 = $10;
+ while (1) {
+  $78 = $$0108 + $$0127 | 0;
+  $79 = $78 >>> 0 < 16;
+  $80 = ($$0127 | 0) != 0;
+  $or$cond3 = $80 | $79;
+  if ($or$cond3) {
+   $81 = ($$0108 | 0) != 0;
+   $82 = $$0127 >>> 0 < 16;
+   $83 = $82 & $81;
+   if ($83) {
+    $$1109149 = $$0108;
+    $$1128148 = $$0127;
+    $$1150 = $$0107;
+    while (1) {
+     $84 = $$1150 + 1 | 0;
+     $85 = SAFE_HEAP_LOAD($$1150 >> 0 | 0, 1, 0) | 0 | 0;
+     $86 = $$1128148 + 1 | 0;
+     $87 = $15 + $$1128148 | 0;
+     SAFE_HEAP_STORE($87 >> 0 | 0, $85 | 0, 1);
+     $88 = $$1109149 + -1 | 0;
+     $89 = ($88 | 0) != 0;
+     $90 = $86 >>> 0 < 16;
+     $91 = $90 & $89;
+     if ($91) {
+      $$1109149 = $88;
+      $$1128148 = $86;
+      $$1150 = $84;
+     } else {
+      $$2 = $84;
+      $$2110 = $88;
+      $$2129 = $86;
+      break;
+     }
+    }
+   } else {
+    $$2 = $$0107;
+    $$2110 = $$0108;
+    $$2129 = $$0127;
+   }
+  } else {
+   $$2 = $$0107;
+   $$2110 = $$0108;
+   $$2129 = 0;
+  }
+  $92 = ($$2110 | 0) == 0;
+  if ($92) {
+   if ($14) {
+    $$4125 = $$0121;
+    $$6 = $$2129;
+    break;
+   }
+   $93 = $$2129 >>> 0 < 16;
+   if ($93) {
+    $scevgep181 = $15 + $$2129 | 0;
+    $94 = 16 - $$2129 | 0;
+    _memset($scevgep181 | 0, 0, $94 | 0) | 0;
+    label = 12;
+   } else {
+    label = 12;
+   }
+  } else {
+   $95 = ($$2129 | 0) == 0;
+   if ($95) {
+    $$1122 = $$0121;
+   } else {
+    label = 12;
+   }
+  }
+  if ((label | 0) == 12) {
+   label = 0;
+   if ($21) {
+    $144 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+    $145 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+    $146 = $145 ^ $144;
+    SAFE_HEAP_STORE($16 | 0, $146 | 0, 4);
+    $147 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+    $148 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+    $149 = $148 ^ $147;
+    SAFE_HEAP_STORE($22 | 0, $149 | 0, 4);
+    $150 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+    $151 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+    $152 = $151 ^ $150;
+    SAFE_HEAP_STORE($24 | 0, $152 | 0, 4);
+    $153 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+    $154 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+    $155 = $154 ^ $153;
+    SAFE_HEAP_STORE($26 | 0, $155 | 0, 4);
+   } else {
+    $96 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+    $97 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+    $98 = $97 ^ $96;
+    SAFE_HEAP_STORE($16 >> 0 | 0, $98 | 0, 1);
+    $99 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+    $100 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+    $101 = $100 ^ $99;
+    SAFE_HEAP_STORE($33 >> 0 | 0, $101 | 0, 1);
+    $102 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+    $103 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+    $104 = $103 ^ $102;
+    SAFE_HEAP_STORE($35 >> 0 | 0, $104 | 0, 1);
+    $105 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+    $106 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+    $107 = $106 ^ $105;
+    SAFE_HEAP_STORE($37 >> 0 | 0, $107 | 0, 1);
+    $108 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+    $109 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+    $110 = $109 ^ $108;
+    SAFE_HEAP_STORE($39 >> 0 | 0, $110 | 0, 1);
+    $111 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+    $112 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+    $113 = $112 ^ $111;
+    SAFE_HEAP_STORE($41 >> 0 | 0, $113 | 0, 1);
+    $114 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+    $115 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+    $116 = $115 ^ $114;
+    SAFE_HEAP_STORE($43 >> 0 | 0, $116 | 0, 1);
+    $117 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+    $118 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+    $119 = $118 ^ $117;
+    SAFE_HEAP_STORE($45 >> 0 | 0, $119 | 0, 1);
+    $120 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+    $121 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 0 | 0;
+    $122 = $121 ^ $120;
+    SAFE_HEAP_STORE($47 >> 0 | 0, $122 | 0, 1);
+    $123 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+    $124 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+    $125 = $124 ^ $123;
+    SAFE_HEAP_STORE($49 >> 0 | 0, $125 | 0, 1);
+    $126 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+    $127 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+    $128 = $127 ^ $126;
+    SAFE_HEAP_STORE($51 >> 0 | 0, $128 | 0, 1);
+    $129 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+    $130 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+    $131 = $130 ^ $129;
+    SAFE_HEAP_STORE($53 >> 0 | 0, $131 | 0, 1);
+    $132 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+    $133 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+    $134 = $133 ^ $132;
+    SAFE_HEAP_STORE($55 >> 0 | 0, $134 | 0, 1);
+    $135 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+    $136 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+    $137 = $136 ^ $135;
+    SAFE_HEAP_STORE($57 >> 0 | 0, $137 | 0, 1);
+    $138 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+    $139 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+    $140 = $139 ^ $138;
+    SAFE_HEAP_STORE($59 >> 0 | 0, $140 | 0, 1);
+    $141 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+    $142 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+    $143 = $142 ^ $141;
+    SAFE_HEAP_STORE($61 >> 0 | 0, $143 | 0, 1);
+   }
+   $156 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($28, 
$16, $16) | 0;
+   $157 = $$0121 >>> 0 > $156 >>> 0;
+   $158 = $157 ? $$0121 : $156;
+   $$1122 = $158;
+  }
+  $159 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+  $160 = ($159 | 0) == (0 | 0);
+  if ($160) {
+   $161 = $$2110 >>> 0 > 15;
+   if ($161) {
+    $162 = $$2110 + -16 | 0;
+    $163 = $162 & -16;
+    $scevgep184 = $$2 + 16 | 0;
+    $$2123163 = $$1122;
+    $$3111164 = $$2110;
+    $$3165 = $$2;
+    while (1) {
+     $190 = $$3165;
+     $191 = $190 | $17;
+     $192 = $191 & 3;
+     $193 = ($192 | 0) == 0;
+     if ($193) {
+      $257 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+      $258 = $$3165 + 4 | 0;
+      $259 = SAFE_HEAP_LOAD($$3165 | 0, 4, 0) | 0 | 0;
+      $260 = $259 ^ $257;
+      SAFE_HEAP_STORE($16 | 0, $260 | 0, 4);
+      $261 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+      $262 = $$3165 + 8 | 0;
+      $263 = SAFE_HEAP_LOAD($258 | 0, 4, 0) | 0 | 0;
+      $264 = $263 ^ $261;
+      SAFE_HEAP_STORE($22 | 0, $264 | 0, 4);
+      $265 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+      $266 = $$3165 + 12 | 0;
+      $267 = SAFE_HEAP_LOAD($262 | 0, 4, 0) | 0 | 0;
+      $268 = $267 ^ $265;
+      SAFE_HEAP_STORE($24 | 0, $268 | 0, 4);
+      $269 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+      $270 = SAFE_HEAP_LOAD($266 | 0, 4, 0) | 0 | 0;
+      $271 = $270 ^ $269;
+      SAFE_HEAP_STORE($26 | 0, $271 | 0, 4);
+     } else {
+      $194 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+      $195 = $$3165 + 1 | 0;
+      $196 = SAFE_HEAP_LOAD($$3165 >> 0 | 0, 1, 0) | 0 | 0;
+      $197 = $196 ^ $194;
+      SAFE_HEAP_STORE($16 >> 0 | 0, $197 | 0, 1);
+      $198 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+      $199 = $$3165 + 2 | 0;
+      $200 = SAFE_HEAP_LOAD($195 >> 0 | 0, 1, 0) | 0 | 0;
+      $201 = $200 ^ $198;
+      SAFE_HEAP_STORE($63 >> 0 | 0, $201 | 0, 1);
+      $202 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+      $203 = $$3165 + 3 | 0;
+      $204 = SAFE_HEAP_LOAD($199 >> 0 | 0, 1, 0) | 0 | 0;
+      $205 = $204 ^ $202;
+      SAFE_HEAP_STORE($64 >> 0 | 0, $205 | 0, 1);
+      $206 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+      $207 = $$3165 + 4 | 0;
+      $208 = SAFE_HEAP_LOAD($203 >> 0 | 0, 1, 0) | 0 | 0;
+      $209 = $208 ^ $206;
+      SAFE_HEAP_STORE($65 >> 0 | 0, $209 | 0, 1);
+      $210 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+      $211 = $$3165 + 5 | 0;
+      $212 = SAFE_HEAP_LOAD($207 >> 0 | 0, 1, 0) | 0 | 0;
+      $213 = $212 ^ $210;
+      SAFE_HEAP_STORE($66 >> 0 | 0, $213 | 0, 1);
+      $214 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+      $215 = $$3165 + 6 | 0;
+      $216 = SAFE_HEAP_LOAD($211 >> 0 | 0, 1, 0) | 0 | 0;
+      $217 = $216 ^ $214;
+      SAFE_HEAP_STORE($67 >> 0 | 0, $217 | 0, 1);
+      $218 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+      $219 = $$3165 + 7 | 0;
+      $220 = SAFE_HEAP_LOAD($215 >> 0 | 0, 1, 0) | 0 | 0;
+      $221 = $220 ^ $218;
+      SAFE_HEAP_STORE($68 >> 0 | 0, $221 | 0, 1);
+      $222 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+      $223 = $$3165 + 8 | 0;
+      $224 = SAFE_HEAP_LOAD($219 >> 0 | 0, 1, 0) | 0 | 0;
+      $225 = $224 ^ $222;
+      SAFE_HEAP_STORE($69 >> 0 | 0, $225 | 0, 1);
+      $226 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+      $227 = $$3165 + 9 | 0;
+      $228 = SAFE_HEAP_LOAD($223 >> 0 | 0, 1, 0) | 0 | 0;
+      $229 = $228 ^ $226;
+      SAFE_HEAP_STORE($70 >> 0 | 0, $229 | 0, 1);
+      $230 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+      $231 = $$3165 + 10 | 0;
+      $232 = SAFE_HEAP_LOAD($227 >> 0 | 0, 1, 0) | 0 | 0;
+      $233 = $232 ^ $230;
+      SAFE_HEAP_STORE($71 >> 0 | 0, $233 | 0, 1);
+      $234 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+      $235 = $$3165 + 11 | 0;
+      $236 = SAFE_HEAP_LOAD($231 >> 0 | 0, 1, 0) | 0 | 0;
+      $237 = $236 ^ $234;
+      SAFE_HEAP_STORE($72 >> 0 | 0, $237 | 0, 1);
+      $238 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+      $239 = $$3165 + 12 | 0;
+      $240 = SAFE_HEAP_LOAD($235 >> 0 | 0, 1, 0) | 0 | 0;
+      $241 = $240 ^ $238;
+      SAFE_HEAP_STORE($73 >> 0 | 0, $241 | 0, 1);
+      $242 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+      $243 = $$3165 + 13 | 0;
+      $244 = SAFE_HEAP_LOAD($239 >> 0 | 0, 1, 0) | 0 | 0;
+      $245 = $244 ^ $242;
+      SAFE_HEAP_STORE($74 >> 0 | 0, $245 | 0, 1);
+      $246 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+      $247 = $$3165 + 14 | 0;
+      $248 = SAFE_HEAP_LOAD($243 >> 0 | 0, 1, 0) | 0 | 0;
+      $249 = $248 ^ $246;
+      SAFE_HEAP_STORE($75 >> 0 | 0, $249 | 0, 1);
+      $250 = SAFE_HEAP_LOAD($76 >> 0 | 0, 1, 0) | 0 | 0;
+      $251 = $$3165 + 15 | 0;
+      $252 = SAFE_HEAP_LOAD($247 >> 0 | 0, 1, 0) | 0 | 0;
+      $253 = $252 ^ $250;
+      SAFE_HEAP_STORE($76 >> 0 | 0, $253 | 0, 1);
+      $254 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+      $255 = SAFE_HEAP_LOAD($251 >> 0 | 0, 1, 0) | 0 | 0;
+      $256 = $255 ^ $254;
+      SAFE_HEAP_STORE($77 >> 0 | 0, $256 | 0, 1);
+     }
+     $272 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 
127]($28, $16, $16) | 0;
+     $273 = $$2123163 >>> 0 > $272 >>> 0;
+     $274 = $273 ? $$2123163 : $272;
+     $275 = $$3111164 + -16 | 0;
+     $276 = $$3165 + 16 | 0;
+     $277 = $275 >>> 0 > 15;
+     if ($277) {
+      $$2123163 = $274;
+      $$3111164 = $275;
+      $$3165 = $276;
+     } else {
+      break;
+     }
+    }
+    $278 = $162 - $163 | 0;
+    $scevgep185 = $scevgep184 + $163 | 0;
+    $$3124 = $274;
+    $$4 = $scevgep185;
+    $$4112 = $278;
+   } else {
+    $$3124 = $$1122;
+    $$4 = $$2;
+    $$4112 = $$2110;
+   }
+  } else {
+   $164 = $$2110 >>> 4;
+   FUNCTION_TABLE_viiiiii[(SAFE_FT_MASK($159 | 0, 63 | 0) | 0) & 63]($28, $16, 
$4, $$2, $164, 1);
+   $165 = $164 << 4;
+   $166 = $$2 + $165 | 0;
+   $167 = $$2110 - $165 | 0;
+   if ($32) {
+    $$0113$lcssa187 = 16;
+    $$0117$lcssa186 = $4;
+    label = 22;
+   } else {
+    $$0113156 = 16;
+    $$0117155 = $4;
+    while (1) {
+     SAFE_HEAP_STORE($$0117155 >> 0 | 0, 0 | 0, 1);
+     $168 = $$0117155 + 1 | 0;
+     $169 = $$0113156 + -1 | 0;
+     $170 = $168;
+     $171 = $170 & 7;
+     $172 = ($171 | 0) != 0;
+     $173 = ($169 | 0) != 0;
+     $174 = $173 & $172;
+     if ($174) {
+      $$0113156 = $169;
+      $$0117155 = $168;
+     } else {
+      break;
+     }
+    }
+    $175 = $169 >>> 0 < 8;
+    if ($175) {
+     $$3116$ph = $169;
+     $$3120$ph = $168;
+    } else {
+     $$0113$lcssa187 = $169;
+     $$0117$lcssa186 = $168;
+     label = 22;
+    }
+   }
+   if ((label | 0) == 22) {
+    label = 0;
+    $176 = $$0113$lcssa187 + -8 | 0;
+    $177 = $176 & -8;
+    $scevgep182 = $$0117$lcssa186 + 8 | 0;
+    $$1114 = $$0113$lcssa187;
+    $$1118 = $$0117$lcssa186;
+    while (1) {
+     $178 = $$1118;
+     $179 = $178;
+     SAFE_HEAP_STORE($179 | 0, 0 | 0, 4);
+     $180 = $178 + 4 | 0;
+     $181 = $180;
+     SAFE_HEAP_STORE($181 | 0, 0 | 0, 4);
+     $182 = $$1114 + -8 | 0;
+     $183 = $$1118 + 8 | 0;
+     $184 = $182 >>> 0 > 7;
+     if ($184) {
+      $$1114 = $182;
+      $$1118 = $183;
+     } else {
+      break;
+     }
+    }
+    $185 = $176 - $177 | 0;
+    $scevgep183 = $scevgep182 + $177 | 0;
+    $$3116$ph = $185;
+    $$3120$ph = $scevgep183;
+   }
+   $186 = ($$3116$ph | 0) == 0;
+   if ($186) {
+    $$3124 = $$1122;
+    $$4 = $166;
+    $$4112 = $167;
+   } else {
+    $$3116161 = $$3116$ph;
+    $$3120160 = $$3120$ph;
+    while (1) {
+     SAFE_HEAP_STORE($$3120160 >> 0 | 0, 0 | 0, 1);
+     $187 = $$3120160 + 1 | 0;
+     $188 = $$3116161 + -1 | 0;
+     $189 = ($188 | 0) == 0;
+     if ($189) {
+      $$3124 = $$1122;
+      $$4 = $166;
+      $$4112 = $167;
+      break;
+     } else {
+      $$3116161 = $188;
+      $$3120160 = $187;
+     }
+    }
+   }
+  }
+  $279 = ($$4112 | 0) == 0;
+  if ($279) {
+   $$4125 = $$3124;
+   $$6 = 0;
+   break;
+  } else {
+   $$0107 = $$4;
+   $$0108 = $$4112;
+   $$0121 = $$3124;
+   $$0127 = 0;
+  }
+ }
+ SAFE_HEAP_STORE($9 | 0, $$6 | 0, 4);
+ $280 = ($$4125 | 0) == 0;
+ $281 = $$4125 + 16 | 0;
+ $$4125$ = $280 ? 0 : $281;
+ $$0 = $$4125$;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _transform_1338($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$012$i = 0, $$01859$i = 0, $$01868$i = 0, $$01877$i = 0, 
$$01886$i = 0, $$01895$i = 0, $$01904$i = 0, $$01913$i = 0, $$01922$i = 0, $$08 
= 0, $$111$i = 0, $$210$i = 0, $$pre = 0, $$pre$i = 0, $$pre23 = 0, $$pre24 = 
0, $$pre25 = 0, $$pre26 = 0, $$pre27 = 0;
+ var $$pre28 = 0, $$pre29 = 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, $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, $398 = 0, $399 = 0, $4 = 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, $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$i = 0, $exitcond21$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;
+ $$pre = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $$pre23 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $$pre24 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $$pre25 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $$pre26 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $$pre27 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $$pre28 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $$pre29 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $$0 = $1;
+ $$08 = $2;
+ $414 = $$pre29;
+ $415 = $$pre28;
+ $416 = $$pre27;
+ $417 = $$pre26;
+ $418 = $$pre25;
+ $419 = $$pre24;
+ $420 = $$pre23;
+ $421 = $$pre;
+ while (1) {
+  $$012$i = 0;
+  while (1) {
+   $12 = $$012$i << 2;
+   $13 = $$0 + $12 | 0;
+   $14 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+   $15 = $14 & 255;
+   $16 = $15 << 24;
+   $17 = $13 + 1 | 0;
+   $18 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+   $19 = $18 & 255;
+   $20 = $19 << 16;
+   $21 = $20 | $16;
+   $22 = $13 + 2 | 0;
+   $23 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+   $24 = $23 & 255;
+   $25 = $24 << 8;
+   $26 = $21 | $25;
+   $27 = $13 + 3 | 0;
+   $28 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+   $29 = $28 & 255;
+   $30 = $26 | $29;
+   $31 = $3 + ($$012$i << 2) | 0;
+   SAFE_HEAP_STORE($31 | 0, $30 | 0, 4);
+   $32 = $$012$i + 1 | 0;
+   $exitcond21$i = ($32 | 0) == 16;
+   if ($exitcond21$i) {
+    break;
+   } else {
+    $$012$i = $32;
+   }
+  }
+  $$pre$i = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $$111$i = 16;
+  $61 = $$pre$i;
+  while (1) {
+   $33 = $$111$i + -2 | 0;
+   $34 = $3 + ($33 << 2) | 0;
+   $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+   $36 = $35 >>> 17;
+   $37 = $35 << 15;
+   $38 = $36 | $37;
+   $39 = $35 >>> 19;
+   $40 = $35 << 13;
+   $41 = $39 | $40;
+   $42 = $35 >>> 10;
+   $43 = $41 ^ $42;
+   $44 = $43 ^ $38;
+   $45 = $$111$i + -7 | 0;
+   $46 = $3 + ($45 << 2) | 0;
+   $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+   $48 = $$111$i + -15 | 0;
+   $49 = $3 + ($48 << 2) | 0;
+   $50 = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+   $51 = $50 >>> 7;
+   $52 = $50 << 25;
+   $53 = $51 | $52;
+   $54 = $50 >>> 18;
+   $55 = $50 << 14;
+   $56 = $54 | $55;
+   $57 = $50 >>> 3;
+   $58 = $56 ^ $57;
+   $59 = $58 ^ $53;
+   $60 = $47 + $61 | 0;
+   $62 = $60 + $44 | 0;
+   $63 = $62 + $59 | 0;
+   $64 = $3 + ($$111$i << 2) | 0;
+   SAFE_HEAP_STORE($64 | 0, $63 | 0, 4);
+   $65 = $$111$i + 1 | 0;
+   $exitcond$i = ($65 | 0) == 64;
+   if ($exitcond$i) {
+    $$01859$i = $421;
+    $$01868$i = $420;
+    $$01877$i = $414;
+    $$01886$i = $415;
+    $$01895$i = $416;
+    $$01904$i = $417;
+    $$01913$i = $418;
+    $$01922$i = $419;
+    $$210$i = 0;
+    break;
+   } else {
+    $$111$i = $65;
+    $61 = $50;
+   }
+  }
+  while (1) {
+   $66 = $$01904$i >>> 6;
+   $67 = $$01904$i << 26;
+   $68 = $66 | $67;
+   $69 = $$01904$i >>> 11;
+   $70 = $$01904$i << 21;
+   $71 = $69 | $70;
+   $72 = $68 ^ $71;
+   $73 = $$01904$i >>> 25;
+   $74 = $$01904$i << 7;
+   $75 = $73 | $74;
+   $76 = $72 ^ $75;
+   $77 = $$01895$i ^ $$01886$i;
+   $78 = $77 & $$01904$i;
+   $79 = $78 ^ $$01886$i;
+   $80 = 12216 + ($$210$i << 2) | 0;
+   $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+   $82 = $3 + ($$210$i << 2) | 0;
+   $83 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+   $84 = $79 + $$01877$i | 0;
+   $85 = $84 + $81 | 0;
+   $86 = $85 + $76 | 0;
+   $87 = $86 + $83 | 0;
+   $88 = $$01859$i >>> 2;
+   $89 = $$01859$i << 30;
+   $90 = $88 | $89;
+   $91 = $$01859$i >>> 13;
+   $92 = $$01859$i << 19;
+   $93 = $91 | $92;
+   $94 = $90 ^ $93;
+   $95 = $$01859$i >>> 22;
+   $96 = $$01859$i << 10;
+   $97 = $95 | $96;
+   $98 = $94 ^ $97;
+   $99 = $$01868$i & $$01859$i;
+   $100 = $$01868$i | $$01859$i;
+   $101 = $$01922$i & $100;
+   $102 = $101 | $99;
+   $103 = $102 + $98 | 0;
+   $104 = $87 + $$01913$i | 0;
+   $105 = $103 + $87 | 0;
+   $106 = $104 >>> 6;
+   $107 = $104 << 26;
+   $108 = $106 | $107;
+   $109 = $104 >>> 11;
+   $110 = $104 << 21;
+   $111 = $109 | $110;
+   $112 = $108 ^ $111;
+   $113 = $104 >>> 25;
+   $114 = $104 << 7;
+   $115 = $113 | $114;
+   $116 = $112 ^ $115;
+   $117 = $$01904$i ^ $$01895$i;
+   $118 = $104 & $117;
+   $119 = $118 ^ $$01895$i;
+   $120 = $$210$i | 1;
+   $121 = 12216 + ($120 << 2) | 0;
+   $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+   $123 = $3 + ($120 << 2) | 0;
+   $124 = SAFE_HEAP_LOAD($123 | 0, 4, 0) | 0 | 0;
+   $125 = $122 + $$01886$i | 0;
+   $126 = $125 + $124 | 0;
+   $127 = $126 + $119 | 0;
+   $128 = $127 + $116 | 0;
+   $129 = $105 >>> 2;
+   $130 = $105 << 30;
+   $131 = $129 | $130;
+   $132 = $105 >>> 13;
+   $133 = $105 << 19;
+   $134 = $132 | $133;
+   $135 = $131 ^ $134;
+   $136 = $105 >>> 22;
+   $137 = $105 << 10;
+   $138 = $136 | $137;
+   $139 = $135 ^ $138;
+   $140 = $105 & $$01859$i;
+   $141 = $105 | $$01859$i;
+   $142 = $141 & $$01868$i;
+   $143 = $142 | $140;
+   $144 = $139 + $143 | 0;
+   $145 = $128 + $$01922$i | 0;
+   $146 = $144 + $128 | 0;
+   $147 = $145 >>> 6;
+   $148 = $145 << 26;
+   $149 = $147 | $148;
+   $150 = $145 >>> 11;
+   $151 = $145 << 21;
+   $152 = $150 | $151;
+   $153 = $149 ^ $152;
+   $154 = $145 >>> 25;
+   $155 = $145 << 7;
+   $156 = $154 | $155;
+   $157 = $153 ^ $156;
+   $158 = $104 ^ $$01904$i;
+   $159 = $145 & $158;
+   $160 = $159 ^ $$01904$i;
+   $161 = $$210$i | 2;
+   $162 = 12216 + ($161 << 2) | 0;
+   $163 = SAFE_HEAP_LOAD($162 | 0, 4, 0) | 0 | 0;
+   $164 = $3 + ($161 << 2) | 0;
+   $165 = SAFE_HEAP_LOAD($164 | 0, 4, 0) | 0 | 0;
+   $166 = $163 + $$01895$i | 0;
+   $167 = $166 + $165 | 0;
+   $168 = $167 + $160 | 0;
+   $169 = $168 + $157 | 0;
+   $170 = $146 >>> 2;
+   $171 = $146 << 30;
+   $172 = $170 | $171;
+   $173 = $146 >>> 13;
+   $174 = $146 << 19;
+   $175 = $173 | $174;
+   $176 = $172 ^ $175;
+   $177 = $146 >>> 22;
+   $178 = $146 << 10;
+   $179 = $177 | $178;
+   $180 = $176 ^ $179;
+   $181 = $146 & $105;
+   $182 = $146 | $105;
+   $183 = $182 & $$01859$i;
+   $184 = $183 | $181;
+   $185 = $180 + $184 | 0;
+   $186 = $169 + $$01868$i | 0;
+   $187 = $185 + $169 | 0;
+   $188 = $186 >>> 6;
+   $189 = $186 << 26;
+   $190 = $188 | $189;
+   $191 = $186 >>> 11;
+   $192 = $186 << 21;
+   $193 = $191 | $192;
+   $194 = $190 ^ $193;
+   $195 = $186 >>> 25;
+   $196 = $186 << 7;
+   $197 = $195 | $196;
+   $198 = $194 ^ $197;
+   $199 = $145 ^ $104;
+   $200 = $186 & $199;
+   $201 = $200 ^ $104;
+   $202 = $$210$i | 3;
+   $203 = 12216 + ($202 << 2) | 0;
+   $204 = SAFE_HEAP_LOAD($203 | 0, 4, 0) | 0 | 0;
+   $205 = $3 + ($202 << 2) | 0;
+   $206 = SAFE_HEAP_LOAD($205 | 0, 4, 0) | 0 | 0;
+   $207 = $204 + $$01904$i | 0;
+   $208 = $207 + $206 | 0;
+   $209 = $208 + $201 | 0;
+   $210 = $209 + $198 | 0;
+   $211 = $187 >>> 2;
+   $212 = $187 << 30;
+   $213 = $211 | $212;
+   $214 = $187 >>> 13;
+   $215 = $187 << 19;
+   $216 = $214 | $215;
+   $217 = $213 ^ $216;
+   $218 = $187 >>> 22;
+   $219 = $187 << 10;
+   $220 = $218 | $219;
+   $221 = $217 ^ $220;
+   $222 = $187 & $146;
+   $223 = $187 | $146;
+   $224 = $223 & $105;
+   $225 = $224 | $222;
+   $226 = $221 + $225 | 0;
+   $227 = $210 + $$01859$i | 0;
+   $228 = $226 + $210 | 0;
+   $229 = $227 >>> 6;
+   $230 = $227 << 26;
+   $231 = $229 | $230;
+   $232 = $227 >>> 11;
+   $233 = $227 << 21;
+   $234 = $232 | $233;
+   $235 = $231 ^ $234;
+   $236 = $227 >>> 25;
+   $237 = $227 << 7;
+   $238 = $236 | $237;
+   $239 = $235 ^ $238;
+   $240 = $186 ^ $145;
+   $241 = $227 & $240;
+   $242 = $241 ^ $145;
+   $243 = $$210$i | 4;
+   $244 = 12216 + ($243 << 2) | 0;
+   $245 = SAFE_HEAP_LOAD($244 | 0, 4, 0) | 0 | 0;
+   $246 = $3 + ($243 << 2) | 0;
+   $247 = SAFE_HEAP_LOAD($246 | 0, 4, 0) | 0 | 0;
+   $248 = $245 + $104 | 0;
+   $249 = $248 + $247 | 0;
+   $250 = $249 + $242 | 0;
+   $251 = $250 + $239 | 0;
+   $252 = $228 >>> 2;
+   $253 = $228 << 30;
+   $254 = $252 | $253;
+   $255 = $228 >>> 13;
+   $256 = $228 << 19;
+   $257 = $255 | $256;
+   $258 = $254 ^ $257;
+   $259 = $228 >>> 22;
+   $260 = $228 << 10;
+   $261 = $259 | $260;
+   $262 = $258 ^ $261;
+   $263 = $228 & $187;
+   $264 = $228 | $187;
+   $265 = $264 & $146;
+   $266 = $265 | $263;
+   $267 = $262 + $266 | 0;
+   $268 = $251 + $105 | 0;
+   $269 = $267 + $251 | 0;
+   $270 = $268 >>> 6;
+   $271 = $268 << 26;
+   $272 = $270 | $271;
+   $273 = $268 >>> 11;
+   $274 = $268 << 21;
+   $275 = $273 | $274;
+   $276 = $272 ^ $275;
+   $277 = $268 >>> 25;
+   $278 = $268 << 7;
+   $279 = $277 | $278;
+   $280 = $276 ^ $279;
+   $281 = $227 ^ $186;
+   $282 = $268 & $281;
+   $283 = $282 ^ $186;
+   $284 = $$210$i | 5;
+   $285 = 12216 + ($284 << 2) | 0;
+   $286 = SAFE_HEAP_LOAD($285 | 0, 4, 0) | 0 | 0;
+   $287 = $3 + ($284 << 2) | 0;
+   $288 = SAFE_HEAP_LOAD($287 | 0, 4, 0) | 0 | 0;
+   $289 = $288 + $286 | 0;
+   $290 = $289 + $145 | 0;
+   $291 = $290 + $283 | 0;
+   $292 = $291 + $280 | 0;
+   $293 = $269 >>> 2;
+   $294 = $269 << 30;
+   $295 = $293 | $294;
+   $296 = $269 >>> 13;
+   $297 = $269 << 19;
+   $298 = $296 | $297;
+   $299 = $295 ^ $298;
+   $300 = $269 >>> 22;
+   $301 = $269 << 10;
+   $302 = $300 | $301;
+   $303 = $299 ^ $302;
+   $304 = $269 & $228;
+   $305 = $269 | $228;
+   $306 = $305 & $187;
+   $307 = $306 | $304;
+   $308 = $303 + $307 | 0;
+   $309 = $292 + $146 | 0;
+   $310 = $308 + $292 | 0;
+   $311 = $309 >>> 6;
+   $312 = $309 << 26;
+   $313 = $311 | $312;
+   $314 = $309 >>> 11;
+   $315 = $309 << 21;
+   $316 = $314 | $315;
+   $317 = $313 ^ $316;
+   $318 = $309 >>> 25;
+   $319 = $309 << 7;
+   $320 = $318 | $319;
+   $321 = $317 ^ $320;
+   $322 = $268 ^ $227;
+   $323 = $309 & $322;
+   $324 = $323 ^ $227;
+   $325 = $$210$i | 6;
+   $326 = 12216 + ($325 << 2) | 0;
+   $327 = SAFE_HEAP_LOAD($326 | 0, 4, 0) | 0 | 0;
+   $328 = $3 + ($325 << 2) | 0;
+   $329 = SAFE_HEAP_LOAD($328 | 0, 4, 0) | 0 | 0;
+   $330 = $329 + $327 | 0;
+   $331 = $330 + $186 | 0;
+   $332 = $331 + $324 | 0;
+   $333 = $332 + $321 | 0;
+   $334 = $310 >>> 2;
+   $335 = $310 << 30;
+   $336 = $334 | $335;
+   $337 = $310 >>> 13;
+   $338 = $310 << 19;
+   $339 = $337 | $338;
+   $340 = $336 ^ $339;
+   $341 = $310 >>> 22;
+   $342 = $310 << 10;
+   $343 = $341 | $342;
+   $344 = $340 ^ $343;
+   $345 = $310 & $269;
+   $346 = $310 | $269;
+   $347 = $346 & $228;
+   $348 = $347 | $345;
+   $349 = $344 + $348 | 0;
+   $350 = $333 + $187 | 0;
+   $351 = $349 + $333 | 0;
+   $352 = $350 >>> 6;
+   $353 = $350 << 26;
+   $354 = $352 | $353;
+   $355 = $350 >>> 11;
+   $356 = $350 << 21;
+   $357 = $355 | $356;
+   $358 = $354 ^ $357;
+   $359 = $350 >>> 25;
+   $360 = $350 << 7;
+   $361 = $359 | $360;
+   $362 = $358 ^ $361;
+   $363 = $309 ^ $268;
+   $364 = $350 & $363;
+   $365 = $364 ^ $268;
+   $366 = $$210$i | 7;
+   $367 = 12216 + ($366 << 2) | 0;
+   $368 = SAFE_HEAP_LOAD($367 | 0, 4, 0) | 0 | 0;
+   $369 = $3 + ($366 << 2) | 0;
+   $370 = SAFE_HEAP_LOAD($369 | 0, 4, 0) | 0 | 0;
+   $371 = $370 + $368 | 0;
+   $372 = $371 + $227 | 0;
+   $373 = $372 + $365 | 0;
+   $374 = $373 + $362 | 0;
+   $375 = $351 >>> 2;
+   $376 = $351 << 30;
+   $377 = $375 | $376;
+   $378 = $351 >>> 13;
+   $379 = $351 << 19;
+   $380 = $378 | $379;
+   $381 = $377 ^ $380;
+   $382 = $351 >>> 22;
+   $383 = $351 << 10;
+   $384 = $382 | $383;
+   $385 = $381 ^ $384;
+   $386 = $351 & $310;
+   $387 = $351 | $310;
+   $388 = $387 & $269;
+   $389 = $388 | $386;
+   $390 = $385 + $389 | 0;
+   $391 = $374 + $228 | 0;
+   $392 = $390 + $374 | 0;
+   $393 = $$210$i + 8 | 0;
+   $394 = ($393 | 0) < 64;
+   if ($394) {
+    $$01859$i = $392;
+    $$01868$i = $351;
+    $$01877$i = $268;
+    $$01886$i = $309;
+    $$01895$i = $350;
+    $$01904$i = $391;
+    $$01913$i = $269;
+    $$01922$i = $310;
+    $$210$i = $393;
+   } else {
+    break;
+   }
+  }
+  $395 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $396 = $395 + $392 | 0;
+  SAFE_HEAP_STORE($4 | 0, $396 | 0, 4);
+  $397 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  $398 = $397 + $351 | 0;
+  SAFE_HEAP_STORE($5 | 0, $398 | 0, 4);
+  $399 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $400 = $399 + $310 | 0;
+  SAFE_HEAP_STORE($6 | 0, $400 | 0, 4);
+  $401 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  $402 = $401 + $269 | 0;
+  SAFE_HEAP_STORE($7 | 0, $402 | 0, 4);
+  $403 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $404 = $403 + $391 | 0;
+  SAFE_HEAP_STORE($8 | 0, $404 | 0, 4);
+  $405 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $406 = $405 + $350 | 0;
+  SAFE_HEAP_STORE($9 | 0, $406 | 0, 4);
+  $407 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $408 = $407 + $309 | 0;
+  SAFE_HEAP_STORE($10 | 0, $408 | 0, 4);
+  $409 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+  $410 = $409 + $268 | 0;
+  SAFE_HEAP_STORE($11 | 0, $410 | 0, 4);
+  $411 = $$0 + 64 | 0;
+  $412 = $$08 + -1 | 0;
+  $413 = ($412 | 0) == 0;
+  if ($413) {
+   break;
+  } else {
+   $$0 = $411;
+   $$08 = $412;
+   $414 = $410;
+   $415 = $408;
+   $416 = $406;
+   $417 = $404;
+   $418 = $402;
+   $419 = $400;
+   $420 = $398;
+   $421 = $396;
+  }
+ }
+ STACKTOP = sp;
+ return 328;
+}
+
+function __gcry_sexp_sprint($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$$0$i = 0, $$0 = 0, $$0$copyload = 0, $$010$lcssa$i = 0, $$01011$i = 0, 
$$012$i = 0, $$0125$ph = 0, $$0128 = 0, $$0128$ = 0, $$0128$ph = 0, $$0132 = 0, 
$$0132$ph = 0, $$0133 = 0, $$0133$ph = 0, $$02646$i = 0, $$02745$i = 0, $$047$i 
= 0, $$050$lcssa$i = 0, $$05067$i = 0, $$05366$i = 0;
+ var $$05565$i = 0, $$064$i = 0, $$1$i = 0, $$1$i142 = 0, $$10 = 0, $$11164 = 
0, $$151$i = 0, $$15463$i = 0, $$15662$i = 0, $$2130 = 0, $$3 = 0, $$3136 = 0, 
$$4137 = 0, $$5 = 0, $$5138 = 0, $$6139182 = 0, $$6162 = 0, $$6165 = 0, $$7140 
= 0, $$clear = 0;
+ var $$not = 0, $$off$i = 0, $$off$i146 = 0, $$off37$i = 0, $$off38$i = 0, 
$$off58$i = 0, $$pre = 0, $$pre$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;
+ 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, $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, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, 
$98 = 0, $99 = 0, $exitcond$i = 0, $memchr$i = 0, $memchr29$i = 0, $not$ = 0, 
$notlhs = 0, $notrhs = 0, $or$cond = 0, $or$cond$i = 0, $or$cond$i147 = 0, 
$or$cond43$i = 0;
+ var $or$cond49$i$not = 0, $or$cond61$i = 0, $scevgep = 0, $scevgep$i = 0, 
$scevgep203 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer4 = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer4 = sp + 16 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $4 = sp + 20 | 0;
+ $5 = ($0 | 0) != (0 | 0);
+ $6 = $5 ? $0 : 22624;
+ $7 = ($1 | 0) == 3;
+ $8 = ($2 | 0) != (0 | 0);
+ $9 = ($2 | 0) == (0 | 0);
+ $10 = ($1 | 0) != 1;
+ $11 = ($1 | 0) == 1;
+ $$not = $10 ^ 1;
+ $$0125$ph = 0;
+ $$0128$ph = 0;
+ $$0132$ph = $6;
+ $$0133$ph = $2;
+ L1 : while (1) {
+  $$0128 = $$0128$ph;
+  $$0132 = $$0132$ph;
+  $$0133 = $$0133$ph;
+  L3 : while (1) {
+   $12 = SAFE_HEAP_LOAD($$0132 >> 0 | 0, 1, 0) | 0 | 0;
+   switch ($12 << 24 >> 24) {
+   case 0:
+    {
+     label = 79;
+     break L1;
+     break;
+    }
+   case 3:
+    {
+     label = 4;
+     break L3;
+     break;
+    }
+   case 4:
+    {
+     label = 13;
+     break L3;
+     break;
+    }
+   case 1:
+    {
+     break;
+    }
+   default:
+    {
+     label = 78;
+     break L1;
+    }
+   }
+   $33 = $$0132 + 1 | 0;
+   $$0$copyload = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($33 
+ 1 >> 0 | 0, 1, 1) | 0) << 8;
+   $34 = $$0132 + 3 | 0;
+   $35 = $$0$copyload & 65535;
+   if ($7) {
+    $36 = $$0$copyload << 16 >> 16 == 0;
+    L8 : do {
+     if ($36) {
+      $$0 = 2;
+      $67 = 1;
+     } else {
+      $37 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+      $38 = $37 << 24 >> 24 < 1;
+      L10 : do {
+       if (!$38) {
+        $$02646$i = $34;
+        $$02745$i = $35;
+        $$047$i = 1;
+        $39 = $37;
+        while (1) {
+         $40 = ($39 & 255) < 32;
+         $$off$i = $39 + -127 << 24 >> 24;
+         $41 = ($$off$i & 255) < 34;
+         $or$cond$i = $40 | $41;
+         if ($or$cond$i) {
+          $42 = $39 & 255;
+          $memchr29$i = _memchr(22627, $42, 10) | 0;
+          $43 = ($memchr29$i | 0) == (0 | 0);
+          if ($43) {
+           break L10;
+          }
+         }
+         $44 = ($$047$i | 0) == 0;
+         if ($44) {
+          $$1$i = 0;
+         } else {
+          $45 = $39 & -33;
+          $46 = $45 + -65 << 24 >> 24;
+          $47 = ($46 & 255) < 26;
+          $$off37$i = $39 + -48 << 24 >> 24;
+          $48 = ($$off37$i & 255) < 10;
+          $or$cond43$i = $48 | $47;
+          if ($or$cond43$i) {
+           $$1$i = $$047$i;
+          } else {
+           $49 = $39 & 255;
+           $memchr$i = _memchr(22637, $49, 9) | 0;
+           $50 = ($memchr$i | 0) == (0 | 0);
+           $$$0$i = $50 ? 0 : $$047$i;
+           $$1$i = $$$0$i;
+          }
+         }
+         $51 = $$02646$i + 1 | 0;
+         $52 = $$02745$i + -1 | 0;
+         $53 = ($52 | 0) == 0;
+         if ($53) {
+          break;
+         }
+         $$pre$i = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+         $$02646$i = $51;
+         $$02745$i = $52;
+         $$047$i = $$1$i;
+         $39 = $$pre$i;
+        }
+        $$off38$i = $37 + -48 << 24 >> 24;
+        $notlhs = ($$1$i | 0) != 0;
+        $notrhs = ($$off38$i & 255) > 9;
+        $or$cond49$i$not = $notrhs & $notlhs;
+        if ($or$cond49$i$not) {
+         $$0 = $35;
+         $67 = 2;
+         break L8;
+        } else {
+         $$064$i = 2;
+         $$15463$i = $35;
+         $$15662$i = $34;
+         $54 = $37;
+        }
+        while (1) {
+         L24 : do {
+          switch ($54 << 24 >> 24) {
+          case 92:
+          case 39:
+          case 34:
+          case 13:
+          case 12:
+          case 10:
+          case 11:
+          case 9:
+          case 8:
+           {
+            $55 = $$064$i + 2 | 0;
+            $$1$i142 = $55;
+            break;
+           }
+          default:
+           {
+            $56 = ($54 & 255) < 32;
+            $$off58$i = $54 + -127 << 24 >> 24;
+            $57 = ($$off58$i & 255) < 34;
+            $or$cond61$i = $56 | $57;
+            if ($or$cond61$i) {
+             $58 = $$064$i + 4 | 0;
+             $$1$i142 = $58;
+             break L24;
+            } else {
+             $59 = $$064$i + 1 | 0;
+             $$1$i142 = $59;
+             break L24;
+            }
+           }
+          }
+         } while (0);
+         $60 = $$15463$i + -1 | 0;
+         $61 = $$15662$i + 1 | 0;
+         $62 = ($60 | 0) == 0;
+         if ($62) {
+          $$0 = $$1$i142;
+          $67 = 1;
+          break L8;
+         }
+         $$pre = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+         $$064$i = $$1$i142;
+         $$15463$i = $60;
+         $$15662$i = $61;
+         $54 = $$pre;
+        }
+       }
+      } while (0);
+      $63 = $35 << 1;
+      $64 = $63 + 2 | 0;
+      $$0 = $64;
+      $67 = 0;
+     }
+    } while (0);
+    $65 = $$0 + $$0128 | 0;
+    if ($8) {
+     $66 = $65 >>> 0 < $3 >>> 0;
+     if (!$66) {
+      $$3 = 0;
+      label = 87;
+      break L1;
+     }
+     $$clear = $67 & 3;
+     switch ($$clear << 24 >> 24) {
+     case 1:
+      {
+       $68 = ($$0133 | 0) == (0 | 0);
+       if (!$68) {
+        $69 = $$0133 + 1 | 0;
+        SAFE_HEAP_STORE($$0133 >> 0 | 0, 34 | 0, 1);
+        L48 : do {
+         if ($36) {
+          $$050$lcssa$i = $69;
+         } else {
+          $$05067$i = $69;
+          $$05366$i = $35;
+          $$05565$i = $34;
+          while (1) {
+           $70 = SAFE_HEAP_LOAD($$05565$i >> 0 | 0, 1, 0) | 0 | 0;
+           L51 : do {
+            switch ($70 << 24 >> 24) {
+            case 8:
+             {
+              $71 = $$05067$i + 1 | 0;
+              SAFE_HEAP_STORE($$05067$i >> 0 | 0, 92 | 0, 1);
+              $72 = $$05067$i + 2 | 0;
+              SAFE_HEAP_STORE($71 >> 0 | 0, 98 | 0, 1);
+              $$151$i = $72;
+              break;
+             }
+            case 9:
+             {
+              $73 = $$05067$i + 1 | 0;
+              SAFE_HEAP_STORE($$05067$i >> 0 | 0, 92 | 0, 1);
+              $74 = $$05067$i + 2 | 0;
+              SAFE_HEAP_STORE($73 >> 0 | 0, 116 | 0, 1);
+              $$151$i = $74;
+              break;
+             }
+            case 11:
+             {
+              $75 = $$05067$i + 1 | 0;
+              SAFE_HEAP_STORE($$05067$i >> 0 | 0, 92 | 0, 1);
+              $76 = $$05067$i + 2 | 0;
+              SAFE_HEAP_STORE($75 >> 0 | 0, 118 | 0, 1);
+              $$151$i = $76;
+              break;
+             }
+            case 10:
+             {
+              $77 = $$05067$i + 1 | 0;
+              SAFE_HEAP_STORE($$05067$i >> 0 | 0, 92 | 0, 1);
+              $78 = $$05067$i + 2 | 0;
+              SAFE_HEAP_STORE($77 >> 0 | 0, 110 | 0, 1);
+              $$151$i = $78;
+              break;
+             }
+            case 12:
+             {
+              $79 = $$05067$i + 1 | 0;
+              SAFE_HEAP_STORE($$05067$i >> 0 | 0, 92 | 0, 1);
+              $80 = $$05067$i + 2 | 0;
+              SAFE_HEAP_STORE($79 >> 0 | 0, 102 | 0, 1);
+              $$151$i = $80;
+              break;
+             }
+            case 13:
+             {
+              $81 = $$05067$i + 1 | 0;
+              SAFE_HEAP_STORE($$05067$i >> 0 | 0, 92 | 0, 1);
+              $82 = $$05067$i + 2 | 0;
+              SAFE_HEAP_STORE($81 >> 0 | 0, 114 | 0, 1);
+              $$151$i = $82;
+              break;
+             }
+            case 34:
+             {
+              $83 = $$05067$i + 1 | 0;
+              SAFE_HEAP_STORE($$05067$i >> 0 | 0, 92 | 0, 1);
+              $84 = $$05067$i + 2 | 0;
+              SAFE_HEAP_STORE($83 >> 0 | 0, 34 | 0, 1);
+              $$151$i = $84;
+              break;
+             }
+            case 39:
+             {
+              $85 = $$05067$i + 1 | 0;
+              SAFE_HEAP_STORE($$05067$i >> 0 | 0, 92 | 0, 1);
+              $86 = $$05067$i + 2 | 0;
+              SAFE_HEAP_STORE($85 >> 0 | 0, 39 | 0, 1);
+              $$151$i = $86;
+              break;
+             }
+            case 92:
+             {
+              $87 = $$05067$i + 1 | 0;
+              SAFE_HEAP_STORE($$05067$i >> 0 | 0, 92 | 0, 1);
+              $88 = $$05067$i + 2 | 0;
+              SAFE_HEAP_STORE($87 >> 0 | 0, 92 | 0, 1);
+              $$151$i = $88;
+              break;
+             }
+            default:
+             {
+              $89 = ($70 & 255) < 32;
+              $$off$i146 = $70 + -127 << 24 >> 24;
+              $90 = ($$off$i146 & 255) < 34;
+              $or$cond$i147 = $89 | $90;
+              if ($or$cond$i147) {
+               $91 = $70 & 255;
+               SAFE_HEAP_STORE($vararg_buffer | 0, $91 | 0, 4);
+               _sprintf($$05067$i, 22478, $vararg_buffer) | 0;
+               $92 = $$05067$i + 4 | 0;
+               $$151$i = $92;
+               break L51;
+              } else {
+               $93 = $$05067$i + 1 | 0;
+               SAFE_HEAP_STORE($$05067$i >> 0 | 0, $70 | 0, 1);
+               $$151$i = $93;
+               break L51;
+              }
+             }
+            }
+           } while (0);
+           $94 = $$05366$i + -1 | 0;
+           $95 = $$05565$i + 1 | 0;
+           $96 = ($94 | 0) == 0;
+           if ($96) {
+            $$050$lcssa$i = $$151$i;
+            break L48;
+           } else {
+            $$05067$i = $$151$i;
+            $$05366$i = $94;
+            $$05565$i = $95;
+           }
+          }
+         }
+        } while (0);
+        SAFE_HEAP_STORE($$050$lcssa$i >> 0 | 0, 34 | 0, 1);
+       }
+       break;
+      }
+     case 2:
+      {
+       $97 = ($$0133 | 0) == (0 | 0);
+       if (!$97) {
+        _memcpy($$0133 | 0, $34 | 0, $35 | 0) | 0;
+       }
+       break;
+      }
+     default:
+      {
+       $98 = ($$0133 | 0) == (0 | 0);
+       if (!$98) {
+        $99 = $$0133 + 1 | 0;
+        SAFE_HEAP_STORE($$0133 >> 0 | 0, 35 | 0, 1);
+        if ($36) {
+         $$010$lcssa$i = $99;
+        } else {
+         $100 = $35 << 1;
+         $$01011$i = $99;
+         $$012$i = 0;
+         while (1) {
+          $101 = $34 + $$012$i | 0;
+          $102 = SAFE_HEAP_LOAD($101 >> 0 | 0, 1, 0) | 0 | 0;
+          $103 = $102 & 255;
+          SAFE_HEAP_STORE($vararg_buffer1 | 0, $103 | 0, 4);
+          _sprintf($$01011$i, 22646, $vararg_buffer1) | 0;
+          $104 = $$012$i + 1 | 0;
+          $105 = $$01011$i + 2 | 0;
+          $exitcond$i = ($104 | 0) == ($35 | 0);
+          if ($exitcond$i) {
+           break;
+          } else {
+           $$01011$i = $105;
+           $$012$i = $104;
+          }
+         }
+         $106 = $100 | 1;
+         $scevgep$i = $$0133 + $106 | 0;
+         $$010$lcssa$i = $scevgep$i;
+        }
+        SAFE_HEAP_STORE($$010$lcssa$i >> 0 | 0, 35 | 0, 1);
+       }
+      }
+     }
+     $107 = $$0133 + $$0 | 0;
+     $$7140 = $107;
+    } else {
+     $$7140 = $$0133;
+    }
+    $108 = $34 + $35 | 0;
+    $109 = SAFE_HEAP_LOAD($108 >> 0 | 0, 1, 0) | 0 | 0;
+    $110 = $109 << 24 >> 24 == 4;
+    if ($110) {
+     $$10 = $$7140;
+     $$5 = $65;
+    } else {
+     $111 = $65 + 1 | 0;
+     if ($8) {
+      $112 = $111 >>> 0 < $3 >>> 0;
+      if (!$112) {
+       $$3 = 0;
+       label = 87;
+       break L1;
+      }
+      $113 = $$7140 + 1 | 0;
+      SAFE_HEAP_STORE($$7140 >> 0 | 0, 32 | 0, 1);
+      $$10 = $113;
+      $$5 = $111;
+     } else {
+      $$10 = $$7140;
+      $$5 = $111;
+     }
+    }
+   } else {
+    SAFE_HEAP_STORE($vararg_buffer4 | 0, $35 | 0, 4);
+    _sprintf($4, 22651, $vararg_buffer4) | 0;
+    $114 = _strlen($4) | 0;
+    $115 = $35 + $$0128 | 0;
+    $116 = $115 + $114 | 0;
+    if ($9) {
+     $$10 = $$0133;
+     $$5 = $116;
+    } else {
+     $117 = $116 >>> 0 < $3 >>> 0;
+     if (!$117) {
+      $$3 = 0;
+      label = 87;
+      break L1;
+     }
+     $118 = ___stpcpy($$0133, $4) | 0;
+     _memcpy($118 | 0, $34 | 0, $35 | 0) | 0;
+     $119 = $118 + $35 | 0;
+     $$10 = $119;
+     $$5 = $116;
+    }
+   }
+   $120 = $34 + $35 | 0;
+   $$0128 = $$5;
+   $$0132 = $120;
+   $$0133 = $$10;
+  }
+  if ((label | 0) == 4) {
+   label = 0;
+   $13 = $$0132 + 1 | 0;
+   if ($10) {
+    $not$ = ($$0125$ph | 0) != 0;
+    $14 = $not$ & 1;
+    $$0128$ = $$0125$ph + $$0128 | 0;
+    $15 = $$0128$ + $14 | 0;
+    $$2130 = $15;
+   } else {
+    $$2130 = $$0128;
+   }
+   $16 = $$2130 + 1 | 0;
+   if ($9) {
+    $$4137 = $$0133;
+   } else {
+    $17 = $16 >>> 0 < $3 >>> 0;
+    if (!$17) {
+     $$3 = 0;
+     label = 87;
+     break;
+    }
+    $18 = ($$0125$ph | 0) == 0;
+    $or$cond = $18 | $$not;
+    if ($or$cond) {
+     $$3136 = $$0133;
+    } else {
+     $19 = $$0133 + 1 | 0;
+     SAFE_HEAP_STORE($$0133 >> 0 | 0, 10 | 0, 1);
+     $20 = ($$0125$ph | 0) > 0;
+     if ($20) {
+      _memset($19 | 0, 32, $$0125$ph | 0) | 0;
+      $scevgep203 = $19 + $$0125$ph | 0;
+      $$3136 = $scevgep203;
+     } else {
+      $$3136 = $19;
+     }
+    }
+    $21 = $$3136 + 1 | 0;
+    SAFE_HEAP_STORE($$3136 >> 0 | 0, 40 | 0, 1);
+    $$4137 = $21;
+   }
+   $22 = $$0125$ph + 1 | 0;
+   $$0125$ph = $22;
+   $$0128$ph = $16;
+   $$0132$ph = $13;
+   $$0133$ph = $$4137;
+   continue;
+  } else if ((label | 0) == 13) {
+   label = 0;
+   $23 = $$0132 + 1 | 0;
+   $24 = $$0128 + 1 | 0;
+   if ($8) {
+    $25 = $24 >>> 0 < $3 >>> 0;
+    if (!$25) {
+     $$3 = 0;
+     label = 87;
+     break;
+    }
+    $26 = $$0133 + 1 | 0;
+    SAFE_HEAP_STORE($$0133 >> 0 | 0, 41 | 0, 1);
+    $$5138 = $26;
+   } else {
+    $$5138 = $$0133;
+   }
+   $27 = $$0125$ph + -1 | 0;
+   if ($11) {
+    $$0125$ph = $27;
+    $$0128$ph = $24;
+    $$0132$ph = $23;
+    $$0133$ph = $$5138;
+    continue;
+   }
+   $28 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+   switch ($28 << 24 >> 24) {
+   case 0:
+   case 3:
+    {
+     $$0125$ph = $27;
+     $$0128$ph = $24;
+     $$0132$ph = $23;
+     $$0133$ph = $$5138;
+     continue L1;
+     break;
+    }
+   default:
+    {}
+   }
+   $29 = $$0128 + 2 | 0;
+   $30 = $29 + $27 | 0;
+   if (!$8) {
+    $$0125$ph = $27;
+    $$0128$ph = $30;
+    $$0132$ph = $23;
+    $$0133$ph = $$5138;
+    continue;
+   }
+   $31 = $30 >>> 0 < $3 >>> 0;
+   if (!$31) {
+    $$3 = 0;
+    label = 87;
+    break;
+   }
+   SAFE_HEAP_STORE($$5138 >> 0 | 0, 10 | 0, 1);
+   $$6139182 = $$5138 + 1 | 0;
+   $32 = ($$0125$ph | 0) > 1;
+   if (!$32) {
+    $$0125$ph = $27;
+    $$0128$ph = $30;
+    $$0132$ph = $23;
+    $$0133$ph = $$6139182;
+    continue;
+   }
+   _memset($$6139182 | 0, 32, $27 | 0) | 0;
+   $scevgep = $$5138 + $$0125$ph | 0;
+   $$0125$ph = $27;
+   $$0128$ph = $30;
+   $$0132$ph = $23;
+   $$0133$ph = $scevgep;
+   continue;
+  }
+ }
+ if ((label | 0) == 78) {
+  __gcry_bug(22556, 2008, 22655);
+ } else if ((label | 0) == 79) {
+  do {
+   if ($11) {
+    if ($9) {
+     $$6162 = $$0128;
+     label = 86;
+    } else {
+     $$11164 = $$0133;
+     $$6165 = $$0128;
+    }
+   } else {
+    $121 = $$0128 + 1 | 0;
+    if ($9) {
+     $$6162 = $121;
+     label = 86;
+    } else {
+     $122 = $121 >>> 0 < $3 >>> 0;
+     if ($122) {
+      $123 = $$0133 + 1 | 0;
+      SAFE_HEAP_STORE($$0133 >> 0 | 0, 10 | 0, 1);
+      $$11164 = $123;
+      $$6165 = $121;
+      break;
+     } else {
+      $$3 = 0;
+      STACKTOP = sp;
+      return $$3 | 0;
+     }
+    }
+   }
+  } while (0);
+  if ((label | 0) == 86) {
+   $125 = $$6162 + 1 | 0;
+   $$3 = $125;
+   STACKTOP = sp;
+   return $$3 | 0;
+  }
+  $124 = $$6165 >>> 0 < $3 >>> 0;
+  if (!$124) {
+   $$3 = 0;
+   STACKTOP = sp;
+   return $$3 | 0;
+  }
+  SAFE_HEAP_STORE($$11164 >> 0 | 0, 0 | 0, 1);
+  $$3 = $$6165;
+  STACKTOP = sp;
+  return $$3 | 0;
+ } else if ((label | 0) == 87) {
+  STACKTOP = sp;
+  return $$3 | 0;
+ }
+ return 0 | 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;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+ dest = $10;
+ stop = dest + 56 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    __gcry_log_printmpi(46951, $19);
+   }
+   $20 = __gcry_pk_util_preparse_sigval($0, 12556, $4, $11) | 0;
+   $21 = ($20 | 0) == 0;
+   if ($21) {
+    $22 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    $23 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    $24 = $23 & 4096;
+    $25 = ($24 | 0) != 0;
+    $26 = $25 ? 46967 : 46882;
+    SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, $8 | 0, 4);
+    $vararg_ptr2 = $vararg_buffer + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr2 | 0, 0 | 0, 4);
+    $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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(46971, $31);
+      $32 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(46987, $32);
+     }
+     $33 = $3 + 12 | 0;
+     $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+     $35 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+     $36 = $35 ^ $34;
+     $37 = $36 & 4096;
+     $38 = ($37 | 0) == 0;
+     if ($38) {
+      $39 = $34 & 512;
+      $40 = ($39 | 0) == 0;
+      if ($40) {
+       SAFE_HEAP_STORE($vararg_buffer13 | 0, $6 | 0, 4);
+       $vararg_ptr16 = $vararg_buffer13 + 4 | 0;
+       SAFE_HEAP_STORE($vararg_ptr16 | 0, 0 | 0, 4);
+       $46 = __gcry_sexp_extract_param($2, 0, 46920, $vararg_buffer13) | 0;
+       $$037 = $46;
+      } else {
+       $41 = $10 + 8 | 0;
+       $42 = $10 + 12 | 0;
+       $43 = $10 + 16 | 0;
+       $44 = $10 + 32 | 0;
+       SAFE_HEAP_STORE($vararg_buffer3 | 0, $41 | 0, 4);
+       $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+       SAFE_HEAP_STORE($vararg_ptr6 | 0, $42 | 0, 4);
+       $vararg_ptr7 = $vararg_buffer3 + 8 | 0;
+       SAFE_HEAP_STORE($vararg_ptr7 | 0, $43 | 0, 4);
+       $vararg_ptr8 = $vararg_buffer3 + 12 | 0;
+       SAFE_HEAP_STORE($vararg_ptr8 | 0, $5 | 0, 4);
+       $vararg_ptr9 = $vararg_buffer3 + 16 | 0;
+       SAFE_HEAP_STORE($vararg_ptr9 | 0, $44 | 0, 4);
+       $vararg_ptr10 = $vararg_buffer3 + 20 | 0;
+       SAFE_HEAP_STORE($vararg_ptr10 | 0, $44 | 0, 4);
+       $vararg_ptr11 = $vararg_buffer3 + 24 | 0;
+       SAFE_HEAP_STORE($vararg_ptr11 | 0, $6 | 0, 4);
+       $vararg_ptr12 = $vararg_buffer3 + 28 | 0;
+       SAFE_HEAP_STORE($vararg_ptr12 | 0, 0 | 0, 4);
+       $45 = __gcry_sexp_extract_param($2, 0, 47003, $vararg_buffer3) | 0;
+       $$037 = $45;
+      }
+      $47 = ($$037 | 0) == 0;
+      if ($47) {
+       $48 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+       $49 = ($48 | 0) == (0 | 0);
+       if (!$49) {
+        $50 = $10 + 20 | 0;
+        __gcry_mpi_point_init($50);
+        $51 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+        $52 = __gcry_ecc_os2ec($50, $51) | 0;
+        $53 = ($52 | 0) == 0;
+        if (!$53) {
+         $$139 = 0;
+         $$3 = $52;
+         break;
+        }
+       }
+       $54 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+       __gcry_sexp_release($54);
+       $55 = __gcry_sexp_find_token($2, 46925, 5) | 0;
+       SAFE_HEAP_STORE($4 | 0, $55 | 0, 4);
+       $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 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+        $62 = $61 >>> 11;
+        $63 = $62 & 2;
+        SAFE_HEAP_STORE($10 | 0, $63 | 0, 4);
+        $64 = $61 >>> 12;
+        $$lobit = $64 & 1;
+        $65 = $10 + 4 | 0;
+        SAFE_HEAP_STORE($65 | 0, $$lobit | 0, 4);
+        $$03840 = 0;
+       }
+       $66 = __gcry_get_debug_flag(1) | 0;
+       $67 = ($66 | 0) == 0;
+       if ($67) {
+        $$pre = $10 + 8 | 0;
+        $$pre$phiZ2D = $$pre;
+       } else {
+        $68 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+        $69 = __gcry_ecc_model2str($68) | 0;
+        $70 = $10 + 4 | 0;
+        $71 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+        $72 = __gcry_ecc_dialect2str($71) | 0;
+        $73 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+        $74 = $73 & 4096;
+        $75 = ($74 | 0) != 0;
+        $76 = $75 ? 47019 : 71847;
+        SAFE_HEAP_STORE($vararg_buffer17 | 0, $69 | 0, 4);
+        $vararg_ptr20 = $vararg_buffer17 + 4 | 0;
+        SAFE_HEAP_STORE($vararg_ptr20 | 0, $72 | 0, 4);
+        $vararg_ptr21 = $vararg_buffer17 + 8 | 0;
+        SAFE_HEAP_STORE($vararg_ptr21 | 0, $76 | 0, 4);
+        __gcry_log_debug(47026, $vararg_buffer17);
+        $77 = $10 + 40 | 0;
+        $78 = SAFE_HEAP_LOAD($77 | 0, 4, 0) | 0 | 0;
+        $79 = ($78 | 0) == (0 | 0);
+        if (!$79) {
+         SAFE_HEAP_STORE($vararg_buffer22 | 0, $78 | 0, 4);
+         __gcry_log_debug(47052, $vararg_buffer22);
+        }
+        $80 = $10 + 8 | 0;
+        $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+        __gcry_log_printmpi(47073, $81);
+        $82 = $10 + 12 | 0;
+        $83 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+        __gcry_log_printmpi(47089, $83);
+        $84 = $10 + 16 | 0;
+        $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+        __gcry_log_printmpi(47105, $85);
+        $86 = $10 + 20 | 0;
+        __gcry_mpi_point_log(47121, $86, 0);
+        $87 = $10 + 32 | 0;
+        $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+        __gcry_log_printmpi(47135, $88);
+        $89 = $10 + 36 | 0;
+        $90 = SAFE_HEAP_LOAD($89 | 0, 4, 0) | 0 | 0;
+        __gcry_log_printmpi(47151, $90);
+        $91 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        __gcry_log_printmpi(47167, $91);
+        $$pre$phiZ2D = $80;
+       }
+       $92 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+       $93 = ($92 | 0) == (0 | 0);
+       if ($93) {
+        $$139 = $$03840;
+        $$3 = 68;
+       } else {
+        $94 = $10 + 12 | 0;
+        $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+        $96 = ($95 | 0) == (0 | 0);
+        if ($96) {
+         $$139 = $$03840;
+         $$3 = 68;
+        } else {
+         $97 = $10 + 16 | 0;
+         $98 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+         $99 = ($98 | 0) == (0 | 0);
+         if ($99) {
+          $$139 = $$03840;
+          $$3 = 68;
+         } else {
+          $100 = $10 + 20 | 0;
+          $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+          $102 = ($101 | 0) == (0 | 0);
+          if ($102) {
+           $$139 = $$03840;
+           $$3 = 68;
+          } else {
+           $103 = $10 + 32 | 0;
+           $104 = SAFE_HEAP_LOAD($103 | 0, 4, 0) | 0 | 0;
+           $105 = ($104 | 0) == (0 | 0);
+           if ($105) {
+            $$139 = $$03840;
+            $$3 = 68;
+           } else {
+            $106 = $10 + 36 | 0;
+            $107 = SAFE_HEAP_LOAD($106 | 0, 4, 0) | 0 | 0;
+            $108 = ($107 | 0) != (0 | 0);
+            $109 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+            $110 = ($109 | 0) != (0 | 0);
+            $or$cond = $108 & $110;
+            if ($or$cond) {
+             $111 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+             $112 = $111 & 4096;
+             $113 = ($112 | 0) == 0;
+             if (!$113) {
+              $114 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+              $115 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+              $116 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+              $117 = $3 + 16 | 0;
+              $118 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+              $124 = __gcry_ecc_os2ec($122, $123) | 0;
+              $125 = ($124 | 0) == 0;
+              if (!$125) {
+               $$139 = $$03840;
+               $$3 = $124;
+               break;
+              }
+              $126 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+              $127 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+              $128 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+              $129 = __gcry_ecc_gost_verify($126, $10, $127, $128) | 0;
+              $$139 = $$03840;
+              $$3 = $129;
+              break;
+             }
+             $130 = $10 + 4 | 0;
+             $131 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+             $132 = ($131 | 0) == 1;
+             if ($132) {
+              $133 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+              $134 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+              $135 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+              $136 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+              $137 = __gcry_mpi_ec_p_internal_new($133, 1, 0, $134, $135, 
$136) | 0;
+              $138 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+              $139 = __gcry_ecc_eddsa_decodepoint($138, $137, $122, 0, 0) | 0;
+              __gcry_mpi_ec_free($137);
+              $$1 = $139;
+             } else {
+              $140 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+              $141 = __gcry_ecc_os2ec($122, $140) | 0;
+              $$1 = $141;
+             }
+             $142 = ($$1 | 0) == 0;
+             if (!$142) {
+              $$139 = $$03840;
+              $$3 = $$1;
+              break;
+             }
+             $143 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+             $144 = ($143 | 0) == (0 | 0);
+             do {
+              if (!$144) {
+               $145 = $143 + 12 | 0;
+               $146 = SAFE_HEAP_LOAD($145 | 0, 4, 0) | 0 | 0;
+               $147 = $146 & 4;
+               $148 = ($147 | 0) == 0;
+               if ($148) {
+                break;
+               }
+               $149 = SAFE_HEAP_LOAD($103 | 0, 4, 0) | 0 | 0;
+               $150 = __gcry_mpi_get_nbits($149) | 0;
+               $151 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+               $152 = __gcry_mpi_get_opaque($151, $12) | 0;
+               $153 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+                $159 = $158 >>> 0 > $150 >>> 0;
+                if ($159) {
+                 $160 = $158 - $150 | 0;
+                 $161 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+                 __gcry_mpi_rshift($161, $161, $160);
+                }
+                $162 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+                $163 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+                $164 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+                $165 = __gcry_ecc_ecdsa_verify($162, $10, $163, $164) | 0;
+                $166 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+                __gcry_mpi_release($166);
+                $$2 = $165;
+               } else {
+                $$2 = $156;
+               }
+               $$139 = $$03840;
+               $$3 = $$2;
+               break L1;
+              }
+             } while (0);
+             $167 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+             $168 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($170 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($171);
+ $172 = $10 + 12 | 0;
+ $173 = SAFE_HEAP_LOAD($172 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($173);
+ $174 = $10 + 16 | 0;
+ $175 = SAFE_HEAP_LOAD($174 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($175);
+ $176 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($176);
+ $177 = $10 + 20 | 0;
+ __gcry_mpi_point_free_parts($177);
+ $178 = $10 + 32 | 0;
+ $179 = SAFE_HEAP_LOAD($178 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($179);
+ $180 = $10 + 36 | 0;
+ $181 = SAFE_HEAP_LOAD($180 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($181);
+ $182 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($182);
+ $183 = $10 + 44 | 0;
+ __gcry_mpi_point_free_parts($183);
+ $184 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($184);
+ $185 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($185);
+ $186 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($186);
+ __gcry_free($$139);
+ $187 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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 = 47183;
+ } else {
+  $191 = _gpg_strerror($$3) | 0;
+  $192 = $191;
+ }
+ SAFE_HEAP_STORE($vararg_buffer25 | 0, $192 | 0, 4);
+ __gcry_log_debug(47188, $vararg_buffer25);
+ $$0 = $$3;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _do_fast_random_poll() {
+ var $$01113$us$i5 = 0, $$pre = 0, $$pre17 = 0, $$pre18 = 0, $$pre19 = 0, 
$$pre20 = 0, $$pre21 = 0, $$pre22 = 0, $$pre23 = 0, $$pre24 = 0, $$pre25 = 0, 
$$pre26 = 0, $$pre27 = 0, $$pre28 = 0, $$pre29 = 0, $$pre30 = 0, $$pre31 = 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 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == 0;
+ if ($5) {
+  __gcry_assert_failed(50424, 50439, 1180, 50798);
+ }
+ $6 = SAFE_HEAP_LOAD(17653 * 4 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 1 | 0;
+ SAFE_HEAP_STORE(17653 * 4 | 0, $7 | 0, 4);
+ $8 = _gettimeofday($0 | 0, 0 | 0) | 0;
+ $9 = ($8 | 0) == 0;
+ if (!$9) {
+  __gcry_bug(50439, 1198, 50798);
+ }
+ $10 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+ $11 = ($10 | 0) == 0;
+ if ($11) {
+  __gcry_assert_failed(50424, 50439, 1074, 50474);
+ }
+ $12 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+ $13 = $12 + 4 | 0;
+ SAFE_HEAP_STORE(17655 * 4 | 0, $13 | 0, 4);
+ $14 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+ $15 = $14 + 1 | 0;
+ SAFE_HEAP_STORE(17654 * 4 | 0, $15 | 0, 4);
+ $16 = $0 + 1 | 0;
+ $17 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $18 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+ $19 = $18 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $19 | 0, 4);
+ $20 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $21 = $20 + $18 | 0;
+ $22 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+ $23 = $22 ^ $17;
+ SAFE_HEAP_STORE($21 >> 0 | 0, $23 | 0, 1);
+ $24 = $19 >>> 0 > 599;
+ if ($24) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($20);
+  $25 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $26 = $25 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $26 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+  $$pre = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre17 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $30 = $$pre;
+  $32 = $$pre17;
+ } else {
+  $30 = $19;
+  $32 = $20;
+ }
+ $27 = $0 + 2 | 0;
+ $28 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+ $29 = $30 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $29 | 0, 4);
+ $31 = $32 + $30 | 0;
+ $33 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+ $34 = $33 ^ $28;
+ SAFE_HEAP_STORE($31 >> 0 | 0, $34 | 0, 1);
+ $35 = $29 >>> 0 > 599;
+ if ($35) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($32);
+  $206 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $207 = $206 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $207 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+  $$pre18 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre19 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $211 = $$pre18;
+  $213 = $$pre19;
+ } else {
+  $211 = $29;
+  $213 = $32;
+ }
+ $208 = $0 + 3 | 0;
+ $209 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+ $210 = $211 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $210 | 0, 4);
+ $212 = $213 + $211 | 0;
+ $214 = SAFE_HEAP_LOAD($212 >> 0 | 0, 1, 0) | 0 | 0;
+ $215 = $214 ^ $209;
+ SAFE_HEAP_STORE($212 >> 0 | 0, $215 | 0, 1);
+ $216 = $210 >>> 0 > 599;
+ if ($216) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($213);
+  $217 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $218 = $217 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $218 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+ }
+ $219 = SAFE_HEAP_LOAD($208 >> 0 | 0, 1, 0) | 0 | 0;
+ $220 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+ $221 = $220 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $221 | 0, 4);
+ $222 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $223 = $222 + $220 | 0;
+ $224 = SAFE_HEAP_LOAD($223 >> 0 | 0, 1, 0) | 0 | 0;
+ $225 = $224 ^ $219;
+ SAFE_HEAP_STORE($223 >> 0 | 0, $225 | 0, 1);
+ $226 = $221 >>> 0 > 599;
+ if ($226) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($222);
+  $227 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $228 = $227 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $228 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+ }
+ $229 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+ $230 = ($229 | 0) == 0;
+ if ($230) {
+  __gcry_assert_failed(50424, 50439, 1074, 50474);
+ }
+ $36 = $0 + 4 | 0;
+ $37 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+ $38 = $37 + 4 | 0;
+ SAFE_HEAP_STORE(17655 * 4 | 0, $38 | 0, 4);
+ $39 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+ $40 = $39 + 1 | 0;
+ SAFE_HEAP_STORE(17654 * 4 | 0, $40 | 0, 4);
+ $41 = $36 + 1 | 0;
+ $42 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+ $43 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+ $44 = $43 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $44 | 0, 4);
+ $45 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $46 = $45 + $43 | 0;
+ $47 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+ $48 = $47 ^ $42;
+ SAFE_HEAP_STORE($46 >> 0 | 0, $48 | 0, 1);
+ $49 = $44 >>> 0 > 599;
+ if ($49) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($45);
+  $50 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $51 = $50 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $51 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+  $$pre20 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre21 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $55 = $$pre20;
+  $57 = $$pre21;
+ } else {
+  $55 = $44;
+  $57 = $45;
+ }
+ $52 = $36 + 2 | 0;
+ $53 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+ $54 = $55 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $54 | 0, 4);
+ $56 = $57 + $55 | 0;
+ $58 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+ $59 = $58 ^ $53;
+ SAFE_HEAP_STORE($56 >> 0 | 0, $59 | 0, 1);
+ $60 = $54 >>> 0 > 599;
+ if ($60) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($57);
+  $181 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $182 = $181 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $182 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+  $$pre22 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre23 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $186 = $$pre22;
+  $188 = $$pre23;
+ } else {
+  $186 = $54;
+  $188 = $57;
+ }
+ $183 = $36 + 3 | 0;
+ $184 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+ $185 = $186 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $185 | 0, 4);
+ $187 = $188 + $186 | 0;
+ $189 = SAFE_HEAP_LOAD($187 >> 0 | 0, 1, 0) | 0 | 0;
+ $190 = $189 ^ $184;
+ SAFE_HEAP_STORE($187 >> 0 | 0, $190 | 0, 1);
+ $191 = $185 >>> 0 > 599;
+ if ($191) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($188);
+  $192 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $193 = $192 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $193 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+ }
+ $194 = SAFE_HEAP_LOAD($183 >> 0 | 0, 1, 0) | 0 | 0;
+ $195 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+ $196 = $195 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $196 | 0, 4);
+ $197 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $198 = $197 + $195 | 0;
+ $199 = SAFE_HEAP_LOAD($198 >> 0 | 0, 1, 0) | 0 | 0;
+ $200 = $199 ^ $194;
+ SAFE_HEAP_STORE($198 >> 0 | 0, $200 | 0, 1);
+ $201 = $196 >>> 0 > 599;
+ if ($201) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($197);
+  $202 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $203 = $202 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $203 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+ }
+ _getrusage(0, $1) | 0;
+ $204 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+ $205 = ($204 | 0) == 0;
+ if ($205) {
+  __gcry_assert_failed(50424, 50439, 1074, 50474);
+ }
+ $61 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+ $62 = $61 + 136 | 0;
+ SAFE_HEAP_STORE(17655 * 4 | 0, $62 | 0, 4);
+ $63 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+ $64 = $63 + 1 | 0;
+ SAFE_HEAP_STORE(17654 * 4 | 0, $64 | 0, 4);
+ $$01113$us$i5 = $1;
+ $76 = 135;
+ while (1) {
+  $65 = $$01113$us$i5 + 1 | 0;
+  $66 = SAFE_HEAP_LOAD($$01113$us$i5 >> 0 | 0, 1, 0) | 0 | 0;
+  $67 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $68 = $67 + 1 | 0;
+  SAFE_HEAP_STORE(17662 * 4 | 0, $68 | 0, 4);
+  $69 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $70 = $69 + $67 | 0;
+  $71 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+  $72 = $71 ^ $66;
+  SAFE_HEAP_STORE($70 >> 0 | 0, $72 | 0, 1);
+  $73 = $68 >>> 0 > 599;
+  if ($73) {
+   SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+   _mix_pool($69);
+   $74 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+   $75 = $74 + 1 | 0;
+   SAFE_HEAP_STORE(17651 * 4 | 0, $75 | 0, 4);
+   $77 = ($76 | 0) == 0;
+   $78 = $77 & 1;
+   SAFE_HEAP_STORE(17663 * 4 | 0, $78 | 0, 4);
+  }
+  $79 = $76 + -1 | 0;
+  $80 = ($76 | 0) == 0;
+  if ($80) {
+   break;
+  } else {
+   $$01113$us$i5 = $65;
+   $76 = $79;
+  }
+ }
+ $81 = _time(0 | 0) | 0;
+ SAFE_HEAP_STORE($2 | 0, $81 | 0, 4);
+ $82 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+ $83 = ($82 | 0) == 0;
+ $84 = $81 >>> 8;
+ $85 = $84 & 255;
+ $86 = $81 >>> 16;
+ $87 = $86 & 255;
+ if ($83) {
+  __gcry_assert_failed(50424, 50439, 1074, 50474);
+ }
+ $88 = $81 & 255;
+ $89 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+ $90 = $89 + 4 | 0;
+ SAFE_HEAP_STORE(17655 * 4 | 0, $90 | 0, 4);
+ $91 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+ $92 = $91 + 1 | 0;
+ SAFE_HEAP_STORE(17654 * 4 | 0, $92 | 0, 4);
+ $93 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+ $94 = $93 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $94 | 0, 4);
+ $95 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $96 = $95 + $93 | 0;
+ $97 = SAFE_HEAP_LOAD($96 >> 0 | 0, 1, 0) | 0 | 0;
+ $98 = $97 ^ $88;
+ SAFE_HEAP_STORE($96 >> 0 | 0, $98 | 0, 1);
+ $99 = $94 >>> 0 > 599;
+ if ($99) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($95);
+  $100 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $101 = $100 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $101 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+  $$pre24 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre25 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $103 = $$pre24;
+  $105 = $$pre25;
+ } else {
+  $103 = $94;
+  $105 = $95;
+ }
+ $102 = $103 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $102 | 0, 4);
+ $104 = $105 + $103 | 0;
+ $106 = SAFE_HEAP_LOAD($104 >> 0 | 0, 1, 0) | 0 | 0;
+ $107 = $106 ^ $85;
+ SAFE_HEAP_STORE($104 >> 0 | 0, $107 | 0, 1);
+ $108 = $102 >>> 0 > 599;
+ if ($108) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($105);
+  $155 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $156 = $155 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $156 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+  $$pre26 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre27 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $159 = $$pre26;
+  $161 = $$pre27;
+ } else {
+  $159 = $102;
+  $161 = $105;
+ }
+ $157 = $2 + 3 | 0;
+ $158 = $159 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $158 | 0, 4);
+ $160 = $161 + $159 | 0;
+ $162 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $163 = $162 ^ $87;
+ SAFE_HEAP_STORE($160 >> 0 | 0, $163 | 0, 1);
+ $164 = $158 >>> 0 > 599;
+ if ($164) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($161);
+  $165 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $166 = $165 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $166 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+ }
+ $167 = SAFE_HEAP_LOAD($157 >> 0 | 0, 1, 0) | 0 | 0;
+ $168 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+ $169 = $168 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $169 | 0, 4);
+ $170 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $171 = $170 + $168 | 0;
+ $172 = SAFE_HEAP_LOAD($171 >> 0 | 0, 1, 0) | 0 | 0;
+ $173 = $172 ^ $167;
+ SAFE_HEAP_STORE($171 >> 0 | 0, $173 | 0, 1);
+ $174 = $169 >>> 0 > 599;
+ if ($174) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($170);
+  $175 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $176 = $175 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $176 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+ }
+ $110 = _clock() | 0;
+ SAFE_HEAP_STORE($3 | 0, $110 | 0, 4);
+ $177 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+ $178 = ($177 | 0) == 0;
+ $179 = $110 >>> 8;
+ $130 = $179 & 255;
+ $180 = $110 >>> 16;
+ $141 = $180 & 255;
+ if ($178) {
+  __gcry_assert_failed(50424, 50439, 1074, 50474);
+ }
+ $109 = $110 & 255;
+ $111 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+ $112 = $111 + 4 | 0;
+ SAFE_HEAP_STORE(17655 * 4 | 0, $112 | 0, 4);
+ $113 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+ $114 = $113 + 1 | 0;
+ SAFE_HEAP_STORE(17654 * 4 | 0, $114 | 0, 4);
+ $115 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+ $116 = $115 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $116 | 0, 4);
+ $117 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $118 = $117 + $115 | 0;
+ $119 = SAFE_HEAP_LOAD($118 >> 0 | 0, 1, 0) | 0 | 0;
+ $120 = $119 ^ $109;
+ SAFE_HEAP_STORE($118 >> 0 | 0, $120 | 0, 1);
+ $121 = $116 >>> 0 > 599;
+ if ($121) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($117);
+  $122 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $123 = $122 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $123 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+  $$pre28 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre29 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $125 = $$pre28;
+  $127 = $$pre29;
+ } else {
+  $125 = $116;
+  $127 = $117;
+ }
+ $124 = $125 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $124 | 0, 4);
+ $126 = $127 + $125 | 0;
+ $128 = SAFE_HEAP_LOAD($126 >> 0 | 0, 1, 0) | 0 | 0;
+ $129 = $128 ^ $130;
+ SAFE_HEAP_STORE($126 >> 0 | 0, $129 | 0, 1);
+ $131 = $124 >>> 0 > 599;
+ if ($131) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($127);
+  $132 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $133 = $132 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $133 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+  $$pre30 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre31 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $136 = $$pre30;
+  $138 = $$pre31;
+ } else {
+  $136 = $124;
+  $138 = $127;
+ }
+ $134 = $3 + 3 | 0;
+ $135 = $136 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $135 | 0, 4);
+ $137 = $138 + $136 | 0;
+ $139 = SAFE_HEAP_LOAD($137 >> 0 | 0, 1, 0) | 0 | 0;
+ $140 = $139 ^ $141;
+ SAFE_HEAP_STORE($137 >> 0 | 0, $140 | 0, 1);
+ $142 = $135 >>> 0 > 599;
+ if ($142) {
+  SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+  _mix_pool($138);
+  $143 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+  $144 = $143 + 1 | 0;
+  SAFE_HEAP_STORE(17651 * 4 | 0, $144 | 0, 4);
+  SAFE_HEAP_STORE(17663 * 4 | 0, 0 | 0, 4);
+ }
+ $145 = SAFE_HEAP_LOAD($134 >> 0 | 0, 1, 0) | 0 | 0;
+ $146 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+ $147 = $146 + 1 | 0;
+ SAFE_HEAP_STORE(17662 * 4 | 0, $147 | 0, 4);
+ $148 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $149 = $148 + $146 | 0;
+ $150 = SAFE_HEAP_LOAD($149 >> 0 | 0, 1, 0) | 0 | 0;
+ $151 = $150 ^ $145;
+ SAFE_HEAP_STORE($149 >> 0 | 0, $151 | 0, 1);
+ $152 = $147 >>> 0 > 599;
+ if (!$152) {
+  STACKTOP = sp;
+  return;
+ }
+ SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+ _mix_pool($148);
+ $153 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+ $154 = $153 + 1 | 0;
+ SAFE_HEAP_STORE(17651 * 4 | 0, $154 | 0, 4);
+ SAFE_HEAP_STORE(17663 * 4 | 0, 1 | 0, 4);
+ STACKTOP = sp;
+ return;
+}
+
+function _transform_1700($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0107124 = 0, $$0108123 = 0, $$0108123$phi = 0, $$0109122 = 0, 
$$0109122$phi = 0, $$0110121 = 0, $$0110121$phi = 0, $$0111120 = 0, $$0112119 = 
0, $$0112119$phi = 0, $$0113118 = 0, $$0113118$phi = 0, $$0114117 = 0, 
$$0114117$phi = 0, $$2126 = 0, $$3125 = 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, 
$exitcond133 = 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $5 = $0 + 4 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $0 + 8 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $0 + 12 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $0 + 16 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = $0 + 20 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = $0 + 24 | 0;
+ $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $17 = $0 + 28 | 0;
+ $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $19 = $1 + 1 | 0;
+ $20 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $21 = $2 + 3 | 0;
+ SAFE_HEAP_STORE($21 >> 0 | 0, $20 | 0, 1);
+ $22 = $1 + 2 | 0;
+ $23 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+ $24 = $2 + 2 | 0;
+ SAFE_HEAP_STORE($24 >> 0 | 0, $23 | 0, 1);
+ $25 = $1 + 3 | 0;
+ $26 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+ $27 = $2 + 1 | 0;
+ SAFE_HEAP_STORE($27 >> 0 | 0, $26 | 0, 1);
+ $28 = $1 + 4 | 0;
+ $29 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($2 >> 0 | 0, $29 | 0, 1);
+ $30 = $2 + 4 | 0;
+ $31 = $1 + 5 | 0;
+ $32 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+ $33 = $30 + 3 | 0;
+ SAFE_HEAP_STORE($33 >> 0 | 0, $32 | 0, 1);
+ $34 = $1 + 6 | 0;
+ $35 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+ $36 = $30 + 2 | 0;
+ SAFE_HEAP_STORE($36 >> 0 | 0, $35 | 0, 1);
+ $37 = $1 + 7 | 0;
+ $38 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+ $39 = $30 + 1 | 0;
+ SAFE_HEAP_STORE($39 >> 0 | 0, $38 | 0, 1);
+ $40 = $1 + 8 | 0;
+ $41 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($30 >> 0 | 0, $41 | 0, 1);
+ $42 = $2 + 8 | 0;
+ $43 = $1 + 9 | 0;
+ $44 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $45 = $42 + 3 | 0;
+ SAFE_HEAP_STORE($45 >> 0 | 0, $44 | 0, 1);
+ $46 = $1 + 10 | 0;
+ $47 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+ $48 = $42 + 2 | 0;
+ SAFE_HEAP_STORE($48 >> 0 | 0, $47 | 0, 1);
+ $49 = $1 + 11 | 0;
+ $50 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+ $51 = $42 + 1 | 0;
+ SAFE_HEAP_STORE($51 >> 0 | 0, $50 | 0, 1);
+ $52 = $1 + 12 | 0;
+ $53 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($42 >> 0 | 0, $53 | 0, 1);
+ $54 = $2 + 12 | 0;
+ $55 = $1 + 13 | 0;
+ $56 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+ $57 = $54 + 3 | 0;
+ SAFE_HEAP_STORE($57 >> 0 | 0, $56 | 0, 1);
+ $58 = $1 + 14 | 0;
+ $59 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+ $60 = $54 + 2 | 0;
+ SAFE_HEAP_STORE($60 >> 0 | 0, $59 | 0, 1);
+ $61 = $1 + 15 | 0;
+ $62 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+ $63 = $54 + 1 | 0;
+ SAFE_HEAP_STORE($63 >> 0 | 0, $62 | 0, 1);
+ $64 = $1 + 16 | 0;
+ $65 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($54 >> 0 | 0, $65 | 0, 1);
+ $66 = $2 + 16 | 0;
+ $67 = $1 + 17 | 0;
+ $68 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+ $69 = $66 + 3 | 0;
+ SAFE_HEAP_STORE($69 >> 0 | 0, $68 | 0, 1);
+ $70 = $1 + 18 | 0;
+ $71 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+ $72 = $66 + 2 | 0;
+ SAFE_HEAP_STORE($72 >> 0 | 0, $71 | 0, 1);
+ $73 = $1 + 19 | 0;
+ $74 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+ $75 = $66 + 1 | 0;
+ SAFE_HEAP_STORE($75 >> 0 | 0, $74 | 0, 1);
+ $76 = $1 + 20 | 0;
+ $77 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($66 >> 0 | 0, $77 | 0, 1);
+ $78 = $2 + 20 | 0;
+ $79 = $1 + 21 | 0;
+ $80 = SAFE_HEAP_LOAD($76 >> 0 | 0, 1, 0) | 0 | 0;
+ $81 = $78 + 3 | 0;
+ SAFE_HEAP_STORE($81 >> 0 | 0, $80 | 0, 1);
+ $82 = $1 + 22 | 0;
+ $83 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+ $84 = $78 + 2 | 0;
+ SAFE_HEAP_STORE($84 >> 0 | 0, $83 | 0, 1);
+ $85 = $1 + 23 | 0;
+ $86 = SAFE_HEAP_LOAD($82 >> 0 | 0, 1, 0) | 0 | 0;
+ $87 = $78 + 1 | 0;
+ SAFE_HEAP_STORE($87 >> 0 | 0, $86 | 0, 1);
+ $88 = $1 + 24 | 0;
+ $89 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($78 >> 0 | 0, $89 | 0, 1);
+ $90 = $2 + 24 | 0;
+ $91 = $1 + 25 | 0;
+ $92 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $93 = $90 + 3 | 0;
+ SAFE_HEAP_STORE($93 >> 0 | 0, $92 | 0, 1);
+ $94 = $1 + 26 | 0;
+ $95 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+ $96 = $90 + 2 | 0;
+ SAFE_HEAP_STORE($96 >> 0 | 0, $95 | 0, 1);
+ $97 = $1 + 27 | 0;
+ $98 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+ $99 = $90 + 1 | 0;
+ SAFE_HEAP_STORE($99 >> 0 | 0, $98 | 0, 1);
+ $100 = $1 + 28 | 0;
+ $101 = SAFE_HEAP_LOAD($97 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($90 >> 0 | 0, $101 | 0, 1);
+ $102 = $2 + 28 | 0;
+ $103 = $1 + 29 | 0;
+ $104 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 0) | 0 | 0;
+ $105 = $102 + 3 | 0;
+ SAFE_HEAP_STORE($105 >> 0 | 0, $104 | 0, 1);
+ $106 = $1 + 30 | 0;
+ $107 = SAFE_HEAP_LOAD($103 >> 0 | 0, 1, 0) | 0 | 0;
+ $108 = $102 + 2 | 0;
+ SAFE_HEAP_STORE($108 >> 0 | 0, $107 | 0, 1);
+ $109 = $1 + 31 | 0;
+ $110 = SAFE_HEAP_LOAD($106 >> 0 | 0, 1, 0) | 0 | 0;
+ $111 = $102 + 1 | 0;
+ SAFE_HEAP_STORE($111 >> 0 | 0, $110 | 0, 1);
+ $112 = $1 + 32 | 0;
+ $113 = SAFE_HEAP_LOAD($109 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($102 >> 0 | 0, $113 | 0, 1);
+ $114 = $2 + 32 | 0;
+ $115 = $1 + 33 | 0;
+ $116 = SAFE_HEAP_LOAD($112 >> 0 | 0, 1, 0) | 0 | 0;
+ $117 = $114 + 3 | 0;
+ SAFE_HEAP_STORE($117 >> 0 | 0, $116 | 0, 1);
+ $118 = $1 + 34 | 0;
+ $119 = SAFE_HEAP_LOAD($115 >> 0 | 0, 1, 0) | 0 | 0;
+ $120 = $114 + 2 | 0;
+ SAFE_HEAP_STORE($120 >> 0 | 0, $119 | 0, 1);
+ $121 = $1 + 35 | 0;
+ $122 = SAFE_HEAP_LOAD($118 >> 0 | 0, 1, 0) | 0 | 0;
+ $123 = $114 + 1 | 0;
+ SAFE_HEAP_STORE($123 >> 0 | 0, $122 | 0, 1);
+ $124 = $1 + 36 | 0;
+ $125 = SAFE_HEAP_LOAD($121 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($114 >> 0 | 0, $125 | 0, 1);
+ $126 = $2 + 36 | 0;
+ $127 = $1 + 37 | 0;
+ $128 = SAFE_HEAP_LOAD($124 >> 0 | 0, 1, 0) | 0 | 0;
+ $129 = $126 + 3 | 0;
+ SAFE_HEAP_STORE($129 >> 0 | 0, $128 | 0, 1);
+ $130 = $1 + 38 | 0;
+ $131 = SAFE_HEAP_LOAD($127 >> 0 | 0, 1, 0) | 0 | 0;
+ $132 = $126 + 2 | 0;
+ SAFE_HEAP_STORE($132 >> 0 | 0, $131 | 0, 1);
+ $133 = $1 + 39 | 0;
+ $134 = SAFE_HEAP_LOAD($130 >> 0 | 0, 1, 0) | 0 | 0;
+ $135 = $126 + 1 | 0;
+ SAFE_HEAP_STORE($135 >> 0 | 0, $134 | 0, 1);
+ $136 = $1 + 40 | 0;
+ $137 = SAFE_HEAP_LOAD($133 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($126 >> 0 | 0, $137 | 0, 1);
+ $138 = $2 + 40 | 0;
+ $139 = $1 + 41 | 0;
+ $140 = SAFE_HEAP_LOAD($136 >> 0 | 0, 1, 0) | 0 | 0;
+ $141 = $138 + 3 | 0;
+ SAFE_HEAP_STORE($141 >> 0 | 0, $140 | 0, 1);
+ $142 = $1 + 42 | 0;
+ $143 = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 0) | 0 | 0;
+ $144 = $138 + 2 | 0;
+ SAFE_HEAP_STORE($144 >> 0 | 0, $143 | 0, 1);
+ $145 = $1 + 43 | 0;
+ $146 = SAFE_HEAP_LOAD($142 >> 0 | 0, 1, 0) | 0 | 0;
+ $147 = $138 + 1 | 0;
+ SAFE_HEAP_STORE($147 >> 0 | 0, $146 | 0, 1);
+ $148 = $1 + 44 | 0;
+ $149 = SAFE_HEAP_LOAD($145 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($138 >> 0 | 0, $149 | 0, 1);
+ $150 = $2 + 44 | 0;
+ $151 = $1 + 45 | 0;
+ $152 = SAFE_HEAP_LOAD($148 >> 0 | 0, 1, 0) | 0 | 0;
+ $153 = $150 + 3 | 0;
+ SAFE_HEAP_STORE($153 >> 0 | 0, $152 | 0, 1);
+ $154 = $1 + 46 | 0;
+ $155 = SAFE_HEAP_LOAD($151 >> 0 | 0, 1, 0) | 0 | 0;
+ $156 = $150 + 2 | 0;
+ SAFE_HEAP_STORE($156 >> 0 | 0, $155 | 0, 1);
+ $157 = $1 + 47 | 0;
+ $158 = SAFE_HEAP_LOAD($154 >> 0 | 0, 1, 0) | 0 | 0;
+ $159 = $150 + 1 | 0;
+ SAFE_HEAP_STORE($159 >> 0 | 0, $158 | 0, 1);
+ $160 = $1 + 48 | 0;
+ $161 = SAFE_HEAP_LOAD($157 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($150 >> 0 | 0, $161 | 0, 1);
+ $162 = $2 + 48 | 0;
+ $163 = $1 + 49 | 0;
+ $164 = SAFE_HEAP_LOAD($160 >> 0 | 0, 1, 0) | 0 | 0;
+ $165 = $162 + 3 | 0;
+ SAFE_HEAP_STORE($165 >> 0 | 0, $164 | 0, 1);
+ $166 = $1 + 50 | 0;
+ $167 = SAFE_HEAP_LOAD($163 >> 0 | 0, 1, 0) | 0 | 0;
+ $168 = $162 + 2 | 0;
+ SAFE_HEAP_STORE($168 >> 0 | 0, $167 | 0, 1);
+ $169 = $1 + 51 | 0;
+ $170 = SAFE_HEAP_LOAD($166 >> 0 | 0, 1, 0) | 0 | 0;
+ $171 = $162 + 1 | 0;
+ SAFE_HEAP_STORE($171 >> 0 | 0, $170 | 0, 1);
+ $172 = $1 + 52 | 0;
+ $173 = SAFE_HEAP_LOAD($169 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($162 >> 0 | 0, $173 | 0, 1);
+ $174 = $2 + 52 | 0;
+ $175 = $1 + 53 | 0;
+ $176 = SAFE_HEAP_LOAD($172 >> 0 | 0, 1, 0) | 0 | 0;
+ $177 = $174 + 3 | 0;
+ SAFE_HEAP_STORE($177 >> 0 | 0, $176 | 0, 1);
+ $178 = $1 + 54 | 0;
+ $179 = SAFE_HEAP_LOAD($175 >> 0 | 0, 1, 0) | 0 | 0;
+ $180 = $174 + 2 | 0;
+ SAFE_HEAP_STORE($180 >> 0 | 0, $179 | 0, 1);
+ $181 = $1 + 55 | 0;
+ $182 = SAFE_HEAP_LOAD($178 >> 0 | 0, 1, 0) | 0 | 0;
+ $183 = $174 + 1 | 0;
+ SAFE_HEAP_STORE($183 >> 0 | 0, $182 | 0, 1);
+ $184 = $1 + 56 | 0;
+ $185 = SAFE_HEAP_LOAD($181 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($174 >> 0 | 0, $185 | 0, 1);
+ $186 = $2 + 56 | 0;
+ $187 = $1 + 57 | 0;
+ $188 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+ $189 = $186 + 3 | 0;
+ SAFE_HEAP_STORE($189 >> 0 | 0, $188 | 0, 1);
+ $190 = $1 + 58 | 0;
+ $191 = SAFE_HEAP_LOAD($187 >> 0 | 0, 1, 0) | 0 | 0;
+ $192 = $186 + 2 | 0;
+ SAFE_HEAP_STORE($192 >> 0 | 0, $191 | 0, 1);
+ $193 = $1 + 59 | 0;
+ $194 = SAFE_HEAP_LOAD($190 >> 0 | 0, 1, 0) | 0 | 0;
+ $195 = $186 + 1 | 0;
+ SAFE_HEAP_STORE($195 >> 0 | 0, $194 | 0, 1);
+ $196 = $1 + 60 | 0;
+ $197 = SAFE_HEAP_LOAD($193 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($186 >> 0 | 0, $197 | 0, 1);
+ $198 = $2 + 60 | 0;
+ $199 = $1 + 61 | 0;
+ $200 = SAFE_HEAP_LOAD($196 >> 0 | 0, 1, 0) | 0 | 0;
+ $201 = $198 + 3 | 0;
+ SAFE_HEAP_STORE($201 >> 0 | 0, $200 | 0, 1);
+ $202 = $1 + 62 | 0;
+ $203 = SAFE_HEAP_LOAD($199 >> 0 | 0, 1, 0) | 0 | 0;
+ $204 = $198 + 2 | 0;
+ SAFE_HEAP_STORE($204 >> 0 | 0, $203 | 0, 1);
+ $205 = $1 + 63 | 0;
+ $206 = SAFE_HEAP_LOAD($202 >> 0 | 0, 1, 0) | 0 | 0;
+ $207 = $198 + 1 | 0;
+ SAFE_HEAP_STORE($207 >> 0 | 0, $206 | 0, 1);
+ $208 = SAFE_HEAP_LOAD($205 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($198 >> 0 | 0, $208 | 0, 1);
+ dest = $3;
+ src = $2;
+ stop = dest + 64 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 4, 0) | 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+  src = src + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $$pre = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $$2126 = 16;
+ $237 = $$pre;
+ while (1) {
+  $209 = $$2126 + -2 | 0;
+  $210 = $3 + ($209 << 2) | 0;
+  $211 = SAFE_HEAP_LOAD($210 | 0, 4, 0) | 0 | 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 = $$2126 + -7 | 0;
+  $222 = $3 + ($221 << 2) | 0;
+  $223 = SAFE_HEAP_LOAD($222 | 0, 4, 0) | 0 | 0;
+  $224 = $$2126 + -15 | 0;
+  $225 = $3 + ($224 << 2) | 0;
+  $226 = SAFE_HEAP_LOAD($225 | 0, 4, 0) | 0 | 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 + ($$2126 << 2) | 0;
+  SAFE_HEAP_STORE($240 | 0, $239 | 0, 4);
+  $241 = $$2126 + 1 | 0;
+  $exitcond133 = ($241 | 0) == 64;
+  if ($exitcond133) {
+   $$0107124 = $4;
+   $$0108123 = $18;
+   $$0109122 = $16;
+   $$0110121 = $14;
+   $$0111120 = $12;
+   $$0112119 = $10;
+   $$0113118 = $8;
+   $$0114117 = $6;
+   $$3125 = 0;
+   break;
+  } else {
+   $$2126 = $241;
+   $237 = $226;
+  }
+ }
+ while (1) {
+  $242 = $$0111120 >>> 6;
+  $243 = $$0111120 << 26;
+  $244 = $243 | $242;
+  $245 = $$0111120 >>> 11;
+  $246 = $$0111120 << 21;
+  $247 = $246 | $245;
+  $248 = $244 ^ $247;
+  $249 = $$0111120 >>> 25;
+  $250 = $$0111120 << 7;
+  $251 = $250 | $249;
+  $252 = $248 ^ $251;
+  $253 = $252 + $$0108123 | 0;
+  $254 = $$0109122 ^ $$0110121;
+  $255 = $254 & $$0111120;
+  $256 = $255 ^ $$0109122;
+  $257 = $253 + $256 | 0;
+  $258 = 12216 + ($$3125 << 2) | 0;
+  $259 = SAFE_HEAP_LOAD($258 | 0, 4, 0) | 0 | 0;
+  $260 = $257 + $259 | 0;
+  $261 = $3 + ($$3125 << 2) | 0;
+  $262 = SAFE_HEAP_LOAD($261 | 0, 4, 0) | 0 | 0;
+  $263 = $260 + $262 | 0;
+  $264 = $$0107124 >>> 2;
+  $265 = $$0107124 << 30;
+  $266 = $265 | $264;
+  $267 = $$0107124 >>> 13;
+  $268 = $$0107124 << 19;
+  $269 = $268 | $267;
+  $270 = $266 ^ $269;
+  $271 = $$0107124 >>> 22;
+  $272 = $$0107124 << 10;
+  $273 = $272 | $271;
+  $274 = $270 ^ $273;
+  $275 = $$0107124 & $$0114117;
+  $276 = $$0107124 | $$0114117;
+  $277 = $276 & $$0113118;
+  $278 = $277 | $275;
+  $279 = $274 + $278 | 0;
+  $280 = $263 + $$0112119 | 0;
+  $281 = $279 + $263 | 0;
+  $282 = $$3125 + 1 | 0;
+  $exitcond = ($282 | 0) == 64;
+  if ($exitcond) {
+   break;
+  } else {
+   $$0114117$phi = $$0107124;
+   $$0113118$phi = $$0114117;
+   $$0112119$phi = $$0113118;
+   $$0110121$phi = $$0111120;
+   $$0109122$phi = $$0110121;
+   $$0108123$phi = $$0109122;
+   $$0107124 = $281;
+   $$0111120 = $280;
+   $$3125 = $282;
+   $$0114117 = $$0114117$phi;
+   $$0113118 = $$0113118$phi;
+   $$0112119 = $$0112119$phi;
+   $$0110121 = $$0110121$phi;
+   $$0109122 = $$0109122$phi;
+   $$0108123 = $$0108123$phi;
+  }
+ }
+ $283 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $284 = $283 + $281 | 0;
+ SAFE_HEAP_STORE($0 | 0, $284 | 0, 4);
+ $285 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $286 = $285 + $$0107124 | 0;
+ SAFE_HEAP_STORE($5 | 0, $286 | 0, 4);
+ $287 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $288 = $287 + $$0114117 | 0;
+ SAFE_HEAP_STORE($7 | 0, $288 | 0, 4);
+ $289 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $290 = $289 + $$0113118 | 0;
+ SAFE_HEAP_STORE($9 | 0, $290 | 0, 4);
+ $291 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $292 = $291 + $280 | 0;
+ SAFE_HEAP_STORE($11 | 0, $292 | 0, 4);
+ $293 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $294 = $293 + $$0111120 | 0;
+ SAFE_HEAP_STORE($13 | 0, $294 | 0, 4);
+ $295 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $296 = $295 + $$0110121 | 0;
+ SAFE_HEAP_STORE($15 | 0, $296 | 0, 4);
+ $297 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $298 = $297 + $$0109122 | 0;
+ SAFE_HEAP_STORE($17 | 0, $298 | 0, 4);
+ STACKTOP = sp;
+ return;
+}
+
+function __gcry_hmac_selftest($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$022$i$i = 0, $$022$i20$i = 0, $$022$i28$i = 0, $$03246$i$i = 
0, $$035$i$i = 0, $$036$i$i = 0, $$037$i$i = 0, $$038$ph$i$i = 0, $$03948$i$i = 
0, $$143$i$i = 0, $$23442$i$i = 0, $$241$i$i = 0, $$340$i$i = 0, $$lcssa$i$i = 
0, $$lcssa$i15$i = 0, $$lcssa$i23$i = 0, $$lcssa$i31$i = 0, $$lcssa21$i$i = 0, 
$$lcssa21$i22$i = 0;
+ var $$lcssa21$i30$i = 0, $$lcssa41$i$i = 0, $$lcssa43$i$i = 0, $$lcssa44$i$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, $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, $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, $exitcond$i$i = 0, 
$exitcond47$i$i = 0, $exitcond49$i$i = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 144 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(144 | 0);
+ $3 = sp;
+ $4 = sp + 8 | 0;
+ $5 = __gcry_md_algo_info($0, 8, 0, 0) | 0;
+ $6 = ($5 | 0) == 0;
+ L1 : do {
+  if ($6) {
+   switch ($0 | 0) {
+   case 2:
+    {
+     $$03246$i$i = 0;
+     while (1) {
+      $7 = $$03246$i$i & 255;
+      $8 = $4 + $$03246$i$i | 0;
+      SAFE_HEAP_STORE($8 >> 0 | 0, $7 | 0, 1);
+      $9 = $$03246$i$i + 1 | 0;
+      $exitcond49$i$i = ($9 | 0) == 64;
+      if ($exitcond49$i$i) {
+       break;
+      } else {
+       $$03246$i$i = $9;
+      }
+     }
+     $10 = _check_one(2, 35867, 9, $4, 64, 35877, 20) | 0;
+     $11 = ($10 | 0) == (0 | 0);
+     if ($11) {
+      $12 = ($1 | 0) == 0;
+      if ($12) {
+       $$037$i$i = 0;
+      } else {
+       SAFE_HEAP_STORE($4 >> 0 | 0, 48 | 0, 1);
+       $13 = $4 + 1 | 0;
+       SAFE_HEAP_STORE($13 >> 0 | 0, 49 | 0, 1);
+       $14 = $4 + 2 | 0;
+       SAFE_HEAP_STORE($14 >> 0 | 0, 50 | 0, 1);
+       $15 = $4 + 3 | 0;
+       SAFE_HEAP_STORE($15 >> 0 | 0, 51 | 0, 1);
+       $16 = $4 + 4 | 0;
+       SAFE_HEAP_STORE($16 >> 0 | 0, 52 | 0, 1);
+       $17 = $4 + 5 | 0;
+       SAFE_HEAP_STORE($17 >> 0 | 0, 53 | 0, 1);
+       $18 = $4 + 6 | 0;
+       SAFE_HEAP_STORE($18 >> 0 | 0, 54 | 0, 1);
+       $19 = $4 + 7 | 0;
+       SAFE_HEAP_STORE($19 >> 0 | 0, 55 | 0, 1);
+       $20 = $4 + 8 | 0;
+       SAFE_HEAP_STORE($20 >> 0 | 0, 56 | 0, 1);
+       $21 = $4 + 9 | 0;
+       SAFE_HEAP_STORE($21 >> 0 | 0, 57 | 0, 1);
+       $22 = $4 + 10 | 0;
+       SAFE_HEAP_STORE($22 >> 0 | 0, 58 | 0, 1);
+       $23 = $4 + 11 | 0;
+       SAFE_HEAP_STORE($23 >> 0 | 0, 59 | 0, 1);
+       $24 = $4 + 12 | 0;
+       SAFE_HEAP_STORE($24 >> 0 | 0, 60 | 0, 1);
+       $25 = $4 + 13 | 0;
+       SAFE_HEAP_STORE($25 >> 0 | 0, 61 | 0, 1);
+       $26 = $4 + 14 | 0;
+       SAFE_HEAP_STORE($26 >> 0 | 0, 62 | 0, 1);
+       $27 = $4 + 15 | 0;
+       SAFE_HEAP_STORE($27 >> 0 | 0, 63 | 0, 1);
+       $28 = $4 + 16 | 0;
+       SAFE_HEAP_STORE($28 >> 0 | 0, 64 | 0, 1);
+       $29 = $4 + 17 | 0;
+       SAFE_HEAP_STORE($29 >> 0 | 0, 65 | 0, 1);
+       $30 = $4 + 18 | 0;
+       SAFE_HEAP_STORE($30 >> 0 | 0, 66 | 0, 1);
+       $31 = $4 + 19 | 0;
+       SAFE_HEAP_STORE($31 >> 0 | 0, 67 | 0, 1);
+       $32 = _check_one(2, 35898, 9, $4, 20, 35908, 20) | 0;
+       $33 = ($32 | 0) == (0 | 0);
+       if ($33) {
+        $$143$i$i = 80;
+        $$23442$i$i = 0;
+        while (1) {
+         $34 = $$143$i$i + 1 | 0;
+         $35 = $$143$i$i & 255;
+         $36 = $4 + $$23442$i$i | 0;
+         SAFE_HEAP_STORE($36 >> 0 | 0, $35 | 0, 1);
+         $37 = $$23442$i$i + 1 | 0;
+         $exitcond47$i$i = ($37 | 0) == 100;
+         if ($exitcond47$i$i) {
+          break;
+         } else {
+          $$143$i$i = $34;
+          $$23442$i$i = $37;
+         }
+        }
+        $38 = _check_one(2, 35929, 9, $4, 100, 35939, 20) | 0;
+        $39 = ($38 | 0) == (0 | 0);
+        if ($39) {
+         $$241$i$i = 112;
+         $$340$i$i = 0;
+         while (1) {
+          $40 = $$241$i$i + 1 | 0;
+          $41 = $$241$i$i & 255;
+          $42 = $4 + $$340$i$i | 0;
+          SAFE_HEAP_STORE($42 >> 0 | 0, $41 | 0, 1);
+          $43 = $$340$i$i + 1 | 0;
+          $exitcond$i$i = ($43 | 0) == 49;
+          if ($exitcond$i$i) {
+           break;
+          } else {
+           $$241$i$i = $40;
+           $$340$i$i = $43;
+          }
+         }
+         $44 = _check_one(2, 35960, 9, $4, 49, 35970, 20) | 0;
+         $45 = ($44 | 0) == (0 | 0);
+         if ($45) {
+          $$037$i$i = 0;
+         } else {
+          $$035$i$i = $44;
+          $$036$i$i = 36036;
+          label = 12;
+         }
+        } else {
+         $$035$i$i = $38;
+         $$036$i$i = 36021;
+         label = 12;
+        }
+       } else {
+        $$035$i$i = $32;
+        $$036$i$i = 36006;
+        label = 12;
+       }
+      }
+     } else {
+      $$035$i$i = $10;
+      $$036$i$i = 35991;
+      label = 12;
+     }
+     if ((label | 0) == 12) {
+      $46 = ($2 | 0) == (0 | 0);
+      if ($46) {
+       $$037$i$i = 50;
+      } else {
+       FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](36051, 2, 
$$036$i$i, $$035$i$i);
+       $$037$i$i = 50;
+      }
+     }
+     $$0 = $$037$i$i;
+     break L1;
+     break;
+    }
+   case 11:
+    {
+     $47 = SAFE_HEAP_LOAD(677 * 4 | 0, 4, 0) | 0 | 0;
+     $48 = ($47 | 0) == (0 | 0);
+     if ($48) {
+      $$0 = 0;
+      break L1;
+     }
+     $49 = ($1 | 0) == 0;
+     L23 : do {
+      if ($49) {
+       $50 = SAFE_HEAP_LOAD(2712 | 0, 4, 0) | 0 | 0;
+       $51 = _strlen($50) | 0;
+       $52 = SAFE_HEAP_LOAD(2716 | 0, 4, 0) | 0 | 0;
+       $53 = _strlen($52) | 0;
+       $54 = _check_one(11, $50, $51, $52, $53, 2720, 28) | 0;
+       $55 = ($54 | 0) == (0 | 0);
+       if ($55) {
+        $$0 = 0;
+        break L1;
+       } else {
+        $$lcssa$i$i = $54;
+        $$lcssa21$i$i = $47;
+       }
+      } else {
+       $$022$i$i = 0;
+       $169 = $47;
+       while (1) {
+        $56 = (2708 + ($$022$i$i * 40 | 0) | 0) + 4 | 0;
+        $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+        $58 = _strlen($57) | 0;
+        $59 = (2708 + ($$022$i$i * 40 | 0) | 0) + 8 | 0;
+        $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+        $61 = _strlen($60) | 0;
+        $62 = (2708 + ($$022$i$i * 40 | 0) | 0) + 12 | 0;
+        $63 = _check_one(11, $57, $58, $60, $61, $62, 28) | 0;
+        $64 = ($63 | 0) == (0 | 0);
+        if (!$64) {
+         $$lcssa$i$i = $63;
+         $$lcssa21$i$i = $169;
+         break L23;
+        }
+        $65 = $$022$i$i + 1 | 0;
+        $66 = 2708 + ($65 * 40 | 0) | 0;
+        $67 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+        $68 = ($67 | 0) == (0 | 0);
+        if ($68) {
+         $$0 = 0;
+         break L1;
+        } else {
+         $$022$i$i = $65;
+         $169 = $67;
+        }
+       }
+      }
+     } while (0);
+     $69 = ($2 | 0) == (0 | 0);
+     if ($69) {
+      $$0 = 50;
+      break L1;
+     }
+     FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](36051, 11, 
$$lcssa21$i$i, $$lcssa$i$i);
+     $$0 = 50;
+     break L1;
+     break;
+    }
+   case 8:
+    {
+     $70 = SAFE_HEAP_LOAD(747 * 4 | 0, 4, 0) | 0 | 0;
+     $71 = ($70 | 0) == (0 | 0);
+     if ($71) {
+      $$0 = 0;
+      break L1;
+     }
+     $72 = ($1 | 0) == 0;
+     L32 : do {
+      if ($72) {
+       $73 = SAFE_HEAP_LOAD(2992 | 0, 4, 0) | 0 | 0;
+       $74 = _strlen($73) | 0;
+       $75 = SAFE_HEAP_LOAD(2996 | 0, 4, 0) | 0 | 0;
+       $76 = _strlen($75) | 0;
+       $77 = _check_one(8, $73, $74, $75, $76, 3e3, 32) | 0;
+       $78 = ($77 | 0) == (0 | 0);
+       if ($78) {
+        $79 = SAFE_HEAP_LOAD(2996 | 0, 4, 0) | 0 | 0;
+        $80 = _strlen($79) | 0;
+        $81 = __gcry_hmac256_new($79, $80) | 0;
+        $82 = ($81 | 0) == (0 | 0);
+        if ($82) {
+         $$038$ph$i$i = 36056;
+         $117 = $70;
+        } else {
+         $83 = SAFE_HEAP_LOAD(2992 | 0, 4, 0) | 0 | 0;
+         $84 = _strlen($83) | 0;
+         __gcry_hmac256_update($81, $83, $84);
+         $85 = __gcry_hmac256_finalize($81, $3) | 0;
+         $86 = ($85 | 0) == (0 | 0);
+         if ($86) {
+          $$lcssa$i15$i = $81;
+          $$lcssa43$i$i = $70;
+          label = 33;
+         } else {
+          $87 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+          $88 = ($87 | 0) == 32;
+          if ($88) {
+           $89 = _memcmp($85, 3e3, 32) | 0;
+           $90 = ($89 | 0) == 0;
+           if ($90) {
+            __gcry_hmac256_release($81);
+            $$0 = 0;
+            break L1;
+           } else {
+            $$lcssa41$i$i = $81;
+            $$lcssa44$i$i = $70;
+            label = 36;
+           }
+          } else {
+           $$lcssa41$i$i = $81;
+           $$lcssa44$i$i = $70;
+           label = 36;
+          }
+         }
+        }
+       } else {
+        $$038$ph$i$i = $77;
+        $117 = $70;
+       }
+      } else {
+       $$03948$i$i = 0;
+       $170 = $70;
+       while (1) {
+        $91 = (2988 + ($$03948$i$i * 44 | 0) | 0) + 4 | 0;
+        $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+        $93 = _strlen($92) | 0;
+        $94 = (2988 + ($$03948$i$i * 44 | 0) | 0) + 8 | 0;
+        $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+        $96 = _strlen($95) | 0;
+        $97 = (2988 + ($$03948$i$i * 44 | 0) | 0) + 12 | 0;
+        $98 = _check_one(8, $92, $93, $95, $96, $97, 32) | 0;
+        $99 = ($98 | 0) == (0 | 0);
+        if (!$99) {
+         $$038$ph$i$i = $98;
+         $117 = $170;
+         break L32;
+        }
+        $100 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+        $101 = _strlen($100) | 0;
+        $102 = __gcry_hmac256_new($100, $101) | 0;
+        $103 = ($102 | 0) == (0 | 0);
+        if ($103) {
+         $$038$ph$i$i = 36056;
+         $117 = $170;
+         break L32;
+        }
+        $104 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+        $105 = _strlen($104) | 0;
+        __gcry_hmac256_update($102, $104, $105);
+        $106 = __gcry_hmac256_finalize($102, $3) | 0;
+        $107 = ($106 | 0) == (0 | 0);
+        if ($107) {
+         $$lcssa$i15$i = $102;
+         $$lcssa43$i$i = $170;
+         label = 33;
+         break L32;
+        }
+        $108 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+        $109 = ($108 | 0) == 32;
+        if (!$109) {
+         $$lcssa41$i$i = $102;
+         $$lcssa44$i$i = $170;
+         label = 36;
+         break L32;
+        }
+        $110 = _memcmp($106, $97, 32) | 0;
+        $111 = ($110 | 0) == 0;
+        if (!$111) {
+         $$lcssa41$i$i = $102;
+         $$lcssa44$i$i = $170;
+         label = 36;
+         break L32;
+        }
+        __gcry_hmac256_release($102);
+        $113 = $$03948$i$i + 1 | 0;
+        $114 = 2988 + ($113 * 44 | 0) | 0;
+        $115 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+        $116 = ($115 | 0) == (0 | 0);
+        if ($116) {
+         $$0 = 0;
+         break L1;
+        } else {
+         $$03948$i$i = $113;
+         $170 = $115;
+        }
+       }
+      }
+     } while (0);
+     if ((label | 0) == 33) {
+      __gcry_hmac256_release($$lcssa$i15$i);
+      $$038$ph$i$i = 36081;
+      $117 = $$lcssa43$i$i;
+     } else if ((label | 0) == 36) {
+      __gcry_hmac256_release($$lcssa41$i$i);
+      $$038$ph$i$i = 36111;
+      $117 = $$lcssa44$i$i;
+     }
+     $112 = ($2 | 0) == (0 | 0);
+     if ($112) {
+      $$0 = 50;
+      break L1;
+     }
+     FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](36051, 8, 
$117, $$038$ph$i$i);
+     $$0 = 50;
+     break L1;
+     break;
+    }
+   case 9:
+    {
+     $118 = SAFE_HEAP_LOAD(824 * 4 | 0, 4, 0) | 0 | 0;
+     $119 = ($118 | 0) == (0 | 0);
+     if ($119) {
+      $$0 = 0;
+      break L1;
+     }
+     $120 = ($1 | 0) == 0;
+     L53 : do {
+      if ($120) {
+       $121 = SAFE_HEAP_LOAD(3300 | 0, 4, 0) | 0 | 0;
+       $122 = _strlen($121) | 0;
+       $123 = SAFE_HEAP_LOAD(3304 | 0, 4, 0) | 0 | 0;
+       $124 = _strlen($123) | 0;
+       $125 = _check_one(9, $121, $122, $123, $124, 3308, 48) | 0;
+       $126 = ($125 | 0) == (0 | 0);
+       if ($126) {
+        $$0 = 0;
+        break L1;
+       } else {
+        $$lcssa$i23$i = $125;
+        $$lcssa21$i22$i = $118;
+       }
+      } else {
+       $$022$i20$i = 0;
+       $171 = $118;
+       while (1) {
+        $127 = (3296 + ($$022$i20$i * 60 | 0) | 0) + 4 | 0;
+        $128 = SAFE_HEAP_LOAD($127 | 0, 4, 0) | 0 | 0;
+        $129 = _strlen($128) | 0;
+        $130 = (3296 + ($$022$i20$i * 60 | 0) | 0) + 8 | 0;
+        $131 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+        $132 = _strlen($131) | 0;
+        $133 = (3296 + ($$022$i20$i * 60 | 0) | 0) + 12 | 0;
+        $134 = _check_one(9, $128, $129, $131, $132, $133, 48) | 0;
+        $135 = ($134 | 0) == (0 | 0);
+        if (!$135) {
+         $$lcssa$i23$i = $134;
+         $$lcssa21$i22$i = $171;
+         break L53;
+        }
+        $136 = $$022$i20$i + 1 | 0;
+        $137 = 3296 + ($136 * 60 | 0) | 0;
+        $138 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+        $139 = ($138 | 0) == (0 | 0);
+        if ($139) {
+         $$0 = 0;
+         break L1;
+        } else {
+         $$022$i20$i = $136;
+         $171 = $138;
+        }
+       }
+      }
+     } while (0);
+     $140 = ($2 | 0) == (0 | 0);
+     if ($140) {
+      $$0 = 50;
+      break L1;
+     }
+     FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](36051, 9, 
$$lcssa21$i22$i, $$lcssa$i23$i);
+     $$0 = 50;
+     break L1;
+     break;
+    }
+   case 10:
+    {
+     $141 = SAFE_HEAP_LOAD(929 * 4 | 0, 4, 0) | 0 | 0;
+     $142 = ($141 | 0) == (0 | 0);
+     if ($142) {
+      $$0 = 0;
+      break L1;
+     }
+     $143 = ($1 | 0) == 0;
+     L62 : do {
+      if ($143) {
+       $144 = SAFE_HEAP_LOAD(3720 | 0, 4, 0) | 0 | 0;
+       $145 = _strlen($144) | 0;
+       $146 = SAFE_HEAP_LOAD(3724 | 0, 4, 0) | 0 | 0;
+       $147 = _strlen($146) | 0;
+       $148 = _check_one(10, $144, $145, $146, $147, 3728, 64) | 0;
+       $149 = ($148 | 0) == (0 | 0);
+       if ($149) {
+        $$0 = 0;
+        break L1;
+       } else {
+        $$lcssa$i31$i = $148;
+        $$lcssa21$i30$i = $141;
+       }
+      } else {
+       $$022$i28$i = 0;
+       $172 = $141;
+       while (1) {
+        $150 = (3716 + ($$022$i28$i * 76 | 0) | 0) + 4 | 0;
+        $151 = SAFE_HEAP_LOAD($150 | 0, 4, 0) | 0 | 0;
+        $152 = _strlen($151) | 0;
+        $153 = (3716 + ($$022$i28$i * 76 | 0) | 0) + 8 | 0;
+        $154 = SAFE_HEAP_LOAD($153 | 0, 4, 0) | 0 | 0;
+        $155 = _strlen($154) | 0;
+        $156 = (3716 + ($$022$i28$i * 76 | 0) | 0) + 12 | 0;
+        $157 = _check_one(10, $151, $152, $154, $155, $156, 64) | 0;
+        $158 = ($157 | 0) == (0 | 0);
+        if (!$158) {
+         $$lcssa$i31$i = $157;
+         $$lcssa21$i30$i = $172;
+         break L62;
+        }
+        $159 = $$022$i28$i + 1 | 0;
+        $160 = 3716 + ($159 * 76 | 0) | 0;
+        $161 = SAFE_HEAP_LOAD($160 | 0, 4, 0) | 0 | 0;
+        $162 = ($161 | 0) == (0 | 0);
+        if ($162) {
+         $$0 = 0;
+         break L1;
+        } else {
+         $$022$i28$i = $159;
+         $172 = $161;
+        }
+       }
+      }
+     } while (0);
+     $163 = ($2 | 0) == (0 | 0);
+     if ($163) {
+      $$0 = 50;
+      break L1;
+     }
+     FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](36051, 10, 
$$lcssa21$i30$i, $$lcssa$i31$i);
+     $$0 = 50;
+     break L1;
+     break;
+    }
+   default:
+    {
+     $$0 = 5;
+     break L1;
+    }
+   }
+  } else {
+   $164 = ($2 | 0) == (0 | 0);
+   if ($164) {
+    $$0 = 5;
+   } else {
+    FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](36051, $0, 
37758, 36151);
+    $$0 = 5;
+   }
+  }
+ } while (0);
+ $165 = ($$0 | 0) == 0;
+ $166 = $$0 & 65535;
+ $167 = $166 | 16777216;
+ $168 = $165 ? 0 : $167;
+ STACKTOP = sp;
+ return $168 | 0;
+}
+
+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 $vararg_buffer1 = 0, $vararg_ptr3 = 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;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ switch ($4 | 0) {
+ case 0:
+  {
+   $5 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+   $6 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+   $7 = __gcry_mpi_cmp($5, $6) | 0;
+   $8 = ($7 | 0) == 0;
+   if ($8) {
+    $9 = $1 + 4 | 0;
+    $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    $11 = $2 + 4 | 0;
+    $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    $13 = __gcry_mpi_cmp($10, $12) | 0;
+    $14 = ($13 | 0) == 0;
+    if ($14) {
+     $15 = $1 + 8 | 0;
+     $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+     $17 = $2 + 8 | 0;
+     $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   $23 = __gcry_mpi_cmp_ui($22, 0) | 0;
+   $24 = ($23 | 0) == 0;
+   if ($24) {
+    $25 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    $26 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($25, $26) | 0;
+    $27 = $0 + 4 | 0;
+    $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+    $29 = $2 + 4 | 0;
+    $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($28, $30) | 0;
+    $31 = $0 + 8 | 0;
+    $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+    $33 = $2 + 8 | 0;
+    $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($32, $34) | 0;
+    STACKTOP = sp;
+    return;
+   }
+   $35 = $2 + 8 | 0;
+   $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+   $37 = __gcry_mpi_cmp_ui($36, 0) | 0;
+   $38 = ($37 | 0) == 0;
+   if ($38) {
+    $39 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    $40 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($39, $40) | 0;
+    $41 = $0 + 4 | 0;
+    $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+    $43 = $1 + 4 | 0;
+    $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($42, $44) | 0;
+    $45 = $0 + 8 | 0;
+    $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+    $47 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($46, $47) | 0;
+    STACKTOP = sp;
+    return;
+   }
+   $48 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   $49 = __gcry_mpi_cmp_ui($48, 1) | 0;
+   $50 = ($49 | 0) == 0;
+   $51 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+   $52 = __gcry_mpi_cmp_ui($51, 1) | 0;
+   $53 = ($52 | 0) == 0;
+   $54 = $3 + 64 | 0;
+   $55 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+   do {
+    if ($53) {
+     $56 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_set($55, $56) | 0;
+    } else {
+     $57 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($55, $57, $57);
+     $58 = $3 + 60 | 0;
+     $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+     $60 = ($59 | 0) == (0 | 0);
+     if ($60) {
+      $61 = $3 + 16 | 0;
+      $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($55, $55, $62);
+     } else {
+      __gcry_mpi_mod_barrett($55, $55, $59);
+     }
+     $63 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+     $64 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($63, $63, $64);
+     $65 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+     $66 = ($65 | 0) == (0 | 0);
+     if ($66) {
+      $67 = $3 + 16 | 0;
+      $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($63, $63, $68);
+      break;
+     } else {
+      __gcry_mpi_mod_barrett($63, $63, $65);
+      break;
+     }
+    }
+   } while (0);
+   $69 = $3 + 68 | 0;
+   $70 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+   do {
+    if ($50) {
+     $71 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_set($70, $71) | 0;
+     $$pre$i = $3 + 60 | 0;
+     $$pre$phi$iZ2D = $$pre$i;
+    } else {
+     $72 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($70, $72, $72);
+     $73 = $3 + 60 | 0;
+     $74 = SAFE_HEAP_LOAD($73 | 0, 4, 0) | 0 | 0;
+     $75 = ($74 | 0) == (0 | 0);
+     if ($75) {
+      $76 = $3 + 16 | 0;
+      $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mod($70, $70, $77);
+     } else {
+      __gcry_mpi_mod_barrett($70, $70, $74);
+     }
+     $78 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+     $79 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($78, $78, $79);
+     $80 = SAFE_HEAP_LOAD($73 | 0, 4, 0) | 0 | 0;
+     $81 = ($80 | 0) == (0 | 0);
+     if ($81) {
+      $82 = $3 + 16 | 0;
+      $83 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+   $86 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+   $87 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_sub($85, $86, $87);
+   $88 = $3 + 76 | 0;
+   $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+   $90 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+   $91 = __gcry_mpi_const(3) | 0;
+   $$idx130$i = $3 + 16 | 0;
+   $$idx130$val$i = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_powm($89, $90, $91, $$idx130$val$i);
+   $92 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+   $93 = $1 + 4 | 0;
+   $94 = SAFE_HEAP_LOAD($93 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($92, $92, $94);
+   $95 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $96 = ($95 | 0) == (0 | 0);
+   if ($96) {
+    $97 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($92, $92, $97);
+   } else {
+    __gcry_mpi_mod_barrett($92, $92, $95);
+   }
+   $98 = $3 + 80 | 0;
+   $99 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+   $100 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   $101 = __gcry_mpi_const(3) | 0;
+   $$idx129$val$i = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_powm($99, $100, $101, $$idx129$val$i);
+   $102 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+   $103 = $2 + 4 | 0;
+   $104 = SAFE_HEAP_LOAD($103 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($102, $102, $104);
+   $105 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $106 = ($105 | 0) == (0 | 0);
+   if ($106) {
+    $107 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($102, $102, $107);
+   } else {
+    __gcry_mpi_mod_barrett($102, $102, $105);
+   }
+   $108 = $3 + 84 | 0;
+   $109 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+   $110 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+   $111 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_sub($109, $110, $111);
+   $112 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+   $113 = __gcry_mpi_cmp_ui($112, 0) | 0;
+   $114 = ($113 | 0) == 0;
+   if ($114) {
+    $115 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_set_ui($118, 1) | 0;
+     $119 = $0 + 4 | 0;
+     $120 = SAFE_HEAP_LOAD($119 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_set_ui($120, 1) | 0;
+     $121 = $0 + 8 | 0;
+     $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_set_ui($122, 0) | 0;
+     STACKTOP = sp;
+     return;
+    }
+   }
+   $123 = $3 + 88 | 0;
+   $124 = SAFE_HEAP_LOAD($123 | 0, 4, 0) | 0 | 0;
+   $125 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+   $126 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_add($124, $125, $126);
+   $127 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $128 = ($127 | 0) == (0 | 0);
+   if ($128) {
+    $129 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($124, $124, $129);
+   } else {
+    __gcry_mpi_mod_barrett($124, $124, $127);
+   }
+   $130 = $3 + 92 | 0;
+   $131 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+   $132 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+   $133 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_add($131, $132, $133);
+   $134 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $135 = ($134 | 0) == (0 | 0);
+   if ($135) {
+    $136 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($131, $131, $136);
+   } else {
+    __gcry_mpi_mod_barrett($131, $131, $134);
+   }
+   $137 = $0 + 8 | 0;
+   $138 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+   $139 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   $140 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($138, $139, $140);
+   $141 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $142 = ($141 | 0) == (0 | 0);
+   if ($142) {
+    $143 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($138, $138, $143);
+   } else {
+    __gcry_mpi_mod_barrett($138, $138, $141);
+   }
+   $144 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+   $145 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($144, $144, $145);
+   $146 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $147 = ($146 | 0) == (0 | 0);
+   if ($147) {
+    $148 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($144, $144, $148);
+   } else {
+    __gcry_mpi_mod_barrett($144, $144, $146);
+   }
+   $149 = $3 + 100 | 0;
+   $150 = SAFE_HEAP_LOAD($149 | 0, 4, 0) | 0 | 0;
+   $151 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($150, $151, $151);
+   $152 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $153 = ($152 | 0) == (0 | 0);
+   if ($153) {
+    $154 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($150, $150, $154);
+   } else {
+    __gcry_mpi_mod_barrett($150, $150, $152);
+   }
+   $155 = $3 + 104 | 0;
+   $156 = SAFE_HEAP_LOAD($155 | 0, 4, 0) | 0 | 0;
+   $157 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($156, $157, $157);
+   $158 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $159 = ($158 | 0) == (0 | 0);
+   if ($159) {
+    $160 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($156, $156, $160);
+   } else {
+    __gcry_mpi_mod_barrett($156, $156, $158);
+   }
+   $161 = SAFE_HEAP_LOAD($155 | 0, 4, 0) | 0 | 0;
+   $162 = SAFE_HEAP_LOAD($123 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($161, $161, $162);
+   $163 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $164 = ($163 | 0) == (0 | 0);
+   if ($164) {
+    $165 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($161, $161, $165);
+   } else {
+    __gcry_mpi_mod_barrett($161, $161, $163);
+   }
+   $166 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $167 = SAFE_HEAP_LOAD($149 | 0, 4, 0) | 0 | 0;
+   $168 = SAFE_HEAP_LOAD($155 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_sub($166, $167, $168);
+   $169 = SAFE_HEAP_LOAD($149 | 0, 4, 0) | 0 | 0;
+   $170 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_lshift($169, $170, 1);
+   $171 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $172 = ($171 | 0) == (0 | 0);
+   if ($172) {
+    $173 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($169, $169, $173);
+   } else {
+    __gcry_mpi_mod_barrett($169, $169, $171);
+   }
+   $174 = $3 + 96 | 0;
+   $175 = SAFE_HEAP_LOAD($174 | 0, 4, 0) | 0 | 0;
+   $176 = SAFE_HEAP_LOAD($155 | 0, 4, 0) | 0 | 0;
+   $177 = SAFE_HEAP_LOAD($149 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_sub($175, $176, $177);
+   $178 = SAFE_HEAP_LOAD($174 | 0, 4, 0) | 0 | 0;
+   $179 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($178, $178, $179);
+   $180 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $181 = ($180 | 0) == (0 | 0);
+   if ($181) {
+    $182 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($178, $178, $182);
+   } else {
+    __gcry_mpi_mod_barrett($178, $178, $180);
+   }
+   $183 = SAFE_HEAP_LOAD($149 | 0, 4, 0) | 0 | 0;
+   $184 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+   $185 = __gcry_mpi_const(3) | 0;
+   $$idx$val$i = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_powm($183, $184, $185, $$idx$val$i);
+   $186 = SAFE_HEAP_LOAD($149 | 0, 4, 0) | 0 | 0;
+   $187 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($186, $186, $187);
+   $188 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $189 = ($188 | 0) == (0 | 0);
+   if ($189) {
+    $190 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($186, $186, $190);
+   } else {
+    __gcry_mpi_mod_barrett($186, $186, $188);
+   }
+   $191 = $0 + 4 | 0;
+   $192 = SAFE_HEAP_LOAD($191 | 0, 4, 0) | 0 | 0;
+   $193 = SAFE_HEAP_LOAD($174 | 0, 4, 0) | 0 | 0;
+   $194 = SAFE_HEAP_LOAD($149 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_sub($192, $193, $194);
+   $195 = SAFE_HEAP_LOAD($191 | 0, 4, 0) | 0 | 0;
+   $196 = $3 + 48 | 0;
+   $197 = SAFE_HEAP_LOAD($196 >> 0 | 0, 1, 0) | 0 | 0;
+   $198 = $197 & 2;
+   $199 = $198 << 24 >> 24 == 0;
+   do {
+    if ($199) {
+     $200 = $197 | 2;
+     SAFE_HEAP_STORE($196 >> 0 | 0, $200 | 0, 1);
+     $201 = $3 + 56 | 0;
+     $202 = SAFE_HEAP_LOAD($201 | 0, 4, 0) | 0 | 0;
+     $203 = ($202 | 0) == (0 | 0);
+     if ($203) {
+      $204 = __gcry_mpi_alloc(0) | 0;
+      SAFE_HEAP_STORE($201 | 0, $204 | 0, 4);
+      $207 = $204;
+     } else {
+      $207 = $202;
+     }
+     $205 = __gcry_mpi_const(2) | 0;
+     $206 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+     $208 = __gcry_mpi_invm($207, $205, $206) | 0;
+     $209 = ($208 | 0) == 0;
+     if (!$209) {
+      $$pre$phi$i$iZ2D = $201;
+      break;
+     }
+     __gcry_log_error(45341, $vararg_buffer);
+     __gcry_log_printmpi(45375, $205);
+     $210 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(45379, $210);
+     $$pre$phi$i$iZ2D = $201;
+    } else {
+     $$pre$i$i = $3 + 56 | 0;
+     $$pre$phi$i$iZ2D = $$pre$i$i;
+    }
+   } while (0);
+   $211 = SAFE_HEAP_LOAD($$pre$phi$i$iZ2D | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($195, $195, $211);
+   $212 = SAFE_HEAP_LOAD($$pre$phi$iZ2D | 0, 4, 0) | 0 | 0;
+   $213 = ($212 | 0) == (0 | 0);
+   if ($213) {
+    $214 = SAFE_HEAP_LOAD($$idx130$i | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($195, $195, $214);
+    STACKTOP = sp;
+    return;
+   } else {
+    __gcry_mpi_mod_barrett($195, $195, $212);
+    STACKTOP = sp;
+    return;
+   }
+   break;
+  }
+ case 1:
+  {
+   SAFE_HEAP_STORE($vararg_buffer1 | 0, 45531 | 0, 4);
+   $vararg_ptr3 = $vararg_buffer1 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr3 | 0, 45456 | 0, 4);
+   __gcry_log_fatal(45482, $vararg_buffer1);
+   break;
+  }
+ case 2:
+  {
+   _add_points_edwards($0, $1, $2, $3);
+   STACKTOP = sp;
+   return;
+   break;
+  }
+ default:
+  {
+   STACKTOP = sp;
+   return;
+  }
+ }
+}
+
+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, $$$105$i = 0, $$$i = 0, $$0$i = 0, $$0100 = 0, $$0125$i = 0, 
$$020$i = 0, $$020$i104 = 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, $$095107$i = 0, $$096$i = 0, $$098127$i = 0, $$099126$i = 0;
+ var $$1 = 0, $$1$i = 0, $$105$i = 0, $$1100122$i = 0, $$14756$i = 0, 
$$14955$i = 0, $$157$i = 0, $$192128$i = 0, $$197$i = 0, $$2$i = 0, $$2129$i = 
0, $$293123$i = 0, $$3124$i = 0, $$4109$i = 0, $$lobit = 0, $$lobit$i = 0, 
$$lobit101 = 0, $$off = 0, $$off$i = 0, $$off103$i = 0;
+ var $$off104$i = 0, $$pn$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, $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, $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, $exitcond$i = 0, 
$exitcond$i105 = 0, $or$cond = 0, $or$cond102 = 0, $or$cond103 = 0, label = 0;
+ var sp = 0;
+ sp = STACKTOP;
+ $5 = ($2 | 0) == (0 | 0);
+ if ($5) {
+  $196 = 0;
+ } else {
+  $6 = __gcry_is_secure($2) | 0;
+  $7 = ($6 | 0) != 0;
+  $196 = $7;
+ }
+ $8 = ($1 | 0) == 3;
+ $$ = $8 ? 0 : $3;
+ switch ($1 | 0) {
+ case 1:
+  {
+   $9 = $$ + 3 | 0;
+   $10 = $9 >>> 2;
+   if ($196) {
+    $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 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+    $16 = $15 << 24 >> 24 < 0;
+    $$lobit101 = ($15 & 255) >>> 7;
+    $17 = $$lobit101 & 255;
+    $18 = $14 + 8 | 0;
+    SAFE_HEAP_STORE($18 | 0, $17 | 0, 4);
+    if ($16) {
+     $19 = __gcry_mpi_get_nbits($14) | 0;
+     $20 = $14 + 12 | 0;
+     $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+     $22 = $21 & 16;
+     $23 = ($22 | 0) == 0;
+     if ($23) {
+      __gcry_mpi_normalize($14);
+      $24 = $14 + 16 | 0;
+      $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+      $26 = $14 + 4 | 0;
+      $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+      $28 = ($27 | 0) == 0;
+      if (!$28) {
+       $$020$i = 0;
+       while (1) {
+        $29 = $25 + ($$020$i << 2) | 0;
+        $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+        $31 = $30 ^ -1;
+        SAFE_HEAP_STORE($29 | 0, $31 | 0, 4);
+        $32 = $$020$i + 1 | 0;
+        $exitcond$i = ($32 | 0) == ($27 | 0);
+        if ($exitcond$i) {
+         break;
+        } else {
+         $$020$i = $32;
+        }
+       }
+      }
+      SAFE_HEAP_STORE($18 | 0, 0 | 0, 4);
+      $33 = $19 + -1 | 0;
+      __gcry_mpi_clear_highbit($14, $33);
+     } else {
+      __gcry_mpi_immutable_failed();
+     }
+     __gcry_mpi_add_ui($14, $14, 1);
+     SAFE_HEAP_STORE($18 | 0, 1 | 0, 4);
+    }
+   }
+   $34 = ($0 | 0) == (0 | 0);
+   if ($34) {
+    __gcry_mpi_free($14);
+   } else {
+    __gcry_mpi_normalize($14);
+    SAFE_HEAP_STORE($0 | 0, $14 | 0, 4);
+   }
+   $35 = ($4 | 0) == (0 | 0);
+   if ($35) {
+    $$1 = 0;
+    return $$1 | 0;
+   }
+   SAFE_HEAP_STORE($4 | 0, $$ | 0, 4);
+   $$1 = 0;
+   return $$1 | 0;
+   break;
+  }
+ case 5:
+  {
+   $36 = $$ + 3 | 0;
+   $37 = $36 >>> 2;
+   if ($196) {
+    $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);
+    SAFE_HEAP_STORE($0 | 0, $41 | 0, 4);
+   }
+   $43 = ($4 | 0) == (0 | 0);
+   if ($43) {
+    $$1 = 0;
+    return $$1 | 0;
+   }
+   SAFE_HEAP_STORE($4 | 0, $$ | 0, 4);
+   $$1 = 0;
+   return $$1 | 0;
+   break;
+  }
+ case 2:
+  {
+   $44 = $$ >>> 0 < 2;
+   L137 : do {
+    if ($44) {
+     $$0$i = 0;
+     $$2$i = 0;
+    } else {
+     $45 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+     $46 = $45 & 255;
+     $47 = $46 << 8;
+     $48 = $2 + 1 | 0;
+     $49 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 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 ($196) {
+       $58 = __gcry_mpi_alloc_secure($57) | 0;
+       $61 = $58;
+      } else {
+       $59 = __gcry_mpi_alloc($57) | 0;
+       $61 = $59;
+      }
+      $60 = $61 + 4 | 0;
+      SAFE_HEAP_STORE($60 | 0, $57 | 0, 4);
+      $62 = $61 + 8 | 0;
+      SAFE_HEAP_STORE($62 | 0, 0 | 0, 4);
+      $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;
+       L145 : 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 L145;
+         }
+         $69 = $$04458$i << 8;
+         $70 = $$14756$i + 1 | 0;
+         $71 = SAFE_HEAP_LOAD($$14756$i >> 0 | 0, 1, 0) | 0 | 0;
+         $72 = $71 & 255;
+         $73 = $72 | $69;
+         $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 = $$05059$i + -1 | 0;
+        $77 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+        $78 = $77 + ($76 << 2) | 0;
+        SAFE_HEAP_STORE($78 | 0, $73 | 0, 4);
+        $79 = ($$05059$i | 0) > 1;
+        if ($79) {
+         $$04562$i = $67;
+         $$04661$i = $70;
+         $$04860$i = 0;
+         $$05059$i = $76;
+        } else {
+         $$0$i = $61;
+         $$2$i = $67;
+         break L137;
+        }
+       }
+       __gcry_mpi_free($61);
+       $$0$i = 0;
+       $$2$i = $67;
+      }
+     }
+    }
+   } while (0);
+   $80 = ($4 | 0) == (0 | 0);
+   if (!$80) {
+    SAFE_HEAP_STORE($4 | 0, $$2$i | 0, 4);
+   }
+   $81 = ($0 | 0) != (0 | 0);
+   $82 = ($$0$i | 0) != (0 | 0);
+   $or$cond = $81 & $82;
+   if ($or$cond) {
+    __gcry_mpi_normalize($$0$i);
+    SAFE_HEAP_STORE($0 | 0, $$0$i | 0, 4);
+    $$0100 = $$0$i;
+   } else {
+    if ($82) {
+     __gcry_mpi_free($$0$i);
+     $$0100 = 0;
+    } else {
+     $$0100 = 0;
+    }
+   }
+   $83 = ($$0100 | 0) != (0 | 0);
+   $84 = $83 ? 0 : 65;
+   $$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 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+    $88 = $87 & 255;
+    $89 = $88 << 24;
+    $90 = $2 + 1 | 0;
+    $91 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 0) | 0 | 0;
+    $92 = $91 & 255;
+    $93 = $92 << 16;
+    $94 = $93 | $89;
+    $95 = $2 + 2 | 0;
+    $96 = SAFE_HEAP_LOAD($95 >> 0 | 0, 1, 0) | 0 | 0;
+    $97 = $96 & 255;
+    $98 = $97 << 8;
+    $99 = $94 | $98;
+    $100 = $2 + 3 | 0;
+    $101 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 0) | 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 ($196) {
+     $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 = SAFE_HEAP_LOAD($104 >> 0 | 0, 1, 0) | 0 | 0;
+     $116 = $115 << 24 >> 24 < 0;
+     $$lobit = ($115 & 255) >>> 7;
+     $117 = $$lobit & 255;
+     $118 = $114 + 8 | 0;
+     SAFE_HEAP_STORE($118 | 0, $117 | 0, 4);
+     if ($116) {
+      $119 = __gcry_mpi_get_nbits($114) | 0;
+      $120 = $114 + 12 | 0;
+      $121 = SAFE_HEAP_LOAD($120 | 0, 4, 0) | 0 | 0;
+      $122 = $121 & 16;
+      $123 = ($122 | 0) == 0;
+      if ($123) {
+       __gcry_mpi_normalize($114);
+       $124 = $114 + 16 | 0;
+       $125 = SAFE_HEAP_LOAD($124 | 0, 4, 0) | 0 | 0;
+       $126 = $114 + 4 | 0;
+       $127 = SAFE_HEAP_LOAD($126 | 0, 4, 0) | 0 | 0;
+       $128 = ($127 | 0) == 0;
+       if (!$128) {
+        $$020$i104 = 0;
+        while (1) {
+         $129 = $125 + ($$020$i104 << 2) | 0;
+         $130 = SAFE_HEAP_LOAD($129 | 0, 4, 0) | 0 | 0;
+         $131 = $130 ^ -1;
+         SAFE_HEAP_STORE($129 | 0, $131 | 0, 4);
+         $132 = $$020$i104 + 1 | 0;
+         $exitcond$i105 = ($132 | 0) == ($127 | 0);
+         if ($exitcond$i105) {
+          break;
+         } else {
+          $$020$i104 = $132;
+         }
+        }
+       }
+       SAFE_HEAP_STORE($118 | 0, 0 | 0, 4);
+       $133 = $119 + -1 | 0;
+       __gcry_mpi_clear_highbit($114, $133);
+      } else {
+       __gcry_mpi_immutable_failed();
+      }
+      __gcry_mpi_add_ui($114, $114, 1);
+      SAFE_HEAP_STORE($118 | 0, 1 | 0, 4);
+     }
+    }
+    $134 = ($4 | 0) == (0 | 0);
+    if (!$134) {
+     SAFE_HEAP_STORE($4 | 0, $108 | 0, 4);
+    }
+    $135 = ($0 | 0) == (0 | 0);
+    if ($135) {
+     __gcry_mpi_free($114);
+     $$1 = 0;
+     return $$1 | 0;
+    } else {
+     __gcry_mpi_normalize($114);
+     SAFE_HEAP_STORE($0 | 0, $114 | 0, 4);
+     $$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 ($196) {
+    $138 = __gcry_mpi_alloc_secure(0) | 0;
+    $156 = $138;
+   } else {
+    $139 = __gcry_mpi_alloc(0) | 0;
+    $156 = $139;
+   }
+   $140 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+   $141 = $140 << 24 >> 24 == 45;
+   $142 = $2 + 1 | 0;
+   $$$i = $141 & 1;
+   $$105$i = $141 ? $142 : $2;
+   $143 = SAFE_HEAP_LOAD($$105$i >> 0 | 0, 1, 0) | 0 | 0;
+   $144 = $143 << 24 >> 24 == 48;
+   if ($144) {
+    $145 = $$105$i + 1 | 0;
+    $146 = SAFE_HEAP_LOAD($145 >> 0 | 0, 1, 0) | 0 | 0;
+    $147 = $146 << 24 >> 24 == 120;
+    $148 = $$105$i + 2 | 0;
+    $$$105$i = $147 ? $148 : $$105$i;
+    $$1$i = $$$105$i;
+   } else {
+    $$1$i = $$105$i;
+   }
+   $149 = _strlen($$1$i) | 0;
+   $150 = $149 << 2;
+   $$lobit$i = $149 & 1;
+   $151 = $150 + 7 | 0;
+   $152 = $151 >>> 3;
+   $153 = $152 + 3 | 0;
+   $154 = $153 >>> 2;
+   $155 = SAFE_HEAP_LOAD($156 | 0, 4, 0) | 0 | 0;
+   $157 = $155 >>> 0 < $154 >>> 0;
+   if ($157) {
+    __gcry_mpi_resize($156, $154);
+   }
+   $158 = $156 + 4 | 0;
+   SAFE_HEAP_STORE($158 | 0, $154 | 0, 4);
+   $159 = $156 + 8 | 0;
+   SAFE_HEAP_STORE($159 | 0, $$$i | 0, 4);
+   $160 = ($154 | 0) == 0;
+   L53 : do {
+    if (!$160) {
+     $161 = 0 - $152 | 0;
+     $162 = $161 & 3;
+     $163 = $156 + 16 | 0;
+     $$098127$i = $154;
+     $$099126$i = $162;
+     $$192128$i = $$lobit$i;
+     $$2129$i = $$1$i;
+     L55 : while (1) {
+      $$0125$i = 0;
+      $$1100122$i = $$099126$i;
+      $$293123$i = $$192128$i;
+      $$3124$i = $$2129$i;
+      while (1) {
+       $164 = ($$293123$i | 0) == 0;
+       if ($164) {
+        $165 = $$3124$i + 1 | 0;
+        $166 = SAFE_HEAP_LOAD($$3124$i >> 0 | 0, 1, 0) | 0 | 0;
+        $167 = $166 << 24 >> 24;
+        $168 = $166 << 24 >> 24 == 0;
+        if ($168) {
+         label = 82;
+         break L55;
+        } else {
+         $$095107$i = $167;
+         $$4109$i = $165;
+        }
+       } else {
+        $$095107$i = 48;
+        $$4109$i = $$3124$i;
+       }
+       $169 = $$4109$i + 1 | 0;
+       $170 = SAFE_HEAP_LOAD($$4109$i >> 0 | 0, 1, 0) | 0 | 0;
+       $171 = $170 << 24 >> 24;
+       $172 = $170 << 24 >> 24 == 0;
+       if ($172) {
+        label = 84;
+        break L55;
+       }
+       $$095$off$i = $$095107$i + -48 | 0;
+       $173 = $$095$off$i >>> 0 < 10;
+       do {
+        if ($173) {
+         $$096$i = $$095$off$i;
+        } else {
+         $$095$off101$i = $$095107$i + -97 | 0;
+         $174 = $$095$off101$i >>> 0 < 6;
+         if ($174) {
+          $175 = $$095107$i + -87 | 0;
+          $$096$i = $175;
+          break;
+         }
+         $$095$off102$i = $$095107$i + -65 | 0;
+         $176 = $$095$off102$i >>> 0 < 6;
+         if (!$176) {
+          label = 90;
+          break L55;
+         }
+         $177 = $$095107$i + -55 | 0;
+         $$096$i = $177;
+        }
+       } while (0);
+       $178 = $$096$i << 4;
+       $$off$i = $170 + -48 << 24 >> 24;
+       $179 = ($$off$i & 255) < 10;
+       do {
+        if ($179) {
+         $180 = $171 + -48 | 0;
+         $$pn$i = $180;
+        } else {
+         $$off103$i = $170 + -97 << 24 >> 24;
+         $181 = ($$off103$i & 255) < 6;
+         if ($181) {
+          $182 = $171 + -87 | 0;
+          $$pn$i = $182;
+          break;
+         }
+         $$off104$i = $170 + -65 << 24 >> 24;
+         $183 = ($$off104$i & 255) < 6;
+         if (!$183) {
+          label = 97;
+          break L55;
+         }
+         $184 = $171 + -55 | 0;
+         $$pn$i = $184;
+        }
+       } while (0);
+       $185 = $$0125$i << 8;
+       $$197$i = $178 | $185;
+       $186 = $$197$i | $$pn$i;
+       $187 = $$1100122$i + 1 | 0;
+       $188 = ($187 | 0) < 4;
+       if ($188) {
+        $$0125$i = $186;
+        $$1100122$i = $187;
+        $$293123$i = 0;
+        $$3124$i = $169;
+       } else {
+        break;
+       }
+      }
+      $189 = $$098127$i + -1 | 0;
+      $190 = SAFE_HEAP_LOAD($163 | 0, 4, 0) | 0 | 0;
+      $191 = $190 + ($189 << 2) | 0;
+      SAFE_HEAP_STORE($191 | 0, $186 | 0, 4);
+      $192 = ($$098127$i | 0) > 1;
+      if ($192) {
+       $$098127$i = $189;
+       $$099126$i = 0;
+       $$192128$i = 0;
+       $$2129$i = $169;
+      } else {
+       break L53;
+      }
+     }
+     if ((label | 0) == 82) {
+      __gcry_mpi_clear($156);
+     } else if ((label | 0) == 84) {
+      __gcry_mpi_clear($156);
+     } else if ((label | 0) == 90) {
+      __gcry_mpi_clear($156);
+     } else if ((label | 0) == 97) {
+      __gcry_mpi_clear($156);
+     }
+     __gcry_mpi_free($156);
+     $$1 = 65;
+     return $$1 | 0;
+    }
+   } while (0);
+   $193 = ($0 | 0) == (0 | 0);
+   if ($193) {
+    __gcry_mpi_free($156);
+   } else {
+    __gcry_mpi_normalize($156);
+    SAFE_HEAP_STORE($0 | 0, $156 | 0, 4);
+   }
+   $194 = ($4 | 0) == (0 | 0);
+   if ($194) {
+    $$1 = 0;
+    return $$1 | 0;
+   }
+   $195 = _strlen($2) | 0;
+   SAFE_HEAP_STORE($4 | 0, $195 | 0, 4);
+   $$1 = 0;
+   return $$1 | 0;
+  }
+ }
+ 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, $$$0124 = 0, $$$0124$us = 0, $$0 = 0, $$0$lcssa$i141 = 0, 
$$0$lcssa$i157 = 0, $$0122$lcssa = 0, $$0122179 = 0, $$0122179$us = 0, $$0123 = 
0, $$0124$lcssa = 0, $$0124178 = 0, $$0124178$us = 0, $$0127$lcssa = 0, 
$$0127177 = 0, $$0127177$us = 0, $$0129$lcssa = 0, $$0129171 = 0, $$0131$lcssa 
= 0, $$0131176 = 0;
+ var $$0131176$phi = 0, $$0131176$us = 0, $$0131176$us$phi = 0, $$0134175 = 0, 
$$0134175$us = 0, $$024$lcssa$i = 0, $$024$lcssa$i156 = 0, $$02432$i = 0, 
$$02432$i149 = 0, $$025$lcssa$i = 0, $$025$lcssa$i155 = 0, $$02531$i = 0, 
$$02531$i150 = 0, $$026$ph$i = 0, $$026$ph$i160 = 0, $$02629$i = 0, 
$$02629$i164 = 0, $$027$ph$i = 0, $$027$ph$i159 = 0, $$02728$i = 0;
+ var $$02728$i165 = 0, $$033$i = 0, $$033$i148 = 0, $$03446$i$us = 0, 
$$03545$i$us = 0, $$03644$i$us = 0, $$037$ph$i$us = 0, $$03742$i = 0, 
$$03742$i$us = 0, $$038$ph$i$us = 0, $$03841$i = 0, $$03841$i$us = 0, 
$$039$ph$i$us = 0, $$03940$i = 0, $$03940$i$us = 0, $$047$i$us = 0, $$1 = 0, 
$$1$ph$i$us = 0, $$1$ph$i142 = 0, $$1$ph$i161 = 0;
+ var $$1128 = 0, $$1130169 = 0, $$1132$lcssa = 0, $$1132170 = 0, $$130$i = 0, 
$$130$i163 = 0, $$139 = 0, $$143$i = 0, $$143$i$us = 0, $$2 = 0, $$2126 = 0, 
$$2133168 = 0, $$pre = 0, $$pre$phiZ2D = 0, $$pre197 = 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, $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, $exitcond = 0, $exitcond194 = 0, $or$cond = 0, $or$cond136 = 0, 
$or$cond137 = 0, $or$cond138 = 0, $scevgep$i$us = 0, $scevgep$i140 = 0, 
$scevgep$i145 = 0, $scevgep42$i = 0, $scevgep42$i146 = 0, $scevgep58$i$us = 0, 
$scevgep60$i$us = 0, $uglygep = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $5 = $0 + 12 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 20 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $6 + 36 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = ($4 >>> 0) / ($8 >>> 0) & -1;
+ $12 = $0 + 52 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = $13 & 8;
+ $15 = ($14 | 0) != 0;
+ $16 = $15 ? $8 : $4;
+ $17 = $16 >>> 0 > $2 >>> 0;
+ if ($17) {
+  $$0 = 200;
+  return $$0 | 0;
+ }
+ $18 = ($4 >>> 0) % ($8 >>> 0) & -1;
+ $19 = ($18 | 0) == 0;
+ if ($19) {
+  $$pre197 = $13 & 4;
+  $$pre$phiZ2D = $$pre197;
+ } else {
+  $20 = $8 >>> 0 >= $4 >>> 0;
+  $21 = $13 & 4;
+  $22 = ($21 | 0) == 0;
+  $or$cond = $20 | $22;
+  if ($or$cond) {
+   $$0 = 139;
+   return $$0 | 0;
+  } else {
+   $$pre$phiZ2D = $21;
+  }
+ }
+ $23 = ($$pre$phiZ2D | 0) != 0;
+ $24 = $8 >>> 0 < $4 >>> 0;
+ $or$cond136 = $24 & $23;
+ $or$cond137 = $19 & $or$cond136;
+ $25 = $or$cond137 << 31 >> 31;
+ $$0123 = $25 + $11 | 0;
+ $26 = $0 + 28 | 0;
+ $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+ $28 = ($27 | 0) == (0 | 0);
+ if ($28) {
+  $37 = $0 + 64 | 0;
+  $38 = ($$0123 | 0) == 0;
+  if ($38) {
+   $$1 = 0;
+   $$1128 = $3;
+   $$2126 = $1;
+   $121 = $13;
+  } else {
+   $39 = $8 >>> 0 > 3;
+   $40 = $8 + -4 | 0;
+   $41 = $40 & -4;
+   $42 = $41 + 4 | 0;
+   $43 = $40 - $41 | 0;
+   $44 = $0 + 496 | 0;
+   if ($39) {
+    $$0122179$us = 0;
+    $$0124178$us = $1;
+    $$0127177$us = $3;
+    $$0131176$us = $37;
+    $$0134175$us = 0;
+    while (1) {
+     $46 = $$0124178$us;
+     $47 = $$0127177$us;
+     $48 = $$0131176$us;
+     $49 = $47 | $48;
+     $50 = $49 | $46;
+     $51 = $50 & 3;
+     $52 = ($51 | 0) == 0;
+     if ($52) {
+      $scevgep58$i$us = $$0131176$us + $42 | 0;
+      $$03446$i$us = $$0131176$us;
+      $$03545$i$us = $$0127177$us;
+      $$03644$i$us = $$0124178$us;
+      $$047$i$us = $8;
+      while (1) {
+       $53 = $$03545$i$us + 4 | 0;
+       $54 = SAFE_HEAP_LOAD($$03545$i$us | 0, 4, 0) | 0 | 0;
+       $55 = $$03446$i$us + 4 | 0;
+       $56 = SAFE_HEAP_LOAD($$03446$i$us | 0, 4, 0) | 0 | 0;
+       $57 = $56 ^ $54;
+       $58 = $$03644$i$us + 4 | 0;
+       SAFE_HEAP_STORE($$03644$i$us | 0, $57 | 0, 4);
+       $59 = $$047$i$us + -4 | 0;
+       $60 = $59 >>> 0 > 3;
+       if ($60) {
+        $$03446$i$us = $55;
+        $$03545$i$us = $53;
+        $$03644$i$us = $58;
+        $$047$i$us = $59;
+       } else {
+        break;
+       }
+      }
+      $scevgep$i$us = $$0127177$us + $42 | 0;
+      $scevgep60$i$us = $$0124178$us + $42 | 0;
+      $$037$ph$i$us = $scevgep58$i$us;
+      $$038$ph$i$us = $scevgep$i$us;
+      $$039$ph$i$us = $scevgep60$i$us;
+      $$1$ph$i$us = $43;
+     } else {
+      $$037$ph$i$us = $$0131176$us;
+      $$038$ph$i$us = $$0127177$us;
+      $$039$ph$i$us = $$0124178$us;
+      $$1$ph$i$us = $8;
+     }
+     $61 = ($$1$ph$i$us | 0) == 0;
+     if (!$61) {
+      $$03742$i$us = $$037$ph$i$us;
+      $$03841$i$us = $$038$ph$i$us;
+      $$03940$i$us = $$039$ph$i$us;
+      $$143$i$us = $$1$ph$i$us;
+      while (1) {
+       $62 = $$03841$i$us + 1 | 0;
+       $63 = SAFE_HEAP_LOAD($$03841$i$us >> 0 | 0, 1, 0) | 0 | 0;
+       $64 = $$03742$i$us + 1 | 0;
+       $65 = SAFE_HEAP_LOAD($$03742$i$us >> 0 | 0, 1, 0) | 0 | 0;
+       $66 = $65 ^ $63;
+       $67 = $$03940$i$us + 1 | 0;
+       SAFE_HEAP_STORE($$03940$i$us >> 0 | 0, $66 | 0, 1);
+       $68 = $$143$i$us + -1 | 0;
+       $69 = ($68 | 0) == 0;
+       if ($69) {
+        break;
+       } else {
+        $$03742$i$us = $64;
+        $$03841$i$us = $62;
+        $$03940$i$us = $67;
+        $$143$i$us = $68;
+       }
+      }
+     }
+     $70 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 
127]($44, $$0124178$us, $$0124178$us) | 0;
+     $71 = $70 >>> 0 > $$0122179$us >>> 0;
+     $72 = $71 ? $70 : $$0122179$us;
+     $73 = $$0127177$us + $8 | 0;
+     $74 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     $75 = $74 & 8;
+     $76 = ($75 | 0) == 0;
+     $77 = $$0124178$us + $8 | 0;
+     $$$0124$us = $76 ? $77 : $$0124178$us;
+     $78 = $$0134175$us + 1 | 0;
+     $79 = $78 >>> 0 < $$0123 >>> 0;
+     if ($79) {
+      $$0131176$us$phi = $$0124178$us;
+      $$0122179$us = $72;
+      $$0124178$us = $$$0124$us;
+      $$0127177$us = $73;
+      $$0134175$us = $78;
+      $$0131176$us = $$0131176$us$phi;
+     } else {
+      $$0122$lcssa = $72;
+      $$0124$lcssa = $$$0124$us;
+      $$0127$lcssa = $73;
+      $$0131$lcssa = $$0124178$us;
+      $170 = $74;
+      break;
+     }
+    }
+   } else {
+    $45 = ($8 | 0) == 0;
+    $$0122179 = 0;
+    $$0124178 = $1;
+    $$0127177 = $3;
+    $$0131176 = $37;
+    $$0134175 = 0;
+    while (1) {
+     if (!$45) {
+      $$03742$i = $$0131176;
+      $$03841$i = $$0127177;
+      $$03940$i = $$0124178;
+      $$143$i = $8;
+      while (1) {
+       $80 = $$03841$i + 1 | 0;
+       $81 = SAFE_HEAP_LOAD($$03841$i >> 0 | 0, 1, 0) | 0 | 0;
+       $82 = $$03742$i + 1 | 0;
+       $83 = SAFE_HEAP_LOAD($$03742$i >> 0 | 0, 1, 0) | 0 | 0;
+       $84 = $83 ^ $81;
+       $85 = $$03940$i + 1 | 0;
+       SAFE_HEAP_STORE($$03940$i >> 0 | 0, $84 | 0, 1);
+       $86 = $$143$i + -1 | 0;
+       $87 = ($86 | 0) == 0;
+       if ($87) {
+        break;
+       } else {
+        $$03742$i = $82;
+        $$03841$i = $80;
+        $$03940$i = $85;
+        $$143$i = $86;
+       }
+      }
+     }
+     $88 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 
127]($44, $$0124178, $$0124178) | 0;
+     $89 = $88 >>> 0 > $$0122179 >>> 0;
+     $90 = $89 ? $88 : $$0122179;
+     $91 = $$0127177 + $8 | 0;
+     $92 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     $93 = $92 & 8;
+     $94 = ($93 | 0) == 0;
+     $95 = $$0124178 + $8 | 0;
+     $$$0124 = $94 ? $95 : $$0124178;
+     $96 = $$0134175 + 1 | 0;
+     $97 = $96 >>> 0 < $$0123 >>> 0;
+     if ($97) {
+      $$0131176$phi = $$0124178;
+      $$0122179 = $90;
+      $$0124178 = $$$0124;
+      $$0127177 = $91;
+      $$0134175 = $96;
+      $$0131176 = $$0131176$phi;
+     } else {
+      $$0122$lcssa = $90;
+      $$0124$lcssa = $$$0124;
+      $$0127$lcssa = $91;
+      $$0131$lcssa = $$0124178;
+      $170 = $92;
+      break;
+     }
+    }
+   }
+   $98 = ($$0131$lcssa | 0) == ($37 | 0);
+   if ($98) {
+    $$1 = $$0122$lcssa;
+    $$1128 = $$0127$lcssa;
+    $$2126 = $$0124$lcssa;
+    $121 = $170;
+   } else {
+    $99 = $37;
+    $100 = $$0131$lcssa;
+    $101 = $100 | $99;
+    $102 = $101 & 3;
+    $103 = ($102 | 0) == 0;
+    if ($103) {
+     $104 = $8 >>> 0 > 3;
+     if ($104) {
+      $105 = $8 + -4 | 0;
+      $106 = $105 & -4;
+      $107 = $106 + 4 | 0;
+      $scevgep$i145 = $$0131$lcssa + $107 | 0;
+      $$02432$i149 = $$0131$lcssa;
+      $$02531$i150 = $37;
+      $$033$i148 = $8;
+      while (1) {
+       $108 = $$02432$i149 + 4 | 0;
+       $109 = SAFE_HEAP_LOAD($$02432$i149 | 0, 4, 0) | 0 | 0;
+       $110 = $$02531$i150 + 4 | 0;
+       SAFE_HEAP_STORE($$02531$i150 | 0, $109 | 0, 4);
+       $111 = $$033$i148 + -4 | 0;
+       $112 = $111 >>> 0 > 3;
+       if ($112) {
+        $$02432$i149 = $108;
+        $$02531$i150 = $110;
+        $$033$i148 = $111;
+       } else {
+        break;
+       }
+      }
+      $scevgep42$i146 = $37 + $107 | 0;
+      $113 = $105 - $106 | 0;
+      $$0$lcssa$i157 = $113;
+      $$024$lcssa$i156 = $scevgep$i145;
+      $$025$lcssa$i155 = $scevgep42$i146;
+     } else {
+      $$0$lcssa$i157 = $8;
+      $$024$lcssa$i156 = $$0131$lcssa;
+      $$025$lcssa$i155 = $37;
+     }
+     $$026$ph$i160 = $$024$lcssa$i156;
+     $$027$ph$i159 = $$025$lcssa$i155;
+     $$1$ph$i161 = $$0$lcssa$i157;
+    } else {
+     $$026$ph$i160 = $$0131$lcssa;
+     $$027$ph$i159 = $37;
+     $$1$ph$i161 = $8;
+    }
+    $114 = ($$1$ph$i161 | 0) == 0;
+    if ($114) {
+     $$1 = $$0122$lcssa;
+     $$1128 = $$0127$lcssa;
+     $$2126 = $$0124$lcssa;
+     $121 = $170;
+    } else {
+     $$02629$i164 = $$026$ph$i160;
+     $$02728$i165 = $$027$ph$i159;
+     $$130$i163 = $$1$ph$i161;
+     while (1) {
+      $115 = $$02629$i164 + 1 | 0;
+      $116 = SAFE_HEAP_LOAD($$02629$i164 >> 0 | 0, 1, 0) | 0 | 0;
+      $117 = $$02728$i165 + 1 | 0;
+      SAFE_HEAP_STORE($$02728$i165 >> 0 | 0, $116 | 0, 1);
+      $118 = $$130$i163 + -1 | 0;
+      $119 = ($118 | 0) == 0;
+      if ($119) {
+       break;
+      } else {
+       $$02629$i164 = $115;
+       $$02728$i165 = $117;
+       $$130$i163 = $118;
+      }
+     }
+     $$pre = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     $$1 = $$0122$lcssa;
+     $$1128 = $$0127$lcssa;
+     $$2126 = $$0124$lcssa;
+     $121 = $$pre;
+    }
+   }
+  }
+ } else {
+  $29 = $0 + 496 | 0;
+  $30 = $0 + 64 | 0;
+  FUNCTION_TABLE_viiiiii[(SAFE_FT_MASK($27 | 0, 63 | 0) | 0) & 63]($29, $30, 
$1, $3, $$0123, $14);
+  $31 = Math_imul($$0123, $8) | 0;
+  $32 = $3 + $31 | 0;
+  $33 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $34 = $33 & 8;
+  $35 = ($34 | 0) == 0;
+  $36 = $1 + $31 | 0;
+  $$ = $35 ? $36 : $1;
+  $$1 = 0;
+  $$1128 = $32;
+  $$2126 = $$;
+  $121 = $33;
+ }
+ $120 = $121 & 4;
+ $122 = ($120 | 0) != 0;
+ $or$cond138 = $24 & $122;
+ if ($or$cond138) {
+  $$139 = $19 ? $8 : $18;
+  $123 = 0 - $8 | 0;
+  $124 = $$2126 + $123 | 0;
+  $125 = $0 + 64 | 0;
+  $126 = ($$139 | 0) == 0;
+  if ($126) {
+   $$0129$lcssa = 0;
+   $$1132$lcssa = $125;
+  } else {
+   $127 = $$139 + 64 | 0;
+   $$0129171 = 0;
+   $$1132170 = $125;
+   while (1) {
+    $129 = $$1128 + $$0129171 | 0;
+    $130 = SAFE_HEAP_LOAD($129 >> 0 | 0, 1, 0) | 0 | 0;
+    $131 = $124 + $$0129171 | 0;
+    $132 = SAFE_HEAP_LOAD($131 >> 0 | 0, 1, 0) | 0 | 0;
+    $133 = $$0129171 + $8 | 0;
+    $134 = $124 + $133 | 0;
+    SAFE_HEAP_STORE($134 >> 0 | 0, $132 | 0, 1);
+    $135 = $$1132170 + 1 | 0;
+    $136 = SAFE_HEAP_LOAD($$1132170 >> 0 | 0, 1, 0) | 0 | 0;
+    $137 = $136 ^ $130;
+    SAFE_HEAP_STORE($131 >> 0 | 0, $137 | 0, 1);
+    $138 = $$0129171 + 1 | 0;
+    $exitcond194 = ($138 | 0) == ($$139 | 0);
+    if ($exitcond194) {
+     break;
+    } else {
+     $$0129171 = $138;
+     $$1132170 = $135;
+    }
+   }
+   $uglygep = $0 + $127 | 0;
+   $$0129$lcssa = $$139;
+   $$1132$lcssa = $uglygep;
+  }
+  $128 = $$0129$lcssa >>> 0 < $8 >>> 0;
+  if ($128) {
+   $$1130169 = $$0129$lcssa;
+   $$2133168 = $$1132$lcssa;
+   while (1) {
+    $139 = $$2133168 + 1 | 0;
+    $140 = SAFE_HEAP_LOAD($$2133168 >> 0 | 0, 1, 0) | 0 | 0;
+    $141 = $124 + $$1130169 | 0;
+    SAFE_HEAP_STORE($141 >> 0 | 0, $140 | 0, 1);
+    $142 = $$1130169 + 1 | 0;
+    $exitcond = ($142 | 0) == ($8 | 0);
+    if ($exitcond) {
+     break;
+    } else {
+     $$1130169 = $142;
+     $$2133168 = $139;
+    }
+   }
+  }
+  $143 = $0 + 496 | 0;
+  $144 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 127]($143, 
$124, $124) | 0;
+  $145 = $144 >>> 0 > $$1 >>> 0;
+  $146 = $145 ? $144 : $$1;
+  $147 = $125;
+  $148 = $124;
+  $149 = $148 | $147;
+  $150 = $149 & 3;
+  $151 = ($150 | 0) == 0;
+  if ($151) {
+   $152 = $8 >>> 0 > 3;
+   if ($152) {
+    $153 = $8 + -4 | 0;
+    $154 = $153 & -4;
+    $155 = $154 + 4 | 0;
+    $scevgep$i140 = $124 + $155 | 0;
+    $$02432$i = $124;
+    $$02531$i = $125;
+    $$033$i = $8;
+    while (1) {
+     $156 = $$02432$i + 4 | 0;
+     $157 = SAFE_HEAP_LOAD($$02432$i | 0, 4, 0) | 0 | 0;
+     $158 = $$02531$i + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i | 0, $157 | 0, 4);
+     $159 = $$033$i + -4 | 0;
+     $160 = $159 >>> 0 > 3;
+     if ($160) {
+      $$02432$i = $156;
+      $$02531$i = $158;
+      $$033$i = $159;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i = $125 + $155 | 0;
+    $161 = $153 - $154 | 0;
+    $$0$lcssa$i141 = $161;
+    $$024$lcssa$i = $scevgep$i140;
+    $$025$lcssa$i = $scevgep42$i;
+   } else {
+    $$0$lcssa$i141 = $8;
+    $$024$lcssa$i = $124;
+    $$025$lcssa$i = $125;
+   }
+   $$026$ph$i = $$024$lcssa$i;
+   $$027$ph$i = $$025$lcssa$i;
+   $$1$ph$i142 = $$0$lcssa$i141;
+  } else {
+   $$026$ph$i = $124;
+   $$027$ph$i = $125;
+   $$1$ph$i142 = $8;
+  }
+  $162 = ($$1$ph$i142 | 0) == 0;
+  if ($162) {
+   $$2 = $146;
+  } else {
+   $$02629$i = $$026$ph$i;
+   $$02728$i = $$027$ph$i;
+   $$130$i = $$1$ph$i142;
+   while (1) {
+    $163 = $$02629$i + 1 | 0;
+    $164 = SAFE_HEAP_LOAD($$02629$i >> 0 | 0, 1, 0) | 0 | 0;
+    $165 = $$02728$i + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i >> 0 | 0, $164 | 0, 1);
+    $166 = $$130$i + -1 | 0;
+    $167 = ($166 | 0) == 0;
+    if ($167) {
+     $$2 = $146;
+     break;
+    } else {
+     $$02629$i = $163;
+     $$02728$i = $165;
+     $$130$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_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, $$0$lcssa$i = 0, $$0178 = 0, $$0178$us = 0, $$034$lcssa$i 
= 0, $$03446$i = 0, $$03446$i120 = 0, $$03446$i149$us = 0, $$03446$i91 = 0, 
$$035$lcssa$i = 0, $$03545$i = 0, $$03545$i121 = 0, $$03545$i150$us = 0, 
$$03545$i92 = 0, $$036$lcssa$i = 0, $$03644$i = 0, $$03644$i122 = 0, 
$$03644$i151$us = 0, $$03644$i93 = 0, $$037$ph$i = 0;
+ var $$037$ph$i164$us = 0, $$03742$i = 0, $$03742$i110 = 0, $$03742$i139 = 0, 
$$03742$i168 = 0, $$03742$i168$us = 0, $$038$ph$i = 0, $$038$ph$i163$us = 0, 
$$03841$i = 0, $$03841$i111 = 0, $$03841$i140 = 0, $$03841$i169 = 0, 
$$03841$i169$us = 0, $$039$ph$i = 0, $$039$ph$i162$us = 0, $$03940$i = 0, 
$$03940$i112 = 0, $$03940$i141 = 0, $$03940$i170 = 0, $$03940$i170$us = 0;
+ var $$047$i = 0, $$047$i119 = 0, $$047$i148$us = 0, $$047$i90 = 0, $$082 = 0, 
$$083$lcssa = 0, $$083$ph = 0, $$083177 = 0, $$083177$us = 0, $$084$lcssa = 0, 
$$084$ph = 0, $$084176 = 0, $$084176$us = 0, $$085$lcssa = 0, $$085$ph = 0, 
$$085175 = 0, $$085175$us = 0, $$1 = 0, $$1$ph$i = 0, $$1$ph$i165$us = 0;
+ var $$143$i = 0, $$143$i109 = 0, $$143$i138 = 0, $$143$i167 = 0, 
$$143$i167$us = 0, $$pre = 0, $$pre190 = 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, $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$cond199 = 0, $scevgep$i = 0, 
$scevgep$i115 = 0, $scevgep$i144 = 0, $scevgep$i86 = 0, $scevgep58$i = 0, 
$scevgep58$i116 = 0, $scevgep58$i145$us = 0, $scevgep58$i87 = 0, $scevgep60$i = 
0, $scevgep60$i117 = 0, $scevgep60$i146$us = 0, $scevgep60$i88 = 0, label = 0, 
sp = 0;
+ sp = STACKTOP;
+ $5 = $0 + 12 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 36 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $6 + 20 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $2 >>> 0 < $4 >>> 0;
+ if ($11) {
+  $$082 = 200;
+  return $$082 | 0;
+ }
+ $12 = $0 + 112 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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;
+  if ($25) {
+   $26 = $4 >>> 0 > 3;
+   if ($26) {
+    $27 = $4 + -4 | 0;
+    $28 = $27 & -4;
+    $29 = $28 + 4 | 0;
+    $scevgep58$i = $3 + $29 | 0;
+    $$03446$i = $3;
+    $$03545$i = $18;
+    $$03644$i = $1;
+    $$047$i = $4;
+    while (1) {
+     $30 = $$03545$i + 4 | 0;
+     $31 = SAFE_HEAP_LOAD($$03545$i | 0, 4, 0) | 0 | 0;
+     $32 = $$03446$i + 4 | 0;
+     $33 = SAFE_HEAP_LOAD($$03446$i | 0, 4, 0) | 0 | 0;
+     $34 = $33 ^ $31;
+     $35 = $$03644$i + 4 | 0;
+     SAFE_HEAP_STORE($$03644$i | 0, $34 | 0, 4);
+     $36 = $$047$i + -4 | 0;
+     $37 = $36 >>> 0 > 3;
+     if ($37) {
+      $$03446$i = $32;
+      $$03545$i = $30;
+      $$03644$i = $35;
+      $$047$i = $36;
+     } else {
+      break;
+     }
+    }
+    $scevgep$i = $18 + $29 | 0;
+    $scevgep60$i = $1 + $29 | 0;
+    $38 = $27 - $28 | 0;
+    $$0$lcssa$i = $38;
+    $$034$lcssa$i = $scevgep58$i;
+    $$035$lcssa$i = $scevgep$i;
+    $$036$lcssa$i = $scevgep60$i;
+   } else {
+    $$0$lcssa$i = $4;
+    $$034$lcssa$i = $3;
+    $$035$lcssa$i = $18;
+    $$036$lcssa$i = $1;
+   }
+   $$037$ph$i = $$034$lcssa$i;
+   $$038$ph$i = $$035$lcssa$i;
+   $$039$ph$i = $$036$lcssa$i;
+   $$1$ph$i = $$0$lcssa$i;
+  } else {
+   $$037$ph$i = $3;
+   $$038$ph$i = $18;
+   $$039$ph$i = $1;
+   $$1$ph$i = $4;
+  }
+  $39 = ($$1$ph$i | 0) == 0;
+  if ($39) {
+   $49 = $13;
+  } else {
+   $$03742$i = $$037$ph$i;
+   $$03841$i = $$038$ph$i;
+   $$03940$i = $$039$ph$i;
+   $$143$i = $$1$ph$i;
+   while (1) {
+    $40 = $$03841$i + 1 | 0;
+    $41 = SAFE_HEAP_LOAD($$03841$i >> 0 | 0, 1, 0) | 0 | 0;
+    $42 = $$03742$i + 1 | 0;
+    $43 = SAFE_HEAP_LOAD($$03742$i >> 0 | 0, 1, 0) | 0 | 0;
+    $44 = $43 ^ $41;
+    $45 = $$03940$i + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i >> 0 | 0, $44 | 0, 1);
+    $46 = $$143$i + -1 | 0;
+    $47 = ($46 | 0) == 0;
+    if ($47) {
+     break;
+    } else {
+     $$03742$i = $42;
+     $$03841$i = $40;
+     $$03940$i = $45;
+     $$143$i = $46;
+    }
+   }
+   $$pre = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $49 = $$pre;
+  }
+  $48 = $49 - $4 | 0;
+  SAFE_HEAP_STORE($12 | 0, $48 | 0, 4);
+  $$082 = 0;
+  return $$082 | 0;
+ }
+ $50 = ($13 | 0) == 0;
+ if ($50) {
+  $$083$ph = $1;
+  $$084$ph = $4;
+  $$085$ph = $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 = $63 & $62;
+  if ($or$cond) {
+   $64 = $13 + -4 | 0;
+   $65 = $64 & -4;
+   $66 = $65 + 4 | 0;
+   $scevgep58$i116 = $3 + $66 | 0;
+   $$03446$i120 = $3;
+   $$03545$i121 = $55;
+   $$03644$i122 = $1;
+   $$047$i119 = $13;
+   while (1) {
+    $67 = $$03545$i121 + 4 | 0;
+    $68 = SAFE_HEAP_LOAD($$03545$i121 | 0, 4, 0) | 0 | 0;
+    $69 = $$03446$i120 + 4 | 0;
+    $70 = SAFE_HEAP_LOAD($$03446$i120 | 0, 4, 0) | 0 | 0;
+    $71 = $70 ^ $68;
+    $72 = $$03644$i122 + 4 | 0;
+    SAFE_HEAP_STORE($$03644$i122 | 0, $71 | 0, 4);
+    $73 = $$047$i119 + -4 | 0;
+    $74 = $73 >>> 0 > 3;
+    if ($74) {
+     $$03446$i120 = $69;
+     $$03545$i121 = $67;
+     $$03644$i122 = $72;
+     $$047$i119 = $73;
+    } else {
+     break;
+    }
+   }
+   $scevgep$i115 = $55 + $66 | 0;
+   $scevgep60$i117 = $1 + $66 | 0;
+   $75 = $64 - $65 | 0;
+   $76 = ($75 | 0) == 0;
+   if ($76) {
+    $86 = $13;
+   } else {
+    $$03742$i139 = $scevgep58$i116;
+    $$03841$i140 = $scevgep$i115;
+    $$03940$i141 = $scevgep60$i117;
+    $$143$i138 = $75;
+    label = 18;
+   }
+  } else {
+   $$03742$i139 = $3;
+   $$03841$i140 = $55;
+   $$03940$i141 = $1;
+   $$143$i138 = $13;
+   label = 18;
+  }
+  if ((label | 0) == 18) {
+   while (1) {
+    label = 0;
+    $77 = $$03841$i140 + 1 | 0;
+    $78 = SAFE_HEAP_LOAD($$03841$i140 >> 0 | 0, 1, 0) | 0 | 0;
+    $79 = $$03742$i139 + 1 | 0;
+    $80 = SAFE_HEAP_LOAD($$03742$i139 >> 0 | 0, 1, 0) | 0 | 0;
+    $81 = $80 ^ $78;
+    $82 = $$03940$i141 + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i141 >> 0 | 0, $81 | 0, 1);
+    $83 = $$143$i138 + -1 | 0;
+    $84 = ($83 | 0) == 0;
+    if ($84) {
+     break;
+    } else {
+     $$03742$i139 = $79;
+     $$03841$i140 = $77;
+     $$03940$i141 = $82;
+     $$143$i138 = $83;
+     label = 18;
+    }
+   }
+   $$pre190 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $86 = $$pre190;
+  }
+  $85 = $1 + $86 | 0;
+  $87 = $3 + $86 | 0;
+  SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+  $$083$ph = $85;
+  $$084$ph = $51;
+  $$085$ph = $87;
+ }
+ $88 = $$084$ph >>> 0 < $10 >>> 0;
+ L35 : do {
+  if ($88) {
+   $$0$lcssa = 0;
+   $$083$lcssa = $$083$ph;
+   $$084$lcssa = $$084$ph;
+   $$085$lcssa = $$085$ph;
+  } 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$i144 = $90 + $95 | 0;
+   $96 = $93 - $94 | 0;
+   if ($92) {
+    $$0178$us = 0;
+    $$083177$us = $$083$ph;
+    $$084176$us = $$084$ph;
+    $$085175$us = $$085$ph;
+   } else {
+    $97 = ($10 | 0) == 0;
+    $$0178 = 0;
+    $$083177 = $$083$ph;
+    $$084176 = $$084$ph;
+    $$085175 = $$085$ph;
+    while (1) {
+     $128 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 
127]($89, $90, $90) | 0;
+     $129 = $128 >>> 0 > $$0178 >>> 0;
+     $130 = $129 ? $128 : $$0178;
+     if (!$97) {
+      $$03742$i168 = $$085175;
+      $$03841$i169 = $90;
+      $$03940$i170 = $$083177;
+      $$143$i167 = $10;
+      while (1) {
+       $131 = $$03841$i169 + 1 | 0;
+       $132 = SAFE_HEAP_LOAD($$03841$i169 >> 0 | 0, 1, 0) | 0 | 0;
+       $133 = $$03742$i168 + 1 | 0;
+       $134 = SAFE_HEAP_LOAD($$03742$i168 >> 0 | 0, 1, 0) | 0 | 0;
+       $135 = $134 ^ $132;
+       $136 = $$03940$i170 + 1 | 0;
+       SAFE_HEAP_STORE($$03940$i170 >> 0 | 0, $135 | 0, 1);
+       $137 = $$143$i167 + -1 | 0;
+       $138 = ($137 | 0) == 0;
+       if ($138) {
+        break;
+       } else {
+        $$03742$i168 = $133;
+        $$03841$i169 = $131;
+        $$03940$i170 = $136;
+        $$143$i167 = $137;
+       }
+      }
+     }
+     $139 = $$083177 + $10 | 0;
+     $140 = $$085175 + $10 | 0;
+     $141 = $$084176 - $10 | 0;
+     $142 = $141 >>> 0 < $10 >>> 0;
+     if ($142) {
+      $$0$lcssa = $130;
+      $$083$lcssa = $139;
+      $$084$lcssa = $141;
+      $$085$lcssa = $140;
+      break L35;
+     } else {
+      $$0178 = $130;
+      $$083177 = $139;
+      $$084176 = $141;
+      $$085175 = $140;
+     }
+    }
+   }
+   while (1) {
+    $98 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($89, 
$90, $90) | 0;
+    $99 = $98 >>> 0 > $$0178$us >>> 0;
+    $100 = $99 ? $98 : $$0178$us;
+    $101 = $$083177$us;
+    $102 = $$085175$us;
+    $103 = $102 | $91;
+    $104 = $103 | $101;
+    $105 = $104 & 3;
+    $106 = ($105 | 0) == 0;
+    if ($106) {
+     $scevgep58$i145$us = $$085175$us + $95 | 0;
+     $$03446$i149$us = $$085175$us;
+     $$03545$i150$us = $90;
+     $$03644$i151$us = $$083177$us;
+     $$047$i148$us = $10;
+     while (1) {
+      $107 = $$03545$i150$us + 4 | 0;
+      $108 = SAFE_HEAP_LOAD($$03545$i150$us | 0, 4, 0) | 0 | 0;
+      $109 = $$03446$i149$us + 4 | 0;
+      $110 = SAFE_HEAP_LOAD($$03446$i149$us | 0, 4, 0) | 0 | 0;
+      $111 = $110 ^ $108;
+      $112 = $$03644$i151$us + 4 | 0;
+      SAFE_HEAP_STORE($$03644$i151$us | 0, $111 | 0, 4);
+      $113 = $$047$i148$us + -4 | 0;
+      $114 = $113 >>> 0 > 3;
+      if ($114) {
+       $$03446$i149$us = $109;
+       $$03545$i150$us = $107;
+       $$03644$i151$us = $112;
+       $$047$i148$us = $113;
+      } else {
+       break;
+      }
+     }
+     $scevgep60$i146$us = $$083177$us + $95 | 0;
+     $$037$ph$i164$us = $scevgep58$i145$us;
+     $$038$ph$i163$us = $scevgep$i144;
+     $$039$ph$i162$us = $scevgep60$i146$us;
+     $$1$ph$i165$us = $96;
+    } else {
+     $$037$ph$i164$us = $$085175$us;
+     $$038$ph$i163$us = $90;
+     $$039$ph$i162$us = $$083177$us;
+     $$1$ph$i165$us = $10;
+    }
+    $115 = ($$1$ph$i165$us | 0) == 0;
+    if (!$115) {
+     $$03742$i168$us = $$037$ph$i164$us;
+     $$03841$i169$us = $$038$ph$i163$us;
+     $$03940$i170$us = $$039$ph$i162$us;
+     $$143$i167$us = $$1$ph$i165$us;
+     while (1) {
+      $116 = $$03841$i169$us + 1 | 0;
+      $117 = SAFE_HEAP_LOAD($$03841$i169$us >> 0 | 0, 1, 0) | 0 | 0;
+      $118 = $$03742$i168$us + 1 | 0;
+      $119 = SAFE_HEAP_LOAD($$03742$i168$us >> 0 | 0, 1, 0) | 0 | 0;
+      $120 = $119 ^ $117;
+      $121 = $$03940$i170$us + 1 | 0;
+      SAFE_HEAP_STORE($$03940$i170$us >> 0 | 0, $120 | 0, 1);
+      $122 = $$143$i167$us + -1 | 0;
+      $123 = ($122 | 0) == 0;
+      if ($123) {
+       break;
+      } else {
+       $$03742$i168$us = $118;
+       $$03841$i169$us = $116;
+       $$03940$i170$us = $121;
+       $$143$i167$us = $122;
+      }
+     }
+    }
+    $124 = $$083177$us + $10 | 0;
+    $125 = $$085175$us + $10 | 0;
+    $126 = $$084176$us - $10 | 0;
+    $127 = $126 >>> 0 < $10 >>> 0;
+    if ($127) {
+     $$0$lcssa = $100;
+     $$083$lcssa = $124;
+     $$084$lcssa = $126;
+     $$085$lcssa = $125;
+     break;
+    } else {
+     $$0178$us = $100;
+     $$083177$us = $124;
+     $$084176$us = $126;
+     $$085175$us = $125;
+    }
+   }
+  }
+ } while (0);
+ $143 = ($$084$lcssa | 0) == 0;
+ do {
+  if ($143) {
+   $$1 = $$0$lcssa;
+  } else {
+   $144 = $0 + 496 | 0;
+   $145 = $0 + 64 | 0;
+   $146 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($144, 
$145, $145) | 0;
+   $147 = $146 >>> 0 > $$0$lcssa >>> 0;
+   $148 = $147 ? $146 : $$0$lcssa;
+   $149 = $10 - $$084$lcssa | 0;
+   SAFE_HEAP_STORE($12 | 0, $149 | 0, 4);
+   $150 = $$083$lcssa;
+   $151 = $145;
+   $152 = $$085$lcssa;
+   $153 = $152 | $151;
+   $154 = $153 | $150;
+   $155 = $154 & 3;
+   $156 = ($155 | 0) == 0;
+   $157 = $$084$lcssa >>> 0 > 3;
+   $or$cond199 = $156 & $157;
+   if ($or$cond199) {
+    $158 = $$084$lcssa + -4 | 0;
+    $159 = $158 & -4;
+    $160 = $159 + 4 | 0;
+    $scevgep58$i87 = $$085$lcssa + $160 | 0;
+    $$03446$i91 = $$085$lcssa;
+    $$03545$i92 = $145;
+    $$03644$i93 = $$083$lcssa;
+    $$047$i90 = $$084$lcssa;
+    while (1) {
+     $161 = $$03545$i92 + 4 | 0;
+     $162 = SAFE_HEAP_LOAD($$03545$i92 | 0, 4, 0) | 0 | 0;
+     $163 = $$03446$i91 + 4 | 0;
+     $164 = SAFE_HEAP_LOAD($$03446$i91 | 0, 4, 0) | 0 | 0;
+     $165 = $164 ^ $162;
+     $166 = $$03644$i93 + 4 | 0;
+     SAFE_HEAP_STORE($$03644$i93 | 0, $165 | 0, 4);
+     $167 = $$047$i90 + -4 | 0;
+     $168 = $167 >>> 0 > 3;
+     if ($168) {
+      $$03446$i91 = $163;
+      $$03545$i92 = $161;
+      $$03644$i93 = $166;
+      $$047$i90 = $167;
+     } else {
+      break;
+     }
+    }
+    $scevgep$i86 = $145 + $160 | 0;
+    $scevgep60$i88 = $$083$lcssa + $160 | 0;
+    $169 = $158 - $159 | 0;
+    $170 = ($169 | 0) == 0;
+    if ($170) {
+     $$1 = $148;
+     break;
+    } else {
+     $$03742$i110 = $scevgep58$i87;
+     $$03841$i111 = $scevgep$i86;
+     $$03940$i112 = $scevgep60$i88;
+     $$143$i109 = $169;
+    }
+   } else {
+    $$03742$i110 = $$085$lcssa;
+    $$03841$i111 = $145;
+    $$03940$i112 = $$083$lcssa;
+    $$143$i109 = $$084$lcssa;
+   }
+   while (1) {
+    $171 = $$03841$i111 + 1 | 0;
+    $172 = SAFE_HEAP_LOAD($$03841$i111 >> 0 | 0, 1, 0) | 0 | 0;
+    $173 = $$03742$i110 + 1 | 0;
+    $174 = SAFE_HEAP_LOAD($$03742$i110 >> 0 | 0, 1, 0) | 0 | 0;
+    $175 = $174 ^ $172;
+    $176 = $$03940$i112 + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i112 >> 0 | 0, $175 | 0, 1);
+    $177 = $$143$i109 + -1 | 0;
+    $178 = ($177 | 0) == 0;
+    if ($178) {
+     $$1 = $148;
+     break;
+    } else {
+     $$03742$i110 = $173;
+     $$03841$i111 = $171;
+     $$03940$i112 = $176;
+     $$143$i109 = $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_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;
+ SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $7 = ($1 | 0) != (0 | 0);
+ do {
+  if ($7) {
+   $8 = __gcry_sexp_find_token($1, 46885, 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, 46925, 5) | 0;
+   $13 = ($12 | 0) == (0 | 0);
+   if (!$13) {
+    $14 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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, 46949, 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, 39071, 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, 35378, 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, 35380, 0) | 0;
+   $33 = ($32 | 0) == 0;
+   if ($33) {
+    $34 = __gcry_sexp_find_token($1, 39075, 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, 35382, 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 ? $$092 : $2;
+   $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 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+   $56 = $48 + 4 | 0;
+   $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+   $58 = ($$sroa$0132$1143159 | 0) == 0;
+   if ($58) {
+    $59 = $48 + 8 | 0;
+    $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($59 | 0, 0 | 0, 4);
+    $$sroa$0132$2 = $60;
+   } else {
+    $$sroa$0132$2 = $$sroa$0132$1143159;
+   }
+   $61 = ($$sroa$0127$1144157 | 0) == 0;
+   if ($61) {
+    $62 = $48 + 12 | 0;
+    $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($62 | 0, 0 | 0, 4);
+    $$sroa$0127$2 = $63;
+   } else {
+    $$sroa$0127$2 = $$sroa$0127$1144157;
+   }
+   $64 = ($$sroa$0121$1145155 | 0) == 0;
+   if ($64) {
+    $65 = $48 + 16 | 0;
+    $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($65 | 0, 0 | 0, 4);
+    $$sroa$0121$2 = $66;
+   } else {
+    $$sroa$0121$2 = $$sroa$0121$1145155;
+   }
+   $67 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $68 = ($67 | 0) == (0 | 0);
+   if ($68) {
+    $69 = $48 + 20 | 0;
+    $70 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+    $71 = $48 + 24 | 0;
+    $72 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+    $73 = $48 + 28 | 0;
+    $74 = SAFE_HEAP_LOAD($73 | 0, 4, 0) | 0 | 0;
+    $75 = __gcry_mpi_point_snatch_set(0, $70, $72, $74) | 0;
+    SAFE_HEAP_STORE($4 | 0, $75 | 0, 4);
+    SAFE_HEAP_STORE($69 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE($71 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE($73 | 0, 0 | 0, 4);
+   }
+   $76 = ($$sroa$0116$1146153 | 0) == 0;
+   if ($76) {
+    $77 = $48 + 32 | 0;
+    $78 = SAFE_HEAP_LOAD($77 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($77 | 0, 0 | 0, 4);
+    $$sroa$0116$2 = $78;
+   } else {
+    $$sroa$0116$2 = $$sroa$0116$1146153;
+   }
+   $79 = ($$sroa$0$1147151 | 0) == 0;
+   if ($79) {
+    $80 = $48 + 36 | 0;
+    $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($80 | 0, 0 | 0, 4);
+    $$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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    $89 = __gcry_ctx_get_pointer($88, 1) | 0;
+    $90 = ($$sroa$0121$4 | 0) == 0;
+    if (!$90) {
+     $91 = $89 + 24 | 0;
+     $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_free($92);
+     SAFE_HEAP_STORE($91 | 0, $$sroa$0121$4 | 0, 4);
+    }
+    $93 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    $94 = ($93 | 0) == (0 | 0);
+    if (!$94) {
+     $95 = $89 + 28 | 0;
+     SAFE_HEAP_STORE($95 | 0, $93 | 0, 4);
+     SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+    }
+    $96 = ($$sroa$0116$4 | 0) == 0;
+    if (!$96) {
+     $97 = $$sroa$0116$4;
+     $98 = $89 + 32 | 0;
+     SAFE_HEAP_STORE($98 | 0, $97 | 0, 4);
+    }
+    $99 = ($$sroa$0$4 | 0) == 0;
+    if (!$99) {
+     $100 = $$sroa$0$4;
+     $101 = $89 + 36 | 0;
+     SAFE_HEAP_STORE($101 | 0, $100 | 0, 4);
+    }
+    if ($7) {
+     $102 = _point_from_keyparam($5, $1, 46923, $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, 35384, 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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $109 = ($108 | 0) == (0 | 0);
+    if (!$109) {
+     $110 = $89 + 40 | 0;
+     SAFE_HEAP_STORE($110 | 0, $108 | 0, 4);
+     SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+    }
+    $111 = ($$1 | 0) == (0 | 0);
+    if (!$111) {
+     $112 = $89 + 44 | 0;
+     SAFE_HEAP_STORE($112 | 0, $$1 | 0, 4);
+    }
+    $113 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($0 | 0, $113 | 0, 4);
+    SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+    $$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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_point_release($118);
+ $119 = $$sroa$0116$6;
+ __gcry_mpi_free($119);
+ $120 = $$sroa$0$6;
+ __gcry_mpi_free($120);
+ $121 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_point_release($121);
+ __gcry_mpi_free(0);
+ STACKTOP = sp;
+ return $$3 | 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 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = $2 & 1;
+ $4 = $3 << 24 >> 24 == 0;
+ if (!$4) {
+  return;
+ }
+ $5 = SAFE_HEAP_LOAD(4800 | 0, 1, 0) | 0 | 0;
+ $6 = SAFE_HEAP_LOAD(4832 >> 0 | 0, 1, 0) | 0 | 0;
+ $7 = SAFE_HEAP_LOAD(4864 >> 0 | 0, 1, 0) | 0 | 0;
+ $8 = SAFE_HEAP_LOAD(4896 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = SAFE_HEAP_LOAD(4928 >> 0 | 0, 1, 0) | 0 | 0;
+ $10 = SAFE_HEAP_LOAD(4960 >> 0 | 0, 1, 0) | 0 | 0;
+ $11 = SAFE_HEAP_LOAD(4992 >> 0 | 0, 1, 0) | 0 | 0;
+ $12 = SAFE_HEAP_LOAD(5024 >> 0 | 0, 1, 0) | 0 | 0;
+ $13 = SAFE_HEAP_LOAD(5056 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = SAFE_HEAP_LOAD(5088 >> 0 | 0, 1, 0) | 0 | 0;
+ $15 = SAFE_HEAP_LOAD(5120 >> 0 | 0, 1, 0) | 0 | 0;
+ $16 = SAFE_HEAP_LOAD(5152 >> 0 | 0, 1, 0) | 0 | 0;
+ $17 = SAFE_HEAP_LOAD(5184 >> 0 | 0, 1, 0) | 0 | 0;
+ $18 = SAFE_HEAP_LOAD(5216 >> 0 | 0, 1, 0) | 0 | 0;
+ $19 = SAFE_HEAP_LOAD(5248 >> 0 | 0, 1, 0) | 0 | 0;
+ $20 = SAFE_HEAP_LOAD(5280 >> 0 | 0, 1, 0) | 0 | 0;
+ $21 = SAFE_HEAP_LOAD(5312 >> 0 | 0, 1, 0) | 0 | 0;
+ $22 = SAFE_HEAP_LOAD(5344 >> 0 | 0, 1, 0) | 0 | 0;
+ $23 = SAFE_HEAP_LOAD(5376 >> 0 | 0, 1, 0) | 0 | 0;
+ $24 = SAFE_HEAP_LOAD(5408 >> 0 | 0, 1, 0) | 0 | 0;
+ $25 = SAFE_HEAP_LOAD(5440 >> 0 | 0, 1, 0) | 0 | 0;
+ $26 = SAFE_HEAP_LOAD(5472 >> 0 | 0, 1, 0) | 0 | 0;
+ $27 = SAFE_HEAP_LOAD(5504 >> 0 | 0, 1, 0) | 0 | 0;
+ $28 = SAFE_HEAP_LOAD(5536 >> 0 | 0, 1, 0) | 0 | 0;
+ $29 = SAFE_HEAP_LOAD(5568 >> 0 | 0, 1, 0) | 0 | 0;
+ $30 = SAFE_HEAP_LOAD(5600 >> 0 | 0, 1, 0) | 0 | 0;
+ $31 = SAFE_HEAP_LOAD(5632 >> 0 | 0, 1, 0) | 0 | 0;
+ $32 = SAFE_HEAP_LOAD(5664 >> 0 | 0, 1, 0) | 0 | 0;
+ $33 = SAFE_HEAP_LOAD(5696 >> 0 | 0, 1, 0) | 0 | 0;
+ $34 = SAFE_HEAP_LOAD(5728 >> 0 | 0, 1, 0) | 0 | 0;
+ $35 = SAFE_HEAP_LOAD(5760 >> 0 | 0, 1, 0) | 0 | 0;
+ $36 = SAFE_HEAP_LOAD(5792 >> 0 | 0, 1, 0) | 0 | 0;
+ $37 = SAFE_HEAP_LOAD(5823 >> 0 | 0, 1, 0) | 0 | 0;
+ $38 = SAFE_HEAP_LOAD(5824 | 0, 1, 0) | 0 | 0;
+ $39 = SAFE_HEAP_LOAD(5856 >> 0 | 0, 1, 0) | 0 | 0;
+ $40 = SAFE_HEAP_LOAD(5888 >> 0 | 0, 1, 0) | 0 | 0;
+ $41 = SAFE_HEAP_LOAD(5920 >> 0 | 0, 1, 0) | 0 | 0;
+ $42 = SAFE_HEAP_LOAD(5952 >> 0 | 0, 1, 0) | 0 | 0;
+ $43 = SAFE_HEAP_LOAD(5984 >> 0 | 0, 1, 0) | 0 | 0;
+ $44 = SAFE_HEAP_LOAD(6016 >> 0 | 0, 1, 0) | 0 | 0;
+ $45 = SAFE_HEAP_LOAD(6048 >> 0 | 0, 1, 0) | 0 | 0;
+ $46 = SAFE_HEAP_LOAD(6080 >> 0 | 0, 1, 0) | 0 | 0;
+ $47 = SAFE_HEAP_LOAD(6112 >> 0 | 0, 1, 0) | 0 | 0;
+ $48 = SAFE_HEAP_LOAD(6144 >> 0 | 0, 1, 0) | 0 | 0;
+ $49 = SAFE_HEAP_LOAD(6176 >> 0 | 0, 1, 0) | 0 | 0;
+ $50 = SAFE_HEAP_LOAD(6208 >> 0 | 0, 1, 0) | 0 | 0;
+ $51 = SAFE_HEAP_LOAD(6240 >> 0 | 0, 1, 0) | 0 | 0;
+ $52 = SAFE_HEAP_LOAD(6272 >> 0 | 0, 1, 0) | 0 | 0;
+ $53 = SAFE_HEAP_LOAD(6304 >> 0 | 0, 1, 0) | 0 | 0;
+ $54 = SAFE_HEAP_LOAD(6336 >> 0 | 0, 1, 0) | 0 | 0;
+ $55 = SAFE_HEAP_LOAD(6368 >> 0 | 0, 1, 0) | 0 | 0;
+ $56 = SAFE_HEAP_LOAD(6400 >> 0 | 0, 1, 0) | 0 | 0;
+ $57 = SAFE_HEAP_LOAD(6432 >> 0 | 0, 1, 0) | 0 | 0;
+ $58 = SAFE_HEAP_LOAD(6464 >> 0 | 0, 1, 0) | 0 | 0;
+ $59 = SAFE_HEAP_LOAD(6496 >> 0 | 0, 1, 0) | 0 | 0;
+ $60 = SAFE_HEAP_LOAD(6528 >> 0 | 0, 1, 0) | 0 | 0;
+ $61 = SAFE_HEAP_LOAD(6560 >> 0 | 0, 1, 0) | 0 | 0;
+ $62 = SAFE_HEAP_LOAD(6592 >> 0 | 0, 1, 0) | 0 | 0;
+ $63 = SAFE_HEAP_LOAD(6624 >> 0 | 0, 1, 0) | 0 | 0;
+ $64 = SAFE_HEAP_LOAD(6656 >> 0 | 0, 1, 0) | 0 | 0;
+ $65 = SAFE_HEAP_LOAD(6688 >> 0 | 0, 1, 0) | 0 | 0;
+ $66 = SAFE_HEAP_LOAD(6720 >> 0 | 0, 1, 0) | 0 | 0;
+ $67 = SAFE_HEAP_LOAD(6752 >> 0 | 0, 1, 0) | 0 | 0;
+ $68 = SAFE_HEAP_LOAD(6784 >> 0 | 0, 1, 0) | 0 | 0;
+ $69 = SAFE_HEAP_LOAD(6816 >> 0 | 0, 1, 0) | 0 | 0;
+ $70 = SAFE_HEAP_LOAD(6848 >> 0 | 0, 1, 0) | 0 | 0;
+ $71 = SAFE_HEAP_LOAD(6880 >> 0 | 0, 1, 0) | 0 | 0;
+ $72 = SAFE_HEAP_LOAD(6912 >> 0 | 0, 1, 0) | 0 | 0;
+ $73 = SAFE_HEAP_LOAD(6944 >> 0 | 0, 1, 0) | 0 | 0;
+ $74 = SAFE_HEAP_LOAD(6976 >> 0 | 0, 1, 0) | 0 | 0;
+ $75 = SAFE_HEAP_LOAD(7008 >> 0 | 0, 1, 0) | 0 | 0;
+ $76 = SAFE_HEAP_LOAD(7040 >> 0 | 0, 1, 0) | 0 | 0;
+ $77 = SAFE_HEAP_LOAD(7072 >> 0 | 0, 1, 0) | 0 | 0;
+ $78 = SAFE_HEAP_LOAD(7103 >> 0 | 0, 1, 0) | 0 | 0;
+ $79 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $80 = $0 + 240 | 0;
+ SAFE_HEAP_STORE($80 | 0, $79 | 0, 4);
+ $81 = $0 + 4 | 0;
+ $82 = SAFE_HEAP_LOAD($81 | 0, 4, 0) | 0 | 0;
+ $83 = $80 + 4 | 0;
+ SAFE_HEAP_STORE($83 | 0, $82 | 0, 4);
+ $84 = $0 + 8 | 0;
+ $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+ $86 = $0 + 248 | 0;
+ SAFE_HEAP_STORE($86 | 0, $85 | 0, 4);
+ $87 = $0 + 12 | 0;
+ $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+ $89 = $0 + 252 | 0;
+ SAFE_HEAP_STORE($89 | 0, $88 | 0, 4);
+ $90 = $0 + 480 | 0;
+ $91 = SAFE_HEAP_LOAD($90 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($96 | 0, 4, 0) | 0 | 0;
+   $97 = $95 << 2;
+   $98 = $97 & 1020;
+   $99 = 4801 + $98 | 0;
+   $100 = SAFE_HEAP_LOAD($99 >> 0 | 0, 1, 0) | 0 | 0;
+   $101 = $100 & 255;
+   $102 = 5824 + ($101 << 2) | 0;
+   $103 = SAFE_HEAP_LOAD($102 | 0, 4, 0) | 0 | 0;
+   $104 = $95 >>> 6;
+   $105 = $104 & 1020;
+   $106 = 4801 + $105 | 0;
+   $107 = SAFE_HEAP_LOAD($106 >> 0 | 0, 1, 0) | 0 | 0;
+   $108 = $107 & 255;
+   $109 = 5824 + ($108 << 2) | 0;
+   $110 = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 0;
+   $111 = $110 << 8;
+   $112 = $110 >>> 24;
+   $113 = $111 | $112;
+   $114 = $113 ^ $103;
+   $115 = $95 >>> 14;
+   $116 = $115 & 1020;
+   $117 = 4801 + $116 | 0;
+   $118 = SAFE_HEAP_LOAD($117 >> 0 | 0, 1, 0) | 0 | 0;
+   $119 = $118 & 255;
+   $120 = 5824 + ($119 << 2) | 0;
+   $121 = SAFE_HEAP_LOAD($120 | 0, 4, 0) | 0 | 0;
+   $122 = $121 << 16;
+   $123 = $121 >>> 16;
+   $124 = $122 | $123;
+   $125 = $114 ^ $124;
+   $126 = $95 >>> 24;
+   $127 = $126 << 2;
+   $128 = 4801 + $127 | 0;
+   $129 = SAFE_HEAP_LOAD($128 >> 0 | 0, 1, 0) | 0 | 0;
+   $130 = $129 & 255;
+   $131 = 5824 + ($130 << 2) | 0;
+   $132 = SAFE_HEAP_LOAD($131 | 0, 4, 0) | 0 | 0;
+   $133 = $132 << 24;
+   $134 = $132 >>> 8;
+   $135 = $133 | $134;
+   $136 = $125 ^ $135;
+   SAFE_HEAP_STORE($94 | 0, $136 | 0, 4);
+   $137 = ($0 + ($$079$i << 4) | 0) + 4 | 0;
+   $138 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+   $139 = $138 << 2;
+   $140 = $139 & 1020;
+   $141 = 4801 + $140 | 0;
+   $142 = SAFE_HEAP_LOAD($141 >> 0 | 0, 1, 0) | 0 | 0;
+   $143 = $142 & 255;
+   $144 = 5824 + ($143 << 2) | 0;
+   $145 = SAFE_HEAP_LOAD($144 | 0, 4, 0) | 0 | 0;
+   $146 = $138 >>> 6;
+   $147 = $146 & 1020;
+   $148 = 4801 + $147 | 0;
+   $149 = SAFE_HEAP_LOAD($148 >> 0 | 0, 1, 0) | 0 | 0;
+   $150 = $149 & 255;
+   $151 = 5824 + ($150 << 2) | 0;
+   $152 = SAFE_HEAP_LOAD($151 | 0, 4, 0) | 0 | 0;
+   $153 = $152 << 8;
+   $154 = $152 >>> 24;
+   $155 = $153 | $154;
+   $156 = $155 ^ $145;
+   $157 = $138 >>> 14;
+   $158 = $157 & 1020;
+   $159 = 4801 + $158 | 0;
+   $160 = SAFE_HEAP_LOAD($159 >> 0 | 0, 1, 0) | 0 | 0;
+   $161 = $160 & 255;
+   $162 = 5824 + ($161 << 2) | 0;
+   $163 = SAFE_HEAP_LOAD($162 | 0, 4, 0) | 0 | 0;
+   $164 = $163 << 16;
+   $165 = $163 >>> 16;
+   $166 = $164 | $165;
+   $167 = $156 ^ $166;
+   $168 = $138 >>> 24;
+   $169 = $168 << 2;
+   $170 = 4801 + $169 | 0;
+   $171 = SAFE_HEAP_LOAD($170 >> 0 | 0, 1, 0) | 0 | 0;
+   $172 = $171 & 255;
+   $173 = 5824 + ($172 << 2) | 0;
+   $174 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $175 = $174 << 24;
+   $176 = $174 >>> 8;
+   $177 = $175 | $176;
+   $178 = $167 ^ $177;
+   $179 = ($80 + ($$079$i << 4) | 0) + 4 | 0;
+   SAFE_HEAP_STORE($179 | 0, $178 | 0, 4);
+   $180 = ($0 + ($$079$i << 4) | 0) + 8 | 0;
+   $181 = SAFE_HEAP_LOAD($180 | 0, 4, 0) | 0 | 0;
+   $182 = $181 << 2;
+   $183 = $182 & 1020;
+   $184 = 4801 + $183 | 0;
+   $185 = SAFE_HEAP_LOAD($184 >> 0 | 0, 1, 0) | 0 | 0;
+   $186 = $185 & 255;
+   $187 = 5824 + ($186 << 2) | 0;
+   $188 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+   $189 = $181 >>> 6;
+   $190 = $189 & 1020;
+   $191 = 4801 + $190 | 0;
+   $192 = SAFE_HEAP_LOAD($191 >> 0 | 0, 1, 0) | 0 | 0;
+   $193 = $192 & 255;
+   $194 = 5824 + ($193 << 2) | 0;
+   $195 = SAFE_HEAP_LOAD($194 | 0, 4, 0) | 0 | 0;
+   $196 = $195 << 8;
+   $197 = $195 >>> 24;
+   $198 = $196 | $197;
+   $199 = $198 ^ $188;
+   $200 = $181 >>> 14;
+   $201 = $200 & 1020;
+   $202 = 4801 + $201 | 0;
+   $203 = SAFE_HEAP_LOAD($202 >> 0 | 0, 1, 0) | 0 | 0;
+   $204 = $203 & 255;
+   $205 = 5824 + ($204 << 2) | 0;
+   $206 = SAFE_HEAP_LOAD($205 | 0, 4, 0) | 0 | 0;
+   $207 = $206 << 16;
+   $208 = $206 >>> 16;
+   $209 = $207 | $208;
+   $210 = $199 ^ $209;
+   $211 = $181 >>> 24;
+   $212 = $211 << 2;
+   $213 = 4801 + $212 | 0;
+   $214 = SAFE_HEAP_LOAD($213 >> 0 | 0, 1, 0) | 0 | 0;
+   $215 = $214 & 255;
+   $216 = 5824 + ($215 << 2) | 0;
+   $217 = SAFE_HEAP_LOAD($216 | 0, 4, 0) | 0 | 0;
+   $218 = $217 << 24;
+   $219 = $217 >>> 8;
+   $220 = $218 | $219;
+   $221 = $210 ^ $220;
+   $222 = ($80 + ($$079$i << 4) | 0) + 8 | 0;
+   SAFE_HEAP_STORE($222 | 0, $221 | 0, 4);
+   $223 = ($0 + ($$079$i << 4) | 0) + 12 | 0;
+   $224 = SAFE_HEAP_LOAD($223 | 0, 4, 0) | 0 | 0;
+   $225 = $224 << 2;
+   $226 = $225 & 1020;
+   $227 = 4801 + $226 | 0;
+   $228 = SAFE_HEAP_LOAD($227 >> 0 | 0, 1, 0) | 0 | 0;
+   $229 = $228 & 255;
+   $230 = 5824 + ($229 << 2) | 0;
+   $231 = SAFE_HEAP_LOAD($230 | 0, 4, 0) | 0 | 0;
+   $232 = $224 >>> 6;
+   $233 = $232 & 1020;
+   $234 = 4801 + $233 | 0;
+   $235 = SAFE_HEAP_LOAD($234 >> 0 | 0, 1, 0) | 0 | 0;
+   $236 = $235 & 255;
+   $237 = 5824 + ($236 << 2) | 0;
+   $238 = SAFE_HEAP_LOAD($237 | 0, 4, 0) | 0 | 0;
+   $239 = $238 << 8;
+   $240 = $238 >>> 24;
+   $241 = $239 | $240;
+   $242 = $241 ^ $231;
+   $243 = $224 >>> 14;
+   $244 = $243 & 1020;
+   $245 = 4801 + $244 | 0;
+   $246 = SAFE_HEAP_LOAD($245 >> 0 | 0, 1, 0) | 0 | 0;
+   $247 = $246 & 255;
+   $248 = 5824 + ($247 << 2) | 0;
+   $249 = SAFE_HEAP_LOAD($248 | 0, 4, 0) | 0 | 0;
+   $250 = $249 << 16;
+   $251 = $249 >>> 16;
+   $252 = $250 | $251;
+   $253 = $242 ^ $252;
+   $254 = $224 >>> 24;
+   $255 = $254 << 2;
+   $256 = 4801 + $255 | 0;
+   $257 = SAFE_HEAP_LOAD($256 >> 0 | 0, 1, 0) | 0 | 0;
+   $258 = $257 & 255;
+   $259 = 5824 + ($258 << 2) | 0;
+   $260 = SAFE_HEAP_LOAD($259 | 0, 4, 0) | 0 | 0;
+   $261 = $260 << 24;
+   $262 = $260 >>> 8;
+   $263 = $261 | $262;
+   $264 = $253 ^ $263;
+   $265 = ($80 + ($$079$i << 4) | 0) + 12 | 0;
+   SAFE_HEAP_STORE($265 | 0, $264 | 0, 4);
+   $266 = $$079$i + 1 | 0;
+   $267 = SAFE_HEAP_LOAD($90 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($$lcssa$i | 0, 4, 0) | 0 | 0;
+ $271 = $80 + ($$0$lcssa$i << 4) | 0;
+ SAFE_HEAP_STORE($271 | 0, $270 | 0, 4);
+ $272 = ($0 + ($$0$lcssa$i << 4) | 0) + 4 | 0;
+ $273 = SAFE_HEAP_LOAD($272 | 0, 4, 0) | 0 | 0;
+ $274 = ($80 + ($$0$lcssa$i << 4) | 0) + 4 | 0;
+ SAFE_HEAP_STORE($274 | 0, $273 | 0, 4);
+ $275 = ($0 + ($$0$lcssa$i << 4) | 0) + 8 | 0;
+ $276 = SAFE_HEAP_LOAD($275 | 0, 4, 0) | 0 | 0;
+ $277 = ($80 + ($$0$lcssa$i << 4) | 0) + 8 | 0;
+ SAFE_HEAP_STORE($277 | 0, $276 | 0, 4);
+ $278 = ($0 + ($$0$lcssa$i << 4) | 0) + 12 | 0;
+ $279 = SAFE_HEAP_LOAD($278 | 0, 4, 0) | 0 | 0;
+ $280 = ($80 + ($$0$lcssa$i << 4) | 0) + 12 | 0;
+ SAFE_HEAP_STORE($280 | 0, $279 | 0, 4);
+ $281 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $282 = $281 | 1;
+ SAFE_HEAP_STORE($1 >> 0 | 0, $282 | 0, 1);
+ return;
+}
+
+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;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ dest = $7;
+ stop = dest + 60 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    __gcry_log_printmpi(47209, $12);
+   }
+   $13 = $3 + 12 | 0;
+   $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $15 = $14 & 512;
+   $16 = ($15 | 0) == 0;
+   if ($16) {
+    $24 = $7 + 56 | 0;
+    SAFE_HEAP_STORE($vararg_buffer9 | 0, $6 | 0, 4);
+    $vararg_ptr12 = $vararg_buffer9 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr12 | 0, $24 | 0, 4);
+    $vararg_ptr13 = $vararg_buffer9 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr13 | 0, 0 | 0, 4);
+    $25 = __gcry_sexp_extract_param($2, 0, 47244, $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;
+    SAFE_HEAP_STORE($vararg_buffer | 0, $17 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, $18 | 0, 4);
+    $vararg_ptr2 = $vararg_buffer + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr2 | 0, $19 | 0, 4);
+    $vararg_ptr3 = $vararg_buffer + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr3 | 0, $5 | 0, 4);
+    $vararg_ptr4 = $vararg_buffer + 16 | 0;
+    SAFE_HEAP_STORE($vararg_ptr4 | 0, $20 | 0, 4);
+    $vararg_ptr5 = $vararg_buffer + 20 | 0;
+    SAFE_HEAP_STORE($vararg_ptr5 | 0, $21 | 0, 4);
+    $vararg_ptr6 = $vararg_buffer + 24 | 0;
+    SAFE_HEAP_STORE($vararg_ptr6 | 0, $6 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer + 28 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, $22 | 0, 4);
+    $vararg_ptr8 = $vararg_buffer + 32 | 0;
+    SAFE_HEAP_STORE($vararg_ptr8 | 0, 0 | 0, 4);
+    $23 = __gcry_sexp_extract_param($2, 0, 47225, $vararg_buffer) | 0;
+    $$048 = $23;
+   }
+   $26 = ($$048 | 0) == 0;
+   if ($26) {
+    $27 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $28 = ($27 | 0) == (0 | 0);
+    if (!$28) {
+     $29 = $7 + 20 | 0;
+     __gcry_mpi_point_init($29);
+     $30 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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, 46925, 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 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+     $40 = $39 >>> 11;
+     $41 = $40 & 2;
+     SAFE_HEAP_STORE($7 | 0, $41 | 0, 4);
+     $42 = $39 >>> 12;
+     $$lobit = $42 & 1;
+     $43 = $7 + 4 | 0;
+     SAFE_HEAP_STORE($43 | 0, $$lobit | 0, 4);
+     $$04651 = 0;
+    }
+    $44 = __gcry_get_debug_flag(1) | 0;
+    $45 = ($44 | 0) == 0;
+    if ($45) {
+     $$pre = $7 + 8 | 0;
+     $$pre$phiZ2D = $$pre;
+    } else {
+     $46 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     $47 = __gcry_ecc_model2str($46) | 0;
+     $48 = $7 + 4 | 0;
+     $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+     $50 = __gcry_ecc_dialect2str($49) | 0;
+     $51 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+     $52 = $51 & 4096;
+     $53 = ($52 | 0) != 0;
+     $54 = $53 ? 47019 : 71847;
+     SAFE_HEAP_STORE($vararg_buffer14 | 0, $47 | 0, 4);
+     $vararg_ptr17 = $vararg_buffer14 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr17 | 0, $50 | 0, 4);
+     $vararg_ptr18 = $vararg_buffer14 + 8 | 0;
+     SAFE_HEAP_STORE($vararg_ptr18 | 0, $54 | 0, 4);
+     __gcry_log_debug(47250, $vararg_buffer14);
+     $55 = $7 + 40 | 0;
+     $56 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+     $57 = ($56 | 0) == (0 | 0);
+     if (!$57) {
+      SAFE_HEAP_STORE($vararg_buffer19 | 0, $56 | 0, 4);
+      __gcry_log_debug(47276, $vararg_buffer19);
+     }
+     $58 = $7 + 8 | 0;
+     $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47297, $59);
+     $60 = $7 + 12 | 0;
+     $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47313, $61);
+     $62 = $7 + 16 | 0;
+     $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47329, $63);
+     $64 = $7 + 20 | 0;
+     __gcry_mpi_point_log(47345, $64, 0);
+     $65 = $7 + 32 | 0;
+     $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47359, $66);
+     $67 = $7 + 36 | 0;
+     $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47375, $68);
+     $69 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47391, $69);
+     $70 = __gcry_fips_mode() | 0;
+     $71 = ($70 | 0) == 0;
+     if ($71) {
+      $72 = $7 + 56 | 0;
+      $73 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(47407, $73);
+      $$pre$phiZ2D = $58;
+     } else {
+      $$pre$phiZ2D = $58;
+     }
+    }
+    $74 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+    $75 = ($74 | 0) == (0 | 0);
+    if ($75) {
+     $$0 = 0;
+     $$045 = 0;
+     $$047 = $33;
+     $$1 = $$04651;
+     $$149 = 68;
+    } else {
+     $76 = $7 + 12 | 0;
+     $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+     $78 = ($77 | 0) == (0 | 0);
+     if ($78) {
+      $$0 = 0;
+      $$045 = 0;
+      $$047 = $33;
+      $$1 = $$04651;
+      $$149 = 68;
+     } else {
+      $79 = $7 + 16 | 0;
+      $80 = SAFE_HEAP_LOAD($79 | 0, 4, 0) | 0 | 0;
+      $81 = ($80 | 0) == (0 | 0);
+      if ($81) {
+       $$0 = 0;
+       $$045 = 0;
+       $$047 = $33;
+       $$1 = $$04651;
+       $$149 = 68;
+      } else {
+       $82 = $7 + 20 | 0;
+       $83 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+       $84 = ($83 | 0) == (0 | 0);
+       if ($84) {
+        $$0 = 0;
+        $$045 = 0;
+        $$047 = $33;
+        $$1 = $$04651;
+        $$149 = 68;
+       } else {
+        $85 = $7 + 32 | 0;
+        $86 = SAFE_HEAP_LOAD($85 | 0, 4, 0) | 0 | 0;
+        $87 = ($86 | 0) == (0 | 0);
+        if ($87) {
+         $$0 = 0;
+         $$045 = 0;
+         $$047 = $33;
+         $$1 = $$04651;
+         $$149 = 68;
+        } else {
+         $88 = $7 + 36 | 0;
+         $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+         $90 = ($89 | 0) == (0 | 0);
+         if ($90) {
+          $$0 = 0;
+          $$045 = 0;
+          $$047 = $33;
+          $$1 = $$04651;
+          $$149 = 68;
+         } else {
+          $91 = $7 + 56 | 0;
+          $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+           $97 = $96 & 4096;
+           $98 = ($97 | 0) == 0;
+           if (!$98) {
+            $99 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+            $100 = $3 + 16 | 0;
+            $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+            $102 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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;
+            }
+            SAFE_HEAP_STORE($vararg_buffer22 | 0, $94 | 0, 4);
+            $vararg_ptr25 = $vararg_buffer22 + 4 | 0;
+            SAFE_HEAP_STORE($vararg_ptr25 | 0, $95 | 0, 4);
+            $105 = __gcry_sexp_build($0, 0, 47423, $vararg_buffer22) | 0;
+            $$0 = $95;
+            $$045 = $94;
+            $$047 = $33;
+            $$1 = $$04651;
+            $$149 = $105;
+            break;
+           }
+           $106 = $96 & 8192;
+           $107 = ($106 | 0) == 0;
+           $108 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+           if ($107) {
+            $112 = $3 + 16 | 0;
+            $113 = SAFE_HEAP_LOAD($112 | 0, 4, 0) | 0 | 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;
+            }
+            SAFE_HEAP_STORE($vararg_buffer30 | 0, $94 | 0, 4);
+            $vararg_ptr33 = $vararg_buffer30 + 4 | 0;
+            SAFE_HEAP_STORE($vararg_ptr33 | 0, $95 | 0, 4);
+            $116 = __gcry_sexp_build($0, 0, 47476, $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;
+            }
+            SAFE_HEAP_STORE($vararg_buffer26 | 0, $94 | 0, 4);
+            $vararg_ptr29 = $vararg_buffer26 + 4 | 0;
+            SAFE_HEAP_STORE($vararg_ptr29 | 0, $95 | 0, 4);
+            $111 = __gcry_sexp_build($0, 0, 47450, $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 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($118);
+ $119 = $7 + 12 | 0;
+ $120 = SAFE_HEAP_LOAD($119 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($120);
+ $121 = $7 + 16 | 0;
+ $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($122);
+ $123 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($123);
+ $124 = $7 + 20 | 0;
+ __gcry_mpi_point_free_parts($124);
+ $125 = $7 + 32 | 0;
+ $126 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($126);
+ $127 = $7 + 36 | 0;
+ $128 = SAFE_HEAP_LOAD($127 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($128);
+ $129 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($129);
+ $130 = $7 + 44 | 0;
+ __gcry_mpi_point_free_parts($130);
+ $131 = $7 + 56 | 0;
+ $132 = SAFE_HEAP_LOAD($131 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($132);
+ __gcry_mpi_release($$045);
+ __gcry_mpi_release($$0);
+ __gcry_free($$1);
+ $133 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($vararg_buffer34 | 0, $136 | 0, 4);
+ __gcry_log_debug(47503, $vararg_buffer34);
+ $$050 = $$149;
+ STACKTOP = sp;
+ return $$050 | 0;
+}
+
+function __gcry_ecc_get_curve($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$01726$i = 0, $$018$i = 0, $$025$i = 0, $$072150 = 0, $$073149 = 0, $$1 
= 0, $$124$i = 0, $$174 = 0, $$275 = 0, $$3 = 0, $$mux = 0, $$not = 0, $$not273 
= 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, $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, $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, 
$brmerge = 0, $cond$i = 0, $or$cond = 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;
+ var $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, 
$vararg_ptr5 = 0, $vararg_ptr6 = 0, dest = 0, label = 0, 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;
+ SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+ dest = $10;
+ stop = dest + 44 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $12 = ($2 | 0) != (0 | 0);
+ if ($12) {
+  SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ }
+ $13 = ($0 | 0) == (0 | 0);
+ if ($13) {
+  $14 = ($1 | 0) > -1;
+  $15 = $1 >>> 0 < 22;
+  $or$cond = $14 & $15;
+  if (!$or$cond) {
+   $$1 = 0;
+   STACKTOP = sp;
+   return $$1 | 0;
+  }
+  $16 = 1356 + ($1 * 48 | 0) | 0;
+  $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+  if (!$12) {
+   $$1 = $17;
+   STACKTOP = sp;
+   return $$1 | 0;
+  }
+  $18 = (1356 + ($1 * 48 | 0) | 0) + 4 | 0;
+  $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($2 | 0, $19 | 0, 4);
+  $$1 = $17;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $20 = $10 + 8 | 0;
+ $21 = $10 + 12 | 0;
+ $22 = $10 + 16 | 0;
+ $23 = $10 + 32 | 0;
+ $24 = $10 + 36 | 0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $20 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $21 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $22 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $11 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer + 16 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $23 | 0, 4);
+ $vararg_ptr5 = $vararg_buffer + 20 | 0;
+ SAFE_HEAP_STORE($vararg_ptr5 | 0, $24 | 0, 4);
+ $vararg_ptr6 = $vararg_buffer + 24 | 0;
+ SAFE_HEAP_STORE($vararg_ptr6 | 0, 0 | 0, 4);
+ $25 = __gcry_sexp_extract_param($0, 0, 35370, $vararg_buffer) | 0;
+ $trunc = $25 & 65535;
+ L14 : do {
+  switch ($trunc << 16 >> 16) {
+  case 68:
+   {
+    $26 = __gcry_sexp_find_token($0, 46925, 5) | 0;
+    $27 = ($26 | 0) == (0 | 0);
+    if ($27) {
+     $$275 = 0;
+     $$3 = 0;
+    } else {
+     $28 = __gcry_sexp_nth_string($26, 1) | 0;
+     __gcry_sexp_release($26);
+     $29 = ($28 | 0) == (0 | 0);
+     if ($29) {
+      $$275 = 0;
+      $$3 = 0;
+     } else {
+      $$01726$i = 0;
+      while (1) {
+       $30 = 1356 + ($$01726$i * 48 | 0) | 0;
+       $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+       $32 = _strcmp($28, $31) | 0;
+       $33 = ($32 | 0) == 0;
+       if ($33) {
+        $$018$i = $$01726$i;
+        $50 = $31;
+        break;
+       }
+       $34 = $$01726$i + 1 | 0;
+       $35 = ($34 | 0) == 21;
+       if ($35) {
+        $$025$i = 0;
+        $43 = 2412;
+        label = 13;
+        break;
+       } else {
+        $$01726$i = $34;
+       }
+      }
+      L20 : do {
+       if ((label | 0) == 13) {
+        while (1) {
+         label = 0;
+         $38 = (2412 + ($$025$i << 3) | 0) + 4 | 0;
+         $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+         $40 = _strcmp($28, $39) | 0;
+         $41 = ($40 | 0) == 0;
+         $37 = $$025$i + 1 | 0;
+         if ($41) {
+          label = 14;
+          break;
+         }
+         $36 = 2412 + ($37 << 3) | 0;
+         $cond$i = ($37 | 0) == 36;
+         if ($cond$i) {
+          break;
+         } else {
+          $$025$i = $37;
+          $43 = $36;
+          label = 13;
+         }
+        }
+        if ((label | 0) == 14) {
+         $42 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+         $$124$i = 0;
+         while (1) {
+          $44 = 1356 + ($$124$i * 48 | 0) | 0;
+          $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+          $46 = _strcmp($42, $45) | 0;
+          $47 = ($46 | 0) == 0;
+          if ($47) {
+           $$018$i = $$124$i;
+           $50 = $45;
+           break L20;
+          }
+          $48 = $$124$i + 1 | 0;
+          $49 = ($48 | 0) == 21;
+          if ($49) {
+           break;
+          } else {
+           $$124$i = $48;
+          }
+         }
+        }
+        __gcry_free($28);
+        $$1 = 0;
+        STACKTOP = sp;
+        return $$1 | 0;
+       }
+      } while (0);
+      __gcry_free($28);
+      $$not = ($$018$i | 0) < 0;
+      $$not273 = $12 ^ 1;
+      $brmerge = $$not | $$not273;
+      $$mux = $$not ? 0 : $50;
+      if ($brmerge) {
+       $$1 = $$mux;
+       STACKTOP = sp;
+       return $$1 | 0;
+      }
+      $51 = (1356 + ($$018$i * 48 | 0) | 0) + 4 | 0;
+      $52 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+      SAFE_HEAP_STORE($2 | 0, $52 | 0, 4);
+      $$1 = $50;
+      STACKTOP = sp;
+      return $$1 | 0;
+     }
+    }
+    break;
+   }
+  case 0:
+   {
+    $53 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    $54 = ($53 | 0) == (0 | 0);
+    if (!$54) {
+     $55 = $10 + 20 | 0;
+     __gcry_mpi_point_init($55);
+     $56 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+     $57 = __gcry_ecc_os2ec($55, $56) | 0;
+     $58 = ($57 | 0) == 0;
+     if (!$58) {
+      $$275 = 0;
+      $$3 = 0;
+      break L14;
+     }
+    }
+    $59 = $10 + 20 | 0;
+    $60 = $10 + 24 | 0;
+    $$072150 = 0;
+    $$073149 = 0;
+    $125 = 1356;
+    while (1) {
+     __gcry_mpi_free($$073149);
+     $61 = (1356 + ($$072150 * 48 | 0) | 0) + 20 | 0;
+     $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+     $63 = __gcry_mpi_scan($8, 4, $62, 0, 0) | 0;
+     $64 = ($63 | 0) == 0;
+     if (!$64) {
+      label = 24;
+      break;
+     }
+     $66 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+     $67 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+     $68 = __gcry_mpi_cmp($66, $67) | 0;
+     $69 = ($68 | 0) == 0;
+     if ($69) {
+      __gcry_mpi_free($66);
+      $70 = (1356 + ($$072150 * 48 | 0) | 0) + 24 | 0;
+      $71 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+      $72 = __gcry_mpi_scan($7, 4, $71, 0, 0) | 0;
+      $73 = ($72 | 0) == 0;
+      if (!$73) {
+       label = 27;
+       break;
+      }
+      $75 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+      $76 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+      $77 = __gcry_mpi_cmp($75, $76) | 0;
+      $78 = ($77 | 0) == 0;
+      if ($78) {
+       __gcry_mpi_free($75);
+       $79 = (1356 + ($$072150 * 48 | 0) | 0) + 28 | 0;
+       $80 = SAFE_HEAP_LOAD($79 | 0, 4, 0) | 0 | 0;
+       $81 = __gcry_mpi_scan($6, 4, $80, 0, 0) | 0;
+       $82 = ($81 | 0) == 0;
+       if (!$82) {
+        label = 30;
+        break;
+       }
+       $84 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $85 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+       $86 = __gcry_mpi_cmp($84, $85) | 0;
+       $87 = ($86 | 0) == 0;
+       if ($87) {
+        __gcry_mpi_free($84);
+        $88 = (1356 + ($$072150 * 48 | 0) | 0) + 32 | 0;
+        $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+        $90 = __gcry_mpi_scan($5, 4, $89, 0, 0) | 0;
+        $91 = ($90 | 0) == 0;
+        if (!$91) {
+         label = 33;
+         break;
+        }
+        $93 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+        $94 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+        $95 = __gcry_mpi_cmp($93, $94) | 0;
+        $96 = ($95 | 0) == 0;
+        if ($96) {
+         __gcry_mpi_free($93);
+         $97 = (1356 + ($$072150 * 48 | 0) | 0) + 44 | 0;
+         $98 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+         $99 = __gcry_mpi_scan($4, 4, $98, 0, 0) | 0;
+         $100 = ($99 | 0) == 0;
+         if (!$100) {
+          label = 36;
+          break;
+         }
+         $102 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+         $103 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+         $104 = __gcry_mpi_cmp($102, $103) | 0;
+         $105 = ($104 | 0) == 0;
+         if ($105) {
+          __gcry_mpi_free($102);
+          $106 = (1356 + ($$072150 * 48 | 0) | 0) + 36 | 0;
+          $107 = SAFE_HEAP_LOAD($106 | 0, 4, 0) | 0 | 0;
+          $108 = __gcry_mpi_scan($3, 4, $107, 0, 0) | 0;
+          $109 = ($108 | 0) == 0;
+          if (!$109) {
+           label = 39;
+           break;
+          }
+          $111 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+          $112 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+          $113 = __gcry_mpi_cmp($111, $112) | 0;
+          $114 = ($113 | 0) == 0;
+          if ($114) {
+           __gcry_mpi_free($111);
+           $115 = (1356 + ($$072150 * 48 | 0) | 0) + 40 | 0;
+           $116 = SAFE_HEAP_LOAD($115 | 0, 4, 0) | 0 | 0;
+           $117 = __gcry_mpi_scan($9, 4, $116, 0, 0) | 0;
+           $118 = ($117 | 0) == 0;
+           if (!$118) {
+            label = 42;
+            break;
+           }
+           $120 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+           $121 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+           $122 = __gcry_mpi_cmp($120, $121) | 0;
+           $123 = ($122 | 0) == 0;
+           if ($123) {
+            label = 44;
+            break;
+           } else {
+            $$174 = $120;
+           }
+          } else {
+           $$174 = $111;
+          }
+         } else {
+          $$174 = $102;
+         }
+        } else {
+         $$174 = $93;
+        }
+       } else {
+        $$174 = $84;
+       }
+      } else {
+       $$174 = $75;
+      }
+     } else {
+      $$174 = $66;
+     }
+     $128 = $$072150 + 1 | 0;
+     $129 = 1356 + ($128 * 48 | 0) | 0;
+     $130 = ($128 | 0) == 21;
+     if ($130) {
+      $$275 = $$174;
+      $$3 = 0;
+      break L14;
+     } else {
+      $$072150 = $128;
+      $$073149 = $$174;
+      $125 = $129;
+     }
+    }
+    if ((label | 0) == 24) {
+     $65 = _gpg_strerror($63) | 0;
+     SAFE_HEAP_STORE($vararg_buffer7 | 0, $65 | 0, 4);
+     __gcry_log_fatal(35626, $vararg_buffer7);
+    } else if ((label | 0) == 27) {
+     $74 = _gpg_strerror($72) | 0;
+     SAFE_HEAP_STORE($vararg_buffer10 | 0, $74 | 0, 4);
+     __gcry_log_fatal(35626, $vararg_buffer10);
+    } else if ((label | 0) == 30) {
+     $83 = _gpg_strerror($81) | 0;
+     SAFE_HEAP_STORE($vararg_buffer13 | 0, $83 | 0, 4);
+     __gcry_log_fatal(35626, $vararg_buffer13);
+    } else if ((label | 0) == 33) {
+     $92 = _gpg_strerror($90) | 0;
+     SAFE_HEAP_STORE($vararg_buffer16 | 0, $92 | 0, 4);
+     __gcry_log_fatal(35626, $vararg_buffer16);
+    } else if ((label | 0) == 36) {
+     $101 = _gpg_strerror($99) | 0;
+     SAFE_HEAP_STORE($vararg_buffer19 | 0, $101 | 0, 4);
+     __gcry_log_fatal(35626, $vararg_buffer19);
+    } else if ((label | 0) == 39) {
+     $110 = _gpg_strerror($108) | 0;
+     SAFE_HEAP_STORE($vararg_buffer22 | 0, $110 | 0, 4);
+     __gcry_log_fatal(35626, $vararg_buffer22);
+    } else if ((label | 0) == 42) {
+     $119 = _gpg_strerror($117) | 0;
+     SAFE_HEAP_STORE($vararg_buffer25 | 0, $119 | 0, 4);
+     __gcry_log_fatal(35626, $vararg_buffer25);
+    } else if ((label | 0) == 44) {
+     $124 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 0;
+     if (!$12) {
+      $$275 = $120;
+      $$3 = $124;
+      break L14;
+     }
+     $126 = (1356 + ($$072150 * 48 | 0) | 0) + 4 | 0;
+     $127 = SAFE_HEAP_LOAD($126 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($2 | 0, $127 | 0, 4);
+     $$275 = $120;
+     $$3 = $124;
+     break L14;
+    }
+    break;
+   }
+  default:
+   {
+    $$275 = 0;
+    $$3 = 0;
+   }
+  }
+ } while (0);
+ __gcry_mpi_release($$275);
+ $131 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($131);
+ $132 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($132);
+ $133 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($133);
+ $134 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($134);
+ $135 = $10 + 20 | 0;
+ __gcry_mpi_point_free_parts($135);
+ $136 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($136);
+ $137 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($137);
+ $$1 = $$3;
+ STACKTOP = sp;
+ return $$1 | 0;
+}
+
+function _ghash_internal($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$0$i = 0, $$0$lcssa = 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, $267 = 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, $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;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $4 = sp;
+ $5 = ($3 | 0) == 0;
+ if ($5) {
+  $$0$lcssa = 0;
+  $265 = ($$0$lcssa | 0) != 0;
+  $266 = $265 ? 20 : 0;
+  $267 = $266 + $$0$lcssa | 0;
+  STACKTOP = sp;
+  return $267 | 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 = $1 + 2 | 0;
+ $15 = $1 + 3 | 0;
+ $16 = $1 + 5 | 0;
+ $17 = $1 + 6 | 0;
+ $18 = $1 + 7 | 0;
+ $19 = $1 + 9 | 0;
+ $20 = $1 + 10 | 0;
+ $21 = $1 + 11 | 0;
+ $22 = $1 + 13 | 0;
+ $23 = $1 + 14 | 0;
+ $24 = $1 + 15 | 0;
+ $25 = $4 + 1 | 0;
+ $26 = $4 + 2 | 0;
+ $27 = $4 + 3 | 0;
+ $28 = $4 + 5 | 0;
+ $29 = $4 + 6 | 0;
+ $30 = $4 + 7 | 0;
+ $31 = $4 + 9 | 0;
+ $32 = $4 + 10 | 0;
+ $33 = $4 + 11 | 0;
+ $34 = $4 + 13 | 0;
+ $35 = $4 + 14 | 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) {
+   $104 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+   $105 = $$01017 + 4 | 0;
+   $106 = SAFE_HEAP_LOAD($$01017 | 0, 4, 0) | 0 | 0;
+   $107 = $106 ^ $104;
+   SAFE_HEAP_STORE($4 | 0, $107 | 0, 4);
+   $108 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $109 = $$01017 + 8 | 0;
+   $110 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+   $111 = $110 ^ $108;
+   SAFE_HEAP_STORE($8 | 0, $111 | 0, 4);
+   $112 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $113 = $$01017 + 12 | 0;
+   $114 = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 0;
+   $115 = $114 ^ $112;
+   SAFE_HEAP_STORE($10 | 0, $115 | 0, 4);
+   $116 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+   $117 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+   $118 = $117 ^ $116;
+   SAFE_HEAP_STORE($12 | 0, $118 | 0, 4);
+   $119 = $118 >>> 24;
+   $120 = $119 & 255;
+   $121 = $118 >>> 16;
+   $122 = $121 & 255;
+   $124 = $120;
+   $132 = $122;
+  } else {
+   $41 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+   $42 = $$01017 + 1 | 0;
+   $43 = SAFE_HEAP_LOAD($$01017 >> 0 | 0, 1, 0) | 0 | 0;
+   $44 = $43 ^ $41;
+   SAFE_HEAP_STORE($4 >> 0 | 0, $44 | 0, 1);
+   $45 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+   $46 = $$01017 + 2 | 0;
+   $47 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+   $48 = $47 ^ $45;
+   SAFE_HEAP_STORE($25 >> 0 | 0, $48 | 0, 1);
+   $49 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+   $50 = $$01017 + 3 | 0;
+   $51 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+   $52 = $51 ^ $49;
+   SAFE_HEAP_STORE($26 >> 0 | 0, $52 | 0, 1);
+   $53 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+   $54 = $$01017 + 4 | 0;
+   $55 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+   $56 = $55 ^ $53;
+   SAFE_HEAP_STORE($27 >> 0 | 0, $56 | 0, 1);
+   $57 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+   $58 = $$01017 + 5 | 0;
+   $59 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+   $60 = $59 ^ $57;
+   SAFE_HEAP_STORE($8 >> 0 | 0, $60 | 0, 1);
+   $61 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+   $62 = $$01017 + 6 | 0;
+   $63 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+   $64 = $63 ^ $61;
+   SAFE_HEAP_STORE($28 >> 0 | 0, $64 | 0, 1);
+   $65 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+   $66 = $$01017 + 7 | 0;
+   $67 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+   $68 = $67 ^ $65;
+   SAFE_HEAP_STORE($29 >> 0 | 0, $68 | 0, 1);
+   $69 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+   $70 = $$01017 + 8 | 0;
+   $71 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+   $72 = $71 ^ $69;
+   SAFE_HEAP_STORE($30 >> 0 | 0, $72 | 0, 1);
+   $73 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+   $74 = $$01017 + 9 | 0;
+   $75 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+   $76 = $75 ^ $73;
+   SAFE_HEAP_STORE($10 >> 0 | 0, $76 | 0, 1);
+   $77 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+   $78 = $$01017 + 10 | 0;
+   $79 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+   $80 = $79 ^ $77;
+   SAFE_HEAP_STORE($31 >> 0 | 0, $80 | 0, 1);
+   $81 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+   $82 = $$01017 + 11 | 0;
+   $83 = SAFE_HEAP_LOAD($78 >> 0 | 0, 1, 0) | 0 | 0;
+   $84 = $83 ^ $81;
+   SAFE_HEAP_STORE($32 >> 0 | 0, $84 | 0, 1);
+   $85 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+   $86 = $$01017 + 12 | 0;
+   $87 = SAFE_HEAP_LOAD($82 >> 0 | 0, 1, 0) | 0 | 0;
+   $88 = $87 ^ $85;
+   SAFE_HEAP_STORE($33 >> 0 | 0, $88 | 0, 1);
+   $89 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+   $90 = $$01017 + 13 | 0;
+   $91 = SAFE_HEAP_LOAD($86 >> 0 | 0, 1, 0) | 0 | 0;
+   $92 = $91 ^ $89;
+   SAFE_HEAP_STORE($12 >> 0 | 0, $92 | 0, 1);
+   $93 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+   $94 = $$01017 + 14 | 0;
+   $95 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 0) | 0 | 0;
+   $96 = $95 ^ $93;
+   SAFE_HEAP_STORE($34 >> 0 | 0, $96 | 0, 1);
+   $97 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+   $98 = $$01017 + 15 | 0;
+   $99 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+   $100 = $99 ^ $97;
+   SAFE_HEAP_STORE($35 >> 0 | 0, $100 | 0, 1);
+   $101 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+   $102 = SAFE_HEAP_LOAD($98 >> 0 | 0, 1, 0) | 0 | 0;
+   $103 = $102 ^ $101;
+   SAFE_HEAP_STORE($36 >> 0 | 0, $103 | 0, 1);
+   $124 = $103;
+   $132 = $100;
+  }
+  $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 = SAFE_HEAP_LOAD($127 | 0, 4, 0) | 0 | 0;
+  $134 = $133 >>> 4;
+  $135 = $127 + 12 | 0;
+  $136 = SAFE_HEAP_LOAD($135 | 0, 4, 0) | 0 | 0;
+  $137 = $136 << 4;
+  $138 = $137 & 240;
+  $139 = 17762 + ($138 << 1) | 0;
+  $140 = SAFE_HEAP_LOAD($139 | 0, 2, 0) | 0 | 0;
+  $141 = $140 & 65535;
+  $142 = $141 << 16;
+  $143 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+  $144 = $143 ^ $134;
+  $145 = $144 ^ $142;
+  $146 = $127 + 4 | 0;
+  $147 = SAFE_HEAP_LOAD($146 | 0, 4, 0) | 0 | 0;
+  $148 = $147 >>> 4;
+  $149 = $133 << 28;
+  $150 = $148 | $149;
+  $151 = $130 + 4 | 0;
+  $152 = SAFE_HEAP_LOAD($151 | 0, 4, 0) | 0 | 0;
+  $153 = $150 ^ $152;
+  $154 = $127 + 8 | 0;
+  $155 = SAFE_HEAP_LOAD($154 | 0, 4, 0) | 0 | 0;
+  $156 = $155 >>> 4;
+  $157 = $147 << 28;
+  $158 = $156 | $157;
+  $159 = $130 + 8 | 0;
+  $160 = SAFE_HEAP_LOAD($159 | 0, 4, 0) | 0 | 0;
+  $161 = $158 ^ $160;
+  $162 = $136 >>> 4;
+  $163 = $155 << 28;
+  $164 = $163 | $162;
+  $165 = $130 + 12 | 0;
+  $166 = SAFE_HEAP_LOAD($165 | 0, 4, 0) | 0 | 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 = 17762 + ($175 << 1) | 0;
+   $177 = SAFE_HEAP_LOAD($176 | 0, 2, 0) | 0 | 0;
+   $178 = $177 & 65535;
+   $179 = $178 << 16;
+   $180 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+   $181 = $$sroa$044$0$i << 24;
+   $182 = $$sroa$8$0$i >>> 8;
+   $183 = $182 | $181;
+   $184 = $173 + 4 | 0;
+   $185 = SAFE_HEAP_LOAD($184 | 0, 4, 0) | 0 | 0;
+   $186 = $185 ^ $183;
+   $187 = $$sroa$8$0$i << 24;
+   $188 = $$sroa$15$0$i >>> 8;
+   $189 = $188 | $187;
+   $190 = $173 + 8 | 0;
+   $191 = SAFE_HEAP_LOAD($190 | 0, 4, 0) | 0 | 0;
+   $192 = $191 ^ $189;
+   $193 = $$sroa$15$0$i << 24;
+   $194 = $$sroa$22$0$i >>> 8;
+   $195 = $194 | $193;
+   $196 = $173 + 12 | 0;
+   $197 = SAFE_HEAP_LOAD($196 | 0, 4, 0) | 0 | 0;
+   $198 = $197 ^ $195;
+   $199 = SAFE_HEAP_LOAD($170 | 0, 4, 0) | 0 | 0;
+   $200 = $199 >>> 4;
+   $201 = $170 + 12 | 0;
+   $202 = SAFE_HEAP_LOAD($201 | 0, 4, 0) | 0 | 0;
+   $203 = $202 << 4;
+   $204 = $203 & 240;
+   $205 = 17762 + ($204 << 1) | 0;
+   $206 = SAFE_HEAP_LOAD($205 | 0, 2, 0) | 0 | 0;
+   $207 = $206 & 65535;
+   $208 = $207 << 16;
+   $209 = $180 ^ $174;
+   $210 = $209 ^ $179;
+   $211 = $210 ^ $200;
+   $212 = $208 ^ $211;
+   $213 = $170 + 4 | 0;
+   $214 = SAFE_HEAP_LOAD($213 | 0, 4, 0) | 0 | 0;
+   $215 = $214 >>> 4;
+   $216 = $199 << 28;
+   $217 = $215 | $216;
+   $218 = $186 ^ $217;
+   $219 = $170 + 8 | 0;
+   $220 = SAFE_HEAP_LOAD($219 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($231 >> 0 | 0, 1, 0) | 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;
+  SAFE_HEAP_STORE($1 >> 0 | 0, $235 | 0, 1);
+  $236 = $212 >>> 16;
+  $237 = $236 & 255;
+  SAFE_HEAP_STORE($13 >> 0 | 0, $237 | 0, 1);
+  $238 = $211 >>> 8;
+  $239 = $238 & 255;
+  SAFE_HEAP_STORE($14 >> 0 | 0, $239 | 0, 1);
+  $240 = $211 & 255;
+  SAFE_HEAP_STORE($15 >> 0 | 0, $240 | 0, 1);
+  $241 = $218 >>> 24;
+  $242 = $241 & 255;
+  SAFE_HEAP_STORE($7 >> 0 | 0, $242 | 0, 1);
+  $243 = $218 >>> 16;
+  $244 = $243 & 255;
+  SAFE_HEAP_STORE($16 >> 0 | 0, $244 | 0, 1);
+  $245 = $218 >>> 8;
+  $246 = $245 & 255;
+  SAFE_HEAP_STORE($17 >> 0 | 0, $246 | 0, 1);
+  $247 = $218 & 255;
+  SAFE_HEAP_STORE($18 >> 0 | 0, $247 | 0, 1);
+  $248 = $224 >>> 24;
+  $249 = $248 & 255;
+  SAFE_HEAP_STORE($9 >> 0 | 0, $249 | 0, 1);
+  $250 = $224 >>> 16;
+  $251 = $250 & 255;
+  SAFE_HEAP_STORE($19 >> 0 | 0, $251 | 0, 1);
+  $252 = $224 >>> 8;
+  $253 = $252 & 255;
+  SAFE_HEAP_STORE($20 >> 0 | 0, $253 | 0, 1);
+  $254 = $224 & 255;
+  SAFE_HEAP_STORE($21 >> 0 | 0, $254 | 0, 1);
+  $255 = $228 >>> 24;
+  $256 = $255 & 255;
+  SAFE_HEAP_STORE($11 >> 0 | 0, $256 | 0, 1);
+  $257 = $228 >>> 16;
+  $258 = $257 & 255;
+  SAFE_HEAP_STORE($22 >> 0 | 0, $258 | 0, 1);
+  $259 = $228 >>> 8;
+  $260 = $259 & 255;
+  SAFE_HEAP_STORE($23 >> 0 | 0, $260 | 0, 1);
+  $261 = $228 & 255;
+  SAFE_HEAP_STORE($24 >> 0 | 0, $261 | 0, 1);
+  $262 = $$01017 + 16 | 0;
+  $263 = $$01116 + -1 | 0;
+  $264 = ($263 | 0) == 0;
+  if ($264) {
+   $$0$lcssa = 76;
+   break;
+  } else {
+   $$01017 = $262;
+   $$01116 = $263;
+  }
+ }
+ $265 = ($$0$lcssa | 0) != 0;
+ $266 = $265 ? 20 : 0;
+ $267 = $266 + $$0$lcssa | 0;
+ STACKTOP = sp;
+ return $267 | 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, $$0$lcssa$i = 0, $$0$lcssa$i165 = 0, $$0126 = 0, 
$$0127$lcssa196 = 0, $$0127186 = 0, $$0130$lcssa195 = 0, $$0130185 = 0, $$0135 
= 0, $$0138 = 0, $$0140 = 0, $$0143 = 0, $$02432$i = 0, $$02531$i = 0, 
$$02629$i = 0, $$02728$i = 0, $$033$i = 0, $$034$lcssa$i = 0, $$034$lcssa$i164 
= 0;
+ var $$03446$i = 0, $$03446$i154 = 0, $$035$lcssa$i = 0, $$035$lcssa$i163 = 0, 
$$03545$i = 0, $$03545$i155 = 0, $$036$lcssa$i = 0, $$036$lcssa$i162 = 0, 
$$03644$i = 0, $$03644$i156 = 0, $$037$ph$i = 0, $$037$ph$i169 = 0, $$03742$i = 
0, $$03742$i173 = 0, $$038$ph$i = 0, $$038$ph$i168 = 0, $$03841$i = 0, 
$$03841$i174 = 0, $$039$ph$i = 0, $$039$ph$i167 = 0;
+ var $$03940$i = 0, $$03940$i175 = 0, $$047$i = 0, $$047$i153 = 0, $$1 = 0, 
$$1$ph$i = 0, $$1$ph$i170 = 0, $$1128 = 0, $$1131 = 0, $$1136 = 0, $$1141 = 0, 
$$130$i = 0, $$143$i = 0, $$143$i172 = 0, $$2 = 0, $$2137 = 0, $$2142 = 0, 
$$3$ph = 0, $$3133$ph = 0, $$3133183 = 0;
+ var $$3184 = 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, $161 = 0, $162 = 0, $163 = 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, $scevgep = 0, $scevgep$i = 0, $scevgep$i144 = 0, 
$scevgep$i149 = 0, $scevgep42$i = 0, $scevgep58$i = 0, $scevgep58$i150 = 0, 
$scevgep60$i = 0, $scevgep60$i151 = 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = $7 + 36 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = $7 + 20 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $2 >>> 0 < $4 >>> 0;
+ if ($12) {
+  $$0 = 200;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $13 = $0 + 112 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = ($14 | 0) == 0;
+ if ($15) {
+  $$0126 = $1;
+  $$0135 = $3;
+  $$0140 = $4;
+ } else {
+  $16 = $11 >>> 0 > $14 >>> 0;
+  if (!$16) {
+   __gcry_assert_failed(46565, 46587, 53, 46600);
+  }
+  $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;
+  if ($26) {
+   $27 = $$ >>> 0 > 3;
+   if ($27) {
+    $28 = $$ + -4 | 0;
+    $29 = $28 & -4;
+    $30 = $29 + 4 | 0;
+    $scevgep58$i = $19 + $30 | 0;
+    $$03446$i = $19;
+    $$03545$i = $3;
+    $$03644$i = $1;
+    $$047$i = $$;
+    while (1) {
+     $31 = $$03545$i + 4 | 0;
+     $32 = SAFE_HEAP_LOAD($$03545$i | 0, 4, 0) | 0 | 0;
+     $33 = $$03446$i + 4 | 0;
+     $34 = SAFE_HEAP_LOAD($$03446$i | 0, 4, 0) | 0 | 0;
+     $35 = $34 ^ $32;
+     $36 = $$03644$i + 4 | 0;
+     SAFE_HEAP_STORE($$03644$i | 0, $35 | 0, 4);
+     $37 = $$047$i + -4 | 0;
+     $38 = $37 >>> 0 > 3;
+     if ($38) {
+      $$03446$i = $33;
+      $$03545$i = $31;
+      $$03644$i = $36;
+      $$047$i = $37;
+     } else {
+      break;
+     }
+    }
+    $scevgep$i = $3 + $30 | 0;
+    $scevgep60$i = $1 + $30 | 0;
+    $39 = $28 - $29 | 0;
+    $$0$lcssa$i = $39;
+    $$034$lcssa$i = $scevgep58$i;
+    $$035$lcssa$i = $scevgep$i;
+    $$036$lcssa$i = $scevgep60$i;
+   } else {
+    $$0$lcssa$i = $$;
+    $$034$lcssa$i = $19;
+    $$035$lcssa$i = $3;
+    $$036$lcssa$i = $1;
+   }
+   $$037$ph$i = $$034$lcssa$i;
+   $$038$ph$i = $$035$lcssa$i;
+   $$039$ph$i = $$036$lcssa$i;
+   $$1$ph$i = $$0$lcssa$i;
+  } else {
+   $$037$ph$i = $19;
+   $$038$ph$i = $3;
+   $$039$ph$i = $1;
+   $$1$ph$i = $$;
+  }
+  $40 = ($$1$ph$i | 0) == 0;
+  if ($40) {
+   $50 = $14;
+  } else {
+   $$03742$i = $$037$ph$i;
+   $$03841$i = $$038$ph$i;
+   $$03940$i = $$039$ph$i;
+   $$143$i = $$1$ph$i;
+   while (1) {
+    $41 = $$03841$i + 1 | 0;
+    $42 = SAFE_HEAP_LOAD($$03841$i >> 0 | 0, 1, 0) | 0 | 0;
+    $43 = $$03742$i + 1 | 0;
+    $44 = SAFE_HEAP_LOAD($$03742$i >> 0 | 0, 1, 0) | 0 | 0;
+    $45 = $44 ^ $42;
+    $46 = $$03940$i + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i >> 0 | 0, $45 | 0, 1);
+    $47 = $$143$i + -1 | 0;
+    $48 = ($47 | 0) == 0;
+    if ($48) {
+     break;
+    } else {
+     $$03742$i = $43;
+     $$03841$i = $41;
+     $$03940$i = $46;
+     $$143$i = $47;
+    }
+   }
+   $$pre = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $50 = $$pre;
+  }
+  $49 = $50 - $$ | 0;
+  SAFE_HEAP_STORE($13 | 0, $49 | 0, 4);
+  $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 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 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[(SAFE_FT_MASK($57 | 0, 127 | 0) | 0) & 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 = $5;
+ $$0138 = 0;
+ $$2 = $$1;
+ $$2137 = $$1136;
+ $$2142 = $$1141;
+ while (1) {
+  $69 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($9 | 0, 127 | 0) | 0) & 127]($66, 
$5, $67) | 0;
+  $70 = $69 >>> 0 > $$0138 >>> 0;
+  $71 = $70 ? $69 : $$0138;
+  $$0143 = $11;
+  while (1) {
+   $72 = ($$0143 | 0) > 0;
+   if (!$72) {
+    break;
+   }
+   $73 = $$0143 + -1 | 0;
+   $74 = $67 + $73 | 0;
+   $75 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+   $76 = $75 + 1 << 24 >> 24;
+   SAFE_HEAP_STORE($74 >> 0 | 0, $76 | 0, 1);
+   $77 = $76 << 24 >> 24 == 0;
+   if ($77) {
+    $$0143 = $73;
+   } else {
+    break;
+   }
+  }
+  $78 = $11 >>> 0 < $$2142 >>> 0;
+  $79 = $78 ? $11 : $$2142;
+  $80 = $$2;
+  $81 = $$2137;
+  $82 = $81 | $68;
+  $83 = $82 | $80;
+  $84 = $83 & 3;
+  $85 = ($84 | 0) == 0;
+  if ($85) {
+   $86 = $79 >>> 0 > 3;
+   if ($86) {
+    $87 = $79 + -4 | 0;
+    $88 = $87 & -4;
+    $89 = $88 + 4 | 0;
+    $scevgep58$i150 = $5 + $89 | 0;
+    $$03446$i154 = $5;
+    $$03545$i155 = $$2137;
+    $$03644$i156 = $$2;
+    $$047$i153 = $79;
+    while (1) {
+     $90 = $$03545$i155 + 4 | 0;
+     $91 = SAFE_HEAP_LOAD($$03545$i155 | 0, 4, 0) | 0 | 0;
+     $92 = $$03446$i154 + 4 | 0;
+     $93 = SAFE_HEAP_LOAD($$03446$i154 | 0, 4, 0) | 0 | 0;
+     $94 = $93 ^ $91;
+     $95 = $$03644$i156 + 4 | 0;
+     SAFE_HEAP_STORE($$03644$i156 | 0, $94 | 0, 4);
+     $96 = $$047$i153 + -4 | 0;
+     $97 = $96 >>> 0 > 3;
+     if ($97) {
+      $$03446$i154 = $92;
+      $$03545$i155 = $90;
+      $$03644$i156 = $95;
+      $$047$i153 = $96;
+     } else {
+      break;
+     }
+    }
+    $scevgep$i149 = $$2137 + $89 | 0;
+    $scevgep60$i151 = $$2 + $89 | 0;
+    $98 = $87 - $88 | 0;
+    $$0$lcssa$i165 = $98;
+    $$034$lcssa$i164 = $scevgep58$i150;
+    $$035$lcssa$i163 = $scevgep$i149;
+    $$036$lcssa$i162 = $scevgep60$i151;
+   } else {
+    $$0$lcssa$i165 = $79;
+    $$034$lcssa$i164 = $5;
+    $$035$lcssa$i163 = $$2137;
+    $$036$lcssa$i162 = $$2;
+   }
+   $$037$ph$i169 = $$034$lcssa$i164;
+   $$038$ph$i168 = $$035$lcssa$i163;
+   $$039$ph$i167 = $$036$lcssa$i162;
+   $$1$ph$i170 = $$0$lcssa$i165;
+  } else {
+   $$037$ph$i169 = $5;
+   $$038$ph$i168 = $$2137;
+   $$039$ph$i167 = $$2;
+   $$1$ph$i170 = $79;
+  }
+  $99 = ($$1$ph$i170 | 0) == 0;
+  if (!$99) {
+   $$03742$i173 = $$037$ph$i169;
+   $$03841$i174 = $$038$ph$i168;
+   $$03940$i175 = $$039$ph$i167;
+   $$143$i172 = $$1$ph$i170;
+   while (1) {
+    $100 = $$03841$i174 + 1 | 0;
+    $101 = SAFE_HEAP_LOAD($$03841$i174 >> 0 | 0, 1, 0) | 0 | 0;
+    $102 = $$03742$i173 + 1 | 0;
+    $103 = SAFE_HEAP_LOAD($$03742$i173 >> 0 | 0, 1, 0) | 0 | 0;
+    $104 = $103 ^ $101;
+    $105 = $$03940$i175 + 1 | 0;
+    SAFE_HEAP_STORE($$03940$i175 >> 0 | 0, $104 | 0, 1);
+    $106 = $$143$i172 + -1 | 0;
+    $107 = ($106 | 0) == 0;
+    if ($107) {
+     break;
+    } else {
+     $$03742$i173 = $102;
+     $$03841$i174 = $100;
+     $$03940$i175 = $105;
+     $$143$i172 = $106;
+    }
+   }
+  }
+  $108 = $$2142 - $79 | 0;
+  $109 = $$2 + $79 | 0;
+  $110 = $$2137 + $79 | 0;
+  $111 = ($108 | 0) == 0;
+  if ($111) {
+   break;
+  } else {
+   $$0138 = $71;
+   $$2 = $109;
+   $$2137 = $110;
+   $$2142 = $108;
+  }
+ }
+ $112 = $11 - $79 | 0;
+ SAFE_HEAP_STORE($13 | 0, $112 | 0, 4);
+ $113 = ($112 | 0) == 0;
+ do {
+  if (!$113) {
+   $114 = ($0 + 96 | 0) + $79 | 0;
+   $115 = $5 + $79 | 0;
+   $116 = $114;
+   $117 = $115;
+   $118 = $117 | $116;
+   $119 = $118 & 3;
+   $120 = ($119 | 0) == 0;
+   $121 = $112 >>> 0 > 3;
+   $or$cond = $121 & $120;
+   if ($or$cond) {
+    $122 = $112 + -4 | 0;
+    $123 = $122 & -4;
+    $124 = $123 + 4 | 0;
+    $scevgep$i144 = $115 + $124 | 0;
+    $$02432$i = $115;
+    $$02531$i = $114;
+    $$033$i = $112;
+    while (1) {
+     $125 = $$02432$i + 4 | 0;
+     $126 = SAFE_HEAP_LOAD($$02432$i | 0, 4, 0) | 0 | 0;
+     $127 = $$02531$i + 4 | 0;
+     SAFE_HEAP_STORE($$02531$i | 0, $126 | 0, 4);
+     $128 = $$033$i + -4 | 0;
+     $129 = $128 >>> 0 > 3;
+     if ($129) {
+      $$02432$i = $125;
+      $$02531$i = $127;
+      $$033$i = $128;
+     } else {
+      break;
+     }
+    }
+    $scevgep42$i = $114 + $124 | 0;
+    $130 = $122 - $123 | 0;
+    $131 = ($130 | 0) == 0;
+    if ($131) {
+     break;
+    } else {
+     $$02629$i = $scevgep$i144;
+     $$02728$i = $scevgep42$i;
+     $$130$i = $130;
+    }
+   } else {
+    $$02629$i = $115;
+    $$02728$i = $114;
+    $$130$i = $112;
+   }
+   while (1) {
+    $132 = $$02629$i + 1 | 0;
+    $133 = SAFE_HEAP_LOAD($$02629$i >> 0 | 0, 1, 0) | 0 | 0;
+    $134 = $$02728$i + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i >> 0 | 0, $133 | 0, 1);
+    $135 = $$130$i + -1 | 0;
+    $136 = ($135 | 0) == 0;
+    if ($136) {
+     break;
+    } else {
+     $$02629$i = $132;
+     $$02728$i = $134;
+     $$130$i = $135;
+    }
+   }
+  }
+ } while (0);
+ $137 = $68 & 7;
+ $138 = ($137 | 0) == 0;
+ if ($138) {
+  $$0127$lcssa196 = 16;
+  $$0130$lcssa195 = $5;
+  label = 41;
+ } else {
+  $$0127186 = 16;
+  $$0130185 = $5;
+  while (1) {
+   SAFE_HEAP_STORE($$0130185 >> 0 | 0, 0 | 0, 1);
+   $139 = $$0130185 + 1 | 0;
+   $140 = $$0127186 + -1 | 0;
+   $141 = $139;
+   $142 = $141 & 7;
+   $143 = ($142 | 0) != 0;
+   $144 = ($140 | 0) != 0;
+   $145 = $144 & $143;
+   if ($145) {
+    $$0127186 = $140;
+    $$0130185 = $139;
+   } else {
+    break;
+   }
+  }
+  $146 = $140 >>> 0 < 8;
+  if ($146) {
+   $$3$ph = $140;
+   $$3133$ph = $139;
+  } else {
+   $$0127$lcssa196 = $140;
+   $$0130$lcssa195 = $139;
+   label = 41;
+  }
+ }
+ if ((label | 0) == 41) {
+  $147 = $$0127$lcssa196 + -8 | 0;
+  $148 = $147 & -8;
+  $149 = $148 + 8 | 0;
+  $$1128 = $$0127$lcssa196;
+  $$1131 = $$0130$lcssa195;
+  while (1) {
+   $150 = $$1131;
+   $151 = $150;
+   SAFE_HEAP_STORE($151 | 0, 0 | 0, 4);
+   $152 = $150 + 4 | 0;
+   $153 = $152;
+   SAFE_HEAP_STORE($153 | 0, 0 | 0, 4);
+   $154 = $$1128 + -8 | 0;
+   $155 = $$1131 + 8 | 0;
+   $156 = $154 >>> 0 > 7;
+   if ($156) {
+    $$1128 = $154;
+    $$1131 = $155;
+   } else {
+    break;
+   }
+  }
+  $157 = $147 - $148 | 0;
+  $scevgep = $$0130$lcssa195 + $149 | 0;
+  $$3$ph = $157;
+  $$3133$ph = $scevgep;
+ }
+ $158 = ($$3$ph | 0) == 0;
+ if (!$158) {
+  $$3133183 = $$3133$ph;
+  $$3184 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3133183 >> 0 | 0, 0 | 0, 1);
+   $159 = $$3133183 + 1 | 0;
+   $160 = $$3184 + -1 | 0;
+   $161 = ($160 | 0) == 0;
+   if ($161) {
+    break;
+   } else {
+    $$3133183 = $159;
+    $$3184 = $160;
+   }
+  }
+ }
+ $162 = ($71 | 0) == 0;
+ if ($162) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $163 = $71 + 16 | 0;
+ ___gcry_burn_stack($163);
+ $$0 = 0;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _compute_keygrip_1808($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$060 = 0, $$06370$ph = 0, $$069 = 0, $$164 = 0, $$26783 = 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 + 176 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(176 | 0);
+ $vararg_buffer30 = sp + 88 | 0;
+ $vararg_buffer26 = sp + 80 | 0;
+ $vararg_buffer22 = sp + 72 | 0;
+ $vararg_buffer18 = sp + 64 | 0;
+ $vararg_buffer8 = sp + 32 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 116 | 0;
+ $3 = sp + 112 | 0;
+ $4 = sp + 108 | 0;
+ $5 = sp + 104 | 0;
+ $6 = sp + 144 | 0;
+ $7 = sp + 100 | 0;
+ $8 = sp + 96 | 0;
+ SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ {}
+ SAFE_HEAP_STORE($2 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 20 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 24 | 0, 0 | 0 | 0, 4);
+ $9 = __gcry_sexp_find_token($1, 46885, 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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;
+     }
+     SAFE_HEAP_STORE($vararg_buffer18 | 0, $26 | 0, 4);
+     $vararg_ptr21 = $vararg_buffer18 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr21 | 0, 0 | 0, 4);
+     $27 = __gcry_sexp_extract_param($1, 0, 46920, $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) {
+     SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+     $vararg_ptr1 = $vararg_buffer + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr1 | 0, $18 | 0, 4);
+     $vararg_ptr2 = $vararg_buffer + 8 | 0;
+     SAFE_HEAP_STORE($vararg_ptr2 | 0, $19 | 0, 4);
+     $vararg_ptr3 = $vararg_buffer + 12 | 0;
+     SAFE_HEAP_STORE($vararg_ptr3 | 0, $20 | 0, 4);
+     $vararg_ptr4 = $vararg_buffer + 16 | 0;
+     SAFE_HEAP_STORE($vararg_ptr4 | 0, $21 | 0, 4);
+     $vararg_ptr5 = $vararg_buffer + 20 | 0;
+     SAFE_HEAP_STORE($vararg_ptr5 | 0, $22 | 0, 4);
+     $vararg_ptr6 = $vararg_buffer + 24 | 0;
+     SAFE_HEAP_STORE($vararg_ptr6 | 0, $23 | 0, 4);
+     $vararg_ptr7 = $vararg_buffer + 28 | 0;
+     SAFE_HEAP_STORE($vararg_ptr7 | 0, 0 | 0, 4);
+     $24 = __gcry_sexp_extract_param($1, 0, 46891, $vararg_buffer) | 0;
+     $$060 = $24;
+     label = 11;
+     break;
+    } else {
+     SAFE_HEAP_STORE($vararg_buffer8 | 0, $2 | 0, 4);
+     $vararg_ptr11 = $vararg_buffer8 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr11 | 0, $18 | 0, 4);
+     $vararg_ptr12 = $vararg_buffer8 + 8 | 0;
+     SAFE_HEAP_STORE($vararg_ptr12 | 0, $19 | 0, 4);
+     $vararg_ptr13 = $vararg_buffer8 + 12 | 0;
+     SAFE_HEAP_STORE($vararg_ptr13 | 0, $20 | 0, 4);
+     $vararg_ptr14 = $vararg_buffer8 + 16 | 0;
+     SAFE_HEAP_STORE($vararg_ptr14 | 0, $21 | 0, 4);
+     $vararg_ptr15 = $vararg_buffer8 + 20 | 0;
+     SAFE_HEAP_STORE($vararg_ptr15 | 0, $22 | 0, 4);
+     $vararg_ptr16 = $vararg_buffer8 + 24 | 0;
+     SAFE_HEAP_STORE($vararg_ptr16 | 0, $23 | 0, 4);
+     $vararg_ptr17 = $vararg_buffer8 + 28 | 0;
+     SAFE_HEAP_STORE($vararg_ptr17 | 0, 0 | 0, 4);
+     $25 = __gcry_sexp_extract_param($1, 0, 46906, $vararg_buffer8) | 0;
+     $$060 = $25;
+     label = 11;
+     break;
+    }
+   } else {
+    $$069 = $9;
+    $$164 = 0;
+    $$8 = $12;
+   }
+  }
+ } while (0);
+ if ((label | 0) == 10) {
+  SAFE_HEAP_STORE($vararg_buffer22 | 0, $28 | 0, 4);
+  $vararg_ptr25 = $vararg_buffer22 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr25 | 0, 0 | 0, 4);
+  $29 = __gcry_sexp_extract_param($1, 0, 46923, $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, 46925, 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$ph = $33;
+       $$pre$phiZ2D = $2;
+      } else {
+       $$069 = $31;
+       $$164 = $33;
+       $$8 = $40;
+       break;
+      }
+     }
+    }
+    if ((label | 0) == 15) {
+     $42 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+     $43 = $42 >>> 11;
+     $44 = $43 & 2;
+     SAFE_HEAP_STORE($4 | 0, $44 | 0, 4);
+     $45 = $42 >>> 12;
+     $$lobit = $45 & 1;
+     SAFE_HEAP_STORE($5 | 0, $$lobit | 0, 4);
+     $$06370$ph = 0;
+     $$pre$phiZ2D = $2;
+    }
+    $46 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+    $47 = ($46 | 0) == (0 | 0);
+    if ($47) {
+     $$069 = $31;
+     $$164 = $$06370$ph;
+     $$8 = 68;
+    } else {
+     __gcry_mpi_normalize($46);
+     $48 = $2 + 4 | 0;
+     $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+     $50 = ($49 | 0) == (0 | 0);
+     if ($50) {
+      $$069 = $31;
+      $$164 = $$06370$ph;
+      $$8 = 68;
+     } else {
+      __gcry_mpi_normalize($49);
+      $98 = $2 + 8 | 0;
+      $99 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+      $100 = ($99 | 0) == (0 | 0);
+      if ($100) {
+       $$069 = $31;
+       $$164 = $$06370$ph;
+       $$8 = 68;
+      } else {
+       __gcry_mpi_normalize($99);
+       $101 = $2 + 12 | 0;
+       $102 = SAFE_HEAP_LOAD($101 | 0, 4, 0) | 0 | 0;
+       $103 = ($102 | 0) == (0 | 0);
+       if ($103) {
+        $$069 = $31;
+        $$164 = $$06370$ph;
+        $$8 = 68;
+       } else {
+        __gcry_mpi_normalize($102);
+        $104 = $2 + 16 | 0;
+        $105 = SAFE_HEAP_LOAD($104 | 0, 4, 0) | 0 | 0;
+        $106 = ($105 | 0) == (0 | 0);
+        if ($106) {
+         $$069 = $31;
+         $$164 = $$06370$ph;
+         $$8 = 68;
+        } else {
+         __gcry_mpi_normalize($105);
+         $107 = $2 + 20 | 0;
+         $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+         $109 = ($108 | 0) == (0 | 0);
+         if ($109) {
+          $$069 = $31;
+          $$164 = $$06370$ph;
+          $$8 = 68;
+         } else {
+          __gcry_mpi_normalize($108);
+          $54 = $2 + 24 | 0;
+          $110 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+          $111 = ($110 | 0) == (0 | 0);
+          if ($111) {
+           $$069 = $31;
+           $$164 = $$06370$ph;
+           $$8 = 68;
+          } else {
+           __gcry_mpi_normalize($110);
+           $112 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+           $113 = $112 & 4096;
+           $114 = ($113 | 0) == 0;
+           if (!$114) {
+            $51 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+            $52 = ($51 | 0) == 1;
+            if (!$52) {
+             $$069 = $31;
+             $$164 = $$06370$ph;
+             $$8 = 69;
+             break;
+            }
+            $53 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+            $55 = __gcry_ecc_eddsa_ensure_compact($53, 256) | 0;
+            $56 = ($55 | 0) == 0;
+            if (!$56) {
+             $$069 = $31;
+             $$164 = $$06370$ph;
+             $$8 = $55;
+             break;
+            }
+           }
+           $$26783 = 0;
+           while (1) {
+            $57 = ($$26783 | 0) == 5;
+            if ($57) {
+             $$26783 = 6;
+             continue;
+            }
+            $58 = $2 + ($$26783 << 2) | 0;
+            $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+            $60 = ($59 | 0) == (0 | 0);
+            if ($60) {
+             label = 26;
+            } else {
+             $61 = $59 + 12 | 0;
+             $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+             $63 = $62 & 4;
+             $64 = ($63 | 0) == 0;
+             if ($64) {
+              label = 26;
+             } else {
+              $65 = __gcry_mpi_get_opaque($59, $7) | 0;
+              $66 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+              $67 = $66 + 7 | 0;
+              $68 = $67 >>> 3;
+              SAFE_HEAP_STORE($7 | 0, $68 | 0, 4);
+              $69 = 46931 + $$26783 | 0;
+              $70 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+              $71 = $70 << 24 >> 24;
+              SAFE_HEAP_STORE($vararg_buffer26 | 0, $71 | 0, 4);
+              $vararg_ptr29 = $vararg_buffer26 + 4 | 0;
+              SAFE_HEAP_STORE($vararg_ptr29 | 0, $68 | 0, 4);
+              _snprintf($6, 30, 46938, $vararg_buffer26) | 0;
+              $72 = _strlen($6) | 0;
+              __gcry_md_write($0, $6, $72);
+              $73 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+              __gcry_md_write($0, $65, $73);
+              __gcry_md_write($0, 46947, 1);
+             }
+            }
+            if ((label | 0) == 26) {
+             label = 0;
+             $74 = __gcry_mpi_get_buffer($59, 0, $8, 0) | 0;
+             $75 = ($74 | 0) == (0 | 0);
+             if ($75) {
+              break;
+             }
+             $76 = 46931 + $$26783 | 0;
+             $77 = SAFE_HEAP_LOAD($76 >> 0 | 0, 1, 0) | 0 | 0;
+             $78 = $77 << 24 >> 24;
+             $79 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+             SAFE_HEAP_STORE($vararg_buffer30 | 0, $78 | 0, 4);
+             $vararg_ptr33 = $vararg_buffer30 + 4 | 0;
+             SAFE_HEAP_STORE($vararg_ptr33 | 0, $79 | 0, 4);
+             _snprintf($6, 30, 46938, $vararg_buffer30) | 0;
+             $80 = _strlen($6) | 0;
+             __gcry_md_write($0, $6, $80);
+             $81 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+             __gcry_md_write($0, $74, $81);
+             __gcry_md_write($0, 46947, 1);
+             __gcry_free($74);
+            }
+            $83 = $$26783 + 1 | 0;
+            $84 = ($83 | 0) < 7;
+            if ($84) {
+             $$26783 = $83;
+            } else {
+             $$069 = $31;
+             $$164 = $$06370$ph;
+             $$8 = 0;
+             break L14;
+            }
+           }
+           $82 = _gpg_err_code_from_syserror() | 0;
+           $$069 = $31;
+           $$164 = $$06370$ph;
+           $$8 = $82;
+          }
+         }
+        }
+       }
+      }
+     }
+    }
+   } else {
+    $$069 = $9;
+    $$164 = 0;
+    $$8 = $$060;
+   }
+  }
+ } while (0);
+ __gcry_free($$164);
+ __gcry_sexp_release($$069);
+ $85 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($85);
+ $86 = $2 + 4 | 0;
+ $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($87);
+ $88 = $2 + 8 | 0;
+ $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($89);
+ $90 = $2 + 12 | 0;
+ $91 = SAFE_HEAP_LOAD($90 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($91);
+ $92 = $2 + 16 | 0;
+ $93 = SAFE_HEAP_LOAD($92 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($93);
+ $94 = $2 + 20 | 0;
+ $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($95);
+ $96 = $2 + 24 | 0;
+ $97 = SAFE_HEAP_LOAD($96 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($97);
+ STACKTOP = sp;
+ return $$8 | 0;
+}
+
+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 $$alloca_mul = 0, $$alloca_mul72 = 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, $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, $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;
+ var $78 = 0, $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;
+ var $97 = 0, $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current11 = 0, 
$arglist_current2 = 0, $arglist_current8 = 0, $arglist_next = 0, 
$arglist_next12 = 0, $arglist_next3 = 0, $arglist_next9 = 0, $expanded = 0, 
$expanded13 = 0, $expanded15 = 0, $expanded16 = 0, $expanded17 = 0, $expanded19 
= 0, $expanded20 = 0, $expanded22 = 0, $expanded23 = 0;
+ var $expanded24 = 0, $expanded26 = 0, $expanded27 = 0, $expanded29 = 0, 
$expanded30 = 0, $expanded31 = 0, $expanded33 = 0, $expanded34 = 0, $expanded36 
= 0, $expanded37 = 0, $expanded38 = 0, $vacopy_currentptr = 0, 
$vacopy_currentptr6 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 144 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(144 | 0);
+ $19 = sp + 96 | 0;
+ $20 = sp + 92 | 0;
+ $30 = sp + 40 | 0;
+ $10 = $0;
+ $11 = $1;
+ $12 = $2;
+ $13 = $3;
+ $14 = $4;
+ $15 = $5;
+ $16 = $6;
+ $17 = $7;
+ $18 = $8;
+ $41 = $13;
+ $42 = _gcry_md_get_algo_dlen($41) | 0;
+ $25 = $42;
+ $43 = $12;
+ $44 = _gcry_md_get_algo_dlen($43) | 0;
+ $26 = $44;
+ $45 = $26;
+ $46 = _llvm_stacksave() | 0;
+ $27 = $46;
+ $$alloca_mul = $45;
+ $47 = STACKTOP;
+ STACKTOP = STACKTOP + ((1 * $$alloca_mul | 0) + 15 & -16) | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow((1 * $$alloca_mul | 
0) + 15 & -16 | 0);
+ {}
+ $48 = $25;
+ $49 = 0 == ($48 | 0);
+ if ($49) {
+  $9 = -1;
+  $31 = 1;
+  $228 = $27;
+  _llvm_stackrestore($228 | 0);
+  $229 = $9;
+  STACKTOP = sp;
+  return $229 | 0;
+ }
+ $50 = $12;
+ $51 = _gcry_md_open($19, $50, 2) | 0;
+ $52 = 0 != ($51 | 0);
+ if ($52) {
+  $9 = -1;
+  $31 = 1;
+  $228 = $27;
+  _llvm_stackrestore($228 | 0);
+  $229 = $9;
+  STACKTOP = sp;
+  return $229 | 0;
+ }
+ $53 = $13;
+ $54 = _gcry_md_open($20, $53, 2) | 0;
+ $55 = 0 != ($54 | 0);
+ if ($55) {
+  $56 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+  _gcry_md_close($56);
+  $9 = -1;
+  $31 = 1;
+  $228 = $27;
+  _llvm_stackrestore($228 | 0);
+  $229 = $9;
+  STACKTOP = sp;
+  return $229 | 0;
+ }
+ $57 = $18;
+ $vacopy_currentptr = SAFE_HEAP_LOAD($57 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($30 | 0, $vacopy_currentptr | 0, 4);
+ $29 = 0;
+ while (1) {
+  $arglist_current = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+  $58 = $arglist_current;
+  $59 = 0 + 4 | 0;
+  $expanded13 = $59;
+  $expanded = $expanded13 - 1 | 0;
+  $60 = $58 + $expanded | 0;
+  $61 = 0 + 4 | 0;
+  $expanded17 = $61;
+  $expanded16 = $expanded17 - 1 | 0;
+  $expanded15 = $expanded16 ^ -1;
+  $62 = $60 & $expanded15;
+  $63 = $62;
+  $64 = SAFE_HEAP_LOAD($63 | 0, 4, 0) | 0 | 0;
+  $arglist_next = $63 + 4 | 0;
+  SAFE_HEAP_STORE($30 | 0, $arglist_next | 0, 4);
+  $32 = $64;
+  $65 = $32;
+  $66 = (0 | 0) != ($65 | 0);
+  if (!$66) {
+   break;
+  }
+  $arglist_current2 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+  $67 = $arglist_current2;
+  $68 = 0 + 4 | 0;
+  $expanded20 = $68;
+  $expanded19 = $expanded20 - 1 | 0;
+  $69 = $67 + $expanded19 | 0;
+  $70 = 0 + 4 | 0;
+  $expanded24 = $70;
+  $expanded23 = $expanded24 - 1 | 0;
+  $expanded22 = $expanded23 ^ -1;
+  $71 = $69 & $expanded22;
+  $72 = $71;
+  $73 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+  $arglist_next3 = $72 + 4 | 0;
+  SAFE_HEAP_STORE($30 | 0, $arglist_next3 | 0, 4);
+  $33 = $73;
+  $74 = $33;
+  $75 = $29;
+  $76 = $75 + $74 | 0;
+  $29 = $76;
+ }
+ $77 = $10;
+ $78 = $11;
+ _memset($77 | 0, 0, $78 | 0) | 0;
+ $79 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+ $80 = $14;
+ $81 = $15;
+ $82 = $16;
+ $83 = $17;
+ $84 = _getPRK($79, $80, $81, $82, $83, $47) | 0;
+ $85 = ($84 | 0) != 1;
+ L17 : do {
+  if ($85) {
+   label = 45;
+  } else {
+   $86 = $11;
+   $87 = $25;
+   $88 = ($86 >>> 0) / ($87 >>> 0) & -1;
+   $23 = $88;
+   $89 = $11;
+   $90 = $25;
+   $91 = ($89 >>> 0) % ($90 >>> 0) & -1;
+   $24 = $91;
+   $92 = $25;
+   $93 = $29;
+   $94 = $92 + $93 | 0;
+   $95 = $94 + 1 | 0;
+   $34 = $95;
+   $96 = $34;
+   $97 = _llvm_stacksave() | 0;
+   $35 = $97;
+   $$alloca_mul72 = $96;
+   $98 = STACKTOP;
+   STACKTOP = STACKTOP + ((1 * $$alloca_mul72 | 0) + 15 & -16) | 0;
+   if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow((1 * 
$$alloca_mul72 | 0) + 15 & -16 | 0);
+   {}
+   $99 = $25;
+   $100 = $98 + $99 | 0;
+   $37 = $100;
+   $101 = $18;
+   $vacopy_currentptr6 = SAFE_HEAP_LOAD($101 | 0, 4, 0) | 0 | 0;
+   SAFE_HEAP_STORE($30 | 0, $vacopy_currentptr6 | 0, 4);
+   while (1) {
+    $arglist_current8 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+    $102 = $arglist_current8;
+    $103 = 0 + 4 | 0;
+    $expanded27 = $103;
+    $expanded26 = $expanded27 - 1 | 0;
+    $104 = $102 + $expanded26 | 0;
+    $105 = 0 + 4 | 0;
+    $expanded31 = $105;
+    $expanded30 = $expanded31 - 1 | 0;
+    $expanded29 = $expanded30 ^ -1;
+    $106 = $104 & $expanded29;
+    $107 = $106;
+    $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+    $arglist_next9 = $107 + 4 | 0;
+    SAFE_HEAP_STORE($30 | 0, $arglist_next9 | 0, 4);
+    $38 = $108;
+    $109 = $38;
+    $36 = $109;
+    $110 = ($109 | 0) != (0 | 0);
+    if (!$110) {
+     break;
+    }
+    $arglist_current11 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+    $111 = $arglist_current11;
+    $112 = 0 + 4 | 0;
+    $expanded34 = $112;
+    $expanded33 = $expanded34 - 1 | 0;
+    $113 = $111 + $expanded33 | 0;
+    $114 = 0 + 4 | 0;
+    $expanded38 = $114;
+    $expanded37 = $expanded38 - 1 | 0;
+    $expanded36 = $expanded37 ^ -1;
+    $115 = $113 & $expanded36;
+    $116 = $115;
+    $117 = SAFE_HEAP_LOAD($116 | 0, 4, 0) | 0 | 0;
+    $arglist_next12 = $116 + 4 | 0;
+    SAFE_HEAP_STORE($30 | 0, $arglist_next12 | 0, 4);
+    $40 = $117;
+    $118 = $40;
+    $39 = $118;
+    $119 = $39;
+    $120 = 0 != ($119 | 0);
+    if ($120) {
+     $121 = $37;
+     $122 = $36;
+     $123 = $39;
+     _memcpy($121 | 0, $122 | 0, $123 | 0) | 0;
+    }
+    $124 = $39;
+    $125 = $37;
+    $126 = $125 + $124 | 0;
+    $37 = $126;
+   }
+   $127 = $23;
+   $128 = $127 >>> 0 > 0;
+   do {
+    if ($128) {
+     $129 = $25;
+     $130 = $98 + $129 | 0;
+     $131 = $29;
+     $132 = $130 + $131 | 0;
+     {}
+     SAFE_HEAP_STORE($132 >> 0 | 0, 1 | 0 | 0, 1);
+     $133 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+     $134 = $26;
+     $135 = $25;
+     $136 = $98 + $135 | 0;
+     $137 = $29;
+     $138 = $137 + 1 | 0;
+     $139 = _doHMAC($133, $47, $134, $136, $138) | 0;
+     $21 = $139;
+     $140 = $21;
+     $141 = ($140 | 0) == (0 | 0);
+     if ($141) {
+      $31 = 4;
+      break;
+     }
+     $142 = $25;
+     $143 = 0 != ($142 | 0);
+     if ($143) {
+      $144 = $10;
+      $145 = $21;
+      $146 = $25;
+      _memcpy($144 | 0, $145 | 0, $146 | 0) | 0;
+     }
+     $147 = $25;
+     $148 = $10;
+     $149 = $148 + $147 | 0;
+     $10 = $149;
+     label = 22;
+    } else {
+     label = 22;
+    }
+   } while (0);
+   do {
+    if ((label | 0) == 22) {
+     $22 = 1;
+     while (1) {
+      $150 = $22;
+      $151 = $23;
+      $152 = $150 >>> 0 < $151 >>> 0;
+      if (!$152) {
+       break;
+      }
+      $153 = $25;
+      $154 = 0 != ($153 | 0);
+      if ($154) {
+       $155 = $10;
+       $156 = $25;
+       $157 = 0 - $156 | 0;
+       $158 = $155 + $157 | 0;
+       $159 = $25;
+       _memcpy($98 | 0, $158 | 0, $159 | 0) | 0;
+      }
+      $160 = $25;
+      $161 = $98 + $160 | 0;
+      $162 = $29;
+      $163 = $161 + $162 | 0;
+      $164 = $22;
+      $165 = $164 + 1 | 0;
+      $166 = $165 & 255;
+      _memset($163 | 0, $166 | 0, 1) | 0;
+      $167 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+      _gcry_md_reset($167);
+      $168 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+      $169 = $26;
+      $170 = $34;
+      $171 = _doHMAC($168, $47, $169, $98, $170) | 0;
+      $21 = $171;
+      $172 = $21;
+      $173 = ($172 | 0) == (0 | 0);
+      if ($173) {
+       label = 27;
+       break;
+      }
+      $174 = $25;
+      $175 = 0 != ($174 | 0);
+      if ($175) {
+       $176 = $10;
+       $177 = $21;
+       $178 = $25;
+       _memcpy($176 | 0, $177 | 0, $178 | 0) | 0;
+      }
+      $179 = $25;
+      $180 = $10;
+      $181 = $180 + $179 | 0;
+      $10 = $181;
+      $182 = $22;
+      $183 = $182 + 1 | 0;
+      $22 = $183;
+     }
+     if ((label | 0) == 27) {
+      $31 = 4;
+      break;
+     }
+     $184 = $24;
+     $185 = $184 >>> 0 > 0;
+     if ($185) {
+      $186 = $23;
+      $187 = $186 >>> 0 > 0;
+      if ($187) {
+       $188 = $25;
+       $189 = 0 != ($188 | 0);
+       if ($189) {
+        $190 = $10;
+        $191 = $25;
+        $192 = 0 - $191 | 0;
+        $193 = $190 + $192 | 0;
+        $194 = $25;
+        _memcpy($98 | 0, $193 | 0, $194 | 0) | 0;
+       }
+       $195 = $22;
+       $196 = $195 + 1 | 0;
+       $22 = $196;
+      }
+      $197 = $25;
+      $198 = $98 + $197 | 0;
+      $199 = $29;
+      $200 = $198 + $199 | 0;
+      $201 = $22;
+      $202 = $201 & 255;
+      _memset($200 | 0, $202 | 0, 1) | 0;
+      $203 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+      _gcry_md_reset($203);
+      $204 = $23;
+      $205 = $204 >>> 0 > 0;
+      $206 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+      $207 = $26;
+      if ($205) {
+       $208 = $34;
+       $209 = _doHMAC($206, $47, $207, $98, $208) | 0;
+       $21 = $209;
+      } else {
+       $210 = $25;
+       $211 = $98 + $210 | 0;
+       $212 = $34;
+       $213 = $25;
+       $214 = $212 - $213 | 0;
+       $215 = _doHMAC($206, $47, $207, $211, $214) | 0;
+       $21 = $215;
+      }
+      $216 = $21;
+      $217 = ($216 | 0) == (0 | 0);
+      if ($217) {
+       $31 = 4;
+       break;
+      }
+      $218 = $24;
+      $219 = 0 != ($218 | 0);
+      if ($219) {
+       $220 = $10;
+       $221 = $21;
+       $222 = $24;
+       _memcpy($220 | 0, $221 | 0, $222 | 0) | 0;
+      }
+     }
+     $28 = 1;
+     $31 = 22;
+    }
+   } while (0);
+   $223 = $35;
+   _llvm_stackrestore($223 | 0);
+   $224 = $31;
+   switch ($224 | 0) {
+   case 4:
+    {
+     label = 45;
+     break L17;
+     break;
+    }
+   case 22:
+    {
+     break L17;
+     break;
+    }
+   default:
+    {}
+   }
+   $228 = $27;
+   _llvm_stackrestore($228 | 0);
+   $229 = $9;
+   STACKTOP = sp;
+   return $229 | 0;
+  }
+ } while (0);
+ if ((label | 0) == 45) {
+  $28 = -1;
+ }
+ $225 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+ _gcry_md_close($225);
+ $226 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ _gcry_md_close($226);
+ $227 = $28;
+ $9 = $227;
+ $31 = 1;
+ $228 = $27;
+ _llvm_stackrestore($228 | 0);
+ $229 = $9;
+ STACKTOP = sp;
+ return $229 | 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, $$0136146$us = 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, $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, $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, $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, 
$or$cond = 0, $or$cond3 = 0, label = 0, 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;
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+ $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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_rshift($34, $34, $33);
+    }
+    $35 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $36 = __gcry_mpi_cmp($35, $1) | 0;
+    $37 = ($36 | 0) > -1;
+    if ($37) {
+     $38 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_sub($38, $38, $1);
+    }
+    $39 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $40 = _int2octets($9, $39, $25) | 0;
+    $41 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+      $46 = __gcry_md_setkey($45, $21, $4) | 0;
+      $47 = ($46 | 0) == 0;
+      if ($47) {
+       $48 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+       __gcry_md_write($48, $18, $4);
+       $49 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+       __gcry_md_write($49, 71847, 1);
+       $50 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+       $51 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+       __gcry_md_write($50, $51, $25);
+       $52 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+       $53 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+       __gcry_md_write($52, $53, $25);
+       $54 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+       $55 = __gcry_md_read($54, 0) | 0;
+       _memcpy($21 | 0, $55 | 0, $4 | 0) | 0;
+       $56 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+       $57 = __gcry_md_setkey($56, $21, $4) | 0;
+       $58 = ($57 | 0) == 0;
+       if ($58) {
+        $59 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+        __gcry_md_write($59, $18, $4);
+        $60 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+        $61 = __gcry_md_read($60, 0) | 0;
+        _memcpy($18 | 0, $61 | 0, $4 | 0) | 0;
+        $62 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+        $63 = __gcry_md_setkey($62, $21, $4) | 0;
+        $64 = ($63 | 0) == 0;
+        if ($64) {
+         $65 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+         __gcry_md_write($65, $18, $4);
+         $66 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+         __gcry_md_write($66, 52752, 1);
+         $67 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+         __gcry_md_write($67, $51, $25);
+         $68 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+         __gcry_md_write($68, $53, $25);
+         $69 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+         $70 = __gcry_md_read($69, 0) | 0;
+         _memcpy($21 | 0, $70 | 0, $4 | 0) | 0;
+         $71 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+         $72 = __gcry_md_setkey($71, $21, $4) | 0;
+         $73 = ($72 | 0) == 0;
+         if ($73) {
+          $74 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+          __gcry_md_write($74, $18, $4);
+          $75 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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;
+          } else {
+           $$0140$ph = $6;
+          }
+          while (1) {
+           while (1) {
+            $$0136146$us = 0;
+            while (1) {
+             $119 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+             $120 = __gcry_md_setkey($119, $21, $4) | 0;
+             $121 = ($120 | 0) == 0;
+             if (!$121) {
+              $$0137 = $78;
+              $$0138 = $21;
+              $$0139 = $120;
+              break L7;
+             }
+             $122 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+             __gcry_md_write($122, $18, $4);
+             $123 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+             $124 = __gcry_md_read($123, 0) | 0;
+             _memcpy($18 | 0, $124 | 0, $4 | 0) | 0;
+             $125 = $$0136146$us >>> 3;
+             $126 = $78 + $125 | 0;
+             _memcpy($126 | 0, $18 | 0, $4 | 0) | 0;
+             $96 = $$0136146$us + $28 | 0;
+             $127 = $96 >>> 0 < $12 >>> 0;
+             if ($127) {
+              $$0136146$us = $96;
+             } else {
+              break;
+             }
+            }
+            $128 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+            __gcry_mpi_free($128);
+            SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+            $129 = $96 >>> 3;
+            $130 = __gcry_mpi_scan($11, 5, $78, $129, 0) | 0;
+            $131 = ($130 | 0) == 0;
+            if (!$131) {
+             $$0137 = $78;
+             $$0138 = $21;
+             $$0139 = $130;
+             break L7;
+            }
+            $97 = $96 >>> 0 > $12 >>> 0;
+            if ($97) {
+             $98 = $96 - $12 | 0;
+             $99 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+             __gcry_mpi_rshift($99, $99, $98);
+            }
+            $100 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+            $101 = __gcry_mpi_cmp($100, $1) | 0;
+            $102 = ($101 | 0) < 0;
+            if ($102) {
+             $103 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+             $104 = __gcry_mpi_cmp_ui($103, 0) | 0;
+             $105 = ($104 | 0) > 0;
+             if ($105) {
+              break;
+             }
+            }
+            $106 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+            $107 = __gcry_md_setkey($106, $21, $4) | 0;
+            $108 = ($107 | 0) == 0;
+            if (!$108) {
+             $$0137 = $78;
+             $$0138 = $21;
+             $$0139 = $107;
+             break L7;
+            }
+            $109 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+            __gcry_md_write($109, $18, $4);
+            $110 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+            __gcry_md_write($110, 71847, 1);
+            $111 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+            $112 = __gcry_md_read($111, 0) | 0;
+            _memcpy($21 | 0, $112 | 0, $4 | 0) | 0;
+            $113 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+            $114 = __gcry_md_setkey($113, $21, $4) | 0;
+            $115 = ($114 | 0) == 0;
+            if (!$115) {
+             $$0137 = $78;
+             $$0138 = $21;
+             $$0139 = $114;
+             break L7;
+            }
+            $116 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+            __gcry_md_write($116, $18, $4);
+            $117 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+            $118 = __gcry_md_read($117, 0) | 0;
+            _memcpy($18 | 0, $118 | 0, $4 | 0) | 0;
+           }
+           $81 = ($$0140$ph | 0) == 0;
+           if ($81) {
+            $$0137 = $78;
+            $$0138 = $21;
+            $$0139 = 0;
+            break L7;
+           }
+           $82 = $$0140$ph + -1 | 0;
+           $83 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+           $84 = __gcry_md_setkey($83, $21, $4) | 0;
+           $85 = ($84 | 0) == 0;
+           if (!$85) {
+            $$0137 = $78;
+            $$0138 = $21;
+            $$0139 = $84;
+            break L7;
+           }
+           $86 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+           __gcry_md_write($86, $18, $4);
+           $87 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+           __gcry_md_write($87, 71847, 1);
+           $88 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+           $89 = __gcry_md_read($88, 0) | 0;
+           _memcpy($21 | 0, $89 | 0, $4 | 0) | 0;
+           $90 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+           $91 = __gcry_md_setkey($90, $21, $4) | 0;
+           $92 = ($91 | 0) == 0;
+           if (!$92) {
+            $$0137 = $78;
+            $$0138 = $21;
+            $$0139 = $91;
+            break L7;
+           }
+           $93 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+           __gcry_md_write($93, $18, $4);
+           $94 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+           $95 = __gcry_md_read($94, 0) | 0;
+           _memcpy($18 | 0, $95 | 0, $4 | 0) | 0;
+           $$0140$ph = $82;
+          }
+         } 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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ __gcry_md_close($132);
+ $133 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ __gcry_free($133);
+ $134 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ __gcry_free($134);
+ __gcry_free($$0138);
+ __gcry_free($18);
+ $135 = ($$0139 | 0) == 0;
+ $136 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ if ($135) {
+  SAFE_HEAP_STORE($0 | 0, $136 | 0, 4);
+  $$0135 = 0;
+  STACKTOP = sp;
+  return $$0135 | 0;
+ } else {
+  __gcry_mpi_free($136);
+  $$0135 = $$0139;
+  STACKTOP = sp;
+  return $$0135 | 0;
+ }
+ return 0 | 0;
+}
+
+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 $$$060 = 0, $$05475 = 0, $$055$lcssa84 = 0, $$05569 = 0, $$056$lcssa83 = 
0, $$05668 = 0, $$060$lcssa = 0, $$06074 = 0, $$06273 = 0, $$076 = 0, $$1 = 0, 
$$157 = 0, $$3$ph = 0, $$359$ph = 0, $$35966 = 0, $$367 = 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, $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, $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, 
$scevgep = 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;
+ } else {
+  $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;
+  $$05475 = $2;
+  $$06074 = 0;
+  $$06273 = $3;
+  $$076 = $4;
+  while (1) {
+   _twofish_decrypt($0, $5, $$06273) | 0;
+   $47 = $$06074 >>> 0 < 36;
+   $$$060 = $47 ? 36 : $$06074;
+   $48 = $$06273;
+   $49 = $$05475;
+   $50 = $48 | $7;
+   $51 = $50 | $49;
+   $52 = $51 & 3;
+   $53 = ($52 | 0) == 0;
+   if ($53) {
+    $148 = $$06273 + 4 | 0;
+    $149 = SAFE_HEAP_LOAD($$06273 | 0, 4, 0) | 0 | 0;
+    $150 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $151 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $152 = $151 ^ $150;
+    $153 = $$05475 + 4 | 0;
+    SAFE_HEAP_STORE($$05475 | 0, $152 | 0, 4);
+    SAFE_HEAP_STORE($1 | 0, $149 | 0, 4);
+    $154 = $$06273 + 8 | 0;
+    $155 = SAFE_HEAP_LOAD($148 | 0, 4, 0) | 0 | 0;
+    $156 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    $157 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    $158 = $157 ^ $156;
+    $159 = $$05475 + 8 | 0;
+    SAFE_HEAP_STORE($153 | 0, $158 | 0, 4);
+    SAFE_HEAP_STORE($9 | 0, $155 | 0, 4);
+    $160 = $$06273 + 12 | 0;
+    $161 = SAFE_HEAP_LOAD($154 | 0, 4, 0) | 0 | 0;
+    $162 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    $163 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+    $164 = $163 ^ $162;
+    $165 = $$05475 + 12 | 0;
+    SAFE_HEAP_STORE($159 | 0, $164 | 0, 4);
+    SAFE_HEAP_STORE($11 | 0, $161 | 0, 4);
+    $166 = SAFE_HEAP_LOAD($160 | 0, 4, 0) | 0 | 0;
+    $167 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    $168 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    $169 = $168 ^ $167;
+    SAFE_HEAP_STORE($165 | 0, $169 | 0, 4);
+    SAFE_HEAP_STORE($13 | 0, $166 | 0, 4);
+   } else {
+    $54 = $$06273 + 1 | 0;
+    $55 = SAFE_HEAP_LOAD($$06273 >> 0 | 0, 1, 0) | 0 | 0;
+    $56 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+    $57 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+    $58 = $57 ^ $56;
+    $59 = $$05475 + 1 | 0;
+    SAFE_HEAP_STORE($$05475 >> 0 | 0, $58 | 0, 1);
+    SAFE_HEAP_STORE($1 >> 0 | 0, $55 | 0, 1);
+    $60 = $$06273 + 2 | 0;
+    $61 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+    $62 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+    $63 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+    $64 = $63 ^ $62;
+    $65 = $$05475 + 2 | 0;
+    SAFE_HEAP_STORE($59 >> 0 | 0, $64 | 0, 1);
+    SAFE_HEAP_STORE($15 >> 0 | 0, $61 | 0, 1);
+    $66 = $$06273 + 3 | 0;
+    $67 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+    $68 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+    $69 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+    $70 = $69 ^ $68;
+    $71 = $$05475 + 3 | 0;
+    SAFE_HEAP_STORE($65 >> 0 | 0, $70 | 0, 1);
+    SAFE_HEAP_STORE($17 >> 0 | 0, $67 | 0, 1);
+    $72 = $$06273 + 4 | 0;
+    $73 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+    $74 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+    $75 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+    $76 = $75 ^ $74;
+    $77 = $$05475 + 4 | 0;
+    SAFE_HEAP_STORE($71 >> 0 | 0, $76 | 0, 1);
+    SAFE_HEAP_STORE($19 >> 0 | 0, $73 | 0, 1);
+    $78 = $$06273 + 5 | 0;
+    $79 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+    $80 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+    $81 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+    $82 = $81 ^ $80;
+    $83 = $$05475 + 5 | 0;
+    SAFE_HEAP_STORE($77 >> 0 | 0, $82 | 0, 1);
+    SAFE_HEAP_STORE($21 >> 0 | 0, $79 | 0, 1);
+    $84 = $$06273 + 6 | 0;
+    $85 = SAFE_HEAP_LOAD($78 >> 0 | 0, 1, 0) | 0 | 0;
+    $86 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+    $87 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+    $88 = $87 ^ $86;
+    $89 = $$05475 + 6 | 0;
+    SAFE_HEAP_STORE($83 >> 0 | 0, $88 | 0, 1);
+    SAFE_HEAP_STORE($23 >> 0 | 0, $85 | 0, 1);
+    $90 = $$06273 + 7 | 0;
+    $91 = SAFE_HEAP_LOAD($84 >> 0 | 0, 1, 0) | 0 | 0;
+    $92 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+    $93 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+    $94 = $93 ^ $92;
+    $95 = $$05475 + 7 | 0;
+    SAFE_HEAP_STORE($89 >> 0 | 0, $94 | 0, 1);
+    SAFE_HEAP_STORE($25 >> 0 | 0, $91 | 0, 1);
+    $96 = $$06273 + 8 | 0;
+    $97 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 0) | 0 | 0;
+    $98 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+    $99 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+    $100 = $99 ^ $98;
+    $101 = $$05475 + 8 | 0;
+    SAFE_HEAP_STORE($95 >> 0 | 0, $100 | 0, 1);
+    SAFE_HEAP_STORE($27 >> 0 | 0, $97 | 0, 1);
+    $102 = $$06273 + 9 | 0;
+    $103 = SAFE_HEAP_LOAD($96 >> 0 | 0, 1, 0) | 0 | 0;
+    $104 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+    $105 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+    $106 = $105 ^ $104;
+    $107 = $$05475 + 9 | 0;
+    SAFE_HEAP_STORE($101 >> 0 | 0, $106 | 0, 1);
+    SAFE_HEAP_STORE($29 >> 0 | 0, $103 | 0, 1);
+    $108 = $$06273 + 10 | 0;
+    $109 = SAFE_HEAP_LOAD($102 >> 0 | 0, 1, 0) | 0 | 0;
+    $110 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+    $111 = SAFE_HEAP_LOAD($30 >> 0 | 0, 1, 0) | 0 | 0;
+    $112 = $111 ^ $110;
+    $113 = $$05475 + 10 | 0;
+    SAFE_HEAP_STORE($107 >> 0 | 0, $112 | 0, 1);
+    SAFE_HEAP_STORE($31 >> 0 | 0, $109 | 0, 1);
+    $114 = $$06273 + 11 | 0;
+    $115 = SAFE_HEAP_LOAD($108 >> 0 | 0, 1, 0) | 0 | 0;
+    $116 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+    $117 = SAFE_HEAP_LOAD($32 >> 0 | 0, 1, 0) | 0 | 0;
+    $118 = $117 ^ $116;
+    $119 = $$05475 + 11 | 0;
+    SAFE_HEAP_STORE($113 >> 0 | 0, $118 | 0, 1);
+    SAFE_HEAP_STORE($33 >> 0 | 0, $115 | 0, 1);
+    $120 = $$06273 + 12 | 0;
+    $121 = SAFE_HEAP_LOAD($114 >> 0 | 0, 1, 0) | 0 | 0;
+    $122 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+    $123 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+    $124 = $123 ^ $122;
+    $125 = $$05475 + 12 | 0;
+    SAFE_HEAP_STORE($119 >> 0 | 0, $124 | 0, 1);
+    SAFE_HEAP_STORE($35 >> 0 | 0, $121 | 0, 1);
+    $126 = $$06273 + 13 | 0;
+    $127 = SAFE_HEAP_LOAD($120 >> 0 | 0, 1, 0) | 0 | 0;
+    $128 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+    $129 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+    $130 = $129 ^ $128;
+    $131 = $$05475 + 13 | 0;
+    SAFE_HEAP_STORE($125 >> 0 | 0, $130 | 0, 1);
+    SAFE_HEAP_STORE($37 >> 0 | 0, $127 | 0, 1);
+    $132 = $$06273 + 14 | 0;
+    $133 = SAFE_HEAP_LOAD($126 >> 0 | 0, 1, 0) | 0 | 0;
+    $134 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+    $135 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+    $136 = $135 ^ $134;
+    $137 = $$05475 + 14 | 0;
+    SAFE_HEAP_STORE($131 >> 0 | 0, $136 | 0, 1);
+    SAFE_HEAP_STORE($39 >> 0 | 0, $133 | 0, 1);
+    $138 = $$06273 + 15 | 0;
+    $139 = SAFE_HEAP_LOAD($132 >> 0 | 0, 1, 0) | 0 | 0;
+    $140 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+    $141 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+    $142 = $141 ^ $140;
+    $143 = $$05475 + 15 | 0;
+    SAFE_HEAP_STORE($137 >> 0 | 0, $142 | 0, 1);
+    SAFE_HEAP_STORE($41 >> 0 | 0, $139 | 0, 1);
+    $144 = SAFE_HEAP_LOAD($138 >> 0 | 0, 1, 0) | 0 | 0;
+    $145 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+    $146 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+    $147 = $146 ^ $145;
+    SAFE_HEAP_STORE($143 >> 0 | 0, $147 | 0, 1);
+    SAFE_HEAP_STORE($43 >> 0 | 0, $144 | 0, 1);
+   }
+   $170 = $$06273 + 16 | 0;
+   $171 = $$05475 + 16 | 0;
+   $172 = $$076 + -1 | 0;
+   $173 = ($172 | 0) == 0;
+   if ($173) {
+    $$060$lcssa = $$$060;
+    break;
+   } else {
+    $$05475 = $171;
+    $$06074 = $$$060;
+    $$06273 = $170;
+    $$076 = $172;
+   }
+  }
+ }
+ $44 = $5;
+ $45 = $44 & 4;
+ $46 = ($45 | 0) == 0;
+ if ($46) {
+  $$055$lcssa84 = 16;
+  $$056$lcssa83 = $5;
+  label = 10;
+ } else {
+  $$05569 = 16;
+  $$05668 = $5;
+  while (1) {
+   SAFE_HEAP_STORE($$05668 >> 0 | 0, 0 | 0, 1);
+   $174 = $$05668 + 1 | 0;
+   $175 = $$05569 + -1 | 0;
+   $176 = $174;
+   $177 = $176 & 7;
+   $178 = ($177 | 0) != 0;
+   $179 = ($175 | 0) != 0;
+   $180 = $179 & $178;
+   if ($180) {
+    $$05569 = $175;
+    $$05668 = $174;
+   } else {
+    break;
+   }
+  }
+  $181 = $175 >>> 0 < 8;
+  if ($181) {
+   $$3$ph = $175;
+   $$359$ph = $174;
+  } else {
+   $$055$lcssa84 = $175;
+   $$056$lcssa83 = $174;
+   label = 10;
+  }
+ }
+ if ((label | 0) == 10) {
+  $182 = $$055$lcssa84 + -8 | 0;
+  $183 = $182 & -8;
+  $184 = $183 + 8 | 0;
+  $$1 = $$055$lcssa84;
+  $$157 = $$056$lcssa83;
+  while (1) {
+   $185 = $$157;
+   $186 = $185;
+   SAFE_HEAP_STORE($186 | 0, 0 | 0, 4);
+   $187 = $185 + 4 | 0;
+   $188 = $187;
+   SAFE_HEAP_STORE($188 | 0, 0 | 0, 4);
+   $189 = $$1 + -8 | 0;
+   $190 = $$157 + 8 | 0;
+   $191 = $189 >>> 0 > 7;
+   if ($191) {
+    $$1 = $189;
+    $$157 = $190;
+   } else {
+    break;
+   }
+  }
+  $192 = $182 - $183 | 0;
+  $scevgep = $$056$lcssa83 + $184 | 0;
+  $$3$ph = $192;
+  $$359$ph = $scevgep;
+ }
+ $193 = ($$3$ph | 0) == 0;
+ if ($193) {
+  ___gcry_burn_stack($$060$lcssa);
+  STACKTOP = sp;
+  return;
+ } else {
+  $$35966 = $$359$ph;
+  $$367 = $$3$ph;
+ }
+ while (1) {
+  SAFE_HEAP_STORE($$35966 >> 0 | 0, 0 | 0, 1);
+  $194 = $$35966 + 1 | 0;
+  $195 = $$367 + -1 | 0;
+  $196 = ($195 | 0) == 0;
+  if ($196) {
+   break;
+  } else {
+   $$35966 = $194;
+   $$367 = $195;
+  }
+ }
+ ___gcry_burn_stack($$060$lcssa);
+ STACKTOP = sp;
+ return;
+}
+
+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, $$0236269 = 0, $$0237256$us = 0, $$0241253 = 0, $$1238 = 0, 
$$1238$us = 0, $$1266 = 0, $$2 = 0, $$2239248$us = 0, $$3240 = 0, $$3240$us = 
0, $$3263 = 0, $$4259 = 0, $$4259$us = 0, $$5247 = 0, $$6250 = 0, $$6250$us = 
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, $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, $50 = 0;
+ var $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, $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, $exitcond275 = 0, 
$exitcond276 = 0, $exitcond277 = 0, $exitcond278 = 0, $exitcond279 = 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 = 46734;
+  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[(SAFE_FT_MASK($1 | 0, 127 | 0) | 0) & 127]($20, 48, 
16) | 0;
+ $28 = ($27 | 0) == 0;
+ if (!$28) {
+  __gcry_free($15);
+  $$0 = 46720;
+  return $$0 | 0;
+ }
+ _memset($21 | 0, -1, $5 | 0) | 0;
+ $29 = ($5 | 0) > 0;
+ if ($29) {
+  $$0236269 = 0;
+  while (1) {
+   $30 = $$0236269 & 255;
+   $31 = $23 + $$0236269 | 0;
+   SAFE_HEAP_STORE($31 >> 0 | 0, $30 | 0, 1);
+   $32 = $$0236269 + 1 | 0;
+   $exitcond279 = ($32 | 0) == ($5 | 0);
+   if ($exitcond279) {
+    break;
+   } else {
+    $$0236269 = $32;
+   }
+  }
+  FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, $25, 
$21) | 0;
+  if ($29) {
+   $$1266 = 0;
+   while (1) {
+    $33 = $23 + $$1266 | 0;
+    $34 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+    $35 = $25 + $$1266 | 0;
+    $36 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+    $37 = $36 ^ $34;
+    SAFE_HEAP_STORE($35 >> 0 | 0, $37 | 0, 1);
+    $38 = $$1266 + 1 | 0;
+    $exitcond278 = ($38 | 0) == ($5 | 0);
+    if ($exitcond278) {
+     $$2 = $5;
+     break;
+    } else {
+     $$1266 = $38;
+    }
+   }
+  } else {
+   $$2 = $5;
+  }
+ } else {
+  FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, $25, 
$21) | 0;
+  $$2 = $5;
+ }
+ while (1) {
+  $39 = ($$2 | 0) > 0;
+  if (!$39) {
+   break;
+  }
+  $40 = $$2 + -1 | 0;
+  $41 = $21 + $40 | 0;
+  $42 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+  $43 = $42 + 1 << 24 >> 24;
+  SAFE_HEAP_STORE($41 >> 0 | 0, $43 | 0, 1);
+  $44 = $43 << 24 >> 24 == 0;
+  if ($44) {
+   $$2 = $40;
+  } else {
+   break;
+  }
+ }
+ _memset($22 | 0, -1, $5 | 0) | 0;
+ FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 127]($20, $22, 
$24, $25, 1);
+ $45 = _memcmp($24, $23, $5) | 0;
+ $46 = ($45 | 0) == 0;
+ if (!$46) {
+  __gcry_free($15);
+  $$0 = 46809;
+  return $$0 | 0;
+ }
+ $47 = _memcmp($22, $21, $5) | 0;
+ $48 = ($47 | 0) == 0;
+ if (!$48) {
+  __gcry_free($15);
+  $$0 = 46809;
+  return $$0 | 0;
+ }
+ $49 = $5 + -4 | 0;
+ _memset($21 | 0, 87, $49 | 0) | 0;
+ $50 = $5 + -1 | 0;
+ $51 = $21 + $50 | 0;
+ SAFE_HEAP_STORE($51 >> 0 | 0, 1 | 0, 1);
+ $52 = $5 + -2 | 0;
+ $53 = $21 + $52 | 0;
+ SAFE_HEAP_STORE($53 >> 0 | 0, 0 | 0, 1);
+ $54 = $5 + -3 | 0;
+ $55 = $21 + $54 | 0;
+ SAFE_HEAP_STORE($55 >> 0 | 0, 0 | 0, 1);
+ $56 = $21 + $49 | 0;
+ SAFE_HEAP_STORE($56 >> 0 | 0, 0 | 0, 1);
+ _memset($22 | 0, 87, $49 | 0) | 0;
+ $57 = $22 + $50 | 0;
+ SAFE_HEAP_STORE($57 >> 0 | 0, 1 | 0, 1);
+ $58 = $22 + $52 | 0;
+ SAFE_HEAP_STORE($58 >> 0 | 0, 0 | 0, 1);
+ $59 = $22 + $54 | 0;
+ SAFE_HEAP_STORE($59 >> 0 | 0, 0 | 0, 1);
+ $60 = $22 + $49 | 0;
+ SAFE_HEAP_STORE($60 >> 0 | 0, 0 | 0, 1);
+ $61 = ($10 | 0) > 0;
+ L27 : do {
+  if ($61) {
+   $$3263 = 0;
+   while (1) {
+    $78 = $$3263 & 255;
+    $79 = $23 + $$3263 | 0;
+    SAFE_HEAP_STORE($79 >> 0 | 0, $78 | 0, 1);
+    $80 = $24 + $$3263 | 0;
+    SAFE_HEAP_STORE($80 >> 0 | 0, $78 | 0, 1);
+    $81 = $$3263 + 1 | 0;
+    $exitcond277 = ($81 | 0) == ($10 | 0);
+    if ($exitcond277) {
+     break;
+    } else {
+     $$3263 = $81;
+    }
+   }
+   if ($61) {
+    if ($29) {
+     $$4259$us = 0;
+    } else {
+     $$4259 = 0;
+     while (1) {
+      $82 = $25 + $$4259 | 0;
+      FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, $82, 
$21) | 0;
+      $$1238 = $5;
+      while (1) {
+       $83 = ($$1238 | 0) > 0;
+       if (!$83) {
+        break;
+       }
+       $84 = $$1238 + -1 | 0;
+       $85 = $21 + $84 | 0;
+       $86 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+       $87 = $86 + 1 << 24 >> 24;
+       SAFE_HEAP_STORE($85 >> 0 | 0, $87 | 0, 1);
+       $88 = $87 << 24 >> 24 == 0;
+       if ($88) {
+        $$1238 = $84;
+       } else {
+        break;
+       }
+      }
+      $89 = $$4259 + $5 | 0;
+      $90 = ($89 | 0) < ($10 | 0);
+      if ($90) {
+       $$4259 = $89;
+      } else {
+       break L27;
+      }
+     }
+    }
+    while (1) {
+     $62 = $25 + $$4259$us | 0;
+     FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, $62, 
$21) | 0;
+     $$0237256$us = 0;
+     while (1) {
+      $71 = $$0237256$us + $$4259$us | 0;
+      $72 = $23 + $71 | 0;
+      $73 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+      $74 = $25 + $71 | 0;
+      $75 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+      $76 = $75 ^ $73;
+      SAFE_HEAP_STORE($74 >> 0 | 0, $76 | 0, 1);
+      $77 = $$0237256$us + 1 | 0;
+      $exitcond276 = ($77 | 0) == ($5 | 0);
+      if ($exitcond276) {
+       $$1238$us = $5;
+       break;
+      } else {
+       $$0237256$us = $77;
+      }
+     }
+     while (1) {
+      $63 = ($$1238$us | 0) > 0;
+      if (!$63) {
+       break;
+      }
+      $64 = $$1238$us + -1 | 0;
+      $65 = $21 + $64 | 0;
+      $66 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+      $67 = $66 + 1 << 24 >> 24;
+      SAFE_HEAP_STORE($65 >> 0 | 0, $67 | 0, 1);
+      $68 = $67 << 24 >> 24 == 0;
+      if ($68) {
+       $$1238$us = $64;
+      } else {
+       break;
+      }
+     }
+     $69 = $$4259$us + $5 | 0;
+     $70 = ($69 | 0) < ($10 | 0);
+     if ($70) {
+      $$4259$us = $69;
+     } else {
+      break;
+     }
+    }
+   }
+  }
+ } while (0);
+ FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 127]($20, $22, 
$26, $24, $4);
+ $91 = _memcmp($26, $25, $10) | 0;
+ $92 = ($91 | 0) == 0;
+ if (!$92) {
+  __gcry_free($15);
+  $$0 = 46809;
+  return $$0 | 0;
+ }
+ $93 = _memcmp($22, $21, $5) | 0;
+ $94 = ($93 | 0) == 0;
+ if (!$94) {
+  __gcry_free($15);
+  $$0 = 46809;
+  return $$0 | 0;
+ }
+ $95 = ($4 | 0) > 0;
+ L56 : do {
+  if ($95) {
+   $96 = $21 + 1 | 0;
+   $97 = $21 + 2 | 0;
+   $98 = $22 + 1 | 0;
+   $99 = $22 + 2 | 0;
+   $$0241253 = 0;
+   while (1) {
+    _memset($21 | 0, -1, $5 | 0) | 0;
+    $102 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+    $103 = $102 & 255;
+    $104 = $103 - $$0241253 | 0;
+    $105 = $104 & 255;
+    SAFE_HEAP_STORE($51 >> 0 | 0, $105 | 0, 1);
+    SAFE_HEAP_STORE($96 >> 0 | 0, 0 | 0, 1);
+    SAFE_HEAP_STORE($21 >> 0 | 0, 0 | 0, 1);
+    SAFE_HEAP_STORE($97 >> 0 | 0, 7 | 0, 1);
+    L60 : do {
+     if ($61) {
+      $$5247 = 0;
+      while (1) {
+       $122 = $$5247 & 255;
+       $123 = $23 + $$5247 | 0;
+       SAFE_HEAP_STORE($123 >> 0 | 0, $122 | 0, 1);
+       $124 = $$5247 + 1 | 0;
+       $exitcond = ($124 | 0) == ($10 | 0);
+       if ($exitcond) {
+        break;
+       } else {
+        $$5247 = $124;
+       }
+      }
+      if ($61) {
+       if ($29) {
+        $$6250$us = 0;
+       } else {
+        $$6250 = 0;
+        while (1) {
+         $125 = $25 + $$6250 | 0;
+         FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, 
$125, $21) | 0;
+         $$3240 = $5;
+         while (1) {
+          $126 = ($$3240 | 0) > 0;
+          if (!$126) {
+           break;
+          }
+          $127 = $$3240 + -1 | 0;
+          $128 = $21 + $127 | 0;
+          $129 = SAFE_HEAP_LOAD($128 >> 0 | 0, 1, 0) | 0 | 0;
+          $130 = $129 + 1 << 24 >> 24;
+          SAFE_HEAP_STORE($128 >> 0 | 0, $130 | 0, 1);
+          $131 = $130 << 24 >> 24 == 0;
+          if ($131) {
+           $$3240 = $127;
+          } else {
+           break;
+          }
+         }
+         $132 = $$6250 + $5 | 0;
+         $133 = ($132 | 0) < ($10 | 0);
+         if ($133) {
+          $$6250 = $132;
+         } else {
+          break L60;
+         }
+        }
+       }
+       while (1) {
+        $106 = $25 + $$6250$us | 0;
+        FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, 
$106, $21) | 0;
+        $$2239248$us = 0;
+        while (1) {
+         $115 = $$2239248$us + $$6250$us | 0;
+         $116 = $23 + $115 | 0;
+         $117 = SAFE_HEAP_LOAD($116 >> 0 | 0, 1, 0) | 0 | 0;
+         $118 = $25 + $115 | 0;
+         $119 = SAFE_HEAP_LOAD($118 >> 0 | 0, 1, 0) | 0 | 0;
+         $120 = $119 ^ $117;
+         SAFE_HEAP_STORE($118 >> 0 | 0, $120 | 0, 1);
+         $121 = $$2239248$us + 1 | 0;
+         $exitcond275 = ($121 | 0) == ($5 | 0);
+         if ($exitcond275) {
+          $$3240$us = $5;
+          break;
+         } else {
+          $$2239248$us = $121;
+         }
+        }
+        while (1) {
+         $107 = ($$3240$us | 0) > 0;
+         if (!$107) {
+          break;
+         }
+         $108 = $$3240$us + -1 | 0;
+         $109 = $21 + $108 | 0;
+         $110 = SAFE_HEAP_LOAD($109 >> 0 | 0, 1, 0) | 0 | 0;
+         $111 = $110 + 1 << 24 >> 24;
+         SAFE_HEAP_STORE($109 >> 0 | 0, $111 | 0, 1);
+         $112 = $111 << 24 >> 24 == 0;
+         if ($112) {
+          $$3240$us = $108;
+         } else {
+          break;
+         }
+        }
+        $113 = $$6250$us + $5 | 0;
+        $114 = ($113 | 0) < ($10 | 0);
+        if ($114) {
+         $$6250$us = $113;
+        } else {
+         break;
+        }
+       }
+      }
+     }
+    } while (0);
+    _memset($22 | 0, -1, $5 | 0) | 0;
+    $134 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+    $135 = $134 & 255;
+    $136 = $135 - $$0241253 | 0;
+    $137 = $136 & 255;
+    SAFE_HEAP_STORE($57 >> 0 | 0, $137 | 0, 1);
+    SAFE_HEAP_STORE($98 >> 0 | 0, 0 | 0, 1);
+    SAFE_HEAP_STORE($22 >> 0 | 0, 0 | 0, 1);
+    SAFE_HEAP_STORE($99 >> 0 | 0, 7 | 0, 1);
+    FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 127]($20, $22, 
$24, $25, $4);
+    $138 = _memcmp($24, $23, $10) | 0;
+    $139 = ($138 | 0) == 0;
+    if (!$139) {
+     label = 49;
+     break;
+    }
+    $140 = _memcmp($22, $21, $5) | 0;
+    $141 = ($140 | 0) == 0;
+    $100 = $$0241253 + 1 | 0;
+    if (!$141) {
+     label = 51;
+     break;
+    }
+    $101 = ($100 | 0) < ($4 | 0);
+    if ($101) {
+     $$0241253 = $100;
+    } else {
+     break L56;
+    }
+   }
+   if ((label | 0) == 49) {
+    __gcry_free($15);
+    $$0 = 46809;
+    return $$0 | 0;
+   } else if ((label | 0) == 51) {
+    __gcry_free($15);
+    $$0 = 46809;
+    return $$0 | 0;
+   }
+  }
+ } while (0);
+ __gcry_free($15);
+ $$0 = 0;
+ 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;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ dest = $6;
+ stop = dest + 60 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  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, 12556, $4, $3) | 0;
+ $12 = ($11 | 0) == 0;
+ do {
+  if ($12) {
+   $13 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   SAFE_HEAP_STORE($vararg_buffer | 0, $5 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, 0 | 0, 4);
+   $14 = __gcry_sexp_extract_param($13, 0, 47524, $vararg_buffer) | 0;
+   $15 = ($14 | 0) == 0;
+   if ($15) {
+    $16 = __gcry_get_debug_flag(1) | 0;
+    $17 = ($16 | 0) == 0;
+    if (!$17) {
+     $18 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47526, $18);
+    }
+    $19 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $20 = ($19 | 0) == (0 | 0);
+    if (!$20) {
+     $21 = $19 + 12 | 0;
+     $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 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;
+    SAFE_HEAP_STORE($vararg_buffer2 | 0, $25 | 0, 4);
+    $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr5 | 0, $26 | 0, 4);
+    $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr6 | 0, $27 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer2 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, $7 | 0, 4);
+    $vararg_ptr8 = $vararg_buffer2 + 16 | 0;
+    SAFE_HEAP_STORE($vararg_ptr8 | 0, $28 | 0, 4);
+    $vararg_ptr9 = $vararg_buffer2 + 20 | 0;
+    SAFE_HEAP_STORE($vararg_ptr9 | 0, $29 | 0, 4);
+    $vararg_ptr10 = $vararg_buffer2 + 24 | 0;
+    SAFE_HEAP_STORE($vararg_ptr10 | 0, $30 | 0, 4);
+    $vararg_ptr11 = $vararg_buffer2 + 28 | 0;
+    SAFE_HEAP_STORE($vararg_ptr11 | 0, 0 | 0, 4);
+    $31 = __gcry_sexp_extract_param($2, 0, 47543, $vararg_buffer2) | 0;
+    $32 = ($31 | 0) == 0;
+    if ($32) {
+     $33 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     $34 = ($33 | 0) == (0 | 0);
+     if (!$34) {
+      $35 = $6 + 20 | 0;
+      __gcry_mpi_point_init($35);
+      $36 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+      $37 = __gcry_ecc_os2ec($35, $36) | 0;
+      $38 = ($37 | 0) == 0;
+      if (!$38) {
+       $$045 = 0;
+       $$046 = 0;
+       $$1 = $37;
+       $$148 = 0;
+       break;
+      }
+     }
+     $39 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+     __gcry_sexp_release($39);
+     $40 = __gcry_sexp_find_token($2, 46925, 5) | 0;
+     SAFE_HEAP_STORE($4 | 0, $40 | 0, 4);
+     $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) {
+      SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+      $46 = $6 + 4 | 0;
+      SAFE_HEAP_STORE($46 | 0, 0 | 0, 4);
+      $$04758 = 0;
+     }
+     $47 = __gcry_get_debug_flag(1) | 0;
+     $48 = ($47 | 0) == 0;
+     if (!$48) {
+      $49 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      $50 = __gcry_ecc_model2str($49) | 0;
+      $51 = $6 + 4 | 0;
+      $52 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+      $53 = __gcry_ecc_dialect2str($52) | 0;
+      SAFE_HEAP_STORE($vararg_buffer12 | 0, $50 | 0, 4);
+      $vararg_ptr15 = $vararg_buffer12 + 4 | 0;
+      SAFE_HEAP_STORE($vararg_ptr15 | 0, $53 | 0, 4);
+      __gcry_log_debug(47559, $vararg_buffer12);
+      $54 = $6 + 40 | 0;
+      $55 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+      $56 = ($55 | 0) == (0 | 0);
+      if (!$56) {
+       SAFE_HEAP_STORE($vararg_buffer16 | 0, $55 | 0, 4);
+       __gcry_log_debug(47584, $vararg_buffer16);
+      }
+      $57 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(47606, $57);
+      $58 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(47623, $58);
+      $59 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(47640, $59);
+      $60 = $6 + 20 | 0;
+      __gcry_mpi_point_log(47657, $60, 0);
+      $61 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(47672, $61);
+      $62 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(47689, $62);
+      $63 = __gcry_fips_mode() | 0;
+      $64 = ($63 | 0) == 0;
+      if ($64) {
+       $65 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+       __gcry_log_printmpi(47706, $65);
+      }
+     }
+     $66 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     $67 = ($66 | 0) == (0 | 0);
+     $68 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+     $69 = ($68 | 0) == (0 | 0);
+     $or$cond = $67 | $69;
+     $70 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+      $74 = ($73 | 0) == (0 | 0);
+      $75 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+      $76 = ($75 | 0) == (0 | 0);
+      $or$cond53 = $74 | $76;
+      $77 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+      $78 = ($77 | 0) == (0 | 0);
+      $or$cond55 = $or$cond53 | $78;
+      $79 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+      $80 = ($79 | 0) == (0 | 0);
+      $or$cond57 = $or$cond55 | $80;
+      if ($or$cond57) {
+       $$045 = 0;
+       $$046 = 0;
+       $$1 = 68;
+       $$148 = $$04758;
+      } else {
+       $81 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $85 = $6 + 4 | 0;
+       $86 = SAFE_HEAP_LOAD($85 | 0, 4, 0) | 0 | 0;
+       $87 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+       $88 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+       $89 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+       $90 = __gcry_mpi_ec_p_internal_new($84, $86, 0, $87, $88, $89) | 0;
+       $91 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 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(47723, $vararg_buffer19);
+       }
+       $96 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 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(47763, $97);
+       }
+       $102 = ($$044 | 0) == 0;
+       if ($102) {
+        SAFE_HEAP_STORE($vararg_buffer21 | 0, $97 | 0, 4);
+        $103 = __gcry_sexp_build($0, 0, 47780, $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 = SAFE_HEAP_LOAD($104 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($105);
+ $106 = $6 + 12 | 0;
+ $107 = SAFE_HEAP_LOAD($106 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($107);
+ $108 = $6 + 16 | 0;
+ $109 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($109);
+ $110 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($110);
+ $111 = $6 + 20 | 0;
+ __gcry_mpi_point_free_parts($111);
+ $112 = $6 + 32 | 0;
+ $113 = SAFE_HEAP_LOAD($112 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($113);
+ $114 = $6 + 36 | 0;
+ $115 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($115);
+ $116 = $6 + 56 | 0;
+ $117 = SAFE_HEAP_LOAD($116 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($117);
+ $118 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($118);
+ __gcry_free($$148);
+ $119 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($vararg_buffer24 | 0, $122 | 0, 4);
+ __gcry_log_debug(47791, $vararg_buffer24);
+ $$0 = $$1;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _try_realloc_chunk($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$1271 = 0, $$1274 = 0, $$2 = 0, $$3 = 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, $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, $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, $cond = 0, $notlhs = 0, $notrhs = 0, $or$cond$not = 0, 
$or$cond3 = 0, $storemerge = 0, $storemerge1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $2 = $0 + 4 | 0;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $3 & -8;
+ $5 = $0 + $4 | 0;
+ $6 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+ $7 = $3 & 3;
+ $notlhs = $0 >>> 0 >= $6 >>> 0;
+ $notrhs = ($7 | 0) != 1;
+ $or$cond$not = $notrhs & $notlhs;
+ $8 = $0 >>> 0 < $5 >>> 0;
+ $or$cond3 = $or$cond$not & $8;
+ if (!$or$cond3) {
+  _abort();
+ }
+ $9 = $5 + 4 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $10 & 1;
+ $12 = ($11 | 0) == 0;
+ if ($12) {
+  _abort();
+ }
+ $13 = ($7 | 0) == 0;
+ if ($13) {
+  $14 = $1 >>> 0 < 256;
+  if ($14) {
+   $$2 = 0;
+   return $$2 | 0;
+  }
+  $15 = $1 + 4 | 0;
+  $16 = $4 >>> 0 < $15 >>> 0;
+  if (!$16) {
+   $17 = $4 - $1 | 0;
+   $18 = SAFE_HEAP_LOAD(71344 | 0, 4, 0) | 0 | 0;
+   $19 = $18 << 1;
+   $20 = $17 >>> 0 > $19 >>> 0;
+   if (!$20) {
+    $$2 = $0;
+    return $$2 | 0;
+   }
+  }
+  $$2 = 0;
+  return $$2 | 0;
+ }
+ $21 = $4 >>> 0 < $1 >>> 0;
+ if (!$21) {
+  $22 = $4 - $1 | 0;
+  $23 = $22 >>> 0 > 15;
+  if (!$23) {
+   $$2 = $0;
+   return $$2 | 0;
+  }
+  $24 = $0 + $1 | 0;
+  $25 = $3 & 1;
+  $26 = $25 | $1;
+  $27 = $26 | 2;
+  SAFE_HEAP_STORE($2 | 0, $27 | 0, 4);
+  $28 = $24 + 4 | 0;
+  $29 = $22 | 3;
+  SAFE_HEAP_STORE($28 | 0, $29 | 0, 4);
+  $30 = $24 + $22 | 0;
+  $31 = $30 + 4 | 0;
+  $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+  $33 = $32 | 1;
+  SAFE_HEAP_STORE($31 | 0, $33 | 0, 4);
+  _dispose_chunk($24, $22);
+  $$2 = $0;
+  return $$2 | 0;
+ }
+ $34 = SAFE_HEAP_LOAD(70888 | 0, 4, 0) | 0 | 0;
+ $35 = ($5 | 0) == ($34 | 0);
+ if ($35) {
+  $36 = SAFE_HEAP_LOAD(70876 | 0, 4, 0) | 0 | 0;
+  $37 = $36 + $4 | 0;
+  $38 = $37 >>> 0 > $1 >>> 0;
+  if (!$38) {
+   $$2 = 0;
+   return $$2 | 0;
+  }
+  $39 = $37 - $1 | 0;
+  $40 = $0 + $1 | 0;
+  $41 = $3 & 1;
+  $42 = $41 | $1;
+  $43 = $42 | 2;
+  SAFE_HEAP_STORE($2 | 0, $43 | 0, 4);
+  $44 = $40 + 4 | 0;
+  $45 = $39 | 1;
+  SAFE_HEAP_STORE($44 | 0, $45 | 0, 4);
+  SAFE_HEAP_STORE(70888 | 0, $40 | 0, 4);
+  SAFE_HEAP_STORE(70876 | 0, $39 | 0, 4);
+  $$2 = $0;
+  return $$2 | 0;
+ }
+ $46 = SAFE_HEAP_LOAD(70884 | 0, 4, 0) | 0 | 0;
+ $47 = ($5 | 0) == ($46 | 0);
+ if ($47) {
+  $48 = SAFE_HEAP_LOAD(70872 | 0, 4, 0) | 0 | 0;
+  $49 = $48 + $4 | 0;
+  $50 = $49 >>> 0 < $1 >>> 0;
+  if ($50) {
+   $$2 = 0;
+   return $$2 | 0;
+  }
+  $51 = $49 - $1 | 0;
+  $52 = $51 >>> 0 > 15;
+  if ($52) {
+   $53 = $0 + $1 | 0;
+   $54 = $53 + $51 | 0;
+   $55 = $3 & 1;
+   $56 = $55 | $1;
+   $57 = $56 | 2;
+   SAFE_HEAP_STORE($2 | 0, $57 | 0, 4);
+   $58 = $53 + 4 | 0;
+   $59 = $51 | 1;
+   SAFE_HEAP_STORE($58 | 0, $59 | 0, 4);
+   SAFE_HEAP_STORE($54 | 0, $51 | 0, 4);
+   $60 = $54 + 4 | 0;
+   $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+   $62 = $61 & -2;
+   SAFE_HEAP_STORE($60 | 0, $62 | 0, 4);
+   $storemerge = $53;
+   $storemerge1 = $51;
+  } else {
+   $63 = $3 & 1;
+   $64 = $63 | $49;
+   $65 = $64 | 2;
+   SAFE_HEAP_STORE($2 | 0, $65 | 0, 4);
+   $66 = $0 + $49 | 0;
+   $67 = $66 + 4 | 0;
+   $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+   $69 = $68 | 1;
+   SAFE_HEAP_STORE($67 | 0, $69 | 0, 4);
+   $storemerge = 0;
+   $storemerge1 = 0;
+  }
+  SAFE_HEAP_STORE(70872 | 0, $storemerge1 | 0, 4);
+  SAFE_HEAP_STORE(70884 | 0, $storemerge | 0, 4);
+  $$2 = $0;
+  return $$2 | 0;
+ }
+ $70 = $10 & 2;
+ $71 = ($70 | 0) == 0;
+ if (!$71) {
+  $$2 = 0;
+  return $$2 | 0;
+ }
+ $72 = $10 & -8;
+ $73 = $72 + $4 | 0;
+ $74 = $73 >>> 0 < $1 >>> 0;
+ if ($74) {
+  $$2 = 0;
+  return $$2 | 0;
+ }
+ $75 = $73 - $1 | 0;
+ $76 = $10 >>> 3;
+ $77 = $10 >>> 0 < 256;
+ do {
+  if ($77) {
+   $78 = $5 + 8 | 0;
+   $79 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+   $80 = $5 + 12 | 0;
+   $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+   $82 = $76 << 1;
+   $83 = 70904 + ($82 << 2) | 0;
+   $84 = ($79 | 0) == ($83 | 0);
+   if (!$84) {
+    $85 = $79 >>> 0 < $6 >>> 0;
+    if ($85) {
+     _abort();
+    }
+    $86 = $79 + 12 | 0;
+    $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+    $88 = ($87 | 0) == ($5 | 0);
+    if (!$88) {
+     _abort();
+    }
+   }
+   $89 = ($81 | 0) == ($79 | 0);
+   if ($89) {
+    $90 = 1 << $76;
+    $91 = $90 ^ -1;
+    $92 = SAFE_HEAP_LOAD(17716 * 4 | 0, 4, 0) | 0 | 0;
+    $93 = $92 & $91;
+    SAFE_HEAP_STORE(17716 * 4 | 0, $93 | 0, 4);
+    break;
+   }
+   $94 = ($81 | 0) == ($83 | 0);
+   if ($94) {
+    $$pre = $81 + 8 | 0;
+    $$pre$phiZ2D = $$pre;
+   } else {
+    $95 = $81 >>> 0 < $6 >>> 0;
+    if ($95) {
+     _abort();
+    }
+    $96 = $81 + 8 | 0;
+    $97 = SAFE_HEAP_LOAD($96 | 0, 4, 0) | 0 | 0;
+    $98 = ($97 | 0) == ($5 | 0);
+    if ($98) {
+     $$pre$phiZ2D = $96;
+    } else {
+     _abort();
+    }
+   }
+   $99 = $79 + 12 | 0;
+   SAFE_HEAP_STORE($99 | 0, $81 | 0, 4);
+   SAFE_HEAP_STORE($$pre$phiZ2D | 0, $79 | 0, 4);
+  } else {
+   $100 = $5 + 24 | 0;
+   $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+   $102 = $5 + 12 | 0;
+   $103 = SAFE_HEAP_LOAD($102 | 0, 4, 0) | 0 | 0;
+   $104 = ($103 | 0) == ($5 | 0);
+   do {
+    if ($104) {
+     $114 = $5 + 16 | 0;
+     $115 = $114 + 4 | 0;
+     $116 = SAFE_HEAP_LOAD($115 | 0, 4, 0) | 0 | 0;
+     $117 = ($116 | 0) == (0 | 0);
+     if ($117) {
+      $118 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+      $119 = ($118 | 0) == (0 | 0);
+      if ($119) {
+       $$3 = 0;
+       break;
+      } else {
+       $$1271 = $118;
+       $$1274 = $114;
+      }
+     } else {
+      $$1271 = $116;
+      $$1274 = $115;
+     }
+     while (1) {
+      $120 = $$1271 + 20 | 0;
+      $121 = SAFE_HEAP_LOAD($120 | 0, 4, 0) | 0 | 0;
+      $122 = ($121 | 0) == (0 | 0);
+      if (!$122) {
+       $$1271 = $121;
+       $$1274 = $120;
+       continue;
+      }
+      $123 = $$1271 + 16 | 0;
+      $124 = SAFE_HEAP_LOAD($123 | 0, 4, 0) | 0 | 0;
+      $125 = ($124 | 0) == (0 | 0);
+      if ($125) {
+       break;
+      } else {
+       $$1271 = $124;
+       $$1274 = $123;
+      }
+     }
+     $126 = $$1274 >>> 0 < $6 >>> 0;
+     if ($126) {
+      _abort();
+     } else {
+      SAFE_HEAP_STORE($$1274 | 0, 0 | 0, 4);
+      $$3 = $$1271;
+      break;
+     }
+    } else {
+     $105 = $5 + 8 | 0;
+     $106 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+     $107 = $106 >>> 0 < $6 >>> 0;
+     if ($107) {
+      _abort();
+     }
+     $108 = $106 + 12 | 0;
+     $109 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+     $110 = ($109 | 0) == ($5 | 0);
+     if (!$110) {
+      _abort();
+     }
+     $111 = $103 + 8 | 0;
+     $112 = SAFE_HEAP_LOAD($111 | 0, 4, 0) | 0 | 0;
+     $113 = ($112 | 0) == ($5 | 0);
+     if ($113) {
+      SAFE_HEAP_STORE($108 | 0, $103 | 0, 4);
+      SAFE_HEAP_STORE($111 | 0, $106 | 0, 4);
+      $$3 = $103;
+      break;
+     } else {
+      _abort();
+     }
+    }
+   } while (0);
+   $127 = ($101 | 0) == (0 | 0);
+   if (!$127) {
+    $128 = $5 + 28 | 0;
+    $129 = SAFE_HEAP_LOAD($128 | 0, 4, 0) | 0 | 0;
+    $130 = 71168 + ($129 << 2) | 0;
+    $131 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+    $132 = ($5 | 0) == ($131 | 0);
+    if ($132) {
+     SAFE_HEAP_STORE($130 | 0, $$3 | 0, 4);
+     $cond = ($$3 | 0) == (0 | 0);
+     if ($cond) {
+      $133 = 1 << $129;
+      $134 = $133 ^ -1;
+      $135 = SAFE_HEAP_LOAD(70868 | 0, 4, 0) | 0 | 0;
+      $136 = $135 & $134;
+      SAFE_HEAP_STORE(70868 | 0, $136 | 0, 4);
+      break;
+     }
+    } else {
+     $137 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $138 = $101 >>> 0 < $137 >>> 0;
+     if ($138) {
+      _abort();
+     }
+     $139 = $101 + 16 | 0;
+     $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+     $141 = ($140 | 0) == ($5 | 0);
+     if ($141) {
+      SAFE_HEAP_STORE($139 | 0, $$3 | 0, 4);
+     } else {
+      $142 = $101 + 20 | 0;
+      SAFE_HEAP_STORE($142 | 0, $$3 | 0, 4);
+     }
+     $143 = ($$3 | 0) == (0 | 0);
+     if ($143) {
+      break;
+     }
+    }
+    $144 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+    $145 = $$3 >>> 0 < $144 >>> 0;
+    if ($145) {
+     _abort();
+    }
+    $146 = $$3 + 24 | 0;
+    SAFE_HEAP_STORE($146 | 0, $101 | 0, 4);
+    $147 = $5 + 16 | 0;
+    $148 = SAFE_HEAP_LOAD($147 | 0, 4, 0) | 0 | 0;
+    $149 = ($148 | 0) == (0 | 0);
+    do {
+     if (!$149) {
+      $150 = $148 >>> 0 < $144 >>> 0;
+      if ($150) {
+       _abort();
+      } else {
+       $151 = $$3 + 16 | 0;
+       SAFE_HEAP_STORE($151 | 0, $148 | 0, 4);
+       $152 = $148 + 24 | 0;
+       SAFE_HEAP_STORE($152 | 0, $$3 | 0, 4);
+       break;
+      }
+     }
+    } while (0);
+    $153 = $147 + 4 | 0;
+    $154 = SAFE_HEAP_LOAD($153 | 0, 4, 0) | 0 | 0;
+    $155 = ($154 | 0) == (0 | 0);
+    if (!$155) {
+     $156 = SAFE_HEAP_LOAD(70880 | 0, 4, 0) | 0 | 0;
+     $157 = $154 >>> 0 < $156 >>> 0;
+     if ($157) {
+      _abort();
+     } else {
+      $158 = $$3 + 20 | 0;
+      SAFE_HEAP_STORE($158 | 0, $154 | 0, 4);
+      $159 = $154 + 24 | 0;
+      SAFE_HEAP_STORE($159 | 0, $$3 | 0, 4);
+      break;
+     }
+    }
+   }
+  }
+ } while (0);
+ $160 = $75 >>> 0 < 16;
+ if ($160) {
+  $161 = $3 & 1;
+  $162 = $73 | $161;
+  $163 = $162 | 2;
+  SAFE_HEAP_STORE($2 | 0, $163 | 0, 4);
+  $164 = $0 + $73 | 0;
+  $165 = $164 + 4 | 0;
+  $166 = SAFE_HEAP_LOAD($165 | 0, 4, 0) | 0 | 0;
+  $167 = $166 | 1;
+  SAFE_HEAP_STORE($165 | 0, $167 | 0, 4);
+  $$2 = $0;
+  return $$2 | 0;
+ } else {
+  $168 = $0 + $1 | 0;
+  $169 = $3 & 1;
+  $170 = $169 | $1;
+  $171 = $170 | 2;
+  SAFE_HEAP_STORE($2 | 0, $171 | 0, 4);
+  $172 = $168 + 4 | 0;
+  $173 = $75 | 3;
+  SAFE_HEAP_STORE($172 | 0, $173 | 0, 4);
+  $174 = $168 + $75 | 0;
+  $175 = $174 + 4 | 0;
+  $176 = SAFE_HEAP_LOAD($175 | 0, 4, 0) | 0 | 0;
+  $177 = $176 | 1;
+  SAFE_HEAP_STORE($175 | 0, $177 | 0, 4);
+  _dispose_chunk($168, $75);
+  $$2 = $0;
+  return $$2 | 0;
+ }
+ return 0 | 0;
+}
+
+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, 
$fold = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $0 + 56 | 0;
+ $4 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+ $5 = $4 << 24 >> 24 != 0;
+ $6 = $5 ? 0 : 16777216;
+ $7 = $0 + 4 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $0 + 8 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $0 + 12 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = $0 + 16 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = $0 + 20 | 0;
+ $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $17 = $0 + 24 | 0;
+ $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $19 = $0 + 28 | 0;
+ $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+ $21 = $0 + 32 | 0;
+ $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+ $23 = $0 + 36 | 0;
+ $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ $25 = $2 >>> 0 > 15;
+ if (!$25) {
+  $$0157$lcssa = $16;
+  $$0158$lcssa = $18;
+  $$0159$lcssa = $20;
+  $$0160$lcssa = $22;
+  $$0161$lcssa = $24;
+  SAFE_HEAP_STORE($15 | 0, $$0157$lcssa | 0, 4);
+  SAFE_HEAP_STORE($17 | 0, $$0158$lcssa | 0, 4);
+  SAFE_HEAP_STORE($19 | 0, $$0159$lcssa | 0, 4);
+  SAFE_HEAP_STORE($21 | 0, $$0160$lcssa | 0, 4);
+  SAFE_HEAP_STORE($23 | 0, $$0161$lcssa | 0, 4);
+  return 124;
+ }
+ $26 = $14 * 5 | 0;
+ $27 = $12 * 5 | 0;
+ $28 = $10 * 5 | 0;
+ $29 = $8 * 5 | 0;
+ $30 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $$0156169 = $2;
+ $$0157168 = $16;
+ $$0158167 = $18;
+ $$0159166 = $20;
+ $$0160165 = $22;
+ $$0161164 = $24;
+ $$0170 = $1;
+ while (1) {
+  $31 = $$0170 + 3 | 0;
+  $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+  $33 = $32 & 255;
+  $34 = $33 << 24;
+  $35 = $$0170 + 2 | 0;
+  $36 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+  $37 = $36 & 255;
+  $38 = $37 << 16;
+  $39 = $$0170 + 1 | 0;
+  $40 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+  $41 = $40 & 255;
+  $42 = $41 << 8;
+  $43 = SAFE_HEAP_LOAD($$0170 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+  $49 = $48 & 255;
+  $50 = $49 << 24;
+  $51 = $$0170 + 5 | 0;
+  $52 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+  $53 = $52 & 255;
+  $54 = $53 << 16;
+  $55 = $$0170 + 4 | 0;
+  $56 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+  $67 = $66 & 255;
+  $68 = $67 << 24;
+  $69 = $$0170 + 8 | 0;
+  $70 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+  $71 = $70 & 255;
+  $72 = $71 << 16;
+  $73 = $72 | $68;
+  $74 = $$0170 + 7 | 0;
+  $75 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+  $85 = $84 & 255;
+  $86 = $85 << 24;
+  $87 = $$0170 + 11 | 0;
+  $88 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 0) | 0 | 0;
+  $89 = $88 & 255;
+  $90 = $89 << 16;
+  $91 = $90 | $86;
+  $92 = $$0170 + 10 | 0;
+  $93 = SAFE_HEAP_LOAD($92 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 0) | 0 | 0;
+  $102 = $101 & 255;
+  $103 = $102 << 16;
+  $104 = $$0170 + 14 | 0;
+  $105 = SAFE_HEAP_LOAD($104 >> 0 | 0, 1, 0) | 0 | 0;
+  $106 = $105 & 255;
+  $107 = $106 << 8;
+  $108 = $$0170 + 13 | 0;
+  $109 = SAFE_HEAP_LOAD($108 >> 0 | 0, 1, 0) | 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;
+  $fold = $228 + $131 | 0;
+  $231 = $fold & 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;
+  }
+ }
+ SAFE_HEAP_STORE($15 | 0, $$0157$lcssa | 0, 4);
+ SAFE_HEAP_STORE($17 | 0, $$0158$lcssa | 0, 4);
+ SAFE_HEAP_STORE($19 | 0, $$0159$lcssa | 0, 4);
+ SAFE_HEAP_STORE($21 | 0, $$0160$lcssa | 0, 4);
+ SAFE_HEAP_STORE($23 | 0, $$0161$lcssa | 0, 4);
+ return 124;
+}
+
+function _md_close($0) {
+ $0 = $0 | 0;
+ var $$0$$0$$0$5$i = 0, $$0$i = 0, $$0109$lcssa = 0, $$0109151 = 0, 
$$0112$lcssa = 0, $$0112150 = 0, $$0116$lcssa = 0, $$0116168 = 0, $$0120$lcssa 
= 0, $$0120167 = 0, $$0124$lcssa = 0, $$0124161 = 0, $$0128$lcssa = 0, 
$$0128160 = 0, $$0178 = 0, $$021$i = 0, $$022$i = 0, $$1110 = 0, $$1113 = 0, 
$$1117 = 0;
+ var $$1121 = 0, $$1125 = 0, $$1129 = 0, $$3$ph = 0, $$3115$ph = 0, $$3115148 
= 0, $$3119$ph = 0, $$3119175 = 0, $$3123$ph = 0, $$3123174 = 0, $$3127$ph = 0, 
$$3127157 = 0, $$3131$ph = 0, $$3131156 = 0, $$3149 = 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $6 = $5 + 8 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ if ($8) {
+  $56 = $5;
+ } else {
+  $9 = $0 + 4 | 0;
+  $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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(36953, 630, 36958);
+   }
+   $15 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $16 = $15 + 16 | 0;
+   $$021$i = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+   $17 = ($$021$i | 0) == (0 | 0);
+   if ($17) {
+    $$pre$i = $15;
+   } else {
+    $$022$i = $$021$i;
+    while (1) {
+     $18 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+     $19 = ($18 | 0) == 0;
+     if ($19) {
+      $$pre27$i = $$022$i + 16 | 0;
+      $$pre$phi30$iZ2D = $$pre27$i;
+     } else {
+      $20 = SAFE_HEAP_LOAD($$022$i | 0, 4, 0) | 0 | 0;
+      $21 = $20 + 32 | 0;
+      $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+      $23 = $$022$i + 16 | 0;
+      FUNCTION_TABLE_viii[(SAFE_FT_MASK($22 | 0, 127 | 0) | 0) & 127]($23, 
$12, $18);
+      $$pre$phi30$iZ2D = $23;
+     }
+     $24 = SAFE_HEAP_LOAD($$022$i | 0, 4, 0) | 0 | 0;
+     $25 = $24 + 32 | 0;
+     $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     FUNCTION_TABLE_viii[(SAFE_FT_MASK($26 | 0, 127 | 0) | 0) & 
127]($$pre$phi30$iZ2D, 0, 0);
+     $27 = $$022$i + 4 | 0;
+     $$0$i = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+     $28 = ($$0$i | 0) == (0 | 0);
+     if ($28) {
+      break;
+     } else {
+      $$022$i = $$0$i;
+     }
+    }
+    $$pre$i$pre = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    $$pre$i = $$pre$i$pre;
+   }
+   SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+   $$phi$trans$insert$i = $$pre$i + 8 | 0;
+   $$pre19$i = SAFE_HEAP_LOAD($$phi$trans$insert$i | 0, 4, 0) | 0 | 0;
+   $29 = $$pre19$i;
+  }
+  _fclose($29) | 0;
+  $30 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $31 = $30 + 8 | 0;
+  SAFE_HEAP_STORE($31 | 0, 0 | 0, 4);
+  $32 = $0;
+  SAFE_HEAP_STORE($1 | 0, $32 | 0, 4);
+  $33 = $2;
+  $34 = $33;
+  SAFE_HEAP_STORE($34 | 0, 42 | 0, 4);
+  $35 = $33 + 4 | 0;
+  $36 = $35;
+  SAFE_HEAP_STORE($36 | 0, 0 | 0, 4);
+  $$0$$0$$0$5$i = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  $37 = $2;
+  $38 = $37;
+  $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+  $40 = $37 + 4 | 0;
+  $41 = $40;
+  $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+  $43 = ___muldi3($$0$$0$$0$5$i | 0, 0, $39 | 0, $42 | 0) | 0;
+  $44 = tempRet0;
+  $45 = $3;
+  $46 = $45;
+  SAFE_HEAP_STORE($46 | 0, $43 | 0, 4);
+  $47 = $45 + 4 | 0;
+  $48 = $47;
+  SAFE_HEAP_STORE($48 | 0, $44 | 0, 4);
+  $49 = $3;
+  $50 = $49;
+  $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+  $52 = $49 + 4 | 0;
+  $53 = $52;
+  $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+  $56 = $30;
+ }
+ $55 = $56 + 16 | 0;
+ $57 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+ $58 = ($57 | 0) == (0 | 0);
+ if ($58) {
+  $92 = $56;
+ } else {
+  $$0178 = $57;
+  while (1) {
+   $59 = $$0178 + 4 | 0;
+   $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+   $61 = $$0178 + 8 | 0;
+   $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+   $63 = $$0178;
+   $64 = $63 & 7;
+   $65 = ($64 | 0) != 0;
+   $66 = ($62 | 0) != 0;
+   $67 = $66 & $65;
+   if ($67) {
+    $$0116168 = $$0178;
+    $$0120167 = $62;
+    while (1) {
+     SAFE_HEAP_STORE($$0116168 >> 0 | 0, 0 | 0, 1);
+     $68 = $$0116168 + 1 | 0;
+     $69 = $$0120167 + -1 | 0;
+     $70 = $68;
+     $71 = $70 & 7;
+     $72 = ($71 | 0) != 0;
+     $73 = ($69 | 0) != 0;
+     $74 = $73 & $72;
+     if ($74) {
+      $$0116168 = $68;
+      $$0120167 = $69;
+     } else {
+      $$0116$lcssa = $68;
+      $$0120$lcssa = $69;
+      break;
+     }
+    }
+   } else {
+    $$0116$lcssa = $$0178;
+    $$0120$lcssa = $62;
+   }
+   $75 = $$0120$lcssa >>> 0 < 8;
+   if ($75) {
+    $$3119$ph = $$0116$lcssa;
+    $$3123$ph = $$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;
+     SAFE_HEAP_STORE($79 | 0, 0 | 0, 4);
+     $80 = $78 + 4 | 0;
+     $81 = $80;
+     SAFE_HEAP_STORE($81 | 0, 0 | 0, 4);
+     $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;
+    $$3119$ph = $scevgep195;
+    $$3123$ph = $85;
+   }
+   $86 = ($$3123$ph | 0) == 0;
+   if (!$86) {
+    $$3119175 = $$3119$ph;
+    $$3123174 = $$3123$ph;
+    while (1) {
+     SAFE_HEAP_STORE($$3119175 >> 0 | 0, 0 | 0, 1);
+     $87 = $$3119175 + 1 | 0;
+     $88 = $$3123174 + -1 | 0;
+     $89 = ($88 | 0) == 0;
+     if ($89) {
+      break;
+     } else {
+      $$3119175 = $87;
+      $$3123174 = $88;
+     }
+    }
+   }
+   __gcry_free($$0178);
+   $90 = ($60 | 0) == (0 | 0);
+   if ($90) {
+    break;
+   } else {
+    $$0178 = $60;
+   }
+  }
+  $$pre = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $92 = $$pre;
+ }
+ $91 = $92 + 20 | 0;
+ $93 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+ $94 = ($93 | 0) == (0 | 0);
+ if ($94) {
+  $130 = $92;
+ } else {
+  $95 = $92 + 24 | 0;
+  $96 = SAFE_HEAP_LOAD($95 | 0, 4, 0) | 0 | 0;
+  $97 = $96 << 1;
+  $98 = $93;
+  $99 = $98 & 7;
+  $100 = ($99 | 0) != 0;
+  $101 = ($96 | 0) != 0;
+  $102 = $101 & $100;
+  if ($102) {
+   $$0124161 = $97;
+   $$0128160 = $93;
+   while (1) {
+    SAFE_HEAP_STORE($$0128160 >> 0 | 0, 0 | 0, 1);
+    $103 = $$0128160 + 1 | 0;
+    $104 = $$0124161 + -1 | 0;
+    $105 = $103;
+    $106 = $105 & 7;
+    $107 = ($106 | 0) != 0;
+    $108 = ($104 | 0) != 0;
+    $109 = $108 & $107;
+    if ($109) {
+     $$0124161 = $104;
+     $$0128160 = $103;
+    } else {
+     $$0124$lcssa = $104;
+     $$0128$lcssa = $103;
+     break;
+    }
+   }
+  } else {
+   $$0124$lcssa = $97;
+   $$0128$lcssa = $93;
+  }
+  $110 = $$0124$lcssa >>> 0 < 8;
+  if ($110) {
+   $$3127$ph = $$0124$lcssa;
+   $$3131$ph = $$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;
+    SAFE_HEAP_STORE($115 | 0, 0 | 0, 4);
+    $116 = $114 + 4 | 0;
+    $117 = $116;
+    SAFE_HEAP_STORE($117 | 0, 0 | 0, 4);
+    $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;
+   $$3127$ph = $121;
+   $$3131$ph = $scevgep193;
+  }
+  $122 = ($$3127$ph | 0) == 0;
+  if (!$122) {
+   $$3127157 = $$3127$ph;
+   $$3131156 = $$3131$ph;
+   while (1) {
+    SAFE_HEAP_STORE($$3131156 >> 0 | 0, 0 | 0, 1);
+    $123 = $$3131156 + 1 | 0;
+    $124 = $$3127157 + -1 | 0;
+    $125 = ($124 | 0) == 0;
+    if ($125) {
+     break;
+    } else {
+     $$3127157 = $124;
+     $$3131156 = $123;
+    }
+   }
+  }
+  $126 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $127 = $126 + 20 | 0;
+  $128 = SAFE_HEAP_LOAD($127 | 0, 4, 0) | 0 | 0;
+  __gcry_free($128);
+  $$pre197 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $130 = $$pre197;
+ }
+ $129 = $130 + 4 | 0;
+ $131 = SAFE_HEAP_LOAD($129 | 0, 4, 0) | 0 | 0;
+ $132 = $0;
+ $133 = $132 & 7;
+ $134 = ($133 | 0) != 0;
+ $135 = ($131 | 0) != 0;
+ $136 = $135 & $134;
+ if ($136) {
+  $$0109151 = $131;
+  $$0112150 = $0;
+  while (1) {
+   SAFE_HEAP_STORE($$0112150 >> 0 | 0, 0 | 0, 1);
+   $137 = $$0112150 + 1 | 0;
+   $138 = $$0109151 + -1 | 0;
+   $139 = $137;
+   $140 = $139 & 7;
+   $141 = ($140 | 0) != 0;
+   $142 = ($138 | 0) != 0;
+   $143 = $142 & $141;
+   if ($143) {
+    $$0109151 = $138;
+    $$0112150 = $137;
+   } else {
+    $$0109$lcssa = $138;
+    $$0112$lcssa = $137;
+    break;
+   }
+  }
+ } else {
+  $$0109$lcssa = $131;
+  $$0112$lcssa = $0;
+ }
+ $144 = $$0109$lcssa >>> 0 < 8;
+ if ($144) {
+  $$3$ph = $$0109$lcssa;
+  $$3115$ph = $$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;
+   SAFE_HEAP_STORE($149 | 0, 0 | 0, 4);
+   $150 = $148 + 4 | 0;
+   $151 = $150;
+   SAFE_HEAP_STORE($151 | 0, 0 | 0, 4);
+   $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;
+  $$3$ph = $155;
+  $$3115$ph = $scevgep;
+ }
+ $156 = ($$3$ph | 0) == 0;
+ if (!$156) {
+  $$3115148 = $$3115$ph;
+  $$3149 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3115148 >> 0 | 0, 0 | 0, 1);
+   $157 = $$3115148 + 1 | 0;
+   $158 = $$3149 + -1 | 0;
+   $159 = ($158 | 0) == 0;
+   if ($159) {
+    break;
+   } else {
+    $$3115148 = $157;
+    $$3149 = $158;
+   }
+  }
+ }
+ __gcry_free($0);
+ STACKTOP = sp;
+ return;
+}
+
+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, $$pre = 0, $$pre69 = 0, $$pre70 = 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, $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;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ dest = $7;
+ stop = dest + 56 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_log_printmpi(47813, $14);
+   }
+   $15 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $16 = ($15 | 0) == (0 | 0);
+   if (!$16) {
+    $17 = $15 + 12 | 0;
+    $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 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;
+   SAFE_HEAP_STORE($vararg_buffer | 0, $21 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, $22 | 0, 4);
+   $vararg_ptr2 = $vararg_buffer + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr2 | 0, $23 | 0, 4);
+   $vararg_ptr3 = $vararg_buffer + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr3 | 0, $4 | 0, 4);
+   $vararg_ptr4 = $vararg_buffer + 16 | 0;
+   SAFE_HEAP_STORE($vararg_ptr4 | 0, $24 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer + 20 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, $25 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer + 24 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, $5 | 0, 4);
+   $vararg_ptr7 = $vararg_buffer + 28 | 0;
+   SAFE_HEAP_STORE($vararg_ptr7 | 0, 0 | 0, 4);
+   $26 = __gcry_sexp_extract_param($2, 0, 47830, $vararg_buffer) | 0;
+   $27 = ($26 | 0) == 0;
+   if ($27) {
+    $28 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    $29 = ($28 | 0) == (0 | 0);
+    if (!$29) {
+     $30 = $7 + 20 | 0;
+     __gcry_mpi_point_init($30);
+     $31 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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, 46925, 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) {
+     SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+     $40 = $7 + 4 | 0;
+     SAFE_HEAP_STORE($40 | 0, 0 | 0, 4);
+     $$05966 = 0;
+    }
+    $41 = __gcry_get_debug_flag(1) | 0;
+    $42 = ($41 | 0) == 0;
+    if (!$42) {
+     $43 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     $44 = __gcry_ecc_model2str($43) | 0;
+     $45 = $7 + 4 | 0;
+     $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+     $47 = __gcry_ecc_dialect2str($46) | 0;
+     SAFE_HEAP_STORE($vararg_buffer8 | 0, $44 | 0, 4);
+     $vararg_ptr11 = $vararg_buffer8 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr11 | 0, $47 | 0, 4);
+     __gcry_log_debug(47846, $vararg_buffer8);
+     $48 = $7 + 40 | 0;
+     $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+     $50 = ($49 | 0) == (0 | 0);
+     if (!$50) {
+      SAFE_HEAP_STORE($vararg_buffer12 | 0, $49 | 0, 4);
+      __gcry_log_debug(47871, $vararg_buffer12);
+     }
+     $51 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47893, $51);
+     $52 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47910, $52);
+     $53 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47927, $53);
+     $54 = $7 + 20 | 0;
+     __gcry_mpi_point_log(47944, $54, 0);
+     $55 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47959, $55);
+     $56 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47976, $56);
+     $57 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(47993, $57);
+    }
+    $58 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+    $59 = ($58 | 0) == (0 | 0);
+    $60 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+    $61 = ($60 | 0) == (0 | 0);
+    $or$cond61 = $59 | $61;
+    $62 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+     $66 = ($65 | 0) == (0 | 0);
+     $67 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+      $70 = ($69 | 0) != (0 | 0);
+      $71 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      $72 = ($71 | 0) != (0 | 0);
+      $or$cond = $70 & $72;
+      if ($or$cond) {
+       $73 = $7 + 44 | 0;
+       __gcry_mpi_point_init($73);
+       $74 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+       $75 = __gcry_ecc_os2ec($73, $74) | 0;
+       $76 = ($75 | 0) == 0;
+       if ($76) {
+        $$pre = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+        $$pre69 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+        $$pre70 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+        $77 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+        $78 = $7 + 4 | 0;
+        $79 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+        $80 = __gcry_mpi_ec_p_internal_new($77, $79, 0, $$pre, $$pre69, 
$$pre70) | 0;
+        $81 = __gcry_mpi_new(0) | 0;
+        $82 = __gcry_mpi_new(0) | 0;
+        __gcry_mpi_point_init($8);
+        $83 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_ec_mul_point($8, $83, $73, $80);
+        $84 = __gcry_mpi_ec_get_affine($81, $82, $8, $80) | 0;
+        $85 = ($84 | 0) == 0;
+        if (!$85) {
+         __gcry_log_fatal(48010, $vararg_buffer15);
+        }
+        $86 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+        $87 = __gcry_ecc_ec2os($81, $82, $86) | 0;
+        $88 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_ec_mul_point($8, $88, $64, $80);
+        $89 = __gcry_mpi_ec_get_affine($81, $82, $8, $80) | 0;
+        $90 = ($89 | 0) == 0;
+        if ($90) {
+         $91 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+         $92 = __gcry_ecc_ec2os($81, $82, $91) | 0;
+         __gcry_mpi_free($81);
+         __gcry_mpi_free($82);
+         __gcry_mpi_point_free_parts($8);
+         SAFE_HEAP_STORE($vararg_buffer19 | 0, $87 | 0, 4);
+         $vararg_ptr22 = $vararg_buffer19 + 4 | 0;
+         SAFE_HEAP_STORE($vararg_ptr22 | 0, $92 | 0, 4);
+         $93 = __gcry_sexp_build($0, 0, 48105, $vararg_buffer19) | 0;
+         $$055 = $93;
+         $$056 = $80;
+         $$057 = $92;
+         $$058 = $87;
+         $$1 = $$05966;
+         break;
+        } else {
+         __gcry_log_fatal(48058, $vararg_buffer17);
+        }
+       } 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);
+ $94 = $7 + 8 | 0;
+ $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($95);
+ $96 = $7 + 12 | 0;
+ $97 = SAFE_HEAP_LOAD($96 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($97);
+ $98 = $7 + 16 | 0;
+ $99 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($99);
+ $100 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($100);
+ $101 = $7 + 20 | 0;
+ __gcry_mpi_point_free_parts($101);
+ $102 = $7 + 32 | 0;
+ $103 = SAFE_HEAP_LOAD($102 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($103);
+ $104 = $7 + 36 | 0;
+ $105 = SAFE_HEAP_LOAD($104 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($105);
+ $106 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($106);
+ $107 = $7 + 44 | 0;
+ __gcry_mpi_point_free_parts($107);
+ $108 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($108);
+ __gcry_mpi_release($$058);
+ __gcry_mpi_release($$057);
+ __gcry_free($$1);
+ __gcry_mpi_ec_free($$056);
+ __gcry_pk_util_free_encoding_ctx($3);
+ $109 = __gcry_get_debug_flag(1) | 0;
+ $110 = ($109 | 0) == 0;
+ if ($110) {
+  $$0 = $$055;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $111 = _gpg_strerror($$055) | 0;
+ SAFE_HEAP_STORE($vararg_buffer23 | 0, $111 | 0, 4);
+ __gcry_log_debug(48131, $vararg_buffer23);
+ $$0 = $$055;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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 $$05776 = 0, $$06375 = 0, $$077 = 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ if (!$8) {
+  FUNCTION_TABLE_v[(SAFE_FT_MASK($7 | 0, 127 | 0) | 0) & 127]();
+ }
+ $9 = $0 + 492 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = ($4 | 0) == 0;
+ if ($11) {
+  $12 = $5;
+  $13 = $12;
+  SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+  $14 = $12 + 4 | 0;
+  $15 = $14;
+  SAFE_HEAP_STORE($15 | 0, 0 | 0, 4);
+  $16 = $5 + 8 | 0;
+  $17 = $16;
+  $18 = $17;
+  SAFE_HEAP_STORE($18 | 0, 0 | 0, 4);
+  $19 = $17 + 4 | 0;
+  $20 = $19;
+  SAFE_HEAP_STORE($20 | 0, 0 | 0, 4);
+  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;
+ $$05776 = $2;
+ $$06375 = $3;
+ $$077 = $4;
+ while (1) {
+  $58 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 127]($0, 
$5, $$06375) | 0;
+  $59 = $$06375;
+  $60 = $$05776;
+  $61 = $59 | $21;
+  $62 = $61 | $60;
+  $63 = $62 & 3;
+  $64 = ($63 | 0) == 0;
+  if ($64) {
+   $159 = $$06375 + 4 | 0;
+   $160 = SAFE_HEAP_LOAD($$06375 | 0, 4, 0) | 0 | 0;
+   $161 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+   $162 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $163 = $162 ^ $161;
+   $164 = $$05776 + 4 | 0;
+   SAFE_HEAP_STORE($$05776 | 0, $163 | 0, 4);
+   SAFE_HEAP_STORE($1 | 0, $160 | 0, 4);
+   $165 = $$06375 + 8 | 0;
+   $166 = SAFE_HEAP_LOAD($159 | 0, 4, 0) | 0 | 0;
+   $167 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+   $168 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+   $169 = $168 ^ $167;
+   $170 = $$05776 + 8 | 0;
+   SAFE_HEAP_STORE($164 | 0, $169 | 0, 4);
+   SAFE_HEAP_STORE($23 | 0, $166 | 0, 4);
+   $171 = $$06375 + 12 | 0;
+   $172 = SAFE_HEAP_LOAD($165 | 0, 4, 0) | 0 | 0;
+   $173 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+   $174 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+   $175 = $174 ^ $173;
+   $176 = $$05776 + 12 | 0;
+   SAFE_HEAP_STORE($170 | 0, $175 | 0, 4);
+   SAFE_HEAP_STORE($25 | 0, $172 | 0, 4);
+   $177 = SAFE_HEAP_LOAD($171 | 0, 4, 0) | 0 | 0;
+   $178 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+   $179 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+   $180 = $179 ^ $178;
+   SAFE_HEAP_STORE($176 | 0, $180 | 0, 4);
+   SAFE_HEAP_STORE($27 | 0, $177 | 0, 4);
+  } else {
+   $65 = $$06375 + 1 | 0;
+   $66 = SAFE_HEAP_LOAD($$06375 >> 0 | 0, 1, 0) | 0 | 0;
+   $67 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+   $68 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+   $69 = $68 ^ $67;
+   $70 = $$05776 + 1 | 0;
+   SAFE_HEAP_STORE($$05776 >> 0 | 0, $69 | 0, 1);
+   SAFE_HEAP_STORE($1 >> 0 | 0, $66 | 0, 1);
+   $71 = $$06375 + 2 | 0;
+   $72 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+   $73 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+   $74 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+   $75 = $74 ^ $73;
+   $76 = $$05776 + 2 | 0;
+   SAFE_HEAP_STORE($70 >> 0 | 0, $75 | 0, 1);
+   SAFE_HEAP_STORE($29 >> 0 | 0, $72 | 0, 1);
+   $77 = $$06375 + 3 | 0;
+   $78 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+   $79 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+   $80 = SAFE_HEAP_LOAD($30 >> 0 | 0, 1, 0) | 0 | 0;
+   $81 = $80 ^ $79;
+   $82 = $$05776 + 3 | 0;
+   SAFE_HEAP_STORE($76 >> 0 | 0, $81 | 0, 1);
+   SAFE_HEAP_STORE($31 >> 0 | 0, $78 | 0, 1);
+   $83 = $$06375 + 4 | 0;
+   $84 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+   $85 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+   $86 = SAFE_HEAP_LOAD($32 >> 0 | 0, 1, 0) | 0 | 0;
+   $87 = $86 ^ $85;
+   $88 = $$05776 + 4 | 0;
+   SAFE_HEAP_STORE($82 >> 0 | 0, $87 | 0, 1);
+   SAFE_HEAP_STORE($33 >> 0 | 0, $84 | 0, 1);
+   $89 = $$06375 + 5 | 0;
+   $90 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+   $91 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+   $92 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+   $93 = $92 ^ $91;
+   $94 = $$05776 + 5 | 0;
+   SAFE_HEAP_STORE($88 >> 0 | 0, $93 | 0, 1);
+   SAFE_HEAP_STORE($35 >> 0 | 0, $90 | 0, 1);
+   $95 = $$06375 + 6 | 0;
+   $96 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+   $97 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+   $98 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+   $99 = $98 ^ $97;
+   $100 = $$05776 + 6 | 0;
+   SAFE_HEAP_STORE($94 >> 0 | 0, $99 | 0, 1);
+   SAFE_HEAP_STORE($37 >> 0 | 0, $96 | 0, 1);
+   $101 = $$06375 + 7 | 0;
+   $102 = SAFE_HEAP_LOAD($95 >> 0 | 0, 1, 0) | 0 | 0;
+   $103 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+   $104 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+   $105 = $104 ^ $103;
+   $106 = $$05776 + 7 | 0;
+   SAFE_HEAP_STORE($100 >> 0 | 0, $105 | 0, 1);
+   SAFE_HEAP_STORE($39 >> 0 | 0, $102 | 0, 1);
+   $107 = $$06375 + 8 | 0;
+   $108 = SAFE_HEAP_LOAD($101 >> 0 | 0, 1, 0) | 0 | 0;
+   $109 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+   $110 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+   $111 = $110 ^ $109;
+   $112 = $$05776 + 8 | 0;
+   SAFE_HEAP_STORE($106 >> 0 | 0, $111 | 0, 1);
+   SAFE_HEAP_STORE($41 >> 0 | 0, $108 | 0, 1);
+   $113 = $$06375 + 9 | 0;
+   $114 = SAFE_HEAP_LOAD($107 >> 0 | 0, 1, 0) | 0 | 0;
+   $115 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+   $116 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+   $117 = $116 ^ $115;
+   $118 = $$05776 + 9 | 0;
+   SAFE_HEAP_STORE($112 >> 0 | 0, $117 | 0, 1);
+   SAFE_HEAP_STORE($43 >> 0 | 0, $114 | 0, 1);
+   $119 = $$06375 + 10 | 0;
+   $120 = SAFE_HEAP_LOAD($113 >> 0 | 0, 1, 0) | 0 | 0;
+   $121 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+   $122 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+   $123 = $122 ^ $121;
+   $124 = $$05776 + 10 | 0;
+   SAFE_HEAP_STORE($118 >> 0 | 0, $123 | 0, 1);
+   SAFE_HEAP_STORE($45 >> 0 | 0, $120 | 0, 1);
+   $125 = $$06375 + 11 | 0;
+   $126 = SAFE_HEAP_LOAD($119 >> 0 | 0, 1, 0) | 0 | 0;
+   $127 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+   $128 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+   $129 = $128 ^ $127;
+   $130 = $$05776 + 11 | 0;
+   SAFE_HEAP_STORE($124 >> 0 | 0, $129 | 0, 1);
+   SAFE_HEAP_STORE($47 >> 0 | 0, $126 | 0, 1);
+   $131 = $$06375 + 12 | 0;
+   $132 = SAFE_HEAP_LOAD($125 >> 0 | 0, 1, 0) | 0 | 0;
+   $133 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+   $134 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 0 | 0;
+   $135 = $134 ^ $133;
+   $136 = $$05776 + 12 | 0;
+   SAFE_HEAP_STORE($130 >> 0 | 0, $135 | 0, 1);
+   SAFE_HEAP_STORE($49 >> 0 | 0, $132 | 0, 1);
+   $137 = $$06375 + 13 | 0;
+   $138 = SAFE_HEAP_LOAD($131 >> 0 | 0, 1, 0) | 0 | 0;
+   $139 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+   $140 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+   $141 = $140 ^ $139;
+   $142 = $$05776 + 13 | 0;
+   SAFE_HEAP_STORE($136 >> 0 | 0, $141 | 0, 1);
+   SAFE_HEAP_STORE($51 >> 0 | 0, $138 | 0, 1);
+   $143 = $$06375 + 14 | 0;
+   $144 = SAFE_HEAP_LOAD($137 >> 0 | 0, 1, 0) | 0 | 0;
+   $145 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+   $146 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+   $147 = $146 ^ $145;
+   $148 = $$05776 + 14 | 0;
+   SAFE_HEAP_STORE($142 >> 0 | 0, $147 | 0, 1);
+   SAFE_HEAP_STORE($53 >> 0 | 0, $144 | 0, 1);
+   $149 = $$06375 + 15 | 0;
+   $150 = SAFE_HEAP_LOAD($143 >> 0 | 0, 1, 0) | 0 | 0;
+   $151 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+   $152 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+   $153 = $152 ^ $151;
+   $154 = $$05776 + 15 | 0;
+   SAFE_HEAP_STORE($148 >> 0 | 0, $153 | 0, 1);
+   SAFE_HEAP_STORE($55 >> 0 | 0, $150 | 0, 1);
+   $155 = SAFE_HEAP_LOAD($149 >> 0 | 0, 1, 0) | 0 | 0;
+   $156 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+   $157 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+   $158 = $157 ^ $156;
+   SAFE_HEAP_STORE($154 >> 0 | 0, $158 | 0, 1);
+   SAFE_HEAP_STORE($57 >> 0 | 0, $155 | 0, 1);
+  }
+  $181 = $$06375 + 16 | 0;
+  $182 = $$05776 + 16 | 0;
+  $183 = $$077 + -1 | 0;
+  $184 = ($183 | 0) == 0;
+  if ($184) {
+   break;
+  } else {
+   $$05776 = $182;
+   $$06375 = $181;
+   $$077 = $183;
+  }
+ }
+ $185 = $5;
+ $186 = $185;
+ SAFE_HEAP_STORE($186 | 0, 0 | 0, 4);
+ $187 = $185 + 4 | 0;
+ $188 = $187;
+ SAFE_HEAP_STORE($188 | 0, 0 | 0, 4);
+ $189 = $5 + 8 | 0;
+ $190 = $189;
+ $191 = $190;
+ SAFE_HEAP_STORE($191 | 0, 0 | 0, 4);
+ $192 = $190 + 4 | 0;
+ $193 = $192;
+ SAFE_HEAP_STORE($193 | 0, 0 | 0, 4);
+ $194 = ($58 | 0) == 0;
+ if ($194) {
+  STACKTOP = sp;
+  return;
+ }
+ $195 = $58 + 16 | 0;
+ ___gcry_burn_stack($195);
+ STACKTOP = sp;
+ return;
+}
+
+function _TALER_amount_subtract($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$74 = 0, $$idx$i = 0, $$idx$i76 = 0, $$idx$val$i = 0, 
$$idx$val$i77 = 0, $$idx4$i = 0, $$idx4$val$i = 0, $$sroa$8$0 = 0, 
$$sroa$8$0$$sroa_idx92 = 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;
+ var $106 = 0, $107 = 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, $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$105 = 0, $not$106 = 0;
+ var $or$cond = 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 = SAFE_HEAP_LOAD($$idx4$i >> 0 | 0, 1, 0) | 0 | 0;
+ $4 = $$idx4$val$i << 24 >> 24 == 0;
+ if (!$4) {
+  $$idx$i = $2 + 12 | 0;
+  $$idx$val$i = SAFE_HEAP_LOAD($$idx$i >> 0 | 0, 1, 0) | 0 | 0;
+  $5 = $$idx$val$i << 24 >> 24 == 0;
+  if (!$5) {
+   $6 = _strcasecmp($$idx4$i, $$idx$i) | 0;
+   $7 = ($6 | 0) == 0;
+   if ($7) {
+    {}
+    SAFE_HEAP_STORE($3 | 0, SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($3 + 4 | 0, SAFE_HEAP_LOAD($1 + 4 | 0, 4, 0) | 0 | 0 | 0, 
4);
+    SAFE_HEAP_STORE($3 + 8 | 0, SAFE_HEAP_LOAD($1 + 8 | 0, 4, 0) | 0 | 0 | 0, 
4);
+    SAFE_HEAP_STORE($3 + 12 | 0, SAFE_HEAP_LOAD($1 + 12 | 0, 4, 0) | 0 | 0 | 
0, 4);
+    SAFE_HEAP_STORE($3 + 16 | 0, SAFE_HEAP_LOAD($1 + 16 | 0, 4, 0) | 0 | 0 | 
0, 4);
+    SAFE_HEAP_STORE($3 + 20 | 0, SAFE_HEAP_LOAD($1 + 20 | 0, 4, 0) | 0 | 0 | 
0, 4);
+    $8 = $2;
+    $9 = $8;
+    $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    $11 = $8 + 4 | 0;
+    $12 = $11;
+    $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    $$sroa$8$0$$sroa_idx92 = $2 + 8 | 0;
+    $$sroa$8$0$copyload = SAFE_HEAP_LOAD($$sroa$8$0$$sroa_idx92 | 0, 4, 0) | 0 
| 0;
+    $$idx$i76 = $3 + 12 | 0;
+    $$idx$val$i77 = SAFE_HEAP_LOAD($$idx$i76 >> 0 | 0, 1, 0) | 0 | 0;
+    $14 = $$idx$val$i77 << 24 >> 24 == 0;
+    do {
+     if (!$14) {
+      $15 = $3 + 8 | 0;
+      $16 = $3;
+      $17 = $16;
+      $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+      $19 = $16 + 4 | 0;
+      $20 = $19;
+      $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+      $22 = ($18 | 0) == -1;
+      $23 = ($21 | 0) == -1;
+      $24 = $22 & $23;
+      $25 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+      L7 : do {
+       if ($24) {
+        $40 = $25;
+        label = 9;
+       } else {
+        $26 = $25;
+        $29 = $18;
+        $30 = $21;
+        while (1) {
+         $27 = $26 >>> 0 > 99999999;
+         if (!$27) {
+          $55 = $26;
+          $57 = $29;
+          $59 = $30;
+          break L7;
+         }
+         $28 = $26 + -1e8 | 0;
+         SAFE_HEAP_STORE($15 | 0, $28 | 0, 4);
+         $31 = _i64Add($29 | 0, $30 | 0, 1, 0) | 0;
+         $32 = tempRet0;
+         $33 = $3;
+         $34 = $33;
+         SAFE_HEAP_STORE($34 | 0, $31 | 0, 4);
+         $35 = $33 + 4 | 0;
+         $36 = $35;
+         SAFE_HEAP_STORE($36 | 0, $32 | 0, 4);
+         $37 = ($31 | 0) == -1;
+         $38 = ($32 | 0) == -1;
+         $39 = $37 & $38;
+         if ($39) {
+          $40 = $28;
+          label = 9;
+          break;
+         } else {
+          $26 = $28;
+          $29 = $31;
+          $30 = $32;
+         }
+        }
+       }
+      } while (0);
+      if ((label | 0) == 9) {
+       $41 = $40 >>> 0 > 99999999;
+       if ($41) {
+        {}
+        SAFE_HEAP_STORE($3 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($3 + 4 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($3 + 8 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($3 + 12 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($3 + 16 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($3 + 20 | 0, 0 | 0 | 0, 4);
+        break;
+       } else {
+        $55 = $40;
+        $57 = -1;
+        $59 = -1;
+       }
+      }
+      $42 = ($10 | 0) == -1;
+      $43 = ($13 | 0) == -1;
+      $44 = $42 & $43;
+      L15 : do {
+       if ($44) {
+        $$sroa$8$1 = $$sroa$8$0$copyload;
+        label = 14;
+       } else {
+        $$sroa$8$0 = $$sroa$8$0$copyload;
+        $47 = $10;
+        $48 = $13;
+        while (1) {
+         $45 = $$sroa$8$0 >>> 0 > 99999999;
+         if (!$45) {
+          $$sroa$8$2 = $$sroa$8$0;
+          $71 = $48;
+          $74 = $47;
+          break L15;
+         }
+         $46 = $$sroa$8$0 + -1e8 | 0;
+         $49 = _i64Add($47 | 0, $48 | 0, 1, 0) | 0;
+         $50 = tempRet0;
+         $51 = ($49 | 0) == -1;
+         $52 = ($50 | 0) == -1;
+         $53 = $51 & $52;
+         if ($53) {
+          $$sroa$8$1 = $46;
+          label = 14;
+          break;
+         } else {
+          $$sroa$8$0 = $46;
+          $47 = $49;
+          $48 = $50;
+         }
+        }
+       }
+      } while (0);
+      if ((label | 0) == 14) {
+       $54 = $$sroa$8$1 >>> 0 > 99999999;
+       if ($54) {
+        break;
+       } else {
+        $$sroa$8$2 = $$sroa$8$1;
+        $71 = -1;
+        $74 = -1;
+       }
+      }
+      $56 = $55 >>> 0 < $$sroa$8$2 >>> 0;
+      do {
+       if ($56) {
+        $58 = ($57 | 0) == 0;
+        $60 = ($59 | 0) == 0;
+        $61 = $58 & $60;
+        if (!$61) {
+         $62 = $55 + 1e8 | 0;
+         SAFE_HEAP_STORE($15 | 0, $62 | 0, 4);
+         $63 = _i64Add($57 | 0, $59 | 0, -1, -1) | 0;
+         $64 = tempRet0;
+         $65 = $3;
+         $66 = $65;
+         SAFE_HEAP_STORE($66 | 0, $63 | 0, 4);
+         $67 = $65 + 4 | 0;
+         $68 = $67;
+         SAFE_HEAP_STORE($68 | 0, $64 | 0, 4);
+         $69 = $64;
+         $72 = $63;
+         $87 = $62;
+         break;
+        }
+        {}
+        SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+        $$0 = -1;
+        STACKTOP = sp;
+        return $$0 | 0;
+       } else {
+        $69 = $59;
+        $72 = $57;
+        $87 = $55;
+       }
+      } while (0);
+      $70 = $69 >>> 0 < $71 >>> 0;
+      $73 = $72 >>> 0 < $74 >>> 0;
+      $75 = ($69 | 0) == ($71 | 0);
+      $76 = $75 & $73;
+      $77 = $70 | $76;
+      if ($77) {
+       {}
+       SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+       $$0 = -1;
+       STACKTOP = sp;
+       return $$0 | 0;
+      }
+      $78 = _strlen($$idx$i76) | 0;
+      $79 = $78 >>> 0 > 11;
+      if ($79) {
+       $80 = SAFE_HEAP_LOAD(3838 * 4 | 0, 4, 0) | 0 | 0;
+       $81 = ($80 | 0) == -1;
+       if ($81) {
+        $82 = _GNUNET_get_log_call_status(1, 0, 61157, 61183, 421) | 0;
+        SAFE_HEAP_STORE(3838 * 4 | 0, $82 | 0, 4);
+       }
+       $83 = _GNUNET_get_log_skip() | 0;
+       $84 = ($83 | 0) > 0;
+       if ($84) {
+        _GNUNET_log_skip(-1, 0);
+        _GNUNET_abort_();
+       }
+       $85 = SAFE_HEAP_LOAD(3838 * 4 | 0, 4, 0) | 0 | 0;
+       $not$106 = ($85 | 0) == 0;
+       if ($not$106) {
+        _GNUNET_abort_();
+       }
+       SAFE_HEAP_STORE($vararg_buffer | 0, 61157 | 0, 4);
+       $vararg_ptr1 = $vararg_buffer + 4 | 0;
+       SAFE_HEAP_STORE($vararg_ptr1 | 0, 421 | 0, 4);
+       _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+       _GNUNET_abort_();
+      }
+      {}
+      SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+      $86 = $0 + 12 | 0;
+      _memcpy($86 | 0, $$idx$i76 | 0, $78 | 0) | 0;
+      $88 = $87 >>> 0 < $$sroa$8$2 >>> 0;
+      if (!$88) {
+       $95 = $87 - $$sroa$8$2 | 0;
+       $96 = $0 + 8 | 0;
+       SAFE_HEAP_STORE($96 | 0, $95 | 0, 4);
+       $97 = _i64Subtract($72 | 0, $69 | 0, $74 | 0, $71 | 0) | 0;
+       $98 = tempRet0;
+       $99 = $0;
+       $100 = $99;
+       SAFE_HEAP_STORE($100 | 0, $97 | 0, 4);
+       $101 = $99 + 4 | 0;
+       $102 = $101;
+       SAFE_HEAP_STORE($102 | 0, $98 | 0, 4);
+       $103 = ($95 | 0) == 0;
+       $104 = ($97 | 0) == 0;
+       $105 = ($98 | 0) == 0;
+       $106 = $104 & $105;
+       $or$cond = $106 & $103;
+       $107 = $or$cond & 1;
+       $$74 = $107 ^ 1;
+       $$0 = $$74;
+       STACKTOP = sp;
+       return $$0 | 0;
+      }
+      $89 = SAFE_HEAP_LOAD(3839 * 4 | 0, 4, 0) | 0 | 0;
+      $90 = ($89 | 0) == -1;
+      if ($90) {
+       $91 = _GNUNET_get_log_call_status(1, 0, 61157, 61183, 422) | 0;
+       SAFE_HEAP_STORE(3839 * 4 | 0, $91 | 0, 4);
+      }
+      $92 = _GNUNET_get_log_skip() | 0;
+      $93 = ($92 | 0) > 0;
+      if ($93) {
+       _GNUNET_log_skip(-1, 0);
+       _GNUNET_abort_();
+      }
+      $94 = SAFE_HEAP_LOAD(3839 * 4 | 0, 4, 0) | 0 | 0;
+      $not$105 = ($94 | 0) == 0;
+      if ($not$105) {
+       _GNUNET_abort_();
+      }
+      SAFE_HEAP_STORE($vararg_buffer2 | 0, 61157 | 0, 4);
+      $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+      SAFE_HEAP_STORE($vararg_ptr5 | 0, 422 | 0, 4);
+      _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+      _GNUNET_abort_();
+     }
+    } while (0);
+    {}
+    SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+    $$0 = -1;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+  }
+ }
+ {}
+ SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+ $$0 = -1;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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, $$025$i = 0, $$025$i96 = 0, $$025$i96$us = 0, 
$$026$i = 0, $$026$i95 = 0, $$026$i95$us = 0, $$028$i = 0, $$028$i94 = 0, 
$$028$i94$us = 0, $$036$i = 0, $$036$i103 = 0, $$036$i103$us = 0, $$090 = 0, 
$$090$us = 0, $$092 = 0, $$092$us = 0, $$1 = 0, $$1$i = 0;
+ var $$1$i100 = 0, $$1$i100$us = 0, $$127$i = 0, $$127$i99 = 0, $$127$i99$us = 
0, $$129$i = 0, $$129$i98 = 0, $$129$i98$us = 0, $$191 = 0, $$193 = 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, $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, 
$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$i = 0, $exitcond$i104 = 0, $exitcond$i104$us 
= 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $6 = $5 + 4 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ if ($8) {
+  label = 4;
+ } else {
+  $9 = $5 + 12 | 0;
+  $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $11 = ($10 | 0) < ($4 | 0);
+  if ($11) {
+   $12 = $5 + 8 | 0;
+   $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_free_limb_space($7, $13);
+   label = 4;
+  } else {
+   $25 = $7;
+  }
+ }
+ if ((label | 0) == 4) {
+  $14 = $4 << 1;
+  $15 = $5 + 8 | 0;
+  SAFE_HEAP_STORE($15 | 0, $14 | 0, 4);
+  $16 = __gcry_is_secure($1) | 0;
+  $17 = ($16 | 0) == 0;
+  if ($17) {
+   $18 = __gcry_is_secure($3) | 0;
+   $19 = ($18 | 0) != 0;
+   $21 = $19;
+  } else {
+   $21 = 1;
+  }
+  $20 = $21 & 1;
+  $22 = __gcry_mpi_alloc_limb_space($14, $20) | 0;
+  SAFE_HEAP_STORE($6 | 0, $22 | 0, 4);
+  $23 = $5 + 12 | 0;
+  SAFE_HEAP_STORE($23 | 0, $4 | 0, 4);
+  $25 = $22;
+ }
+ $24 = ($4 | 0) < 16;
+ if ($24) {
+  _mul_n_basecase($0, $1, $3, $4);
+ } else {
+  _mul_n($0, $1, $3, $4, $25);
+ }
+ $26 = $0 + ($4 << 2) | 0;
+ $27 = $1 + ($4 << 2) | 0;
+ $28 = $2 - $4 | 0;
+ $29 = ($28 | 0) < ($4 | 0);
+ if ($29) {
+  $$1 = $26;
+  $$191 = $27;
+  $$193 = $28;
+ } else {
+  $30 = $5 + 16 | 0;
+  $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+  $32 = ($31 | 0) == (0 | 0);
+  if ($32) {
+   label = 14;
+  } else {
+   $33 = $5 + 24 | 0;
+   $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+   $35 = ($34 | 0) < ($4 | 0);
+   if ($35) {
+    $36 = $5 + 20 | 0;
+    $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_free_limb_space($31, $37);
+    label = 14;
+   } else {
+    $137 = $31;
+   }
+  }
+  if ((label | 0) == 14) {
+   $38 = $4 << 1;
+   $39 = $5 + 20 | 0;
+   SAFE_HEAP_STORE($39 | 0, $38 | 0, 4);
+   $40 = __gcry_is_secure($27) | 0;
+   $41 = ($40 | 0) == 0;
+   if ($41) {
+    $42 = __gcry_is_secure($3) | 0;
+    $43 = ($42 | 0) != 0;
+    $45 = $43;
+   } else {
+    $45 = 1;
+   }
+   $44 = $45 & 1;
+   $46 = __gcry_mpi_alloc_limb_space($38, $44) | 0;
+   SAFE_HEAP_STORE($30 | 0, $46 | 0, 4);
+   $47 = $5 + 24 | 0;
+   SAFE_HEAP_STORE($47 | 0, $4 | 0, 4);
+   $137 = $46;
+  }
+  if ($24) {
+   $$0$us = $26;
+   $$090$us = $27;
+   $$092$us = $28;
+   $48 = $137;
+   while (1) {
+    _mul_n_basecase($48, $$090$us, $3, $4);
+    $49 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+    $50 = __gcry_mpih_add_n($$0$us, $$0$us, $49, $4) | 0;
+    $51 = $$0$us + ($4 << 2) | 0;
+    $52 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+    $53 = $52 + ($4 << 2) | 0;
+    $54 = $53 + 4 | 0;
+    $55 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+    $56 = $55 + $50 | 0;
+    $57 = $51 + 4 | 0;
+    SAFE_HEAP_STORE($51 | 0, $56 | 0, 4);
+    $58 = $56 >>> 0 < $55 >>> 0;
+    L28 : do {
+     if ($58) {
+      $$025$i96$us = $4;
+      $$026$i95$us = $54;
+      $$028$i94$us = $57;
+      while (1) {
+       $59 = $$025$i96$us + -1 | 0;
+       $60 = ($59 | 0) == 0;
+       if ($60) {
+        break L28;
+       }
+       $61 = $$026$i95$us + 4 | 0;
+       $62 = SAFE_HEAP_LOAD($$026$i95$us | 0, 4, 0) | 0 | 0;
+       $63 = $62 + 1 | 0;
+       $64 = $$028$i94$us + 4 | 0;
+       SAFE_HEAP_STORE($$028$i94$us | 0, $63 | 0, 4);
+       $65 = ($63 | 0) == 0;
+       if ($65) {
+        $$025$i96$us = $59;
+        $$026$i95$us = $61;
+        $$028$i94$us = $64;
+       } else {
+        $$1$i100$us = $59;
+        $$127$i99$us = $61;
+        $$129$i98$us = $64;
+        label = 21;
+        break;
+       }
+      }
+     } else {
+      $$1$i100$us = $4;
+      $$127$i99$us = $54;
+      $$129$i98$us = $57;
+      label = 21;
+     }
+    } while (0);
+    if ((label | 0) == 21) {
+     label = 0;
+     $66 = ($$129$i98$us | 0) == ($$127$i99$us | 0);
+     if (!$66) {
+      $67 = $$1$i100$us + -1 | 0;
+      $68 = ($$1$i100$us | 0) > 1;
+      if ($68) {
+       $$036$i103$us = 0;
+       while (1) {
+        $69 = $$127$i99$us + ($$036$i103$us << 2) | 0;
+        $70 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+        $71 = $$129$i98$us + ($$036$i103$us << 2) | 0;
+        SAFE_HEAP_STORE($71 | 0, $70 | 0, 4);
+        $72 = $$036$i103$us + 1 | 0;
+        $exitcond$i104$us = ($72 | 0) == ($67 | 0);
+        if ($exitcond$i104$us) {
+         break;
+        } else {
+         $$036$i103$us = $72;
+        }
+       }
+      }
+     }
+    }
+    $73 = $$090$us + ($4 << 2) | 0;
+    $74 = $$092$us - $4 | 0;
+    $75 = ($74 | 0) < ($4 | 0);
+    if ($75) {
+     $$1 = $51;
+     $$191 = $73;
+     $$193 = $74;
+     break;
+    } else {
+     $$0$us = $51;
+     $$090$us = $73;
+     $$092$us = $74;
+     $48 = $52;
+    }
+   }
+  } else {
+   $$0 = $26;
+   $$090 = $27;
+   $$092 = $28;
+   $77 = $137;
+   while (1) {
+    $76 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    _mul_n($77, $$090, $3, $4, $76);
+    $78 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+    $79 = __gcry_mpih_add_n($$0, $$0, $78, $4) | 0;
+    $80 = $$0 + ($4 << 2) | 0;
+    $81 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+    $82 = $81 + ($4 << 2) | 0;
+    $83 = $82 + 4 | 0;
+    $84 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+    $85 = $84 + $79 | 0;
+    $86 = $80 + 4 | 0;
+    SAFE_HEAP_STORE($80 | 0, $85 | 0, 4);
+    $87 = $85 >>> 0 < $84 >>> 0;
+    L40 : do {
+     if ($87) {
+      $$025$i96 = $4;
+      $$026$i95 = $83;
+      $$028$i94 = $86;
+      while (1) {
+       $88 = $$025$i96 + -1 | 0;
+       $89 = ($88 | 0) == 0;
+       if ($89) {
+        break L40;
+       }
+       $90 = $$026$i95 + 4 | 0;
+       $91 = SAFE_HEAP_LOAD($$026$i95 | 0, 4, 0) | 0 | 0;
+       $92 = $91 + 1 | 0;
+       $93 = $$028$i94 + 4 | 0;
+       SAFE_HEAP_STORE($$028$i94 | 0, $92 | 0, 4);
+       $94 = ($92 | 0) == 0;
+       if ($94) {
+        $$025$i96 = $88;
+        $$026$i95 = $90;
+        $$028$i94 = $93;
+       } else {
+        $$1$i100 = $88;
+        $$127$i99 = $90;
+        $$129$i98 = $93;
+        label = 28;
+        break;
+       }
+      }
+     } else {
+      $$1$i100 = $4;
+      $$127$i99 = $83;
+      $$129$i98 = $86;
+      label = 28;
+     }
+    } while (0);
+    if ((label | 0) == 28) {
+     label = 0;
+     $95 = ($$129$i98 | 0) == ($$127$i99 | 0);
+     if (!$95) {
+      $96 = $$1$i100 + -1 | 0;
+      $97 = ($$1$i100 | 0) > 1;
+      if ($97) {
+       $$036$i103 = 0;
+       while (1) {
+        $98 = $$127$i99 + ($$036$i103 << 2) | 0;
+        $99 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+        $100 = $$129$i98 + ($$036$i103 << 2) | 0;
+        SAFE_HEAP_STORE($100 | 0, $99 | 0, 4);
+        $101 = $$036$i103 + 1 | 0;
+        $exitcond$i104 = ($101 | 0) == ($96 | 0);
+        if ($exitcond$i104) {
+         break;
+        } else {
+         $$036$i103 = $101;
+        }
+       }
+      }
+     }
+    }
+    $102 = $$090 + ($4 << 2) | 0;
+    $103 = $$092 - $4 | 0;
+    $104 = ($103 | 0) < ($4 | 0);
+    if ($104) {
+     $$1 = $80;
+     $$191 = $102;
+     $$193 = $103;
+     break;
+    } else {
+     $$0 = $80;
+     $$090 = $102;
+     $$092 = $103;
+     $77 = $81;
+    }
+   }
+  }
+ }
+ $105 = ($$193 | 0) == 0;
+ if ($105) {
+  return;
+ }
+ $106 = ($$193 | 0) < 16;
+ if ($106) {
+  $107 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  __gcry_mpih_mul($107, $3, $4, $$191, $$193) | 0;
+ } else {
+  $108 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  $109 = ($108 | 0) == (0 | 0);
+  if ($109) {
+   $110 = __gcry_xcalloc(1, 28) | 0;
+   SAFE_HEAP_STORE($5 | 0, $110 | 0, 4);
+   $112 = $110;
+  } else {
+   $112 = $108;
+  }
+  $111 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  __gcry_mpih_mul_karatsuba_case($111, $3, $4, $$191, $$193, $112);
+ }
+ $113 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $114 = __gcry_mpih_add_n($$1, $$1, $113, $4) | 0;
+ $115 = $$1 + ($4 << 2) | 0;
+ $116 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $117 = $116 + ($4 << 2) | 0;
+ $118 = $117 + 4 | 0;
+ $119 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+ $120 = $119 + $114 | 0;
+ $121 = $115 + 4 | 0;
+ SAFE_HEAP_STORE($115 | 0, $120 | 0, 4);
+ $122 = $120 >>> 0 < $119 >>> 0;
+ L61 : do {
+  if ($122) {
+   $$025$i = $$193;
+   $$026$i = $118;
+   $$028$i = $121;
+   while (1) {
+    $123 = $$025$i + -1 | 0;
+    $124 = ($123 | 0) == 0;
+    if ($124) {
+     break;
+    }
+    $125 = $$026$i + 4 | 0;
+    $126 = SAFE_HEAP_LOAD($$026$i | 0, 4, 0) | 0 | 0;
+    $127 = $126 + 1 | 0;
+    $128 = $$028$i + 4 | 0;
+    SAFE_HEAP_STORE($$028$i | 0, $127 | 0, 4);
+    $129 = ($127 | 0) == 0;
+    if ($129) {
+     $$025$i = $123;
+     $$026$i = $125;
+     $$028$i = $128;
+    } else {
+     $$1$i = $123;
+     $$127$i = $125;
+     $$129$i = $128;
+     break L61;
+    }
+   }
+   return;
+  } else {
+   $$1$i = $$193;
+   $$127$i = $118;
+   $$129$i = $121;
+  }
+ } while (0);
+ $130 = ($$129$i | 0) == ($$127$i | 0);
+ if ($130) {
+  return;
+ }
+ $131 = $$1$i + -1 | 0;
+ $132 = ($$1$i | 0) > 1;
+ if ($132) {
+  $$036$i = 0;
+ } else {
+  return;
+ }
+ while (1) {
+  $133 = $$127$i + ($$036$i << 2) | 0;
+  $134 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 0;
+  $135 = $$129$i + ($$036$i << 2) | 0;
+  SAFE_HEAP_STORE($135 | 0, $134 | 0, 4);
+  $136 = $$036$i + 1 | 0;
+  $exitcond$i = ($136 | 0) == ($131 | 0);
+  if ($exitcond$i) {
+   break;
+  } else {
+   $$036$i = $136;
+  }
+ }
+ return;
+}
+
+function __gcry_pk_util_parse_flaglist($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$092 = 0, $$$092100 = 0, $$$092101 = 0, $$$092102 = 0, $$$09294 = 0, 
$$$09295 = 0, $$$09296 = 0, $$$09297 = 0, $$$09298 = 0, $$$09299 = 0, $$0107 = 
0, $$087$lcssa = 0, $$087106 = 0, $$089$lcssa = 0, $$089105 = 0, $$091104 = 0, 
$$091104$in = 0, $$092$ = 0, $$092$lcssa = 0, $$092103 = 0;
+ var $$1 = 0, $$188 = 0, $$190 = 0, $$193 = 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, $9 = 0, $or$cond = 0, $or$cond11 = 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 | 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) {
+   $$0107 = 0;
+   $$087106 = 0;
+   $$089105 = 5;
+   $$091104$in = $5;
+   $$092103 = 0;
+   while (1) {
+    $$091104 = $$091104$in + -1 | 0;
+    $7 = __gcry_sexp_nth_data($0, $$091104, $3) | 0;
+    $8 = ($7 | 0) == (0 | 0);
+    L5 : do {
+     if ($8) {
+      $$1 = $$0107;
+      $$188 = $$087106;
+      $$190 = $$089105;
+      $$193 = $$092103;
+     } else {
+      $9 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+      do {
+       switch ($9 | 0) {
+       case 3:
+        {
+         $10 = _memcmp($7, 37390, 3) | 0;
+         $11 = ($10 | 0) == 0;
+         $12 = ($$089105 | 0) == 5;
+         $or$cond = $12 & $11;
+         if ($or$cond) {
+          $13 = $$087106 | 4;
+          $$1 = $$0107;
+          $$188 = $13;
+          $$190 = 4;
+          $$193 = $$092103;
+          break L5;
+         }
+         $14 = _memcmp($7, 37394, 3) | 0;
+         $15 = ($14 | 0) == 0;
+         $or$cond3 = $12 & $15;
+         if ($or$cond3) {
+          $16 = $$087106 | 16;
+          $$1 = $$0107;
+          $$188 = $16;
+          $$190 = 0;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $17 = ($$0107 | 0) == 0;
+          $$$092 = $17 ? 72 : $$092103;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$$092;
+          break L5;
+         }
+         break;
+        }
+       case 4:
+        {
+         $18 = _memcmp($7, 37398, 4) | 0;
+         $19 = ($18 | 0) == 0;
+         if ($19) {
+          $20 = $$087106 | 1024;
+          $$1 = $$0107;
+          $$188 = $20;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         }
+         $21 = _memcmp($7, 37403, 4) | 0;
+         $22 = ($21 | 0) == 0;
+         $23 = ($$089105 | 0) == 5;
+         $or$cond5 = $23 & $22;
+         if ($or$cond5) {
+          $24 = $$087106 | 4;
+          $$1 = $$0107;
+          $$188 = $24;
+          $$190 = 3;
+          $$193 = $$092103;
+          break L5;
+         }
+         $25 = _memcmp($7, 49620, 4) | 0;
+         $26 = ($25 | 0) == 0;
+         if ($26) {
+          $27 = $$087106 | 8192;
+          $$1 = $$0107;
+          $$188 = $27;
+          $$190 = 0;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $28 = ($$0107 | 0) == 0;
+          $$$09294 = $28 ? 72 : $$092103;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$$09294;
+          break L5;
+         }
+         break;
+        }
+       case 5:
+        {
+         $29 = _memcmp($7, 49614, 5) | 0;
+         $30 = ($29 | 0) == 0;
+         if ($30) {
+          $31 = $$087106 | 4096;
+          $$1 = $$0107;
+          $$188 = $31;
+          $$190 = 0;
+          $$193 = $$092103;
+          break L5;
+         }
+         $32 = _memcmp($7, 37408, 5) | 0;
+         $33 = ($32 | 0) == 0;
+         $34 = ($$089105 | 0) == 5;
+         $or$cond7 = $34 & $33;
+         if ($or$cond7) {
+          $35 = $$087106 | 4;
+          $$1 = $$0107;
+          $$188 = $35;
+          $$190 = 1;
+          $$193 = $$092103;
+          break L5;
+         }
+         $36 = _memcmp($7, 37414, 5) | 0;
+         $37 = ($36 | 0) == 0;
+         if ($37) {
+          $38 = $$087106 | 512;
+          $$1 = $$0107;
+          $$188 = $38;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $39 = ($$0107 | 0) == 0;
+          $$$09295 = $39 ? 72 : $$092103;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$$09295;
+          break L5;
+         }
+         break;
+        }
+       case 6:
+        {
+         $40 = _memcmp($7, 37420, 6) | 0;
+         $41 = ($40 | 0) == 0;
+         if ($41) {
+          $42 = $$087106 | 2048;
+          $$1 = $$0107;
+          $$188 = $42;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $43 = ($$0107 | 0) == 0;
+          $$$09296 = $43 ? 72 : $$092103;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$$09296;
+          break L5;
+         }
+         break;
+        }
+       case 7:
+        {
+         $44 = _memcmp($7, 37427, 7) | 0;
+         $45 = ($44 | 0) == 0;
+         if ($45) {
+          $46 = $$087106 | 2;
+          $$1 = $$0107;
+          $$188 = $46;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $47 = _memcmp($7, 37435, 7) | 0;
+          $48 = ($47 | 0) == 0;
+          $49 = ($$0107 | 0) != 0;
+          $or$cond11 = $49 | $48;
+          $$092$ = $or$cond11 ? $$092103 : 72;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$092$;
+          break L5;
+         }
+         break;
+        }
+       case 8:
+        {
+         $50 = _memcmp($7, 41515, 8) | 0;
+         $51 = ($50 | 0) == 0;
+         if ($51) {
+          $52 = $$087106 | 64;
+          $$1 = $$0107;
+          $$188 = $52;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $53 = ($$0107 | 0) == 0;
+          $$$09297 = $53 ? 72 : $$092103;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$$09297;
+          break L5;
+         }
+         break;
+        }
+       case 9:
+        {
+         $54 = _memcmp($7, 37443, 9) | 0;
+         $55 = ($54 | 0) == 0;
+         $56 = ($$089105 | 0) == 5;
+         $or$cond9 = $56 & $55;
+         if ($or$cond9) {
+          $57 = $$087106 | 4;
+          $$1 = $$0107;
+          $$188 = $57;
+          $$190 = 2;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $58 = ($$0107 | 0) == 0;
+          $$$09298 = $58 ? 72 : $$092103;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$$09298;
+          break L5;
+         }
+         break;
+        }
+       case 10:
+        {
+         $59 = _memcmp($7, 37453, 10) | 0;
+         $60 = ($59 | 0) == 0;
+         if ($60) {
+          $$1 = 1;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         }
+         $61 = _memcmp($7, 37464, 10) | 0;
+         $62 = ($61 | 0) == 0;
+         if ($62) {
+          $63 = $$087106 | 16384;
+          $$1 = $$0107;
+          $$188 = $63;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $64 = ($$0107 | 0) == 0;
+          $$$09299 = $64 ? 72 : $$092103;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$$09299;
+          break L5;
+         }
+         break;
+        }
+       case 11:
+        {
+         $65 = _memcmp($7, 37475, 11) | 0;
+         $66 = ($65 | 0) == 0;
+         if ($66) {
+          $67 = $$087106 | 1;
+          $$1 = $$0107;
+          $$188 = $67;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         }
+         $68 = _memcmp($7, 37487, 11) | 0;
+         $69 = ($68 | 0) == 0;
+         if ($69) {
+          $70 = $$087106 | 128;
+          $$1 = $$0107;
+          $$188 = $70;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $71 = ($$0107 | 0) == 0;
+          $$$092100 = $71 ? 72 : $$092103;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$$092100;
+          break L5;
+         }
+         break;
+        }
+       case 13:
+        {
+         $72 = _memcmp($7, 37499, 13) | 0;
+         $73 = ($72 | 0) == 0;
+         if ($73) {
+          $74 = $$087106 | 256;
+          $$1 = $$0107;
+          $$188 = $74;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         }
+         $75 = _memcmp($7, 48632, 13) | 0;
+         $76 = ($75 | 0) == 0;
+         if ($76) {
+          $77 = $$087106 | 32;
+          $$1 = $$0107;
+          $$188 = $77;
+          $$190 = $$089105;
+          $$193 = $$092103;
+          break L5;
+         } else {
+          $78 = ($$0107 | 0) == 0;
+          $$$092101 = $78 ? 72 : $$092103;
+          $$1 = $$0107;
+          $$188 = $$087106;
+          $$190 = $$089105;
+          $$193 = $$$092101;
+          break L5;
+         }
+         break;
+        }
+       default:
+        {
+         $79 = ($$0107 | 0) == 0;
+         $$$092102 = $79 ? 72 : $$092103;
+         $$1 = $$0107;
+         $$188 = $$087106;
+         $$190 = $$089105;
+         $$193 = $$$092102;
+         break L5;
+        }
+       }
+      } while (0);
+     }
+    } while (0);
+    $80 = ($$091104 | 0) > 1;
+    if ($80) {
+     $$0107 = $$1;
+     $$087106 = $$188;
+     $$089105 = $$190;
+     $$091104$in = $$091104;
+     $$092103 = $$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) {
+  SAFE_HEAP_STORE($1 | 0, $$087$lcssa | 0, 4);
+ }
+ $82 = ($2 | 0) == (0 | 0);
+ if ($82) {
+  STACKTOP = sp;
+  return $$092$lcssa | 0;
+ }
+ SAFE_HEAP_STORE($2 | 0, $$089$lcssa | 0, 4);
+ STACKTOP = sp;
+ return $$092$lcssa | 0;
+}
+
+function _GNUNET_STRINGS_relative_time_to_string($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 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, $2 = 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, $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$cond3 = 0, $or$cond5 = 0, $or$cond7 = 0, $or$cond9 = 0, $vararg_buffer = 0, 
$vararg_ptr10 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer = sp + 16 | 0;
+ $5 = sp + 8 | 0;
+ $6 = sp;
+ $3 = $1;
+ $4 = 21675;
+ $7 = $0;
+ $8 = $7;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = $7 + 4 | 0;
+ $11 = $10;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = $5;
+ $14 = $13;
+ SAFE_HEAP_STORE($14 | 0, $9 | 0, 4);
+ $15 = $13 + 4 | 0;
+ $16 = $15;
+ SAFE_HEAP_STORE($16 | 0, $12 | 0, 4);
+ $17 = _GNUNET_TIME_relative_get_forever_() | 0;
+ $18 = tempRet0;
+ $19 = $6;
+ $20 = $19;
+ SAFE_HEAP_STORE($20 | 0, $17 | 0, 4);
+ $21 = $19 + 4 | 0;
+ $22 = $21;
+ SAFE_HEAP_STORE($22 | 0, $18 | 0, 4);
+ $23 = $6;
+ $24 = $23;
+ $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+ $26 = $23 + 4 | 0;
+ $27 = $26;
+ $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+ $29 = $0;
+ $30 = $29;
+ $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+ $32 = $29 + 4 | 0;
+ $33 = $32;
+ $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+ $35 = ($25 | 0) == ($31 | 0);
+ $36 = ($28 | 0) == ($34 | 0);
+ $37 = $35 & $36;
+ if ($37) {
+  $2 = 21653;
+  $247 = $2;
+  STACKTOP = sp;
+  return $247 | 0;
+ }
+ $38 = $0;
+ $39 = $38;
+ $40 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+ $41 = $38 + 4 | 0;
+ $42 = $41;
+ $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+ $44 = 0 == ($40 | 0);
+ $45 = 0 == ($43 | 0);
+ $46 = $44 & $45;
+ if ($46) {
+  $2 = 21679;
+  $247 = $2;
+  STACKTOP = sp;
+  return $247 | 0;
+ }
+ $47 = $3;
+ $48 = 1 == ($47 | 0);
+ $49 = $5;
+ $50 = $49;
+ $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+ $52 = $49 + 4 | 0;
+ $53 = $52;
+ $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+ $55 = $54 >>> 0 > 0;
+ $56 = $51 >>> 0 > 5e3;
+ $57 = ($54 | 0) == 0;
+ $58 = $57 & $56;
+ $59 = $55 | $58;
+ $or$cond = $48 & $59;
+ if ($or$cond) {
+  label = 7;
+ } else {
+  $60 = $5;
+  $61 = $60;
+  $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+  $63 = $60 + 4 | 0;
+  $64 = $63;
+  $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+  $66 = ___uremdi3($62 | 0, $65 | 0, 1e3, 0) | 0;
+  $67 = tempRet0;
+  $68 = 0 == ($66 | 0);
+  $69 = 0 == ($67 | 0);
+  $70 = $68 & $69;
+  if ($70) {
+   label = 7;
+  }
+ }
+ do {
+  if ((label | 0) == 7) {
+   $71 = $5;
+   $72 = $71;
+   $73 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+   $74 = $71 + 4 | 0;
+   $75 = $74;
+   $76 = SAFE_HEAP_LOAD($75 | 0, 4, 0) | 0 | 0;
+   $77 = ___udivdi3($73 | 0, $76 | 0, 1e3, 0) | 0;
+   $78 = tempRet0;
+   $79 = $5;
+   $80 = $79;
+   SAFE_HEAP_STORE($80 | 0, $77 | 0, 4);
+   $81 = $79 + 4 | 0;
+   $82 = $81;
+   SAFE_HEAP_STORE($82 | 0, $78 | 0, 4);
+   $4 = 21661;
+   $83 = $3;
+   $84 = 1 == ($83 | 0);
+   $85 = $5;
+   $86 = $85;
+   $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+   $88 = $85 + 4 | 0;
+   $89 = $88;
+   $90 = SAFE_HEAP_LOAD($89 | 0, 4, 0) | 0 | 0;
+   $91 = $90 >>> 0 > 0;
+   $92 = $87 >>> 0 > 5e3;
+   $93 = ($90 | 0) == 0;
+   $94 = $93 & $92;
+   $95 = $91 | $94;
+   $or$cond3 = $84 & $95;
+   if (!$or$cond3) {
+    $96 = $5;
+    $97 = $96;
+    $98 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+    $99 = $96 + 4 | 0;
+    $100 = $99;
+    $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+    $102 = ___uremdi3($98 | 0, $101 | 0, 1e3, 0) | 0;
+    $103 = tempRet0;
+    $104 = 0 == ($102 | 0);
+    $105 = 0 == ($103 | 0);
+    $106 = $104 & $105;
+    if (!$106) {
+     break;
+    }
+   }
+   $107 = $5;
+   $108 = $107;
+   $109 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+   $110 = $107 + 4 | 0;
+   $111 = $110;
+   $112 = SAFE_HEAP_LOAD($111 | 0, 4, 0) | 0 | 0;
+   $113 = ___udivdi3($109 | 0, $112 | 0, 1e3, 0) | 0;
+   $114 = tempRet0;
+   $115 = $5;
+   $116 = $115;
+   SAFE_HEAP_STORE($116 | 0, $113 | 0, 4);
+   $117 = $115 + 4 | 0;
+   $118 = $117;
+   SAFE_HEAP_STORE($118 | 0, $114 | 0, 4);
+   $4 = 39073;
+   $119 = $3;
+   $120 = 1 == ($119 | 0);
+   $121 = $5;
+   $122 = $121;
+   $123 = SAFE_HEAP_LOAD($122 | 0, 4, 0) | 0 | 0;
+   $124 = $121 + 4 | 0;
+   $125 = $124;
+   $126 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 0;
+   $127 = $126 >>> 0 > 0;
+   $128 = $123 >>> 0 > 300;
+   $129 = ($126 | 0) == 0;
+   $130 = $129 & $128;
+   $131 = $127 | $130;
+   $or$cond5 = $120 & $131;
+   if (!$or$cond5) {
+    $132 = $5;
+    $133 = $132;
+    $134 = SAFE_HEAP_LOAD($133 | 0, 4, 0) | 0 | 0;
+    $135 = $132 + 4 | 0;
+    $136 = $135;
+    $137 = SAFE_HEAP_LOAD($136 | 0, 4, 0) | 0 | 0;
+    $138 = ___uremdi3($134 | 0, $137 | 0, 60, 0) | 0;
+    $139 = tempRet0;
+    $140 = 0 == ($138 | 0);
+    $141 = 0 == ($139 | 0);
+    $142 = $140 & $141;
+    if (!$142) {
+     break;
+    }
+   }
+   $143 = $5;
+   $144 = $143;
+   $145 = SAFE_HEAP_LOAD($144 | 0, 4, 0) | 0 | 0;
+   $146 = $143 + 4 | 0;
+   $147 = $146;
+   $148 = SAFE_HEAP_LOAD($147 | 0, 4, 0) | 0 | 0;
+   $149 = ___udivdi3($145 | 0, $148 | 0, 60, 0) | 0;
+   $150 = tempRet0;
+   $151 = $5;
+   $152 = $151;
+   SAFE_HEAP_STORE($152 | 0, $149 | 0, 4);
+   $153 = $151 + 4 | 0;
+   $154 = $153;
+   SAFE_HEAP_STORE($154 | 0, $150 | 0, 4);
+   $4 = 21664;
+   $155 = $3;
+   $156 = 1 == ($155 | 0);
+   $157 = $5;
+   $158 = $157;
+   $159 = SAFE_HEAP_LOAD($158 | 0, 4, 0) | 0 | 0;
+   $160 = $157 + 4 | 0;
+   $161 = $160;
+   $162 = SAFE_HEAP_LOAD($161 | 0, 4, 0) | 0 | 0;
+   $163 = $162 >>> 0 > 0;
+   $164 = $159 >>> 0 > 300;
+   $165 = ($162 | 0) == 0;
+   $166 = $165 & $164;
+   $167 = $163 | $166;
+   $or$cond7 = $156 & $167;
+   if (!$or$cond7) {
+    $168 = $5;
+    $169 = $168;
+    $170 = SAFE_HEAP_LOAD($169 | 0, 4, 0) | 0 | 0;
+    $171 = $168 + 4 | 0;
+    $172 = $171;
+    $173 = SAFE_HEAP_LOAD($172 | 0, 4, 0) | 0 | 0;
+    $174 = ___uremdi3($170 | 0, $173 | 0, 60, 0) | 0;
+    $175 = tempRet0;
+    $176 = 0 == ($174 | 0);
+    $177 = 0 == ($175 | 0);
+    $178 = $176 & $177;
+    if (!$178) {
+     break;
+    }
+   }
+   $179 = $5;
+   $180 = $179;
+   $181 = SAFE_HEAP_LOAD($180 | 0, 4, 0) | 0 | 0;
+   $182 = $179 + 4 | 0;
+   $183 = $182;
+   $184 = SAFE_HEAP_LOAD($183 | 0, 4, 0) | 0 | 0;
+   $185 = ___udivdi3($181 | 0, $184 | 0, 60, 0) | 0;
+   $186 = tempRet0;
+   $187 = $5;
+   $188 = $187;
+   SAFE_HEAP_STORE($188 | 0, $185 | 0, 4);
+   $189 = $187 + 4 | 0;
+   $190 = $189;
+   SAFE_HEAP_STORE($190 | 0, $186 | 0, 4);
+   $4 = 35382;
+   $191 = $3;
+   $192 = 1 == ($191 | 0);
+   $193 = $5;
+   $194 = $193;
+   $195 = SAFE_HEAP_LOAD($194 | 0, 4, 0) | 0 | 0;
+   $196 = $193 + 4 | 0;
+   $197 = $196;
+   $198 = SAFE_HEAP_LOAD($197 | 0, 4, 0) | 0 | 0;
+   $199 = $198 >>> 0 > 0;
+   $200 = $195 >>> 0 > 120;
+   $201 = ($198 | 0) == 0;
+   $202 = $201 & $200;
+   $203 = $199 | $202;
+   $or$cond9 = $192 & $203;
+   if (!$or$cond9) {
+    $204 = $5;
+    $205 = $204;
+    $206 = SAFE_HEAP_LOAD($205 | 0, 4, 0) | 0 | 0;
+    $207 = $204 + 4 | 0;
+    $208 = $207;
+    $209 = SAFE_HEAP_LOAD($208 | 0, 4, 0) | 0 | 0;
+    $210 = ___uremdi3($206 | 0, $209 | 0, 24, 0) | 0;
+    $211 = tempRet0;
+    $212 = 0 == ($210 | 0);
+    $213 = 0 == ($211 | 0);
+    $214 = $212 & $213;
+    if (!$214) {
+     break;
+    }
+   }
+   $215 = $5;
+   $216 = $215;
+   $217 = SAFE_HEAP_LOAD($216 | 0, 4, 0) | 0 | 0;
+   $218 = $215 + 4 | 0;
+   $219 = $218;
+   $220 = SAFE_HEAP_LOAD($219 | 0, 4, 0) | 0 | 0;
+   $221 = ___udivdi3($217 | 0, $220 | 0, 24, 0) | 0;
+   $222 = tempRet0;
+   $223 = $5;
+   $224 = $223;
+   SAFE_HEAP_STORE($224 | 0, $221 | 0, 4);
+   $225 = $223 + 4 | 0;
+   $226 = $225;
+   SAFE_HEAP_STORE($226 | 0, $222 | 0, 4);
+   $227 = $5;
+   $228 = $227;
+   $229 = SAFE_HEAP_LOAD($228 | 0, 4, 0) | 0 | 0;
+   $230 = $227 + 4 | 0;
+   $231 = $230;
+   $232 = SAFE_HEAP_LOAD($231 | 0, 4, 0) | 0 | 0;
+   $233 = 1 == ($229 | 0);
+   $234 = 0 == ($232 | 0);
+   $235 = $233 & $234;
+   if ($235) {
+    $4 = 21666;
+    break;
+   } else {
+    $4 = 21670;
+    break;
+   }
+  }
+ } while (0);
+ $236 = $5;
+ $237 = $236;
+ $238 = SAFE_HEAP_LOAD($237 | 0, 4, 0) | 0 | 0;
+ $239 = $236 + 4 | 0;
+ $240 = $239;
+ $241 = SAFE_HEAP_LOAD($240 | 0, 4, 0) | 0 | 0;
+ $242 = $4;
+ $243 = $vararg_buffer;
+ $244 = $243;
+ SAFE_HEAP_STORE($244 | 0, $238 | 0, 4);
+ $245 = $243 + 4 | 0;
+ $246 = $245;
+ SAFE_HEAP_STORE($246 | 0, $241 | 0, 4);
+ $vararg_ptr10 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr10 | 0, $242 | 0, 4);
+ _GNUNET_snprintf(71651, 128, 21645, $vararg_buffer) | 0;
+ $2 = 71651;
+ $247 = $2;
+ STACKTOP = sp;
+ return $247 | 0;
+}
+
+function _md_final($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $$0$i = 0, $$013$i = 0, $$013$i42 = 0, $$02$i = 0, $$02$i39 = 0, 
$$021$i = 0, $$022$i = 0, $$054 = 0, $$055 = 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, $$pre61 = 0, $$pre61$pre 
= 0, $$pre62 = 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $3 = $2 + 12 | 0;
+ $4 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+ $5 = $4 & 2;
+ $6 = $5 << 24 >> 24 == 0;
+ if (!$6) {
+  STACKTOP = sp;
+  return;
+ }
+ $7 = $0 + 4 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = ($8 | 0) == 0;
+ if ($9) {
+  $32 = $2;
+ } else {
+  $10 = $2 + 8 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+     $17 = $$pre;
+     break;
+    } else {
+     __gcry_bug(36953, 630, 36958);
+    }
+   }
+  } while (0);
+  $16 = $17 + 16 | 0;
+  $$021$i = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+  $18 = ($$021$i | 0) == (0 | 0);
+  if ($18) {
+   $$pre61 = $17;
+  } else {
+   $19 = $0 + 12 | 0;
+   $$022$i = $$021$i;
+   while (1) {
+    $20 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $21 = ($20 | 0) == 0;
+    if ($21) {
+     $$pre27$i = $$022$i + 16 | 0;
+     $$pre$phi30$iZ2D = $$pre27$i;
+    } else {
+     $22 = SAFE_HEAP_LOAD($$022$i | 0, 4, 0) | 0 | 0;
+     $23 = $22 + 32 | 0;
+     $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+     $25 = $$022$i + 16 | 0;
+     FUNCTION_TABLE_viii[(SAFE_FT_MASK($24 | 0, 127 | 0) | 0) & 127]($25, $19, 
$20);
+     $$pre$phi30$iZ2D = $25;
+    }
+    $26 = SAFE_HEAP_LOAD($$022$i | 0, 4, 0) | 0 | 0;
+    $27 = $26 + 32 | 0;
+    $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+    FUNCTION_TABLE_viii[(SAFE_FT_MASK($28 | 0, 127 | 0) | 0) & 
127]($$pre$phi30$iZ2D, 0, 0);
+    $29 = $$022$i + 4 | 0;
+    $$0$i = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+    $30 = ($$0$i | 0) == (0 | 0);
+    if ($30) {
+     break;
+    } else {
+     $$022$i = $$0$i;
+    }
+   }
+   $$pre61$pre = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $$pre61 = $$pre61$pre;
+  }
+  SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+  $32 = $$pre61;
+ }
+ $31 = $32 + 16 | 0;
+ $$054 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ $33 = ($$054 | 0) == (0 | 0);
+ if ($33) {
+  $41 = $32;
+ } else {
+  $$055 = $$054;
+  while (1) {
+   $34 = SAFE_HEAP_LOAD($$055 | 0, 4, 0) | 0 | 0;
+   $35 = $34 + 36 | 0;
+   $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+   $37 = $$055 + 16 | 0;
+   FUNCTION_TABLE_vi[(SAFE_FT_MASK($36 | 0, 127 | 0) | 0) & 127]($37);
+   $38 = $$055 + 4 | 0;
+   $$0 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+   $39 = ($$0 | 0) == (0 | 0);
+   if ($39) {
+    break;
+   } else {
+    $$055 = $$0;
+   }
+  }
+  $$pre62 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $41 = $$pre62;
+ }
+ $40 = $41 + 12 | 0;
+ $42 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+ $43 = $42 | 2;
+ SAFE_HEAP_STORE($40 >> 0 | 0, $43 | 0, 1);
+ $44 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $45 = $44 + 20 | 0;
+ $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+ $47 = ($46 | 0) == (0 | 0);
+ if ($47) {
+  STACKTOP = sp;
+  return;
+ }
+ $$idx$val$idx = $44 + 16 | 0;
+ $$idx$val$idx$val = SAFE_HEAP_LOAD($$idx$val$idx | 0, 4, 0) | 0 | 0;
+ $48 = ($$idx$val$idx$val | 0) == (0 | 0);
+ if ($48) {
+  __gcry_bug(36953, 816, 37090);
+ }
+ $49 = $$idx$val$idx$val + 4 | 0;
+ $50 = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+ $51 = ($50 | 0) == (0 | 0);
+ if ($51) {
+  $$idx36$val$idx$val = $$idx$val$idx$val;
+ } else {
+  __gcry_fips_signal_error(36953, 980, 36967, 0, 36979);
+  __gcry_log_error(37e3, $vararg_buffer);
+  $$idx36$val$pre = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $$idx36$val$idx$phi$trans$insert = $$idx36$val$pre + 16 | 0;
+  $$idx36$val$idx$val$pre = SAFE_HEAP_LOAD($$idx36$val$idx$phi$trans$insert | 
0, 4, 0) | 0 | 0;
+  $$idx36$val$idx$val = $$idx36$val$idx$val$pre;
+ }
+ $52 = SAFE_HEAP_LOAD($$idx$val$idx$val | 0, 4, 0) | 0 | 0;
+ $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+ $54 = ($53 | 0) == 0;
+ $55 = ($$idx36$val$idx$val | 0) == (0 | 0);
+ do {
+  if ($54) {
+   if ($55) {
+    __gcry_bug(36953, 816, 37090);
+   }
+   $56 = $$idx36$val$idx$val + 4 | 0;
+   $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+   $58 = ($57 | 0) == (0 | 0);
+   if (!$58) {
+    __gcry_log_debug(37051, $vararg_buffer1);
+   }
+   $59 = SAFE_HEAP_LOAD($$idx36$val$idx$val | 0, 4, 0) | 0 | 0;
+   $60 = $59 + 40 | 0;
+   $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+   $62 = $$idx36$val$idx$val + 16 | 0;
+   $63 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($61 | 0, 63 | 0) | 0) & 63]($62) | 0;
+   $$013$i = $63;
+   $127 = 1;
+   $76 = 0;
+  } else {
+   if ($55) {
+    __gcry_bug(36953, 816, 37090);
+   } else {
+    $$02$i = $$idx36$val$idx$val;
+   }
+   while (1) {
+    $64 = SAFE_HEAP_LOAD($$02$i | 0, 4, 0) | 0 | 0;
+    $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+    $66 = ($65 | 0) == ($53 | 0);
+    if ($66) {
+     label = 29;
+     break;
+    }
+    $71 = $$02$i + 4 | 0;
+    $72 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+    $73 = ($72 | 0) == (0 | 0);
+    if ($73) {
+     label = 31;
+     break;
+    } else {
+     $$02$i = $72;
+    }
+   }
+   if ((label | 0) == 29) {
+    $67 = $64 + 40 | 0;
+    $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+    $69 = $$02$i + 16 | 0;
+    $70 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($68 | 0, 63 | 0) | 0) & 63]($69) | 0;
+    $$013$i = $70;
+    $127 = 0;
+    $76 = $53;
+    break;
+   } else if ((label | 0) == 31) {
+    __gcry_bug(36953, 816, 37090);
+   }
+  }
+ } while (0);
+ $74 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+ $75 = ($74 | 0) == ($76 | 0);
+ if ($75) {
+  $$ph$i = 7620;
+  label = 38;
+ } else {
+  $77 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+  $78 = ($77 | 0) == ($76 | 0);
+  if ($78) {
+   $$ph$i = 7756;
+   label = 38;
+  } else {
+   $79 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+   $80 = ($79 | 0) == ($76 | 0);
+   if ($80) {
+    $$ph$i = 7696;
+    label = 38;
+   } else {
+    $81 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+    $82 = ($81 | 0) == ($76 | 0);
+    if ($82) {
+     $$ph$i = 7820;
+     label = 38;
+    } else {
+     $83 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+     $84 = ($83 | 0) == ($76 | 0);
+     if ($84) {
+      $$ph$i = 7884;
+      label = 38;
+     } else {
+      $85 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+      $86 = ($85 | 0) == ($76 | 0);
+      if ($86) {
+       $$ph$i = 7456;
+       label = 38;
+      } else {
+       $107 = 0;
+      }
+     }
+    }
+   }
+  }
+ }
+ if ((label | 0) == 38) {
+  $87 = $$ph$i + 24 | 0;
+  $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+  $107 = $88;
+ }
+ $89 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $90 = $89 + 12 | 0;
+ $91 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 0) | 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);
+ }
+ $100 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $101 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $102 = $101 + 20 | 0;
+ $103 = SAFE_HEAP_LOAD($102 | 0, 4, 0) | 0 | 0;
+ $104 = $101 + 24 | 0;
+ $105 = SAFE_HEAP_LOAD($104 | 0, 4, 0) | 0 | 0;
+ $106 = $103 + $105 | 0;
+ _md_write($100, $106, $105);
+ _md_write($100, $$013$i, $107);
+ _md_final($100);
+ $$idx35$val = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+ $$idx35$val$idx = $$idx35$val + 16 | 0;
+ $$idx35$val$idx$val = SAFE_HEAP_LOAD($$idx35$val$idx | 0, 4, 0) | 0 | 0;
+ $108 = ($$idx35$val$idx$val | 0) == (0 | 0);
+ do {
+  if ($127) {
+   if ($108) {
+    __gcry_bug(36953, 816, 37090);
+   }
+   $109 = $$idx35$val$idx$val + 4 | 0;
+   $110 = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 0;
+   $111 = ($110 | 0) == (0 | 0);
+   if (!$111) {
+    __gcry_log_debug(37051, $vararg_buffer3);
+   }
+   $112 = SAFE_HEAP_LOAD($$idx35$val$idx$val | 0, 4, 0) | 0 | 0;
+   $113 = $112 + 40 | 0;
+   $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+   $115 = $$idx35$val$idx$val + 16 | 0;
+   $116 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($114 | 0, 63 | 0) | 0) & 63]($115) | 
0;
+   $$013$i42 = $116;
+  } else {
+   if ($108) {
+    __gcry_bug(36953, 816, 37090);
+   } else {
+    $$02$i39 = $$idx35$val$idx$val;
+   }
+   while (1) {
+    $117 = SAFE_HEAP_LOAD($$02$i39 | 0, 4, 0) | 0 | 0;
+    $118 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+    $119 = ($118 | 0) == ($76 | 0);
+    if ($119) {
+     label = 48;
+     break;
+    }
+    $124 = $$02$i39 + 4 | 0;
+    $125 = SAFE_HEAP_LOAD($124 | 0, 4, 0) | 0 | 0;
+    $126 = ($125 | 0) == (0 | 0);
+    if ($126) {
+     label = 50;
+     break;
+    } else {
+     $$02$i39 = $125;
+    }
+   }
+   if ((label | 0) == 48) {
+    $120 = $117 + 40 | 0;
+    $121 = SAFE_HEAP_LOAD($120 | 0, 4, 0) | 0 | 0;
+    $122 = $$02$i39 + 16 | 0;
+    $123 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($121 | 0, 63 | 0) | 0) & 63]($122) 
| 0;
+    $$013$i42 = $123;
+    break;
+   } else if ((label | 0) == 50) {
+    __gcry_bug(36953, 816, 37090);
+   }
+  }
+ } while (0);
+ _memcpy($$013$i | 0, $$013$i42 | 0, $107 | 0) | 0;
+ _md_close($100);
+ STACKTOP = sp;
+ return;
+}
+
+function _mylog($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$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, $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, $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, $last_bulk_time$byval_copy = 0;
+ var $or$cond = 0, $or$cond3 = 0, $vacopy_currentptr = 0, $vararg_buffer = 0, 
$vararg_buffer5 = 0, $vararg_ptr4 = 0, dest = 0, label = 0, sp = 0, stop = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 240 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(240 | 0);
+ $last_bulk_time$byval_copy = sp + 40 | 0;
+ $vararg_buffer5 = sp + 32 | 0;
+ $vararg_buffer = sp + 24 | 0;
+ $8 = sp + 176 | 0;
+ $9 = sp + 112 | 0;
+ $12 = sp + 72 | 0;
+ $15 = sp + 16 | 0;
+ $16 = sp + 56 | 0;
+ $17 = sp + 8 | 0;
+ $19 = sp;
+ $4 = $0;
+ $5 = $1;
+ $6 = $2;
+ $7 = $3;
+ $20 = $7;
+ $vacopy_currentptr = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($12 | 0, $vacopy_currentptr | 0, 4);
+ $21 = $6;
+ $22 = _vsnprintf(0, 0, $21, $12) | 0;
+ $23 = $22 + 1 | 0;
+ $11 = $23;
+ $24 = $11;
+ $25 = 0 != ($24 | 0);
+ if (!$25) {
+  $13 = 952;
+  $26 = SAFE_HEAP_LOAD(183 * 4 | 0, 4, 0) | 0 | 0;
+  $27 = ($26 | 0) == -1;
+  if ($27) {
+   $28 = $13;
+   $29 = _GNUNET_get_log_call_status(1, 0, 19090, 19113, $28) | 0;
+   SAFE_HEAP_STORE(183 * 4 | 0, $29 | 0, 4);
+  }
+  $30 = _GNUNET_get_log_skip() | 0;
+  $31 = ($30 | 0) > 0;
+  if ($31) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $32 = SAFE_HEAP_LOAD(183 * 4 | 0, 4, 0) | 0 | 0;
+  $33 = ($32 | 0) != 0;
+  if (!$33) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 19090 | 0, 4);
+  $vararg_ptr4 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr4 | 0, 952 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ dest = $8;
+ stop = dest + 64 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+  dest = dest + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $34 = $11;
+ $35 = _llvm_stacksave() | 0;
+ $14 = $35;
+ $$alloca_mul = $34;
+ $36 = 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($16 | 0, 0 | 0) | 0;
+ $37 = _GNUNET_TIME_get_offset() | 0;
+ $38 = tempRet0;
+ $39 = $15;
+ $40 = $39;
+ SAFE_HEAP_STORE($40 | 0, $37 | 0, 4);
+ $41 = $39 + 4 | 0;
+ $42 = $41;
+ SAFE_HEAP_STORE($42 | 0, $38 | 0, 4);
+ $43 = $15;
+ $44 = $43;
+ $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+ $46 = $43 + 4 | 0;
+ $47 = $46;
+ $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+ $49 = ($48 | 0) > 0;
+ $50 = $45 >>> 0 > 0;
+ $51 = ($48 | 0) == 0;
+ $52 = $51 & $50;
+ $53 = $49 | $52;
+ $54 = $15;
+ $55 = $54;
+ $56 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+ $57 = $54 + 4 | 0;
+ $58 = $57;
+ $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+ $60 = ___divdi3($56 | 0, $59 | 0, 1e3, 0) | 0;
+ $61 = tempRet0;
+ $62 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+ $63 = ($62 | 0) < 0;
+ $64 = $63 << 31 >> 31;
+ $65 = _i64Add($62 | 0, $64 | 0, $60 | 0, $61 | 0) | 0;
+ $66 = tempRet0;
+ SAFE_HEAP_STORE($16 | 0, $65 | 0, 4);
+ do {
+  if ($53) {
+   $67 = $15;
+   $68 = $67;
+   $69 = SAFE_HEAP_LOAD($68 | 0, 4, 0) | 0 | 0;
+   $70 = $67 + 4 | 0;
+   $71 = $70;
+   $72 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+   $73 = ___remdi3($69 | 0, $72 | 0, 1e3, 0) | 0;
+   $74 = tempRet0;
+   $75 = ___muldi3($73 | 0, $74 | 0, 1e3, 0) | 0;
+   $76 = tempRet0;
+   $77 = $16 + 4 | 0;
+   $78 = SAFE_HEAP_LOAD($77 | 0, 4, 0) | 0 | 0;
+   $79 = ($78 | 0) < 0;
+   $80 = $79 << 31 >> 31;
+   $81 = _i64Add($78 | 0, $80 | 0, $75 | 0, $76 | 0) | 0;
+   $82 = tempRet0;
+   SAFE_HEAP_STORE($77 | 0, $81 | 0, 4);
+   $83 = $16 + 4 | 0;
+   $84 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+   $85 = ($84 | 0) < 0;
+   $86 = $85 << 31 >> 31;
+   $87 = ($86 | 0) > 0;
+   $88 = $84 >>> 0 > 1e6;
+   $89 = ($86 | 0) == 0;
+   $90 = $89 & $88;
+   $91 = $87 | $90;
+   if ($91) {
+    $92 = $16 + 4 | 0;
+    $93 = SAFE_HEAP_LOAD($92 | 0, 4, 0) | 0 | 0;
+    $94 = ($93 | 0) < 0;
+    $95 = $94 << 31 >> 31;
+    $96 = _i64Subtract($93 | 0, $95 | 0, 1e6, 0) | 0;
+    $97 = tempRet0;
+    SAFE_HEAP_STORE($92 | 0, $96 | 0, 4);
+    $98 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+    $99 = $98 + 1 | 0;
+    SAFE_HEAP_STORE($16 | 0, $99 | 0, 4);
+   }
+  } else {
+   $100 = $16 + 4 | 0;
+   $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+   $102 = ($101 | 0) < 0;
+   $103 = $102 << 31 >> 31;
+   $104 = $15;
+   $105 = $104;
+   $106 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+   $107 = $104 + 4 | 0;
+   $108 = $107;
+   $109 = SAFE_HEAP_LOAD($108 | 0, 4, 0) | 0 | 0;
+   $110 = ___remdi3($106 | 0, $109 | 0, 1e3, 0) | 0;
+   $111 = tempRet0;
+   $112 = _i64Subtract(0, 0, $110 | 0, $111 | 0) | 0;
+   $113 = tempRet0;
+   $114 = ___muldi3($112 | 0, $113 | 0, 1e3, 0) | 0;
+   $115 = tempRet0;
+   $116 = ($103 | 0) > ($115 | 0);
+   $117 = $101 >>> 0 > $114 >>> 0;
+   $118 = ($103 | 0) == ($115 | 0);
+   $119 = $118 & $117;
+   $120 = $116 | $119;
+   $121 = $15;
+   $122 = $121;
+   $123 = SAFE_HEAP_LOAD($122 | 0, 4, 0) | 0 | 0;
+   $124 = $121 + 4 | 0;
+   $125 = $124;
+   $126 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 0;
+   $127 = ___remdi3($123 | 0, $126 | 0, 1e3, 0) | 0;
+   $128 = tempRet0;
+   $129 = ___muldi3($127 | 0, $128 | 0, 1e3, 0) | 0;
+   $130 = tempRet0;
+   if ($120) {
+    $131 = $16 + 4 | 0;
+    $132 = SAFE_HEAP_LOAD($131 | 0, 4, 0) | 0 | 0;
+    $133 = ($132 | 0) < 0;
+    $134 = $133 << 31 >> 31;
+    $135 = _i64Add($132 | 0, $134 | 0, $129 | 0, $130 | 0) | 0;
+    $136 = tempRet0;
+    SAFE_HEAP_STORE($131 | 0, $135 | 0, 4);
+    break;
+   } else {
+    $137 = _i64Add(1e6, 0, $129 | 0, $130 | 0) | 0;
+    $138 = tempRet0;
+    $139 = $16 + 4 | 0;
+    $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+    $141 = ($140 | 0) < 0;
+    $142 = $141 << 31 >> 31;
+    $143 = _i64Add($140 | 0, $142 | 0, $137 | 0, $138 | 0) | 0;
+    $144 = tempRet0;
+    SAFE_HEAP_STORE($139 | 0, $143 | 0, 4);
+    $145 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+    $146 = $145 + -1 | 0;
+    SAFE_HEAP_STORE($16 | 0, $146 | 0, 4);
+    break;
+   }
+  }
+ } while (0);
+ $147 = _localtime($16 | 0) | 0;
+ $10 = $147;
+ $148 = $10;
+ $149 = (0 | 0) == ($148 | 0);
+ if ($149) {
+  _strcpy($8, 19119) | 0;
+ } else {
+  $150 = $10;
+  _strftime($9 | 0, 64, 19135 | 0, $150 | 0) | 0;
+  $151 = $16 + 4 | 0;
+  $152 = SAFE_HEAP_LOAD($151 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($vararg_buffer5 | 0, $152 | 0, 4);
+  _snprintf($8, 64, $9, $vararg_buffer5) | 0;
+ }
+ $153 = $11;
+ $154 = $6;
+ $155 = $7;
+ _vsnprintf($36, $153, $154, $155) | 0;
+ $156 = $4;
+ $157 = $156 & 64;
+ $158 = 0 != ($157 | 0);
+ $159 = 70224;
+ $160 = $159;
+ $161 = SAFE_HEAP_LOAD($160 | 0, 4, 0) | 0 | 0;
+ $162 = $159 + 4 | 0;
+ $163 = $162;
+ $164 = SAFE_HEAP_LOAD($163 | 0, 4, 0) | 0 | 0;
+ $165 = 0 != ($161 | 0);
+ $166 = 0 != ($164 | 0);
+ $167 = $165 | $166;
+ $or$cond = $158 & $167;
+ if ($or$cond) {
+  $168 = _strncmp($36, 71362, 256) | 0;
+  $169 = 0 == ($168 | 0);
+  if ($169) {
+   $170 = SAFE_HEAP_LOAD(17569 * 4 | 0, 4, 0) | 0 | 0;
+   $171 = $170 + 1 | 0;
+   SAFE_HEAP_STORE(17569 * 4 | 0, $171 | 0, 4);
+   {}
+   SAFE_HEAP_STORE($last_bulk_time$byval_copy | 0, SAFE_HEAP_LOAD(70224 | 0, 
4, 0) | 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($last_bulk_time$byval_copy + 4 | 0, SAFE_HEAP_LOAD(70224 + 
4 | 0, 4, 0) | 0 | 0 | 0, 4);
+   $172 = _GNUNET_TIME_absolute_get_duration($last_bulk_time$byval_copy) | 0;
+   $173 = tempRet0;
+   $174 = $17;
+   $175 = $174;
+   SAFE_HEAP_STORE($175 | 0, $172 | 0, 4);
+   $176 = $174 + 4 | 0;
+   $177 = $176;
+   SAFE_HEAP_STORE($177 | 0, $173 | 0, 4);
+   $178 = $17;
+   $179 = $178;
+   $180 = SAFE_HEAP_LOAD($179 | 0, 4, 0) | 0 | 0;
+   $181 = $178 + 4 | 0;
+   $182 = $181;
+   $183 = SAFE_HEAP_LOAD($182 | 0, 4, 0) | 0 | 0;
+   $184 = $183 >>> 0 > 10;
+   $185 = $180 >>> 0 > 250327040;
+   $186 = ($183 | 0) == 10;
+   $187 = $186 & $185;
+   $188 = $184 | $187;
+   $189 = SAFE_HEAP_LOAD(17569 * 4 | 0, 4, 0) | 0 | 0;
+   $190 = $189 >>> 0 > 1e3;
+   $or$cond3 = $188 | $190;
+   if ($or$cond3) {
+    _flush_bulk($8);
+   }
+   $18 = 1;
+   $201 = $14;
+   _llvm_stackrestore($201 | 0);
+   STACKTOP = sp;
+   return;
+  }
+ }
+ _flush_bulk($8);
+ _strncpy(71362, $36, 256) | 0;
+ SAFE_HEAP_STORE(17569 * 4 | 0, 0 | 0, 4);
+ $191 = $4;
+ SAFE_HEAP_STORE(17570 * 4 | 0, $191 | 0, 4);
+ $192 = _GNUNET_TIME_absolute_get() | 0;
+ $193 = tempRet0;
+ $194 = $19;
+ $195 = $194;
+ SAFE_HEAP_STORE($195 | 0, $192 | 0, 4);
+ $196 = $194 + 4 | 0;
+ $197 = $196;
+ SAFE_HEAP_STORE($197 | 0, $193 | 0, 4);
+ {}
+ SAFE_HEAP_STORE(70224 | 0, SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE(70224 + 4 | 0, SAFE_HEAP_LOAD($19 + 4 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ $198 = $5;
+ _strncpy(71618, $198, 32) | 0;
+ $199 = $4;
+ $200 = $5;
+ _output_message($199, $200, $8, $36);
+ $18 = 0;
+ $201 = $14;
+ _llvm_stackrestore($201 | 0);
+ STACKTOP = sp;
+ return;
+}
+function __gcry_secmem_free_internal($0) {
+ $0 = $0 | 0;
+ var $$0$i = 0, $$0$i$i = 0, $$0135$lcssa = 0, $$0135213 = 0, $$0139$lcssa = 
0, $$0139187 = 0, $$0143$lcssa = 0, $$0143186 = 0, $$0147$lcssa = 0, $$0147212 
= 0, $$0151$lcssa = 0, $$0151195 = 0, $$0155$lcssa = 0, $$0155194 = 0, 
$$0159$lcssa = 0, $$0159204 = 0, $$0163$lcssa = 0, $$0163203 = 0, $$1$i$i = 0, 
$$1136 = 0;
+ var $$1140 = 0, $$1144 = 0, $$1148 = 0, $$1152 = 0, $$1156 = 0, $$1160 = 0, 
$$1164 = 0, $$3138$ph = 0, $$3138210 = 0, $$3142$ph = 0, $$3142185 = 0, 
$$3146$ph = 0, $$3146184 = 0, $$3150$ph = 0, $$3150209 = 0, $$3154$ph = 0, 
$$3154192 = 0, $$3158$ph = 0, $$3158191 = 0, $$3162$ph = 0;
+ var $$3162201 = 0, $$3166$ph = 0, $$3166200 = 0, $$pre$phiZ2D = 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;
+ 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, $15 = 0, $16 = 0, $17 = 0;
+ var $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, $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, $phitmp$i$i = 0, $phitmp$i$i$i = 0, $scevgep = 0, $scevgep234 
= 0, $scevgep235 = 0, $scevgep236 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == (0 | 0);
+ if ($1) {
+  return;
+ }
+ $2 = $0 + -8 | 0;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $0;
+ $5 = $4 & 7;
+ $6 = ($5 | 0) != 0;
+ $7 = ($3 | 0) != 0;
+ $8 = $7 & $6;
+ if ($8) {
+  $$0135213 = $0;
+  $$0147212 = $3;
+  while (1) {
+   SAFE_HEAP_STORE($$0135213 >> 0 | 0, -1 | 0, 1);
+   $9 = $$0135213 + 1 | 0;
+   $10 = $$0147212 + -1 | 0;
+   $11 = $9;
+   $12 = $11 & 7;
+   $13 = ($12 | 0) != 0;
+   $14 = ($10 | 0) != 0;
+   $15 = $14 & $13;
+   if ($15) {
+    $$0135213 = $9;
+    $$0147212 = $10;
+   } else {
+    $$0135$lcssa = $9;
+    $$0147$lcssa = $10;
+    break;
+   }
+  }
+ } else {
+  $$0135$lcssa = $0;
+  $$0147$lcssa = $3;
+ }
+ $16 = $$0147$lcssa >>> 0 < 8;
+ if ($16) {
+  $$3138$ph = $$0135$lcssa;
+  $$3150$ph = $$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;
+   SAFE_HEAP_STORE($21 | 0, -1 | 0, 4);
+   $22 = $20 + 4 | 0;
+   $23 = $22;
+   SAFE_HEAP_STORE($23 | 0, -1 | 0, 4);
+   $24 = $$1148 + -8 | 0;
+   $25 = $$1136 + 8 | 0;
+   $26 = $24 >>> 0 > 7;
+   if ($26) {
+    $$1136 = $25;
+    $$1148 = $24;
+   } else {
+    break;
+   }
+  }
+  $27 = $17 - $18 | 0;
+  $scevgep236 = $$0135$lcssa + $19 | 0;
+  $$3138$ph = $scevgep236;
+  $$3150$ph = $27;
+ }
+ $28 = ($$3150$ph | 0) == 0;
+ if (!$28) {
+  $$3138210 = $$3138$ph;
+  $$3150209 = $$3150$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3138210 >> 0 | 0, -1 | 0, 1);
+   $29 = $$3138210 + 1 | 0;
+   $30 = $$3150209 + -1 | 0;
+   $31 = ($30 | 0) == 0;
+   if ($31) {
+    break;
+   } else {
+    $$3138210 = $29;
+    $$3150209 = $30;
+   }
+  }
+ }
+ if ($8) {
+  $$0159204 = $0;
+  $$0163203 = $3;
+  while (1) {
+   SAFE_HEAP_STORE($$0159204 >> 0 | 0, -86 | 0, 1);
+   $32 = $$0159204 + 1 | 0;
+   $33 = $$0163203 + -1 | 0;
+   $34 = $32;
+   $35 = $34 & 7;
+   $36 = ($35 | 0) != 0;
+   $37 = ($33 | 0) != 0;
+   $38 = $37 & $36;
+   if ($38) {
+    $$0159204 = $32;
+    $$0163203 = $33;
+   } else {
+    $$0159$lcssa = $32;
+    $$0163$lcssa = $33;
+    break;
+   }
+  }
+ } else {
+  $$0159$lcssa = $0;
+  $$0163$lcssa = $3;
+ }
+ $39 = $$0163$lcssa >>> 0 < 8;
+ if ($39) {
+  $$3162$ph = $$0159$lcssa;
+  $$3166$ph = $$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;
+   SAFE_HEAP_STORE($44 | 0, -1431655766 | 0, 4);
+   $45 = $43 + 4 | 0;
+   $46 = $45;
+   SAFE_HEAP_STORE($46 | 0, -1431655766 | 0, 4);
+   $47 = $$1164 + -8 | 0;
+   $48 = $$1160 + 8 | 0;
+   $49 = $47 >>> 0 > 7;
+   if ($49) {
+    $$1160 = $48;
+    $$1164 = $47;
+   } else {
+    break;
+   }
+  }
+  $50 = $40 - $41 | 0;
+  $scevgep235 = $$0159$lcssa + $42 | 0;
+  $$3162$ph = $scevgep235;
+  $$3166$ph = $50;
+ }
+ $51 = ($$3166$ph | 0) == 0;
+ if (!$51) {
+  $$3162201 = $$3162$ph;
+  $$3166200 = $$3166$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3162201 >> 0 | 0, -86 | 0, 1);
+   $52 = $$3162201 + 1 | 0;
+   $53 = $$3166200 + -1 | 0;
+   $54 = ($53 | 0) == 0;
+   if ($54) {
+    break;
+   } else {
+    $$3162201 = $52;
+    $$3166200 = $53;
+   }
+  }
+ }
+ if ($8) {
+  $$0151195 = $3;
+  $$0155194 = $0;
+  while (1) {
+   SAFE_HEAP_STORE($$0155194 >> 0 | 0, 85 | 0, 1);
+   $55 = $$0155194 + 1 | 0;
+   $56 = $$0151195 + -1 | 0;
+   $57 = $55;
+   $58 = $57 & 7;
+   $59 = ($58 | 0) != 0;
+   $60 = ($56 | 0) != 0;
+   $61 = $60 & $59;
+   if ($61) {
+    $$0151195 = $56;
+    $$0155194 = $55;
+   } else {
+    $$0151$lcssa = $56;
+    $$0155$lcssa = $55;
+    break;
+   }
+  }
+ } else {
+  $$0151$lcssa = $3;
+  $$0155$lcssa = $0;
+ }
+ $62 = $$0151$lcssa >>> 0 < 8;
+ if ($62) {
+  $$3154$ph = $$0151$lcssa;
+  $$3158$ph = $$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;
+   SAFE_HEAP_STORE($67 | 0, 1431655765 | 0, 4);
+   $68 = $66 + 4 | 0;
+   $69 = $68;
+   SAFE_HEAP_STORE($69 | 0, 1431655765 | 0, 4);
+   $70 = $$1152 + -8 | 0;
+   $71 = $$1156 + 8 | 0;
+   $72 = $70 >>> 0 > 7;
+   if ($72) {
+    $$1152 = $70;
+    $$1156 = $71;
+   } else {
+    break;
+   }
+  }
+  $73 = $63 - $64 | 0;
+  $scevgep234 = $$0155$lcssa + $65 | 0;
+  $$3154$ph = $73;
+  $$3158$ph = $scevgep234;
+ }
+ $74 = ($$3154$ph | 0) == 0;
+ if (!$74) {
+  $$3154192 = $$3154$ph;
+  $$3158191 = $$3158$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3158191 >> 0 | 0, 85 | 0, 1);
+   $75 = $$3158191 + 1 | 0;
+   $76 = $$3154192 + -1 | 0;
+   $77 = ($76 | 0) == 0;
+   if ($77) {
+    break;
+   } else {
+    $$3154192 = $76;
+    $$3158191 = $75;
+   }
+  }
+ }
+ if ($8) {
+  $$0139187 = $3;
+  $$0143186 = $0;
+  while (1) {
+   SAFE_HEAP_STORE($$0143186 >> 0 | 0, 0 | 0, 1);
+   $78 = $$0143186 + 1 | 0;
+   $79 = $$0139187 + -1 | 0;
+   $80 = $78;
+   $81 = $80 & 7;
+   $82 = ($81 | 0) != 0;
+   $83 = ($79 | 0) != 0;
+   $84 = $83 & $82;
+   if ($84) {
+    $$0139187 = $79;
+    $$0143186 = $78;
+   } else {
+    $$0139$lcssa = $79;
+    $$0143$lcssa = $78;
+    break;
+   }
+  }
+ } else {
+  $$0139$lcssa = $3;
+  $$0143$lcssa = $0;
+ }
+ $85 = $$0139$lcssa >>> 0 < 8;
+ if ($85) {
+  $$3142$ph = $$0139$lcssa;
+  $$3146$ph = $$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;
+   SAFE_HEAP_STORE($90 | 0, 0 | 0, 4);
+   $91 = $89 + 4 | 0;
+   $92 = $91;
+   SAFE_HEAP_STORE($92 | 0, 0 | 0, 4);
+   $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;
+  $$3142$ph = $96;
+  $$3146$ph = $scevgep;
+ }
+ $97 = ($$3142$ph | 0) == 0;
+ if (!$97) {
+  $$3142185 = $$3142$ph;
+  $$3146184 = $$3146$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3146184 >> 0 | 0, 0 | 0, 1);
+   $98 = $$3146184 + 1 | 0;
+   $99 = $$3142185 + -1 | 0;
+   $100 = ($99 | 0) == 0;
+   if ($100) {
+    break;
+   } else {
+    $$3142185 = $99;
+    $$3146184 = $98;
+   }
+  }
+ }
+ $101 = ($3 | 0) == 0;
+ if (!$101) {
+  $102 = SAFE_HEAP_LOAD(17604 * 4 | 0, 4, 0) | 0 | 0;
+  $103 = $102 - $3 | 0;
+  SAFE_HEAP_STORE(17604 * 4 | 0, $103 | 0, 4);
+  $104 = SAFE_HEAP_LOAD(17605 * 4 | 0, 4, 0) | 0 | 0;
+  $105 = $104 + -1 | 0;
+  SAFE_HEAP_STORE(17605 * 4 | 0, $105 | 0, 4);
+ }
+ $106 = $0 + -4 | 0;
+ $107 = SAFE_HEAP_LOAD($106 | 0, 4, 0) | 0 | 0;
+ $108 = $107 & -2;
+ SAFE_HEAP_STORE($106 | 0, $108 | 0, 4);
+ $109 = SAFE_HEAP_LOAD(17602 * 4 | 0, 4, 0) | 0 | 0;
+ $110 = ($109 | 0) == ($2 | 0);
+ $111 = $109;
+ if ($110) {
+  $$1$i$i = 0;
+  $$pre$phiZ2D = $109;
+ } else {
+  $112 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+  $113 = $112 + $111 | 0;
+  $$0$i$i = $109;
+  while (1) {
+   $114 = $$0$i$i + 8 | 0;
+   $115 = SAFE_HEAP_LOAD($$0$i$i | 0, 4, 0) | 0 | 0;
+   $116 = $114 + $115 | 0;
+   $117 = $116;
+   $118 = $116 >>> 0 < $109 >>> 0;
+   $119 = $117 >>> 0 < $113 >>> 0;
+   $phitmp$i$i$i = $119 ? $116 : 0;
+   $120 = $118 ? 0 : $phitmp$i$i$i;
+   $121 = ($120 | 0) == ($2 | 0);
+   if ($121) {
+    $$1$i$i = $$0$i$i;
+    $$pre$phiZ2D = $109;
+    break;
+   } else {
+    $$0$i$i = $120;
+   }
+  }
+ }
+ $122 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $123 = $0 + $122 | 0;
+ $124 = $123 >>> 0 < $$pre$phiZ2D >>> 0;
+ if ($124) {
+  $137 = 0;
+ } else {
+  $125 = $123;
+  $126 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+  $127 = $126 + $111 | 0;
+  $128 = $125 >>> 0 < $127 >>> 0;
+  $phitmp$i$i = $128 ? $123 : 0;
+  $137 = $phitmp$i$i;
+ }
+ $129 = ($$1$i$i | 0) == (0 | 0);
+ if ($129) {
+  $$0$i = $2;
+  $145 = $122;
+ } else {
+  $130 = $$1$i$i + 4 | 0;
+  $131 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+  $132 = $131 & 1;
+  $133 = ($132 | 0) == 0;
+  if ($133) {
+   $134 = $122 + 8 | 0;
+   $135 = SAFE_HEAP_LOAD($$1$i$i | 0, 4, 0) | 0 | 0;
+   $136 = $134 + $135 | 0;
+   SAFE_HEAP_STORE($$1$i$i | 0, $136 | 0, 4);
+   $$0$i = $$1$i$i;
+   $145 = $136;
+  } else {
+   $$0$i = $2;
+   $145 = $122;
+  }
+ }
+ $138 = ($137 | 0) == (0 | 0);
+ if ($138) {
+  return;
+ }
+ $139 = $137 + 4 | 0;
+ $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+ $141 = $140 & 1;
+ $142 = ($141 | 0) == 0;
+ if (!$142) {
+  return;
+ }
+ $143 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+ $144 = $145 + 8 | 0;
+ $146 = $144 + $143 | 0;
+ SAFE_HEAP_STORE($$0$i | 0, $146 | 0, 4);
+ return;
+}
+
+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;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ {}
+ SAFE_HEAP_STORE($6 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($6 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($6 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($6 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($6 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($6 + 20 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ $9 = __gcry_sexp_find_token($2, 39075, 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, 7604, $4, $3) | 0;
+ $15 = ($14 | 0) == 0;
+ L7 : do {
+  if ($15) {
+   $16 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   SAFE_HEAP_STORE($vararg_buffer | 0, $5 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, 0 | 0, 4);
+   $17 = __gcry_sexp_extract_param($16, 0, 39071, $vararg_buffer) | 0;
+   $18 = ($17 | 0) == 0;
+   if ($18) {
+    $19 = __gcry_get_debug_flag(1) | 0;
+    $20 = ($19 | 0) == 0;
+    if (!$20) {
+     $21 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(41178, $21);
+    }
+    $22 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $23 = ($22 | 0) == (0 | 0);
+    if (!$23) {
+     $24 = $22 + 12 | 0;
+     $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 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;
+    SAFE_HEAP_STORE($vararg_buffer2 | 0, $6 | 0, 4);
+    $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr5 | 0, $28 | 0, 4);
+    $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr6 | 0, $29 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer2 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, $30 | 0, 4);
+    $vararg_ptr8 = $vararg_buffer2 + 16 | 0;
+    SAFE_HEAP_STORE($vararg_ptr8 | 0, $31 | 0, 4);
+    $vararg_ptr9 = $vararg_buffer2 + 20 | 0;
+    SAFE_HEAP_STORE($vararg_ptr9 | 0, $32 | 0, 4);
+    $vararg_ptr10 = $vararg_buffer2 + 24 | 0;
+    SAFE_HEAP_STORE($vararg_ptr10 | 0, 0 | 0, 4);
+    $33 = __gcry_sexp_extract_param($2, 0, 40995, $vararg_buffer2) | 0;
+    $34 = ($33 | 0) == 0;
+    if ($34) {
+     $35 = __gcry_get_debug_flag(1) | 0;
+     $36 = ($35 | 0) == 0;
+     if (!$36) {
+      $37 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(41195, $37);
+      $38 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(41212, $38);
+      $39 = __gcry_fips_mode() | 0;
+      $40 = ($39 | 0) == 0;
+      if ($40) {
+       $41 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+       __gcry_log_printmpi(41229, $41);
+       $42 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+       __gcry_log_printmpi(41246, $42);
+       $43 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+       __gcry_log_printmpi(41263, $43);
+       $44 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+       __gcry_log_printmpi(41280, $44);
+      }
+     }
+     $45 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_normalize($45);
+     $46 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $47 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_fdiv_r($46, $46, $47);
+     $48 = $3 + 4 | 0;
+     $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+     $50 = __gcry_mpi_snew($49) | 0;
+     $51 = $3 + 12 | 0;
+     $52 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+     $53 = $52 & 1;
+     $54 = ($53 | 0) == 0;
+     if ($54) {
+      $55 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+      $56 = __gcry_mpi_snew($55) | 0;
+      $57 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+      $58 = __gcry_mpi_snew($57) | 0;
+      $59 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+      $60 = __gcry_mpi_snew($59) | 0;
+      while (1) {
+       $61 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_randomize($56, $61, 0);
+       $62 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_mod($56, $56, $62);
+       $63 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $64 = __gcry_mpi_invm($58, $56, $63) | 0;
+       $65 = ($64 | 0) == 0;
+       if (!$65) {
+        break;
+       }
+      }
+      $66 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+      $67 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_powm($60, $56, $66, $67);
+      $68 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      $69 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mulm($60, $60, $68, $69);
+      _secret($50, $60, $6);
+      __gcry_mpi_release($60);
+      $70 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      __gcry_mpi_mulm($50, $50, $58, $70);
+      __gcry_mpi_release($56);
+      __gcry_mpi_release($58);
+     } else {
+      $71 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      _secret($50, $71, $6);
+     }
+     $72 = __gcry_get_debug_flag(1) | 0;
+     $73 = ($72 | 0) == 0;
+     if (!$73) {
+      __gcry_log_printmpi(41297, $50);
+     }
+     $74 = $3 + 8 | 0;
+     $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     switch ($75 | 0) {
+     case 1:
+      {
+       $76 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+       $80 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($vararg_buffer11 | 0, $79 | 0, 4);
+       $vararg_ptr14 = $vararg_buffer11 + 4 | 0;
+       SAFE_HEAP_STORE($vararg_ptr14 | 0, $80 | 0, 4);
+       $81 = __gcry_sexp_build($0, 0, 41314, $vararg_buffer11) | 0;
+       $$053 = 0;
+       $$054 = $81;
+       break L7;
+       break;
+      }
+     case 3:
+      {
+       $82 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+       $83 = $3 + 16 | 0;
+       $84 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+       $85 = $3 + 20 | 0;
+       $86 = SAFE_HEAP_LOAD($85 | 0, 4, 0) | 0 | 0;
+       $87 = $3 + 24 | 0;
+       $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+       $92 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       SAFE_HEAP_STORE($vararg_buffer15 | 0, $91 | 0, 4);
+       $vararg_ptr18 = $vararg_buffer15 + 4 | 0;
+       SAFE_HEAP_STORE($vararg_ptr18 | 0, $92 | 0, 4);
+       $93 = __gcry_sexp_build($0, 0, 41314, $vararg_buffer15) | 0;
+       $$053 = 0;
+       $$054 = $93;
+       break L7;
+       break;
+      }
+     default:
+      {
+       $94 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+       $95 = $94 & 8;
+       $96 = ($95 | 0) != 0;
+       $97 = $96 ? 41325 : 47780;
+       SAFE_HEAP_STORE($vararg_buffer19 | 0, $50 | 0, 4);
+       $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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ __gcry_free($99);
+ __gcry_mpi_release($$053);
+ $100 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($100);
+ $101 = $6 + 4 | 0;
+ $102 = SAFE_HEAP_LOAD($101 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($102);
+ $103 = $6 + 8 | 0;
+ $104 = SAFE_HEAP_LOAD($103 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($104);
+ $105 = $6 + 12 | 0;
+ $106 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($106);
+ $107 = $6 + 16 | 0;
+ $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($108);
+ $109 = $6 + 20 | 0;
+ $110 = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($110);
+ $111 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($111);
+ __gcry_mpi_release(0);
+ __gcry_mpi_release(0);
+ __gcry_mpi_release(0);
+ $112 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($vararg_buffer22 | 0, $115 | 0, 4);
+ __gcry_log_debug(41328, $vararg_buffer22);
+ STACKTOP = sp;
+ return $$054 | 0;
+}
+
+function _pop_arg_238($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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+      $arglist_next = $9 + 4 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next | 0, 4);
+      SAFE_HEAP_STORE($0 | 0, $10 | 0, 4);
+      break L1;
+      break;
+     }
+    case 10:
+     {
+      $arglist_current2 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+      $arglist_next3 = $16 + 4 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next3 | 0, 4);
+      $18 = ($17 | 0) < 0;
+      $19 = $18 << 31 >> 31;
+      $20 = $0;
+      $21 = $20;
+      SAFE_HEAP_STORE($21 | 0, $17 | 0, 4);
+      $22 = $20 + 4 | 0;
+      $23 = $22;
+      SAFE_HEAP_STORE($23 | 0, $19 | 0, 4);
+      break L1;
+      break;
+     }
+    case 11:
+     {
+      $arglist_current5 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+      $arglist_next6 = $29 + 4 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next6 | 0, 4);
+      $31 = $0;
+      $32 = $31;
+      SAFE_HEAP_STORE($32 | 0, $30 | 0, 4);
+      $33 = $31 + 4 | 0;
+      $34 = $33;
+      SAFE_HEAP_STORE($34 | 0, 0 | 0, 4);
+      break L1;
+      break;
+     }
+    case 12:
+     {
+      $arglist_current8 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+      $44 = $41 + 4 | 0;
+      $45 = $44;
+      $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+      $arglist_next9 = $40 + 8 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next9 | 0, 4);
+      $47 = $0;
+      $48 = $47;
+      SAFE_HEAP_STORE($48 | 0, $43 | 0, 4);
+      $49 = $47 + 4 | 0;
+      $50 = $49;
+      SAFE_HEAP_STORE($50 | 0, $46 | 0, 4);
+      break L1;
+      break;
+     }
+    case 13:
+     {
+      $arglist_current11 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+      $arglist_next12 = $56 + 4 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next12 | 0, 4);
+      $58 = $57 & 65535;
+      $59 = $58 << 16 >> 16;
+      $60 = ($59 | 0) < 0;
+      $61 = $60 << 31 >> 31;
+      $62 = $0;
+      $63 = $62;
+      SAFE_HEAP_STORE($63 | 0, $59 | 0, 4);
+      $64 = $62 + 4 | 0;
+      $65 = $64;
+      SAFE_HEAP_STORE($65 | 0, $61 | 0, 4);
+      break L1;
+      break;
+     }
+    case 14:
+     {
+      $arglist_current14 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+      $arglist_next15 = $71 + 4 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next15 | 0, 4);
+      $$mask31 = $72 & 65535;
+      $73 = $0;
+      $74 = $73;
+      SAFE_HEAP_STORE($74 | 0, $$mask31 | 0, 4);
+      $75 = $73 + 4 | 0;
+      $76 = $75;
+      SAFE_HEAP_STORE($76 | 0, 0 | 0, 4);
+      break L1;
+      break;
+     }
+    case 15:
+     {
+      $arglist_current17 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+      $arglist_next18 = $82 + 4 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next18 | 0, 4);
+      $84 = $83 & 255;
+      $85 = $84 << 24 >> 24;
+      $86 = ($85 | 0) < 0;
+      $87 = $86 << 31 >> 31;
+      $88 = $0;
+      $89 = $88;
+      SAFE_HEAP_STORE($89 | 0, $85 | 0, 4);
+      $90 = $88 + 4 | 0;
+      $91 = $90;
+      SAFE_HEAP_STORE($91 | 0, $87 | 0, 4);
+      break L1;
+      break;
+     }
+    case 16:
+     {
+      $arglist_current20 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+      $arglist_next21 = $97 + 4 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next21 | 0, 4);
+      $$mask = $98 & 255;
+      $99 = $0;
+      $100 = $99;
+      SAFE_HEAP_STORE($100 | 0, $$mask | 0, 4);
+      $101 = $99 + 4 | 0;
+      $102 = $101;
+      SAFE_HEAP_STORE($102 | 0, 0 | 0, 4);
+      break L1;
+      break;
+     }
+    case 17:
+     {
+      $arglist_current23 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = +(+SAFE_HEAP_LOAD_D($108 | 0, 8));
+      $arglist_next24 = $108 + 8 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next24 | 0, 4);
+      SAFE_HEAP_STORE_D($0 | 0, +$109, 8);
+      break L1;
+      break;
+     }
+    case 18:
+     {
+      $arglist_current26 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = +(+SAFE_HEAP_LOAD_D($115 | 0, 8));
+      $arglist_next27 = $115 + 8 | 0;
+      SAFE_HEAP_STORE($2 | 0, $arglist_next27 | 0, 4);
+      SAFE_HEAP_STORE_D($0 | 0, +$116, 8);
+      break L1;
+      break;
+     }
+    default:
+     {
+      break L1;
+     }
+    }
+   } while (0);
+  }
+ } while (0);
+ return;
+}
+
+function __gcry_mpi_tdiv_qr($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$0218246 = 0, $$0219 = 0, $$0220 = 0, $$0221 = 0, $$0222 = 0, $$0225248 
= 0, $$0226 = 0, $$0227241 = 0, $$0228 = 0, $$0244 = 0, $$1 = 0, $$1224 = 0, 
$$1229 = 0, $$2 = 0, $$2230 = 0, $$3 = 0, $$3231242 = 0, $$neg235 = 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, $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, $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, $exitcond = 0, $exitcond251 = 0, $exitcond252 = 0, $exitcond253 = 0, 
$or$cond = 0, $or$cond232 = 0, $or$cond233 = 0, $or$cond250 = 0, label = 0, sp 
= 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $4 = sp + 20 | 0;
+ $5 = sp;
+ $6 = $2 + 4 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = $3 + 4 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = $2 + 8 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $3 + 8 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $20 = $1 + 4 | 0;
+   SAFE_HEAP_STORE($20 | 0, $19 | 0, 4);
+   $21 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+   $22 = $1 + 8 | 0;
+   SAFE_HEAP_STORE($22 | 0, $21 | 0, 4);
+   $23 = ($7 | 0) > 0;
+   if ($23) {
+    $24 = $2 + 16 | 0;
+    $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+    $26 = $1 + 16 | 0;
+    $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+    $$0227241 = 0;
+    while (1) {
+     $28 = $25 + ($$0227241 << 2) | 0;
+     $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+     $30 = $27 + ($$0227241 << 2) | 0;
+     SAFE_HEAP_STORE($30 | 0, $29 | 0, 4);
+     $31 = $$0227241 + 1 | 0;
+     $exitcond = ($31 | 0) == ($7 | 0);
+     if ($exitcond) {
+      break;
+     } else {
+      $$0227241 = $31;
+     }
+    }
+   }
+  }
+  $32 = ($0 | 0) == (0 | 0);
+  if ($32) {
+   STACKTOP = sp;
+   return;
+  }
+  $33 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($33 | 0, 0 | 0, 4);
+  $34 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($34 | 0, 0 | 0, 4);
+  STACKTOP = sp;
+  return;
+ }
+ $35 = ($0 | 0) != (0 | 0);
+ if ($35) {
+  __gcry_mpi_resize($0, $16);
+ }
+ $36 = $2 + 16 | 0;
+ $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+ $38 = $3 + 16 | 0;
+ $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+ $40 = $1 + 16 | 0;
+ $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+ $42 = ($9 | 0) == 1;
+ if ($42) {
+  if ($35) {
+   $43 = $0 + 16 | 0;
+   $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+   $45 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+   $46 = __gcry_mpih_divmod_1($44, $37, $7, $45) | 0;
+   $47 = $16 + -1 | 0;
+   $48 = $44 + ($47 << 2) | 0;
+   $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+   $50 = ($49 | 0) == 0;
+   $51 = $50 & 1;
+   $52 = $16 - $51 | 0;
+   $53 = $0 + 4 | 0;
+   SAFE_HEAP_STORE($53 | 0, $52 | 0, 4);
+   $54 = $0 + 8 | 0;
+   SAFE_HEAP_STORE($54 | 0, $14 | 0, 4);
+   $$0226 = $46;
+  } else {
+   $55 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+   $56 = __gcry_mpih_mod_1($37, $7, $55) | 0;
+   $$0226 = $56;
+  }
+  SAFE_HEAP_STORE($41 | 0, $$0226 | 0, 4);
+  $57 = ($$0226 | 0) != 0;
+  $58 = $57 & 1;
+  $59 = $1 + 4 | 0;
+  SAFE_HEAP_STORE($59 | 0, $58 | 0, 4);
+  $60 = $1 + 8 | 0;
+  SAFE_HEAP_STORE($60 | 0, $11 | 0, 4);
+  STACKTOP = sp;
+  return;
+ }
+ if ($35) {
+  $61 = $0 + 16 | 0;
+  $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+  $63 = ($62 | 0) == ($37 | 0);
+  if ($63) {
+   SAFE_HEAP_STORE($5 | 0, $7 | 0, 4);
+   $64 = $0 + 12 | 0;
+   $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+   $66 = $65 & 1;
+   $67 = __gcry_mpi_alloc_limb_space($7, $66) | 0;
+   SAFE_HEAP_STORE($4 | 0, $67 | 0, 4);
+   $68 = ($7 | 0) > 0;
+   if ($68) {
+    $$0225248 = 0;
+    while (1) {
+     $69 = $37 + ($$0225248 << 2) | 0;
+     $70 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+     $71 = $67 + ($$0225248 << 2) | 0;
+     SAFE_HEAP_STORE($71 | 0, $70 | 0, 4);
+     $72 = $$0225248 + 1 | 0;
+     $exitcond253 = ($72 | 0) == ($7 | 0);
+     if ($exitcond253) {
+      $$0219 = $67;
+      $$0221 = $37;
+      $$0228 = 1;
+      break;
+     } else {
+      $$0225248 = $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 = SAFE_HEAP_LOAD($75 | 0, 4, 0) | 0 | 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 = 45555 + $83 | 0;
+ $85 = SAFE_HEAP_LOAD($84 >> 0 | 0, 1, 0) | 0 | 0;
+ $86 = $85 & 255;
+ $$neg235 = 32 - $86 | 0;
+ $87 = $$neg235 - $82 | 0;
+ $88 = ($87 | 0) != 0;
+ if ($88) {
+  $89 = $5 + ($$0228 << 2) | 0;
+  SAFE_HEAP_STORE($89 | 0, $9 | 0, 4);
+  $90 = ($3 | 0) == (0 | 0);
+  if ($90) {
+   $96 = 0;
+  } else {
+   $91 = $3 + 12 | 0;
+   $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+   $93 = $92 & 1;
+   $94 = ($93 | 0) != 0;
+   $96 = $94;
+  }
+  $95 = $96 & 1;
+  $97 = __gcry_mpi_alloc_limb_space($9, $95) | 0;
+  $98 = $$0228 + 1 | 0;
+  $99 = $4 + ($$0228 << 2) | 0;
+  SAFE_HEAP_STORE($99 | 0, $97 | 0, 4);
+  __gcry_mpih_lshift($97, $39, $9, $87) | 0;
+  $100 = __gcry_mpih_lshift($41, $$0219, $7, $87) | 0;
+  $101 = ($100 | 0) == 0;
+  if ($101) {
+   $$1 = $97;
+   $$1224 = $7;
+   $$2230 = $98;
+  } else {
+   $102 = $41 + ($7 << 2) | 0;
+   SAFE_HEAP_STORE($102 | 0, $100 | 0, 4);
+   $$1 = $97;
+   $$1224 = $15;
+   $$2230 = $98;
+  }
+ } else {
+  $103 = ($39 | 0) == ($41 | 0);
+  $104 = ($39 | 0) == ($$0221 | 0);
+  $or$cond232 = $35 & $104;
+  $or$cond233 = $103 | $or$cond232;
+  if ($or$cond233) {
+   $105 = $5 + ($$0228 << 2) | 0;
+   SAFE_HEAP_STORE($105 | 0, $9 | 0, 4);
+   $106 = ($3 | 0) == (0 | 0);
+   if ($106) {
+    $112 = 0;
+   } else {
+    $107 = $3 + 12 | 0;
+    $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+    $109 = $108 & 1;
+    $110 = ($109 | 0) != 0;
+    $112 = $110;
+   }
+   $111 = $112 & 1;
+   $113 = __gcry_mpi_alloc_limb_space($9, $111) | 0;
+   $114 = $$0228 + 1 | 0;
+   $115 = $4 + ($$0228 << 2) | 0;
+   SAFE_HEAP_STORE($115 | 0, $113 | 0, 4);
+   $116 = ($9 | 0) > 0;
+   if ($116) {
+    $$0218246 = 0;
+    while (1) {
+     $117 = $39 + ($$0218246 << 2) | 0;
+     $118 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+     $119 = $113 + ($$0218246 << 2) | 0;
+     SAFE_HEAP_STORE($119 | 0, $118 | 0, 4);
+     $120 = $$0218246 + 1 | 0;
+     $exitcond252 = ($120 | 0) == ($9 | 0);
+     if ($exitcond252) {
+      $$0220 = $113;
+      $$1229 = $114;
+      break;
+     } else {
+      $$0218246 = $120;
+     }
+    }
+   } else {
+    $$0220 = $113;
+    $$1229 = $114;
+   }
+  } else {
+   $$0220 = $39;
+   $$1229 = $$0228;
+  }
+  $121 = ($41 | 0) != ($$0219 | 0);
+  $122 = ($7 | 0) > 0;
+  $or$cond250 = $121 & $122;
+  if ($or$cond250) {
+   $$0244 = 0;
+   while (1) {
+    $123 = $$0219 + ($$0244 << 2) | 0;
+    $124 = SAFE_HEAP_LOAD($123 | 0, 4, 0) | 0 | 0;
+    $125 = $41 + ($$0244 << 2) | 0;
+    SAFE_HEAP_STORE($125 | 0, $124 | 0, 4);
+    $126 = $$0244 + 1 | 0;
+    $exitcond251 = ($126 | 0) == ($7 | 0);
+    if ($exitcond251) {
+     $$1 = $$0220;
+     $$1224 = $7;
+     $$2230 = $$1229;
+     break;
+    } else {
+     $$0244 = $126;
+    }
+   }
+  } else {
+   $$1 = $$0220;
+   $$1224 = $7;
+   $$2230 = $$1229;
+  }
+ }
+ $127 = __gcry_mpih_divrem($$0221, 0, $41, $$1224, $$1, $9) | 0;
+ if ($35) {
+  $128 = $$1224 - $9 | 0;
+  $129 = ($127 | 0) == 0;
+  if ($129) {
+   $$0222 = $128;
+  } else {
+   $130 = $128 + 1 | 0;
+   $131 = $$0221 + ($128 << 2) | 0;
+   SAFE_HEAP_STORE($131 | 0, $127 | 0, 4);
+   $$0222 = $130;
+  }
+  $132 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($132 | 0, $$0222 | 0, 4);
+  $133 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($133 | 0, $14 | 0, 4);
+  $$2 = $9;
+ } else {
+  $$2 = $9;
+ }
+ while (1) {
+  $134 = ($$2 | 0) > 0;
+  if (!$134) {
+   break;
+  }
+  $135 = $$2 + -1 | 0;
+  $136 = $41 + ($135 << 2) | 0;
+  $137 = SAFE_HEAP_LOAD($136 | 0, 4, 0) | 0 | 0;
+  $138 = ($137 | 0) == 0;
+  if ($138) {
+   $$2 = $135;
+  } else {
+   break;
+  }
+ }
+ $139 = ($$2 | 0) != 0;
+ $or$cond = $88 & $139;
+ if ($or$cond) {
+  __gcry_mpih_rshift($41, $41, $$2, $87) | 0;
+  $140 = $$2 + -1 | 0;
+  $141 = $41 + ($140 << 2) | 0;
+  $142 = SAFE_HEAP_LOAD($141 | 0, 4, 0) | 0 | 0;
+  $143 = ($142 | 0) == 0;
+  $144 = $143 & 1;
+  $145 = $$2 - $144 | 0;
+  $$3 = $145;
+ } else {
+  $$3 = $$2;
+ }
+ $146 = $1 + 4 | 0;
+ SAFE_HEAP_STORE($146 | 0, $$3 | 0, 4);
+ $147 = $1 + 8 | 0;
+ SAFE_HEAP_STORE($147 | 0, $11 | 0, 4);
+ $148 = ($$2230 | 0) == 0;
+ if ($148) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $$3231242 = $$2230;
+ }
+ while (1) {
+  $149 = $$3231242 + -1 | 0;
+  $150 = $4 + ($149 << 2) | 0;
+  $151 = SAFE_HEAP_LOAD($150 | 0, 4, 0) | 0 | 0;
+  $152 = $5 + ($149 << 2) | 0;
+  $153 = SAFE_HEAP_LOAD($152 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free_limb_space($151, $153);
+  $154 = ($149 | 0) == 0;
+  if ($154) {
+   break;
+  } else {
+   $$3231242 = $149;
+  }
+ }
+ STACKTOP = sp;
+ return;
+}
+
+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, $$0$ph = 0, $$0162$lcssa = 0, $$0162193 = 0, 
$$0163$lcssa = 0, $$0163192 = 0, $$0170216 = 0, $$0171$lcssa = 0, $$0171202 = 
0, $$0175$lcssa = 0, $$0175201 = 0, $$0179215 = 0, $$1 = 0, $$1164 = 0, $$1172 
= 0, $$1176 = 0, $$1180$lcssa = 0, $$1180207 = 0, $$3$ph = 0;
+ var $$3166$ph = 0, $$3166190 = 0, $$3174$ph = 0, $$3174198 = 0, $$3178$ph = 
0, $$3178197 = 0, $$3191 = 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;
+ 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, $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 $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, $exitcond = 0, $scevgep = 0, 
$scevgep227 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $5 = sp;
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ $6 = $2 + 7 | 0;
+ $7 = $6 >>> 3;
+ $8 = __gcry_md_get_algo_dlen($3) | 0;
+ $9 = ($8 | 0) == 0;
+ if ($9) {
+  __gcry_assert_failed(38993, 38688, 926, 39036);
+ }
+ $10 = $4 + 8 | 0;
+ $11 = $10 + $8 | 0;
+ $12 = $7 - $8 | 0;
+ $13 = $12 + -1 | 0;
+ $14 = $11 >>> 0 < $13 >>> 0;
+ $$ = $14 ? $13 : $11;
+ $15 = $$ + $8 | 0;
+ $16 = __gcry_malloc($15) | 0;
+ $17 = ($16 | 0) != (0 | 0);
+ if ($17) {
+  $19 = $16 + $15 | 0;
+  $20 = 0 - $8 | 0;
+  $21 = $19 + $20 | 0;
+  $22 = __gcry_mpi_to_octet_string(0, $21, $0, $8) | 0;
+  $23 = ($22 | 0) == 0;
+  if ($23) {
+   $24 = __gcry_mpi_to_octet_string($5, 0, $1, $7) | 0;
+   $25 = ($24 | 0) == 0;
+   if ($25) {
+    $26 = $4 + 2 | 0;
+    $27 = $26 + $8 | 0;
+    $28 = $7 >>> 0 < $27 >>> 0;
+    if ($28) {
+     $$0$ph = 66;
+     label = 19;
+    } else {
+     $29 = $7 + -1 | 0;
+     $30 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $31 = $30 + $29 | 0;
+     $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+     $33 = $32 << 24 >> 24 == -68;
+     if ($33) {
+      $34 = $30 + $7 | 0;
+      $35 = $34 + -1 | 0;
+      $36 = $35 + $20 | 0;
+      $37 = SAFE_HEAP_LOAD($30 >> 0 | 0, 1, 0) | 0 | 0;
+      $38 = $37 & 255;
+      $39 = $7 << 3;
+      $40 = $39 - $2 | 0;
+      $41 = 255 >>> $40;
+      $42 = $41 ^ -1;
+      $43 = $38 & $42;
+      $44 = ($43 | 0) == 0;
+      if ($44) {
+       _mgf1($16, $13, $36, $8, $3) | 0;
+       $45 = ($13 | 0) == 0;
+       if (!$45) {
+        $$0170216 = $16;
+        $$0179215 = 0;
+        while (1) {
+         $46 = SAFE_HEAP_LOAD($$0170216 >> 0 | 0, 1, 0) | 0 | 0;
+         $47 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+         $48 = $47 + $$0179215 | 0;
+         $49 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 0 | 0;
+         $50 = $49 ^ $46;
+         SAFE_HEAP_STORE($48 >> 0 | 0, $50 | 0, 1);
+         $51 = $$0179215 + 1 | 0;
+         $52 = $$0170216 + 1 | 0;
+         $exitcond = ($51 | 0) == ($13 | 0);
+         if ($exitcond) {
+          break;
+         } else {
+          $$0170216 = $52;
+          $$0179215 = $51;
+         }
+        }
+       }
+       $53 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+       $54 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+       $55 = $54 & 255;
+       $56 = $55 & $41;
+       $57 = $56 & 255;
+       SAFE_HEAP_STORE($53 >> 0 | 0, $57 | 0, 1);
+       $58 = $12 - $4 | 0;
+       $59 = $58 + -2 | 0;
+       $60 = ($59 | 0) == 0;
+       L15 : do {
+        if ($60) {
+         $$1180$lcssa = 0;
+        } else {
+         $61 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+         $$1180207 = 0;
+         while (1) {
+          $62 = $61 + $$1180207 | 0;
+          $63 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+          $64 = $63 << 24 >> 24 == 0;
+          if (!$64) {
+           $$1180$lcssa = $$1180207;
+           break L15;
+          }
+          $65 = $$1180207 + 1 | 0;
+          $66 = $65 >>> 0 < $59 >>> 0;
+          if ($66) {
+           $$1180207 = $65;
+          } else {
+           $$1180$lcssa = $65;
+           break;
+          }
+         }
+        }
+       } while (0);
+       $67 = ($$1180$lcssa | 0) == ($59 | 0);
+       if ($67) {
+        $68 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+        $69 = $68 + $59 | 0;
+        $70 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+        $71 = $70 << 24 >> 24 == 1;
+        if ($71) {
+         $72 = $58 + -1 | 0;
+         $73 = $68 + $72 | 0;
+         $74 = $16;
+         $75 = $74;
+         SAFE_HEAP_STORE($75 >> 0 | 0, 0 & 255 | 0, 1);
+         SAFE_HEAP_STORE($75 + 1 >> 0 | 0, 0 >> 8 & 255 | 0, 1);
+         SAFE_HEAP_STORE($75 + 2 >> 0 | 0, 0 >> 16 & 255 | 0, 1);
+         SAFE_HEAP_STORE($75 + 3 >> 0 | 0, 0 >> 24 | 0, 1);
+         $76 = $74 + 4 | 0;
+         $77 = $76;
+         SAFE_HEAP_STORE($77 >> 0 | 0, 0 & 255 | 0, 1);
+         SAFE_HEAP_STORE($77 + 1 >> 0 | 0, 0 >> 8 & 255 | 0, 1);
+         SAFE_HEAP_STORE($77 + 2 >> 0 | 0, 0 >> 16 & 255 | 0, 1);
+         SAFE_HEAP_STORE($77 + 3 >> 0 | 0, 0 >> 24 | 0, 1);
+         $78 = $16 + 8 | 0;
+         _memcpy($78 | 0, $21 | 0, $8 | 0) | 0;
+         $79 = $78 + $8 | 0;
+         _memcpy($79 | 0, $73 | 0, $4 | 0) | 0;
+         __gcry_md_hash_buffer($3, $16, $16, $11);
+         $80 = _memcmp($36, $16, $8) | 0;
+         $81 = ($80 | 0) != 0;
+         $82 = $81 ? 8 : 0;
+         $$0$ph = $82;
+         label = 19;
+        } else {
+         $$0 = 8;
+         $83 = $68;
+        }
+       } else {
+        $$0$ph = 8;
+        label = 19;
+       }
+      } else {
+       $$0$ph = 8;
+       label = 19;
+      }
+     } else {
+      $$0 = 8;
+      $83 = $30;
+     }
+    }
+   } else {
+    $$0$ph = $24;
+    label = 19;
+   }
+  } else {
+   $$0$ph = $22;
+   label = 19;
+  }
+ } else {
+  $18 = _gpg_err_code_from_syserror() | 0;
+  $$0$ph = $18;
+  label = 19;
+ }
+ if ((label | 0) == 19) {
+  $$pr = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  $$0 = $$0$ph;
+  $83 = $$pr;
+ }
+ $84 = ($83 | 0) == (0 | 0);
+ if (!$84) {
+  $85 = $83;
+  $86 = $85 & 7;
+  $87 = ($86 | 0) != 0;
+  $88 = ($7 | 0) != 0;
+  $89 = $88 & $87;
+  if ($89) {
+   $$0171202 = $7;
+   $$0175201 = $83;
+   while (1) {
+    SAFE_HEAP_STORE($$0175201 >> 0 | 0, 0 | 0, 1);
+    $90 = $$0175201 + 1 | 0;
+    $91 = $$0171202 + -1 | 0;
+    $92 = $90;
+    $93 = $92 & 7;
+    $94 = ($93 | 0) != 0;
+    $95 = ($91 | 0) != 0;
+    $96 = $95 & $94;
+    if ($96) {
+     $$0171202 = $91;
+     $$0175201 = $90;
+    } else {
+     $$0171$lcssa = $91;
+     $$0175$lcssa = $90;
+     break;
+    }
+   }
+  } else {
+   $$0171$lcssa = $7;
+   $$0175$lcssa = $83;
+  }
+  $97 = $$0171$lcssa >>> 0 < 8;
+  if ($97) {
+   $$3174$ph = $$0171$lcssa;
+   $$3178$ph = $$0175$lcssa;
+  } else {
+   $98 = $$0171$lcssa + -8 | 0;
+   $99 = $98 & -8;
+   $100 = $99 + 8 | 0;
+   $$1172 = $$0171$lcssa;
+   $$1176 = $$0175$lcssa;
+   while (1) {
+    $101 = $$1176;
+    $102 = $101;
+    SAFE_HEAP_STORE($102 | 0, 0 | 0, 4);
+    $103 = $101 + 4 | 0;
+    $104 = $103;
+    SAFE_HEAP_STORE($104 | 0, 0 | 0, 4);
+    $105 = $$1172 + -8 | 0;
+    $106 = $$1176 + 8 | 0;
+    $107 = $105 >>> 0 > 7;
+    if ($107) {
+     $$1172 = $105;
+     $$1176 = $106;
+    } else {
+     break;
+    }
+   }
+   $108 = $98 - $99 | 0;
+   $scevgep227 = $$0175$lcssa + $100 | 0;
+   $$3174$ph = $108;
+   $$3178$ph = $scevgep227;
+  }
+  $109 = ($$3174$ph | 0) == 0;
+  if (!$109) {
+   $$3174198 = $$3174$ph;
+   $$3178197 = $$3178$ph;
+   while (1) {
+    SAFE_HEAP_STORE($$3178197 >> 0 | 0, 0 | 0, 1);
+    $110 = $$3178197 + 1 | 0;
+    $111 = $$3174198 + -1 | 0;
+    $112 = ($111 | 0) == 0;
+    if ($112) {
+     break;
+    } else {
+     $$3174198 = $111;
+     $$3178197 = $110;
+    }
+   }
+  }
+  $113 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  __gcry_free($113);
+ }
+ if (!$17) {
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $114 = $16;
+ $115 = $114 & 7;
+ $116 = ($115 | 0) != 0;
+ $117 = ($15 | 0) != 0;
+ $118 = $117 & $116;
+ if ($118) {
+  $$0162193 = $15;
+  $$0163192 = $16;
+  while (1) {
+   SAFE_HEAP_STORE($$0163192 >> 0 | 0, 0 | 0, 1);
+   $119 = $$0163192 + 1 | 0;
+   $120 = $$0162193 + -1 | 0;
+   $121 = $119;
+   $122 = $121 & 7;
+   $123 = ($122 | 0) != 0;
+   $124 = ($120 | 0) != 0;
+   $125 = $124 & $123;
+   if ($125) {
+    $$0162193 = $120;
+    $$0163192 = $119;
+   } else {
+    $$0162$lcssa = $120;
+    $$0163$lcssa = $119;
+    break;
+   }
+  }
+ } else {
+  $$0162$lcssa = $15;
+  $$0163$lcssa = $16;
+ }
+ $126 = $$0162$lcssa >>> 0 < 8;
+ if ($126) {
+  $$3$ph = $$0162$lcssa;
+  $$3166$ph = $$0163$lcssa;
+ } else {
+  $127 = $$0162$lcssa + -8 | 0;
+  $128 = $127 & -8;
+  $129 = $128 + 8 | 0;
+  $$1 = $$0162$lcssa;
+  $$1164 = $$0163$lcssa;
+  while (1) {
+   $130 = $$1164;
+   $131 = $130;
+   SAFE_HEAP_STORE($131 | 0, 0 | 0, 4);
+   $132 = $130 + 4 | 0;
+   $133 = $132;
+   SAFE_HEAP_STORE($133 | 0, 0 | 0, 4);
+   $134 = $$1 + -8 | 0;
+   $135 = $$1164 + 8 | 0;
+   $136 = $134 >>> 0 > 7;
+   if ($136) {
+    $$1 = $134;
+    $$1164 = $135;
+   } else {
+    break;
+   }
+  }
+  $137 = $127 - $128 | 0;
+  $scevgep = $$0163$lcssa + $129 | 0;
+  $$3$ph = $137;
+  $$3166$ph = $scevgep;
+ }
+ $138 = ($$3$ph | 0) == 0;
+ if (!$138) {
+  $$3166190 = $$3166$ph;
+  $$3191 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3166190 >> 0 | 0, 0 | 0, 1);
+   $139 = $$3166190 + 1 | 0;
+   $140 = $$3191 + -1 | 0;
+   $141 = ($140 | 0) == 0;
+   if ($141) {
+    break;
+   } else {
+    $$3166190 = $139;
+    $$3191 = $140;
+   }
+  }
+ }
+ __gcry_free($16);
+ STACKTOP = sp;
+ 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, $$0$lcssa$i = 0, $$0121155 = 0, $$034$lcssa$i = 0, 
$$03446$i = 0, $$03446$i127$us = 0, $$035$lcssa$i = 0, $$03545$i = 0, 
$$03545$i128$us = 0, $$036$lcssa$i = 0, $$03644$i = 0, $$03644$i129$us = 0, 
$$037$ph$i = 0, $$037$ph$i142$us = 0, $$03742$i = 0, $$03742$i146 = 0, 
$$03742$i146$us = 0, $$038$ph$i = 0, $$038$ph$i141$us = 0;
+ var $$03841$i = 0, $$03841$i147 = 0, $$03841$i147$us = 0, $$039$ph$i = 0, 
$$039$ph$i140$us = 0, $$03940$i = 0, $$03940$i148 = 0, $$03940$i148$us = 0, 
$$047$i = 0, $$047$i126$us = 0, $$1$ph$i = 0, $$1$ph$i143$us = 0, $$1152 = 0, 
$$143$i = 0, $$143$i145 = 0, $$143$i145$us = 0, $$2151 = 0, $$2151$us = 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, $12 = 0, $13 = 0;
+ var $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, $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, $50 = 
0, $51 = 0, $52 = 0, $53 = 0;
+ var $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, $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, $exitcond = 0, $exitcond160 = 0, $scevgep$i = 0, $scevgep$i122$us = 0, 
$scevgep58$i = 0, $scevgep58$i123$us = 0, $scevgep60$i = 0, $scevgep60$i124 = 
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 = 46734;
+  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[(SAFE_FT_MASK($1 | 0, 127 | 0) | 0) & 127]($20, 32, 
16) | 0;
+ $27 = ($26 | 0) == 0;
+ if (!$27) {
+  __gcry_free($15);
+  $$0 = 46720;
+  return $$0 | 0;
+ }
+ _memset($21 | 0, -45, $5 | 0) | 0;
+ _memset($22 | 0, -45, $5 | 0) | 0;
+ $28 = ($5 | 0) > 0;
+ if ($28) {
+  $$0121155 = 0;
+  while (1) {
+   $29 = $$0121155 & 255;
+   $30 = $23 + $$0121155 | 0;
+   SAFE_HEAP_STORE($30 >> 0 | 0, $29 | 0, 1);
+   $31 = $$0121155 + 1 | 0;
+   $exitcond160 = ($31 | 0) == ($5 | 0);
+   if ($exitcond160) {
+    break;
+   } else {
+    $$0121155 = $31;
+   }
+  }
+ }
+ FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, $25, $21) 
| 0;
+ $32 = $23;
+ $33 = $21;
+ $34 = $25;
+ $35 = $32 | $33;
+ $36 = $35 | $34;
+ $37 = $36 & 3;
+ $38 = ($37 | 0) == 0;
+ if ($38) {
+  $39 = $5 >>> 0 > 3;
+  if ($39) {
+   $40 = $5 + -4 | 0;
+   $41 = $40 & -4;
+   $42 = $41 + 4 | 0;
+   $scevgep58$i = $25 + $42 | 0;
+   $$03446$i = $23;
+   $$03545$i = $25;
+   $$03644$i = $21;
+   $$047$i = $5;
+   while (1) {
+    $43 = $$03446$i + 4 | 0;
+    $44 = SAFE_HEAP_LOAD($$03446$i | 0, 4, 0) | 0 | 0;
+    $45 = $$03545$i + 4 | 0;
+    $46 = SAFE_HEAP_LOAD($$03545$i | 0, 4, 0) | 0 | 0;
+    $47 = $46 ^ $44;
+    SAFE_HEAP_STORE($$03545$i | 0, $47 | 0, 4);
+    $48 = $$03644$i + 4 | 0;
+    SAFE_HEAP_STORE($$03644$i | 0, $47 | 0, 4);
+    $49 = $$047$i + -4 | 0;
+    $50 = $49 >>> 0 > 3;
+    if ($50) {
+     $$03446$i = $43;
+     $$03545$i = $45;
+     $$03644$i = $48;
+     $$047$i = $49;
+    } else {
+     break;
+    }
+   }
+   $scevgep$i = $23 + $42 | 0;
+   $scevgep60$i = $21 + $42 | 0;
+   $51 = $40 - $41 | 0;
+   $$0$lcssa$i = $51;
+   $$034$lcssa$i = $scevgep$i;
+   $$035$lcssa$i = $scevgep58$i;
+   $$036$lcssa$i = $scevgep60$i;
+  } else {
+   $$0$lcssa$i = $5;
+   $$034$lcssa$i = $23;
+   $$035$lcssa$i = $25;
+   $$036$lcssa$i = $21;
+  }
+  $$037$ph$i = $$034$lcssa$i;
+  $$038$ph$i = $$035$lcssa$i;
+  $$039$ph$i = $$036$lcssa$i;
+  $$1$ph$i = $$0$lcssa$i;
+ } else {
+  $$037$ph$i = $23;
+  $$038$ph$i = $25;
+  $$039$ph$i = $21;
+  $$1$ph$i = $5;
+ }
+ $52 = ($$1$ph$i | 0) == 0;
+ if (!$52) {
+  $$03742$i = $$037$ph$i;
+  $$03841$i = $$038$ph$i;
+  $$03940$i = $$039$ph$i;
+  $$143$i = $$1$ph$i;
+  while (1) {
+   $53 = $$03742$i + 1 | 0;
+   $54 = SAFE_HEAP_LOAD($$03742$i >> 0 | 0, 1, 0) | 0 | 0;
+   $55 = $$03841$i + 1 | 0;
+   $56 = SAFE_HEAP_LOAD($$03841$i >> 0 | 0, 1, 0) | 0 | 0;
+   $57 = $56 ^ $54;
+   SAFE_HEAP_STORE($$03841$i >> 0 | 0, $57 | 0, 1);
+   $58 = $$03940$i + 1 | 0;
+   SAFE_HEAP_STORE($$03940$i >> 0 | 0, $57 | 0, 1);
+   $59 = $$143$i + -1 | 0;
+   $60 = ($59 | 0) == 0;
+   if ($60) {
+    break;
+   } else {
+    $$03742$i = $53;
+    $$03841$i = $55;
+    $$03940$i = $58;
+    $$143$i = $59;
+   }
+  }
+ }
+ FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 127]($20, $22, 
$24, $25, 1);
+ $61 = _memcmp($24, $23, $5) | 0;
+ $62 = ($61 | 0) == 0;
+ if (!$62) {
+  __gcry_free($15);
+  $$0 = 46760;
+  return $$0 | 0;
+ }
+ $63 = _memcmp($22, $21, $5) | 0;
+ $64 = ($63 | 0) == 0;
+ if (!$64) {
+  __gcry_free($15);
+  $$0 = 46760;
+  return $$0 | 0;
+ }
+ _memset($21 | 0, -26, $5 | 0) | 0;
+ _memset($22 | 0, -26, $5 | 0) | 0;
+ $65 = ($10 | 0) > 0;
+ L33 : do {
+  if ($65) {
+   $$1152 = 0;
+   while (1) {
+    $99 = $$1152 & 255;
+    $100 = $23 + $$1152 | 0;
+    SAFE_HEAP_STORE($100 >> 0 | 0, $99 | 0, 1);
+    $101 = $$1152 + 1 | 0;
+    $exitcond = ($101 | 0) == ($10 | 0);
+    if ($exitcond) {
+     break;
+    } else {
+     $$1152 = $101;
+    }
+   }
+   if ($65) {
+    $66 = $5 >>> 0 > 3;
+    $67 = $5 + -4 | 0;
+    $68 = $67 & -4;
+    $69 = $68 + 4 | 0;
+    $scevgep60$i124 = $21 + $69 | 0;
+    $70 = $67 - $68 | 0;
+    if ($66) {
+     $$2151$us = 0;
+    } else {
+     $71 = ($5 | 0) == 0;
+     $$2151 = 0;
+     while (1) {
+      $102 = $25 + $$2151 | 0;
+      FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, 
$102, $21) | 0;
+      if (!$71) {
+       $103 = $23 + $$2151 | 0;
+       $$03742$i146 = $103;
+       $$03841$i147 = $102;
+       $$03940$i148 = $21;
+       $$143$i145 = $5;
+       while (1) {
+        $104 = $$03742$i146 + 1 | 0;
+        $105 = SAFE_HEAP_LOAD($$03742$i146 >> 0 | 0, 1, 0) | 0 | 0;
+        $106 = $$03841$i147 + 1 | 0;
+        $107 = SAFE_HEAP_LOAD($$03841$i147 >> 0 | 0, 1, 0) | 0 | 0;
+        $108 = $107 ^ $105;
+        SAFE_HEAP_STORE($$03841$i147 >> 0 | 0, $108 | 0, 1);
+        $109 = $$03940$i148 + 1 | 0;
+        SAFE_HEAP_STORE($$03940$i148 >> 0 | 0, $108 | 0, 1);
+        $110 = $$143$i145 + -1 | 0;
+        $111 = ($110 | 0) == 0;
+        if ($111) {
+         break;
+        } else {
+         $$03742$i146 = $104;
+         $$03841$i147 = $106;
+         $$03940$i148 = $109;
+         $$143$i145 = $110;
+        }
+       }
+      }
+      $112 = $$2151 + $5 | 0;
+      $113 = ($112 | 0) < ($10 | 0);
+      if ($113) {
+       $$2151 = $112;
+      } else {
+       break L33;
+      }
+     }
+    }
+    while (1) {
+     $72 = $25 + $$2151$us | 0;
+     FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, $72, 
$21) | 0;
+     $73 = $23 + $$2151$us | 0;
+     $74 = $73;
+     $75 = $72;
+     $76 = $75 | $33;
+     $77 = $76 | $74;
+     $78 = $77 & 3;
+     $79 = ($78 | 0) == 0;
+     if ($79) {
+      $scevgep$i122$us = $73 + $69 | 0;
+      $$03446$i127$us = $73;
+      $$03545$i128$us = $72;
+      $$03644$i129$us = $21;
+      $$047$i126$us = $5;
+      while (1) {
+       $80 = $$03446$i127$us + 4 | 0;
+       $81 = SAFE_HEAP_LOAD($$03446$i127$us | 0, 4, 0) | 0 | 0;
+       $82 = $$03545$i128$us + 4 | 0;
+       $83 = SAFE_HEAP_LOAD($$03545$i128$us | 0, 4, 0) | 0 | 0;
+       $84 = $83 ^ $81;
+       SAFE_HEAP_STORE($$03545$i128$us | 0, $84 | 0, 4);
+       $85 = $$03644$i129$us + 4 | 0;
+       SAFE_HEAP_STORE($$03644$i129$us | 0, $84 | 0, 4);
+       $86 = $$047$i126$us + -4 | 0;
+       $87 = $86 >>> 0 > 3;
+       if ($87) {
+        $$03446$i127$us = $80;
+        $$03545$i128$us = $82;
+        $$03644$i129$us = $85;
+        $$047$i126$us = $86;
+       } else {
+        break;
+       }
+      }
+      $scevgep58$i123$us = $72 + $69 | 0;
+      $$037$ph$i142$us = $scevgep$i122$us;
+      $$038$ph$i141$us = $scevgep58$i123$us;
+      $$039$ph$i140$us = $scevgep60$i124;
+      $$1$ph$i143$us = $70;
+     } else {
+      $$037$ph$i142$us = $73;
+      $$038$ph$i141$us = $72;
+      $$039$ph$i140$us = $21;
+      $$1$ph$i143$us = $5;
+     }
+     $88 = ($$1$ph$i143$us | 0) == 0;
+     if (!$88) {
+      $$03742$i146$us = $$037$ph$i142$us;
+      $$03841$i147$us = $$038$ph$i141$us;
+      $$03940$i148$us = $$039$ph$i140$us;
+      $$143$i145$us = $$1$ph$i143$us;
+      while (1) {
+       $89 = $$03742$i146$us + 1 | 0;
+       $90 = SAFE_HEAP_LOAD($$03742$i146$us >> 0 | 0, 1, 0) | 0 | 0;
+       $91 = $$03841$i147$us + 1 | 0;
+       $92 = SAFE_HEAP_LOAD($$03841$i147$us >> 0 | 0, 1, 0) | 0 | 0;
+       $93 = $92 ^ $90;
+       SAFE_HEAP_STORE($$03841$i147$us >> 0 | 0, $93 | 0, 1);
+       $94 = $$03940$i148$us + 1 | 0;
+       SAFE_HEAP_STORE($$03940$i148$us >> 0 | 0, $93 | 0, 1);
+       $95 = $$143$i145$us + -1 | 0;
+       $96 = ($95 | 0) == 0;
+       if ($96) {
+        break;
+       } else {
+        $$03742$i146$us = $89;
+        $$03841$i147$us = $91;
+        $$03940$i148$us = $94;
+        $$143$i145$us = $95;
+       }
+      }
+     }
+     $97 = $$2151$us + $5 | 0;
+     $98 = ($97 | 0) < ($10 | 0);
+     if ($98) {
+      $$2151$us = $97;
+     } else {
+      break;
+     }
+    }
+   }
+  }
+ } while (0);
+ FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 127]($20, $22, 
$24, $25, $4);
+ $114 = _memcmp($24, $23, $10) | 0;
+ $115 = ($114 | 0) == 0;
+ if ($115) {
+  $116 = _memcmp($22, $21, $5) | 0;
+  $117 = ($116 | 0) == 0;
+  __gcry_free($15);
+  $$ = $117 ? 0 : 46760;
+  $$0 = $$;
+  return $$0 | 0;
+ } else {
+  __gcry_free($15);
+  $$0 = 46760;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+function __gcry_mpi_add($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$0 = 0, $$0$in = 0, $$0107148 = 0, $$0109 = 0, $$0110 = 0, 
$$0111 = 0, $$0113 = 0, $$0114 = 0, $$0115 = 0, $$0115$in = 0, $$016$i = 0, 
$$016$in$i = 0, $$025$i$i = 0, $$025$i$i123 = 0, $$026$i$i = 0, $$026$i$i122 = 
0, $$028$i$i = 0, $$028$i$i121 = 0, $$036$i$i = 0;
+ var $$036$i$i130 = 0, $$1 = 0, $$1$i$i = 0, $$1$i$i127 = 0, $$1$i133 = 0, 
$$1112 = 0, $$117 = 0, $$118 = 0, $$127$i$i = 0, $$127$i$i126 = 0, $$129$i$i = 
0, $$129$i$i125 = 0, $$2 = 0, $$3 = 0, $$pn = 0, $$pn116 = 0, $10 = 0, $100 = 
0, $101 = 0, $102 = 0;
+ var $103 = 0, $104 = 0, $105 = 0, $106 = 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, $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, $exitcond$i$i = 0, $exitcond$i$i131 = 0, $not$ = 0, 
$not$134 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $1 + 4 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 + 4 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = ($4 | 0) < ($6 | 0);
+ if ($7) {
+  $8 = $2 + 8 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = $1 + 8 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $12 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $17 = $2 + 8 | 0;
+  $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+  $19 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($$0$in | 0, 4, 0) | 0 | 0;
+ $$0115 = SAFE_HEAP_LOAD($$0115$in | 0, 4, 0) | 0 | 0;
+ $22 = $0 + 16 | 0;
+ $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $24 = ($$0113 | 0) == 0;
+ if ($24) {
+  $25 = ($$0114 | 0) > 0;
+  if ($25) {
+   $$0107148 = 0;
+  } else {
+   $$1 = $$0110;
+   $$3 = $$0114;
+   $105 = $0 + 4 | 0;
+   SAFE_HEAP_STORE($105 | 0, $$3 | 0, 4);
+   $106 = $0 + 8 | 0;
+   SAFE_HEAP_STORE($106 | 0, $$1 | 0, 4);
+   return;
+  }
+  while (1) {
+   $26 = $$0 + ($$0107148 << 2) | 0;
+   $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+   $28 = $23 + ($$0107148 << 2) | 0;
+   SAFE_HEAP_STORE($28 | 0, $27 | 0, 4);
+   $29 = $$0107148 + 1 | 0;
+   $exitcond = ($29 | 0) == ($$0114 | 0);
+   if ($exitcond) {
+    $$1 = $$0110;
+    $$3 = $$0114;
+    break;
+   } else {
+    $$0107148 = $29;
+   }
+  }
+  $105 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($105 | 0, $$3 | 0, 4);
+  $106 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($106 | 0, $$1 | 0, 4);
+  return;
+ }
+ $30 = ($$0110 | 0) == ($$0109 | 0);
+ if ($30) {
+  $79 = __gcry_mpih_add_n($23, $$0, $$0115, $$0113) | 0;
+  $80 = $$0114 - $$0113 | 0;
+  $81 = ($80 | 0) == 0;
+  L17 : do {
+   if ($81) {
+    $$1$i133 = $79;
+   } else {
+    $82 = $23 + ($$0113 << 2) | 0;
+    $83 = $$0 + ($$0113 << 2) | 0;
+    $84 = $83 + 4 | 0;
+    $85 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+    $86 = $85 + $79 | 0;
+    $87 = $82 + 4 | 0;
+    SAFE_HEAP_STORE($82 | 0, $86 | 0, 4);
+    $88 = $86 >>> 0 < $85 >>> 0;
+    if ($88) {
+     $$025$i$i123 = $80;
+     $$026$i$i122 = $84;
+     $$028$i$i121 = $87;
+     while (1) {
+      $89 = $$025$i$i123 + -1 | 0;
+      $90 = ($89 | 0) == 0;
+      if ($90) {
+       $$1$i133 = 1;
+       break L17;
+      }
+      $91 = $$026$i$i122 + 4 | 0;
+      $92 = SAFE_HEAP_LOAD($$026$i$i122 | 0, 4, 0) | 0 | 0;
+      $93 = $92 + 1 | 0;
+      $94 = $$028$i$i121 + 4 | 0;
+      SAFE_HEAP_STORE($$028$i$i121 | 0, $93 | 0, 4);
+      $95 = ($93 | 0) == 0;
+      if ($95) {
+       $$025$i$i123 = $89;
+       $$026$i$i122 = $91;
+       $$028$i$i121 = $94;
+      } else {
+       $$1$i$i127 = $89;
+       $$127$i$i126 = $91;
+       $$129$i$i125 = $94;
+       break;
+      }
+     }
+    } else {
+     $$1$i$i127 = $80;
+     $$127$i$i126 = $84;
+     $$129$i$i125 = $87;
+    }
+    $96 = ($$129$i$i125 | 0) == ($$127$i$i126 | 0);
+    if ($96) {
+     $$1$i133 = 0;
+    } else {
+     $97 = $$1$i$i127 + -1 | 0;
+     $98 = ($$1$i$i127 | 0) > 1;
+     if ($98) {
+      $$036$i$i130 = 0;
+      while (1) {
+       $99 = $$127$i$i126 + ($$036$i$i130 << 2) | 0;
+       $100 = SAFE_HEAP_LOAD($99 | 0, 4, 0) | 0 | 0;
+       $101 = $$129$i$i125 + ($$036$i$i130 << 2) | 0;
+       SAFE_HEAP_STORE($101 | 0, $100 | 0, 4);
+       $102 = $$036$i$i130 + 1 | 0;
+       $exitcond$i$i131 = ($102 | 0) == ($97 | 0);
+       if ($exitcond$i$i131) {
+        $$1$i133 = 0;
+        break;
+       } else {
+        $$036$i$i130 = $102;
+       }
+      }
+     } else {
+      $$1$i133 = 0;
+     }
+    }
+   }
+  } while (0);
+  $103 = $23 + ($$0114 << 2) | 0;
+  SAFE_HEAP_STORE($103 | 0, $$1$i133 | 0, 4);
+  $104 = $$1$i133 + $$0114 | 0;
+  $not$134 = ($$0110 | 0) != 0;
+  $$118 = $not$134 & 1;
+  $$1 = $$118;
+  $$3 = $104;
+  $105 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($105 | 0, $$3 | 0, 4);
+  $106 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($106 | 0, $$1 | 0, 4);
+  return;
+ }
+ $31 = ($$0114 | 0) == ($$0113 | 0);
+ if ($31) {
+  $$016$in$i = $$0114;
+ } else {
+  $32 = __gcry_mpih_sub_n($23, $$0, $$0115, $$0113) | 0;
+  $33 = $$0114 - $$0113 | 0;
+  $34 = ($33 | 0) == 0;
+  L32 : do {
+   if ($34) {
+    $$0111 = $$0114;
+   } else {
+    $35 = $23 + ($$0113 << 2) | 0;
+    $36 = $$0 + ($$0113 << 2) | 0;
+    $37 = $36 + 4 | 0;
+    $38 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+    $39 = $38 - $32 | 0;
+    $40 = $35 + 4 | 0;
+    SAFE_HEAP_STORE($35 | 0, $39 | 0, 4);
+    $41 = $39 >>> 0 > $38 >>> 0;
+    if ($41) {
+     $$025$i$i = $33;
+     $$026$i$i = $37;
+     $$028$i$i = $40;
+     while (1) {
+      $42 = $$025$i$i + -1 | 0;
+      $43 = ($42 | 0) == 0;
+      if ($43) {
+       $$0111 = $$0114;
+       break L32;
+      }
+      $44 = $$026$i$i + 4 | 0;
+      $45 = SAFE_HEAP_LOAD($$026$i$i | 0, 4, 0) | 0 | 0;
+      $46 = $45 + -1 | 0;
+      $47 = $$028$i$i + 4 | 0;
+      SAFE_HEAP_STORE($$028$i$i | 0, $46 | 0, 4);
+      $48 = ($45 | 0) == 0;
+      if ($48) {
+       $$025$i$i = $42;
+       $$026$i$i = $44;
+       $$028$i$i = $47;
+      } else {
+       $$1$i$i = $42;
+       $$127$i$i = $44;
+       $$129$i$i = $47;
+       break;
+      }
+     }
+    } else {
+     $$1$i$i = $33;
+     $$127$i$i = $37;
+     $$129$i$i = $40;
+    }
+    $49 = ($$129$i$i | 0) == ($$127$i$i | 0);
+    if ($49) {
+     $$0111 = $$0114;
+    } else {
+     $50 = $$1$i$i + -1 | 0;
+     $51 = ($$1$i$i | 0) > 1;
+     if ($51) {
+      $$036$i$i = 0;
+      while (1) {
+       $52 = $$127$i$i + ($$036$i$i << 2) | 0;
+       $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+       $54 = $$129$i$i + ($$036$i$i << 2) | 0;
+       SAFE_HEAP_STORE($54 | 0, $53 | 0, 4);
+       $55 = $$036$i$i + 1 | 0;
+       $exitcond$i$i = ($55 | 0) == ($50 | 0);
+       if ($exitcond$i$i) {
+        $$0111 = $$0114;
+        break;
+       } else {
+        $$036$i$i = $55;
+       }
+      }
+     } else {
+      $$0111 = $$0114;
+     }
+    }
+   }
+  } while (0);
+  while (1) {
+   $56 = ($$0111 | 0) > 0;
+   if (!$56) {
+    $$1 = $$0110;
+    $$3 = $$0111;
+    label = 39;
+    break;
+   }
+   $57 = $$0111 + -1 | 0;
+   $58 = $23 + ($57 << 2) | 0;
+   $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+   $60 = ($59 | 0) == 0;
+   if ($60) {
+    $$0111 = $57;
+   } else {
+    $$1 = $$0110;
+    $$3 = $$0111;
+    label = 39;
+    break;
+   }
+  }
+  if ((label | 0) == 39) {
+   $105 = $0 + 4 | 0;
+   SAFE_HEAP_STORE($105 | 0, $$3 | 0, 4);
+   $106 = $0 + 8 | 0;
+   SAFE_HEAP_STORE($106 | 0, $$1 | 0, 4);
+   return;
+  }
+ }
+ while (1) {
+  $$016$i = $$016$in$i + -1 | 0;
+  $61 = ($$016$in$i | 0) > 0;
+  if (!$61) {
+   break;
+  }
+  $62 = $$0 + ($$016$i << 2) | 0;
+  $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+  $64 = $$0115 + ($$016$i << 2) | 0;
+  $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+  $66 = ($63 | 0) == ($65 | 0);
+  if ($66) {
+   $$016$in$i = $$016$i;
+  } else {
+   label = 22;
+   break;
+  }
+ }
+ if ((label | 0) == 22) {
+  $67 = $63 >>> 0 > $65 >>> 0;
+  if (!$67) {
+   __gcry_mpih_sub_n($23, $$0115, $$0, $$0114) | 0;
+   $$1112 = $$0114;
+   while (1) {
+    $68 = ($$1112 | 0) > 0;
+    if (!$68) {
+     break;
+    }
+    $69 = $$1112 + -1 | 0;
+    $70 = $23 + ($69 << 2) | 0;
+    $71 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+    $72 = ($71 | 0) == 0;
+    if ($72) {
+     $$1112 = $69;
+    } else {
+     break;
+    }
+   }
+   $73 = ($$0110 | 0) == 0;
+   $$ = $73 & 1;
+   $$1 = $$;
+   $$3 = $$1112;
+   $105 = $0 + 4 | 0;
+   SAFE_HEAP_STORE($105 | 0, $$3 | 0, 4);
+   $106 = $0 + 8 | 0;
+   SAFE_HEAP_STORE($106 | 0, $$1 | 0, 4);
+   return;
+  }
+ }
+ __gcry_mpih_sub_n($23, $$0, $$0115, $$0114) | 0;
+ $$2 = $$0114;
+ while (1) {
+  $74 = ($$2 | 0) > 0;
+  if (!$74) {
+   break;
+  }
+  $75 = $$2 + -1 | 0;
+  $76 = $23 + ($75 << 2) | 0;
+  $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+  $78 = ($77 | 0) == 0;
+  if ($78) {
+   $$2 = $75;
+  } else {
+   break;
+  }
+ }
+ $not$ = ($$0110 | 0) != 0;
+ $$117 = $not$ & 1;
+ $$1 = $$117;
+ $$3 = $$2;
+ $105 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($105 | 0, $$3 | 0, 4);
+ $106 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($106 | 0, $$1 | 0, 4);
+ return;
+}
+
+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, $$0$lcssa$i = 0, $$0129163 = 0, $$034$lcssa$i = 0, 
$$03446$i = 0, $$03446$i135$us = 0, $$035$lcssa$i = 0, $$03545$i = 0, 
$$03545$i136$us = 0, $$036$lcssa$i = 0, $$03644$i = 0, $$03644$i137$us = 0, 
$$037$ph$i = 0, $$037$ph$i150$us = 0, $$03742$i = 0, $$03742$i154 = 0, 
$$03742$i154$us = 0, $$038$ph$i = 0, $$038$ph$i149$us = 0;
+ var $$03841$i = 0, $$03841$i155 = 0, $$03841$i155$us = 0, $$039$ph$i = 0, 
$$039$ph$i148$us = 0, $$03940$i = 0, $$03940$i156 = 0, $$03940$i156$us = 0, 
$$047$i = 0, $$047$i134$us = 0, $$1$ph$i = 0, $$1$ph$i151$us = 0, $$1160 = 0, 
$$143$i = 0, $$143$i153 = 0, $$143$i153$us = 0, $$2159 = 0, $$2159$us = 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, $12 = 0, $13 = 0;
+ var $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, $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, $50 = 
0, $51 = 0, $52 = 0, $53 = 0;
+ var $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, $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, $exitcond = 0, $exitcond168 = 0, $scevgep$i = 0, $scevgep$i130 = 0, 
$scevgep58$i = 0, $scevgep58$i131$us = 0, $scevgep60$i = 0, $scevgep60$i132$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 = 46734;
+  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[(SAFE_FT_MASK($1 | 0, 127 | 0) | 0) & 127]($20, 16, 
16) | 0;
+ $27 = ($26 | 0) == 0;
+ if (!$27) {
+  __gcry_free($15);
+  $$0 = 46720;
+  return $$0 | 0;
+ }
+ _memset($21 | 0, 78, $5 | 0) | 0;
+ _memset($22 | 0, 78, $5 | 0) | 0;
+ $28 = ($5 | 0) > 0;
+ if ($28) {
+  $$0129163 = 0;
+  while (1) {
+   $29 = $$0129163 & 255;
+   $30 = $23 + $$0129163 | 0;
+   SAFE_HEAP_STORE($30 >> 0 | 0, $29 | 0, 1);
+   $31 = $$0129163 + 1 | 0;
+   $exitcond168 = ($31 | 0) == ($5 | 0);
+   if ($exitcond168) {
+    break;
+   } else {
+    $$0129163 = $31;
+   }
+  }
+ }
+ $32 = $25;
+ $33 = $21;
+ $34 = $23;
+ $35 = $34 | $33;
+ $36 = $35 | $32;
+ $37 = $36 & 3;
+ $38 = ($37 | 0) == 0;
+ if ($38) {
+  $39 = $5 >>> 0 > 3;
+  if ($39) {
+   $40 = $5 + -4 | 0;
+   $41 = $40 & -4;
+   $42 = $41 + 4 | 0;
+   $scevgep58$i = $23 + $42 | 0;
+   $$03446$i = $23;
+   $$03545$i = $21;
+   $$03644$i = $25;
+   $$047$i = $5;
+   while (1) {
+    $43 = $$03545$i + 4 | 0;
+    $44 = SAFE_HEAP_LOAD($$03545$i | 0, 4, 0) | 0 | 0;
+    $45 = $$03446$i + 4 | 0;
+    $46 = SAFE_HEAP_LOAD($$03446$i | 0, 4, 0) | 0 | 0;
+    $47 = $46 ^ $44;
+    $48 = $$03644$i + 4 | 0;
+    SAFE_HEAP_STORE($$03644$i | 0, $47 | 0, 4);
+    $49 = $$047$i + -4 | 0;
+    $50 = $49 >>> 0 > 3;
+    if ($50) {
+     $$03446$i = $45;
+     $$03545$i = $43;
+     $$03644$i = $48;
+     $$047$i = $49;
+    } else {
+     break;
+    }
+   }
+   $scevgep$i = $21 + $42 | 0;
+   $scevgep60$i = $25 + $42 | 0;
+   $51 = $40 - $41 | 0;
+   $$0$lcssa$i = $51;
+   $$034$lcssa$i = $scevgep58$i;
+   $$035$lcssa$i = $scevgep$i;
+   $$036$lcssa$i = $scevgep60$i;
+  } else {
+   $$0$lcssa$i = $5;
+   $$034$lcssa$i = $23;
+   $$035$lcssa$i = $21;
+   $$036$lcssa$i = $25;
+  }
+  $$037$ph$i = $$034$lcssa$i;
+  $$038$ph$i = $$035$lcssa$i;
+  $$039$ph$i = $$036$lcssa$i;
+  $$1$ph$i = $$0$lcssa$i;
+ } else {
+  $$037$ph$i = $23;
+  $$038$ph$i = $21;
+  $$039$ph$i = $25;
+  $$1$ph$i = $5;
+ }
+ $52 = ($$1$ph$i | 0) == 0;
+ if (!$52) {
+  $$03742$i = $$037$ph$i;
+  $$03841$i = $$038$ph$i;
+  $$03940$i = $$039$ph$i;
+  $$143$i = $$1$ph$i;
+  while (1) {
+   $53 = $$03841$i + 1 | 0;
+   $54 = SAFE_HEAP_LOAD($$03841$i >> 0 | 0, 1, 0) | 0 | 0;
+   $55 = $$03742$i + 1 | 0;
+   $56 = SAFE_HEAP_LOAD($$03742$i >> 0 | 0, 1, 0) | 0 | 0;
+   $57 = $56 ^ $54;
+   $58 = $$03940$i + 1 | 0;
+   SAFE_HEAP_STORE($$03940$i >> 0 | 0, $57 | 0, 1);
+   $59 = $$143$i + -1 | 0;
+   $60 = ($59 | 0) == 0;
+   if ($60) {
+    break;
+   } else {
+    $$03742$i = $55;
+    $$03841$i = $53;
+    $$03940$i = $58;
+    $$143$i = $59;
+   }
+  }
+ }
+ FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, $25, $25) 
| 0;
+ _memcpy($21 | 0, $25 | 0, $5 | 0) | 0;
+ FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 127]($20, $22, 
$24, $25, 1);
+ $61 = _memcmp($24, $23, $5) | 0;
+ $62 = ($61 | 0) == 0;
+ if (!$62) {
+  __gcry_free($15);
+  $$0 = 46671;
+  return $$0 | 0;
+ }
+ $63 = _memcmp($22, $21, $5) | 0;
+ $64 = ($63 | 0) == 0;
+ if (!$64) {
+  __gcry_free($15);
+  $$0 = 46671;
+  return $$0 | 0;
+ }
+ _memset($21 | 0, 95, $5 | 0) | 0;
+ _memset($22 | 0, 95, $5 | 0) | 0;
+ $65 = ($10 | 0) > 0;
+ L33 : do {
+  if ($65) {
+   $$1160 = 0;
+   while (1) {
+    $99 = $$1160 & 255;
+    $100 = $23 + $$1160 | 0;
+    SAFE_HEAP_STORE($100 >> 0 | 0, $99 | 0, 1);
+    $101 = $$1160 + 1 | 0;
+    $exitcond = ($101 | 0) == ($10 | 0);
+    if ($exitcond) {
+     break;
+    } else {
+     $$1160 = $101;
+    }
+   }
+   if ($65) {
+    $66 = $5 >>> 0 > 3;
+    $67 = $5 + -4 | 0;
+    $68 = $67 & -4;
+    $69 = $68 + 4 | 0;
+    $scevgep$i130 = $21 + $69 | 0;
+    $70 = $67 - $68 | 0;
+    if ($66) {
+     $$2159$us = 0;
+    } else {
+     $71 = ($5 | 0) == 0;
+     $$2159 = 0;
+     while (1) {
+      $102 = $25 + $$2159 | 0;
+      if (!$71) {
+       $103 = $23 + $$2159 | 0;
+       $$03742$i154 = $103;
+       $$03841$i155 = $21;
+       $$03940$i156 = $102;
+       $$143$i153 = $5;
+       while (1) {
+        $104 = $$03841$i155 + 1 | 0;
+        $105 = SAFE_HEAP_LOAD($$03841$i155 >> 0 | 0, 1, 0) | 0 | 0;
+        $106 = $$03742$i154 + 1 | 0;
+        $107 = SAFE_HEAP_LOAD($$03742$i154 >> 0 | 0, 1, 0) | 0 | 0;
+        $108 = $107 ^ $105;
+        $109 = $$03940$i156 + 1 | 0;
+        SAFE_HEAP_STORE($$03940$i156 >> 0 | 0, $108 | 0, 1);
+        $110 = $$143$i153 + -1 | 0;
+        $111 = ($110 | 0) == 0;
+        if ($111) {
+         break;
+        } else {
+         $$03742$i154 = $106;
+         $$03841$i155 = $104;
+         $$03940$i156 = $109;
+         $$143$i153 = $110;
+        }
+       }
+      }
+      FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, 
$102, $102) | 0;
+      _memcpy($21 | 0, $102 | 0, $5 | 0) | 0;
+      $112 = $$2159 + $5 | 0;
+      $113 = ($112 | 0) < ($10 | 0);
+      if ($113) {
+       $$2159 = $112;
+      } else {
+       break L33;
+      }
+     }
+    }
+    while (1) {
+     $72 = $25 + $$2159$us | 0;
+     $73 = $23 + $$2159$us | 0;
+     $74 = $72;
+     $75 = $74 | $33;
+     $76 = $73;
+     $77 = $75 | $76;
+     $78 = $77 & 3;
+     $79 = ($78 | 0) == 0;
+     if ($79) {
+      $scevgep58$i131$us = $73 + $69 | 0;
+      $$03446$i135$us = $73;
+      $$03545$i136$us = $21;
+      $$03644$i137$us = $72;
+      $$047$i134$us = $5;
+      while (1) {
+       $80 = $$03545$i136$us + 4 | 0;
+       $81 = SAFE_HEAP_LOAD($$03545$i136$us | 0, 4, 0) | 0 | 0;
+       $82 = $$03446$i135$us + 4 | 0;
+       $83 = SAFE_HEAP_LOAD($$03446$i135$us | 0, 4, 0) | 0 | 0;
+       $84 = $83 ^ $81;
+       $85 = $$03644$i137$us + 4 | 0;
+       SAFE_HEAP_STORE($$03644$i137$us | 0, $84 | 0, 4);
+       $86 = $$047$i134$us + -4 | 0;
+       $87 = $86 >>> 0 > 3;
+       if ($87) {
+        $$03446$i135$us = $82;
+        $$03545$i136$us = $80;
+        $$03644$i137$us = $85;
+        $$047$i134$us = $86;
+       } else {
+        break;
+       }
+      }
+      $scevgep60$i132$us = $72 + $69 | 0;
+      $$037$ph$i150$us = $scevgep58$i131$us;
+      $$038$ph$i149$us = $scevgep$i130;
+      $$039$ph$i148$us = $scevgep60$i132$us;
+      $$1$ph$i151$us = $70;
+     } else {
+      $$037$ph$i150$us = $73;
+      $$038$ph$i149$us = $21;
+      $$039$ph$i148$us = $72;
+      $$1$ph$i151$us = $5;
+     }
+     $88 = ($$1$ph$i151$us | 0) == 0;
+     if (!$88) {
+      $$03742$i154$us = $$037$ph$i150$us;
+      $$03841$i155$us = $$038$ph$i149$us;
+      $$03940$i156$us = $$039$ph$i148$us;
+      $$143$i153$us = $$1$ph$i151$us;
+      while (1) {
+       $89 = $$03841$i155$us + 1 | 0;
+       $90 = SAFE_HEAP_LOAD($$03841$i155$us >> 0 | 0, 1, 0) | 0 | 0;
+       $91 = $$03742$i154$us + 1 | 0;
+       $92 = SAFE_HEAP_LOAD($$03742$i154$us >> 0 | 0, 1, 0) | 0 | 0;
+       $93 = $92 ^ $90;
+       $94 = $$03940$i156$us + 1 | 0;
+       SAFE_HEAP_STORE($$03940$i156$us >> 0 | 0, $93 | 0, 1);
+       $95 = $$143$i153$us + -1 | 0;
+       $96 = ($95 | 0) == 0;
+       if ($96) {
+        break;
+       } else {
+        $$03742$i154$us = $91;
+        $$03841$i155$us = $89;
+        $$03940$i156$us = $94;
+        $$143$i153$us = $95;
+       }
+      }
+     }
+     FUNCTION_TABLE_iiii[(SAFE_FT_MASK($2 | 0, 127 | 0) | 0) & 127]($20, $72, 
$72) | 0;
+     _memcpy($21 | 0, $72 | 0, $5 | 0) | 0;
+     $97 = $$2159$us + $5 | 0;
+     $98 = ($97 | 0) < ($10 | 0);
+     if ($98) {
+      $$2159$us = $97;
+     } else {
+      break;
+     }
+    }
+   }
+  }
+ } while (0);
+ FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 127]($20, $22, 
$24, $25, $4);
+ $114 = _memcmp($24, $23, $10) | 0;
+ $115 = ($114 | 0) == 0;
+ if ($115) {
+  $116 = _memcmp($22, $21, $5) | 0;
+  $117 = ($116 | 0) == 0;
+  __gcry_free($15);
+  $$ = $117 ? 0 : 46671;
+  $$0 = $$;
+  return $$0 | 0;
+ } else {
+  __gcry_free($15);
+  $$0 = 46671;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+function __gcry_ecc_fill_in_curve($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$01726$i = 0, $$025$i = 0, $$049 = 0, $$1 = 0, $$124$i = 0, $$198 = 0, 
$$mux = 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, $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, $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, $cond$i = 0, $or$cond51 = 0, $vararg_buffer = 0, $vararg_buffer1 = 0, 
$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) {
+   $32 = ($0 | 0) == 192;
+   if ($32) {
+    $$198 = 1;
+   } else {
+    $119 = ($0 | 0) == 224;
+    $$mux = $119 ? 2 : 3;
+    switch ($0 | 0) {
+    case 224:
+    case 256:
+     {
+      $$198 = $$mux;
+      break L1;
+      break;
+     }
+    default:
+     {}
+    }
+    $120 = ($0 | 0) == 384;
+    if ($120) {
+     $$198 = 4;
+    } else {
+     $121 = ($0 | 0) == 521;
+     if ($121) {
+      $$198 = 5;
+     } else {
+      $122 = ($0 | 0) == 160;
+      if ($122) {
+       $$198 = 6;
+      } else {
+       $123 = ($0 | 0) == 320;
+       if ($123) {
+        $$198 = 10;
+       } else {
+        $124 = ($0 | 0) == 512;
+        if ($124) {
+         $$198 = 12;
+        } else {
+         $125 = ($0 | 0) == 511;
+         if ($125) {
+          $$198 = 17;
+         } else {
+          $$049 = 188;
+          STACKTOP = sp;
+          return $$049 | 0;
+         }
+        }
+       }
+      }
+     }
+    }
+   }
+  } else {
+   $$01726$i = 0;
+   while (1) {
+    $12 = 1356 + ($$01726$i * 48 | 0) | 0;
+    $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    $14 = _strcmp($1, $13) | 0;
+    $15 = ($14 | 0) == 0;
+    if ($15) {
+     $$1 = $$01726$i;
+     break;
+    }
+    $16 = $$01726$i + 1 | 0;
+    $17 = ($16 | 0) == 21;
+    if ($17) {
+     $$025$i = 0;
+     $25 = 2412;
+     label = 5;
+     break;
+    } else {
+     $$01726$i = $16;
+    }
+   }
+   L14 : do {
+    if ((label | 0) == 5) {
+     while (1) {
+      label = 0;
+      $20 = (2412 + ($$025$i << 3) | 0) + 4 | 0;
+      $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+      $22 = _strcmp($1, $21) | 0;
+      $23 = ($22 | 0) == 0;
+      $19 = $$025$i + 1 | 0;
+      if ($23) {
+       break;
+      }
+      $18 = 2412 + ($19 << 3) | 0;
+      $cond$i = ($19 | 0) == 36;
+      if ($cond$i) {
+       $$049 = 188;
+       label = 47;
+       break;
+      } else {
+       $$025$i = $19;
+       $25 = $18;
+       label = 5;
+      }
+     }
+     if ((label | 0) == 47) {
+      STACKTOP = sp;
+      return $$049 | 0;
+     }
+     $24 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     $$124$i = 0;
+     while (1) {
+      $26 = 1356 + ($$124$i * 48 | 0) | 0;
+      $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+      $28 = _strcmp($24, $27) | 0;
+      $29 = ($28 | 0) == 0;
+      if ($29) {
+       $$1 = $$124$i;
+       break L14;
+      }
+      $30 = $$124$i + 1 | 0;
+      $31 = ($30 | 0) == 21;
+      if ($31) {
+       $$049 = 188;
+       break;
+      } else {
+       $$124$i = $30;
+      }
+     }
+     STACKTOP = sp;
+     return $$049 | 0;
+    }
+   } while (0);
+   $33 = ($$1 | 0) < 0;
+   if ($33) {
+    $$049 = 188;
+    STACKTOP = sp;
+    return $$049 | 0;
+   } else {
+    $$198 = $$1;
+   }
+  }
+ } while (0);
+ $34 = 1356 + ($$198 * 48 | 0) | 0;
+ $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+ $36 = __gcry_fips_mode() | 0;
+ $37 = ($36 | 0) == 0;
+ $38 = $$198 + -1 | 0;
+ $39 = $38 >>> 0 < 5;
+ $or$cond51 = $39 | $37;
+ if (!$or$cond51) {
+  $$049 = 60;
+  STACKTOP = sp;
+  return $$049 | 0;
+ }
+ $40 = (1356 + ($$198 * 48 | 0) | 0) + 12 | 0;
+ $41 = ($3 | 0) == (0 | 0);
+ if (!$41) {
+  $42 = (1356 + ($$198 * 48 | 0) | 0) + 4 | 0;
+  $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($3 | 0, $43 | 0, 4);
+ }
+ $44 = ($2 | 0) == (0 | 0);
+ if ($44) {
+  $$049 = 0;
+  STACKTOP = sp;
+  return $$049 | 0;
+ }
+ $45 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($2 | 0, $45 | 0, 4);
+ $46 = (1356 + ($$198 * 48 | 0) | 0) + 16 | 0;
+ $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+ $48 = $2 + 4 | 0;
+ SAFE_HEAP_STORE($48 | 0, $47 | 0, 4);
+ $49 = $2 + 8 | 0;
+ $50 = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+ $51 = ($50 | 0) == (0 | 0);
+ do {
+  if ($51) {
+   $52 = (1356 + ($$198 * 48 | 0) | 0) + 20 | 0;
+   $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+   $54 = __gcry_mpi_scan($10, 4, $53, 0, 0) | 0;
+   $55 = ($54 | 0) == 0;
+   if ($55) {
+    $57 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($49 | 0, $57 | 0, 4);
+    break;
+   } else {
+    $56 = _gpg_strerror($54) | 0;
+    SAFE_HEAP_STORE($vararg_buffer | 0, $56 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer);
+   }
+  }
+ } while (0);
+ $58 = $2 + 12 | 0;
+ $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+ $60 = ($59 | 0) == (0 | 0);
+ do {
+  if ($60) {
+   $61 = (1356 + ($$198 * 48 | 0) | 0) + 24 | 0;
+   $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+   $63 = __gcry_mpi_scan($9, 4, $62, 0, 0) | 0;
+   $64 = ($63 | 0) == 0;
+   if ($64) {
+    $66 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($58 | 0, $66 | 0, 4);
+    break;
+   } else {
+    $65 = _gpg_strerror($63) | 0;
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, $65 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer1);
+   }
+  }
+ } while (0);
+ $67 = $2 + 16 | 0;
+ $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+ $69 = ($68 | 0) == (0 | 0);
+ do {
+  if ($69) {
+   $70 = (1356 + ($$198 * 48 | 0) | 0) + 28 | 0;
+   $71 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+   $72 = __gcry_mpi_scan($8, 4, $71, 0, 0) | 0;
+   $73 = ($72 | 0) == 0;
+   if ($73) {
+    $75 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($67 | 0, $75 | 0, 4);
+    break;
+   } else {
+    $74 = _gpg_strerror($72) | 0;
+    SAFE_HEAP_STORE($vararg_buffer4 | 0, $74 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer4);
+   }
+  }
+ } while (0);
+ $76 = $2 + 32 | 0;
+ $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+ $78 = ($77 | 0) == (0 | 0);
+ do {
+  if ($78) {
+   $79 = (1356 + ($$198 * 48 | 0) | 0) + 32 | 0;
+   $80 = SAFE_HEAP_LOAD($79 | 0, 4, 0) | 0 | 0;
+   $81 = __gcry_mpi_scan($7, 4, $80, 0, 0) | 0;
+   $82 = ($81 | 0) == 0;
+   if ($82) {
+    $84 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($76 | 0, $84 | 0, 4);
+    break;
+   } else {
+    $83 = _gpg_strerror($81) | 0;
+    SAFE_HEAP_STORE($vararg_buffer7 | 0, $83 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer7);
+   }
+  }
+ } while (0);
+ $85 = $2 + 36 | 0;
+ $86 = SAFE_HEAP_LOAD($85 | 0, 4, 0) | 0 | 0;
+ $87 = ($86 | 0) == (0 | 0);
+ do {
+  if ($87) {
+   $88 = (1356 + ($$198 * 48 | 0) | 0) + 44 | 0;
+   $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+   $90 = __gcry_mpi_scan($6, 4, $89, 0, 0) | 0;
+   $91 = ($90 | 0) == 0;
+   if ($91) {
+    $93 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($85 | 0, $93 | 0, 4);
+    break;
+   } else {
+    $92 = _gpg_strerror($90) | 0;
+    SAFE_HEAP_STORE($vararg_buffer10 | 0, $92 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer10);
+   }
+  }
+ } while (0);
+ $94 = $2 + 20 | 0;
+ $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+ $96 = ($95 | 0) == (0 | 0);
+ do {
+  if ($96) {
+   $97 = (1356 + ($$198 * 48 | 0) | 0) + 36 | 0;
+   $98 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+   $99 = __gcry_mpi_scan($5, 4, $98, 0, 0) | 0;
+   $100 = ($99 | 0) == 0;
+   if ($100) {
+    $102 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($94 | 0, $102 | 0, 4);
+    break;
+   } else {
+    $101 = _gpg_strerror($99) | 0;
+    SAFE_HEAP_STORE($vararg_buffer13 | 0, $101 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer13);
+   }
+  }
+ } while (0);
+ $103 = $2 + 24 | 0;
+ $104 = SAFE_HEAP_LOAD($103 | 0, 4, 0) | 0 | 0;
+ $105 = ($104 | 0) == (0 | 0);
+ do {
+  if ($105) {
+   $106 = (1356 + ($$198 * 48 | 0) | 0) + 40 | 0;
+   $107 = SAFE_HEAP_LOAD($106 | 0, 4, 0) | 0 | 0;
+   $108 = __gcry_mpi_scan($4, 4, $107, 0, 0) | 0;
+   $109 = ($108 | 0) == 0;
+   if ($109) {
+    $111 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($103 | 0, $111 | 0, 4);
+    break;
+   } else {
+    $110 = _gpg_strerror($108) | 0;
+    SAFE_HEAP_STORE($vararg_buffer16 | 0, $110 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer16);
+   }
+  }
+ } while (0);
+ $112 = $2 + 28 | 0;
+ $113 = SAFE_HEAP_LOAD($112 | 0, 4, 0) | 0 | 0;
+ $114 = ($113 | 0) == (0 | 0);
+ if ($114) {
+  $115 = __gcry_mpi_alloc_set_ui(1) | 0;
+  SAFE_HEAP_STORE($112 | 0, $115 | 0, 4);
+ }
+ $116 = $2 + 40 | 0;
+ $117 = SAFE_HEAP_LOAD($116 | 0, 4, 0) | 0 | 0;
+ $118 = ($117 | 0) == (0 | 0);
+ if (!$118) {
+  $$049 = 0;
+  STACKTOP = sp;
+  return $$049 | 0;
+ }
+ SAFE_HEAP_STORE($116 | 0, $35 | 0, 4);
+ $$049 = 0;
+ STACKTOP = sp;
+ return $$049 | 0;
+}
+
+function __gcry_rndlinux_gather_random($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $$0101 = 0, $$0102$lcssa163 = 0, $$0102136 = 0, $$0105$lcssa162 = 
0, $$0105135 = 0, $$0109 = 0, $$0112 = 0, $$0112$us = 0, $$0114$$us = 0, 
$$0114144$us = 0, $$0117$lcssa = 0, $$0117143 = 0, $$0117143$us = 0, $$0120142 
= 0, $$0120142$us = 0, $$1103 = 0, $$1106 = 0, $$1118 = 0, $$1118$us = 0;
+ var $$1121 = 0, $$1121$us = 0, $$1146 = 0, $$1146$us = 0, $$2$us = 0, 
$$2116$us = 0, $$2119$us = 0, $$3$ph = 0, $$3108$ph = 0, $$3108133 = 0, $$3134 
= 0, $$lcssa130 = 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, $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, $99 = 0, $or$cond = 0, $or$cond$us = 0;
+ var $or$cond124 = 0, $or$cond124$us = 0, $scevgep = 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 + 24 | 0;
+ $vararg_buffer4 = sp + 16 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $4 = sp + 168 | 0;
+ $5 = sp + 40 | 0;
+ $6 = sp + 32 | 0;
+ $7 = ($0 | 0) == (0 | 0);
+ if ($7) {
+  $8 = SAFE_HEAP_LOAD(3183 * 4 | 0, 4, 0) | 0 | 0;
+  $9 = ($8 | 0) == -1;
+  if (!$9) {
+   _close($8) | 0;
+   SAFE_HEAP_STORE(3183 * 4 | 0, -1 | 0, 4);
+  }
+  $10 = SAFE_HEAP_LOAD(3184 * 4 | 0, 4, 0) | 0 | 0;
+  $11 = ($10 | 0) == -1;
+  if ($11) {
+   STACKTOP = sp;
+   return 0;
+  }
+  _close($10) | 0;
+  SAFE_HEAP_STORE(3184 * 4 | 0, -1 | 0, 4);
+  STACKTOP = sp;
+  return 0;
+ }
+ $12 = __gcry_rndhw_poll_slow($0, $1) | 0;
+ $13 = $2 >>> 1;
+ $14 = $12 >>> 0 > $13 >>> 0;
+ $$ = $14 ? $13 : $12;
+ $15 = $2 >>> 0 > 1;
+ $16 = $15 ? $$ : 0;
+ $$0101 = $2 - $16 | 0;
+ $17 = ($3 | 0) > 1;
+ if ($17) {
+  $18 = SAFE_HEAP_LOAD(3183 * 4 | 0, 4, 0) | 0 | 0;
+  $19 = ($18 | 0) == -1;
+  if ($19) {
+   $20 = SAFE_HEAP_LOAD(71846 | 0, 1, 0) | 0 | 0;
+   $21 = $20 & 255;
+   $22 = $21 & 1;
+   $23 = _open_device(52444, $22) | 0;
+   SAFE_HEAP_STORE(3183 * 4 | 0, $23 | 0, 4);
+   $24 = SAFE_HEAP_LOAD(71846 | 0, 1, 0) | 0 | 0;
+   $25 = $24 & 255;
+   $26 = $25 | 1;
+   $27 = $26 & 255;
+   SAFE_HEAP_STORE(71846 | 0, $27 | 0, 1);
+   $$0109 = $23;
+  } else {
+   $$0109 = $18;
+  }
+ } else {
+  $28 = SAFE_HEAP_LOAD(3184 * 4 | 0, 4, 0) | 0 | 0;
+  $29 = ($28 | 0) == -1;
+  if ($29) {
+   $30 = SAFE_HEAP_LOAD(71846 | 0, 1, 0) | 0 | 0;
+   $31 = $30 & 255;
+   $32 = $31 & 2;
+   $33 = _open_device(52456, $32) | 0;
+   SAFE_HEAP_STORE(3184 * 4 | 0, $33 | 0, 4);
+   $34 = SAFE_HEAP_LOAD(71846 | 0, 1, 0) | 0 | 0;
+   $35 = $34 & 255;
+   $36 = $35 | 2;
+   $37 = $36 & 255;
+   SAFE_HEAP_STORE(71846 | 0, $37 | 0, 1);
+   $$0109 = $33;
+  } else {
+   $$0109 = $28;
+  }
+ }
+ $38 = ($$0101 | 0) == 0;
+ L17 : do {
+  if ($38) {
+   $$0117$lcssa = 0;
+  } else {
+   $39 = ($$0109 | 0) < 1024;
+   $40 = $$0109 & 31;
+   $41 = 1 << $40;
+   $42 = $$0109 >>> 5;
+   $43 = $5 + ($42 << 2) | 0;
+   $44 = $6 + 4 | 0;
+   $45 = $$0109 + 1 | 0;
+   if ($39) {
+    $$0114144$us = 0;
+    $$0117143$us = 0;
+    $$0120142$us = 0;
+    $$1146$us = $$0101;
+   } else {
+    $$0117143 = 0;
+    $$0120142 = 0;
+    $$1146 = $$0101;
+    L20 : while (1) {
+     $71 = ($$0117143 | 0) == 0;
+     $72 = $2 - $$1146 | 0;
+     $73 = ($$0120142 | 0) == ($72 | 0);
+     $or$cond = $71 & $73;
+     if ($or$cond) {
+      $$1118 = 0;
+      $$1121 = $$0120142;
+     } else {
+      __gcry_random_progress(52469, 88, $72, $2);
+      $$1118 = 1;
+      $$1121 = $72;
+     }
+     $74 = $$1146 >>> 0 < 768;
+     $75 = $74 ? $$1146 : 768;
+     while (1) {
+      $76 = _read($$0109, $4, $75) | 0;
+      $77 = ($76 | 0) > -1;
+      $78 = $76 >>> 0 > $75 >>> 0;
+      $or$cond124 = $77 & $78;
+      if ($or$cond124) {
+       SAFE_HEAP_STORE($vararg_buffer4 | 0, $76 | 0, 4);
+       __gcry_log_error(52502, $vararg_buffer4);
+       $$0112 = $75;
+      } else {
+       $$0112 = $76;
+      }
+      $79 = ($$0112 | 0) == -1;
+      if (!$79) {
+       break;
+      }
+      $80 = ___errno_location() | 0;
+      $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+      $82 = ($81 | 0) == 4;
+      if (!$82) {
+       $$lcssa130 = $81;
+       break L20;
+      }
+     }
+     FUNCTION_TABLE_viii[(SAFE_FT_MASK($0 | 0, 127 | 0) | 0) & 127]($4, 
$$0112, $1);
+     $84 = $$1146 - $$0112 | 0;
+     $85 = ($84 | 0) == 0;
+     if ($85) {
+      $$0117$lcssa = $$1118;
+      break L17;
+     } else {
+      $$0117143 = $$1118;
+      $$0120142 = $$1121;
+      $$1146 = $84;
+     }
+    }
+    $83 = _strerror($$lcssa130) | 0;
+    SAFE_HEAP_STORE($vararg_buffer7 | 0, $83 | 0, 4);
+    __gcry_log_fatal(52540, $vararg_buffer7);
+   }
+   L33 : while (1) {
+    $46 = ($$0117143$us | 0) == 0;
+    $47 = $2 - $$1146$us | 0;
+    $48 = ($$0120142$us | 0) == ($47 | 0);
+    $or$cond$us = $46 & $48;
+    if ($or$cond$us) {
+     $$1118$us = 0;
+     $$1121$us = $$0120142$us;
+    } else {
+     __gcry_random_progress(52469, 88, $47, $2);
+     $$1118$us = 1;
+     $$1121$us = $47;
+    }
+    dest = $5;
+    stop = dest + 128 | 0;
+    do {
+     SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+     dest = dest + 4 | 0;
+    } while ((dest | 0) < (stop | 0));
+    $49 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+    $50 = $49 | $41;
+    SAFE_HEAP_STORE($43 | 0, $50 | 0, 4);
+    SAFE_HEAP_STORE($6 | 0, $$0114144$us | 0, 4);
+    $51 = ($$0114144$us | 0) != 0;
+    $52 = $51 ? 0 : 1e5;
+    SAFE_HEAP_STORE($44 | 0, $52 | 0, 4);
+    $53 = _select($45, $5, 0, 0, $6) | 0;
+    switch ($53 | 0) {
+    case 0:
+     {
+      $$2$us = $$1146$us;
+      $$2116$us = 3;
+      $$2119$us = 1;
+      break;
+     }
+    case -1:
+     {
+      $54 = ___errno_location() | 0;
+      $55 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+      $56 = _strerror($55) | 0;
+      SAFE_HEAP_STORE($vararg_buffer | 0, $56 | 0, 4);
+      __gcry_log_error(52482, $vararg_buffer);
+      $$0114$$us = $51 ? $$0114144$us : 1;
+      $$2$us = $$1146$us;
+      $$2116$us = $$0114$$us;
+      $$2119$us = $$1118$us;
+      break;
+     }
+    default:
+     {
+      $67 = $$1146$us >>> 0 < 768;
+      $57 = $67 ? $$1146$us : 768;
+      while (1) {
+       $58 = _read($$0109, $4, $57) | 0;
+       $59 = ($58 | 0) > -1;
+       $60 = $58 >>> 0 > $57 >>> 0;
+       $or$cond124$us = $59 & $60;
+       if ($or$cond124$us) {
+        SAFE_HEAP_STORE($vararg_buffer1 | 0, $58 | 0, 4);
+        __gcry_log_error(52502, $vararg_buffer1);
+        $$0112$us = $57;
+       } else {
+        $$0112$us = $58;
+       }
+       $61 = ($$0112$us | 0) == -1;
+       if (!$61) {
+        break;
+       }
+       $64 = ___errno_location() | 0;
+       $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+       $66 = ($65 | 0) == 4;
+       if (!$66) {
+        $$lcssa130 = $65;
+        break L33;
+       }
+      }
+      FUNCTION_TABLE_viii[(SAFE_FT_MASK($0 | 0, 127 | 0) | 0) & 127]($4, 
$$0112$us, $1);
+      $62 = $$1146$us - $$0112$us | 0;
+      $$2$us = $62;
+      $$2116$us = $$0114144$us;
+      $$2119$us = $$1118$us;
+     }
+    }
+    $63 = ($$2$us | 0) == 0;
+    if ($63) {
+     $$0117$lcssa = $$2119$us;
+     break L17;
+    } else {
+     $$0114144$us = $$2116$us;
+     $$0117143$us = $$2119$us;
+     $$0120142$us = $$1121$us;
+     $$1146$us = $$2$us;
+    }
+   }
+   $83 = _strerror($$lcssa130) | 0;
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $83 | 0, 4);
+   __gcry_log_fatal(52540, $vararg_buffer7);
+  }
+ } while (0);
+ $68 = $4;
+ $69 = $68 & 7;
+ $70 = ($69 | 0) == 0;
+ if ($70) {
+  $$0102$lcssa163 = 768;
+  $$0105$lcssa162 = $4;
+  label = 36;
+ } else {
+  $$0102136 = 768;
+  $$0105135 = $4;
+  while (1) {
+   SAFE_HEAP_STORE($$0105135 >> 0 | 0, 0 | 0, 1);
+   $86 = $$0105135 + 1 | 0;
+   $87 = $$0102136 + -1 | 0;
+   $88 = $86;
+   $89 = $88 & 7;
+   $90 = ($89 | 0) != 0;
+   $91 = ($87 | 0) != 0;
+   $92 = $91 & $90;
+   if ($92) {
+    $$0102136 = $87;
+    $$0105135 = $86;
+   } else {
+    break;
+   }
+  }
+  $93 = $87 >>> 0 < 8;
+  if ($93) {
+   $$3$ph = $87;
+   $$3108$ph = $86;
+  } else {
+   $$0102$lcssa163 = $87;
+   $$0105$lcssa162 = $86;
+   label = 36;
+  }
+ }
+ if ((label | 0) == 36) {
+  $94 = $$0102$lcssa163 + -8 | 0;
+  $95 = $94 & -8;
+  $96 = $95 + 8 | 0;
+  $$1103 = $$0102$lcssa163;
+  $$1106 = $$0105$lcssa162;
+  while (1) {
+   $97 = $$1106;
+   $98 = $97;
+   SAFE_HEAP_STORE($98 | 0, 0 | 0, 4);
+   $99 = $97 + 4 | 0;
+   $100 = $99;
+   SAFE_HEAP_STORE($100 | 0, 0 | 0, 4);
+   $101 = $$1103 + -8 | 0;
+   $102 = $$1106 + 8 | 0;
+   $103 = $101 >>> 0 > 7;
+   if ($103) {
+    $$1103 = $101;
+    $$1106 = $102;
+   } else {
+    break;
+   }
+  }
+  $104 = $94 - $95 | 0;
+  $scevgep = $$0105$lcssa162 + $96 | 0;
+  $$3$ph = $104;
+  $$3108$ph = $scevgep;
+ }
+ $105 = ($$3$ph | 0) == 0;
+ if (!$105) {
+  $$3108133 = $$3108$ph;
+  $$3134 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3108133 >> 0 | 0, 0 | 0, 1);
+   $106 = $$3108133 + 1 | 0;
+   $107 = $$3134 + -1 | 0;
+   $108 = ($107 | 0) == 0;
+   if ($108) {
+    break;
+   } else {
+    $$3108133 = $106;
+    $$3134 = $107;
+   }
+  }
+ }
+ $109 = ($$0117$lcssa | 0) == 0;
+ if ($109) {
+  STACKTOP = sp;
+  return 0;
+ }
+ __gcry_random_progress(52469, 88, $2, $2);
+ STACKTOP = sp;
+ return 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 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $6 = $5 << 24 >> 24 == 0;
+ L1 : do {
+  if ($6) {
+   $$1 = 0;
+  } else {
+   $7 = _strcmp($0, 46949) | 0;
+   $8 = ($7 | 0) == 0;
+   if ($8) {
+    $9 = $1 + 16 | 0;
+    $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    $11 = ($10 | 0) == (0 | 0);
+    if (!$11) {
+     $12 = $10 + 12 | 0;
+     $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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, 39071) | 0;
+   $19 = ($18 | 0) == 0;
+   if ($19) {
+    $20 = $1 + 20 | 0;
+    $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+    $22 = ($21 | 0) == (0 | 0);
+    if (!$22) {
+     $23 = $21 + 12 | 0;
+     $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 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, 35378) | 0;
+   $30 = ($29 | 0) == 0;
+   if ($30) {
+    $31 = $1 + 24 | 0;
+    $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+    $33 = ($32 | 0) == (0 | 0);
+    if (!$33) {
+     $34 = $32 + 12 | 0;
+     $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 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, 39075) | 0;
+   $41 = ($40 | 0) == 0;
+   if ($41) {
+    $42 = $1 + 32 | 0;
+    $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+    $44 = ($43 | 0) == (0 | 0);
+    if (!$44) {
+     $45 = $43 + 12 | 0;
+     $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 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, 35382) | 0;
+   $52 = ($51 | 0) == 0;
+   if ($52) {
+    $53 = $1 + 36 | 0;
+    $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+    $55 = ($54 | 0) == (0 | 0);
+    if (!$55) {
+     $56 = $54 + 12 | 0;
+     $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 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, 35384) | 0;
+   $63 = ($62 | 0) == 0;
+   if ($63) {
+    $64 = $1 + 44 | 0;
+    $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+    $66 = ($65 | 0) == (0 | 0);
+    if (!$66) {
+     $67 = $65 + 12 | 0;
+     $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 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, 35492) | 0;
+   $74 = ($73 | 0) == 0;
+   if ($74) {
+    $75 = $1 + 28 | 0;
+    $76 = SAFE_HEAP_LOAD($75 | 0, 4, 0) | 0 | 0;
+    $77 = ($76 | 0) == (0 | 0);
+    if (!$77) {
+     $78 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+     $79 = ($78 | 0) == (0 | 0);
+     if (!$79) {
+      $80 = $78 + 12 | 0;
+      $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 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, 35496) | 0;
+   $87 = ($86 | 0) == 0;
+   if ($87) {
+    $88 = $1 + 28 | 0;
+    $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+    $90 = ($89 | 0) == (0 | 0);
+    if (!$90) {
+     $91 = $89 + 4 | 0;
+     $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+     $93 = ($92 | 0) == (0 | 0);
+     if (!$93) {
+      $94 = $92 + 12 | 0;
+      $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 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, 35500) | 0;
+   $101 = ($100 | 0) == 0;
+   if ($101) {
+    $102 = $1 + 40 | 0;
+    $103 = SAFE_HEAP_LOAD($102 | 0, 4, 0) | 0 | 0;
+    $104 = ($103 | 0) == (0 | 0);
+    if (!$104) {
+     $105 = SAFE_HEAP_LOAD($103 | 0, 4, 0) | 0 | 0;
+     $106 = ($105 | 0) == (0 | 0);
+     if (!$106) {
+      $107 = $105 + 12 | 0;
+      $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 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, 35504) | 0;
+   $114 = ($113 | 0) == 0;
+   if ($114) {
+    $115 = $1 + 40 | 0;
+    $116 = SAFE_HEAP_LOAD($115 | 0, 4, 0) | 0 | 0;
+    $117 = ($116 | 0) == (0 | 0);
+    if (!$117) {
+     $118 = $116 + 4 | 0;
+     $119 = SAFE_HEAP_LOAD($118 | 0, 4, 0) | 0 | 0;
+     $120 = ($119 | 0) == (0 | 0);
+     if (!$120) {
+      $121 = $1 + 28 | 0;
+      $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+      $123 = $122 + 4 | 0;
+      $124 = SAFE_HEAP_LOAD($123 | 0, 4, 0) | 0 | 0;
+      $125 = ($124 | 0) == (0 | 0);
+      if (!$125) {
+       $126 = $124 + 12 | 0;
+       $127 = SAFE_HEAP_LOAD($126 | 0, 4, 0) | 0 | 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, 35380) | 0;
+   $133 = ($132 | 0) == 0;
+   if ($133) {
+    $134 = $1 + 28 | 0;
+    $135 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 0) | 0 | 0;
+    switch ($140 << 24 >> 24) {
+    case 64:
+    case 0:
+     {
+      break;
+     }
+    default:
+     {
+      $$1 = 0;
+      break L1;
+     }
+    }
+    $141 = $1 + 40 | 0;
+    $142 = SAFE_HEAP_LOAD($141 | 0, 4, 0) | 0 | 0;
+    $143 = ($142 | 0) == (0 | 0);
+    if ($143) {
+     $144 = __gcry_ecc_compute_public(0, $1, 0, 0) | 0;
+     SAFE_HEAP_STORE($141 | 0, $144 | 0, 4);
+     $145 = ($144 | 0) == (0 | 0);
+     if ($145) {
+      $$1 = 0;
+      break;
+     }
+     $$pre = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 0) | 0 | 0;
+     $146 = $$pre;
+     $148 = $144;
+    } else {
+     $146 = $140;
+     $148 = $142;
+    }
+    $147 = $146 << 24 >> 24 == 64;
+    if (!$147) {
+     $149 = __gcry_mpi_ec_ec2os($148, $1) | 0;
+     $$1 = $149;
+     break;
+    }
+    $150 = $0 + 2 | 0;
+    $151 = _strcmp($150, 49614) | 0;
+    $152 = ($151 | 0) == 0;
+    if ($152) {
+     $153 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+       $158 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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 _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_idx74 = 0, $$sroa$7$0$copyload = 0, 
$$sroa$7$1 = 0, $$sroa$7$2 = 0, $$sroa$790$0 = 0, $$sroa$790$0$$sroa_idx92 = 0, 
$$sroa$790$0$copyload = 0, $$sroa$790$1 = 0, $$sroa$790$2 = 0, $$sroa$8$0 = 0, 
$$sroa$8$0$$sroa_idx53 = 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, $9 = 0, $not$ = 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 = SAFE_HEAP_LOAD($$idx4$i >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = $$idx4$val$i << 24 >> 24 == 0;
+ if (!$3) {
+  $$idx$i = $2 + 12 | 0;
+  $$idx$val$i = SAFE_HEAP_LOAD($$idx$i >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    $10 = $7 + 4 | 0;
+    $11 = $10;
+    $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    $$sroa$790$0$$sroa_idx92 = $1 + 8 | 0;
+    $$sroa$790$0$copyload = SAFE_HEAP_LOAD($$sroa$790$0$$sroa_idx92 | 0, 4, 0) 
| 0 | 0;
+    $13 = $2;
+    $14 = $13;
+    $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $16 = $13 + 4 | 0;
+    $17 = $16;
+    $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+    $$sroa$7$0$$sroa_idx74 = $2 + 8 | 0;
+    $$sroa$7$0$copyload = SAFE_HEAP_LOAD($$sroa$7$0$$sroa_idx74 | 0, 4, 0) | 0 
| 0;
+    $19 = ($9 | 0) == -1;
+    $20 = ($12 | 0) == -1;
+    $21 = $19 & $20;
+    L5 : do {
+     if ($21) {
+      $$sroa$790$1 = $$sroa$790$0$copyload;
+      label = 8;
+     } else {
+      $$sroa$790$0 = $$sroa$790$0$copyload;
+      $24 = $9;
+      $25 = $12;
+      while (1) {
+       $22 = $$sroa$790$0 >>> 0 > 99999999;
+       if (!$22) {
+        $$sroa$790$2 = $$sroa$790$0;
+        $57 = $24;
+        $58 = $25;
+        label = 9;
+        break L5;
+       }
+       $23 = $$sroa$790$0 + -1e8 | 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$790$1 = $23;
+        label = 8;
+        break;
+       } else {
+        $$sroa$790$0 = $23;
+        $24 = $26;
+        $25 = $27;
+       }
+      }
+     }
+    } while (0);
+    if ((label | 0) == 8) {
+     $31 = $$sroa$790$1 >>> 0 > 99999999;
+     if (!$31) {
+      $$sroa$790$2 = $$sroa$790$1;
+      $57 = -1;
+      $58 = -1;
+      label = 9;
+     }
+    }
+    do {
+     if ((label | 0) == 9) {
+      $32 = ($15 | 0) == -1;
+      $33 = ($18 | 0) == -1;
+      $34 = $32 & $33;
+      L13 : do {
+       if ($34) {
+        $$sroa$7$1 = $$sroa$7$0$copyload;
+        label = 12;
+       } 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;
+          $55 = $37;
+          $56 = $38;
+          break L13;
+         }
+         $36 = $$sroa$7$0 + -1e8 | 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 = 12;
+          break;
+         } else {
+          $$sroa$7$0 = $36;
+          $37 = $39;
+          $38 = $40;
+         }
+        }
+       }
+      } while (0);
+      if ((label | 0) == 12) {
+       $44 = $$sroa$7$1 >>> 0 > 99999999;
+       if ($44) {
+        break;
+       } else {
+        $$sroa$7$2 = $$sroa$7$1;
+        $55 = -1;
+        $56 = -1;
+       }
+      }
+      $45 = _strlen($$idx4$i) | 0;
+      $46 = $45 >>> 0 > 11;
+      if ($46) {
+       $47 = SAFE_HEAP_LOAD(3840 * 4 | 0, 4, 0) | 0 | 0;
+       $48 = ($47 | 0) == -1;
+       if ($48) {
+        $49 = _GNUNET_get_log_call_status(1, 0, 61157, 61205, 468) | 0;
+        SAFE_HEAP_STORE(3840 * 4 | 0, $49 | 0, 4);
+       }
+       $50 = _GNUNET_get_log_skip() | 0;
+       $51 = ($50 | 0) > 0;
+       if ($51) {
+        _GNUNET_log_skip(-1, 0);
+        _GNUNET_abort_();
+       }
+       $52 = SAFE_HEAP_LOAD(3840 * 4 | 0, 4, 0) | 0 | 0;
+       $not$ = ($52 | 0) == 0;
+       if ($not$) {
+        _GNUNET_abort_();
+       }
+       SAFE_HEAP_STORE($vararg_buffer | 0, 61157 | 0, 4);
+       $vararg_ptr1 = $vararg_buffer + 4 | 0;
+       SAFE_HEAP_STORE($vararg_ptr1 | 0, 468 | 0, 4);
+       _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+       _GNUNET_abort_();
+      }
+      $53 = 12 - $45 | 0;
+      $54 = $$sroa$11 + $45 | 0;
+      _memset($54 | 0, 0, $53 | 0) | 0;
+      _memcpy($$sroa$11 | 0, $$idx4$i | 0, $45 | 0) | 0;
+      $59 = _i64Add($55 | 0, $56 | 0, $57 | 0, $58 | 0) | 0;
+      $60 = tempRet0;
+      $61 = $60 >>> 0 < $58 >>> 0;
+      $62 = $59 >>> 0 < $57 >>> 0;
+      $63 = ($60 | 0) == ($58 | 0);
+      $64 = $63 & $62;
+      $65 = $61 | $64;
+      if ($65) {
+       {}
+       SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+       SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+       $$0 = -1;
+       STACKTOP = sp;
+       return $$0 | 0;
+      }
+      $66 = $$sroa$7$2 + $$sroa$790$2 | 0;
+      $$sroa$11$0$$sroa$11$12$$idx$val$i29 = SAFE_HEAP_LOAD($$sroa$11 >> 0 | 
0, 1, 0) | 0 | 0;
+      $67 = $$sroa$11$0$$sroa$11$12$$idx$val$i29 << 24 >> 24 == 0;
+      do {
+       if (!$67) {
+        $68 = ($59 | 0) == -1;
+        $69 = ($60 | 0) == -1;
+        $70 = $68 & $69;
+        L40 : do {
+         if ($70) {
+          $$sroa$8$1 = $66;
+          label = 28;
+         } else {
+          $$sroa$8$0 = $66;
+          $73 = $59;
+          $74 = $60;
+          while (1) {
+           $71 = $$sroa$8$0 >>> 0 > 99999999;
+           if (!$71) {
+            $$sroa$8$2 = $$sroa$8$0;
+            $83 = $73;
+            $86 = $74;
+            break L40;
+           }
+           $72 = $$sroa$8$0 + -1e8 | 0;
+           $75 = _i64Add($73 | 0, $74 | 0, 1, 0) | 0;
+           $76 = tempRet0;
+           $77 = ($75 | 0) == -1;
+           $78 = ($76 | 0) == -1;
+           $79 = $77 & $78;
+           if ($79) {
+            $$sroa$8$1 = $72;
+            label = 28;
+            break;
+           } else {
+            $$sroa$8$0 = $72;
+            $73 = $75;
+            $74 = $76;
+           }
+          }
+         }
+        } while (0);
+        if ((label | 0) == 28) {
+         $80 = $$sroa$8$1 >>> 0 > 99999999;
+         if ($80) {
+          {}
+          SAFE_HEAP_STORE($$sroa$11 | 0, 0 | 0 | 0, 4);
+          SAFE_HEAP_STORE($$sroa$11 + 4 | 0, 0 | 0 | 0, 4);
+          SAFE_HEAP_STORE($$sroa$11 + 8 | 0, 0 | 0 | 0, 4);
+          break;
+         } else {
+          $$sroa$8$2 = $$sroa$8$1;
+          $83 = -1;
+          $86 = -1;
+         }
+        }
+        $81 = $0;
+        $82 = $81;
+        SAFE_HEAP_STORE($82 | 0, $83 | 0, 4);
+        $84 = $81 + 4 | 0;
+        $85 = $84;
+        SAFE_HEAP_STORE($85 | 0, $86 | 0, 4);
+        $$sroa$8$0$$sroa_idx53 = $0 + 8 | 0;
+        SAFE_HEAP_STORE($$sroa$8$0$$sroa_idx53 | 0, $$sroa$8$2 | 0, 4);
+        $$sroa$11$0$$sroa_idx = $0 + 12 | 0;
+        {}
+        SAFE_HEAP_STORE($$sroa$11$0$$sroa_idx | 0, SAFE_HEAP_LOAD($$sroa$11 | 
0, 4, 0) | 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($$sroa$11$0$$sroa_idx + 4 | 0, 
SAFE_HEAP_LOAD($$sroa$11 + 4 | 0, 4, 0) | 0 | 0 | 0, 4);
+        SAFE_HEAP_STORE($$sroa$11$0$$sroa_idx + 8 | 0, 
SAFE_HEAP_LOAD($$sroa$11 + 8 | 0, 4, 0) | 0 | 0 | 0, 4);
+        $$0 = 1;
+        STACKTOP = sp;
+        return $$0 | 0;
+       }
+      } while (0);
+      {}
+      SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+      SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+      $$0 = -1;
+      STACKTOP = sp;
+      return $$0 | 0;
+     }
+    } while (0);
+    {}
+    SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+    SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+    $$0 = -1;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+  }
+ }
+ {}
+ SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+ $$0 = -1;
+ STACKTOP = sp;
+ return $$0 | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $4 >>> 0 > 128;
+ if ($5) {
+  __gcry_bug(49719, 112, 49733);
+ }
+ $6 = $0 + 152 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ if ($8) {
+  return;
+ }
+ $9 = $0 + 144 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = ($10 | 0) == ($4 | 0);
+ if ($11) {
+  $12 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($7 | 0, 127 | 0) | 0) & 127]($0, $0, 
1) | 0;
+  ___gcry_burn_stack($12);
+  SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+  $13 = $0 + 128 | 0;
+  $14 = $13;
+  $15 = $14;
+  $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $17 = $14 + 4 | 0;
+  $18 = $17;
+  $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+  $20 = _i64Add($16 | 0, $19 | 0, 1, 0) | 0;
+  $21 = tempRet0;
+  $22 = $13;
+  $23 = $22;
+  SAFE_HEAP_STORE($23 | 0, $20 | 0, 4);
+  $24 = $22 + 4 | 0;
+  $25 = $24;
+  SAFE_HEAP_STORE($25 | 0, $21 | 0, 4);
+  $26 = ($20 | 0) == 0;
+  $27 = ($21 | 0) == 0;
+  $28 = $26 & $27;
+  if ($28) {
+   $29 = $0 + 136 | 0;
+   $30 = $29;
+   $31 = $30;
+   $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+   $33 = $30 + 4 | 0;
+   $34 = $33;
+   $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+   $36 = _i64Add($32 | 0, $35 | 0, 1, 0) | 0;
+   $37 = tempRet0;
+   $38 = $29;
+   $39 = $38;
+   SAFE_HEAP_STORE($39 | 0, $36 | 0, 4);
+   $40 = $38 + 4 | 0;
+   $41 = $40;
+   SAFE_HEAP_STORE($41 | 0, $37 | 0, 4);
+   $43 = 0;
+  } else {
+   $43 = 0;
+  }
+ } else {
+  $43 = $10;
+ }
+ $42 = ($1 | 0) == (0 | 0);
+ if ($42) {
+  return;
+ }
+ $44 = ($43 | 0) == 0;
+ L14 : do {
+  if ($44) {
+   $$1 = $2;
+   $$164 = $1;
+  } else {
+   $45 = ($2 | 0) == 0;
+   L16 : do {
+    if (!$45) {
+     $46 = $43 >>> 0 < $4 >>> 0;
+     if ($46) {
+      $$0637689 = $1;
+      $$07788 = $2;
+      $49 = $43;
+      while (1) {
+       $47 = SAFE_HEAP_LOAD($$0637689 >> 0 | 0, 1, 0) | 0 | 0;
+       $48 = $49 + 1 | 0;
+       SAFE_HEAP_STORE($9 | 0, $48 | 0, 4);
+       $50 = $0 + $49 | 0;
+       SAFE_HEAP_STORE($50 >> 0 | 0, $47 | 0, 1);
+       $51 = $$07788 + -1 | 0;
+       $52 = ($51 | 0) == 0;
+       if ($52) {
+        break L16;
+       }
+       $53 = $$0637689 + 1 | 0;
+       $$pre = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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 = $43;
+     }
+     $55 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+     $56 = $55 >>> 0 > 128;
+     if ($56) {
+      __gcry_bug(49719, 112, 49733);
+     }
+     $57 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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[(SAFE_FT_MASK($57 | 0, 127 | 0) | 0) & 127]($0, 
$0, 1) | 0;
+     ___gcry_burn_stack($60);
+     SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+     $61 = $0 + 128 | 0;
+     $62 = $61;
+     $63 = $62;
+     $64 = SAFE_HEAP_LOAD($63 | 0, 4, 0) | 0 | 0;
+     $65 = $62 + 4 | 0;
+     $66 = $65;
+     $67 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+     $68 = _i64Add($64 | 0, $67 | 0, 1, 0) | 0;
+     $69 = tempRet0;
+     $70 = $61;
+     $71 = $70;
+     SAFE_HEAP_STORE($71 | 0, $68 | 0, 4);
+     $72 = $70 + 4 | 0;
+     $73 = $72;
+     SAFE_HEAP_STORE($73 | 0, $69 | 0, 4);
+     $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 = SAFE_HEAP_LOAD($79 | 0, 4, 0) | 0 | 0;
+     $81 = $78 + 4 | 0;
+     $82 = $81;
+     $83 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+     $84 = _i64Add($80 | 0, $83 | 0, 1, 0) | 0;
+     $85 = tempRet0;
+     $86 = $77;
+     $87 = $86;
+     SAFE_HEAP_STORE($87 | 0, $84 | 0, 4);
+     $88 = $86 + 4 | 0;
+     $89 = $88;
+     SAFE_HEAP_STORE($89 | 0, $85 | 0, 4);
+     $$1 = $$077$lcssa;
+     $$164 = $$06376$lcssa;
+     break L14;
+    }
+   } while (0);
+   $90 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+   $91 = $90 >>> 0 > 128;
+   if ($91) {
+    __gcry_bug(49719, 112, 49733);
+   }
+   $92 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $93 = ($92 | 0) == (0 | 0);
+   if ($93) {
+    return;
+   }
+   $94 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $95 = ($94 | 0) == ($90 | 0);
+   if (!$95) {
+    return;
+   }
+   $96 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($92 | 0, 127 | 0) | 0) & 127]($0, 
$0, 1) | 0;
+   ___gcry_burn_stack($96);
+   SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+   $97 = $0 + 128 | 0;
+   $98 = $97;
+   $99 = $98;
+   $100 = SAFE_HEAP_LOAD($99 | 0, 4, 0) | 0 | 0;
+   $101 = $98 + 4 | 0;
+   $102 = $101;
+   $103 = SAFE_HEAP_LOAD($102 | 0, 4, 0) | 0 | 0;
+   $104 = _i64Add($100 | 0, $103 | 0, 1, 0) | 0;
+   $105 = tempRet0;
+   $106 = $97;
+   $107 = $106;
+   SAFE_HEAP_STORE($107 | 0, $104 | 0, 4);
+   $108 = $106 + 4 | 0;
+   $109 = $108;
+   SAFE_HEAP_STORE($109 | 0, $105 | 0, 4);
+   $110 = ($104 | 0) == 0;
+   $111 = ($105 | 0) == 0;
+   $112 = $110 & $111;
+   if (!$112) {
+    return;
+   }
+   $113 = $0 + 136 | 0;
+   $114 = $113;
+   $115 = $114;
+   $116 = SAFE_HEAP_LOAD($115 | 0, 4, 0) | 0 | 0;
+   $117 = $114 + 4 | 0;
+   $118 = $117;
+   $119 = SAFE_HEAP_LOAD($118 | 0, 4, 0) | 0 | 0;
+   $120 = _i64Add($116 | 0, $119 | 0, 1, 0) | 0;
+   $121 = tempRet0;
+   $122 = $113;
+   $123 = $122;
+   SAFE_HEAP_STORE($123 | 0, $120 | 0, 4);
+   $124 = $122 + 4 | 0;
+   $125 = $124;
+   SAFE_HEAP_STORE($125 | 0, $121 | 0, 4);
+   return;
+  }
+ } while (0);
+ $126 = $$1 >>> 0 < $4 >>> 0;
+ if ($126) {
+  $$168 = 0;
+  $$2 = $$1;
+  $$265 = $$164;
+ } else {
+  $127 = ($$1 >>> 0) / ($4 >>> 0) & -1;
+  $128 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $129 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($128 | 0, 127 | 0) | 0) & 127]($0, 
$$164, $127) | 0;
+  SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+  $130 = $0 + 128 | 0;
+  $131 = $130;
+  $132 = $131;
+  $133 = SAFE_HEAP_LOAD($132 | 0, 4, 0) | 0 | 0;
+  $134 = $131 + 4 | 0;
+  $135 = $134;
+  $136 = SAFE_HEAP_LOAD($135 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($147 | 0, 4, 0) | 0 | 0;
+  $149 = $146 + 4 | 0;
+  $150 = $149;
+  $151 = SAFE_HEAP_LOAD($150 | 0, 4, 0) | 0 | 0;
+  $152 = _i64Add($144 | 0, 0, $148 | 0, $151 | 0) | 0;
+  $153 = tempRet0;
+  $154 = $145;
+  $155 = $154;
+  SAFE_HEAP_STORE($155 | 0, $152 | 0, 4);
+  $156 = $154 + 4 | 0;
+  $157 = $156;
+  SAFE_HEAP_STORE($157 | 0, $153 | 0, 4);
+  $158 = $130;
+  $159 = $158;
+  SAFE_HEAP_STORE($159 | 0, $137 | 0, 4);
+  $160 = $158 + 4 | 0;
+  $161 = $160;
+  SAFE_HEAP_STORE($161 | 0, $138 | 0, 4);
+  $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;
+ } else {
+  $$36673 = $$265;
+  $$374 = $$2;
+ }
+ while (1) {
+  $166 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $167 = $166 >>> 0 < $4 >>> 0;
+  if (!$167) {
+   label = 29;
+   break;
+  }
+  $168 = $$36673 + 1 | 0;
+  $169 = SAFE_HEAP_LOAD($$36673 >> 0 | 0, 1, 0) | 0 | 0;
+  $170 = $166 + 1 | 0;
+  SAFE_HEAP_STORE($9 | 0, $170 | 0, 4);
+  $171 = $0 + $166 | 0;
+  SAFE_HEAP_STORE($171 >> 0 | 0, $169 | 0, 1);
+  $172 = $$374 + -1 | 0;
+  $173 = ($172 | 0) == 0;
+  if ($173) {
+   label = 29;
+   break;
+  } else {
+   $$36673 = $168;
+   $$374 = $172;
+  }
+ }
+ if ((label | 0) == 29) {
+  return;
+ }
+}
+
+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 $$$068 = 0, $$06183 = 0, $$062$lcssa92 = 0, $$06277 = 0, $$063$lcssa91 = 
0, $$06376 = 0, $$067 = 0, $$068$lcssa = 0, $$06882 = 0, $$07081 = 0, $$084 = 
0, $$1 = 0, $$164 = 0, $$3$ph = 0, $$366$ph = 0, $$36674 = 0, $$375 = 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, $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, $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;
+ 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, $scevgep = 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;
+ } else {
+  $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;
+   $28 = $$06882 >>> 0 < 36;
+   $$$068 = $28 ? 36 : $$06882;
+   $29 = $$06183;
+   $30 = $$07081;
+   $31 = $29 | $30;
+   $32 = $31 & 3;
+   $33 = ($32 | 0) == 0;
+   if ($33) {
+    $112 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $113 = $$07081 + 4 | 0;
+    $114 = SAFE_HEAP_LOAD($$07081 | 0, 4, 0) | 0 | 0;
+    $115 = $114 ^ $112;
+    $116 = $$06183 + 4 | 0;
+    SAFE_HEAP_STORE($$06183 | 0, $115 | 0, 4);
+    $117 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $118 = $$07081 + 8 | 0;
+    $119 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+    $120 = $119 ^ $117;
+    $121 = $$06183 + 8 | 0;
+    SAFE_HEAP_STORE($116 | 0, $120 | 0, 4);
+    $122 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    $123 = $$07081 + 12 | 0;
+    $124 = SAFE_HEAP_LOAD($118 | 0, 4, 0) | 0 | 0;
+    $125 = $124 ^ $122;
+    $126 = $$06183 + 12 | 0;
+    SAFE_HEAP_STORE($121 | 0, $125 | 0, 4);
+    $127 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    $128 = SAFE_HEAP_LOAD($123 | 0, 4, 0) | 0 | 0;
+    $129 = $128 ^ $127;
+    SAFE_HEAP_STORE($126 | 0, $129 | 0, 4);
+   } else {
+    $34 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+    $35 = $$07081 + 1 | 0;
+    $36 = SAFE_HEAP_LOAD($$07081 >> 0 | 0, 1, 0) | 0 | 0;
+    $37 = $36 ^ $34;
+    $38 = $$06183 + 1 | 0;
+    SAFE_HEAP_STORE($$06183 >> 0 | 0, $37 | 0, 1);
+    $39 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+    $40 = $$07081 + 2 | 0;
+    $41 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+    $42 = $41 ^ $39;
+    $43 = $$06183 + 2 | 0;
+    SAFE_HEAP_STORE($38 >> 0 | 0, $42 | 0, 1);
+    $44 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+    $45 = $$07081 + 3 | 0;
+    $46 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+    $47 = $46 ^ $44;
+    $48 = $$06183 + 3 | 0;
+    SAFE_HEAP_STORE($43 >> 0 | 0, $47 | 0, 1);
+    $49 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+    $50 = $$07081 + 4 | 0;
+    $51 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+    $52 = $51 ^ $49;
+    $53 = $$06183 + 4 | 0;
+    SAFE_HEAP_STORE($48 >> 0 | 0, $52 | 0, 1);
+    $54 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+    $55 = $$07081 + 5 | 0;
+    $56 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+    $57 = $56 ^ $54;
+    $58 = $$06183 + 5 | 0;
+    SAFE_HEAP_STORE($53 >> 0 | 0, $57 | 0, 1);
+    $59 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+    $60 = $$07081 + 6 | 0;
+    $61 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+    $62 = $61 ^ $59;
+    $63 = $$06183 + 6 | 0;
+    SAFE_HEAP_STORE($58 >> 0 | 0, $62 | 0, 1);
+    $64 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+    $65 = $$07081 + 7 | 0;
+    $66 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+    $67 = $66 ^ $64;
+    $68 = $$06183 + 7 | 0;
+    SAFE_HEAP_STORE($63 >> 0 | 0, $67 | 0, 1);
+    $69 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+    $70 = $$07081 + 8 | 0;
+    $71 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+    $72 = $71 ^ $69;
+    $73 = $$06183 + 8 | 0;
+    SAFE_HEAP_STORE($68 >> 0 | 0, $72 | 0, 1);
+    $74 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+    $75 = $$07081 + 9 | 0;
+    $76 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+    $77 = $76 ^ $74;
+    $78 = $$06183 + 9 | 0;
+    SAFE_HEAP_STORE($73 >> 0 | 0, $77 | 0, 1);
+    $79 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+    $80 = $$07081 + 10 | 0;
+    $81 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+    $82 = $81 ^ $79;
+    $83 = $$06183 + 10 | 0;
+    SAFE_HEAP_STORE($78 >> 0 | 0, $82 | 0, 1);
+    $84 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+    $85 = $$07081 + 11 | 0;
+    $86 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+    $87 = $86 ^ $84;
+    $88 = $$06183 + 11 | 0;
+    SAFE_HEAP_STORE($83 >> 0 | 0, $87 | 0, 1);
+    $89 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+    $90 = $$07081 + 12 | 0;
+    $91 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+    $92 = $91 ^ $89;
+    $93 = $$06183 + 12 | 0;
+    SAFE_HEAP_STORE($88 >> 0 | 0, $92 | 0, 1);
+    $94 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+    $95 = $$07081 + 13 | 0;
+    $96 = SAFE_HEAP_LOAD($90 >> 0 | 0, 1, 0) | 0 | 0;
+    $97 = $96 ^ $94;
+    $98 = $$06183 + 13 | 0;
+    SAFE_HEAP_STORE($93 >> 0 | 0, $97 | 0, 1);
+    $99 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+    $100 = $$07081 + 14 | 0;
+    $101 = SAFE_HEAP_LOAD($95 >> 0 | 0, 1, 0) | 0 | 0;
+    $102 = $101 ^ $99;
+    $103 = $$06183 + 14 | 0;
+    SAFE_HEAP_STORE($98 >> 0 | 0, $102 | 0, 1);
+    $104 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+    $105 = $$07081 + 15 | 0;
+    $106 = SAFE_HEAP_LOAD($100 >> 0 | 0, 1, 0) | 0 | 0;
+    $107 = $106 ^ $104;
+    $108 = $$06183 + 15 | 0;
+    SAFE_HEAP_STORE($103 >> 0 | 0, $107 | 0, 1);
+    $109 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+    $110 = SAFE_HEAP_LOAD($105 >> 0 | 0, 1, 0) | 0 | 0;
+    $111 = $110 ^ $109;
+    SAFE_HEAP_STORE($108 >> 0 | 0, $111 | 0, 1);
+   }
+   $130 = $$06183 + 16 | 0;
+   $131 = $$07081 + 16 | 0;
+   $$067 = 16;
+   while (1) {
+    $132 = ($$067 | 0) > 0;
+    if (!$132) {
+     break;
+    }
+    $133 = $$067 + -1 | 0;
+    $134 = $1 + $133 | 0;
+    $135 = SAFE_HEAP_LOAD($134 >> 0 | 0, 1, 0) | 0 | 0;
+    $136 = $135 + 1 << 24 >> 24;
+    SAFE_HEAP_STORE($134 >> 0 | 0, $136 | 0, 1);
+    $137 = $136 << 24 >> 24 == 0;
+    if ($137) {
+     $$067 = $133;
+    } else {
+     break;
+    }
+   }
+   $138 = $$084 + -1 | 0;
+   $139 = ($138 | 0) == 0;
+   if ($139) {
+    $$068$lcssa = $$$068;
+    break;
+   } else {
+    $$06183 = $130;
+    $$06882 = $$$068;
+    $$07081 = $131;
+    $$084 = $138;
+   }
+  }
+ }
+ $25 = $5;
+ $26 = $25 & 4;
+ $27 = ($26 | 0) == 0;
+ if ($27) {
+  $$062$lcssa92 = 16;
+  $$063$lcssa91 = $5;
+  label = 13;
+ } else {
+  $$06277 = 16;
+  $$06376 = $5;
+  while (1) {
+   SAFE_HEAP_STORE($$06376 >> 0 | 0, 0 | 0, 1);
+   $140 = $$06376 + 1 | 0;
+   $141 = $$06277 + -1 | 0;
+   $142 = $140;
+   $143 = $142 & 7;
+   $144 = ($143 | 0) != 0;
+   $145 = ($141 | 0) != 0;
+   $146 = $145 & $144;
+   if ($146) {
+    $$06277 = $141;
+    $$06376 = $140;
+   } else {
+    break;
+   }
+  }
+  $147 = $141 >>> 0 < 8;
+  if ($147) {
+   $$3$ph = $141;
+   $$366$ph = $140;
+  } else {
+   $$062$lcssa92 = $141;
+   $$063$lcssa91 = $140;
+   label = 13;
+  }
+ }
+ if ((label | 0) == 13) {
+  $148 = $$062$lcssa92 + -8 | 0;
+  $149 = $148 & -8;
+  $150 = $149 + 8 | 0;
+  $$1 = $$062$lcssa92;
+  $$164 = $$063$lcssa91;
+  while (1) {
+   $151 = $$164;
+   $152 = $151;
+   SAFE_HEAP_STORE($152 | 0, 0 | 0, 4);
+   $153 = $151 + 4 | 0;
+   $154 = $153;
+   SAFE_HEAP_STORE($154 | 0, 0 | 0, 4);
+   $155 = $$1 + -8 | 0;
+   $156 = $$164 + 8 | 0;
+   $157 = $155 >>> 0 > 7;
+   if ($157) {
+    $$1 = $155;
+    $$164 = $156;
+   } else {
+    break;
+   }
+  }
+  $158 = $148 - $149 | 0;
+  $scevgep = $$063$lcssa91 + $150 | 0;
+  $$3$ph = $158;
+  $$366$ph = $scevgep;
+ }
+ $159 = ($$3$ph | 0) == 0;
+ if ($159) {
+  ___gcry_burn_stack($$068$lcssa);
+  STACKTOP = sp;
+  return;
+ } else {
+  $$36674 = $$366$ph;
+  $$375 = $$3$ph;
+ }
+ while (1) {
+  SAFE_HEAP_STORE($$36674 >> 0 | 0, 0 | 0, 1);
+  $160 = $$36674 + 1 | 0;
+  $161 = $$375 + -1 | 0;
+  $162 = ($161 | 0) == 0;
+  if ($162) {
+   break;
+  } else {
+   $$36674 = $160;
+   $$375 = $161;
+  }
+ }
+ ___gcry_burn_stack($$068$lcssa);
+ STACKTOP = sp;
+ return;
+}
+
+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, $$016$i = 0, $$016$i83 = 0, $$082 = 0, $$mask = 0, $$pre = 0, 
$$pre86 = 0, $$pre90 = 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, $13 = 0;
+ var $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, $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, $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$i = 0, $exitcond$i84 = 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 + 40 | 0;
+ $10 = sp + 36 | 0;
+ $11 = sp + 32 | 0;
+ $12 = sp + 28 | 0;
+ $13 = sp + 24 | 0;
+ $14 = sp + 12 | 0;
+ $15 = sp;
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+ dest = $9;
+ stop = dest + 48 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  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 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $26 = $1 + 4 | 0;
+ $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+ $28 = $1 + 8 | 0;
+ $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+ $30 = $1 + 12 | 0;
+ $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+ $32 = $1 + 16 | 0;
+ $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+ $34 = __gcry_mpi_ec_p_internal_new($25, $27, 0, $29, $31, $33) | 0;
+ $35 = $34 + 12 | 0;
+ $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+ $41 = __gcry_ecc_eddsa_compute_h_d($8, $40, $34) | 0;
+ $42 = ($41 | 0) == 0;
+ $43 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ do {
+  if ($42) {
+   __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;
+     $127 = 0;
+     break;
+    }
+    $57 = __gcry_get_debug_flag(1) | 0;
+    $58 = ($57 | 0) == 0;
+    if (!$58) {
+     $59 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     $60 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printhex(35747, $59, $60);
+    }
+   } else {
+    $46 = __gcry_ecc_eddsa_decodepoint($5, $34, $15, $12, $13) | 0;
+    $47 = ($46 | 0) == 0;
+    if (!$47) {
+     $$082 = $46;
+     $127 = 0;
+     break;
+    }
+    $48 = __gcry_get_debug_flag(1) | 0;
+    $49 = ($48 | 0) == 0;
+    if (!$49) {
+     $50 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     $51 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printhex(35740, $50, $51);
+    }
+    $52 = __gcry_mpi_ec_curve_point($15, $34) | 0;
+    $53 = ($52 | 0) == 0;
+    if ($53) {
+     $$082 = 195;
+     $127 = 0;
+     break;
+    }
+   }
+   $61 = __gcry_mpi_get_opaque($0, $7) | 0;
+   $62 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $63 = $62 + 7 | 0;
+   $64 = $63 >>> 3;
+   $65 = __gcry_get_debug_flag(1) | 0;
+   $66 = ($65 | 0) == 0;
+   if (!$66) {
+    __gcry_log_printhex(35754, $61, $64);
+   }
+   $67 = $9 + 12 | 0;
+   SAFE_HEAP_STORE($67 | 0, $45 | 0, 4);
+   $68 = $9 + 4 | 0;
+   SAFE_HEAP_STORE($68 | 0, 32 | 0, 4);
+   $69 = $9 + 8 | 0;
+   SAFE_HEAP_STORE($69 | 0, 32 | 0, 4);
+   $70 = $9 + 28 | 0;
+   SAFE_HEAP_STORE($70 | 0, $61 | 0, 4);
+   $71 = $9 + 24 | 0;
+   SAFE_HEAP_STORE($71 | 0, $64 | 0, 4);
+   $72 = __gcry_md_hash_buffers($4, 0, $43, $9, 2) | 0;
+   $73 = ($72 | 0) == 0;
+   if ($73) {
+    $$016$i = 0;
+    while (1) {
+     $74 = $43 + $$016$i | 0;
+     $75 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+     $76 = 63 - $$016$i | 0;
+     $77 = $43 + $76 | 0;
+     $78 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($74 >> 0 | 0, $78 | 0, 1);
+     SAFE_HEAP_STORE($77 >> 0 | 0, $75 | 0, 1);
+     $79 = $$016$i + 1 | 0;
+     $exitcond$i = ($79 | 0) == 32;
+     if ($exitcond$i) {
+      break;
+     } else {
+      $$016$i = $79;
+     }
+    }
+    $80 = __gcry_get_debug_flag(1) | 0;
+    $81 = ($80 | 0) == 0;
+    if (!$81) {
+     __gcry_log_printhex(52990, $43, 64);
+    }
+    __gcry_mpi_set_buffer($24, $43, 64, 0);
+    $82 = $1 + 20 | 0;
+    __gcry_mpi_ec_mul_point($14, $24, $82, $34);
+    $83 = __gcry_get_debug_flag(1) | 0;
+    $84 = ($83 | 0) == 0;
+    if (!$84) {
+     __gcry_mpi_point_log(35761, $14, $34);
+    }
+    $85 = __gcry_ecc_eddsa_encodepoint($14, $34, $22, $23, 0, $10, $11) | 0;
+    $86 = ($85 | 0) == 0;
+    if (!$86) {
+     $$pre90 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $$082 = $85;
+     $127 = $$pre90;
+     break;
+    }
+    $87 = __gcry_get_debug_flag(1) | 0;
+    $88 = ($87 | 0) == 0;
+    if ($88) {
+     $$pre = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $$pre86 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+     $89 = $$pre;
+     $104 = $89;
+     $93 = $$pre;
+     $94 = $$pre86;
+    } else {
+     $90 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $91 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printhex(35766, $90, $91);
+     $92 = $90;
+     $104 = $90;
+     $93 = $92;
+     $94 = $91;
+    }
+    SAFE_HEAP_STORE($67 | 0, $93 | 0, 4);
+    SAFE_HEAP_STORE($68 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE($69 | 0, $94 | 0, 4);
+    $95 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($70 | 0, $95 | 0, 4);
+    $96 = $9 + 20 | 0;
+    SAFE_HEAP_STORE($96 | 0, 0 | 0, 4);
+    $97 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($71 | 0, $97 | 0, 4);
+    $98 = $9 + 44 | 0;
+    SAFE_HEAP_STORE($98 | 0, $61 | 0, 4);
+    $99 = $9 + 36 | 0;
+    SAFE_HEAP_STORE($99 | 0, 0 | 0, 4);
+    $100 = $9 + 40 | 0;
+    SAFE_HEAP_STORE($100 | 0, $64 | 0, 4);
+    $101 = __gcry_md_hash_buffers($4, 0, $43, $9, 3) | 0;
+    $102 = ($101 | 0) == 0;
+    if ($102) {
+     $103 = $94 << 3;
+     __gcry_mpi_set_opaque($2, $104, $103) | 0;
+     SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+     $$016$i83 = 0;
+     while (1) {
+      $105 = $43 + $$016$i83 | 0;
+      $106 = SAFE_HEAP_LOAD($105 >> 0 | 0, 1, 0) | 0 | 0;
+      $107 = 63 - $$016$i83 | 0;
+      $108 = $43 + $107 | 0;
+      $109 = SAFE_HEAP_LOAD($108 >> 0 | 0, 1, 0) | 0 | 0;
+      SAFE_HEAP_STORE($105 >> 0 | 0, $109 | 0, 1);
+      SAFE_HEAP_STORE($108 >> 0 | 0, $106 | 0, 1);
+      $110 = $$016$i83 + 1 | 0;
+      $exitcond$i84 = ($110 | 0) == 32;
+      if ($exitcond$i84) {
+       break;
+      } else {
+       $$016$i83 = $110;
+      }
+     }
+     $111 = __gcry_get_debug_flag(1) | 0;
+     $112 = ($111 | 0) == 0;
+     if (!$112) {
+      __gcry_log_printhex(35773, $43, 64);
+     }
+     __gcry_mpi_set_buffer($3, $43, 64, 0);
+     $113 = $1 + 32 | 0;
+     $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mulm($3, $3, $21, $114);
+     $115 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_addm($3, $3, $24, $115);
+     $116 = __gcry_mpi_get_buffer($3, 32, $6, 0) | 0;
+     $117 = ($116 | 0) == (0 | 0);
+     if ($117) {
+      $119 = _gpg_err_code_from_syserror() | 0;
+      $120 = ($119 | 0) == 0;
+      if ($120) {
+       $123 = 0;
+       $124 = $94;
+      } else {
+       $$082 = $119;
+       $127 = 0;
+       break;
+      }
+     } else {
+      SAFE_HEAP_STORE($10 | 0, $116 | 0, 4);
+      $118 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      SAFE_HEAP_STORE($11 | 0, $118 | 0, 4);
+      $123 = $116;
+      $124 = $118;
+     }
+     $121 = __gcry_get_debug_flag(1) | 0;
+     $122 = ($121 | 0) == 0;
+     if (!$122) {
+      __gcry_log_printhex(35780, $123, $124);
+     }
+     $125 = $124 << 3;
+     __gcry_mpi_set_opaque($3, $123, $125) | 0;
+     SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+     $$082 = 0;
+     $127 = 0;
+    } else {
+     $$082 = $101;
+     $127 = $104;
+    }
+   } else {
+    $$082 = $72;
+    $127 = 0;
+   }
+  } else {
+   $$082 = $41;
+   $127 = 0;
+  }
+ } while (0);
+ __gcry_mpi_release($21);
+ __gcry_mpi_release($22);
+ __gcry_mpi_release($23);
+ __gcry_mpi_release($24);
+ __gcry_free($43);
+ __gcry_mpi_ec_free($34);
+ __gcry_mpi_point_free_parts($14);
+ __gcry_mpi_point_free_parts($15);
+ $126 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ __gcry_free($126);
+ __gcry_free($127);
+ $$0 = $$082;
+ STACKTOP = sp;
+ return $$0 | 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$lcssa$i = 0, $$0$lcssa$i$us = 0, $$0$us = 0, $$024$lcssa$i = 
0, $$024$lcssa$i$us = 0, $$02432$i = 0, $$02432$i$us = 0, $$025$lcssa$i = 0, 
$$025$lcssa$i$us = 0, $$02531$i = 0, $$02531$i$us = 0, $$026$ph$i = 0, 
$$026$ph$i$us = 0, $$02629$i = 0, $$02629$i$us = 0, $$027$ph$i = 0, 
$$027$ph$i$us = 0, $$02728$i = 0, $$02728$i$us = 0;
+ var $$033$i = 0, $$033$i$us = 0, $$070 = 0, $$070$us = 0, $$073 = 0, $$073$ph 
= 0, $$073$us = 0, $$076 = 0, $$076$us = 0, $$1 = 0, $$1$ph$i = 0, $$1$ph$i$us 
= 0, $$1$us = 0, $$130$i = 0, $$130$i$us = 0, $$171 = 0, $$171$us = 0, $$174 = 
0, $$174$us = 0, $$177 = 0;
+ var $$177$us = 0, $$2 = 0, $$272 = 0, $$275 = 0, $$3 = 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, $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, $or$cond = 0, $or$cond3 = 0;
+ var $or$cond3$us = 0, $or$cond83 = 0, $scevgep$i = 0, $scevgep$i$us = 0, 
$scevgep42$i = 0, $scevgep42$i$us = 0, $scevgep88 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $5 = $0 + 160 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $0 + 224 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = ($3 | 0) == 0;
+ if ($9) {
+  $10 = ($6 | 0) != 0;
+  $11 = ($4 | 0) != 0;
+  $or$cond = $11 & $10;
+  if ($or$cond) {
+   $$073$ph = 0;
+  } else {
+   return;
+  }
+ } else {
+  $$073$ph = $3;
+ }
+ $12 = ($4 | 0) == 0;
+ $13 = $0 + 144 | 0;
+ L5 : do {
+  if ($12) {
+   $$0$us = 0;
+   $$070$us = $2;
+   $$073$us = $$073$ph;
+   $$076$us = $6;
+   L6 : while (1) {
+    $14 = $$073$us + $$076$us | 0;
+    $15 = $14 >>> 0 < 16;
+    $16 = ($$076$us | 0) != 0;
+    $or$cond3$us = $16 | $15;
+    if ($or$cond3$us) {
+     $17 = 16 - $$076$us | 0;
+     $18 = $17 >>> 0 < $$073$us >>> 0;
+     $19 = $18 ? $17 : $$073$us;
+     $20 = ($0 + 144 | 0) + $$076$us | 0;
+     $21 = $20;
+     $22 = $$070$us;
+     $23 = $22 | $21;
+     $24 = $23 & 3;
+     $25 = ($24 | 0) == 0;
+     if ($25) {
+      $26 = $19 >>> 0 > 3;
+      if ($26) {
+       $27 = $19 + -4 | 0;
+       $28 = $27 & -4;
+       $29 = $28 + 4 | 0;
+       $scevgep$i$us = $$070$us + $29 | 0;
+       $$02432$i$us = $$070$us;
+       $$02531$i$us = $20;
+       $$033$i$us = $19;
+       while (1) {
+        $30 = $$02432$i$us + 4 | 0;
+        $31 = SAFE_HEAP_LOAD($$02432$i$us | 0, 4, 0) | 0 | 0;
+        $32 = $$02531$i$us + 4 | 0;
+        SAFE_HEAP_STORE($$02531$i$us | 0, $31 | 0, 4);
+        $33 = $$033$i$us + -4 | 0;
+        $34 = $33 >>> 0 > 3;
+        if ($34) {
+         $$02432$i$us = $30;
+         $$02531$i$us = $32;
+         $$033$i$us = $33;
+        } else {
+         break;
+        }
+       }
+       $scevgep42$i$us = $20 + $29 | 0;
+       $35 = $27 - $28 | 0;
+       $$0$lcssa$i$us = $35;
+       $$024$lcssa$i$us = $scevgep$i$us;
+       $$025$lcssa$i$us = $scevgep42$i$us;
+      } else {
+       $$0$lcssa$i$us = $19;
+       $$024$lcssa$i$us = $$070$us;
+       $$025$lcssa$i$us = $20;
+      }
+      $$026$ph$i$us = $$024$lcssa$i$us;
+      $$027$ph$i$us = $$025$lcssa$i$us;
+      $$1$ph$i$us = $$0$lcssa$i$us;
+     } else {
+      $$026$ph$i$us = $$070$us;
+      $$027$ph$i$us = $20;
+      $$1$ph$i$us = $19;
+     }
+     $36 = ($$1$ph$i$us | 0) == 0;
+     if (!$36) {
+      $$02629$i$us = $$026$ph$i$us;
+      $$02728$i$us = $$027$ph$i$us;
+      $$130$i$us = $$1$ph$i$us;
+      while (1) {
+       $37 = $$02629$i$us + 1 | 0;
+       $38 = SAFE_HEAP_LOAD($$02629$i$us >> 0 | 0, 1, 0) | 0 | 0;
+       $39 = $$02728$i$us + 1 | 0;
+       SAFE_HEAP_STORE($$02728$i$us >> 0 | 0, $38 | 0, 1);
+       $40 = $$130$i$us + -1 | 0;
+       $41 = ($40 | 0) == 0;
+       if ($41) {
+        break;
+       } else {
+        $$02629$i$us = $37;
+        $$02728$i$us = $39;
+        $$130$i$us = $40;
+       }
+      }
+     }
+     $42 = $19 + $$076$us | 0;
+     $43 = $$070$us + $19 | 0;
+     $44 = $$073$us - $19 | 0;
+     $$171$us = $43;
+     $$174$us = $44;
+     $$177$us = $42;
+    } else {
+     $$171$us = $$070$us;
+     $$174$us = $$073$us;
+     $$177$us = 0;
+    }
+    $45 = ($$174$us | 0) == 0;
+    if ($45) {
+     $$3 = $$0$us;
+     $$5 = $$177$us;
+     break L5;
+    }
+    switch ($$177$us | 0) {
+    case 0:
+     {
+      $$1$us = $$0$us;
+      break;
+     }
+    case 16:
+     {
+      $46 = FUNCTION_TABLE_iiiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 
127]($0, $1, $13, 1) | 0;
+      $$1$us = $46;
+      break;
+     }
+    default:
+     {
+      break L6;
+     }
+    }
+    $47 = $$174$us >>> 4;
+    $48 = ($47 | 0) == 0;
+    $49 = $47 << 4;
+    if ($48) {
+     $$0$us = $$1$us;
+     $$070$us = $$171$us;
+     $$073$us = $$174$us;
+     $$076$us = 0;
+     continue;
+    }
+    $50 = $$174$us - $49 | 0;
+    $51 = $$171$us + $49 | 0;
+    $52 = FUNCTION_TABLE_iiiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($0, 
$1, $$171$us, $47) | 0;
+    $53 = ($50 | 0) == 0;
+    if ($53) {
+     $$3 = $52;
+     $$5 = 0;
+     break L5;
+    } else {
+     $$0$us = $52;
+     $$070$us = $51;
+     $$073$us = $50;
+     $$076$us = 0;
+    }
+   }
+   __gcry_assert_failed(46625, 46645, 499, 46658);
+  } else {
+   $$0 = 0;
+   $$070 = $2;
+   $$073 = $$073$ph;
+   $$076 = $6;
+   L30 : while (1) {
+    $54 = $$073 + $$076 | 0;
+    $55 = $54 >>> 0 < 16;
+    $56 = ($$076 | 0) != 0;
+    $or$cond3 = $56 | $55;
+    if ($or$cond3) {
+     $57 = 16 - $$076 | 0;
+     $58 = $57 >>> 0 < $$073 >>> 0;
+     $59 = $58 ? $57 : $$073;
+     $60 = ($0 + 144 | 0) + $$076 | 0;
+     $61 = $60;
+     $62 = $$070;
+     $63 = $62 | $61;
+     $64 = $63 & 3;
+     $65 = ($64 | 0) == 0;
+     if ($65) {
+      $66 = $59 >>> 0 > 3;
+      if ($66) {
+       $67 = $59 + -4 | 0;
+       $68 = $67 & -4;
+       $69 = $68 + 4 | 0;
+       $scevgep$i = $$070 + $69 | 0;
+       $$02432$i = $$070;
+       $$02531$i = $60;
+       $$033$i = $59;
+       while (1) {
+        $70 = $$02432$i + 4 | 0;
+        $71 = SAFE_HEAP_LOAD($$02432$i | 0, 4, 0) | 0 | 0;
+        $72 = $$02531$i + 4 | 0;
+        SAFE_HEAP_STORE($$02531$i | 0, $71 | 0, 4);
+        $73 = $$033$i + -4 | 0;
+        $74 = $73 >>> 0 > 3;
+        if ($74) {
+         $$02432$i = $70;
+         $$02531$i = $72;
+         $$033$i = $73;
+        } else {
+         break;
+        }
+       }
+       $scevgep42$i = $60 + $69 | 0;
+       $75 = $67 - $68 | 0;
+       $$0$lcssa$i = $75;
+       $$024$lcssa$i = $scevgep$i;
+       $$025$lcssa$i = $scevgep42$i;
+      } else {
+       $$0$lcssa$i = $59;
+       $$024$lcssa$i = $$070;
+       $$025$lcssa$i = $60;
+      }
+      $$026$ph$i = $$024$lcssa$i;
+      $$027$ph$i = $$025$lcssa$i;
+      $$1$ph$i = $$0$lcssa$i;
+     } else {
+      $$026$ph$i = $$070;
+      $$027$ph$i = $60;
+      $$1$ph$i = $59;
+     }
+     $76 = ($$1$ph$i | 0) == 0;
+     if (!$76) {
+      $$02629$i = $$026$ph$i;
+      $$02728$i = $$027$ph$i;
+      $$130$i = $$1$ph$i;
+      while (1) {
+       $77 = $$02629$i + 1 | 0;
+       $78 = SAFE_HEAP_LOAD($$02629$i >> 0 | 0, 1, 0) | 0 | 0;
+       $79 = $$02728$i + 1 | 0;
+       SAFE_HEAP_STORE($$02728$i >> 0 | 0, $78 | 0, 1);
+       $80 = $$130$i + -1 | 0;
+       $81 = ($80 | 0) == 0;
+       if ($81) {
+        break;
+       } else {
+        $$02629$i = $77;
+        $$02728$i = $79;
+        $$130$i = $80;
+       }
+      }
+     }
+     $82 = $59 + $$076 | 0;
+     $83 = $$070 + $59 | 0;
+     $84 = $$073 - $59 | 0;
+     $$171 = $83;
+     $$174 = $84;
+     $$177 = $82;
+    } else {
+     $$171 = $$070;
+     $$174 = $$073;
+     $$177 = 0;
+    }
+    $85 = ($$174 | 0) == 0;
+    $86 = $$177 >>> 0 < 16;
+    $or$cond83 = $85 & $86;
+    if ($or$cond83) {
+     $scevgep88 = ($0 + 144 | 0) + $$177 | 0;
+     $87 = 16 - $$177 | 0;
+     _memset($scevgep88 | 0, 0, $87 | 0) | 0;
+     label = 33;
+    } else {
+     switch ($$177 | 0) {
+     case 0:
+      {
+       $$1 = $$0;
+       break;
+      }
+     case 16:
+      {
+       label = 33;
+       break;
+      }
+     default:
+      {
+       break L30;
+      }
+     }
+    }
+    if ((label | 0) == 33) {
+     label = 0;
+     $88 = FUNCTION_TABLE_iiiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($0, 
$1, $13, 1) | 0;
+     $$1 = $88;
+    }
+    $89 = $$174 >>> 4;
+    $90 = ($89 | 0) == 0;
+    $91 = $89 << 4;
+    if ($90) {
+     $$2 = $$1;
+     $$272 = $$171;
+     $$275 = $$174;
+    } else {
+     $92 = $$174 - $91 | 0;
+     $93 = $$171 + $91 | 0;
+     $94 = FUNCTION_TABLE_iiiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($0, 
$1, $$171, $89) | 0;
+     $$2 = $94;
+     $$272 = $93;
+     $$275 = $92;
+    }
+    $95 = ($$275 | 0) == 0;
+    if ($95) {
+     $$3 = $$2;
+     $$5 = 0;
+     break L5;
+    } else {
+     $$0 = $$2;
+     $$070 = $$272;
+     $$073 = $$275;
+     $$076 = 0;
+    }
+   }
+   __gcry_assert_failed(46625, 46645, 499, 46658);
+  }
+ } while (0);
+ SAFE_HEAP_STORE($5 | 0, $$5 | 0, 4);
+ $96 = ($$3 | 0) == 0;
+ if ($96) {
+  return;
+ }
+ ___gcry_burn_stack($$3);
+ return;
+}
+
+function __gcry_cipher_open_internal($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $$$i$i$i = 0, $$0 = 0, $$074$in = 0, $$075 = 0, $$1 = 0, $$176 = 
0, $$3 = 0, $$5 = 0, $$not = 0, $$ph = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 
0, $103 = 0, $104 = 0, $105 = 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, $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, $brmerge = 0, $cond = 0, 
$switch$split12D = 0, $switch$split2D = 0, $switch$split42D = 0, 
$switch$split72D = 0, label = 0;
+ var sp = 0;
+ sp = STACKTOP;
+ $4 = $3 & 1;
+ __gcry_fast_random_poll();
+ $5 = SAFE_HEAP_LOAD(1088 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == ($1 | 0);
+ if ($6) {
+  $$ph = 4352;
+  label = 6;
+ } else {
+  $7 = SAFE_HEAP_LOAD(1806 * 4 | 0, 4, 0) | 0 | 0;
+  $8 = ($7 | 0) == ($1 | 0);
+  if ($8) {
+   $$ph = 7224;
+   label = 6;
+  } else {
+   $9 = SAFE_HEAP_LOAD(1835 * 4 | 0, 4, 0) | 0 | 0;
+   $10 = ($9 | 0) == ($1 | 0);
+   if ($10) {
+    $$ph = 7340;
+    label = 6;
+   } else {
+    $11 = SAFE_HEAP_LOAD(1987 * 4 | 0, 4, 0) | 0 | 0;
+    $12 = ($11 | 0) == ($1 | 0);
+    if ($12) {
+     $$ph = 7948;
+     label = 6;
+    } else {
+     $13 = SAFE_HEAP_LOAD(3027 * 4 | 0, 4, 0) | 0 | 0;
+     $14 = ($13 | 0) == ($1 | 0);
+     if ($14) {
+      $$ph = 12108;
+      label = 6;
+     } else {
+      $$075 = 12;
+      $24 = 0;
+     }
+    }
+   }
+  }
+ }
+ if ((label | 0) == 6) {
+  $15 = $$ph + 4 | 0;
+  $16 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+  $17 = $16 & 1;
+  $18 = $17 << 24 >> 24 == 0;
+  $$ = $18 ? 0 : 12;
+  $$075 = $$;
+  $24 = $$ph;
+ }
+ $19 = ($$075 | 0) == 0;
+ $20 = $3 >>> 0 > 15;
+ $21 = $20 & $19;
+ $$176 = $21 ? 12 : $$075;
+ $22 = ($$176 | 0) == 0;
+ L9 : do {
+  if ($22) {
+   $switch$split2D = ($2 | 0) < 6;
+   L11 : do {
+    if ($switch$split2D) {
+     switch ($2 | 0) {
+     case 5:
+     case 2:
+     case 3:
+     case 1:
+      {
+       label = 11;
+       break L11;
+       break;
+      }
+     case 4:
+      {
+       $58 = $24 + 44 | 0;
+       $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+       $60 = ($59 | 0) == (0 | 0);
+       if ($60) {
+        $$3 = 0;
+        $$5 = 71;
+        break L9;
+       }
+       $61 = $24 + 48 | 0;
+       $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+       $63 = ($62 | 0) == (0 | 0);
+       if ($63) {
+        $$3 = 0;
+        $$5 = 71;
+        break L9;
+       } else {
+        break L11;
+       }
+       break;
+      }
+     case 0:
+      {
+       $64 = __gcry_fips_mode() | 0;
+       $65 = ($64 | 0) == 0;
+       if (!$65) {
+        $$3 = 0;
+        $$5 = 71;
+        break L9;
+       }
+       $66 = __gcry_get_debug_flag(0) | 0;
+       $67 = ($66 | 0) == 0;
+       if ($67) {
+        $$3 = 0;
+        $$5 = 71;
+        break L9;
+       } else {
+        break L11;
+       }
+       break;
+      }
+     default:
+      {
+       $$3 = 0;
+       $$5 = 71;
+       break L9;
+      }
+     }
+    } else {
+     $switch$split12D = ($2 | 0) < 9;
+     if ($switch$split12D) {
+      switch ($2 | 0) {
+      case 7:
+      case 6:
+       {
+        label = 11;
+        break L11;
+        break;
+       }
+      case 8:
+       {
+        break;
+       }
+      default:
+       {
+        $$3 = 0;
+        $$5 = 71;
+        break L9;
+       }
+      }
+      $23 = $24 + 36 | 0;
+      $25 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+      $26 = ($25 | 0) == (0 | 0);
+      if ($26) {
+       $$3 = 0;
+       $$5 = 71;
+       break L9;
+      }
+      $27 = $24 + 20 | 0;
+      $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+      $29 = $24 + 40 | 0;
+      $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+      $31 = ($30 | 0) == (0 | 0);
+      $$not = ($28 | 0) != 16;
+      $brmerge = $31 | $$not;
+      if ($brmerge) {
+       $$3 = 0;
+       $$5 = 71;
+       break L9;
+      } else {
+       break;
+      }
+     }
+     $switch$split42D = ($2 | 0) < 11;
+     if ($switch$split42D) {
+      switch ($2 | 0) {
+      case 9:
+       {
+        label = 11;
+        break L11;
+        break;
+       }
+      case 10:
+       {
+        break;
+       }
+      default:
+       {
+        $$3 = 0;
+        $$5 = 71;
+        break L9;
+       }
+      }
+      $38 = $24 + 44 | 0;
+      $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+      $40 = ($39 | 0) == (0 | 0);
+      if ($40) {
+       $$3 = 0;
+       $$5 = 71;
+       break L9;
+      }
+      $41 = $24 + 48 | 0;
+      $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+      $43 = ($42 | 0) == (0 | 0);
+      if ($43) {
+       $$3 = 0;
+       $$5 = 71;
+       break L9;
+      }
+      $44 = $24 + 60 | 0;
+      $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+      $46 = ($45 | 0) == (0 | 0);
+      if ($46) {
+       $$3 = 0;
+       $$5 = 71;
+       break L9;
+      }
+      $47 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+      $48 = ($47 | 0) == 316;
+      if ($48) {
+       break;
+      } else {
+       $$3 = 0;
+       $$5 = 71;
+       break L9;
+      }
+     }
+     $switch$split72D = ($2 | 0) < 65537;
+     if (!$switch$split72D) {
+      switch ($2 | 0) {
+      case 65537:
+       {
+        label = 11;
+        break L11;
+        break;
+       }
+      default:
+       {
+        $$3 = 0;
+        $$5 = 71;
+        break L9;
+       }
+      }
+     }
+     switch ($2 | 0) {
+     case 11:
+      {
+       break;
+      }
+     default:
+      {
+       $$3 = 0;
+       $$5 = 71;
+       break L9;
+      }
+     }
+     $49 = $24 + 36 | 0;
+     $50 = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+     $51 = ($50 | 0) == (0 | 0);
+     if ($51) {
+      $$3 = 0;
+      $$5 = 71;
+      break L9;
+     }
+     $52 = $24 + 40 | 0;
+     $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+     $54 = ($53 | 0) == (0 | 0);
+     if ($54) {
+      $$3 = 0;
+      $$5 = 71;
+      break L9;
+     }
+     $55 = $24 + 20 | 0;
+     $56 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+     $57 = ($56 | 0) == 16;
+     if (!$57) {
+      $$3 = 0;
+      $$5 = 71;
+      break L9;
+     }
+    }
+   } while (0);
+   if ((label | 0) == 11) {
+    $32 = $24 + 36 | 0;
+    $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+    $34 = ($33 | 0) == (0 | 0);
+    if ($34) {
+     $$3 = 0;
+     $$5 = 71;
+     break;
+    }
+    $35 = $24 + 40 | 0;
+    $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+    $37 = ($36 | 0) == (0 | 0);
+    if ($37) {
+     $$3 = 0;
+     $$5 = 71;
+     break;
+    }
+   }
+   $68 = $24 + 28 | 0;
+   $69 = SAFE_HEAP_LOAD($68 | 0, 4, 0) | 0 | 0;
+   $70 = $69 << 1;
+   $71 = $70 + 511 | 0;
+   $72 = ($4 | 0) != 0;
+   if ($72) {
+    $73 = __gcry_calloc_secure(1, $71) | 0;
+    $$074$in = $73;
+   } else {
+    $74 = __gcry_calloc(1, $71) | 0;
+    $$074$in = $74;
+   }
+   $75 = ($$074$in | 0) == (0 | 0);
+   if ($75) {
+    $76 = _gpg_err_code_from_syserror() | 0;
+    $$3 = $$074$in;
+    $$5 = $76;
+    break;
+   }
+   $77 = $$074$in;
+   $78 = $77 & 15;
+   $79 = ($78 | 0) == 0;
+   $80 = 16 - $78 | 0;
+   $81 = $$074$in + $80 | 0;
+   $$1 = $79 ? $$074$in : $81;
+   $$0 = $79 ? 0 : $80;
+   $82 = $72 ? 1183944770 : 604576100;
+   SAFE_HEAP_STORE($$1 | 0, $82 | 0, 4);
+   $83 = $71 - $$0 | 0;
+   $84 = $$1 + 4 | 0;
+   SAFE_HEAP_STORE($84 | 0, $83 | 0, 4);
+   $85 = $$1 + 8 | 0;
+   SAFE_HEAP_STORE($85 | 0, $$0 | 0, 4);
+   $86 = $$1 + 12 | 0;
+   SAFE_HEAP_STORE($86 | 0, $24 | 0, 4);
+   $87 = $$1 + 16 | 0;
+   SAFE_HEAP_STORE($87 | 0, $1 | 0, 4);
+   $88 = $$1 + 48 | 0;
+   SAFE_HEAP_STORE($88 | 0, $2 | 0, 4);
+   $89 = $$1 + 52 | 0;
+   SAFE_HEAP_STORE($89 | 0, $3 | 0, 4);
+   switch ($1 | 0) {
+   case 9:
+   case 8:
+   case 7:
+    {
+     $90 = $$1 + 20 | 0;
+     SAFE_HEAP_STORE($90 | 0, 57 | 0, 4);
+     $91 = $$1 + 24 | 0;
+     SAFE_HEAP_STORE($91 | 0, 58 | 0, 4);
+     $92 = $$1 + 28 | 0;
+     SAFE_HEAP_STORE($92 | 0, 59 | 0, 4);
+     $93 = $$1 + 32 | 0;
+     SAFE_HEAP_STORE($93 | 0, 60 | 0, 4);
+     $94 = $$1 + 36 | 0;
+     SAFE_HEAP_STORE($94 | 0, 61 | 0, 4);
+     $95 = $$1 + 40 | 0;
+     SAFE_HEAP_STORE($95 | 0, 62 | 0, 4);
+     $96 = $$1 + 44 | 0;
+     SAFE_HEAP_STORE($96 | 0, 63 | 0, 4);
+     break;
+    }
+   case 303:
+   case 10:
+    {
+     $97 = $$1 + 32 | 0;
+     SAFE_HEAP_STORE($97 | 0, 64 | 0, 4);
+     $98 = $$1 + 24 | 0;
+     SAFE_HEAP_STORE($98 | 0, 65 | 0, 4);
+     $99 = $$1 + 36 | 0;
+     SAFE_HEAP_STORE($99 | 0, 66 | 0, 4);
+     break;
+    }
+   default:
+    {}
+   }
+   $cond = ($2 | 0) == 11;
+   if ($cond) {
+    $100 = $$1 + 480 | 0;
+    SAFE_HEAP_STORE($100 >> 0 | 0, 16 | 0, 1);
+    $$3 = $$1;
+    $$5 = 0;
+   } else {
+    $$3 = $$1;
+    $$5 = 0;
+   }
+  } else {
+   $$3 = 0;
+   $$5 = $$176;
+  }
+ } while (0);
+ $101 = ($$5 | 0) != 0;
+ $102 = $101 ? 0 : $$3;
+ SAFE_HEAP_STORE($0 | 0, $102 | 0, 4);
+ $103 = ($$5 | 0) == 0;
+ $104 = $$5 & 65535;
+ $105 = $104 | 536870912;
+ $$$i$i$i = $103 ? 0 : $105;
+ return $$$i$i$i | 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_sroa_0 [...]
+ $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) {
+    SAFE_HEAP_STORE($rem | 0, ($n_sroa_0_0_extract_trunc >>> 0) % 
($d_sroa_0_0_extract_trunc >>> 0) | 0, 4);
+    SAFE_HEAP_STORE($rem + 4 | 0, 0 | 0, 4);
+   }
+   $_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;
+   }
+   SAFE_HEAP_STORE($rem | 0, $a$0 & -1 | 0, 4);
+   SAFE_HEAP_STORE($rem + 4 | 0, $a$1 & 0 | 0, 4);
+   $_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) {
+     SAFE_HEAP_STORE($rem | 0, ($n_sroa_1_4_extract_trunc >>> 0) % 
($d_sroa_0_0_extract_trunc >>> 0) | 0, 4);
+     SAFE_HEAP_STORE($rem + 4 | 0, 0 | 0, 4);
+    }
+    $_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) {
+     SAFE_HEAP_STORE($rem | 0, 0 | 0, 4);
+     SAFE_HEAP_STORE($rem + 4 | 0, ($n_sroa_1_4_extract_trunc >>> 0) % 
($d_sroa_1_4_extract_trunc >>> 0) | 0, 4);
+    }
+    $_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) {
+     SAFE_HEAP_STORE($rem | 0, 0 | $a$0 & -1 | 0, 4);
+     SAFE_HEAP_STORE($rem + 4 | 0, $37 & $n_sroa_1_4_extract_trunc | $a$1 & 0 
| 0, 4);
+    }
+    $_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;
+   }
+   SAFE_HEAP_STORE($rem | 0, 0 | $a$0 & -1 | 0, 4);
+   SAFE_HEAP_STORE($rem + 4 | 0, $n_sroa_1_4_extract_shift$0 | $a$1 & 0 | 0, 
4);
+   $_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;
+    }
+    SAFE_HEAP_STORE($rem | 0, 0 | $a$0 & -1 | 0, 4);
+    SAFE_HEAP_STORE($rem + 4 | 0, $n_sroa_1_4_extract_shift$0 | $a$1 & 0 | 0, 
4);
+    $_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) {
+    SAFE_HEAP_STORE($rem | 0, $66 & $n_sroa_0_0_extract_trunc | 0, 4);
+    SAFE_HEAP_STORE($rem + 4 | 0, 0 | 0, 4);
+   }
+   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) {
+  SAFE_HEAP_STORE($rem | 0, 0 | $r_sroa_0_1_lcssa | 0, 4);
+  SAFE_HEAP_STORE($rem + 4 | 0, $r_sroa_1_1_lcssa | 0 | 0, 4);
+ }
+ $_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 __gcry_sexp_nth_mpi($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$037$i = 0, $$$037$i$i = 0, $$0$copyload$i = 0, $$0$copyload$i$i = 0, 
$$0$copyload9$i = 0, $$0$copyload9$i$i = 0, $$021 = 0, $$034$lcssa$i = 0, 
$$034$lcssa$i$i = 0, $$034$lcssa48$i = 0, $$034$lcssa48$i$i = 0, 
$$03443$i$lcssa = 0, $$03443$i$lcssa$i = 0, $$03443$i24$i = 0, $$03443$i40 = 0, 
$$03443$ph$i = 0, $$03443$ph$i$i = 0, $$03742$ph$i = 0, $$03742$ph$i$i = 0, 
$$044$i$lcssa = 0;
+ var $$044$i$lcssa$i = 0, $$044$i23$i = 0, $$044$i39 = 0, $$044$ph$i = 0, 
$$044$ph$i$i = 0, $$1$i = 0, $$1$i$i = 0, $$1$ph$i = 0, $$1$ph$i$i = 0, $$135$i 
= 0, $$135$i$i = 0, $$2 = 0, $$lcssa$i = 0, $$lcssa$i$i = 0, $$ph$i = 0, 
$$ph$i$i = 0, $$ph49$i = 0, $$ph49$i$i = 0, $$pre = 0, $$pre$ = 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, 
$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, $8 = 0, $9 = 0, $or$cond = 0, $or$cond17$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 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+   $6 = $5 << 24 >> 24 == 3;
+   if ($6) {
+    $9 = $0 + 1 | 0;
+    $10 = ($1 | 0) > 0;
+    $11 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+    $12 = $11 << 24 >> 24 == 1;
+    L8 : do {
+     if ($10) {
+      $$03443$ph$i$i = $9;
+      $$03742$ph$i$i = $1;
+      $$044$ph$i$i = 0;
+      $$ph$i$i = $12;
+      $$ph49$i$i = $11;
+      L9 : while (1) {
+       L11 : do {
+        if ($$ph$i$i) {
+         $$03443$i$lcssa$i = $$03443$ph$i$i;
+         $$044$i$lcssa$i = $$044$ph$i$i;
+         label = 7;
+        } else {
+         $$03443$i24$i = $$03443$ph$i$i;
+         $$044$i23$i = $$044$ph$i$i;
+         $18 = $$ph49$i$i;
+         L12 : while (1) {
+          switch ($18 << 24 >> 24) {
+          case 0:
+           {
+            $$2 = 0;
+            break L9;
+            break;
+           }
+          case 4:
+           {
+            break L12;
+            break;
+           }
+          case 3:
+           {
+            $19 = $$044$i23$i + 1 | 0;
+            $$1$ph$i$i = $19;
+            break;
+           }
+          default:
+           {
+            $$1$ph$i$i = $$044$i23$i;
+           }
+          }
+          $21 = $$03443$i24$i + 1 | 0;
+          $22 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+          $23 = $22 << 24 >> 24 == 1;
+          if ($23) {
+           $$03443$i$lcssa$i = $21;
+           $$044$i$lcssa$i = $$1$ph$i$i;
+           label = 7;
+           break L11;
+          } else {
+           $$03443$i24$i = $21;
+           $$044$i23$i = $$1$ph$i$i;
+           $18 = $22;
+          }
+         }
+         $20 = $$044$i23$i + -1 | 0;
+         $$1$i$i = $20;
+         $$135$i$i = $$03443$i24$i;
+        }
+       } while (0);
+       if ((label | 0) == 7) {
+        label = 0;
+        $13 = $$03443$i$lcssa$i + 1 | 0;
+        $$0$copyload$i$i = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($13 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+        $14 = $$0$copyload$i$i & 65535;
+        $15 = $14 + 2 | 0;
+        $16 = $13 + $15 | 0;
+        $17 = $16 + -1 | 0;
+        $$1$i$i = $$044$i$lcssa$i;
+        $$135$i$i = $17;
+       }
+       $24 = ($$1$i$i | 0) == 0;
+       $25 = $24 << 31 >> 31;
+       $$$037$i$i = $25 + $$03742$ph$i$i | 0;
+       $26 = $$135$i$i + 1 | 0;
+       $27 = ($$$037$i$i | 0) > 0;
+       $28 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+       $29 = $28 << 24 >> 24 == 1;
+       if ($27) {
+        $$03443$ph$i$i = $26;
+        $$03742$ph$i$i = $$$037$i$i;
+        $$044$ph$i$i = $$1$i$i;
+        $$ph$i$i = $29;
+        $$ph49$i$i = $28;
+       } else {
+        $$034$lcssa$i$i = $26;
+        $$lcssa$i$i = $29;
+        break L8;
+       }
+      }
+      STACKTOP = sp;
+      return $$2 | 0;
+     } else {
+      $$034$lcssa$i$i = $9;
+      $$lcssa$i$i = $12;
+     }
+    } while (0);
+    if ($$lcssa$i$i) {
+     $$034$lcssa48$i$i = $$034$lcssa$i$i;
+    } else {
+     $$2 = 0;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+   } else {
+    $7 = ($1 | 0) == 0;
+    $8 = $5 << 24 >> 24 == 1;
+    $or$cond17$i = $7 & $8;
+    if ($or$cond17$i) {
+     $$034$lcssa48$i$i = $0;
+    } else {
+     $$2 = 0;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+   }
+   $30 = $$034$lcssa48$i$i + 1 | 0;
+   $$0$copyload9$i$i = SAFE_HEAP_LOAD($30 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($30 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+   $31 = $$0$copyload9$i$i & 65535;
+   $32 = $$034$lcssa48$i$i + 3 | 0;
+   $33 = $$0$copyload9$i$i << 16 >> 16 == 0;
+   if ($33) {
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+   }
+   $34 = __gcry_malloc($31) | 0;
+   $35 = ($34 | 0) == (0 | 0);
+   if ($35) {
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+   }
+   _memcpy($34 | 0, $32 | 0, $31 | 0) | 0;
+   $36 = __gcry_is_secure($0) | 0;
+   $37 = ($36 | 0) == 0;
+   if ($37) {
+    $39 = __gcry_mpi_new(0) | 0;
+    $40 = $39;
+   } else {
+    $38 = __gcry_mpi_snew(0) | 0;
+    $40 = $38;
+   }
+   SAFE_HEAP_STORE($3 | 0, $40 | 0, 4);
+   $41 = ($40 | 0) == (0 | 0);
+   if ($41) {
+    __gcry_free($34);
+    $$2 = 0;
+    STACKTOP = sp;
+    return $$2 | 0;
+   } else {
+    $42 = $31 << 3;
+    __gcry_mpi_set_opaque($40, $34, $42) | 0;
+    $$2 = $40;
+    STACKTOP = sp;
+    return $$2 | 0;
+   }
+   break;
+  }
+ case 0:
+  {
+   $$021 = 1;
+   break;
+  }
+ default:
+  {
+   $$021 = $2;
+  }
+ }
+ $43 = ($0 | 0) == (0 | 0);
+ if ($43) {
+  $$2 = 0;
+  STACKTOP = sp;
+  return $$2 | 0;
+ }
+ $44 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $45 = $44 << 24 >> 24 == 3;
+ if ($45) {
+  $48 = $0 + 1 | 0;
+  $49 = ($1 | 0) > 0;
+  $50 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 0 | 0;
+  $51 = $50 << 24 >> 24 == 1;
+  L49 : do {
+   if ($49) {
+    $$03443$ph$i = $48;
+    $$03742$ph$i = $1;
+    $$044$ph$i = 0;
+    $$ph$i = $51;
+    $$ph49$i = $50;
+    L50 : while (1) {
+     L52 : do {
+      if ($$ph$i) {
+       $$03443$i$lcssa = $$03443$ph$i;
+       $$044$i$lcssa = $$044$ph$i;
+       label = 28;
+      } else {
+       $$03443$i40 = $$03443$ph$i;
+       $$044$i39 = $$044$ph$i;
+       $57 = $$ph49$i;
+       L53 : while (1) {
+        switch ($57 << 24 >> 24) {
+        case 0:
+         {
+          $$2 = 0;
+          break L50;
+          break;
+         }
+        case 4:
+         {
+          break L53;
+          break;
+         }
+        case 3:
+         {
+          $58 = $$044$i39 + 1 | 0;
+          $$1$ph$i = $58;
+          break;
+         }
+        default:
+         {
+          $$1$ph$i = $$044$i39;
+         }
+        }
+        $60 = $$03443$i40 + 1 | 0;
+        $61 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+        $62 = $61 << 24 >> 24 == 1;
+        if ($62) {
+         $$03443$i$lcssa = $60;
+         $$044$i$lcssa = $$1$ph$i;
+         label = 28;
+         break L52;
+        } else {
+         $$03443$i40 = $60;
+         $$044$i39 = $$1$ph$i;
+         $57 = $61;
+        }
+       }
+       $59 = $$044$i39 + -1 | 0;
+       $$1$i = $59;
+       $$135$i = $$03443$i40;
+      }
+     } while (0);
+     if ((label | 0) == 28) {
+      label = 0;
+      $52 = $$03443$i$lcssa + 1 | 0;
+      $$0$copyload$i = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($52 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+      $53 = $$0$copyload$i & 65535;
+      $54 = $53 + 2 | 0;
+      $55 = $52 + $54 | 0;
+      $56 = $55 + -1 | 0;
+      $$1$i = $$044$i$lcssa;
+      $$135$i = $56;
+     }
+     $63 = ($$1$i | 0) == 0;
+     $64 = $63 << 31 >> 31;
+     $$$037$i = $64 + $$03742$ph$i | 0;
+     $65 = $$135$i + 1 | 0;
+     $66 = ($$$037$i | 0) > 0;
+     $67 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+     $68 = $67 << 24 >> 24 == 1;
+     if ($66) {
+      $$03443$ph$i = $65;
+      $$03742$ph$i = $$$037$i;
+      $$044$ph$i = $$1$i;
+      $$ph$i = $68;
+      $$ph49$i = $67;
+     } else {
+      $$034$lcssa$i = $65;
+      $$lcssa$i = $68;
+      break L49;
+     }
+    }
+    STACKTOP = sp;
+    return $$2 | 0;
+   } else {
+    $$034$lcssa$i = $48;
+    $$lcssa$i = $51;
+   }
+  } while (0);
+  if ($$lcssa$i) {
+   $$034$lcssa48$i = $$034$lcssa$i;
+  } else {
+   $$2 = 0;
+   STACKTOP = sp;
+   return $$2 | 0;
+  }
+ } else {
+  $46 = ($1 | 0) == 0;
+  $47 = $44 << 24 >> 24 == 1;
+  $or$cond = $46 & $47;
+  if ($or$cond) {
+   $$034$lcssa48$i = $0;
+  } else {
+   $$2 = 0;
+   STACKTOP = sp;
+   return $$2 | 0;
+  }
+ }
+ $69 = $$034$lcssa48$i + 3 | 0;
+ $70 = $$034$lcssa48$i + 1 | 0;
+ $$0$copyload9$i = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($70 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+ $71 = $$0$copyload9$i & 65535;
+ $72 = __gcry_mpi_scan($3, $$021, $69, $71, 0) | 0;
+ $73 = ($72 | 0) == 0;
+ $$pre = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $$pre$ = $73 ? $$pre : 0;
+ $$2 = $$pre$;
+ STACKTOP = sp;
+ return $$2 | 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, $141 = 0, $142 = 0, $143 = 0, $144 = 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, label = 0, 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);
+ {}
+ SAFE_HEAP_STORE($5 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($5 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($5 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($5 + 12 | 0, 0 | 0 | 0, 4);
+ $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;
+ SAFE_HEAP_STORE($20 | 0, $19 | 0, 4);
+ $21 = $5 + 8 | 0;
+ SAFE_HEAP_STORE($21 | 0, 32 | 0, 4);
+ $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;
+ SAFE_HEAP_STORE($25 | 0, $24 | 0, 4);
+ $26 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+ $27 = $9 + 31 | 0;
+ $28 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+ $29 = $9 + 1 | 0;
+ $30 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+ $31 = $9 + 30 | 0;
+ $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($29 >> 0 | 0, $32 | 0, 1);
+ SAFE_HEAP_STORE($31 >> 0 | 0, $30 | 0, 1);
+ $33 = $9 + 2 | 0;
+ $34 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+ $35 = $9 + 29 | 0;
+ $36 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($33 >> 0 | 0, $36 | 0, 1);
+ SAFE_HEAP_STORE($35 >> 0 | 0, $34 | 0, 1);
+ $37 = $9 + 3 | 0;
+ $38 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+ $39 = $9 + 28 | 0;
+ $40 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($37 >> 0 | 0, $40 | 0, 1);
+ SAFE_HEAP_STORE($39 >> 0 | 0, $38 | 0, 1);
+ $41 = $9 + 4 | 0;
+ $42 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+ $43 = $9 + 27 | 0;
+ $44 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($41 >> 0 | 0, $44 | 0, 1);
+ SAFE_HEAP_STORE($43 >> 0 | 0, $42 | 0, 1);
+ $45 = $9 + 5 | 0;
+ $46 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+ $47 = $9 + 26 | 0;
+ $48 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($45 >> 0 | 0, $48 | 0, 1);
+ SAFE_HEAP_STORE($47 >> 0 | 0, $46 | 0, 1);
+ $49 = $9 + 6 | 0;
+ $50 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+ $51 = $9 + 25 | 0;
+ $52 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($49 >> 0 | 0, $52 | 0, 1);
+ SAFE_HEAP_STORE($51 >> 0 | 0, $50 | 0, 1);
+ $53 = $9 + 7 | 0;
+ $54 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+ $55 = $9 + 24 | 0;
+ $56 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($53 >> 0 | 0, $56 | 0, 1);
+ SAFE_HEAP_STORE($55 >> 0 | 0, $54 | 0, 1);
+ $57 = $9 + 8 | 0;
+ $58 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+ $59 = $9 + 23 | 0;
+ $60 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($57 >> 0 | 0, $60 | 0, 1);
+ SAFE_HEAP_STORE($59 >> 0 | 0, $58 | 0, 1);
+ $61 = $9 + 9 | 0;
+ $62 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+ $63 = $9 + 22 | 0;
+ $64 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($61 >> 0 | 0, $64 | 0, 1);
+ SAFE_HEAP_STORE($63 >> 0 | 0, $62 | 0, 1);
+ $65 = $9 + 10 | 0;
+ $66 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+ $67 = $9 + 21 | 0;
+ $68 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($65 >> 0 | 0, $68 | 0, 1);
+ SAFE_HEAP_STORE($67 >> 0 | 0, $66 | 0, 1);
+ $69 = $9 + 11 | 0;
+ $70 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+ $71 = $9 + 20 | 0;
+ $72 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($69 >> 0 | 0, $72 | 0, 1);
+ SAFE_HEAP_STORE($71 >> 0 | 0, $70 | 0, 1);
+ $73 = $9 + 12 | 0;
+ $74 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+ $75 = $9 + 19 | 0;
+ $76 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($73 >> 0 | 0, $76 | 0, 1);
+ SAFE_HEAP_STORE($75 >> 0 | 0, $74 | 0, 1);
+ $77 = $9 + 13 | 0;
+ $78 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+ $79 = $9 + 18 | 0;
+ $80 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($77 >> 0 | 0, $80 | 0, 1);
+ SAFE_HEAP_STORE($79 >> 0 | 0, $78 | 0, 1);
+ $81 = $9 + 14 | 0;
+ $82 = SAFE_HEAP_LOAD($81 >> 0 | 0, 1, 0) | 0 | 0;
+ $83 = $9 + 17 | 0;
+ $84 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($81 >> 0 | 0, $84 | 0, 1);
+ SAFE_HEAP_STORE($83 >> 0 | 0, $82 | 0, 1);
+ $85 = $9 + 15 | 0;
+ $86 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+ $87 = $9 + 16 | 0;
+ $88 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 0) | 0 | 0;
+ SAFE_HEAP_STORE($85 >> 0 | 0, $88 | 0, 1);
+ SAFE_HEAP_STORE($87 >> 0 | 0, $86 | 0, 1);
+ $89 = $28 & 255;
+ $90 = $89 & 63;
+ $91 = $90 | 64;
+ $92 = $91 & 255;
+ SAFE_HEAP_STORE($9 >> 0 | 0, $92 | 0, 1);
+ $93 = $26 & 255;
+ $94 = $93 & 248;
+ $95 = $94 & 255;
+ SAFE_HEAP_STORE($27 >> 0 | 0, $95 | 0, 1);
+ __gcry_mpi_set_buffer($6, $9, 32, 0);
+ __gcry_free($9);
+ $96 = $1 + 20 | 0;
+ __gcry_mpi_ec_mul_point($4, $6, $96, $2);
+ $97 = __gcry_get_debug_flag(1) | 0;
+ $98 = ($97 | 0) == 0;
+ if (!$98) {
+  __gcry_mpi_point_log(35726, $4, $2);
+ }
+ $99 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($0 | 0, $99 | 0, 4);
+ $100 = $1 + 4 | 0;
+ $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+ $102 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($102 | 0, $101 | 0, 4);
+ $103 = $1 + 8 | 0;
+ $104 = SAFE_HEAP_LOAD($103 | 0, 4, 0) | 0 | 0;
+ $105 = __gcry_mpi_copy($104) | 0;
+ $106 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($106 | 0, $105 | 0, 4);
+ $107 = $1 + 12 | 0;
+ $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+ $109 = __gcry_mpi_copy($108) | 0;
+ $110 = $0 + 12 | 0;
+ SAFE_HEAP_STORE($110 | 0, $109 | 0, 4);
+ $111 = $1 + 16 | 0;
+ $112 = SAFE_HEAP_LOAD($111 | 0, 4, 0) | 0 | 0;
+ $113 = __gcry_mpi_copy($112) | 0;
+ $114 = $0 + 16 | 0;
+ SAFE_HEAP_STORE($114 | 0, $113 | 0, 4);
+ $115 = $0 + 20 | 0;
+ __gcry_mpi_point_init($115);
+ $116 = SAFE_HEAP_LOAD($115 | 0, 4, 0) | 0 | 0;
+ $117 = SAFE_HEAP_LOAD($96 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($116, $117) | 0;
+ $118 = $0 + 24 | 0;
+ $119 = SAFE_HEAP_LOAD($118 | 0, 4, 0) | 0 | 0;
+ $120 = $1 + 24 | 0;
+ $121 = SAFE_HEAP_LOAD($120 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($119, $121) | 0;
+ $122 = $0 + 28 | 0;
+ $123 = SAFE_HEAP_LOAD($122 | 0, 4, 0) | 0 | 0;
+ $124 = $1 + 28 | 0;
+ $125 = SAFE_HEAP_LOAD($124 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($123, $125) | 0;
+ $126 = $1 + 32 | 0;
+ $127 = SAFE_HEAP_LOAD($126 | 0, 4, 0) | 0 | 0;
+ $128 = __gcry_mpi_copy($127) | 0;
+ $129 = $0 + 32 | 0;
+ SAFE_HEAP_STORE($129 | 0, $128 | 0, 4);
+ $130 = $1 + 36 | 0;
+ $131 = SAFE_HEAP_LOAD($130 | 0, 4, 0) | 0 | 0;
+ $132 = __gcry_mpi_copy($131) | 0;
+ $133 = $0 + 36 | 0;
+ SAFE_HEAP_STORE($133 | 0, $132 | 0, 4);
+ $134 = $0 + 44 | 0;
+ __gcry_mpi_point_init($134);
+ $135 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 0;
+ $136 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($135, $136) | 0;
+ $137 = $0 + 48 | 0;
+ $138 = SAFE_HEAP_LOAD($137 | 0, 4, 0) | 0 | 0;
+ $139 = $4 + 4 | 0;
+ $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($138, $140) | 0;
+ $141 = $0 + 52 | 0;
+ $142 = SAFE_HEAP_LOAD($141 | 0, 4, 0) | 0 | 0;
+ $143 = $4 + 8 | 0;
+ $144 = SAFE_HEAP_LOAD($143 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($142, $144) | 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_secmem_term() {
+ var $$0$lcssa = 0, $$0117$lcssa = 0, $$0117197 = 0, $$0121$lcssa = 0, 
$$0121166 = 0, $$0125$lcssa = 0, $$0125165 = 0, $$0133$lcssa = 0, $$0133176 = 
0, $$0137$lcssa = 0, $$0137175 = 0, $$0141$lcssa = 0, $$0141187 = 0, 
$$0145$lcssa = 0, $$0145186 = 0, $$0198 = 0, $$1 = 0, $$1118 = 0, $$1122 = 0, 
$$1126 = 0;
+ var $$1134 = 0, $$1138 = 0, $$1142 = 0, $$1146 = 0, $$3$ph = 0, $$3120$ph = 
0, $$3120193 = 0, $$3124$ph = 0, $$3124164 = 0, $$3128$ph = 0, $$3128163 = 0, 
$$3136$ph = 0, $$3136172 = 0, $$3140$ph = 0, $$3140171 = 0, $$3144$ph = 0, 
$$3144183 = 0, $$3148$ph = 0, $$3148182 = 0, $$3194 = 0;
+ var $$pre = 0, $$pre222 = 0, $$pre223 = 0, $$pre224 = 0, $0 = 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;
+ 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, 
$13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0;
+ var $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, $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, $scevgep = 0, $scevgep219 = 0, $scevgep220 = 0, $scevgep221 = 
0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = SAFE_HEAP_LOAD(17600 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 0;
+ if ($1) {
+  return;
+ }
+ $2 = SAFE_HEAP_LOAD(17602 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = $2;
+ $5 = $4 & 7;
+ $6 = ($5 | 0) != 0;
+ $7 = ($3 | 0) != 0;
+ $8 = $7 & $6;
+ if ($8) {
+  $$0117197 = $3;
+  $$0198 = $2;
+  while (1) {
+   SAFE_HEAP_STORE($$0198 >> 0 | 0, -1 | 0, 1);
+   $9 = $$0198 + 1 | 0;
+   $10 = $$0117197 + -1 | 0;
+   $11 = $9;
+   $12 = $11 & 7;
+   $13 = ($12 | 0) != 0;
+   $14 = ($10 | 0) != 0;
+   $15 = $14 & $13;
+   if ($15) {
+    $$0117197 = $10;
+    $$0198 = $9;
+   } else {
+    $$0$lcssa = $9;
+    $$0117$lcssa = $10;
+    break;
+   }
+  }
+ } else {
+  $$0$lcssa = $2;
+  $$0117$lcssa = $3;
+ }
+ $16 = $$0117$lcssa >>> 0 < 8;
+ if ($16) {
+  $$3$ph = $$0$lcssa;
+  $$3120$ph = $$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;
+   SAFE_HEAP_STORE($21 | 0, -1 | 0, 4);
+   $22 = $20 + 4 | 0;
+   $23 = $22;
+   SAFE_HEAP_STORE($23 | 0, -1 | 0, 4);
+   $24 = $$1118 + -8 | 0;
+   $25 = $$1 + 8 | 0;
+   $26 = $24 >>> 0 > 7;
+   if ($26) {
+    $$1 = $25;
+    $$1118 = $24;
+   } else {
+    break;
+   }
+  }
+  $27 = $17 - $18 | 0;
+  $scevgep221 = $$0$lcssa + $19 | 0;
+  $$3$ph = $scevgep221;
+  $$3120$ph = $27;
+ }
+ $28 = ($$3120$ph | 0) == 0;
+ if ($28) {
+  $32 = $2;
+  $36 = $3;
+ } else {
+  $$3120193 = $$3120$ph;
+  $$3194 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3194 >> 0 | 0, -1 | 0, 1);
+   $29 = $$3194 + 1 | 0;
+   $30 = $$3120193 + -1 | 0;
+   $31 = ($30 | 0) == 0;
+   if ($31) {
+    break;
+   } else {
+    $$3120193 = $30;
+    $$3194 = $29;
+   }
+  }
+  $$pre = SAFE_HEAP_LOAD(17602 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre222 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+  $32 = $$pre;
+  $36 = $$pre222;
+ }
+ $33 = $32;
+ $34 = $33 & 7;
+ $35 = ($34 | 0) != 0;
+ $37 = ($36 | 0) != 0;
+ $38 = $37 & $35;
+ if ($38) {
+  $$0141187 = $32;
+  $$0145186 = $36;
+  while (1) {
+   SAFE_HEAP_STORE($$0141187 >> 0 | 0, -86 | 0, 1);
+   $39 = $$0141187 + 1 | 0;
+   $40 = $$0145186 + -1 | 0;
+   $41 = $39;
+   $42 = $41 & 7;
+   $43 = ($42 | 0) != 0;
+   $44 = ($40 | 0) != 0;
+   $45 = $44 & $43;
+   if ($45) {
+    $$0141187 = $39;
+    $$0145186 = $40;
+   } else {
+    $$0141$lcssa = $39;
+    $$0145$lcssa = $40;
+    break;
+   }
+  }
+ } else {
+  $$0141$lcssa = $32;
+  $$0145$lcssa = $36;
+ }
+ $46 = $$0145$lcssa >>> 0 < 8;
+ if ($46) {
+  $$3144$ph = $$0141$lcssa;
+  $$3148$ph = $$0145$lcssa;
+ } else {
+  $47 = $$0145$lcssa + -8 | 0;
+  $48 = $47 & -8;
+  $49 = $48 + 8 | 0;
+  $$1142 = $$0141$lcssa;
+  $$1146 = $$0145$lcssa;
+  while (1) {
+   $50 = $$1142;
+   $51 = $50;
+   SAFE_HEAP_STORE($51 | 0, -1431655766 | 0, 4);
+   $52 = $50 + 4 | 0;
+   $53 = $52;
+   SAFE_HEAP_STORE($53 | 0, -1431655766 | 0, 4);
+   $54 = $$1146 + -8 | 0;
+   $55 = $$1142 + 8 | 0;
+   $56 = $54 >>> 0 > 7;
+   if ($56) {
+    $$1142 = $55;
+    $$1146 = $54;
+   } else {
+    break;
+   }
+  }
+  $57 = $47 - $48 | 0;
+  $scevgep220 = $$0141$lcssa + $49 | 0;
+  $$3144$ph = $scevgep220;
+  $$3148$ph = $57;
+ }
+ $58 = ($$3148$ph | 0) == 0;
+ if ($58) {
+  $62 = $32;
+  $66 = $36;
+ } else {
+  $$3144183 = $$3144$ph;
+  $$3148182 = $$3148$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3144183 >> 0 | 0, -86 | 0, 1);
+   $59 = $$3144183 + 1 | 0;
+   $60 = $$3148182 + -1 | 0;
+   $61 = ($60 | 0) == 0;
+   if ($61) {
+    break;
+   } else {
+    $$3144183 = $59;
+    $$3148182 = $60;
+   }
+  }
+  $$pre223 = SAFE_HEAP_LOAD(17602 * 4 | 0, 4, 0) | 0 | 0;
+  $$pre224 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+  $62 = $$pre223;
+  $66 = $$pre224;
+ }
+ $63 = $62;
+ $64 = $63 & 7;
+ $65 = ($64 | 0) != 0;
+ $67 = ($66 | 0) != 0;
+ $68 = $67 & $65;
+ if ($68) {
+  $$0133176 = $66;
+  $$0137175 = $62;
+  while (1) {
+   SAFE_HEAP_STORE($$0137175 >> 0 | 0, 85 | 0, 1);
+   $69 = $$0137175 + 1 | 0;
+   $70 = $$0133176 + -1 | 0;
+   $71 = $69;
+   $72 = $71 & 7;
+   $73 = ($72 | 0) != 0;
+   $74 = ($70 | 0) != 0;
+   $75 = $74 & $73;
+   if ($75) {
+    $$0133176 = $70;
+    $$0137175 = $69;
+   } else {
+    $$0133$lcssa = $70;
+    $$0137$lcssa = $69;
+    break;
+   }
+  }
+ } else {
+  $$0133$lcssa = $66;
+  $$0137$lcssa = $62;
+ }
+ $76 = $$0133$lcssa >>> 0 < 8;
+ if ($76) {
+  $$3136$ph = $$0133$lcssa;
+  $$3140$ph = $$0137$lcssa;
+ } else {
+  $77 = $$0133$lcssa + -8 | 0;
+  $78 = $77 & -8;
+  $79 = $78 + 8 | 0;
+  $$1134 = $$0133$lcssa;
+  $$1138 = $$0137$lcssa;
+  while (1) {
+   $80 = $$1138;
+   $81 = $80;
+   SAFE_HEAP_STORE($81 | 0, 1431655765 | 0, 4);
+   $82 = $80 + 4 | 0;
+   $83 = $82;
+   SAFE_HEAP_STORE($83 | 0, 1431655765 | 0, 4);
+   $84 = $$1134 + -8 | 0;
+   $85 = $$1138 + 8 | 0;
+   $86 = $84 >>> 0 > 7;
+   if ($86) {
+    $$1134 = $84;
+    $$1138 = $85;
+   } else {
+    break;
+   }
+  }
+  $87 = $77 - $78 | 0;
+  $scevgep219 = $$0137$lcssa + $79 | 0;
+  $$3136$ph = $87;
+  $$3140$ph = $scevgep219;
+ }
+ $88 = ($$3136$ph | 0) == 0;
+ if (!$88) {
+  $$3136172 = $$3136$ph;
+  $$3140171 = $$3140$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3140171 >> 0 | 0, 85 | 0, 1);
+   $89 = $$3140171 + 1 | 0;
+   $90 = $$3136172 + -1 | 0;
+   $91 = ($90 | 0) == 0;
+   if ($91) {
+    break;
+   } else {
+    $$3136172 = $90;
+    $$3140171 = $89;
+   }
+  }
+ }
+ $92 = SAFE_HEAP_LOAD(17602 * 4 | 0, 4, 0) | 0 | 0;
+ $93 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+ $94 = $92;
+ $95 = $94 & 7;
+ $96 = ($95 | 0) != 0;
+ $97 = ($93 | 0) != 0;
+ $98 = $97 & $96;
+ if ($98) {
+  $$0121166 = $93;
+  $$0125165 = $92;
+  while (1) {
+   SAFE_HEAP_STORE($$0125165 >> 0 | 0, 0 | 0, 1);
+   $99 = $$0125165 + 1 | 0;
+   $100 = $$0121166 + -1 | 0;
+   $101 = $99;
+   $102 = $101 & 7;
+   $103 = ($102 | 0) != 0;
+   $104 = ($100 | 0) != 0;
+   $105 = $104 & $103;
+   if ($105) {
+    $$0121166 = $100;
+    $$0125165 = $99;
+   } else {
+    $$0121$lcssa = $100;
+    $$0125$lcssa = $99;
+    break;
+   }
+  }
+ } else {
+  $$0121$lcssa = $93;
+  $$0125$lcssa = $92;
+ }
+ $106 = $$0121$lcssa >>> 0 < 8;
+ if ($106) {
+  $$3124$ph = $$0121$lcssa;
+  $$3128$ph = $$0125$lcssa;
+ } else {
+  $107 = $$0121$lcssa + -8 | 0;
+  $108 = $107 & -8;
+  $109 = $108 + 8 | 0;
+  $$1122 = $$0121$lcssa;
+  $$1126 = $$0125$lcssa;
+  while (1) {
+   $110 = $$1126;
+   $111 = $110;
+   SAFE_HEAP_STORE($111 | 0, 0 | 0, 4);
+   $112 = $110 + 4 | 0;
+   $113 = $112;
+   SAFE_HEAP_STORE($113 | 0, 0 | 0, 4);
+   $114 = $$1122 + -8 | 0;
+   $115 = $$1126 + 8 | 0;
+   $116 = $114 >>> 0 > 7;
+   if ($116) {
+    $$1122 = $114;
+    $$1126 = $115;
+   } else {
+    break;
+   }
+  }
+  $117 = $107 - $108 | 0;
+  $scevgep = $$0125$lcssa + $109 | 0;
+  $$3124$ph = $117;
+  $$3128$ph = $scevgep;
+ }
+ $118 = ($$3124$ph | 0) == 0;
+ if (!$118) {
+  $$3124164 = $$3124$ph;
+  $$3128163 = $$3128$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3128163 >> 0 | 0, 0 | 0, 1);
+   $119 = $$3128163 + 1 | 0;
+   $120 = $$3124164 + -1 | 0;
+   $121 = ($120 | 0) == 0;
+   if ($121) {
+    break;
+   } else {
+    $$3124164 = $120;
+    $$3128163 = $119;
+   }
+  }
+ }
+ $122 = SAFE_HEAP_LOAD(17603 * 4 | 0, 4, 0) | 0 | 0;
+ $123 = ($122 | 0) == 0;
+ if (!$123) {
+  $124 = SAFE_HEAP_LOAD(17602 * 4 | 0, 4, 0) | 0 | 0;
+  $125 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+  ___munmap($124, $125) | 0;
+ }
+ SAFE_HEAP_STORE(17602 * 4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(17600 * 4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(17601 * 4 | 0, 0 | 0, 4);
+ return;
+}
+
+function __gcry_cipher_gcm_setkey($0) {
+ $0 = $0 | 0;
+ var $$068$2$i$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, $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, $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 $exitcond$2$i$i = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = $0 + 208 | 0;
+ {}
+ SAFE_HEAP_STORE($1 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 12 | 0, 0 | 0 | 0, 4);
+ $2 = $0 + 12 | 0;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $3 + 36 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $0 + 496 | 0;
+ FUNCTION_TABLE_iiii[(SAFE_FT_MASK($5 | 0, 127 | 0) | 0) & 127]($6, $1, $1) | 
0;
+ $7 = $0 + 224 | 0;
+ SAFE_HEAP_STORE($7 | 0, 78 | 0, 4);
+ $8 = $0 + 228 | 0;
+ {}
+ SAFE_HEAP_STORE($8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($8 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($8 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($8 + 12 | 0, 0 | 0 | 0, 4);
+ $9 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $10 = $9 & 255;
+ $11 = $10 << 24;
+ $12 = $1 + 1 | 0;
+ $13 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = $13 & 255;
+ $15 = $14 << 16;
+ $16 = $15 | $11;
+ $17 = $1 + 2 | 0;
+ $18 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+ $19 = $18 & 255;
+ $20 = $19 << 8;
+ $21 = $16 | $20;
+ $22 = $1 + 3 | 0;
+ $23 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+ $24 = $23 & 255;
+ $25 = $21 | $24;
+ $26 = $0 + 356 | 0;
+ SAFE_HEAP_STORE($26 | 0, $25 | 0, 4);
+ $27 = $1 + 4 | 0;
+ $28 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+ $29 = $28 & 255;
+ $30 = $29 << 24;
+ $31 = $1 + 5 | 0;
+ $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+ $33 = $32 & 255;
+ $34 = $33 << 16;
+ $35 = $34 | $30;
+ $36 = $1 + 6 | 0;
+ $37 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+ $38 = $37 & 255;
+ $39 = $38 << 8;
+ $40 = $35 | $39;
+ $41 = $1 + 7 | 0;
+ $42 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+ $43 = $42 & 255;
+ $44 = $40 | $43;
+ $45 = $0 + 360 | 0;
+ SAFE_HEAP_STORE($45 | 0, $44 | 0, 4);
+ $46 = $0 + 216 | 0;
+ $47 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+ $48 = $47 & 255;
+ $49 = $48 << 24;
+ $50 = $0 + 217 | 0;
+ $51 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+ $52 = $51 & 255;
+ $53 = $52 << 16;
+ $54 = $53 | $49;
+ $55 = $0 + 218 | 0;
+ $56 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+ $57 = $56 & 255;
+ $58 = $57 << 8;
+ $59 = $54 | $58;
+ $60 = $0 + 219 | 0;
+ $61 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+ $62 = $61 & 255;
+ $63 = $59 | $62;
+ $64 = $0 + 364 | 0;
+ SAFE_HEAP_STORE($64 | 0, $63 | 0, 4);
+ $65 = $0 + 220 | 0;
+ $66 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+ $67 = $66 & 255;
+ $68 = $67 << 24;
+ $69 = $0 + 221 | 0;
+ $70 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+ $71 = $70 & 255;
+ $72 = $71 << 16;
+ $73 = $72 | $68;
+ $74 = $0 + 222 | 0;
+ $75 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+ $76 = $75 & 255;
+ $77 = $76 << 8;
+ $78 = $73 | $77;
+ $79 = $0 + 223 | 0;
+ $80 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+ $81 = $80 & 255;
+ $82 = $78 | $81;
+ $83 = $0 + 368 | 0;
+ SAFE_HEAP_STORE($83 | 0, $82 | 0, 4);
+ $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 ? -520093696 : 0;
+ $91 = $82 >>> 1;
+ $92 = $62 << 31;
+ $93 = $91 | $92;
+ SAFE_HEAP_STORE($87 | 0, $93 | 0, 4);
+ $94 = $63 >>> 1;
+ $95 = $43 << 31;
+ $96 = $94 | $95;
+ SAFE_HEAP_STORE($86 | 0, $96 | 0, 4);
+ $97 = $44 >>> 1;
+ $98 = $24 << 31;
+ $99 = $97 | $98;
+ SAFE_HEAP_STORE($85 | 0, $99 | 0, 4);
+ $100 = $25 >>> 1;
+ $101 = $90 ^ $100;
+ SAFE_HEAP_STORE($84 | 0, $101 | 0, 4);
+ $102 = $0 + 260 | 0;
+ $103 = $0 + 264 | 0;
+ $104 = $0 + 268 | 0;
+ $105 = $0 + 272 | 0;
+ $106 = $91 & 1;
+ $107 = ($106 | 0) != 0;
+ $108 = $107 ? -520093696 : 0;
+ $109 = $93 >>> 1;
+ $110 = $94 << 31;
+ $111 = $109 | $110;
+ SAFE_HEAP_STORE($105 | 0, $111 | 0, 4);
+ $112 = $96 >>> 1;
+ $113 = $97 << 31;
+ $114 = $112 | $113;
+ SAFE_HEAP_STORE($104 | 0, $114 | 0, 4);
+ $115 = $99 >>> 1;
+ $116 = $100 << 31;
+ $117 = $115 | $116;
+ SAFE_HEAP_STORE($103 | 0, $117 | 0, 4);
+ $118 = $101 >>> 1;
+ $119 = $108 ^ $118;
+ SAFE_HEAP_STORE($102 | 0, $119 | 0, 4);
+ $120 = $0 + 244 | 0;
+ $121 = $0 + 248 | 0;
+ $122 = $0 + 252 | 0;
+ $123 = $0 + 256 | 0;
+ $124 = $109 & 1;
+ $125 = ($124 | 0) != 0;
+ $126 = $125 ? -520093696 : 0;
+ $127 = $111 >>> 1;
+ $128 = $112 << 31;
+ $129 = $127 | $128;
+ SAFE_HEAP_STORE($123 | 0, $129 | 0, 4);
+ $130 = $114 >>> 1;
+ $131 = $115 << 31;
+ $132 = $130 | $131;
+ SAFE_HEAP_STORE($122 | 0, $132 | 0, 4);
+ $133 = $117 >>> 1;
+ $134 = $118 << 31;
+ $135 = $134 | $133;
+ SAFE_HEAP_STORE($121 | 0, $135 | 0, 4);
+ $136 = $119 >>> 1;
+ $137 = $126 ^ $136;
+ SAFE_HEAP_STORE($120 | 0, $137 | 0, 4);
+ $138 = $137 ^ $119;
+ $139 = $0 + 276 | 0;
+ SAFE_HEAP_STORE($139 | 0, $138 | 0, 4);
+ $140 = $135 ^ $117;
+ $141 = $0 + 280 | 0;
+ SAFE_HEAP_STORE($141 | 0, $140 | 0, 4);
+ $142 = $132 ^ $114;
+ $143 = $0 + 284 | 0;
+ SAFE_HEAP_STORE($143 | 0, $142 | 0, 4);
+ $144 = $129 ^ $111;
+ $145 = $0 + 288 | 0;
+ SAFE_HEAP_STORE($145 | 0, $144 | 0, 4);
+ $146 = $137 ^ $101;
+ $147 = $0 + 308 | 0;
+ SAFE_HEAP_STORE($147 | 0, $146 | 0, 4);
+ $148 = $135 ^ $99;
+ $149 = $0 + 312 | 0;
+ SAFE_HEAP_STORE($149 | 0, $148 | 0, 4);
+ $150 = $132 ^ $96;
+ $151 = $0 + 316 | 0;
+ SAFE_HEAP_STORE($151 | 0, $150 | 0, 4);
+ $152 = $129 ^ $93;
+ $153 = $0 + 320 | 0;
+ SAFE_HEAP_STORE($153 | 0, $152 | 0, 4);
+ $154 = $119 ^ $101;
+ $155 = $0 + 324 | 0;
+ SAFE_HEAP_STORE($155 | 0, $154 | 0, 4);
+ $156 = $117 ^ $99;
+ $157 = $0 + 328 | 0;
+ SAFE_HEAP_STORE($157 | 0, $156 | 0, 4);
+ $158 = $114 ^ $96;
+ $159 = $0 + 332 | 0;
+ SAFE_HEAP_STORE($159 | 0, $158 | 0, 4);
+ $160 = $111 ^ $93;
+ $161 = $0 + 336 | 0;
+ SAFE_HEAP_STORE($161 | 0, $160 | 0, 4);
+ $162 = $138 ^ $101;
+ $163 = $0 + 340 | 0;
+ SAFE_HEAP_STORE($163 | 0, $162 | 0, 4);
+ $164 = $140 ^ $99;
+ $165 = $0 + 344 | 0;
+ SAFE_HEAP_STORE($165 | 0, $164 | 0, 4);
+ $166 = $142 ^ $96;
+ $167 = $0 + 348 | 0;
+ SAFE_HEAP_STORE($167 | 0, $166 | 0, 4);
+ $168 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+ $169 = $168 ^ $144;
+ $170 = $0 + 352 | 0;
+ SAFE_HEAP_STORE($170 | 0, $169 | 0, 4);
+ $$068$2$i$i = 1;
+ while (1) {
+  $171 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+  $172 = $$068$2$i$i << 2;
+  $173 = ($0 + 228 | 0) + ($172 << 2) | 0;
+  $174 = SAFE_HEAP_LOAD($173 | 0, 4, 0) | 0 | 0;
+  $175 = $174 ^ $171;
+  $176 = $172 + 32 | 0;
+  $177 = ($0 + 228 | 0) + ($176 << 2) | 0;
+  SAFE_HEAP_STORE($177 | 0, $175 | 0, 4);
+  $178 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+  $179 = $172 | 1;
+  $180 = ($0 + 228 | 0) + ($179 << 2) | 0;
+  $181 = SAFE_HEAP_LOAD($180 | 0, 4, 0) | 0 | 0;
+  $182 = $181 ^ $178;
+  $183 = $176 | 1;
+  $184 = ($0 + 228 | 0) + ($183 << 2) | 0;
+  SAFE_HEAP_STORE($184 | 0, $182 | 0, 4);
+  $185 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+  $186 = $172 | 2;
+  $187 = ($0 + 228 | 0) + ($186 << 2) | 0;
+  $188 = SAFE_HEAP_LOAD($187 | 0, 4, 0) | 0 | 0;
+  $189 = $188 ^ $185;
+  $190 = $176 | 2;
+  $191 = ($0 + 228 | 0) + ($190 << 2) | 0;
+  SAFE_HEAP_STORE($191 | 0, $189 | 0, 4);
+  $192 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+  $193 = $172 | 3;
+  $194 = ($0 + 228 | 0) + ($193 << 2) | 0;
+  $195 = SAFE_HEAP_LOAD($194 | 0, 4, 0) | 0 | 0;
+  $196 = $195 ^ $192;
+  $197 = $176 | 3;
+  $198 = ($0 + 228 | 0) + ($197 << 2) | 0;
+  SAFE_HEAP_STORE($198 | 0, $196 | 0, 4);
+  $199 = $$068$2$i$i + 1 | 0;
+  $exitcond$2$i$i = ($199 | 0) == 8;
+  if ($exitcond$2$i$i) {
+   break;
+  } else {
+   $$068$2$i$i = $199;
+  }
+ }
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $1 + 8 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = $2 + 8 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($5, $7, $9);
+ $10 = $3 + 60 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = ($11 | 0) == (0 | 0);
+ if ($12) {
+  $13 = $3 + 16 | 0;
+  $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($5, $5, $14);
+ } else {
+  __gcry_mpi_mod_barrett($5, $5, $11);
+ }
+ $15 = $3 + 68 | 0;
+ $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $17 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($16, $17, $17);
+ $18 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $19 = ($18 | 0) == (0 | 0);
+ if ($19) {
+  $20 = $3 + 16 | 0;
+  $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($16, $16, $21);
+ } else {
+  __gcry_mpi_mod_barrett($16, $16, $18);
+ }
+ $22 = $3 + 72 | 0;
+ $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $24 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $25 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($23, $24, $25);
+ $26 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $27 = ($26 | 0) == (0 | 0);
+ if ($27) {
+  $28 = $3 + 16 | 0;
+  $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($23, $23, $29);
+ } else {
+  __gcry_mpi_mod_barrett($23, $23, $26);
+ }
+ $30 = $3 + 76 | 0;
+ $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+ $32 = $1 + 4 | 0;
+ $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+ $34 = $2 + 4 | 0;
+ $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($31, $33, $35);
+ $36 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $37 = ($36 | 0) == (0 | 0);
+ if ($37) {
+  $38 = $3 + 16 | 0;
+  $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($31, $31, $39);
+ } else {
+  __gcry_mpi_mod_barrett($31, $31, $36);
+ }
+ $40 = $3 + 80 | 0;
+ $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+ $42 = $3 + 24 | 0;
+ $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+ $44 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($41, $43, $44);
+ $45 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $46 = ($45 | 0) == (0 | 0);
+ if ($46) {
+  $47 = $3 + 16 | 0;
+  $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($41, $41, $48);
+ } else {
+  __gcry_mpi_mod_barrett($41, $41, $45);
+ }
+ $49 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+ $50 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($49, $49, $50);
+ $51 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $52 = ($51 | 0) == (0 | 0);
+ if ($52) {
+  $53 = $3 + 16 | 0;
+  $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($49, $49, $54);
+ } else {
+  __gcry_mpi_mod_barrett($49, $49, $51);
+ }
+ $55 = $3 + 84 | 0;
+ $56 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+ $57 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $58 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_sub($56, $57, $58);
+ $59 = $3 + 88 | 0;
+ $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+ $61 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $62 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_add($60, $61, $62);
+ $63 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $64 = ($63 | 0) == (0 | 0);
+ if ($64) {
+  $65 = $3 + 16 | 0;
+  $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($60, $60, $66);
+ } else {
+  __gcry_mpi_mod_barrett($60, $60, $63);
+ }
+ $67 = $3 + 92 | 0;
+ $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+ $69 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $70 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_add($68, $69, $70);
+ $71 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $72 = ($71 | 0) == (0 | 0);
+ if ($72) {
+  $73 = $3 + 16 | 0;
+  $74 = SAFE_HEAP_LOAD($73 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($68, $68, $74);
+ } else {
+  __gcry_mpi_mod_barrett($68, $68, $71);
+ }
+ $75 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $76 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $77 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_add($75, $76, $77);
+ $78 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $79 = ($78 | 0) == (0 | 0);
+ if ($79) {
+  $80 = $3 + 16 | 0;
+  $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($75, $75, $81);
+ } else {
+  __gcry_mpi_mod_barrett($75, $75, $78);
+ }
+ $82 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $83 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($82, $82, $83);
+ $84 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $85 = ($84 | 0) == (0 | 0);
+ if ($85) {
+  $86 = $3 + 16 | 0;
+  $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($82, $82, $87);
+ } else {
+  __gcry_mpi_mod_barrett($82, $82, $84);
+ }
+ $88 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $89 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_sub($88, $88, $89);
+ $90 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $91 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_sub($90, $90, $91);
+ $92 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $93 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($92, $92, $93);
+ $94 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $95 = ($94 | 0) == (0 | 0);
+ if ($95) {
+  $96 = $3 + 16 | 0;
+  $97 = SAFE_HEAP_LOAD($96 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($92, $92, $97);
+ } else {
+  __gcry_mpi_mod_barrett($92, $92, $94);
+ }
+ $98 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $99 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($98, $98, $99);
+ $100 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $101 = ($100 | 0) == (0 | 0);
+ if ($101) {
+  $102 = $3 + 16 | 0;
+  $103 = SAFE_HEAP_LOAD($102 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($98, $98, $103);
+ } else {
+  __gcry_mpi_mod_barrett($98, $98, $100);
+ }
+ $104 = $3 + 4 | 0;
+ $105 = SAFE_HEAP_LOAD($104 | 0, 4, 0) | 0 | 0;
+ $106 = ($105 | 0) == 1;
+ $107 = $0 + 4 | 0;
+ $108 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+ if ($106) {
+  $109 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_set($108, $109) | 0;
+  $110 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_neg($110, $110);
+  $111 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+  $112 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_sub($111, $112, $111);
+ } else {
+  $113 = $3 + 20 | 0;
+  $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+  $115 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mul($108, $114, $115);
+  $116 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $117 = ($116 | 0) == (0 | 0);
+  if ($117) {
+   $118 = $3 + 16 | 0;
+   $119 = SAFE_HEAP_LOAD($118 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mod($108, $108, $119);
+  } else {
+   __gcry_mpi_mod_barrett($108, $108, $116);
+  }
+  $120 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+  $121 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_sub($120, $121, $120);
+ }
+ $122 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+ $123 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($122, $122, $123);
+ $124 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $125 = ($124 | 0) == (0 | 0);
+ if ($125) {
+  $126 = $3 + 16 | 0;
+  $127 = SAFE_HEAP_LOAD($126 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($122, $122, $127);
+ } else {
+  __gcry_mpi_mod_barrett($122, $122, $124);
+ }
+ $128 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+ $129 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($128, $128, $129);
+ $130 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $131 = ($130 | 0) == (0 | 0);
+ if ($131) {
+  $132 = $3 + 16 | 0;
+  $133 = SAFE_HEAP_LOAD($132 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($128, $128, $133);
+ } else {
+  __gcry_mpi_mod_barrett($128, $128, $130);
+ }
+ $134 = $0 + 8 | 0;
+ $135 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 0;
+ $136 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+ $137 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mul($135, $136, $137);
+ $138 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $139 = ($138 | 0) == (0 | 0);
+ if ($139) {
+  $140 = $3 + 16 | 0;
+  $141 = SAFE_HEAP_LOAD($140 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mod($135, $135, $141);
+  return;
+ } else {
+  __gcry_mpi_mod_barrett($135, $135, $138);
+  return;
+ }
+}
+
+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 $$0169$lcssa = 0, $$0169203 = 0, $$0170$lcssa = 0, $$0170202 = 0, 
$$0176216 = 0, $$0177$lcssa = 0, $$0177211 = 0, $$0181$lcssa = 0, $$0181210 = 
0, $$0185215 = 0, $$0186191 = 0, $$0186192$ph = 0, $$0190$ph = 0, $$1 = 0, 
$$1171 = 0, $$1178 = 0, $$1182 = 0, $$3$ph = 0, $$3173$ph = 0, $$3173200 = 0;
+ var $$3180$ph = 0, $$3180207 = 0, $$3184$ph = 0, $$3184206 = 0, $$3201 = 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, $scevgep229 = 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(38993, 38688, 800, 38998);
+ }
+ $12 = $5 + 8 | 0;
+ $13 = $12 + $10 | 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;
+  $$0186191 = $19;
+  return $$0186191 | 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 = $5 + 2 | 0;
+   $25 = $24 + $4 | 0;
+   $26 = $9 >>> 0 < $25 >>> 0;
+   if ($26) {
+    $$0186192$ph = 66;
+   } else {
+    $27 = __gcry_malloc($9) | 0;
+    $28 = ($27 | 0) == (0 | 0);
+    if ($28) {
+     $29 = _gpg_err_code_from_syserror() | 0;
+     $$0186192$ph = $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 = 14;
+     } else {
+      $35 = ($6 | 0) == (0 | 0);
+      if ($35) {
+       __gcry_randomize($21, $5, 1);
+       label = 14;
+       break;
+      }
+      $36 = ($7 | 0) == ($5 | 0);
+      if ($36) {
+       _memcpy($21 | 0, $6 | 0, $5 | 0) | 0;
+       label = 14;
+       break;
+      } else {
+       $$pre = $27;
+       $$0190$ph = 45;
+       $$pre$phiZ2D = $$pre;
+       break;
+      }
+     }
+    } while (0);
+    if ((label | 0) == 14) {
+     $37 = $17;
+     $38 = $37;
+     SAFE_HEAP_STORE($38 >> 0 | 0, 0 & 255 | 0, 1);
+     SAFE_HEAP_STORE($38 + 1 >> 0 | 0, 0 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($38 + 2 >> 0 | 0, 0 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($38 + 3 >> 0 | 0, 0 >> 24 | 0, 1);
+     $39 = $37 + 4 | 0;
+     $40 = $39;
+     SAFE_HEAP_STORE($40 >> 0 | 0, 0 & 255 | 0, 1);
+     SAFE_HEAP_STORE($40 + 1 >> 0 | 0, 0 >> 8 & 255 | 0, 1);
+     SAFE_HEAP_STORE($40 + 2 >> 0 | 0, 0 >> 16 & 255 | 0, 1);
+     SAFE_HEAP_STORE($40 + 3 >> 0 | 0, 0 >> 24 | 0, 1);
+     __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;
+     SAFE_HEAP_STORE($43 >> 0 | 0, 1 | 0, 1);
+     _memcpy($47 | 0, $21 | 0, $5 | 0) | 0;
+     _mgf1($22, $15, $33, $4, $2) | 0;
+     $48 = ($15 | 0) == 0;
+     if (!$48) {
+      $$0176216 = $22;
+      $$0185215 = 0;
+      while (1) {
+       $49 = SAFE_HEAP_LOAD($$0176216 >> 0 | 0, 1, 0) | 0 | 0;
+       $50 = $27 + $$0185215 | 0;
+       $51 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+       $52 = $51 ^ $49;
+       SAFE_HEAP_STORE($50 >> 0 | 0, $52 | 0, 1);
+       $53 = $$0185215 + 1 | 0;
+       $54 = $$0176216 + 1 | 0;
+       $exitcond = ($53 | 0) == ($15 | 0);
+       if ($exitcond) {
+        break;
+       } else {
+        $$0176216 = $54;
+        $$0185215 = $53;
+       }
+      }
+     }
+     $55 = $9 << 3;
+     $56 = $55 - $1 | 0;
+     $57 = 255 >>> $56;
+     $58 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+     $59 = $58 & 255;
+     $60 = $59 & $57;
+     $61 = $60 & 255;
+     SAFE_HEAP_STORE($27 >> 0 | 0, $61 | 0, 1);
+     $62 = $9 + -1 | 0;
+     $63 = $27 + $62 | 0;
+     SAFE_HEAP_STORE($63 >> 0 | 0, -68 | 0, 1);
+     $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) {
+       $$0190$ph = 0;
+       $$pre$phiZ2D = $45;
+      } else {
+       $68 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+       __gcry_log_printmpi(39019, $68);
+       $$0190$ph = 0;
+       $$pre$phiZ2D = $45;
+      }
+     } else {
+      $$0190$ph = $64;
+      $$pre$phiZ2D = $45;
+     }
+    }
+    $69 = $$pre$phiZ2D & 7;
+    $70 = ($69 | 0) != 0;
+    $71 = ($9 | 0) != 0;
+    $72 = $71 & $70;
+    if ($72) {
+     $$0177211 = $9;
+     $$0181210 = $27;
+     while (1) {
+      SAFE_HEAP_STORE($$0181210 >> 0 | 0, 0 | 0, 1);
+      $73 = $$0181210 + 1 | 0;
+      $74 = $$0177211 + -1 | 0;
+      $75 = $73;
+      $76 = $75 & 7;
+      $77 = ($76 | 0) != 0;
+      $78 = ($74 | 0) != 0;
+      $79 = $78 & $77;
+      if ($79) {
+       $$0177211 = $74;
+       $$0181210 = $73;
+      } else {
+       $$0177$lcssa = $74;
+       $$0181$lcssa = $73;
+       break;
+      }
+     }
+    } else {
+     $$0177$lcssa = $9;
+     $$0181$lcssa = $27;
+    }
+    $80 = $$0177$lcssa >>> 0 < 8;
+    if ($80) {
+     $$3180$ph = $$0177$lcssa;
+     $$3184$ph = $$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;
+      SAFE_HEAP_STORE($85 | 0, 0 | 0, 4);
+      $86 = $84 + 4 | 0;
+      $87 = $86;
+      SAFE_HEAP_STORE($87 | 0, 0 | 0, 4);
+      $88 = $$1178 + -8 | 0;
+      $89 = $$1182 + 8 | 0;
+      $90 = $88 >>> 0 > 7;
+      if ($90) {
+       $$1178 = $88;
+       $$1182 = $89;
+      } else {
+       break;
+      }
+     }
+     $91 = $81 - $82 | 0;
+     $scevgep229 = $$0181$lcssa + $83 | 0;
+     $$3180$ph = $91;
+     $$3184$ph = $scevgep229;
+    }
+    $92 = ($$3180$ph | 0) == 0;
+    if (!$92) {
+     $$3180207 = $$3180$ph;
+     $$3184206 = $$3184$ph;
+     while (1) {
+      SAFE_HEAP_STORE($$3184206 >> 0 | 0, 0 | 0, 1);
+      $93 = $$3184206 + 1 | 0;
+      $94 = $$3180207 + -1 | 0;
+      $95 = ($94 | 0) == 0;
+      if ($95) {
+       break;
+      } else {
+       $$3180207 = $94;
+       $$3184206 = $93;
+      }
+     }
+    }
+    __gcry_free($27);
+    $$0186192$ph = $$0190$ph;
+   }
+  } else {
+   $$0186192$ph = 139;
+  }
+ } while (0);
+ $96 = $17;
+ $97 = $96 & 7;
+ $98 = ($97 | 0) != 0;
+ $99 = ($16 | 0) != 0;
+ $100 = $99 & $98;
+ if ($100) {
+  $$0169203 = $16;
+  $$0170202 = $17;
+  while (1) {
+   SAFE_HEAP_STORE($$0170202 >> 0 | 0, 0 | 0, 1);
+   $101 = $$0170202 + 1 | 0;
+   $102 = $$0169203 + -1 | 0;
+   $103 = $101;
+   $104 = $103 & 7;
+   $105 = ($104 | 0) != 0;
+   $106 = ($102 | 0) != 0;
+   $107 = $106 & $105;
+   if ($107) {
+    $$0169203 = $102;
+    $$0170202 = $101;
+   } else {
+    $$0169$lcssa = $102;
+    $$0170$lcssa = $101;
+    break;
+   }
+  }
+ } else {
+  $$0169$lcssa = $16;
+  $$0170$lcssa = $17;
+ }
+ $108 = $$0169$lcssa >>> 0 < 8;
+ if ($108) {
+  $$3$ph = $$0169$lcssa;
+  $$3173$ph = $$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;
+   SAFE_HEAP_STORE($113 | 0, 0 | 0, 4);
+   $114 = $112 + 4 | 0;
+   $115 = $114;
+   SAFE_HEAP_STORE($115 | 0, 0 | 0, 4);
+   $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;
+  $$3$ph = $119;
+  $$3173$ph = $scevgep;
+ }
+ $120 = ($$3$ph | 0) == 0;
+ if (!$120) {
+  $$3173200 = $$3173$ph;
+  $$3201 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$3173200 >> 0 | 0, 0 | 0, 1);
+   $121 = $$3173200 + 1 | 0;
+   $122 = $$3201 + -1 | 0;
+   $123 = ($122 | 0) == 0;
+   if ($123) {
+    break;
+   } else {
+    $$3173200 = $121;
+    $$3201 = $122;
+   }
+  }
+ }
+ __gcry_free($17);
+ $$0186191 = $$0186192$ph;
+ return $$0186191 | 0;
+}
+
+function __gcry_mpi_ec_curve_point($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$ = 0, $$1 = 0, $$122 = 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;
+ var $11 = 0, $110 = 0, $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;
+ 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 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $11 = ($10 | 0) == (0 | 0);
+   if ($11) {
+    $12 = $1 + 16 | 0;
+    $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_powm($6, $2, $14, $15);
+   $16 = $1 + 20 | 0;
+   $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($4, $17, $2);
+   $18 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $19 = ($18 | 0) == (0 | 0);
+   if ($19) {
+    $20 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($4, $4, $20);
+   } else {
+    __gcry_mpi_mod_barrett($4, $4, $18);
+   }
+   $21 = $1 + 24 | 0;
+   $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_add($4, $4, $22);
+   $23 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $24 = ($23 | 0) == (0 | 0);
+   if ($24) {
+    $25 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($4, $4, $25);
+   } else {
+    __gcry_mpi_mod_barrett($4, $4, $23);
+   }
+   __gcry_mpi_add($4, $4, $6);
+   $26 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $27 = ($26 | 0) == (0 | 0);
+   if ($27) {
+    $28 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 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;
+   $$ = $30 & 1;
+   __gcry_mpi_release($6);
+   $$2 = $$;
+   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 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+   $35 = __gcry_mpi_const(4) | 0;
+   __gcry_mpi_mul($4, $34, $35);
+   $36 = $1 + 60 | 0;
+   $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $38 = ($37 | 0) == (0 | 0);
+   if ($38) {
+    $39 = $1 + 16 | 0;
+    $40 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $43 = ($42 | 0) == (0 | 0);
+   if ($43) {
+    $44 = $1 + 16 | 0;
+    $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($4, $4, $45);
+   } else {
+    __gcry_mpi_mod_barrett($4, $4, $42);
+   }
+   __gcry_mpi_mul($4, $4, $2);
+   $46 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $47 = ($46 | 0) == (0 | 0);
+   if ($47) {
+    $48 = $1 + 16 | 0;
+    $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($4, $4, $49);
+   } else {
+    __gcry_mpi_mod_barrett($4, $4, $46);
+   }
+   __gcry_mpi_mul($3, $2, $2);
+   $50 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $51 = ($50 | 0) == (0 | 0);
+   if ($51) {
+    $52 = $1 + 16 | 0;
+    $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($3, $3, $53);
+   } else {
+    __gcry_mpi_mod_barrett($3, $3, $50);
+   }
+   __gcry_mpi_add($4, $4, $3);
+   $54 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $55 = ($54 | 0) == (0 | 0);
+   if ($55) {
+    $56 = $1 + 16 | 0;
+    $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $60 = ($59 | 0) == (0 | 0);
+   if ($60) {
+    $61 = $1 + 16 | 0;
+    $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($4, $4, $62);
+   } else {
+    __gcry_mpi_mod_barrett($4, $4, $59);
+   }
+   __gcry_mpi_mul($4, $4, $2);
+   $63 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $64 = ($63 | 0) == (0 | 0);
+   if ($64) {
+    $65 = $1 + 16 | 0;
+    $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($4, $4, $66);
+   } else {
+    __gcry_mpi_mod_barrett($4, $4, $63);
+   }
+   $67 = $1 + 24 | 0;
+   $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($4, $4, $68);
+   $69 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $70 = ($69 | 0) == (0 | 0);
+   if ($70) {
+    $71 = $1 + 16 | 0;
+    $72 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($$pre$phi139Z2D | 0, 4, 0) | 0 | 0;
+   $74 = __gcry_mpi_const(1) | 0;
+   __gcry_mpi_sub($3, $73, $74);
+   __gcry_mpi_rshift($3, $3, 1);
+   $$idx$val = SAFE_HEAP_LOAD($$pre$phi139Z2D | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+   $80 = ($79 | 0) == (0 | 0);
+   if ($80) {
+    $81 = $1 + 16 | 0;
+    $82 = SAFE_HEAP_LOAD($81 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($2, $2, $82);
+   } else {
+    __gcry_mpi_mod_barrett($2, $2, $79);
+   }
+   __gcry_mpi_mul($3, $3, $3);
+   $83 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+   $84 = ($83 | 0) == (0 | 0);
+   if ($84) {
+    $85 = $1 + 16 | 0;
+    $86 = SAFE_HEAP_LOAD($85 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($3, $3, $86);
+   } else {
+    __gcry_mpi_mod_barrett($3, $3, $83);
+   }
+   $87 = $1 + 4 | 0;
+   $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($90 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($4, $91, $2);
+     $92 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+     $93 = ($92 | 0) == (0 | 0);
+     if ($93) {
+      $94 = $1 + 16 | 0;
+      $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+   $97 = ($96 | 0) == (0 | 0);
+   if ($97) {
+    $98 = $1 + 16 | 0;
+    $99 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+   $102 = ($101 | 0) == (0 | 0);
+   if ($102) {
+    $103 = $1 + 16 | 0;
+    $104 = SAFE_HEAP_LOAD($103 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($2, $2, $104);
+   } else {
+    __gcry_mpi_mod_barrett($2, $2, $101);
+   }
+   $105 = $1 + 24 | 0;
+   $106 = SAFE_HEAP_LOAD($105 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mul($2, $2, $106);
+   $107 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+   $108 = ($107 | 0) == (0 | 0);
+   if ($108) {
+    $109 = $1 + 16 | 0;
+    $110 = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 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;
+   $$122 = $112 & 1;
+   $$2 = $$122;
+   break;
+  }
+ default:
+  {
+   $$2 = 0;
+  }
+ }
+ __gcry_mpi_release($4);
+ __gcry_mpi_release($2);
+ __gcry_mpi_release($3);
+ $$1 = $$2;
+ return $$1 | 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, $$pre = 0, $$pre69 = 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, $119 = 0, $12 = 0, $120 
= 0, $121 = 0, $122 = 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, $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;
+ 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$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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $17 = $16 + 7 | 0;
+   $18 = $17 >>> 3;
+   SAFE_HEAP_STORE($6 | 0, $18 | 0, 4);
+   $19 = $17 >>> 0 < 16;
+   $20 = $18 & 1;
+   $21 = ($20 | 0) == 0;
+   $or$cond64 = $19 | $21;
+   L7 : do {
+    if ($or$cond64) {
+     $$057 = $14;
+     $67 = $18;
+    } else {
+     $22 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+     switch ($22 << 24 >> 24) {
+     case 4:
+      {
+       break;
+      }
+     case 64:
+      {
+       $65 = $18 + -1 | 0;
+       SAFE_HEAP_STORE($6 | 0, $65 | 0, 4);
+       $66 = $14 + 1 | 0;
+       $$057 = $66;
+       $67 = $65;
+       break L7;
+       break;
+      }
+     default:
+      {
+       $$057 = $14;
+       $67 = $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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_free($34);
+        $$061 = $32;
+        break;
+       }
+       $35 = ($3 | 0) == (0 | 0);
+       do {
+        if (!$35) {
+         $36 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+         $37 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+         $38 = $1 + 12 | 0;
+         $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+         $40 = $39 >>> 3;
+         $41 = __gcry_mpi_get_buffer_extra($37, $40, 0, $5, 0) | 0;
+         $42 = ($41 | 0) == (0 | 0);
+         if ($42) {
+          $54 = _gpg_err_code_from_syserror() | 0;
+          $55 = ($54 | 0) == 0;
+          if ($55) {
+           break;
+          }
+          $56 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+          __gcry_mpi_free($56);
+          $57 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+          __gcry_mpi_free($57);
+          $$061 = $54;
+          break L12;
+         }
+         $43 = __gcry_mpi_test_bit($36, 0) | 0;
+         $44 = ($43 | 0) != 0;
+         $45 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+         $46 = ($45 | 0) != 0;
+         $or$cond$i = $44 & $46;
+         if ($or$cond$i) {
+          $47 = $45 + -1 | 0;
+          $48 = $41 + $47 | 0;
+          $49 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 0 | 0;
+          $50 = $49 & 255;
+          $51 = $50 | 128;
+          $52 = $51 & 255;
+          SAFE_HEAP_STORE($48 >> 0 | 0, $52 | 0, 1);
+          $$pre = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+          $53 = $$pre;
+         } else {
+          $53 = $45;
+         }
+         SAFE_HEAP_STORE($3 | 0, $41 | 0, 4);
+         SAFE_HEAP_STORE($4 | 0, $53 | 0, 4);
+        }
+       } while (0);
+       $58 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+       $59 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_snatch($58, $59);
+       $60 = $2 + 4 | 0;
+       $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+       $62 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_snatch($61, $62);
+       $63 = $2 + 8 | 0;
+       $64 = SAFE_HEAP_LOAD($63 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_set_ui($64, 1) | 0;
+       $$061 = 0;
+      } else {
+       $$061 = $26;
+      }
+     } while (0);
+     $$2 = $$061;
+     STACKTOP = sp;
+     return $$2 | 0;
+    }
+   } while (0);
+   $68 = ($67 | 0) != 0;
+   $69 = $68 ? $67 : 1;
+   $70 = __gcry_malloc($69) | 0;
+   $71 = ($70 | 0) == (0 | 0);
+   if ($71) {
+    $72 = _gpg_err_code_from_syserror() | 0;
+    $$2 = $72;
+    STACKTOP = sp;
+    return $$2 | 0;
+   }
+   $73 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   _memcpy($70 | 0, $$057 | 0, $73 | 0) | 0;
+   $74 = $73 >>> 1;
+   $75 = ($74 | 0) == 0;
+   if ($75) {
+    $$160 = $70;
+    $89 = $73;
+   } else {
+    $76 = $73 + -1 | 0;
+    $$016$i = 0;
+    while (1) {
+     $77 = $70 + $$016$i | 0;
+     $78 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+     $79 = $76 - $$016$i | 0;
+     $80 = $70 + $79 | 0;
+     $81 = SAFE_HEAP_LOAD($80 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($77 >> 0 | 0, $81 | 0, 1);
+     SAFE_HEAP_STORE($80 >> 0 | 0, $78 | 0, 1);
+     $82 = $$016$i + 1 | 0;
+     $exitcond$i = ($82 | 0) == ($74 | 0);
+     if ($exitcond$i) {
+      $$160 = $70;
+      $89 = $73;
+      break;
+     } else {
+      $$016$i = $82;
+     }
+    }
+   }
+  }
+ }
+ do {
+  if ((label | 0) == 24) {
+   $83 = $1 + 12 | 0;
+   $84 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+   $85 = $84 >>> 3;
+   $86 = __gcry_mpi_get_buffer($0, $85, $6, 0) | 0;
+   $87 = ($86 | 0) == (0 | 0);
+   if (!$87) {
+    $$pre69 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    $$160 = $86;
+    $89 = $$pre69;
+    break;
+   }
+   $88 = _gpg_err_code_from_syserror() | 0;
+   $$2 = $88;
+   STACKTOP = sp;
+   return $$2 | 0;
+  }
+ } while (0);
+ $90 = ($89 | 0) == 0;
+ if ($90) {
+  $$058 = 0;
+  $97 = 0;
+ } else {
+  $91 = SAFE_HEAP_LOAD($$160 >> 0 | 0, 1, 0) | 0 | 0;
+  $92 = $91 & 255;
+  $$lobit = $92 >>> 7;
+  $93 = $92 & 127;
+  $94 = $93 & 255;
+  SAFE_HEAP_STORE($$160 >> 0 | 0, $94 | 0, 1);
+  $$pre70 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $$058 = $$lobit;
+  $97 = $$pre70;
+ }
+ $95 = $2 + 4 | 0;
+ $96 = SAFE_HEAP_LOAD($95 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set_buffer($96, $$160, $97, 0);
+ $98 = ($3 | 0) == (0 | 0);
+ if ($98) {
+  __gcry_free($$160);
+ } else {
+  $99 = ($$058 | 0) != 0;
+  $100 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $101 = ($100 | 0) != 0;
+  $or$cond = $99 & $101;
+  if ($or$cond) {
+   $102 = SAFE_HEAP_LOAD($$160 >> 0 | 0, 1, 0) | 0 | 0;
+   $103 = $102 & 255;
+   $104 = $103 | 128;
+   $105 = $104 & 255;
+   SAFE_HEAP_STORE($$160 >> 0 | 0, $105 | 0, 1);
+   $$pre71 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $107 = $$pre71;
+  } else {
+   $107 = $100;
+  }
+  $106 = $107 >>> 1;
+  $108 = ($106 | 0) == 0;
+  if (!$108) {
+   $109 = $107 + -1 | 0;
+   $$016$i66 = 0;
+   while (1) {
+    $110 = $$160 + $$016$i66 | 0;
+    $111 = SAFE_HEAP_LOAD($110 >> 0 | 0, 1, 0) | 0 | 0;
+    $112 = $109 - $$016$i66 | 0;
+    $113 = $$160 + $112 | 0;
+    $114 = SAFE_HEAP_LOAD($113 >> 0 | 0, 1, 0) | 0 | 0;
+    SAFE_HEAP_STORE($110 >> 0 | 0, $114 | 0, 1);
+    SAFE_HEAP_STORE($113 >> 0 | 0, $111 | 0, 1);
+    $115 = $$016$i66 + 1 | 0;
+    $exitcond$i67 = ($115 | 0) == ($106 | 0);
+    if ($exitcond$i67) {
+     break;
+    } else {
+     $$016$i66 = $115;
+    }
+   }
+  }
+  SAFE_HEAP_STORE($3 | 0, $$160 | 0, 4);
+  $116 = ($4 | 0) == (0 | 0);
+  if (!$116) {
+   $117 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   SAFE_HEAP_STORE($4 | 0, $117 | 0, 4);
+  }
+ }
+ $118 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $119 = SAFE_HEAP_LOAD($95 | 0, 4, 0) | 0 | 0;
+ $120 = __gcry_ecc_eddsa_recover_x($118, $119, $$058, $1) | 0;
+ $121 = $2 + 8 | 0;
+ $122 = SAFE_HEAP_LOAD($121 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set_ui($122, 1) | 0;
+ $$2 = $120;
+ STACKTOP = sp;
+ return $$2 | 0;
+}
+
+function _finalize($0) {
+ $0 = $0 | 0;
+ var $$ = 0, $$lcssa = 0, $$mask = 0, $$mask$i115 = 0, $$phi$trans$insert = 0, 
$$pre = 0, $$pre$phiZ2D = 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;
+ 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, $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, dest = 0, label = 0, 
sp = 0, stop = 0;
+ sp = STACKTOP;
+ $1 = $0 + 40 | 0;
+ $2 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $$mask = $2 & 1;
+ $3 = $$mask << 24 >> 24 == 0;
+ if (!$3) {
+  return;
+ }
+ $4 = $0 + 36 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == 64;
+ if ($6) {
+  $7 = $0 + 41 | 0;
+  _transform_1700($0, $7);
+  SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+  $8 = $0 + 32 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = $9 + 1 | 0;
+  SAFE_HEAP_STORE($8 | 0, $10 | 0, 4);
+  $$pre$phiZ2D = $8;
+  $12 = $10;
+  $15 = 0;
+ } else {
+  $$phi$trans$insert = $0 + 32 | 0;
+  $$pre = SAFE_HEAP_LOAD($$phi$trans$insert | 0, 4, 0) | 0 | 0;
+  $$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;
+ $$ = $17 + $13 | 0;
+ $18 = $14 << 3;
+ $19 = $$ << 3;
+ $20 = $14 >>> 29;
+ $21 = $19 | $20;
+ $22 = ($15 | 0) < 56;
+ $23 = $15 + 1 | 0;
+ SAFE_HEAP_STORE($4 | 0, $23 | 0, 4);
+ $24 = $0 + 41 | 0;
+ $25 = ($0 + 41 | 0) + $15 | 0;
+ SAFE_HEAP_STORE($25 >> 0 | 0, -128 | 0, 1);
+ $26 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ if ($22) {
+  $28 = ($26 | 0) < 56;
+  if ($28) {
+   $30 = $26;
+   while (1) {
+    $29 = $30 + 1 | 0;
+    SAFE_HEAP_STORE($4 | 0, $29 | 0, 4);
+    $31 = ($0 + 41 | 0) + $30 | 0;
+    SAFE_HEAP_STORE($31 >> 0 | 0, 0 | 0, 1);
+    $32 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    $33 = ($32 | 0) < 56;
+    if ($33) {
+     $30 = $32;
+    } else {
+     break;
+    }
+   }
+  }
+ } else {
+  $27 = ($26 | 0) < 64;
+  if ($27) {
+   $35 = $26;
+   while (1) {
+    $34 = $35 + 1 | 0;
+    SAFE_HEAP_STORE($4 | 0, $34 | 0, 4);
+    $36 = ($0 + 41 | 0) + $35 | 0;
+    SAFE_HEAP_STORE($36 >> 0 | 0, 0 | 0, 1);
+    $37 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    $38 = ($37 | 0) < 64;
+    if ($38) {
+     $35 = $37;
+    } else {
+     $$lcssa = $37;
+     break;
+    }
+   }
+  } else {
+   $$lcssa = $26;
+  }
+  $39 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+  $$mask$i115 = $39 & 1;
+  $40 = $$mask$i115 << 24 >> 24 == 0;
+  $41 = ($$lcssa | 0) == 64;
+  $or$cond = $41 & $40;
+  if ($or$cond) {
+   $42 = $0 + 41 | 0;
+   _transform_1700($0, $42);
+   SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+   $43 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+   $44 = $43 + 1 | 0;
+   SAFE_HEAP_STORE($$pre$phiZ2D | 0, $44 | 0, 4);
+  }
+  dest = $24;
+  stop = dest + 56 | 0;
+  do {
+   SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+   dest = dest + 1 | 0;
+  } while ((dest | 0) < (stop | 0));
+ }
+ $45 = $0 + 97 | 0;
+ SAFE_HEAP_STORE($45 >> 0 | 0, 0 | 0, 1);
+ $46 = $0 + 98 | 0;
+ SAFE_HEAP_STORE($46 >> 0 | 0, 0 | 0, 1);
+ $47 = $$ >>> 5;
+ $48 = $47 & 255;
+ $49 = $0 + 99 | 0;
+ SAFE_HEAP_STORE($49 >> 0 | 0, $48 | 0, 1);
+ $50 = $21 & 255;
+ $51 = $0 + 100 | 0;
+ SAFE_HEAP_STORE($51 >> 0 | 0, $50 | 0, 1);
+ $52 = $14 >>> 21;
+ $53 = $52 & 255;
+ $54 = $0 + 101 | 0;
+ SAFE_HEAP_STORE($54 >> 0 | 0, $53 | 0, 1);
+ $55 = $14 >>> 13;
+ $56 = $55 & 255;
+ $57 = $0 + 102 | 0;
+ SAFE_HEAP_STORE($57 >> 0 | 0, $56 | 0, 1);
+ $58 = $14 >>> 5;
+ $59 = $58 & 255;
+ $60 = $0 + 103 | 0;
+ SAFE_HEAP_STORE($60 >> 0 | 0, $59 | 0, 1);
+ $61 = $18 & 255;
+ $62 = $0 + 104 | 0;
+ SAFE_HEAP_STORE($62 >> 0 | 0, $61 | 0, 1);
+ _transform_1700($0, $24);
+ $63 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $64 = $63 >>> 24;
+ $65 = $64 & 255;
+ $66 = $0 + 42 | 0;
+ SAFE_HEAP_STORE($24 >> 0 | 0, $65 | 0, 1);
+ $67 = $63 >>> 16;
+ $68 = $67 & 255;
+ $69 = $0 + 43 | 0;
+ SAFE_HEAP_STORE($66 >> 0 | 0, $68 | 0, 1);
+ $70 = $63 >>> 8;
+ $71 = $70 & 255;
+ $72 = $0 + 44 | 0;
+ SAFE_HEAP_STORE($69 >> 0 | 0, $71 | 0, 1);
+ $73 = $63 & 255;
+ $74 = $0 + 45 | 0;
+ SAFE_HEAP_STORE($72 >> 0 | 0, $73 | 0, 1);
+ $75 = $0 + 4 | 0;
+ $76 = SAFE_HEAP_LOAD($75 | 0, 4, 0) | 0 | 0;
+ $77 = $76 >>> 24;
+ $78 = $77 & 255;
+ $79 = $0 + 46 | 0;
+ SAFE_HEAP_STORE($74 >> 0 | 0, $78 | 0, 1);
+ $80 = $76 >>> 16;
+ $81 = $80 & 255;
+ $82 = $0 + 47 | 0;
+ SAFE_HEAP_STORE($79 >> 0 | 0, $81 | 0, 1);
+ $83 = $76 >>> 8;
+ $84 = $83 & 255;
+ $85 = $0 + 48 | 0;
+ SAFE_HEAP_STORE($82 >> 0 | 0, $84 | 0, 1);
+ $86 = $76 & 255;
+ $87 = $0 + 49 | 0;
+ SAFE_HEAP_STORE($85 >> 0 | 0, $86 | 0, 1);
+ $88 = $0 + 8 | 0;
+ $89 = SAFE_HEAP_LOAD($88 | 0, 4, 0) | 0 | 0;
+ $90 = $89 >>> 24;
+ $91 = $90 & 255;
+ $92 = $0 + 50 | 0;
+ SAFE_HEAP_STORE($87 >> 0 | 0, $91 | 0, 1);
+ $93 = $89 >>> 16;
+ $94 = $93 & 255;
+ $95 = $0 + 51 | 0;
+ SAFE_HEAP_STORE($92 >> 0 | 0, $94 | 0, 1);
+ $96 = $89 >>> 8;
+ $97 = $96 & 255;
+ $98 = $0 + 52 | 0;
+ SAFE_HEAP_STORE($95 >> 0 | 0, $97 | 0, 1);
+ $99 = $89 & 255;
+ $100 = $0 + 53 | 0;
+ SAFE_HEAP_STORE($98 >> 0 | 0, $99 | 0, 1);
+ $101 = $0 + 12 | 0;
+ $102 = SAFE_HEAP_LOAD($101 | 0, 4, 0) | 0 | 0;
+ $103 = $102 >>> 24;
+ $104 = $103 & 255;
+ $105 = $0 + 54 | 0;
+ SAFE_HEAP_STORE($100 >> 0 | 0, $104 | 0, 1);
+ $106 = $102 >>> 16;
+ $107 = $106 & 255;
+ $108 = $0 + 55 | 0;
+ SAFE_HEAP_STORE($105 >> 0 | 0, $107 | 0, 1);
+ $109 = $102 >>> 8;
+ $110 = $109 & 255;
+ $111 = $0 + 56 | 0;
+ SAFE_HEAP_STORE($108 >> 0 | 0, $110 | 0, 1);
+ $112 = $102 & 255;
+ $113 = $0 + 57 | 0;
+ SAFE_HEAP_STORE($111 >> 0 | 0, $112 | 0, 1);
+ $114 = $0 + 16 | 0;
+ $115 = SAFE_HEAP_LOAD($114 | 0, 4, 0) | 0 | 0;
+ $116 = $115 >>> 24;
+ $117 = $116 & 255;
+ $118 = $0 + 58 | 0;
+ SAFE_HEAP_STORE($113 >> 0 | 0, $117 | 0, 1);
+ $119 = $115 >>> 16;
+ $120 = $119 & 255;
+ $121 = $0 + 59 | 0;
+ SAFE_HEAP_STORE($118 >> 0 | 0, $120 | 0, 1);
+ $122 = $115 >>> 8;
+ $123 = $122 & 255;
+ $124 = $0 + 60 | 0;
+ SAFE_HEAP_STORE($121 >> 0 | 0, $123 | 0, 1);
+ $125 = $115 & 255;
+ $126 = $0 + 61 | 0;
+ SAFE_HEAP_STORE($124 >> 0 | 0, $125 | 0, 1);
+ $127 = $0 + 20 | 0;
+ $128 = SAFE_HEAP_LOAD($127 | 0, 4, 0) | 0 | 0;
+ $129 = $128 >>> 24;
+ $130 = $129 & 255;
+ $131 = $0 + 62 | 0;
+ SAFE_HEAP_STORE($126 >> 0 | 0, $130 | 0, 1);
+ $132 = $128 >>> 16;
+ $133 = $132 & 255;
+ $134 = $0 + 63 | 0;
+ SAFE_HEAP_STORE($131 >> 0 | 0, $133 | 0, 1);
+ $135 = $128 >>> 8;
+ $136 = $135 & 255;
+ $137 = $0 + 64 | 0;
+ SAFE_HEAP_STORE($134 >> 0 | 0, $136 | 0, 1);
+ $138 = $128 & 255;
+ $139 = $0 + 65 | 0;
+ SAFE_HEAP_STORE($137 >> 0 | 0, $138 | 0, 1);
+ $140 = $0 + 24 | 0;
+ $141 = SAFE_HEAP_LOAD($140 | 0, 4, 0) | 0 | 0;
+ $142 = $141 >>> 24;
+ $143 = $142 & 255;
+ $144 = $0 + 66 | 0;
+ SAFE_HEAP_STORE($139 >> 0 | 0, $143 | 0, 1);
+ $145 = $141 >>> 16;
+ $146 = $145 & 255;
+ $147 = $0 + 67 | 0;
+ SAFE_HEAP_STORE($144 >> 0 | 0, $146 | 0, 1);
+ $148 = $141 >>> 8;
+ $149 = $148 & 255;
+ $150 = $0 + 68 | 0;
+ SAFE_HEAP_STORE($147 >> 0 | 0, $149 | 0, 1);
+ $151 = $141 & 255;
+ $152 = $0 + 69 | 0;
+ SAFE_HEAP_STORE($150 >> 0 | 0, $151 | 0, 1);
+ $153 = $0 + 28 | 0;
+ $154 = SAFE_HEAP_LOAD($153 | 0, 4, 0) | 0 | 0;
+ $155 = $154 >>> 24;
+ $156 = $155 & 255;
+ $157 = $0 + 70 | 0;
+ SAFE_HEAP_STORE($152 >> 0 | 0, $156 | 0, 1);
+ $158 = $154 >>> 16;
+ $159 = $158 & 255;
+ $160 = $0 + 71 | 0;
+ SAFE_HEAP_STORE($157 >> 0 | 0, $159 | 0, 1);
+ $161 = $154 >>> 8;
+ $162 = $161 & 255;
+ $163 = $0 + 72 | 0;
+ SAFE_HEAP_STORE($160 >> 0 | 0, $162 | 0, 1);
+ $164 = $154 & 255;
+ SAFE_HEAP_STORE($163 >> 0 | 0, $164 | 0, 1);
+ $165 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $166 = $165 | 1;
+ SAFE_HEAP_STORE($1 >> 0 | 0, $166 | 0, 1);
+ return;
+}
+
+function __gcry_hmac256_new($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$05765 = 0, $$3 = 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, $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, 
$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, 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;
+ }
+ SAFE_HEAP_STORE($3 | 0, 1779033703 | 0, 4);
+ $5 = $3 + 4 | 0;
+ SAFE_HEAP_STORE($5 | 0, -1150833019 | 0, 4);
+ $6 = $3 + 8 | 0;
+ SAFE_HEAP_STORE($6 | 0, 1013904242 | 0, 4);
+ $7 = $3 + 12 | 0;
+ SAFE_HEAP_STORE($7 | 0, -1521486534 | 0, 4);
+ $8 = $3 + 16 | 0;
+ SAFE_HEAP_STORE($8 | 0, 1359893119 | 0, 4);
+ $9 = $3 + 20 | 0;
+ SAFE_HEAP_STORE($9 | 0, -1694144372 | 0, 4);
+ $10 = $3 + 24 | 0;
+ SAFE_HEAP_STORE($10 | 0, 528734635 | 0, 4);
+ $11 = $3 + 28 | 0;
+ SAFE_HEAP_STORE($11 | 0, 1541459225 | 0, 4);
+ $12 = $3 + 32 | 0;
+ SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+ $13 = $3 + 36 | 0;
+ SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+ $14 = $3 + 40 | 0;
+ SAFE_HEAP_STORE($14 >> 0 | 0, 0 | 0, 1);
+ $15 = ($0 | 0) == (0 | 0);
+ if ($15) {
+  $$3 = $3;
+  STACKTOP = sp;
+  return $$3 | 0;
+ }
+ dest = $2;
+ stop = dest + 64 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+  dest = dest + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $16 = $3 + 105 | 0;
+ dest = $16;
+ stop = dest + 64 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+  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;
+   $$05765 = 0;
+  } else {
+   $18 = _malloc(172) | 0;
+   $19 = ($18 | 0) == (0 | 0);
+   if (!$19) {
+    SAFE_HEAP_STORE($18 | 0, 1779033703 | 0, 4);
+    $20 = $18 + 4 | 0;
+    SAFE_HEAP_STORE($20 | 0, -1150833019 | 0, 4);
+    $21 = $18 + 8 | 0;
+    SAFE_HEAP_STORE($21 | 0, 1013904242 | 0, 4);
+    $22 = $18 + 12 | 0;
+    SAFE_HEAP_STORE($22 | 0, -1521486534 | 0, 4);
+    $23 = $18 + 16 | 0;
+    SAFE_HEAP_STORE($23 | 0, 1359893119 | 0, 4);
+    $24 = $18 + 20 | 0;
+    SAFE_HEAP_STORE($24 | 0, -1694144372 | 0, 4);
+    $25 = $18 + 24 | 0;
+    SAFE_HEAP_STORE($25 | 0, 528734635 | 0, 4);
+    $26 = $18 + 28 | 0;
+    SAFE_HEAP_STORE($26 | 0, 1541459225 | 0, 4);
+    $27 = $18 + 32 | 0;
+    SAFE_HEAP_STORE($27 | 0, 0 | 0, 4);
+    $28 = $18 + 36 | 0;
+    SAFE_HEAP_STORE($28 | 0, 0 | 0, 4);
+    $29 = $18 + 40 | 0;
+    SAFE_HEAP_STORE($29 >> 0 | 0, 0 | 0, 1);
+    __gcry_hmac256_update($18, $0, $1);
+    _finalize($18);
+    $30 = $18 + 41 | 0;
+    dest = $2;
+    src = $30;
+    stop = dest + 32 | 0;
+    do {
+     SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+     dest = dest + 1 | 0;
+     src = src + 1 | 0;
+    } while ((dest | 0) < (stop | 0));
+    dest = $16;
+    src = $30;
+    stop = dest + 32 | 0;
+    do {
+     SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+     dest = dest + 1 | 0;
+     src = src + 1 | 0;
+    } while ((dest | 0) < (stop | 0));
+    __gcry_hmac256_release($18);
+    $$05765 = 0;
+    break;
+   }
+   _free($3);
+   $$3 = 0;
+   STACKTOP = sp;
+   return $$3 | 0;
+  }
+ } while (0);
+ while (1) {
+  $31 = $2 + $$05765 | 0;
+  $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+  $33 = $32 & 255;
+  $34 = $33 ^ 54;
+  $35 = $34 & 255;
+  SAFE_HEAP_STORE($31 >> 0 | 0, $35 | 0, 1);
+  $36 = $16 + $$05765 | 0;
+  $37 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+  $38 = $37 & 255;
+  $39 = $38 ^ 92;
+  $40 = $39 & 255;
+  SAFE_HEAP_STORE($36 >> 0 | 0, $40 | 0, 1);
+  $41 = $$05765 + 1 | 0;
+  $exitcond = ($41 | 0) == 64;
+  if ($exitcond) {
+   break;
+  } else {
+   $$05765 = $41;
+  }
+ }
+ $42 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+ $43 = $42 | 2;
+ SAFE_HEAP_STORE($14 >> 0 | 0, $43 | 0, 1);
+ __gcry_hmac256_update($3, $2, 64);
+ SAFE_HEAP_STORE($2 >> 0 | 0, 0 | 0, 1);
+ $44 = $2 + 1 | 0;
+ SAFE_HEAP_STORE($44 >> 0 | 0, 0 | 0, 1);
+ $45 = $2 + 2 | 0;
+ SAFE_HEAP_STORE($45 >> 0 | 0, 0 | 0, 1);
+ $46 = $2 + 3 | 0;
+ SAFE_HEAP_STORE($46 >> 0 | 0, 0 | 0, 1);
+ $47 = $2 + 4 | 0;
+ SAFE_HEAP_STORE($47 >> 0 | 0, 0 | 0, 1);
+ $48 = $2 + 5 | 0;
+ SAFE_HEAP_STORE($48 >> 0 | 0, 0 | 0, 1);
+ $49 = $2 + 6 | 0;
+ SAFE_HEAP_STORE($49 >> 0 | 0, 0 | 0, 1);
+ $50 = $2 + 7 | 0;
+ SAFE_HEAP_STORE($50 >> 0 | 0, 0 | 0, 1);
+ $51 = $2 + 8 | 0;
+ SAFE_HEAP_STORE($51 >> 0 | 0, 0 | 0, 1);
+ $52 = $2 + 9 | 0;
+ SAFE_HEAP_STORE($52 >> 0 | 0, 0 | 0, 1);
+ $53 = $2 + 10 | 0;
+ SAFE_HEAP_STORE($53 >> 0 | 0, 0 | 0, 1);
+ $54 = $2 + 11 | 0;
+ SAFE_HEAP_STORE($54 >> 0 | 0, 0 | 0, 1);
+ $55 = $2 + 12 | 0;
+ SAFE_HEAP_STORE($55 >> 0 | 0, 0 | 0, 1);
+ $56 = $2 + 13 | 0;
+ SAFE_HEAP_STORE($56 >> 0 | 0, 0 | 0, 1);
+ $57 = $2 + 14 | 0;
+ SAFE_HEAP_STORE($57 >> 0 | 0, 0 | 0, 1);
+ $58 = $2 + 15 | 0;
+ SAFE_HEAP_STORE($58 >> 0 | 0, 0 | 0, 1);
+ $59 = $2 + 16 | 0;
+ SAFE_HEAP_STORE($59 >> 0 | 0, 0 | 0, 1);
+ $60 = $2 + 17 | 0;
+ SAFE_HEAP_STORE($60 >> 0 | 0, 0 | 0, 1);
+ $61 = $2 + 18 | 0;
+ SAFE_HEAP_STORE($61 >> 0 | 0, 0 | 0, 1);
+ $62 = $2 + 19 | 0;
+ SAFE_HEAP_STORE($62 >> 0 | 0, 0 | 0, 1);
+ $63 = $2 + 20 | 0;
+ SAFE_HEAP_STORE($63 >> 0 | 0, 0 | 0, 1);
+ $64 = $2 + 21 | 0;
+ SAFE_HEAP_STORE($64 >> 0 | 0, 0 | 0, 1);
+ $65 = $2 + 22 | 0;
+ SAFE_HEAP_STORE($65 >> 0 | 0, 0 | 0, 1);
+ $66 = $2 + 23 | 0;
+ SAFE_HEAP_STORE($66 >> 0 | 0, 0 | 0, 1);
+ $67 = $2 + 24 | 0;
+ SAFE_HEAP_STORE($67 >> 0 | 0, 0 | 0, 1);
+ $68 = $2 + 25 | 0;
+ SAFE_HEAP_STORE($68 >> 0 | 0, 0 | 0, 1);
+ $69 = $2 + 26 | 0;
+ SAFE_HEAP_STORE($69 >> 0 | 0, 0 | 0, 1);
+ $70 = $2 + 27 | 0;
+ SAFE_HEAP_STORE($70 >> 0 | 0, 0 | 0, 1);
+ $71 = $2 + 28 | 0;
+ SAFE_HEAP_STORE($71 >> 0 | 0, 0 | 0, 1);
+ $72 = $2 + 29 | 0;
+ SAFE_HEAP_STORE($72 >> 0 | 0, 0 | 0, 1);
+ $73 = $2 + 30 | 0;
+ SAFE_HEAP_STORE($73 >> 0 | 0, 0 | 0, 1);
+ $74 = $2 + 31 | 0;
+ SAFE_HEAP_STORE($74 >> 0 | 0, 0 | 0, 1);
+ $75 = $2 + 32 | 0;
+ SAFE_HEAP_STORE($75 >> 0 | 0, 0 | 0, 1);
+ $76 = $2 + 33 | 0;
+ SAFE_HEAP_STORE($76 >> 0 | 0, 0 | 0, 1);
+ $77 = $2 + 34 | 0;
+ SAFE_HEAP_STORE($77 >> 0 | 0, 0 | 0, 1);
+ $78 = $2 + 35 | 0;
+ SAFE_HEAP_STORE($78 >> 0 | 0, 0 | 0, 1);
+ $79 = $2 + 36 | 0;
+ SAFE_HEAP_STORE($79 >> 0 | 0, 0 | 0, 1);
+ $80 = $2 + 37 | 0;
+ SAFE_HEAP_STORE($80 >> 0 | 0, 0 | 0, 1);
+ $81 = $2 + 38 | 0;
+ SAFE_HEAP_STORE($81 >> 0 | 0, 0 | 0, 1);
+ $82 = $2 + 39 | 0;
+ SAFE_HEAP_STORE($82 >> 0 | 0, 0 | 0, 1);
+ $83 = $2 + 40 | 0;
+ SAFE_HEAP_STORE($83 >> 0 | 0, 0 | 0, 1);
+ $84 = $2 + 41 | 0;
+ SAFE_HEAP_STORE($84 >> 0 | 0, 0 | 0, 1);
+ $85 = $2 + 42 | 0;
+ SAFE_HEAP_STORE($85 >> 0 | 0, 0 | 0, 1);
+ $86 = $2 + 43 | 0;
+ SAFE_HEAP_STORE($86 >> 0 | 0, 0 | 0, 1);
+ $87 = $2 + 44 | 0;
+ SAFE_HEAP_STORE($87 >> 0 | 0, 0 | 0, 1);
+ $88 = $2 + 45 | 0;
+ SAFE_HEAP_STORE($88 >> 0 | 0, 0 | 0, 1);
+ $89 = $2 + 46 | 0;
+ SAFE_HEAP_STORE($89 >> 0 | 0, 0 | 0, 1);
+ $90 = $2 + 47 | 0;
+ SAFE_HEAP_STORE($90 >> 0 | 0, 0 | 0, 1);
+ $91 = $2 + 48 | 0;
+ SAFE_HEAP_STORE($91 >> 0 | 0, 0 | 0, 1);
+ $92 = $2 + 49 | 0;
+ SAFE_HEAP_STORE($92 >> 0 | 0, 0 | 0, 1);
+ $93 = $2 + 50 | 0;
+ SAFE_HEAP_STORE($93 >> 0 | 0, 0 | 0, 1);
+ $94 = $2 + 51 | 0;
+ SAFE_HEAP_STORE($94 >> 0 | 0, 0 | 0, 1);
+ $95 = $2 + 52 | 0;
+ SAFE_HEAP_STORE($95 >> 0 | 0, 0 | 0, 1);
+ $96 = $2 + 53 | 0;
+ SAFE_HEAP_STORE($96 >> 0 | 0, 0 | 0, 1);
+ $97 = $2 + 54 | 0;
+ SAFE_HEAP_STORE($97 >> 0 | 0, 0 | 0, 1);
+ $98 = $2 + 55 | 0;
+ SAFE_HEAP_STORE($98 >> 0 | 0, 0 | 0, 1);
+ $99 = $2 + 56 | 0;
+ SAFE_HEAP_STORE($99 >> 0 | 0, 0 | 0, 1);
+ $100 = $2 + 57 | 0;
+ SAFE_HEAP_STORE($100 >> 0 | 0, 0 | 0, 1);
+ $101 = $2 + 58 | 0;
+ SAFE_HEAP_STORE($101 >> 0 | 0, 0 | 0, 1);
+ $102 = $2 + 59 | 0;
+ SAFE_HEAP_STORE($102 >> 0 | 0, 0 | 0, 1);
+ $103 = $2 + 60 | 0;
+ SAFE_HEAP_STORE($103 >> 0 | 0, 0 | 0, 1);
+ $104 = $2 + 61 | 0;
+ SAFE_HEAP_STORE($104 >> 0 | 0, 0 | 0, 1);
+ $105 = $2 + 62 | 0;
+ SAFE_HEAP_STORE($105 >> 0 | 0, 0 | 0, 1);
+ $106 = $2 + 63 | 0;
+ SAFE_HEAP_STORE($106 >> 0 | 0, 0 | 0, 1);
+ $$3 = $3;
+ STACKTOP = sp;
+ return $$3 | 0;
+}
+
+function __gcry_md_setkey($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$0$i7 = 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, $111 = 0, $112 = 0, $113 = 0, $114 = 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, $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, 
$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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $4 = $3 + 20 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($$idx$val$idx$i | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == (0 | 0);
+ if (!$10) {
+  __gcry_fips_signal_error(36953, 980, 36967, 0, 36979);
+  __gcry_log_error(37e3, $vararg_buffer);
+ }
+ $11 = SAFE_HEAP_LOAD($$idx$val$idx$val$i | 0, 4, 0) | 0 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = ($12 | 0) == 0;
+ if ($13) {
+  $$0 = 5;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $14 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $15 = $14 + 24 | 0;
+ $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $17 = $16 >>> 0 < $2 >>> 0;
+ do {
+  if ($17) {
+   $18 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+   $19 = ($18 | 0) == ($12 | 0);
+   if ($19) {
+    $$ph$i$i = 7620;
+    label = 13;
+   } else {
+    $20 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+    $21 = ($20 | 0) == ($12 | 0);
+    if ($21) {
+     $$ph$i$i = 7756;
+     label = 13;
+    } else {
+     $22 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+     $23 = ($22 | 0) == ($12 | 0);
+     if ($23) {
+      $$ph$i$i = 7696;
+      label = 13;
+     } else {
+      $24 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+      $25 = ($24 | 0) == ($12 | 0);
+      if ($25) {
+       $$ph$i$i = 7820;
+       label = 13;
+      } else {
+       $26 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+       $27 = ($26 | 0) == ($12 | 0);
+       if ($27) {
+        $$ph$i$i = 7884;
+        label = 13;
+       } else {
+        $28 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+        $29 = ($28 | 0) == ($12 | 0);
+        if ($29) {
+         $$ph$i$i = 7456;
+         label = 13;
+        } else {
+         $32 = 0;
+        }
+       }
+      }
+     }
+    }
+   }
+   if ((label | 0) == 13) {
+    $30 = $$ph$i$i + 24 | 0;
+    $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+    $32 = $31;
+   }
+   $33 = __gcry_malloc_secure($32) | 0;
+   $34 = ($33 | 0) == (0 | 0);
+   if ($34) {
+    $83 = ___errno_location() | 0;
+    $84 = SAFE_HEAP_LOAD($83 | 0, 4, 0) | 0 | 0;
+    $85 = _gpg_err_code_from_errno($84) | 0;
+    $86 = ($85 | 0) == 0;
+    if ($86) {
+     break;
+    } else {
+     $$0 = $85;
+    }
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+   __gcry_md_hash_buffer($12, $33, $1, $2);
+   $35 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+   $36 = ($35 | 0) == ($12 | 0);
+   if ($36) {
+    $$ph$i46$i = 7620;
+   } else {
+    $37 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+    $38 = ($37 | 0) == ($12 | 0);
+    if ($38) {
+     $$ph$i46$i = 7756;
+    } else {
+     $39 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+     $40 = ($39 | 0) == ($12 | 0);
+     if ($40) {
+      $$ph$i46$i = 7696;
+     } else {
+      $41 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+      $42 = ($41 | 0) == ($12 | 0);
+      if ($42) {
+       $$ph$i46$i = 7820;
+      } else {
+       $43 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+       $44 = ($43 | 0) == ($12 | 0);
+       if ($44) {
+        $$ph$i46$i = 7884;
+       } else {
+        $45 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+        $46 = ($45 | 0) == ($12 | 0);
+        if ($46) {
+         $$ph$i46$i = 7456;
+        } else {
+         $$pre$i = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+         $$phi$trans$insert$i = $$pre$i + 24 | 0;
+         $$pre50$i = SAFE_HEAP_LOAD($$phi$trans$insert$i | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+   $49 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $50 = $49 + 24 | 0;
+   $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+   $52 = $48 >>> 0 > $51 >>> 0;
+   if ($52) {
+    __gcry_assert_failed(37098, 36953, 716, 37131);
+   } 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 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+  $56 = $57 << 1;
+  _memset($55 | 0, 0, $56 | 0) | 0;
+  $58 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $59 = $58 + 20 | 0;
+  $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+  $61 = $58 + 24 | 0;
+  $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $65 = $64 + 24 | 0;
+  $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+  $67 = ($66 | 0) > 0;
+  if ($67) {
+   $$04549$i = 0;
+   while (1) {
+    $68 = $60 + $$04549$i | 0;
+    $69 = SAFE_HEAP_LOAD($68 >> 0 | 0, 1, 0) | 0 | 0;
+    $70 = $69 & 255;
+    $71 = $70 ^ 54;
+    $72 = $71 & 255;
+    SAFE_HEAP_STORE($68 >> 0 | 0, $72 | 0, 1);
+    $73 = $63 + $$04549$i | 0;
+    $74 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+    $75 = $74 & 255;
+    $76 = $75 ^ 92;
+    $77 = $76 & 255;
+    SAFE_HEAP_STORE($73 >> 0 | 0, $77 | 0, 1);
+    $78 = $$04549$i + 1 | 0;
+    $79 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    $80 = $79 + 24 | 0;
+    $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+    $82 = ($78 | 0) < ($81 | 0);
+    if ($82) {
+     $$04549$i = $78;
+    } else {
+     break;
+    }
+   }
+  }
+  __gcry_free($$043$i);
+ }
+ $87 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $88 = $87 + 12 | 0;
+ $89 = SAFE_HEAP_LOAD($88 >> 0 | 0, 1, 0) | 0 | 0;
+ $90 = $89 & -3;
+ SAFE_HEAP_STORE($88 >> 0 | 0, $90 | 0, 1);
+ $91 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($91 | 0, 0 | 0, 4);
+ $92 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $93 = $92 + 16 | 0;
+ $$015$i = SAFE_HEAP_LOAD($93 | 0, 4, 0) | 0 | 0;
+ $94 = ($$015$i | 0) == (0 | 0);
+ if ($94) {
+  $110 = $92;
+ } else {
+  $$016$i = $$015$i;
+  while (1) {
+   $95 = $$016$i + 16 | 0;
+   $96 = SAFE_HEAP_LOAD($$016$i | 0, 4, 0) | 0 | 0;
+   $97 = $96 + 44 | 0;
+   $98 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+   _memset($95 | 0, 0, $98 | 0) | 0;
+   $99 = $96 + 28 | 0;
+   $100 = SAFE_HEAP_LOAD($99 | 0, 4, 0) | 0 | 0;
+   $101 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $102 = $101 + 12 | 0;
+   $103 = SAFE_HEAP_LOAD($102 >> 0 | 0, 1, 0) | 0 | 0;
+   $104 = $103 & 4;
+   $105 = $104 & 255;
+   $106 = $105 << 6;
+   FUNCTION_TABLE_vii[(SAFE_FT_MASK($100 | 0, 63 | 0) | 0) & 63]($95, $106);
+   $107 = $$016$i + 4 | 0;
+   $$0$i7 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+   $108 = ($$0$i7 | 0) == (0 | 0);
+   if ($108) {
+    break;
+   } else {
+    $$016$i = $$0$i7;
+   }
+  }
+  $$pre$i9 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $110 = $$pre$i9;
+ }
+ $109 = $110 + 20 | 0;
+ $111 = SAFE_HEAP_LOAD($109 | 0, 4, 0) | 0 | 0;
+ $112 = ($111 | 0) == (0 | 0);
+ if ($112) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $113 = $110 + 24 | 0;
+ $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+ _md_write($0, $111, $114);
+ $$0 = 0;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function __gcry_pk_util_preparse_encval($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$02325$i = 0, $$07298 = 0, $$1$i = 0, $$174 = 0, $$176$ph = 0, $$197 = 
0, $$2 = 0, $$3 = 0, $$4 = 0, $$5 = 0, $$pr91 = 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, $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, $9 = 0, 
$cond$i = 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;
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ $6 = __gcry_sexp_find_token($0, 40685, 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, 46885) | 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 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 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, 37537, 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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+          $$02325$i = 0;
+          while (1) {
+           $23 = 4248 + ($$02325$i << 3) | 0;
+           $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+           $25 = _strlen($24) | 0;
+           $26 = ($25 | 0) == ($22 | 0);
+           if ($26) {
+            $27 = _memcmp($24, $20, $22) | 0;
+            $28 = ($27 | 0) == 0;
+            if ($28) {
+             label = 13;
+             break;
+            }
+           }
+           $29 = $$02325$i + 1 | 0;
+           $cond$i = ($29 | 0) == 12;
+           if ($cond$i) {
+            label = 14;
+            break;
+           } else {
+            $$02325$i = $29;
+           }
+          }
+          do {
+           if ((label | 0) == 13) {
+            $30 = (4248 + ($$02325$i << 3) | 0) + 4 | 0;
+            $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+            $$1$i = $31;
+           } else if ((label | 0) == 14) {
+            $32 = $22 + 1 | 0;
+            $33 = __gcry_malloc($32) | 0;
+            $34 = ($33 | 0) == (0 | 0);
+            if ($34) {
+             $35 = $3 + 16 | 0;
+             SAFE_HEAP_STORE($35 | 0, 0 | 0, 4);
+             $$2 = $10;
+             $$4 = $18;
+             $$5 = 5;
+             break L1;
+            } else {
+             _memcpy($33 | 0, $20 | 0, $22 | 0) | 0;
+             $36 = $33 + $22 | 0;
+             SAFE_HEAP_STORE($36 >> 0 | 0, 0 | 0, 1);
+             $37 = __gcry_md_map_name($33) | 0;
+             __gcry_free($33);
+             $$1$i = $37;
+             break;
+            }
+           }
+          } while (0);
+          $38 = $3 + 16 | 0;
+          SAFE_HEAP_STORE($38 | 0, $$1$i | 0, 4);
+          $39 = ($$1$i | 0) == 0;
+          if ($39) {
+           $$2 = $10;
+           $$4 = $18;
+           $$5 = 5;
+           break L1;
+          }
+         }
+         __gcry_sexp_release($18);
+         $40 = __gcry_sexp_find_token($6, 37547, 0) | 0;
+         $41 = ($40 | 0) == (0 | 0);
+         if ($41) {
+          $$176$ph = 0;
+         } else {
+          $42 = __gcry_sexp_nth_data($40, 1, $4) | 0;
+          $43 = ($42 | 0) == (0 | 0);
+          if ($43) {
+           $$2 = $10;
+           $$4 = $40;
+           $$5 = 68;
+           break L1;
+          }
+          $44 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+          $45 = ($44 | 0) == 0;
+          if ($45) {
+           $$176$ph = $40;
+          } else {
+           $46 = __gcry_malloc($44) | 0;
+           $47 = $3 + 20 | 0;
+           SAFE_HEAP_STORE($47 | 0, $46 | 0, 4);
+           $48 = ($46 | 0) == (0 | 0);
+           if ($48) {
+            $51 = _gpg_err_code_from_syserror() | 0;
+            $52 = ($51 | 0) == 0;
+            if ($52) {
+             $$176$ph = $40;
+             break L8;
+            } else {
+             $$2 = $10;
+             $$4 = $40;
+             $$5 = $51;
+             break L1;
+            }
+           } else {
+            $49 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+            _memcpy($46 | 0, $42 | 0, $49 | 0) | 0;
+            $50 = $3 + 24 | 0;
+            SAFE_HEAP_STORE($50 | 0, $49 | 0, 4);
+            $$176$ph = $40;
+            break L8;
+           }
+          }
+         }
+         break;
+        }
+       default:
+        {
+         $$176$ph = $8;
+        }
+       }
+      } while (0);
+      __gcry_sexp_release($$176$ph);
+      $53 = __gcry_sexp_nth($6, 2) | 0;
+      $54 = ($53 | 0) == (0 | 0);
+      if ($54) {
+       $$2 = $10;
+       $$4 = 0;
+       $$5 = 68;
+       break;
+      } else {
+       $$07298 = 2;
+       $55 = $53;
+      }
+      L33 : while (1) {
+       $56 = __gcry_sexp_nth_data($55, 0, $4) | 0;
+       $57 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+       switch ($57 | 0) {
+       case 9:
+        {
+         $58 = _memcmp($56, 37537, 9) | 0;
+         $59 = ($58 | 0) == 0;
+         if (!$59) {
+          break L33;
+         }
+         break;
+        }
+       case 5:
+        {
+         $60 = _memcmp($56, 37547, 5) | 0;
+         $61 = ($60 | 0) == 0;
+         if (!$61) {
+          break L33;
+         }
+         break;
+        }
+       case 15:
+        {
+         $62 = _memcmp($56, 37553, 15) | 0;
+         $63 = ($62 | 0) == 0;
+         if (!$63) {
+          break L33;
+         }
+         break;
+        }
+       default:
+        {
+         break L33;
+        }
+       }
+       $64 = $$07298 + 1 | 0;
+       __gcry_sexp_release($55);
+       $65 = __gcry_sexp_nth($6, $64) | 0;
+       $66 = ($65 | 0) == (0 | 0);
+       if ($66) {
+        $$2 = $10;
+        $$4 = 0;
+        $$5 = 68;
+        break L1;
+       } else {
+        $$07298 = $64;
+        $55 = $65;
+       }
+      }
+      __gcry_free($10);
+      $67 = __gcry_sexp_nth_string($55, 0) | 0;
+      $68 = ($67 | 0) == (0 | 0);
+      if ($68) {
+       $$2 = 0;
+       $$4 = $55;
+       $$5 = 65;
+       break;
+      } else {
+       $$174 = $67;
+       $$3 = $55;
+      }
+     } else {
+      SAFE_HEAP_STORE($5 | 0, 8 | 0, 4);
+      $$174 = $10;
+      $$3 = $8;
+     }
+     $69 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+     $70 = ($69 | 0) == (0 | 0);
+     if ($70) {
+      $$2 = $$174;
+      $$4 = $$3;
+      $$5 = 70;
+     } else {
+      $$197 = 0;
+      $$pr91 = $69;
+      while (1) {
+       $75 = _strcasecmp($$174, $$pr91) | 0;
+       $76 = ($75 | 0) == 0;
+       $72 = $$197 + 1 | 0;
+       if ($76) {
+        break;
+       }
+       $71 = $1 + ($72 << 2) | 0;
+       $73 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+       $74 = ($73 | 0) == (0 | 0);
+       if ($74) {
+        $$2 = $$174;
+        $$4 = $$3;
+        $$5 = 70;
+        break L1;
+       } else {
+        $$197 = $72;
+        $$pr91 = $73;
+       }
+      }
+      SAFE_HEAP_STORE($2 | 0, $$3 | 0, 4);
+      $77 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      $78 = $3 + 12 | 0;
+      $79 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+      $80 = $79 | $77;
+      SAFE_HEAP_STORE($78 | 0, $80 | 0, 4);
+      $$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 _gen_prime($0, $1, $2, $3, $4) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ $4 = $4 | 0;
+ var $$087111 = 0, $$087111$us = 0, $$092108 = 0, $$092108$us = 0, $$093105 = 
0, $$1 = 0, $$1$us = 0, $$194107 = 0, $$194107$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) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, 16 | 0, 4);
+  __gcry_log_fatal(37221, $vararg_buffer);
+ }
+ $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;
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ $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);
+  $$093105 = 0;
+  while (1) {
+   $51 = 16424 + ($$093105 << 1) | 0;
+   $52 = SAFE_HEAP_LOAD($51 | 0, 2, 0) | 0 | 0;
+   $53 = $52 & 65535;
+   $54 = __gcry_mpi_fdiv_r_ui(0, $13, $53) | 0;
+   $55 = $7 + ($$093105 << 2) | 0;
+   SAFE_HEAP_STORE($55 | 0, $54 | 0, 4);
+   $56 = $$093105 + 1 | 0;
+   $57 = ($56 | 0) == 668;
+   if ($57) {
+    break;
+   } else {
+    $$093105 = $56;
+   }
+  }
+  L16 : do {
+   if ($20) {
+    $$087111$us = 0;
+    $$092108$us = 0;
+    while (1) {
+     $$194107$us = 0;
+     $27 = 3;
+     while (1) {
+      $47 = $7 + ($$194107$us << 2) | 0;
+      $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+      $49 = $48 + $$092108$us | 0;
+      $50 = $49 >>> 0 < $27 >>> 0;
+      if ($50) {
+       $$lcssa$us = $49;
+      } else {
+       $28 = $48;
+       while (1) {
+        $26 = $28 - $27 | 0;
+        $29 = $26 + $$092108$us | 0;
+        $30 = $29 >>> 0 < $27 >>> 0;
+        if ($30) {
+         break;
+        } else {
+         $28 = $26;
+        }
+       }
+       SAFE_HEAP_STORE($47 | 0, $26 | 0, 4);
+       $$lcssa$us = $29;
+      }
+      $31 = ($$lcssa$us | 0) == 0;
+      $22 = $$194107$us + 1 | 0;
+      if ($31) {
+       $$1$us = $$087111$us;
+       break;
+      }
+      $21 = 16424 + ($22 << 1) | 0;
+      $23 = SAFE_HEAP_LOAD($21 | 0, 2, 0) | 0 | 0;
+      $24 = $23 & 65535;
+      $25 = ($22 | 0) == 668;
+      if ($25) {
+       label = 15;
+       break;
+      } else {
+       $$194107$us = $22;
+       $27 = $24;
+      }
+     }
+     if ((label | 0) == 15) {
+      label = 0;
+      __gcry_mpi_add_ui($16, $13, $$092108$us);
+      $32 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      $33 = $32 + 1 | 0;
+      SAFE_HEAP_STORE($5 | 0, $33 | 0, 4);
+      __gcry_mpi_sub_ui($15, $16, 1);
+      __gcry_mpi_powm($14, $8, $15, $16);
+      $34 = __gcry_mpi_cmp_ui($14, 1) | 0;
+      $35 = ($34 | 0) == 0;
+      if ($35) {
+       $36 = _is_prime($16, 5, $5) | 0;
+       $37 = ($36 | 0) == 0;
+       if (!$37) {
+        break;
+       }
+      }
+      $40 = $$087111$us + 1 | 0;
+      $41 = ($40 | 0) == 10;
+      if ($41) {
+       $42 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+       $43 = ($42 | 0) == (0 | 0);
+       if ($43) {
+        $$1$us = 0;
+       } else {
+        $44 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+        FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($42 | 0, 127 | 0) | 0) & 127]($44, 
37212, 46, 0, 0);
+        $$1$us = 0;
+       }
+      } else {
+       $$1$us = $40;
+      }
+     }
+     $45 = $$092108$us + 2 | 0;
+     $46 = $45 >>> 0 < 2e4;
+     if ($46) {
+      $$087111$us = $$1$us;
+      $$092108$us = $45;
+     } else {
+      break L16;
+     }
+    }
+    $38 = __gcry_mpi_test_bit($16, $19) | 0;
+    $39 = ($38 | 0) == 0;
+    if ($39) {
+     label = 34;
+    } else {
+     label = 46;
+     break L8;
+    }
+   } else {
+    $$087111 = 0;
+    $$092108 = 0;
+    while (1) {
+     $$194107 = 0;
+     $67 = 3;
+     while (1) {
+      $63 = $7 + ($$194107 << 2) | 0;
+      $64 = SAFE_HEAP_LOAD($63 | 0, 4, 0) | 0 | 0;
+      $65 = $64 + $$092108 | 0;
+      $66 = $65 >>> 0 < $67 >>> 0;
+      if ($66) {
+       $$lcssa = $65;
+      } else {
+       $69 = $64;
+       while (1) {
+        $68 = $69 - $67 | 0;
+        $70 = $68 + $$092108 | 0;
+        $71 = $70 >>> 0 < $67 >>> 0;
+        if ($71) {
+         break;
+        } else {
+         $69 = $68;
+        }
+       }
+       SAFE_HEAP_STORE($63 | 0, $68 | 0, 4);
+       $$lcssa = $70;
+      }
+      $72 = ($$lcssa | 0) == 0;
+      $59 = $$194107 + 1 | 0;
+      if ($72) {
+       $$1 = $$087111;
+       break;
+      }
+      $58 = 16424 + ($59 << 1) | 0;
+      $60 = SAFE_HEAP_LOAD($58 | 0, 2, 0) | 0 | 0;
+      $61 = $60 & 65535;
+      $62 = ($59 | 0) == 668;
+      if ($62) {
+       label = 31;
+       break;
+      } else {
+       $$194107 = $59;
+       $67 = $61;
+      }
+     }
+     if ((label | 0) == 31) {
+      label = 0;
+      __gcry_mpi_add_ui($16, $13, $$092108);
+      $73 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      $74 = $73 + 1 | 0;
+      SAFE_HEAP_STORE($5 | 0, $74 | 0, 4);
+      __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 = 34;
+         break L16;
+        }
+        $84 = FUNCTION_TABLE_iii[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 
127]($4, $16) | 0;
+        $85 = ($84 | 0) == 0;
+        if ($85) {
+         label = 46;
+         break L8;
+        }
+        $86 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+        $87 = ($86 | 0) == (0 | 0);
+        if (!$87) {
+         $88 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+         FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($86 | 0, 127 | 0) | 0) & 
127]($88, 37212, 47, 0, 0);
+        }
+       }
+      }
+      $89 = $$087111 + 1 | 0;
+      $90 = ($89 | 0) == 10;
+      if ($90) {
+       $91 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+       $92 = ($91 | 0) == (0 | 0);
+       if ($92) {
+        $$1 = 0;
+       } else {
+        $93 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+        FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($91 | 0, 127 | 0) | 0) & 127]($93, 
37212, 46, 0, 0);
+        $$1 = 0;
+       }
+      } else {
+       $$1 = $89;
+      }
+     }
+     $94 = $$092108 + 2 | 0;
+     $95 = $94 >>> 0 < 2e4;
+     if ($95) {
+      $$087111 = $$1;
+      $$092108 = $94;
+     } else {
+      break;
+     }
+    }
+   }
+  } while (0);
+  if ((label | 0) == 34) {
+   label = 0;
+   $81 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+   $82 = ($81 | 0) == (0 | 0);
+   if (!$82) {
+    $83 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+    FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($81 | 0, 127 | 0) | 0) & 127]($83, 
37212, 10, 0, 0);
+   }
+   __gcry_log_debug(37268, $vararg_buffer1);
+  }
+  $96 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+  $97 = ($96 | 0) == (0 | 0);
+  if ($97) {
+   continue;
+  }
+  $98 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($96 | 0, 127 | 0) | 0) & 127]($98, 
37212, 58, 0, 0);
+ }
+ if ((label | 0) == 46) {
+  __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 __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, $$070 = 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, 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ if (!$8) {
+  FUNCTION_TABLE_v[(SAFE_FT_MASK($7 | 0, 127 | 0) | 0) & 127]();
+ }
+ $9 = $0 + 488 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = ($4 | 0) == 0;
+ if ($11) {
+  $12 = $5;
+  $13 = $12;
+  SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+  $14 = $12 + 4 | 0;
+  $15 = $14;
+  SAFE_HEAP_STORE($15 | 0, 0 | 0, 4);
+  $16 = $5 + 8 | 0;
+  $17 = $16;
+  $18 = $17;
+  SAFE_HEAP_STORE($18 | 0, 0 | 0, 4);
+  $19 = $17 + 4 | 0;
+  $20 = $19;
+  SAFE_HEAP_STORE($20 | 0, 0 | 0, 4);
+  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[(SAFE_FT_MASK($10 | 0, 127 | 0) | 0) & 127]($0, 
$5, $1) | 0;
+  $40 = $$06383;
+  $41 = $$06982;
+  $42 = $40 | $41;
+  $43 = $42 & 3;
+  $44 = ($43 | 0) == 0;
+  if ($44) {
+   $123 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $124 = $$06982 + 4 | 0;
+   $125 = SAFE_HEAP_LOAD($$06982 | 0, 4, 0) | 0 | 0;
+   $126 = $125 ^ $123;
+   $127 = $$06383 + 4 | 0;
+   SAFE_HEAP_STORE($$06383 | 0, $126 | 0, 4);
+   $128 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   $129 = $$06982 + 8 | 0;
+   $130 = SAFE_HEAP_LOAD($124 | 0, 4, 0) | 0 | 0;
+   $131 = $130 ^ $128;
+   $132 = $$06383 + 8 | 0;
+   SAFE_HEAP_STORE($127 | 0, $131 | 0, 4);
+   $133 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+   $134 = $$06982 + 12 | 0;
+   $135 = SAFE_HEAP_LOAD($129 | 0, 4, 0) | 0 | 0;
+   $136 = $135 ^ $133;
+   $137 = $$06383 + 12 | 0;
+   SAFE_HEAP_STORE($132 | 0, $136 | 0, 4);
+   $138 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+   $139 = SAFE_HEAP_LOAD($134 | 0, 4, 0) | 0 | 0;
+   $140 = $139 ^ $138;
+   SAFE_HEAP_STORE($137 | 0, $140 | 0, 4);
+  } else {
+   $45 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+   $46 = $$06982 + 1 | 0;
+   $47 = SAFE_HEAP_LOAD($$06982 >> 0 | 0, 1, 0) | 0 | 0;
+   $48 = $47 ^ $45;
+   $49 = $$06383 + 1 | 0;
+   SAFE_HEAP_STORE($$06383 >> 0 | 0, $48 | 0, 1);
+   $50 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+   $51 = $$06982 + 2 | 0;
+   $52 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+   $53 = $52 ^ $50;
+   $54 = $$06383 + 2 | 0;
+   SAFE_HEAP_STORE($49 >> 0 | 0, $53 | 0, 1);
+   $55 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+   $56 = $$06982 + 3 | 0;
+   $57 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+   $58 = $57 ^ $55;
+   $59 = $$06383 + 3 | 0;
+   SAFE_HEAP_STORE($54 >> 0 | 0, $58 | 0, 1);
+   $60 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+   $61 = $$06982 + 4 | 0;
+   $62 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+   $63 = $62 ^ $60;
+   $64 = $$06383 + 4 | 0;
+   SAFE_HEAP_STORE($59 >> 0 | 0, $63 | 0, 1);
+   $65 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+   $66 = $$06982 + 5 | 0;
+   $67 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+   $68 = $67 ^ $65;
+   $69 = $$06383 + 5 | 0;
+   SAFE_HEAP_STORE($64 >> 0 | 0, $68 | 0, 1);
+   $70 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+   $71 = $$06982 + 6 | 0;
+   $72 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+   $73 = $72 ^ $70;
+   $74 = $$06383 + 6 | 0;
+   SAFE_HEAP_STORE($69 >> 0 | 0, $73 | 0, 1);
+   $75 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+   $76 = $$06982 + 7 | 0;
+   $77 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+   $78 = $77 ^ $75;
+   $79 = $$06383 + 7 | 0;
+   SAFE_HEAP_STORE($74 >> 0 | 0, $78 | 0, 1);
+   $80 = SAFE_HEAP_LOAD($30 >> 0 | 0, 1, 0) | 0 | 0;
+   $81 = $$06982 + 8 | 0;
+   $82 = SAFE_HEAP_LOAD($76 >> 0 | 0, 1, 0) | 0 | 0;
+   $83 = $82 ^ $80;
+   $84 = $$06383 + 8 | 0;
+   SAFE_HEAP_STORE($79 >> 0 | 0, $83 | 0, 1);
+   $85 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+   $86 = $$06982 + 9 | 0;
+   $87 = SAFE_HEAP_LOAD($81 >> 0 | 0, 1, 0) | 0 | 0;
+   $88 = $87 ^ $85;
+   $89 = $$06383 + 9 | 0;
+   SAFE_HEAP_STORE($84 >> 0 | 0, $88 | 0, 1);
+   $90 = SAFE_HEAP_LOAD($32 >> 0 | 0, 1, 0) | 0 | 0;
+   $91 = $$06982 + 10 | 0;
+   $92 = SAFE_HEAP_LOAD($86 >> 0 | 0, 1, 0) | 0 | 0;
+   $93 = $92 ^ $90;
+   $94 = $$06383 + 10 | 0;
+   SAFE_HEAP_STORE($89 >> 0 | 0, $93 | 0, 1);
+   $95 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+   $96 = $$06982 + 11 | 0;
+   $97 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+   $98 = $97 ^ $95;
+   $99 = $$06383 + 11 | 0;
+   SAFE_HEAP_STORE($94 >> 0 | 0, $98 | 0, 1);
+   $100 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+   $101 = $$06982 + 12 | 0;
+   $102 = SAFE_HEAP_LOAD($96 >> 0 | 0, 1, 0) | 0 | 0;
+   $103 = $102 ^ $100;
+   $104 = $$06383 + 12 | 0;
+   SAFE_HEAP_STORE($99 >> 0 | 0, $103 | 0, 1);
+   $105 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+   $106 = $$06982 + 13 | 0;
+   $107 = SAFE_HEAP_LOAD($101 >> 0 | 0, 1, 0) | 0 | 0;
+   $108 = $107 ^ $105;
+   $109 = $$06383 + 13 | 0;
+   SAFE_HEAP_STORE($104 >> 0 | 0, $108 | 0, 1);
+   $110 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+   $111 = $$06982 + 14 | 0;
+   $112 = SAFE_HEAP_LOAD($106 >> 0 | 0, 1, 0) | 0 | 0;
+   $113 = $112 ^ $110;
+   $114 = $$06383 + 14 | 0;
+   SAFE_HEAP_STORE($109 >> 0 | 0, $113 | 0, 1);
+   $115 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+   $116 = $$06982 + 15 | 0;
+   $117 = SAFE_HEAP_LOAD($111 >> 0 | 0, 1, 0) | 0 | 0;
+   $118 = $117 ^ $115;
+   $119 = $$06383 + 15 | 0;
+   SAFE_HEAP_STORE($114 >> 0 | 0, $118 | 0, 1);
+   $120 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+   $121 = SAFE_HEAP_LOAD($116 >> 0 | 0, 1, 0) | 0 | 0;
+   $122 = $121 ^ $120;
+   SAFE_HEAP_STORE($119 >> 0 | 0, $122 | 0, 1);
+  }
+  $141 = $$06383 + 16 | 0;
+  $142 = $$06982 + 16 | 0;
+  $$070 = 16;
+  while (1) {
+   $143 = ($$070 | 0) > 0;
+   if (!$143) {
+    break;
+   }
+   $144 = $$070 + -1 | 0;
+   $145 = $1 + $144 | 0;
+   $146 = SAFE_HEAP_LOAD($145 >> 0 | 0, 1, 0) | 0 | 0;
+   $147 = $146 + 1 << 24 >> 24;
+   SAFE_HEAP_STORE($145 >> 0 | 0, $147 | 0, 1);
+   $148 = $147 << 24 >> 24 == 0;
+   if ($148) {
+    $$070 = $144;
+   } else {
+    break;
+   }
+  }
+  $149 = $$084 + -1 | 0;
+  $150 = ($149 | 0) == 0;
+  if ($150) {
+   break;
+  } else {
+   $$06383 = $141;
+   $$06982 = $142;
+   $$084 = $149;
+  }
+ }
+ $151 = $5;
+ $152 = $151;
+ SAFE_HEAP_STORE($152 | 0, 0 | 0, 4);
+ $153 = $151 + 4 | 0;
+ $154 = $153;
+ SAFE_HEAP_STORE($154 | 0, 0 | 0, 4);
+ $155 = $5 + 8 | 0;
+ $156 = $155;
+ $157 = $156;
+ SAFE_HEAP_STORE($157 | 0, 0 | 0, 4);
+ $158 = $156 + 4 | 0;
+ $159 = $158;
+ SAFE_HEAP_STORE($159 | 0, 0 | 0, 4);
+ $160 = ($39 | 0) == 0;
+ if ($160) {
+  STACKTOP = sp;
+  return;
+ }
+ $161 = $39 + 16 | 0;
+ ___gcry_burn_stack($161);
+ STACKTOP = sp;
+ return;
+}
+
+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 = 0, $$016$i = 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;
+ var $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, $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, $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$i = 0, $exitcond$i90 = 0;
+ var $or$cond = 0, $or$cond3 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 176 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(176 | 0);
+ $6 = sp + 100 | 0;
+ $7 = sp + 88 | 0;
+ $8 = sp + 84 | 0;
+ $9 = sp + 80 | 0;
+ $10 = sp + 76 | 0;
+ $11 = sp + 72 | 0;
+ $12 = sp + 104 | 0;
+ $13 = sp + 24 | 0;
+ $14 = sp + 12 | 0;
+ $15 = sp;
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ $16 = ($0 | 0) == (0 | 0);
+ if ($16) {
+  $$0 = 79;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $17 = $0 + 12 | 0;
+ $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $35 = $1 + 4 | 0;
+ $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+ $37 = $1 + 8 | 0;
+ $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+ $39 = $1 + 12 | 0;
+ $40 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+ $41 = $1 + 16 | 0;
+ $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+ $43 = __gcry_mpi_ec_p_internal_new($34, $36, 0, $38, $40, $42) | 0;
+ $44 = $43 + 12 | 0;
+ $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+     $54 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printhex(35747, $53, $54);
+    }
+    $55 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    $56 = ($55 | 0) == 32;
+    if ($56) {
+     $57 = __gcry_mpi_get_opaque($0, $6) | 0;
+     $58 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $59 = $58 + 7 | 0;
+     $60 = $59 >>> 3;
+     $61 = __gcry_get_debug_flag(1) | 0;
+     $62 = ($61 | 0) == 0;
+     if (!$62) {
+      __gcry_log_printhex(35754, $57, $60);
+     }
+     $63 = __gcry_mpi_get_opaque($2, $6) | 0;
+     $64 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     $65 = $64 + 7 | 0;
+     $66 = $65 >>> 3;
+     $67 = __gcry_get_debug_flag(1) | 0;
+     $68 = ($67 | 0) == 0;
+     if (!$68) {
+      __gcry_log_printhex(52990, $63, $66);
+     }
+     $69 = ($66 | 0) == 32;
+     if ($69) {
+      $70 = $13 + 12 | 0;
+      SAFE_HEAP_STORE($70 | 0, $63 | 0, 4);
+      $71 = $13 + 4 | 0;
+      SAFE_HEAP_STORE($71 | 0, 0 | 0, 4);
+      $72 = $13 + 8 | 0;
+      SAFE_HEAP_STORE($72 | 0, 32 | 0, 4);
+      $73 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+      $74 = $13 + 28 | 0;
+      SAFE_HEAP_STORE($74 | 0, $73 | 0, 4);
+      $75 = $13 + 20 | 0;
+      SAFE_HEAP_STORE($75 | 0, 0 | 0, 4);
+      $76 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+      $77 = $13 + 24 | 0;
+      SAFE_HEAP_STORE($77 | 0, $76 | 0, 4);
+      $78 = $13 + 44 | 0;
+      SAFE_HEAP_STORE($78 | 0, $57 | 0, 4);
+      $79 = $13 + 36 | 0;
+      SAFE_HEAP_STORE($79 | 0, 0 | 0, 4);
+      $80 = $13 + 40 | 0;
+      SAFE_HEAP_STORE($80 | 0, $60 | 0, 4);
+      $81 = __gcry_md_hash_buffers(10, 0, $12, $13, 3) | 0;
+      $82 = ($81 | 0) == 0;
+      if ($82) {
+       $$016$i = 0;
+       while (1) {
+        $83 = $12 + $$016$i | 0;
+        $84 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+        $85 = 63 - $$016$i | 0;
+        $86 = $12 + $85 | 0;
+        $87 = SAFE_HEAP_LOAD($86 >> 0 | 0, 1, 0) | 0 | 0;
+        SAFE_HEAP_STORE($83 >> 0 | 0, $87 | 0, 1);
+        SAFE_HEAP_STORE($86 >> 0 | 0, $84 | 0, 1);
+        $88 = $$016$i + 1 | 0;
+        $exitcond$i = ($88 | 0) == 32;
+        if ($exitcond$i) {
+         break;
+        } else {
+         $$016$i = $88;
+        }
+       }
+       $89 = __gcry_get_debug_flag(1) | 0;
+       $90 = ($89 | 0) == 0;
+       if (!$90) {
+        __gcry_log_printhex(35773, $12, 64);
+       }
+       __gcry_mpi_set_buffer($32, $12, 64, 0);
+       $91 = __gcry_mpi_get_opaque_copy($3, $6) | 0;
+       $92 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $93 = $92 + 7 | 0;
+       $94 = $93 >>> 3;
+       $95 = $93 >>> 4;
+       $96 = ($95 | 0) == 0;
+       if (!$96) {
+        $97 = $94 + -1 | 0;
+        $$016$i89 = 0;
+        while (1) {
+         $98 = $91 + $$016$i89 | 0;
+         $99 = SAFE_HEAP_LOAD($98 >> 0 | 0, 1, 0) | 0 | 0;
+         $100 = $97 - $$016$i89 | 0;
+         $101 = $91 + $100 | 0;
+         $102 = SAFE_HEAP_LOAD($101 >> 0 | 0, 1, 0) | 0 | 0;
+         SAFE_HEAP_STORE($98 >> 0 | 0, $102 | 0, 1);
+         SAFE_HEAP_STORE($101 >> 0 | 0, $99 | 0, 1);
+         $103 = $$016$i89 + 1 | 0;
+         $exitcond$i90 = ($103 | 0) == ($95 | 0);
+         if ($exitcond$i90) {
+          break;
+         } else {
+          $$016$i89 = $103;
+         }
+        }
+       }
+       $104 = __gcry_get_debug_flag(1) | 0;
+       $105 = ($104 | 0) == 0;
+       if (!$105) {
+        __gcry_log_printhex(52997, $91, $94);
+       }
+       __gcry_mpi_set_buffer($33, $91, $94, 0);
+       __gcry_free($91);
+       $106 = ($94 | 0) == 32;
+       if ($106) {
+        $107 = $1 + 20 | 0;
+        __gcry_mpi_ec_mul_point($14, $33, $107, $43);
+        __gcry_mpi_ec_mul_point($15, $32, $7, $43);
+        $108 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+        __gcry_mpi_neg($108, $108);
+        __gcry_mpi_ec_add_points($14, $14, $15, $43);
+        $109 = __gcry_ecc_eddsa_encodepoint($14, $43, $33, $32, 0, $10, $11) | 
0;
+        $110 = ($109 | 0) == 0;
+        if ($110) {
+         $111 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+         $112 = ($111 | 0) == 32;
+         if (!$112) {
+          $$1 = 8;
+          break;
+         }
+         $113 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+         $114 = _memcmp($113, $63, 32) | 0;
+         $115 = ($114 | 0) == 0;
+         $$ = $115 ? 0 : 8;
+         $$1 = $$;
+        } else {
+         $$1 = $109;
+        }
+       } else {
+        $$1 = 139;
+       }
+      } else {
+       $$1 = $81;
+      }
+     } else {
+      $$1 = 139;
+     }
+    } else {
+     $$1 = 139;
+    }
+   }
+  } else {
+   $$1 = $47;
+  }
+ } while (0);
+ $116 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ __gcry_free($116);
+ $117 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ __gcry_free($117);
+ __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 _mix_pool($0) {
+ $0 = $0 | 0;
+ var $$$0$idx = 0, $$0$idx60 = 0, $$04962 = 0, $$052$add = 0, $$052$add53 = 0, 
$$052$idx61 = 0, $$052$ptr$add = 0, $$052$ptr$ptr = 0, $$1$add = 0, $$1$ptr = 
0, $$15159 = 0, $$ptr54 = 0, $$ptr55 = 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, 
$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, $exitcond = 0, $exitcond64 = 0, $or$cond = 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 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  __gcry_assert_failed(50424, 50439, 615, 50455);
+ }
+ __gcry_rmd160_init($1);
+ $5 = $0 + 580 | 0;
+ dest = $2;
+ src = $5;
+ stop = dest + 20 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  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 {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  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 {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  dest = dest + 1 | 0;
+  src = src + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $7 = SAFE_HEAP_LOAD(17664 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) != 0;
+ $9 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == ($0 | 0);
+ $or$cond = $8 & $10;
+ if ($or$cond) {
+  $11 = SAFE_HEAP_LOAD(71826 | 0, 1, 0) | 0 | 0;
+  $12 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+  $13 = $12 ^ $11;
+  SAFE_HEAP_STORE($0 >> 0 | 0, $13 | 0, 1);
+  $14 = SAFE_HEAP_LOAD(71827 >> 0 | 0, 1, 0) | 0 | 0;
+  $15 = $0 + 1 | 0;
+  $16 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+  $17 = $16 ^ $14;
+  SAFE_HEAP_STORE($15 >> 0 | 0, $17 | 0, 1);
+  $18 = SAFE_HEAP_LOAD(71828 >> 0 | 0, 1, 0) | 0 | 0;
+  $19 = $0 + 2 | 0;
+  $20 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+  $21 = $20 ^ $18;
+  SAFE_HEAP_STORE($19 >> 0 | 0, $21 | 0, 1);
+  $22 = SAFE_HEAP_LOAD(71829 >> 0 | 0, 1, 0) | 0 | 0;
+  $23 = $0 + 3 | 0;
+  $24 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+  $25 = $24 ^ $22;
+  SAFE_HEAP_STORE($23 >> 0 | 0, $25 | 0, 1);
+  $26 = SAFE_HEAP_LOAD(71830 >> 0 | 0, 1, 0) | 0 | 0;
+  $27 = $0 + 4 | 0;
+  $28 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+  $29 = $28 ^ $26;
+  SAFE_HEAP_STORE($27 >> 0 | 0, $29 | 0, 1);
+  $30 = SAFE_HEAP_LOAD(71831 >> 0 | 0, 1, 0) | 0 | 0;
+  $31 = $0 + 5 | 0;
+  $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+  $33 = $32 ^ $30;
+  SAFE_HEAP_STORE($31 >> 0 | 0, $33 | 0, 1);
+  $34 = SAFE_HEAP_LOAD(71832 >> 0 | 0, 1, 0) | 0 | 0;
+  $35 = $0 + 6 | 0;
+  $36 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+  $37 = $36 ^ $34;
+  SAFE_HEAP_STORE($35 >> 0 | 0, $37 | 0, 1);
+  $38 = SAFE_HEAP_LOAD(71833 >> 0 | 0, 1, 0) | 0 | 0;
+  $39 = $0 + 7 | 0;
+  $40 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+  $41 = $40 ^ $38;
+  SAFE_HEAP_STORE($39 >> 0 | 0, $41 | 0, 1);
+  $42 = SAFE_HEAP_LOAD(71834 >> 0 | 0, 1, 0) | 0 | 0;
+  $43 = $0 + 8 | 0;
+  $44 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+  $45 = $44 ^ $42;
+  SAFE_HEAP_STORE($43 >> 0 | 0, $45 | 0, 1);
+  $46 = SAFE_HEAP_LOAD(71835 >> 0 | 0, 1, 0) | 0 | 0;
+  $47 = $0 + 9 | 0;
+  $48 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+  $49 = $48 ^ $46;
+  SAFE_HEAP_STORE($47 >> 0 | 0, $49 | 0, 1);
+  $50 = SAFE_HEAP_LOAD(71836 >> 0 | 0, 1, 0) | 0 | 0;
+  $51 = $0 + 10 | 0;
+  $52 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+  $53 = $52 ^ $50;
+  SAFE_HEAP_STORE($51 >> 0 | 0, $53 | 0, 1);
+  $54 = SAFE_HEAP_LOAD(71837 >> 0 | 0, 1, 0) | 0 | 0;
+  $55 = $0 + 11 | 0;
+  $56 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+  $57 = $56 ^ $54;
+  SAFE_HEAP_STORE($55 >> 0 | 0, $57 | 0, 1);
+  $58 = SAFE_HEAP_LOAD(71838 >> 0 | 0, 1, 0) | 0 | 0;
+  $59 = $0 + 12 | 0;
+  $60 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+  $61 = $60 ^ $58;
+  SAFE_HEAP_STORE($59 >> 0 | 0, $61 | 0, 1);
+  $62 = SAFE_HEAP_LOAD(71839 >> 0 | 0, 1, 0) | 0 | 0;
+  $63 = $0 + 13 | 0;
+  $64 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+  $65 = $64 ^ $62;
+  SAFE_HEAP_STORE($63 >> 0 | 0, $65 | 0, 1);
+  $66 = SAFE_HEAP_LOAD(71840 >> 0 | 0, 1, 0) | 0 | 0;
+  $67 = $0 + 14 | 0;
+  $68 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+  $69 = $68 ^ $66;
+  SAFE_HEAP_STORE($67 >> 0 | 0, $69 | 0, 1);
+  $70 = SAFE_HEAP_LOAD(71841 >> 0 | 0, 1, 0) | 0 | 0;
+  $71 = $0 + 15 | 0;
+  $72 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+  $73 = $72 ^ $70;
+  SAFE_HEAP_STORE($71 >> 0 | 0, $73 | 0, 1);
+  $74 = SAFE_HEAP_LOAD(71842 >> 0 | 0, 1, 0) | 0 | 0;
+  $75 = $0 + 16 | 0;
+  $76 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+  $77 = $76 ^ $74;
+  SAFE_HEAP_STORE($75 >> 0 | 0, $77 | 0, 1);
+  $78 = SAFE_HEAP_LOAD(71843 >> 0 | 0, 1, 0) | 0 | 0;
+  $79 = $0 + 17 | 0;
+  $80 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+  $81 = $80 ^ $78;
+  SAFE_HEAP_STORE($79 >> 0 | 0, $81 | 0, 1);
+  $82 = SAFE_HEAP_LOAD(71844 >> 0 | 0, 1, 0) | 0 | 0;
+  $83 = $0 + 18 | 0;
+  $84 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+  $85 = $84 ^ $82;
+  SAFE_HEAP_STORE($83 >> 0 | 0, $85 | 0, 1);
+  $86 = SAFE_HEAP_LOAD(71845 >> 0 | 0, 1, 0) | 0 | 0;
+  $87 = $0 + 19 | 0;
+  $88 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 0) | 0 | 0;
+  $89 = $88 ^ $86;
+  SAFE_HEAP_STORE($87 >> 0 | 0, $89 | 0, 1);
+  $$04962 = 1;
+  $$052$idx61 = 0;
+ } else {
+  $$04962 = 1;
+  $$052$idx61 = 0;
+ }
+ while (1) {
+  $$052$ptr$ptr = $0 + $$052$idx61 | 0;
+  dest = $2;
+  src = $$052$ptr$ptr;
+  stop = dest + 20 | 0;
+  do {
+   SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+   dest = dest + 1 | 0;
+   src = src + 1 | 0;
+  } while ((dest | 0) < (stop | 0));
+  $$052$add53 = $$052$idx61 + 20 | 0;
+  $$ptr54 = $0 + $$052$add53 | 0;
+  $$052$ptr$add = $$052$idx61 + 40 | 0;
+  $$052$add = $$052$idx61 + 104 | 0;
+  $90 = ($$052$add | 0) < 600;
+  if ($90) {
+   $$ptr55 = $0 + $$052$ptr$add | 0;
+   dest = $6;
+   src = $$ptr55;
+   stop = dest + 44 | 0;
+   do {
+    SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+    dest = dest + 1 | 0;
+    src = src + 1 | 0;
+   } while ((dest | 0) < (stop | 0));
+  } else {
+   $$0$idx60 = $$052$ptr$add;
+   $$15159 = 20;
+   while (1) {
+    $91 = ($$0$idx60 | 0) > 599;
+    $$$0$idx = $91 ? 0 : $$0$idx60;
+    $$1$ptr = $0 + $$$0$idx | 0;
+    $$1$add = $$$0$idx + 1 | 0;
+    $92 = SAFE_HEAP_LOAD($$1$ptr >> 0 | 0, 1, 0) | 0 | 0;
+    $93 = $2 + $$15159 | 0;
+    SAFE_HEAP_STORE($93 >> 0 | 0, $92 | 0, 1);
+    $94 = $$15159 + 1 | 0;
+    $exitcond = ($94 | 0) == 64;
+    if ($exitcond) {
+     break;
+    } else {
+     $$0$idx60 = $$1$add;
+     $$15159 = $94;
+    }
+   }
+  }
+  __gcry_rmd160_mixblock($1, $2);
+  dest = $$ptr54;
+  src = $2;
+  stop = dest + 20 | 0;
+  do {
+   SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+   dest = dest + 1 | 0;
+   src = src + 1 | 0;
+  } while ((dest | 0) < (stop | 0));
+  $95 = $$04962 + 1 | 0;
+  $exitcond64 = ($95 | 0) == 30;
+  if ($exitcond64) {
+   break;
+  } else {
+   $$04962 = $95;
+   $$052$idx61 = $$052$add53;
+  }
+ }
+ $96 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $97 = ($96 | 0) == ($0 | 0);
+ if (!$97) {
+  ___gcry_burn_stack(384);
+  STACKTOP = sp;
+  return;
+ }
+ __gcry_rmd160_hash_buffer(71826, $0, 600);
+ SAFE_HEAP_STORE(17664 * 4 | 0, 1 | 0, 4);
+ ___gcry_burn_stack(384);
+ STACKTOP = sp;
+ return;
+}
+
+function _run_selftests_1202($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$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, $$7 = 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, $9 = 0, $cond = 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;
+ }
+ SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ $11 = __gcry_sexp_sscan($9, 0, 39077, 1029) | 0;
+ $12 = ($11 | 0) == 0;
+ do {
+  if ($12) {
+   $13 = __gcry_sexp_sscan($10, 0, 40107, 316) | 0;
+   $14 = ($13 | 0) == 0;
+   if ($14) {
+    $16 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    $17 = __gcry_pk_testkey($16) | 0;
+    $18 = ($17 | 0) == 0;
+    if (!$18) {
+     $19 = _gpg_strerror($17) | 0;
+     $$016$i = $19;
+     $$017$i = 40842;
+     label = 28;
+     break;
+    }
+    $20 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+    $21 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+    $22 = __gcry_sexp_sscan($6, 0, 40424, 75) | 0;
+    $23 = ($22 | 0) == 0;
+    if ($23) {
+     $24 = __gcry_sexp_sscan($7, 0, 40500, 75) | 0;
+     $25 = ($24 | 0) == 0;
+     if ($25) {
+      $26 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+      $27 = __gcry_pk_sign($8, $26, $21) | 0;
+      $28 = ($27 | 0) == 0;
+      if ($28) {
+       $29 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+       $30 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $31 = __gcry_pk_verify($29, $30, $20) | 0;
+       $32 = ($31 | 0) == 0;
+       if ($32) {
+        $33 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+        $34 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+        $35 = __gcry_pk_verify($33, $34, $20) | 0;
+        $36 = $35 & 65535;
+        $37 = ($36 | 0) == 8;
+        $$ = $37 ? 0 : 40576;
+        $$011$i$i = $$;
+       } else {
+        $$011$i$i = 40641;
+       }
+      } else {
+       $$011$i$i = 40626;
+      }
+     } else {
+      $$011$i$i = 40603;
+     }
+    } else {
+     $$011$i$i = 40603;
+    }
+    $38 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    __gcry_sexp_release($38);
+    $39 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    __gcry_sexp_release($39);
+    $40 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_sexp_release($40);
+    $41 = ($$011$i$i | 0) == (0 | 0);
+    if ($41) {
+     $42 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $43 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+     SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+     SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+     $44 = __gcry_mpi_new(1e3) | 0;
+     __gcry_mpi_randomize($44, 1e3, 0);
+     SAFE_HEAP_STORE($vararg_buffer | 0, $44 | 0, 4);
+     $45 = __gcry_sexp_build($3, 0, 40655, $vararg_buffer) | 0;
+     $46 = ($45 | 0) == 0;
+     if ($46) {
+      $47 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+      $48 = __gcry_pk_encrypt($4, $47, $42) | 0;
+      $49 = ($48 | 0) == 0;
+      if ($49) {
+       $50 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+       $51 = __gcry_sexp_find_token($50, 40685, 0) | 0;
+       $52 = ($51 | 0) == (0 | 0);
+       if ($52) {
+        $$0$i$i = 0;
+        $$033$i$i = 0;
+        $$034$i$i = 40727;
+        $$1$i$i = 0;
+       } else {
+        $53 = __gcry_sexp_find_token($51, 40693, 0) | 0;
+        __gcry_sexp_release($51);
+        $54 = ($53 | 0) == (0 | 0);
+        if ($54) {
+         $$0$i$i = 0;
+         $$033$i$i = 0;
+         $$034$i$i = 40727;
+         $$1$i$i = 0;
+        } else {
+         $55 = __gcry_sexp_find_token($53, 39071, 0) | 0;
+         __gcry_sexp_release($53);
+         $56 = ($55 | 0) == (0 | 0);
+         if ($56) {
+          $$0$i$i = 0;
+          $$033$i$i = 0;
+          $$034$i$i = 40727;
+          $$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 = 40727;
+           $$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 = 40760;
+            $$1$i$i = 0;
+           } else {
+            $61 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+            $62 = __gcry_pk_decrypt($5, $61, $43) | 0;
+            $63 = ($62 | 0) == 0;
+            if ($63) {
+             $64 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+             $65 = __gcry_sexp_find_token($64, 40697, 0) | 0;
+             $66 = ($65 | 0) == (0 | 0);
+             if ($66) {
+              $68 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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 = 40804;
+              $$1$i$i = 0;
+             } else {
+              $71 = __gcry_mpi_cmp($44, $$032$i$i) | 0;
+              $72 = ($71 | 0) == 0;
+              $$7 = $72 ? 0 : 40703;
+              $$0$i$i = $65;
+              $$033$i$i = $57;
+              $$034$i$i = $$7;
+              $$1$i$i = $$032$i$i;
+             }
+            } else {
+             $$0$i$i = 0;
+             $$033$i$i = $57;
+             $$034$i$i = 40789;
+             $$1$i$i = 0;
+            }
+           }
+          }
+         }
+        }
+       }
+      } else {
+       $$0$i$i = 0;
+       $$033$i$i = 0;
+       $$034$i$i = 40712;
+       $$1$i$i = 0;
+      }
+     } else {
+      $$0$i$i = 0;
+      $$033$i$i = 0;
+      $$034$i$i = 40603;
+      $$1$i$i = 0;
+     }
+     __gcry_sexp_release($$0$i$i);
+     __gcry_mpi_release($$1$i$i);
+     $73 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     __gcry_sexp_release($73);
+     __gcry_mpi_release($$033$i$i);
+     $74 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+     __gcry_sexp_release($74);
+     $75 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+     __gcry_sexp_release($75);
+     __gcry_mpi_release($44);
+     $76 = ($$034$i$i | 0) == (0 | 0);
+     if ($76) {
+      $77 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+      __gcry_sexp_release($77);
+      $78 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+      __gcry_sexp_release($78);
+      $$018$i = 0;
+     } else {
+      $$016$i = $$034$i$i;
+      $$017$i = 40863;
+      label = 28;
+     }
+    } else {
+     $$016$i = $$011$i$i;
+     $$017$i = 40858;
+     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 = 40834;
+  label = 28;
+ }
+ if ((label | 0) == 28) {
+  $79 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  __gcry_sexp_release($79);
+  $80 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  __gcry_sexp_release($80);
+  $81 = ($2 | 0) == (0 | 0);
+  if ($81) {
+   $$018$i = 50;
+  } else {
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](40871, 1, 
$$017$i, $$016$i);
+   $$018$i = 50;
+  }
+ }
+ $$0 = $$018$i;
+ STACKTOP = sp;
+ return $$0 | 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 $$01726$i = 0, $$018$i = 0, $$025$i = 0, $$1 = 0, $$124$i = 0, $10 = 0, 
$100 = 0, $101 = 0, $102 = 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, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 0, $60 = 0, $61 = 0;
+ var $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, $79 = 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, $cond$i = 0;
+ var $vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer10 = 0, 
$vararg_buffer13 = 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_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;
+ $$01726$i = 0;
+ while (1) {
+  $15 = 1356 + ($$01726$i * 48 | 0) | 0;
+  $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $17 = _strcmp($0, $16) | 0;
+  $18 = ($17 | 0) == 0;
+  if ($18) {
+   $$018$i = $$01726$i;
+   break;
+  }
+  $19 = $$01726$i + 1 | 0;
+  $20 = ($19 | 0) == 21;
+  if ($20) {
+   $$025$i = 0;
+   $28 = 2412;
+   label = 5;
+   break;
+  } else {
+   $$01726$i = $19;
+  }
+ }
+ L4 : do {
+  if ((label | 0) == 5) {
+   while (1) {
+    label = 0;
+    $23 = (2412 + ($$025$i << 3) | 0) + 4 | 0;
+    $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+    $25 = _strcmp($0, $24) | 0;
+    $26 = ($25 | 0) == 0;
+    $22 = $$025$i + 1 | 0;
+    if ($26) {
+     break;
+    }
+    $21 = 2412 + ($22 << 3) | 0;
+    $cond$i = ($22 | 0) == 36;
+    if ($cond$i) {
+     $$1 = 188;
+     label = 40;
+     break;
+    } else {
+     $$025$i = $22;
+     $28 = $21;
+     label = 5;
+    }
+   }
+   if ((label | 0) == 40) {
+    STACKTOP = sp;
+    return $$1 | 0;
+   }
+   $27 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+   $$124$i = 0;
+   while (1) {
+    $29 = 1356 + ($$124$i * 48 | 0) | 0;
+    $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+    $31 = _strcmp($27, $30) | 0;
+    $32 = ($31 | 0) == 0;
+    if ($32) {
+     $$018$i = $$124$i;
+     break L4;
+    }
+    $33 = $$124$i + 1 | 0;
+    $34 = ($33 | 0) == 21;
+    if ($34) {
+     $$1 = 188;
+     break;
+    } else {
+     $$124$i = $33;
+    }
+   }
+   STACKTOP = sp;
+   return $$1 | 0;
+  }
+ } while (0);
+ $35 = ($$018$i | 0) < 0;
+ if ($35) {
+  $$1 = 188;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $36 = ($6 | 0) == (0 | 0);
+ do {
+  if (!$36) {
+   $37 = (1356 + ($$018$i * 48 | 0) | 0) + 36 | 0;
+   $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+   $39 = $38 + 2 | 0;
+   $40 = _strlen($39) | 0;
+   $41 = (1356 + ($$018$i * 48 | 0) | 0) + 40 | 0;
+   $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+   $43 = $42 + 2 | 0;
+   $44 = _strlen($43) | 0;
+   $45 = $40 + 5 | 0;
+   $46 = $45 + $44 | 0;
+   $47 = __gcry_malloc($46) | 0;
+   $48 = ($47 | 0) == (0 | 0);
+   if ($48) {
+    $56 = _gpg_err_code_from_syserror() | 0;
+    $$1 = $56;
+    STACKTOP = sp;
+    return $$1 | 0;
+   }
+   $49 = $47 + 4 | 0;
+   {}
+   SAFE_HEAP_STORE($47 >> 0 | 0, SAFE_HEAP_LOAD(35365 >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+   SAFE_HEAP_STORE($47 + 1 >> 0 | 0, SAFE_HEAP_LOAD(35365 + 1 >> 0 | 0, 1, 0) 
| 0 | 0 | 0, 1);
+   SAFE_HEAP_STORE($47 + 2 >> 0 | 0, SAFE_HEAP_LOAD(35365 + 2 >> 0 | 0, 1, 0) 
| 0 | 0 | 0, 1);
+   SAFE_HEAP_STORE($47 + 3 >> 0 | 0, SAFE_HEAP_LOAD(35365 + 3 >> 0 | 0, 1, 0) 
| 0 | 0 | 0, 1);
+   SAFE_HEAP_STORE($47 + 4 >> 0 | 0, SAFE_HEAP_LOAD(35365 + 4 >> 0 | 0, 1, 0) 
| 0 | 0 | 0, 1);
+   $50 = ___stpcpy($49, $39) | 0;
+   _strcpy($50, $43) | 0;
+   $51 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_release($51);
+   $52 = __gcry_mpi_scan($14, 4, $47, 0, 0) | 0;
+   $53 = ($52 | 0) == 0;
+   if ($53) {
+    $55 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($6 | 0, $55 | 0, 4);
+    __gcry_free($47);
+    break;
+   } else {
+    $54 = _gpg_strerror($52) | 0;
+    SAFE_HEAP_STORE($vararg_buffer | 0, $54 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer);
+   }
+  }
+ } while (0);
+ $57 = ($1 | 0) == (0 | 0);
+ if (!$57) {
+  $58 = (1356 + ($$018$i * 48 | 0) | 0) + 12 | 0;
+  $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($1 | 0, $59 | 0, 4);
+ }
+ $60 = ($2 | 0) == (0 | 0);
+ if (!$60) {
+  $61 = (1356 + ($$018$i * 48 | 0) | 0) + 16 | 0;
+  $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($2 | 0, $62 | 0, 4);
+ }
+ $63 = ($3 | 0) == (0 | 0);
+ do {
+  if (!$63) {
+   $64 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_release($64);
+   $65 = (1356 + ($$018$i * 48 | 0) | 0) + 20 | 0;
+   $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+   $67 = __gcry_mpi_scan($13, 4, $66, 0, 0) | 0;
+   $68 = ($67 | 0) == 0;
+   if ($68) {
+    $70 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($3 | 0, $70 | 0, 4);
+    break;
+   } else {
+    $69 = _gpg_strerror($67) | 0;
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, $69 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer1);
+   }
+  }
+ } while (0);
+ $71 = ($4 | 0) == (0 | 0);
+ do {
+  if (!$71) {
+   $72 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_release($72);
+   $73 = (1356 + ($$018$i * 48 | 0) | 0) + 24 | 0;
+   $74 = SAFE_HEAP_LOAD($73 | 0, 4, 0) | 0 | 0;
+   $75 = __gcry_mpi_scan($12, 4, $74, 0, 0) | 0;
+   $76 = ($75 | 0) == 0;
+   if ($76) {
+    $78 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($4 | 0, $78 | 0, 4);
+    break;
+   } else {
+    $77 = _gpg_strerror($75) | 0;
+    SAFE_HEAP_STORE($vararg_buffer4 | 0, $77 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer4);
+   }
+  }
+ } while (0);
+ $79 = ($5 | 0) == (0 | 0);
+ do {
+  if (!$79) {
+   $80 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_release($80);
+   $81 = (1356 + ($$018$i * 48 | 0) | 0) + 28 | 0;
+   $82 = SAFE_HEAP_LOAD($81 | 0, 4, 0) | 0 | 0;
+   $83 = __gcry_mpi_scan($11, 4, $82, 0, 0) | 0;
+   $84 = ($83 | 0) == 0;
+   if ($84) {
+    $86 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($5 | 0, $86 | 0, 4);
+    break;
+   } else {
+    $85 = _gpg_strerror($83) | 0;
+    SAFE_HEAP_STORE($vararg_buffer7 | 0, $85 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer7);
+   }
+  }
+ } while (0);
+ $87 = ($7 | 0) == (0 | 0);
+ do {
+  if (!$87) {
+   $88 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_release($88);
+   $89 = (1356 + ($$018$i * 48 | 0) | 0) + 32 | 0;
+   $90 = SAFE_HEAP_LOAD($89 | 0, 4, 0) | 0 | 0;
+   $91 = __gcry_mpi_scan($10, 4, $90, 0, 0) | 0;
+   $92 = ($91 | 0) == 0;
+   if ($92) {
+    $94 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($7 | 0, $94 | 0, 4);
+    break;
+   } else {
+    $93 = _gpg_strerror($91) | 0;
+    SAFE_HEAP_STORE($vararg_buffer10 | 0, $93 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer10);
+   }
+  }
+ } while (0);
+ $95 = ($8 | 0) == (0 | 0);
+ if ($95) {
+  $$1 = 0;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $96 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($96);
+ $97 = (1356 + ($$018$i * 48 | 0) | 0) + 44 | 0;
+ $98 = SAFE_HEAP_LOAD($97 | 0, 4, 0) | 0 | 0;
+ $99 = __gcry_mpi_scan($9, 4, $98, 0, 0) | 0;
+ $100 = ($99 | 0) == 0;
+ if (!$100) {
+  $101 = _gpg_strerror($99) | 0;
+  SAFE_HEAP_STORE($vararg_buffer13 | 0, $101 | 0, 4);
+  __gcry_log_fatal(35626, $vararg_buffer13);
+ }
+ $102 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($8 | 0, $102 | 0, 4);
+ $$1 = 0;
+ STACKTOP = sp;
+ return $$1 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) == (0 | 0);
+ if (!$7) {
+  FUNCTION_TABLE_v[(SAFE_FT_MASK($6 | 0, 127 | 0) | 0) & 127]();
+ }
+ $8 = $0 + 488 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 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[(SAFE_FT_MASK($9 | 0, 127 | 0) | 0) & 127]($0, $1, 
$1) | 0;
+  $31 = $$02831;
+  $32 = $$02930;
+  $33 = $32 | $11;
+  $34 = $33 | $31;
+  $35 = $34 & 3;
+  $36 = ($35 | 0) == 0;
+  if ($36) {
+   $115 = $$02831 + 4 | 0;
+   $116 = SAFE_HEAP_LOAD($$02831 | 0, 4, 0) | 0 | 0;
+   $117 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+   $118 = $117 ^ $116;
+   SAFE_HEAP_STORE($1 | 0, $118 | 0, 4);
+   $119 = $$02930 + 4 | 0;
+   SAFE_HEAP_STORE($$02930 | 0, $118 | 0, 4);
+   $120 = $$02831 + 8 | 0;
+   $121 = SAFE_HEAP_LOAD($115 | 0, 4, 0) | 0 | 0;
+   $122 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $123 = $122 ^ $121;
+   SAFE_HEAP_STORE($12 | 0, $123 | 0, 4);
+   $124 = $$02930 + 8 | 0;
+   SAFE_HEAP_STORE($119 | 0, $123 | 0, 4);
+   $125 = $$02831 + 12 | 0;
+   $126 = SAFE_HEAP_LOAD($120 | 0, 4, 0) | 0 | 0;
+   $127 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $128 = $127 ^ $126;
+   SAFE_HEAP_STORE($13 | 0, $128 | 0, 4);
+   $129 = $$02930 + 12 | 0;
+   SAFE_HEAP_STORE($124 | 0, $128 | 0, 4);
+   $130 = SAFE_HEAP_LOAD($125 | 0, 4, 0) | 0 | 0;
+   $131 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+   $132 = $131 ^ $130;
+   SAFE_HEAP_STORE($14 | 0, $132 | 0, 4);
+   SAFE_HEAP_STORE($129 | 0, $132 | 0, 4);
+  } else {
+   $37 = $$02831 + 1 | 0;
+   $38 = SAFE_HEAP_LOAD($$02831 >> 0 | 0, 1, 0) | 0 | 0;
+   $39 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+   $40 = $39 ^ $38;
+   SAFE_HEAP_STORE($1 >> 0 | 0, $40 | 0, 1);
+   $41 = $$02930 + 1 | 0;
+   SAFE_HEAP_STORE($$02930 >> 0 | 0, $40 | 0, 1);
+   $42 = $$02831 + 2 | 0;
+   $43 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+   $44 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+   $45 = $44 ^ $43;
+   SAFE_HEAP_STORE($15 >> 0 | 0, $45 | 0, 1);
+   $46 = $$02930 + 2 | 0;
+   SAFE_HEAP_STORE($41 >> 0 | 0, $45 | 0, 1);
+   $47 = $$02831 + 3 | 0;
+   $48 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+   $49 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+   $50 = $49 ^ $48;
+   SAFE_HEAP_STORE($16 >> 0 | 0, $50 | 0, 1);
+   $51 = $$02930 + 3 | 0;
+   SAFE_HEAP_STORE($46 >> 0 | 0, $50 | 0, 1);
+   $52 = $$02831 + 4 | 0;
+   $53 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+   $54 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+   $55 = $54 ^ $53;
+   SAFE_HEAP_STORE($17 >> 0 | 0, $55 | 0, 1);
+   $56 = $$02930 + 4 | 0;
+   SAFE_HEAP_STORE($51 >> 0 | 0, $55 | 0, 1);
+   $57 = $$02831 + 5 | 0;
+   $58 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+   $59 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+   $60 = $59 ^ $58;
+   SAFE_HEAP_STORE($18 >> 0 | 0, $60 | 0, 1);
+   $61 = $$02930 + 5 | 0;
+   SAFE_HEAP_STORE($56 >> 0 | 0, $60 | 0, 1);
+   $62 = $$02831 + 6 | 0;
+   $63 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+   $64 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+   $65 = $64 ^ $63;
+   SAFE_HEAP_STORE($19 >> 0 | 0, $65 | 0, 1);
+   $66 = $$02930 + 6 | 0;
+   SAFE_HEAP_STORE($61 >> 0 | 0, $65 | 0, 1);
+   $67 = $$02831 + 7 | 0;
+   $68 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+   $69 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+   $70 = $69 ^ $68;
+   SAFE_HEAP_STORE($20 >> 0 | 0, $70 | 0, 1);
+   $71 = $$02930 + 7 | 0;
+   SAFE_HEAP_STORE($66 >> 0 | 0, $70 | 0, 1);
+   $72 = $$02831 + 8 | 0;
+   $73 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+   $74 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+   $75 = $74 ^ $73;
+   SAFE_HEAP_STORE($21 >> 0 | 0, $75 | 0, 1);
+   $76 = $$02930 + 8 | 0;
+   SAFE_HEAP_STORE($71 >> 0 | 0, $75 | 0, 1);
+   $77 = $$02831 + 9 | 0;
+   $78 = SAFE_HEAP_LOAD($72 >> 0 | 0, 1, 0) | 0 | 0;
+   $79 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+   $80 = $79 ^ $78;
+   SAFE_HEAP_STORE($22 >> 0 | 0, $80 | 0, 1);
+   $81 = $$02930 + 9 | 0;
+   SAFE_HEAP_STORE($76 >> 0 | 0, $80 | 0, 1);
+   $82 = $$02831 + 10 | 0;
+   $83 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+   $84 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+   $85 = $84 ^ $83;
+   SAFE_HEAP_STORE($23 >> 0 | 0, $85 | 0, 1);
+   $86 = $$02930 + 10 | 0;
+   SAFE_HEAP_STORE($81 >> 0 | 0, $85 | 0, 1);
+   $87 = $$02831 + 11 | 0;
+   $88 = SAFE_HEAP_LOAD($82 >> 0 | 0, 1, 0) | 0 | 0;
+   $89 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+   $90 = $89 ^ $88;
+   SAFE_HEAP_STORE($24 >> 0 | 0, $90 | 0, 1);
+   $91 = $$02930 + 11 | 0;
+   SAFE_HEAP_STORE($86 >> 0 | 0, $90 | 0, 1);
+   $92 = $$02831 + 12 | 0;
+   $93 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 0) | 0 | 0;
+   $94 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+   $95 = $94 ^ $93;
+   SAFE_HEAP_STORE($25 >> 0 | 0, $95 | 0, 1);
+   $96 = $$02930 + 12 | 0;
+   SAFE_HEAP_STORE($91 >> 0 | 0, $95 | 0, 1);
+   $97 = $$02831 + 13 | 0;
+   $98 = SAFE_HEAP_LOAD($92 >> 0 | 0, 1, 0) | 0 | 0;
+   $99 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+   $100 = $99 ^ $98;
+   SAFE_HEAP_STORE($26 >> 0 | 0, $100 | 0, 1);
+   $101 = $$02930 + 13 | 0;
+   SAFE_HEAP_STORE($96 >> 0 | 0, $100 | 0, 1);
+   $102 = $$02831 + 14 | 0;
+   $103 = SAFE_HEAP_LOAD($97 >> 0 | 0, 1, 0) | 0 | 0;
+   $104 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+   $105 = $104 ^ $103;
+   SAFE_HEAP_STORE($27 >> 0 | 0, $105 | 0, 1);
+   $106 = $$02930 + 14 | 0;
+   SAFE_HEAP_STORE($101 >> 0 | 0, $105 | 0, 1);
+   $107 = $$02831 + 15 | 0;
+   $108 = SAFE_HEAP_LOAD($102 >> 0 | 0, 1, 0) | 0 | 0;
+   $109 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+   $110 = $109 ^ $108;
+   SAFE_HEAP_STORE($28 >> 0 | 0, $110 | 0, 1);
+   $111 = $$02930 + 15 | 0;
+   SAFE_HEAP_STORE($106 >> 0 | 0, $110 | 0, 1);
+   $112 = SAFE_HEAP_LOAD($107 >> 0 | 0, 1, 0) | 0 | 0;
+   $113 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+   $114 = $113 ^ $112;
+   SAFE_HEAP_STORE($29 >> 0 | 0, $114 | 0, 1);
+   SAFE_HEAP_STORE($111 >> 0 | 0, $114 | 0, 1);
+  }
+  $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_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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) == (0 | 0);
+ if (!$7) {
+  FUNCTION_TABLE_v[(SAFE_FT_MASK($6 | 0, 127 | 0) | 0) & 127]();
+ }
+ $8 = $0 + 488 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 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[(SAFE_FT_MASK($9 | 0, 127 | 0) | 0) & 127]($0, $1, 
$1) | 0;
+  $28 = $$02831;
+  $29 = $$02930;
+  $30 = $29 | $11;
+  $31 = $30 | $28;
+  $32 = $31 & 3;
+  $33 = ($32 | 0) == 0;
+  if ($33) {
+   $112 = $$02831 + 4 | 0;
+   $113 = SAFE_HEAP_LOAD($$02831 | 0, 4, 0) | 0 | 0;
+   $114 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+   $115 = $114 ^ $113;
+   $116 = $$02930 + 4 | 0;
+   SAFE_HEAP_STORE($$02930 | 0, $115 | 0, 4);
+   SAFE_HEAP_STORE($1 | 0, $113 | 0, 4);
+   $117 = $$02831 + 8 | 0;
+   $118 = SAFE_HEAP_LOAD($112 | 0, 4, 0) | 0 | 0;
+   $119 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $120 = $119 ^ $118;
+   $121 = $$02930 + 8 | 0;
+   SAFE_HEAP_STORE($116 | 0, $120 | 0, 4);
+   SAFE_HEAP_STORE($12 | 0, $118 | 0, 4);
+   $122 = $$02831 + 12 | 0;
+   $123 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+   $124 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $125 = $124 ^ $123;
+   $126 = $$02930 + 12 | 0;
+   SAFE_HEAP_STORE($121 | 0, $125 | 0, 4);
+   SAFE_HEAP_STORE($13 | 0, $123 | 0, 4);
+   $127 = SAFE_HEAP_LOAD($122 | 0, 4, 0) | 0 | 0;
+   $128 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+   $129 = $128 ^ $127;
+   SAFE_HEAP_STORE($126 | 0, $129 | 0, 4);
+   SAFE_HEAP_STORE($14 | 0, $127 | 0, 4);
+  } else {
+   $34 = $$02831 + 1 | 0;
+   $35 = SAFE_HEAP_LOAD($$02831 >> 0 | 0, 1, 0) | 0 | 0;
+   $36 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+   $37 = $36 ^ $35;
+   $38 = $$02930 + 1 | 0;
+   SAFE_HEAP_STORE($$02930 >> 0 | 0, $37 | 0, 1);
+   SAFE_HEAP_STORE($1 >> 0 | 0, $35 | 0, 1);
+   $39 = $$02831 + 2 | 0;
+   $40 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+   $41 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+   $42 = $41 ^ $40;
+   $43 = $$02930 + 2 | 0;
+   SAFE_HEAP_STORE($38 >> 0 | 0, $42 | 0, 1);
+   SAFE_HEAP_STORE($15 >> 0 | 0, $40 | 0, 1);
+   $44 = $$02831 + 3 | 0;
+   $45 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+   $46 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+   $47 = $46 ^ $45;
+   $48 = $$02930 + 3 | 0;
+   SAFE_HEAP_STORE($43 >> 0 | 0, $47 | 0, 1);
+   SAFE_HEAP_STORE($16 >> 0 | 0, $45 | 0, 1);
+   $49 = $$02831 + 4 | 0;
+   $50 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+   $51 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+   $52 = $51 ^ $50;
+   $53 = $$02930 + 4 | 0;
+   SAFE_HEAP_STORE($48 >> 0 | 0, $52 | 0, 1);
+   SAFE_HEAP_STORE($17 >> 0 | 0, $50 | 0, 1);
+   $54 = $$02831 + 5 | 0;
+   $55 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+   $56 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+   $57 = $56 ^ $55;
+   $58 = $$02930 + 5 | 0;
+   SAFE_HEAP_STORE($53 >> 0 | 0, $57 | 0, 1);
+   SAFE_HEAP_STORE($12 >> 0 | 0, $55 | 0, 1);
+   $59 = $$02831 + 6 | 0;
+   $60 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+   $61 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+   $62 = $61 ^ $60;
+   $63 = $$02930 + 6 | 0;
+   SAFE_HEAP_STORE($58 >> 0 | 0, $62 | 0, 1);
+   SAFE_HEAP_STORE($18 >> 0 | 0, $60 | 0, 1);
+   $64 = $$02831 + 7 | 0;
+   $65 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+   $66 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+   $67 = $66 ^ $65;
+   $68 = $$02930 + 7 | 0;
+   SAFE_HEAP_STORE($63 >> 0 | 0, $67 | 0, 1);
+   SAFE_HEAP_STORE($19 >> 0 | 0, $65 | 0, 1);
+   $69 = $$02831 + 8 | 0;
+   $70 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+   $71 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+   $72 = $71 ^ $70;
+   $73 = $$02930 + 8 | 0;
+   SAFE_HEAP_STORE($68 >> 0 | 0, $72 | 0, 1);
+   SAFE_HEAP_STORE($20 >> 0 | 0, $70 | 0, 1);
+   $74 = $$02831 + 9 | 0;
+   $75 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+   $76 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+   $77 = $76 ^ $75;
+   $78 = $$02930 + 9 | 0;
+   SAFE_HEAP_STORE($73 >> 0 | 0, $77 | 0, 1);
+   SAFE_HEAP_STORE($13 >> 0 | 0, $75 | 0, 1);
+   $79 = $$02831 + 10 | 0;
+   $80 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+   $81 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+   $82 = $81 ^ $80;
+   $83 = $$02930 + 10 | 0;
+   SAFE_HEAP_STORE($78 >> 0 | 0, $82 | 0, 1);
+   SAFE_HEAP_STORE($21 >> 0 | 0, $80 | 0, 1);
+   $84 = $$02831 + 11 | 0;
+   $85 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+   $86 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+   $87 = $86 ^ $85;
+   $88 = $$02930 + 11 | 0;
+   SAFE_HEAP_STORE($83 >> 0 | 0, $87 | 0, 1);
+   SAFE_HEAP_STORE($22 >> 0 | 0, $85 | 0, 1);
+   $89 = $$02831 + 12 | 0;
+   $90 = SAFE_HEAP_LOAD($84 >> 0 | 0, 1, 0) | 0 | 0;
+   $91 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+   $92 = $91 ^ $90;
+   $93 = $$02930 + 12 | 0;
+   SAFE_HEAP_STORE($88 >> 0 | 0, $92 | 0, 1);
+   SAFE_HEAP_STORE($23 >> 0 | 0, $90 | 0, 1);
+   $94 = $$02831 + 13 | 0;
+   $95 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+   $96 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+   $97 = $96 ^ $95;
+   $98 = $$02930 + 13 | 0;
+   SAFE_HEAP_STORE($93 >> 0 | 0, $97 | 0, 1);
+   SAFE_HEAP_STORE($14 >> 0 | 0, $95 | 0, 1);
+   $99 = $$02831 + 14 | 0;
+   $100 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+   $101 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+   $102 = $101 ^ $100;
+   $103 = $$02930 + 14 | 0;
+   SAFE_HEAP_STORE($98 >> 0 | 0, $102 | 0, 1);
+   SAFE_HEAP_STORE($24 >> 0 | 0, $100 | 0, 1);
+   $104 = $$02831 + 15 | 0;
+   $105 = SAFE_HEAP_LOAD($99 >> 0 | 0, 1, 0) | 0 | 0;
+   $106 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+   $107 = $106 ^ $105;
+   $108 = $$02930 + 15 | 0;
+   SAFE_HEAP_STORE($103 >> 0 | 0, $107 | 0, 1);
+   SAFE_HEAP_STORE($25 >> 0 | 0, $105 | 0, 1);
+   $109 = SAFE_HEAP_LOAD($104 >> 0 | 0, 1, 0) | 0 | 0;
+   $110 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+   $111 = $110 ^ $109;
+   SAFE_HEAP_STORE($108 >> 0 | 0, $111 | 0, 1);
+   SAFE_HEAP_STORE($26 >> 0 | 0, $109 | 0, 1);
+  }
+  $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 _sha256_final($0) {
+ $0 = $0 | 0;
+ var $$ = 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, $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, $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, 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 + 4 | 0;
+ $6 = $5;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = $8 + $15 | 0;
+ $17 = $16 >>> 0 < $8 >>> 0;
+ $18 = $17 & 1;
+ $$ = $18 + $13 | 0;
+ $19 = $16 << 3;
+ $20 = $$ << 3;
+ $21 = $16 >>> 29;
+ $22 = $20 | $21;
+ $23 = ($15 | 0) < 56;
+ $24 = $15 + 1 | 0;
+ SAFE_HEAP_STORE($14 | 0, $24 | 0, 4);
+ $25 = $0 + $15 | 0;
+ SAFE_HEAP_STORE($25 >> 0 | 0, -128 | 0, 1);
+ $26 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ if ($23) {
+  $28 = ($26 | 0) < 56;
+  if ($28) {
+   $30 = $26;
+   while (1) {
+    $29 = $30 + 1 | 0;
+    SAFE_HEAP_STORE($14 | 0, $29 | 0, 4);
+    $31 = $0 + $30 | 0;
+    SAFE_HEAP_STORE($31 >> 0 | 0, 0 | 0, 1);
+    $32 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $33 = ($32 | 0) < 56;
+    if ($33) {
+     $30 = $32;
+    } else {
+     break;
+    }
+   }
+  }
+ } else {
+  $27 = ($26 | 0) < 64;
+  if ($27) {
+   $35 = $26;
+   while (1) {
+    $34 = $35 + 1 | 0;
+    SAFE_HEAP_STORE($14 | 0, $34 | 0, 4);
+    $36 = $0 + $35 | 0;
+    SAFE_HEAP_STORE($36 >> 0 | 0, 0 | 0, 1);
+    $37 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 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 {
+   SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+   dest = dest + 4 | 0;
+  } while ((dest | 0) < (stop | 0));
+ }
+ $39 = $0 + 56 | 0;
+ $40 = $$ >>> 21;
+ $41 = $40 & 255;
+ SAFE_HEAP_STORE($39 >> 0 | 0, $41 | 0, 1);
+ $42 = $$ >>> 13;
+ $43 = $42 & 255;
+ $44 = $0 + 57 | 0;
+ SAFE_HEAP_STORE($44 >> 0 | 0, $43 | 0, 1);
+ $45 = $$ >>> 5;
+ $46 = $45 & 255;
+ $47 = $0 + 58 | 0;
+ SAFE_HEAP_STORE($47 >> 0 | 0, $46 | 0, 1);
+ $48 = $22 & 255;
+ $49 = $0 + 59 | 0;
+ SAFE_HEAP_STORE($49 >> 0 | 0, $48 | 0, 1);
+ $50 = $0 + 60 | 0;
+ $51 = $16 >>> 21;
+ $52 = $51 & 255;
+ SAFE_HEAP_STORE($50 >> 0 | 0, $52 | 0, 1);
+ $53 = $16 >>> 13;
+ $54 = $53 & 255;
+ $55 = $0 + 61 | 0;
+ SAFE_HEAP_STORE($55 >> 0 | 0, $54 | 0, 1);
+ $56 = $16 >>> 5;
+ $57 = $56 & 255;
+ $58 = $0 + 62 | 0;
+ SAFE_HEAP_STORE($58 >> 0 | 0, $57 | 0, 1);
+ $59 = $19 & 255;
+ $60 = $0 + 63 | 0;
+ SAFE_HEAP_STORE($60 >> 0 | 0, $59 | 0, 1);
+ _transform_1338($0, $0, 1) | 0;
+ ___gcry_burn_stack(328);
+ $61 = $0 + 160 | 0;
+ $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+ $63 = $62 >>> 24;
+ $64 = $63 & 255;
+ SAFE_HEAP_STORE($0 >> 0 | 0, $64 | 0, 1);
+ $65 = $62 >>> 16;
+ $66 = $65 & 255;
+ $67 = $0 + 1 | 0;
+ SAFE_HEAP_STORE($67 >> 0 | 0, $66 | 0, 1);
+ $68 = $62 >>> 8;
+ $69 = $68 & 255;
+ $70 = $0 + 2 | 0;
+ SAFE_HEAP_STORE($70 >> 0 | 0, $69 | 0, 1);
+ $71 = $62 & 255;
+ $72 = $0 + 3 | 0;
+ SAFE_HEAP_STORE($72 >> 0 | 0, $71 | 0, 1);
+ $73 = $0 + 4 | 0;
+ $74 = $0 + 164 | 0;
+ $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+ $76 = $75 >>> 24;
+ $77 = $76 & 255;
+ SAFE_HEAP_STORE($73 >> 0 | 0, $77 | 0, 1);
+ $78 = $75 >>> 16;
+ $79 = $78 & 255;
+ $80 = $0 + 5 | 0;
+ SAFE_HEAP_STORE($80 >> 0 | 0, $79 | 0, 1);
+ $81 = $75 >>> 8;
+ $82 = $81 & 255;
+ $83 = $0 + 6 | 0;
+ SAFE_HEAP_STORE($83 >> 0 | 0, $82 | 0, 1);
+ $84 = $75 & 255;
+ $85 = $0 + 7 | 0;
+ SAFE_HEAP_STORE($85 >> 0 | 0, $84 | 0, 1);
+ $86 = $0 + 8 | 0;
+ $87 = $0 + 168 | 0;
+ $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+ $89 = $88 >>> 24;
+ $90 = $89 & 255;
+ SAFE_HEAP_STORE($86 >> 0 | 0, $90 | 0, 1);
+ $91 = $88 >>> 16;
+ $92 = $91 & 255;
+ $93 = $0 + 9 | 0;
+ SAFE_HEAP_STORE($93 >> 0 | 0, $92 | 0, 1);
+ $94 = $88 >>> 8;
+ $95 = $94 & 255;
+ $96 = $0 + 10 | 0;
+ SAFE_HEAP_STORE($96 >> 0 | 0, $95 | 0, 1);
+ $97 = $88 & 255;
+ $98 = $0 + 11 | 0;
+ SAFE_HEAP_STORE($98 >> 0 | 0, $97 | 0, 1);
+ $99 = $0 + 12 | 0;
+ $100 = $0 + 172 | 0;
+ $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+ $102 = $101 >>> 24;
+ $103 = $102 & 255;
+ SAFE_HEAP_STORE($99 >> 0 | 0, $103 | 0, 1);
+ $104 = $101 >>> 16;
+ $105 = $104 & 255;
+ $106 = $0 + 13 | 0;
+ SAFE_HEAP_STORE($106 >> 0 | 0, $105 | 0, 1);
+ $107 = $101 >>> 8;
+ $108 = $107 & 255;
+ $109 = $0 + 14 | 0;
+ SAFE_HEAP_STORE($109 >> 0 | 0, $108 | 0, 1);
+ $110 = $101 & 255;
+ $111 = $0 + 15 | 0;
+ SAFE_HEAP_STORE($111 >> 0 | 0, $110 | 0, 1);
+ $112 = $0 + 16 | 0;
+ $113 = $0 + 176 | 0;
+ $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+ $115 = $114 >>> 24;
+ $116 = $115 & 255;
+ SAFE_HEAP_STORE($112 >> 0 | 0, $116 | 0, 1);
+ $117 = $114 >>> 16;
+ $118 = $117 & 255;
+ $119 = $0 + 17 | 0;
+ SAFE_HEAP_STORE($119 >> 0 | 0, $118 | 0, 1);
+ $120 = $114 >>> 8;
+ $121 = $120 & 255;
+ $122 = $0 + 18 | 0;
+ SAFE_HEAP_STORE($122 >> 0 | 0, $121 | 0, 1);
+ $123 = $114 & 255;
+ $124 = $0 + 19 | 0;
+ SAFE_HEAP_STORE($124 >> 0 | 0, $123 | 0, 1);
+ $125 = $0 + 20 | 0;
+ $126 = $0 + 180 | 0;
+ $127 = SAFE_HEAP_LOAD($126 | 0, 4, 0) | 0 | 0;
+ $128 = $127 >>> 24;
+ $129 = $128 & 255;
+ SAFE_HEAP_STORE($125 >> 0 | 0, $129 | 0, 1);
+ $130 = $127 >>> 16;
+ $131 = $130 & 255;
+ $132 = $0 + 21 | 0;
+ SAFE_HEAP_STORE($132 >> 0 | 0, $131 | 0, 1);
+ $133 = $127 >>> 8;
+ $134 = $133 & 255;
+ $135 = $0 + 22 | 0;
+ SAFE_HEAP_STORE($135 >> 0 | 0, $134 | 0, 1);
+ $136 = $127 & 255;
+ $137 = $0 + 23 | 0;
+ SAFE_HEAP_STORE($137 >> 0 | 0, $136 | 0, 1);
+ $138 = $0 + 24 | 0;
+ $139 = $0 + 184 | 0;
+ $140 = SAFE_HEAP_LOAD($139 | 0, 4, 0) | 0 | 0;
+ $141 = $140 >>> 24;
+ $142 = $141 & 255;
+ SAFE_HEAP_STORE($138 >> 0 | 0, $142 | 0, 1);
+ $143 = $140 >>> 16;
+ $144 = $143 & 255;
+ $145 = $0 + 25 | 0;
+ SAFE_HEAP_STORE($145 >> 0 | 0, $144 | 0, 1);
+ $146 = $140 >>> 8;
+ $147 = $146 & 255;
+ $148 = $0 + 26 | 0;
+ SAFE_HEAP_STORE($148 >> 0 | 0, $147 | 0, 1);
+ $149 = $140 & 255;
+ $150 = $0 + 27 | 0;
+ SAFE_HEAP_STORE($150 >> 0 | 0, $149 | 0, 1);
+ $151 = $0 + 28 | 0;
+ $152 = $0 + 188 | 0;
+ $153 = SAFE_HEAP_LOAD($152 | 0, 4, 0) | 0 | 0;
+ $154 = $153 >>> 24;
+ $155 = $154 & 255;
+ SAFE_HEAP_STORE($151 >> 0 | 0, $155 | 0, 1);
+ $156 = $153 >>> 16;
+ $157 = $156 & 255;
+ $158 = $0 + 29 | 0;
+ SAFE_HEAP_STORE($158 >> 0 | 0, $157 | 0, 1);
+ $159 = $153 >>> 8;
+ $160 = $159 & 255;
+ $161 = $0 + 30 | 0;
+ SAFE_HEAP_STORE($161 >> 0 | 0, $160 | 0, 1);
+ $162 = $153 & 255;
+ $163 = $0 + 31 | 0;
+ SAFE_HEAP_STORE($163 >> 0 | 0, $162 | 0, 1);
+ 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, $90 = 0, $91 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 32 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(32 | 0);
+ $1 = sp + 8 | 0;
+ $2 = sp + 4 | 0;
+ $3 = sp;
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ $4 = ($0 | 0) == 2;
+ if ($4) {
+  $$03446$lcssa = 0;
+ } else {
+  $5 = ($0 | 0) == 5;
+  if ($5) {
+   $$03446$lcssa = 1;
+  } else {
+   __gcry_cipher_close(0);
+   __gcry_cipher_close(0);
+   $$036 = 38154;
+   STACKTOP = sp;
+   return $$036 | 0;
+  }
+ }
+ $6 = 4472 + ($$03446$lcssa * 164 | 0) | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = __gcry_cipher_open($2, 7, $7, 0) | 0;
+ $9 = ($8 | 0) == 0;
+ if (!$9) {
+  $10 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  __gcry_cipher_close($10);
+  $11 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  __gcry_cipher_close($11);
+  $$036 = 38181;
+  STACKTOP = sp;
+  return $$036 | 0;
+ }
+ $12 = __gcry_cipher_open($3, 7, $7, 0) | 0;
+ $13 = ($12 | 0) == 0;
+ $14 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ if (!$13) {
+  __gcry_cipher_close($14);
+  $15 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  __gcry_cipher_close($15);
+  $$036 = 38181;
+  STACKTOP = sp;
+  return $$036 | 0;
+ }
+ $16 = (4472 + ($$03446$lcssa * 164 | 0) | 0) + 4 | 0;
+ $17 = __gcry_cipher_setkey($14, $16, 16) | 0;
+ $18 = ($17 | 0) == 0;
+ if ($18) {
+  $20 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $21 = __gcry_cipher_setkey($20, $16, 16) | 0;
+  $22 = ($21 | 0) == 0;
+  $23 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  if ($22) {
+   $26 = (4472 + ($$03446$lcssa * 164 | 0) | 0) + 20 | 0;
+   $27 = __gcry_cipher_setiv($23, $26, 16) | 0;
+   $28 = ($27 | 0) == 0;
+   if ($28) {
+    $29 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    $30 = __gcry_cipher_setiv($29, $26, 16) | 0;
+    $31 = ($30 | 0) == 0;
+    if ($31) {
+     $32 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $33 = (4472 + ($$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) {
+       $44 = (4472 + ($$03446$lcssa * 164 | 0) | 0) + 52 | 0;
+       $45 = _memcmp($1, $44, 16) | 0;
+       $46 = ($45 | 0) == 0;
+       L22 : do {
+        if ($46) {
+         $49 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+         $50 = __gcry_cipher_decrypt($49, $1, 16, $44, 16) | 0;
+         $51 = ($50 | 0) == 0;
+         L24 : do {
+          if ($51) {
+           $54 = _memcmp($1, $33, 16) | 0;
+           $55 = ($54 | 0) == 0;
+           do {
+            if ($55) {
+             $38 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+             $39 = (4472 + ($$03446$lcssa * 164 | 0) | 0) + 68 | 0;
+             $40 = __gcry_cipher_encrypt($38, $1, 16, $39, 16) | 0;
+             $41 = ($40 | 0) == 0;
+             if (!$41) {
+              break L20;
+             }
+             $58 = (4472 + ($$03446$lcssa * 164 | 0) | 0) + 84 | 0;
+             $59 = _memcmp($1, $58, 16) | 0;
+             $60 = ($59 | 0) == 0;
+             if (!$60) {
+              break L22;
+             }
+             $61 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+             $62 = __gcry_cipher_decrypt($61, $1, 16, $58, 16) | 0;
+             $63 = ($62 | 0) == 0;
+             if (!$63) {
+              break L24;
+             }
+             $64 = _memcmp($1, $39, 16) | 0;
+             $65 = ($64 | 0) == 0;
+             if (!$65) {
+              break;
+             }
+             $66 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+             $67 = (4472 + ($$03446$lcssa * 164 | 0) | 0) + 100 | 0;
+             $68 = __gcry_cipher_encrypt($66, $1, 16, $67, 16) | 0;
+             $69 = ($68 | 0) == 0;
+             if (!$69) {
+              break L20;
+             }
+             $70 = (4472 + ($$03446$lcssa * 164 | 0) | 0) + 116 | 0;
+             $71 = _memcmp($1, $70, 16) | 0;
+             $72 = ($71 | 0) == 0;
+             if (!$72) {
+              break L22;
+             }
+             $73 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+             $74 = __gcry_cipher_decrypt($73, $1, 16, $70, 16) | 0;
+             $75 = ($74 | 0) == 0;
+             if (!$75) {
+              break L24;
+             }
+             $76 = _memcmp($1, $67, 16) | 0;
+             $77 = ($76 | 0) == 0;
+             if (!$77) {
+              break;
+             }
+             $78 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+             $79 = (4472 + ($$03446$lcssa * 164 | 0) | 0) + 132 | 0;
+             $80 = __gcry_cipher_encrypt($78, $1, 16, $79, 16) | 0;
+             $81 = ($80 | 0) == 0;
+             if (!$81) {
+              break L20;
+             }
+             $82 = (4472 + ($$03446$lcssa * 164 | 0) | 0) + 148 | 0;
+             $83 = _memcmp($1, $82, 16) | 0;
+             $84 = ($83 | 0) == 0;
+             if (!$84) {
+              break L22;
+             }
+             $85 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+             $86 = __gcry_cipher_decrypt($85, $1, 16, $82, 16) | 0;
+             $87 = ($86 | 0) == 0;
+             if (!$87) {
+              break L24;
+             }
+             $88 = _memcmp($1, $79, 16) | 0;
+             $89 = ($88 | 0) == 0;
+             if (!$89) {
+              break;
+             }
+             $90 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+             __gcry_cipher_close($90);
+             $91 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+             __gcry_cipher_close($91);
+             $$036 = 0;
+             STACKTOP = sp;
+             return $$036 | 0;
+            }
+           } while (0);
+           $56 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+           __gcry_cipher_close($56);
+           $57 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+           __gcry_cipher_close($57);
+           $$036 = 38250;
+           STACKTOP = sp;
+           return $$036 | 0;
+          }
+         } while (0);
+         $52 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+         __gcry_cipher_close($52);
+         $53 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+         __gcry_cipher_close($53);
+         $$036 = 38234;
+         STACKTOP = sp;
+         return $$036 | 0;
+        }
+       } while (0);
+       $47 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+       __gcry_cipher_close($47);
+       $48 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+       __gcry_cipher_close($48);
+       $$036 = 38217;
+       STACKTOP = sp;
+       return $$036 | 0;
+      }
+     } while (0);
+     $42 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     __gcry_cipher_close($42);
+     $43 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+     __gcry_cipher_close($43);
+     $$036 = 38201;
+     STACKTOP = sp;
+     return $$036 | 0;
+    }
+   }
+   $36 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+   __gcry_cipher_close($36);
+   $37 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+   __gcry_cipher_close($37);
+   $$036 = 38194;
+   STACKTOP = sp;
+   return $$036 | 0;
+  } else {
+   $24 = $23;
+  }
+ } else {
+  $19 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  $24 = $19;
+ }
+ __gcry_cipher_close($24);
+ $25 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ __gcry_cipher_close($25);
+ $$036 = 38186;
+ STACKTOP = sp;
+ return $$036 | 0;
+}
+
+function __gcry_mpih_divmod_1($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $$$v = 0, $$0 = 0, $$0252 = 0, $$0253 = 0, $$0254 = 0, $$0257 = 
0, $$0258 = 0, $$0259 = 0, $$0260 = 0, $$0261292 = 0, $$0263$lcssa = 0, 
$$0263291 = 0, $$0264 = 0, $$0265 = 0, $$0266 = 0, $$0267 = 0, $$0268$lcssa = 
0, $$0268290 = 0, $$1 = 0;
+ var $$1262$ph = 0, $$1262289 = 0, $$1269$ph = 0, $$1269288 = 0, $$277 = 0, 
$$278 = 0, $$278$v = 0, $$279 = 0, $$280 = 0, $$280$v = 0, $$281 = 0, $$282 = 
0, $$282$v = 0, $$283 = 0, $$284 = 0, $$284$v = 0, $$285 = 0, $$286 = 0, 
$$286$v = 0, $$287 = 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, $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, $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$cond271 = 0, $or$cond272 = 0, $or$cond273 = 0, $or$cond274 = 0, $or$cond275 
= 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 = 45555 + $11 | 0;
+ $13 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = $13 & 255;
+ $15 = $14 + $10 | 0;
+ $16 = 32 - $15 | 0;
+ $17 = ($16 | 0) == 0;
+ if ($17) {
+  $90 = $2 + -1 | 0;
+  $91 = $1 + ($90 << 2) | 0;
+  $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+  $93 = $92 >>> 0 < $3 >>> 0;
+  if ($93) {
+   $94 = $0 + ($90 << 2) | 0;
+   $95 = $2 + -2 | 0;
+   SAFE_HEAP_STORE($94 | 0, 0 | 0, 4);
+   $$1262$ph = $95;
+   $$1269$ph = $92;
+  } else {
+   $$1262$ph = $90;
+   $$1269$ph = 0;
+  }
+  $96 = ($$1262$ph | 0) > -1;
+  if (!$96) {
+   $$1 = $$1269$ph;
+   return $$1 | 0;
+  }
+  $97 = $3 >>> 16;
+  $98 = $3 & 65535;
+  $$1262289 = $$1262$ph;
+  $$1269288 = $$1269$ph;
+  while (1) {
+   $99 = $1 + ($$1262289 << 2) | 0;
+   $100 = SAFE_HEAP_LOAD($99 | 0, 4, 0) | 0 | 0;
+   $101 = ($$1269288 >>> 0) % ($97 >>> 0) & -1;
+   $102 = ($$1269288 >>> 0) / ($97 >>> 0) & -1;
+   $103 = Math_imul($102, $98) | 0;
+   $104 = $101 << 16;
+   $105 = $100 >>> 16;
+   $106 = $104 | $105;
+   $107 = $106 >>> 0 < $103 >>> 0;
+   if ($107) {
+    $108 = $106 + $3 | 0;
+    $109 = $108 >>> 0 >= $3 >>> 0;
+    $110 = $108 >>> 0 < $103 >>> 0;
+    $or$cond274 = $109 & $110;
+    $$284$v = $or$cond274 ? -2 : -1;
+    $$284 = $$284$v + $102 | 0;
+    $111 = $or$cond274 ? $3 : 0;
+    $$285 = $111 + $108 | 0;
+    $$0252 = $$285;
+    $$0254 = $$284;
+   } else {
+    $$0252 = $106;
+    $$0254 = $102;
+   }
+   $112 = $$0252 - $103 | 0;
+   $113 = ($112 >>> 0) % ($97 >>> 0) & -1;
+   $114 = ($112 >>> 0) / ($97 >>> 0) & -1;
+   $115 = Math_imul($114, $98) | 0;
+   $116 = $113 << 16;
+   $117 = $100 & 65535;
+   $118 = $116 | $117;
+   $119 = $118 >>> 0 < $115 >>> 0;
+   if ($119) {
+    $120 = $118 + $3 | 0;
+    $121 = $120 >>> 0 >= $3 >>> 0;
+    $122 = $120 >>> 0 < $115 >>> 0;
+    $or$cond275 = $121 & $122;
+    $$286$v = $or$cond275 ? -2 : -1;
+    $$286 = $$286$v + $114 | 0;
+    $123 = $or$cond275 ? $3 : 0;
+    $$287 = $123 + $120 | 0;
+    $$0 = $$287;
+    $$0253 = $$286;
+   } else {
+    $$0 = $118;
+    $$0253 = $114;
+   }
+   $124 = $$0 - $115 | 0;
+   $125 = $$0254 << 16;
+   $126 = $$0253 | $125;
+   $127 = $0 + ($$1262289 << 2) | 0;
+   SAFE_HEAP_STORE($127 | 0, $126 | 0, 4);
+   $128 = $$1262289 + -1 | 0;
+   $129 = ($$1262289 | 0) > 0;
+   if ($129) {
+    $$1262289 = $128;
+    $$1269288 = $124;
+   } else {
+    $$1 = $124;
+    break;
+   }
+  }
+  return $$1 | 0;
+ }
+ $18 = $3 << $16;
+ $19 = $2 + -1 | 0;
+ $20 = $1 + ($19 << 2) | 0;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = $21 >>> $15;
+ $23 = $2 + -2 | 0;
+ $24 = ($23 | 0) > -1;
+ $25 = $18 >>> 16;
+ $26 = $18 & 65535;
+ if ($24) {
+  $$0261292 = $23;
+  $$0263291 = $21;
+  $$0268290 = $22;
+  while (1) {
+   $27 = $1 + ($$0261292 << 2) | 0;
+   $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+   $29 = ($$0268290 >>> 0) % ($25 >>> 0) & -1;
+   $30 = ($$0268290 >>> 0) / ($25 >>> 0) & -1;
+   $31 = Math_imul($30, $26) | 0;
+   $32 = $29 << 16;
+   $33 = $$0263291 << $16;
+   $34 = $28 >>> $15;
+   $35 = $34 | $33;
+   $36 = $35 >>> 16;
+   $37 = $36 | $32;
+   $38 = $37 >>> 0 < $31 >>> 0;
+   if ($38) {
+    $39 = $37 + $18 | 0;
+    $40 = $39 >>> 0 >= $18 >>> 0;
+    $41 = $39 >>> 0 < $31 >>> 0;
+    $or$cond = $40 & $41;
+    $$$v = $or$cond ? -2 : -1;
+    $$ = $$$v + $30 | 0;
+    $42 = $or$cond ? $18 : 0;
+    $$277 = $42 + $39 | 0;
+    $$0265 = $$277;
+    $$0267 = $$;
+   } else {
+    $$0265 = $37;
+    $$0267 = $30;
+   }
+   $43 = $$0265 - $31 | 0;
+   $44 = ($43 >>> 0) % ($25 >>> 0) & -1;
+   $45 = ($43 >>> 0) / ($25 >>> 0) & -1;
+   $46 = Math_imul($45, $26) | 0;
+   $47 = $44 << 16;
+   $48 = $35 & 65535;
+   $49 = $47 | $48;
+   $50 = $49 >>> 0 < $46 >>> 0;
+   if ($50) {
+    $51 = $49 + $18 | 0;
+    $52 = $51 >>> 0 >= $18 >>> 0;
+    $53 = $51 >>> 0 < $46 >>> 0;
+    $or$cond271 = $52 & $53;
+    $$278$v = $or$cond271 ? -2 : -1;
+    $$278 = $$278$v + $45 | 0;
+    $54 = $or$cond271 ? $18 : 0;
+    $$279 = $54 + $51 | 0;
+    $$0264 = $$279;
+    $$0266 = $$278;
+   } else {
+    $$0264 = $49;
+    $$0266 = $45;
+   }
+   $55 = $$0264 - $46 | 0;
+   $56 = $$0267 << 16;
+   $57 = $$0266 | $56;
+   $58 = $$0261292 + 1 | 0;
+   $59 = $0 + ($58 << 2) | 0;
+   SAFE_HEAP_STORE($59 | 0, $57 | 0, 4);
+   $60 = $$0261292 + -1 | 0;
+   $61 = ($$0261292 | 0) > 0;
+   if ($61) {
+    $$0261292 = $60;
+    $$0263291 = $28;
+    $$0268290 = $55;
+   } else {
+    $$0263$lcssa = $28;
+    $$0268$lcssa = $55;
+    break;
+   }
+  }
+ } else {
+  $$0263$lcssa = $21;
+  $$0268$lcssa = $22;
+ }
+ $62 = ($$0268$lcssa >>> 0) % ($25 >>> 0) & -1;
+ $63 = ($$0268$lcssa >>> 0) / ($25 >>> 0) & -1;
+ $64 = Math_imul($63, $26) | 0;
+ $65 = $62 << 16;
+ $66 = $$0263$lcssa << $16;
+ $67 = $66 >>> 16;
+ $68 = $65 | $67;
+ $69 = $68 >>> 0 < $64 >>> 0;
+ if ($69) {
+  $70 = $68 + $18 | 0;
+  $71 = $70 >>> 0 >= $18 >>> 0;
+  $72 = $70 >>> 0 < $64 >>> 0;
+  $or$cond272 = $71 & $72;
+  $$280$v = $or$cond272 ? -2 : -1;
+  $$280 = $$280$v + $63 | 0;
+  $73 = $or$cond272 ? $18 : 0;
+  $$281 = $73 + $70 | 0;
+  $$0258 = $$281;
+  $$0260 = $$280;
+ } else {
+  $$0258 = $68;
+  $$0260 = $63;
+ }
+ $74 = $$0258 - $64 | 0;
+ $75 = ($74 >>> 0) % ($25 >>> 0) & -1;
+ $76 = ($74 >>> 0) / ($25 >>> 0) & -1;
+ $77 = Math_imul($76, $26) | 0;
+ $78 = $75 << 16;
+ $79 = $66 & 65535;
+ $80 = $78 | $79;
+ $81 = $80 >>> 0 < $77 >>> 0;
+ if ($81) {
+  $82 = $80 + $18 | 0;
+  $83 = $82 >>> 0 >= $18 >>> 0;
+  $84 = $82 >>> 0 < $77 >>> 0;
+  $or$cond273 = $83 & $84;
+  $$282$v = $or$cond273 ? -2 : -1;
+  $$282 = $$282$v + $76 | 0;
+  $85 = $or$cond273 ? $18 : 0;
+  $$283 = $85 + $82 | 0;
+  $$0257 = $$283;
+  $$0259 = $$282;
+ } else {
+  $$0257 = $80;
+  $$0259 = $76;
+ }
+ $86 = $$0257 - $77 | 0;
+ $87 = $$0260 << 16;
+ $88 = $$0259 | $87;
+ SAFE_HEAP_STORE($0 | 0, $88 | 0, 4);
+ $89 = $86 >>> $16;
+ $$1 = $89;
+ return $$1 | 0;
+}
+
+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 = 0, $$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;
+ 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, $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, $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;
+ 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;
+ $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;
+  $$$0 = $22 ? 36 : $$031;
+  $23 = $$02629;
+  $24 = $$02728;
+  $25 = $24 | $6;
+  $26 = $25 | $23;
+  $27 = $26 & 3;
+  $28 = ($27 | 0) == 0;
+  if ($28) {
+   $107 = $$02629 + 4 | 0;
+   $108 = SAFE_HEAP_LOAD($$02629 | 0, 4, 0) | 0 | 0;
+   $109 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+   $110 = $109 ^ $108;
+   $111 = $$02728 + 4 | 0;
+   SAFE_HEAP_STORE($$02728 | 0, $110 | 0, 4);
+   SAFE_HEAP_STORE($1 | 0, $108 | 0, 4);
+   $112 = $$02629 + 8 | 0;
+   $113 = SAFE_HEAP_LOAD($107 | 0, 4, 0) | 0 | 0;
+   $114 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $115 = $114 ^ $113;
+   $116 = $$02728 + 8 | 0;
+   SAFE_HEAP_STORE($111 | 0, $115 | 0, 4);
+   SAFE_HEAP_STORE($7 | 0, $113 | 0, 4);
+   $117 = $$02629 + 12 | 0;
+   $118 = SAFE_HEAP_LOAD($112 | 0, 4, 0) | 0 | 0;
+   $119 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+   $120 = $119 ^ $118;
+   $121 = $$02728 + 12 | 0;
+   SAFE_HEAP_STORE($116 | 0, $120 | 0, 4);
+   SAFE_HEAP_STORE($8 | 0, $118 | 0, 4);
+   $122 = SAFE_HEAP_LOAD($117 | 0, 4, 0) | 0 | 0;
+   $123 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $124 = $123 ^ $122;
+   SAFE_HEAP_STORE($121 | 0, $124 | 0, 4);
+   SAFE_HEAP_STORE($9 | 0, $122 | 0, 4);
+  } else {
+   $29 = $$02629 + 1 | 0;
+   $30 = SAFE_HEAP_LOAD($$02629 >> 0 | 0, 1, 0) | 0 | 0;
+   $31 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+   $32 = $31 ^ $30;
+   $33 = $$02728 + 1 | 0;
+   SAFE_HEAP_STORE($$02728 >> 0 | 0, $32 | 0, 1);
+   SAFE_HEAP_STORE($1 >> 0 | 0, $30 | 0, 1);
+   $34 = $$02629 + 2 | 0;
+   $35 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+   $36 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+   $37 = $36 ^ $35;
+   $38 = $$02728 + 2 | 0;
+   SAFE_HEAP_STORE($33 >> 0 | 0, $37 | 0, 1);
+   SAFE_HEAP_STORE($10 >> 0 | 0, $35 | 0, 1);
+   $39 = $$02629 + 3 | 0;
+   $40 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+   $41 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+   $42 = $41 ^ $40;
+   $43 = $$02728 + 3 | 0;
+   SAFE_HEAP_STORE($38 >> 0 | 0, $42 | 0, 1);
+   SAFE_HEAP_STORE($11 >> 0 | 0, $40 | 0, 1);
+   $44 = $$02629 + 4 | 0;
+   $45 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+   $46 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+   $47 = $46 ^ $45;
+   $48 = $$02728 + 4 | 0;
+   SAFE_HEAP_STORE($43 >> 0 | 0, $47 | 0, 1);
+   SAFE_HEAP_STORE($12 >> 0 | 0, $45 | 0, 1);
+   $49 = $$02629 + 5 | 0;
+   $50 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+   $51 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+   $52 = $51 ^ $50;
+   $53 = $$02728 + 5 | 0;
+   SAFE_HEAP_STORE($48 >> 0 | 0, $52 | 0, 1);
+   SAFE_HEAP_STORE($7 >> 0 | 0, $50 | 0, 1);
+   $54 = $$02629 + 6 | 0;
+   $55 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+   $56 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+   $57 = $56 ^ $55;
+   $58 = $$02728 + 6 | 0;
+   SAFE_HEAP_STORE($53 >> 0 | 0, $57 | 0, 1);
+   SAFE_HEAP_STORE($13 >> 0 | 0, $55 | 0, 1);
+   $59 = $$02629 + 7 | 0;
+   $60 = SAFE_HEAP_LOAD($54 >> 0 | 0, 1, 0) | 0 | 0;
+   $61 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+   $62 = $61 ^ $60;
+   $63 = $$02728 + 7 | 0;
+   SAFE_HEAP_STORE($58 >> 0 | 0, $62 | 0, 1);
+   SAFE_HEAP_STORE($14 >> 0 | 0, $60 | 0, 1);
+   $64 = $$02629 + 8 | 0;
+   $65 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+   $66 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+   $67 = $66 ^ $65;
+   $68 = $$02728 + 8 | 0;
+   SAFE_HEAP_STORE($63 >> 0 | 0, $67 | 0, 1);
+   SAFE_HEAP_STORE($15 >> 0 | 0, $65 | 0, 1);
+   $69 = $$02629 + 9 | 0;
+   $70 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+   $71 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+   $72 = $71 ^ $70;
+   $73 = $$02728 + 9 | 0;
+   SAFE_HEAP_STORE($68 >> 0 | 0, $72 | 0, 1);
+   SAFE_HEAP_STORE($8 >> 0 | 0, $70 | 0, 1);
+   $74 = $$02629 + 10 | 0;
+   $75 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+   $76 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+   $77 = $76 ^ $75;
+   $78 = $$02728 + 10 | 0;
+   SAFE_HEAP_STORE($73 >> 0 | 0, $77 | 0, 1);
+   SAFE_HEAP_STORE($16 >> 0 | 0, $75 | 0, 1);
+   $79 = $$02629 + 11 | 0;
+   $80 = SAFE_HEAP_LOAD($74 >> 0 | 0, 1, 0) | 0 | 0;
+   $81 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+   $82 = $81 ^ $80;
+   $83 = $$02728 + 11 | 0;
+   SAFE_HEAP_STORE($78 >> 0 | 0, $82 | 0, 1);
+   SAFE_HEAP_STORE($17 >> 0 | 0, $80 | 0, 1);
+   $84 = $$02629 + 12 | 0;
+   $85 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+   $86 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+   $87 = $86 ^ $85;
+   $88 = $$02728 + 12 | 0;
+   SAFE_HEAP_STORE($83 >> 0 | 0, $87 | 0, 1);
+   SAFE_HEAP_STORE($18 >> 0 | 0, $85 | 0, 1);
+   $89 = $$02629 + 13 | 0;
+   $90 = SAFE_HEAP_LOAD($84 >> 0 | 0, 1, 0) | 0 | 0;
+   $91 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+   $92 = $91 ^ $90;
+   $93 = $$02728 + 13 | 0;
+   SAFE_HEAP_STORE($88 >> 0 | 0, $92 | 0, 1);
+   SAFE_HEAP_STORE($9 >> 0 | 0, $90 | 0, 1);
+   $94 = $$02629 + 14 | 0;
+   $95 = SAFE_HEAP_LOAD($89 >> 0 | 0, 1, 0) | 0 | 0;
+   $96 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+   $97 = $96 ^ $95;
+   $98 = $$02728 + 14 | 0;
+   SAFE_HEAP_STORE($93 >> 0 | 0, $97 | 0, 1);
+   SAFE_HEAP_STORE($19 >> 0 | 0, $95 | 0, 1);
+   $99 = $$02629 + 15 | 0;
+   $100 = SAFE_HEAP_LOAD($94 >> 0 | 0, 1, 0) | 0 | 0;
+   $101 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+   $102 = $101 ^ $100;
+   $103 = $$02728 + 15 | 0;
+   SAFE_HEAP_STORE($98 >> 0 | 0, $102 | 0, 1);
+   SAFE_HEAP_STORE($20 >> 0 | 0, $100 | 0, 1);
+   $104 = SAFE_HEAP_LOAD($99 >> 0 | 0, 1, 0) | 0 | 0;
+   $105 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+   $106 = $105 ^ $104;
+   SAFE_HEAP_STORE($103 >> 0 | 0, $106 | 0, 1);
+   SAFE_HEAP_STORE($21 >> 0 | 0, $104 | 0, 1);
+  }
+  $125 = $$02728 + 16 | 0;
+  $126 = $$02629 + 16 | 0;
+  $127 = $$02530 + -1 | 0;
+  $128 = ($127 | 0) == 0;
+  if ($128) {
+   $$0$lcssa = $$$0;
+   break;
+  } else {
+   $$02530 = $127;
+   $$02629 = $126;
+   $$02728 = $125;
+   $$031 = $$$0;
+  }
+ }
+ ___gcry_burn_stack($$0$lcssa);
+ return;
+}
+
+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 + 24 | 0;
+ $vararg_buffer4 = sp + 16 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $1 = sp + 40 | 0;
+ $2 = sp + 32 | 0;
+ __gcry_randomize($2, 8, 1);
+ $3 = SAFE_HEAP_LOAD(17673 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == (0 | 0);
+ if ($4) {
+  __gcry_assert_failed(51413, 51065, 912, 51767);
+ }
+ $5 = __gcry_xcalloc(1, 68) | 0;
+ SAFE_HEAP_STORE($5 >> 0 | 0, 17 | 0, 1);
+ $6 = $5 + 16 | 0;
+ SAFE_HEAP_STORE($6 >> 0 | 0, 42 | 0, 1);
+ $7 = $5 + 33 | 0;
+ SAFE_HEAP_STORE($7 >> 0 | 0, -119 | 0, 1);
+ $8 = $5 + 50 | 0;
+ SAFE_HEAP_STORE($8 >> 0 | 0, -4 | 0, 1);
+ $9 = _gpgrt_lock_lock(12644) | 0;
+ $10 = ($9 | 0) == 0;
+ if (!$10) {
+  $11 = _gpg_strerror($9) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $11 | 0, 4);
+  __gcry_log_fatal(51001, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17672 * 4 | 0, 1 | 0, 4);
+ $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 = 52137;
+   label = 18;
+   break;
+  }
+  $23 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $24 = 51780 + ($$04854$i * 96 | 0) | 0;
+  $25 = __gcry_cipher_setkey($23, $24, 16) | 0;
+  $26 = ($25 | 0) == 0;
+  if (!$26) {
+   $$0$i = 52175;
+   label = 18;
+   break;
+  }
+  $27 = _getpid() | 0;
+  SAFE_HEAP_STORE($13 | 0, $27 | 0, 4);
+  $28 = (51780 + ($$04854$i * 96 | 0) | 0) + 32 | 0;
+  dest = $14;
+  src = $28;
+  stop = dest + 16 | 0;
+  do {
+   SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+   dest = dest + 1 | 0;
+   src = src + 1 | 0;
+  } while ((dest | 0) < (stop | 0));
+  $29 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+  $30 = $29 | 1;
+  SAFE_HEAP_STORE($15 >> 0 | 0, $30 | 0, 1);
+  $31 = _getpid() | 0;
+  SAFE_HEAP_STORE($16 | 0, $31 | 0, 4);
+  $32 = (51780 + ($$04854$i * 96 | 0) | 0) + 16 | 0;
+  SAFE_HEAP_STORE($17 | 0, $32 | 0, 4);
+  $33 = (51780 + ($$04854$i * 96 | 0) | 0) + 28 | 0;
+  $34 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+  $35 = $34 & 255;
+  $36 = $35 << 24;
+  $37 = (51780 + ($$04854$i * 96 | 0) | 0) + 29 | 0;
+  $38 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+  $39 = $38 & 255;
+  $40 = $39 << 16;
+  $41 = $40 | $36;
+  $42 = (51780 + ($$04854$i * 96 | 0) | 0) + 30 | 0;
+  $43 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+  $44 = $43 & 255;
+  $45 = $44 << 8;
+  $46 = $41 | $45;
+  $47 = (51780 + ($$04854$i * 96 | 0) | 0) + 31 | 0;
+  $48 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+  $49 = $48 & 255;
+  $50 = $46 | $49;
+  SAFE_HEAP_STORE($18 | 0, $50 | 0, 4);
+  $51 = _x931_aes_driver($1, 16, $5) | 0;
+  $52 = ($51 | 0) == 0;
+  if (!$52) {
+   $$0$i = 52068;
+   label = 18;
+   break;
+  }
+  $55 = (51780 + ($$04854$i * 96 | 0) | 0) + 48 | 0;
+  $56 = _memcmp($1, $55, 16) | 0;
+  $57 = ($56 | 0) == 0;
+  if (!$57) {
+   $$0$i = 52099;
+   label = 18;
+   break;
+  }
+  $53 = _x931_aes_driver($1, 16, $5) | 0;
+  $54 = ($53 | 0) == 0;
+  if (!$54) {
+   $$0$i = 52068;
+   label = 18;
+   break;
+  }
+  $86 = (51780 + ($$04854$i * 96 | 0) | 0) + 64 | 0;
+  $87 = _memcmp($1, $86, 16) | 0;
+  $88 = ($87 | 0) == 0;
+  if (!$88) {
+   $$0$i = 52099;
+   label = 18;
+   break;
+  }
+  $89 = _x931_aes_driver($1, 16, $5) | 0;
+  $90 = ($89 | 0) == 0;
+  if (!$90) {
+   $$0$i = 52068;
+   label = 18;
+   break;
+  }
+  $91 = (51780 + ($$04854$i * 96 | 0) | 0) + 80 | 0;
+  $92 = _memcmp($1, $91, 16) | 0;
+  $93 = ($92 | 0) == 0;
+  if (!$93) {
+   $$0$i = 52099;
+   label = 18;
+   break;
+  }
+  $94 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  $95 = _getpid() | 0;
+  $96 = ($94 | 0) == ($95 | 0);
+  if (!$96) {
+   $$0$i = 52201;
+   label = 18;
+   break;
+  }
+  $58 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+  $59 = _getpid() | 0;
+  $60 = ($58 | 0) == ($59 | 0);
+  if (!$60) {
+   $$0$i = 52201;
+   label = 18;
+   break;
+  }
+  $61 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  __gcry_cipher_close($61);
+  SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+  $62 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+  $63 = $62 & -2;
+  SAFE_HEAP_STORE($15 >> 0 | 0, $63 | 0, 1);
+  $64 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+  $65 = $64 << 24 >> 24 == 17;
+  if (!$65) {
+   label = 17;
+   break;
+  }
+  $66 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+  $67 = $66 << 24 >> 24 == 42;
+  if (!$67) {
+   label = 17;
+   break;
+  }
+  $68 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+  $69 = $68 << 24 >> 24 == -119;
+  if (!$69) {
+   label = 17;
+   break;
+  }
+  $70 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+  $71 = $70 << 24 >> 24 == -4;
+  $19 = $$04854$i + 1 | 0;
+  if (!$71) {
+   label = 17;
+   break;
+  }
+  $20 = $19 >>> 0 < 3;
+  if ($20) {
+   $$04854$i = $19;
+  } else {
+   $$0$i = 0;
+   label = 18;
+   break;
+  }
+ }
+ if ((label | 0) == 17) {
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $5 | 0, 4);
+  __gcry_log_fatal(51167, $vararg_buffer1);
+ } else if ((label | 0) == 18) {
+  SAFE_HEAP_STORE(17672 * 4 | 0, 0 | 0, 4);
+  $72 = _gpgrt_lock_unlock(12644) | 0;
+  $73 = ($72 | 0) == 0;
+  if (!$73) {
+   $74 = _gpg_strerror($72) | 0;
+   SAFE_HEAP_STORE($vararg_buffer4 | 0, $74 | 0, 4);
+   __gcry_log_fatal(51213, $vararg_buffer4);
+  }
+  $75 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  __gcry_cipher_close($75);
+  $76 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+  $77 = $76 << 24 >> 24 == 17;
+  if (!$77) {
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $5 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer7);
+  }
+  $78 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+  $79 = $78 << 24 >> 24 == 42;
+  if (!$79) {
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $5 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer7);
+  }
+  $80 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+  $81 = $80 << 24 >> 24 == -119;
+  if (!$81) {
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $5 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer7);
+  }
+  $82 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+  $83 = $82 << 24 >> 24 == -4;
+  if (!$83) {
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $5 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer7);
+  }
+  __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[(SAFE_FT_MASK($0 | 0, 63 | 0) | 0) & 63](52223, 0, 
52230, $$0$i);
+  $97 = $85 ? 16777266 : 0;
+  STACKTOP = sp;
+  return $97 | 0;
+ }
+ 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, 36895, 4) | 0;
+ $3 = ($2 | 0) == 0;
+ if ($3) {
+  label = 4;
+ } else {
+  $4 = _strncmp($0, 36900, 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 = SAFE_HEAP_LOAD(7640 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ L9 : do {
+  if ($8) {
+   label = 9;
+  } else {
+   $9 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $10 = ($9 | 0) == (0 | 0);
+   if ($10) {
+    label = 9;
+   } 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 = 7620;
+      $73 = $9;
+      $76 = $7;
+      label = 29;
+      break L9;
+     }
+     $11 = $7 + ($12 << 2) | 0;
+     $13 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+     $14 = ($13 | 0) == (0 | 0);
+     if ($14) {
+      label = 9;
+      break;
+     } else {
+      $$023$i$i = $12;
+      $15 = $13;
+     }
+    }
+   }
+  }
+ } while (0);
+ L14 : do {
+  if ((label | 0) == 9) {
+   $18 = SAFE_HEAP_LOAD(7776 | 0, 4, 0) | 0 | 0;
+   $19 = ($18 | 0) == (0 | 0);
+   if (!$19) {
+    $20 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 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 = 7756;
+       $73 = $20;
+       $76 = $18;
+       label = 29;
+       break L14;
+      }
+      $26 = $18 + ($25 << 2) | 0;
+      $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+      $28 = ($27 | 0) == (0 | 0);
+      if ($28) {
+       break;
+      } else {
+       $$023$1$i$i = $25;
+       $22 = $27;
+      }
+     }
+    }
+   }
+   $29 = SAFE_HEAP_LOAD(7716 | 0, 4, 0) | 0 | 0;
+   $30 = ($29 | 0) == (0 | 0);
+   if (!$30) {
+    $31 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 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 = 7696;
+       $73 = $31;
+       $76 = $29;
+       label = 29;
+       break L14;
+      }
+      $37 = $29 + ($36 << 2) | 0;
+      $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+      $39 = ($38 | 0) == (0 | 0);
+      if ($39) {
+       break;
+      } else {
+       $$023$2$i$i = $36;
+       $33 = $38;
+      }
+     }
+    }
+   }
+   $40 = SAFE_HEAP_LOAD(7840 | 0, 4, 0) | 0 | 0;
+   $41 = ($40 | 0) == (0 | 0);
+   if (!$41) {
+    $42 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 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 = 7820;
+       $73 = $42;
+       $76 = $40;
+       label = 29;
+       break L14;
+      }
+      $48 = $40 + ($47 << 2) | 0;
+      $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+      $50 = ($49 | 0) == (0 | 0);
+      if ($50) {
+       break;
+      } else {
+       $$023$3$i$i = $47;
+       $44 = $49;
+      }
+     }
+    }
+   }
+   $51 = SAFE_HEAP_LOAD(7904 | 0, 4, 0) | 0 | 0;
+   $52 = ($51 | 0) == (0 | 0);
+   if (!$52) {
+    $53 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 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 = 7884;
+       $73 = $53;
+       $76 = $51;
+       label = 29;
+       break L14;
+      }
+      $59 = $51 + ($58 << 2) | 0;
+      $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+      $61 = ($60 | 0) == (0 | 0);
+      if ($61) {
+       break;
+      } else {
+       $$023$4$i$i = $58;
+       $55 = $60;
+      }
+     }
+    }
+   }
+   $62 = SAFE_HEAP_LOAD(7476 | 0, 4, 0) | 0 | 0;
+   $63 = ($62 | 0) == (0 | 0);
+   if (!$63) {
+    $64 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 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 = 7456;
+       $73 = $64;
+       $76 = $62;
+       label = 29;
+       break L14;
+      }
+      $70 = $62 + ($69 << 2) | 0;
+      $71 = SAFE_HEAP_LOAD($70 | 0, 4, 0) | 0 | 0;
+      $72 = ($71 | 0) == (0 | 0);
+      if ($72) {
+       break;
+      } else {
+       $$023$5$i$i = $69;
+       $66 = $71;
+      }
+     }
+    }
+   }
+  }
+ } while (0);
+ L44 : do {
+  if ((label | 0) == 29) {
+   $74 = ($73 | 0) == (0 | 0);
+   if (!$74) {
+    $$08$i = 0;
+    $80 = $73;
+    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 = SAFE_HEAP_LOAD($75 | 0, 4, 0) | 0 | 0;
+     $79 = ($78 | 0) == (0 | 0);
+     if ($79) {
+      break L44;
+     } else {
+      $$08$i = $77;
+      $80 = $78;
+     }
+    }
+    $83 = SAFE_HEAP_LOAD($$019$i$ph$i | 0, 4, 0) | 0 | 0;
+    $$0 = $83;
+    return $$0 | 0;
+   }
+  }
+ } while (0);
+ $84 = SAFE_HEAP_LOAD(7628 | 0, 4, 0) | 0 | 0;
+ $85 = _strcasecmp($0, $84) | 0;
+ $86 = ($85 | 0) == 0;
+ if ($86) {
+  $$ph = 7620;
+ } else {
+  $87 = SAFE_HEAP_LOAD(7764 | 0, 4, 0) | 0 | 0;
+  $88 = _strcasecmp($0, $87) | 0;
+  $89 = ($88 | 0) == 0;
+  if ($89) {
+   $$ph = 7756;
+  } else {
+   $90 = SAFE_HEAP_LOAD(7704 | 0, 4, 0) | 0 | 0;
+   $91 = _strcasecmp($0, $90) | 0;
+   $92 = ($91 | 0) == 0;
+   if ($92) {
+    $$ph = 7696;
+   } else {
+    $93 = SAFE_HEAP_LOAD(7828 | 0, 4, 0) | 0 | 0;
+    $94 = _strcasecmp($0, $93) | 0;
+    $95 = ($94 | 0) == 0;
+    if ($95) {
+     $$ph = 7820;
+    } else {
+     $96 = SAFE_HEAP_LOAD(7892 | 0, 4, 0) | 0 | 0;
+     $97 = _strcasecmp($0, $96) | 0;
+     $98 = ($97 | 0) == 0;
+     if ($98) {
+      $$ph = 7884;
+     } else {
+      $99 = SAFE_HEAP_LOAD(7464 | 0, 4, 0) | 0 | 0;
+      $100 = _strcasecmp($0, $99) | 0;
+      $101 = ($100 | 0) == 0;
+      if ($101) {
+       $$ph = 7456;
+      } else {
+       $$0 = 0;
+       return $$0 | 0;
+      }
+     }
+    }
+   }
+  }
+ }
+ $102 = SAFE_HEAP_LOAD($$ph | 0, 4, 0) | 0 | 0;
+ $$0 = $102;
+ return $$0 | 0;
+}
+
+function _GNUNET_CRYPTO_rsa_unblind($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, $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, $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, $vararg_buffer = 0, $vararg_buffer10 = 0, 
$vararg_buffer14 = 0, $vararg_buffer17 = 0, $vararg_buffer2 = 0, 
$vararg_buffer6 = 0, $vararg_ptr1 = 0, $vararg_ptr13 = 0;
+ var $vararg_ptr20 = 0, $vararg_ptr5 = 0, $vararg_ptr9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 112 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(112 | 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;
+ $8 = sp + 88 | 0;
+ $9 = sp + 84 | 0;
+ $4 = $0;
+ $5 = $1;
+ $6 = $2;
+ $19 = $6;
+ $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+ $21 = _key_from_sexp_107($8, $20, 37679, 39075) | 0;
+ $12 = $21;
+ $22 = $12;
+ $23 = 0 != ($22 | 0);
+ if ($23) {
+  $24 = $6;
+  $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+  $26 = _key_from_sexp_107($8, $25, 40693, 39075) | 0;
+  $12 = $26;
+ }
+ $27 = $12;
+ $28 = 0 != ($27 | 0);
+ if ($28) {
+  $14 = 1066;
+  $29 = SAFE_HEAP_LOAD(267 * 4 | 0, 4, 0) | 0 | 0;
+  $30 = ($29 | 0) == -1;
+  if ($30) {
+   $31 = $14;
+   $32 = _GNUNET_get_log_call_status(2, 0, 20893, 21513, $31) | 0;
+   SAFE_HEAP_STORE(267 * 4 | 0, $32 | 0, 4);
+  }
+  $33 = _GNUNET_get_log_skip() | 0;
+  $34 = ($33 | 0) > 0;
+  if ($34) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $35 = SAFE_HEAP_LOAD(267 * 4 | 0, 4, 0) | 0 | 0;
+   $36 = ($35 | 0) != 0;
+   if ($36) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, 1066 | 0, 4);
+    _GNUNET_log_nocheck(66, 21097, $vararg_buffer);
+   }
+  }
+  $3 = 0;
+  $114 = $3;
+  STACKTOP = sp;
+  return $114 | 0;
+ }
+ $37 = $4;
+ $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+ $39 = _key_from_sexp_107($9, $38, 37529, 39073) | 0;
+ $12 = $39;
+ $40 = $12;
+ $41 = 0 != ($40 | 0);
+ if ($41) {
+  $42 = $4;
+  $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+  $44 = _key_from_sexp_107($9, $43, 40693, 39073) | 0;
+  $12 = $44;
+ }
+ $45 = $12;
+ $46 = 0 != ($45 | 0);
+ if ($46) {
+  $47 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($47);
+  $15 = 1075;
+  $48 = SAFE_HEAP_LOAD(268 * 4 | 0, 4, 0) | 0 | 0;
+  $49 = ($48 | 0) == -1;
+  if ($49) {
+   $50 = $15;
+   $51 = _GNUNET_get_log_call_status(2, 0, 20893, 21513, $50) | 0;
+   SAFE_HEAP_STORE(268 * 4 | 0, $51 | 0, 4);
+  }
+  $52 = _GNUNET_get_log_skip() | 0;
+  $53 = ($52 | 0) > 0;
+  if ($53) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $54 = SAFE_HEAP_LOAD(268 * 4 | 0, 4, 0) | 0 | 0;
+   $55 = ($54 | 0) != 0;
+   if ($55) {
+    SAFE_HEAP_STORE($vararg_buffer2 | 0, 20893 | 0, 4);
+    $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr5 | 0, 1075 | 0, 4);
+    _GNUNET_log_nocheck(66, 21097, $vararg_buffer2);
+   }
+  }
+  $3 = 0;
+  $114 = $3;
+  STACKTOP = sp;
+  return $114 | 0;
+ }
+ $56 = $6;
+ $57 = $5;
+ $58 = _rsa_blinding_key_derive($56, $57) | 0;
+ $7 = $58;
+ $59 = $7;
+ $60 = (0 | 0) == ($59 | 0);
+ if ($60) {
+  $16 = 1086;
+  $61 = SAFE_HEAP_LOAD(269 * 4 | 0, 4, 0) | 0 | 0;
+  $62 = ($61 | 0) == -1;
+  if ($62) {
+   $63 = $16;
+   $64 = _GNUNET_get_log_call_status(2, 0, 20893, 21513, $63) | 0;
+   SAFE_HEAP_STORE(269 * 4 | 0, $64 | 0, 4);
+  }
+  $65 = _GNUNET_get_log_skip() | 0;
+  $66 = ($65 | 0) > 0;
+  if ($66) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $67 = SAFE_HEAP_LOAD(269 * 4 | 0, 4, 0) | 0 | 0;
+   $68 = ($67 | 0) != 0;
+   if ($68) {
+    SAFE_HEAP_STORE($vararg_buffer6 | 0, 20893 | 0, 4);
+    $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr9 | 0, 1086 | 0, 4);
+    _GNUNET_log_nocheck(66, 21097, $vararg_buffer6);
+   }
+  }
+  $69 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($69);
+  $70 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($70);
+  $3 = 0;
+  $114 = $3;
+  STACKTOP = sp;
+  return $114 | 0;
+ }
+ $71 = _gcry_mpi_new(0) | 0;
+ $10 = $71;
+ $72 = $10;
+ $73 = $7;
+ $74 = SAFE_HEAP_LOAD($73 | 0, 4, 0) | 0 | 0;
+ $75 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $76 = _gcry_mpi_invm($72, $74, $75) | 0;
+ $77 = 1 != ($76 | 0);
+ if ($77) {
+  $17 = 1100;
+  $78 = SAFE_HEAP_LOAD(270 * 4 | 0, 4, 0) | 0 | 0;
+  $79 = ($78 | 0) == -1;
+  if ($79) {
+   $80 = $17;
+   $81 = _GNUNET_get_log_call_status(2, 0, 20893, 21513, $80) | 0;
+   SAFE_HEAP_STORE(270 * 4 | 0, $81 | 0, 4);
+  }
+  $82 = _GNUNET_get_log_skip() | 0;
+  $83 = ($82 | 0) > 0;
+  if ($83) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $84 = SAFE_HEAP_LOAD(270 * 4 | 0, 4, 0) | 0 | 0;
+   $85 = ($84 | 0) != 0;
+   if ($85) {
+    SAFE_HEAP_STORE($vararg_buffer10 | 0, 20893 | 0, 4);
+    $vararg_ptr13 = $vararg_buffer10 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr13 | 0, 1100 | 0, 4);
+    _GNUNET_log_nocheck(66, 21097, $vararg_buffer10);
+   }
+  }
+  $86 = $10;
+  _gcry_mpi_release($86);
+  $87 = $7;
+  _rsa_blinding_key_free($87);
+  $88 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($88);
+  $89 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($89);
+  $3 = 0;
+  $114 = $3;
+  STACKTOP = sp;
+  return $114 | 0;
+ }
+ $90 = _gcry_mpi_new(0) | 0;
+ $11 = $90;
+ $91 = $11;
+ $92 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $93 = $10;
+ $94 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ _gcry_mpi_mulm($91, $92, $93, $94);
+ $95 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ _gcry_mpi_release($95);
+ $96 = $10;
+ _gcry_mpi_release($96);
+ $97 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ _gcry_mpi_release($97);
+ $98 = $7;
+ _rsa_blinding_key_free($98);
+ $99 = _GNUNET_xmalloc_(4, 20893, 1115) | 0;
+ $13 = $99;
+ $100 = $13;
+ $101 = $11;
+ SAFE_HEAP_STORE($vararg_buffer14 | 0, $101 | 0, 4);
+ $102 = _gcry_sexp_build($100, 0, 21539, $vararg_buffer14) | 0;
+ $103 = 0 == ($102 | 0);
+ if ($103) {
+  $112 = $11;
+  _gcry_mpi_release($112);
+  $113 = $13;
+  $3 = $113;
+  $114 = $3;
+  STACKTOP = sp;
+  return $114 | 0;
+ }
+ $18 = 1120;
+ $104 = SAFE_HEAP_LOAD(271 * 4 | 0, 4, 0) | 0 | 0;
+ $105 = ($104 | 0) == -1;
+ if ($105) {
+  $106 = $18;
+  $107 = _GNUNET_get_log_call_status(1, 0, 20893, 21513, $106) | 0;
+  SAFE_HEAP_STORE(271 * 4 | 0, $107 | 0, 4);
+ }
+ $108 = _GNUNET_get_log_skip() | 0;
+ $109 = ($108 | 0) > 0;
+ if ($109) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $110 = SAFE_HEAP_LOAD(271 * 4 | 0, 4, 0) | 0 | 0;
+ $111 = ($110 | 0) != 0;
+ if (!$111) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer17 | 0, 20893 | 0, 4);
+ $vararg_ptr20 = $vararg_buffer17 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr20 | 0, 1120 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer17);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+function __gcry_md_algo_info($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $$0$i27 = 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;
+ 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, $9 = 0, $or$cond = 0, $phitmp19$i = 0, $phitmp20$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;
+ 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 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+   $7 = ($6 | 0) == ($0 | 0);
+   if ($7) {
+    $$ph$i = 7620;
+    label = 9;
+   } else {
+    $8 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+    $9 = ($8 | 0) == ($0 | 0);
+    if ($9) {
+     $$ph$i = 7756;
+     label = 9;
+    } else {
+     $10 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+     $11 = ($10 | 0) == ($0 | 0);
+     if ($11) {
+      $$ph$i = 7696;
+      label = 9;
+     } else {
+      $12 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+      $13 = ($12 | 0) == ($0 | 0);
+      if ($13) {
+       $$ph$i = 7820;
+       label = 9;
+      } else {
+       $14 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+       $15 = ($14 | 0) == ($0 | 0);
+       if ($15) {
+        $$ph$i = 7884;
+        label = 9;
+       } else {
+        $16 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+        $17 = ($16 | 0) == ($0 | 0);
+        if ($17) {
+         $$ph$i = 7456;
+         label = 9;
+        }
+       }
+      }
+     }
+    }
+   }
+   if ((label | 0) == 9) {
+    $18 = $$ph$i + 4 | 0;
+    $19 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+   $23 = ($22 | 0) == ($0 | 0);
+   if ($23) {
+    $$ph$i28 = 7620;
+   } else {
+    $24 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+    $25 = ($24 | 0) == ($0 | 0);
+    if ($25) {
+     $$ph$i28 = 7756;
+    } else {
+     $26 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+     $27 = ($26 | 0) == ($0 | 0);
+     if ($27) {
+      $$ph$i28 = 7696;
+     } else {
+      $28 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+      $29 = ($28 | 0) == ($0 | 0);
+      if ($29) {
+       $$ph$i28 = 7820;
+      } else {
+       $30 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+       $31 = ($30 | 0) == ($0 | 0);
+       if ($31) {
+        $$ph$i28 = 7884;
+       } else {
+        $32 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+        $33 = ($32 | 0) == ($0 | 0);
+        if ($33) {
+         $$ph$i28 = 7456;
+        } else {
+         $$1 = 5;
+         STACKTOP = sp;
+         return $$1 | 0;
+        }
+       }
+      }
+     }
+    }
+   }
+   $34 = $$ph$i28 + 4 | 0;
+   $35 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+   $36 = $35 & 1;
+   $37 = $36 << 24 >> 24 == 0;
+   if (!$37) {
+    $$1 = 5;
+    STACKTOP = sp;
+    return $$1 | 0;
+   }
+   if ($23) {
+    $$ph$i33 = 7620;
+   } else {
+    $38 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+    $39 = ($38 | 0) == ($0 | 0);
+    if ($39) {
+     $$ph$i33 = 7756;
+    } else {
+     $40 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+     $41 = ($40 | 0) == ($0 | 0);
+     if ($41) {
+      $$ph$i33 = 7696;
+     } else {
+      $42 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+      $43 = ($42 | 0) == ($0 | 0);
+      if ($43) {
+       $$ph$i33 = 7820;
+      } else {
+       $44 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+       $45 = ($44 | 0) == ($0 | 0);
+       if ($45) {
+        $$ph$i33 = 7884;
+       } else {
+        $46 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+        $47 = ($46 | 0) == ($0 | 0);
+        if ($47) {
+         $$ph$i33 = 7456;
+        } else {
+         SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+         __gcry_log_bug(37183, $vararg_buffer);
+        }
+       }
+      }
+     }
+    }
+   }
+   $48 = $$ph$i33 + 16 | 0;
+   $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+   $50 = $$ph$i33 + 12 | 0;
+   $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+   $52 = ($2 | 0) != (0 | 0);
+   if ($52) {
+    $53 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    $54 = $53 >>> 0 < $49 >>> 0;
+    if (!$54) {
+     _memcpy($2 | 0, $51 | 0, $49 | 0) | 0;
+     SAFE_HEAP_STORE($3 | 0, $49 | 0, 4);
+     $$1 = 0;
+     STACKTOP = sp;
+     return $$1 | 0;
+    }
+   } else {
+    $55 = ($3 | 0) == (0 | 0);
+    if (!$55) {
+     SAFE_HEAP_STORE($3 | 0, $49 | 0, 4);
+     $$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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    $77 = $57;
+   }
+   $58 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+   $59 = ($58 | 0) == ($0 | 0);
+   if ($59) {
+    $$ph$i25 = 7620;
+    label = 39;
+   } else {
+    $60 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+    $61 = ($60 | 0) == ($0 | 0);
+    if ($61) {
+     $$ph$i25 = 7756;
+     label = 39;
+    } else {
+     $62 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+     $63 = ($62 | 0) == ($0 | 0);
+     if ($63) {
+      $$ph$i25 = 7696;
+      label = 39;
+     } else {
+      $64 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+      $65 = ($64 | 0) == ($0 | 0);
+      if ($65) {
+       $$ph$i25 = 7820;
+       label = 39;
+      } else {
+       $66 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+       $67 = ($66 | 0) == ($0 | 0);
+       if ($67) {
+        $$ph$i25 = 7884;
+        label = 39;
+       } else {
+        $68 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+        $69 = ($68 | 0) == ($0 | 0);
+        if ($69) {
+         $$ph$i25 = 7456;
+         label = 39;
+        } else {
+         $$0$i27 = 69;
+        }
+       }
+      }
+     }
+    }
+   }
+   do {
+    if ((label | 0) == 39) {
+     $70 = $$ph$i25 + 4 | 0;
+     $71 = SAFE_HEAP_LOAD($70 >> 0 | 0, 1, 0) | 0 | 0;
+     $72 = $71 & 1;
+     $73 = $72 << 24 >> 24 == 0;
+     $74 = $$ph$i25 + 48 | 0;
+     $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+     if (!$73) {
+      $phitmp19$i = ($75 | 0) != (0 | 0);
+      $phitmp20$i = $phitmp19$i ? 5 : 69;
+      $$0$i27 = $phitmp20$i;
+      break;
+     }
+     $76 = ($75 | 0) == (0 | 0);
+     if ($76) {
+      $$0$i27 = 69;
+     } else {
+      $78 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($75 | 0, 127 | 0) | 0) & 
127]($0, $77, 0) | 0;
+      $$0$i27 = $78;
+     }
+    }
+   } while (0);
+   $79 = $$0$i27 & 65535;
+   $$1 = $79;
+   STACKTOP = sp;
+   return $$1 | 0;
+   break;
+  }
+ default:
+  {
+   $$1 = 61;
+   STACKTOP = sp;
+   return $$1 | 0;
+  }
+ }
+ 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_idx81 = 0, 
$$sroa$7$0$copyload = 0, $$sroa$7$1 = 0, $$sroa$7$2 = 0, $$sroa$797$0 = 0, 
$$sroa$797$0$$sroa_idx98 = 0, $$sroa$797$0$copyload = 0, $$sroa$797$1 = 0, 
$$sroa$797$2 = 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, $8 = 0, $9 = 0, $not$ = 0, $not$112 = 0, $not$113 = 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 + 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 = SAFE_HEAP_LOAD($$idx4$i >> 0 | 0, 1, 0) | 0 | 0;
+ $2 = $$idx4$val$i << 24 >> 24 == 0;
+ if (!$2) {
+  $$idx$i = $1 + 12 | 0;
+  $$idx$val$i = SAFE_HEAP_LOAD($$idx$i >> 0 | 0, 1, 0) | 0 | 0;
+  $3 = $$idx$val$i << 24 >> 24 == 0;
+  if (!$3) {
+   $4 = _strcasecmp($$idx4$i, $$idx$i) | 0;
+   $5 = ($4 | 0) == 0;
+   if ($5) {
+    $12 = $0;
+    $13 = $12;
+    $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    $15 = $12 + 4 | 0;
+    $16 = $15;
+    $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+    $$sroa$797$0$$sroa_idx98 = $0 + 8 | 0;
+    $$sroa$797$0$copyload = SAFE_HEAP_LOAD($$sroa$797$0$$sroa_idx98 | 0, 4, 0) 
| 0 | 0;
+    $18 = $1;
+    $19 = $18;
+    $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+    $21 = $18 + 4 | 0;
+    $22 = $21;
+    $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+    $$sroa$7$0$$sroa_idx81 = $1 + 8 | 0;
+    $$sroa$7$0$copyload = SAFE_HEAP_LOAD($$sroa$7$0$$sroa_idx81 | 0, 4, 0) | 0 
| 0;
+    $24 = ($14 | 0) == -1;
+    $25 = ($17 | 0) == -1;
+    $26 = $24 & $25;
+    L5 : do {
+     if ($26) {
+      $$sroa$797$1 = $$sroa$797$0$copyload;
+      label = 14;
+     } else {
+      $$sroa$797$0 = $$sroa$797$0$copyload;
+      $29 = $14;
+      $30 = $17;
+      while (1) {
+       $27 = $$sroa$797$0 >>> 0 > 99999999;
+       if (!$27) {
+        $$sroa$797$2 = $$sroa$797$0;
+        $62 = $29;
+        $65 = $30;
+        break L5;
+       }
+       $28 = $$sroa$797$0 + -1e8 | 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) {
+        $$sroa$797$1 = $28;
+        label = 14;
+        break;
+       } else {
+        $$sroa$797$0 = $28;
+        $29 = $31;
+        $30 = $32;
+       }
+      }
+     }
+    } while (0);
+    if ((label | 0) == 14) {
+     $36 = $$sroa$797$1 >>> 0 > 99999999;
+     if ($36) {
+      $37 = SAFE_HEAP_LOAD(3836 * 4 | 0, 4, 0) | 0 | 0;
+      $38 = ($37 | 0) == -1;
+      if ($38) {
+       $39 = _GNUNET_get_log_call_status(1, 0, 61157, 61166, 353) | 0;
+       SAFE_HEAP_STORE(3836 * 4 | 0, $39 | 0, 4);
+      }
+      $40 = _GNUNET_get_log_skip() | 0;
+      $41 = ($40 | 0) > 0;
+      if ($41) {
+       _GNUNET_log_skip(-1, 0);
+       _GNUNET_abort_();
+      }
+      $42 = SAFE_HEAP_LOAD(3836 * 4 | 0, 4, 0) | 0 | 0;
+      $not$113 = ($42 | 0) == 0;
+      if ($not$113) {
+       _GNUNET_abort_();
+      }
+      SAFE_HEAP_STORE($vararg_buffer2 | 0, 61157 | 0, 4);
+      $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+      SAFE_HEAP_STORE($vararg_ptr5 | 0, 353 | 0, 4);
+      _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+      _GNUNET_abort_();
+     } else {
+      $$sroa$797$2 = $$sroa$797$1;
+      $62 = -1;
+      $65 = -1;
+     }
+    }
+    $43 = ($20 | 0) == -1;
+    $44 = ($23 | 0) == -1;
+    $45 = $43 & $44;
+    L24 : do {
+     if ($45) {
+      $$sroa$7$1 = $$sroa$7$0$copyload;
+      label = 25;
+     } else {
+      $$sroa$7$0 = $$sroa$7$0$copyload;
+      $48 = $20;
+      $49 = $23;
+      while (1) {
+       $46 = $$sroa$7$0 >>> 0 > 99999999;
+       if (!$46) {
+        $$sroa$7$2 = $$sroa$7$0;
+        $64 = $48;
+        $67 = $49;
+        break L24;
+       }
+       $47 = $$sroa$7$0 + -1e8 | 0;
+       $50 = _i64Add($48 | 0, $49 | 0, 1, 0) | 0;
+       $51 = tempRet0;
+       $52 = ($50 | 0) == -1;
+       $53 = ($51 | 0) == -1;
+       $54 = $52 & $53;
+       if ($54) {
+        $$sroa$7$1 = $47;
+        label = 25;
+        break;
+       } else {
+        $$sroa$7$0 = $47;
+        $48 = $50;
+        $49 = $51;
+       }
+      }
+     }
+    } while (0);
+    if ((label | 0) == 25) {
+     $55 = $$sroa$7$1 >>> 0 > 99999999;
+     if ($55) {
+      $56 = SAFE_HEAP_LOAD(3837 * 4 | 0, 4, 0) | 0 | 0;
+      $57 = ($56 | 0) == -1;
+      if ($57) {
+       $58 = _GNUNET_get_log_call_status(1, 0, 61157, 61166, 355) | 0;
+       SAFE_HEAP_STORE(3837 * 4 | 0, $58 | 0, 4);
+      }
+      $59 = _GNUNET_get_log_skip() | 0;
+      $60 = ($59 | 0) > 0;
+      if ($60) {
+       _GNUNET_log_skip(-1, 0);
+       _GNUNET_abort_();
+      }
+      $61 = SAFE_HEAP_LOAD(3837 * 4 | 0, 4, 0) | 0 | 0;
+      $not$112 = ($61 | 0) == 0;
+      if ($not$112) {
+       _GNUNET_abort_();
+      }
+      SAFE_HEAP_STORE($vararg_buffer6 | 0, 61157 | 0, 4);
+      $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+      SAFE_HEAP_STORE($vararg_ptr9 | 0, 355 | 0, 4);
+      _GNUNET_log_nocheck(1, 61295, $vararg_buffer6);
+      _GNUNET_abort_();
+     } else {
+      $$sroa$7$2 = $$sroa$7$1;
+      $64 = -1;
+      $67 = -1;
+     }
+    }
+    $63 = ($62 | 0) == ($64 | 0);
+    $66 = ($65 | 0) == ($67 | 0);
+    $68 = $63 & $66;
+    if (!$68) {
+     $71 = $65 >>> 0 < $67 >>> 0;
+     $72 = $62 >>> 0 < $64 >>> 0;
+     $73 = ($65 | 0) == ($67 | 0);
+     $74 = $73 & $72;
+     $75 = $71 | $74;
+     $$66 = $75 ? -1 : 1;
+     $$0 = $$66;
+     STACKTOP = sp;
+     return $$0 | 0;
+    }
+    $69 = $$sroa$797$2 >>> 0 < $$sroa$7$2 >>> 0;
+    if ($69) {
+     $$0 = -1;
+     STACKTOP = sp;
+     return $$0 | 0;
+    }
+    $70 = $$sroa$797$2 >>> 0 > $$sroa$7$2 >>> 0;
+    $$65 = $70 & 1;
+    $$0 = $$65;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+  }
+ }
+ $6 = SAFE_HEAP_LOAD(3835 * 4 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) == -1;
+ if ($7) {
+  $8 = _GNUNET_get_log_call_status(1, 0, 61157, 61166, 349) | 0;
+  SAFE_HEAP_STORE(3835 * 4 | 0, $8 | 0, 4);
+ }
+ $9 = _GNUNET_get_log_skip() | 0;
+ $10 = ($9 | 0) > 0;
+ if ($10) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $11 = SAFE_HEAP_LOAD(3835 * 4 | 0, 4, 0) | 0 | 0;
+ $not$ = ($11 | 0) == 0;
+ if ($not$) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer | 0, 61157 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 349 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $4 = $3 & 255;
+ $5 = $4 << 24;
+ $6 = $1 + 2 | 0;
+ $7 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+ $8 = $7 & 255;
+ $9 = $8 << 16;
+ $10 = $1 + 1 | 0;
+ $11 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+ $12 = $11 & 255;
+ $13 = $12 << 8;
+ $14 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $15 = $14 & 255;
+ $$masked27 = $5 & 50331648;
+ $$masked26 = $9 | $$masked27;
+ $$masked = $$masked26 | $13;
+ $16 = $$masked | $15;
+ SAFE_HEAP_STORE($0 | 0, $16 | 0, 4);
+ $17 = $1 + 6 | 0;
+ $18 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+ $19 = $18 & 255;
+ $20 = $19 << 24;
+ $21 = $1 + 5 | 0;
+ $22 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+ $23 = $22 & 255;
+ $24 = $23 << 16;
+ $25 = $24 | $20;
+ $26 = $1 + 4 | 0;
+ $27 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+ $28 = $27 & 255;
+ $29 = $28 << 8;
+ $30 = $25 | $29;
+ $31 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $32 = $31 & 255;
+ $33 = $30 | $32;
+ $34 = $33 >>> 2;
+ $35 = $34 & 67108611;
+ $36 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($36 | 0, $35 | 0, 4);
+ $37 = $1 + 9 | 0;
+ $38 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+ $39 = $38 & 255;
+ $40 = $39 << 24;
+ $41 = $1 + 8 | 0;
+ $42 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+ $43 = $42 & 255;
+ $44 = $43 << 16;
+ $45 = $44 | $40;
+ $46 = $1 + 7 | 0;
+ $47 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+ $48 = $47 & 255;
+ $49 = $48 << 8;
+ $50 = $45 | $49;
+ $51 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+ $52 = $51 & 255;
+ $53 = $50 | $52;
+ $54 = $53 >>> 4;
+ $55 = $54 & 67092735;
+ $56 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($56 | 0, $55 | 0, 4);
+ $57 = $1 + 12 | 0;
+ $58 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+ $59 = $58 & 255;
+ $60 = $59 << 24;
+ $61 = $1 + 11 | 0;
+ $62 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+ $63 = $62 & 255;
+ $64 = $63 << 16;
+ $65 = $64 | $60;
+ $66 = $1 + 10 | 0;
+ $67 = SAFE_HEAP_LOAD($66 >> 0 | 0, 1, 0) | 0 | 0;
+ $68 = $67 & 255;
+ $69 = $68 << 8;
+ $70 = $65 | $69;
+ $71 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+ $72 = $71 & 255;
+ $73 = $70 | $72;
+ $74 = $73 >>> 6;
+ $75 = $74 & 66076671;
+ $76 = $0 + 12 | 0;
+ SAFE_HEAP_STORE($76 | 0, $75 | 0, 4);
+ $77 = $1 + 15 | 0;
+ $78 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+ $79 = $78 & 255;
+ $80 = $79 << 16;
+ $81 = $1 + 14 | 0;
+ $82 = SAFE_HEAP_LOAD($81 >> 0 | 0, 1, 0) | 0 | 0;
+ $83 = $82 & 255;
+ $84 = $83 << 8;
+ $85 = $1 + 13 | 0;
+ $86 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+ $87 = $86 & 255;
+ $$masked29 = $80 & 983040;
+ $$masked28 = $84 | $$masked29;
+ $88 = $$masked28 | $87;
+ $89 = $0 + 16 | 0;
+ SAFE_HEAP_STORE($89 | 0, $88 | 0, 4);
+ $90 = $0 + 20 | 0;
+ $91 = $1 + 16 | 0;
+ $92 = $1 + 19 | 0;
+ {}
+ SAFE_HEAP_STORE($90 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($90 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($90 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($90 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($90 + 16 | 0, 0 | 0 | 0, 4);
+ $93 = SAFE_HEAP_LOAD($92 >> 0 | 0, 1, 0) | 0 | 0;
+ $94 = $93 & 255;
+ $95 = $94 << 24;
+ $96 = $1 + 18 | 0;
+ $97 = SAFE_HEAP_LOAD($96 >> 0 | 0, 1, 0) | 0 | 0;
+ $98 = $97 & 255;
+ $99 = $98 << 16;
+ $100 = $99 | $95;
+ $101 = $1 + 17 | 0;
+ $102 = SAFE_HEAP_LOAD($101 >> 0 | 0, 1, 0) | 0 | 0;
+ $103 = $102 & 255;
+ $104 = $103 << 8;
+ $105 = $100 | $104;
+ $106 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+ $107 = $106 & 255;
+ $108 = $105 | $107;
+ $109 = $0 + 40 | 0;
+ SAFE_HEAP_STORE($109 | 0, $108 | 0, 4);
+ $110 = $1 + 20 | 0;
+ $111 = $1 + 23 | 0;
+ $112 = SAFE_HEAP_LOAD($111 >> 0 | 0, 1, 0) | 0 | 0;
+ $113 = $112 & 255;
+ $114 = $113 << 24;
+ $115 = $1 + 22 | 0;
+ $116 = SAFE_HEAP_LOAD($115 >> 0 | 0, 1, 0) | 0 | 0;
+ $117 = $116 & 255;
+ $118 = $117 << 16;
+ $119 = $118 | $114;
+ $120 = $1 + 21 | 0;
+ $121 = SAFE_HEAP_LOAD($120 >> 0 | 0, 1, 0) | 0 | 0;
+ $122 = $121 & 255;
+ $123 = $122 << 8;
+ $124 = $119 | $123;
+ $125 = SAFE_HEAP_LOAD($110 >> 0 | 0, 1, 0) | 0 | 0;
+ $126 = $125 & 255;
+ $127 = $124 | $126;
+ $128 = $0 + 44 | 0;
+ SAFE_HEAP_STORE($128 | 0, $127 | 0, 4);
+ $129 = $1 + 24 | 0;
+ $130 = $1 + 27 | 0;
+ $131 = SAFE_HEAP_LOAD($130 >> 0 | 0, 1, 0) | 0 | 0;
+ $132 = $131 & 255;
+ $133 = $132 << 24;
+ $134 = $1 + 26 | 0;
+ $135 = SAFE_HEAP_LOAD($134 >> 0 | 0, 1, 0) | 0 | 0;
+ $136 = $135 & 255;
+ $137 = $136 << 16;
+ $138 = $137 | $133;
+ $139 = $1 + 25 | 0;
+ $140 = SAFE_HEAP_LOAD($139 >> 0 | 0, 1, 0) | 0 | 0;
+ $141 = $140 & 255;
+ $142 = $141 << 8;
+ $143 = $138 | $142;
+ $144 = SAFE_HEAP_LOAD($129 >> 0 | 0, 1, 0) | 0 | 0;
+ $145 = $144 & 255;
+ $146 = $143 | $145;
+ $147 = $0 + 48 | 0;
+ SAFE_HEAP_STORE($147 | 0, $146 | 0, 4);
+ $148 = $1 + 28 | 0;
+ $149 = $1 + 31 | 0;
+ $150 = SAFE_HEAP_LOAD($149 >> 0 | 0, 1, 0) | 0 | 0;
+ $151 = $150 & 255;
+ $152 = $151 << 24;
+ $153 = $1 + 30 | 0;
+ $154 = SAFE_HEAP_LOAD($153 >> 0 | 0, 1, 0) | 0 | 0;
+ $155 = $154 & 255;
+ $156 = $155 << 16;
+ $157 = $156 | $152;
+ $158 = $1 + 29 | 0;
+ $159 = SAFE_HEAP_LOAD($158 >> 0 | 0, 1, 0) | 0 | 0;
+ $160 = $159 & 255;
+ $161 = $160 << 8;
+ $162 = $157 | $161;
+ $163 = SAFE_HEAP_LOAD($148 >> 0 | 0, 1, 0) | 0 | 0;
+ $164 = $163 & 255;
+ $165 = $162 | $164;
+ $166 = $0 + 52 | 0;
+ SAFE_HEAP_STORE($166 | 0, $165 | 0, 4);
+ $167 = $0 + 56 | 0;
+ SAFE_HEAP_STORE($167 >> 0 | 0, 0 | 0, 1);
+ return;
+}
+
+function _fcntl($0, $1, $varargs) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $varargs = $varargs | 0;
+ var $$ = 0, $$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;
+ 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, $5 = 0, 
$6 = 0, $7 = 0, $8 = 0;
+ var $9 = 0, $arglist_current = 0, $arglist_next = 0, $expanded = 0, 
$expanded2 = 0, $expanded4 = 0, $expanded5 = 0, $expanded6 = 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 + 152 | 0;
+ $vararg_buffer41 = sp + 136 | 0;
+ $vararg_buffer36 = sp + 120 | 0;
+ $vararg_buffer31 = sp + 104 | 0;
+ $vararg_buffer28 = sp + 96 | 0;
+ $vararg_buffer23 = sp + 80 | 0;
+ $vararg_buffer18 = sp + 64 | 0;
+ $vararg_buffer13 = sp + 48 | 0;
+ $vararg_buffer8 = sp + 32 | 0;
+ $vararg_buffer3 = sp + 16 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 176 | 0;
+ $3 = sp + 168 | 0;
+ SAFE_HEAP_STORE($2 | 0, $varargs | 0, 4);
+ $arglist_current = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $arglist_next = $9 + 4 | 0;
+ SAFE_HEAP_STORE($2 | 0, $arglist_next | 0, 4);
+ $11 = ($1 | 0) == 4;
+ $12 = $10 | 32768;
+ $$ = $11 ? $12 : $10;
+ L1 : do {
+  switch ($1 | 0) {
+  case 14:
+   {
+    SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, 14 | 0, 4);
+    $vararg_ptr2 = $vararg_buffer + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr2 | 0, $$ | 0, 4);
+    $13 = ___syscall221(221, $vararg_buffer | 0) | 0;
+    $14 = ___syscall_ret($13) | 0;
+    $$2 = $14;
+    break;
+   }
+  case 9:
+   {
+    $15 = $3;
+    SAFE_HEAP_STORE($vararg_buffer3 | 0, $0 | 0, 4);
+    $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr6 | 0, 16 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer3 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, $15 | 0, 4);
+    $16 = ___syscall221(221, $vararg_buffer3 | 0) | 0;
+    switch ($16 | 0) {
+    case -22:
+     {
+      SAFE_HEAP_STORE($vararg_buffer8 | 0, $0 | 0, 4);
+      $vararg_ptr11 = $vararg_buffer8 + 4 | 0;
+      SAFE_HEAP_STORE($vararg_ptr11 | 0, 9 | 0, 4);
+      $vararg_ptr12 = $vararg_buffer8 + 8 | 0;
+      SAFE_HEAP_STORE($vararg_ptr12 | 0, $$ | 0, 4);
+      $17 = ___syscall221(221, $vararg_buffer8 | 0) | 0;
+      $$0 = $17;
+      break;
+     }
+    case 0:
+     {
+      $19 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+      $20 = ($19 | 0) == 2;
+      $21 = $3 + 4 | 0;
+      $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 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:
+   {
+    SAFE_HEAP_STORE($vararg_buffer13 | 0, $0 | 0, 4);
+    $vararg_ptr16 = $vararg_buffer13 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr16 | 0, 1030 | 0, 4);
+    $vararg_ptr17 = $vararg_buffer13 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr17 | 0, $$ | 0, 4);
+    $25 = ___syscall221(221, $vararg_buffer13 | 0) | 0;
+    $26 = ($25 | 0) == -22;
+    if (!$26) {
+     $27 = ($25 | 0) > -1;
+     if ($27) {
+      SAFE_HEAP_STORE($vararg_buffer18 | 0, $25 | 0, 4);
+      $vararg_ptr21 = $vararg_buffer18 + 4 | 0;
+      SAFE_HEAP_STORE($vararg_ptr21 | 0, 2 | 0, 4);
+      $vararg_ptr22 = $vararg_buffer18 + 8 | 0;
+      SAFE_HEAP_STORE($vararg_ptr22 | 0, 1 | 0, 4);
+      ___syscall221(221, $vararg_buffer18 | 0) | 0;
+     }
+     $28 = ___syscall_ret($25) | 0;
+     $$2 = $28;
+     break L1;
+    }
+    SAFE_HEAP_STORE($vararg_buffer23 | 0, $0 | 0, 4);
+    $vararg_ptr26 = $vararg_buffer23 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr26 | 0, 1030 | 0, 4);
+    $vararg_ptr27 = $vararg_buffer23 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr27 | 0, 0 | 0, 4);
+    $29 = ___syscall221(221, $vararg_buffer23 | 0) | 0;
+    $30 = ($29 | 0) == -22;
+    if ($30) {
+     SAFE_HEAP_STORE($vararg_buffer31 | 0, $0 | 0, 4);
+     $vararg_ptr34 = $vararg_buffer31 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr34 | 0, 0 | 0, 4);
+     $vararg_ptr35 = $vararg_buffer31 + 8 | 0;
+     SAFE_HEAP_STORE($vararg_ptr35 | 0, $$ | 0, 4);
+     $33 = ___syscall221(221, $vararg_buffer31 | 0) | 0;
+     $34 = ($33 | 0) > -1;
+     if ($34) {
+      SAFE_HEAP_STORE($vararg_buffer36 | 0, $33 | 0, 4);
+      $vararg_ptr39 = $vararg_buffer36 + 4 | 0;
+      SAFE_HEAP_STORE($vararg_ptr39 | 0, 2 | 0, 4);
+      $vararg_ptr40 = $vararg_buffer36 + 8 | 0;
+      SAFE_HEAP_STORE($vararg_ptr40 | 0, 1 | 0, 4);
+      ___syscall221(221, $vararg_buffer36 | 0) | 0;
+     }
+     $35 = ___syscall_ret($33) | 0;
+     $$2 = $35;
+     break L1;
+    } else {
+     $31 = ($29 | 0) > -1;
+     if ($31) {
+      SAFE_HEAP_STORE($vararg_buffer28 | 0, $29 | 0, 4);
+      ___syscall6(6, $vararg_buffer28 | 0) | 0;
+     }
+     $32 = ___syscall_ret(-22) | 0;
+     $$2 = $32;
+     break L1;
+    }
+    break;
+   }
+  case 15:
+  case 16:
+  case 12:
+  case 13:
+   {
+    SAFE_HEAP_STORE($vararg_buffer41 | 0, $0 | 0, 4);
+    $vararg_ptr44 = $vararg_buffer41 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr44 | 0, $1 | 0, 4);
+    $vararg_ptr45 = $vararg_buffer41 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr45 | 0, $$ | 0, 4);
+    $36 = ___syscall221(221, $vararg_buffer41 | 0) | 0;
+    $37 = ___syscall_ret($36) | 0;
+    $$2 = $37;
+    break;
+   }
+  default:
+   {
+    SAFE_HEAP_STORE($vararg_buffer46 | 0, $0 | 0, 4);
+    $vararg_ptr49 = $vararg_buffer46 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr49 | 0, $1 | 0, 4);
+    $vararg_ptr50 = $vararg_buffer46 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr50 | 0, $$ | 0, 4);
+    $38 = ___syscall221(221, $vararg_buffer46 | 0) | 0;
+    $39 = ___syscall_ret($38) | 0;
+    $$2 = $39;
+   }
+  }
+ } while (0);
+ STACKTOP = sp;
+ return $$2 | 0;
+}
+
+function __gcry_rngcsprng_update_seed_file() {
+ var $$02328 = 0, $$02427 = 0, $$029 = 0, $$pre = 0, $$pre$phiZ2D = 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;
+ 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, $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;
+ var $vararg_buffer20 = 0, $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 = SAFE_HEAP_LOAD(17644 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 0;
+ if ($1) {
+  SAFE_HEAP_STORE(17644 * 4 | 0, 1 | 0, 4);
+ }
+ $2 = _gpgrt_lock_lock(12596) | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  $4 = _gpg_strerror($2) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $4 | 0, 4);
+  __gcry_log_fatal(50172, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17645 * 4 | 0, 1 | 0, 4);
+ $5 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) != (0 | 0);
+ $7 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) != (0 | 0);
+ $or$cond = $6 & $8;
+ $9 = SAFE_HEAP_LOAD(17650 * 4 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) != 0;
+ $or$cond3 = $or$cond & $10;
+ if (!$or$cond3) {
+  SAFE_HEAP_STORE(17645 * 4 | 0, 0 | 0, 4);
+  $11 = _gpgrt_lock_unlock(12596) | 0;
+  $12 = ($11 | 0) == 0;
+  if ($12) {
+   STACKTOP = sp;
+   return;
+  } else {
+   $13 = _gpg_strerror($11) | 0;
+   SAFE_HEAP_STORE($vararg_buffer1 | 0, $13 | 0, 4);
+   __gcry_log_fatal(50247, $vararg_buffer1);
+  }
+ }
+ $14 = SAFE_HEAP_LOAD(17666 * 4 | 0, 4, 0) | 0 | 0;
+ $15 = ($14 | 0) == 0;
+ if ($15) {
+  SAFE_HEAP_STORE(17645 * 4 | 0, 0 | 0, 4);
+  $16 = _gpgrt_lock_unlock(12596) | 0;
+  $17 = ($16 | 0) == 0;
+  if (!$17) {
+   $18 = _gpg_strerror($16) | 0;
+   SAFE_HEAP_STORE($vararg_buffer4 | 0, $18 | 0, 4);
+   __gcry_log_fatal(50247, $vararg_buffer4);
+  }
+  $19 = __gcry_gettext(50898) | 0;
+  __gcry_log_info($19, $vararg_buffer7);
+  STACKTOP = sp;
+  return;
+ }
+ $20 = SAFE_HEAP_LOAD(17648 * 4 | 0, 4, 0) | 0 | 0;
+ $$02328 = $7;
+ $$02427 = $20;
+ $$029 = 0;
+ while (1) {
+  $21 = SAFE_HEAP_LOAD($$02328 | 0, 4, 0) | 0 | 0;
+  $22 = $21 + -1515870811 | 0;
+  SAFE_HEAP_STORE($$02427 | 0, $22 | 0, 4);
+  $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 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+ $27 = $26 + 1 | 0;
+ SAFE_HEAP_STORE(17651 * 4 | 0, $27 | 0, 4);
+ $28 = SAFE_HEAP_LOAD(17648 * 4 | 0, 4, 0) | 0 | 0;
+ _mix_pool($28);
+ $29 = SAFE_HEAP_LOAD(17656 * 4 | 0, 4, 0) | 0 | 0;
+ $30 = $29 + 1 | 0;
+ SAFE_HEAP_STORE(17656 * 4 | 0, $30 | 0, 4);
+ $31 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($vararg_buffer9 | 0, 384 | 0, 4);
+ $32 = _open($31, 65, $vararg_buffer9) | 0;
+ $33 = ($32 | 0) == -1;
+ do {
+  if ($33) {
+   $34 = __gcry_gettext(50934) | 0;
+   $35 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+   $36 = ___errno_location() | 0;
+   $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $38 = _strerror($37) | 0;
+   SAFE_HEAP_STORE($vararg_buffer12 | 0, $35 | 0, 4);
+   $vararg_ptr15 = $vararg_buffer12 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr15 | 0, $38 | 0, 4);
+   __gcry_log_info($34, $vararg_buffer12);
+  } else {
+   $39 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 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(50957) | 0;
+    $45 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+    $46 = ___errno_location() | 0;
+    $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+    $48 = _strerror($47) | 0;
+    SAFE_HEAP_STORE($vararg_buffer16 | 0, $45 | 0, 4);
+    $vararg_ptr19 = $vararg_buffer16 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr19 | 0, $48 | 0, 4);
+    __gcry_log_info($44, $vararg_buffer16);
+    _close($32) | 0;
+    break;
+   }
+   L31 : while (1) {
+    $49 = SAFE_HEAP_LOAD(17648 * 4 | 0, 4, 0) | 0 | 0;
+    $50 = _write($32, $49, 600) | 0;
+    switch ($50 | 0) {
+    case 600:
+     {
+      break L31;
+      break;
+     }
+    case -1:
+     {
+      break;
+     }
+    default:
+     {
+      label = 21;
+      break L31;
+     }
+    }
+    $51 = ___errno_location() | 0;
+    $52 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+    $53 = ($52 | 0) == 4;
+    if (!$53) {
+     $$pre$phiZ2D = $51;
+     label = 23;
+     break;
+    }
+   }
+   if ((label | 0) == 21) {
+    $$pre = ___errno_location() | 0;
+    $$pre$phiZ2D = $$pre;
+    label = 23;
+   }
+   if ((label | 0) == 23) {
+    $54 = __gcry_gettext(50957) | 0;
+    $55 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+    $56 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+    $57 = _strerror($56) | 0;
+    SAFE_HEAP_STORE($vararg_buffer20 | 0, $55 | 0, 4);
+    $vararg_ptr23 = $vararg_buffer20 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr23 | 0, $57 | 0, 4);
+    __gcry_log_info($54, $vararg_buffer20);
+   }
+   $58 = _close($32) | 0;
+   $59 = ($58 | 0) == 0;
+   if (!$59) {
+    $60 = __gcry_gettext(50979) | 0;
+    $61 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+    $62 = ___errno_location() | 0;
+    $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+    $64 = _strerror($63) | 0;
+    SAFE_HEAP_STORE($vararg_buffer24 | 0, $61 | 0, 4);
+    $vararg_ptr27 = $vararg_buffer24 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr27 | 0, $64 | 0, 4);
+    __gcry_log_info($60, $vararg_buffer24);
+   }
+  }
+ } while (0);
+ SAFE_HEAP_STORE(17645 * 4 | 0, 0 | 0, 4);
+ $65 = _gpgrt_lock_unlock(12596) | 0;
+ $66 = ($65 | 0) == 0;
+ if ($66) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $67 = _gpg_strerror($65) | 0;
+  SAFE_HEAP_STORE($vararg_buffer28 | 0, $67 | 0, 4);
+  __gcry_log_fatal(50247, $vararg_buffer28);
+ }
+}
+
+function __gcry_ecc_eddsa_compute_h_d($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$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;
+ 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, 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;
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $5 = $2 + 12 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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;
+ }
+ {}
+ SAFE_HEAP_STORE($4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($4 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($4 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($4 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($4 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($4 + 20 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($4 + 24 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($4 + 28 | 0, 0 | 0 | 0, 4);
+ $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;
+ SAFE_HEAP_STORE($15 | 0, $9 | 0, 4);
+ $16 = $4 + 4 | 0;
+ SAFE_HEAP_STORE($16 | 0, 0 | 0, 4);
+ $17 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $18 = $17 >>> 0 < 32;
+ $19 = 32 - $17 | 0;
+ $$ = $18 ? $19 : 0;
+ $20 = $4 + 8 | 0;
+ SAFE_HEAP_STORE($20 | 0, $$ | 0, 4);
+ $21 = $4 + 28 | 0;
+ SAFE_HEAP_STORE($21 | 0, $12 | 0, 4);
+ $22 = $4 + 20 | 0;
+ SAFE_HEAP_STORE($22 | 0, 0 | 0, 4);
+ $23 = $4 + 24 | 0;
+ SAFE_HEAP_STORE($23 | 0, $17 | 0, 4);
+ $24 = __gcry_md_hash_buffers(10, 0, $9, $4, 2) | 0;
+ __gcry_free($12);
+ $25 = ($24 | 0) == 0;
+ if ($25) {
+  $26 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+  $27 = $9 + 31 | 0;
+  $28 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+  $29 = $9 + 1 | 0;
+  $30 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+  $31 = $9 + 30 | 0;
+  $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($29 >> 0 | 0, $32 | 0, 1);
+  SAFE_HEAP_STORE($31 >> 0 | 0, $30 | 0, 1);
+  $33 = $9 + 2 | 0;
+  $34 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+  $35 = $9 + 29 | 0;
+  $36 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($33 >> 0 | 0, $36 | 0, 1);
+  SAFE_HEAP_STORE($35 >> 0 | 0, $34 | 0, 1);
+  $37 = $9 + 3 | 0;
+  $38 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+  $39 = $9 + 28 | 0;
+  $40 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($37 >> 0 | 0, $40 | 0, 1);
+  SAFE_HEAP_STORE($39 >> 0 | 0, $38 | 0, 1);
+  $41 = $9 + 4 | 0;
+  $42 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+  $43 = $9 + 27 | 0;
+  $44 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($41 >> 0 | 0, $44 | 0, 1);
+  SAFE_HEAP_STORE($43 >> 0 | 0, $42 | 0, 1);
+  $45 = $9 + 5 | 0;
+  $46 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+  $47 = $9 + 26 | 0;
+  $48 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($45 >> 0 | 0, $48 | 0, 1);
+  SAFE_HEAP_STORE($47 >> 0 | 0, $46 | 0, 1);
+  $49 = $9 + 6 | 0;
+  $50 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+  $51 = $9 + 25 | 0;
+  $52 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($49 >> 0 | 0, $52 | 0, 1);
+  SAFE_HEAP_STORE($51 >> 0 | 0, $50 | 0, 1);
+  $53 = $9 + 7 | 0;
+  $54 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+  $55 = $9 + 24 | 0;
+  $56 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($53 >> 0 | 0, $56 | 0, 1);
+  SAFE_HEAP_STORE($55 >> 0 | 0, $54 | 0, 1);
+  $57 = $9 + 8 | 0;
+  $58 = SAFE_HEAP_LOAD($57 >> 0 | 0, 1, 0) | 0 | 0;
+  $59 = $9 + 23 | 0;
+  $60 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($57 >> 0 | 0, $60 | 0, 1);
+  SAFE_HEAP_STORE($59 >> 0 | 0, $58 | 0, 1);
+  $61 = $9 + 9 | 0;
+  $62 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+  $63 = $9 + 22 | 0;
+  $64 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($61 >> 0 | 0, $64 | 0, 1);
+  SAFE_HEAP_STORE($63 >> 0 | 0, $62 | 0, 1);
+  $65 = $9 + 10 | 0;
+  $66 = SAFE_HEAP_LOAD($65 >> 0 | 0, 1, 0) | 0 | 0;
+  $67 = $9 + 21 | 0;
+  $68 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($65 >> 0 | 0, $68 | 0, 1);
+  SAFE_HEAP_STORE($67 >> 0 | 0, $66 | 0, 1);
+  $69 = $9 + 11 | 0;
+  $70 = SAFE_HEAP_LOAD($69 >> 0 | 0, 1, 0) | 0 | 0;
+  $71 = $9 + 20 | 0;
+  $72 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($69 >> 0 | 0, $72 | 0, 1);
+  SAFE_HEAP_STORE($71 >> 0 | 0, $70 | 0, 1);
+  $73 = $9 + 12 | 0;
+  $74 = SAFE_HEAP_LOAD($73 >> 0 | 0, 1, 0) | 0 | 0;
+  $75 = $9 + 19 | 0;
+  $76 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($73 >> 0 | 0, $76 | 0, 1);
+  SAFE_HEAP_STORE($75 >> 0 | 0, $74 | 0, 1);
+  $77 = $9 + 13 | 0;
+  $78 = SAFE_HEAP_LOAD($77 >> 0 | 0, 1, 0) | 0 | 0;
+  $79 = $9 + 18 | 0;
+  $80 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($77 >> 0 | 0, $80 | 0, 1);
+  SAFE_HEAP_STORE($79 >> 0 | 0, $78 | 0, 1);
+  $81 = $9 + 14 | 0;
+  $82 = SAFE_HEAP_LOAD($81 >> 0 | 0, 1, 0) | 0 | 0;
+  $83 = $9 + 17 | 0;
+  $84 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($81 >> 0 | 0, $84 | 0, 1);
+  SAFE_HEAP_STORE($83 >> 0 | 0, $82 | 0, 1);
+  $85 = $9 + 15 | 0;
+  $86 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+  $87 = $9 + 16 | 0;
+  $88 = SAFE_HEAP_LOAD($87 >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($85 >> 0 | 0, $88 | 0, 1);
+  SAFE_HEAP_STORE($87 >> 0 | 0, $86 | 0, 1);
+  $89 = $28 & 255;
+  $90 = $89 & 63;
+  $91 = $90 | 64;
+  $92 = $91 & 255;
+  SAFE_HEAP_STORE($9 >> 0 | 0, $92 | 0, 1);
+  $93 = $26 & 255;
+  $94 = $93 & 248;
+  $95 = $94 & 255;
+  SAFE_HEAP_STORE($27 >> 0 | 0, $95 | 0, 1);
+  SAFE_HEAP_STORE($0 | 0, $9 | 0, 4);
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  __gcry_free($9);
+  $$0 = $24;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+function __gcry_mpi_mul($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$$0150 = 0, $$0138168 = 0, $$0139165 = 0, $$0140 = 0, $$0141 = 
0, $$0142 = 0, $$0142$clear = 0, $$0143 = 0, $$0145 = 0, $$0145$in = 0, 
$$0145$in$in = 0, $$0146 = 0, $$0146$in = 0, $$0147 = 0, $$0147$in = 0, $$0148 
= 0, $$0149 = 0, $$0150 = 0, $$0150$in = 0;
+ var $$0152 = 0, $$0152$in = 0, $$0164 = 0, $$1 = 0, $$1153 = 0, $$160 = 0, 
$$162 = 0, $$2 = 0, $$sink = 0, $$sink$in = 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, $exitcond173 = 0, $not$ = 0, 
$or$cond = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $1 + 4 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 + 4 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = ($4 | 0) < ($6 | 0);
+ $$ = $7 ? $1 : $2;
+ $$160 = $7 ? $2 : $1;
+ $$162 = $7 ? $6 : $4;
+ $$0146$in = $$ + 8 | 0;
+ $$0147$in = $$160 + 8 | 0;
+ $$0152$in = $$160 + 16 | 0;
+ $$sink$in = $$ + 12 | 0;
+ $$0145$in$in = $$160 + 12 | 0;
+ $$0145$in = SAFE_HEAP_LOAD($$0145$in$in | 0, 4, 0) | 0 | 0;
+ $$0145 = $$0145$in & 1;
+ $$0143 = $7 ? $4 : $6;
+ $$0146 = SAFE_HEAP_LOAD($$0146$in | 0, 4, 0) | 0 | 0;
+ $$0147 = SAFE_HEAP_LOAD($$0147$in | 0, 4, 0) | 0 | 0;
+ $$0152 = SAFE_HEAP_LOAD($$0152$in | 0, 4, 0) | 0 | 0;
+ $$sink = SAFE_HEAP_LOAD($$sink$in | 0, 4, 0) | 0 | 0;
+ $8 = $$sink & 1;
+ $$0150$in = $$ + 16 | 0;
+ $$0150 = SAFE_HEAP_LOAD($$0150$in | 0, 4, 0) | 0 | 0;
+ $9 = $$0147 ^ $$0146;
+ $10 = $0 + 16 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $$162 + $$0143 | 0;
+ $13 = ($0 | 0) == (0 | 0);
+ if ($13) {
+  label = 3;
+ } else {
+  $14 = $0 + 12 | 0;
+  $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+  $16 = $15 & 1;
+  $17 = ($16 | 0) == 0;
+  if ($17) {
+   label = 3;
+  } else {
+   label = 7;
+  }
+ }
+ do {
+  if ((label | 0) == 3) {
+   $18 = $1 + 12 | 0;
+   $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+   $20 = $19 & 1;
+   $21 = ($20 | 0) == 0;
+   if ($21) {
+    $22 = ($2 | 0) == (0 | 0);
+    if ($22) {
+     label = 7;
+     break;
+    }
+    $23 = $2 + 12 | 0;
+    $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+    $25 = $24 & 1;
+    $26 = ($25 | 0) == 0;
+    if ($26) {
+     label = 7;
+     break;
+    }
+   }
+   $27 = __gcry_mpi_alloc_limb_space($12, 1) | 0;
+   $$0140 = 0;
+   $$0141 = 0;
+   $$0142 = 2;
+   $$0149 = $27;
+   $$1153 = $$0152;
+   $$2 = $$0150;
+  }
+ } while (0);
+ L9 : do {
+  if ((label | 0) == 7) {
+   $28 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $29 = ($28 | 0) < ($12 | 0);
+   $30 = ($11 | 0) == ($$0152 | 0);
+   if ($29) {
+    $31 = ($11 | 0) == ($$0150 | 0);
+    $or$cond = $30 | $31;
+    if ($or$cond) {
+     $32 = $0 + 12 | 0;
+     $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+     $34 = $33 & 1;
+     $35 = __gcry_mpi_alloc_limb_space($12, $34) | 0;
+     $$0140 = 0;
+     $$0141 = 0;
+     $$0142 = 1;
+     $$0149 = $35;
+     $$1153 = $$0152;
+     $$2 = $$0150;
+     break;
+    } else {
+     __gcry_mpi_resize($0, $12);
+     $36 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $$0140 = 0;
+     $$0141 = 0;
+     $$0142 = 0;
+     $$0149 = $36;
+     $$1153 = $$0152;
+     $$2 = $$0150;
+     break;
+    }
+   }
+   if ($30) {
+    $37 = __gcry_mpi_alloc_limb_space($$162, $$0145) | 0;
+    $38 = ($$0152 | 0) == ($$0150 | 0);
+    $$$0150 = $38 ? $37 : $$0150;
+    $39 = ($$162 | 0) > 0;
+    if ($39) {
+     $$0139165 = 0;
+    } else {
+     $$0140 = $$162;
+     $$0141 = $37;
+     $$0142 = 0;
+     $$0149 = $$0152;
+     $$1153 = $37;
+     $$2 = $$$0150;
+     break;
+    }
+    while (1) {
+     $40 = $$0152 + ($$0139165 << 2) | 0;
+     $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+     $42 = $37 + ($$0139165 << 2) | 0;
+     SAFE_HEAP_STORE($42 | 0, $41 | 0, 4);
+     $43 = $$0139165 + 1 | 0;
+     $44 = ($43 | 0) < ($$162 | 0);
+     if ($44) {
+      $$0139165 = $43;
+     } else {
+      $$0140 = $$162;
+      $$0141 = $37;
+      $$0142 = 0;
+      $$0149 = $$0152;
+      $$1153 = $37;
+      $$2 = $$$0150;
+      break L9;
+     }
+    }
+   }
+   $45 = ($11 | 0) == ($$0150 | 0);
+   if ($45) {
+    $46 = __gcry_mpi_alloc_limb_space($$0143, $8) | 0;
+    $47 = ($$0143 | 0) > 0;
+    if ($47) {
+     $$0138168 = 0;
+     while (1) {
+      $48 = $$0150 + ($$0138168 << 2) | 0;
+      $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+      $50 = $46 + ($$0138168 << 2) | 0;
+      SAFE_HEAP_STORE($50 | 0, $49 | 0, 4);
+      $51 = $$0138168 + 1 | 0;
+      $exitcond173 = ($51 | 0) == ($$0143 | 0);
+      if ($exitcond173) {
+       $$0140 = $$0143;
+       $$0141 = $46;
+       $$0142 = 0;
+       $$0149 = $$0150;
+       $$1153 = $$0152;
+       $$2 = $46;
+       break;
+      } else {
+       $$0138168 = $51;
+      }
+     }
+    } else {
+     $$0140 = $$0143;
+     $$0141 = $46;
+     $$0142 = 0;
+     $$0149 = $$0150;
+     $$1153 = $$0152;
+     $$2 = $46;
+    }
+   } else {
+    $$0140 = 0;
+    $$0141 = 0;
+    $$0142 = 0;
+    $$0149 = $11;
+    $$1153 = $$0152;
+    $$2 = $$0150;
+   }
+  }
+ } while (0);
+ $52 = ($$0143 | 0) == 0;
+ if ($52) {
+  $$0148 = 0;
+ } else {
+  $53 = __gcry_mpih_mul($$0149, $$1153, $$162, $$2, $$0143) | 0;
+  $not$ = ($53 | 0) == 0;
+  $54 = $not$ & 1;
+  $55 = $12 - $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) {
+    $$0164 = 0;
+    while (1) {
+     $58 = $$0149 + ($$0164 << 2) | 0;
+     $59 = SAFE_HEAP_LOAD($58 | 0, 4, 0) | 0 | 0;
+     $60 = $56 + ($$0164 << 2) | 0;
+     SAFE_HEAP_STORE($60 | 0, $59 | 0, 4);
+     $61 = $$0164 + 1 | 0;
+     $exitcond = ($61 | 0) == ($$0148 | 0);
+     if ($exitcond) {
+      break;
+     } else {
+      $$0164 = $61;
+     }
+    }
+   }
+   __gcry_mpi_free_limb_space($$0149, 0);
+   $$1 = $56;
+   label = 23;
+   break;
+  }
+ default:
+  {
+   $$1 = $$0149;
+   label = 23;
+  }
+ }
+ if ((label | 0) == 23) {
+  __gcry_mpi_assign_limb_space($0, $$1, $$0148);
+ }
+ $62 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($62 | 0, $$0148 | 0, 4);
+ $63 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($63 | 0, $9 | 0, 4);
+ $64 = ($$0141 | 0) == (0 | 0);
+ if ($64) {
+  return;
+ }
+ __gcry_mpi_free_limb_space($$0141, $$0140);
+ return;
+}
+
+function _GNUNET_STRINGS_data_to_string($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, $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, $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, $or$cond = 0, 
$vararg_buffer = 0, $vararg_buffer11 = 0, $vararg_buffer3 = 0, $vararg_buffer7 
= 0;
+ var $vararg_ptr10 = 0, $vararg_ptr14 = 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_buffer11 = sp + 24 | 0;
+ $vararg_buffer7 = sp + 16 | 0;
+ $vararg_buffer3 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $5 = $0;
+ $6 = $1;
+ $7 = $2;
+ $8 = $3;
+ $18 = $5;
+ $13 = $18;
+ $19 = $8;
+ $20 = $6;
+ $21 = $20 << 3;
+ $22 = $21 + 4 | 0;
+ $23 = ($22 >>> 0) / 5 & -1;
+ $24 = $19 >>> 0 < $23 >>> 0;
+ if ($24) {
+  $14 = 883;
+  $25 = SAFE_HEAP_LOAD(274 * 4 | 0, 4, 0) | 0 | 0;
+  $26 = ($25 | 0) == -1;
+  if ($26) {
+   $27 = $14;
+   $28 = _GNUNET_get_log_call_status(1, 0, 21635, 21684, $27) | 0;
+   SAFE_HEAP_STORE(274 * 4 | 0, $28 | 0, 4);
+  }
+  $29 = _GNUNET_get_log_skip() | 0;
+  $30 = ($29 | 0) > 0;
+  if ($30) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $31 = SAFE_HEAP_LOAD(274 * 4 | 0, 4, 0) | 0 | 0;
+   $32 = ($31 | 0) != 0;
+   if ($32) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, 21635 | 0, 4);
+    $vararg_ptr2 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr2 | 0, 883 | 0, 4);
+    _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+   }
+  }
+  $4 = 0;
+  $118 = $4;
+  STACKTOP = sp;
+  return $118 | 0;
+ }
+ $12 = 0;
+ $9 = 0;
+ $10 = 0;
+ $11 = 0;
+ while (1) {
+  $33 = $10;
+  $34 = $6;
+  $35 = $33 >>> 0 < $34 >>> 0;
+  $36 = $12;
+  $37 = $36 >>> 0 > 0;
+  $38 = $35 ? 1 : $37;
+  if (!$38) {
+   label = 32;
+   break;
+  }
+  $39 = $10;
+  $40 = $6;
+  $41 = $39 >>> 0 < $40 >>> 0;
+  $42 = $12;
+  $43 = $42 >>> 0 < 5;
+  $or$cond = $41 & $43;
+  if ($or$cond) {
+   $44 = $11;
+   $45 = $44 << 8;
+   $46 = $10;
+   $47 = $46 + 1 | 0;
+   $10 = $47;
+   $48 = $13;
+   $49 = $48 + $46 | 0;
+   $50 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+   $51 = $50 & 255;
+   $52 = $45 | $51;
+   $11 = $52;
+   $53 = $12;
+   $54 = $53 + 8 | 0;
+   $12 = $54;
+  }
+  $55 = $12;
+  $56 = $55 >>> 0 < 5;
+  if ($56) {
+   $57 = $12;
+   $58 = 5 - $57 | 0;
+   $59 = $11;
+   $60 = $59 << $58;
+   $11 = $60;
+   $61 = $12;
+   $62 = $6;
+   $63 = $62 << 3;
+   $64 = ($63 >>> 0) % 5 & -1;
+   $65 = ($61 | 0) == ($64 | 0);
+   if (!$65) {
+    label = 15;
+    break;
+   }
+   $12 = 5;
+  }
+  $74 = $9;
+  $75 = $8;
+  $76 = $74 >>> 0 >= $75 >>> 0;
+  if ($76) {
+   label = 24;
+   break;
+  }
+  $85 = $11;
+  $86 = $12;
+  $87 = $86 - 5 | 0;
+  $88 = $85 >>> $87;
+  $89 = $88 & 31;
+  $90 = SAFE_HEAP_LOAD(277 * 4 | 0, 4, 0) | 0 | 0;
+  $91 = $90 + $89 | 0;
+  $92 = SAFE_HEAP_LOAD($91 >> 0 | 0, 1, 0) | 0 | 0;
+  $93 = $9;
+  $94 = $93 + 1 | 0;
+  $9 = $94;
+  $95 = $7;
+  $96 = $95 + $93 | 0;
+  SAFE_HEAP_STORE($96 >> 0 | 0, $92 | 0, 1);
+  $97 = $12;
+  $98 = $97 - 5 | 0;
+  $12 = $98;
+ }
+ if ((label | 0) == 15) {
+  $15 = 900;
+  $66 = SAFE_HEAP_LOAD(275 * 4 | 0, 4, 0) | 0 | 0;
+  $67 = ($66 | 0) == -1;
+  if ($67) {
+   $68 = $15;
+   $69 = _GNUNET_get_log_call_status(1, 0, 21635, 21684, $68) | 0;
+   SAFE_HEAP_STORE(275 * 4 | 0, $69 | 0, 4);
+  }
+  $70 = _GNUNET_get_log_skip() | 0;
+  $71 = ($70 | 0) > 0;
+  if ($71) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $72 = SAFE_HEAP_LOAD(275 * 4 | 0, 4, 0) | 0 | 0;
+  $73 = ($72 | 0) != 0;
+  if (!$73) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer3 | 0, 21635 | 0, 4);
+  $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr6 | 0, 900 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer3);
+  _GNUNET_abort_();
+ } else if ((label | 0) == 24) {
+  $16 = 905;
+  $77 = SAFE_HEAP_LOAD(276 * 4 | 0, 4, 0) | 0 | 0;
+  $78 = ($77 | 0) == -1;
+  if ($78) {
+   $79 = $16;
+   $80 = _GNUNET_get_log_call_status(1, 0, 21635, 21684, $79) | 0;
+   SAFE_HEAP_STORE(276 * 4 | 0, $80 | 0, 4);
+  }
+  $81 = _GNUNET_get_log_skip() | 0;
+  $82 = ($81 | 0) > 0;
+  if ($82) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $83 = SAFE_HEAP_LOAD(276 * 4 | 0, 4, 0) | 0 | 0;
+   $84 = ($83 | 0) != 0;
+   if ($84) {
+    SAFE_HEAP_STORE($vararg_buffer7 | 0, 21635 | 0, 4);
+    $vararg_ptr10 = $vararg_buffer7 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr10 | 0, 905 | 0, 4);
+    _GNUNET_log_nocheck(1, 61295, $vararg_buffer7);
+   }
+  }
+  $4 = 0;
+  $118 = $4;
+  STACKTOP = sp;
+  return $118 | 0;
+ } else if ((label | 0) == 32) {
+  $99 = $12;
+  $100 = 0 == ($99 | 0);
+  if ($100) {
+   $109 = $9;
+   $110 = $8;
+   $111 = $109 >>> 0 < $110 >>> 0;
+   if ($111) {
+    $112 = $9;
+    $113 = $7;
+    $114 = $113 + $112 | 0;
+    SAFE_HEAP_STORE($114 >> 0 | 0, 0 | 0, 1);
+   }
+   $115 = $9;
+   $116 = $7;
+   $117 = $116 + $115 | 0;
+   $4 = $117;
+   $118 = $4;
+   STACKTOP = sp;
+   return $118 | 0;
+  }
+  $17 = 911;
+  $101 = SAFE_HEAP_LOAD(278 * 4 | 0, 4, 0) | 0 | 0;
+  $102 = ($101 | 0) == -1;
+  if ($102) {
+   $103 = $17;
+   $104 = _GNUNET_get_log_call_status(1, 0, 21635, 21684, $103) | 0;
+   SAFE_HEAP_STORE(278 * 4 | 0, $104 | 0, 4);
+  }
+  $105 = _GNUNET_get_log_skip() | 0;
+  $106 = ($105 | 0) > 0;
+  if ($106) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $107 = SAFE_HEAP_LOAD(278 * 4 | 0, 4, 0) | 0 | 0;
+  $108 = ($107 | 0) != 0;
+  if (!$108) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer11 | 0, 21635 | 0, 4);
+  $vararg_ptr14 = $vararg_buffer11 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr14 | 0, 911 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer11);
+  _GNUNET_abort_();
+ }
+ return 0 | 0;
+}
+
+function __gcry_sexp_canon_len($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $$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;
+ var $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, $33 = 0;
+ var $34 = 0, $35 = 0, $36 = 0, $37 = 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);
+ $4 = sp + 4 | 0;
+ $5 = sp;
+ $6 = ($2 | 0) == (0 | 0);
+ $$ = $6 ? $4 : $2;
+ $7 = ($3 | 0) == (0 | 0);
+ $$095 = $7 ? $5 : $3;
+ SAFE_HEAP_STORE($$095 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($$ | 0, 0 | 0, 4);
+ $8 = ($0 | 0) == (0 | 0);
+ L1 : do {
+  if ($8) {
+   $$097 = 0;
+  } else {
+   $9 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+   $10 = $9 << 24 >> 24 == 40;
+   if (!$10) {
+    SAFE_HEAP_STORE($$095 | 0, 204 | 0, 4);
+    $$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 = $21 + -48 | 0;
+       $23 = $22 + $14 | 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 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+    $$0134 = $$1;
+    $$087133 = $12;
+    $$089132 = $$190;
+    $$091131 = $$192;
+    $$093130 = $36;
+    $15 = $$pre;
+   }
+   switch (label | 0) {
+   case 5:
+    {
+     SAFE_HEAP_STORE($$ | 0, $12 | 0, 4);
+     SAFE_HEAP_STORE($$095 | 0, 202 | 0, 4);
+     $$097 = 0;
+     break L1;
+     break;
+    }
+   case 9:
+    {
+     SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+     SAFE_HEAP_STORE($$095 | 0, 202 | 0, 4);
+     $$097 = 0;
+     break L1;
+     break;
+    }
+   case 13:
+    {
+     SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+     SAFE_HEAP_STORE($$095 | 0, 201 | 0, 4);
+     $$097 = 0;
+     break L1;
+     break;
+    }
+   case 16:
+    {
+     SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+     SAFE_HEAP_STORE($$095 | 0, 209 | 0, 4);
+     $$097 = 0;
+     break L1;
+     break;
+    }
+   case 19:
+    {
+     SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+     SAFE_HEAP_STORE($$095 | 0, 203 | 0, 4);
+     $$097 = 0;
+     break L1;
+     break;
+    }
+   case 21:
+    {
+     SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+     SAFE_HEAP_STORE($$095 | 0, 209 | 0, 4);
+     $$097 = 0;
+     break L1;
+     break;
+    }
+   case 23:
+    {
+     $30 = $$087133 + 1 | 0;
+     $$097 = $30;
+     break L1;
+     break;
+    }
+   case 25:
+    {
+     SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+     SAFE_HEAP_STORE($$095 | 0, 208 | 0, 4);
+     $$097 = 0;
+     break L1;
+     break;
+    }
+   case 27:
+    {
+     SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+     SAFE_HEAP_STORE($$095 | 0, 209 | 0, 4);
+     $$097 = 0;
+     break L1;
+     break;
+    }
+   case 30:
+    {
+     SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+     SAFE_HEAP_STORE($$095 | 0, 207 | 0, 4);
+     $$097 = 0;
+     break L1;
+     break;
+    }
+   case 32:
+    {
+     switch ($15 << 24 >> 24) {
+     case 92:
+     case 38:
+      {
+       SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+       SAFE_HEAP_STORE($$095 | 0, 210 | 0, 4);
+       $$097 = 0;
+       break L1;
+       break;
+      }
+     default:
+      {
+       SAFE_HEAP_STORE($$ | 0, $$087133 | 0, 4);
+       SAFE_HEAP_STORE($$095 | 0, 205 | 0, 4);
+       $$097 = 0;
+       break L1;
+      }
+     }
+     break;
+    }
+   }
+  }
+ } while (0);
+ STACKTOP = sp;
+ return $$097 | 0;
+}
+
+function _mul_n($0, $1, $2, $3, $4) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ $4 = $4 | 0;
+ var $$0153196 = 0, $$0154 = 0, $$0155 = 0, $$016$i = 0, $$016$i171 = 0, 
$$016$in$i = 0, $$016$in$i170 = 0, $$0195 = 0, $$025$i = 0, $$025$i158 = 0, 
$$028$i = 0, $$028$i$pn = 0, $$028$i156 = 0, $$028$i156$pn = 0, $$1 = 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, $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;
+ 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, $9 = 0, 
$exitcond = 0, $exitcond220 = 0, label = 0;
+ var 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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $12 = __gcry_mpih_addmul_1($9, $1, $7, $11) | 0;
+  $13 = $7 << 1;
+  $14 = $0 + ($13 << 2) | 0;
+  SAFE_HEAP_STORE($14 | 0, $12 | 0, 4);
+  $15 = $1 + ($7 << 2) | 0;
+  $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $17 = __gcry_mpih_addmul_1($9, $2, $3, $16) | 0;
+  $18 = $7 + $3 | 0;
+  $19 = $0 + ($18 << 2) | 0;
+  SAFE_HEAP_STORE($19 | 0, $17 | 0, 4);
+  return;
+ }
+ $20 = $3 >> 1;
+ $21 = ($20 | 0) < 16;
+ $22 = $0 + ($3 << 2) | 0;
+ $23 = $1 + ($20 << 2) | 0;
+ $24 = $2 + ($20 << 2) | 0;
+ if ($21) {
+  _mul_n_basecase($22, $23, $24, $20);
+  $$016$in$i = $20;
+ } else {
+  _mul_n($22, $23, $24, $20, $4);
+  $$016$in$i = $20;
+ }
+ while (1) {
+  $$016$i = $$016$in$i + -1 | 0;
+  $25 = ($$016$in$i | 0) > 0;
+  if (!$25) {
+   label = 12;
+   break;
+  }
+  $26 = $23 + ($$016$i << 2) | 0;
+  $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+  $28 = $1 + ($$016$i << 2) | 0;
+  $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+  $30 = ($27 | 0) == ($29 | 0);
+  if ($30) {
+   $$016$in$i = $$016$i;
+  } else {
+   label = 11;
+   break;
+  }
+ }
+ if ((label | 0) == 11) {
+  $31 = $27 >>> 0 > $29 >>> 0;
+  if ($31) {
+   label = 12;
+  } else {
+   __gcry_mpih_sub_n($0, $1, $23, $20) | 0;
+   $$0154 = 1;
+  }
+ }
+ if ((label | 0) == 12) {
+  __gcry_mpih_sub_n($0, $23, $1, $20) | 0;
+  $$0154 = 0;
+ }
+ $$016$in$i170 = $20;
+ while (1) {
+  $$016$i171 = $$016$in$i170 + -1 | 0;
+  $32 = ($$016$in$i170 | 0) > 0;
+  if (!$32) {
+   label = 18;
+   break;
+  }
+  $33 = $24 + ($$016$i171 << 2) | 0;
+  $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+  $35 = $2 + ($$016$i171 << 2) | 0;
+  $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+  $37 = ($34 | 0) == ($36 | 0);
+  if ($37) {
+   $$016$in$i170 = $$016$i171;
+  } else {
+   label = 17;
+   break;
+  }
+ }
+ if ((label | 0) == 17) {
+  $38 = $34 >>> 0 > $36 >>> 0;
+  if ($38) {
+   label = 18;
+  } else {
+   $41 = $0 + ($20 << 2) | 0;
+   __gcry_mpih_sub_n($41, $2, $24, $20) | 0;
+   $$1 = $$0154;
+   $43 = $41;
+  }
+ }
+ if ((label | 0) == 18) {
+  $39 = $0 + ($20 << 2) | 0;
+  __gcry_mpih_sub_n($39, $24, $2, $20) | 0;
+  $40 = $$0154 ^ 1;
+  $$1 = $40;
+  $43 = $39;
+ }
+ if ($21) {
+  _mul_n_basecase($4, $0, $43, $20);
+  $44 = ($20 | 0) > 0;
+  if ($44) {
+   label = 23;
+  } else {
+   $86 = 0;
+  }
+ } else {
+  $42 = $4 + ($3 << 2) | 0;
+  _mul_n($4, $0, $43, $20, $42);
+  label = 23;
+ }
+ if ((label | 0) == 23) {
+  $45 = $0 + ($20 << 2) | 0;
+  $$0153196 = 0;
+  while (1) {
+   $46 = $22 + ($$0153196 << 2) | 0;
+   $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+   $48 = $45 + ($$0153196 << 2) | 0;
+   SAFE_HEAP_STORE($48 | 0, $47 | 0, 4);
+   $49 = $$0153196 + 1 | 0;
+   $exitcond220 = ($49 | 0) == ($20 | 0);
+   if ($exitcond220) {
+    $86 = 1;
+    break;
+   } else {
+    $$0153196 = $49;
+   }
+  }
+ }
+ $50 = $22 + ($20 << 2) | 0;
+ $51 = __gcry_mpih_add_n($22, $22, $50, $20) | 0;
+ $52 = ($$1 | 0) == 0;
+ if ($52) {
+  $55 = __gcry_mpih_add_n($43, $43, $4, $3) | 0;
+  $56 = $55 + $51 | 0;
+  $$0155 = $56;
+ } else {
+  $53 = __gcry_mpih_sub_n($43, $43, $4, $3) | 0;
+  $54 = $51 - $53 | 0;
+  $$0155 = $54;
+ }
+ if ($21) {
+  _mul_n_basecase($4, $1, $2, $20);
+ } else {
+  $57 = $4 + ($3 << 2) | 0;
+  _mul_n($4, $1, $2, $20, $57);
+ }
+ $58 = __gcry_mpih_add_n($43, $43, $4, $3) | 0;
+ $59 = $58 + $$0155 | 0;
+ $60 = ($59 | 0) == 0;
+ L46 : do {
+  if (!$60) {
+   $61 = $0 + ($20 << 2) | 0;
+   $62 = $61 + ($3 << 2) | 0;
+   $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+   $64 = $63 + $59 | 0;
+   SAFE_HEAP_STORE($62 | 0, $64 | 0, 4);
+   $65 = $64 >>> 0 < $63 >>> 0;
+   if ($65) {
+    $$025$i158 = $20;
+    $$028$i156$pn = $62;
+    while (1) {
+     $$028$i156 = $$028$i156$pn + 4 | 0;
+     $66 = $$025$i158 + -1 | 0;
+     $67 = ($66 | 0) == 0;
+     if ($67) {
+      break L46;
+     }
+     $68 = SAFE_HEAP_LOAD($$028$i156 | 0, 4, 0) | 0 | 0;
+     $69 = $68 + 1 | 0;
+     SAFE_HEAP_STORE($$028$i156 | 0, $69 | 0, 4);
+     $70 = ($69 | 0) == 0;
+     if ($70) {
+      $$025$i158 = $66;
+      $$028$i156$pn = $$028$i156;
+     } else {
+      break;
+     }
+    }
+   }
+  }
+ } while (0);
+ if ($86) {
+  $$0195 = 0;
+  while (1) {
+   $71 = $4 + ($$0195 << 2) | 0;
+   $72 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+   $73 = $0 + ($$0195 << 2) | 0;
+   SAFE_HEAP_STORE($73 | 0, $72 | 0, 4);
+   $74 = $$0195 + 1 | 0;
+   $exitcond = ($74 | 0) == ($20 | 0);
+   if ($exitcond) {
+    break;
+   } else {
+    $$0195 = $74;
+   }
+  }
+ }
+ $75 = $4 + ($20 << 2) | 0;
+ $76 = __gcry_mpih_add_n($43, $43, $75, $20) | 0;
+ $77 = ($76 | 0) == 0;
+ if ($77) {
+  return;
+ }
+ $78 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $79 = $78 + 1 | 0;
+ SAFE_HEAP_STORE($22 | 0, $79 | 0, 4);
+ $80 = ($78 | 0) == -1;
+ if ($80) {
+  $$025$i = $3;
+  $$028$i$pn = $22;
+ } else {
+  return;
+ }
+ while (1) {
+  $$028$i = $$028$i$pn + 4 | 0;
+  $81 = $$025$i + -1 | 0;
+  $82 = ($81 | 0) == 0;
+  if ($82) {
+   label = 41;
+   break;
+  }
+  $83 = SAFE_HEAP_LOAD($$028$i | 0, 4, 0) | 0 | 0;
+  $84 = $83 + 1 | 0;
+  SAFE_HEAP_STORE($$028$i | 0, $84 | 0, 4);
+  $85 = ($84 | 0) == 0;
+  if ($85) {
+   $$025$i = $81;
+   $$028$i$pn = $$028$i;
+  } else {
+   label = 41;
+   break;
+  }
+ }
+ if ((label | 0) == 41) {
+  return;
+ }
+}
+
+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$ph = 0, $$04351 = 0, 
$$044$ph = 0, $$04450 = 0, $$1 = 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;
+ 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, $8 = 0, $9 = 0, $notlhs = 0, $notrhs = 0, $or$cond$not 
= 0, $or$cond3 = 0, $or$cond46 = 0, $or$cond5 = 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 = sp + 4 | 0;
+ $notlhs = ($3 | 0) != (0 | 0);
+ $notrhs = ($4 | 0) > -1;
+ $or$cond$not = $notlhs & $notrhs;
+ $6 = $1 & -3;
+ $7 = ($6 | 0) == 0;
+ $or$cond46 = $7 & $or$cond$not;
+ if (!$or$cond46) {
+  $$1 = 45;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $8 = $1 & 2;
+ $9 = ($8 | 0) != 0;
+ $10 = ($4 | 0) < 1;
+ $or$cond3 = $9 & $10;
+ if ($or$cond3) {
+  $$1 = 45;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $11 = ($0 | 0) != 2;
+ $or$cond5 = $11 | $9;
+ if (!$or$cond5) {
+  __gcry_sha1_hash_buffers($2, $3, $4);
+  $$1 = 0;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $12 = ($0 | 0) == 1;
+ if ($12) {
+  $13 = __gcry_fips_mode() | 0;
+  $14 = ($13 | 0) == 0;
+  if (!$14) {
+   __gcry_inactivate_fips_mode(36944);
+   $15 = __gcry_enforced_fips_mode() | 0;
+   $16 = ($15 | 0) == 0;
+   if (!$16) {
+    __gcry_fips_noreturn();
+   }
+  }
+ }
+ $17 = _md_open($5, $0, $8) | 0;
+ $18 = ($17 | 0) == 0;
+ L16 : do {
+  if ($18) {
+   $19 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   do {
+    if ($9) {
+     $20 = $3 + 12 | 0;
+     $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+     $22 = $3 + 4 | 0;
+     $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+     $24 = $21 + $23 | 0;
+     $25 = $3 + 8 | 0;
+     $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     $27 = __gcry_md_setkey($19, $24, $26) | 0;
+     $28 = ($27 | 0) == 0;
+     if ($28) {
+      $29 = $3 + 16 | 0;
+      $30 = $4 + -1 | 0;
+      $$043$ph = $30;
+      $$044$ph = $29;
+      break;
+     } else {
+      _md_close($19);
+      $$042$ph = $27;
+      break L16;
+     }
+    } else {
+     $$043$ph = $4;
+     $$044$ph = $3;
+    }
+   } while (0);
+   $31 = ($$043$ph | 0) == 0;
+   if (!$31) {
+    $$04351 = $$043$ph;
+    $$04450 = $$044$ph;
+    while (1) {
+     $32 = $$04450 + 12 | 0;
+     $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+     $34 = $$04450 + 4 | 0;
+     $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+     $36 = $33 + $35 | 0;
+     $37 = $$04450 + 8 | 0;
+     $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+     _md_write($19, $36, $38);
+     $39 = $$04450 + 16 | 0;
+     $40 = $$04351 + -1 | 0;
+     $41 = ($40 | 0) == 0;
+     if ($41) {
+      break;
+     } else {
+      $$04351 = $40;
+      $$04450 = $39;
+     }
+    }
+   }
+   _md_final($19);
+   $$idx$val = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+   $$idx$val$idx = $$idx$val + 16 | 0;
+   $$idx$val$idx$val = SAFE_HEAP_LOAD($$idx$val$idx | 0, 4, 0) | 0 | 0;
+   $42 = ($0 | 0) == 0;
+   $43 = ($$idx$val$idx$val | 0) == (0 | 0);
+   do {
+    if ($42) {
+     if ($43) {
+      __gcry_bug(36953, 816, 37090);
+     }
+     $44 = $$idx$val$idx$val + 4 | 0;
+     $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+     $46 = ($45 | 0) == (0 | 0);
+     if (!$46) {
+      __gcry_log_debug(37051, $vararg_buffer);
+     }
+     $47 = SAFE_HEAP_LOAD($$idx$val$idx$val | 0, 4, 0) | 0 | 0;
+     $48 = $47 + 40 | 0;
+     $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+     $50 = $$idx$val$idx$val + 16 | 0;
+     $51 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($49 | 0, 63 | 0) | 0) & 63]($50) | 
0;
+     $$013$i = $51;
+    } else {
+     if ($43) {
+      __gcry_bug(36953, 816, 37090);
+     } else {
+      $$02$i = $$idx$val$idx$val;
+     }
+     while (1) {
+      $52 = SAFE_HEAP_LOAD($$02$i | 0, 4, 0) | 0 | 0;
+      $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+      $54 = ($53 | 0) == ($0 | 0);
+      if ($54) {
+       label = 23;
+       break;
+      }
+      $59 = $$02$i + 4 | 0;
+      $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+      $61 = ($60 | 0) == (0 | 0);
+      if ($61) {
+       label = 25;
+       break;
+      } else {
+       $$02$i = $60;
+      }
+     }
+     if ((label | 0) == 23) {
+      $55 = $52 + 40 | 0;
+      $56 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+      $57 = $$02$i + 16 | 0;
+      $58 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($56 | 0, 63 | 0) | 0) & 63]($57) | 
0;
+      $$013$i = $58;
+      break;
+     } else if ((label | 0) == 25) {
+      __gcry_bug(36953, 816, 37090);
+     }
+    }
+   } while (0);
+   $62 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+   $63 = ($62 | 0) == ($0 | 0);
+   if ($63) {
+    $$ph$i = 7620;
+    label = 32;
+   } else {
+    $64 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+    $65 = ($64 | 0) == ($0 | 0);
+    if ($65) {
+     $$ph$i = 7756;
+     label = 32;
+    } else {
+     $66 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+     $67 = ($66 | 0) == ($0 | 0);
+     if ($67) {
+      $$ph$i = 7696;
+      label = 32;
+     } else {
+      $68 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+      $69 = ($68 | 0) == ($0 | 0);
+      if ($69) {
+       $$ph$i = 7820;
+       label = 32;
+      } else {
+       $70 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+       $71 = ($70 | 0) == ($0 | 0);
+       if ($71) {
+        $$ph$i = 7884;
+        label = 32;
+       } else {
+        $72 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+        $73 = ($72 | 0) == ($0 | 0);
+        if ($73) {
+         $$ph$i = 7456;
+         label = 32;
+        } else {
+         $76 = 0;
+        }
+       }
+      }
+     }
+    }
+   }
+   if ((label | 0) == 32) {
+    $74 = $$ph$i + 24 | 0;
+    $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+    $76 = $75;
+   }
+   _memcpy($2 | 0, $$013$i | 0, $76 | 0) | 0;
+   _md_close($19);
+   $$1 = 0;
+   STACKTOP = sp;
+   return $$1 | 0;
+  } else {
+   $$042$ph = $17;
+  }
+ } while (0);
+ $$1 = $$042$ph;
+ STACKTOP = sp;
+ return $$1 | 0;
+}
+
+function _GNUNET_CRYPTO_ecdh_eddsa($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, 
$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, 
$vararg_buffer = 0, $vararg_buffer12 = 0, $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;
+ var sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 144 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(144 | 0);
+ $vararg_buffer16 = sp + 40 | 0;
+ $vararg_buffer12 = sp + 32 | 0;
+ $vararg_buffer6 = sp + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $9 = sp + 80 | 0;
+ $10 = sp + 76 | 0;
+ $11 = sp + 72 | 0;
+ $13 = sp + 112 | 0;
+ $14 = sp + 64 | 0;
+ $4 = $0;
+ $5 = $1;
+ $6 = $2;
+ $19 = $5;
+ SAFE_HEAP_STORE($vararg_buffer | 0, 32 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $19 | 0, 4);
+ $20 = _gcry_sexp_build($11, 0, 20102, $vararg_buffer) | 0;
+ $21 = 0 != ($20 | 0);
+ if ($21) {
+  $3 = -1;
+  $89 = $3;
+  STACKTOP = sp;
+  return $89 | 0;
+ }
+ $22 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $23 = _gcry_mpi_ec_new($10, $22, 0) | 0;
+ $24 = 0 == ($23 | 0);
+ if (!$24) {
+  $15 = 1403;
+  $25 = SAFE_HEAP_LOAD(228 * 4 | 0, 4, 0) | 0 | 0;
+  $26 = ($25 | 0) == -1;
+  if ($26) {
+   $27 = $15;
+   $28 = _GNUNET_get_log_call_status(1, 0, 19405, 20340, $27) | 0;
+   SAFE_HEAP_STORE(228 * 4 | 0, $28 | 0, 4);
+  }
+  $29 = _GNUNET_get_log_skip() | 0;
+  $30 = ($29 | 0) > 0;
+  if ($30) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $31 = SAFE_HEAP_LOAD(228 * 4 | 0, 4, 0) | 0 | 0;
+  $32 = ($31 | 0) != 0;
+  if (!$32) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, 19405 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, 1403 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+  _GNUNET_abort_();
+ }
+ $33 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($33);
+ $34 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $35 = _gcry_mpi_ec_get_point(46923, $34, 0) | 0;
+ $8 = $35;
+ $36 = $4;
+ _GNUNET_CRYPTO_mpi_scan_unsigned($9, $36, 32);
+ $37 = _gcry_mpi_point_new(0) | 0;
+ $7 = $37;
+ $38 = $7;
+ $39 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $40 = $8;
+ $41 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ _gcry_mpi_ec_mul($38, $39, $40, $41);
+ $42 = $8;
+ _gcry_mpi_point_release($42);
+ $43 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ _gcry_mpi_release($43);
+ $44 = _gcry_mpi_new(256) | 0;
+ $12 = $44;
+ $45 = $12;
+ $46 = $7;
+ $47 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $48 = _gcry_mpi_ec_get_affine($45, 0, $46, $47) | 0;
+ $49 = ($48 | 0) != 0;
+ if ($49) {
+  $16 = 1420;
+  $50 = SAFE_HEAP_LOAD(229 * 4 | 0, 4, 0) | 0 | 0;
+  $51 = ($50 | 0) == -1;
+  if ($51) {
+   $52 = $16;
+   $53 = _GNUNET_get_log_call_status(1, 20980, 19405, 20340, $52) | 0;
+   SAFE_HEAP_STORE(229 * 4 | 0, $53 | 0, 4);
+  }
+  $54 = _GNUNET_get_log_skip() | 0;
+  $55 = ($54 | 0) > 0;
+  if ($55) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $56 = SAFE_HEAP_LOAD(229 * 4 | 0, 4, 0) | 0 | 0;
+   $57 = ($56 | 0) != 0;
+   if ($57) {
+    $58 = _gcry_strerror(0) | 0;
+    SAFE_HEAP_STORE($vararg_buffer6 | 0, 20322 | 0, 4);
+    $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr9 | 0, 19405 | 0, 4);
+    $vararg_ptr10 = $vararg_buffer6 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr10 | 0, 1420 | 0, 4);
+    $vararg_ptr11 = $vararg_buffer6 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr11 | 0, $58 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer6);
+   }
+  }
+  $59 = $7;
+  _gcry_mpi_point_release($59);
+  $60 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  _gcry_ctx_release($60);
+  $3 = -1;
+  $89 = $3;
+  STACKTOP = sp;
+  return $89 | 0;
+ }
+ $61 = $7;
+ _gcry_mpi_point_release($61);
+ $62 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ _gcry_ctx_release($62);
+ SAFE_HEAP_STORE($14 | 0, 32 | 0, 4);
+ $63 = $12;
+ $64 = _gcry_mpi_get_flag($63, 2) | 0;
+ $65 = ($64 | 0) != 0;
+ if ($65) {
+  $17 = 1429;
+  $66 = SAFE_HEAP_LOAD(230 * 4 | 0, 4, 0) | 0 | 0;
+  $67 = ($66 | 0) == -1;
+  if ($67) {
+   $68 = $17;
+   $69 = _GNUNET_get_log_call_status(1, 0, 19405, 20340, $68) | 0;
+   SAFE_HEAP_STORE(230 * 4 | 0, $69 | 0, 4);
+  }
+  $70 = _GNUNET_get_log_skip() | 0;
+  $71 = ($70 | 0) > 0;
+  if ($71) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $72 = SAFE_HEAP_LOAD(230 * 4 | 0, 4, 0) | 0 | 0;
+  $73 = ($72 | 0) != 0;
+  if (!$73) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer12 | 0, 19405 | 0, 4);
+  $vararg_ptr15 = $vararg_buffer12 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr15 | 0, 1429 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer12);
+  _GNUNET_abort_();
+ }
+ $74 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $75 = $12;
+ $76 = _gcry_mpi_print(1, $13, $74, $14, $75) | 0;
+ $77 = 0 == ($76 | 0);
+ if ($77) {
+  $86 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+  $87 = $6;
+  _GNUNET_CRYPTO_hash($13, $86, $87);
+  $88 = $12;
+  _gcry_mpi_release($88);
+  $3 = 1;
+  $89 = $3;
+  STACKTOP = sp;
+  return $89 | 0;
+ }
+ $18 = 1436;
+ $78 = SAFE_HEAP_LOAD(231 * 4 | 0, 4, 0) | 0 | 0;
+ $79 = ($78 | 0) == -1;
+ if ($79) {
+  $80 = $18;
+  $81 = _GNUNET_get_log_call_status(1, 0, 19405, 20340, $80) | 0;
+  SAFE_HEAP_STORE(231 * 4 | 0, $81 | 0, 4);
+ }
+ $82 = _GNUNET_get_log_skip() | 0;
+ $83 = ($82 | 0) > 0;
+ if ($83) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $84 = SAFE_HEAP_LOAD(231 * 4 | 0, 4, 0) | 0 | 0;
+ $85 = ($84 | 0) != 0;
+ if (!$85) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer16 | 0, 19405 | 0, 4);
+ $vararg_ptr19 = $vararg_buffer16 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr19 | 0, 1436 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer16);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+function _GNUNET_CRYPTO_ecc_ecdh($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, 
$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, 
$vararg_buffer = 0, $vararg_buffer12 = 0, $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;
+ var sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 144 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(144 | 0);
+ $vararg_buffer16 = sp + 40 | 0;
+ $vararg_buffer12 = sp + 32 | 0;
+ $vararg_buffer6 = sp + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $9 = sp + 80 | 0;
+ $10 = sp + 76 | 0;
+ $11 = sp + 72 | 0;
+ $13 = sp + 112 | 0;
+ $14 = sp + 64 | 0;
+ $4 = $0;
+ $5 = $1;
+ $6 = $2;
+ $19 = $5;
+ SAFE_HEAP_STORE($vararg_buffer | 0, 32 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $19 | 0, 4);
+ $20 = _gcry_sexp_build($11, 0, 20102, $vararg_buffer) | 0;
+ $21 = 0 != ($20 | 0);
+ if ($21) {
+  $3 = -1;
+  $89 = $3;
+  STACKTOP = sp;
+  return $89 | 0;
+ }
+ $22 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $23 = _gcry_mpi_ec_new($10, $22, 0) | 0;
+ $24 = 0 == ($23 | 0);
+ if (!$24) {
+  $15 = 972;
+  $25 = SAFE_HEAP_LOAD(224 * 4 | 0, 4, 0) | 0 | 0;
+  $26 = ($25 | 0) == -1;
+  if ($26) {
+   $27 = $15;
+   $28 = _GNUNET_get_log_call_status(1, 0, 19405, 20299, $27) | 0;
+   SAFE_HEAP_STORE(224 * 4 | 0, $28 | 0, 4);
+  }
+  $29 = _GNUNET_get_log_skip() | 0;
+  $30 = ($29 | 0) > 0;
+  if ($30) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $31 = SAFE_HEAP_LOAD(224 * 4 | 0, 4, 0) | 0 | 0;
+  $32 = ($31 | 0) != 0;
+  if (!$32) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, 19405 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, 972 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+  _GNUNET_abort_();
+ }
+ $33 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($33);
+ $34 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $35 = _gcry_mpi_ec_get_point(46923, $34, 0) | 0;
+ $8 = $35;
+ $36 = $4;
+ _GNUNET_CRYPTO_mpi_scan_unsigned($9, $36, 32);
+ $37 = _gcry_mpi_point_new(0) | 0;
+ $7 = $37;
+ $38 = $7;
+ $39 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $40 = $8;
+ $41 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ _gcry_mpi_ec_mul($38, $39, $40, $41);
+ $42 = $8;
+ _gcry_mpi_point_release($42);
+ $43 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ _gcry_mpi_release($43);
+ $44 = _gcry_mpi_new(256) | 0;
+ $12 = $44;
+ $45 = $12;
+ $46 = $7;
+ $47 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $48 = _gcry_mpi_ec_get_affine($45, 0, $46, $47) | 0;
+ $49 = ($48 | 0) != 0;
+ if ($49) {
+  $16 = 989;
+  $50 = SAFE_HEAP_LOAD(225 * 4 | 0, 4, 0) | 0 | 0;
+  $51 = ($50 | 0) == -1;
+  if ($51) {
+   $52 = $16;
+   $53 = _GNUNET_get_log_call_status(1, 20980, 19405, 20299, $52) | 0;
+   SAFE_HEAP_STORE(225 * 4 | 0, $53 | 0, 4);
+  }
+  $54 = _GNUNET_get_log_skip() | 0;
+  $55 = ($54 | 0) > 0;
+  if ($55) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $56 = SAFE_HEAP_LOAD(225 * 4 | 0, 4, 0) | 0 | 0;
+   $57 = ($56 | 0) != 0;
+   if ($57) {
+    $58 = _gcry_strerror(0) | 0;
+    SAFE_HEAP_STORE($vararg_buffer6 | 0, 20322 | 0, 4);
+    $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr9 | 0, 19405 | 0, 4);
+    $vararg_ptr10 = $vararg_buffer6 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr10 | 0, 989 | 0, 4);
+    $vararg_ptr11 = $vararg_buffer6 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr11 | 0, $58 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer6);
+   }
+  }
+  $59 = $7;
+  _gcry_mpi_point_release($59);
+  $60 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  _gcry_ctx_release($60);
+  $3 = -1;
+  $89 = $3;
+  STACKTOP = sp;
+  return $89 | 0;
+ }
+ $61 = $7;
+ _gcry_mpi_point_release($61);
+ $62 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ _gcry_ctx_release($62);
+ SAFE_HEAP_STORE($14 | 0, 32 | 0, 4);
+ $63 = $12;
+ $64 = _gcry_mpi_get_flag($63, 2) | 0;
+ $65 = ($64 | 0) != 0;
+ if ($65) {
+  $17 = 998;
+  $66 = SAFE_HEAP_LOAD(226 * 4 | 0, 4, 0) | 0 | 0;
+  $67 = ($66 | 0) == -1;
+  if ($67) {
+   $68 = $17;
+   $69 = _GNUNET_get_log_call_status(1, 0, 19405, 20299, $68) | 0;
+   SAFE_HEAP_STORE(226 * 4 | 0, $69 | 0, 4);
+  }
+  $70 = _GNUNET_get_log_skip() | 0;
+  $71 = ($70 | 0) > 0;
+  if ($71) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $72 = SAFE_HEAP_LOAD(226 * 4 | 0, 4, 0) | 0 | 0;
+  $73 = ($72 | 0) != 0;
+  if (!$73) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer12 | 0, 19405 | 0, 4);
+  $vararg_ptr15 = $vararg_buffer12 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr15 | 0, 998 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer12);
+  _GNUNET_abort_();
+ }
+ $74 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $75 = $12;
+ $76 = _gcry_mpi_print(1, $13, $74, $14, $75) | 0;
+ $77 = 0 == ($76 | 0);
+ if ($77) {
+  $86 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+  $87 = $6;
+  _GNUNET_CRYPTO_hash($13, $86, $87);
+  $88 = $12;
+  _gcry_mpi_release($88);
+  $3 = 1;
+  $89 = $3;
+  STACKTOP = sp;
+  return $89 | 0;
+ }
+ $18 = 1005;
+ $78 = SAFE_HEAP_LOAD(227 * 4 | 0, 4, 0) | 0 | 0;
+ $79 = ($78 | 0) == -1;
+ if ($79) {
+  $80 = $18;
+  $81 = _GNUNET_get_log_call_status(1, 0, 19405, 20299, $80) | 0;
+  SAFE_HEAP_STORE(227 * 4 | 0, $81 | 0, 4);
+ }
+ $82 = _GNUNET_get_log_skip() | 0;
+ $83 = ($82 | 0) > 0;
+ if ($83) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $84 = SAFE_HEAP_LOAD(227 * 4 | 0, 4, 0) | 0 | 0;
+ $85 = ($84 | 0) != 0;
+ if (!$85) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer16 | 0, 19405 | 0, 4);
+ $vararg_ptr19 = $vararg_buffer16 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr19 | 0, 1005 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer16);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+function __gcry_cipher_gcm_setiv($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$093$lcssa144$i = 0, $$093118$i = 0, $$096$lcssa143$i = 0, $$096117$i = 
0, $$1$i = 0, $$194$i = 0, $$197$i = 0, $$3$ph$i = 0, $$3116$i = 0, $$399$ph$i 
= 0, $$399115$i = 0, $$pre = 0, $$pre$i = 0, $$pre$phi140$iZ2D = 0, 
$$pre$phi141$iZ2D = 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, $76 = 0, $77 = 0, 
$78 = 0, $8 = 0, $9 = 0, $scevgep$i = 0, 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;
+ $4 = sp + 8 | 0;
+ $5 = $0 + 56 | 0;
+ $6 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+ $7 = $6 & -7;
+ SAFE_HEAP_STORE($5 >> 0 | 0, $7 | 0, 1);
+ $8 = $0 + 196 | 0;
+ $9 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+ $10 = $9 & -9;
+ SAFE_HEAP_STORE($8 >> 0 | 0, $10 | 0, 1);
+ $11 = __gcry_fips_mode() | 0;
+ $12 = ($11 | 0) == 0;
+ $$pre = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+ if ($12) {
+  $17 = $$pre;
+ } else {
+  $13 = $$pre | 8;
+  SAFE_HEAP_STORE($8 >> 0 | 0, $13 | 0, 1);
+  $17 = $13;
+ }
+ $14 = $0 + 128 | 0;
+ $15 = $0 + 164 | 0;
+ {}
+ SAFE_HEAP_STORE($14 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($14 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($14 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($14 + 12 | 0, 0 | 0 | 0, 4);
+ {}
+ SAFE_HEAP_STORE($15 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($15 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($15 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($15 + 12 | 0, 0 | 0 | 0, 4);
+ $16 = $17 & -8;
+ SAFE_HEAP_STORE($8 >> 0 | 0, $16 | 0, 1);
+ switch ($2 | 0) {
+ case 12:
+  {
+   $60 = $0 + 80 | 0;
+   dest = $60;
+   src = $1;
+   stop = dest + 12 | 0;
+   do {
+    SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+    dest = dest + 1 | 0;
+    src = src + 1 | 0;
+   } while ((dest | 0) < (stop | 0));
+   $61 = $0 + 94 | 0;
+   SAFE_HEAP_STORE($61 >> 0 | 0, 0 | 0, 1);
+   $62 = $0 + 93 | 0;
+   SAFE_HEAP_STORE($62 >> 0 | 0, 0 | 0, 1);
+   $63 = $0 + 92 | 0;
+   SAFE_HEAP_STORE($63 >> 0 | 0, 0 | 0, 1);
+   $64 = $0 + 95 | 0;
+   SAFE_HEAP_STORE($64 >> 0 | 0, 1 | 0, 1);
+   $$pre$phi140$iZ2D = $60;
+   $$pre$phi141$iZ2D = $63;
+   break;
+  }
+ case 0:
+  {
+   $$1$i = 139;
+   STACKTOP = sp;
+   return $$1$i | 0;
+   break;
+  }
+ default:
+  {
+   $18 = $3;
+   $19 = $18;
+   SAFE_HEAP_STORE($19 | 0, 0 | 0, 4);
+   $20 = $18 + 4 | 0;
+   $21 = $20;
+   SAFE_HEAP_STORE($21 | 0, 0 | 0, 4);
+   $22 = $0 + 80 | 0;
+   {}
+   SAFE_HEAP_STORE($22 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($22 + 4 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($22 + 8 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($22 + 12 | 0, 0 | 0 | 0, 4);
+   SAFE_HEAP_STORE($3 | 0, $2 | 0, 4);
+   _do_ghash_buf($0, $22, $1, $2, 1);
+   $23 = $2 << 3;
+   $24 = _llvm_bswap_i32($23 | 0) | 0;
+   $25 = $4 + 12 | 0;
+   SAFE_HEAP_STORE($25 | 0, $24 | 0, 4);
+   $26 = $2 >>> 29;
+   $27 = _llvm_bswap_i32($26 | 0) | 0;
+   $28 = $4 + 8 | 0;
+   SAFE_HEAP_STORE($28 | 0, $27 | 0, 4);
+   $29 = $4 + 4 | 0;
+   SAFE_HEAP_STORE($29 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+   _do_ghash_buf($0, $22, $4, 16, 1);
+   $30 = $3;
+   $31 = $30;
+   SAFE_HEAP_STORE($31 | 0, 0 | 0, 4);
+   $32 = $30 + 4 | 0;
+   $33 = $32;
+   SAFE_HEAP_STORE($33 | 0, 0 | 0, 4);
+   $34 = $4;
+   $35 = $34 & 4;
+   $36 = ($35 | 0) == 0;
+   if ($36) {
+    $$093$lcssa144$i = 16;
+    $$096$lcssa143$i = $4;
+    label = 7;
+   } else {
+    $$093118$i = 16;
+    $$096117$i = $4;
+    while (1) {
+     SAFE_HEAP_STORE($$096117$i >> 0 | 0, 0 | 0, 1);
+     $37 = $$096117$i + 1 | 0;
+     $38 = $$093118$i + -1 | 0;
+     $39 = $37;
+     $40 = $39 & 7;
+     $41 = ($40 | 0) != 0;
+     $42 = ($38 | 0) != 0;
+     $43 = $42 & $41;
+     if ($43) {
+      $$093118$i = $38;
+      $$096117$i = $37;
+     } else {
+      break;
+     }
+    }
+    $44 = $38 >>> 0 < 8;
+    if ($44) {
+     $$3$ph$i = $38;
+     $$399$ph$i = $37;
+    } else {
+     $$093$lcssa144$i = $38;
+     $$096$lcssa143$i = $37;
+     label = 7;
+    }
+   }
+   if ((label | 0) == 7) {
+    $45 = $$093$lcssa144$i + -8 | 0;
+    $46 = $45 & -8;
+    $$194$i = $$093$lcssa144$i;
+    $$197$i = $$096$lcssa143$i;
+    while (1) {
+     $47 = $$197$i;
+     $48 = $47;
+     SAFE_HEAP_STORE($48 | 0, 0 | 0, 4);
+     $49 = $47 + 4 | 0;
+     $50 = $49;
+     SAFE_HEAP_STORE($50 | 0, 0 | 0, 4);
+     $51 = $$194$i + -8 | 0;
+     $52 = $$197$i + 8 | 0;
+     $53 = $51 >>> 0 > 7;
+     if ($53) {
+      $$194$i = $51;
+      $$197$i = $52;
+     } else {
+      break;
+     }
+    }
+    $54 = $46 + 8 | 0;
+    $55 = $45 - $46 | 0;
+    $scevgep$i = $$096$lcssa143$i + $54 | 0;
+    $$3$ph$i = $55;
+    $$399$ph$i = $scevgep$i;
+   }
+   $56 = ($$3$ph$i | 0) == 0;
+   if (!$56) {
+    $$3116$i = $$3$ph$i;
+    $$399115$i = $$399$ph$i;
+    while (1) {
+     SAFE_HEAP_STORE($$399115$i >> 0 | 0, 0 | 0, 1);
+     $57 = $$399115$i + 1 | 0;
+     $58 = $$3116$i + -1 | 0;
+     $59 = ($58 | 0) == 0;
+     if ($59) {
+      break;
+     } else {
+      $$3116$i = $58;
+      $$399115$i = $57;
+     }
+    }
+   }
+   $$pre$i = $0 + 92 | 0;
+   $$pre$phi140$iZ2D = $22;
+   $$pre$phi141$iZ2D = $$pre$i;
+  }
+ }
+ $65 = $0 + 12 | 0;
+ $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+ $67 = $66 + 36 | 0;
+ $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+ $69 = $0 + 496 | 0;
+ $70 = $0 + 180 | 0;
+ FUNCTION_TABLE_iiii[(SAFE_FT_MASK($68 | 0, 127 | 0) | 0) & 127]($69, $70, 
$$pre$phi140$iZ2D) | 0;
+ $71 = SAFE_HEAP_LOAD($$pre$phi141$iZ2D | 0, 4, 0) | 0 | 0;
+ $72 = _llvm_bswap_i32($71 | 0) | 0;
+ $73 = $72 + 1 | 0;
+ $74 = _llvm_bswap_i32($73 | 0) | 0;
+ SAFE_HEAP_STORE($$pre$phi141$iZ2D | 0, $74 | 0, 4);
+ $75 = $0 + 112 | 0;
+ SAFE_HEAP_STORE($75 | 0, 0 | 0, 4);
+ $76 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+ $77 = $76 & -7;
+ $78 = $77 | 2;
+ SAFE_HEAP_STORE($5 >> 0 | 0, $78 | 0, 1);
+ $$1$i = 0;
+ STACKTOP = sp;
+ return $$1$i | 0;
+}
+
+function _double_block($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, $16 = 0, $17 = 0;
+ var $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, $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, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $2 = $1 & 255;
+ $3 = _bitshift64Shl($2 | 0, 0, 56) | 0;
+ $4 = tempRet0;
+ $5 = $0 + 1 | 0;
+ $6 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+ $7 = $6 & 255;
+ $8 = _bitshift64Shl($7 | 0, 0, 48) | 0;
+ $9 = tempRet0;
+ $10 = $8 | $3;
+ $11 = $9 | $4;
+ $12 = $0 + 2 | 0;
+ $13 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = $13 & 255;
+ $15 = _bitshift64Shl($14 | 0, 0, 40) | 0;
+ $16 = tempRet0;
+ $17 = $10 | $15;
+ $18 = $11 | $16;
+ $19 = $0 + 3 | 0;
+ $20 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+ $21 = $20 & 255;
+ $22 = $18 | $21;
+ $23 = $0 + 4 | 0;
+ $24 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+ $25 = $24 & 255;
+ $26 = _bitshift64Shl($25 | 0, 0, 24) | 0;
+ $27 = tempRet0;
+ $28 = $17 | $26;
+ $29 = $22 | $27;
+ $30 = $0 + 5 | 0;
+ $31 = SAFE_HEAP_LOAD($30 >> 0 | 0, 1, 0) | 0 | 0;
+ $32 = $31 & 255;
+ $33 = _bitshift64Shl($32 | 0, 0, 16) | 0;
+ $34 = tempRet0;
+ $35 = $28 | $33;
+ $36 = $29 | $34;
+ $37 = $0 + 6 | 0;
+ $38 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+ $39 = $38 & 255;
+ $40 = _bitshift64Shl($39 | 0, 0, 8) | 0;
+ $41 = tempRet0;
+ $42 = $35 | $40;
+ $43 = $36 | $41;
+ $44 = $0 + 7 | 0;
+ $45 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+ $46 = $45 & 255;
+ $47 = $42 | $46;
+ $48 = $0 + 8 | 0;
+ $49 = SAFE_HEAP_LOAD($48 >> 0 | 0, 1, 0) | 0 | 0;
+ $50 = $49 & 255;
+ $51 = _bitshift64Shl($50 | 0, 0, 56) | 0;
+ $52 = tempRet0;
+ $53 = $0 + 9 | 0;
+ $54 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+ $55 = $54 & 255;
+ $56 = _bitshift64Shl($55 | 0, 0, 48) | 0;
+ $57 = tempRet0;
+ $58 = $56 | $51;
+ $59 = $57 | $52;
+ $60 = $0 + 10 | 0;
+ $61 = SAFE_HEAP_LOAD($60 >> 0 | 0, 1, 0) | 0 | 0;
+ $62 = $61 & 255;
+ $63 = _bitshift64Shl($62 | 0, 0, 40) | 0;
+ $64 = tempRet0;
+ $65 = $58 | $63;
+ $66 = $59 | $64;
+ $67 = $0 + 11 | 0;
+ $68 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+ $69 = $68 & 255;
+ $70 = $66 | $69;
+ $71 = $0 + 12 | 0;
+ $72 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+ $73 = $72 & 255;
+ $74 = _bitshift64Shl($73 | 0, 0, 24) | 0;
+ $75 = tempRet0;
+ $76 = $65 | $74;
+ $77 = $70 | $75;
+ $78 = $0 + 13 | 0;
+ $79 = SAFE_HEAP_LOAD($78 >> 0 | 0, 1, 0) | 0 | 0;
+ $80 = $79 & 255;
+ $81 = _bitshift64Shl($80 | 0, 0, 16) | 0;
+ $82 = tempRet0;
+ $83 = $76 | $81;
+ $84 = $77 | $82;
+ $85 = $0 + 14 | 0;
+ $86 = SAFE_HEAP_LOAD($85 >> 0 | 0, 1, 0) | 0 | 0;
+ $87 = $86 & 255;
+ $88 = _bitshift64Shl($87 | 0, 0, 8) | 0;
+ $89 = tempRet0;
+ $90 = $83 | $88;
+ $91 = $84 | $89;
+ $92 = $0 + 15 | 0;
+ $93 = SAFE_HEAP_LOAD($92 >> 0 | 0, 1, 0) | 0 | 0;
+ $94 = $93 & 255;
+ $95 = $90 | $94;
+ $96 = _bitshift64Ashr($3 | 0, $4 | 0, 63) | 0;
+ $97 = tempRet0;
+ $98 = _bitshift64Shl($47 | 0, $43 | 0, 1) | 0;
+ $99 = tempRet0;
+ $100 = _bitshift64Lshr($50 | 0, 0, 7) | 0;
+ $101 = tempRet0;
+ $102 = $98 | $100;
+ $99 | $101;
+ $103 = _bitshift64Shl($95 | 0, $91 | 0, 1) | 0;
+ $104 = tempRet0;
+ $105 = $96 & 135;
+ $106 = $103 ^ $105;
+ $107 = _bitshift64Lshr($10 | 0, $11 | 0, 55) | 0;
+ $108 = tempRet0;
+ $109 = $107 & 255;
+ SAFE_HEAP_STORE($0 >> 0 | 0, $109 | 0, 1);
+ $110 = _bitshift64Lshr($17 | 0, $18 | 0, 47) | 0;
+ $111 = tempRet0;
+ $112 = $110 & 255;
+ SAFE_HEAP_STORE($5 >> 0 | 0, $112 | 0, 1);
+ $113 = _bitshift64Lshr($17 | 0, $22 | 0, 39) | 0;
+ $114 = tempRet0;
+ $115 = $113 & 255;
+ SAFE_HEAP_STORE($12 >> 0 | 0, $115 | 0, 1);
+ $116 = _bitshift64Lshr($28 | 0, $29 | 0, 31) | 0;
+ $117 = tempRet0;
+ $118 = $116 & 255;
+ SAFE_HEAP_STORE($19 >> 0 | 0, $118 | 0, 1);
+ $119 = _bitshift64Lshr($35 | 0, $36 | 0, 23) | 0;
+ $120 = tempRet0;
+ $121 = $119 & 255;
+ SAFE_HEAP_STORE($23 >> 0 | 0, $121 | 0, 1);
+ $122 = _bitshift64Lshr($42 | 0, $43 | 0, 15) | 0;
+ $123 = tempRet0;
+ $124 = $122 & 255;
+ SAFE_HEAP_STORE($30 >> 0 | 0, $124 | 0, 1);
+ $125 = _bitshift64Lshr($47 | 0, $43 | 0, 7) | 0;
+ $126 = tempRet0;
+ $127 = $125 & 255;
+ SAFE_HEAP_STORE($37 >> 0 | 0, $127 | 0, 1);
+ $128 = $102 & 255;
+ SAFE_HEAP_STORE($44 >> 0 | 0, $128 | 0, 1);
+ $129 = _bitshift64Lshr($58 | 0, $59 | 0, 55) | 0;
+ $130 = tempRet0;
+ $131 = $129 & 255;
+ SAFE_HEAP_STORE($48 >> 0 | 0, $131 | 0, 1);
+ $132 = _bitshift64Lshr($65 | 0, $66 | 0, 47) | 0;
+ $133 = tempRet0;
+ $134 = $132 & 255;
+ SAFE_HEAP_STORE($53 >> 0 | 0, $134 | 0, 1);
+ $135 = _bitshift64Lshr($65 | 0, $70 | 0, 39) | 0;
+ $136 = tempRet0;
+ $137 = $135 & 255;
+ SAFE_HEAP_STORE($60 >> 0 | 0, $137 | 0, 1);
+ $138 = _bitshift64Lshr($76 | 0, $77 | 0, 31) | 0;
+ $139 = tempRet0;
+ $140 = $138 & 255;
+ SAFE_HEAP_STORE($67 >> 0 | 0, $140 | 0, 1);
+ $141 = _bitshift64Lshr($83 | 0, $84 | 0, 23) | 0;
+ $142 = tempRet0;
+ $143 = $141 & 255;
+ SAFE_HEAP_STORE($71 >> 0 | 0, $143 | 0, 1);
+ $144 = _bitshift64Lshr($90 | 0, $91 | 0, 15) | 0;
+ $145 = tempRet0;
+ $146 = $144 & 255;
+ SAFE_HEAP_STORE($78 >> 0 | 0, $146 | 0, 1);
+ $147 = _bitshift64Lshr($95 | 0, $91 | 0, 7) | 0;
+ $148 = tempRet0;
+ $149 = $147 & 255;
+ SAFE_HEAP_STORE($85 >> 0 | 0, $149 | 0, 1);
+ $150 = $106 & 255;
+ SAFE_HEAP_STORE($92 >> 0 | 0, $150 | 0, 1);
+ return;
+}
+
+function __gcry_mpi_rshift($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0101 = 0, $$1109 = 0, $$2105 = 0, $$3103 = 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, $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 $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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+   $13 = $3 >>> 0 < $12 >>> 0;
+   if (!$13) {
+    SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+    return;
+   }
+   $14 = ($3 | 0) == 0;
+   if ($14) {
+    $28 = $12;
+   } else {
+    $15 = $0 + 16 | 0;
+    $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+    $$0101 = 0;
+    while (1) {
+     $17 = $$0101 + $3 | 0;
+     $18 = $16 + ($17 << 2) | 0;
+     $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+     $20 = $16 + ($$0101 << 2) | 0;
+     SAFE_HEAP_STORE($20 | 0, $19 | 0, 4);
+     $21 = $$0101 + 1 | 0;
+     $22 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+     $23 = $22 - $3 | 0;
+     $24 = $21 >>> 0 < $23 >>> 0;
+     if ($24) {
+      $$0101 = $21;
+     } else {
+      break;
+     }
+    }
+    $25 = $16 + ($21 << 2) | 0;
+    SAFE_HEAP_STORE($25 | 0, 0 | 0, 4);
+    $26 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    $27 = $26 - $3 | 0;
+    SAFE_HEAP_STORE($11 | 0, $27 | 0, 4);
+    $28 = $27;
+   }
+   $29 = ($28 | 0) != 0;
+   $30 = ($4 | 0) != 0;
+   $or$cond = $30 & $29;
+   if ($or$cond) {
+    $31 = $0 + 16 | 0;
+    $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+    __gcry_mpih_rshift($32, $32, $28, $4) | 0;
+    $$pre$phiZ2D = $11;
+   } else {
+    $$pre$phiZ2D = $11;
+   }
+  } else {
+   $33 = ($3 | 0) == 0;
+   $34 = $1 + 4 | 0;
+   $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+   $36 = $1 + 8 | 0;
+   $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $38 = $0 + 8 | 0;
+   SAFE_HEAP_STORE($38 | 0, $37 | 0, 4);
+   $39 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $40 = ($39 | 0) < ($35 | 0);
+   if ($33) {
+    if ($40) {
+     __gcry_mpi_resize($0, $35);
+    }
+    $71 = $0 + 4 | 0;
+    SAFE_HEAP_STORE($71 | 0, $35 | 0, 4);
+    $72 = ($35 | 0) == 0;
+    if ($72) {
+     $$pre$phiZ2D = $71;
+     break;
+    }
+    $77 = ($4 | 0) == 0;
+    if (!$77) {
+     $82 = $0 + 16 | 0;
+     $83 = SAFE_HEAP_LOAD($82 | 0, 4, 0) | 0 | 0;
+     $84 = $1 + 16 | 0;
+     $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+     __gcry_mpih_rshift($83, $85, $35, $4) | 0;
+     $$pre$phiZ2D = $71;
+     break;
+    }
+    $78 = $1 + 16 | 0;
+    $79 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+    $80 = $0 + 16 | 0;
+    $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+    $$3103 = 0;
+    while (1) {
+     $86 = $79 + ($$3103 << 2) | 0;
+     $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+     $88 = $81 + ($$3103 << 2) | 0;
+     SAFE_HEAP_STORE($88 | 0, $87 | 0, 4);
+     $89 = $$3103 + 1 | 0;
+     $90 = SAFE_HEAP_LOAD($71 | 0, 4, 0) | 0 | 0;
+     $91 = $89 >>> 0 < $90 >>> 0;
+     if ($91) {
+      $$3103 = $89;
+     } else {
+      $$pre$phiZ2D = $71;
+      break L6;
+     }
+    }
+   }
+   if ($40) {
+    __gcry_mpi_resize($0, $35);
+   }
+   $41 = $0 + 4 | 0;
+   SAFE_HEAP_STORE($41 | 0, $35 | 0, 4);
+   $42 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+   $43 = ($42 | 0) == 0;
+   if ($43) {
+    $54 = 0;
+   } else {
+    $44 = $1 + 16 | 0;
+    $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+    $46 = $0 + 16 | 0;
+    $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+    $$1109 = 0;
+    while (1) {
+     $48 = $45 + ($$1109 << 2) | 0;
+     $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+     $50 = $47 + ($$1109 << 2) | 0;
+     SAFE_HEAP_STORE($50 | 0, $49 | 0, 4);
+     $51 = $$1109 + 1 | 0;
+     $52 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+     $53 = $51 >>> 0 < $52 >>> 0;
+     if ($53) {
+      $$1109 = $51;
+     } else {
+      $54 = $51;
+      break;
+     }
+    }
+   }
+   SAFE_HEAP_STORE($41 | 0, $54 | 0, 4);
+   $55 = $3 >>> 0 < $54 >>> 0;
+   if (!$55) {
+    SAFE_HEAP_STORE($41 | 0, 0 | 0, 4);
+    return;
+   }
+   $56 = $0 + 16 | 0;
+   $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+   $$2105 = 0;
+   while (1) {
+    $58 = $$2105 + $3 | 0;
+    $59 = $57 + ($58 << 2) | 0;
+    $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+    $61 = $57 + ($$2105 << 2) | 0;
+    SAFE_HEAP_STORE($61 | 0, $60 | 0, 4);
+    $62 = $$2105 + 1 | 0;
+    $63 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+    $64 = $63 - $3 | 0;
+    $65 = $62 >>> 0 < $64 >>> 0;
+    if ($65) {
+     $$2105 = $62;
+    } else {
+     break;
+    }
+   }
+   $66 = $57 + ($62 << 2) | 0;
+   SAFE_HEAP_STORE($66 | 0, 0 | 0, 4);
+   $67 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+   $68 = $67 - $3 | 0;
+   SAFE_HEAP_STORE($41 | 0, $68 | 0, 4);
+   $69 = ($68 | 0) != 0;
+   $70 = ($4 | 0) != 0;
+   $or$cond3 = $70 & $69;
+   if ($or$cond3) {
+    __gcry_mpih_rshift($57, $57, $68, $4) | 0;
+    $$pre$phiZ2D = $41;
+   } else {
+    $$pre$phiZ2D = $41;
+   }
+  }
+ } while (0);
+ $73 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+ $74 = ($73 | 0) > 0;
+ if (!$74) {
+  return;
+ }
+ $75 = $0 + 16 | 0;
+ $76 = SAFE_HEAP_LOAD($75 | 0, 4, 0) | 0 | 0;
+ $93 = $73;
+ while (1) {
+  $92 = $93 + -1 | 0;
+  $94 = $76 + ($92 << 2) | 0;
+  $95 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+  $96 = ($95 | 0) == 0;
+  if (!$96) {
+   label = 36;
+   break;
+  }
+  SAFE_HEAP_STORE($$pre$phiZ2D | 0, $92 | 0, 4);
+  $97 = ($93 | 0) > 1;
+  if ($97) {
+   $93 = $92;
+  } else {
+   label = 36;
+   break;
+  }
+ }
+ if ((label | 0) == 36) {
+  return;
+ }
+}
+
+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;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ {}
+ SAFE_HEAP_STORE($5 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($5 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($5 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($5 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($5 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($5 + 20 | 0, 0 | 0 | 0, 4);
+ $7 = __gcry_sexp_find_token($2, 39075, 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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    __gcry_log_printmpi(40979, $16);
+   }
+   $17 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $18 = ($17 | 0) == (0 | 0);
+   if (!$18) {
+    $19 = $17 + 12 | 0;
+    $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 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;
+   SAFE_HEAP_STORE($vararg_buffer | 0, $5 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, $23 | 0, 4);
+   $vararg_ptr2 = $vararg_buffer + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr2 | 0, $24 | 0, 4);
+   $vararg_ptr3 = $vararg_buffer + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr3 | 0, $25 | 0, 4);
+   $vararg_ptr4 = $vararg_buffer + 16 | 0;
+   SAFE_HEAP_STORE($vararg_ptr4 | 0, $26 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer + 20 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, $27 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer + 24 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, 0 | 0, 4);
+   $28 = __gcry_sexp_extract_param($2, 0, 40995, $vararg_buffer) | 0;
+   $29 = ($28 | 0) == 0;
+   if ($29) {
+    $30 = __gcry_get_debug_flag(1) | 0;
+    $31 = ($30 | 0) == 0;
+    if (!$31) {
+     $32 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(41005, $32);
+     $33 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(41021, $33);
+     $34 = __gcry_fips_mode() | 0;
+     $35 = ($34 | 0) == 0;
+     if ($35) {
+      $36 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(41037, $36);
+      $37 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(41053, $37);
+      $38 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(41069, $38);
+      $39 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(41085, $39);
+     }
+    }
+    $40 = __gcry_mpi_new(0) | 0;
+    $41 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    _secret($40, $41, $5);
+    $42 = __gcry_get_debug_flag(1) | 0;
+    $43 = ($42 | 0) == 0;
+    if (!$43) {
+     __gcry_log_printmpi(41101, $40);
+    }
+    $44 = $3 + 12 | 0;
+    $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+    $46 = $45 & 4;
+    $47 = ($46 | 0) == 0;
+    if ($47) {
+     SAFE_HEAP_STORE($vararg_buffer11 | 0, $40 | 0, 4);
+     $57 = __gcry_sexp_build($0, 0, 41137, $vararg_buffer11) | 0;
+     $$021 = $40;
+     $$1 = $57;
+     break;
+    }
+    $48 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($vararg_buffer7 | 0, $51 | 0, 4);
+     $vararg_ptr10 = $vararg_buffer7 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr10 | 0, $54 | 0, 4);
+     $55 = __gcry_sexp_build($0, 0, 41117, $vararg_buffer7) | 0;
+     $56 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($58);
+ $59 = $5 + 4 | 0;
+ $60 = SAFE_HEAP_LOAD($59 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($60);
+ $61 = $5 + 8 | 0;
+ $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($62);
+ $63 = $5 + 12 | 0;
+ $64 = SAFE_HEAP_LOAD($63 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($64);
+ $65 = $5 + 16 | 0;
+ $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($66);
+ $67 = $5 + 20 | 0;
+ $68 = SAFE_HEAP_LOAD($67 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($68);
+ $69 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($vararg_buffer14 | 0, $72 | 0, 4);
+ __gcry_log_debug(41157, $vararg_buffer14);
+ STACKTOP = sp;
+ return $$1 | 0;
+}
+
+function __gcry_mpih_mod_1($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$0 = 0, $$0246 = 0, $$0251 = 0, $$0252 = 0, $$0255282 = 0, 
$$0257$lcssa = 0, $$0257281 = 0, $$0258 = 0, $$0259 = 0, $$0262$lcssa = 0, 
$$0262280 = 0, $$1 = 0, $$1256279 = 0, $$1263278 = 0, $$270 = 0, $$271 = 0, 
$$272 = 0, $$273 = 0, $$274 = 0;
+ var $$275 = 0, $$276 = 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, $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, $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$cond265 = 0;
+ var $or$cond266 = 0, $or$cond267 = 0, $or$cond268 = 0, $or$cond269 = 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 = 45555 + $10 | 0;
+ $12 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+ $13 = $12 & 255;
+ $14 = $13 + $9 | 0;
+ $15 = 32 - $14 | 0;
+ $16 = ($15 | 0) == 0;
+ if ($16) {
+  $83 = $1 + -1 | 0;
+  $84 = $0 + ($83 << 2) | 0;
+  $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+  $86 = $85 >>> 0 < $2 >>> 0;
+  $87 = $1 + -2 | 0;
+  $$273 = $86 ? $85 : 0;
+  $$274 = $86 ? $87 : $83;
+  $88 = ($$274 | 0) > -1;
+  if (!$88) {
+   $$1 = $$273;
+   return $$1 | 0;
+  }
+  $89 = $2 >>> 16;
+  $90 = $2 & 65535;
+  $$1256279 = $$274;
+  $$1263278 = $$273;
+  while (1) {
+   $91 = $0 + ($$1256279 << 2) | 0;
+   $92 = SAFE_HEAP_LOAD($91 | 0, 4, 0) | 0 | 0;
+   $93 = ($$1263278 >>> 0) % ($89 >>> 0) & -1;
+   $94 = ($$1263278 >>> 0) / ($89 >>> 0) & -1;
+   $95 = Math_imul($94, $90) | 0;
+   $96 = $93 << 16;
+   $97 = $92 >>> 16;
+   $98 = $96 | $97;
+   $99 = $98 >>> 0 < $95 >>> 0;
+   $100 = $98 + $2 | 0;
+   if ($99) {
+    $101 = $100 >>> 0 >= $2 >>> 0;
+    $102 = $100 >>> 0 < $95 >>> 0;
+    $or$cond268 = $101 & $102;
+    $103 = $or$cond268 ? $2 : 0;
+    $$275 = $103 + $100 | 0;
+    $$0246 = $$275;
+   } else {
+    $$0246 = $98;
+   }
+   $104 = $$0246 - $95 | 0;
+   $105 = ($104 >>> 0) % ($89 >>> 0) & -1;
+   $106 = ($104 >>> 0) / ($89 >>> 0) & -1;
+   $107 = Math_imul($106, $90) | 0;
+   $108 = $105 << 16;
+   $109 = $92 & 65535;
+   $110 = $108 | $109;
+   $111 = $110 >>> 0 < $107 >>> 0;
+   $112 = $110 + $2 | 0;
+   if ($111) {
+    $113 = $112 >>> 0 >= $2 >>> 0;
+    $114 = $112 >>> 0 < $107 >>> 0;
+    $or$cond269 = $113 & $114;
+    $115 = $or$cond269 ? $2 : 0;
+    $$276 = $115 + $112 | 0;
+    $$0 = $$276;
+   } else {
+    $$0 = $110;
+   }
+   $116 = $$0 - $107 | 0;
+   $117 = $$1256279 + -1 | 0;
+   $118 = ($$1256279 | 0) > 0;
+   if ($118) {
+    $$1256279 = $117;
+    $$1263278 = $116;
+   } else {
+    $$1 = $116;
+    break;
+   }
+  }
+  return $$1 | 0;
+ }
+ $17 = $2 << $15;
+ $18 = $1 + -1 | 0;
+ $19 = $0 + ($18 << 2) | 0;
+ $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+ $21 = $20 >>> $14;
+ $22 = $1 + -2 | 0;
+ $23 = ($22 | 0) > -1;
+ $24 = $17 >>> 16;
+ $25 = $17 & 65535;
+ if ($23) {
+  $$0255282 = $22;
+  $$0257281 = $20;
+  $$0262280 = $21;
+  while (1) {
+   $26 = $0 + ($$0255282 << 2) | 0;
+   $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+   $28 = ($$0262280 >>> 0) % ($24 >>> 0) & -1;
+   $29 = ($$0262280 >>> 0) / ($24 >>> 0) & -1;
+   $30 = Math_imul($29, $25) | 0;
+   $31 = $28 << 16;
+   $32 = $$0257281 << $15;
+   $33 = $27 >>> $14;
+   $34 = $33 | $32;
+   $35 = $34 >>> 16;
+   $36 = $35 | $31;
+   $37 = $36 >>> 0 < $30 >>> 0;
+   $38 = $36 + $17 | 0;
+   if ($37) {
+    $39 = $38 >>> 0 >= $17 >>> 0;
+    $40 = $38 >>> 0 < $30 >>> 0;
+    $or$cond = $39 & $40;
+    $41 = $or$cond ? $17 : 0;
+    $$ = $41 + $38 | 0;
+    $$0259 = $$;
+   } else {
+    $$0259 = $36;
+   }
+   $42 = $$0259 - $30 | 0;
+   $43 = ($42 >>> 0) % ($24 >>> 0) & -1;
+   $44 = ($42 >>> 0) / ($24 >>> 0) & -1;
+   $45 = Math_imul($44, $25) | 0;
+   $46 = $43 << 16;
+   $47 = $34 & 65535;
+   $48 = $46 | $47;
+   $49 = $48 >>> 0 < $45 >>> 0;
+   $50 = $48 + $17 | 0;
+   if ($49) {
+    $51 = $50 >>> 0 >= $17 >>> 0;
+    $52 = $50 >>> 0 < $45 >>> 0;
+    $or$cond265 = $51 & $52;
+    $53 = $or$cond265 ? $17 : 0;
+    $$270 = $53 + $50 | 0;
+    $$0258 = $$270;
+   } else {
+    $$0258 = $48;
+   }
+   $54 = $$0258 - $45 | 0;
+   $55 = $$0255282 + -1 | 0;
+   $56 = ($$0255282 | 0) > 0;
+   if ($56) {
+    $$0255282 = $55;
+    $$0257281 = $27;
+    $$0262280 = $54;
+   } else {
+    $$0257$lcssa = $27;
+    $$0262$lcssa = $54;
+    break;
+   }
+  }
+ } else {
+  $$0257$lcssa = $20;
+  $$0262$lcssa = $21;
+ }
+ $57 = ($$0262$lcssa >>> 0) % ($24 >>> 0) & -1;
+ $58 = ($$0262$lcssa >>> 0) / ($24 >>> 0) & -1;
+ $59 = Math_imul($58, $25) | 0;
+ $60 = $57 << 16;
+ $61 = $$0257$lcssa << $15;
+ $62 = $61 >>> 16;
+ $63 = $60 | $62;
+ $64 = $63 >>> 0 < $59 >>> 0;
+ $65 = $63 + $17 | 0;
+ if ($64) {
+  $66 = $65 >>> 0 >= $17 >>> 0;
+  $67 = $65 >>> 0 < $59 >>> 0;
+  $or$cond266 = $66 & $67;
+  $68 = $or$cond266 ? $17 : 0;
+  $$271 = $68 + $65 | 0;
+  $$0252 = $$271;
+ } else {
+  $$0252 = $63;
+ }
+ $69 = $$0252 - $59 | 0;
+ $70 = ($69 >>> 0) % ($24 >>> 0) & -1;
+ $71 = ($69 >>> 0) / ($24 >>> 0) & -1;
+ $72 = Math_imul($71, $25) | 0;
+ $73 = $70 << 16;
+ $74 = $61 & 65535;
+ $75 = $73 | $74;
+ $76 = $75 >>> 0 < $72 >>> 0;
+ $77 = $75 + $17 | 0;
+ if ($76) {
+  $78 = $77 >>> 0 >= $17 >>> 0;
+  $79 = $77 >>> 0 < $72 >>> 0;
+  $or$cond267 = $78 & $79;
+  $80 = $or$cond267 ? $17 : 0;
+  $$272 = $80 + $77 | 0;
+  $$0251 = $$272;
+ } else {
+  $$0251 = $75;
+ }
+ $81 = $$0251 - $72 | 0;
+ $82 = $81 >>> $15;
+ $$1 = $82;
+ return $$1 | 0;
+}
+
+function __gcry_poly1305_update($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$0 = 0, $$0$lcssa$i73 = 0, $$024$lcssa$i72 = 0, $$02432$i = 0, 
$$02432$i65 = 0, $$025$lcssa$i71 = 0, $$02531$i = 0, $$02531$i66 = 0, 
$$026$ph$i76 = 0, $$02629$i = 0, $$02629$i80 = 0, $$027$ph$i75 = 0, $$02728$i = 
0, $$02728$i81 = 0, $$033$i = 0, $$033$i64 = 0, $$057 = 0, $$1 = 0, $$1$ph$i77 
= 0;
+ var $$130$i = 0, $$130$i79 = 0, $$158 = 0, $$160 = 0, $$2 = 0, $$pre = 0, 
$$pre85 = 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, $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, $9 = 0, 
$or$cond = 0, $scevgep$i = 0, $scevgep$i61 = 0, $scevgep42$i = 0, 
$scevgep42$i62 = 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $0 + 88 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = ($12 | 0) == 0;
+ do {
+  if ($13) {
+   $$0 = $1;
+   $$057 = $2;
+   $$160 = 0;
+  } else {
+   $14 = $10 - $12 | 0;
+   $15 = $14 >>> 0 > $2 >>> 0;
+   $$ = $15 ? $2 : $14;
+   $16 = ($0 + 68 | 0) + $12 | 0;
+   $17 = $16;
+   $18 = $1;
+   $19 = $17 | $18;
+   $20 = $19 & 3;
+   $21 = ($20 | 0) == 0;
+   if ($21) {
+    $22 = $$ >>> 0 > 3;
+    if ($22) {
+     $23 = $$ + -4 | 0;
+     $24 = $23 & -4;
+     $25 = $24 + 4 | 0;
+     $scevgep$i61 = $1 + $25 | 0;
+     $$02432$i65 = $1;
+     $$02531$i66 = $16;
+     $$033$i64 = $$;
+     while (1) {
+      $26 = $$02432$i65 + 4 | 0;
+      $27 = SAFE_HEAP_LOAD($$02432$i65 | 0, 4, 0) | 0 | 0;
+      $28 = $$02531$i66 + 4 | 0;
+      SAFE_HEAP_STORE($$02531$i66 | 0, $27 | 0, 4);
+      $29 = $$033$i64 + -4 | 0;
+      $30 = $29 >>> 0 > 3;
+      if ($30) {
+       $$02432$i65 = $26;
+       $$02531$i66 = $28;
+       $$033$i64 = $29;
+      } else {
+       break;
+      }
+     }
+     $scevgep42$i62 = $16 + $25 | 0;
+     $31 = $23 - $24 | 0;
+     $$0$lcssa$i73 = $31;
+     $$024$lcssa$i72 = $scevgep$i61;
+     $$025$lcssa$i71 = $scevgep42$i62;
+    } else {
+     $$0$lcssa$i73 = $$;
+     $$024$lcssa$i72 = $1;
+     $$025$lcssa$i71 = $16;
+    }
+    $$026$ph$i76 = $$024$lcssa$i72;
+    $$027$ph$i75 = $$025$lcssa$i71;
+    $$1$ph$i77 = $$0$lcssa$i73;
+   } else {
+    $$026$ph$i76 = $1;
+    $$027$ph$i75 = $16;
+    $$1$ph$i77 = $$;
+   }
+   $32 = ($$1$ph$i77 | 0) == 0;
+   if ($32) {
+    $39 = $12;
+   } else {
+    $$02629$i80 = $$026$ph$i76;
+    $$02728$i81 = $$027$ph$i75;
+    $$130$i79 = $$1$ph$i77;
+    while (1) {
+     $33 = $$02629$i80 + 1 | 0;
+     $34 = SAFE_HEAP_LOAD($$02629$i80 >> 0 | 0, 1, 0) | 0 | 0;
+     $35 = $$02728$i81 + 1 | 0;
+     SAFE_HEAP_STORE($$02728$i81 >> 0 | 0, $34 | 0, 1);
+     $36 = $$130$i79 + -1 | 0;
+     $37 = ($36 | 0) == 0;
+     if ($37) {
+      break;
+     } else {
+      $$02629$i80 = $33;
+      $$02728$i81 = $35;
+      $$130$i79 = $36;
+     }
+    }
+    $$pre = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    $39 = $$pre;
+   }
+   $38 = $39 + $$ | 0;
+   SAFE_HEAP_STORE($11 | 0, $38 | 0, 4);
+   $40 = $38 >>> 0 < $10 >>> 0;
+   if ($40) {
+    return;
+   } else {
+    $41 = $1 + $$ | 0;
+    $42 = $2 - $$ | 0;
+    $43 = $0 + 68 | 0;
+    $44 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    $45 = $44 + 8 | 0;
+    $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+    $47 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($46 | 0, 127 | 0) | 0) & 127]($7, 
$43, $10) | 0;
+    SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+    $$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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $54 = $53 + 8 | 0;
+  $55 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+  $56 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($55 | 0, 127 | 0) | 0) & 127]($7, 
$$0, $50) | 0;
+  $$1 = $52;
+  $$158 = $51;
+  $$2 = $56;
+ }
+ $57 = ($$158 | 0) == 0;
+ if (!$57) {
+  $58 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 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 = $65 & $64;
+  if ($or$cond) {
+   $66 = $$158 + -4 | 0;
+   $67 = $66 & -4;
+   $68 = $67 + 4 | 0;
+   $scevgep$i = $$1 + $68 | 0;
+   $$02432$i = $$1;
+   $$02531$i = $59;
+   $$033$i = $$158;
+   while (1) {
+    $69 = $$02432$i + 4 | 0;
+    $70 = SAFE_HEAP_LOAD($$02432$i | 0, 4, 0) | 0 | 0;
+    $71 = $$02531$i + 4 | 0;
+    SAFE_HEAP_STORE($$02531$i | 0, $70 | 0, 4);
+    $72 = $$033$i + -4 | 0;
+    $73 = $72 >>> 0 > 3;
+    if ($73) {
+     $$02432$i = $69;
+     $$02531$i = $71;
+     $$033$i = $72;
+    } else {
+     break;
+    }
+   }
+   $scevgep42$i = $59 + $68 | 0;
+   $74 = $66 - $67 | 0;
+   $75 = ($74 | 0) == 0;
+   if ($75) {
+    $82 = $58;
+   } else {
+    $$02629$i = $scevgep$i;
+    $$02728$i = $scevgep42$i;
+    $$130$i = $74;
+    label = 20;
+   }
+  } else {
+   $$02629$i = $$1;
+   $$02728$i = $59;
+   $$130$i = $$158;
+   label = 20;
+  }
+  if ((label | 0) == 20) {
+   while (1) {
+    label = 0;
+    $76 = $$02629$i + 1 | 0;
+    $77 = SAFE_HEAP_LOAD($$02629$i >> 0 | 0, 1, 0) | 0 | 0;
+    $78 = $$02728$i + 1 | 0;
+    SAFE_HEAP_STORE($$02728$i >> 0 | 0, $77 | 0, 1);
+    $79 = $$130$i + -1 | 0;
+    $80 = ($79 | 0) == 0;
+    if ($80) {
+     break;
+    } else {
+     $$02629$i = $76;
+     $$02728$i = $78;
+     $$130$i = $79;
+     label = 20;
+    }
+   }
+   $$pre85 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+   $82 = $$pre85;
+  }
+  $81 = $82 + $$158 | 0;
+  SAFE_HEAP_STORE($11 | 0, $81 | 0, 4);
+ }
+ $83 = ($$2 | 0) == 0;
+ if ($83) {
+  return;
+ }
+ ___gcry_burn_stack($$2);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD(17671 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 0;
+ if ($2) {
+  SAFE_HEAP_STORE(17671 * 4 | 0, 1 | 0, 4);
+  SAFE_HEAP_STORE(17672 * 4 | 0, 0 | 0, 4);
+ }
+ $3 = ($0 | 0) == 0;
+ if ($3) {
+  STACKTOP = sp;
+  return;
+ }
+ $4 = _gpgrt_lock_lock(12644) | 0;
+ $5 = ($4 | 0) == 0;
+ if (!$5) {
+  $6 = _gpg_strerror($4) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $6 | 0, 4);
+  __gcry_log_fatal(51001, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17672 * 4 | 0, 1 | 0, 4);
+ $7 = SAFE_HEAP_LOAD(17673 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ if ($8) {
+  $9 = __gcry_xmalloc_secure(48) | 0;
+  SAFE_HEAP_STORE(17673 * 4 | 0, $9 | 0, 4);
+  $10 = __gcry_xcalloc(1, 68) | 0;
+  SAFE_HEAP_STORE(17674 * 4 | 0, $10 | 0, 4);
+  SAFE_HEAP_STORE($10 >> 0 | 0, 17 | 0, 1);
+  $11 = $10 + 16 | 0;
+  SAFE_HEAP_STORE($11 >> 0 | 0, 42 | 0, 1);
+  $12 = $10 + 33 | 0;
+  SAFE_HEAP_STORE($12 >> 0 | 0, -119 | 0, 1);
+  $13 = $10 + 50 | 0;
+  SAFE_HEAP_STORE($13 >> 0 | 0, -4 | 0, 1);
+  $14 = __gcry_xcalloc_secure(1, 68) | 0;
+  SAFE_HEAP_STORE(17675 * 4 | 0, $14 | 0, 4);
+  SAFE_HEAP_STORE($14 >> 0 | 0, 17 | 0, 1);
+  $15 = $14 + 16 | 0;
+  SAFE_HEAP_STORE($15 >> 0 | 0, 42 | 0, 1);
+  $16 = $14 + 33 | 0;
+  SAFE_HEAP_STORE($16 >> 0 | 0, -119 | 0, 1);
+  $17 = $14 + 50 | 0;
+  SAFE_HEAP_STORE($17 >> 0 | 0, -4 | 0, 1);
+  $18 = __gcry_xcalloc_secure(1, 68) | 0;
+  SAFE_HEAP_STORE(17676 * 4 | 0, $18 | 0, 4);
+  SAFE_HEAP_STORE($18 >> 0 | 0, 17 | 0, 1);
+  $19 = $18 + 16 | 0;
+  SAFE_HEAP_STORE($19 >> 0 | 0, 42 | 0, 1);
+  $20 = $18 + 33 | 0;
+  SAFE_HEAP_STORE($20 >> 0 | 0, -119 | 0, 1);
+  $21 = $18 + 50 | 0;
+  SAFE_HEAP_STORE($21 >> 0 | 0, -4 | 0, 1);
+ } else {
+  $22 = SAFE_HEAP_LOAD(17674 * 4 | 0, 4, 0) | 0 | 0;
+  $23 = $22 + 52 | 0;
+  $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+  $25 = ($24 | 0) == (0 | 0);
+  if (!$25) {
+   __gcry_assert_failed(51037, 51065, 767, 51079);
+  }
+  $26 = SAFE_HEAP_LOAD(17675 * 4 | 0, 4, 0) | 0 | 0;
+  $27 = $26 + 52 | 0;
+  $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+  $29 = ($28 | 0) == (0 | 0);
+  if (!$29) {
+   __gcry_assert_failed(51104, 51065, 768, 51079);
+  }
+  $30 = SAFE_HEAP_LOAD(17676 * 4 | 0, 4, 0) | 0 | 0;
+  $31 = $30 + 52 | 0;
+  $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+  $33 = ($32 | 0) == (0 | 0);
+  if (!$33) {
+   __gcry_assert_failed(51134, 51065, 769, 51079);
+  }
+  $34 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+  $35 = $34 << 24 >> 24 == 17;
+  if (!$35) {
+   SAFE_HEAP_STORE($vararg_buffer1 | 0, $22 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer1);
+  }
+  $36 = $22 + 16 | 0;
+  $37 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+  $38 = $37 << 24 >> 24 == 42;
+  if (!$38) {
+   SAFE_HEAP_STORE($vararg_buffer1 | 0, $22 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer1);
+  }
+  $39 = $22 + 33 | 0;
+  $40 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+  $41 = $40 << 24 >> 24 == -119;
+  if (!$41) {
+   SAFE_HEAP_STORE($vararg_buffer1 | 0, $22 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer1);
+  }
+  $42 = $22 + 50 | 0;
+  $43 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+  $44 = $43 << 24 >> 24 == -4;
+  if (!$44) {
+   SAFE_HEAP_STORE($vararg_buffer1 | 0, $22 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer1);
+  }
+  $45 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+  $46 = $45 << 24 >> 24 == 17;
+  if (!$46) {
+   SAFE_HEAP_STORE($vararg_buffer4 | 0, $26 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer4);
+  }
+  $47 = $26 + 16 | 0;
+  $48 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+  $49 = $48 << 24 >> 24 == 42;
+  if (!$49) {
+   SAFE_HEAP_STORE($vararg_buffer4 | 0, $26 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer4);
+  }
+  $50 = $26 + 33 | 0;
+  $51 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+  $52 = $51 << 24 >> 24 == -119;
+  if (!$52) {
+   SAFE_HEAP_STORE($vararg_buffer4 | 0, $26 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer4);
+  }
+  $53 = $26 + 50 | 0;
+  $54 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+  $55 = $54 << 24 >> 24 == -4;
+  if (!$55) {
+   SAFE_HEAP_STORE($vararg_buffer4 | 0, $26 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer4);
+  }
+  $56 = SAFE_HEAP_LOAD($30 >> 0 | 0, 1, 0) | 0 | 0;
+  $57 = $56 << 24 >> 24 == 17;
+  if (!$57) {
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $30 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer7);
+  }
+  $58 = $30 + 16 | 0;
+  $59 = SAFE_HEAP_LOAD($58 >> 0 | 0, 1, 0) | 0 | 0;
+  $60 = $59 << 24 >> 24 == 42;
+  if (!$60) {
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $30 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer7);
+  }
+  $61 = $30 + 33 | 0;
+  $62 = SAFE_HEAP_LOAD($61 >> 0 | 0, 1, 0) | 0 | 0;
+  $63 = $62 << 24 >> 24 == -119;
+  if (!$63) {
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $30 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer7);
+  }
+  $64 = $30 + 50 | 0;
+  $65 = SAFE_HEAP_LOAD($64 >> 0 | 0, 1, 0) | 0 | 0;
+  $66 = $65 << 24 >> 24 == -4;
+  if (!$66) {
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $30 | 0, 4);
+   __gcry_log_fatal(51167, $vararg_buffer7);
+  }
+ }
+ SAFE_HEAP_STORE(17672 * 4 | 0, 0 | 0, 4);
+ $67 = _gpgrt_lock_unlock(12644) | 0;
+ $68 = ($67 | 0) == 0;
+ if ($68) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $69 = _gpg_strerror($67) | 0;
+  SAFE_HEAP_STORE($vararg_buffer10 | 0, $69 | 0, 4);
+  __gcry_log_fatal(51213, $vararg_buffer10);
+ }
+}
+
+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$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, $$15 = 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, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $switch$split12D = 0, 
$switch$split2D = 0, $switch$split42D = 0, $switch$split72D = 0, $vararg_buffer 
= 0, label = 0;
+ var 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);
+ $$ = $5 ? $2 : $4;
+ $$15 = $5 ? $1 : $3;
+ $6 = $0 + 48 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $switch$split2D = ($7 | 0) < 6;
+ L1 : do {
+  if ($switch$split2D) {
+   switch ($7 | 0) {
+   case 1:
+    {
+     $8 = $0 + 12 | 0;
+     $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+     $10 = $9 + 36 | 0;
+     $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $12 = $9 + 20 | 0;
+     $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     $14 = $$ >>> 0 > $2 >>> 0;
+     if ($14) {
+      $$0$i = 200;
+      break L1;
+     }
+     $15 = ($$ >>> 0) % ($13 >>> 0) & -1;
+     $16 = ($15 | 0) == 0;
+     if (!$16) {
+      $$0$i = 139;
+      break L1;
+     }
+     $17 = ($$ >>> 0) / ($13 >>> 0) & -1;
+     $18 = $13 >>> 0 > $$ >>> 0;
+     if ($18) {
+      $$0$i17 = 0;
+      STACKTOP = sp;
+      return $$0$i17 | 0;
+     }
+     $19 = $0 + 496 | 0;
+     $$03340$i$i$i = 0;
+     $$03439$i$i$i = $1;
+     $$03538$i$i$i = 0;
+     $$03637$i$i$i = $$15;
+     while (1) {
+      $20 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($11 | 0, 127 | 0) | 0) & 
127]($19, $$03439$i$i$i, $$03637$i$i$i) | 0;
+      $21 = $20 >>> 0 > $$03340$i$i$i >>> 0;
+      $22 = $21 ? $20 : $$03340$i$i$i;
+      $23 = $$03637$i$i$i + $13 | 0;
+      $24 = $$03439$i$i$i + $13 | 0;
+      $25 = $$03538$i$i$i + 1 | 0;
+      $26 = $25 >>> 0 < $17 >>> 0;
+      if ($26) {
+       $$03340$i$i$i = $22;
+       $$03439$i$i$i = $24;
+       $$03538$i$i$i = $25;
+       $$03637$i$i$i = $23;
+      } else {
+       break;
+      }
+     }
+     $27 = ($22 | 0) == 0;
+     if ($27) {
+      $$0$i17 = 0;
+      STACKTOP = sp;
+      return $$0$i17 | 0;
+     }
+     $28 = $22 + 16 | 0;
+     ___gcry_burn_stack($28);
+     $$0$i17 = 0;
+     STACKTOP = sp;
+     return $$0$i17 | 0;
+     break;
+    }
+   case 3:
+    {
+     $29 = __gcry_cipher_cbc_encrypt($0, $1, $2, $$15, $$) | 0;
+     $$0$i = $29;
+     break L1;
+     break;
+    }
+   case 2:
+    {
+     $30 = __gcry_cipher_cfb_encrypt($0, $1, $2, $$15, $$) | 0;
+     $$0$i = $30;
+     break L1;
+     break;
+    }
+   case 5:
+    {
+     $31 = __gcry_cipher_ofb_encrypt($0, $1, $2, $$15, $$) | 0;
+     $$0$i = $31;
+     break L1;
+     break;
+    }
+   case 4:
+    {
+     $38 = $0 + 12 | 0;
+     $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+     $40 = $39 + 44 | 0;
+     $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+     $42 = $0 + 496 | 0;
+     FUNCTION_TABLE_viiii[(SAFE_FT_MASK($41 | 0, 63 | 0) | 0) & 63]($42, $1, 
$$15, $$);
+     $$0$i17 = 0;
+     STACKTOP = sp;
+     return $$0$i17 | 0;
+     break;
+    }
+   case 0:
+    {
+     $43 = __gcry_fips_mode() | 0;
+     $44 = ($43 | 0) == 0;
+     if ($44) {
+      $45 = __gcry_get_debug_flag(0) | 0;
+      $46 = ($45 | 0) == 0;
+      if (!$46) {
+       $47 = ($$15 | 0) == ($1 | 0);
+       if ($47) {
+        $$0$i17 = 0;
+        STACKTOP = sp;
+        return $$0$i17 | 0;
+       }
+       _memmove($1 | 0, $$15 | 0, $$ | 0) | 0;
+       $$0$i17 = 0;
+       STACKTOP = sp;
+       return $$0$i17 | 0;
+      }
+     }
+     __gcry_fips_signal_error(24224, 875, 24233, 0, 24248);
+     $$0$i = 71;
+     break L1;
+     break;
+    }
+   default:
+    {
+     SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+     __gcry_log_fatal(24270, $vararg_buffer);
+    }
+   }
+  } else {
+   $switch$split12D = ($7 | 0) < 9;
+   if ($switch$split12D) {
+    switch ($7 | 0) {
+    case 6:
+     {
+      $32 = __gcry_cipher_ctr_encrypt($0, $1, $2, $$15, $$) | 0;
+      $$0$i = $32;
+      break L1;
+      break;
+     }
+    case 7:
+     {
+      $33 = __gcry_cipher_aeswrap_encrypt($0, $1, $2, $$15, $$) | 0;
+      $$0$i = $33;
+      break L1;
+      break;
+     }
+    case 8:
+     {
+      $34 = __gcry_cipher_ccm_encrypt($0, $1, $2, $$15, $$) | 0;
+      $$0$i = $34;
+      break L1;
+      break;
+     }
+    default:
+     {
+      SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+      __gcry_log_fatal(24270, $vararg_buffer);
+     }
+    }
+   }
+   $switch$split42D = ($7 | 0) < 11;
+   if ($switch$split42D) {
+    switch ($7 | 0) {
+    case 9:
+     {
+      $35 = __gcry_cipher_gcm_encrypt($0, $1, $2, $$15, $$) | 0;
+      $$0$i = $35;
+      break L1;
+      break;
+     }
+    case 10:
+     {
+      $36 = __gcry_cipher_poly1305_encrypt($0, $1, $2, $$15, $$) | 0;
+      $$0$i = $36;
+      break L1;
+      break;
+     }
+    default:
+     {
+      SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+      __gcry_log_fatal(24270, $vararg_buffer);
+     }
+    }
+   }
+   $switch$split72D = ($7 | 0) < 65537;
+   if (!$switch$split72D) {
+    switch ($7 | 0) {
+    case 65537:
+     {
+      $$0$i = 71;
+      break L1;
+      break;
+     }
+    default:
+     {}
+    }
+    SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+    __gcry_log_fatal(24270, $vararg_buffer);
+   }
+   switch ($7 | 0) {
+   case 11:
+    {
+     $37 = __gcry_cipher_ocb_encrypt($0, $1, $2, $$15, $$) | 0;
+     $$0$i = $37;
+     break L1;
+     break;
+    }
+   default:
+    {
+     SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+     __gcry_log_fatal(24270, $vararg_buffer);
+    }
+   }
+  }
+ } while (0);
+ $48 = ($$0$i | 0) != 0;
+ $49 = ($1 | 0) != (0 | 0);
+ $or$cond = $49 & $48;
+ 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_detect_hw_features() {
+ var $$03848$lcssa$i = 0, $$03946$i = 0, $$040$lcssa$i = 0, $$04043$i = 0, 
$$pre$i = 0, $$pre66$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(22823, 23390) | 0;
+ $4 = ($3 | 0) == (0 | 0);
+ if (!$4) {
+  $5 = _fgets($0, 256, $3) | 0;
+  $6 = ($5 | 0) == (0 | 0);
+  if (!$6) {
+   while (1) {
+    $7 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+    $8 = $7 << 24 >> 24;
+    $9 = $8 & 128;
+    $10 = ($9 | 0) == 0;
+    L9 : do {
+     if ($10) {
+      $$04043$i = $0;
+      $11 = $8;
+      $68 = $7;
+      while (1) {
+       $12 = _isspace($11) | 0;
+       $13 = ($12 | 0) == 0;
+       if ($13) {
+        $$040$lcssa$i = $$04043$i;
+        $69 = $68;
+        break L9;
+       }
+       $14 = $$04043$i + 1 | 0;
+       $15 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+       $16 = $15 << 24 >> 24;
+       $17 = $16 & 128;
+       $18 = ($17 | 0) == 0;
+       if ($18) {
+        $$04043$i = $14;
+        $11 = $16;
+        $68 = $15;
+       } else {
+        $$040$lcssa$i = $14;
+        $69 = $15;
+        break;
+       }
+      }
+     } else {
+      $$040$lcssa$i = $0;
+      $69 = $7;
+     }
+    } while (0);
+    $19 = _strchr($$040$lcssa$i, 10) | 0;
+    $20 = ($19 | 0) == (0 | 0);
+    if ($20) {
+     $21 = $69;
+    } else {
+     SAFE_HEAP_STORE($19 >> 0 | 0, 0 | 0, 1);
+     $$pre$i = SAFE_HEAP_LOAD($$040$lcssa$i >> 0 | 0, 1, 0) | 0 | 0;
+     $21 = $$pre$i;
+    }
+    $22 = $21 << 24 >> 24 == 0;
+    L17 : do {
+     if (!$22) {
+      $23 = _strlen($$040$lcssa$i) | 0;
+      $24 = $23 + -1 | 0;
+      $25 = ($24 | 0) > 0;
+      if ($25) {
+       $26 = $$040$lcssa$i + $24 | 0;
+       $$03946$i = $26;
+       while (1) {
+        $27 = SAFE_HEAP_LOAD($$03946$i >> 0 | 0, 1, 0) | 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) {
+          SAFE_HEAP_STORE($$03946$i >> 0 | 0, 0 | 0, 1);
+         }
+        }
+        $33 = $$03946$i + -1 | 0;
+        $34 = $33 >>> 0 > $$040$lcssa$i >>> 0;
+        if ($34) {
+         $$03946$i = $33;
+        } else {
+         break;
+        }
+       }
+       $$pre66$i = SAFE_HEAP_LOAD($$040$lcssa$i >> 0 | 0, 1, 0) | 0 | 0;
+       $35 = $$pre66$i;
+      } else {
+       $35 = $21;
+      }
+      switch ($35 << 24 >> 24) {
+      case 35:
+      case 0:
+       {
+        break L17;
+        break;
+       }
+      default:
+       {}
+      }
+      $36 = _strcmp(22673, $$040$lcssa$i) | 0;
+      $37 = ($36 | 0) == 0;
+      do {
+       if ($37) {
+        $$03848$lcssa$i = 0;
+       } else {
+        $44 = _strcmp(22685, $$040$lcssa$i) | 0;
+        $45 = ($44 | 0) == 0;
+        if ($45) {
+         $$03848$lcssa$i = 1;
+        } else {
+         $46 = _strcmp(22697, $$040$lcssa$i) | 0;
+         $47 = ($46 | 0) == 0;
+         if ($47) {
+          $$03848$lcssa$i = 2;
+         } else {
+          $48 = _strcmp(22709, $$040$lcssa$i) | 0;
+          $49 = ($48 | 0) == 0;
+          if ($49) {
+           $$03848$lcssa$i = 3;
+          } else {
+           $50 = _strcmp(22722, $$040$lcssa$i) | 0;
+           $51 = ($50 | 0) == 0;
+           if ($51) {
+            $$03848$lcssa$i = 4;
+           } else {
+            $52 = _strcmp(22732, $$040$lcssa$i) | 0;
+            $53 = ($52 | 0) == 0;
+            if ($53) {
+             $$03848$lcssa$i = 5;
+            } else {
+             $54 = _strcmp(22743, $$040$lcssa$i) | 0;
+             $55 = ($54 | 0) == 0;
+             if ($55) {
+              $$03848$lcssa$i = 6;
+             } else {
+              $56 = _strcmp(22755, $$040$lcssa$i) | 0;
+              $57 = ($56 | 0) == 0;
+              if ($57) {
+               $$03848$lcssa$i = 7;
+              } else {
+               $58 = _strcmp(22768, $$040$lcssa$i) | 0;
+               $59 = ($58 | 0) == 0;
+               if ($59) {
+                $$03848$lcssa$i = 8;
+                break;
+               }
+               $60 = _strcmp(22780, $$040$lcssa$i) | 0;
+               $61 = ($60 | 0) == 0;
+               if ($61) {
+                $$03848$lcssa$i = 9;
+                break;
+               }
+               $62 = _strcmp(22793, $$040$lcssa$i) | 0;
+               $63 = ($62 | 0) == 0;
+               if ($63) {
+                $$03848$lcssa$i = 10;
+                break;
+               }
+               $64 = _strcmp(22803, $$040$lcssa$i) | 0;
+               $65 = ($64 | 0) == 0;
+               if ($65) {
+                $$03848$lcssa$i = 11;
+                break;
+               }
+               $66 = _strcmp(22814, $$040$lcssa$i) | 0;
+               $67 = ($66 | 0) == 0;
+               if ($67) {
+                $$03848$lcssa$i = 12;
+               } else {
+                break L17;
+               }
+              }
+             }
+            }
+           }
+          }
+         }
+        }
+       }
+      } while (0);
+      $40 = 1164 + ($$03848$lcssa$i << 3) | 0;
+      $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+      $42 = SAFE_HEAP_LOAD(17593 * 4 | 0, 4, 0) | 0 | 0;
+      $43 = $42 | $41;
+      SAFE_HEAP_STORE(17593 * 4 | 0, $43 | 0, 4);
+     }
+    } while (0);
+    $38 = _fgets($0, 256, $3) | 0;
+    $39 = ($38 | 0) == (0 | 0);
+    if ($39) {
+     break;
+    }
+   }
+  }
+  _feof($3) | 0;
+  _fclose($3) | 0;
+ }
+ STACKTOP = sp;
+ return;
+}
+
+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, $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, $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, $fold = 0, $fold157 = 0;
+ var $fold158 = 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 {
+  dest = $4;
+  stop = dest + 16 | 0;
+  do {
+   SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+   dest = dest + 1 | 0;
+  } while ((dest | 0) < (stop | 0));
+  _memcpy($4 | 0, $1 | 0, $2 | 0) | 0;
+  $6 = $4 + $2 | 0;
+  SAFE_HEAP_STORE($6 >> 0 | 0, 1 | 0, 1);
+  $7 = $0 + 56 | 0;
+  SAFE_HEAP_STORE($7 >> 0 | 0, 1 | 0, 1);
+  _poly1305_blocks_ref32($0, $4, 16) | 0;
+  $$0156 = 224;
+ }
+ $8 = $0 + 20 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = $0 + 24 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $0 + 28 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = $0 + 32 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = $0 + 36 | 0;
+ $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 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;
+ $fold = $29 + 5 | 0;
+ $35 = $fold & 67108863;
+ $36 = $34 + $32 | 0;
+ $37 = $36 >>> 26;
+ $38 = $36 & 67108863;
+ $39 = $37 + $22 | 0;
+ $40 = $39 >>> 26;
+ $fold157 = $37 + $20 | 0;
+ $41 = $fold157 & 67108863;
+ $42 = $40 + $25 | 0;
+ $43 = $42 >>> 26;
+ $fold158 = $40 + $23 | 0;
+ $44 = $fold158 & 67108863;
+ $45 = $26 | -67108864;
+ $46 = $45 + $43 | 0;
+ $47 = $46 >>> 31;
+ $48 = $47 + -1 | 0;
+ $49 = $35 & $48;
+ $50 = $38 & $48;
+ $51 = $41 & $48;
+ $52 = $44 & $48;
+ $53 = $48 & $46;
+ $54 = $46 >> 31;
+ $55 = $54 & $31;
+ $56 = $49 | $55;
+ $57 = $54 & $32;
+ $58 = $50 | $57;
+ $59 = $54 & $22;
+ $60 = $51 | $59;
+ $61 = $54 & $25;
+ $62 = $52 | $61;
+ $63 = $54 & $26;
+ $64 = $53 | $63;
+ $65 = $58 << 26;
+ $66 = $56 | $65;
+ $67 = $58 >>> 6;
+ $68 = $60 << 20;
+ $69 = $67 | $68;
+ $70 = $60 >>> 12;
+ $71 = $62 << 14;
+ $72 = $70 | $71;
+ $73 = $62 >>> 18;
+ $74 = $64 << 8;
+ $75 = $73 | $74;
+ $76 = $0 + 40 | 0;
+ $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+ $78 = _i64Add($66 | 0, 0, $77 | 0, 0) | 0;
+ $79 = tempRet0;
+ $80 = $0 + 44 | 0;
+ $81 = SAFE_HEAP_LOAD($80 | 0, 4, 0) | 0 | 0;
+ $82 = _i64Add($69 | 0, 0, $81 | 0, 0) | 0;
+ $83 = tempRet0;
+ $84 = _i64Add($82 | 0, $83 | 0, $79 | 0, 0) | 0;
+ $85 = tempRet0;
+ $86 = $0 + 48 | 0;
+ $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+ $88 = _i64Add($72 | 0, 0, $87 | 0, 0) | 0;
+ $89 = tempRet0;
+ $90 = _i64Add($88 | 0, $89 | 0, $85 | 0, 0) | 0;
+ $91 = tempRet0;
+ $92 = $0 + 52 | 0;
+ $93 = SAFE_HEAP_LOAD($92 | 0, 4, 0) | 0 | 0;
+ $94 = _i64Add($75 | 0, 0, $93 | 0, 0) | 0;
+ $95 = tempRet0;
+ $96 = _i64Add($94 | 0, $95 | 0, $91 | 0, 0) | 0;
+ $97 = tempRet0;
+ $98 = $78 >>> 24;
+ $99 = $98 & 255;
+ $100 = $3 + 3 | 0;
+ SAFE_HEAP_STORE($100 >> 0 | 0, $99 | 0, 1);
+ $101 = $78 >>> 16;
+ $102 = $101 & 255;
+ $103 = $3 + 2 | 0;
+ SAFE_HEAP_STORE($103 >> 0 | 0, $102 | 0, 1);
+ $104 = $78 >>> 8;
+ $105 = $104 & 255;
+ $106 = $3 + 1 | 0;
+ SAFE_HEAP_STORE($106 >> 0 | 0, $105 | 0, 1);
+ $107 = $78 & 255;
+ SAFE_HEAP_STORE($3 >> 0 | 0, $107 | 0, 1);
+ $108 = $3 + 4 | 0;
+ $109 = $84 >>> 24;
+ $110 = $109 & 255;
+ $111 = $3 + 7 | 0;
+ SAFE_HEAP_STORE($111 >> 0 | 0, $110 | 0, 1);
+ $112 = $84 >>> 16;
+ $113 = $112 & 255;
+ $114 = $3 + 6 | 0;
+ SAFE_HEAP_STORE($114 >> 0 | 0, $113 | 0, 1);
+ $115 = $84 >>> 8;
+ $116 = $115 & 255;
+ $117 = $3 + 5 | 0;
+ SAFE_HEAP_STORE($117 >> 0 | 0, $116 | 0, 1);
+ $118 = $84 & 255;
+ SAFE_HEAP_STORE($108 >> 0 | 0, $118 | 0, 1);
+ $119 = $3 + 8 | 0;
+ $120 = $90 >>> 24;
+ $121 = $120 & 255;
+ $122 = $3 + 11 | 0;
+ SAFE_HEAP_STORE($122 >> 0 | 0, $121 | 0, 1);
+ $123 = $90 >>> 16;
+ $124 = $123 & 255;
+ $125 = $3 + 10 | 0;
+ SAFE_HEAP_STORE($125 >> 0 | 0, $124 | 0, 1);
+ $126 = $90 >>> 8;
+ $127 = $126 & 255;
+ $128 = $3 + 9 | 0;
+ SAFE_HEAP_STORE($128 >> 0 | 0, $127 | 0, 1);
+ $129 = $90 & 255;
+ SAFE_HEAP_STORE($119 >> 0 | 0, $129 | 0, 1);
+ $130 = $3 + 12 | 0;
+ $131 = $96 >>> 24;
+ $132 = $131 & 255;
+ $133 = $3 + 15 | 0;
+ SAFE_HEAP_STORE($133 >> 0 | 0, $132 | 0, 1);
+ $134 = $96 >>> 16;
+ $135 = $134 & 255;
+ $136 = $3 + 14 | 0;
+ SAFE_HEAP_STORE($136 >> 0 | 0, $135 | 0, 1);
+ $137 = $96 >>> 8;
+ $138 = $137 & 255;
+ $139 = $3 + 13 | 0;
+ SAFE_HEAP_STORE($139 >> 0 | 0, $138 | 0, 1);
+ $140 = $96 & 255;
+ SAFE_HEAP_STORE($130 >> 0 | 0, $140 | 0, 1);
+ dest = $0;
+ stop = dest + 56 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ STACKTOP = sp;
+ return $$0156 | 0;
+}
+
+function __gcry_sexp_nth($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$$082 = 0, $$0$$sroa_idx31 = 0, $$0$copyload = 0, $$0$copyload33 = 0, 
$$0$copyload39 = 0, $$076$ph$be = 0, $$076$ph179 = 0, $$076$ph91$us = 0, 
$$07887$in145 = 0, $$07887146 = 0, $$079$ph$be = 0, $$079$ph$lcssa = 0, 
$$079$ph178 = 0, $$079$ph90$us = 0, $$079$us$us = 0, $$082$ph177 = 0, $$1 = 0, 
$$177$ph = 0, $$180 = 0, $$180$ph = 0;
+ var $$2 = 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, $44 = 0;
+ var $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;
+ $2 = ($0 | 0) == (0 | 0);
+ if ($2) {
+  $$1 = 0;
+  return $$1 | 0;
+ }
+ $3 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $4 = $3 << 24 >> 24 == 3;
+ if (!$4) {
+  $$1 = 0;
+  return $$1 | 0;
+ }
+ $5 = ($1 | 0) > 0;
+ L7 : do {
+  if ($5) {
+   $$076$ph179 = 0;
+   $$079$ph178 = $0;
+   $$082$ph177 = $1;
+   L8 : while (1) {
+    $$076$ph91$us = $$076$ph179;
+    $$079$ph90$us = $$079$ph178;
+    L10 : while (1) {
+     $$079$us$us = $$079$ph90$us;
+     L12 : while (1) {
+      $6 = $$079$us$us + 1 | 0;
+      $7 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+      switch ($7 << 24 >> 24) {
+      case 0:
+       {
+        $$1 = 0;
+        break L8;
+        break;
+       }
+      case 1:
+       {
+        label = 9;
+        break L10;
+        break;
+       }
+      case 4:
+       {
+        label = 11;
+        break L10;
+        break;
+       }
+      case 3:
+       {
+        break L12;
+        break;
+       }
+      default:
+       {
+        $$079$us$us = $6;
+       }
+      }
+     }
+     $8 = $$076$ph91$us + 1 | 0;
+     $$076$ph91$us = $8;
+     $$079$ph90$us = $6;
+    }
+    if ((label | 0) == 9) {
+     label = 0;
+     $11 = $$079$us$us + 2 | 0;
+     $$0$copyload = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($11 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+     $12 = $$0$copyload & 65535;
+     $13 = $12 + 2 | 0;
+     $14 = $11 + $13 | 0;
+     $15 = $14 + -1 | 0;
+     $$076$ph$be = $$076$ph91$us;
+     $$079$ph$be = $15;
+    } else if ((label | 0) == 11) {
+     label = 0;
+     $19 = $$076$ph91$us + -1 | 0;
+     $$076$ph$be = $19;
+     $$079$ph$be = $6;
+    }
+    $16 = ($$076$ph$be | 0) == 0;
+    $17 = $16 << 31 >> 31;
+    $$$082 = $17 + $$082$ph177 | 0;
+    $18 = ($$$082 | 0) > 0;
+    if ($18) {
+     $$076$ph179 = $$076$ph$be;
+     $$079$ph178 = $$079$ph$be;
+     $$082$ph177 = $$$082;
+    } else {
+     $$079$ph$lcssa = $$079$ph$be;
+     break L7;
+    }
+   }
+   return $$1 | 0;
+  } else {
+   $$079$ph$lcssa = $0;
+  }
+ } while (0);
+ $9 = $$079$ph$lcssa + 1 | 0;
+ $10 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+ L21 : do {
+  switch ($10 << 24 >> 24) {
+  case 1:
+   {
+    $$0$$sroa_idx31 = $$079$ph$lcssa + 2 | 0;
+    $$0$copyload33 = SAFE_HEAP_LOAD($$0$$sroa_idx31 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($$0$$sroa_idx31 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+    $20 = $$0$copyload33 & 65535;
+    $21 = $20 + 6 | 0;
+    $22 = __gcry_malloc($21) | 0;
+    $23 = ($22 | 0) == (0 | 0);
+    if ($23) {
+     $$1 = 0;
+     return $$1 | 0;
+    } else {
+     $42 = $22 + 1 | 0;
+     SAFE_HEAP_STORE($22 >> 0 | 0, 3 | 0, 1);
+     $43 = $20 + 3 | 0;
+     _memcpy($42 | 0, $9 | 0, $43 | 0) | 0;
+     $44 = $42 + $43 | 0;
+     $45 = $44 + 1 | 0;
+     SAFE_HEAP_STORE($44 >> 0 | 0, 4 | 0, 1);
+     SAFE_HEAP_STORE($45 >> 0 | 0, 0 | 0, 1);
+     $$07887$in145 = $22;
+     $$07887146 = $22;
+     break L21;
+    }
+    break;
+   }
+  case 3:
+   {
+    $$177$ph = 1;
+    $$180$ph = $9;
+    L26 : while (1) {
+     $$180 = $$180$ph;
+     L28 : while (1) {
+      $24 = $$180 + 1 | 0;
+      $25 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+      switch ($25 << 24 >> 24) {
+      case 0:
+       {
+        label = 18;
+        break L26;
+        break;
+       }
+      case 3:
+       {
+        label = 16;
+        break L28;
+        break;
+       }
+      case 4:
+       {
+        label = 17;
+        break L28;
+        break;
+       }
+      case 1:
+       {
+        break;
+       }
+      default:
+       {
+        $$180 = $24;
+        continue L28;
+       }
+      }
+      $26 = $$180 + 2 | 0;
+      $$0$copyload39 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($26 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+      $27 = $$0$copyload39 & 65535;
+      $28 = $27 + 2 | 0;
+      $29 = $26 + $28 | 0;
+      $30 = $29 + -1 | 0;
+      $$180 = $30;
+     }
+     if ((label | 0) == 16) {
+      label = 0;
+      $31 = $$177$ph + 1 | 0;
+      $$2 = $31;
+     } else if ((label | 0) == 17) {
+      label = 0;
+      $32 = $$177$ph + -1 | 0;
+      $$2 = $32;
+     }
+     $33 = ($$2 | 0) == 0;
+     if ($33) {
+      break;
+     } else {
+      $$177$ph = $$2;
+      $$180$ph = $24;
+     }
+    }
+    if ((label | 0) == 18) {
+     __gcry_bug(22556, 673, 22609);
+    }
+    $34 = $$180 + 2 | 0;
+    $35 = $34;
+    $36 = $9;
+    $37 = $35 - $36 | 0;
+    $38 = $37 & 65535;
+    $39 = $38 + 1 | 0;
+    $40 = __gcry_malloc($39) | 0;
+    $41 = ($40 | 0) == (0 | 0);
+    if ($41) {
+     $$1 = 0;
+     return $$1 | 0;
+    }
+    _memcpy($40 | 0, $9 | 0, $38 | 0) | 0;
+    $46 = $40 + $38 | 0;
+    SAFE_HEAP_STORE($46 >> 0 | 0, 0 | 0, 1);
+    $$pre = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+    switch ($$pre << 24 >> 24) {
+    case 3:
+     {
+      $$07887$in145 = $40;
+      $$07887146 = $40;
+      break L21;
+      break;
+     }
+    case 0:
+     {
+      break;
+     }
+    default:
+     {
+      $$1 = $40;
+      return $$1 | 0;
+     }
+    }
+    __gcry_sexp_release($40);
+    $$1 = 0;
+    return $$1 | 0;
+    break;
+   }
+  default:
+   {
+    $$1 = 0;
+    return $$1 | 0;
+   }
+  }
+ } while (0);
+ $47 = $$07887$in145 + 1 | 0;
+ $48 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+ $49 = $48 << 24 >> 24 == 4;
+ if (!$49) {
+  $$1 = $$07887146;
+  return $$1 | 0;
+ }
+ __gcry_sexp_release($$07887146);
+ $$1 = 0;
+ return $$1 | 0;
+}
+
+function _sha1_final($0) {
+ $0 = $0 | 0;
+ var $$ = 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, $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, $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, $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, 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 + 4 | 0;
+ $6 = $5;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = $8 + $15 | 0;
+ $17 = $16 >>> 0 < $8 >>> 0;
+ $18 = $17 & 1;
+ $$ = $18 + $13 | 0;
+ $19 = $16 << 3;
+ $20 = $$ << 3;
+ $21 = $16 >>> 29;
+ $22 = $20 | $21;
+ $23 = ($15 | 0) < 56;
+ $24 = $15 + 1 | 0;
+ SAFE_HEAP_STORE($14 | 0, $24 | 0, 4);
+ $25 = $0 + $15 | 0;
+ SAFE_HEAP_STORE($25 >> 0 | 0, -128 | 0, 1);
+ $26 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ if ($23) {
+  $28 = ($26 | 0) < 56;
+  if ($28) {
+   $30 = $26;
+   while (1) {
+    $29 = $30 + 1 | 0;
+    SAFE_HEAP_STORE($14 | 0, $29 | 0, 4);
+    $31 = $0 + $30 | 0;
+    SAFE_HEAP_STORE($31 >> 0 | 0, 0 | 0, 1);
+    $32 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $33 = ($32 | 0) < 56;
+    if ($33) {
+     $30 = $32;
+    } else {
+     break;
+    }
+   }
+  }
+ } else {
+  $27 = ($26 | 0) < 64;
+  if ($27) {
+   $35 = $26;
+   while (1) {
+    $34 = $35 + 1 | 0;
+    SAFE_HEAP_STORE($14 | 0, $34 | 0, 4);
+    $36 = $0 + $35 | 0;
+    SAFE_HEAP_STORE($36 >> 0 | 0, 0 | 0, 1);
+    $37 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 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 {
+   SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+   dest = dest + 4 | 0;
+  } while ((dest | 0) < (stop | 0));
+ }
+ $39 = $0 + 56 | 0;
+ $40 = $$ >>> 21;
+ $41 = $40 & 255;
+ SAFE_HEAP_STORE($39 >> 0 | 0, $41 | 0, 1);
+ $42 = $$ >>> 13;
+ $43 = $42 & 255;
+ $44 = $0 + 57 | 0;
+ SAFE_HEAP_STORE($44 >> 0 | 0, $43 | 0, 1);
+ $45 = $$ >>> 5;
+ $46 = $45 & 255;
+ $47 = $0 + 58 | 0;
+ SAFE_HEAP_STORE($47 >> 0 | 0, $46 | 0, 1);
+ $48 = $22 & 255;
+ $49 = $0 + 59 | 0;
+ SAFE_HEAP_STORE($49 >> 0 | 0, $48 | 0, 1);
+ $50 = $0 + 60 | 0;
+ $51 = $16 >>> 21;
+ $52 = $51 & 255;
+ SAFE_HEAP_STORE($50 >> 0 | 0, $52 | 0, 1);
+ $53 = $16 >>> 13;
+ $54 = $53 & 255;
+ $55 = $0 + 61 | 0;
+ SAFE_HEAP_STORE($55 >> 0 | 0, $54 | 0, 1);
+ $56 = $16 >>> 5;
+ $57 = $56 & 255;
+ $58 = $0 + 62 | 0;
+ SAFE_HEAP_STORE($58 >> 0 | 0, $57 | 0, 1);
+ $59 = $19 & 255;
+ $60 = $0 + 63 | 0;
+ SAFE_HEAP_STORE($60 >> 0 | 0, $59 | 0, 1);
+ _transform_1312($0, $0, 1) | 0;
+ ___gcry_burn_stack(104);
+ $61 = $0 + 160 | 0;
+ $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+ $63 = $62 >>> 24;
+ $64 = $63 & 255;
+ SAFE_HEAP_STORE($0 >> 0 | 0, $64 | 0, 1);
+ $65 = $62 >>> 16;
+ $66 = $65 & 255;
+ $67 = $0 + 1 | 0;
+ SAFE_HEAP_STORE($67 >> 0 | 0, $66 | 0, 1);
+ $68 = $62 >>> 8;
+ $69 = $68 & 255;
+ $70 = $0 + 2 | 0;
+ SAFE_HEAP_STORE($70 >> 0 | 0, $69 | 0, 1);
+ $71 = $62 & 255;
+ $72 = $0 + 3 | 0;
+ SAFE_HEAP_STORE($72 >> 0 | 0, $71 | 0, 1);
+ $73 = $0 + 4 | 0;
+ $74 = $0 + 164 | 0;
+ $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+ $76 = $75 >>> 24;
+ $77 = $76 & 255;
+ SAFE_HEAP_STORE($73 >> 0 | 0, $77 | 0, 1);
+ $78 = $75 >>> 16;
+ $79 = $78 & 255;
+ $80 = $0 + 5 | 0;
+ SAFE_HEAP_STORE($80 >> 0 | 0, $79 | 0, 1);
+ $81 = $75 >>> 8;
+ $82 = $81 & 255;
+ $83 = $0 + 6 | 0;
+ SAFE_HEAP_STORE($83 >> 0 | 0, $82 | 0, 1);
+ $84 = $75 & 255;
+ $85 = $0 + 7 | 0;
+ SAFE_HEAP_STORE($85 >> 0 | 0, $84 | 0, 1);
+ $86 = $0 + 8 | 0;
+ $87 = $0 + 168 | 0;
+ $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+ $89 = $88 >>> 24;
+ $90 = $89 & 255;
+ SAFE_HEAP_STORE($86 >> 0 | 0, $90 | 0, 1);
+ $91 = $88 >>> 16;
+ $92 = $91 & 255;
+ $93 = $0 + 9 | 0;
+ SAFE_HEAP_STORE($93 >> 0 | 0, $92 | 0, 1);
+ $94 = $88 >>> 8;
+ $95 = $94 & 255;
+ $96 = $0 + 10 | 0;
+ SAFE_HEAP_STORE($96 >> 0 | 0, $95 | 0, 1);
+ $97 = $88 & 255;
+ $98 = $0 + 11 | 0;
+ SAFE_HEAP_STORE($98 >> 0 | 0, $97 | 0, 1);
+ $99 = $0 + 12 | 0;
+ $100 = $0 + 172 | 0;
+ $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+ $102 = $101 >>> 24;
+ $103 = $102 & 255;
+ SAFE_HEAP_STORE($99 >> 0 | 0, $103 | 0, 1);
+ $104 = $101 >>> 16;
+ $105 = $104 & 255;
+ $106 = $0 + 13 | 0;
+ SAFE_HEAP_STORE($106 >> 0 | 0, $105 | 0, 1);
+ $107 = $101 >>> 8;
+ $108 = $107 & 255;
+ $109 = $0 + 14 | 0;
+ SAFE_HEAP_STORE($109 >> 0 | 0, $108 | 0, 1);
+ $110 = $101 & 255;
+ $111 = $0 + 15 | 0;
+ SAFE_HEAP_STORE($111 >> 0 | 0, $110 | 0, 1);
+ $112 = $0 + 16 | 0;
+ $113 = $0 + 176 | 0;
+ $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+ $115 = $114 >>> 24;
+ $116 = $115 & 255;
+ SAFE_HEAP_STORE($112 >> 0 | 0, $116 | 0, 1);
+ $117 = $114 >>> 16;
+ $118 = $117 & 255;
+ $119 = $0 + 17 | 0;
+ SAFE_HEAP_STORE($119 >> 0 | 0, $118 | 0, 1);
+ $120 = $114 >>> 8;
+ $121 = $120 & 255;
+ $122 = $0 + 18 | 0;
+ SAFE_HEAP_STORE($122 >> 0 | 0, $121 | 0, 1);
+ $123 = $114 & 255;
+ $124 = $0 + 19 | 0;
+ SAFE_HEAP_STORE($124 >> 0 | 0, $123 | 0, 1);
+ return;
+}
+
+function _rmd160_final($0) {
+ $0 = $0 | 0;
+ var $$ = 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, $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, $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, $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, 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 + 4 | 0;
+ $6 = $5;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = $8 + $15 | 0;
+ $17 = $16 >>> 0 < $8 >>> 0;
+ $18 = $17 & 1;
+ $$ = $18 + $13 | 0;
+ $19 = $16 << 3;
+ $20 = $$ << 3;
+ $21 = $16 >>> 29;
+ $22 = $20 | $21;
+ $23 = ($15 | 0) < 56;
+ $24 = $15 + 1 | 0;
+ SAFE_HEAP_STORE($14 | 0, $24 | 0, 4);
+ $25 = $0 + $15 | 0;
+ SAFE_HEAP_STORE($25 >> 0 | 0, -128 | 0, 1);
+ $26 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ if ($23) {
+  $28 = ($26 | 0) < 56;
+  if ($28) {
+   $30 = $26;
+   while (1) {
+    $29 = $30 + 1 | 0;
+    SAFE_HEAP_STORE($14 | 0, $29 | 0, 4);
+    $31 = $0 + $30 | 0;
+    SAFE_HEAP_STORE($31 >> 0 | 0, 0 | 0, 1);
+    $32 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $33 = ($32 | 0) < 56;
+    if ($33) {
+     $30 = $32;
+    } else {
+     break;
+    }
+   }
+  }
+ } else {
+  $27 = ($26 | 0) < 64;
+  if ($27) {
+   $35 = $26;
+   while (1) {
+    $34 = $35 + 1 | 0;
+    SAFE_HEAP_STORE($14 | 0, $34 | 0, 4);
+    $36 = $0 + $35 | 0;
+    SAFE_HEAP_STORE($36 >> 0 | 0, 0 | 0, 1);
+    $37 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 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 {
+   SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+   dest = dest + 4 | 0;
+  } while ((dest | 0) < (stop | 0));
+ }
+ $39 = $0 + 56 | 0;
+ $40 = $16 >>> 21;
+ $41 = $40 & 255;
+ $42 = $0 + 59 | 0;
+ SAFE_HEAP_STORE($42 >> 0 | 0, $41 | 0, 1);
+ $43 = $16 >>> 13;
+ $44 = $43 & 255;
+ $45 = $0 + 58 | 0;
+ SAFE_HEAP_STORE($45 >> 0 | 0, $44 | 0, 1);
+ $46 = $16 >>> 5;
+ $47 = $46 & 255;
+ $48 = $0 + 57 | 0;
+ SAFE_HEAP_STORE($48 >> 0 | 0, $47 | 0, 1);
+ $49 = $19 & 255;
+ SAFE_HEAP_STORE($39 >> 0 | 0, $49 | 0, 1);
+ $50 = $0 + 60 | 0;
+ $51 = $$ >>> 21;
+ $52 = $51 & 255;
+ $53 = $0 + 63 | 0;
+ SAFE_HEAP_STORE($53 >> 0 | 0, $52 | 0, 1);
+ $54 = $$ >>> 13;
+ $55 = $54 & 255;
+ $56 = $0 + 62 | 0;
+ SAFE_HEAP_STORE($56 >> 0 | 0, $55 | 0, 1);
+ $57 = $$ >>> 5;
+ $58 = $57 & 255;
+ $59 = $0 + 61 | 0;
+ SAFE_HEAP_STORE($59 >> 0 | 0, $58 | 0, 1);
+ $60 = $22 & 255;
+ SAFE_HEAP_STORE($50 >> 0 | 0, $60 | 0, 1);
+ _transform($0, $0, 1) | 0;
+ ___gcry_burn_stack(124);
+ $61 = $0 + 160 | 0;
+ $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+ $63 = $62 >>> 24;
+ $64 = $63 & 255;
+ $65 = $0 + 3 | 0;
+ SAFE_HEAP_STORE($65 >> 0 | 0, $64 | 0, 1);
+ $66 = $62 >>> 16;
+ $67 = $66 & 255;
+ $68 = $0 + 2 | 0;
+ SAFE_HEAP_STORE($68 >> 0 | 0, $67 | 0, 1);
+ $69 = $62 >>> 8;
+ $70 = $69 & 255;
+ $71 = $0 + 1 | 0;
+ SAFE_HEAP_STORE($71 >> 0 | 0, $70 | 0, 1);
+ $72 = $62 & 255;
+ SAFE_HEAP_STORE($0 >> 0 | 0, $72 | 0, 1);
+ $73 = $0 + 4 | 0;
+ $74 = $0 + 164 | 0;
+ $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+ $76 = $75 >>> 24;
+ $77 = $76 & 255;
+ $78 = $0 + 7 | 0;
+ SAFE_HEAP_STORE($78 >> 0 | 0, $77 | 0, 1);
+ $79 = $75 >>> 16;
+ $80 = $79 & 255;
+ $81 = $0 + 6 | 0;
+ SAFE_HEAP_STORE($81 >> 0 | 0, $80 | 0, 1);
+ $82 = $75 >>> 8;
+ $83 = $82 & 255;
+ $84 = $0 + 5 | 0;
+ SAFE_HEAP_STORE($84 >> 0 | 0, $83 | 0, 1);
+ $85 = $75 & 255;
+ SAFE_HEAP_STORE($73 >> 0 | 0, $85 | 0, 1);
+ $86 = $0 + 8 | 0;
+ $87 = $0 + 168 | 0;
+ $88 = SAFE_HEAP_LOAD($87 | 0, 4, 0) | 0 | 0;
+ $89 = $88 >>> 24;
+ $90 = $89 & 255;
+ $91 = $0 + 11 | 0;
+ SAFE_HEAP_STORE($91 >> 0 | 0, $90 | 0, 1);
+ $92 = $88 >>> 16;
+ $93 = $92 & 255;
+ $94 = $0 + 10 | 0;
+ SAFE_HEAP_STORE($94 >> 0 | 0, $93 | 0, 1);
+ $95 = $88 >>> 8;
+ $96 = $95 & 255;
+ $97 = $0 + 9 | 0;
+ SAFE_HEAP_STORE($97 >> 0 | 0, $96 | 0, 1);
+ $98 = $88 & 255;
+ SAFE_HEAP_STORE($86 >> 0 | 0, $98 | 0, 1);
+ $99 = $0 + 12 | 0;
+ $100 = $0 + 172 | 0;
+ $101 = SAFE_HEAP_LOAD($100 | 0, 4, 0) | 0 | 0;
+ $102 = $101 >>> 24;
+ $103 = $102 & 255;
+ $104 = $0 + 15 | 0;
+ SAFE_HEAP_STORE($104 >> 0 | 0, $103 | 0, 1);
+ $105 = $101 >>> 16;
+ $106 = $105 & 255;
+ $107 = $0 + 14 | 0;
+ SAFE_HEAP_STORE($107 >> 0 | 0, $106 | 0, 1);
+ $108 = $101 >>> 8;
+ $109 = $108 & 255;
+ $110 = $0 + 13 | 0;
+ SAFE_HEAP_STORE($110 >> 0 | 0, $109 | 0, 1);
+ $111 = $101 & 255;
+ SAFE_HEAP_STORE($99 >> 0 | 0, $111 | 0, 1);
+ $112 = $0 + 16 | 0;
+ $113 = $0 + 176 | 0;
+ $114 = SAFE_HEAP_LOAD($113 | 0, 4, 0) | 0 | 0;
+ $115 = $114 >>> 24;
+ $116 = $115 & 255;
+ $117 = $0 + 19 | 0;
+ SAFE_HEAP_STORE($117 >> 0 | 0, $116 | 0, 1);
+ $118 = $114 >>> 16;
+ $119 = $118 & 255;
+ $120 = $0 + 18 | 0;
+ SAFE_HEAP_STORE($120 >> 0 | 0, $119 | 0, 1);
+ $121 = $114 >>> 8;
+ $122 = $121 & 255;
+ $123 = $0 + 17 | 0;
+ SAFE_HEAP_STORE($123 >> 0 | 0, $122 | 0, 1);
+ $124 = $114 & 255;
+ SAFE_HEAP_STORE($112 >> 0 | 0, $124 | 0, 1);
+ return;
+}
+
+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, $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, $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, $9 = 0, $switch = 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 + 112 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(112 | 0);
+ $vararg_buffer14 = sp + 40 | 0;
+ $vararg_buffer10 = sp + 32 | 0;
+ $vararg_buffer6 = sp + 24 | 0;
+ $vararg_buffer = sp;
+ $16 = sp + 72 | 0;
+ $17 = sp + 68 | 0;
+ $7 = $0;
+ $8 = $1;
+ $9 = $2;
+ $10 = $3;
+ $11 = $4;
+ $12 = $5;
+ $13 = $6;
+ $23 = $8;
+ $24 = _gcry_mpi_get_nbits($23) | 0;
+ $15 = $24;
+ SAFE_HEAP_STORE($17 | 0, 0 | 0, 4);
+ while (1) {
+  $25 = $15;
+  $26 = $25 - 1 | 0;
+  $27 = ($26 >>> 0) / 8 & -1;
+  $28 = $27 + 1 | 0;
+  $29 = _llvm_stacksave() | 0;
+  $18 = $29;
+  $$alloca_mul = $28;
+  $30 = STACKTOP;
+  STACKTOP = STACKTOP + ((1 * $$alloca_mul | 0) + 15 & -16) | 0;
+  if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow((1 * $$alloca_mul 
| 0) + 15 & -16 | 0);
+  {}
+  $31 = $9;
+  $32 = $10;
+  $33 = $11;
+  $34 = $12;
+  $35 = $13;
+  $36 = $13;
+  $37 = _strlen($36) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $35 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, $37 | 0, 4);
+  $vararg_ptr2 = $vararg_buffer + 8 | 0;
+  SAFE_HEAP_STORE($vararg_ptr2 | 0, $17 | 0, 4);
+  $vararg_ptr3 = $vararg_buffer + 12 | 0;
+  SAFE_HEAP_STORE($vararg_ptr3 | 0, 4 | 0, 4);
+  $vararg_ptr4 = $vararg_buffer + 16 | 0;
+  SAFE_HEAP_STORE($vararg_ptr4 | 0, 0 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer + 20 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, 0 | 0, 4);
+  $38 = _GNUNET_CRYPTO_kdf($30, $28, $31, $32, $33, $34, $vararg_buffer) | 0;
+  $14 = $38;
+  $39 = $14;
+  $40 = 1 == ($39 | 0);
+  if (!$40) {
+   label = 3;
+   break;
+  }
+  $49 = $7;
+  $50 = _gcry_mpi_scan($49, 5, $30, $28, $16) | 0;
+  $14 = $50;
+  $51 = $14;
+  $52 = 0 == ($51 | 0);
+  if (!$52) {
+   label = 11;
+   break;
+  }
+  $61 = $7;
+  $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+  $63 = $15;
+  _gcry_mpi_clear_highbit($62, $63);
+  $64 = $7;
+  $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+  $66 = $15;
+  $67 = _gcry_mpi_test_bit($65, $66) | 0;
+  $68 = 0 == ($67 | 0);
+  if (!$68) {
+   label = 19;
+   break;
+  }
+  $77 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+  $78 = $77 + 1 | 0;
+  SAFE_HEAP_STORE($17 | 0, $78 | 0, 4);
+  $79 = $7;
+  $80 = SAFE_HEAP_LOAD($79 | 0, 4, 0) | 0 | 0;
+  $81 = $8;
+  $82 = _gcry_mpi_cmp($80, $81) | 0;
+  $83 = 0 > ($82 | 0);
+  if ($83) {
+   $22 = 3;
+  } else {
+   $84 = $7;
+   $85 = SAFE_HEAP_LOAD($84 | 0, 4, 0) | 0 | 0;
+   _gcry_mpi_release($85);
+   $22 = 0;
+  }
+  $86 = $18;
+  _llvm_stackrestore($86 | 0);
+  $87 = $22;
+  $switch = $87 >>> 0 < 1;
+  if (!$switch) {
+   label = 30;
+   break;
+  }
+ }
+ if ((label | 0) == 3) {
+  $19 = 155;
+  $41 = SAFE_HEAP_LOAD(234 * 4 | 0, 4, 0) | 0 | 0;
+  $42 = ($41 | 0) == -1;
+  if ($42) {
+   $43 = $19;
+   $44 = _GNUNET_get_log_call_status(1, 0, 20446, 20459, $43) | 0;
+   SAFE_HEAP_STORE(234 * 4 | 0, $44 | 0, 4);
+  }
+  $45 = _GNUNET_get_log_skip() | 0;
+  $46 = ($45 | 0) > 0;
+  if ($46) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $47 = SAFE_HEAP_LOAD(234 * 4 | 0, 4, 0) | 0 | 0;
+  $48 = ($47 | 0) != 0;
+  if (!$48) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer6 | 0, 20446 | 0, 4);
+  $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr9 | 0, 155 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer6);
+  _GNUNET_abort_();
+ } else if ((label | 0) == 11) {
+  $20 = 162;
+  $53 = SAFE_HEAP_LOAD(235 * 4 | 0, 4, 0) | 0 | 0;
+  $54 = ($53 | 0) == -1;
+  if ($54) {
+   $55 = $20;
+   $56 = _GNUNET_get_log_call_status(1, 0, 20446, 20459, $55) | 0;
+   SAFE_HEAP_STORE(235 * 4 | 0, $56 | 0, 4);
+  }
+  $57 = _GNUNET_get_log_skip() | 0;
+  $58 = ($57 | 0) > 0;
+  if ($58) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $59 = SAFE_HEAP_LOAD(235 * 4 | 0, 4, 0) | 0 | 0;
+  $60 = ($59 | 0) != 0;
+  if (!$60) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer10 | 0, 20446 | 0, 4);
+  $vararg_ptr13 = $vararg_buffer10 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr13 | 0, 162 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer10);
+  _GNUNET_abort_();
+ } else if ((label | 0) == 19) {
+  $21 = 165;
+  $69 = SAFE_HEAP_LOAD(236 * 4 | 0, 4, 0) | 0 | 0;
+  $70 = ($69 | 0) == -1;
+  if ($70) {
+   $71 = $21;
+   $72 = _GNUNET_get_log_call_status(1, 0, 20446, 20459, $71) | 0;
+   SAFE_HEAP_STORE(236 * 4 | 0, $72 | 0, 4);
+  }
+  $73 = _GNUNET_get_log_skip() | 0;
+  $74 = ($73 | 0) > 0;
+  if ($74) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $75 = SAFE_HEAP_LOAD(236 * 4 | 0, 4, 0) | 0 | 0;
+  $76 = ($75 | 0) != 0;
+  if (!$76) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer14 | 0, 20446 | 0, 4);
+  $vararg_ptr17 = $vararg_buffer14 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr17 | 0, 165 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer14);
+  _GNUNET_abort_();
+ } else if ((label | 0) == 30) {
+  STACKTOP = sp;
+  return;
+ }
+}
+
+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;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ $8 = $7;
+ $9 = $8;
+ SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+ $10 = $8 + 4 | 0;
+ $11 = $10;
+ SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+ $12 = __gcry_sexp_find_token($2, 39075, 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_log_printmpi(40878, $21);
+   }
+   $22 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $23 = ($22 | 0) == (0 | 0);
+   if (!$23) {
+    $24 = $22 + 12 | 0;
+    $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+    $26 = $25 & 4;
+    $27 = ($26 | 0) == 0;
+    if (!$27) {
+     $$0 = 0;
+     $$018 = 79;
+     break;
+    }
+   }
+   $28 = __gcry_pk_util_preparse_sigval($0, 7604, $4, 0) | 0;
+   $29 = ($28 | 0) == 0;
+   if ($29) {
+    $30 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($vararg_buffer | 0, $5 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, 0 | 0, 4);
+    $31 = __gcry_sexp_extract_param($30, 0, 39073, $vararg_buffer) | 0;
+    $32 = ($31 | 0) == 0;
+    if ($32) {
+     $33 = __gcry_get_debug_flag(1) | 0;
+     $34 = ($33 | 0) == 0;
+     if (!$34) {
+      $35 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      __gcry_log_printmpi(40894, $35);
+     }
+     $36 = $7 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_buffer2 | 0, $7 | 0, 4);
+     $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr5 | 0, $36 | 0, 4);
+     $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+     SAFE_HEAP_STORE($vararg_ptr6 | 0, 0 | 0, 4);
+     $37 = __gcry_sexp_extract_param($2, 0, 39061, $vararg_buffer2) | 0;
+     $38 = ($37 | 0) == 0;
+     if ($38) {
+      $39 = __gcry_get_debug_flag(1) | 0;
+      $40 = ($39 | 0) == 0;
+      if (!$40) {
+       $41 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       __gcry_log_printmpi(40910, $41);
+       $42 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+       __gcry_log_printmpi(40926, $42);
+      }
+      $43 = __gcry_mpi_new(0) | 0;
+      $44 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+      $45 = ($43 | 0) == ($44 | 0);
+      if ($45) {
+       $46 = $43 + 4 | 0;
+       $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+       $48 = $47 << 1;
+       $49 = __gcry_mpi_alloc($48) | 0;
+       $50 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+       $51 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_powm($49, $43, $50, $51);
+       __gcry_mpi_set($43, $49) | 0;
+       __gcry_mpi_free($49);
+      } else {
+       $52 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+       $53 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+       __gcry_mpi_powm($43, $44, $52, $53);
+      }
+      $54 = __gcry_get_debug_flag(1) | 0;
+      $55 = ($54 | 0) == 0;
+      if (!$55) {
+       __gcry_log_printmpi(40942, $43);
+      }
+      $56 = $3 + 32 | 0;
+      $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+      $58 = ($57 | 0) == (0 | 0);
+      if ($58) {
+       $60 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $61 = __gcry_mpi_cmp($43, $60) | 0;
+       $62 = ($61 | 0) != 0;
+       $63 = $62 ? 8 : 0;
+       $$0 = $43;
+       $$018 = $63;
+       break;
+      } else {
+       $59 = FUNCTION_TABLE_iii[(SAFE_FT_MASK($57 | 0, 127 | 0) | 0) & 
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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($64);
+ $65 = $7 + 4 | 0;
+ $66 = SAFE_HEAP_LOAD($65 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($66);
+ $67 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($67);
+ $68 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($68);
+ $69 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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 = 47183;
+ } else {
+  $73 = _gpg_strerror($$018) | 0;
+  $74 = $73;
+ }
+ SAFE_HEAP_STORE($vararg_buffer7 | 0, $74 | 0, 4);
+ __gcry_log_debug(40958, $vararg_buffer7);
+ STACKTOP = sp;
+ return $$018 | 0;
+}
+
+function __gcry_check_version($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $$0$lcssa$i49126 = 0, $$0$lcssa$i65127 = 0, $$011$i$ph$i = 0, 
$$012$lcssa$i48125 = 0, $$01217$i$i30 = 0, $$01217$i44 = 0, $$01217$i60 = 0, 
$$018$i$i29 = 0, $$018$i43 = 0, $$018$i59 = 0, $$098 = 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, $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, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $isdigit$i$i32 = 0, 
$isdigit$i46 = 0, $isdigit$i62 = 0, $isdigit14$i$i = 0, $isdigit14$i38 = 0, 
$isdigit14$i54 = 0, $isdigit16$i$i = 0, $isdigit16$i40 = 0, $isdigit16$i56 = 0, 
$isdigittmp$i$i31 = 0, $isdigittmp$i45 = 0, $isdigittmp$i61 = 0, 
$isdigittmp13$i$i = 0, $isdigittmp13$i37 = 0;
+ var $isdigittmp13$i53 = 0, $isdigittmp15$i$i = 0, $isdigittmp15$i39 = 0, 
$isdigittmp15$i55 = 0, $isdigittmp19$i$i28 = 0, $isdigittmp19$i42 = 0, 
$isdigittmp19$i58 = 0, $or$cond129 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == (0 | 0);
+ if ($1) {
+  _global_init();
+  $$0 = 22224;
+  return $$0 | 0;
+ }
+ $2 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = $2 << 24 >> 24 == 1;
+ if ($3) {
+  $4 = $0 + 1 | 0;
+  $5 = SAFE_HEAP_LOAD($4 >> 0 | 0, 1, 0) | 0 | 0;
+  $6 = $5 << 24 >> 24 == 1;
+  if ($6) {
+   $7 = __gcry_compat_identification() | 0;
+   $$0 = $7;
+   return $$0 | 0;
+  }
+ }
+ _global_init();
+ $8 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = $8 << 24 >> 24 == 48;
+ if ($9) {
+  $10 = $0 + 1 | 0;
+  $11 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 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$i30 = $0;
+  $$018$i$i29 = 0;
+  $isdigittmp19$i$i28 = $isdigittmp15$i$i;
+  while (1) {
+   $14 = $$018$i$i29 * 10 | 0;
+   $15 = $14 + $isdigittmp19$i$i28 | 0;
+   $16 = $$01217$i$i30 + 1 | 0;
+   $17 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+   $18 = $17 << 24 >> 24;
+   $isdigittmp$i$i31 = $18 + -48 | 0;
+   $isdigit$i$i32 = $isdigittmp$i$i31 >>> 0 < 10;
+   if ($isdigit$i$i32) {
+    $$01217$i$i30 = $16;
+    $$018$i$i29 = $15;
+    $isdigittmp19$i$i28 = $isdigittmp$i$i31;
+   } else {
+    break;
+   }
+  }
+  $19 = ($15 | 0) < 0;
+  if ($19) {
+   $$0 = 0;
+   return $$0 | 0;
+  } else {
+   $$011$i$ph$i = $16;
+   $$098 = $15;
+   $20 = $17;
+  }
+ } else {
+  $$011$i$ph$i = $0;
+  $$098 = 0;
+  $20 = $8;
+ }
+ $21 = $20 << 24 >> 24 == 46;
+ if (!$21) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $22 = $$011$i$ph$i + 1 | 0;
+ $23 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+ $24 = $23 << 24 >> 24 == 48;
+ if ($24) {
+  $25 = $$011$i$ph$i + 2 | 0;
+  $26 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+  $27 = $26 << 24 >> 24;
+  $isdigittmp13$i37 = $27 + -48 | 0;
+  $isdigit14$i38 = $isdigittmp13$i37 >>> 0 < 10;
+  if ($isdigit14$i38) {
+   $$0 = 0;
+   return $$0 | 0;
+  }
+ }
+ $28 = $23 << 24 >> 24;
+ $isdigittmp15$i39 = $28 + -48 | 0;
+ $isdigit16$i40 = $isdigittmp15$i39 >>> 0 < 10;
+ if ($isdigit16$i40) {
+  $$01217$i44 = $22;
+  $$018$i43 = 0;
+  $isdigittmp19$i42 = $isdigittmp15$i39;
+  while (1) {
+   $29 = $$018$i43 * 10 | 0;
+   $30 = $29 + $isdigittmp19$i42 | 0;
+   $31 = $$01217$i44 + 1 | 0;
+   $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+   $33 = $32 << 24 >> 24;
+   $isdigittmp$i45 = $33 + -48 | 0;
+   $isdigit$i46 = $isdigittmp$i45 >>> 0 < 10;
+   if ($isdigit$i46) {
+    $$01217$i44 = $31;
+    $$018$i43 = $30;
+    $isdigittmp19$i42 = $isdigittmp$i45;
+   } else {
+    break;
+   }
+  }
+  $34 = ($30 | 0) < 0;
+  if ($34) {
+   $$0 = 0;
+   return $$0 | 0;
+  } else {
+   $$0$lcssa$i49126 = $30;
+   $$012$lcssa$i48125 = $31;
+   $35 = $32;
+  }
+ } else {
+  $$0$lcssa$i49126 = 0;
+  $$012$lcssa$i48125 = $22;
+  $35 = $23;
+ }
+ $36 = $35 << 24 >> 24 == 46;
+ if (!$36) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $37 = $$012$lcssa$i48125 + 1 | 0;
+ $38 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+ $39 = $38 << 24 >> 24 == 48;
+ if ($39) {
+  $40 = $$012$lcssa$i48125 + 2 | 0;
+  $41 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+  $42 = $41 << 24 >> 24;
+  $isdigittmp13$i53 = $42 + -48 | 0;
+  $isdigit14$i54 = $isdigittmp13$i53 >>> 0 < 10;
+  if ($isdigit14$i54) {
+   $$0 = 0;
+   return $$0 | 0;
+  }
+ }
+ $43 = $38 << 24 >> 24;
+ $isdigittmp15$i55 = $43 + -48 | 0;
+ $isdigit16$i56 = $isdigittmp15$i55 >>> 0 < 10;
+ if ($isdigit16$i56) {
+  $$01217$i60 = $37;
+  $$018$i59 = 0;
+  $isdigittmp19$i58 = $isdigittmp15$i55;
+  while (1) {
+   $44 = $$018$i59 * 10 | 0;
+   $45 = $44 + $isdigittmp19$i58 | 0;
+   $46 = $$01217$i60 + 1 | 0;
+   $47 = SAFE_HEAP_LOAD($46 >> 0 | 0, 1, 0) | 0 | 0;
+   $48 = $47 << 24 >> 24;
+   $isdigittmp$i61 = $48 + -48 | 0;
+   $isdigit$i62 = $isdigittmp$i61 >>> 0 < 10;
+   if ($isdigit$i62) {
+    $$01217$i60 = $46;
+    $$018$i59 = $45;
+    $isdigittmp19$i58 = $isdigittmp$i61;
+   } else {
+    break;
+   }
+  }
+  $49 = ($45 | 0) < 0;
+  if ($49) {
+   $$0 = 0;
+   return $$0 | 0;
+  } else {
+   $$0$lcssa$i65127 = $45;
+  }
+ } else {
+  $$0$lcssa$i65127 = 0;
+ }
+ $50 = ($$098 | 0) < 1;
+ if ($50) {
+  $$0 = 22224;
+  return $$0 | 0;
+ }
+ $51 = ($$098 | 0) == 1;
+ if ($51) {
+  $52 = ($$0$lcssa$i49126 | 0) < 7;
+  if ($52) {
+   $$0 = 22224;
+   return $$0 | 0;
+  }
+  $53 = ($$0$lcssa$i49126 | 0) == 7;
+  $54 = ($$0$lcssa$i65127 | 0) == 0;
+  $or$cond129 = $53 & $54;
+  if ($or$cond129) {
+   $$0 = 22224;
+   return $$0 | 0;
+  }
+ }
+ $$0 = 0;
+ return $$0 | 0;
+}
+
+function __gcry_cipher_cmac_set_subkeys($0) {
+ $0 = $0 | 0;
+ var $$06684$us$i = 0, $$067$lcssa99$i = 0, $$06780$i = 0, $$068$lcssa98$i = 
0, $$06879$i = 0, $$085$us$i = 0, $$1$i = 0, $$169$i = 0, $$3$ph$i = 0, 
$$371$ph$i = 0, $$37177$i = 0, $$378$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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $3 + 20 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $5 >>> 0 > 16;
+ if ($6) {
+  __gcry_bug(46529, 113, 46543);
+ }
+ _memset($1 | 0, 0, $5 | 0) | 0;
+ $7 = $3 + 36 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $0 + 496 | 0;
+ $10 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 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) {
+  $$06684$us$i = $12;
+  $$085$us$i = 0;
+  while (1) {
+   $20 = $1 + $$06684$us$i | 0;
+   $21 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+   $22 = $$085$us$i & 255;
+   $23 = $21 & 255;
+   $24 = $23 << 1;
+   $25 = ($21 & 255) >>> 7;
+   $26 = $24 | $22;
+   $27 = $26 & 255;
+   SAFE_HEAP_STORE($20 >> 0 | 0, $27 | 0, 1);
+   $28 = ($16 + 1 | 0) + $$06684$us$i | 0;
+   SAFE_HEAP_STORE($28 >> 0 | 0, $27 | 0, 1);
+   $29 = $$06684$us$i + -1 | 0;
+   $30 = ($$06684$us$i | 0) > 0;
+   if ($30) {
+    $$06684$us$i = $29;
+    $$085$us$i = $25;
+   } else {
+    break;
+   }
+  }
+  $31 = $25 << 24 >> 24 != 0;
+  $32 = $31 ? $14 : 0;
+  $33 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+  $34 = $33 & 255;
+  $35 = $34 ^ $32;
+  $36 = $35 & 255;
+  $37 = ($16 + 1 | 0) + $12 | 0;
+  SAFE_HEAP_STORE($37 >> 0 | 0, $36 | 0, 1);
+  $38 = $35 << 1;
+  $39 = ($36 & 255) >>> 7;
+  $40 = $38 & 255;
+  SAFE_HEAP_STORE($15 >> 0 | 0, $40 | 0, 1);
+  $41 = ($16 + 17 | 0) + $12 | 0;
+  SAFE_HEAP_STORE($41 >> 0 | 0, $40 | 0, 1);
+  $42 = ($12 | 0) > 0;
+  if ($42) {
+   $43 = $5 + -2 | 0;
+   $72 = $43;
+   $74 = $39;
+   while (1) {
+    $$phi$trans$insert$i = $1 + $72 | 0;
+    $$pre$i = SAFE_HEAP_LOAD($$phi$trans$insert$i >> 0 | 0, 1, 0) | 0 | 0;
+    $73 = $74 & 255;
+    $75 = $$pre$i & 255;
+    $76 = $75 << 1;
+    $77 = ($$pre$i & 255) >>> 7;
+    $78 = $76 | $73;
+    $79 = $78 & 255;
+    SAFE_HEAP_STORE($$phi$trans$insert$i >> 0 | 0, $79 | 0, 1);
+    $80 = ($16 + 17 | 0) + $72 | 0;
+    SAFE_HEAP_STORE($80 >> 0 | 0, $79 | 0, 1);
+    $81 = $72 + -1 | 0;
+    $82 = ($72 | 0) > 0;
+    if ($82) {
+     $72 = $81;
+     $74 = $77;
+    } else {
+     break;
+    }
+   }
+   $$pre = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+   $$lcssa2 = $77;
+   $86 = $$pre;
+  } else {
+   $$lcssa2 = $39;
+   $86 = $40;
+  }
+  $83 = $$lcssa2 << 24 >> 24 != 0;
+  $84 = $83 ? $14 : 0;
+  $85 = $86 & 255;
+  $87 = $85 ^ $84;
+  $88 = $87 & 255;
+  SAFE_HEAP_STORE($15 >> 0 | 0, $88 | 0, 1);
+  SAFE_HEAP_STORE($41 >> 0 | 0, $88 | 0, 1);
+ } else {
+  $17 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+  $18 = ($16 + 1 | 0) + $12 | 0;
+  SAFE_HEAP_STORE($18 >> 0 | 0, $17 | 0, 1);
+  $19 = ($16 + 17 | 0) + $12 | 0;
+  SAFE_HEAP_STORE($19 >> 0 | 0, $17 | 0, 1);
+ }
+ $44 = $1;
+ $45 = $44 & 4;
+ $46 = ($45 | 0) == 0;
+ if ($46) {
+  $$067$lcssa99$i = 16;
+  $$068$lcssa98$i = $1;
+  label = 11;
+ } else {
+  $$06780$i = 16;
+  $$06879$i = $1;
+  while (1) {
+   SAFE_HEAP_STORE($$06879$i >> 0 | 0, 0 | 0, 1);
+   $47 = $$06879$i + 1 | 0;
+   $48 = $$06780$i + -1 | 0;
+   $49 = $47;
+   $50 = $49 & 7;
+   $51 = ($50 | 0) != 0;
+   $52 = ($48 | 0) != 0;
+   $53 = $52 & $51;
+   if ($53) {
+    $$06780$i = $48;
+    $$06879$i = $47;
+   } else {
+    break;
+   }
+  }
+  $54 = $48 >>> 0 < 8;
+  if ($54) {
+   $$3$ph$i = $48;
+   $$371$ph$i = $47;
+  } else {
+   $$067$lcssa99$i = $48;
+   $$068$lcssa98$i = $47;
+   label = 11;
+  }
+ }
+ if ((label | 0) == 11) {
+  $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;
+   SAFE_HEAP_STORE($58 | 0, 0 | 0, 4);
+   $59 = $57 + 4 | 0;
+   $60 = $59;
+   SAFE_HEAP_STORE($60 | 0, 0 | 0, 4);
+   $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;
+  $$3$ph$i = $65;
+  $$371$ph$i = $scevgep$i;
+ }
+ $66 = ($$3$ph$i | 0) == 0;
+ if (!$66) {
+  $$37177$i = $$371$ph$i;
+  $$378$i = $$3$ph$i;
+  while (1) {
+   SAFE_HEAP_STORE($$37177$i >> 0 | 0, 0 | 0, 1);
+   $67 = $$37177$i + 1 | 0;
+   $68 = $$378$i + -1 | 0;
+   $69 = ($68 | 0) == 0;
+   if ($69) {
+    break;
+   } else {
+    $$37177$i = $67;
+    $$378$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_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(52754, $0);
+ }
+ $12 = $1 + 32 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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;
+ }
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ $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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $22 = $1 + 4 | 0;
+ $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $24 = $1 + 8 | 0;
+ $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+ $26 = $1 + 12 | 0;
+ $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+ $28 = $1 + 16 | 0;
+ $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 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 = $0 + 12 | 0;
+ $36 = $1 + 56 | 0;
+ $37 = $1 + 20 | 0;
+ $$074 = 0;
+ L7 : while (1) {
+  if ($or$cond) {
+   $$175$us = $$074;
+   while (1) {
+    $38 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_free($38);
+    SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+    if ($34) {
+     $$3 = 70;
+     break L7;
+    }
+    $39 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+    $40 = $39 & 4;
+    $41 = ($40 | 0) == 0;
+    if ($41) {
+     $$3 = 70;
+     break L7;
+    }
+    $42 = __gcry_mpi_get_opaque($0, $9) | 0;
+    $43 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    $44 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+    $45 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_ec_mul_point($7, $51, $37, $30);
+    $52 = __gcry_mpi_ec_get_affine($20, 0, $7, $30) | 0;
+    $53 = ($52 | 0) == 0;
+    if (!$53) {
+     label = 12;
+     break L7;
+    }
+    $54 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_free($57);
+    SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+    $58 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    $59 = __gcry_dsa_gen_k($58, 1) | 0;
+    SAFE_HEAP_STORE($6 | 0, $59 | 0, 4);
+    __gcry_mpi_ec_mul_point($7, $59, $37, $30);
+    $60 = __gcry_mpi_ec_get_affine($20, 0, $7, $30) | 0;
+    $61 = ($60 | 0) == 0;
+    if (!$61) {
+     label = 12;
+     break L7;
+    }
+    $64 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+  $68 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mulm($17, $67, $2, $68);
+  $69 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $70 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_addm($18, $69, $17, $70);
+  $71 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $72 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_invm($19, $71, $72) | 0;
+  $73 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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 = 16;
+   break;
+  }
+ }
+ if ((label | 0) == 12) {
+  $62 = __gcry_get_debug_flag(1) | 0;
+  $63 = ($62 | 0) == 0;
+  if ($63) {
+   $$3 = 8;
+  } else {
+   __gcry_log_debug(52831, $vararg_buffer);
+   $$3 = 8;
+  }
+ } else if ((label | 0) == 16) {
+  $76 = __gcry_get_debug_flag(1) | 0;
+  $77 = ($76 | 0) == 0;
+  if ($77) {
+   $$3 = 0;
+  } else {
+   __gcry_log_printmpi(52772, $2);
+   __gcry_log_printmpi(52793, $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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($78);
+ $79 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 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_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$i = 0, $$03340$i$i$i = 0, $$03439$i$i$i = 0, $$03538$i$i$i = 
0, $$03637$i$i$i = 0, $$8 = 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, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 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);
+ $$ = $5 ? $1 : $3;
+ $$8 = $5 ? $2 : $4;
+ $6 = $0 + 48 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $switch$split2D = ($7 | 0) < 6;
+ L1 : do {
+  if ($switch$split2D) {
+   switch ($7 | 0) {
+   case 1:
+    {
+     $8 = $0 + 12 | 0;
+     $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+     $10 = $9 + 40 | 0;
+     $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $12 = $9 + 20 | 0;
+     $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     $14 = $$8 >>> 0 > $2 >>> 0;
+     if ($14) {
+      $$0$i = 200;
+      break L1;
+     }
+     $15 = ($$8 >>> 0) % ($13 >>> 0) & -1;
+     $16 = ($15 | 0) == 0;
+     if (!$16) {
+      $$0$i = 139;
+      break L1;
+     }
+     $17 = ($$8 >>> 0) / ($13 >>> 0) & -1;
+     $18 = $13 >>> 0 > $$8 >>> 0;
+     if ($18) {
+      $$0$i = 0;
+      break L1;
+     }
+     $19 = $0 + 496 | 0;
+     $$03340$i$i$i = 0;
+     $$03439$i$i$i = $1;
+     $$03538$i$i$i = 0;
+     $$03637$i$i$i = $$;
+     while (1) {
+      $20 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($11 | 0, 127 | 0) | 0) & 
127]($19, $$03439$i$i$i, $$03637$i$i$i) | 0;
+      $21 = $20 >>> 0 > $$03340$i$i$i >>> 0;
+      $22 = $21 ? $20 : $$03340$i$i$i;
+      $23 = $$03637$i$i$i + $13 | 0;
+      $24 = $$03439$i$i$i + $13 | 0;
+      $25 = $$03538$i$i$i + 1 | 0;
+      $26 = $25 >>> 0 < $17 >>> 0;
+      if ($26) {
+       $$03340$i$i$i = $22;
+       $$03439$i$i$i = $24;
+       $$03538$i$i$i = $25;
+       $$03637$i$i$i = $23;
+      } else {
+       break;
+      }
+     }
+     $27 = ($22 | 0) == 0;
+     if ($27) {
+      $$0$i = 0;
+      break L1;
+     }
+     $28 = $22 + 16 | 0;
+     ___gcry_burn_stack($28);
+     $$0$i = 0;
+     break L1;
+     break;
+    }
+   case 3:
+    {
+     $29 = __gcry_cipher_cbc_decrypt($0, $1, $2, $$, $$8) | 0;
+     $$0$i = $29;
+     break L1;
+     break;
+    }
+   case 2:
+    {
+     $30 = __gcry_cipher_cfb_decrypt($0, $1, $2, $$, $$8) | 0;
+     $$0$i = $30;
+     break L1;
+     break;
+    }
+   case 5:
+    {
+     $31 = __gcry_cipher_ofb_encrypt($0, $1, $2, $$, $$8) | 0;
+     $$0$i = $31;
+     break L1;
+     break;
+    }
+   case 4:
+    {
+     $38 = $0 + 12 | 0;
+     $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+     $40 = $39 + 48 | 0;
+     $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+     $42 = $0 + 496 | 0;
+     FUNCTION_TABLE_viiii[(SAFE_FT_MASK($41 | 0, 63 | 0) | 0) & 63]($42, $1, 
$$, $$8);
+     $$0$i = 0;
+     break L1;
+     break;
+    }
+   case 0:
+    {
+     $43 = __gcry_fips_mode() | 0;
+     $44 = ($43 | 0) == 0;
+     if ($44) {
+      $45 = __gcry_get_debug_flag(0) | 0;
+      $46 = ($45 | 0) == 0;
+      if (!$46) {
+       $47 = ($$ | 0) == ($1 | 0);
+       if ($47) {
+        $$0$i = 0;
+        break L1;
+       }
+       _memmove($1 | 0, $$ | 0, $$8 | 0) | 0;
+       $$0$i = 0;
+       break L1;
+      }
+     }
+     __gcry_fips_signal_error(24224, 992, 24303, 0, 24248);
+     $$0$i = 71;
+     break L1;
+     break;
+    }
+   default:
+    {
+     SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+     __gcry_log_fatal(24318, $vararg_buffer);
+    }
+   }
+  } else {
+   $switch$split12D = ($7 | 0) < 9;
+   if ($switch$split12D) {
+    switch ($7 | 0) {
+    case 6:
+     {
+      $32 = __gcry_cipher_ctr_encrypt($0, $1, $2, $$, $$8) | 0;
+      $$0$i = $32;
+      break L1;
+      break;
+     }
+    case 7:
+     {
+      $33 = __gcry_cipher_aeswrap_decrypt($0, $1, $2, $$, $$8) | 0;
+      $$0$i = $33;
+      break L1;
+      break;
+     }
+    case 8:
+     {
+      $34 = __gcry_cipher_ccm_decrypt($0, $1, $2, $$, $$8) | 0;
+      $$0$i = $34;
+      break L1;
+      break;
+     }
+    default:
+     {
+      SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+      __gcry_log_fatal(24318, $vararg_buffer);
+     }
+    }
+   }
+   $switch$split42D = ($7 | 0) < 11;
+   if ($switch$split42D) {
+    switch ($7 | 0) {
+    case 9:
+     {
+      $35 = __gcry_cipher_gcm_decrypt($0, $1, $2, $$, $$8) | 0;
+      $$0$i = $35;
+      break L1;
+      break;
+     }
+    case 10:
+     {
+      $36 = __gcry_cipher_poly1305_decrypt($0, $1, $2, $$, $$8) | 0;
+      $$0$i = $36;
+      break L1;
+      break;
+     }
+    default:
+     {
+      SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+      __gcry_log_fatal(24318, $vararg_buffer);
+     }
+    }
+   }
+   $switch$split72D = ($7 | 0) < 65537;
+   if (!$switch$split72D) {
+    switch ($7 | 0) {
+    case 65537:
+     {
+      $$0$i = 71;
+      break L1;
+      break;
+     }
+    default:
+     {}
+    }
+    SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+    __gcry_log_fatal(24318, $vararg_buffer);
+   }
+   switch ($7 | 0) {
+   case 11:
+    {
+     $37 = __gcry_cipher_ocb_decrypt($0, $1, $2, $$, $$8) | 0;
+     $$0$i = $37;
+     break L1;
+     break;
+    }
+   default:
+    {
+     SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+     __gcry_log_fatal(24318, $vararg_buffer);
+    }
+   }
+  }
+ } while (0);
+ STACKTOP = sp;
+ return $$0$i | 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) {
+   $90 = $$045 + 4 | 0;
+   $91 = SAFE_HEAP_LOAD($$045 | 0, 4, 0) | 0 | 0;
+   $92 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $93 = $92 ^ $91;
+   SAFE_HEAP_STORE($0 | 0, $93 | 0, 4);
+   $94 = $$045 + 8 | 0;
+   $95 = SAFE_HEAP_LOAD($90 | 0, 4, 0) | 0 | 0;
+   $96 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $97 = $96 ^ $95;
+   SAFE_HEAP_STORE($5 | 0, $97 | 0, 4);
+   $98 = $$045 + 12 | 0;
+   $99 = SAFE_HEAP_LOAD($94 | 0, 4, 0) | 0 | 0;
+   $100 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $101 = $100 ^ $99;
+   SAFE_HEAP_STORE($6 | 0, $101 | 0, 4);
+   $102 = SAFE_HEAP_LOAD($98 | 0, 4, 0) | 0 | 0;
+   $103 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $104 = $103 ^ $102;
+   SAFE_HEAP_STORE($7 | 0, $104 | 0, 4);
+  } else {
+   $27 = $$045 + 1 | 0;
+   $28 = SAFE_HEAP_LOAD($$045 >> 0 | 0, 1, 0) | 0 | 0;
+   $29 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+   $30 = $29 ^ $28;
+   SAFE_HEAP_STORE($0 >> 0 | 0, $30 | 0, 1);
+   $31 = $$045 + 2 | 0;
+   $32 = SAFE_HEAP_LOAD($27 >> 0 | 0, 1, 0) | 0 | 0;
+   $33 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+   $34 = $33 ^ $32;
+   SAFE_HEAP_STORE($8 >> 0 | 0, $34 | 0, 1);
+   $35 = $$045 + 3 | 0;
+   $36 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+   $37 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+   $38 = $37 ^ $36;
+   SAFE_HEAP_STORE($9 >> 0 | 0, $38 | 0, 1);
+   $39 = $$045 + 4 | 0;
+   $40 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+   $41 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+   $42 = $41 ^ $40;
+   SAFE_HEAP_STORE($10 >> 0 | 0, $42 | 0, 1);
+   $43 = $$045 + 5 | 0;
+   $44 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+   $45 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+   $46 = $45 ^ $44;
+   SAFE_HEAP_STORE($11 >> 0 | 0, $46 | 0, 1);
+   $47 = $$045 + 6 | 0;
+   $48 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+   $49 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+   $50 = $49 ^ $48;
+   SAFE_HEAP_STORE($12 >> 0 | 0, $50 | 0, 1);
+   $51 = $$045 + 7 | 0;
+   $52 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+   $53 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+   $54 = $53 ^ $52;
+   SAFE_HEAP_STORE($13 >> 0 | 0, $54 | 0, 1);
+   $55 = $$045 + 8 | 0;
+   $56 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+   $57 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+   $58 = $57 ^ $56;
+   SAFE_HEAP_STORE($14 >> 0 | 0, $58 | 0, 1);
+   $59 = $$045 + 9 | 0;
+   $60 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+   $61 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+   $62 = $61 ^ $60;
+   SAFE_HEAP_STORE($15 >> 0 | 0, $62 | 0, 1);
+   $63 = $$045 + 10 | 0;
+   $64 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+   $65 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+   $66 = $65 ^ $64;
+   SAFE_HEAP_STORE($16 >> 0 | 0, $66 | 0, 1);
+   $67 = $$045 + 11 | 0;
+   $68 = SAFE_HEAP_LOAD($63 >> 0 | 0, 1, 0) | 0 | 0;
+   $69 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+   $70 = $69 ^ $68;
+   SAFE_HEAP_STORE($17 >> 0 | 0, $70 | 0, 1);
+   $71 = $$045 + 12 | 0;
+   $72 = SAFE_HEAP_LOAD($67 >> 0 | 0, 1, 0) | 0 | 0;
+   $73 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+   $74 = $73 ^ $72;
+   SAFE_HEAP_STORE($18 >> 0 | 0, $74 | 0, 1);
+   $75 = $$045 + 13 | 0;
+   $76 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+   $77 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+   $78 = $77 ^ $76;
+   SAFE_HEAP_STORE($19 >> 0 | 0, $78 | 0, 1);
+   $79 = $$045 + 14 | 0;
+   $80 = SAFE_HEAP_LOAD($75 >> 0 | 0, 1, 0) | 0 | 0;
+   $81 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+   $82 = $81 ^ $80;
+   SAFE_HEAP_STORE($20 >> 0 | 0, $82 | 0, 1);
+   $83 = $$045 + 15 | 0;
+   $84 = SAFE_HEAP_LOAD($79 >> 0 | 0, 1, 0) | 0 | 0;
+   $85 = SAFE_HEAP_LOAD($21 >> 0 | 0, 1, 0) | 0 | 0;
+   $86 = $85 ^ $84;
+   SAFE_HEAP_STORE($21 >> 0 | 0, $86 | 0, 1);
+   $87 = SAFE_HEAP_LOAD($83 >> 0 | 0, 1, 0) | 0 | 0;
+   $88 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+   $89 = $88 ^ $87;
+   SAFE_HEAP_STORE($22 >> 0 | 0, $89 | 0, 1);
+  }
+  $105 = $$045 + 16 | 0;
+  $106 = $$06 + -1 | 0;
+  $107 = ($106 | 0) == 0;
+  if ($107) {
+   break;
+  } else {
+   $$045 = $105;
+   $$06 = $106;
+  }
+ }
+ return;
+}
+
+function _fips_new_state($0) {
+ $0 = $0 | 0;
+ var $$0$i = 0, $$0$i75 = 0, $$078 = 0, $$clear = 0, $$clear12 = 0, $$clear13 
= 0, $$clear14 = 0, $$off = 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, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $switch$cast = 0, $switch$cast$clear = 0, $switch$cast58 = 
0, $switch$cast58$clear = 0, $switch$cast64 = 0, $switch$cast64$clear = 0, 
$switch$cast70 = 0, $switch$cast70$clear = 0, $switch$downshift = 0;
+ var $switch$downshift60 = 0, $switch$downshift66 = 0, $switch$downshift72 = 
0, $switch$masked = 0, $switch$masked61 = 0, $switch$masked67 = 0, 
$switch$masked73 = 0, $switch$tableidx = 0, $switch$tableidx57 = 0, 
$switch$tableidx63 = 0, $switch$tableidx69 = 0, $vararg_buffer = 0, 
$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(1312) | 0;
+ $2 = ($1 | 0) == 0;
+ if (!$2) {
+  $3 = _gpg_strerror($1) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $3 | 0, 4);
+  __gcry_log_info(23505, $vararg_buffer);
+  _abort();
+ }
+ $4 = SAFE_HEAP_LOAD(17609 * 4 | 0, 4, 0) | 0 | 0;
+ switch ($4 | 0) {
+ case 0:
+  {
+   $switch$tableidx = $0 + -1 | 0;
+   $5 = $switch$tableidx >>> 0 < 5;
+   if ($5) {
+    $switch$cast = $switch$tableidx & 255;
+    $switch$cast$clear = $switch$cast & 31;
+    $switch$downshift = (25 & 255) >>> $switch$cast$clear;
+    $11 = $switch$downshift & 1;
+    $$clear = $11 & 31;
+    $switch$masked = $$clear << 24 >> 24 == 0;
+    if ($switch$masked) {
+     label = 17;
+    } else {
+     label = 14;
+    }
+   } else {
+    label = 17;
+   }
+   break;
+  }
+ case 1:
+  {
+   $switch$tableidx57 = $0 + -2 | 0;
+   $6 = $switch$tableidx57 >>> 0 < 4;
+   if ($6) {
+    $switch$cast58 = $switch$tableidx57 & 255;
+    $switch$cast58$clear = $switch$cast58 & 15;
+    $switch$downshift60 = (13 & 255) >>> $switch$cast58$clear;
+    $12 = $switch$downshift60 & 1;
+    $$clear12 = $12 & 15;
+    $switch$masked61 = $$clear12 << 24 >> 24 == 0;
+    if ($switch$masked61) {
+     label = 17;
+    } else {
+     label = 14;
+    }
+   } else {
+    label = 17;
+   }
+   break;
+  }
+ case 2:
+  {
+   $$off = $0 + -3 | 0;
+   $7 = $$off >>> 0 < 3;
+   if ($7) {
+    label = 14;
+   } else {
+    label = 17;
+   }
+   break;
+  }
+ case 3:
+  {
+   $switch$tableidx63 = $0 + -2 | 0;
+   $8 = $switch$tableidx63 >>> 0 < 5;
+   if ($8) {
+    $switch$cast64 = $switch$tableidx63 & 255;
+    $switch$cast64$clear = $switch$cast64 & 31;
+    $switch$downshift66 = (29 & 255) >>> $switch$cast64$clear;
+    $13 = $switch$downshift66 & 1;
+    $$clear13 = $13 & 31;
+    $switch$masked67 = $$clear13 << 24 >> 24 == 0;
+    if ($switch$masked67) {
+     label = 17;
+    } else {
+     label = 14;
+    }
+   } else {
+    label = 17;
+   }
+   break;
+  }
+ case 4:
+  {
+   $switch$tableidx69 = $0 + -2 | 0;
+   $9 = $switch$tableidx69 >>> 0 < 5;
+   if ($9) {
+    $switch$cast70 = $switch$tableidx69 & 255;
+    $switch$cast70$clear = $switch$cast70 & 31;
+    $switch$downshift72 = (29 & 255) >>> $switch$cast70$clear;
+    $14 = $switch$downshift72 & 1;
+    $$clear14 = $14 & 31;
+    $switch$masked73 = $$clear14 << 24 >> 24 == 0;
+    if ($switch$masked73) {
+     label = 17;
+    } else {
+     label = 14;
+    }
+   } else {
+    label = 17;
+   }
+   break;
+  }
+ case 5:
+  {
+   $10 = ($0 | 0) == 6;
+   if ($10) {
+    label = 14;
+   } else {
+    label = 17;
+   }
+   break;
+  }
+ default:
+  {
+   label = 17;
+  }
+ }
+ if ((label | 0) == 14) {
+  SAFE_HEAP_STORE(17609 * 4 | 0, $0 | 0, 4);
+  $15 = _gpgrt_lock_unlock(1312) | 0;
+  $16 = ($15 | 0) == 0;
+  if (!$16) {
+   $17 = _gpg_strerror($15) | 0;
+   SAFE_HEAP_STORE($vararg_buffer1 | 0, $17 | 0, 4);
+   __gcry_log_info(23560, $vararg_buffer1);
+   _abort();
+  }
+  $18 = __gcry_log_verbosity(2) | 0;
+  $19 = ($18 | 0) == 0;
+  if ($19) {
+   STACKTOP = sp;
+   return;
+  } else {
+   $$078 = 1;
+  }
+ } else if ((label | 0) == 17) {
+  $20 = _gpgrt_lock_unlock(1312) | 0;
+  $21 = ($20 | 0) == 0;
+  if ($21) {
+   $$078 = 0;
+  } else {
+   $22 = _gpg_strerror($20) | 0;
+   SAFE_HEAP_STORE($vararg_buffer4 | 0, $22 | 0, 4);
+   __gcry_log_info(23560, $vararg_buffer4);
+   _abort();
+  }
+ }
+ switch ($4 | 0) {
+ case 0:
+  {
+   $$0$i = 23669;
+   break;
+  }
+ case 1:
+  {
+   $$0$i = 23664;
+   break;
+  }
+ case 2:
+  {
+   $$0$i = 23654;
+   break;
+  }
+ case 3:
+  {
+   $$0$i = 23642;
+   break;
+  }
+ case 4:
+  {
+   $$0$i = 23636;
+   break;
+  }
+ case 5:
+  {
+   $$0$i = 23624;
+   break;
+  }
+ case 6:
+  {
+   $$0$i = 23615;
+   break;
+  }
+ default:
+  {
+   $$0$i = 37665;
+  }
+ }
+ switch ($0 | 0) {
+ case 0:
+  {
+   $$0$i75 = 23669;
+   break;
+  }
+ case 1:
+  {
+   $$0$i75 = 23664;
+   break;
+  }
+ case 2:
+  {
+   $$0$i75 = 23654;
+   break;
+  }
+ case 3:
+  {
+   $$0$i75 = 23642;
+   break;
+  }
+ case 4:
+  {
+   $$0$i75 = 23636;
+   break;
+  }
+ case 5:
+  {
+   $$0$i75 = 23624;
+   break;
+  }
+ case 6:
+  {
+   $$0$i75 = 23615;
+   break;
+  }
+ default:
+  {
+   $$0$i75 = 37665;
+  }
+ }
+ $23 = $$078 ? 23678 : 23686;
+ SAFE_HEAP_STORE($vararg_buffer7 | 0, $$0$i | 0, 4);
+ $vararg_ptr10 = $vararg_buffer7 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr10 | 0, $$0$i75 | 0, 4);
+ $vararg_ptr11 = $vararg_buffer7 + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr11 | 0, $23 | 0, 4);
+ __gcry_log_info(23693, $vararg_buffer7);
+ if ($$078) {
+  STACKTOP = sp;
+  return;
+ } else {
+  __gcry_fips_noreturn();
+ }
+}
+
+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 + 1024 | 0;
+ $4 = sp + 512 | 0;
+ $5 = sp;
+ $6 = sp + 1528 | 0;
+ switch ($0 | 0) {
+ case 7:
+  {
+   _do_setkey($5, 37769, 16) | 0;
+   $7 = $5 + 496 | 0;
+   $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $9 = ($8 | 0) == (0 | 0);
+   if (!$9) {
+    FUNCTION_TABLE_v[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]();
+   }
+   $10 = $5 + 488 | 0;
+   $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+   FUNCTION_TABLE_iiii[(SAFE_FT_MASK($11 | 0, 127 | 0) | 0) & 127]($5, $6, 
37785) | 0;
+   $12 = _memcmp($6, 37801, 16) | 0;
+   $13 = ($12 | 0) == 0;
+   if ($13) {
+    _check_decryption_preparation($5);
+    $14 = $5 + 500 | 0;
+    $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $16 = ($15 | 0) == (0 | 0);
+    if (!$16) {
+     FUNCTION_TABLE_v[(SAFE_FT_MASK($15 | 0, 127 | 0) | 0) & 127]();
+    }
+    $17 = $5 + 492 | 0;
+    $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($18 | 0, 127 | 0) | 0) & 127]($5, $6, 
$6) | 0;
+    $19 = _memcmp($6, 37785, 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 = 37885;
+      }
+     } else {
+      $$0$i = $22;
+      $$011$i = 37881;
+     }
+    } else {
+     $$0$i$ph$i = 37817;
+     label = 8;
+    }
+   } else {
+    $$0$i$ph$i = 37849;
+    label = 8;
+   }
+   if ((label | 0) == 8) {
+    $$0$i = $$0$i$ph$i;
+    $$011$i = 37889;
+   }
+   $26 = ($2 | 0) == (0 | 0);
+   if ($26) {
+    $$0 = 50;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](37899, 7, 
$$011$i, $$0$i);
+   $$0 = 50;
+   STACKTOP = sp;
+   return $$0 | 0;
+   break;
+  }
+ case 8:
+  {
+   _do_setkey($4, 37906, 24) | 0;
+   $27 = $4 + 496 | 0;
+   $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+   $29 = ($28 | 0) == (0 | 0);
+   if (!$29) {
+    FUNCTION_TABLE_v[(SAFE_FT_MASK($28 | 0, 127 | 0) | 0) & 127]();
+   }
+   $30 = $4 + 488 | 0;
+   $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+   FUNCTION_TABLE_iiii[(SAFE_FT_MASK($31 | 0, 127 | 0) | 0) & 127]($4, $6, 
37930) | 0;
+   $32 = _memcmp($6, 37946, 16) | 0;
+   $33 = ($32 | 0) == 0;
+   if ($33) {
+    _check_decryption_preparation($4);
+    $34 = $4 + 500 | 0;
+    $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+    $36 = ($35 | 0) == (0 | 0);
+    if (!$36) {
+     FUNCTION_TABLE_v[(SAFE_FT_MASK($35 | 0, 127 | 0) | 0) & 127]();
+    }
+    $37 = $4 + 492 | 0;
+    $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($38 | 0, 127 | 0) | 0) & 127]($4, $6, 
$6) | 0;
+    $39 = _memcmp($6, 37930, 16) | 0;
+    $40 = ($39 | 0) == 0;
+    if ($40) {
+     $$0 = 0;
+     STACKTOP = sp;
+     return $$0 | 0;
+    } else {
+     $$0$i$ph$i10 = 37962;
+    }
+   } else {
+    $$0$i$ph$i10 = 37994;
+   }
+   $41 = ($2 | 0) == (0 | 0);
+   if ($41) {
+    $$0 = 50;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](37899, 8, 
37889, $$0$i$ph$i10);
+   $$0 = 50;
+   STACKTOP = sp;
+   return $$0 | 0;
+   break;
+  }
+ case 9:
+  {
+   _do_setkey($3, 38026, 32) | 0;
+   $42 = $3 + 496 | 0;
+   $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+   $44 = ($43 | 0) == (0 | 0);
+   if (!$44) {
+    FUNCTION_TABLE_v[(SAFE_FT_MASK($43 | 0, 127 | 0) | 0) & 127]();
+   }
+   $45 = $3 + 488 | 0;
+   $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+   FUNCTION_TABLE_iiii[(SAFE_FT_MASK($46 | 0, 127 | 0) | 0) & 127]($3, $6, 
38058) | 0;
+   $47 = _memcmp($6, 38074, 16) | 0;
+   $48 = ($47 | 0) == 0;
+   if ($48) {
+    _check_decryption_preparation($3);
+    $49 = $3 + 500 | 0;
+    $50 = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+    $51 = ($50 | 0) == (0 | 0);
+    if (!$51) {
+     FUNCTION_TABLE_v[(SAFE_FT_MASK($50 | 0, 127 | 0) | 0) & 127]();
+    }
+    $52 = $3 + 492 | 0;
+    $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($53 | 0, 127 | 0) | 0) & 127]($3, $6, 
$6) | 0;
+    $54 = _memcmp($6, 38058, 16) | 0;
+    $55 = ($54 | 0) == 0;
+    if ($55) {
+     $$0 = 0;
+     STACKTOP = sp;
+     return $$0 | 0;
+    } else {
+     $$0$i$ph$i14 = 38090;
+    }
+   } else {
+    $$0$i$ph$i14 = 38122;
+   }
+   $56 = ($2 | 0) == (0 | 0);
+   if ($56) {
+    $$0 = 50;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](37899, 9, 
37889, $$0$i$ph$i14);
+   $$0 = 50;
+   STACKTOP = sp;
+   return $$0 | 0;
+   break;
+  }
+ default:
+  {
+   $$0 = 12;
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ }
+ return 0 | 0;
+}
+
+function __gcry_mpi_sub_ui($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$024$i = 0, $$025$i = 0, $$025$i55 = 0, $$026$i = 0, $$026$i54 
= 0, $$028$i = 0, $$028$i53 = 0, $$036$i = 0, $$036$i62 = 0, $$052 = 0, $$1$i = 
0, $$1$i59 = 0, $$127$i = 0, $$127$i58 = 0, $$129$i = 0, $$129$i57 = 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, $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 $7 = 0, $8 = 0, $9 = 0, $exitcond$i = 0, $exitcond$i63 = 0, $or$cond = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $1 + 4 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $1 + 8 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) > ($4 | 0);
+ if (!$8) {
+  $9 = $4 + 1 | 0;
+  __gcry_mpi_resize($0, $9);
+ }
+ $10 = $1 + 16 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $0 + 16 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = ($4 | 0) == 0;
+ if ($14) {
+  SAFE_HEAP_STORE($13 | 0, $2 | 0, 4);
+  $15 = ($2 | 0) != 0;
+  $16 = $15 & 1;
+  $$0 = $16;
+  $$052 = 1;
+  $67 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($67 | 0, $$0 | 0, 4);
+  $68 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($68 | 0, $$052 | 0, 4);
+  return;
+ }
+ $17 = ($6 | 0) == 0;
+ if (!$17) {
+  $18 = $11 + 4 | 0;
+  $19 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+  $20 = $19 + $2 | 0;
+  $21 = $13 + 4 | 0;
+  SAFE_HEAP_STORE($13 | 0, $20 | 0, 4);
+  $22 = $20 >>> 0 < $19 >>> 0;
+  L10 : do {
+   if ($22) {
+    $$025$i = $4;
+    $$026$i = $18;
+    $$028$i = $21;
+    while (1) {
+     $23 = $$025$i + -1 | 0;
+     $24 = ($23 | 0) == 0;
+     if ($24) {
+      $$024$i = 1;
+      break L10;
+     }
+     $25 = $$026$i + 4 | 0;
+     $26 = SAFE_HEAP_LOAD($$026$i | 0, 4, 0) | 0 | 0;
+     $27 = $26 + 1 | 0;
+     $28 = $$028$i + 4 | 0;
+     SAFE_HEAP_STORE($$028$i | 0, $27 | 0, 4);
+     $29 = ($27 | 0) == 0;
+     if ($29) {
+      $$025$i = $23;
+      $$026$i = $25;
+      $$028$i = $28;
+     } else {
+      $$1$i = $23;
+      $$127$i = $25;
+      $$129$i = $28;
+      label = 9;
+      break;
+     }
+    }
+   } else {
+    $$1$i = $4;
+    $$127$i = $18;
+    $$129$i = $21;
+    label = 9;
+   }
+  } while (0);
+  if ((label | 0) == 9) {
+   $30 = ($$129$i | 0) == ($$127$i | 0);
+   if ($30) {
+    $$024$i = 0;
+   } else {
+    $31 = $$1$i + -1 | 0;
+    $32 = ($$1$i | 0) > 1;
+    if ($32) {
+     $$036$i = 0;
+     while (1) {
+      $33 = $$127$i + ($$036$i << 2) | 0;
+      $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+      $35 = $$129$i + ($$036$i << 2) | 0;
+      SAFE_HEAP_STORE($35 | 0, $34 | 0, 4);
+      $36 = $$036$i + 1 | 0;
+      $exitcond$i = ($36 | 0) == ($31 | 0);
+      if ($exitcond$i) {
+       $$024$i = 0;
+       break;
+      } else {
+       $$036$i = $36;
+      }
+     }
+    } else {
+     $$024$i = 0;
+    }
+   }
+  }
+  $37 = $13 + ($4 << 2) | 0;
+  SAFE_HEAP_STORE($37 | 0, $$024$i | 0, 4);
+  $38 = $$024$i + $4 | 0;
+  $$0 = $38;
+  $$052 = 0;
+  $67 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($67 | 0, $$0 | 0, 4);
+  $68 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($68 | 0, $$052 | 0, 4);
+  return;
+ }
+ $39 = ($4 | 0) == 1;
+ $40 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $41 = $40 >>> 0 < $2 >>> 0;
+ $or$cond = $39 & $41;
+ if ($or$cond) {
+  $42 = $2 - $40 | 0;
+  SAFE_HEAP_STORE($13 | 0, $42 | 0, 4);
+  $$0 = 1;
+  $$052 = 1;
+  $67 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($67 | 0, $$0 | 0, 4);
+  $68 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($68 | 0, $$052 | 0, 4);
+  return;
+ }
+ $43 = $11 + 4 | 0;
+ $44 = $40 - $2 | 0;
+ $45 = $13 + 4 | 0;
+ SAFE_HEAP_STORE($13 | 0, $44 | 0, 4);
+ $46 = $44 >>> 0 > $40 >>> 0;
+ L26 : do {
+  if ($46) {
+   $$025$i55 = $4;
+   $$026$i54 = $43;
+   $$028$i53 = $45;
+   while (1) {
+    $47 = $$025$i55 + -1 | 0;
+    $48 = ($47 | 0) == 0;
+    if ($48) {
+     break L26;
+    }
+    $49 = $$026$i54 + 4 | 0;
+    $50 = SAFE_HEAP_LOAD($$026$i54 | 0, 4, 0) | 0 | 0;
+    $51 = $50 + -1 | 0;
+    $52 = $$028$i53 + 4 | 0;
+    SAFE_HEAP_STORE($$028$i53 | 0, $51 | 0, 4);
+    $53 = ($50 | 0) == 0;
+    if ($53) {
+     $$025$i55 = $47;
+     $$026$i54 = $49;
+     $$028$i53 = $52;
+    } else {
+     $$1$i59 = $47;
+     $$127$i58 = $49;
+     $$129$i57 = $52;
+     label = 18;
+     break;
+    }
+   }
+  } else {
+   $$1$i59 = $4;
+   $$127$i58 = $43;
+   $$129$i57 = $45;
+   label = 18;
+  }
+ } while (0);
+ if ((label | 0) == 18) {
+  $54 = ($$129$i57 | 0) == ($$127$i58 | 0);
+  if (!$54) {
+   $55 = $$1$i59 + -1 | 0;
+   $56 = ($$1$i59 | 0) > 1;
+   if ($56) {
+    $$036$i62 = 0;
+    while (1) {
+     $57 = $$127$i58 + ($$036$i62 << 2) | 0;
+     $58 = SAFE_HEAP_LOAD($57 | 0, 4, 0) | 0 | 0;
+     $59 = $$129$i57 + ($$036$i62 << 2) | 0;
+     SAFE_HEAP_STORE($59 | 0, $58 | 0, 4);
+     $60 = $$036$i62 + 1 | 0;
+     $exitcond$i63 = ($60 | 0) == ($55 | 0);
+     if ($exitcond$i63) {
+      break;
+     } else {
+      $$036$i62 = $60;
+     }
+    }
+   }
+  }
+ }
+ $61 = $4 + -1 | 0;
+ $62 = $13 + ($61 << 2) | 0;
+ $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+ $64 = ($63 | 0) == 0;
+ $65 = $64 & 1;
+ $66 = $4 - $65 | 0;
+ $$0 = $66;
+ $$052 = 0;
+ $67 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($67 | 0, $$0 | 0, 4);
+ $68 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($68 | 0, $$052 | 0, 4);
+ return;
+}
+
+function __gcry_mpi_add_ui($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$024$i = 0, $$025$i = 0, $$025$i55 = 0, $$026$i = 0, $$026$i54 
= 0, $$028$i = 0, $$028$i53 = 0, $$036$i = 0, $$036$i62 = 0, $$052 = 0, $$1$i = 
0, $$1$i59 = 0, $$127$i = 0, $$127$i58 = 0, $$129$i = 0, $$129$i57 = 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, $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 $7 = 0, $8 = 0, $9 = 0, $exitcond$i = 0, $exitcond$i63 = 0, $or$cond = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $1 + 4 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $1 + 8 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) > ($4 | 0);
+ if (!$8) {
+  $9 = $4 + 1 | 0;
+  __gcry_mpi_resize($0, $9);
+ }
+ $10 = $1 + 16 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $0 + 16 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = ($4 | 0) == 0;
+ if ($14) {
+  SAFE_HEAP_STORE($13 | 0, $2 | 0, 4);
+  $15 = ($2 | 0) != 0;
+  $16 = $15 & 1;
+  $$0 = $16;
+  $$052 = 0;
+  $67 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($67 | 0, $$0 | 0, 4);
+  $68 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($68 | 0, $$052 | 0, 4);
+  return;
+ }
+ $17 = ($6 | 0) == 0;
+ if ($17) {
+  $18 = $11 + 4 | 0;
+  $19 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+  $20 = $19 + $2 | 0;
+  $21 = $13 + 4 | 0;
+  SAFE_HEAP_STORE($13 | 0, $20 | 0, 4);
+  $22 = $20 >>> 0 < $19 >>> 0;
+  L10 : do {
+   if ($22) {
+    $$025$i = $4;
+    $$026$i = $18;
+    $$028$i = $21;
+    while (1) {
+     $23 = $$025$i + -1 | 0;
+     $24 = ($23 | 0) == 0;
+     if ($24) {
+      $$024$i = 1;
+      break L10;
+     }
+     $25 = $$026$i + 4 | 0;
+     $26 = SAFE_HEAP_LOAD($$026$i | 0, 4, 0) | 0 | 0;
+     $27 = $26 + 1 | 0;
+     $28 = $$028$i + 4 | 0;
+     SAFE_HEAP_STORE($$028$i | 0, $27 | 0, 4);
+     $29 = ($27 | 0) == 0;
+     if ($29) {
+      $$025$i = $23;
+      $$026$i = $25;
+      $$028$i = $28;
+     } else {
+      $$1$i = $23;
+      $$127$i = $25;
+      $$129$i = $28;
+      label = 9;
+      break;
+     }
+    }
+   } else {
+    $$1$i = $4;
+    $$127$i = $18;
+    $$129$i = $21;
+    label = 9;
+   }
+  } while (0);
+  if ((label | 0) == 9) {
+   $30 = ($$129$i | 0) == ($$127$i | 0);
+   if ($30) {
+    $$024$i = 0;
+   } else {
+    $31 = $$1$i + -1 | 0;
+    $32 = ($$1$i | 0) > 1;
+    if ($32) {
+     $$036$i = 0;
+     while (1) {
+      $33 = $$127$i + ($$036$i << 2) | 0;
+      $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+      $35 = $$129$i + ($$036$i << 2) | 0;
+      SAFE_HEAP_STORE($35 | 0, $34 | 0, 4);
+      $36 = $$036$i + 1 | 0;
+      $exitcond$i = ($36 | 0) == ($31 | 0);
+      if ($exitcond$i) {
+       $$024$i = 0;
+       break;
+      } else {
+       $$036$i = $36;
+      }
+     }
+    } else {
+     $$024$i = 0;
+    }
+   }
+  }
+  $37 = $13 + ($4 << 2) | 0;
+  SAFE_HEAP_STORE($37 | 0, $$024$i | 0, 4);
+  $38 = $$024$i + $4 | 0;
+  $$0 = $38;
+  $$052 = 0;
+  $67 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($67 | 0, $$0 | 0, 4);
+  $68 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($68 | 0, $$052 | 0, 4);
+  return;
+ }
+ $39 = ($4 | 0) == 1;
+ $40 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $41 = $40 >>> 0 < $2 >>> 0;
+ $or$cond = $39 & $41;
+ if ($or$cond) {
+  $42 = $2 - $40 | 0;
+  SAFE_HEAP_STORE($13 | 0, $42 | 0, 4);
+  $$0 = 1;
+  $$052 = 0;
+  $67 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($67 | 0, $$0 | 0, 4);
+  $68 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($68 | 0, $$052 | 0, 4);
+  return;
+ }
+ $43 = $11 + 4 | 0;
+ $44 = $40 - $2 | 0;
+ $45 = $13 + 4 | 0;
+ SAFE_HEAP_STORE($13 | 0, $44 | 0, 4);
+ $46 = $44 >>> 0 > $40 >>> 0;
+ L26 : do {
+  if ($46) {
+   $$025$i55 = $4;
+   $$026$i54 = $43;
+   $$028$i53 = $45;
+   while (1) {
+    $47 = $$025$i55 + -1 | 0;
+    $48 = ($47 | 0) == 0;
+    if ($48) {
+     break L26;
+    }
+    $49 = $$026$i54 + 4 | 0;
+    $50 = SAFE_HEAP_LOAD($$026$i54 | 0, 4, 0) | 0 | 0;
+    $51 = $50 + -1 | 0;
+    $52 = $$028$i53 + 4 | 0;
+    SAFE_HEAP_STORE($$028$i53 | 0, $51 | 0, 4);
+    $53 = ($50 | 0) == 0;
+    if ($53) {
+     $$025$i55 = $47;
+     $$026$i54 = $49;
+     $$028$i53 = $52;
+    } else {
+     $$1$i59 = $47;
+     $$127$i58 = $49;
+     $$129$i57 = $52;
+     label = 18;
+     break;
+    }
+   }
+  } else {
+   $$1$i59 = $4;
+   $$127$i58 = $43;
+   $$129$i57 = $45;
+   label = 18;
+  }
+ } while (0);
+ if ((label | 0) == 18) {
+  $54 = ($$129$i57 | 0) == ($$127$i58 | 0);
+  if (!$54) {
+   $55 = $$1$i59 + -1 | 0;
+   $56 = ($$1$i59 | 0) > 1;
+   if ($56) {
+    $$036$i62 = 0;
+    while (1) {
+     $57 = $$127$i58 + ($$036$i62 << 2) | 0;
+     $58 = SAFE_HEAP_LOAD($57 | 0, 4, 0) | 0 | 0;
+     $59 = $$129$i57 + ($$036$i62 << 2) | 0;
+     SAFE_HEAP_STORE($59 | 0, $58 | 0, 4);
+     $60 = $$036$i62 + 1 | 0;
+     $exitcond$i63 = ($60 | 0) == ($55 | 0);
+     if ($exitcond$i63) {
+      break;
+     } else {
+      $$036$i62 = $60;
+     }
+    }
+   }
+  }
+ }
+ $61 = $4 + -1 | 0;
+ $62 = $13 + ($61 << 2) | 0;
+ $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+ $64 = ($63 | 0) == 0;
+ $65 = $64 & 1;
+ $66 = $4 - $65 | 0;
+ $$0 = $66;
+ $$052 = 1;
+ $67 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($67 | 0, $$0 | 0, 4);
+ $68 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($68 | 0, $$052 | 0, 4);
+ return;
+}
+
+function __gcry_secmem_malloc_internal($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $$0$be$i = 0, $$0$i$i = 0, $$0$i$i$i = 0, $$028$i = 0, $$029$i = 
0, $$1$i$i$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;
+ 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, $9 = 0, $or$cond$i = 0, 
$phitmp$i$i = 0, $phitmp$i$i$i = 0, $phitmp$i$i$i$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 = SAFE_HEAP_LOAD(17600 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 0;
+ if ($2) {
+  _secmem_init(32768);
+  $3 = SAFE_HEAP_LOAD(17600 * 4 | 0, 4, 0) | 0 | 0;
+  $4 = ($3 | 0) == 0;
+  if ($4) {
+   $5 = __gcry_gettext(23170) | 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 = SAFE_HEAP_LOAD(17602 * 4 | 0, 4, 0) | 0 | 0;
+ $9 = $8;
+ $10 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+ $11 = $10 + $9 | 0;
+ $$029$i = $8;
+ $12 = $9;
+ while (1) {
+  $13 = $12 >>> 0 < $11 >>> 0;
+  if (!$13) {
+   $$028$i = $$029$i;
+   $67 = $12;
+   break;
+  }
+  $14 = $$029$i + 4 | 0;
+  $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+  $16 = $15 & 1;
+  $17 = ($16 | 0) != 0;
+  $18 = SAFE_HEAP_LOAD($$029$i | 0, 4, 0) | 0 | 0;
+  $19 = $18 >>> 0 < $7 >>> 0;
+  $or$cond$i = $17 | $19;
+  if (!$or$cond$i) {
+   label = 7;
+   break;
+  }
+  $60 = $$029$i + 8 | 0;
+  $61 = $60 + $18 | 0;
+  $62 = $61;
+  $63 = $61 >>> 0 < $8 >>> 0;
+  $64 = $62 >>> 0 < $11 >>> 0;
+  $phitmp$i$i = $64 ? $61 : 0;
+  $$0$be$i = $63 ? 0 : $phitmp$i$i;
+  $65 = $$0$be$i;
+  $66 = $$0$be$i >>> 0 < $8 >>> 0;
+  if ($66) {
+   $$028$i = $$0$be$i;
+   $67 = $65;
+   break;
+  } else {
+   $$029$i = $$0$be$i;
+   $12 = $65;
+  }
+ }
+ if ((label | 0) == 7) {
+  $20 = $15 | 1;
+  SAFE_HEAP_STORE($14 | 0, $20 | 0, 4);
+  $21 = $18 - $7 | 0;
+  $22 = $21 >>> 0 > 8;
+  if ($22) {
+   $23 = $$029$i + 8 | 0;
+   $24 = $23 + $7 | 0;
+   $25 = $21 + -8 | 0;
+   SAFE_HEAP_STORE($24 | 0, $25 | 0, 4);
+   $26 = $24 + 4 | 0;
+   SAFE_HEAP_STORE($26 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE($$029$i | 0, $7 | 0, 4);
+   $27 = ($8 | 0) == ($24 | 0);
+   if ($27) {
+    $$1$i$i$i = 0;
+   } else {
+    $$0$i$i$i = $8;
+    while (1) {
+     $28 = $$0$i$i$i + 8 | 0;
+     $29 = SAFE_HEAP_LOAD($$0$i$i$i | 0, 4, 0) | 0 | 0;
+     $30 = $28 + $29 | 0;
+     $31 = $30;
+     $32 = $30 >>> 0 < $8 >>> 0;
+     $33 = $31 >>> 0 < $11 >>> 0;
+     $phitmp$i$i$i$i = $33 ? $30 : 0;
+     $34 = $32 ? 0 : $phitmp$i$i$i$i;
+     $35 = ($34 | 0) == ($24 | 0);
+     if ($35) {
+      $$1$i$i$i = $$0$i$i$i;
+      break;
+     } else {
+      $$0$i$i$i = $34;
+     }
+    }
+   }
+   $36 = $24 + 8 | 0;
+   $37 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+   $38 = $36 + $37 | 0;
+   $39 = $38 >>> 0 < $8 >>> 0;
+   $40 = $38;
+   $41 = $40 >>> 0 < $11 >>> 0;
+   $phitmp$i$i$i = $41 ? $38 : 0;
+   $42 = $39 ? 0 : $phitmp$i$i$i;
+   $43 = ($$1$i$i$i | 0) == (0 | 0);
+   if ($43) {
+    $$0$i$i = $24;
+    $57 = $37;
+   } else {
+    $44 = $$1$i$i$i + 4 | 0;
+    $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+    $46 = $45 & 1;
+    $47 = ($46 | 0) == 0;
+    if ($47) {
+     $48 = $37 + 8 | 0;
+     $49 = SAFE_HEAP_LOAD($$1$i$i$i | 0, 4, 0) | 0 | 0;
+     $50 = $48 + $49 | 0;
+     SAFE_HEAP_STORE($$1$i$i$i | 0, $50 | 0, 4);
+     $$0$i$i = $$1$i$i$i;
+     $57 = $50;
+    } else {
+     $$0$i$i = $24;
+     $57 = $37;
+    }
+   }
+   $51 = ($42 | 0) == (0 | 0);
+   if ($51) {
+    $$028$i = $$029$i;
+    $67 = $12;
+   } else {
+    $52 = $42 + 4 | 0;
+    $53 = SAFE_HEAP_LOAD($52 | 0, 4, 0) | 0 | 0;
+    $54 = $53 & 1;
+    $55 = ($54 | 0) == 0;
+    if ($55) {
+     $56 = $57 + 8 | 0;
+     $58 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+     $59 = $56 + $58 | 0;
+     SAFE_HEAP_STORE($$0$i$i | 0, $59 | 0, 4);
+     $$028$i = $$029$i;
+     $67 = $12;
+    } else {
+     $$028$i = $$029$i;
+     $67 = $12;
+    }
+   }
+  } else {
+   $$028$i = $$029$i;
+   $67 = $12;
+  }
+ }
+ $68 = $67 >>> 0 < $9 >>> 0;
+ if ($68) {
+  label = 19;
+ } else {
+  $69 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+  $70 = $69 + $9 | 0;
+  $71 = $67 >>> 0 < $70 >>> 0;
+  if ($71) {
+   $72 = ($$028$i | 0) == (0 | 0);
+   if ($72) {
+    $79 = 0;
+   } else {
+    $73 = ($7 | 0) == 0;
+    if (!$73) {
+     $74 = SAFE_HEAP_LOAD(17604 * 4 | 0, 4, 0) | 0 | 0;
+     $75 = $74 + $7 | 0;
+     SAFE_HEAP_STORE(17604 * 4 | 0, $75 | 0, 4);
+     $76 = SAFE_HEAP_LOAD(17605 * 4 | 0, 4, 0) | 0 | 0;
+     $77 = $76 + 1 | 0;
+     SAFE_HEAP_STORE(17605 * 4 | 0, $77 | 0, 4);
+    }
+    $78 = $$028$i + 8 | 0;
+    $79 = $78;
+   }
+  } else {
+   label = 19;
+  }
+ }
+ if ((label | 0) == 19) {
+  _gpg_err_set_errno(12);
+  $79 = 0;
+ }
+ $$0 = $79;
+ 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;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ $7 = $5;
+ $8 = $7;
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ $9 = $7 + 4 | 0;
+ $10 = $9;
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ $11 = __gcry_sexp_find_token($2, 39075, 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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    __gcry_log_printmpi(41350, $20);
+   }
+   $21 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $22 = ($21 | 0) == (0 | 0);
+   if (!$22) {
+    $23 = $21 + 12 | 0;
+    $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+    $25 = $24 & 4;
+    $26 = ($25 | 0) == 0;
+    if (!$26) {
+     $$021 = 0;
+     $$1 = 79;
+     break;
+    }
+   }
+   $27 = $5 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_buffer | 0, $5 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, $27 | 0, 4);
+   $vararg_ptr2 = $vararg_buffer + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr2 | 0, 0 | 0, 4);
+   $28 = __gcry_sexp_extract_param($2, 0, 39061, $vararg_buffer) | 0;
+   $29 = ($28 | 0) == 0;
+   if ($29) {
+    $30 = __gcry_get_debug_flag(1) | 0;
+    $31 = ($30 | 0) == 0;
+    if (!$31) {
+     $32 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(41367, $32);
+     $33 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+     __gcry_log_printmpi(41384, $33);
+    }
+    $34 = __gcry_mpi_new(0) | 0;
+    $35 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    $36 = ($34 | 0) == ($35 | 0);
+    if ($36) {
+     $37 = $34 + 4 | 0;
+     $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+     $39 = $38 << 1;
+     $40 = __gcry_mpi_alloc($39) | 0;
+     $41 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+     $42 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_powm($40, $34, $41, $42);
+     __gcry_mpi_set($34, $40) | 0;
+     __gcry_mpi_free($40);
+    } else {
+     $43 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+     $44 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_powm($34, $35, $43, $44);
+    }
+    $45 = __gcry_get_debug_flag(1) | 0;
+    $46 = ($45 | 0) == 0;
+    if (!$46) {
+     __gcry_log_printmpi(41401, $34);
+    }
+    $47 = $3 + 12 | 0;
+    $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+    $49 = $48 & 4;
+    $50 = ($49 | 0) == 0;
+    if ($50) {
+     SAFE_HEAP_STORE($vararg_buffer7 | 0, $34 | 0, 4);
+     $60 = __gcry_sexp_build($0, 0, 41438, $vararg_buffer7) | 0;
+     $$021 = $34;
+     $$1 = $60;
+     break;
+    }
+    $51 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($vararg_buffer3 | 0, $54 | 0, 4);
+     $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr6 | 0, $57 | 0, 4);
+     $58 = __gcry_sexp_build($0, 0, 41418, $vararg_buffer3) | 0;
+     $59 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($61);
+ $62 = $5 + 4 | 0;
+ $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($63);
+ $64 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($vararg_buffer10 | 0, $67 | 0, 4);
+ __gcry_log_debug(41458, $vararg_buffer10);
+ STACKTOP = sp;
+ return $$1 | 0;
+}
+
+function _is_prime($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$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;
+ 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, $7 = 0, $8 = 0, $9 = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $0 + 4 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = __gcry_mpi_alloc($4) | 0;
+ $6 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $7 = __gcry_mpi_alloc($6) | 0;
+ $8 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $9 = __gcry_mpi_alloc($8) | 0;
+ $10 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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;
+ $$ = $14 ? 5 : $1;
+ __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 = ($$ | 0) == 0;
+ L1 : do {
+  if ($17) {
+   $$074 = 1;
+  } else {
+   $18 = $16 >>> 0 > 1;
+   $19 = $13 + -2 | 0;
+   if ($18) {
+    $$07580$us = 0;
+   } else {
+    $$07580 = 0;
+    while (1) {
+     $46 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $47 = $46 + 1 | 0;
+     SAFE_HEAP_STORE($2 | 0, $47 | 0, 4);
+     $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, $19) | 0;
+      $50 = ($49 | 0) == 0;
+      __gcry_mpi_set_highbit($5, $19);
+      if ($50) {
+       __gcry_mpi_clear_bit($5, $19);
+      }
+      $51 = __gcry_mpi_cmp($5, $11) | 0;
+      $52 = ($51 | 0) < 0;
+      if (!$52) {
+       label = 24;
+       break;
+      }
+      $53 = __gcry_mpi_cmp_ui($5, 1) | 0;
+      $54 = ($53 | 0) > 0;
+      if (!$54) {
+       label = 24;
+       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 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+     $62 = ($61 | 0) == (0 | 0);
+     if (!$62) {
+      $63 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+      FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($61 | 0, 127 | 0) | 0) & 127]($63, 
37212, 43, 0, 0);
+     }
+     $64 = $$07580 + 1 | 0;
+     $65 = $64 >>> 0 < $$ >>> 0;
+     if ($65) {
+      $$07580 = $64;
+     } else {
+      $$074 = 1;
+      break L1;
+     }
+    }
+    if ((label | 0) == 24) {
+     __gcry_assert_failed(37298, 37370, 951, 37381);
+    }
+   }
+   while (1) {
+    $20 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    $21 = $20 + 1 | 0;
+    SAFE_HEAP_STORE($2 | 0, $21 | 0, 4);
+    $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, $19) | 0;
+     $24 = ($23 | 0) == 0;
+     __gcry_mpi_set_highbit($5, $19);
+     if ($24) {
+      __gcry_mpi_clear_bit($5, $19);
+     }
+     $25 = __gcry_mpi_cmp($5, $11) | 0;
+     $26 = ($25 | 0) < 0;
+     if (!$26) {
+      label = 24;
+      break;
+     }
+     $27 = __gcry_mpi_cmp_ui($5, 1) | 0;
+     $28 = ($27 | 0) > 0;
+     if (!$28) {
+      label = 24;
+      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;
+       $33 = $$07678$us + 1 | 0;
+       if ($38) {
+        $$074 = 0;
+        break L1;
+       }
+       $34 = $33 >>> 0 < $16 >>> 0;
+       if ($34) {
+        $$07678$us = $33;
+       } else {
+        break;
+       }
+      }
+      $39 = __gcry_mpi_cmp($7, $11) | 0;
+      $40 = ($39 | 0) == 0;
+      if (!$40) {
+       $$074 = 0;
+       break L1;
+      }
+     }
+    }
+    $41 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+    $42 = ($41 | 0) == (0 | 0);
+    if (!$42) {
+     $43 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+     FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($41 | 0, 127 | 0) | 0) & 127]($43, 
37212, 43, 0, 0);
+    }
+    $44 = $$07580$us + 1 | 0;
+    $45 = $44 >>> 0 < $$ >>> 0;
+    if ($45) {
+     $$07580$us = $44;
+    } else {
+     $$074 = 1;
+     break L1;
+    }
+   }
+   if ((label | 0) == 24) {
+    __gcry_assert_failed(37298, 37370, 951, 37381);
+   }
+  }
+ } 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 __gcry_fips_run_selftests($0) {
+ $0 = $0 | 0;
+ var $$ = 0, $$$0$i = 0, $$$0$i10 = 0, $$$0$i11 = 0, $$0 = 0, $$09 = 0, $$15 = 
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, $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, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 1;
+ if (!$2) {
+  _fips_new_state(2);
+ }
+ $3 = __gcry_cipher_selftest(2, $0, 56) | 0;
+ $4 = ($3 | 0) != 0;
+ if ($4) {
+  $5 = _gpg_strerror($3) | 0;
+  $6 = $5;
+ } else {
+  $6 = 0;
+ }
+ _reporter(37899, 2, 0, $6);
+ $$$0$i = $4 & 1;
+ $7 = __gcry_cipher_selftest(7, $0, 56) | 0;
+ $8 = ($7 | 0) == 0;
+ if ($8) {
+  $10 = 0;
+ } else {
+  $9 = _gpg_strerror($7) | 0;
+  $10 = $9;
+ }
+ _reporter(37899, 7, 0, $10);
+ $11 = __gcry_cipher_selftest(8, $0, 56) | 0;
+ $12 = ($11 | 0) == 0;
+ if ($12) {
+  $14 = 0;
+ } else {
+  $13 = _gpg_strerror($11) | 0;
+  $14 = $13;
+ }
+ _reporter(37899, 8, 0, $14);
+ $15 = __gcry_cipher_selftest(9, $0, 56) | 0;
+ $16 = ($15 | 0) == 0;
+ if ($16) {
+  $18 = 0;
+ } else {
+  $17 = _gpg_strerror($15) | 0;
+  $18 = $17;
+ }
+ _reporter(37899, 9, 0, $18);
+ $19 = $7 | $$$0$i;
+ $20 = $19 | $11;
+ $21 = $20 | $15;
+ $22 = ($21 | 0) == 0;
+ do {
+  if ($22) {
+   $23 = __gcry_md_selftest(2, $0, 56) | 0;
+   $24 = ($23 | 0) != 0;
+   if ($24) {
+    $25 = _gpg_strerror($23) | 0;
+    $26 = $25;
+   } else {
+    $26 = 0;
+   }
+   _reporter(42873, 2, 0, $26);
+   $$$0$i10 = $24 & 1;
+   $27 = __gcry_md_selftest(11, $0, 56) | 0;
+   $28 = ($27 | 0) == 0;
+   if ($28) {
+    $30 = 0;
+   } else {
+    $29 = _gpg_strerror($27) | 0;
+    $30 = $29;
+   }
+   _reporter(42873, 11, 0, $30);
+   $31 = __gcry_md_selftest(8, $0, 56) | 0;
+   $32 = ($31 | 0) == 0;
+   if ($32) {
+    $34 = 0;
+   } else {
+    $33 = _gpg_strerror($31) | 0;
+    $34 = $33;
+   }
+   _reporter(42873, 8, 0, $34);
+   $35 = __gcry_md_selftest(9, $0, 56) | 0;
+   $36 = ($35 | 0) == 0;
+   if ($36) {
+    $38 = 0;
+   } else {
+    $37 = _gpg_strerror($35) | 0;
+    $38 = $37;
+   }
+   _reporter(42873, 9, 0, $38);
+   $39 = __gcry_md_selftest(10, $0, 56) | 0;
+   $40 = ($39 | 0) == 0;
+   if ($40) {
+    $42 = 0;
+   } else {
+    $41 = _gpg_strerror($39) | 0;
+    $42 = $41;
+   }
+   _reporter(42873, 10, 0, $42);
+   $43 = $27 | $$$0$i10;
+   $44 = $43 | $31;
+   $45 = $44 | $35;
+   $46 = $45 | $39;
+   $47 = ($46 | 0) == 0;
+   if ($47) {
+    $48 = __gcry_hmac_selftest(2, $0, 56) | 0;
+    $49 = ($48 | 0) != 0;
+    if ($49) {
+     $50 = _gpg_strerror($48) | 0;
+     $51 = $50;
+    } else {
+     $51 = 0;
+    }
+    _reporter(36051, 2, 0, $51);
+    $$$0$i11 = $49 & 1;
+    $52 = __gcry_hmac_selftest(11, $0, 56) | 0;
+    $53 = ($52 | 0) == 0;
+    if ($53) {
+     $55 = 0;
+    } else {
+     $54 = _gpg_strerror($52) | 0;
+     $55 = $54;
+    }
+    _reporter(36051, 11, 0, $55);
+    $56 = __gcry_hmac_selftest(8, $0, 56) | 0;
+    $57 = ($56 | 0) == 0;
+    if ($57) {
+     $59 = 0;
+    } else {
+     $58 = _gpg_strerror($56) | 0;
+     $59 = $58;
+    }
+    _reporter(36051, 8, 0, $59);
+    $60 = __gcry_hmac_selftest(9, $0, 56) | 0;
+    $61 = ($60 | 0) == 0;
+    if ($61) {
+     $63 = 0;
+    } else {
+     $62 = _gpg_strerror($60) | 0;
+     $63 = $62;
+    }
+    _reporter(36051, 9, 0, $63);
+    $64 = __gcry_hmac_selftest(10, $0, 56) | 0;
+    $65 = ($64 | 0) == 0;
+    if ($65) {
+     $67 = 0;
+    } else {
+     $66 = _gpg_strerror($64) | 0;
+     $67 = $66;
+    }
+    _reporter(36051, 10, 0, $67);
+    $68 = $52 | $$$0$i11;
+    $69 = $68 | $56;
+    $70 = $69 | $60;
+    $71 = $70 | $64;
+    $72 = ($71 | 0) == 0;
+    if ($72) {
+     $73 = __gcry_random_selftest(56) | 0;
+     $74 = ($73 | 0) == 0;
+     if (!$74) {
+      $77 = _gpg_strerror($73) | 0;
+      _reporter(52223, 0, 0, $77);
+      $$0 = 50;
+      $$09 = 4;
+      break;
+     }
+     _reporter(52223, 0, 0, 0);
+     $75 = __gcry_pk_selftest(1, $0, 56) | 0;
+     $76 = ($75 | 0) != 0;
+     if ($76) {
+      $78 = _gpg_strerror($75) | 0;
+      $79 = $78;
+     } else {
+      $79 = 0;
+     }
+     _reporter(40871, 1, 0, $79);
+     $80 = __gcry_pk_selftest(17, $0, 56) | 0;
+     $81 = ($80 | 0) == 0;
+     if ($81) {
+      _reporter(40871, 17, 0, 0);
+      $$ = $76 ? 4 : 3;
+      $$15 = $76 ? 50 : 0;
+      $$0 = $$15;
+      $$09 = $$;
+      break;
+     } else {
+      $82 = _gpg_strerror($80) | 0;
+      _reporter(40871, 17, 0, $82);
+      $$0 = 50;
+      $$09 = 4;
+      break;
+     }
+    } else {
+     $$0 = 50;
+     $$09 = 4;
+    }
+   } else {
+    $$0 = 50;
+    $$09 = 4;
+   }
+  } else {
+   $$0 = 50;
+   $$09 = 4;
+  }
+ } while (0);
+ $83 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $84 = ($83 | 0) == 1;
+ if ($84) {
+  return $$0 | 0;
+ }
+ _fips_new_state($$09);
+ return $$0 | 0;
+}
+
+function __gcry_mpi_lshift($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$032$i = 0, $$032$i62 = 0, $$032$in$i = 0, $$032$in$i61 = 0, $$066 = 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;
+ 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, $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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $14 = $1 + 8 | 0;
+  $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+  $16 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+  $22 = $1 + 16 | 0;
+  $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+  $24 = ($13 | 0) == 0;
+  if (!$24) {
+   $$066 = 0;
+   while (1) {
+    $25 = $23 + ($$066 << 2) | 0;
+    $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+    $27 = $21 + ($$066 << 2) | 0;
+    SAFE_HEAP_STORE($27 | 0, $26 | 0, 4);
+    $28 = $$066 + 1 | 0;
+    $exitcond = ($28 | 0) == ($13 | 0);
+    if ($exitcond) {
+     break;
+    } else {
+     $$066 = $28;
+    }
+   }
+  }
+  $29 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($29 | 0, $13 | 0, 4);
+  $30 = $1 + 12 | 0;
+  $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+  $32 = $0 + 12 | 0;
+  SAFE_HEAP_STORE($32 | 0, $31 | 0, 4);
+  $33 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($33 | 0, $15 | 0, 4);
+ }
+ $34 = ($3 | 0) == 0;
+ $35 = ($4 | 0) != 0;
+ $or$cond3 = $34 | $35;
+ do {
+  if ($or$cond3) {
+   if (!$11) {
+    $$pre = $0 + 4 | 0;
+    $$pre$phiZ2D = $$pre;
+    break;
+   }
+   $53 = $3 + 1 | 0;
+   $54 = $0 + 4 | 0;
+   $55 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+   $56 = ($55 | 0) == 0;
+   if (!$56) {
+    $57 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    $58 = $55 + $53 | 0;
+    $59 = $57 >>> 0 < $58 >>> 0;
+    if ($59) {
+     __gcry_mpi_resize($0, $58);
+    }
+    $60 = $0 + 16 | 0;
+    $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+    $62 = ($55 | 0) > 0;
+    if ($62) {
+     $$032$in$i61 = $55;
+     while (1) {
+      $$032$i62 = $$032$in$i61 + -1 | 0;
+      $63 = $61 + ($$032$i62 << 2) | 0;
+      $64 = SAFE_HEAP_LOAD($63 | 0, 4, 0) | 0 | 0;
+      $65 = $$032$in$i61 + $3 | 0;
+      $66 = $61 + ($65 << 2) | 0;
+      SAFE_HEAP_STORE($66 | 0, $64 | 0, 4);
+      $67 = ($$032$in$i61 | 0) > 1;
+      if ($67) {
+       $$032$in$i61 = $$032$i62;
+      } else {
+       break;
+      }
+     }
+    }
+    $68 = $53 << 2;
+    _memset($61 | 0, 0, $68 | 0) | 0;
+    $69 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+    $70 = $69 + $53 | 0;
+    SAFE_HEAP_STORE($54 | 0, $70 | 0, 4);
+   }
+   $71 = 32 - $4 | 0;
+   __gcry_mpi_rshift($0, $0, $71);
+   $$pre$phiZ2D = $54;
+  } else {
+   $36 = $0 + 4 | 0;
+   $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $38 = ($37 | 0) == 0;
+   if ($38) {
+    $$pre$phiZ2D = $36;
+   } else {
+    $39 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    $40 = $37 + $3 | 0;
+    $41 = $39 >>> 0 < $40 >>> 0;
+    if ($41) {
+     __gcry_mpi_resize($0, $40);
+    }
+    $42 = $0 + 16 | 0;
+    $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+      $47 = $$032$i + $3 | 0;
+      $48 = $43 + ($47 << 2) | 0;
+      SAFE_HEAP_STORE($48 | 0, $46 | 0, 4);
+      $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 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+    $52 = $51 + $3 | 0;
+    SAFE_HEAP_STORE($36 | 0, $52 | 0, 4);
+    $$pre$phiZ2D = $36;
+   }
+  }
+ } while (0);
+ $72 = SAFE_HEAP_LOAD($$pre$phiZ2D | 0, 4, 0) | 0 | 0;
+ $73 = ($72 | 0) > 0;
+ if (!$73) {
+  return;
+ }
+ $74 = $0 + 16 | 0;
+ $75 = SAFE_HEAP_LOAD($74 | 0, 4, 0) | 0 | 0;
+ $77 = $72;
+ while (1) {
+  $76 = $77 + -1 | 0;
+  $78 = $75 + ($76 << 2) | 0;
+  $79 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+  $80 = ($79 | 0) == 0;
+  if (!$80) {
+   label = 31;
+   break;
+  }
+  SAFE_HEAP_STORE($$pre$phiZ2D | 0, $76 | 0, 4);
+  $81 = ($77 | 0) > 1;
+  if ($81) {
+   $77 = $76;
+  } else {
+   label = 31;
+   break;
+  }
+ }
+ if ((label | 0) == 31) {
+  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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = __gcry_mpi_cmp_ui($5, 0) | 0;
+ $7 = ($6 | 0) == 0;
+ if ($7) {
+  $$0 = -1;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $8 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ switch ($8 | 0) {
+ case 0:
+  {
+   $9 = __gcry_mpi_new(0) | 0;
+   $10 = __gcry_mpi_new(0) | 0;
+   $11 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $12 = $3 + 16 | 0;
+   $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $14 = __gcry_mpi_invm($9, $11, $13) | 0;
+   $15 = ($14 | 0) == 0;
+   if ($15) {
+    __gcry_log_error(45341, $vararg_buffer);
+    __gcry_log_printmpi(45375, $11);
+    $16 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    __gcry_log_printmpi(45379, $16);
+   }
+   __gcry_mpi_mul($10, $9, $9);
+   $17 = $3 + 60 | 0;
+   $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+   $19 = ($18 | 0) == (0 | 0);
+   if ($19) {
+    $20 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mod($10, $10, $20);
+   } else {
+    __gcry_mpi_mod_barrett($10, $10, $18);
+   }
+   $21 = ($0 | 0) == (0 | 0);
+   do {
+    if (!$21) {
+     $22 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($0, $22, $10);
+     $23 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+     $24 = ($23 | 0) == (0 | 0);
+     if ($24) {
+      $25 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+    $29 = ($28 | 0) == (0 | 0);
+    if ($29) {
+     $30 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mod($27, $27, $30);
+    } else {
+     __gcry_mpi_mod_barrett($27, $27, $28);
+    }
+    $31 = $2 + 4 | 0;
+    $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mul($1, $32, $27);
+    $33 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+    $34 = ($33 | 0) == (0 | 0);
+    if ($34) {
+     $35 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_set($0, $37) | 0;
+   }
+   $38 = ($1 | 0) == (0 | 0);
+   if ($38) {
+    $$0 = 0;
+    STACKTOP = sp;
+    return $$0 | 0;
+   } else {
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, 45432 | 0, 4);
+    $vararg_ptr3 = $vararg_buffer1 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr3 | 0, 45456 | 0, 4);
+    __gcry_log_fatal(45383, $vararg_buffer1);
+   }
+   break;
+  }
+ case 2:
+  {
+   $39 = __gcry_mpi_new(0) | 0;
+   $40 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $41 = $3 + 16 | 0;
+   $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+   $43 = __gcry_mpi_invm($39, $40, $42) | 0;
+   $44 = ($43 | 0) == 0;
+   if ($44) {
+    __gcry_log_error(45341, $vararg_buffer4);
+    __gcry_log_printmpi(45375, $40);
+    $45 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+    __gcry_log_printmpi(45379, $45);
+   }
+   $46 = ($0 | 0) == (0 | 0);
+   do {
+    if (!$46) {
+     $47 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($0, $47, $39);
+     $48 = $3 + 60 | 0;
+     $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+     $50 = ($49 | 0) == (0 | 0);
+     if ($50) {
+      $51 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_mul($1, $54, $39);
+     $55 = $3 + 60 | 0;
+     $56 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+     $57 = ($56 | 0) == (0 | 0);
+     if ($57) {
+      $58 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 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_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 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 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 = 17;
+ } 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;
+   SAFE_HEAP_STORE($29 | 0, 1 | 0, 4);
+   $$0141 = $28;
+  }
+  $30 = __gcry_mpi_copy($8) | 0;
+  $31 = $30 + 8 | 0;
+  $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+  $33 = ($32 | 0) == 0;
+  $34 = $33 & 1;
+  SAFE_HEAP_STORE($31 | 0, $34 | 0, 4);
+  $$1 = $30;
+  $$1144 = $27;
+  $$3 = $$0141;
+ }
+ while (1) {
+  if ((label | 0) == 17) {
+   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 = 20;
+   } else {
+    $40 = __gcry_mpi_test_bit($$2, 0) | 0;
+    $41 = ($40 | 0) == 0;
+    if (!$41) {
+     label = 20;
+    }
+   }
+   if ((label | 0) == 20) {
+    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 = 17;
+   continue;
+  }
+  $44 = $$1 + 8 | 0;
+  $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+   $49 = ($48 | 0) == 0;
+   $50 = $49 & 1;
+   SAFE_HEAP_STORE($47 | 0, $50 | 0, 4);
+   if (!$17) {
+    __gcry_mpi_sub($$0146, $7, $$3);
+   }
+   SAFE_HEAP_STORE($47 | 0, $48 | 0, 4);
+   $51 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+   $52 = ($51 | 0) == 0;
+   $53 = $52 & 1;
+   SAFE_HEAP_STORE($44 | 0, $53 | 0, 4);
+   __gcry_mpi_set($24, $$1) | 0;
+   SAFE_HEAP_STORE($44 | 0, $51 | 0, 4);
+  }
+  __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 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 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 = 17;
+  }
+ }
+ __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_hmac256_update($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$03147$lcssa = 0, $$0314766 = 0, $$048$lcssa = 0, $$04865 = 0, $$1$lcssa 
= 0, $$1$ph = 0, $$132$lcssa = 0, $$132$ph = 0, $$13243 = 0, $$144 = 0, 
$$2334063 = 0, $$24162 = 0, $$lcssa = 0, $$mask = 0, $$mask$i = 0, $$mask$i35 = 
0, $$pre = 0, $$pre55 = 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$cond69 = 0, $scevgep = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $0 + 40 | 0;
+ $4 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+ $$mask = $4 & 1;
+ $5 = $$mask << 24 >> 24 == 0;
+ if (!$5) {
+  return;
+ }
+ $6 = $0 + 36 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == 64;
+ if ($8) {
+  $9 = $0 + 41 | 0;
+  _transform_1700($0, $9);
+  SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+  $10 = $0 + 32 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $12 = $11 + 1 | 0;
+  SAFE_HEAP_STORE($10 | 0, $12 | 0, 4);
+  $14 = 0;
+ } else {
+  $14 = $7;
+ }
+ $13 = ($1 | 0) == (0 | 0);
+ if ($13) {
+  return;
+ }
+ $15 = ($14 | 0) == 0;
+ L10 : do {
+  if ($15) {
+   $$1$ph = $1;
+   $$132$ph = $2;
+   $63 = 0;
+  } else {
+   $16 = ($2 | 0) == 0;
+   L12 : do {
+    if (!$16) {
+     $17 = ($14 | 0) < 64;
+     if ($17) {
+      $$0314766 = $2;
+      $$04865 = $1;
+      $20 = $14;
+      while (1) {
+       $18 = SAFE_HEAP_LOAD($$04865 >> 0 | 0, 1, 0) | 0 | 0;
+       $19 = $20 + 1 | 0;
+       SAFE_HEAP_STORE($6 | 0, $19 | 0, 4);
+       $21 = ($0 + 41 | 0) + $20 | 0;
+       SAFE_HEAP_STORE($21 >> 0 | 0, $18 | 0, 1);
+       $22 = $$0314766 + -1 | 0;
+       $23 = ($22 | 0) == 0;
+       if ($23) {
+        break L12;
+       }
+       $24 = $$04865 + 1 | 0;
+       $$pre = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+       $25 = ($$pre | 0) < 64;
+       if ($25) {
+        $$0314766 = $22;
+        $$04865 = $24;
+        $20 = $$pre;
+       } else {
+        $$03147$lcssa = $22;
+        $$048$lcssa = $24;
+        $$lcssa = $$pre;
+        break;
+       }
+      }
+     } else {
+      $$03147$lcssa = $2;
+      $$048$lcssa = $1;
+      $$lcssa = $14;
+     }
+     $26 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+     $$mask$i35 = $26 & 1;
+     $27 = $$mask$i35 << 24 >> 24 == 0;
+     $28 = ($$lcssa | 0) == 64;
+     $or$cond = $28 & $27;
+     if (!$or$cond) {
+      $$1$ph = $$048$lcssa;
+      $$132$ph = $$03147$lcssa;
+      $63 = $$lcssa;
+      break L10;
+     }
+     $34 = $0 + 41 | 0;
+     _transform_1700($0, $34);
+     SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+     $35 = $0 + 32 | 0;
+     $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+     $37 = $36 + 1 | 0;
+     SAFE_HEAP_STORE($35 | 0, $37 | 0, 4);
+     $$1$ph = $$048$lcssa;
+     $$132$ph = $$03147$lcssa;
+     $63 = 0;
+     break L10;
+    }
+   } while (0);
+   $38 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+   $$mask$i = $38 & 1;
+   $39 = $$mask$i << 24 >> 24 == 0;
+   if (!$39) {
+    return;
+   }
+   $40 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $41 = ($40 | 0) == 64;
+   if (!$41) {
+    return;
+   }
+   $42 = $0 + 41 | 0;
+   _transform_1700($0, $42);
+   SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+   $43 = $0 + 32 | 0;
+   $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+   $45 = $44 + 1 | 0;
+   SAFE_HEAP_STORE($43 | 0, $45 | 0, 4);
+   return;
+  }
+ } while (0);
+ $29 = $$132$ph >>> 0 > 63;
+ if ($29) {
+  $30 = $0 + 32 | 0;
+  $31 = $$132$ph + -64 | 0;
+  $32 = $31 & -64;
+  $33 = $32 + 64 | 0;
+  $$13243 = $$132$ph;
+  $$144 = $$1$ph;
+  while (1) {
+   _transform_1700($0, $$144);
+   SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+   $50 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+   $51 = $50 + 1 | 0;
+   SAFE_HEAP_STORE($30 | 0, $51 | 0, 4);
+   $52 = $$13243 + -64 | 0;
+   $53 = $$144 + 64 | 0;
+   $54 = $52 >>> 0 > 63;
+   if ($54) {
+    $$13243 = $52;
+    $$144 = $53;
+   } else {
+    break;
+   }
+  }
+  $46 = $31 - $32 | 0;
+  $scevgep = $$1$ph + $33 | 0;
+  $$1$lcssa = $scevgep;
+  $$132$lcssa = $46;
+  $48 = 0;
+ } else {
+  $$1$lcssa = $$1$ph;
+  $$132$lcssa = $$132$ph;
+  $48 = $63;
+ }
+ $47 = ($$132$lcssa | 0) != 0;
+ $49 = ($48 | 0) < 64;
+ $or$cond69 = $47 & $49;
+ if ($or$cond69) {
+  $$2334063 = $$132$lcssa;
+  $$24162 = $$1$lcssa;
+  $57 = $48;
+ } else {
+  return;
+ }
+ while (1) {
+  $55 = SAFE_HEAP_LOAD($$24162 >> 0 | 0, 1, 0) | 0 | 0;
+  $56 = $57 + 1 | 0;
+  SAFE_HEAP_STORE($6 | 0, $56 | 0, 4);
+  $58 = ($0 + 41 | 0) + $57 | 0;
+  SAFE_HEAP_STORE($58 >> 0 | 0, $55 | 0, 1);
+  $59 = $$2334063 + -1 | 0;
+  $60 = ($59 | 0) == 0;
+  if ($60) {
+   label = 22;
+   break;
+  }
+  $61 = $$24162 + 1 | 0;
+  $$pre55 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $62 = ($$pre55 | 0) < 64;
+  if ($62) {
+   $$2334063 = $59;
+   $$24162 = $61;
+   $57 = $$pre55;
+  } else {
+   label = 22;
+   break;
+  }
+ }
+ if ((label | 0) == 22) {
+  return;
+ }
+}
+
+function __gcry_private_realloc($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$1 = 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, $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_ptr1 = 0, $vararg_ptr5 = 0;
+ var 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 = SAFE_HEAP_LOAD(17594 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ if ($3) {
+  $72 = __gcry_private_is_secure($0) | 0;
+  $73 = ($72 | 0) == 0;
+  if ($73) {
+   $75 = _realloc($0, $1) | 0;
+   $$1 = $75;
+   STACKTOP = sp;
+   return $$1 | 0;
+  } else {
+   $74 = __gcry_secmem_realloc($0, $1) | 0;
+   $$1 = $74;
+   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;
+  SAFE_HEAP_STORE($7 >> 0 | 0, $9 | 0, 1);
+  $10 = $1 >>> 8;
+  $11 = $10 & 255;
+  $12 = $7 + 1 | 0;
+  SAFE_HEAP_STORE($12 >> 0 | 0, $11 | 0, 1);
+  $13 = $1 >>> 16;
+  $14 = $13 & 255;
+  $15 = $7 + 2 | 0;
+  SAFE_HEAP_STORE($15 >> 0 | 0, $14 | 0, 1);
+  $16 = $7 + 3 | 0;
+  SAFE_HEAP_STORE($16 >> 0 | 0, 85 | 0, 1);
+  $17 = $1 + 4 | 0;
+  $18 = $7 + $17 | 0;
+  SAFE_HEAP_STORE($18 >> 0 | 0, -86 | 0, 1);
+  $19 = $7 + 4 | 0;
+  $$1 = $19;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $20 = $0 + -1 | 0;
+ $21 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+ switch ($21 << 24 >> 24) {
+ case -52:
+ case 85:
+  {
+   break;
+  }
+ default:
+  {
+   $22 = $21 & 255;
+   SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, $22 | 0, 4);
+   __gcry_log_fatal(22844, $vararg_buffer);
+  }
+ }
+ $23 = $0 + -4 | 0;
+ $24 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+ $25 = $24 & 255;
+ $26 = $0 + -3 | 0;
+ $27 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+ $28 = $27 & 255;
+ $29 = $28 << 8;
+ $30 = $29 | $25;
+ $31 = $0 + -2 | 0;
+ $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+ $33 = $32 & 255;
+ $34 = $33 << 16;
+ $35 = $30 | $34;
+ $36 = $0 + $35 | 0;
+ $37 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+ $38 = $37 << 24 >> 24 == -86;
+ if (!$38) {
+  $39 = $21 & 255;
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, $0 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, $39 | 0, 4);
+  __gcry_log_fatal(22885, $vararg_buffer2);
+ }
+ $40 = $35 >>> 0 < $1 >>> 0;
+ if (!$40) {
+  $$1 = $0;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $41 = $21 << 24 >> 24 == -52;
+ $42 = ($1 | 0) == 0;
+ do {
+  if ($41) {
+   if ($42) {
+    _gpg_err_set_errno(22);
+    $$1 = 0;
+    STACKTOP = sp;
+    return $$1 | 0;
+   }
+   $43 = $1 + 5 | 0;
+   $44 = __gcry_secmem_malloc($43) | 0;
+   $45 = ($44 | 0) == (0 | 0);
+   if ($45) {
+    $$1 = 0;
+    STACKTOP = sp;
+    return $$1 | 0;
+   } else {
+    $46 = $1 & 255;
+    SAFE_HEAP_STORE($44 >> 0 | 0, $46 | 0, 1);
+    $47 = $1 >>> 8;
+    $48 = $47 & 255;
+    $49 = $44 + 1 | 0;
+    SAFE_HEAP_STORE($49 >> 0 | 0, $48 | 0, 1);
+    $50 = $1 >>> 16;
+    $51 = $50 & 255;
+    $52 = $44 + 2 | 0;
+    SAFE_HEAP_STORE($52 >> 0 | 0, $51 | 0, 1);
+    $53 = $44 + 3 | 0;
+    SAFE_HEAP_STORE($53 >> 0 | 0, -52 | 0, 1);
+    $54 = $1 + 4 | 0;
+    $55 = $44 + $54 | 0;
+    SAFE_HEAP_STORE($55 >> 0 | 0, -86 | 0, 1);
+    $$sink = $44;
+    break;
+   }
+  } else {
+   if ($42) {
+    _gpg_err_set_errno(22);
+    $$1 = 0;
+    STACKTOP = sp;
+    return $$1 | 0;
+   }
+   $56 = $1 + 5 | 0;
+   $57 = _malloc($56) | 0;
+   $58 = ($57 | 0) == (0 | 0);
+   if ($58) {
+    $$1 = 0;
+    STACKTOP = sp;
+    return $$1 | 0;
+   } else {
+    $59 = $1 & 255;
+    SAFE_HEAP_STORE($57 >> 0 | 0, $59 | 0, 1);
+    $60 = $1 >>> 8;
+    $61 = $60 & 255;
+    $62 = $57 + 1 | 0;
+    SAFE_HEAP_STORE($62 >> 0 | 0, $61 | 0, 1);
+    $63 = $1 >>> 16;
+    $64 = $63 & 255;
+    $65 = $57 + 2 | 0;
+    SAFE_HEAP_STORE($65 >> 0 | 0, $64 | 0, 1);
+    $66 = $57 + 3 | 0;
+    SAFE_HEAP_STORE($66 >> 0 | 0, 85 | 0, 1);
+    $67 = $1 + 4 | 0;
+    $68 = $57 + $67 | 0;
+    SAFE_HEAP_STORE($68 >> 0 | 0, -86 | 0, 1);
+    $$sink = $57;
+    break;
+   }
+  }
+ } while (0);
+ $69 = $$sink + 4 | 0;
+ $70 = $69 + $35 | 0;
+ $71 = $1 - $35 | 0;
+ _memcpy($69 | 0, $0 | 0, $35 | 0) | 0;
+ _memset($70 | 0, 0, $71 | 0) | 0;
+ __gcry_private_free($0);
+ $$1 = $69;
+ STACKTOP = sp;
+ return $$1 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $$mask = $3 & 2;
+ $4 = $$mask << 24 >> 24 == 0;
+ if (!$4) {
+  $5 = $0 + 105 | 0;
+  SAFE_HEAP_STORE($5 >> 0 | 0, 0 | 0, 1);
+  $6 = $0 + 106 | 0;
+  SAFE_HEAP_STORE($6 >> 0 | 0, 0 | 0, 1);
+  $7 = $0 + 107 | 0;
+  SAFE_HEAP_STORE($7 >> 0 | 0, 0 | 0, 1);
+  $8 = $0 + 108 | 0;
+  SAFE_HEAP_STORE($8 >> 0 | 0, 0 | 0, 1);
+  $9 = $0 + 109 | 0;
+  SAFE_HEAP_STORE($9 >> 0 | 0, 0 | 0, 1);
+  $10 = $0 + 110 | 0;
+  SAFE_HEAP_STORE($10 >> 0 | 0, 0 | 0, 1);
+  $11 = $0 + 111 | 0;
+  SAFE_HEAP_STORE($11 >> 0 | 0, 0 | 0, 1);
+  $12 = $0 + 112 | 0;
+  SAFE_HEAP_STORE($12 >> 0 | 0, 0 | 0, 1);
+  $13 = $0 + 113 | 0;
+  SAFE_HEAP_STORE($13 >> 0 | 0, 0 | 0, 1);
+  $14 = $0 + 114 | 0;
+  SAFE_HEAP_STORE($14 >> 0 | 0, 0 | 0, 1);
+  $15 = $0 + 115 | 0;
+  SAFE_HEAP_STORE($15 >> 0 | 0, 0 | 0, 1);
+  $16 = $0 + 116 | 0;
+  SAFE_HEAP_STORE($16 >> 0 | 0, 0 | 0, 1);
+  $17 = $0 + 117 | 0;
+  SAFE_HEAP_STORE($17 >> 0 | 0, 0 | 0, 1);
+  $18 = $0 + 118 | 0;
+  SAFE_HEAP_STORE($18 >> 0 | 0, 0 | 0, 1);
+  $19 = $0 + 119 | 0;
+  SAFE_HEAP_STORE($19 >> 0 | 0, 0 | 0, 1);
+  $20 = $0 + 120 | 0;
+  SAFE_HEAP_STORE($20 >> 0 | 0, 0 | 0, 1);
+  $21 = $0 + 121 | 0;
+  SAFE_HEAP_STORE($21 >> 0 | 0, 0 | 0, 1);
+  $22 = $0 + 122 | 0;
+  SAFE_HEAP_STORE($22 >> 0 | 0, 0 | 0, 1);
+  $23 = $0 + 123 | 0;
+  SAFE_HEAP_STORE($23 >> 0 | 0, 0 | 0, 1);
+  $24 = $0 + 124 | 0;
+  SAFE_HEAP_STORE($24 >> 0 | 0, 0 | 0, 1);
+  $25 = $0 + 125 | 0;
+  SAFE_HEAP_STORE($25 >> 0 | 0, 0 | 0, 1);
+  $26 = $0 + 126 | 0;
+  SAFE_HEAP_STORE($26 >> 0 | 0, 0 | 0, 1);
+  $27 = $0 + 127 | 0;
+  SAFE_HEAP_STORE($27 >> 0 | 0, 0 | 0, 1);
+  $28 = $0 + 128 | 0;
+  SAFE_HEAP_STORE($28 >> 0 | 0, 0 | 0, 1);
+  $29 = $0 + 129 | 0;
+  SAFE_HEAP_STORE($29 >> 0 | 0, 0 | 0, 1);
+  $30 = $0 + 130 | 0;
+  SAFE_HEAP_STORE($30 >> 0 | 0, 0 | 0, 1);
+  $31 = $0 + 131 | 0;
+  SAFE_HEAP_STORE($31 >> 0 | 0, 0 | 0, 1);
+  $32 = $0 + 132 | 0;
+  SAFE_HEAP_STORE($32 >> 0 | 0, 0 | 0, 1);
+  $33 = $0 + 133 | 0;
+  SAFE_HEAP_STORE($33 >> 0 | 0, 0 | 0, 1);
+  $34 = $0 + 134 | 0;
+  SAFE_HEAP_STORE($34 >> 0 | 0, 0 | 0, 1);
+  $35 = $0 + 135 | 0;
+  SAFE_HEAP_STORE($35 >> 0 | 0, 0 | 0, 1);
+  $36 = $0 + 136 | 0;
+  SAFE_HEAP_STORE($36 >> 0 | 0, 0 | 0, 1);
+  $37 = $0 + 137 | 0;
+  SAFE_HEAP_STORE($37 >> 0 | 0, 0 | 0, 1);
+  $38 = $0 + 138 | 0;
+  SAFE_HEAP_STORE($38 >> 0 | 0, 0 | 0, 1);
+  $39 = $0 + 139 | 0;
+  SAFE_HEAP_STORE($39 >> 0 | 0, 0 | 0, 1);
+  $40 = $0 + 140 | 0;
+  SAFE_HEAP_STORE($40 >> 0 | 0, 0 | 0, 1);
+  $41 = $0 + 141 | 0;
+  SAFE_HEAP_STORE($41 >> 0 | 0, 0 | 0, 1);
+  $42 = $0 + 142 | 0;
+  SAFE_HEAP_STORE($42 >> 0 | 0, 0 | 0, 1);
+  $43 = $0 + 143 | 0;
+  SAFE_HEAP_STORE($43 >> 0 | 0, 0 | 0, 1);
+  $44 = $0 + 144 | 0;
+  SAFE_HEAP_STORE($44 >> 0 | 0, 0 | 0, 1);
+  $45 = $0 + 145 | 0;
+  SAFE_HEAP_STORE($45 >> 0 | 0, 0 | 0, 1);
+  $46 = $0 + 146 | 0;
+  SAFE_HEAP_STORE($46 >> 0 | 0, 0 | 0, 1);
+  $47 = $0 + 147 | 0;
+  SAFE_HEAP_STORE($47 >> 0 | 0, 0 | 0, 1);
+  $48 = $0 + 148 | 0;
+  SAFE_HEAP_STORE($48 >> 0 | 0, 0 | 0, 1);
+  $49 = $0 + 149 | 0;
+  SAFE_HEAP_STORE($49 >> 0 | 0, 0 | 0, 1);
+  $50 = $0 + 150 | 0;
+  SAFE_HEAP_STORE($50 >> 0 | 0, 0 | 0, 1);
+  $51 = $0 + 151 | 0;
+  SAFE_HEAP_STORE($51 >> 0 | 0, 0 | 0, 1);
+  $52 = $0 + 152 | 0;
+  SAFE_HEAP_STORE($52 >> 0 | 0, 0 | 0, 1);
+  $53 = $0 + 153 | 0;
+  SAFE_HEAP_STORE($53 >> 0 | 0, 0 | 0, 1);
+  $54 = $0 + 154 | 0;
+  SAFE_HEAP_STORE($54 >> 0 | 0, 0 | 0, 1);
+  $55 = $0 + 155 | 0;
+  SAFE_HEAP_STORE($55 >> 0 | 0, 0 | 0, 1);
+  $56 = $0 + 156 | 0;
+  SAFE_HEAP_STORE($56 >> 0 | 0, 0 | 0, 1);
+  $57 = $0 + 157 | 0;
+  SAFE_HEAP_STORE($57 >> 0 | 0, 0 | 0, 1);
+  $58 = $0 + 158 | 0;
+  SAFE_HEAP_STORE($58 >> 0 | 0, 0 | 0, 1);
+  $59 = $0 + 159 | 0;
+  SAFE_HEAP_STORE($59 >> 0 | 0, 0 | 0, 1);
+  $60 = $0 + 160 | 0;
+  SAFE_HEAP_STORE($60 >> 0 | 0, 0 | 0, 1);
+  $61 = $0 + 161 | 0;
+  SAFE_HEAP_STORE($61 >> 0 | 0, 0 | 0, 1);
+  $62 = $0 + 162 | 0;
+  SAFE_HEAP_STORE($62 >> 0 | 0, 0 | 0, 1);
+  $63 = $0 + 163 | 0;
+  SAFE_HEAP_STORE($63 >> 0 | 0, 0 | 0, 1);
+  $64 = $0 + 164 | 0;
+  SAFE_HEAP_STORE($64 >> 0 | 0, 0 | 0, 1);
+  $65 = $0 + 165 | 0;
+  SAFE_HEAP_STORE($65 >> 0 | 0, 0 | 0, 1);
+  $66 = $0 + 166 | 0;
+  SAFE_HEAP_STORE($66 >> 0 | 0, 0 | 0, 1);
+  $67 = $0 + 167 | 0;
+  SAFE_HEAP_STORE($67 >> 0 | 0, 0 | 0, 1);
+  $68 = $0 + 168 | 0;
+  SAFE_HEAP_STORE($68 >> 0 | 0, 0 | 0, 1);
+ }
+ _free($0);
+ return;
+}
+
+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$ph = 0, $$05558 = 0, $$not = 0, $$not56 = 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, $8 = 0;
+ var $9 = 0, $notlhs = 0, $notrhs = 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, 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;
+ __gcry_rngfips_initialize(1);
+ $notlhs = ($0 | 0) == (0 | 0);
+ $notrhs = ($2 | 0) == (0 | 0);
+ $or$cond$not = $notlhs | $notrhs;
+ $8 = ($3 | 0) != 16;
+ $or$cond3 = $or$cond$not | $8;
+ $$not = ($4 | 0) == (0 | 0);
+ $or$cond5$not = $or$cond3 | $$not;
+ $9 = ($5 | 0) != 16;
+ $or$cond7 = $or$cond5$not | $9;
+ $$not56 = ($6 | 0) == (0 | 0);
+ $or$cond9$not = $or$cond7 | $$not56;
+ $10 = ($7 | 0) != 16;
+ $or$cond11 = $or$cond9$not | $10;
+ if ($or$cond11) {
+  $$0 = 45;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $11 = __gcry_calloc(1, 84) | 0;
+ $12 = ($11 | 0) == (0 | 0);
+ if ($12) {
+  $13 = _gpg_err_code_from_syserror() | 0;
+  $$0 = $13;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ SAFE_HEAP_STORE($11 >> 0 | 0, 17 | 0, 1);
+ $14 = $11 + 16 | 0;
+ SAFE_HEAP_STORE($14 >> 0 | 0, 42 | 0, 1);
+ $15 = $11 + 33 | 0;
+ SAFE_HEAP_STORE($15 >> 0 | 0, -119 | 0, 1);
+ $16 = $11 + 50 | 0;
+ SAFE_HEAP_STORE($16 >> 0 | 0, -4 | 0, 1);
+ $17 = $11 + 4 | 0;
+ $18 = __gcry_cipher_open($17, 7, 1, 1) | 0;
+ $19 = ($18 | 0) == 0;
+ if ($19) {
+  $20 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+  $21 = __gcry_cipher_setkey($20, $2, 16) | 0;
+  $22 = ($21 | 0) == 0;
+  if ($22) {
+   $23 = _getpid() | 0;
+   $24 = $11 + 60 | 0;
+   SAFE_HEAP_STORE($24 | 0, $23 | 0, 4);
+   $25 = $11 + 17 | 0;
+   dest = $25;
+   src = $4;
+   stop = dest + 16 | 0;
+   do {
+    SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+    dest = dest + 1 | 0;
+    src = src + 1 | 0;
+   } while ((dest | 0) < (stop | 0));
+   $26 = $11 + 8 | 0;
+   $27 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+   $28 = $27 | 1;
+   SAFE_HEAP_STORE($26 >> 0 | 0, $28 | 0, 1);
+   $29 = _getpid() | 0;
+   $30 = $11 + 64 | 0;
+   SAFE_HEAP_STORE($30 | 0, $29 | 0, 4);
+   $31 = $11 + 68 | 0;
+   dest = $31;
+   src = $6;
+   stop = dest + 16 | 0;
+   do {
+    SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+    dest = dest + 1 | 0;
+    src = src + 1 | 0;
+   } while ((dest | 0) < (stop | 0));
+   $32 = $11 + 52 | 0;
+   SAFE_HEAP_STORE($32 | 0, $31 | 0, 4);
+   $33 = $11 + 80 | 0;
+   $34 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+   $35 = $34 & 255;
+   $36 = $35 << 24;
+   $37 = $11 + 81 | 0;
+   $38 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+   $39 = $38 & 255;
+   $40 = $39 << 16;
+   $41 = $40 | $36;
+   $42 = $11 + 82 | 0;
+   $43 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+   $44 = $43 & 255;
+   $45 = $44 << 8;
+   $46 = $41 | $45;
+   $47 = $11 + 83 | 0;
+   $48 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+   $49 = $48 & 255;
+   $50 = $46 | $49;
+   $51 = $11 + 56 | 0;
+   SAFE_HEAP_STORE($51 | 0, $50 | 0, 4);
+   $52 = $1 & 1;
+   $53 = ($52 | 0) == 0;
+   if (!$53) {
+    $54 = $11 + 51 | 0;
+    SAFE_HEAP_STORE($54 >> 0 | 0, 1 | 0, 1);
+   }
+   $55 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+   $56 = $55 << 24 >> 24 == 17;
+   if (!$56) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, $11 | 0, 4);
+    __gcry_log_fatal(51167, $vararg_buffer);
+   }
+   $57 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+   $58 = $57 << 24 >> 24 == 42;
+   if (!$58) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, $11 | 0, 4);
+    __gcry_log_fatal(51167, $vararg_buffer);
+   }
+   $59 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+   $60 = $59 << 24 >> 24 == -119;
+   if (!$60) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, $11 | 0, 4);
+    __gcry_log_fatal(51167, $vararg_buffer);
+   }
+   $61 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+   $62 = $61 << 24 >> 24 == -4;
+   if ($62) {
+    $$05558 = 0;
+    $storemerge = $11;
+   } else {
+    SAFE_HEAP_STORE($vararg_buffer | 0, $11 | 0, 4);
+    __gcry_log_fatal(51167, $vararg_buffer);
+   }
+  } else {
+   $$055$ph = $21;
+   label = 13;
+  }
+ } else {
+  $$055$ph = $18;
+  label = 13;
+ }
+ if ((label | 0) == 13) {
+  $63 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+  __gcry_cipher_close($63);
+  __gcry_free($11);
+  $$05558 = $$055$ph;
+  $storemerge = 0;
+ }
+ SAFE_HEAP_STORE($0 | 0, $storemerge | 0, 4);
+ $$0 = $$05558;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _GNUNET_CRYPTO_eddsa_key_create() {
+ 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, $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, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 = 0;
+ var $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 + 96 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(96 | 0);
+ $vararg_buffer12 = sp + 40 | 0;
+ $vararg_buffer6 = sp + 24 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 80 | 0;
+ $3 = sp + 76 | 0;
+ $4 = sp + 72 | 0;
+ $9 = _gcry_sexp_build($3, 0, 19903, $vararg_buffer) | 0;
+ $5 = $9;
+ $10 = 0 != ($9 | 0);
+ if ($10) {
+  $6 = 604;
+  $11 = SAFE_HEAP_LOAD(216 * 4 | 0, 4, 0) | 0 | 0;
+  $12 = ($11 | 0) == -1;
+  if ($12) {
+   $13 = $6;
+   $14 = _GNUNET_get_log_call_status(1, 20980, 19405, 19947, $13) | 0;
+   SAFE_HEAP_STORE(216 * 4 | 0, $14 | 0, 4);
+  }
+  $15 = _GNUNET_get_log_skip() | 0;
+  $16 = ($15 | 0) > 0;
+  if ($16) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $17 = SAFE_HEAP_LOAD(216 * 4 | 0, 4, 0) | 0 | 0;
+   $18 = ($17 | 0) != 0;
+   if ($18) {
+    $19 = $5;
+    $20 = _gcry_strerror($19) | 0;
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, 19528 | 0, 4);
+    $vararg_ptr3 = $vararg_buffer1 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr3 | 0, 19405 | 0, 4);
+    $vararg_ptr4 = $vararg_buffer1 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr4 | 0, 604 | 0, 4);
+    $vararg_ptr5 = $vararg_buffer1 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr5 | 0, $20 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer1);
+   }
+  }
+  $0 = 0;
+  $56 = $0;
+  STACKTOP = sp;
+  return $56 | 0;
+ }
+ $21 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $22 = _gcry_pk_genkey($2, $21) | 0;
+ $5 = $22;
+ $23 = 0 != ($22 | 0);
+ if ($23) {
+  $7 = 609;
+  $24 = SAFE_HEAP_LOAD(217 * 4 | 0, 4, 0) | 0 | 0;
+  $25 = ($24 | 0) == -1;
+  if ($25) {
+   $26 = $7;
+   $27 = _GNUNET_get_log_call_status(1, 20980, 19405, 19947, $26) | 0;
+   SAFE_HEAP_STORE(217 * 4 | 0, $27 | 0, 4);
+  }
+  $28 = _GNUNET_get_log_skip() | 0;
+  $29 = ($28 | 0) > 0;
+  if ($29) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $30 = SAFE_HEAP_LOAD(217 * 4 | 0, 4, 0) | 0 | 0;
+   $31 = ($30 | 0) != 0;
+   if ($31) {
+    $32 = $5;
+    $33 = _gcry_strerror($32) | 0;
+    SAFE_HEAP_STORE($vararg_buffer6 | 0, 19805 | 0, 4);
+    $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr9 | 0, 19405 | 0, 4);
+    $vararg_ptr10 = $vararg_buffer6 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr10 | 0, 609 | 0, 4);
+    $vararg_ptr11 = $vararg_buffer6 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr11 | 0, $33 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer6);
+   }
+  }
+  $34 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  _gcry_sexp_release($34);
+  $0 = 0;
+  $56 = $0;
+  STACKTOP = sp;
+  return $56 | 0;
+ }
+ $35 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($35);
+ $36 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $37 = _key_from_sexp($4, $36, 37667, 35384) | 0;
+ $5 = $37;
+ $38 = 0 != ($37 | 0);
+ if (!$38) {
+  $50 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  _gcry_sexp_release($50);
+  $51 = _GNUNET_xmalloc_(32, 19405, 629) | 0;
+  $1 = $51;
+  $52 = $1;
+  $53 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  _GNUNET_CRYPTO_mpi_print_unsigned($52, 32, $53);
+  $54 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($54);
+  $55 = $1;
+  $0 = $55;
+  $56 = $0;
+  STACKTOP = sp;
+  return $56 | 0;
+ }
+ $8 = 624;
+ $39 = SAFE_HEAP_LOAD(218 * 4 | 0, 4, 0) | 0 | 0;
+ $40 = ($39 | 0) == -1;
+ if ($40) {
+  $41 = $8;
+  $42 = _GNUNET_get_log_call_status(1, 20980, 19405, 19947, $41) | 0;
+  SAFE_HEAP_STORE(218 * 4 | 0, $42 | 0, 4);
+ }
+ $43 = _GNUNET_get_log_skip() | 0;
+ $44 = ($43 | 0) > 0;
+ if ($44) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $45 = SAFE_HEAP_LOAD(218 * 4 | 0, 4, 0) | 0 | 0;
+  $46 = ($45 | 0) != 0;
+  if ($46) {
+   $47 = $5;
+   $48 = _gcry_strerror($47) | 0;
+   SAFE_HEAP_STORE($vararg_buffer12 | 0, 19820 | 0, 4);
+   $vararg_ptr15 = $vararg_buffer12 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr15 | 0, 19405 | 0, 4);
+   $vararg_ptr16 = $vararg_buffer12 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr16 | 0, 624 | 0, 4);
+   $vararg_ptr17 = $vararg_buffer12 + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr17 | 0, $48 | 0, 4);
+   _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer12);
+  }
+ }
+ $49 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($49);
+ $0 = 0;
+ $56 = $0;
+ STACKTOP = sp;
+ return $56 | 0;
+}
+
+function _GNUNET_CRYPTO_ecdsa_key_create() {
+ 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, $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, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 = 0;
+ var $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 + 96 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(96 | 0);
+ $vararg_buffer12 = sp + 40 | 0;
+ $vararg_buffer6 = sp + 24 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 80 | 0;
+ $3 = sp + 76 | 0;
+ $4 = sp + 72 | 0;
+ $9 = _gcry_sexp_build($3, 0, 19834, $vararg_buffer) | 0;
+ $5 = $9;
+ $10 = 0 != ($9 | 0);
+ if ($10) {
+  $6 = 555;
+  $11 = SAFE_HEAP_LOAD(213 * 4 | 0, 4, 0) | 0 | 0;
+  $12 = ($11 | 0) == -1;
+  if ($12) {
+   $13 = $6;
+   $14 = _GNUNET_get_log_call_status(1, 20980, 19405, 19872, $13) | 0;
+   SAFE_HEAP_STORE(213 * 4 | 0, $14 | 0, 4);
+  }
+  $15 = _GNUNET_get_log_skip() | 0;
+  $16 = ($15 | 0) > 0;
+  if ($16) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $17 = SAFE_HEAP_LOAD(213 * 4 | 0, 4, 0) | 0 | 0;
+   $18 = ($17 | 0) != 0;
+   if ($18) {
+    $19 = $5;
+    $20 = _gcry_strerror($19) | 0;
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, 19528 | 0, 4);
+    $vararg_ptr3 = $vararg_buffer1 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr3 | 0, 19405 | 0, 4);
+    $vararg_ptr4 = $vararg_buffer1 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr4 | 0, 555 | 0, 4);
+    $vararg_ptr5 = $vararg_buffer1 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr5 | 0, $20 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer1);
+   }
+  }
+  $0 = 0;
+  $56 = $0;
+  STACKTOP = sp;
+  return $56 | 0;
+ }
+ $21 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $22 = _gcry_pk_genkey($2, $21) | 0;
+ $5 = $22;
+ $23 = 0 != ($22 | 0);
+ if ($23) {
+  $7 = 560;
+  $24 = SAFE_HEAP_LOAD(214 * 4 | 0, 4, 0) | 0 | 0;
+  $25 = ($24 | 0) == -1;
+  if ($25) {
+   $26 = $7;
+   $27 = _GNUNET_get_log_call_status(1, 20980, 19405, 19872, $26) | 0;
+   SAFE_HEAP_STORE(214 * 4 | 0, $27 | 0, 4);
+  }
+  $28 = _GNUNET_get_log_skip() | 0;
+  $29 = ($28 | 0) > 0;
+  if ($29) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $30 = SAFE_HEAP_LOAD(214 * 4 | 0, 4, 0) | 0 | 0;
+   $31 = ($30 | 0) != 0;
+   if ($31) {
+    $32 = $5;
+    $33 = _gcry_strerror($32) | 0;
+    SAFE_HEAP_STORE($vararg_buffer6 | 0, 19805 | 0, 4);
+    $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr9 | 0, 19405 | 0, 4);
+    $vararg_ptr10 = $vararg_buffer6 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr10 | 0, 560 | 0, 4);
+    $vararg_ptr11 = $vararg_buffer6 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr11 | 0, $33 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer6);
+   }
+  }
+  $34 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  _gcry_sexp_release($34);
+  $0 = 0;
+  $56 = $0;
+  STACKTOP = sp;
+  return $56 | 0;
+ }
+ $35 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($35);
+ $36 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $37 = _key_from_sexp($4, $36, 37667, 35384) | 0;
+ $5 = $37;
+ $38 = 0 != ($37 | 0);
+ if (!$38) {
+  $50 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  _gcry_sexp_release($50);
+  $51 = _GNUNET_xmalloc_(32, 19405, 580) | 0;
+  $1 = $51;
+  $52 = $1;
+  $53 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  _GNUNET_CRYPTO_mpi_print_unsigned($52, 32, $53);
+  $54 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($54);
+  $55 = $1;
+  $0 = $55;
+  $56 = $0;
+  STACKTOP = sp;
+  return $56 | 0;
+ }
+ $8 = 575;
+ $39 = SAFE_HEAP_LOAD(215 * 4 | 0, 4, 0) | 0 | 0;
+ $40 = ($39 | 0) == -1;
+ if ($40) {
+  $41 = $8;
+  $42 = _GNUNET_get_log_call_status(1, 20980, 19405, 19872, $41) | 0;
+  SAFE_HEAP_STORE(215 * 4 | 0, $42 | 0, 4);
+ }
+ $43 = _GNUNET_get_log_skip() | 0;
+ $44 = ($43 | 0) > 0;
+ if ($44) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $45 = SAFE_HEAP_LOAD(215 * 4 | 0, 4, 0) | 0 | 0;
+  $46 = ($45 | 0) != 0;
+  if ($46) {
+   $47 = $5;
+   $48 = _gcry_strerror($47) | 0;
+   SAFE_HEAP_STORE($vararg_buffer12 | 0, 19820 | 0, 4);
+   $vararg_ptr15 = $vararg_buffer12 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr15 | 0, 19405 | 0, 4);
+   $vararg_ptr16 = $vararg_buffer12 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr16 | 0, 575 | 0, 4);
+   $vararg_ptr17 = $vararg_buffer12 + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr17 | 0, $48 | 0, 4);
+   _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer12);
+  }
+ }
+ $49 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($49);
+ $0 = 0;
+ $56 = $0;
+ STACKTOP = sp;
+ return $56 | 0;
+}
+
+function _GNUNET_CRYPTO_ecdhe_key_create() {
+ 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, $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, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer1 = 0, $vararg_buffer12 = 0;
+ var $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 + 96 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(96 | 0);
+ $vararg_buffer12 = sp + 40 | 0;
+ $vararg_buffer6 = sp + 24 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 80 | 0;
+ $3 = sp + 76 | 0;
+ $4 = sp + 72 | 0;
+ $9 = _gcry_sexp_build($3, 0, 19719, $vararg_buffer) | 0;
+ $5 = $9;
+ $10 = 0 != ($9 | 0);
+ if ($10) {
+  $6 = 505;
+  $11 = SAFE_HEAP_LOAD(210 * 4 | 0, 4, 0) | 0 | 0;
+  $12 = ($11 | 0) == -1;
+  if ($12) {
+   $13 = $6;
+   $14 = _GNUNET_get_log_call_status(1, 20980, 19405, 19774, $13) | 0;
+   SAFE_HEAP_STORE(210 * 4 | 0, $14 | 0, 4);
+  }
+  $15 = _GNUNET_get_log_skip() | 0;
+  $16 = ($15 | 0) > 0;
+  if ($16) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $17 = SAFE_HEAP_LOAD(210 * 4 | 0, 4, 0) | 0 | 0;
+   $18 = ($17 | 0) != 0;
+   if ($18) {
+    $19 = $5;
+    $20 = _gcry_strerror($19) | 0;
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, 19528 | 0, 4);
+    $vararg_ptr3 = $vararg_buffer1 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr3 | 0, 19405 | 0, 4);
+    $vararg_ptr4 = $vararg_buffer1 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr4 | 0, 505 | 0, 4);
+    $vararg_ptr5 = $vararg_buffer1 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr5 | 0, $20 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer1);
+   }
+  }
+  $0 = 0;
+  $56 = $0;
+  STACKTOP = sp;
+  return $56 | 0;
+ }
+ $21 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $22 = _gcry_pk_genkey($2, $21) | 0;
+ $5 = $22;
+ $23 = 0 != ($22 | 0);
+ if ($23) {
+  $7 = 510;
+  $24 = SAFE_HEAP_LOAD(211 * 4 | 0, 4, 0) | 0 | 0;
+  $25 = ($24 | 0) == -1;
+  if ($25) {
+   $26 = $7;
+   $27 = _GNUNET_get_log_call_status(1, 20980, 19405, 19774, $26) | 0;
+   SAFE_HEAP_STORE(211 * 4 | 0, $27 | 0, 4);
+  }
+  $28 = _GNUNET_get_log_skip() | 0;
+  $29 = ($28 | 0) > 0;
+  if ($29) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $30 = SAFE_HEAP_LOAD(211 * 4 | 0, 4, 0) | 0 | 0;
+   $31 = ($30 | 0) != 0;
+   if ($31) {
+    $32 = $5;
+    $33 = _gcry_strerror($32) | 0;
+    SAFE_HEAP_STORE($vararg_buffer6 | 0, 19805 | 0, 4);
+    $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr9 | 0, 19405 | 0, 4);
+    $vararg_ptr10 = $vararg_buffer6 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr10 | 0, 510 | 0, 4);
+    $vararg_ptr11 = $vararg_buffer6 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr11 | 0, $33 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer6);
+   }
+  }
+  $34 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  _gcry_sexp_release($34);
+  $0 = 0;
+  $56 = $0;
+  STACKTOP = sp;
+  return $56 | 0;
+ }
+ $35 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($35);
+ $36 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $37 = _key_from_sexp($4, $36, 37667, 35384) | 0;
+ $5 = $37;
+ $38 = 0 != ($37 | 0);
+ if (!$38) {
+  $50 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  _gcry_sexp_release($50);
+  $51 = _GNUNET_xmalloc_(32, 19405, 530) | 0;
+  $1 = $51;
+  $52 = $1;
+  $53 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  _GNUNET_CRYPTO_mpi_print_unsigned($52, 32, $53);
+  $54 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($54);
+  $55 = $1;
+  $0 = $55;
+  $56 = $0;
+  STACKTOP = sp;
+  return $56 | 0;
+ }
+ $8 = 525;
+ $39 = SAFE_HEAP_LOAD(212 * 4 | 0, 4, 0) | 0 | 0;
+ $40 = ($39 | 0) == -1;
+ if ($40) {
+  $41 = $8;
+  $42 = _GNUNET_get_log_call_status(1, 20980, 19405, 19774, $41) | 0;
+  SAFE_HEAP_STORE(212 * 4 | 0, $42 | 0, 4);
+ }
+ $43 = _GNUNET_get_log_skip() | 0;
+ $44 = ($43 | 0) > 0;
+ if ($44) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $45 = SAFE_HEAP_LOAD(212 * 4 | 0, 4, 0) | 0 | 0;
+  $46 = ($45 | 0) != 0;
+  if ($46) {
+   $47 = $5;
+   $48 = _gcry_strerror($47) | 0;
+   SAFE_HEAP_STORE($vararg_buffer12 | 0, 19820 | 0, 4);
+   $vararg_ptr15 = $vararg_buffer12 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr15 | 0, 19405 | 0, 4);
+   $vararg_ptr16 = $vararg_buffer12 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr16 | 0, 525 | 0, 4);
+   $vararg_ptr17 = $vararg_buffer12 + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr17 | 0, $48 | 0, 4);
+   _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer12);
+  }
+ }
+ $49 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($49);
+ $0 = 0;
+ $56 = $0;
+ STACKTOP = sp;
+ return $56 | 0;
+}
+
+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, 
$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, $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;
+ 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 + 24 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $6 = sp + 56 | 0;
+ $8 = sp + 48 | 0;
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $13 = $5;
+ $14 = _gcry_mpi_get_flag($13, 2) | 0;
+ $15 = ($14 | 0) != 0;
+ if ($15) {
+  $16 = $5;
+  $17 = _gcry_mpi_get_opaque($16, $8) | 0;
+  $9 = $17;
+  $18 = $9;
+  $19 = ($18 | 0) != (0 | 0);
+  if ($19) {
+   $28 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+   $29 = $28 + 7 | 0;
+   $30 = ($29 >>> 0) / 8 & -1;
+   SAFE_HEAP_STORE($6 | 0, $30 | 0, 4);
+   $31 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $32 = $4;
+   $33 = $31 >>> 0 > $32 >>> 0;
+   if ($33) {
+    $34 = $4;
+    SAFE_HEAP_STORE($6 | 0, $34 | 0, 4);
+   }
+   $35 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $36 = 0 != ($35 | 0);
+   if ($36) {
+    $37 = $3;
+    $38 = $9;
+    $39 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    _memcpy($37 | 0, $38 | 0, $39 | 0) | 0;
+   }
+   $40 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $41 = $4;
+   $42 = $40 >>> 0 < $41 >>> 0;
+   if (!$42) {
+    STACKTOP = sp;
+    return;
+   }
+   $43 = $3;
+   $44 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $45 = $43 + $44 | 0;
+   $46 = $4;
+   $47 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $48 = $46 - $47 | 0;
+   _memset($45 | 0, 0, $48 | 0) | 0;
+   STACKTOP = sp;
+   return;
+  }
+  $10 = 89;
+  $20 = SAFE_HEAP_LOAD(237 * 4 | 0, 4, 0) | 0 | 0;
+  $21 = ($20 | 0) == -1;
+  if ($21) {
+   $22 = $10;
+   $23 = _GNUNET_get_log_call_status(1, 0, 20485, 20498, $22) | 0;
+   SAFE_HEAP_STORE(237 * 4 | 0, $23 | 0, 4);
+  }
+  $24 = _GNUNET_get_log_skip() | 0;
+  $25 = ($24 | 0) > 0;
+  if ($25) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $26 = SAFE_HEAP_LOAD(237 * 4 | 0, 4, 0) | 0 | 0;
+  $27 = ($26 | 0) != 0;
+  if (!$27) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 20485 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 89 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ } else {
+  $49 = $4;
+  SAFE_HEAP_STORE($6 | 0, $49 | 0, 4);
+  $50 = $3;
+  $51 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $52 = $5;
+  $53 = _gcry_mpi_print(5, $50, $51, $6, $52) | 0;
+  $7 = $53;
+  $54 = 0 != ($53 | 0);
+  if (!$54) {
+   $73 = $3;
+   $74 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $75 = $4;
+   _adjust($73, $74, $75);
+   STACKTOP = sp;
+   return;
+  }
+  $11 = 110;
+  $55 = SAFE_HEAP_LOAD(238 * 4 | 0, 4, 0) | 0 | 0;
+  $56 = ($55 | 0) == -1;
+  if ($56) {
+   $57 = $11;
+   $58 = _GNUNET_get_log_call_status(1, 20980, 20485, 20498, $57) | 0;
+   SAFE_HEAP_STORE(238 * 4 | 0, $58 | 0, 4);
+  }
+  $59 = _GNUNET_get_log_skip() | 0;
+  $60 = ($59 | 0) > 0;
+  if ($60) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $61 = SAFE_HEAP_LOAD(238 * 4 | 0, 4, 0) | 0 | 0;
+   $62 = ($61 | 0) != 0;
+   if ($62) {
+    $63 = $7;
+    $64 = _gcry_strerror($63) | 0;
+    SAFE_HEAP_STORE($vararg_buffer2 | 0, 20568 | 0, 4);
+    $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr5 | 0, 20485 | 0, 4);
+    $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr6 | 0, 110 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer2 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, $64 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer2);
+   }
+  }
+  $12 = 111;
+  $65 = SAFE_HEAP_LOAD(239 * 4 | 0, 4, 0) | 0 | 0;
+  $66 = ($65 | 0) == -1;
+  if ($66) {
+   $67 = $12;
+   $68 = _GNUNET_get_log_call_status(1, 0, 20485, 20498, $67) | 0;
+   SAFE_HEAP_STORE(239 * 4 | 0, $68 | 0, 4);
+  }
+  $69 = _GNUNET_get_log_skip() | 0;
+  $70 = ($69 | 0) > 0;
+  if ($70) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $71 = SAFE_HEAP_LOAD(239 * 4 | 0, 4, 0) | 0 | 0;
+  $72 = ($71 | 0) != 0;
+  if (!$72) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer8 | 0, 20485 | 0, 4);
+  $vararg_ptr11 = $vararg_buffer8 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr11 | 0, 111 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer8);
+  _GNUNET_abort_();
+ }
+}
+
+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 $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, $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;
+ 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, $or$cond = 0, 
$vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 80 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(80 | 0);
+ $vararg_buffer3 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $13 = sp + 40 | 0;
+ $6 = $0;
+ $7 = $1;
+ $8 = $2;
+ $9 = $3;
+ $10 = $4;
+ $19 = $9;
+ $20 = ($19 | 0) != (0 | 0);
+ $21 = $10;
+ $22 = ($21 | 0) != (0 | 0);
+ $or$cond = $20 & $22;
+ if (!$or$cond) {
+  $17 = 738;
+  $23 = SAFE_HEAP_LOAD(256 * 4 | 0, 4, 0) | 0 | 0;
+  $24 = ($23 | 0) == -1;
+  if ($24) {
+   $25 = $17;
+   $26 = _GNUNET_get_log_call_status(1, 0, 20893, 21282, $25) | 0;
+   SAFE_HEAP_STORE(256 * 4 | 0, $26 | 0, 4);
+  }
+  $27 = _GNUNET_get_log_skip() | 0;
+  $28 = ($27 | 0) > 0;
+  if ($28) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $29 = SAFE_HEAP_LOAD(256 * 4 | 0, 4, 0) | 0 | 0;
+  $30 = ($29 | 0) != 0;
+  if (!$30) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+  $vararg_ptr2 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr2 | 0, 738 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $31 = $8;
+ $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ $33 = _key_from_sexp_107($13, $32, 37679, 39061) | 0;
+ $16 = $33;
+ $34 = $16;
+ $35 = 0 != ($34 | 0);
+ if ($35) {
+  $36 = $8;
+  $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+  $38 = _key_from_sexp_107($13, $37, 40693, 39061) | 0;
+  $16 = $38;
+ }
+ $39 = $16;
+ $40 = 0 != ($39 | 0);
+ if (!$40) {
+  $51 = $8;
+  $52 = $6;
+  $53 = _rsa_full_domain_hash($51, $52) | 0;
+  $12 = $53;
+  $54 = $12;
+  $55 = (0 | 0) == ($54 | 0);
+  do {
+   if (!$55) {
+    $56 = $8;
+    $57 = $7;
+    $58 = _rsa_blinding_key_derive($56, $57) | 0;
+    $11 = $58;
+    $59 = $11;
+    $60 = (0 | 0) == ($59 | 0);
+    if ($60) {
+     $61 = $12;
+     _gcry_mpi_release($61);
+     break;
+    }
+    $62 = _gcry_mpi_new(0) | 0;
+    $14 = $62;
+    $63 = $14;
+    $64 = $11;
+    $65 = SAFE_HEAP_LOAD($64 | 0, 4, 0) | 0 | 0;
+    $66 = $13 + 4 | 0;
+    $67 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+    $68 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    _gcry_mpi_powm($63, $65, $67, $68);
+    $69 = _gcry_mpi_new(0) | 0;
+    $15 = $69;
+    $70 = $15;
+    $71 = $12;
+    $72 = $14;
+    $73 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    _gcry_mpi_mulm($70, $71, $72, $73);
+    $74 = $12;
+    _gcry_mpi_release($74);
+    $75 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    _gcry_mpi_release($75);
+    $76 = $13 + 4 | 0;
+    $77 = SAFE_HEAP_LOAD($76 | 0, 4, 0) | 0 | 0;
+    _gcry_mpi_release($77);
+    $78 = $14;
+    _gcry_mpi_release($78);
+    $79 = $11;
+    _rsa_blinding_key_free($79);
+    $80 = $15;
+    $81 = $9;
+    $82 = _numeric_mpi_alloc_n_print($80, $81) | 0;
+    $83 = $10;
+    SAFE_HEAP_STORE($83 | 0, $82 | 0, 4);
+    $84 = $15;
+    _gcry_mpi_release($84);
+    $5 = 1;
+    $90 = $5;
+    STACKTOP = sp;
+    return $90 | 0;
+   }
+  } while (0);
+  $85 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($85);
+  $86 = $13 + 4 | 0;
+  $87 = SAFE_HEAP_LOAD($86 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($87);
+  $88 = $9;
+  SAFE_HEAP_STORE($88 | 0, 0 | 0, 4);
+  $89 = $10;
+  SAFE_HEAP_STORE($89 | 0, 0 | 0, 4);
+  $5 = 0;
+  $90 = $5;
+  STACKTOP = sp;
+  return $90 | 0;
+ }
+ $18 = 744;
+ $41 = SAFE_HEAP_LOAD(257 * 4 | 0, 4, 0) | 0 | 0;
+ $42 = ($41 | 0) == -1;
+ if ($42) {
+  $43 = $18;
+  $44 = _GNUNET_get_log_call_status(1, 0, 20893, 21282, $43) | 0;
+  SAFE_HEAP_STORE(257 * 4 | 0, $44 | 0, 4);
+ }
+ $45 = _GNUNET_get_log_skip() | 0;
+ $46 = ($45 | 0) > 0;
+ if ($46) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $47 = SAFE_HEAP_LOAD(257 * 4 | 0, 4, 0) | 0 | 0;
+  $48 = ($47 | 0) != 0;
+  if ($48) {
+   SAFE_HEAP_STORE($vararg_buffer3 | 0, 20893 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, 744 | 0, 4);
+   _GNUNET_log_nocheck(1, 61295, $vararg_buffer3);
+  }
+ }
+ $49 = $9;
+ SAFE_HEAP_STORE($49 | 0, 0 | 0, 4);
+ $50 = $10;
+ SAFE_HEAP_STORE($50 | 0, 0 | 0, 4);
+ $5 = 0;
+ $90 = $5;
+ STACKTOP = sp;
+ return $90 | 0;
+}
+
+function __gcry_md_hash_buffer($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$013$i = 0, $$02$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, $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, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, label = 0;
+ var 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;
+ $4 = sp + 12 | 0;
+ L1 : do {
+  switch ($0 | 0) {
+  case 2:
+   {
+    __gcry_sha1_hash_buffer($1, $2, $3);
+    STACKTOP = sp;
+    return;
+    break;
+   }
+  case 3:
+   {
+    $5 = __gcry_fips_mode() | 0;
+    $6 = ($5 | 0) == 0;
+    if (!$6) {
+     $53 = $4;
+     break L1;
+    }
+    __gcry_rmd160_hash_buffer($1, $2, $3);
+    STACKTOP = sp;
+    return;
+    break;
+   }
+  default:
+   {
+    $7 = ($0 | 0) == 1;
+    if ($7) {
+     $8 = __gcry_fips_mode() | 0;
+     $9 = ($8 | 0) == 0;
+     if ($9) {
+      $53 = $4;
+     } else {
+      __gcry_inactivate_fips_mode(36944);
+      $10 = __gcry_enforced_fips_mode() | 0;
+      $11 = ($10 | 0) == 0;
+      if ($11) {
+       $53 = $4;
+      } else {
+       __gcry_fips_noreturn();
+      }
+     }
+    } else {
+     $53 = $4;
+    }
+   }
+  }
+ } while (0);
+ $12 = _md_open($4, $0, 0) | 0;
+ $13 = ($12 | 0) == 0;
+ if (!$13) {
+  $14 = $12 & 65535;
+  $15 = $14 | 536870912;
+  $16 = _gpg_strerror($15) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, $16 | 0, 4);
+  __gcry_log_bug(37147, $vararg_buffer);
+ }
+ $17 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ _md_write($17, $2, $3);
+ _md_final($17);
+ $$idx$val = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $$idx$val$idx = $$idx$val + 16 | 0;
+ $$idx$val$idx$val = SAFE_HEAP_LOAD($$idx$val$idx | 0, 4, 0) | 0 | 0;
+ $18 = ($0 | 0) == 0;
+ $19 = ($$idx$val$idx$val | 0) == (0 | 0);
+ do {
+  if ($18) {
+   if ($19) {
+    __gcry_bug(36953, 816, 37090);
+   }
+   $20 = $$idx$val$idx$val + 4 | 0;
+   $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+   $22 = ($21 | 0) == (0 | 0);
+   if (!$22) {
+    __gcry_log_debug(37051, $vararg_buffer2);
+   }
+   $23 = SAFE_HEAP_LOAD($$idx$val$idx$val | 0, 4, 0) | 0 | 0;
+   $24 = $23 + 40 | 0;
+   $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+   $26 = $$idx$val$idx$val + 16 | 0;
+   $27 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($25 | 0, 63 | 0) | 0) & 63]($26) | 0;
+   $$013$i = $27;
+  } else {
+   if ($19) {
+    __gcry_bug(36953, 816, 37090);
+   } else {
+    $$02$i = $$idx$val$idx$val;
+   }
+   while (1) {
+    $28 = SAFE_HEAP_LOAD($$02$i | 0, 4, 0) | 0 | 0;
+    $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+    $30 = ($29 | 0) == ($0 | 0);
+    if ($30) {
+     label = 19;
+     break;
+    }
+    $35 = $$02$i + 4 | 0;
+    $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+    $37 = ($36 | 0) == (0 | 0);
+    if ($37) {
+     label = 21;
+     break;
+    } else {
+     $$02$i = $36;
+    }
+   }
+   if ((label | 0) == 19) {
+    $31 = $28 + 40 | 0;
+    $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+    $33 = $$02$i + 16 | 0;
+    $34 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($32 | 0, 63 | 0) | 0) & 63]($33) | 0;
+    $$013$i = $34;
+    break;
+   } else if ((label | 0) == 21) {
+    __gcry_bug(36953, 816, 37090);
+   }
+  }
+ } while (0);
+ $38 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+ $39 = ($38 | 0) == ($0 | 0);
+ if ($39) {
+  $$ph$i = 7620;
+  label = 28;
+ } else {
+  $40 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+  $41 = ($40 | 0) == ($0 | 0);
+  if ($41) {
+   $$ph$i = 7756;
+   label = 28;
+  } else {
+   $42 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+   $43 = ($42 | 0) == ($0 | 0);
+   if ($43) {
+    $$ph$i = 7696;
+    label = 28;
+   } else {
+    $44 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+    $45 = ($44 | 0) == ($0 | 0);
+    if ($45) {
+     $$ph$i = 7820;
+     label = 28;
+    } else {
+     $46 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+     $47 = ($46 | 0) == ($0 | 0);
+     if ($47) {
+      $$ph$i = 7884;
+      label = 28;
+     } else {
+      $48 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+      $49 = ($48 | 0) == ($0 | 0);
+      if ($49) {
+       $$ph$i = 7456;
+       label = 28;
+      } else {
+       $52 = 0;
+      }
+     }
+    }
+   }
+  }
+ }
+ if ((label | 0) == 28) {
+  $50 = $$ph$i + 24 | 0;
+  $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+  $52 = $51;
+ }
+ _memcpy($1 | 0, $$013$i | 0, $52 | 0) | 0;
+ _md_close($17);
+ STACKTOP = sp;
+ return;
+}
+
+function _GNUNET_CRYPTO_eddsa_verify($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, $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, $7 = 0, 
$8 = 0, $9 = 0, $vararg_buffer = 0;
+ var $vararg_buffer10 = 0, $vararg_buffer14 = 0, $vararg_buffer4 = 0, 
$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 + 96 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(96 | 0);
+ $vararg_buffer14 = sp + 40 | 0;
+ $vararg_buffer10 = sp + 32 | 0;
+ $vararg_buffer4 = sp + 16 | 0;
+ $vararg_buffer = sp;
+ $10 = sp + 68 | 0;
+ $11 = sp + 64 | 0;
+ $5 = $0;
+ $6 = $1;
+ $7 = $2;
+ $8 = $3;
+ $15 = $5;
+ $16 = $6;
+ $17 = $16 + 4 | 0;
+ $18 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($17 + 1 >> 0 | 
0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($17 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($17 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+ $19 = _ntohl($18) | 0;
+ $20 = ($15 | 0) != ($19 | 0);
+ if ($20) {
+  $4 = -1;
+  $62 = $4;
+  STACKTOP = sp;
+  return $62 | 0;
+ }
+ $21 = $7;
+ $22 = $7;
+ $23 = $22 + 32 | 0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, 32 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $21 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, 32 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $23 | 0, 4);
+ $24 = _gcry_sexp_build($10, 0, 20141, $vararg_buffer) | 0;
+ $12 = $24;
+ $25 = 0 != ($24 | 0);
+ if ($25) {
+  $13 = 918;
+  $26 = SAFE_HEAP_LOAD(222 * 4 | 0, 4, 0) | 0 | 0;
+  $27 = ($26 | 0) == -1;
+  if ($27) {
+   $28 = $13;
+   $29 = _GNUNET_get_log_call_status(1, 20980, 19405, 20170, $28) | 0;
+   SAFE_HEAP_STORE(222 * 4 | 0, $29 | 0, 4);
+  }
+  $30 = _GNUNET_get_log_skip() | 0;
+  $31 = ($30 | 0) > 0;
+  if ($31) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $32 = SAFE_HEAP_LOAD(222 * 4 | 0, 4, 0) | 0 | 0;
+   $33 = ($32 | 0) != 0;
+   if ($33) {
+    $34 = $12;
+    $35 = _gcry_strerror($34) | 0;
+    SAFE_HEAP_STORE($vararg_buffer4 | 0, 19528 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer4 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, 19405 | 0, 4);
+    $vararg_ptr8 = $vararg_buffer4 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr8 | 0, 918 | 0, 4);
+    $vararg_ptr9 = $vararg_buffer4 + 12 | 0;
+    SAFE_HEAP_STORE($vararg_ptr9 | 0, $35 | 0, 4);
+    _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer4);
+   }
+  }
+  $4 = -1;
+  $62 = $4;
+  STACKTOP = sp;
+  return $62 | 0;
+ }
+ $36 = $6;
+ $37 = _data_to_eddsa_value($36) | 0;
+ $9 = $37;
+ $38 = $8;
+ SAFE_HEAP_STORE($vararg_buffer10 | 0, 32 | 0, 4);
+ $vararg_ptr13 = $vararg_buffer10 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr13 | 0, $38 | 0, 4);
+ $39 = _gcry_sexp_build($11, 0, 20197, $vararg_buffer10) | 0;
+ $12 = $39;
+ $40 = 0 != ($39 | 0);
+ if ($40) {
+  $41 = $9;
+  _gcry_sexp_release($41);
+  $42 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  _gcry_sexp_release($42);
+  $4 = -1;
+  $62 = $4;
+  STACKTOP = sp;
+  return $62 | 0;
+ }
+ $43 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $44 = $9;
+ $45 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $46 = _gcry_pk_verify($43, $44, $45) | 0;
+ $12 = $46;
+ $47 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($47);
+ $48 = $9;
+ _gcry_sexp_release($48);
+ $49 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($49);
+ $50 = $12;
+ $51 = 0 != ($50 | 0);
+ if (!$51) {
+  $4 = 1;
+  $62 = $4;
+  STACKTOP = sp;
+  return $62 | 0;
+ }
+ $14 = 938;
+ $52 = SAFE_HEAP_LOAD(223 * 4 | 0, 4, 0) | 0 | 0;
+ $53 = ($52 | 0) == -1;
+ if ($53) {
+  $54 = $14;
+  $55 = _GNUNET_get_log_call_status(8, 20980, 19405, 20170, $54) | 0;
+  SAFE_HEAP_STORE(223 * 4 | 0, $55 | 0, 4);
+ }
+ $56 = _GNUNET_get_log_skip() | 0;
+ $57 = ($56 | 0) > 0;
+ if ($57) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $58 = SAFE_HEAP_LOAD(223 * 4 | 0, 4, 0) | 0 | 0;
+  $59 = ($58 | 0) != 0;
+  if ($59) {
+   $60 = $12;
+   $61 = _gcry_strerror($60) | 0;
+   SAFE_HEAP_STORE($vararg_buffer14 | 0, 19405 | 0, 4);
+   $vararg_ptr17 = $vararg_buffer14 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr17 | 0, 938 | 0, 4);
+   $vararg_ptr18 = $vararg_buffer14 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr18 | 0, $61 | 0, 4);
+   _GNUNET_log_from_nocheck(8, 20980, 20249, $vararg_buffer14);
+  }
+ }
+ $4 = -1;
+ $62 = $4;
+ STACKTOP = sp;
+ return $62 | 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 $$ = 0, $$0106 = 0, $$0119 = 0, $$109 = 0, $$110 = 0, $$1115 = 0, 
$$2$lcssa = 0, $$2112 = 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, 
$50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 
0, $59 = 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, $8 = 0, $9 = 0, $exitcond = 0, $exitcond123 = 0, $not$ = 0, 
$not$111 = 0, $or$cond = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $7 = sp;
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ $8 = $2 + 7 | 0;
+ $9 = $8 >>> 3;
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $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;
+ }
+ $$109 = $or$cond ? $5 : 71847;
+ $$ = $or$cond ? $6 : 0;
+ __gcry_md_hash_buffer($3, $13, $$109, $$);
+ $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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  __gcry_free($26);
+  __gcry_free($13);
+  $$0106 = $25;
+  STACKTOP = sp;
+  return $$0106 | 0;
+ }
+ $27 = $23 + $12 | 0;
+ $28 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $29 = $28 + 1 | 0;
+ $30 = $29 + $12 | 0;
+ $31 = $22 - $12 | 0;
+ $32 = _mgf1($23, $12, $30, $31, $3) | 0;
+ $not$ = ($32 | 0) != 0;
+ $$110 = $not$ & 1;
+ $33 = ($12 | 0) == 0;
+ if (!$33) {
+  $$0119 = 0;
+  while (1) {
+   $34 = $29 + $$0119 | 0;
+   $35 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+   $36 = $23 + $$0119 | 0;
+   $37 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+   $38 = $37 ^ $35;
+   SAFE_HEAP_STORE($36 >> 0 | 0, $38 | 0, 1);
+   $39 = $$0119 + 1 | 0;
+   $exitcond123 = ($39 | 0) == ($12 | 0);
+   if ($exitcond123) {
+    break;
+   } else {
+    $$0119 = $39;
+   }
+  }
+ }
+ $40 = _mgf1($27, $31, $23, $12, $3) | 0;
+ $41 = ($31 | 0) == 0;
+ if (!$41) {
+  $$1115 = 0;
+  while (1) {
+   $42 = $30 + $$1115 | 0;
+   $43 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+   $44 = $27 + $$1115 | 0;
+   $45 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+   $46 = $45 ^ $43;
+   SAFE_HEAP_STORE($44 >> 0 | 0, $46 | 0, 1);
+   $47 = $$1115 + 1 | 0;
+   $exitcond = ($47 | 0) == ($31 | 0);
+   if ($exitcond) {
+    break;
+   } else {
+    $$1115 = $47;
+   }
+  }
+ }
+ $48 = _memcmp($13, $27, $12) | 0;
+ $49 = $12 >>> 0 < $31 >>> 0;
+ L25 : do {
+  if ($49) {
+   $$2112 = $12;
+   while (1) {
+    $50 = $27 + $$2112 | 0;
+    $51 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+    $52 = $51 << 24 >> 24 == 1;
+    if ($52) {
+     $$2$lcssa = $$2112;
+     break L25;
+    }
+    $53 = $$2112 + 1 | 0;
+    $54 = $53 >>> 0 < $31 >>> 0;
+    if ($54) {
+     $$2112 = $53;
+    } else {
+     $$2$lcssa = $53;
+     break;
+    }
+   }
+  } else {
+   $$2$lcssa = $12;
+  }
+ } while (0);
+ $55 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $56 = SAFE_HEAP_LOAD($55 >> 0 | 0, 1, 0) | 0 | 0;
+ $57 = $56 << 24 >> 24 == 0;
+ __gcry_free($13);
+ $58 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ __gcry_free($58);
+ $59 = $40 | $$110;
+ $60 = $59 | $48;
+ $61 = ($60 | 0) == 0;
+ $not$111 = ($$2$lcssa | 0) != ($31 | 0);
+ $62 = $61 & $not$111;
+ $63 = $62 & $57;
+ if (!$63) {
+  __gcry_free($23);
+  $$0106 = 155;
+  STACKTOP = sp;
+  return $$0106 | 0;
+ }
+ $64 = $$2$lcssa + 1 | 0;
+ $65 = $27 + $64 | 0;
+ $66 = $31 - $64 | 0;
+ _memmove($23 | 0, $65 | 0, $66 | 0) | 0;
+ SAFE_HEAP_STORE($0 | 0, $23 | 0, 4);
+ SAFE_HEAP_STORE($1 | 0, $66 | 0, 4);
+ $67 = __gcry_get_debug_flag(1) | 0;
+ $68 = ($67 | 0) == 0;
+ if ($68) {
+  $$0106 = 0;
+  STACKTOP = sp;
+  return $$0106 | 0;
+ }
+ $69 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $70 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ __gcry_log_printhex(38954, $69, $70);
+ $$0106 = 0;
+ STACKTOP = sp;
+ return $$0106 | 0;
+}
+
+function __gcry_mpi_cmp($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$ = 0, $$0 = 0, $$016$i = 0, $$016$in$i = 0, $$phi$trans$insert = 0, 
$$phi$trans$insert59 = 0, $$pre = 0, $$pre60 = 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, $7 = 0, $8 = 0, $9 = 0, $not$ = 0, $or$cond = 0, $tmp = 0, label = 0, 
sp = 0;
+ sp = STACKTOP;
+ $2 = ($0 | 0) != (0 | 0);
+ if ($2) {
+  $3 = $0 + 12 | 0;
+  $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $5 = $4 & 4;
+  $6 = ($5 | 0) == 0;
+  if ($6) {
+   label = 3;
+  } else {
+   $13 = $4;
+   label = 7;
+  }
+ } else {
+  label = 3;
+ }
+ do {
+  if ((label | 0) == 3) {
+   $7 = ($1 | 0) == (0 | 0);
+   if (!$7) {
+    $8 = $1 + 12 | 0;
+    $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    $10 = $9 & 4;
+    $11 = ($10 | 0) == 0;
+    if (!$11) {
+     if (!$2) {
+      $22 = $9;
+      label = 12;
+      break;
+     }
+     $$phi$trans$insert = $0 + 12 | 0;
+     $$pre = SAFE_HEAP_LOAD($$phi$trans$insert | 0, 4, 0) | 0 | 0;
+     $13 = $$pre;
+     label = 7;
+     break;
+    }
+   }
+   __gcry_mpi_normalize($0);
+   __gcry_mpi_normalize($1);
+   $39 = $0 + 4 | 0;
+   $40 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+   $41 = $1 + 4 | 0;
+   $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+   $43 = $0 + 8 | 0;
+   $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+   $45 = ($44 | 0) == 0;
+   $46 = $1 + 8 | 0;
+   $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+   $48 = ($47 | 0) == 0;
+   if ($45) {
+    if ($48) {
+     $50 = 0;
+    } else {
+     $$0 = 1;
+     return $$0 | 0;
+    }
+   } else {
+    if ($48) {
+     $$0 = -1;
+     return $$0 | 0;
+    } else {
+     $50 = $47;
+    }
+   }
+   $49 = ($40 | 0) == ($42 | 0);
+   do {
+    if (!$49) {
+     $51 = ($50 | 0) == 0;
+     if ($45) {
+      if (!$51) {
+       break;
+      }
+      $52 = $40 - $42 | 0;
+      $$0 = $52;
+      return $$0 | 0;
+     } else {
+      if ($51) {
+       break;
+      }
+      $53 = $42 + $40 | 0;
+      $$0 = $53;
+      return $$0 | 0;
+     }
+    }
+   } while (0);
+   $54 = ($40 | 0) == 0;
+   if ($54) {
+    $$0 = 0;
+    return $$0 | 0;
+   }
+   $55 = $0 + 16 | 0;
+   $56 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+   $57 = $1 + 16 | 0;
+   $58 = SAFE_HEAP_LOAD($57 | 0, 4, 0) | 0 | 0;
+   $$016$in$i = $40;
+   while (1) {
+    $$016$i = $$016$in$i + -1 | 0;
+    $59 = ($$016$in$i | 0) > 0;
+    if (!$59) {
+     $$0 = 0;
+     label = 31;
+     break;
+    }
+    $60 = $56 + ($$016$i << 2) | 0;
+    $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+    $62 = $58 + ($$016$i << 2) | 0;
+    $63 = SAFE_HEAP_LOAD($62 | 0, 4, 0) | 0 | 0;
+    $64 = ($61 | 0) == ($63 | 0);
+    if ($64) {
+     $$016$in$i = $$016$i;
+    } else {
+     break;
+    }
+   }
+   if ((label | 0) == 31) {
+    return $$0 | 0;
+   }
+   $not$ = $61 >>> 0 <= $63 >>> 0;
+   $65 = ($44 | 0) != 0;
+   $tmp = $not$ ^ $65;
+   $$ = $tmp ? -1 : 1;
+   $$0 = $$;
+   return $$0 | 0;
+  }
+ } while (0);
+ do {
+  if ((label | 0) == 7) {
+   $12 = $13 & 4;
+   $14 = ($12 | 0) == 0;
+   if ($14) {
+    $20 = ($1 | 0) != (0 | 0);
+    $or$cond = $20 & $14;
+    if (!$or$cond) {
+     break;
+    }
+    $$phi$trans$insert59 = $1 + 12 | 0;
+    $$pre60 = SAFE_HEAP_LOAD($$phi$trans$insert59 | 0, 4, 0) | 0 | 0;
+    $22 = $$pre60;
+    label = 12;
+    break;
+   }
+   $15 = ($1 | 0) == (0 | 0);
+   if ($15) {
+    $$0 = -1;
+    return $$0 | 0;
+   }
+   $16 = $1 + 12 | 0;
+   $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+   $18 = $17 & 4;
+   $19 = ($18 | 0) == 0;
+   if ($19) {
+    $$0 = -1;
+    return $$0 | 0;
+   }
+  }
+ } while (0);
+ if ((label | 0) == 12) {
+  $21 = $22 & 4;
+  $23 = ($21 | 0) == 0;
+  if (!$23) {
+   $$0 = 1;
+   return $$0 | 0;
+  }
+ }
+ $24 = $0 + 8 | 0;
+ $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+ $26 = $1 + 8 | 0;
+ $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+ $28 = $25 | $27;
+ $29 = ($28 | 0) == 0;
+ if ($29) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $30 = ($25 | 0) < ($27 | 0);
+ if ($30) {
+  $$0 = -1;
+  return $$0 | 0;
+ }
+ $31 = ($25 | 0) > ($27 | 0);
+ if ($31) {
+  $$0 = 1;
+  return $$0 | 0;
+ }
+ $32 = $0 + 16 | 0;
+ $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+ $34 = $1 + 16 | 0;
+ $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+ $36 = $25 + 7 | 0;
+ $37 = ($36 | 0) / 8 & -1;
+ $38 = _memcmp($33, $35, $37) | 0;
+ $$0 = $38;
+ return $$0 | 0;
+}
+
+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 $$$091$us = 0, $$091101$us = 0, $$093100$us = 0, $$095121 = 0, $$1 = 0, 
$$194$$us = 0, $$194102$us = 0, $$199 = 0, $$199$in = 0, $$2103$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, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, 
$not$$us = 0, $or$cond = 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;
+ SAFE_HEAP_STORE($6 | 0, $8 | 0, 4);
+ $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;
+ }
+ SAFE_HEAP_STORE($12 >> 0 | 0, 0 | 0, 1);
+ $15 = $12 + 1 | 0;
+ SAFE_HEAP_STORE($15 >> 0 | 0, 2 | 0, 1);
+ $16 = -3 - $3 | 0;
+ $17 = $16 + $8 | 0;
+ $18 = ($17 | 0) > 0;
+ if (!$18) {
+  __gcry_assert_failed(38682, 38688, 95, 38701);
+ }
+ $19 = ($4 | 0) == (0 | 0);
+ if ($19) {
+  $28 = __gcry_random_bytes_secure($17, 1) | 0;
+  while (1) {
+   $$091101$us = 0;
+   $$093100$us = 0;
+   while (1) {
+    $45 = $28 + $$093100$us | 0;
+    $46 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+    $47 = $46 << 24 >> 24 == 0;
+    $48 = $47 & 1;
+    $$$091$us = $48 + $$091101$us | 0;
+    $49 = $$093100$us + 1 | 0;
+    $exitcond = ($49 | 0) == ($17 | 0);
+    if ($exitcond) {
+     break;
+    } else {
+     $$091101$us = $$$091$us;
+     $$093100$us = $49;
+    }
+   }
+   $50 = ($$$091$us | 0) == 0;
+   if ($50) {
+    break;
+   }
+   $29 = ($$$091$us | 0) / 128 & -1;
+   $30 = $$$091$us + 3 | 0;
+   $31 = $30 + $29 | 0;
+   $32 = __gcry_random_bytes_secure($31, 1) | 0;
+   $33 = ($31 | 0) == 0;
+   if (!$33) {
+    $$194102$us = 0;
+    $$2103$us = $31;
+    while (1) {
+     $34 = $28 + $$194102$us | 0;
+     $35 = SAFE_HEAP_LOAD($34 >> 0 | 0, 1, 0) | 0 | 0;
+     $36 = $35 << 24 >> 24 == 0;
+     $37 = $$2103$us + -1 | 0;
+     if ($36) {
+      $38 = $32 + $37 | 0;
+      $39 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+      SAFE_HEAP_STORE($34 >> 0 | 0, $39 | 0, 1);
+      $$3$us = $37;
+      $40 = $39;
+     } else {
+      $$3$us = $$2103$us;
+      $40 = $35;
+     }
+     $not$$us = $40 << 24 >> 24 != 0;
+     $41 = $not$$us & 1;
+     $$194$$us = $41 + $$194102$us | 0;
+     $42 = ($$194$$us | 0) < ($17 | 0);
+     $43 = ($$3$us | 0) != 0;
+     $44 = $42 & $43;
+     if ($44) {
+      $$194102$us = $$194$$us;
+      $$2103$us = $$3$us;
+     } else {
+      break;
+     }
+    }
+   }
+   __gcry_free($32);
+  }
+  $51 = $12 + 2 | 0;
+  _memcpy($51 | 0, $28 | 0, $17 | 0) | 0;
+  __gcry_free($28);
+  $$199$in = $17;
+ } else {
+  $20 = ($17 | 0) == ($5 | 0);
+  if (!$20) {
+   __gcry_free($12);
+   $$1 = 45;
+   STACKTOP = sp;
+   return $$1 | 0;
+  }
+  $21 = ($5 | 0) == 0;
+  L32 : do {
+   if (!$21) {
+    $$095121 = 0;
+    while (1) {
+     $24 = $4 + $$095121 | 0;
+     $25 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+     $26 = $25 << 24 >> 24 == 0;
+     $22 = $$095121 + 1 | 0;
+     if ($26) {
+      break;
+     }
+     $23 = $22 >>> 0 < $5 >>> 0;
+     if ($23) {
+      $$095121 = $22;
+     } else {
+      break L32;
+     }
+    }
+    __gcry_free($12);
+    $$1 = 45;
+    STACKTOP = sp;
+    return $$1 | 0;
+   }
+  } while (0);
+  $27 = $12 + 2 | 0;
+  _memcpy($27 | 0, $4 | 0, $5 | 0) | 0;
+  $$199$in = $5;
+ }
+ $$199 = $$199$in + 2 | 0;
+ $52 = $$199$in + 3 | 0;
+ $53 = $12 + $$199 | 0;
+ SAFE_HEAP_STORE($53 >> 0 | 0, 0 | 0, 1);
+ $54 = $12 + $52 | 0;
+ _memcpy($54 | 0, $2 | 0, $3 | 0) | 0;
+ $55 = $52 + $3 | 0;
+ $56 = ($55 | 0) == ($8 | 0);
+ if (!$56) {
+  __gcry_assert_failed(38732, 38688, 153, 38701);
+ }
+ $57 = __gcry_mpi_scan($0, 5, $12, $8, $6) | 0;
+ $58 = ($57 | 0) == 0;
+ if ($58) {
+  $59 = __gcry_get_debug_flag(1) | 0;
+  $60 = ($59 | 0) == 0;
+  if (!$60) {
+   $61 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   __gcry_log_printmpi(38744, $61);
+  }
+ }
+ __gcry_free($12);
+ $$1 = $57;
+ STACKTOP = sp;
+ return $$1 | 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$i = 0, $$011 = 0, $$012 = 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, $70 = 0, 
$71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 
0, $8 = 0, $9 = 0, label = 0;
+ var sp = 0;
+ sp = STACKTOP;
+ $4 = ($2 | 0) == 0;
+ $5 = 0 == 0;
+ $6 = $4 & $5;
+ if ($6) {
+  $8 = _llvm_cttz_i32($3 | 0) | 0;
+  $9 = $8 + 32 | 0;
+  $$0$i = $9;
+ } else {
+  $7 = _llvm_cttz_i32($2 | 0) | 0;
+  $$0$i = $7;
+ }
+ $10 = ($$0$i | 0) < 16;
+ $11 = $0 + 160 | 0;
+ if ($10) {
+  $12 = $11 + ($$0$i << 4) | 0;
+  $$011 = $12;
+  return $$011 | 0;
+ }
+ $13 = $11 + 240 | 0;
+ $14 = ($13 | 0) == ($1 | 0);
+ do {
+  if (!$14) {
+   $15 = $1;
+   $16 = $13;
+   $17 = $16 | $15;
+   $18 = $17 & 3;
+   $19 = ($18 | 0) == 0;
+   if ($19) {
+    $66 = $11 + 244 | 0;
+    $67 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    $68 = $1 + 4 | 0;
+    SAFE_HEAP_STORE($1 | 0, $67 | 0, 4);
+    $69 = $11 + 248 | 0;
+    $70 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+    $71 = $1 + 8 | 0;
+    SAFE_HEAP_STORE($68 | 0, $70 | 0, 4);
+    $72 = $11 + 252 | 0;
+    $73 = SAFE_HEAP_LOAD($69 | 0, 4, 0) | 0 | 0;
+    $74 = $1 + 12 | 0;
+    SAFE_HEAP_STORE($71 | 0, $73 | 0, 4);
+    $75 = SAFE_HEAP_LOAD($72 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($74 | 0, $75 | 0, 4);
+    break;
+   } else {
+    $20 = $13 + 1 | 0;
+    $21 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+    $22 = $1 + 1 | 0;
+    SAFE_HEAP_STORE($1 >> 0 | 0, $21 | 0, 1);
+    $23 = $13 + 2 | 0;
+    $24 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+    $25 = $1 + 2 | 0;
+    SAFE_HEAP_STORE($22 >> 0 | 0, $24 | 0, 1);
+    $26 = $13 + 3 | 0;
+    $27 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+    $28 = $1 + 3 | 0;
+    SAFE_HEAP_STORE($25 >> 0 | 0, $27 | 0, 1);
+    $29 = $11 + 244 | 0;
+    $30 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+    $31 = $1 + 4 | 0;
+    SAFE_HEAP_STORE($28 >> 0 | 0, $30 | 0, 1);
+    $32 = $13 + 5 | 0;
+    $33 = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 0) | 0 | 0;
+    $34 = $1 + 5 | 0;
+    SAFE_HEAP_STORE($31 >> 0 | 0, $33 | 0, 1);
+    $35 = $13 + 6 | 0;
+    $36 = SAFE_HEAP_LOAD($32 >> 0 | 0, 1, 0) | 0 | 0;
+    $37 = $1 + 6 | 0;
+    SAFE_HEAP_STORE($34 >> 0 | 0, $36 | 0, 1);
+    $38 = $13 + 7 | 0;
+    $39 = SAFE_HEAP_LOAD($35 >> 0 | 0, 1, 0) | 0 | 0;
+    $40 = $1 + 7 | 0;
+    SAFE_HEAP_STORE($37 >> 0 | 0, $39 | 0, 1);
+    $41 = $11 + 248 | 0;
+    $42 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+    $43 = $1 + 8 | 0;
+    SAFE_HEAP_STORE($40 >> 0 | 0, $42 | 0, 1);
+    $44 = $13 + 9 | 0;
+    $45 = SAFE_HEAP_LOAD($41 >> 0 | 0, 1, 0) | 0 | 0;
+    $46 = $1 + 9 | 0;
+    SAFE_HEAP_STORE($43 >> 0 | 0, $45 | 0, 1);
+    $47 = $13 + 10 | 0;
+    $48 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+    $49 = $1 + 10 | 0;
+    SAFE_HEAP_STORE($46 >> 0 | 0, $48 | 0, 1);
+    $50 = $13 + 11 | 0;
+    $51 = SAFE_HEAP_LOAD($47 >> 0 | 0, 1, 0) | 0 | 0;
+    $52 = $1 + 11 | 0;
+    SAFE_HEAP_STORE($49 >> 0 | 0, $51 | 0, 1);
+    $53 = $11 + 252 | 0;
+    $54 = SAFE_HEAP_LOAD($50 >> 0 | 0, 1, 0) | 0 | 0;
+    $55 = $1 + 12 | 0;
+    SAFE_HEAP_STORE($52 >> 0 | 0, $54 | 0, 1);
+    $56 = $13 + 13 | 0;
+    $57 = SAFE_HEAP_LOAD($53 >> 0 | 0, 1, 0) | 0 | 0;
+    $58 = $1 + 13 | 0;
+    SAFE_HEAP_STORE($55 >> 0 | 0, $57 | 0, 1);
+    $59 = $13 + 14 | 0;
+    $60 = SAFE_HEAP_LOAD($56 >> 0 | 0, 1, 0) | 0 | 0;
+    $61 = $1 + 14 | 0;
+    SAFE_HEAP_STORE($58 >> 0 | 0, $60 | 0, 1);
+    $62 = $13 + 15 | 0;
+    $63 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+    $64 = $1 + 15 | 0;
+    SAFE_HEAP_STORE($61 >> 0 | 0, $63 | 0, 1);
+    $65 = SAFE_HEAP_LOAD($62 >> 0 | 0, 1, 0) | 0 | 0;
+    SAFE_HEAP_STORE($64 >> 0 | 0, $65 | 0, 1);
+    break;
+   }
+  }
+ } while (0);
+ _double_block($1);
+ $76 = $$0$i + -16 | 0;
+ $77 = ($76 | 0) == 0;
+ if ($77) {
+  $$011 = $1;
+  return $$011 | 0;
+ } else {
+  $$012 = $76;
+ }
+ while (1) {
+  _double_block($1);
+  $78 = $$012 + -1 | 0;
+  $79 = ($78 | 0) == 0;
+  if ($79) {
+   $$011 = $1;
+   break;
+  } else {
+   $$012 = $78;
+  }
+ }
+ return $$011 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $26 = $1 + 4 | 0;
+ $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+ $28 = $1 + 8 | 0;
+ $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+ $30 = $1 + 12 | 0;
+ $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+ $32 = $1 + 16 | 0;
+ $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+ $34 = __gcry_mpi_ec_p_internal_new($25, $27, 0, $29, $31, $33) | 0;
+ $35 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_invm($22, $19, $38) | 0;
+ $39 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mulm($20, $3, $22, $39);
+ $40 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mulm($23, $2, $22, $40);
+ $41 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 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(52915, $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(52937, $vararg_buffer1);
+    $$074 = 8;
+    break;
+   }
+   $54 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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(53030, $vararg_buffer5);
+    $$074 = 0;
+    break;
+   } else {
+    if (!$58) {
+     $$074 = 8;
+     break;
+    }
+    __gcry_log_printmpi(52983, $18);
+    __gcry_log_printmpi(52990, $2);
+    __gcry_log_printmpi(52997, $3);
+    __gcry_log_debug(53004, $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 __gcry_ecc_gost_sign($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$0 = 0, $$076 = 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;
+ 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, $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, $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(52814, $0);
+ }
+ $9 = $1 + 32 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = __gcry_mpi_get_nbits($10) | 0;
+ $12 = ($0 | 0) == (0 | 0);
+ if ($12) {
+  label = 8;
+ } else {
+  $13 = $0 + 12 | 0;
+  $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  $15 = $14 & 4;
+  $16 = ($15 | 0) == 0;
+  if ($16) {
+   label = 8;
+  } else {
+   $17 = __gcry_mpi_get_opaque($0, $6) | 0;
+   $18 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $24 = $23 >>> 0 > $11 >>> 0;
+   if ($24) {
+    $25 = $23 - $11 | 0;
+    $26 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_rshift($26, $26, $25);
+   }
+  }
+ }
+ if ((label | 0) == 8) {
+  SAFE_HEAP_STORE($5 | 0, $0 | 0, 4);
+ }
+ $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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $33 = $1 + 4 | 0;
+ $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+ $35 = $1 + 8 | 0;
+ $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+ $37 = $1 + 12 | 0;
+ $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+ $39 = $1 + 16 | 0;
+ $40 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+ $41 = __gcry_mpi_ec_p_internal_new($32, $34, 0, $36, $38, $40) | 0;
+ $42 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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;
+ $$076 = 0;
+ L17 : while (1) {
+  $$177 = $$076;
+  while (1) {
+   __gcry_mpi_free($$177);
+   $47 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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 = 14;
+    break L17;
+   }
+   $53 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_mod($2, $31, $53);
+   $54 = __gcry_mpi_cmp_ui($2, 0) | 0;
+   $55 = ($54 | 0) == 0;
+   if ($55) {
+    $$177 = $48;
+   } else {
+    break;
+   }
+  }
+  $56 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+  $57 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mulm($27, $56, $2, $57);
+  $58 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mulm($29, $48, $30, $58);
+  $59 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_addm($3, $29, $27, $59);
+  $60 = __gcry_mpi_cmp_ui($3, 0) | 0;
+  $61 = ($60 | 0) == 0;
+  if ($61) {
+   $$076 = $48;
+  } else {
+   label = 18;
+   break;
+  }
+ }
+ if ((label | 0) == 14) {
+  $51 = __gcry_get_debug_flag(1) | 0;
+  $52 = ($51 | 0) == 0;
+  if ($52) {
+   $$1 = 8;
+  } else {
+   __gcry_log_debug(52831, $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(52875, $2);
+   __gcry_log_printmpi(52895, $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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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 _GNUNET_STRINGS_string_to_data($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, $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, $or$cond = 0, 
$vararg_buffer = 0, $vararg_ptr2 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer = sp;
+ $5 = $0;
+ $6 = $1;
+ $7 = $2;
+ $8 = $3;
+ $18 = $8;
+ $19 = $18 << 3;
+ $16 = $19;
+ $20 = $6;
+ $21 = 0 == ($20 | 0);
+ if ($21) {
+  $22 = $8;
+  $23 = 0 == ($22 | 0);
+  if ($23) {
+   $4 = 1;
+   $97 = $4;
+   STACKTOP = sp;
+   return $97 | 0;
+  } else {
+   $4 = -1;
+   $97 = $4;
+   STACKTOP = sp;
+   return $97 | 0;
+  }
+ }
+ $24 = $7;
+ $15 = $24;
+ $25 = $8;
+ $10 = $25;
+ $26 = $6;
+ $9 = $26;
+ $27 = $16;
+ $28 = ($27 >>> 0) % 5 & -1;
+ $29 = $28 >>> 0 > 0;
+ if ($29) {
+  $30 = $16;
+  $31 = ($30 >>> 0) % 5 & -1;
+  $12 = $31;
+  $32 = $12;
+  $33 = 5 - $32 | 0;
+  $14 = $33;
+  $34 = $9;
+  $35 = $34 + -1 | 0;
+  $9 = $35;
+  $36 = $5;
+  $37 = $36 + $35 | 0;
+  $38 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+  $39 = _getValue__($38) | 0;
+  $13 = $39;
+  $40 = $14;
+  $41 = $39 >> $40;
+  $11 = $41;
+ } else {
+  $12 = 5;
+  $14 = 0;
+  $42 = $9;
+  $43 = $42 + -1 | 0;
+  $9 = $43;
+  $44 = $5;
+  $45 = $44 + $43 | 0;
+  $46 = SAFE_HEAP_LOAD($45 >> 0 | 0, 1, 0) | 0 | 0;
+  $47 = _getValue__($46) | 0;
+  $13 = $47;
+  $11 = $47;
+ }
+ $48 = $16;
+ $49 = $14;
+ $50 = $48 + $49 | 0;
+ $51 = ($50 >>> 0) / 5 & -1;
+ $52 = $6;
+ $53 = ($51 | 0) != ($52 | 0);
+ if ($53) {
+  $4 = -1;
+  $97 = $4;
+  STACKTOP = sp;
+  return $97 | 0;
+ }
+ $54 = $13;
+ $55 = -1 == ($54 | 0);
+ if ($55) {
+  $4 = -1;
+  $97 = $4;
+  STACKTOP = sp;
+  return $97 | 0;
+ }
+ while (1) {
+  $56 = $10;
+  $57 = $56 >>> 0 > 0;
+  $58 = $9;
+  if (!$57) {
+   label = 25;
+   break;
+  }
+  $59 = 0 == ($58 | 0);
+  if ($59) {
+   label = 14;
+   break;
+  }
+  $68 = $9;
+  $69 = $68 + -1 | 0;
+  $9 = $69;
+  $70 = $5;
+  $71 = $70 + $69 | 0;
+  $72 = SAFE_HEAP_LOAD($71 >> 0 | 0, 1, 0) | 0 | 0;
+  $73 = _getValue__($72) | 0;
+  $13 = $73;
+  $74 = $12;
+  $75 = $73 << $74;
+  $76 = $11;
+  $77 = $75 | $76;
+  $11 = $77;
+  $78 = $13;
+  $79 = -1 == ($78 | 0);
+  if ($79) {
+   label = 22;
+   break;
+  }
+  $80 = $12;
+  $81 = $80 + 5 | 0;
+  $12 = $81;
+  $82 = $12;
+  $83 = $82 >>> 0 >= 8;
+  if (!$83) {
+   continue;
+  }
+  $84 = $11;
+  $85 = $84 & 255;
+  $86 = $10;
+  $87 = $86 + -1 | 0;
+  $10 = $87;
+  $88 = $15;
+  $89 = $88 + $87 | 0;
+  SAFE_HEAP_STORE($89 >> 0 | 0, $85 | 0, 1);
+  $90 = $11;
+  $91 = $90 >>> 8;
+  $11 = $91;
+  $92 = $12;
+  $93 = $92 - 8 | 0;
+  $12 = $93;
+ }
+ if ((label | 0) == 14) {
+  $17 = 1003;
+  $60 = SAFE_HEAP_LOAD(279 * 4 | 0, 4, 0) | 0 | 0;
+  $61 = ($60 | 0) == -1;
+  if ($61) {
+   $62 = $17;
+   $63 = _GNUNET_get_log_call_status(1, 0, 21635, 21747, $62) | 0;
+   SAFE_HEAP_STORE(279 * 4 | 0, $63 | 0, 4);
+  }
+  $64 = _GNUNET_get_log_skip() | 0;
+  $65 = ($64 | 0) > 0;
+  if ($65) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $66 = SAFE_HEAP_LOAD(279 * 4 | 0, 4, 0) | 0 | 0;
+   $67 = ($66 | 0) != 0;
+   if ($67) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, 21635 | 0, 4);
+    $vararg_ptr2 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr2 | 0, 1003 | 0, 4);
+    _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+   }
+  }
+  $4 = -1;
+  $97 = $4;
+  STACKTOP = sp;
+  return $97 | 0;
+ } else if ((label | 0) == 22) {
+  $4 = -1;
+  $97 = $4;
+  STACKTOP = sp;
+  return $97 | 0;
+ } else if ((label | 0) == 25) {
+  $94 = 0 != ($58 | 0);
+  $95 = $12;
+  $96 = 0 != ($95 | 0);
+  $or$cond = $94 | $96;
+  if ($or$cond) {
+   $4 = -1;
+   $97 = $4;
+   STACKTOP = sp;
+   return $97 | 0;
+  } else {
+   $4 = 1;
+   $97 = $4;
+   STACKTOP = sp;
+   return $97 | 0;
+  }
+ }
+ return 0 | 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, $$090 = 0, $$187 = 0, $$2$ph = 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, $63 = 0;
+ var $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, 
$or$cond81 = 0, $or$cond8189 = 0, $or$cond82 = 0, $or$cond8286 = 0, $or$cond98 
= 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) {
+  $12 = $3 + 16 | 0;
+  $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $14 = $3 + 28 | 0;
+  $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+  $16 = ($15 | 0) != 0;
+  $17 = ($0 | 0) != 0;
+  $or$cond8189 = $17 & $16;
+  if ($or$cond8189) {
+   $18 = $3 + 48 | 0;
+   $$090 = 0;
+   while (1) {
+    $21 = $13 + ($$090 * 12 | 0) | 0;
+    $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+    $23 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+    $24 = ($22 | 0) == ($23 | 0);
+    if ($24) {
+     $28 = $5;
+    } else {
+     $25 = $4 + ($22 << 2) | 0;
+     $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+     $28 = $26;
+    }
+    $27 = $1 + ($$090 << 3) | 0;
+    SAFE_HEAP_STORE($27 | 0, $28 | 0, 4);
+    $29 = ($13 + ($$090 * 12 | 0) | 0) + 4 | 0;
+    $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+    $31 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+    $32 = ($30 | 0) == ($31 | 0);
+    if ($32) {
+     $36 = $5;
+    } else {
+     $33 = $4 + ($30 << 2) | 0;
+     $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+     $36 = $34;
+    }
+    $35 = ($1 + ($$090 << 3) | 0) + 4 | 0;
+    SAFE_HEAP_STORE($35 | 0, $36 | 0, 4);
+    $37 = ($28 | 0) == -1;
+    $38 = ($36 | 0) == -1;
+    $or$cond98 = $37 | $38;
+    if ($or$cond98) {
+     SAFE_HEAP_STORE($35 | 0, -1 | 0, 4);
+     SAFE_HEAP_STORE($27 | 0, -1 | 0, 4);
+    }
+    $39 = $$090 + 1 | 0;
+    $40 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $41 = $39 >>> 0 < $40 >>> 0;
+    $42 = $39 >>> 0 < $0 >>> 0;
+    $or$cond81 = $42 & $41;
+    if ($or$cond81) {
+     $$090 = $39;
+    } else {
+     $19 = $40;
+     break;
+    }
+   }
+  } else {
+   $19 = $15;
+  }
+  $20 = ($19 | 0) != 0;
+  $or$cond8286 = $17 & $20;
+  if ($or$cond8286) {
+   $$187 = 0;
+   while (1) {
+    $43 = ($1 + ($$187 << 3) | 0) + 4 | 0;
+    $44 = ($13 + ($$187 * 12 | 0) | 0) + 8 | 0;
+    $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+    $46 = ($45 | 0) == (0 | 0);
+    if (!$46) {
+     $47 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+     $48 = ($47 | 0) > -1;
+     if ($48) {
+      $49 = $1 + ($$187 << 3) | 0;
+      $$pre = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+      $$07984 = 0;
+      $51 = $47;
+      $53 = $$pre;
+      while (1) {
+       $50 = $1 + ($51 << 3) | 0;
+       $52 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+       $54 = ($53 | 0) < ($52 | 0);
+       if ($54) {
+        label = 19;
+       } else {
+        $55 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+        $56 = ($1 + ($51 << 3) | 0) + 4 | 0;
+        $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+        $58 = ($55 | 0) > ($57 | 0);
+        if ($58) {
+         label = 19;
+        } else {
+         $66 = $53;
+        }
+       }
+       if ((label | 0) == 19) {
+        label = 0;
+        SAFE_HEAP_STORE($43 | 0, -1 | 0, 4);
+        SAFE_HEAP_STORE($49 | 0, -1 | 0, 4);
+        $66 = -1;
+       }
+       $59 = $$07984 + 1 | 0;
+       $60 = $45 + ($59 << 2) | 0;
+       $61 = SAFE_HEAP_LOAD($60 | 0, 4, 0) | 0 | 0;
+       $62 = ($61 | 0) > -1;
+       if ($62) {
+        $$07984 = $59;
+        $51 = $61;
+        $53 = $66;
+       } else {
+        break;
+       }
+      }
+     }
+    }
+    $63 = $$187 + 1 | 0;
+    $64 = $63 >>> 0 < $19 >>> 0;
+    $65 = $63 >>> 0 < $0 >>> 0;
+    $or$cond82 = $65 & $64;
+    if ($or$cond82) {
+     $$187 = $63;
+    } else {
+     $$2$ph = $63;
+     break;
+    }
+   }
+  } else {
+   $$2$ph = 0;
+  }
+ } else {
+  $$2$ph = 0;
+ }
+ $9 = $$2$ph >>> 0 < $0 >>> 0;
+ if ($9) {
+  $scevgep = $1 + ($$2$ph << 3) | 0;
+  $10 = $0 - $$2$ph | 0;
+  $11 = $10 << 3;
+  _memset($scevgep | 0, -1, $11 | 0) | 0;
+ }
+ 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, $$3$ph$i = 0, $$339$ph$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);
+  {}
+  SAFE_HEAP_STORE($4 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($4 + 4 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($4 + 8 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($4 + 12 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($4 + 16 | 0, 0 | 0 | 0, 4);
+  if ($5) {
+   $$pre = SAFE_HEAP_LOAD(12 | 0, 4, 0) | 0 | 0;
+   $$01820 = 0;
+   $12 = $$pre;
+  } else {
+   $$01819 = $4;
+   label = 4;
+  }
+ } else {
+  $$01819 = $0;
+  label = 4;
+ }
+ if ((label | 0) == 4) {
+  $6 = $$01819 + 12 | 0;
+  $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $8 = $7 & 16;
+  $9 = ($8 | 0) == 0;
+  if ($9) {
+   $$01820 = $$01819;
+   $12 = $7;
+  } else {
+   __gcry_log_info(46049, $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 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ if ($13) {
+  $16 = ($15 | 0) == (0 | 0);
+  if (!$16) {
+   $17 = SAFE_HEAP_LOAD($$01820 | 0, 4, 0) | 0 | 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) {
+      SAFE_HEAP_STORE($$045$i >> 0 | 0, 0 | 0, 1);
+      $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) {
+     $$3$ph$i = $$0$lcssa$i;
+     $$339$ph$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;
+      SAFE_HEAP_STORE($34 | 0, 0 | 0, 4);
+      $35 = $33 + 4 | 0;
+      $36 = $35;
+      SAFE_HEAP_STORE($36 | 0, 0 | 0, 4);
+      $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;
+     $$3$ph$i = $scevgep$i;
+     $$339$ph$i = $41;
+    }
+    $42 = ($$339$ph$i | 0) == 0;
+    if (!$42) {
+     $$33942$i = $$339$ph$i;
+     $$343$i = $$3$ph$i;
+     while (1) {
+      SAFE_HEAP_STORE($$343$i >> 0 | 0, 0 | 0, 1);
+      $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);
+ }
+ SAFE_HEAP_STORE($14 | 0, $1 | 0, 4);
+ SAFE_HEAP_STORE($$01820 | 0, 0 | 0, 4);
+ $46 = $$01820 + 4 | 0;
+ SAFE_HEAP_STORE($46 | 0, 0 | 0, 4);
+ $47 = $$01820 + 8 | 0;
+ SAFE_HEAP_STORE($47 | 0, $2 | 0, 4);
+ $48 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $49 = $48 & 3840;
+ $50 = $49 | 4;
+ SAFE_HEAP_STORE($10 | 0, $50 | 0, 4);
+ $51 = __gcry_is_secure($1) | 0;
+ $52 = ($51 | 0) == 0;
+ if ($52) {
+  $$01821 = $$01820;
+  STACKTOP = sp;
+  return $$01821 | 0;
+ }
+ $53 = $49 | 5;
+ SAFE_HEAP_STORE($10 | 0, $53 | 0, 4);
+ $$01821 = $$01820;
+ STACKTOP = sp;
+ return $$01821 | 0;
+}
+
+function ___stpncpy($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0$lcssa = 0, $$037$lcssa = 0, $$03753 = 0, $$038$lcssa = 0, 
$$038$lcssa79 = 0, $$03866 = 0, $$039$lcssa = 0, $$039$lcssa78 = 0, $$03965 = 
0, $$041$lcssa = 0, $$041$lcssa77 = 0, $$04164 = 0, $$054 = 0, $$1$lcssa = 0, 
$$140$ph = 0, $$14046 = 0, $$142$ph = 0, $$14245 = 0, $$152 = 0, $$2$ph = 0;
+ var $$243 = 0, $$247 = 0, $$3 = 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;
+ 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, $5 = 0, 
$6 = 0, $7 = 0, $8 = 0;
+ var $9 = 0, $or$cond = 0, $or$cond63 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $1;
+ $4 = $0;
+ $5 = $3 ^ $4;
+ $6 = $5 & 3;
+ $7 = ($6 | 0) == 0;
+ do {
+  if ($7) {
+   $8 = $3 & 3;
+   $9 = ($8 | 0) != 0;
+   $10 = ($2 | 0) != 0;
+   $or$cond63 = $10 & $9;
+   L3 : do {
+    if ($or$cond63) {
+     $$03866 = $2;
+     $$03965 = $1;
+     $$04164 = $0;
+     while (1) {
+      $11 = SAFE_HEAP_LOAD($$03965 >> 0 | 0, 1, 0) | 0 | 0;
+      SAFE_HEAP_STORE($$04164 >> 0 | 0, $11 | 0, 1);
+      $12 = $11 << 24 >> 24 == 0;
+      if ($12) {
+       $$038$lcssa79 = $$03866;
+       $$039$lcssa78 = $$03965;
+       $$041$lcssa77 = $$04164;
+       break L3;
+      }
+      $13 = $$03866 + -1 | 0;
+      $14 = $$03965 + 1 | 0;
+      $15 = $$04164 + 1 | 0;
+      $16 = $14;
+      $17 = $16 & 3;
+      $18 = ($17 | 0) != 0;
+      $19 = ($13 | 0) != 0;
+      $or$cond = $19 & $18;
+      if ($or$cond) {
+       $$03866 = $13;
+       $$03965 = $14;
+       $$04164 = $15;
+      } else {
+       $$038$lcssa = $13;
+       $$039$lcssa = $14;
+       $$041$lcssa = $15;
+       $$lcssa = $19;
+       label = 5;
+       break;
+      }
+     }
+    } else {
+     $$038$lcssa = $2;
+     $$039$lcssa = $1;
+     $$041$lcssa = $0;
+     $$lcssa = $10;
+     label = 5;
+    }
+   } while (0);
+   if ((label | 0) == 5) {
+    if ($$lcssa) {
+     $$038$lcssa79 = $$038$lcssa;
+     $$039$lcssa78 = $$039$lcssa;
+     $$041$lcssa77 = $$041$lcssa;
+    } else {
+     $$243 = $$041$lcssa;
+     $$3 = 0;
+     break;
+    }
+   }
+   $20 = SAFE_HEAP_LOAD($$039$lcssa78 >> 0 | 0, 1, 0) | 0 | 0;
+   $21 = $20 << 24 >> 24 == 0;
+   if ($21) {
+    $$243 = $$041$lcssa77;
+    $$3 = $$038$lcssa79;
+   } else {
+    $22 = $$038$lcssa79 >>> 0 > 3;
+    L11 : do {
+     if ($22) {
+      $$03753 = $$041$lcssa77;
+      $$054 = $$039$lcssa78;
+      $$152 = $$038$lcssa79;
+      while (1) {
+       $23 = SAFE_HEAP_LOAD($$054 | 0, 4, 0) | 0 | 0;
+       $24 = $23 + -16843009 | 0;
+       $25 = $23 & -2139062144;
+       $26 = $25 ^ -2139062144;
+       $27 = $26 & $24;
+       $28 = ($27 | 0) == 0;
+       if (!$28) {
+        $$0$lcssa = $$054;
+        $$037$lcssa = $$03753;
+        $$1$lcssa = $$152;
+        break L11;
+       }
+       SAFE_HEAP_STORE($$03753 | 0, $23 | 0, 4);
+       $29 = $$152 + -4 | 0;
+       $30 = $$054 + 4 | 0;
+       $31 = $$03753 + 4 | 0;
+       $32 = $29 >>> 0 > 3;
+       if ($32) {
+        $$03753 = $31;
+        $$054 = $30;
+        $$152 = $29;
+       } else {
+        $$0$lcssa = $30;
+        $$037$lcssa = $31;
+        $$1$lcssa = $29;
+        break;
+       }
+      }
+     } else {
+      $$0$lcssa = $$039$lcssa78;
+      $$037$lcssa = $$041$lcssa77;
+      $$1$lcssa = $$038$lcssa79;
+     }
+    } while (0);
+    $$140$ph = $$0$lcssa;
+    $$142$ph = $$037$lcssa;
+    $$2$ph = $$1$lcssa;
+    label = 11;
+   }
+  } else {
+   $$140$ph = $1;
+   $$142$ph = $0;
+   $$2$ph = $2;
+   label = 11;
+  }
+ } while (0);
+ L16 : do {
+  if ((label | 0) == 11) {
+   $33 = ($$2$ph | 0) == 0;
+   if ($33) {
+    $$243 = $$142$ph;
+    $$3 = 0;
+   } else {
+    $$14046 = $$140$ph;
+    $$14245 = $$142$ph;
+    $$247 = $$2$ph;
+    while (1) {
+     $34 = SAFE_HEAP_LOAD($$14046 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($$14245 >> 0 | 0, $34 | 0, 1);
+     $35 = $34 << 24 >> 24 == 0;
+     if ($35) {
+      $$243 = $$14245;
+      $$3 = $$247;
+      break L16;
+     }
+     $36 = $$247 + -1 | 0;
+     $37 = $$14046 + 1 | 0;
+     $38 = $$14245 + 1 | 0;
+     $39 = ($36 | 0) == 0;
+     if ($39) {
+      $$243 = $38;
+      $$3 = 0;
+      break;
+     } else {
+      $$14046 = $37;
+      $$14245 = $38;
+      $$247 = $36;
+     }
+    }
+   }
+  }
+ } while (0);
+ _memset($$243 | 0, 0, $$3 | 0) | 0;
+ return $$243 | 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 = 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;
+ 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, $6 = 0, $7 = 0, $8 = 0, $9 = 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == 1;
+ if (!$8) {
+  $$0 = 69;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $9 = SAFE_HEAP_LOAD(17611 * 4 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == (0 | 0);
+ do {
+  if ($10) {
+   $11 = __gcry_mpi_scan($5, 4, 35561, 0, 0) | 0;
+   $12 = ($11 | 0) == 0;
+   if ($12) {
+    $14 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE(17611 * 4 | 0, $14 | 0, 4);
+    break;
+   } else {
+    $13 = _gpg_strerror($11) | 0;
+    SAFE_HEAP_STORE($vararg_buffer | 0, $13 | 0, 4);
+    __gcry_log_fatal(35626, $vararg_buffer);
+   }
+  }
+ } while (0);
+ $15 = SAFE_HEAP_LOAD(17612 * 4 | 0, 4, 0) | 0 | 0;
+ $16 = ($15 | 0) == (0 | 0);
+ if ($16) {
+  $17 = __gcry_mpi_set_ui(0, 7) | 0;
+  SAFE_HEAP_STORE(17612 * 4 | 0, $17 | 0, 4);
+ }
+ $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 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mulm($18, $1, $1, $23);
+ $24 = $3 + 24 | 0;
+ $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+ $26 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_powm($20, $19, $27, $28);
+ $29 = SAFE_HEAP_LOAD(17612 * 4 | 0, 4, 0) | 0 | 0;
+ $30 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_powm($21, $19, $29, $30);
+ $31 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mulm($21, $21, $18, $31);
+ $32 = SAFE_HEAP_LOAD(17611 * 4 | 0, 4, 0) | 0 | 0;
+ $33 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_powm($21, $21, $32, $33);
+ $34 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mulm($21, $21, $18, $34);
+ $35 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mulm($0, $21, $20, $35);
+ $36 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mulm($21, $0, $0, $36);
+ $37 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD(17613 * 4 | 0, 4, 0) | 0 | 0;
+  $41 = ($40 | 0) == (0 | 0);
+  do {
+   if ($41) {
+    $42 = __gcry_mpi_scan($4, 4, 35661, 0, 0) | 0;
+    $43 = ($42 | 0) == 0;
+    if ($43) {
+     $45 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE(17613 * 4 | 0, $45 | 0, 4);
+     $46 = $45;
+     $48 = $46;
+     break;
+    } else {
+     $44 = _gpg_strerror($42) | 0;
+     SAFE_HEAP_STORE($vararg_buffer1 | 0, $44 | 0, 4);
+     __gcry_log_fatal(35626, $vararg_buffer1);
+    }
+   } else {
+    $48 = $40;
+   }
+  } while (0);
+  $47 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mulm($0, $0, $48, $47);
+  $49 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mulm($21, $0, $0, $49);
+  $50 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mulm($21, $21, $19, $50);
+  __gcry_mpi_neg($21, $21);
+  $51 = __gcry_mpi_cmp($21, $18) | 0;
+  $52 = ($51 | 0) == 0;
+  $$ = $52 ? 65 : 0;
+  $$080 = $$;
+ } 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 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 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_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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $17 = __gcry_mpi_cmp($3, $16) | 0;
+ $18 = ($17 | 0) < 0;
+ if (!$18) {
+  $$0 = 8;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $19 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $28 = $1 + 4 | 0;
+ $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+ $30 = $1 + 8 | 0;
+ $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+ $32 = $1 + 12 | 0;
+ $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+ $34 = $1 + 16 | 0;
+ $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+ $36 = __gcry_mpi_ec_p_internal_new($27, $29, 0, $31, $33, $35) | 0;
+ $37 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_invm($23, $3, $37) | 0;
+ $38 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $39 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_mulm($24, $38, $23, $39);
+ $40 = $1 + 20 | 0;
+ __gcry_mpi_ec_mul_point($6, $24, $40, $36);
+ $41 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 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(52915, $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(52937, $vararg_buffer1);
+    $$063 = 8;
+    break;
+   }
+   $53 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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(52983, $26);
+     __gcry_log_printmpi(52990, $2);
+     __gcry_log_printmpi(52997, $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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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_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, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, $scevgep = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $4 = ($0 | 0) == (0 | 0);
+ if (!$4) {
+  $5 = $0 + 12 | 0;
+  $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  $7 = $6 & 16;
+  $8 = ($7 | 0) == 0;
+  if (!$8) {
+   __gcry_mpi_immutable_failed();
+   return;
+  }
+ }
+ $9 = $2 + 3 | 0;
+ $10 = $9 >>> 2;
+ $11 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $12 = ($11 | 0) < ($10 | 0);
+ if ($12) {
+  __gcry_mpi_resize($0, $10);
+ }
+ $13 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($13 | 0, $3 | 0, 4);
+ $$pn$add62 = $2 + -1 | 0;
+ $$053$ptr63 = $1 + $$pn$add62 | 0;
+ $14 = ($$pn$add62 | 0) > 3;
+ if ($14) {
+  $15 = $0 + 16 | 0;
+  $16 = $2 + -5 | 0;
+  $17 = $16 >>> 2;
+  $18 = $17 << 2;
+  $19 = $17 + 1 | 0;
+  $20 = $16 - $18 | 0;
+  $$pre = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $$053$ptr66 = $$053$ptr63;
+  $$065 = 0;
+  $$pn$idx64 = $2;
+  while (1) {
+   $$053$add = $$pn$idx64 + -2 | 0;
+   $$ptr = $1 + $$053$add | 0;
+   $21 = SAFE_HEAP_LOAD($$053$ptr66 >> 0 | 0, 1, 0) | 0 | 0;
+   $22 = $21 & 255;
+   $$add = $$pn$idx64 + -3 | 0;
+   $$ptr59 = $1 + $$add | 0;
+   $23 = SAFE_HEAP_LOAD($$ptr >> 0 | 0, 1, 0) | 0 | 0;
+   $24 = $23 & 255;
+   $25 = $24 << 8;
+   $26 = $25 | $22;
+   $$add58 = $$pn$idx64 + -4 | 0;
+   $$ptr60 = $1 + $$add58 | 0;
+   $27 = SAFE_HEAP_LOAD($$ptr59 >> 0 | 0, 1, 0) | 0 | 0;
+   $28 = $27 & 255;
+   $29 = $28 << 16;
+   $30 = $26 | $29;
+   $31 = SAFE_HEAP_LOAD($$ptr60 >> 0 | 0, 1, 0) | 0 | 0;
+   $32 = $31 & 255;
+   $33 = $32 << 24;
+   $34 = $30 | $33;
+   $35 = $$065 + 1 | 0;
+   $36 = $$pre + ($$065 << 2) | 0;
+   SAFE_HEAP_STORE($36 | 0, $34 | 0, 4);
+   $$pn$add = $$pn$idx64 + -5 | 0;
+   $$053$ptr = $1 + $$pn$add | 0;
+   $exitcond = ($35 | 0) == ($19 | 0);
+   if ($exitcond) {
+    break;
+   } else {
+    $$053$ptr66 = $$053$ptr;
+    $$065 = $35;
+    $$pn$idx64 = $$add58;
+   }
+  }
+  $37 = $2 + -4 | 0;
+  $38 = $37 - $18 | 0;
+  $scevgep = $1 + $20 | 0;
+  $$0$lcssa = $19;
+  $$053$ptr$lcssa = $scevgep;
+  $$pn$idx$lcssa = $38;
+ } else {
+  $$0$lcssa = 0;
+  $$053$ptr$lcssa = $$053$ptr63;
+  $$pn$idx$lcssa = $2;
+ }
+ $39 = ($$pn$idx$lcssa | 0) > 0;
+ if ($39) {
+  $40 = $$053$ptr$lcssa + -1 | 0;
+  $41 = SAFE_HEAP_LOAD($$053$ptr$lcssa >> 0 | 0, 1, 0) | 0 | 0;
+  $42 = $41 & 255;
+  $43 = $40 >>> 0 < $1 >>> 0;
+  if ($43) {
+   $$055 = $42;
+   $$154 = $40;
+  } else {
+   $44 = $$053$ptr$lcssa + -2 | 0;
+   $45 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+   $46 = $45 & 255;
+   $47 = $46 << 8;
+   $48 = $47 | $42;
+   $$055 = $48;
+   $$154 = $44;
+  }
+  $49 = $$154 >>> 0 < $1 >>> 0;
+  if ($49) {
+   $$156 = $$055;
+   $$2 = $$154;
+  } else {
+   $50 = $$154 + -1 | 0;
+   $51 = SAFE_HEAP_LOAD($$154 >> 0 | 0, 1, 0) | 0 | 0;
+   $52 = $51 & 255;
+   $53 = $52 << 16;
+   $54 = $53 | $$055;
+   $$156 = $54;
+   $$2 = $50;
+  }
+  $55 = $$2 >>> 0 < $1 >>> 0;
+  if ($55) {
+   $$257 = $$156;
+  } else {
+   $56 = SAFE_HEAP_LOAD($$2 >> 0 | 0, 1, 0) | 0 | 0;
+   $57 = $56 & 255;
+   $58 = $57 << 24;
+   $59 = $58 | $$156;
+   $$257 = $59;
+  }
+  $60 = $$0$lcssa + 1 | 0;
+  $61 = $0 + 16 | 0;
+  $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+  $63 = $62 + ($$0$lcssa << 2) | 0;
+  SAFE_HEAP_STORE($63 | 0, $$257 | 0, 4);
+  $$1 = $60;
+ } else {
+  $$1 = $$0$lcssa;
+ }
+ $64 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($64 | 0, $$1 | 0, 4);
+ $65 = ($$1 | 0) == ($10 | 0);
+ if ($65) {
+  return;
+ } else {
+  __gcry_assert_failed(45860, 45872, 377, 45883);
+ }
+}
+
+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 = 0, $$089 = 0, $$090107 = 0, $$090107$in = 0, $$091 = 0, 
$$092106 = 0, $$094$lcssa = 0, $$095 = 0, $$1102 = 0, $$2$lcssa = 0, $$296 = 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, $65 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, label = 0, sp 
= 0;
+ sp = STACKTOP;
+ $6 = ($4 | 0) == (0 | 0);
+ if (!$6) {
+  $7 = $0 + 8 | 0;
+  $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($4 | 0, $8 | 0, 4);
+ }
+ $9 = $0 + 4 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $10 << 2;
+ SAFE_HEAP_STORE($3 | 0, $11 | 0, 4);
+ $12 = ($10 | 0) == 0;
+ $$ = $12 ? 1 : $11;
+ $13 = $$ >>> 0 < $1 >>> 0;
+ $$089 = $13 ? $1 : $$;
+ $14 = ($2 | 0) < 0;
+ $15 = 0 - $2 | 0;
+ $$pn = $14 ? $15 : $2;
+ $$0 = $$089 + $$pn | 0;
+ $16 = ($5 | 0) == 0;
+ if ($16) {
+  $17 = $0 + 12 | 0;
+  $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+  $19 = $18 & 1;
+  $20 = ($19 | 0) == 0;
+  if ($20) {
+   $22 = __gcry_malloc($$0) | 0;
+   $23 = $22;
+  } else {
+   label = 5;
+  }
+ } else {
+  label = 5;
+ }
+ if ((label | 0) == 5) {
+  $21 = __gcry_malloc_secure($$0) | 0;
+  $23 = $21;
+ }
+ $24 = ($23 | 0) == (0 | 0);
+ if ($24) {
+  $$091 = 0;
+  return $$091 | 0;
+ }
+ $25 = $23 + $15 | 0;
+ $$095 = $14 ? $25 : $23;
+ $26 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $27 = ($26 | 0) > 0;
+ if ($27) {
+  $28 = $0 + 16 | 0;
+  $$090107$in = $26;
+  $$092106 = $$095;
+  while (1) {
+   $$090107 = $$090107$in + -1 | 0;
+   $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+   $30 = $29 + ($$090107 << 2) | 0;
+   $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+   $32 = $31 >>> 24;
+   $33 = $32 & 255;
+   $34 = $$092106 + 1 | 0;
+   SAFE_HEAP_STORE($$092106 >> 0 | 0, $33 | 0, 1);
+   $35 = $31 >>> 16;
+   $36 = $35 & 255;
+   $37 = $$092106 + 2 | 0;
+   SAFE_HEAP_STORE($34 >> 0 | 0, $36 | 0, 1);
+   $38 = $31 >>> 8;
+   $39 = $38 & 255;
+   $40 = $$092106 + 3 | 0;
+   SAFE_HEAP_STORE($37 >> 0 | 0, $39 | 0, 1);
+   $41 = $31 & 255;
+   $42 = $$092106 + 4 | 0;
+   SAFE_HEAP_STORE($40 >> 0 | 0, $41 | 0, 1);
+   $43 = ($$090107$in | 0) > 1;
+   if ($43) {
+    $$090107$in = $$090107;
+    $$092106 = $42;
+   } else {
+    break;
+   }
+  }
+ }
+ $44 = ($1 | 0) == 0;
+ $$pr = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ if (!$44) {
+  $45 = $$pr >>> 1;
+  $46 = ($45 | 0) == 0;
+  if (!$46) {
+   $47 = $$pr + -1 | 0;
+   $$1102 = 0;
+   while (1) {
+    $49 = $$095 + $$1102 | 0;
+    $50 = SAFE_HEAP_LOAD($49 >> 0 | 0, 1, 0) | 0 | 0;
+    $51 = $47 - $$1102 | 0;
+    $52 = $$095 + $51 | 0;
+    $53 = SAFE_HEAP_LOAD($52 >> 0 | 0, 1, 0) | 0 | 0;
+    SAFE_HEAP_STORE($49 >> 0 | 0, $53 | 0, 1);
+    SAFE_HEAP_STORE($52 >> 0 | 0, $50 | 0, 1);
+    $54 = $$1102 + 1 | 0;
+    $exitcond = ($54 | 0) == ($45 | 0);
+    if ($exitcond) {
+     break;
+    } else {
+     $$1102 = $54;
+    }
+   }
+  }
+  $55 = $$pr >>> 0 < $1 >>> 0;
+  if ($55) {
+   $56 = $$095 + $$pr | 0;
+   $57 = $1 - $$pr | 0;
+   _memset($56 | 0, 0, $57 | 0) | 0;
+   $$094$lcssa = $1;
+  } else {
+   $$094$lcssa = $$pr;
+  }
+  SAFE_HEAP_STORE($3 | 0, $$094$lcssa | 0, 4);
+  $$091 = $23;
+  return $$091 | 0;
+ }
+ $48 = ($$pr | 0) == 0;
+ if ($48) {
+  $$091 = $23;
+  return $$091 | 0;
+ } else {
+  $$296 = $$095;
+  $62 = $$pr;
+ }
+ while (1) {
+  $58 = SAFE_HEAP_LOAD($$296 >> 0 | 0, 1, 0) | 0 | 0;
+  $59 = $58 << 24 >> 24 == 0;
+  if (!$59) {
+   $$2$lcssa = $$296;
+   $65 = $62;
+   break;
+  }
+  $60 = $$296 + 1 | 0;
+  $61 = $62 + -1 | 0;
+  SAFE_HEAP_STORE($3 | 0, $61 | 0, 4);
+  $63 = ($61 | 0) == 0;
+  if ($63) {
+   $$2$lcssa = $60;
+   $65 = 0;
+   break;
+  } else {
+   $$296 = $60;
+   $62 = $61;
+  }
+ }
+ $64 = ($$2$lcssa | 0) == ($$095 | 0);
+ if ($64) {
+  $$091 = $23;
+  return $$091 | 0;
+ }
+ _memmove($$095 | 0, $$2$lcssa | 0, $65 | 0) | 0;
+ $$091 = $23;
+ return $$091 | 0;
+}
+
+function __gcry_sexp_cdr($0) {
+ $0 = $0 | 0;
+ var $$$0 = 0, $$$068 = 0, $$0$copyload = 0, $$0$copyload28 = 0, $$0$ph$be = 
0, $$0$ph134 = 0, $$0$ph72130 = 0, $$061$ph$be = 0, $$061$ph133 = 0, $$062 = 0, 
$$063$ph132 = 0, $$063$ph71$lcssa = 0, $$063$ph71129 = 0, $$063$us = 0, $$1 = 
0, $$164 = 0, $$2 = 0, $$265 = 0, $1 = 0, $10 = 0;
+ var $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, $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, $5 = 0, $6 = 0, 
$7 = 0, $8 = 0, $9 = 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == (0 | 0);
+ if ($1) {
+  $$062 = 0;
+  return $$062 | 0;
+ }
+ $2 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = $2 << 24 >> 24 == 3;
+ if ($3) {
+  $$0$ph134 = 1;
+  $$061$ph133 = 0;
+  $$063$ph132 = $0;
+  $12 = -1;
+ } else {
+  $$062 = 0;
+  return $$062 | 0;
+ }
+ L6 : while (1) {
+  $$0$ph72130 = $$0$ph134;
+  $$063$ph71129 = $$063$ph132;
+  L8 : while (1) {
+   $$063$us = $$063$ph71129;
+   L10 : while (1) {
+    $4 = $$063$us + 1 | 0;
+    $5 = SAFE_HEAP_LOAD($4 >> 0 | 0, 1, 0) | 0 | 0;
+    switch ($5 << 24 >> 24) {
+    case 0:
+     {
+      $$062 = 0;
+      label = 19;
+      break L6;
+      break;
+     }
+    case 3:
+     {
+      label = 8;
+      break L8;
+      break;
+     }
+    case 4:
+     {
+      label = 10;
+      break L8;
+      break;
+     }
+    case 1:
+     {
+      break L10;
+      break;
+     }
+    default:
+     {
+      $$063$us = $4;
+     }
+    }
+   }
+   $7 = $$063$us + 2 | 0;
+   $$0$copyload = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($7 + 
1 >> 0 | 0, 1, 1) | 0) << 8;
+   $8 = $$0$copyload & 65535;
+   $9 = $8 + 2 | 0;
+   $10 = $7 + $9 | 0;
+   $11 = $10 + -1 | 0;
+   $$$0 = $12 + $$0$ph72130 | 0;
+   $13 = ($$$0 | 0) > 0;
+   if ($13) {
+    $$0$ph72130 = $$$0;
+    $$063$ph71129 = $11;
+   } else {
+    $$063$ph71$lcssa = $11;
+    break L6;
+   }
+  }
+  if ((label | 0) == 8) {
+   label = 0;
+   $14 = $$061$ph133 + 1 | 0;
+   $$0$ph$be = $$0$ph72130;
+   $$061$ph$be = $14;
+  } else if ((label | 0) == 10) {
+   label = 0;
+   $18 = $$061$ph133 + -1 | 0;
+   $19 = ($18 | 0) == 0;
+   $20 = $19 << 31 >> 31;
+   $$$068 = $20 + $$0$ph72130 | 0;
+   $$0$ph$be = $$$068;
+   $$061$ph$be = $18;
+  }
+  $15 = ($$061$ph$be | 0) == 0;
+  $16 = $15 << 31 >> 31;
+  $17 = ($$0$ph$be | 0) > 0;
+  if ($17) {
+   $$0$ph134 = $$0$ph$be;
+   $$061$ph133 = $$061$ph$be;
+   $$063$ph132 = $4;
+   $12 = $16;
+  } else {
+   $$063$ph71$lcssa = $4;
+   break;
+  }
+ }
+ if ((label | 0) == 19) {
+  return $$062 | 0;
+ }
+ $6 = $$063$ph71$lcssa + 1 | 0;
+ $$1 = 0;
+ $$164 = $6;
+ L20 : while (1) {
+  $21 = SAFE_HEAP_LOAD($$164 >> 0 | 0, 1, 0) | 0 | 0;
+  switch ($21 << 24 >> 24) {
+  case 0:
+   {
+    $$062 = 0;
+    label = 19;
+    break L20;
+    break;
+   }
+  case 1:
+   {
+    $22 = $$164 + 1 | 0;
+    $$0$copyload28 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($22 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+    $23 = $$0$copyload28 & 65535;
+    $24 = $23 + 2 | 0;
+    $25 = $22 + $24 | 0;
+    $26 = $25 + -1 | 0;
+    $$2 = $$1;
+    $$265 = $26;
+    break;
+   }
+  case 3:
+   {
+    $27 = $$1 + 1 | 0;
+    $$2 = $27;
+    $$265 = $$164;
+    break;
+   }
+  case 4:
+   {
+    $28 = $$1 + -1 | 0;
+    $$2 = $28;
+    $$265 = $$164;
+    break;
+   }
+  default:
+   {
+    $$2 = $$1;
+    $$265 = $$164;
+   }
+  }
+  $29 = $$265 + 1 | 0;
+  $30 = ($$2 | 0) == 0;
+  if ($30) {
+   break;
+  } else {
+   $$1 = $$2;
+   $$164 = $29;
+  }
+ }
+ if ((label | 0) == 19) {
+  return $$062 | 0;
+ }
+ $31 = $29;
+ $32 = $6;
+ $33 = $31 - $32 | 0;
+ $34 = $33 & 65535;
+ $35 = $34 + 3 | 0;
+ $36 = __gcry_malloc($35) | 0;
+ $37 = ($36 | 0) == (0 | 0);
+ if ($37) {
+  $$062 = 0;
+  return $$062 | 0;
+ }
+ $38 = $36 + 1 | 0;
+ SAFE_HEAP_STORE($36 >> 0 | 0, 3 | 0, 1);
+ _memcpy($38 | 0, $6 | 0, $34 | 0) | 0;
+ $39 = $38 + $34 | 0;
+ $40 = $39 + 1 | 0;
+ SAFE_HEAP_STORE($39 >> 0 | 0, 4 | 0, 1);
+ SAFE_HEAP_STORE($40 >> 0 | 0, 0 | 0, 1);
+ $41 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 0 | 0;
+ $42 = $41 << 24 >> 24 == 4;
+ if (!$42) {
+  $$062 = $36;
+  return $$062 | 0;
+ }
+ __gcry_sexp_release($36);
+ $$062 = 0;
+ return $$062 | 0;
+}
+
+function ___fdopen($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0 = 0, $$pre = 0, $$pre31 = 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, $5 = 0, $6 = 0;
+ var $7 = 0, $8 = 0, $9 = 0, $memchr = 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, dest = 0, label = 0, sp = 0, stop = 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 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $4 = $3 << 24 >> 24;
+ $memchr = _memchr(70204, $4, 4) | 0;
+ $5 = ($memchr | 0) == (0 | 0);
+ if ($5) {
+  $6 = ___errno_location() | 0;
+  SAFE_HEAP_STORE($6 | 0, 22 | 0, 4);
+  $$0 = 0;
+ } else {
+  $7 = _malloc(1156) | 0;
+  $8 = ($7 | 0) == (0 | 0);
+  if ($8) {
+   $$0 = 0;
+  } else {
+   dest = $7;
+   stop = dest + 124 | 0;
+   do {
+    SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+    dest = dest + 4 | 0;
+   } while ((dest | 0) < (stop | 0));
+   $9 = _strchr($1, 43) | 0;
+   $10 = ($9 | 0) == (0 | 0);
+   if ($10) {
+    $11 = $3 << 24 >> 24 == 114;
+    $12 = $11 ? 8 : 4;
+    SAFE_HEAP_STORE($7 | 0, $12 | 0, 4);
+   }
+   $13 = _strchr($1, 101) | 0;
+   $14 = ($13 | 0) == (0 | 0);
+   if ($14) {
+    $15 = $3;
+   } else {
+    SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, 2 | 0, 4);
+    $vararg_ptr2 = $vararg_buffer + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr2 | 0, 1 | 0, 4);
+    ___syscall221(221, $vararg_buffer | 0) | 0;
+    $$pre = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+    $15 = $$pre;
+   }
+   $16 = $15 << 24 >> 24 == 97;
+   if ($16) {
+    SAFE_HEAP_STORE($vararg_buffer3 | 0, $0 | 0, 4);
+    $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr6 | 0, 3 | 0, 4);
+    $17 = ___syscall221(221, $vararg_buffer3 | 0) | 0;
+    $18 = $17 & 1024;
+    $19 = ($18 | 0) == 0;
+    if ($19) {
+     $20 = $17 | 1024;
+     SAFE_HEAP_STORE($vararg_buffer7 | 0, $0 | 0, 4);
+     $vararg_ptr10 = $vararg_buffer7 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr10 | 0, 4 | 0, 4);
+     $vararg_ptr11 = $vararg_buffer7 + 8 | 0;
+     SAFE_HEAP_STORE($vararg_ptr11 | 0, $20 | 0, 4);
+     ___syscall221(221, $vararg_buffer7 | 0) | 0;
+    }
+    $21 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $22 = $21 | 128;
+    SAFE_HEAP_STORE($7 | 0, $22 | 0, 4);
+    $29 = $22;
+   } else {
+    $$pre31 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $29 = $$pre31;
+   }
+   $23 = $7 + 60 | 0;
+   SAFE_HEAP_STORE($23 | 0, $0 | 0, 4);
+   $24 = $7 + 132 | 0;
+   $25 = $7 + 44 | 0;
+   SAFE_HEAP_STORE($25 | 0, $24 | 0, 4);
+   $26 = $7 + 48 | 0;
+   SAFE_HEAP_STORE($26 | 0, 1024 | 0, 4);
+   $27 = $7 + 75 | 0;
+   SAFE_HEAP_STORE($27 >> 0 | 0, -1 | 0, 1);
+   $28 = $29 & 8;
+   $30 = ($28 | 0) == 0;
+   if ($30) {
+    $31 = $2;
+    SAFE_HEAP_STORE($vararg_buffer12 | 0, $0 | 0, 4);
+    $vararg_ptr15 = $vararg_buffer12 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr15 | 0, 21523 | 0, 4);
+    $vararg_ptr16 = $vararg_buffer12 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr16 | 0, $31 | 0, 4);
+    $32 = ___syscall54(54, $vararg_buffer12 | 0) | 0;
+    $33 = ($32 | 0) == 0;
+    if ($33) {
+     SAFE_HEAP_STORE($27 >> 0 | 0, 10 | 0, 1);
+    }
+   }
+   $34 = $7 + 32 | 0;
+   SAFE_HEAP_STORE($34 | 0, 85 | 0, 4);
+   $35 = $7 + 36 | 0;
+   SAFE_HEAP_STORE($35 | 0, 52 | 0, 4);
+   $36 = $7 + 40 | 0;
+   SAFE_HEAP_STORE($36 | 0, 51 | 0, 4);
+   $37 = $7 + 12 | 0;
+   SAFE_HEAP_STORE($37 | 0, 49 | 0, 4);
+   $38 = SAFE_HEAP_LOAD(70780 | 0, 4, 0) | 0 | 0;
+   $39 = ($38 | 0) == 0;
+   if ($39) {
+    $40 = $7 + 76 | 0;
+    SAFE_HEAP_STORE($40 | 0, -1 | 0, 4);
+   }
+   $41 = ___ofl_add($7) | 0;
+   $$0 = $41;
+  }
+ }
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _GNUNET_CRYPTO_random_u32($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.0, $44 = 0.0, $45 = 0.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, 
$7 = 0, $8 = 0, $9 = 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 + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer5 = sp + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $5 = sp + 36 | 0;
+ $3 = $0;
+ $4 = $1;
+ $9 = $4;
+ $10 = $9 >>> 0 > 0;
+ if (!$10) {
+  $7 = 157;
+  $11 = SAFE_HEAP_LOAD(243 * 4 | 0, 4, 0) | 0 | 0;
+  $12 = ($11 | 0) == -1;
+  if ($12) {
+   $13 = $7;
+   $14 = _GNUNET_get_log_call_status(1, 0, 20701, 20817, $13) | 0;
+   SAFE_HEAP_STORE(243 * 4 | 0, $14 | 0, 4);
+  }
+  $15 = _GNUNET_get_log_skip() | 0;
+  $16 = ($15 | 0) > 0;
+  if ($16) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $17 = SAFE_HEAP_LOAD(243 * 4 | 0, 4, 0) | 0 | 0;
+  $18 = ($17 | 0) != 0;
+  if (!$18) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 20701 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 157 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $19 = $3;
+ switch ($19 | 0) {
+ case 1:
+  {
+   $20 = SAFE_HEAP_LOAD(17573 * 4 | 0, 4, 0) | 0 | 0;
+   $21 = $20 + 1 | 0;
+   SAFE_HEAP_STORE(17573 * 4 | 0, $21 | 0, 4);
+   $22 = ($20 >>> 0) % 256 & -1;
+   $23 = ($22 | 0) == 0;
+   if ($23) {
+    SAFE_HEAP_STORE($vararg_buffer2 | 0, 0 | 0, 4);
+    _gcry_control(48, $vararg_buffer2) | 0;
+   }
+   $24 = $4;
+   $25 = 4294967295 % ($24 >>> 0) & -1;
+   $26 = -1 - $25 | 0;
+   $6 = $26;
+   while (1) {
+    _gcry_randomize($5, 4, 1);
+    $27 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $28 = $6;
+    $29 = $27 >>> 0 >= $28 >>> 0;
+    if (!$29) {
+     break;
+    }
+   }
+   $30 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $31 = $4;
+   $32 = ($30 >>> 0) % ($31 >>> 0) & -1;
+   $2 = $32;
+   $61 = $2;
+   STACKTOP = sp;
+   return $61 | 0;
+   break;
+  }
+ case 2:
+  {
+   $33 = $4;
+   $34 = 4294967295 % ($33 >>> 0) & -1;
+   $35 = -1 - $34 | 0;
+   $6 = $35;
+   while (1) {
+    _gcry_create_nonce($5, 4);
+    $36 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $37 = $6;
+    $38 = $36 >>> 0 >= $37 >>> 0;
+    if (!$38) {
+     break;
+    }
+   }
+   $39 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $40 = $4;
+   $41 = ($39 >>> 0) % ($40 >>> 0) & -1;
+   $2 = $41;
+   $61 = $2;
+   STACKTOP = sp;
+   return $61 | 0;
+   break;
+  }
+ case 0:
+  {
+   $42 = $4;
+   $43 = +($42 >>> 0);
+   $44 = +_get_weak_random();
+   $45 = $43 * $44;
+   $46 = ~~$45 >>> 0;
+   SAFE_HEAP_STORE($5 | 0, $46 | 0, 4);
+   $47 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $48 = $4;
+   $49 = $47 >>> 0 >= $48 >>> 0;
+   if ($49) {
+    $50 = $4;
+    $51 = $50 - 1 | 0;
+    SAFE_HEAP_STORE($5 | 0, $51 | 0, 4);
+   }
+   $52 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $2 = $52;
+   $61 = $2;
+   STACKTOP = sp;
+   return $61 | 0;
+   break;
+  }
+ default:
+  {
+   $8 = 189;
+   $53 = SAFE_HEAP_LOAD(244 * 4 | 0, 4, 0) | 0 | 0;
+   $54 = ($53 | 0) == -1;
+   if ($54) {
+    $55 = $8;
+    $56 = _GNUNET_get_log_call_status(1, 0, 20701, 20817, $55) | 0;
+    SAFE_HEAP_STORE(244 * 4 | 0, $56 | 0, 4);
+   }
+   $57 = _GNUNET_get_log_skip() | 0;
+   $58 = ($57 | 0) > 0;
+   if ($58) {
+    _GNUNET_log_skip(-1, 0);
+    _GNUNET_abort_();
+   }
+   $59 = SAFE_HEAP_LOAD(244 * 4 | 0, 4, 0) | 0 | 0;
+   $60 = ($59 | 0) != 0;
+   if (!$60) {
+    _GNUNET_abort_();
+   }
+   SAFE_HEAP_STORE($vararg_buffer5 | 0, 20701 | 0, 4);
+   $vararg_ptr8 = $vararg_buffer5 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr8 | 0, 189 | 0, 4);
+   _GNUNET_log_nocheck(1, 61295, $vararg_buffer5);
+   _GNUNET_abort_();
+  }
+ }
+ return 0 | 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;
+  {}
+  SAFE_HEAP_STORE($21 >> 0 | 0, SAFE_HEAP_LOAD(35386 >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  SAFE_HEAP_STORE($21 + 1 >> 0 | 0, SAFE_HEAP_LOAD(35386 + 1 >> 0 | 0, 1, 0) | 
0 | 0 | 0, 1);
+  SAFE_HEAP_STORE($21 + 2 >> 0 | 0, SAFE_HEAP_LOAD(35386 + 2 >> 0 | 0, 1, 0) | 
0 | 0 | 0, 1);
+  $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;
+  {}
+  SAFE_HEAP_STORE($26 >> 0 | 0, SAFE_HEAP_LOAD(35389 >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  SAFE_HEAP_STORE($26 + 1 >> 0 | 0, SAFE_HEAP_LOAD(35389 + 1 >> 0 | 0, 1, 0) | 
0 | 0 | 0, 1);
+  SAFE_HEAP_STORE($26 + 2 >> 0 | 0, SAFE_HEAP_LOAD(35389 + 2 >> 0 | 0, 1, 0) | 
0 | 0 | 0, 1);
+  $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;
+  {}
+  SAFE_HEAP_STORE($31 >> 0 | 0, SAFE_HEAP_LOAD(35392 >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  SAFE_HEAP_STORE($31 + 1 >> 0 | 0, SAFE_HEAP_LOAD(35392 + 1 >> 0 | 0, 1, 0) | 
0 | 0 | 0, 1);
+  SAFE_HEAP_STORE($31 + 2 >> 0 | 0, SAFE_HEAP_LOAD(35392 + 2 >> 0 | 0, 1, 0) | 
0 | 0 | 0, 1);
+  $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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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;
+ }
+ SAFE_HEAP_STORE($0 | 0, $$3 | 0, 4);
+ $$2 = 0;
+ return $$2 | 0;
+}
+
+function __gcry_sexp_nth_string($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$$037$i = 0, $$0 = 0, $$0$copyload$i = 0, $$0$copyload9$i = 0, 
$$034$lcssa$i = 0, $$034$lcssa48$i = 0, $$03443$i$lcssa = 0, $$03443$i23 = 0, 
$$03443$ph$i = 0, $$03742$ph$i = 0, $$044$i$lcssa = 0, $$044$i22 = 0, 
$$044$ph$i = 0, $$1$i = 0, $$1$ph$i = 0, $$135$i = 0, $$lcssa$i = 0, $$ph$i = 
0, $$ph49$i = 0, $10 = 0;
+ var $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, $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$cond16 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $2 = ($0 | 0) == (0 | 0);
+ if ($2) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $3 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $4 = $3 << 24 >> 24 == 3;
+ if ($4) {
+  $7 = $0 + 1 | 0;
+  $8 = ($1 | 0) > 0;
+  $9 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+  $10 = $9 << 24 >> 24 == 1;
+  L6 : do {
+   if ($8) {
+    $$03443$ph$i = $7;
+    $$03742$ph$i = $1;
+    $$044$ph$i = 0;
+    $$ph$i = $10;
+    $$ph49$i = $9;
+    L7 : while (1) {
+     L9 : do {
+      if ($$ph$i) {
+       $$03443$i$lcssa = $$03443$ph$i;
+       $$044$i$lcssa = $$044$ph$i;
+       label = 6;
+      } else {
+       $$03443$i23 = $$03443$ph$i;
+       $$044$i22 = $$044$ph$i;
+       $16 = $$ph49$i;
+       L10 : while (1) {
+        switch ($16 << 24 >> 24) {
+        case 0:
+         {
+          $$0 = 0;
+          break L7;
+          break;
+         }
+        case 4:
+         {
+          break L10;
+          break;
+         }
+        case 3:
+         {
+          $17 = $$044$i22 + 1 | 0;
+          $$1$ph$i = $17;
+          break;
+         }
+        default:
+         {
+          $$1$ph$i = $$044$i22;
+         }
+        }
+        $19 = $$03443$i23 + 1 | 0;
+        $20 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+        $21 = $20 << 24 >> 24 == 1;
+        if ($21) {
+         $$03443$i$lcssa = $19;
+         $$044$i$lcssa = $$1$ph$i;
+         label = 6;
+         break L9;
+        } else {
+         $$03443$i23 = $19;
+         $$044$i22 = $$1$ph$i;
+         $16 = $20;
+        }
+       }
+       $18 = $$044$i22 + -1 | 0;
+       $$1$i = $18;
+       $$135$i = $$03443$i23;
+      }
+     } while (0);
+     if ((label | 0) == 6) {
+      label = 0;
+      $11 = $$03443$i$lcssa + 1 | 0;
+      $$0$copyload$i = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($11 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+      $12 = $$0$copyload$i & 65535;
+      $13 = $12 + 2 | 0;
+      $14 = $11 + $13 | 0;
+      $15 = $14 + -1 | 0;
+      $$1$i = $$044$i$lcssa;
+      $$135$i = $15;
+     }
+     $22 = ($$1$i | 0) == 0;
+     $23 = $22 << 31 >> 31;
+     $$$037$i = $23 + $$03742$ph$i | 0;
+     $24 = $$135$i + 1 | 0;
+     $25 = ($$$037$i | 0) > 0;
+     $26 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+     $27 = $26 << 24 >> 24 == 1;
+     if ($25) {
+      $$03443$ph$i = $24;
+      $$03742$ph$i = $$$037$i;
+      $$044$ph$i = $$1$i;
+      $$ph$i = $27;
+      $$ph49$i = $26;
+     } else {
+      $$034$lcssa$i = $24;
+      $$lcssa$i = $27;
+      break L6;
+     }
+    }
+    return $$0 | 0;
+   } else {
+    $$034$lcssa$i = $7;
+    $$lcssa$i = $10;
+   }
+  } while (0);
+  if ($$lcssa$i) {
+   $$034$lcssa48$i = $$034$lcssa$i;
+  } else {
+   $$0 = 0;
+   return $$0 | 0;
+  }
+ } else {
+  $5 = ($1 | 0) == 0;
+  $6 = $3 << 24 >> 24 == 1;
+  $or$cond16 = $5 & $6;
+  if ($or$cond16) {
+   $$034$lcssa48$i = $0;
+  } else {
+   $$0 = 0;
+   return $$0 | 0;
+  }
+ }
+ $28 = $$034$lcssa48$i + 1 | 0;
+ $$0$copyload9$i = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($28 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+ $29 = $$0$copyload9$i & 65535;
+ $30 = $$034$lcssa48$i + 3 | 0;
+ $31 = $$0$copyload9$i << 16 >> 16 == 0;
+ if ($31) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $32 = $29 + 1 | 0;
+ $33 = __gcry_malloc($32) | 0;
+ $34 = ($33 | 0) == (0 | 0);
+ if ($34) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ _memcpy($33 | 0, $30 | 0, $29 | 0) | 0;
+ $35 = $33 + $29 | 0;
+ SAFE_HEAP_STORE($35 >> 0 | 0, 0 | 0, 1);
+ $$0 = $33;
+ return $$0 | 0;
+}
+
+function _rsa_blinding_key_derive($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, $50 = 0, $51 = 0, $52 = 0, $53 = 0, 
$54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0;
+ var $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 + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $6 = sp + 36 | 0;
+ $2 = $0;
+ $3 = $1;
+ $4 = 21332;
+ $10 = _GNUNET_xmalloc_(4, 20893, 434) | 0;
+ $5 = $10;
+ $11 = $5;
+ $12 = (0 | 0) != ($11 | 0);
+ if (!$12) {
+  $7 = 435;
+  $13 = SAFE_HEAP_LOAD(259 * 4 | 0, 4, 0) | 0 | 0;
+  $14 = ($13 | 0) == -1;
+  if ($14) {
+   $15 = $7;
+   $16 = _GNUNET_get_log_call_status(1, 0, 20893, 21363, $15) | 0;
+   SAFE_HEAP_STORE(259 * 4 | 0, $16 | 0, 4);
+  }
+  $17 = _GNUNET_get_log_skip() | 0;
+  $18 = ($17 | 0) > 0;
+  if ($18) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $19 = SAFE_HEAP_LOAD(259 * 4 | 0, 4, 0) | 0 | 0;
+  $20 = ($19 | 0) != 0;
+  if (!$20) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 435 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $21 = $2;
+ $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+ $23 = _key_from_sexp_107($6, $22, 40693, 39075) | 0;
+ $24 = 0 == ($23 | 0);
+ if (!$24) {
+  $8 = 438;
+  $25 = SAFE_HEAP_LOAD(260 * 4 | 0, 4, 0) | 0 | 0;
+  $26 = ($25 | 0) == -1;
+  if ($26) {
+   $27 = $8;
+   $28 = _GNUNET_get_log_call_status(1, 0, 20893, 21363, $27) | 0;
+   SAFE_HEAP_STORE(260 * 4 | 0, $28 | 0, 4);
+  }
+  $29 = _GNUNET_get_log_skip() | 0;
+  $30 = ($29 | 0) > 0;
+  if ($30) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $31 = SAFE_HEAP_LOAD(260 * 4 | 0, 4, 0) | 0 | 0;
+  $32 = ($31 | 0) != 0;
+  if (!$32) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, 20893 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, 438 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+  _GNUNET_abort_();
+ }
+ $33 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $34 = _gcry_mpi_get_flag($33, 2) | 0;
+ $35 = 0 == ($34 | 0);
+ if ($35) {
+  $44 = $5;
+  $45 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $46 = $4;
+  $47 = $4;
+  $48 = _strlen($47) | 0;
+  $49 = $3;
+  _GNUNET_CRYPTO_kdf_mod_mpi($44, $45, $46, $48, $49, 32, 21387);
+  $50 = $5;
+  $51 = SAFE_HEAP_LOAD($50 | 0, 4, 0) | 0 | 0;
+  $52 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $53 = _rsa_gcd_validate($51, $52) | 0;
+  $54 = 0 == ($53 | 0);
+  if (!$54) {
+   $56 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   _gcry_mpi_release($56);
+   $57 = $5;
+   STACKTOP = sp;
+   return $57 | 0;
+  }
+  $55 = $5;
+  _GNUNET_xfree_($55, 20893, 448);
+  $5 = 0;
+  $56 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($56);
+  $57 = $5;
+  STACKTOP = sp;
+  return $57 | 0;
+ }
+ $9 = 440;
+ $36 = SAFE_HEAP_LOAD(261 * 4 | 0, 4, 0) | 0 | 0;
+ $37 = ($36 | 0) == -1;
+ if ($37) {
+  $38 = $9;
+  $39 = _GNUNET_get_log_call_status(1, 0, 20893, 21363, $38) | 0;
+  SAFE_HEAP_STORE(261 * 4 | 0, $39 | 0, 4);
+ }
+ $40 = _GNUNET_get_log_skip() | 0;
+ $41 = ($40 | 0) > 0;
+ if ($41) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $42 = SAFE_HEAP_LOAD(261 * 4 | 0, 4, 0) | 0 | 0;
+ $43 = ($42 | 0) != 0;
+ if (!$43) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer6 | 0, 20893 | 0, 4);
+ $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr9 | 0, 440 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer6);
+ _GNUNET_abort_();
+ 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 $$ = 0, $$0110 = 0, $$0110122 = 0, $$0110124 = 0, $$0113123 = 0, 
$$1111121 = 0, $$1114120 = 0, $$115 = 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;
+ 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, $40 = 0;
+ var $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, $59 = 0, $9 = 0;
+ var $exitcond = 0, $exitcond127 = 0, $or$cond = 0, $or$cond4 = 0, label = 0, 
sp = 0;
+ sp = STACKTOP;
+ $9 = $1 + 7 | 0;
+ $10 = $9 >>> 3;
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $11 = ($5 | 0) != (0 | 0);
+ $12 = ($6 | 0) != 0;
+ $or$cond = $11 & $12;
+ $$ = $or$cond ? $6 : 0;
+ $$115 = $or$cond ? $5 : 71847;
+ $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, $$115, $$);
+ $24 = $10 + -1 | 0;
+ $25 = $24 - $4 | 0;
+ $26 = $19 + $25 | 0;
+ SAFE_HEAP_STORE($26 >> 0 | 0, 1 | 0, 1);
+ $27 = $26 + 1 | 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;
+ }
+ $$0110122 = $13 + 1 | 0;
+ $37 = $$0110122 >>> 0 < $10 >>> 0;
+ if ($37) {
+  $$0110124 = $$0110122;
+  $$0113123 = $32;
+  while (1) {
+   $38 = $$0113123 + 1 | 0;
+   $39 = SAFE_HEAP_LOAD($$0113123 >> 0 | 0, 1, 0) | 0 | 0;
+   $40 = $19 + $$0110124 | 0;
+   $41 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+   $42 = $41 ^ $39;
+   SAFE_HEAP_STORE($40 >> 0 | 0, $42 | 0, 1);
+   $$0110 = $$0110124 + 1 | 0;
+   $exitcond127 = ($$0110 | 0) == ($10 | 0);
+   if ($exitcond127) {
+    break;
+   } else {
+    $$0110124 = $$0110;
+    $$0113123 = $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 = $$0110122 >>> 0 > 1;
+ if ($48) {
+  $$1111121 = 1;
+  $$1114120 = $43;
+  while (1) {
+   $49 = $$1114120 + 1 | 0;
+   $50 = SAFE_HEAP_LOAD($$1114120 >> 0 | 0, 1, 0) | 0 | 0;
+   $51 = $19 + $$1111121 | 0;
+   $52 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+   $53 = $52 ^ $50;
+   SAFE_HEAP_STORE($51 >> 0 | 0, $53 | 0, 1);
+   $54 = $$1111121 + 1 | 0;
+   $exitcond = ($54 | 0) == ($$0110122 | 0);
+   if ($exitcond) {
+    break;
+   } else {
+    $$1111121 = $54;
+    $$1114120 = $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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   __gcry_log_printmpi(38936, $59);
+  }
+ }
+ __gcry_free($19);
+ $$2 = $55;
+ return $$2 | 0;
+}
+
+function __gcry_sexp_nth_buffer($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$037$i = 0, $$0 = 0, $$0$copyload$i = 0, $$0$copyload9$i = 0, 
$$034$lcssa$i = 0, $$034$lcssa48$i = 0, $$03443$i$lcssa = 0, $$03443$i24 = 0, 
$$03443$ph$i = 0, $$03742$ph$i = 0, $$044$i$lcssa = 0, $$044$i23 = 0, 
$$044$ph$i = 0, $$1$i = 0, $$1$ph$i = 0, $$135$i = 0, $$lcssa$i = 0, $$ph$i = 
0, $$ph49$i = 0, $10 = 0;
+ var $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, $3 = 0;
+ var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 
0, $8 = 0, $9 = 0, $or$cond17 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ $3 = ($0 | 0) == (0 | 0);
+ if ($3) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $4 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $5 = $4 << 24 >> 24 == 3;
+ if ($5) {
+  $8 = $0 + 1 | 0;
+  $9 = ($1 | 0) > 0;
+  $10 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+  $11 = $10 << 24 >> 24 == 1;
+  L6 : do {
+   if ($9) {
+    $$03443$ph$i = $8;
+    $$03742$ph$i = $1;
+    $$044$ph$i = 0;
+    $$ph$i = $11;
+    $$ph49$i = $10;
+    L7 : while (1) {
+     L9 : do {
+      if ($$ph$i) {
+       $$03443$i$lcssa = $$03443$ph$i;
+       $$044$i$lcssa = $$044$ph$i;
+       label = 6;
+      } else {
+       $$03443$i24 = $$03443$ph$i;
+       $$044$i23 = $$044$ph$i;
+       $17 = $$ph49$i;
+       L10 : while (1) {
+        switch ($17 << 24 >> 24) {
+        case 0:
+         {
+          $$0 = 0;
+          break L7;
+          break;
+         }
+        case 4:
+         {
+          break L10;
+          break;
+         }
+        case 3:
+         {
+          $18 = $$044$i23 + 1 | 0;
+          $$1$ph$i = $18;
+          break;
+         }
+        default:
+         {
+          $$1$ph$i = $$044$i23;
+         }
+        }
+        $20 = $$03443$i24 + 1 | 0;
+        $21 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+        $22 = $21 << 24 >> 24 == 1;
+        if ($22) {
+         $$03443$i$lcssa = $20;
+         $$044$i$lcssa = $$1$ph$i;
+         label = 6;
+         break L9;
+        } else {
+         $$03443$i24 = $20;
+         $$044$i23 = $$1$ph$i;
+         $17 = $21;
+        }
+       }
+       $19 = $$044$i23 + -1 | 0;
+       $$1$i = $19;
+       $$135$i = $$03443$i24;
+      }
+     } while (0);
+     if ((label | 0) == 6) {
+      label = 0;
+      $12 = $$03443$i$lcssa + 1 | 0;
+      $$0$copyload$i = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($12 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+      $13 = $$0$copyload$i & 65535;
+      $14 = $13 + 2 | 0;
+      $15 = $12 + $14 | 0;
+      $16 = $15 + -1 | 0;
+      $$1$i = $$044$i$lcssa;
+      $$135$i = $16;
+     }
+     $23 = ($$1$i | 0) == 0;
+     $24 = $23 << 31 >> 31;
+     $$$037$i = $24 + $$03742$ph$i | 0;
+     $25 = $$135$i + 1 | 0;
+     $26 = ($$$037$i | 0) > 0;
+     $27 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+     $28 = $27 << 24 >> 24 == 1;
+     if ($26) {
+      $$03443$ph$i = $25;
+      $$03742$ph$i = $$$037$i;
+      $$044$ph$i = $$1$i;
+      $$ph$i = $28;
+      $$ph49$i = $27;
+     } else {
+      $$034$lcssa$i = $25;
+      $$lcssa$i = $28;
+      break L6;
+     }
+    }
+    return $$0 | 0;
+   } else {
+    $$034$lcssa$i = $8;
+    $$lcssa$i = $11;
+   }
+  } while (0);
+  if ($$lcssa$i) {
+   $$034$lcssa48$i = $$034$lcssa$i;
+  } else {
+   $$0 = 0;
+   return $$0 | 0;
+  }
+ } else {
+  $6 = ($1 | 0) == 0;
+  $7 = $4 << 24 >> 24 == 1;
+  $or$cond17 = $6 & $7;
+  if ($or$cond17) {
+   $$034$lcssa48$i = $0;
+  } else {
+   $$0 = 0;
+   return $$0 | 0;
+  }
+ }
+ $29 = $$034$lcssa48$i + 1 | 0;
+ $$0$copyload9$i = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($29 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+ $30 = $$0$copyload9$i & 65535;
+ $31 = $$034$lcssa48$i + 3 | 0;
+ $32 = $$0$copyload9$i << 16 >> 16 == 0;
+ if ($32) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $33 = __gcry_malloc($30) | 0;
+ $34 = ($33 | 0) == (0 | 0);
+ if ($34) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ _memcpy($33 | 0, $31 | 0, $30 | 0) | 0;
+ SAFE_HEAP_STORE($2 | 0, $30 | 0, 4);
+ $$0 = $33;
+ return $$0 | 0;
+}
+
+function __gcry_cipher_poly1305_setiv($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$053$lcssa72 = 0, $$05363 = 0, $$054$lcssa71 = 0, $$05462 = 0, 
$$1 = 0, $$155 = 0, $$3$ph = 0, $$357$ph = 0, $$35760 = 0, $$361 = 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, $6 = 0;
+ var $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $scevgep = 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 {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ $8 = $6 + 4 | 0;
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ $9 = $0 + 136 | 0;
+ SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+ $10 = $0 + 140 | 0;
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ $11 = $0 + 144 | 0;
+ $12 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+ $13 = $12 & -4;
+ SAFE_HEAP_STORE($11 >> 0 | 0, $13 | 0, 1);
+ $14 = $0 + 56 | 0;
+ $15 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+ $16 = $15 & -7;
+ SAFE_HEAP_STORE($14 >> 0 | 0, $16 | 0, 1);
+ $17 = $0 + 12 | 0;
+ $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $19 = $18 + 60 | 0;
+ $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+ $21 = $0 + 496 | 0;
+ FUNCTION_TABLE_viii[(SAFE_FT_MASK($20 | 0, 127 | 0) | 0) & 127]($21, $1, $2);
+ dest = $3;
+ stop = dest + 64 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, 0 | 0 | 0, 1);
+  dest = dest + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $22 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $23 = $22 + 44 | 0;
+ $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ FUNCTION_TABLE_viiii[(SAFE_FT_MASK($24 | 0, 63 | 0) | 0) & 63]($21, $3, $3, 
64);
+ $25 = __gcry_poly1305_init($7, $3, 32) | 0;
+ $26 = $3;
+ $27 = $26 & 7;
+ $28 = ($27 | 0) == 0;
+ if ($28) {
+  $$053$lcssa72 = 64;
+  $$054$lcssa71 = $3;
+  label = 5;
+ } else {
+  $$05363 = 64;
+  $$05462 = $3;
+  while (1) {
+   SAFE_HEAP_STORE($$05462 >> 0 | 0, 0 | 0, 1);
+   $29 = $$05462 + 1 | 0;
+   $30 = $$05363 + -1 | 0;
+   $31 = $29;
+   $32 = $31 & 7;
+   $33 = ($32 | 0) != 0;
+   $34 = ($30 | 0) != 0;
+   $35 = $34 & $33;
+   if ($35) {
+    $$05363 = $30;
+    $$05462 = $29;
+   } else {
+    break;
+   }
+  }
+  $36 = $30 >>> 0 < 8;
+  if ($36) {
+   $$3$ph = $30;
+   $$357$ph = $29;
+  } else {
+   $$053$lcssa72 = $30;
+   $$054$lcssa71 = $29;
+   label = 5;
+  }
+ }
+ if ((label | 0) == 5) {
+  $37 = $$053$lcssa72 + -8 | 0;
+  $38 = $37 & -8;
+  $39 = $38 + 8 | 0;
+  $$1 = $$053$lcssa72;
+  $$155 = $$054$lcssa71;
+  while (1) {
+   $40 = $$155;
+   $41 = $40;
+   SAFE_HEAP_STORE($41 | 0, 0 | 0, 4);
+   $42 = $40 + 4 | 0;
+   $43 = $42;
+   SAFE_HEAP_STORE($43 | 0, 0 | 0, 4);
+   $44 = $$1 + -8 | 0;
+   $45 = $$155 + 8 | 0;
+   $46 = $44 >>> 0 > 7;
+   if ($46) {
+    $$1 = $44;
+    $$155 = $45;
+   } else {
+    break;
+   }
+  }
+  $47 = $37 - $38 | 0;
+  $scevgep = $$054$lcssa71 + $39 | 0;
+  $$3$ph = $47;
+  $$357$ph = $scevgep;
+ }
+ $48 = ($$3$ph | 0) == 0;
+ if (!$48) {
+  $$35760 = $$357$ph;
+  $$361 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$35760 >> 0 | 0, 0 | 0, 1);
+   $49 = $$35760 + 1 | 0;
+   $50 = $$361 + -1 | 0;
+   $51 = ($50 | 0) == 0;
+   if ($51) {
+    break;
+   } else {
+    $$35760 = $49;
+    $$361 = $50;
+   }
+  }
+ }
+ $52 = ($25 | 0) == 0;
+ if (!$52) {
+  $$0 = $25;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $53 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+ $54 = $53 | 2;
+ SAFE_HEAP_STORE($14 >> 0 | 0, $54 | 0, 1);
+ $$0 = 0;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $1 + 8 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($10 | 0, $11 | 0, 4);
+  SAFE_HEAP_STORE($7 | 0, $3 | 0, 4);
+  $12 = $7 + 4 | 0;
+  SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+  $13 = $7 + 8 | 0;
+  SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+  $14 = $7 + 12 | 0;
+  SAFE_HEAP_STORE($14 | 0, 0 | 0, 4);
+  $$038 = $7;
+ } else {
+  $$038 = $0;
+ }
+ $15 = $$038 + 12 | 0;
+ $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $17 = $16 & 16;
+ $18 = ($17 | 0) == 0;
+ if (!$18) {
+  __gcry_log_info(46049, $vararg_buffer);
+  STACKTOP = sp;
+  return $$038 | 0;
+ }
+ $19 = SAFE_HEAP_LOAD($$038 | 0, 4, 0) | 0 | 0;
+ $20 = ($19 | 0) < ($3 | 0);
+ L11 : do {
+  if ($20) {
+   $21 = $19 >>> 0 < $3 >>> 0;
+   if (!$21) {
+    $22 = $$038 + 4 | 0;
+    $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+    $24 = $23 >>> 0 < $19 >>> 0;
+    if (!$24) {
+     break;
+    }
+    $25 = $$038 + 16 | 0;
+    $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+    $$024$i = $23;
+    while (1) {
+     $27 = $26 + ($$024$i << 2) | 0;
+     SAFE_HEAP_STORE($27 | 0, 0 | 0, 4);
+     $28 = $$024$i + 1 | 0;
+     $29 = SAFE_HEAP_LOAD($$038 | 0, 4, 0) | 0 | 0;
+     $30 = $28 >>> 0 < $29 >>> 0;
+     if ($30) {
+      $$024$i = $28;
+     } else {
+      break L11;
+     }
+    }
+   }
+   $31 = $$038 + 16 | 0;
+   $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+   $33 = ($32 | 0) == (0 | 0);
+   do {
+    if ($33) {
+     $40 = $16 & 1;
+     $41 = ($40 | 0) == 0;
+     if ($41) {
+      $43 = __gcry_xcalloc($3, 4) | 0;
+      SAFE_HEAP_STORE($31 | 0, $43 | 0, 4);
+      break;
+     } else {
+      $42 = __gcry_xcalloc_secure($3, 4) | 0;
+      SAFE_HEAP_STORE($31 | 0, $42 | 0, 4);
+      break;
+     }
+    } else {
+     $34 = $3 << 2;
+     $35 = __gcry_xrealloc($32, $34) | 0;
+     SAFE_HEAP_STORE($31 | 0, $35 | 0, 4);
+     $36 = SAFE_HEAP_LOAD($$038 | 0, 4, 0) | 0 | 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);
+   SAFE_HEAP_STORE($$038 | 0, $3 | 0, 4);
+  }
+ } while (0);
+ $44 = $$038 + 16 | 0;
+ $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+ $46 = $1 + 16 | 0;
+ $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+ $48 = ($3 | 0) > 0;
+ if ($48) {
+  $$039 = 0;
+  while (1) {
+   $49 = $47 + ($$039 << 2) | 0;
+   $50 = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+   $51 = $45 + ($$039 << 2) | 0;
+   SAFE_HEAP_STORE($51 | 0, $50 | 0, 4);
+   $52 = $$039 + 1 | 0;
+   $exitcond = ($52 | 0) == ($3 | 0);
+   if ($exitcond) {
+    break;
+   } else {
+    $$039 = $52;
+   }
+  }
+ }
+ $53 = $$038 + 4 | 0;
+ SAFE_HEAP_STORE($53 | 0, $3 | 0, 4);
+ $54 = $1 + 12 | 0;
+ $55 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+ $56 = $55 & -49;
+ SAFE_HEAP_STORE($15 | 0, $56 | 0, 4);
+ $57 = $$038 + 8 | 0;
+ SAFE_HEAP_STORE($57 | 0, $5 | 0, 4);
+ STACKTOP = sp;
+ return $$038 | 0;
+}
+
+function __gcry_sexp_find_token($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0$copyload = 0, $$0$copyload22 = 0, $$0$copyload30 = 0, $$068 = 0, 
$$069 = 0, $$079$ph = 0, $$1 = 0, $$17078 = 0, $$17078$ph = 0, $$271$ph = 0, 
$$3 = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 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, $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, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = ($0 | 0) == (0 | 0);
+ if ($3) {
+  $$3 = 0;
+  return $$3 | 0;
+ }
+ $4 = ($2 | 0) == 0;
+ if ($4) {
+  $5 = _strlen($1) | 0;
+  $$068 = $5;
+ } else {
+  $$068 = $2;
+ }
+ $$069 = $0;
+ L7 : while (1) {
+  $6 = SAFE_HEAP_LOAD($$069 >> 0 | 0, 1, 0) | 0 | 0;
+  switch ($6 << 24 >> 24) {
+  case 0:
+   {
+    $$3 = 0;
+    label = 26;
+    break L7;
+    break;
+   }
+  case 3:
+   {
+    break;
+   }
+  default:
+   {
+    $$pre = $$069 + 1 | 0;
+    $41 = $6 << 24 >> 24 == 1;
+    if (!$41) {
+     $$069 = $$pre;
+     continue L7;
+    }
+    $$0$copyload30 = SAFE_HEAP_LOAD($$pre >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($$pre + 1 >> 0 | 0, 1, 1) | 0) << 8;
+    $42 = $$069 + 3 | 0;
+    $43 = $$0$copyload30 & 65535;
+    $44 = $42 + $43 | 0;
+    $$069 = $44;
+    continue L7;
+   }
+  }
+  $7 = $$069 + 1 | 0;
+  $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+  $9 = $8 << 24 >> 24 == 1;
+  if (!$9) {
+   $$069 = $7;
+   continue;
+  }
+  $10 = $$069 + 2 | 0;
+  $$0$copyload = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($10 
+ 1 >> 0 | 0, 1, 1) | 0) << 8;
+  $11 = $$069 + 4 | 0;
+  $12 = $$0$copyload & 65535;
+  $13 = ($12 | 0) == ($$068 | 0);
+  if ($13) {
+   $14 = _memcmp($11, $1, $$068) | 0;
+   $15 = ($14 | 0) == 0;
+   if ($15) {
+    break;
+   }
+  }
+  $40 = $11 + $12 | 0;
+  $$069 = $40;
+ }
+ if ((label | 0) == 26) {
+  return $$3 | 0;
+ }
+ $16 = $11 + $$068 | 0;
+ $$079$ph = 1;
+ $$17078$ph = $16;
+ L20 : while (1) {
+  $$17078 = $$17078$ph;
+  L22 : while (1) {
+   $17 = SAFE_HEAP_LOAD($$17078 >> 0 | 0, 1, 0) | 0 | 0;
+   switch ($17 << 24 >> 24) {
+   case 0:
+    {
+     label = 15;
+     break L20;
+     break;
+    }
+   case 3:
+    {
+     label = 13;
+     break L22;
+     break;
+    }
+   case 4:
+    {
+     label = 14;
+     break L22;
+     break;
+    }
+   case 1:
+    {
+     $18 = $$17078 + 1 | 0;
+     $$0$copyload22 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($18 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+     $19 = $$0$copyload22 & 65535;
+     $20 = $19 + 2 | 0;
+     $21 = $18 + $20 | 0;
+     $22 = $21 + -1 | 0;
+     $$271$ph = $22;
+     break;
+    }
+   default:
+    {
+     $$271$ph = $$17078;
+    }
+   }
+   $25 = $$271$ph + 1 | 0;
+   $$17078 = $25;
+  }
+  if ((label | 0) == 13) {
+   label = 0;
+   $23 = $$079$ph + 1 | 0;
+   $$1 = $23;
+  } else if ((label | 0) == 14) {
+   label = 0;
+   $24 = $$079$ph + -1 | 0;
+   $$1 = $24;
+  }
+  $26 = $$17078 + 1 | 0;
+  $27 = ($$1 | 0) == 0;
+  if ($27) {
+   break;
+  } else {
+   $$079$ph = $$1;
+   $$17078$ph = $26;
+  }
+ }
+ if ((label | 0) == 15) {
+  __gcry_bug(22556, 481, 22587);
+ }
+ $28 = $26;
+ $29 = $$069;
+ $30 = $28 - $29 | 0;
+ $31 = $30 & 65535;
+ $32 = $31 + 1 | 0;
+ $33 = __gcry_malloc($32) | 0;
+ $34 = ($33 | 0) == (0 | 0);
+ if ($34) {
+  $$3 = 0;
+  return $$3 | 0;
+ }
+ _memcpy($33 | 0, $$069 | 0, $31 | 0) | 0;
+ $35 = $33 + $31 | 0;
+ SAFE_HEAP_STORE($35 >> 0 | 0, 0 | 0, 1);
+ $36 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+ switch ($36 << 24 >> 24) {
+ case 0:
+  {
+   __gcry_sexp_release($33);
+   $$3 = 0;
+   return $$3 | 0;
+   break;
+  }
+ case 3:
+  {
+   $37 = $33 + 1 | 0;
+   $38 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+   $39 = $38 << 24 >> 24 == 4;
+   if (!$39) {
+    $$3 = $33;
+    return $$3 | 0;
+   }
+   __gcry_sexp_release($33);
+   $$3 = 0;
+   return $$3 | 0;
+   break;
+  }
+ default:
+  {
+   $$3 = $33;
+   return $$3 | 0;
+  }
+ }
+ return 0 | 0;
+}
+
+function ___towcase($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$ = 0, $$06385 = 0, $$16484 = 0, $$2 = 0, $$neg76 = 0, $$neg78 = 0, 
$$neg79 = 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;
+ 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, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, 
$or$cond66 = 0, $or$cond68 = 0, $or$cond70 = 0, $or$cond72 = 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$cond66 = $8 | $6;
+ $9 = $0 + -11776 | 0;
+ $10 = $9 >>> 0 < 30784;
+ $or$cond68 = $10 | $or$cond66;
+ $11 = $0 + -43008 | 0;
+ $12 = $11 >>> 0 < 22272;
+ $or$cond70 = $12 | $or$cond68;
+ L1 : do {
+  if ($or$cond70) {
+   $$2 = $0;
+  } else {
+   $13 = ($1 | 0) != 0;
+   $14 = $0 + -4256 | 0;
+   $15 = $14 >>> 0 < 46;
+   $or$cond72 = $13 & $15;
+   if ($or$cond72) {
+    $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 | 0) > 11557;
+    if ($20) {
+     switch ($0 | 0) {
+     case 11559:
+     case 11565:
+      {
+       break;
+      }
+     default:
+      {
+       $$2 = $0;
+       break L1;
+      }
+     }
+    }
+    $21 = $0 + -7264 | 0;
+    $$2 = $21;
+    break;
+   } else {
+    $$06385 = 0;
+   }
+   while (1) {
+    $28 = (18762 + ($$06385 << 2) | 0) + 3 | 0;
+    $29 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+    $30 = 18762 + ($$06385 << 2) | 0;
+    $31 = SAFE_HEAP_LOAD($30 | 0, 2, 0) | 0 | 0;
+    $32 = $31 & 65535;
+    $33 = (18762 + ($$06385 << 2) | 0) + 2 | 0;
+    $34 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+    $35 = $34 << 24 >> 24;
+    $36 = $35 & $4;
+    $$neg76 = $0 - $32 | 0;
+    $37 = $$neg76 - $36 | 0;
+    $38 = $29 & 255;
+    $39 = $37 >>> 0 < $38 >>> 0;
+    $22 = $$06385 + 1 | 0;
+    if ($39) {
+     label = 13;
+     break;
+    }
+    $23 = ($22 | 0) == 61;
+    if ($23) {
+     break;
+    } else {
+     $$06385 = $22;
+    }
+   }
+   if ((label | 0) == 13) {
+    $40 = $34 << 24 >> 24 == 1;
+    if ($40) {
+     $41 = $1 + $0 | 0;
+     $42 = $$neg76 & 1;
+     $43 = $41 - $42 | 0;
+     $$2 = $43;
+     break;
+    } else {
+     $44 = Math_imul($35, $3) | 0;
+     $45 = $44 + $0 | 0;
+     $$2 = $45;
+     break;
+    }
+   }
+   $24 = 1 - $1 | 0;
+   $25 = 18274 + ($24 << 1) | 0;
+   $26 = SAFE_HEAP_LOAD($25 | 0, 2, 0) | 0 | 0;
+   $27 = $26 << 16 >> 16 == 0;
+   L23 : do {
+    if (!$27) {
+     $$16484 = 0;
+     $47 = $26;
+     while (1) {
+      $46 = $47 & 65535;
+      $48 = ($46 | 0) == ($0 | 0);
+      if ($48) {
+       break;
+      }
+      $52 = $$16484 + 1 | 0;
+      $53 = (18274 + ($52 << 2) | 0) + ($24 << 1) | 0;
+      $54 = SAFE_HEAP_LOAD($53 | 0, 2, 0) | 0 | 0;
+      $55 = $54 << 16 >> 16 == 0;
+      if ($55) {
+       break L23;
+      } else {
+       $$16484 = $52;
+       $47 = $54;
+      }
+     }
+     $49 = (18274 + ($$16484 << 2) | 0) + ($1 << 1) | 0;
+     $50 = SAFE_HEAP_LOAD($49 | 0, 2, 0) | 0 | 0;
+     $51 = $50 & 65535;
+     $$2 = $51;
+     break L1;
+    }
+   } while (0);
+   $$neg78 = $1 * 40 | 0;
+   $$neg79 = $0 + -66600 | 0;
+   $56 = $$neg79 + $$neg78 | 0;
+   $57 = $56 >>> 0 < 40;
+   $58 = $0 + -40 | 0;
+   $59 = $1 * 80 | 0;
+   $60 = $58 + $59 | 0;
+   $$ = $57 ? $60 : $0;
+   return $$ | 0;
+  }
+ } while (0);
+ return $$2 | 0;
+}
+
+function _get_random($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$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, $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 $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $storemerge = 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(52320, 51065, 685, 52343);
+ }
+ $4 = ($2 | 0) == (0 | 0);
+ if ($4) {
+  __gcry_assert_failed(51249, 51065, 686, 52343);
+ }
+ $5 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $6 = $5 << 24 >> 24 == 17;
+ if (!$6) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+  __gcry_log_fatal(51167, $vararg_buffer);
+ }
+ $7 = $2 + 16 | 0;
+ $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = $8 << 24 >> 24 == 42;
+ if (!$9) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+  __gcry_log_fatal(51167, $vararg_buffer);
+ }
+ $10 = $2 + 33 | 0;
+ $11 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+ $12 = $11 << 24 >> 24 == -119;
+ if (!$12) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+  __gcry_log_fatal(51167, $vararg_buffer);
+ }
+ $13 = $2 + 50 | 0;
+ $14 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+ $15 = $14 << 24 >> 24 == -4;
+ if (!$15) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+  __gcry_log_fatal(51167, $vararg_buffer);
+ }
+ $16 = $2 + 4 | 0;
+ $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+ $18 = ($17 | 0) == (0 | 0);
+ do {
+  if ($18) {
+   $19 = SAFE_HEAP_LOAD(17674 * 4 | 0, 4, 0) | 0 | 0;
+   $20 = ($19 | 0) == ($2 | 0);
+   if ($20) {
+    $21 = _x931_generate_key(1) | 0;
+    $storemerge = $21;
+   } else {
+    $22 = _x931_generate_key(0) | 0;
+    $storemerge = $22;
+   }
+   SAFE_HEAP_STORE($16 | 0, $storemerge | 0, 4);
+   $23 = ($storemerge | 0) == (0 | 0);
+   if ($23) {
+    __gcry_log_fatal(51311, $vararg_buffer4);
+   } else {
+    $24 = _getpid() | 0;
+    $25 = $2 + 60 | 0;
+    SAFE_HEAP_STORE($25 | 0, $24 | 0, 4);
+    break;
+   }
+  }
+ } while (0);
+ $26 = $2 + 8 | 0;
+ $27 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+ $$mask = $27 & 1;
+ $28 = $$mask << 24 >> 24 == 0;
+ if ($28) {
+  _x931_reseed($2);
+ }
+ $29 = $2 + 60 | 0;
+ $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+ $31 = _getpid() | 0;
+ $32 = ($30 | 0) == ($31 | 0);
+ if ($32) {
+  $33 = $2 + 64 | 0;
+  $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+  $35 = _getpid() | 0;
+  $36 = ($34 | 0) == ($35 | 0);
+  if ($36) {
+   $37 = _x931_aes_driver($0, $1, $2) | 0;
+   $38 = ($37 | 0) == 0;
+   if (!$38) {
+    __gcry_log_fatal(51311, $vararg_buffer4);
+   }
+   $39 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+   $40 = $39 << 24 >> 24 == 17;
+   if (!$40) {
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, $2 | 0, 4);
+    __gcry_log_fatal(51167, $vararg_buffer1);
+   }
+   $41 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+   $42 = $41 << 24 >> 24 == 42;
+   if (!$42) {
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, $2 | 0, 4);
+    __gcry_log_fatal(51167, $vararg_buffer1);
+   }
+   $43 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+   $44 = $43 << 24 >> 24 == -119;
+   if (!$44) {
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, $2 | 0, 4);
+    __gcry_log_fatal(51167, $vararg_buffer1);
+   }
+   $45 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+   $46 = $45 << 24 >> 24 == -4;
+   if ($46) {
+    STACKTOP = sp;
+    return;
+   } else {
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, $2 | 0, 4);
+    __gcry_log_fatal(51167, $vararg_buffer1);
+   }
+  }
+ }
+ __gcry_fips_signal_error(51065, 714, 52343, 0, 51257);
+ __gcry_log_fatal(51311, $vararg_buffer4);
+}
+
+function ___mo_lookup($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$$i = 0, $$$i105 = 0, $$$i106 = 0, $$$i107 = 0, $$$i108 = 0, 
$$$i109 = 0, $$$i110 = 0, $$090 = 0, $$094 = 0, $$191 = 0, $$195 = 0, $$4 = 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, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, 
$or$cond102 = 0, $or$cond104 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $4 = $0 + 8 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = ($3 | 0) == -1794895138;
+ $7 = _llvm_bswap_i32($5 | 0) | 0;
+ $$$i = $6 ? $5 : $7;
+ $8 = $0 + 12 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = _llvm_bswap_i32($9 | 0) | 0;
+ $$$i110 = $6 ? $9 : $10;
+ $11 = $0 + 16 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = _llvm_bswap_i32($12 | 0) | 0;
+ $$$i109 = $6 ? $12 : $13;
+ $14 = $1 >>> 2;
+ $15 = $$$i >>> 0 < $14 >>> 0;
+ L1 : do {
+  if ($15) {
+   $16 = $$$i << 2;
+   $17 = $1 - $16 | 0;
+   $18 = $$$i110 >>> 0 < $17 >>> 0;
+   $19 = $$$i109 >>> 0 < $17 >>> 0;
+   $or$cond = $18 & $19;
+   if ($or$cond) {
+    $20 = $$$i109 | $$$i110;
+    $21 = $20 & 3;
+    $22 = ($21 | 0) == 0;
+    if ($22) {
+     $23 = $$$i110 >>> 2;
+     $24 = $$$i109 >>> 2;
+     $$090 = 0;
+     $$094 = $$$i;
+     while (1) {
+      $25 = $$094 >>> 1;
+      $26 = $$090 + $25 | 0;
+      $27 = $26 << 1;
+      $28 = $27 + $23 | 0;
+      $29 = $0 + ($28 << 2) | 0;
+      $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+      $31 = _llvm_bswap_i32($30 | 0) | 0;
+      $$$i108 = $6 ? $30 : $31;
+      $32 = $28 + 1 | 0;
+      $33 = $0 + ($32 << 2) | 0;
+      $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+      $35 = _llvm_bswap_i32($34 | 0) | 0;
+      $$$i107 = $6 ? $34 : $35;
+      $36 = $$$i107 >>> 0 < $1 >>> 0;
+      $37 = $1 - $$$i107 | 0;
+      $38 = $$$i108 >>> 0 < $37 >>> 0;
+      $or$cond102 = $36 & $38;
+      if (!$or$cond102) {
+       $$4 = 0;
+       break L1;
+      }
+      $39 = $$$i107 + $$$i108 | 0;
+      $40 = $0 + $39 | 0;
+      $41 = SAFE_HEAP_LOAD($40 >> 0 | 0, 1, 0) | 0 | 0;
+      $42 = $41 << 24 >> 24 == 0;
+      if (!$42) {
+       $$4 = 0;
+       break L1;
+      }
+      $43 = $0 + $$$i107 | 0;
+      $44 = _strcmp($2, $43) | 0;
+      $45 = ($44 | 0) == 0;
+      if ($45) {
+       break;
+      }
+      $62 = ($$094 | 0) == 1;
+      if ($62) {
+       $$4 = 0;
+       break L1;
+      }
+      $63 = $$094 - $25 | 0;
+      $64 = ($44 | 0) < 0;
+      $$195 = $64 ? $25 : $63;
+      $$191 = $64 ? $$090 : $26;
+      $$090 = $$191;
+      $$094 = $$195;
+     }
+     $46 = $27 + $24 | 0;
+     $47 = $0 + ($46 << 2) | 0;
+     $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+     $49 = _llvm_bswap_i32($48 | 0) | 0;
+     $$$i106 = $6 ? $48 : $49;
+     $50 = $46 + 1 | 0;
+     $51 = $0 + ($50 << 2) | 0;
+     $52 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+     $53 = _llvm_bswap_i32($52 | 0) | 0;
+     $$$i105 = $6 ? $52 : $53;
+     $54 = $$$i105 >>> 0 < $1 >>> 0;
+     $55 = $1 - $$$i105 | 0;
+     $56 = $$$i106 >>> 0 < $55 >>> 0;
+     $or$cond104 = $54 & $56;
+     if ($or$cond104) {
+      $57 = $0 + $$$i105 | 0;
+      $58 = $$$i105 + $$$i106 | 0;
+      $59 = $0 + $58 | 0;
+      $60 = SAFE_HEAP_LOAD($59 >> 0 | 0, 1, 0) | 0 | 0;
+      $61 = $60 << 24 >> 24 == 0;
+      $$ = $61 ? $57 : 0;
+      $$4 = $$;
+     } else {
+      $$4 = 0;
+     }
+    } else {
+     $$4 = 0;
+    }
+   } else {
+    $$4 = 0;
+   }
+  } else {
+   $$4 = 0;
+  }
+ } while (0);
+ return $$4 | 0;
+}
+
+function _do_printhex($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$02832 = 0, $$029 = 0, $$031 = 0, $$033 = 0, $$033$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, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, 
$or$cond3 = 0, $or$cond5 = 0, $vararg_buffer = 0, $vararg_buffer11 = 0;
+ var $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 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+  $6 = $5 << 24 >> 24 == 0;
+  if ($6) {
+   $$029 = 0;
+   $$031 = $1;
+  } else {
+   SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, $1 | 0, 4);
+   __gcry_log_debug(22122, $vararg_buffer);
+   $7 = $1 + 1 | 0;
+   $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 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(22378, $vararg_buffer2);
+    $12 = _strlen($0) | 0;
+    SAFE_HEAP_STORE($vararg_buffer4 | 0, $12 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer4 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, 71847 | 0, 4);
+    __gcry_log_debug(22128, $vararg_buffer4);
+    $$029 = 1;
+    $$031 = 22120;
+   } else {
+    $$029 = 1;
+    $$031 = $1;
+   }
+  }
+ } else {
+  $$029 = 0;
+  $$031 = $1;
+ }
+ $13 = ($3 | 0) == 0;
+ L6 : do {
+  if (!$13) {
+   $14 = $3 + -1 | 0;
+   $15 = ($$029 | 0) == 0;
+   if ($15) {
+    $$033$us = $2;
+    $20 = $14;
+    while (1) {
+     $16 = SAFE_HEAP_LOAD($$033$us >> 0 | 0, 1, 0) | 0 | 0;
+     $17 = $16 & 255;
+     SAFE_HEAP_STORE($vararg_buffer8 | 0, $17 | 0, 4);
+     __gcry_log_printf(22134, $vararg_buffer8);
+     $18 = $$033$us + 1 | 0;
+     $19 = $20 + -1 | 0;
+     $21 = ($20 | 0) == 0;
+     if ($21) {
+      break L6;
+     } else {
+      $$033$us = $18;
+      $20 = $19;
+     }
+    }
+   } else {
+    $$02832 = 0;
+    $$033 = $2;
+    $26 = $14;
+   }
+   while (1) {
+    $22 = SAFE_HEAP_LOAD($$033 >> 0 | 0, 1, 0) | 0 | 0;
+    $23 = $22 & 255;
+    SAFE_HEAP_STORE($vararg_buffer11 | 0, $23 | 0, 4);
+    __gcry_log_printf(22134, $vararg_buffer11);
+    $24 = $$02832 + 1 | 0;
+    $25 = ($24 | 0) == 32;
+    $27 = ($26 | 0) != 0;
+    $or$cond5 = $27 & $25;
+    if ($or$cond5) {
+     __gcry_log_printf(22139, $vararg_buffer14);
+     $28 = _strlen($0) | 0;
+     $29 = _strlen($$031) | 0;
+     SAFE_HEAP_STORE($vararg_buffer16 | 0, $28 | 0, 4);
+     $vararg_ptr19 = $vararg_buffer16 + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr19 | 0, 71847 | 0, 4);
+     $vararg_ptr20 = $vararg_buffer16 + 8 | 0;
+     SAFE_HEAP_STORE($vararg_ptr20 | 0, $29 | 0, 4);
+     $vararg_ptr21 = $vararg_buffer16 + 12 | 0;
+     SAFE_HEAP_STORE($vararg_ptr21 | 0, 71847 | 0, 4);
+     __gcry_log_debug(22143, $vararg_buffer16);
+     $$1 = 0;
+    } else {
+     $$1 = $24;
+    }
+    $30 = $$033 + 1 | 0;
+    $31 = $26 + -1 | 0;
+    $32 = ($26 | 0) == 0;
+    if ($32) {
+     break;
+    } else {
+     $$02832 = $$1;
+     $$033 = $30;
+     $26 = $31;
+    }
+   }
+  }
+ } while (0);
+ if (!$4) {
+  STACKTOP = sp;
+  return;
+ }
+ __gcry_log_printf(22378, $vararg_buffer22);
+ STACKTOP = sp;
+ return;
+}
+
+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 + 16 | 0;
+ $vararg_buffer = sp;
+ $3 = sp + 32 | 0;
+ $4 = $0 + 28 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($3 | 0, $5 | 0, 4);
+ $6 = $3 + 4 | 0;
+ $7 = $0 + 20 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $8 - $5 | 0;
+ SAFE_HEAP_STORE($6 | 0, $9 | 0, 4);
+ $10 = $3 + 8 | 0;
+ SAFE_HEAP_STORE($10 | 0, $1 | 0, 4);
+ $11 = $3 + 12 | 0;
+ SAFE_HEAP_STORE($11 | 0, $2 | 0, 4);
+ $12 = $9 + $2 | 0;
+ $13 = $0 + 60 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = $3;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $14 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $15 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, 2 | 0, 4);
+ $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;
+   $26 = $17;
+   while (1) {
+    $27 = ($26 | 0) < 0;
+    if ($27) {
+     break;
+    }
+    $35 = $$04855 - $26 | 0;
+    $36 = $$04954 + 4 | 0;
+    $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+    $38 = $26 >>> 0 > $37 >>> 0;
+    $39 = $$04954 + 8 | 0;
+    $$150 = $38 ? $39 : $$04954;
+    $40 = $38 << 31 >> 31;
+    $$1 = $40 + $$04756 | 0;
+    $41 = $38 ? $37 : 0;
+    $$0 = $26 - $41 | 0;
+    $42 = SAFE_HEAP_LOAD($$150 | 0, 4, 0) | 0 | 0;
+    $43 = $42 + $$0 | 0;
+    SAFE_HEAP_STORE($$150 | 0, $43 | 0, 4);
+    $44 = $$150 + 4 | 0;
+    $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+    $46 = $45 - $$0 | 0;
+    SAFE_HEAP_STORE($44 | 0, $46 | 0, 4);
+    $47 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    $48 = $$150;
+    SAFE_HEAP_STORE($vararg_buffer3 | 0, $47 | 0, 4);
+    $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr6 | 0, $48 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer3 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, $$1 | 0, 4);
+    $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;
+     $26 = $50;
+    }
+   }
+   $28 = $0 + 16 | 0;
+   SAFE_HEAP_STORE($28 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+   SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+   $29 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $30 = $29 | 32;
+   SAFE_HEAP_STORE($0 | 0, $30 | 0, 4);
+   $31 = ($$04756 | 0) == 2;
+   if ($31) {
+    $$051 = 0;
+   } else {
+    $32 = $$04954 + 4 | 0;
+    $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+    $34 = $2 - $33 | 0;
+    $$051 = $34;
+   }
+  }
+ } while (0);
+ if ((label | 0) == 3) {
+  $19 = $0 + 44 | 0;
+  $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+  $21 = $0 + 48 | 0;
+  $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+  $23 = $20 + $22 | 0;
+  $24 = $0 + 16 | 0;
+  SAFE_HEAP_STORE($24 | 0, $23 | 0, 4);
+  $25 = $20;
+  SAFE_HEAP_STORE($4 | 0, $25 | 0, 4);
+  SAFE_HEAP_STORE($7 | 0, $25 | 0, 4);
+  $$051 = $2;
+ }
+ STACKTOP = sp;
+ return $$051 | 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, $$3$ph$i$i = 0, $$339$ph$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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $5 = $4 & 16;
+  $6 = ($5 | 0) == 0;
+  if (!$6) {
+   __gcry_log_info(46049, $vararg_buffer);
+   STACKTOP = sp;
+   return;
+  }
+  $7 = $1 + 16 | 0;
+  $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  $9 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  $10 = $0 + 16 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $12 = ($11 | 0) == (0 | 0);
+  if (!$12) {
+   $13 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 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) {
+      SAFE_HEAP_STORE($$045$i$i >> 0 | 0, 0 | 0, 1);
+      $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) {
+     $$3$ph$i$i = $$0$lcssa$i$i;
+     $$339$ph$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;
+      SAFE_HEAP_STORE($29 | 0, 0 | 0, 4);
+      $30 = $28 + 4 | 0;
+      $31 = $30;
+      SAFE_HEAP_STORE($31 | 0, 0 | 0, 4);
+      $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;
+     $$3$ph$i$i = $scevgep$i$i;
+     $$339$ph$i$i = $37;
+    }
+    $38 = ($$339$ph$i$i | 0) == 0;
+    if (!$38) {
+     $$33942$i$i = $$339$ph$i$i;
+     $$343$i$i = $$3$ph$i$i;
+     while (1) {
+      SAFE_HEAP_STORE($$343$i$i >> 0 | 0, 0 | 0, 1);
+      $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);
+  }
+  SAFE_HEAP_STORE($10 | 0, $8 | 0, 4);
+  SAFE_HEAP_STORE($0 | 0, $9 | 0, 4);
+  $42 = $1 + 4 | 0;
+  $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+  $44 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($44 | 0, $43 | 0, 4);
+  $45 = $1 + 8 | 0;
+  $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+  $47 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($47 | 0, $46 | 0, 4);
+  $48 = $1 + 12 | 0;
+  $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($3 | 0, $49 | 0, 4);
+  SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE($42 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ }
+ __gcry_mpi_free($1);
+ STACKTOP = sp;
+ return;
+}
+
+function __gcry_sexp_nth_data($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$037$i = 0, $$0$copyload$i = 0, $$0$copyload9$i = 0, $$034$lcssa$i = 0, 
$$034$lcssa48$i = 0, $$03443$i$lcssa = 0, $$03443$i8 = 0, $$03443$ph$i = 0, 
$$036$i = 0, $$03742$ph$i = 0, $$044$i$lcssa = 0, $$044$i7 = 0, $$044$ph$i = 0, 
$$1$i = 0, $$1$ph$i = 0, $$135$i = 0, $$lcssa$i = 0, $$ph$i = 0, $$ph49$i = 0, 
$10 = 0;
+ var $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, $3 = 0;
+ var $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$or$cond = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ $3 = ($0 | 0) == (0 | 0);
+ if ($3) {
+  $$036$i = 0;
+  return $$036$i | 0;
+ }
+ $4 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $5 = $4 << 24 >> 24 == 3;
+ if ($5) {
+  $8 = $0 + 1 | 0;
+  $9 = ($1 | 0) > 0;
+  $10 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+  $11 = $10 << 24 >> 24 == 1;
+  L6 : do {
+   if ($9) {
+    $$03443$ph$i = $8;
+    $$03742$ph$i = $1;
+    $$044$ph$i = 0;
+    $$ph$i = $11;
+    $$ph49$i = $10;
+    L7 : while (1) {
+     L9 : do {
+      if ($$ph$i) {
+       $$03443$i$lcssa = $$03443$ph$i;
+       $$044$i$lcssa = $$044$ph$i;
+       label = 6;
+      } else {
+       $$03443$i8 = $$03443$ph$i;
+       $$044$i7 = $$044$ph$i;
+       $17 = $$ph49$i;
+       L10 : while (1) {
+        switch ($17 << 24 >> 24) {
+        case 0:
+         {
+          $$036$i = 0;
+          break L7;
+          break;
+         }
+        case 4:
+         {
+          break L10;
+          break;
+         }
+        case 3:
+         {
+          $18 = $$044$i7 + 1 | 0;
+          $$1$ph$i = $18;
+          break;
+         }
+        default:
+         {
+          $$1$ph$i = $$044$i7;
+         }
+        }
+        $20 = $$03443$i8 + 1 | 0;
+        $21 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+        $22 = $21 << 24 >> 24 == 1;
+        if ($22) {
+         $$03443$i$lcssa = $20;
+         $$044$i$lcssa = $$1$ph$i;
+         label = 6;
+         break L9;
+        } else {
+         $$03443$i8 = $20;
+         $$044$i7 = $$1$ph$i;
+         $17 = $21;
+        }
+       }
+       $19 = $$044$i7 + -1 | 0;
+       $$1$i = $19;
+       $$135$i = $$03443$i8;
+      }
+     } while (0);
+     if ((label | 0) == 6) {
+      label = 0;
+      $12 = $$03443$i$lcssa + 1 | 0;
+      $$0$copyload$i = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($12 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+      $13 = $$0$copyload$i & 65535;
+      $14 = $13 + 2 | 0;
+      $15 = $12 + $14 | 0;
+      $16 = $15 + -1 | 0;
+      $$1$i = $$044$i$lcssa;
+      $$135$i = $16;
+     }
+     $23 = ($$1$i | 0) == 0;
+     $24 = $23 << 31 >> 31;
+     $$$037$i = $24 + $$03742$ph$i | 0;
+     $25 = $$135$i + 1 | 0;
+     $26 = ($$$037$i | 0) > 0;
+     $27 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+     $28 = $27 << 24 >> 24 == 1;
+     if ($26) {
+      $$03443$ph$i = $25;
+      $$03742$ph$i = $$$037$i;
+      $$044$ph$i = $$1$i;
+      $$ph$i = $28;
+      $$ph49$i = $27;
+     } else {
+      $$034$lcssa$i = $25;
+      $$lcssa$i = $28;
+      break L6;
+     }
+    }
+    return $$036$i | 0;
+   } else {
+    $$034$lcssa$i = $8;
+    $$lcssa$i = $11;
+   }
+  } while (0);
+  if ($$lcssa$i) {
+   $$034$lcssa48$i = $$034$lcssa$i;
+  } else {
+   $$036$i = 0;
+   return $$036$i | 0;
+  }
+ } else {
+  $6 = ($1 | 0) == 0;
+  $7 = $4 << 24 >> 24 == 1;
+  $or$cond = $6 & $7;
+  if ($or$cond) {
+   $$034$lcssa48$i = $0;
+  } else {
+   $$036$i = 0;
+   return $$036$i | 0;
+  }
+ }
+ $29 = $$034$lcssa48$i + 1 | 0;
+ $$0$copyload9$i = SAFE_HEAP_LOAD($29 >> 0 | 0, 1, 1) | 0 | 
(SAFE_HEAP_LOAD($29 + 1 >> 0 | 0, 1, 1) | 0) << 8;
+ $30 = $$0$copyload9$i & 65535;
+ SAFE_HEAP_STORE($2 | 0, $30 | 0, 4);
+ $31 = $$034$lcssa48$i + 3 | 0;
+ $$036$i = $31;
+ return $$036$i | 0;
+}
+
+function __gpgrt_fflush($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $$0$i = 0, $$0$i20 = 0, $$014$lcssa = 0, $$01424 = 0, $$023 = 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;
+ var $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, $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, $5 = 0, $6 = 0;
+ var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == (0 | 0);
+ if (!$1) {
+  $$idx15 = $0 + 36 | 0;
+  $$idx15$val = SAFE_HEAP_LOAD($$idx15 | 0, 4, 0) | 0 | 0;
+  $2 = $$idx15$val + 1140 | 0;
+  $3 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+  $4 = $3 & 32;
+  $5 = $4 << 24 >> 24 == 0;
+  if ($5) {
+   $6 = $$idx15$val + 1040 | 0;
+   __gpgrt_lock_lock($6) | 0;
+  }
+  $7 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $8 = $7 & 65536;
+  $9 = ($8 | 0) == 0;
+  if ($9) {
+   $11 = $0 + 12 | 0;
+   SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+   $12 = $0 + 16 | 0;
+   SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+   $13 = $0 + 32 | 0;
+   SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+   $$0$i = 0;
+  } else {
+   $10 = _es_flush($0) | 0;
+   $$0$i = $10;
+  }
+  $$idx17$val = SAFE_HEAP_LOAD($$idx15 | 0, 4, 0) | 0 | 0;
+  $14 = $$idx17$val + 1140 | 0;
+  $15 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 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(12740) | 0;
+ $$023 = SAFE_HEAP_LOAD(17693 * 4 | 0, 4, 0) | 0 | 0;
+ $19 = ($$023 | 0) == (0 | 0);
+ if ($19) {
+  $$014$lcssa = 0;
+ } else {
+  $$01424 = 0;
+  $$025 = $$023;
+  while (1) {
+   $20 = $$025 + 4 | 0;
+   $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+   $22 = ($21 | 0) == (0 | 0);
+   if ($22) {
+    $$1 = $$01424;
+   } else {
+    $$idx = $21 + 36 | 0;
+    $$idx$val = SAFE_HEAP_LOAD($$idx | 0, 4, 0) | 0 | 0;
+    $23 = $$idx$val + 1140 | 0;
+    $24 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+    $25 = $24 & 32;
+    $26 = $25 << 24 >> 24 == 0;
+    if ($26) {
+     $27 = $$idx$val + 1040 | 0;
+     __gpgrt_lock_lock($27) | 0;
+     $$pre = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+     $29 = $$pre;
+    } else {
+     $29 = $21;
+    }
+    $28 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+    $30 = $28 & 65536;
+    $31 = ($30 | 0) == 0;
+    if ($31) {
+     $33 = $29 + 12 | 0;
+     SAFE_HEAP_STORE($33 | 0, 0 | 0, 4);
+     $34 = $29 + 16 | 0;
+     SAFE_HEAP_STORE($34 | 0, 0 | 0, 4);
+     $35 = $29 + 32 | 0;
+     SAFE_HEAP_STORE($35 | 0, 0 | 0, 4);
+     $$0$i20 = 0;
+     $37 = $29;
+    } else {
+     $32 = _es_flush($29) | 0;
+     $$pre26 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+     $$0$i20 = $32;
+     $37 = $$pre26;
+    }
+    $36 = $$0$i20 | $$01424;
+    $$idx16 = $37 + 36 | 0;
+    $$idx16$val = SAFE_HEAP_LOAD($$idx16 | 0, 4, 0) | 0 | 0;
+    $38 = $$idx16$val + 1140 | 0;
+    $39 = SAFE_HEAP_LOAD($38 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($$025 | 0, 4, 0) | 0 | 0;
+   $43 = ($$0 | 0) == (0 | 0);
+   if ($43) {
+    $$014$lcssa = $$1;
+    break;
+   } else {
+    $$01424 = $$1;
+    $$025 = $$0;
+   }
+  }
+ }
+ __gpgrt_lock_unlock(12740) | 0;
+ $$2 = $$014$lcssa;
+ $44 = ($$2 | 0) != 0;
+ $45 = $44 << 31 >> 31;
+ return $45 | 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, $55 = 0, $56 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, $or$cond = 0;
+ var $or$cond$i = 0, $phitmp = 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 = ($0 | 0) == (0 | 0);
+ if ($6) {
+  $$0 = 65;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $7 = $0 + 12 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $14 = $13 + 7 | 0;
+ $15 = $14 >>> 3;
+ SAFE_HEAP_STORE($3 | 0, $15 | 0, 4);
+ $16 = $14 >>> 0 < 16;
+ $17 = $15 & 1;
+ $18 = ($17 | 0) == 0;
+ $or$cond = $16 | $18;
+ if ($or$cond) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $19 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   if (!$30) {
+    __gcry_mpi_free($31);
+    $$0 = $29;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+   $32 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    $40 = ($39 | 0) != 0;
+    $or$cond$i = $38 & $40;
+    if ($or$cond$i) {
+     $41 = $39 + -1 | 0;
+     $42 = $34 + $41 | 0;
+     $43 = SAFE_HEAP_LOAD($42 >> 0 | 0, 1, 0) | 0 | 0;
+     $44 = $43 & 255;
+     $45 = $44 | 128;
+     $46 = $45 & 255;
+     SAFE_HEAP_STORE($42 >> 0 | 0, $46 | 0, 1);
+     $$pre = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $47 = $$pre;
+    } else {
+     $47 = $39;
+    }
+    $phitmp = $47 << 3;
+    $$0$i = 0;
+    $$024 = $phitmp;
+   }
+   $48 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_free($48);
+   $49 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_free($49);
+   $50 = ($$0$i | 0) == 0;
+   if (!$50) {
+    $$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:
+  {
+   $51 = $11 + 1 | 0;
+   $52 = $15 << 3;
+   $53 = $52 + -8 | 0;
+   $54 = __gcry_mpi_set_opaque_copy($0, $51, $53) | 0;
+   $55 = ($54 | 0) == (0 | 0);
+   if (!$55) {
+    $$0 = 0;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+   $56 = _gpg_err_code_from_syserror() | 0;
+   $$0 = $56;
+   STACKTOP = sp;
+   return $$0 | 0;
+   break;
+  }
+ default:
+  {
+   $$0 = 0;
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ }
+ return 0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $2 = ($$0395 | 0) == (0 | 0);
+ L1 : do {
+  if (!$2) {
+   $$0396 = $$0395;
+   while (1) {
+    $5 = SAFE_HEAP_LOAD($$0396 | 0, 4, 0) | 0 | 0;
+    $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $7 = ($6 | 0) == ($0 | 0);
+    if ($7) {
+     $$0 = 0;
+     break;
+    }
+    $3 = $$0396 + 4 | 0;
+    $$039 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    $4 = ($$039 | 0) == (0 | 0);
+    if ($4) {
+     break L1;
+    } else {
+     $$0396 = $$039;
+    }
+   }
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ } while (0);
+ $8 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+ $9 = ($8 | 0) == ($0 | 0);
+ if ($9) {
+  $$ph = 7620;
+ } else {
+  $10 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+  $11 = ($10 | 0) == ($0 | 0);
+  if ($11) {
+   $$ph = 7756;
+  } else {
+   $12 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+   $13 = ($12 | 0) == ($0 | 0);
+   if ($13) {
+    $$ph = 7696;
+   } else {
+    $14 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+    $15 = ($14 | 0) == ($0 | 0);
+    if ($15) {
+     $$ph = 7820;
+    } else {
+     $16 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+     $17 = ($16 | 0) == ($0 | 0);
+     if ($17) {
+      $$ph = 7884;
+     } else {
+      $18 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+      $19 = ($18 | 0) == ($0 | 0);
+      if ($19) {
+       $$ph = 7456;
+      } else {
+       SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+       __gcry_log_debug(36905, $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(36944);
+   $23 = __gcry_enforced_fips_mode() | 0;
+   $24 = ($23 | 0) == 0;
+   if (!$24) {
+    $$0 = 5;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+  }
+ }
+ $25 = $$ph + 44 | 0;
+ $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+ $27 = $26 + 16 | 0;
+ $28 = $$0$0$val + 12 | 0;
+ $29 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+  $37 = _gpg_err_code_from_errno($36) | 0;
+  $$0 = $37;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  SAFE_HEAP_STORE($$140$in | 0, $$ph | 0, 4);
+  $38 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  $39 = $$140$in + 4 | 0;
+  SAFE_HEAP_STORE($39 | 0, $38 | 0, 4);
+  $40 = $$140$in + 8 | 0;
+  SAFE_HEAP_STORE($40 | 0, $27 | 0, 4);
+  SAFE_HEAP_STORE($1 | 0, $$140$in | 0, 4);
+  $41 = $$ph + 28 | 0;
+  $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+  $43 = $$140$in + 16 | 0;
+  $44 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+  $45 = $44 & 4;
+  $46 = $45 & 255;
+  $47 = $46 << 6;
+  FUNCTION_TABLE_vii[(SAFE_FT_MASK($42 | 0, 63 | 0) | 0) & 63]($43, $47);
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+function _internal_memalign($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$ = 0, $$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;
+ 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, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $2 = $0 >>> 0 < 16;
+ $$ = $2 ? 16 : $0;
+ $3 = $$ + -1 | 0;
+ $4 = $3 & $$;
+ $5 = ($4 | 0) == 0;
+ if ($5) {
+  $$1 = $$;
+ } else {
+  $$099 = 16;
+  while (1) {
+   $6 = $$099 >>> 0 < $$ >>> 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;
+  SAFE_HEAP_STORE($10 | 0, 12 | 0, 4);
+  $$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 = $20 & $21;
+ $23 = ($22 | 0) == 0;
+ do {
+  if ($23) {
+   $$0100 = $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 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+   $41 = $40 & -8;
+   $42 = $41 - $38 | 0;
+   $43 = $40 & 3;
+   $44 = ($43 | 0) == 0;
+   if ($44) {
+    $45 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+    $46 = $45 + $38 | 0;
+    SAFE_HEAP_STORE($36 | 0, $46 | 0, 4);
+    $47 = $36 + 4 | 0;
+    SAFE_HEAP_STORE($47 | 0, $42 | 0, 4);
+    $$0100 = $36;
+    break;
+   } else {
+    $48 = $36 + 4 | 0;
+    $49 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+    $50 = $49 & 1;
+    $51 = $42 | $50;
+    $52 = $51 | 2;
+    SAFE_HEAP_STORE($48 | 0, $52 | 0, 4);
+    $53 = $36 + $42 | 0;
+    $54 = $53 + 4 | 0;
+    $55 = SAFE_HEAP_LOAD($54 | 0, 4, 0) | 0 | 0;
+    $56 = $55 | 1;
+    SAFE_HEAP_STORE($54 | 0, $56 | 0, 4);
+    $57 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+    $58 = $57 & 1;
+    $59 = $38 | $58;
+    $60 = $59 | 2;
+    SAFE_HEAP_STORE($39 | 0, $60 | 0, 4);
+    $61 = SAFE_HEAP_LOAD($48 | 0, 4, 0) | 0 | 0;
+    $62 = $61 | 1;
+    SAFE_HEAP_STORE($48 | 0, $62 | 0, 4);
+    _dispose_chunk($19, $38);
+    $$0100 = $36;
+    break;
+   }
+  }
+ } while (0);
+ $63 = $$0100 + 4 | 0;
+ $64 = SAFE_HEAP_LOAD($63 | 0, 4, 0) | 0 | 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 = $$0100 + $14 | 0;
+   $72 = $64 & 1;
+   $73 = $14 | $72;
+   $74 = $73 | 2;
+   SAFE_HEAP_STORE($63 | 0, $74 | 0, 4);
+   $75 = $71 + 4 | 0;
+   $76 = $70 | 3;
+   SAFE_HEAP_STORE($75 | 0, $76 | 0, 4);
+   $77 = $71 + $70 | 0;
+   $78 = $77 + 4 | 0;
+   $79 = SAFE_HEAP_LOAD($78 | 0, 4, 0) | 0 | 0;
+   $80 = $79 | 1;
+   SAFE_HEAP_STORE($78 | 0, $80 | 0, 4);
+   _dispose_chunk($71, $70);
+  }
+ }
+ $81 = $$0100 + 8 | 0;
+ $$198 = $81;
+ return $$198 | 0;
+}
+
+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, $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_buffer2 = 0, $vararg_buffer6 = 0, $vararg_ptr1 = 0;
+ var $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 + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $10 = $3;
+ $11 = _gcry_cipher_open($10, 10, 2, 0) | 0;
+ $12 = 0 == ($11 | 0);
+ if (!$12) {
+  $7 = 98;
+  $13 = SAFE_HEAP_LOAD(187 * 4 | 0, 4, 0) | 0 | 0;
+  $14 = ($13 | 0) == -1;
+  if ($14) {
+   $15 = $7;
+   $16 = _GNUNET_get_log_call_status(1, 0, 19284, 19335, $15) | 0;
+   SAFE_HEAP_STORE(187 * 4 | 0, $16 | 0, 4);
+  }
+  $17 = _GNUNET_get_log_skip() | 0;
+  $18 = ($17 | 0) > 0;
+  if ($18) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $19 = SAFE_HEAP_LOAD(187 * 4 | 0, 4, 0) | 0 | 0;
+  $20 = ($19 | 0) != 0;
+  if (!$20) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 19284 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 98 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $21 = $3;
+ $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+ $23 = $4;
+ $24 = $23 + 32 | 0;
+ $25 = _gcry_cipher_setkey($22, $24, 32) | 0;
+ $6 = $25;
+ $26 = $6;
+ $27 = 0 == ($26 | 0);
+ if (!$27) {
+  $28 = $6;
+  $29 = $28 & 255;
+  $30 = $29 << 24 >> 24;
+  $31 = ($30 | 0) == 43;
+  if (!$31) {
+   $8 = 102;
+   $32 = SAFE_HEAP_LOAD(188 * 4 | 0, 4, 0) | 0 | 0;
+   $33 = ($32 | 0) == -1;
+   if ($33) {
+    $34 = $8;
+    $35 = _GNUNET_get_log_call_status(1, 0, 19284, 19335, $34) | 0;
+    SAFE_HEAP_STORE(188 * 4 | 0, $35 | 0, 4);
+   }
+   $36 = _GNUNET_get_log_skip() | 0;
+   $37 = ($36 | 0) > 0;
+   if ($37) {
+    _GNUNET_log_skip(-1, 0);
+    _GNUNET_abort_();
+   }
+   $38 = SAFE_HEAP_LOAD(188 * 4 | 0, 4, 0) | 0 | 0;
+   $39 = ($38 | 0) != 0;
+   if (!$39) {
+    _GNUNET_abort_();
+   }
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, 19284 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, 102 | 0, 4);
+   _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+   _GNUNET_abort_();
+  }
+ }
+ $40 = $3;
+ $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+ $42 = $5;
+ $43 = $42 + 16 | 0;
+ $44 = _gcry_cipher_setiv($41, $43, 16) | 0;
+ $6 = $44;
+ $45 = $6;
+ $46 = 0 == ($45 | 0);
+ if ($46) {
+  STACKTOP = sp;
+  return 1;
+ }
+ $47 = $6;
+ $48 = $47 & 255;
+ $49 = $48 << 24 >> 24;
+ $50 = ($49 | 0) == 43;
+ if ($50) {
+  STACKTOP = sp;
+  return 1;
+ }
+ $9 = 106;
+ $51 = SAFE_HEAP_LOAD(189 * 4 | 0, 4, 0) | 0 | 0;
+ $52 = ($51 | 0) == -1;
+ if ($52) {
+  $53 = $9;
+  $54 = _GNUNET_get_log_call_status(1, 0, 19284, 19335, $53) | 0;
+  SAFE_HEAP_STORE(189 * 4 | 0, $54 | 0, 4);
+ }
+ $55 = _GNUNET_get_log_skip() | 0;
+ $56 = ($55 | 0) > 0;
+ if ($56) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $57 = SAFE_HEAP_LOAD(189 * 4 | 0, 4, 0) | 0 | 0;
+ $58 = ($57 | 0) != 0;
+ if (!$58) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer6 | 0, 19284 | 0, 4);
+ $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr9 | 0, 106 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer6);
+ _GNUNET_abort_();
+ return 0 | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $5 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, $1 | 0, 4);
+  __gcry_log_debug(52663, $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) {
+    $17 = __gcry_get_debug_flag(1) | 0;
+    $18 = ($17 | 0) == 0;
+    if ($18) {
+     $$0$us = $12;
+     continue;
+    }
+    __gcry_log_debug(52710, $vararg_buffer2);
+    $$0$us = $12;
+    continue;
+   }
+   $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) {
+    $$0$us = $12;
+    continue;
+   }
+   __gcry_log_debug(52732, $vararg_buffer4);
+   $$0$us = $12;
+  }
+  __gcry_free($$1$lcssa);
+  STACKTOP = sp;
+  return $4 | 0;
+ } else {
+  $$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 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($25 + 1 >> 0 
| 0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($25 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($25 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+   SAFE_HEAP_STORE($$0 >> 0 | 0, $26 & 255 | 0, 1);
+   SAFE_HEAP_STORE($$0 + 1 >> 0 | 0, $26 >> 8 & 255 | 0, 1);
+   SAFE_HEAP_STORE($$0 + 2 >> 0 | 0, $26 >> 16 & 255 | 0, 1);
+   SAFE_HEAP_STORE($$0 + 3 >> 0 | 0, $26 >> 24 | 0, 1);
+   __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) {
+   $31 = __gcry_get_debug_flag(1) | 0;
+   $32 = ($31 | 0) == 0;
+   if ($32) {
+    $$0 = $$1;
+    continue;
+   }
+   __gcry_log_debug(52710, $vararg_buffer6);
+   $$0 = $$1;
+   continue;
+  }
+  $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) {
+   $$0 = $$1;
+   continue;
+  }
+  __gcry_log_debug(52732, $vararg_buffer8);
+  $$0 = $$1;
+ }
+ __gcry_free($$1$lcssa);
+ STACKTOP = sp;
+ return $4 | 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, $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, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == (0 | 0);
+ if ($1) {
+  $$035 = 0;
+  return $$035 | 0;
+ }
+ $2 = $0 + 12 | 0;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $3 & 4;
+ $5 = ($4 | 0) == 0;
+ if (!$5) {
+  $6 = $0 + 16 | 0;
+  $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $8 = __gcry_is_secure($7) | 0;
+  $9 = ($8 | 0) == 0;
+  $10 = $0 + 8 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $17 = ($16 | 0) == (0 | 0);
+  if ($17) {
+   $$pre = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+   $22 = $$pre;
+  } else {
+   $18 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+  $26 = $25 & -49;
+  SAFE_HEAP_STORE($24 | 0, $26 | 0, 4);
+  $$035 = $23;
+  return $$035 | 0;
+ }
+ $27 = $3 & 1;
+ $28 = ($27 | 0) == 0;
+ $29 = $0 + 4 | 0;
+ $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($40 | 0, $41 | 0, 4);
+  SAFE_HEAP_STORE($31 | 0, $30 | 0, 4);
+  $42 = $31 + 4 | 0;
+  SAFE_HEAP_STORE($42 | 0, 0 | 0, 4);
+  $43 = $31 + 8 | 0;
+  SAFE_HEAP_STORE($43 | 0, 0 | 0, 4);
+  $44 = $31 + 12 | 0;
+  SAFE_HEAP_STORE($44 | 0, 0 | 0, 4);
+  $$pre$phi39Z2D = $42;
+  $$pre$phi41Z2D = $43;
+  $$pre$phi43Z2D = $44;
+  $56 = $41;
+ } else {
+  if ($32) {
+   $35 = 0;
+  } else {
+   $33 = __gcry_xmalloc_secure($$op$i$i36) | 0;
+   $35 = $33;
+  }
+  $34 = $31 + 16 | 0;
+  SAFE_HEAP_STORE($34 | 0, $35 | 0, 4);
+  SAFE_HEAP_STORE($31 | 0, $30 | 0, 4);
+  $36 = $31 + 12 | 0;
+  SAFE_HEAP_STORE($36 | 0, 1 | 0, 4);
+  $37 = $31 + 4 | 0;
+  SAFE_HEAP_STORE($37 | 0, 0 | 0, 4);
+  $38 = $31 + 8 | 0;
+  SAFE_HEAP_STORE($38 | 0, 0 | 0, 4);
+  $$pre$phi39Z2D = $37;
+  $$pre$phi41Z2D = $38;
+  $$pre$phi43Z2D = $36;
+  $56 = $35;
+ }
+ $45 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($$pre$phi39Z2D | 0, $45 | 0, 4);
+ $46 = $0 + 8 | 0;
+ $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($$pre$phi41Z2D | 0, $47 | 0, 4);
+ $48 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $49 = $48 & -49;
+ SAFE_HEAP_STORE($$pre$phi43Z2D | 0, $49 | 0, 4);
+ $50 = ($45 | 0) > 0;
+ if (!$50) {
+  $$035 = $31;
+  return $$035 | 0;
+ }
+ $51 = $0 + 16 | 0;
+ $52 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+ $$038 = 0;
+ while (1) {
+  $53 = $52 + ($$038 << 2) | 0;
+  $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+  $55 = $56 + ($$038 << 2) | 0;
+  SAFE_HEAP_STORE($55 | 0, $54 | 0, 4);
+  $57 = $$038 + 1 | 0;
+  $58 = ($57 | 0) < ($45 | 0);
+  if ($58) {
+   $$038 = $57;
+  } else {
+   $$035 = $31;
+   break;
+  }
+ }
+ return $$035 | 0;
+}
+
+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, $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, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $11 = sp + 32 | 0;
+ $6 = $0;
+ $7 = $1;
+ $8 = $2;
+ $9 = $3;
+ $10 = $4;
+ $16 = $7;
+ $17 = _llvm_stacksave() | 0;
+ $12 = $17;
+ $$alloca_mul = $16;
+ $18 = STACKTOP;
+ STACKTOP = STACKTOP + ((1 * $$alloca_mul | 0) + 15 & -16) | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow((1 * $$alloca_mul | 
0) + 15 & -16 | 0);
+ {}
+ $19 = $8;
+ $20 = $9;
+ $21 = _setup_cipher_aes($11, $19, $20) | 0;
+ $22 = 1 != ($21 | 0);
+ if ($22) {
+  $5 = -1;
+  $13 = 1;
+  $58 = $12;
+  _llvm_stackrestore($58 | 0);
+  $59 = $5;
+  STACKTOP = sp;
+  return $59 | 0;
+ }
+ $23 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $24 = $7;
+ $25 = $6;
+ $26 = $7;
+ $27 = _gcry_cipher_encrypt($23, $18, $24, $25, $26) | 0;
+ $28 = 0 == ($27 | 0);
+ if (!$28) {
+  $14 = 136;
+  $29 = SAFE_HEAP_LOAD(185 * 4 | 0, 4, 0) | 0 | 0;
+  $30 = ($29 | 0) == -1;
+  if ($30) {
+   $31 = $14;
+   $32 = _GNUNET_get_log_call_status(1, 0, 19284, 19303, $31) | 0;
+   SAFE_HEAP_STORE(185 * 4 | 0, $32 | 0, 4);
+  }
+  $33 = _GNUNET_get_log_skip() | 0;
+  $34 = ($33 | 0) > 0;
+  if ($34) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $35 = SAFE_HEAP_LOAD(185 * 4 | 0, 4, 0) | 0 | 0;
+  $36 = ($35 | 0) != 0;
+  if (!$36) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 19284 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 136 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $37 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ _gcry_cipher_close($37);
+ $38 = $8;
+ $39 = $9;
+ $40 = _setup_cipher_twofish($11, $38, $39) | 0;
+ $41 = 1 != ($40 | 0);
+ if ($41) {
+  $5 = -1;
+  $13 = 1;
+  $58 = $12;
+  _llvm_stackrestore($58 | 0);
+  $59 = $5;
+  STACKTOP = sp;
+  return $59 | 0;
+ }
+ $42 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $43 = $10;
+ $44 = $7;
+ $45 = $7;
+ $46 = _gcry_cipher_encrypt($42, $43, $44, $18, $45) | 0;
+ $47 = 0 == ($46 | 0);
+ if ($47) {
+  $56 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+  _gcry_cipher_close($56);
+  _memset($18 | 0, 0, $16 | 0) | 0;
+  $57 = $7;
+  $5 = $57;
+  $13 = 1;
+  $58 = $12;
+  _llvm_stackrestore($58 | 0);
+  $59 = $5;
+  STACKTOP = sp;
+  return $59 | 0;
+ }
+ $15 = 140;
+ $48 = SAFE_HEAP_LOAD(186 * 4 | 0, 4, 0) | 0 | 0;
+ $49 = ($48 | 0) == -1;
+ if ($49) {
+  $50 = $15;
+  $51 = _GNUNET_get_log_call_status(1, 0, 19284, 19303, $50) | 0;
+  SAFE_HEAP_STORE(186 * 4 | 0, $51 | 0, 4);
+ }
+ $52 = _GNUNET_get_log_skip() | 0;
+ $53 = ($52 | 0) > 0;
+ if ($53) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $54 = SAFE_HEAP_LOAD(186 * 4 | 0, 4, 0) | 0 | 0;
+ $55 = ($54 | 0) != 0;
+ if (!$55) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer2 | 0, 19284 | 0, 4);
+ $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr5 | 0, 140 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+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, $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, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $11 = sp + 32 | 0;
+ $6 = $0;
+ $7 = $1;
+ $8 = $2;
+ $9 = $3;
+ $10 = $4;
+ $16 = $7;
+ $17 = _llvm_stacksave() | 0;
+ $12 = $17;
+ $$alloca_mul = $16;
+ $18 = STACKTOP;
+ STACKTOP = STACKTOP + ((1 * $$alloca_mul | 0) + 15 & -16) | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow((1 * $$alloca_mul | 
0) + 15 & -16 | 0);
+ {}
+ $19 = $8;
+ $20 = $9;
+ $21 = _setup_cipher_twofish($11, $19, $20) | 0;
+ $22 = 1 != ($21 | 0);
+ if ($22) {
+  $5 = -1;
+  $13 = 1;
+  $58 = $12;
+  _llvm_stackrestore($58 | 0);
+  $59 = $5;
+  STACKTOP = sp;
+  return $59 | 0;
+ }
+ $23 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $24 = $7;
+ $25 = $6;
+ $26 = $7;
+ $27 = _gcry_cipher_decrypt($23, $18, $24, $25, $26) | 0;
+ $28 = 0 == ($27 | 0);
+ if (!$28) {
+  $14 = 172;
+  $29 = SAFE_HEAP_LOAD(193 * 4 | 0, 4, 0) | 0 | 0;
+  $30 = ($29 | 0) == -1;
+  if ($30) {
+   $31 = $14;
+   $32 = _GNUNET_get_log_call_status(1, 0, 19284, 19373, $31) | 0;
+   SAFE_HEAP_STORE(193 * 4 | 0, $32 | 0, 4);
+  }
+  $33 = _GNUNET_get_log_skip() | 0;
+  $34 = ($33 | 0) > 0;
+  if ($34) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $35 = SAFE_HEAP_LOAD(193 * 4 | 0, 4, 0) | 0 | 0;
+  $36 = ($35 | 0) != 0;
+  if (!$36) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 19284 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 172 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $37 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ _gcry_cipher_close($37);
+ $38 = $8;
+ $39 = $9;
+ $40 = _setup_cipher_aes($11, $38, $39) | 0;
+ $41 = 1 != ($40 | 0);
+ if ($41) {
+  $5 = -1;
+  $13 = 1;
+  $58 = $12;
+  _llvm_stackrestore($58 | 0);
+  $59 = $5;
+  STACKTOP = sp;
+  return $59 | 0;
+ }
+ $42 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $43 = $10;
+ $44 = $7;
+ $45 = $7;
+ $46 = _gcry_cipher_decrypt($42, $43, $44, $18, $45) | 0;
+ $47 = 0 == ($46 | 0);
+ if ($47) {
+  $56 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+  _gcry_cipher_close($56);
+  _memset($18 | 0, 0, $16 | 0) | 0;
+  $57 = $7;
+  $5 = $57;
+  $13 = 1;
+  $58 = $12;
+  _llvm_stackrestore($58 | 0);
+  $59 = $5;
+  STACKTOP = sp;
+  return $59 | 0;
+ }
+ $15 = 176;
+ $48 = SAFE_HEAP_LOAD(194 * 4 | 0, 4, 0) | 0 | 0;
+ $49 = ($48 | 0) == -1;
+ if ($49) {
+  $50 = $15;
+  $51 = _GNUNET_get_log_call_status(1, 0, 19284, 19373, $50) | 0;
+  SAFE_HEAP_STORE(194 * 4 | 0, $51 | 0, 4);
+ }
+ $52 = _GNUNET_get_log_skip() | 0;
+ $53 = ($52 | 0) > 0;
+ if ($53) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $54 = SAFE_HEAP_LOAD(194 * 4 | 0, 4, 0) | 0 | 0;
+ $55 = ($54 | 0) != 0;
+ if (!$55) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer2 | 0, 19284 | 0, 4);
+ $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr5 | 0, 176 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+ _GNUNET_abort_();
+ 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, $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, $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;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer6 = sp + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $10 = $3;
+ $11 = _gcry_cipher_open($10, 9, 2, 0) | 0;
+ $12 = 0 == ($11 | 0);
+ if (!$12) {
+  $7 = 68;
+  $13 = SAFE_HEAP_LOAD(190 * 4 | 0, 4, 0) | 0 | 0;
+  $14 = ($13 | 0) == -1;
+  if ($14) {
+   $15 = $7;
+   $16 = _GNUNET_get_log_call_status(1, 0, 19284, 19356, $15) | 0;
+   SAFE_HEAP_STORE(190 * 4 | 0, $16 | 0, 4);
+  }
+  $17 = _GNUNET_get_log_skip() | 0;
+  $18 = ($17 | 0) > 0;
+  if ($18) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $19 = SAFE_HEAP_LOAD(190 * 4 | 0, 4, 0) | 0 | 0;
+  $20 = ($19 | 0) != 0;
+  if (!$20) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 19284 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 68 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $21 = $3;
+ $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+ $23 = $4;
+ $24 = _gcry_cipher_setkey($22, $23, 32) | 0;
+ $6 = $24;
+ $25 = $6;
+ $26 = 0 == ($25 | 0);
+ if (!$26) {
+  $27 = $6;
+  $28 = $27 & 255;
+  $29 = $28 << 24 >> 24;
+  $30 = ($29 | 0) == 43;
+  if (!$30) {
+   $8 = 72;
+   $31 = SAFE_HEAP_LOAD(191 * 4 | 0, 4, 0) | 0 | 0;
+   $32 = ($31 | 0) == -1;
+   if ($32) {
+    $33 = $8;
+    $34 = _GNUNET_get_log_call_status(1, 0, 19284, 19356, $33) | 0;
+    SAFE_HEAP_STORE(191 * 4 | 0, $34 | 0, 4);
+   }
+   $35 = _GNUNET_get_log_skip() | 0;
+   $36 = ($35 | 0) > 0;
+   if ($36) {
+    _GNUNET_log_skip(-1, 0);
+    _GNUNET_abort_();
+   }
+   $37 = SAFE_HEAP_LOAD(191 * 4 | 0, 4, 0) | 0 | 0;
+   $38 = ($37 | 0) != 0;
+   if (!$38) {
+    _GNUNET_abort_();
+   }
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, 19284 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, 72 | 0, 4);
+   _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+   _GNUNET_abort_();
+  }
+ }
+ $39 = $3;
+ $40 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+ $41 = $5;
+ $42 = _gcry_cipher_setiv($40, $41, 16) | 0;
+ $6 = $42;
+ $43 = $6;
+ $44 = 0 == ($43 | 0);
+ if ($44) {
+  STACKTOP = sp;
+  return 1;
+ }
+ $45 = $6;
+ $46 = $45 & 255;
+ $47 = $46 << 24 >> 24;
+ $48 = ($47 | 0) == 43;
+ if ($48) {
+  STACKTOP = sp;
+  return 1;
+ }
+ $9 = 76;
+ $49 = SAFE_HEAP_LOAD(192 * 4 | 0, 4, 0) | 0 | 0;
+ $50 = ($49 | 0) == -1;
+ if ($50) {
+  $51 = $9;
+  $52 = _GNUNET_get_log_call_status(1, 0, 19284, 19356, $51) | 0;
+  SAFE_HEAP_STORE(192 * 4 | 0, $52 | 0, 4);
+ }
+ $53 = _GNUNET_get_log_skip() | 0;
+ $54 = ($53 | 0) > 0;
+ if ($54) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $55 = SAFE_HEAP_LOAD(192 * 4 | 0, 4, 0) | 0 | 0;
+ $56 = ($55 | 0) != 0;
+ if (!$56) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer6 | 0, 19284 | 0, 4);
+ $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr9 | 0, 76 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer6);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+function _GNUNET_CRYPTO_eddsa_sign($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, 
$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_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0;
+ var $vararg_ptr6 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 80 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(80 | 0);
+ $vararg_buffer3 = sp + 16 | 0;
+ $vararg_buffer = sp;
+ $8 = sp + 48 | 0;
+ $11 = sp + 32 | 0;
+ $4 = $0;
+ $5 = $1;
+ $6 = $2;
+ $14 = $4;
+ $15 = _decode_private_eddsa_key($14) | 0;
+ $7 = $15;
+ $16 = $5;
+ $17 = _data_to_eddsa_value($16) | 0;
+ $9 = $17;
+ $18 = $9;
+ $19 = $7;
+ $20 = _gcry_pk_sign($8, $18, $19) | 0;
+ $10 = $20;
+ $21 = 0 != ($20 | 0);
+ if ($21) {
+  $12 = 807;
+  $22 = SAFE_HEAP_LOAD(219 * 4 | 0, 4, 0) | 0 | 0;
+  $23 = ($22 | 0) == -1;
+  if ($23) {
+   $24 = $12;
+   $25 = _GNUNET_get_log_call_status(2, 20980, 19405, 19978, $24) | 0;
+   SAFE_HEAP_STORE(219 * 4 | 0, $25 | 0, 4);
+  }
+  $26 = _GNUNET_get_log_skip() | 0;
+  $27 = ($26 | 0) > 0;
+  if ($27) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $28 = SAFE_HEAP_LOAD(219 * 4 | 0, 4, 0) | 0 | 0;
+   $29 = ($28 | 0) != 0;
+   if ($29) {
+    $30 = $10;
+    $31 = _gcry_strerror($30) | 0;
+    SAFE_HEAP_STORE($vararg_buffer | 0, 19405 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, 807 | 0, 4);
+    $vararg_ptr2 = $vararg_buffer + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr2 | 0, $31 | 0, 4);
+    _GNUNET_log_from_nocheck(2, 20980, 20003, $vararg_buffer);
+   }
+  }
+  $32 = $9;
+  _gcry_sexp_release($32);
+  $33 = $7;
+  _gcry_sexp_release($33);
+  $3 = -1;
+  $58 = $3;
+  STACKTOP = sp;
+  return $58 | 0;
+ }
+ $34 = $7;
+ _gcry_sexp_release($34);
+ $35 = $9;
+ _gcry_sexp_release($35);
+ $36 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $37 = _key_from_sexp($11, $36, 37529, 46882) | 0;
+ $10 = $37;
+ $38 = 0 != ($37 | 0);
+ if (!$38) {
+  $48 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  _gcry_sexp_release($48);
+  $49 = $6;
+  $50 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+  _GNUNET_CRYPTO_mpi_print_unsigned($49, 32, $50);
+  $51 = $6;
+  $52 = $51 + 32 | 0;
+  $53 = $11 + 4 | 0;
+  $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+  _GNUNET_CRYPTO_mpi_print_unsigned($52, 32, $54);
+  $55 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($55);
+  $56 = $11 + 4 | 0;
+  $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($57);
+  $3 = 1;
+  $58 = $3;
+  STACKTOP = sp;
+  return $58 | 0;
+ }
+ $13 = 819;
+ $39 = SAFE_HEAP_LOAD(220 * 4 | 0, 4, 0) | 0 | 0;
+ $40 = ($39 | 0) == -1;
+ if ($40) {
+  $41 = $13;
+  $42 = _GNUNET_get_log_call_status(1, 0, 19405, 19978, $41) | 0;
+  SAFE_HEAP_STORE(220 * 4 | 0, $42 | 0, 4);
+ }
+ $43 = _GNUNET_get_log_skip() | 0;
+ $44 = ($43 | 0) > 0;
+ if ($44) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $45 = SAFE_HEAP_LOAD(220 * 4 | 0, 4, 0) | 0 | 0;
+  $46 = ($45 | 0) != 0;
+  if ($46) {
+   SAFE_HEAP_STORE($vararg_buffer3 | 0, 19405 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, 819 | 0, 4);
+   _GNUNET_log_nocheck(1, 61295, $vararg_buffer3);
+  }
+ }
+ $47 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($47);
+ $3 = -1;
+ $58 = $3;
+ STACKTOP = sp;
+ return $58 | 0;
+}
+
+function _secmem_init($0) {
+ $0 = $0 | 0;
+ var $$ = 0, $$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;
+ 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, $5 = 0, $6 = 0;
+ var $7 = 0, $8 = 0, $9 = 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) {
+  SAFE_HEAP_STORE(17599 * 4 | 0, 1 | 0, 4);
+  $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(22925, $vararg_buffer);
+  }
+  $7 = _getuid() | 0;
+  $8 = _geteuid() | 0;
+  $9 = ($7 | 0) == ($8 | 0);
+  if (!$9) {
+   __gcry_log_fatal(22925, $vararg_buffer);
+  }
+  $10 = _setuid(0) | 0;
+  $11 = ($10 | 0) == 0;
+  if ($11) {
+   __gcry_log_fatal(22925, $vararg_buffer);
+  } else {
+   STACKTOP = sp;
+   return;
+  }
+ }
+ $12 = SAFE_HEAP_LOAD(17600 * 4 | 0, 4, 0) | 0 | 0;
+ $13 = ($12 | 0) == 0;
+ if (!$13) {
+  __gcry_log_error(23124, $vararg_buffer11);
+  STACKTOP = sp;
+  return;
+ }
+ $14 = $0 >>> 0 < 16384;
+ $$ = $14 ? 16384 : $0;
+ SAFE_HEAP_STORE(17601 * 4 | 0, $$ | 0, 4);
+ $15 = SAFE_HEAP_LOAD(17599 * 4 | 0, 4, 0) | 0 | 0;
+ $16 = ($15 | 0) == 0;
+ if (!$16) {
+  __gcry_log_bug(22948, $vararg_buffer1);
+ }
+ $17 = _sysconf(30) | 0;
+ $18 = ($17 | 0) > 0;
+ $19 = $18 ? $17 : 4096;
+ $20 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+ $21 = $20 + -1 | 0;
+ $22 = $21 + $19 | 0;
+ $23 = 0 - $19 | 0;
+ $24 = $22 & $23;
+ SAFE_HEAP_STORE(17601 * 4 | 0, $24 | 0, 4);
+ $25 = ___mmap(0, $24, 3, 34, -1, 0) | 0;
+ SAFE_HEAP_STORE(17602 * 4 | 0, $25 | 0, 4);
+ $26 = ($25 | 0) == (-1 | 0);
+ if ($26) {
+  $27 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+  $28 = ___errno_location() | 0;
+  $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+  $30 = _strerror($29) | 0;
+  SAFE_HEAP_STORE($vararg_buffer3 | 0, $27 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer3 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, $30 | 0, 4);
+  __gcry_log_info(22974, $vararg_buffer3);
+ } else {
+  SAFE_HEAP_STORE(17603 * 4 | 0, 1 | 0, 4);
+  SAFE_HEAP_STORE(17600 * 4 | 0, 1 | 0, 4);
+ }
+ $31 = SAFE_HEAP_LOAD(17600 * 4 | 0, 4, 0) | 0 | 0;
+ $32 = ($31 | 0) == 0;
+ do {
+  if ($32) {
+   $33 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+   $34 = _malloc($33) | 0;
+   SAFE_HEAP_STORE(17602 * 4 | 0, $34 | 0, 4);
+   $35 = ($34 | 0) == (0 | 0);
+   if ($35) {
+    SAFE_HEAP_STORE($vararg_buffer6 | 0, $33 | 0, 4);
+    __gcry_log_fatal(23022, $vararg_buffer6);
+   } else {
+    SAFE_HEAP_STORE(17600 * 4 | 0, 1 | 0, 4);
+    $36 = $33;
+    $37 = $34;
+    break;
+   }
+  } else {
+   $$pre$i = SAFE_HEAP_LOAD(17602 * 4 | 0, 4, 0) | 0 | 0;
+   $$pre13$i = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+   $36 = $$pre13$i;
+   $37 = $$pre$i;
+  }
+ } while (0);
+ SAFE_HEAP_STORE($37 | 0, $36 | 0, 4);
+ $38 = $37 + 4 | 0;
+ SAFE_HEAP_STORE($38 | 0, 0 | 0, 4);
+ $39 = SAFE_HEAP_LOAD(17597 * 4 | 0, 4, 0) | 0 | 0;
+ $40 = ($39 | 0) == 0;
+ if (!$40) {
+  STACKTOP = sp;
+  return;
+ }
+ __gcry_log_info(23062, $vararg_buffer9);
+ STACKTOP = sp;
+ return;
+}
+
+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 $$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, $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, $7 = 0, $8 = 0, 
$9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $7 = SAFE_HEAP_LOAD(17635 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == 0;
+ do {
+  if ($8) {
+   $9 = _getenv(45467 | 0) | 0;
+   $10 = ($9 | 0) == (0 | 0);
+   if ($10) {
+    SAFE_HEAP_STORE(17635 * 4 | 0, -1 | 0, 4);
+    break;
+   } else {
+    SAFE_HEAP_STORE(17635 * 4 | 0, 1 | 0, 4);
+    break;
+   }
+  }
+ } while (0);
+ SAFE_HEAP_STORE($0 | 0, $1 | 0, 4);
+ $11 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($11 | 0, $2 | 0, 4);
+ $12 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($12 | 0, $3 | 0, 4);
+ $13 = ($2 | 0) == 1;
+ if ($13) {
+  $$sink = 256;
+ } else {
+  $14 = __gcry_mpi_get_nbits($4) | 0;
+  $$sink = $14;
+ }
+ $15 = $0 + 12 | 0;
+ SAFE_HEAP_STORE($15 | 0, $$sink | 0, 4);
+ $16 = __gcry_mpi_copy($4) | 0;
+ $17 = $0 + 16 | 0;
+ SAFE_HEAP_STORE($17 | 0, $16 | 0, 4);
+ $18 = __gcry_mpi_copy($5) | 0;
+ $19 = $0 + 20 | 0;
+ SAFE_HEAP_STORE($19 | 0, $18 | 0, 4);
+ $20 = __gcry_mpi_copy($6) | 0;
+ $21 = $0 + 24 | 0;
+ SAFE_HEAP_STORE($21 | 0, $20 | 0, 4);
+ $22 = SAFE_HEAP_LOAD(17635 * 4 | 0, 4, 0) | 0 | 0;
+ $23 = ($22 | 0) > 0;
+ if ($23) {
+  $24 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+  $25 = __gcry_mpi_barrett_init($24, 0) | 0;
+  $27 = $25;
+ } else {
+  $27 = 0;
+ }
+ $26 = $0 + 60 | 0;
+ SAFE_HEAP_STORE($26 | 0, $27 | 0, 4);
+ $28 = $0 + 48 | 0;
+ $29 = SAFE_HEAP_LOAD($28 >> 0 | 0, 1, 0) | 0 | 0;
+ $30 = $29 & -4;
+ SAFE_HEAP_STORE($28 >> 0 | 0, $30 | 0, 1);
+ $31 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $32 = __gcry_mpi_alloc_like($31) | 0;
+ $33 = $0 + 64 | 0;
+ SAFE_HEAP_STORE($33 | 0, $32 | 0, 4);
+ $34 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $35 = __gcry_mpi_alloc_like($34) | 0;
+ $36 = $0 + 68 | 0;
+ SAFE_HEAP_STORE($36 | 0, $35 | 0, 4);
+ $37 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $38 = __gcry_mpi_alloc_like($37) | 0;
+ $39 = $0 + 72 | 0;
+ SAFE_HEAP_STORE($39 | 0, $38 | 0, 4);
+ $40 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $41 = __gcry_mpi_alloc_like($40) | 0;
+ $42 = $0 + 76 | 0;
+ SAFE_HEAP_STORE($42 | 0, $41 | 0, 4);
+ $43 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $44 = __gcry_mpi_alloc_like($43) | 0;
+ $45 = $0 + 80 | 0;
+ SAFE_HEAP_STORE($45 | 0, $44 | 0, 4);
+ $46 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $47 = __gcry_mpi_alloc_like($46) | 0;
+ $48 = $0 + 84 | 0;
+ SAFE_HEAP_STORE($48 | 0, $47 | 0, 4);
+ $49 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $50 = __gcry_mpi_alloc_like($49) | 0;
+ $51 = $0 + 88 | 0;
+ SAFE_HEAP_STORE($51 | 0, $50 | 0, 4);
+ $52 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $53 = __gcry_mpi_alloc_like($52) | 0;
+ $54 = $0 + 92 | 0;
+ SAFE_HEAP_STORE($54 | 0, $53 | 0, 4);
+ $55 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $56 = __gcry_mpi_alloc_like($55) | 0;
+ $57 = $0 + 96 | 0;
+ SAFE_HEAP_STORE($57 | 0, $56 | 0, 4);
+ $58 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $59 = __gcry_mpi_alloc_like($58) | 0;
+ $60 = $0 + 100 | 0;
+ SAFE_HEAP_STORE($60 | 0, $59 | 0, 4);
+ $61 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $62 = __gcry_mpi_alloc_like($61) | 0;
+ $63 = $0 + 104 | 0;
+ SAFE_HEAP_STORE($63 | 0, $62 | 0, 4);
+ return;
+}
+
+function _fgets($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$06266 = 0, $$063 = 0, $$064 = 0, $$1 = 0, $$old2 = 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, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, $or$cond = 0;
+ var $or$cond3 = 0, $sext$mask = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $2 + 76 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) > -1;
+ if ($5) {
+  $6 = ___lockfile($2) | 0;
+  $15 = $6;
+ } else {
+  $15 = 0;
+ }
+ $7 = $1 + -1 | 0;
+ $8 = ($1 | 0) < 2;
+ if ($8) {
+  $9 = $2 + 74 | 0;
+  $10 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+  $11 = $10 << 24 >> 24;
+  $12 = $11 + 255 | 0;
+  $13 = $12 | $11;
+  $14 = $13 & 255;
+  SAFE_HEAP_STORE($9 >> 0 | 0, $14 | 0, 1);
+  $16 = ($15 | 0) == 0;
+  if (!$16) {
+   ___unlockfile($2);
+  }
+  $17 = ($7 | 0) == 0;
+  if ($17) {
+   SAFE_HEAP_STORE($0 >> 0 | 0, 0 | 0, 1);
+   $$0 = $0;
+  } else {
+   $$0 = 0;
+  }
+ } else {
+  $$old2 = ($7 | 0) == 0;
+  L11 : do {
+   if ($$old2) {
+    $$1 = $0;
+    label = 17;
+   } else {
+    $18 = $2 + 4 | 0;
+    $19 = $2 + 8 | 0;
+    $$063 = $7;
+    $$064 = $0;
+    while (1) {
+     $20 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+     $21 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+     $22 = $20;
+     $23 = $21 - $22 | 0;
+     $24 = _memchr($20, 10, $23) | 0;
+     $25 = ($24 | 0) == (0 | 0);
+     $26 = $24;
+     $27 = 1 - $22 | 0;
+     $28 = $27 + $26 | 0;
+     $29 = $25 ? $23 : $28;
+     $30 = $29 >>> 0 < $$063 >>> 0;
+     $31 = $30 ? $29 : $$063;
+     _memcpy($$064 | 0, $20 | 0, $31 | 0) | 0;
+     $32 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+     $33 = $32 + $31 | 0;
+     SAFE_HEAP_STORE($18 | 0, $33 | 0, 4);
+     $34 = $$064 + $31 | 0;
+     $35 = $$063 - $31 | 0;
+     $36 = ($35 | 0) != 0;
+     $or$cond = $25 & $36;
+     if (!$or$cond) {
+      $$1 = $34;
+      label = 17;
+      break L11;
+     }
+     $37 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+     $38 = $33 >>> 0 < $37 >>> 0;
+     if ($38) {
+      $39 = $33 + 1 | 0;
+      SAFE_HEAP_STORE($18 | 0, $39 | 0, 4);
+      $40 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+      $41 = $40 & 255;
+      $50 = $41;
+     } else {
+      $42 = ___uflow($2) | 0;
+      $43 = ($42 | 0) < 0;
+      if ($43) {
+       break;
+      } else {
+       $50 = $42;
+      }
+     }
+     $48 = $35 + -1 | 0;
+     $49 = $50 & 255;
+     $51 = $34 + 1 | 0;
+     SAFE_HEAP_STORE($34 >> 0 | 0, $49 | 0, 1);
+     $sext$mask = $50 & 255;
+     $52 = ($sext$mask | 0) != 10;
+     $53 = ($48 | 0) != 0;
+     $or$cond3 = $53 & $52;
+     if ($or$cond3) {
+      $$063 = $48;
+      $$064 = $51;
+     } else {
+      $$1 = $51;
+      label = 17;
+      break L11;
+     }
+    }
+    $44 = ($34 | 0) == ($0 | 0);
+    if ($44) {
+     $$06266 = 0;
+    } else {
+     $45 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+     $46 = $45 & 16;
+     $47 = ($46 | 0) == 0;
+     if ($47) {
+      $$06266 = 0;
+     } else {
+      $$1 = $34;
+      label = 17;
+     }
+    }
+   }
+  } while (0);
+  if ((label | 0) == 17) {
+   $54 = ($0 | 0) == (0 | 0);
+   if ($54) {
+    $$06266 = 0;
+   } else {
+    SAFE_HEAP_STORE($$1 >> 0 | 0, 0 | 0, 1);
+    $$06266 = $0;
+   }
+  }
+  $55 = ($15 | 0) == 0;
+  if ($55) {
+   $$0 = $$06266;
+  } else {
+   ___unlockfile($2);
+   $$0 = $$06266;
+  }
+ }
+ return $$0 | 0;
+}
+
+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 $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, $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;
+ 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, $9 = 0, $or$cond 
= 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $6 = $0;
+ $7 = $1;
+ $8 = $2;
+ $9 = $3;
+ $10 = $4;
+ $14 = $7;
+ $15 = (0 | 0) == ($14 | 0);
+ if ($15) {
+  $16 = SAFE_HEAP_LOAD(17563 * 4 | 0, 4, 0) | 0 | 0;
+  $7 = $16;
+ }
+ $17 = SAFE_HEAP_LOAD(17564 * 4 | 0, 4, 0) | 0 | 0;
+ $18 = ($17 | 0) >= 0;
+ $19 = SAFE_HEAP_LOAD(17565 * 4 | 0, 4, 0) | 0 | 0;
+ $20 = 0 == ($19 | 0);
+ $or$cond = $18 & $20;
+ if ($or$cond) {
+  $21 = $6;
+  $22 = SAFE_HEAP_LOAD(17564 * 4 | 0, 4, 0) | 0 | 0;
+  $23 = ($21 | 0) <= ($22 | 0);
+  $24 = $23 & 1;
+  $5 = $24;
+  $80 = $5;
+  STACKTOP = sp;
+  return $80 | 0;
+ }
+ $25 = SAFE_HEAP_LOAD(17564 * 4 | 0, 4, 0) | 0 | 0;
+ $26 = ($25 | 0) >= 0;
+ $27 = $26 & 1;
+ $13 = $27;
+ $12 = 0;
+ while (1) {
+  $28 = $12;
+  $29 = SAFE_HEAP_LOAD(17566 * 4 | 0, 4, 0) | 0 | 0;
+  $30 = ($28 | 0) < ($29 | 0);
+  if (!$30) {
+   break;
+  }
+  $31 = $12;
+  $32 = SAFE_HEAP_LOAD(17567 * 4 | 0, 4, 0) | 0 | 0;
+  $33 = $32 + ($31 * 112 | 0) | 0;
+  $11 = $33;
+  $34 = $13;
+  $35 = ($34 | 0) != 0;
+  if ($35) {
+   $36 = $11;
+   $37 = $36 + 108 | 0;
+   $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+   $39 = ($38 | 0) != 0;
+   if ($39) {
+    label = 9;
+   }
+  } else {
+   label = 9;
+  }
+  if ((label | 0) == 9) {
+   label = 0;
+   $40 = $10;
+   $41 = $11;
+   $42 = $41 + 96 | 0;
+   $43 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+   $44 = ($40 | 0) >= ($43 | 0);
+   if ($44) {
+    $45 = $10;
+    $46 = $11;
+    $47 = $46 + 100 | 0;
+    $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+    $49 = ($45 | 0) <= ($48 | 0);
+    if ($49) {
+     $50 = $11;
+     $51 = $7;
+     $52 = _regexec($50, $51, 0, 0, 0) | 0;
+     $53 = 0 == ($52 | 0);
+     if ($53) {
+      $54 = $11;
+      $55 = $54 + 32 | 0;
+      $56 = $8;
+      $57 = _regexec($55, $56, 0, 0, 0) | 0;
+      $58 = 0 == ($57 | 0);
+      if ($58) {
+       $59 = $11;
+       $60 = $59 + 64 | 0;
+       $61 = $9;
+       $62 = _regexec($60, $61, 0, 0, 0) | 0;
+       $63 = 0 == ($62 | 0);
+       if ($63) {
+        label = 14;
+        break;
+       }
+      }
+     }
+    }
+   }
+  }
+  $70 = $12;
+  $71 = $70 + 1 | 0;
+  $12 = $71;
+ }
+ if ((label | 0) == 14) {
+  $64 = $6;
+  $65 = $11;
+  $66 = $65 + 104 | 0;
+  $67 = SAFE_HEAP_LOAD($66 | 0, 4, 0) | 0 | 0;
+  $68 = ($64 | 0) <= ($67 | 0);
+  $69 = $68 & 1;
+  $5 = $69;
+  $80 = $5;
+  STACKTOP = sp;
+  return $80 | 0;
+ }
+ $72 = SAFE_HEAP_LOAD(17564 * 4 | 0, 4, 0) | 0 | 0;
+ $73 = ($72 | 0) >= 0;
+ $74 = $6;
+ if ($73) {
+  $75 = SAFE_HEAP_LOAD(17564 * 4 | 0, 4, 0) | 0 | 0;
+  $76 = ($74 | 0) <= ($75 | 0);
+  $77 = $76 & 1;
+  $5 = $77;
+  $80 = $5;
+  STACKTOP = sp;
+  return $80 | 0;
+ } else {
+  $78 = ($74 | 0) <= 4;
+  $79 = $78 & 1;
+  $5 = $79;
+  $80 = $5;
+  STACKTOP = sp;
+  return $80 | 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, 
$$13745 = 0, $$140 = 0, $$2 = 0, $$23839 = 0, $$3 = 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 = SAFE_HEAP_LOAD($$03555 >> 0 | 0, 1, 0) | 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 {
+   $$2 = $$035$lcssa;
+   $$3 = 0;
+  }
+ }
+ L8 : do {
+  if ((label | 0) == 6) {
+   $17 = SAFE_HEAP_LOAD($$035$lcssa65 >> 0 | 0, 1, 0) | 0 | 0;
+   $18 = $1 & 255;
+   $19 = $17 << 24 >> 24 == $18 << 24 >> 24;
+   if ($19) {
+    $$2 = $$035$lcssa65;
+    $$3 = $$036$lcssa64;
+   } else {
+    $20 = Math_imul($3, 16843009) | 0;
+    $21 = $$036$lcssa64 >>> 0 > 3;
+    L11 : do {
+     if ($21) {
+      $$046 = $$035$lcssa65;
+      $$13745 = $$036$lcssa64;
+      while (1) {
+       $22 = SAFE_HEAP_LOAD($$046 | 0, 4, 0) | 0 | 0;
+       $23 = $22 ^ $20;
+       $24 = $23 + -16843009 | 0;
+       $25 = $23 & -2139062144;
+       $26 = $25 ^ -2139062144;
+       $27 = $26 & $24;
+       $28 = ($27 | 0) == 0;
+       if (!$28) {
+        break;
+       }
+       $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 L11;
+       }
+      }
+      $$140 = $$046;
+      $$23839 = $$13745;
+     } else {
+      $$0$lcssa = $$035$lcssa65;
+      $$137$lcssa = $$036$lcssa64;
+      label = 11;
+     }
+    } while (0);
+    if ((label | 0) == 11) {
+     $32 = ($$137$lcssa | 0) == 0;
+     if ($32) {
+      $$2 = $$0$lcssa;
+      $$3 = 0;
+      break;
+     } else {
+      $$140 = $$0$lcssa;
+      $$23839 = $$137$lcssa;
+     }
+    }
+    while (1) {
+     $33 = SAFE_HEAP_LOAD($$140 >> 0 | 0, 1, 0) | 0 | 0;
+     $34 = $33 << 24 >> 24 == $18 << 24 >> 24;
+     if ($34) {
+      $$2 = $$140;
+      $$3 = $$23839;
+      break L8;
+     }
+     $35 = $$140 + 1 | 0;
+     $36 = $$23839 + -1 | 0;
+     $37 = ($36 | 0) == 0;
+     if ($37) {
+      $$2 = $35;
+      $$3 = 0;
+      break;
+     } else {
+      $$140 = $35;
+      $$23839 = $36;
+     }
+    }
+   }
+  }
+ } while (0);
+ $38 = ($$3 | 0) != 0;
+ $39 = $38 ? $$2 : 0;
+ return $39 | 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, $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_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 + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $5 = sp + 40 | 0;
+ $2 = $0;
+ $3 = $1;
+ $10 = $2;
+ $11 = _decode_private_eddsa_key($10) | 0;
+ $4 = $11;
+ $12 = $4;
+ $13 = (0 | 0) != ($12 | 0);
+ if (!$13) {
+  $7 = 257;
+  $14 = SAFE_HEAP_LOAD(200 * 4 | 0, 4, 0) | 0 | 0;
+  $15 = ($14 | 0) == -1;
+  if ($15) {
+   $16 = $7;
+   $17 = _GNUNET_get_log_call_status(1, 0, 19405, 19544, $16) | 0;
+   SAFE_HEAP_STORE(200 * 4 | 0, $17 | 0, 4);
+  }
+  $18 = _GNUNET_get_log_skip() | 0;
+  $19 = ($18 | 0) > 0;
+  if ($19) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $20 = SAFE_HEAP_LOAD(200 * 4 | 0, 4, 0) | 0 | 0;
+  $21 = ($20 | 0) != 0;
+  if (!$21) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 19405 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 257 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $22 = $4;
+ $23 = _gcry_mpi_ec_new($5, $22, 0) | 0;
+ $24 = 0 == ($23 | 0);
+ if (!$24) {
+  $8 = 258;
+  $25 = SAFE_HEAP_LOAD(201 * 4 | 0, 4, 0) | 0 | 0;
+  $26 = ($25 | 0) == -1;
+  if ($26) {
+   $27 = $8;
+   $28 = _GNUNET_get_log_call_status(1, 0, 19405, 19544, $27) | 0;
+   SAFE_HEAP_STORE(201 * 4 | 0, $28 | 0, 4);
+  }
+  $29 = _GNUNET_get_log_skip() | 0;
+  $30 = ($29 | 0) > 0;
+  if ($30) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $31 = SAFE_HEAP_LOAD(201 * 4 | 0, 4, 0) | 0 | 0;
+  $32 = ($31 | 0) != 0;
+  if (!$32) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, 19405 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, 258 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+  _GNUNET_abort_();
+ }
+ $33 = $4;
+ _gcry_sexp_release($33);
+ $34 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $35 = _gcry_mpi_ec_get_mpi(19453, $34, 0) | 0;
+ $6 = $35;
+ $36 = $6;
+ $37 = ($36 | 0) != (0 | 0);
+ if ($37) {
+  $46 = $3;
+  $47 = $6;
+  _GNUNET_CRYPTO_mpi_print_unsigned($46, 32, $47);
+  $48 = $6;
+  _gcry_mpi_release($48);
+  $49 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  _gcry_ctx_release($49);
+  STACKTOP = sp;
+  return;
+ }
+ $9 = 261;
+ $38 = SAFE_HEAP_LOAD(202 * 4 | 0, 4, 0) | 0 | 0;
+ $39 = ($38 | 0) == -1;
+ if ($39) {
+  $40 = $9;
+  $41 = _GNUNET_get_log_call_status(1, 0, 19405, 19544, $40) | 0;
+  SAFE_HEAP_STORE(202 * 4 | 0, $41 | 0, 4);
+ }
+ $42 = _GNUNET_get_log_skip() | 0;
+ $43 = ($42 | 0) > 0;
+ if ($43) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $44 = SAFE_HEAP_LOAD(202 * 4 | 0, 4, 0) | 0 | 0;
+ $45 = ($44 | 0) != 0;
+ if (!$45) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer6 | 0, 19405 | 0, 4);
+ $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr9 | 0, 261 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer6);
+ _GNUNET_abort_();
+}
+
+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, $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_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 + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $5 = sp + 40 | 0;
+ $2 = $0;
+ $3 = $1;
+ $10 = $2;
+ $11 = _decode_private_ecdsa_key($10) | 0;
+ $4 = $11;
+ $12 = $4;
+ $13 = (0 | 0) != ($12 | 0);
+ if (!$13) {
+  $7 = 231;
+  $14 = SAFE_HEAP_LOAD(195 * 4 | 0, 4, 0) | 0 | 0;
+  $15 = ($14 | 0) == -1;
+  if ($15) {
+   $16 = $7;
+   $17 = _GNUNET_get_log_call_status(1, 0, 19405, 19418, $16) | 0;
+   SAFE_HEAP_STORE(195 * 4 | 0, $17 | 0, 4);
+  }
+  $18 = _GNUNET_get_log_skip() | 0;
+  $19 = ($18 | 0) > 0;
+  if ($19) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $20 = SAFE_HEAP_LOAD(195 * 4 | 0, 4, 0) | 0 | 0;
+  $21 = ($20 | 0) != 0;
+  if (!$21) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 19405 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 231 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $22 = $4;
+ $23 = _gcry_mpi_ec_new($5, $22, 0) | 0;
+ $24 = 0 == ($23 | 0);
+ if (!$24) {
+  $8 = 232;
+  $25 = SAFE_HEAP_LOAD(196 * 4 | 0, 4, 0) | 0 | 0;
+  $26 = ($25 | 0) == -1;
+  if ($26) {
+   $27 = $8;
+   $28 = _GNUNET_get_log_call_status(1, 0, 19405, 19418, $27) | 0;
+   SAFE_HEAP_STORE(196 * 4 | 0, $28 | 0, 4);
+  }
+  $29 = _GNUNET_get_log_skip() | 0;
+  $30 = ($29 | 0) > 0;
+  if ($30) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $31 = SAFE_HEAP_LOAD(196 * 4 | 0, 4, 0) | 0 | 0;
+  $32 = ($31 | 0) != 0;
+  if (!$32) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, 19405 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, 232 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+  _GNUNET_abort_();
+ }
+ $33 = $4;
+ _gcry_sexp_release($33);
+ $34 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $35 = _gcry_mpi_ec_get_mpi(19453, $34, 0) | 0;
+ $6 = $35;
+ $36 = $6;
+ $37 = (0 | 0) != ($36 | 0);
+ if ($37) {
+  $46 = $3;
+  $47 = $6;
+  _GNUNET_CRYPTO_mpi_print_unsigned($46, 32, $47);
+  $48 = $6;
+  _gcry_mpi_release($48);
+  $49 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  _gcry_ctx_release($49);
+  STACKTOP = sp;
+  return;
+ }
+ $9 = 235;
+ $38 = SAFE_HEAP_LOAD(197 * 4 | 0, 4, 0) | 0 | 0;
+ $39 = ($38 | 0) == -1;
+ if ($39) {
+  $40 = $9;
+  $41 = _GNUNET_get_log_call_status(1, 0, 19405, 19418, $40) | 0;
+  SAFE_HEAP_STORE(197 * 4 | 0, $41 | 0, 4);
+ }
+ $42 = _GNUNET_get_log_skip() | 0;
+ $43 = ($42 | 0) > 0;
+ if ($43) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $44 = SAFE_HEAP_LOAD(197 * 4 | 0, 4, 0) | 0 | 0;
+ $45 = ($44 | 0) != 0;
+ if (!$45) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer6 | 0, 19405 | 0, 4);
+ $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr9 | 0, 235 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer6);
+ _GNUNET_abort_();
+}
+
+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_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 + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $5 = sp + 40 | 0;
+ $2 = $0;
+ $3 = $1;
+ $10 = $2;
+ $11 = _decode_private_ecdhe_key($10) | 0;
+ $4 = $11;
+ $12 = $4;
+ $13 = (0 | 0) != ($12 | 0);
+ if (!$13) {
+  $7 = 283;
+  $14 = SAFE_HEAP_LOAD(205 * 4 | 0, 4, 0) | 0 | 0;
+  $15 = ($14 | 0) == -1;
+  if ($15) {
+   $16 = $7;
+   $17 = _GNUNET_get_log_call_status(1, 0, 19405, 19659, $16) | 0;
+   SAFE_HEAP_STORE(205 * 4 | 0, $17 | 0, 4);
+  }
+  $18 = _GNUNET_get_log_skip() | 0;
+  $19 = ($18 | 0) > 0;
+  if ($19) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $20 = SAFE_HEAP_LOAD(205 * 4 | 0, 4, 0) | 0 | 0;
+  $21 = ($20 | 0) != 0;
+  if (!$21) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 19405 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 283 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $22 = $4;
+ $23 = _gcry_mpi_ec_new($5, $22, 0) | 0;
+ $24 = 0 == ($23 | 0);
+ if (!$24) {
+  $8 = 284;
+  $25 = SAFE_HEAP_LOAD(206 * 4 | 0, 4, 0) | 0 | 0;
+  $26 = ($25 | 0) == -1;
+  if ($26) {
+   $27 = $8;
+   $28 = _GNUNET_get_log_call_status(1, 0, 19405, 19659, $27) | 0;
+   SAFE_HEAP_STORE(206 * 4 | 0, $28 | 0, 4);
+  }
+  $29 = _GNUNET_get_log_skip() | 0;
+  $30 = ($29 | 0) > 0;
+  if ($30) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $31 = SAFE_HEAP_LOAD(206 * 4 | 0, 4, 0) | 0 | 0;
+  $32 = ($31 | 0) != 0;
+  if (!$32) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, 19405 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, 284 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+  _GNUNET_abort_();
+ }
+ $33 = $4;
+ _gcry_sexp_release($33);
+ $34 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $35 = _gcry_mpi_ec_get_mpi(19453, $34, 0) | 0;
+ $6 = $35;
+ $36 = $6;
+ $37 = ($36 | 0) != (0 | 0);
+ if ($37) {
+  $46 = $3;
+  $47 = $6;
+  _GNUNET_CRYPTO_mpi_print_unsigned($46, 32, $47);
+  $48 = $6;
+  _gcry_mpi_release($48);
+  $49 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  _gcry_ctx_release($49);
+  STACKTOP = sp;
+  return;
+ }
+ $9 = 287;
+ $38 = SAFE_HEAP_LOAD(207 * 4 | 0, 4, 0) | 0 | 0;
+ $39 = ($38 | 0) == -1;
+ if ($39) {
+  $40 = $9;
+  $41 = _GNUNET_get_log_call_status(1, 0, 19405, 19659, $40) | 0;
+  SAFE_HEAP_STORE(207 * 4 | 0, $41 | 0, 4);
+ }
+ $42 = _GNUNET_get_log_skip() | 0;
+ $43 = ($42 | 0) > 0;
+ if ($43) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $44 = SAFE_HEAP_LOAD(207 * 4 | 0, 4, 0) | 0 | 0;
+ $45 = ($44 | 0) != 0;
+ if (!$45) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer6 | 0, 19405 | 0, 4);
+ $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr9 | 0, 287 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer6);
+ _GNUNET_abort_();
+}
+
+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 + 112 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(112 | 0);
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $1 = sp + 108 | 0;
+ $2 = sp + 64 | 0;
+ $3 = sp + 36 | 0;
+ $4 = sp + 32 | 0;
+ dest = $2;
+ stop = dest + 44 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $2 + 12 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 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(35395, $vararg_buffer);
+ }
+ __gcry_mpi_ec_free($13);
+ __gcry_mpi_point_free_parts($14);
+ $17 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($3 | 0, $17 | 0, 4);
+ $18 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $19 = $3 + 4 | 0;
+ SAFE_HEAP_STORE($19 | 0, $18 | 0, 4);
+ $20 = $2 + 16 | 0;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = $3 + 8 | 0;
+ SAFE_HEAP_STORE($22 | 0, $21 | 0, 4);
+ $23 = $17;
+ $24 = __gcry_ecc_ec2os($7, $8, $23) | 0;
+ $25 = $3 + 12 | 0;
+ SAFE_HEAP_STORE($25 | 0, $24 | 0, 4);
+ $26 = $2 + 32 | 0;
+ $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+ $28 = $3 + 16 | 0;
+ SAFE_HEAP_STORE($28 | 0, $27 | 0, 4);
+ $29 = $2 + 36 | 0;
+ $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+ $31 = $3 + 20 | 0;
+ SAFE_HEAP_STORE($31 | 0, $30 | 0, 4);
+ $32 = $3 + 24 | 0;
+ SAFE_HEAP_STORE($32 | 0, 0 | 0, 4);
+ __gcry_mpi_free($7);
+ __gcry_mpi_free($8);
+ $33 = $18;
+ $34 = $21;
+ $35 = $27;
+ $36 = $30;
+ SAFE_HEAP_STORE($vararg_buffer1 | 0, $23 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer1 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $33 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer1 + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $34 | 0, 4);
+ $vararg_ptr5 = $vararg_buffer1 + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr5 | 0, $24 | 0, 4);
+ $vararg_ptr6 = $vararg_buffer1 + 16 | 0;
+ SAFE_HEAP_STORE($vararg_ptr6 | 0, $35 | 0, 4);
+ $vararg_ptr7 = $vararg_buffer1 + 20 | 0;
+ SAFE_HEAP_STORE($vararg_ptr7 | 0, $36 | 0, 4);
+ $37 = __gcry_sexp_build($4, 0, 35444, $vararg_buffer1) | 0;
+ $38 = ($37 | 0) == 0;
+ if (!$38) {
+  SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ }
+ $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 = SAFE_HEAP_LOAD($42 | 0, 4, 0) | 0 | 0;
+   $44 = ($43 | 0) == (0 | 0);
+   if ($44) {
+    break;
+   } else {
+    $$020 = $41;
+    $40 = $43;
+   }
+  }
+ }
+ $45 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $$019 = $45;
+ STACKTOP = sp;
+ return $$019 | 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, $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 $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 + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer8 = sp + 24 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $10 = $3;
+ $11 = $10 >>> 0 <= 41943040;
+ if (!$11) {
+  $7 = 74;
+  $12 = SAFE_HEAP_LOAD(178 * 4 | 0, 4, 0) | 0 | 0;
+  $13 = ($12 | 0) == -1;
+  if ($13) {
+   $14 = $7;
+   $15 = _GNUNET_get_log_call_status(1, 0, 19017, 19037, $14) | 0;
+   SAFE_HEAP_STORE(178 * 4 | 0, $15 | 0, 4);
+  }
+  $16 = _GNUNET_get_log_skip() | 0;
+  $17 = ($16 | 0) > 0;
+  if ($17) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $18 = SAFE_HEAP_LOAD(178 * 4 | 0, 4, 0) | 0 | 0;
+  $19 = ($18 | 0) != 0;
+  if (!$19) {
+   _GNUNET_abort_();
+  }
+  $20 = $4;
+  $21 = $5;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $20 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, $21 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $22 = $3;
+ $23 = $4;
+ $24 = $5;
+ $25 = _GNUNET_xmalloc_unchecked_($22, $23, $24) | 0;
+ $6 = $25;
+ $26 = $6;
+ $27 = (0 | 0) == ($26 | 0);
+ if (!$27) {
+  $47 = $6;
+  STACKTOP = sp;
+  return $47 | 0;
+ }
+ $8 = 81;
+ $28 = SAFE_HEAP_LOAD(179 * 4 | 0, 4, 0) | 0 | 0;
+ $29 = ($28 | 0) == -1;
+ if ($29) {
+  $30 = $8;
+  $31 = _GNUNET_get_log_call_status(1, 20980, 19017, 19037, $30) | 0;
+  SAFE_HEAP_STORE(179 * 4 | 0, $31 | 0, 4);
+ }
+ $32 = _GNUNET_get_log_skip() | 0;
+ $33 = ($32 | 0) > 0;
+ if ($33) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $34 = SAFE_HEAP_LOAD(179 * 4 | 0, 4, 0) | 0 | 0;
+  $35 = ($34 | 0) != 0;
+  if ($35) {
+   $36 = ___errno_location() | 0;
+   $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+   $38 = _strerror($37) | 0;
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, 19053 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, 19017 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, 81 | 0, 4);
+   $vararg_ptr7 = $vararg_buffer2 + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr7 | 0, $38 | 0, 4);
+   _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer2);
+  }
+ }
+ $9 = 82;
+ $39 = SAFE_HEAP_LOAD(180 * 4 | 0, 4, 0) | 0 | 0;
+ $40 = ($39 | 0) == -1;
+ if ($40) {
+  $41 = $9;
+  $42 = _GNUNET_get_log_call_status(1, 0, 19017, 19037, $41) | 0;
+  SAFE_HEAP_STORE(180 * 4 | 0, $42 | 0, 4);
+ }
+ $43 = _GNUNET_get_log_skip() | 0;
+ $44 = ($43 | 0) > 0;
+ if ($44) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $45 = SAFE_HEAP_LOAD(180 * 4 | 0, 4, 0) | 0 | 0;
+ $46 = ($45 | 0) != 0;
+ if (!$46) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer8 | 0, 19017 | 0, 4);
+ $vararg_ptr11 = $vararg_buffer8 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr11 | 0, 82 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer8);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+function _flush_bulk($0) {
+ $0 = $0 | 0;
+ var $$byval_copy = 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, $6 = 0, $7 
= 0, $8 = 0, $9 = 0, $last_bulk_time$byval_copy = 0, $or$cond = 0, 
$vararg_buffer = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label 
= 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 640 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(640 | 0);
+ $$byval_copy = sp + 40 | 0;
+ $last_bulk_time$byval_copy = sp + 32 | 0;
+ $vararg_buffer = sp + 16 | 0;
+ $2 = sp + 64 | 0;
+ $6 = sp + 8 | 0;
+ $7 = sp;
+ $1 = $0;
+ $8 = 70224;
+ $9 = $8;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $8 + 4 | 0;
+ $12 = $11;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = 0 == ($10 | 0);
+ $15 = 0 == ($13 | 0);
+ $16 = $14 & $15;
+ $17 = SAFE_HEAP_LOAD(17569 * 4 | 0, 4, 0) | 0 | 0;
+ $18 = 0 == ($17 | 0);
+ $or$cond = $16 | $18;
+ if ($or$cond) {
+  STACKTOP = sp;
+  return;
+ }
+ $3 = 0;
+ $19 = _memchr(71362, 0, 256) | 0;
+ $4 = $19;
+ $20 = $4;
+ $21 = ($20 | 0) == (0 | 0);
+ if ($21) {
+  $4 = 71617;
+ } else {
+  $22 = $4;
+  $23 = ($22 | 0) != (71362 | 0);
+  if ($23) {
+   $24 = $4;
+   $25 = $24 + -1 | 0;
+   $4 = $25;
+  }
+ }
+ $26 = $4;
+ $27 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+ $28 = $27 << 24 >> 24;
+ $29 = ($28 | 0) == 10;
+ if ($29) {
+  $3 = 1;
+  $30 = $4;
+  SAFE_HEAP_STORE($30 >> 0 | 0, 0 | 0, 1);
+ }
+ {}
+ SAFE_HEAP_STORE($last_bulk_time$byval_copy | 0, SAFE_HEAP_LOAD(70224 | 0, 4, 
0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($last_bulk_time$byval_copy + 4 | 0, SAFE_HEAP_LOAD(70224 + 4 
| 0, 4, 0) | 0 | 0 | 0, 4);
+ $31 = _GNUNET_TIME_absolute_get_duration($last_bulk_time$byval_copy) | 0;
+ $32 = tempRet0;
+ $33 = $6;
+ $34 = $33;
+ SAFE_HEAP_STORE($34 | 0, $31 | 0, 4);
+ $35 = $33 + 4 | 0;
+ $36 = $35;
+ SAFE_HEAP_STORE($36 | 0, $32 | 0, 4);
+ {}
+ SAFE_HEAP_STORE($$byval_copy | 0, SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ SAFE_HEAP_STORE($$byval_copy + 4 | 0, SAFE_HEAP_LOAD($6 + 4 | 0, 4, 0) | 0 | 
0 | 0, 4);
+ $37 = _GNUNET_STRINGS_relative_time_to_string($$byval_copy, 1) | 0;
+ $5 = $37;
+ $38 = SAFE_HEAP_LOAD(17569 * 4 | 0, 4, 0) | 0 | 0;
+ $39 = $5;
+ SAFE_HEAP_STORE($vararg_buffer | 0, 256 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, 71362 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $38 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $39 | 0, 4);
+ _snprintf($2, 576, 19219, $vararg_buffer) | 0;
+ $40 = $3;
+ $41 = ($40 | 0) == 1;
+ if ($41) {
+  $42 = $4;
+  SAFE_HEAP_STORE($42 >> 0 | 0, 10 | 0, 1);
+ }
+ $43 = SAFE_HEAP_LOAD(17570 * 4 | 0, 4, 0) | 0 | 0;
+ $44 = $1;
+ _output_message($43, 71618, $44, $2);
+ $45 = _GNUNET_TIME_absolute_get() | 0;
+ $46 = tempRet0;
+ $47 = $7;
+ $48 = $47;
+ SAFE_HEAP_STORE($48 | 0, $45 | 0, 4);
+ $49 = $47 + 4 | 0;
+ $50 = $49;
+ SAFE_HEAP_STORE($50 | 0, $46 | 0, 4);
+ {}
+ SAFE_HEAP_STORE(70224 | 0, SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE(70224 + 4 | 0, SAFE_HEAP_LOAD($7 + 4 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ SAFE_HEAP_STORE(17569 * 4 | 0, 0 | 0, 4);
+ STACKTOP = sp;
+ return;
+}
+
+function _x931_generate_key($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $$041$lcssa62 = 0, $$04153 = 0, $$042$lcssa61 = 0, $$04252 = 0, 
$$047 = 0, $$1 = 0, $$143 = 0, $$3$ph = 0, $$345$ph = 0, $$34550 = 0, $$351 = 
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 = SAFE_HEAP_LOAD(17672 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ if ($3) {
+  __gcry_assert_failed(51340, 51065, 596, 51674);
+ }
+ $4 = __gcry_cipher_open($1, 7, 1, 1) | 0;
+ $5 = ($4 | 0) == 0;
+ if (!$5) {
+  $6 = _gpg_strerror($4) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $6 | 0, 4);
+  __gcry_log_error(51692, $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 = SAFE_HEAP_LOAD(17675 * 4 | 0, 4, 0) | 0 | 0;
+  _get_random($8, 16, $9);
+  $$047 = $8;
+ }
+ $11 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $12 = __gcry_cipher_setkey($11, $$047, 16) | 0;
+ $13 = $$047;
+ $14 = $13 & 7;
+ $15 = ($14 | 0) == 0;
+ if ($15) {
+  $$041$lcssa62 = 16;
+  $$042$lcssa61 = $$047;
+  label = 11;
+ } else {
+  $$04153 = 16;
+  $$04252 = $$047;
+  while (1) {
+   SAFE_HEAP_STORE($$04252 >> 0 | 0, 0 | 0, 1);
+   $16 = $$04252 + 1 | 0;
+   $17 = $$04153 + -1 | 0;
+   $18 = $16;
+   $19 = $18 & 7;
+   $20 = ($19 | 0) != 0;
+   $21 = ($17 | 0) != 0;
+   $22 = $21 & $20;
+   if ($22) {
+    $$04153 = $17;
+    $$04252 = $16;
+   } else {
+    break;
+   }
+  }
+  $23 = $17 >>> 0 < 8;
+  if ($23) {
+   $$3$ph = $17;
+   $$345$ph = $16;
+  } else {
+   $$041$lcssa62 = $17;
+   $$042$lcssa61 = $16;
+   label = 11;
+  }
+ }
+ if ((label | 0) == 11) {
+  $24 = $$041$lcssa62 + -8 | 0;
+  $25 = $24 & -8;
+  $26 = $25 + 8 | 0;
+  $$1 = $$041$lcssa62;
+  $$143 = $$042$lcssa61;
+  while (1) {
+   $27 = $$143;
+   $28 = $27;
+   SAFE_HEAP_STORE($28 | 0, 0 | 0, 4);
+   $29 = $27 + 4 | 0;
+   $30 = $29;
+   SAFE_HEAP_STORE($30 | 0, 0 | 0, 4);
+   $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$lcssa61 + $26 | 0;
+  $$3$ph = $34;
+  $$345$ph = $scevgep;
+ }
+ $35 = ($$3$ph | 0) == 0;
+ if (!$35) {
+  $$34550 = $$345$ph;
+  $$351 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$34550 >> 0 | 0, 0 | 0, 1);
+   $36 = $$34550 + 1 | 0;
+   $37 = $$351 + -1 | 0;
+   $38 = ($37 | 0) == 0;
+   if ($38) {
+    break;
+   } else {
+    $$34550 = $36;
+    $$351 = $37;
+   }
+  }
+ }
+ __gcry_free($$047);
+ $39 = ($12 | 0) == 0;
+ if ($39) {
+  $42 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  $$0 = $42;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  $40 = _gpg_strerror($12) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $40 | 0, 4);
+  __gcry_log_error(51735, $vararg_buffer1);
+  $41 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  __gcry_cipher_close($41);
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+function _mbtowc($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 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, $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, $6 = 0, $7 = 0, $8 = 0, 
$9 = 0, $not$ = 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);
+     $$ = $6 ? $3 : $0;
+     $7 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+     $8 = $7 << 24 >> 24 > -1;
+     if ($8) {
+      $9 = $7 & 255;
+      SAFE_HEAP_STORE($$ | 0, $9 | 0, 4);
+      $10 = $7 << 24 >> 24 != 0;
+      $11 = $10 & 1;
+      $$0 = $11;
+      break L1;
+     }
+     $12 = _pthread_self() | 0;
+     $13 = $12 + 188 | 0;
+     $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+     $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+     $not$ = ($15 | 0) == (0 | 0);
+     $16 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+     if ($not$) {
+      $17 = $16 << 24 >> 24;
+      $18 = $17 & 57343;
+      SAFE_HEAP_STORE($$ | 0, $18 | 0, 4);
+      $$0 = 1;
+      break L1;
+     }
+     $19 = $16 & 255;
+     $20 = $19 + -194 | 0;
+     $21 = $20 >>> 0 > 50;
+     if (!$21) {
+      $22 = $1 + 1 | 0;
+      $23 = 15868 + ($20 << 2) | 0;
+      $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+      $25 = $2 >>> 0 < 4;
+      if ($25) {
+       $26 = $2 * 6 | 0;
+       $27 = $26 + -6 | 0;
+       $28 = -2147483648 >>> $27;
+       $29 = $24 & $28;
+       $30 = ($29 | 0) == 0;
+       if (!$30) {
+        break;
+       }
+      }
+      $31 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+      $32 = $31 & 255;
+      $33 = $32 >>> 3;
+      $34 = $33 + -16 | 0;
+      $35 = $24 >> 26;
+      $36 = $33 + $35 | 0;
+      $37 = $34 | $36;
+      $38 = $37 >>> 0 > 7;
+      if (!$38) {
+       $39 = $24 << 6;
+       $40 = $32 + -128 | 0;
+       $41 = $40 | $39;
+       $42 = ($41 | 0) < 0;
+       if (!$42) {
+        SAFE_HEAP_STORE($$ | 0, $41 | 0, 4);
+        $$0 = 2;
+        break L1;
+       }
+       $43 = $1 + 2 | 0;
+       $44 = SAFE_HEAP_LOAD($43 >> 0 | 0, 1, 0) | 0 | 0;
+       $45 = $44 & 255;
+       $46 = $45 + -128 | 0;
+       $47 = $46 >>> 0 > 63;
+       if (!$47) {
+        $48 = $41 << 6;
+        $49 = $46 | $48;
+        $50 = ($49 | 0) < 0;
+        if (!$50) {
+         SAFE_HEAP_STORE($$ | 0, $49 | 0, 4);
+         $$0 = 3;
+         break L1;
+        }
+        $51 = $1 + 3 | 0;
+        $52 = SAFE_HEAP_LOAD($51 >> 0 | 0, 1, 0) | 0 | 0;
+        $53 = $52 & 255;
+        $54 = $53 + -128 | 0;
+        $55 = $54 >>> 0 > 63;
+        if (!$55) {
+         $56 = $49 << 6;
+         $57 = $54 | $56;
+         SAFE_HEAP_STORE($$ | 0, $57 | 0, 4);
+         $$0 = 4;
+         break L1;
+        }
+       }
+      }
+     }
+    }
+   } while (0);
+   $58 = ___errno_location() | 0;
+   SAFE_HEAP_STORE($58 | 0, 84 | 0, 4);
+   $$0 = -1;
+  }
+ } while (0);
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _add_randomness($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0$be = 0, $$01113 = 0, $$01113$us = 0, $$014 = 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, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = SAFE_HEAP_LOAD(17645 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  __gcry_assert_failed(50424, 50439, 1074, 50474);
+ }
+ $5 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = $5 + $1 | 0;
+ SAFE_HEAP_STORE(17655 * 4 | 0, $6 | 0, 4);
+ $7 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = $7 + 1 | 0;
+ SAFE_HEAP_STORE(17654 * 4 | 0, $8 | 0, 4);
+ $9 = $1 + -1 | 0;
+ $10 = ($1 | 0) == 0;
+ if ($10) {
+  return;
+ }
+ $11 = $2 >>> 0 < 3;
+ if ($11) {
+  $$01113$us = $0;
+  $23 = $9;
+  while (1) {
+   $12 = $$01113$us + 1 | 0;
+   $13 = SAFE_HEAP_LOAD($$01113$us >> 0 | 0, 1, 0) | 0 | 0;
+   $14 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+   $15 = $14 + 1 | 0;
+   SAFE_HEAP_STORE(17662 * 4 | 0, $15 | 0, 4);
+   $16 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+   $17 = $16 + $14 | 0;
+   $18 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+   $19 = $18 ^ $13;
+   SAFE_HEAP_STORE($17 >> 0 | 0, $19 | 0, 1);
+   $20 = $15 >>> 0 > 599;
+   if ($20) {
+    SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+    _mix_pool($16);
+    $21 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+    $22 = $21 + 1 | 0;
+    SAFE_HEAP_STORE(17651 * 4 | 0, $22 | 0, 4);
+    $24 = ($23 | 0) == 0;
+    $25 = $24 & 1;
+    SAFE_HEAP_STORE(17663 * 4 | 0, $25 | 0, 4);
+   }
+   $26 = $23 + -1 | 0;
+   $27 = ($23 | 0) == 0;
+   if ($27) {
+    break;
+   } else {
+    $$01113$us = $12;
+    $23 = $26;
+   }
+  }
+  return;
+ } else {
+  $$01113 = $0;
+  $$014 = 0;
+  $45 = $9;
+ }
+ while (1) {
+  $28 = $$01113 + 1 | 0;
+  $29 = SAFE_HEAP_LOAD($$01113 >> 0 | 0, 1, 0) | 0 | 0;
+  $30 = SAFE_HEAP_LOAD(17662 * 4 | 0, 4, 0) | 0 | 0;
+  $31 = $30 + 1 | 0;
+  SAFE_HEAP_STORE(17662 * 4 | 0, $31 | 0, 4);
+  $32 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+  $33 = $32 + $30 | 0;
+  $34 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+  $35 = $34 ^ $29;
+  SAFE_HEAP_STORE($33 >> 0 | 0, $35 | 0, 1);
+  $36 = $$014 + 1 | 0;
+  $37 = $31 >>> 0 > 599;
+  if ($37) {
+   $38 = SAFE_HEAP_LOAD(17650 * 4 | 0, 4, 0) | 0 | 0;
+   $39 = ($38 | 0) == 0;
+   if ($39) {
+    $40 = SAFE_HEAP_LOAD(17670 * 4 | 0, 4, 0) | 0 | 0;
+    $41 = $40 + $36 | 0;
+    SAFE_HEAP_STORE(17670 * 4 | 0, $41 | 0, 4);
+    $42 = $41 >>> 0 > 599;
+    if ($42) {
+     SAFE_HEAP_STORE(17650 * 4 | 0, 1 | 0, 4);
+     $$1 = 0;
+    } else {
+     $$1 = 0;
+    }
+   } else {
+    $$1 = $36;
+   }
+   SAFE_HEAP_STORE(17662 * 4 | 0, 0 | 0, 4);
+   _mix_pool($32);
+   $43 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+   $44 = $43 + 1 | 0;
+   SAFE_HEAP_STORE(17651 * 4 | 0, $44 | 0, 4);
+   $46 = ($45 | 0) == 0;
+   $47 = $46 & 1;
+   SAFE_HEAP_STORE(17663 * 4 | 0, $47 | 0, 4);
+   $$0$be = $$1;
+  } else {
+   $$0$be = $36;
+  }
+  $48 = $45 + -1 | 0;
+  $49 = ($45 | 0) == 0;
+  if ($49) {
+   break;
+  } else {
+   $$01113 = $28;
+   $$014 = $$0$be;
+   $45 = $48;
+  }
+ }
+ return;
+}
+
+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;
+  SAFE_HEAP_STORE($5 | 0, $4 | 0, 4);
+  SAFE_HEAP_STORE($3 | 0, 1 | 0, 4);
+  $6 = $3 + 4 | 0;
+  SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+  $7 = $3 + 8 | 0;
+  SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+  $8 = $3 + 12 | 0;
+  SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+  $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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $12 = $11 & 16;
+  $13 = ($12 | 0) == 0;
+  if ($13) {
+   $$01315 = $$01314;
+  } else {
+   __gcry_log_info(46049, $vararg_buffer);
+   $$01316 = $$01314;
+   STACKTOP = sp;
+   return $$01316 | 0;
+  }
+ }
+ $14 = SAFE_HEAP_LOAD($$01315 | 0, 4, 0) | 0 | 0;
+ $15 = ($14 | 0) < 1;
+ L8 : do {
+  if ($15) {
+   $16 = ($14 | 0) == 0;
+   if (!$16) {
+    $17 = $$01315 + 4 | 0;
+    $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+    $19 = $18 >>> 0 < $14 >>> 0;
+    if (!$19) {
+     break;
+    }
+    $20 = $$01315 + 16 | 0;
+    $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+    $$024$i = $18;
+    while (1) {
+     $22 = $21 + ($$024$i << 2) | 0;
+     SAFE_HEAP_STORE($22 | 0, 0 | 0, 4);
+     $23 = $$024$i + 1 | 0;
+     $24 = SAFE_HEAP_LOAD($$01315 | 0, 4, 0) | 0 | 0;
+     $25 = $23 >>> 0 < $24 >>> 0;
+     if ($25) {
+      $$024$i = $23;
+     } else {
+      break L8;
+     }
+    }
+   }
+   $26 = $$01315 + 16 | 0;
+   $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+   $28 = ($27 | 0) == (0 | 0);
+   do {
+    if ($28) {
+     $32 = $$01315 + 12 | 0;
+     $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+     $34 = $33 & 1;
+     $35 = ($34 | 0) == 0;
+     if ($35) {
+      $37 = __gcry_xcalloc(1, 4) | 0;
+      SAFE_HEAP_STORE($26 | 0, $37 | 0, 4);
+      break;
+     } else {
+      $36 = __gcry_xcalloc_secure(1, 4) | 0;
+      SAFE_HEAP_STORE($26 | 0, $36 | 0, 4);
+      break;
+     }
+    } else {
+     $29 = __gcry_xrealloc($27, 4) | 0;
+     SAFE_HEAP_STORE($26 | 0, $29 | 0, 4);
+     $30 = SAFE_HEAP_LOAD($$01315 | 0, 4, 0) | 0 | 0;
+     $31 = ($30 | 0) == 0;
+     if ($31) {
+      SAFE_HEAP_STORE($29 | 0, 0 | 0, 4);
+     }
+    }
+   } while (0);
+   SAFE_HEAP_STORE($$01315 | 0, 1 | 0, 4);
+  }
+ } while (0);
+ $38 = $$01315 + 16 | 0;
+ $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($39 | 0, $1 | 0, 4);
+ $40 = ($1 | 0) != 0;
+ $41 = $40 & 1;
+ $42 = $$01315 + 4 | 0;
+ SAFE_HEAP_STORE($42 | 0, $41 | 0, 4);
+ $43 = $$01315 + 8 | 0;
+ SAFE_HEAP_STORE($43 | 0, 0 | 0, 4);
+ $44 = $$01315 + 12 | 0;
+ SAFE_HEAP_STORE($44 | 0, 0 | 0, 4);
+ $$01316 = $$01315;
+ STACKTOP = sp;
+ return $$01316 | 0;
+}
+
+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, $23 = 0, $24 
= 0, $25 = 0, $3 = 0;
+ var $4 = 0, $5 = 0, $6 = 0, $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 + 80 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(80 | 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;
+ $2 = _gcry_check_version(20629) | 0;
+ $3 = ($2 | 0) != (0 | 0);
+ if ($3) {
+  SAFE_HEAP_STORE($vararg_buffer5 | 0, 0 | 0, 4);
+  $13 = _gcry_control(37, $vararg_buffer5) | 0;
+  $0 = $13;
+  $14 = ($13 | 0) != 0;
+  if ($14) {
+   $15 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+   $16 = $0;
+   $17 = _gcry_strerror($16) | 0;
+   SAFE_HEAP_STORE($vararg_buffer8 | 0, 20782 | 0, 4);
+   $vararg_ptr11 = $vararg_buffer8 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr11 | 0, $17 | 0, 4);
+   _fprintf($15, 20743, $vararg_buffer8) | 0;
+  }
+  SAFE_HEAP_STORE($vararg_buffer12 | 0, 0 | 0, 4);
+  $18 = _gcry_control(44, $vararg_buffer12) | 0;
+  $0 = $18;
+  $19 = ($18 | 0) != 0;
+  if (!$19) {
+   SAFE_HEAP_STORE($vararg_buffer19 | 0, 0 | 0, 4);
+   _gcry_control(38, $vararg_buffer19) | 0;
+   SAFE_HEAP_STORE($vararg_buffer22 | 0, 0 | 0, 4);
+   _gcry_control(48, $vararg_buffer22) | 0;
+   $23 = _time(0 | 0) | 0;
+   $24 = _GNUNET_CRYPTO_random_u32(2, -1) | 0;
+   $25 = $23 ^ $24;
+   _GNUNET_CRYPTO_seed_weak_random($25);
+   STACKTOP = sp;
+   return;
+  }
+  $20 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+  $21 = $0;
+  $22 = _gcry_strerror($21) | 0;
+  SAFE_HEAP_STORE($vararg_buffer15 | 0, 20797 | 0, 4);
+  $vararg_ptr18 = $vararg_buffer15 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr18 | 0, $22 | 0, 4);
+  _fprintf($20, 20743, $vararg_buffer15) | 0;
+  SAFE_HEAP_STORE($vararg_buffer19 | 0, 0 | 0, 4);
+  _gcry_control(38, $vararg_buffer19) | 0;
+  SAFE_HEAP_STORE($vararg_buffer22 | 0, 0 | 0, 4);
+  _gcry_control(48, $vararg_buffer22) | 0;
+  $23 = _time(0 | 0) | 0;
+  $24 = _GNUNET_CRYPTO_random_u32(2, -1) | 0;
+  $25 = $23 ^ $24;
+  _GNUNET_CRYPTO_seed_weak_random($25);
+  STACKTOP = sp;
+  return;
+ }
+ $4 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, 20629 | 0, 4);
+ _fprintf($4, 20635, $vararg_buffer) | 0;
+ $1 = 286;
+ $5 = SAFE_HEAP_LOAD(242 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == -1;
+ if ($6) {
+  $7 = $1;
+  $8 = _GNUNET_get_log_call_status(1, 0, 20701, 20717, $7) | 0;
+  SAFE_HEAP_STORE(242 * 4 | 0, $8 | 0, 4);
+ }
+ $9 = _GNUNET_get_log_skip() | 0;
+ $10 = ($9 | 0) > 0;
+ if ($10) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $11 = SAFE_HEAP_LOAD(242 * 4 | 0, 4, 0) | 0 | 0;
+ $12 = ($11 | 0) != 0;
+ if (!$12) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer1 | 0, 20701 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer1 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, 286 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer1);
+ _GNUNET_abort_();
+}
+
+function _key_from_sexp($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, $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, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $5 = $0;
+ $6 = $1;
+ $7 = $2;
+ $8 = $3;
+ $14 = $6;
+ $15 = $7;
+ $16 = _gcry_sexp_find_token($14, $15, 0) | 0;
+ $9 = $16;
+ $17 = $9;
+ $18 = ($17 | 0) != (0 | 0);
+ if (!$18) {
+  $4 = 1;
+  $75 = $4;
+  STACKTOP = sp;
+  return $75 | 0;
+ }
+ $19 = $9;
+ $20 = _gcry_sexp_cadr($19) | 0;
+ $10 = $20;
+ $21 = $9;
+ _gcry_sexp_release($21);
+ $22 = $10;
+ $9 = $22;
+ $23 = $9;
+ $24 = ($23 | 0) != (0 | 0);
+ if (!$24) {
+  $4 = 2;
+  $75 = $4;
+  STACKTOP = sp;
+  return $75 | 0;
+ }
+ $13 = 0;
+ $25 = $8;
+ $11 = $25;
+ while (1) {
+  $26 = $11;
+  $27 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+  $28 = $27 << 24 >> 24 != 0;
+  $29 = $9;
+  if (!$28) {
+   label = 18;
+   break;
+  }
+  $30 = $11;
+  $31 = _gcry_sexp_find_token($29, $30, 1) | 0;
+  $10 = $31;
+  $32 = $10;
+  $33 = ($32 | 0) != (0 | 0);
+  if (!$33) {
+   label = 8;
+   break;
+  }
+  $47 = $10;
+  $48 = _gcry_sexp_nth_mpi($47, 1, 5) | 0;
+  $49 = $13;
+  $50 = $5;
+  $51 = $50 + ($49 << 2) | 0;
+  SAFE_HEAP_STORE($51 | 0, $48 | 0, 4);
+  $52 = $10;
+  _gcry_sexp_release($52);
+  $53 = $13;
+  $54 = $5;
+  $55 = $54 + ($53 << 2) | 0;
+  $56 = SAFE_HEAP_LOAD($55 | 0, 4, 0) | 0 | 0;
+  $57 = ($56 | 0) != (0 | 0);
+  if (!$57) {
+   label = 13;
+   break;
+  }
+  $71 = $11;
+  $72 = $71 + 1 | 0;
+  $11 = $72;
+  $73 = $13;
+  $74 = $73 + 1 | 0;
+  $13 = $74;
+ }
+ if ((label | 0) == 8) {
+  $12 = 0;
+  while (1) {
+   $34 = $12;
+   $35 = $13;
+   $36 = $34 >>> 0 < $35 >>> 0;
+   if (!$36) {
+    break;
+   }
+   $37 = $12;
+   $38 = $5;
+   $39 = $38 + ($37 << 2) | 0;
+   $40 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+   _gcry_free($40);
+   $41 = $12;
+   $42 = $5;
+   $43 = $42 + ($41 << 2) | 0;
+   SAFE_HEAP_STORE($43 | 0, 0 | 0, 4);
+   $44 = $12;
+   $45 = $44 + 1 | 0;
+   $12 = $45;
+  }
+  $46 = $9;
+  _gcry_sexp_release($46);
+  $4 = 3;
+  $75 = $4;
+  STACKTOP = sp;
+  return $75 | 0;
+ } else if ((label | 0) == 13) {
+  $12 = 0;
+  while (1) {
+   $58 = $12;
+   $59 = $13;
+   $60 = $58 >>> 0 < $59 >>> 0;
+   if (!$60) {
+    break;
+   }
+   $61 = $12;
+   $62 = $5;
+   $63 = $62 + ($61 << 2) | 0;
+   $64 = SAFE_HEAP_LOAD($63 | 0, 4, 0) | 0 | 0;
+   _gcry_free($64);
+   $65 = $12;
+   $66 = $5;
+   $67 = $66 + ($65 << 2) | 0;
+   SAFE_HEAP_STORE($67 | 0, 0 | 0, 4);
+   $68 = $12;
+   $69 = $68 + 1 | 0;
+   $12 = $69;
+  }
+  $70 = $9;
+  _gcry_sexp_release($70);
+  $4 = 4;
+  $75 = $4;
+  STACKTOP = sp;
+  return $75 | 0;
+ } else if ((label | 0) == 18) {
+  _gcry_sexp_release($29);
+  $4 = 0;
+  $75 = $4;
+  STACKTOP = sp;
+  return $75 | 0;
+ }
+ return 0 | 0;
+}
+
+function __gcry_ecc_os2ec($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$032 = 0, $$1 = 0, $$134 = 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, $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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     $14 = $13 + 7 | 0;
+     $15 = $14 >>> 3;
+     SAFE_HEAP_STORE($2 | 0, $15 | 0, 4);
+     $$032 = $11;
+     $$1 = 0;
+     $22 = $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;
+   SAFE_HEAP_STORE($2 | 0, $18 | 0, 4);
+   $19 = __gcry_xmalloc($18) | 0;
+   $20 = __gcry_mpi_print(5, $19, $18, $2, $1) | 0;
+   $21 = ($20 | 0) == 0;
+   if ($21) {
+    $$pre = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    $$032 = $19;
+    $$1 = $19;
+    $22 = $$pre;
+    break;
+   }
+   __gcry_free($19);
+   $$134 = $20;
+   STACKTOP = sp;
+   return $$134 | 0;
+  }
+ } while (0);
+ $23 = ($22 | 0) == 0;
+ if ($23) {
+  __gcry_free($$1);
+  $$134 = 65;
+  STACKTOP = sp;
+  return $$134 | 0;
+ }
+ $24 = SAFE_HEAP_LOAD($$032 >> 0 | 0, 1, 0) | 0 | 0;
+ $25 = $24 << 24 >> 24 == 4;
+ if (!$25) {
+  __gcry_free($$1);
+  $$134 = 69;
+  STACKTOP = sp;
+  return $$134 | 0;
+ }
+ $26 = $22 + -1 | 0;
+ $27 = $26 & 1;
+ $28 = ($27 | 0) == 0;
+ if (!$28) {
+  __gcry_free($$1);
+  $$134 = 65;
+  STACKTOP = sp;
+  return $$134 | 0;
+ }
+ $29 = $26 >>> 1;
+ SAFE_HEAP_STORE($2 | 0, $29 | 0, 4);
+ $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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $39 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_set($38, $39) | 0;
+  $40 = $0 + 4 | 0;
+  $41 = SAFE_HEAP_LOAD($40 | 0, 4, 0) | 0 | 0;
+  $42 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_set($41, $42) | 0;
+  $43 = $0 + 8 | 0;
+  $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_set_ui($44, 1) | 0;
+  $45 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($45);
+  $46 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($46);
+  $$134 = 0;
+  STACKTOP = sp;
+  return $$134 | 0;
+ } else {
+  $37 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($37);
+  $$134 = $35;
+  STACKTOP = sp;
+  return $$134 | 0;
+ }
+ return 0 | 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 = 12784 + ($38 << 2) | 0;
+ $39 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+ $40 = 53142 + $39 | 0;
+ $$1 = $40;
+ return $$1 | 0;
+}
+
+function _key_from_sexp_107($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, $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, $8 
= 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $5 = $0;
+ $6 = $1;
+ $7 = $2;
+ $8 = $3;
+ $14 = $6;
+ $15 = $7;
+ $16 = _gcry_sexp_find_token($14, $15, 0) | 0;
+ $9 = $16;
+ $17 = ($16 | 0) != (0 | 0);
+ if (!$17) {
+  $4 = 1;
+  $73 = $4;
+  STACKTOP = sp;
+  return $73 | 0;
+ }
+ $18 = $9;
+ $19 = _gcry_sexp_cadr($18) | 0;
+ $10 = $19;
+ $20 = $9;
+ _gcry_sexp_release($20);
+ $21 = $10;
+ $9 = $21;
+ $22 = $9;
+ $23 = ($22 | 0) != (0 | 0);
+ if (!$23) {
+  $4 = 2;
+  $73 = $4;
+  STACKTOP = sp;
+  return $73 | 0;
+ }
+ $13 = 0;
+ $24 = $8;
+ $11 = $24;
+ while (1) {
+  $25 = $11;
+  $26 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+  $27 = $26 << 24 >> 24 != 0;
+  $28 = $9;
+  if (!$27) {
+   label = 18;
+   break;
+  }
+  $29 = $11;
+  $30 = _gcry_sexp_find_token($28, $29, 1) | 0;
+  $10 = $30;
+  $31 = ($30 | 0) != (0 | 0);
+  if (!$31) {
+   label = 8;
+   break;
+  }
+  $45 = $10;
+  $46 = _gcry_sexp_nth_mpi($45, 1, 5) | 0;
+  $47 = $13;
+  $48 = $5;
+  $49 = $48 + ($47 << 2) | 0;
+  SAFE_HEAP_STORE($49 | 0, $46 | 0, 4);
+  $50 = $10;
+  _gcry_sexp_release($50);
+  $51 = $13;
+  $52 = $5;
+  $53 = $52 + ($51 << 2) | 0;
+  $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+  $55 = ($54 | 0) != (0 | 0);
+  if (!$55) {
+   label = 13;
+   break;
+  }
+  $69 = $11;
+  $70 = $69 + 1 | 0;
+  $11 = $70;
+  $71 = $13;
+  $72 = $71 + 1 | 0;
+  $13 = $72;
+ }
+ if ((label | 0) == 8) {
+  $12 = 0;
+  while (1) {
+   $32 = $12;
+   $33 = $13;
+   $34 = $32 >>> 0 < $33 >>> 0;
+   if (!$34) {
+    break;
+   }
+   $35 = $12;
+   $36 = $5;
+   $37 = $36 + ($35 << 2) | 0;
+   $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+   _gcry_free($38);
+   $39 = $12;
+   $40 = $5;
+   $41 = $40 + ($39 << 2) | 0;
+   SAFE_HEAP_STORE($41 | 0, 0 | 0, 4);
+   $42 = $12;
+   $43 = $42 + 1 | 0;
+   $12 = $43;
+  }
+  $44 = $9;
+  _gcry_sexp_release($44);
+  $4 = 3;
+  $73 = $4;
+  STACKTOP = sp;
+  return $73 | 0;
+ } else if ((label | 0) == 13) {
+  $12 = 0;
+  while (1) {
+   $56 = $12;
+   $57 = $13;
+   $58 = $56 >>> 0 < $57 >>> 0;
+   if (!$58) {
+    break;
+   }
+   $59 = $12;
+   $60 = $5;
+   $61 = $60 + ($59 << 2) | 0;
+   $62 = SAFE_HEAP_LOAD($61 | 0, 4, 0) | 0 | 0;
+   _gcry_free($62);
+   $63 = $12;
+   $64 = $5;
+   $65 = $64 + ($63 << 2) | 0;
+   SAFE_HEAP_STORE($65 | 0, 0 | 0, 4);
+   $66 = $12;
+   $67 = $66 + 1 | 0;
+   $12 = $67;
+  }
+  $68 = $9;
+  _gcry_sexp_release($68);
+  $4 = 4;
+  $73 = $4;
+  STACKTOP = sp;
+  return $73 | 0;
+ } else if ((label | 0) == 18) {
+  _gcry_sexp_release($28);
+  $4 = 0;
+  $73 = $4;
+  STACKTOP = sp;
+  return $73 | 0;
+ }
+ return 0 | 0;
+}
+
+function _rsa_full_domain_hash($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_buffer2 = 0, $vararg_ptr1 = 0, $vararg_ptr5 = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $5 = sp + 40 | 0;
+ $6 = sp + 36 | 0;
+ $7 = sp + 32 | 0;
+ $3 = $0;
+ $4 = $1;
+ $12 = $3;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = _key_from_sexp_107($6, $13, 40693, 39075) | 0;
+ $15 = 0 == ($14 | 0);
+ if (!$15) {
+  $10 = 689;
+  $16 = SAFE_HEAP_LOAD(262 * 4 | 0, 4, 0) | 0 | 0;
+  $17 = ($16 | 0) == -1;
+  if ($17) {
+   $18 = $10;
+   $19 = _GNUNET_get_log_call_status(1, 0, 20893, 21400, $18) | 0;
+   SAFE_HEAP_STORE(262 * 4 | 0, $19 | 0, 4);
+  }
+  $20 = _GNUNET_get_log_skip() | 0;
+  $21 = ($20 | 0) > 0;
+  if ($21) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $22 = SAFE_HEAP_LOAD(262 * 4 | 0, 4, 0) | 0 | 0;
+  $23 = ($22 | 0) != 0;
+  if (!$23) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 689 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+  _GNUNET_abort_();
+ }
+ $24 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $25 = _gcry_mpi_get_flag($24, 2) | 0;
+ $26 = 0 == ($25 | 0);
+ if ($26) {
+  $35 = $3;
+  $36 = _GNUNET_CRYPTO_rsa_public_key_encode($35, $7) | 0;
+  $8 = $36;
+  $37 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $38 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  $39 = $8;
+  $40 = $4;
+  _GNUNET_CRYPTO_kdf_mod_mpi($5, $37, $38, $39, $40, 64, 21421);
+  $41 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  _GNUNET_xfree_($41, 20893, 704);
+  $42 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  $43 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $44 = _rsa_gcd_validate($42, $43) | 0;
+  $9 = $44;
+  $45 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($45);
+  $46 = $9;
+  $47 = ($46 | 0) != 0;
+  $48 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  if ($47) {
+   $2 = $48;
+   $49 = $2;
+   STACKTOP = sp;
+   return $49 | 0;
+  } else {
+   _gcry_mpi_release($48);
+   $2 = 0;
+   $49 = $2;
+   STACKTOP = sp;
+   return $49 | 0;
+  }
+ }
+ $11 = 691;
+ $27 = SAFE_HEAP_LOAD(263 * 4 | 0, 4, 0) | 0 | 0;
+ $28 = ($27 | 0) == -1;
+ if ($28) {
+  $29 = $11;
+  $30 = _GNUNET_get_log_call_status(1, 0, 20893, 21400, $29) | 0;
+  SAFE_HEAP_STORE(263 * 4 | 0, $30 | 0, 4);
+ }
+ $31 = _GNUNET_get_log_skip() | 0;
+ $32 = ($31 | 0) > 0;
+ if ($32) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $33 = SAFE_HEAP_LOAD(263 * 4 | 0, 4, 0) | 0 | 0;
+ $34 = ($33 | 0) != 0;
+ if (!$34) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer2 | 0, 20893 | 0, 4);
+ $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr5 | 0, 691 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+ _GNUNET_abort_();
+ return 0 | 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$phi25Z2D = 0, $$pre21 = 
0, $$pre24 = 0, $$val$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, $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, $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 = $2 >>> 0 < $4 >>> 0;
+ if ($6) {
+  $$0 = 200;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $7 = $0 + 56 | 0;
+ $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = $8 & 4;
+ $10 = $9 << 24 >> 24 == 0;
+ if (!$10) {
+  $$0 = 156;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $11 = $0 + 144 | 0;
+ $12 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+ $13 = $12 & 2;
+ $14 = $13 << 24 >> 24 == 0;
+ if (!$14) {
+  $$0 = 139;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $15 = $8 & 2;
+ $16 = $15 << 24 >> 24 == 0;
+ do {
+  if ($16) {
+   $17 = $5;
+   $18 = $17;
+   SAFE_HEAP_STORE($18 | 0, 0 | 0, 4);
+   $19 = $17 + 4 | 0;
+   $20 = $19;
+   SAFE_HEAP_STORE($20 | 0, 0 | 0, 4);
+   $21 = __gcry_cipher_poly1305_setiv($0, $5, 8) | 0;
+   $22 = ($21 | 0) == 0;
+   if ($22) {
+    $$pre = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+    $24 = $$pre;
+    break;
+   } else {
+    $$0 = $21;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+  } else {
+   $24 = $12;
+  }
+ } while (0);
+ $23 = $24 & 1;
+ $25 = $23 << 24 >> 24 == 0;
+ if ($25) {
+  $26 = $0 + 128 | 0;
+  $$val$i = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+  $27 = $$val$i & 15;
+  $28 = ($27 | 0) == 0;
+  if ($28) {
+   $32 = $24;
+  } else {
+   $29 = $0 + 148 | 0;
+   $30 = 16 - $27 | 0;
+   __gcry_poly1305_update($29, 71811, $30);
+   $$pre21 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+   $32 = $$pre21;
+  }
+  $31 = $32 | 1;
+  SAFE_HEAP_STORE($11 >> 0 | 0, $31 | 0, 1);
+  $33 = $0 + 136 | 0;
+  SAFE_HEAP_STORE($33 | 0, 0 | 0, 4);
+  $34 = $0 + 140 | 0;
+  SAFE_HEAP_STORE($34 | 0, 0 | 0, 4);
+  $$pre$phi25Z2D = $33;
+  $36 = 0;
+  $43 = $31;
+ } else {
+  $$phi$trans$insert = $0 + 136 | 0;
+  $$pre24 = SAFE_HEAP_LOAD($$phi$trans$insert | 0, 4, 0) | 0 | 0;
+  $$pre$phi25Z2D = $$phi$trans$insert;
+  $36 = $$pre24;
+  $43 = $24;
+ }
+ $35 = $36 + $4 | 0;
+ SAFE_HEAP_STORE($$pre$phi25Z2D | 0, $35 | 0, 4);
+ $37 = $35 >>> 0 < $4 >>> 0;
+ if ($37) {
+  $38 = $0 + 140 | 0;
+  $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+  $40 = $39 + 1 | 0;
+  SAFE_HEAP_STORE($38 | 0, $40 | 0, 4);
+  $41 = ($40 | 0) == 0;
+  if ($41) {
+   $42 = $43 | 2;
+   SAFE_HEAP_STORE($11 >> 0 | 0, $42 | 0, 1);
+   $$0 = 139;
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ }
+ $44 = $0 + 12 | 0;
+ $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+ $46 = $45 + 44 | 0;
+ $47 = SAFE_HEAP_LOAD($46 | 0, 4, 0) | 0 | 0;
+ $48 = $0 + 496 | 0;
+ FUNCTION_TABLE_viiii[(SAFE_FT_MASK($47 | 0, 63 | 0) | 0) & 63]($48, $1, $3, 
$4);
+ $49 = $0 + 148 | 0;
+ __gcry_poly1305_update($49, $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$phi25Z2D = 0, $$pre21 = 
0, $$pre24 = 0, $$val$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, $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, $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 = $2 >>> 0 < $4 >>> 0;
+ if ($6) {
+  $$0 = 200;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $7 = $0 + 56 | 0;
+ $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = $8 & 4;
+ $10 = $9 << 24 >> 24 == 0;
+ if (!$10) {
+  $$0 = 156;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $11 = $0 + 144 | 0;
+ $12 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+ $13 = $12 & 2;
+ $14 = $13 << 24 >> 24 == 0;
+ if (!$14) {
+  $$0 = 139;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $15 = $8 & 2;
+ $16 = $15 << 24 >> 24 == 0;
+ do {
+  if ($16) {
+   $17 = $5;
+   $18 = $17;
+   SAFE_HEAP_STORE($18 | 0, 0 | 0, 4);
+   $19 = $17 + 4 | 0;
+   $20 = $19;
+   SAFE_HEAP_STORE($20 | 0, 0 | 0, 4);
+   $21 = __gcry_cipher_poly1305_setiv($0, $5, 8) | 0;
+   $22 = ($21 | 0) == 0;
+   if ($22) {
+    $$pre = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+    $24 = $$pre;
+    break;
+   } else {
+    $$0 = $21;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+  } else {
+   $24 = $12;
+  }
+ } while (0);
+ $23 = $24 & 1;
+ $25 = $23 << 24 >> 24 == 0;
+ if ($25) {
+  $26 = $0 + 128 | 0;
+  $$val$i = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+  $27 = $$val$i & 15;
+  $28 = ($27 | 0) == 0;
+  if ($28) {
+   $32 = $24;
+  } else {
+   $29 = $0 + 148 | 0;
+   $30 = 16 - $27 | 0;
+   __gcry_poly1305_update($29, 71811, $30);
+   $$pre21 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+   $32 = $$pre21;
+  }
+  $31 = $32 | 1;
+  SAFE_HEAP_STORE($11 >> 0 | 0, $31 | 0, 1);
+  $33 = $0 + 136 | 0;
+  SAFE_HEAP_STORE($33 | 0, 0 | 0, 4);
+  $34 = $0 + 140 | 0;
+  SAFE_HEAP_STORE($34 | 0, 0 | 0, 4);
+  $$pre$phi25Z2D = $33;
+  $36 = 0;
+  $43 = $31;
+ } else {
+  $$phi$trans$insert = $0 + 136 | 0;
+  $$pre24 = SAFE_HEAP_LOAD($$phi$trans$insert | 0, 4, 0) | 0 | 0;
+  $$pre$phi25Z2D = $$phi$trans$insert;
+  $36 = $$pre24;
+  $43 = $24;
+ }
+ $35 = $36 + $4 | 0;
+ SAFE_HEAP_STORE($$pre$phi25Z2D | 0, $35 | 0, 4);
+ $37 = $35 >>> 0 < $4 >>> 0;
+ if ($37) {
+  $38 = $0 + 140 | 0;
+  $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+  $40 = $39 + 1 | 0;
+  SAFE_HEAP_STORE($38 | 0, $40 | 0, 4);
+  $41 = ($40 | 0) == 0;
+  if ($41) {
+   $42 = $43 | 2;
+   SAFE_HEAP_STORE($11 >> 0 | 0, $42 | 0, 1);
+   $$0 = 139;
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ }
+ $44 = $0 + 148 | 0;
+ __gcry_poly1305_update($44, $3, $4);
+ $45 = $0 + 12 | 0;
+ $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+ $47 = $46 + 48 | 0;
+ $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+ $49 = $0 + 496 | 0;
+ FUNCTION_TABLE_viiii[(SAFE_FT_MASK($48 | 0, 63 | 0) | 0) & 63]($49, $1, $3, 
$4);
+ $$0 = 0;
+ STACKTOP = sp;
+ 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_barrett_free($2);
+ $3 = $0 + 16 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($4);
+ $5 = $0 + 20 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($6);
+ $7 = $0 + 24 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($8);
+ $9 = $0 + 28 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = ($10 | 0) == (0 | 0);
+ if (!$11) {
+  $12 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($12);
+  SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+  $13 = $10 + 4 | 0;
+  $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($14);
+  SAFE_HEAP_STORE($13 | 0, 0 | 0, 4);
+  $15 = $10 + 8 | 0;
+  $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($16);
+  SAFE_HEAP_STORE($15 | 0, 0 | 0, 4);
+  __gcry_free($10);
+ }
+ $17 = $0 + 32 | 0;
+ $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($18);
+ $19 = $0 + 36 | 0;
+ $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($20);
+ $21 = $0 + 40 | 0;
+ $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+ $23 = ($22 | 0) == (0 | 0);
+ if (!$23) {
+  $24 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($24);
+  SAFE_HEAP_STORE($22 | 0, 0 | 0, 4);
+  $25 = $22 + 4 | 0;
+  $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($26);
+  SAFE_HEAP_STORE($25 | 0, 0 | 0, 4);
+  $27 = $22 + 8 | 0;
+  $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($28);
+  SAFE_HEAP_STORE($27 | 0, 0 | 0, 4);
+  __gcry_free($22);
+ }
+ $29 = $0 + 44 | 0;
+ $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($30);
+ $31 = $0 + 56 | 0;
+ $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($32);
+ $33 = $0 + 64 | 0;
+ $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($34);
+ $35 = $0 + 68 | 0;
+ $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($36);
+ $37 = $0 + 72 | 0;
+ $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($38);
+ $39 = $0 + 76 | 0;
+ $40 = SAFE_HEAP_LOAD($39 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($40);
+ $41 = $0 + 80 | 0;
+ $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($42);
+ $43 = $0 + 84 | 0;
+ $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($44);
+ $45 = $0 + 88 | 0;
+ $46 = SAFE_HEAP_LOAD($45 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($46);
+ $47 = $0 + 92 | 0;
+ $48 = SAFE_HEAP_LOAD($47 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($48);
+ $49 = $0 + 96 | 0;
+ $50 = SAFE_HEAP_LOAD($49 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($50);
+ $51 = $0 + 100 | 0;
+ $52 = SAFE_HEAP_LOAD($51 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($52);
+ $53 = $0 + 104 | 0;
+ $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($54);
+ return;
+}
+
+function _x931_reseed($0) {
+ $0 = $0 | 0;
+ var $$0$lcssa15$i = 0, $$035$lcssa14$i = 0, $$0355$i = 0, $$06$i = 0, $$1$i = 
0, $$136$i = 0, $$3$ph$i = 0, $$338$ph$i = 0, $$3383$i = 0, $$34$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, $43 = 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 = SAFE_HEAP_LOAD(17672 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 0;
+ if ($2) {
+  __gcry_assert_failed(51340, 51065, 658, 51556);
+ }
+ $3 = SAFE_HEAP_LOAD(17674 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == ($0 | 0);
+ $5 = $0 + 17 | 0;
+ if ($4) {
+  $6 = SAFE_HEAP_LOAD(17675 * 4 | 0, 4, 0) | 0 | 0;
+  _get_random($5, 16, $6);
+  $7 = $0 + 8 | 0;
+  $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+  $9 = $8 | 1;
+  SAFE_HEAP_STORE($7 >> 0 | 0, $9 | 0, 1);
+  $10 = _getpid() | 0;
+  $11 = $0 + 64 | 0;
+  SAFE_HEAP_STORE($11 | 0, $10 | 0, 4);
+  return;
+ }
+ $12 = _get_entropy() | 0;
+ dest = $5;
+ src = $12;
+ stop = dest + 16 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  dest = dest + 1 | 0;
+  src = src + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $13 = $12;
+ $14 = $13 & 7;
+ $15 = ($14 | 0) == 0;
+ if ($15) {
+  $$0$lcssa15$i = $12;
+  $$035$lcssa14$i = 16;
+  label = 8;
+ } else {
+  $$0355$i = 16;
+  $$06$i = $12;
+  while (1) {
+   SAFE_HEAP_STORE($$06$i >> 0 | 0, 0 | 0, 1);
+   $16 = $$06$i + 1 | 0;
+   $17 = $$0355$i + -1 | 0;
+   $18 = $16;
+   $19 = $18 & 7;
+   $20 = ($19 | 0) != 0;
+   $21 = ($17 | 0) != 0;
+   $22 = $21 & $20;
+   if ($22) {
+    $$0355$i = $17;
+    $$06$i = $16;
+   } else {
+    break;
+   }
+  }
+  $23 = $17 >>> 0 < 8;
+  if ($23) {
+   $$3$ph$i = $16;
+   $$338$ph$i = $17;
+  } else {
+   $$0$lcssa15$i = $16;
+   $$035$lcssa14$i = $17;
+   label = 8;
+  }
+ }
+ if ((label | 0) == 8) {
+  $24 = $$035$lcssa14$i + -8 | 0;
+  $25 = $24 & -8;
+  $$1$i = $$0$lcssa15$i;
+  $$136$i = $$035$lcssa14$i;
+  while (1) {
+   $26 = $$1$i;
+   $27 = $26;
+   SAFE_HEAP_STORE($27 | 0, 0 | 0, 4);
+   $28 = $26 + 4 | 0;
+   $29 = $28;
+   SAFE_HEAP_STORE($29 | 0, 0 | 0, 4);
+   $30 = $$136$i + -8 | 0;
+   $31 = $$1$i + 8 | 0;
+   $32 = $30 >>> 0 > 7;
+   if ($32) {
+    $$1$i = $31;
+    $$136$i = $30;
+   } else {
+    break;
+   }
+  }
+  $33 = $25 + 8 | 0;
+  $34 = $24 - $25 | 0;
+  $scevgep$i = $$0$lcssa15$i + $33 | 0;
+  $$3$ph$i = $scevgep$i;
+  $$338$ph$i = $34;
+ }
+ $35 = ($$338$ph$i | 0) == 0;
+ if (!$35) {
+  $$3383$i = $$338$ph$i;
+  $$34$i = $$3$ph$i;
+  while (1) {
+   SAFE_HEAP_STORE($$34$i >> 0 | 0, 0 | 0, 1);
+   $36 = $$34$i + 1 | 0;
+   $37 = $$3383$i + -1 | 0;
+   $38 = ($37 | 0) == 0;
+   if ($38) {
+    break;
+   } else {
+    $$3383$i = $37;
+    $$34$i = $36;
+   }
+  }
+ }
+ __gcry_free($12);
+ $39 = $0 + 8 | 0;
+ $40 = SAFE_HEAP_LOAD($39 >> 0 | 0, 1, 0) | 0 | 0;
+ $41 = $40 | 1;
+ SAFE_HEAP_STORE($39 >> 0 | 0, $41 | 0, 1);
+ $42 = _getpid() | 0;
+ $43 = $0 + 64 | 0;
+ SAFE_HEAP_STORE($43 | 0, $42 | 0, 4);
+ 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, $$3$ph$i = 0, $$339$ph$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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ if ($7) {
+  $10 = ($9 | 0) == (0 | 0);
+  if (!$10) {
+   $11 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 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) {
+      SAFE_HEAP_STORE($$045$i >> 0 | 0, 0 | 0, 1);
+      $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) {
+     $$3$ph$i = $$0$lcssa$i;
+     $$339$ph$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;
+      SAFE_HEAP_STORE($28 | 0, 0 | 0, 4);
+      $29 = $27 + 4 | 0;
+      $30 = $29;
+      SAFE_HEAP_STORE($30 | 0, 0 | 0, 4);
+      $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;
+     $$3$ph$i = $scevgep$i;
+     $$339$ph$i = $35;
+    }
+    $36 = ($$339$ph$i | 0) == 0;
+    if (!$36) {
+     $$33942$i = $$339$ph$i;
+     $$343$i = $$3$ph$i;
+     while (1) {
+      SAFE_HEAP_STORE($$343$i >> 0 | 0, 0 | 0, 1);
+      $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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $41 = $40 & -3864;
+ $42 = ($41 | 0) == 0;
+ if (!$42) {
+  __gcry_log_bug(46093, $vararg_buffer);
+ }
+ __gcry_free($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 + 8 | 0;
+ $vararg_buffer = sp;
+ $1 = sp + 272 | 0;
+ $2 = sp + 16 | 0;
+ $3 = SAFE_HEAP_LOAD(17606 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == 0;
+ if (!$4) {
+  $5 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+  $6 = ($5 | 0) == 1;
+  if ($6) {
+   __gcry_assert_failed(23272, 23278, 114, 23285);
+  } else {
+   _fips_new_state(5);
+   __gcry_fips_noreturn();
+  }
+ }
+ SAFE_HEAP_STORE(17606 * 4 | 0, 1 | 0, 4);
+ $7 = ($0 | 0) == 0;
+ L7 : do {
+  if ($7) {
+   $10 = _access(23335, 0) | 0;
+   $11 = ($10 | 0) == 0;
+   if ($11) {
+    $12 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+    $13 = ($12 | 0) == 0;
+    if ($13) {
+     break;
+    }
+    __gcry_assert_failed(23312, 23278, 132, 23285);
+   }
+   $14 = _fopen(23360, 23390) | 0;
+   $15 = ($14 | 0) == (0 | 0);
+   L13 : do {
+    if ($15) {
+     $22 = ___errno_location() | 0;
+     $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+     switch ($23 | 0) {
+     case 2:
+     case 13:
+      {
+       break L13;
+       break;
+      }
+     default:
+      {}
+     }
+     $24 = _access(23392, 0) | 0;
+     $25 = ($24 | 0) == 0;
+     if ($25) {
+      $26 = _strerror($23) | 0;
+      SAFE_HEAP_STORE($vararg_buffer | 0, 23360 | 0, 4);
+      $vararg_ptr1 = $vararg_buffer + 4 | 0;
+      SAFE_HEAP_STORE($vararg_ptr1 | 0, $26 | 0, 4);
+      __gcry_log_info(23406, $vararg_buffer);
+      _abort();
+     }
+    } 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 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+       $21 = ($20 | 0) == 0;
+       if ($21) {
+        break L7;
+       } else {
+        __gcry_assert_failed(23312, 23278, 151, 23285);
+       }
+      }
+     }
+     _fclose($14) | 0;
+    }
+   } while (0);
+   SAFE_HEAP_STORE(17607 * 4 | 0, 1 | 0, 4);
+   STACKTOP = sp;
+   return;
+  } else {
+   $8 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+   $9 = ($8 | 0) == 0;
+   if (!$9) {
+    __gcry_assert_failed(23312, 23278, 121, 23285);
+   }
+  }
+ } while (0);
+ $27 = _gpgrt_lock_init(1312) | 0;
+ $28 = ($27 | 0) == 0;
+ if (!$28) {
+  $29 = _gpg_strerror($27) | 0;
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, $29 | 0, 4);
+  __gcry_log_info(23450, $vararg_buffer2);
+  _abort();
+ }
+ $30 = _fopen(23335, 23390) | 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) {
+    SAFE_HEAP_STORE(17608 * 4 | 0, 1 | 0, 4);
+   }
+  }
+  _fclose($30) | 0;
+ }
+ _fips_new_state(1);
+ STACKTOP = sp;
+ return;
+}
+
+function __gcry_sexp_release($0) {
+ $0 = $0 | 0;
+ var $$0$be = 0, $$0$copyload = 0, $$0$lcssa = 0, $$048$lcssa = 0, $$04859 = 
0, $$049$lcssa = 0, $$04958 = 0, $$062 = 0, $$1 = 0, $$150 = 0, $$3$ph = 0, 
$$352$ph = 0, $$35256 = 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 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 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 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($6 
+ 1 >> 0 | 0, 1, 1) | 0) << 8;
+     $8 = $$062 + 3 | 0;
+     $9 = $$0$copyload & 65535;
+     $10 = $8 + $9 | 0;
+     $$0$be = $10;
+    } else {
+     $$0$be = $6;
+    }
+    $11 = SAFE_HEAP_LOAD($$0$be >> 0 | 0, 1, 0) | 0 | 0;
+    $12 = $11 << 24 >> 24 == 0;
+    if ($12) {
+     $$0$lcssa = $$0$be;
+     break;
+    } else {
+     $$062 = $$0$be;
+     $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;
+   $$04958 = $15;
+   while (1) {
+    SAFE_HEAP_STORE($$04859 >> 0 | 0, 0 | 0, 1);
+    $20 = $$04859 + 1 | 0;
+    $21 = $$04958 + -1 | 0;
+    $22 = $20;
+    $23 = $22 & 7;
+    $24 = ($23 | 0) != 0;
+    $25 = ($21 | 0) != 0;
+    $26 = $25 & $24;
+    if ($26) {
+     $$04859 = $20;
+     $$04958 = $21;
+    } else {
+     $$048$lcssa = $20;
+     $$049$lcssa = $21;
+     break;
+    }
+   }
+  } else {
+   $$048$lcssa = $0;
+   $$049$lcssa = $15;
+  }
+  $27 = $$049$lcssa >>> 0 < 8;
+  if ($27) {
+   $$3$ph = $$048$lcssa;
+   $$352$ph = $$049$lcssa;
+  } else {
+   $28 = $$049$lcssa + -8 | 0;
+   $29 = $28 & -8;
+   $30 = $29 + 8 | 0;
+   $$1 = $$048$lcssa;
+   $$150 = $$049$lcssa;
+   while (1) {
+    $31 = $$1;
+    $32 = $31;
+    SAFE_HEAP_STORE($32 | 0, 0 | 0, 4);
+    $33 = $31 + 4 | 0;
+    $34 = $33;
+    SAFE_HEAP_STORE($34 | 0, 0 | 0, 4);
+    $35 = $$150 + -8 | 0;
+    $36 = $$1 + 8 | 0;
+    $37 = $35 >>> 0 > 7;
+    if ($37) {
+     $$1 = $36;
+     $$150 = $35;
+    } else {
+     break;
+    }
+   }
+   $38 = $28 - $29 | 0;
+   $scevgep = $$048$lcssa + $30 | 0;
+   $$3$ph = $scevgep;
+   $$352$ph = $38;
+  }
+  $39 = ($$352$ph | 0) == 0;
+  if (!$39) {
+   $$35256 = $$352$ph;
+   $$357 = $$3$ph;
+   while (1) {
+    SAFE_HEAP_STORE($$357 >> 0 | 0, 0 | 0, 1);
+    $40 = $$357 + 1 | 0;
+    $41 = $$35256 + -1 | 0;
+    $42 = ($41 | 0) == 0;
+    if ($42) {
+     break;
+    } else {
+     $$35256 = $41;
+     $$357 = $40;
+    }
+   }
+  }
+ }
+ __gcry_free($0);
+ 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 = SAFE_HEAP_LOAD(17623 * 4 | 0, 4, 0) | 0 | 0;
+   $8 = ($7 | 0) == 0;
+   if (!$8) {
+    __gcry_rngcsprng_initialize(1);
+    break;
+   }
+   $9 = SAFE_HEAP_LOAD(17624 * 4 | 0, 4, 0) | 0 | 0;
+   $10 = ($9 | 0) == 0;
+   if (!$10) {
+    __gcry_rngfips_initialize(1);
+    break;
+   }
+   $11 = SAFE_HEAP_LOAD(17625 * 4 | 0, 4, 0) | 0 | 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(12172) | 0;
+ $14 = ($13 | 0) == 0;
+ if (!$14) {
+  $15 = _gpg_strerror($13) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $15 | 0, 4);
+  __gcry_log_fatal(45241, $vararg_buffer);
+ }
+ $16 = _getpid() | 0;
+ SAFE_HEAP_STORE($2 | 0, $16 | 0, 4);
+ $17 = SAFE_HEAP_LOAD(17626 * 4 | 0, 4, 0) | 0 | 0;
+ $18 = ($17 | 0) == 0;
+ if ($18) {
+  $19 = _time(0 | 0) | 0;
+  $$0$$0$22 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  $$0$$0$23 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE(17627 * 4 | 0, $$0$$0$23 | 0, 4);
+  SAFE_HEAP_STORE(17628 * 4 | 0, $$0$$0$22 | 0, 4);
+  SAFE_HEAP_STORE(70516 | 0, $19 | 0, 4);
+  _do_randomize(70532, 8, 0);
+  SAFE_HEAP_STORE(17626 * 4 | 0, 1 | 0, 4);
+ } else {
+  $20 = SAFE_HEAP_LOAD(17627 * 4 | 0, 4, 0) | 0 | 0;
+  $$0$$0$24 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  $21 = ($20 | 0) == ($$0$$0$24 | 0);
+  if (!$21) {
+   _do_randomize(70532, 8, 0);
+   $$0$$0$25 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+   SAFE_HEAP_STORE(17627 * 4 | 0, $$0$$0$25 | 0, 4);
+  }
+ }
+ $22 = ($1 | 0) == 0;
+ if (!$22) {
+  $$03537 = $0;
+  $$038 = $1;
+  while (1) {
+   __gcry_sha1_hash_buffer(70512, 70512, 28);
+   $23 = $$038 >>> 0 > 20;
+   $24 = $23 ? 20 : $$038;
+   _memcpy($$03537 | 0, 70512 | 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(12172) | 0;
+ $29 = ($28 | 0) == 0;
+ if ($29) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $30 = _gpg_strerror($28) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $30 | 0, 4);
+  __gcry_log_fatal(45286, $vararg_buffer1);
+ }
+}
+
+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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $$034 = $7;
+ } else {
+  $$034 = $2;
+ }
+ $8 = ($3 | 0) == (0 | 0);
+ if ($8) {
+  $9 = $1 + 44 | 0;
+  $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = ($14 | 0) == (0 | 0);
+ if ($15) {
+  $$1 = 0;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $16 = $1 + 20 | 0;
+ $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+ $18 = ($17 | 0) == (0 | 0);
+ if ($18) {
+  $$1 = 0;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $19 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $20 = ($19 | 0) == 2;
+ if ($20) {
+  $21 = $1 + 24 | 0;
+  $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+  $23 = ($22 | 0) == (0 | 0);
+  if ($23) {
+   $$1 = 0;
+   STACKTOP = sp;
+   return $$1 | 0;
+  }
+ }
+ $24 = $1 + 4 | 0;
+ $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+ $26 = ($25 | 0) == 1;
+ if ($26) {
+  $27 = $1 + 8 | 0;
+  $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set_buffer($33, $34, 32, 0);
+   $35 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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 ___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, $$55 = 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;
+ 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, $5 = 0, $6 = 0;
+ var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $5 = $0 + 16 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) == 0;
+ L1 : do {
+  if ($7) {
+   $8 = $0 + 12 | 0;
+   $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+   $10 = $9 >>> 0 < $4 >>> 0;
+   do {
+    if ($10) {
+     $12 = ($1 | 0) == 0;
+     if (!$12) {
+      $13 = ($2 | 0) == (0 | 0);
+      if ($13) {
+       SAFE_HEAP_STORE($5 | 0, 1 | 0, 4);
+       $$3 = 0;
+       break L1;
+      } else {
+       $14 = $0 + 8 | 0;
+       SAFE_HEAP_STORE($14 | 0, $2 | 0, 4);
+       SAFE_HEAP_STORE($8 | 0, 1024 | 0, 4);
+       $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) {
+      SAFE_HEAP_STORE($5 | 0, 1 | 0, 4);
+      $$3 = 0;
+      break L1;
+     }
+     $20 = _malloc($$) | 0;
+     SAFE_HEAP_STORE($18 | 0, $20 | 0, 4);
+     $21 = ($20 | 0) == (0 | 0);
+     $22 = $20;
+     if ($21) {
+      _free($18);
+      SAFE_HEAP_STORE($5 | 0, 1 | 0, 4);
+      $$3 = 0;
+      break L1;
+     }
+     $23 = $18 + 4 | 0;
+     SAFE_HEAP_STORE($23 | 0, 0 | 0, 4);
+     $24 = $0 + 4 | 0;
+     $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+     $26 = ($25 | 0) == (0 | 0);
+     if (!$26) {
+      $27 = $25 + 4 | 0;
+      SAFE_HEAP_STORE($27 | 0, $18 | 0, 4);
+     }
+     $28 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+     $29 = ($28 | 0) == (0 | 0);
+     if ($29) {
+      SAFE_HEAP_STORE($0 | 0, $18 | 0, 4);
+     }
+     SAFE_HEAP_STORE($24 | 0, $18 | 0, 4);
+     $30 = $0 + 8 | 0;
+     SAFE_HEAP_STORE($30 | 0, $22 | 0, 4);
+     SAFE_HEAP_STORE($8 | 0, $$ | 0, 4);
+     $$pre$phiZ2D = $30;
+     $32 = $22;
+     $38 = $20;
+     $40 = $$;
+    } else {
+     $$phi$trans$insert = $0 + 8 | 0;
+     $$pre = SAFE_HEAP_LOAD($$phi$trans$insert | 0, 4, 0) | 0 | 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;
+   $$55 = $34 ? 0 : $35;
+   $36 = $$55 + $4 | 0;
+   $37 = $38 + $36 | 0;
+   SAFE_HEAP_STORE($$pre$phiZ2D | 0, $37 | 0, 4);
+   $39 = $40 - $36 | 0;
+   SAFE_HEAP_STORE($8 | 0, $39 | 0, 4);
+   $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 _GNUNET_CRYPTO_rsa_signature_decode($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, $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 + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $7 = sp + 24 | 0;
+ $3 = $0;
+ $4 = $1;
+ $10 = _GNUNET_xmalloc_(4, 20893, 985) | 0;
+ $5 = $10;
+ $11 = $5;
+ $12 = $3;
+ $13 = $4;
+ $14 = _gcry_sexp_new($11, $12, $13, 0) | 0;
+ $15 = 0 != ($14 | 0);
+ if ($15) {
+  $8 = 992;
+  $16 = SAFE_HEAP_LOAD(265 * 4 | 0, 4, 0) | 0 | 0;
+  $17 = ($16 | 0) == -1;
+  if ($17) {
+   $18 = $8;
+   $19 = _GNUNET_get_log_call_status(2, 0, 20893, 21478, $18) | 0;
+   SAFE_HEAP_STORE(265 * 4 | 0, $19 | 0, 4);
+  }
+  $20 = _GNUNET_get_log_skip() | 0;
+  $21 = ($20 | 0) > 0;
+  if ($21) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $22 = SAFE_HEAP_LOAD(265 * 4 | 0, 4, 0) | 0 | 0;
+   $23 = ($22 | 0) != 0;
+   if ($23) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, 992 | 0, 4);
+    _GNUNET_log_nocheck(66, 21097, $vararg_buffer);
+   }
+  }
+  $24 = $5;
+  _GNUNET_xfree_($24, 20893, 993);
+  $2 = 0;
+  $48 = $2;
+  STACKTOP = sp;
+  return $48 | 0;
+ }
+ $25 = $5;
+ $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+ $27 = _key_from_sexp_107($7, $26, 37529, 39073) | 0;
+ $6 = $27;
+ $28 = $6;
+ $29 = 0 != ($28 | 0);
+ if ($29) {
+  $30 = $5;
+  $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+  $32 = _key_from_sexp_107($7, $31, 40693, 39073) | 0;
+  $6 = $32;
+ }
+ $33 = $6;
+ $34 = 0 != ($33 | 0);
+ if (!$34) {
+  $46 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($46);
+  $47 = $5;
+  $2 = $47;
+  $48 = $2;
+  STACKTOP = sp;
+  return $48 | 0;
+ }
+ $9 = 1003;
+ $35 = SAFE_HEAP_LOAD(266 * 4 | 0, 4, 0) | 0 | 0;
+ $36 = ($35 | 0) == -1;
+ if ($36) {
+  $37 = $9;
+  $38 = _GNUNET_get_log_call_status(2, 0, 20893, 21478, $37) | 0;
+  SAFE_HEAP_STORE(266 * 4 | 0, $38 | 0, 4);
+ }
+ $39 = _GNUNET_get_log_skip() | 0;
+ $40 = ($39 | 0) > 0;
+ if ($40) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $41 = SAFE_HEAP_LOAD(266 * 4 | 0, 4, 0) | 0 | 0;
+  $42 = ($41 | 0) != 0;
+  if ($42) {
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, 20893 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, 1003 | 0, 4);
+   _GNUNET_log_nocheck(66, 21097, $vararg_buffer2);
+  }
+ }
+ $43 = $5;
+ $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($44);
+ $45 = $5;
+ _GNUNET_xfree_($45, 20893, 1005);
+ $2 = 0;
+ $48 = $2;
+ STACKTOP = sp;
+ return $48 | 0;
+}
+
+function _GNUNET_CRYPTO_rsa_public_key_decode($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, $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 + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $6 = sp + 28 | 0;
+ $3 = $0;
+ $4 = $1;
+ $10 = _GNUNET_xmalloc_(4, 20893, 367) | 0;
+ $5 = $10;
+ $11 = $5;
+ $12 = $3;
+ $13 = $4;
+ $14 = _gcry_sexp_new($11, $12, $13, 0) | 0;
+ $15 = 0 != ($14 | 0);
+ if ($15) {
+  $8 = 374;
+  $16 = SAFE_HEAP_LOAD(253 * 4 | 0, 4, 0) | 0 | 0;
+  $17 = ($16 | 0) == -1;
+  if ($17) {
+   $18 = $8;
+   $19 = _GNUNET_get_log_call_status(2, 0, 20893, 21211, $18) | 0;
+   SAFE_HEAP_STORE(253 * 4 | 0, $19 | 0, 4);
+  }
+  $20 = _GNUNET_get_log_skip() | 0;
+  $21 = ($20 | 0) > 0;
+  if ($21) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $22 = SAFE_HEAP_LOAD(253 * 4 | 0, 4, 0) | 0 | 0;
+   $23 = ($22 | 0) != 0;
+   if ($23) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, 374 | 0, 4);
+    _GNUNET_log_nocheck(66, 21097, $vararg_buffer);
+   }
+  }
+  $24 = $5;
+  _GNUNET_xfree_($24, 20893, 375);
+  $2 = 0;
+  $48 = $2;
+  STACKTOP = sp;
+  return $48 | 0;
+ }
+ $25 = $5;
+ $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+ $27 = _key_from_sexp_107($6, $26, 37679, 39075) | 0;
+ $7 = $27;
+ $28 = $7;
+ $29 = 0 != ($28 | 0);
+ if ($29) {
+  $30 = $5;
+  $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+  $32 = _key_from_sexp_107($6, $31, 40693, 39075) | 0;
+  $7 = $32;
+ }
+ $33 = $7;
+ $34 = 0 != ($33 | 0);
+ if (!$34) {
+  $46 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($46);
+  $47 = $5;
+  $2 = $47;
+  $48 = $2;
+  STACKTOP = sp;
+  return $48 | 0;
+ }
+ $9 = 385;
+ $35 = SAFE_HEAP_LOAD(254 * 4 | 0, 4, 0) | 0 | 0;
+ $36 = ($35 | 0) == -1;
+ if ($36) {
+  $37 = $9;
+  $38 = _GNUNET_get_log_call_status(1, 0, 20893, 21211, $37) | 0;
+  SAFE_HEAP_STORE(254 * 4 | 0, $38 | 0, 4);
+ }
+ $39 = _GNUNET_get_log_skip() | 0;
+ $40 = ($39 | 0) > 0;
+ if ($40) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $41 = SAFE_HEAP_LOAD(254 * 4 | 0, 4, 0) | 0 | 0;
+  $42 = ($41 | 0) != 0;
+  if ($42) {
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, 20893 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, 385 | 0, 4);
+   _GNUNET_log_nocheck(1, 61295, $vararg_buffer2);
+  }
+ }
+ $43 = $5;
+ $44 = SAFE_HEAP_LOAD($43 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($44);
+ $45 = $5;
+ _GNUNET_xfree_($45, 20893, 387);
+ $2 = 0;
+ $48 = $2;
+ STACKTOP = sp;
+ return $48 | 0;
+}
+
+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 $$06577 = 0, $$06675 = 0, $$067 = 0, $$07076 = 0, $$07076$pn = 0, $$169 = 
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, 
$5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, $exitcond82 = 0, 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;
+  {}
+  SAFE_HEAP_STORE($5 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($5 + 4 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($5 + 8 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($5 + 12 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($5 + 16 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($5 + 20 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($5 + 24 | 0, 0 | 0 | 0, 4);
+  __gcry_mpih_mul_karatsuba_case($0, $1, $2, $3, $4, $5);
+  __gcry_mpih_release_karatsuba_ctx($5);
+  $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+  $$169 = $30;
+  STACKTOP = sp;
+  return $$169 | 0;
+ }
+ $8 = ($4 | 0) == 0;
+ if ($8) {
+  $$169 = 0;
+  STACKTOP = sp;
+  return $$169 | 0;
+ }
+ $9 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $10 = $9 >>> 0 < 2;
+ do {
+  if ($10) {
+   $11 = ($9 | 0) == 1;
+   $12 = ($2 | 0) > 0;
+   if ($11) {
+    if ($12) {
+     $$06577 = 0;
+    } else {
+     $$067 = 0;
+     break;
+    }
+    while (1) {
+     $14 = $1 + ($$06577 << 2) | 0;
+     $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+     $16 = $0 + ($$06577 << 2) | 0;
+     SAFE_HEAP_STORE($16 | 0, $15 | 0, 4);
+     $17 = $$06577 + 1 | 0;
+     $exitcond82 = ($17 | 0) == ($2 | 0);
+     if ($exitcond82) {
+      $$067 = 0;
+      break;
+     } else {
+      $$06577 = $17;
+     }
+    }
+   } else {
+    if (!$12) {
+     $$067 = 0;
+     break;
+    }
+    $13 = $2 << 2;
+    _memset($0 | 0, 0, $13 | 0) | 0;
+    $$067 = 0;
+    break;
+   }
+  } else {
+   $18 = __gcry_mpih_mul_1($0, $1, $2, $9) | 0;
+   $$067 = $18;
+  }
+ } while (0);
+ SAFE_HEAP_STORE($6 | 0, $$067 | 0, 4);
+ $19 = ($4 | 0) > 1;
+ if ($19) {
+  $$06675 = 1;
+  $$07076$pn = $0;
+ } else {
+  $$169 = $$067;
+  STACKTOP = sp;
+  return $$169 | 0;
+ }
+ while (1) {
+  $$07076 = $$07076$pn + 4 | 0;
+  $20 = $3 + ($$06675 << 2) | 0;
+  $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+  $22 = $21 >>> 0 < 2;
+  if ($22) {
+   $23 = ($21 | 0) == 1;
+   if ($23) {
+    $24 = __gcry_mpih_add_n($$07076, $$07076, $1, $2) | 0;
+    $$2 = $24;
+   } else {
+    $$2 = 0;
+   }
+  } else {
+   $25 = __gcry_mpih_addmul_1($$07076, $1, $2, $21) | 0;
+   $$2 = $25;
+  }
+  $26 = $$07076 + ($2 << 2) | 0;
+  SAFE_HEAP_STORE($26 | 0, $$2 | 0, 4);
+  $27 = $$06675 + 1 | 0;
+  $exitcond = ($27 | 0) == ($4 | 0);
+  if ($exitcond) {
+   $$169 = $$2;
+   break;
+  } else {
+   $$06675 = $27;
+   $$07076$pn = $$07076;
+  }
+ }
+ STACKTOP = sp;
+ return $$169 | 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, $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, $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 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($$0$in | 0, $19 | 0, 4);
+ $20 = $10 + -15 | 0;
+ $21 = $$0$in + 8 | 0;
+ SAFE_HEAP_STORE($21 | 0, $20 | 0, 4);
+ $22 = $$0$in + 4 | 0;
+ SAFE_HEAP_STORE($22 | 0, 0 | 0, 4);
+ $23 = $19 + 4 | 0;
+ $24 = $23 + 4 | 0;
+ {}
+ SAFE_HEAP_STORE($24 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($24 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($24 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($24 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($24 + 16 | 0, 0 | 0 | 0, 4);
+ $25 = $4 ? 378630161 : 285677921;
+ SAFE_HEAP_STORE($19 | 0, $25 | 0, 4);
+ $26 = $19 + 4 | 0;
+ SAFE_HEAP_STORE($26 | 0, $11 | 0, 4);
+ $27 = $19 + 12 | 0;
+ $28 = $2 & 255;
+ $29 = $28 & 1;
+ $30 = $2 >>> 6;
+ $31 = $30 & 255;
+ $32 = $31 & 4;
+ $33 = $32 | $29;
+ SAFE_HEAP_STORE($27 >> 0 | 0, $33 | 0, 1);
+ if (!$6) {
+  switch ($1 | 0) {
+  case 10:
+  case 9:
+   {
+    $34 = $19 + 24 | 0;
+    SAFE_HEAP_STORE($34 | 0, 128 | 0, 4);
+    $37 = 256;
+    break;
+   }
+  case 311:
+  case 308:
+   {
+    $35 = $19 + 24 | 0;
+    SAFE_HEAP_STORE($35 | 0, 32 | 0, 4);
+    $37 = 64;
+    break;
+   }
+  default:
+   {
+    $36 = $19 + 24 | 0;
+    SAFE_HEAP_STORE($36 | 0, 64 | 0, 4);
+    $37 = 128;
+   }
+  }
+  $38 = __gcry_malloc_secure($37) | 0;
+  $39 = $19 + 20 | 0;
+  SAFE_HEAP_STORE($39 | 0, $38 | 0, 4);
+  $40 = ($38 | 0) == (0 | 0);
+  if ($40) {
+   $41 = ___errno_location() | 0;
+   $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+   $43 = _gpg_err_code_from_errno($42) | 0;
+   _md_close($$0$in);
+   $44 = ($43 | 0) == 0;
+   if (!$44) {
+    $$262 = $43;
+    return $$262 | 0;
+   }
+  }
+ }
+ __gcry_fast_random_poll();
+ $45 = ($1 | 0) == 0;
+ if (!$45) {
+  $$0$idx$val = SAFE_HEAP_LOAD($$0$in | 0, 4, 0) | 0 | 0;
+  $46 = _md_enable($$0$idx$val, $1) | 0;
+  $47 = ($46 | 0) == 0;
+  if (!$47) {
+   _md_close($$0$in);
+   $$262 = $46;
+   return $$262 | 0;
+  }
+ }
+ SAFE_HEAP_STORE($0 | 0, $$0$in | 0, 4);
+ $$262 = 0;
+ return $$262 | 0;
+}
+
+function _es_flush($0) {
+ $0 = $0 | 0;
+ var $$ = 0, $$04257 = 0, $$1 = 0, $$2 = 0, $$446 = 0, $$448 = 0, $$pre49 = 0, 
$$pre50 = 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, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 
0, sp = 0;
+ sp = STACKTOP;
+ $1 = $0 + 36 | 0;
+ $2 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = $2 + 1108 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $6 = $5 & 65536;
+ $7 = ($6 | 0) == 0;
+ if ($7) {
+  ___assert_fail(53101 | 0, 53123 | 0, 1654, 53133 | 0);
+ }
+ $8 = $0 + 16 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == 0;
+ if ($10) {
+  $$446 = 0;
+  return $$446 | 0;
+ }
+ $11 = ($4 | 0) == (0 | 0);
+ do {
+  if ($11) {
+   $$448 = 95;
+   $38 = $2;
+  } else {
+   $12 = $0 + 4 | 0;
+   $13 = ($9 | 0) > 0;
+   L9 : do {
+    if ($13) {
+     $$04257 = 0;
+     $19 = $9;
+     while (1) {
+      $14 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+      $15 = $14 + 1084 | 0;
+      $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+      $17 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+      $18 = $17 + $$04257 | 0;
+      $20 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($4 | 0, 127 | 0) | 0) & 
127]($16, $18, $19) | 0;
+      $21 = ($20 | 0) == -1;
+      $$ = $21 ? 0 : $20;
+      $22 = $$ + $$04257 | 0;
+      $$pre49 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+      if ($21) {
+       $$1 = $22;
+       $$2 = -1;
+       $28 = $$pre49;
+       break L9;
+      }
+      $23 = $$pre49 - $22 | 0;
+      $24 = ($23 | 0) > 0;
+      if ($24) {
+       $$04257 = $22;
+       $19 = $23;
+      } else {
+       $$1 = $22;
+       $$2 = 0;
+       $28 = $$pre49;
+       break;
+      }
+     }
+    } else {
+     $$1 = 0;
+     $$2 = 0;
+     $28 = $9;
+    }
+   } while (0);
+   $25 = $0 + 20 | 0;
+   $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+   $27 = $26 + $$1 | 0;
+   SAFE_HEAP_STORE($25 | 0, $27 | 0, 4);
+   $29 = ($28 | 0) == ($$1 | 0);
+   if ($29) {
+    $30 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $31 = $30 + 1100 | 0;
+    $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+    $33 = $32 + $28 | 0;
+    SAFE_HEAP_STORE($31 | 0, $33 | 0, 4);
+    SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE($25 | 0, 0 | 0, 4);
+    $34 = $30 + 1084 | 0;
+    $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($4 | 0, 127 | 0) | 0) & 127]($35, 0, 0) 
| 0;
+   }
+   $36 = ($$2 | 0) == 0;
+   if ($36) {
+    $$446 = 0;
+    return $$446 | 0;
+   } else {
+    $$pre50 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $$448 = -1;
+    $38 = $$pre50;
+    break;
+   }
+  }
+ } while (0);
+ $37 = $38 + 1136 | 0;
+ $39 = SAFE_HEAP_LOAD($37 >> 0 | 0, 1, 0) | 0 | 0;
+ $40 = $39 | 1;
+ SAFE_HEAP_STORE($37 >> 0 | 0, $40 | 0, 1);
+ $$446 = $$448;
+ return $$446 | 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, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $not$ = 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;
+    SAFE_HEAP_STORE($0 >> 0 | 0, $5 | 0, 1);
+    $$0 = 1;
+    break;
+   }
+   $6 = _pthread_self() | 0;
+   $7 = $6 + 188 | 0;
+   $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+   $not$ = ($9 | 0) == (0 | 0);
+   if ($not$) {
+    $10 = $1 & -128;
+    $11 = ($10 | 0) == 57216;
+    if ($11) {
+     $13 = $1 & 255;
+     SAFE_HEAP_STORE($0 >> 0 | 0, $13 | 0, 1);
+     $$0 = 1;
+     break;
+    } else {
+     $12 = ___errno_location() | 0;
+     SAFE_HEAP_STORE($12 | 0, 84 | 0, 4);
+     $$0 = -1;
+     break;
+    }
+   }
+   $14 = $1 >>> 0 < 2048;
+   if ($14) {
+    $15 = $1 >>> 6;
+    $16 = $15 | 192;
+    $17 = $16 & 255;
+    $18 = $0 + 1 | 0;
+    SAFE_HEAP_STORE($0 >> 0 | 0, $17 | 0, 1);
+    $19 = $1 & 63;
+    $20 = $19 | 128;
+    $21 = $20 & 255;
+    SAFE_HEAP_STORE($18 >> 0 | 0, $21 | 0, 1);
+    $$0 = 2;
+    break;
+   }
+   $22 = $1 >>> 0 < 55296;
+   $23 = $1 & -8192;
+   $24 = ($23 | 0) == 57344;
+   $or$cond = $22 | $24;
+   if ($or$cond) {
+    $25 = $1 >>> 12;
+    $26 = $25 | 224;
+    $27 = $26 & 255;
+    $28 = $0 + 1 | 0;
+    SAFE_HEAP_STORE($0 >> 0 | 0, $27 | 0, 1);
+    $29 = $1 >>> 6;
+    $30 = $29 & 63;
+    $31 = $30 | 128;
+    $32 = $31 & 255;
+    $33 = $0 + 2 | 0;
+    SAFE_HEAP_STORE($28 >> 0 | 0, $32 | 0, 1);
+    $34 = $1 & 63;
+    $35 = $34 | 128;
+    $36 = $35 & 255;
+    SAFE_HEAP_STORE($33 >> 0 | 0, $36 | 0, 1);
+    $$0 = 3;
+    break;
+   }
+   $37 = $1 + -65536 | 0;
+   $38 = $37 >>> 0 < 1048576;
+   if ($38) {
+    $39 = $1 >>> 18;
+    $40 = $39 | 240;
+    $41 = $40 & 255;
+    $42 = $0 + 1 | 0;
+    SAFE_HEAP_STORE($0 >> 0 | 0, $41 | 0, 1);
+    $43 = $1 >>> 12;
+    $44 = $43 & 63;
+    $45 = $44 | 128;
+    $46 = $45 & 255;
+    $47 = $0 + 2 | 0;
+    SAFE_HEAP_STORE($42 >> 0 | 0, $46 | 0, 1);
+    $48 = $1 >>> 6;
+    $49 = $48 & 63;
+    $50 = $49 | 128;
+    $51 = $50 & 255;
+    $52 = $0 + 3 | 0;
+    SAFE_HEAP_STORE($47 >> 0 | 0, $51 | 0, 1);
+    $53 = $1 & 63;
+    $54 = $53 | 128;
+    $55 = $54 & 255;
+    SAFE_HEAP_STORE($52 >> 0 | 0, $55 | 0, 1);
+    $$0 = 4;
+    break;
+   } else {
+    $56 = ___errno_location() | 0;
+    SAFE_HEAP_STORE($56 | 0, 84 | 0, 4);
+    $$0 = -1;
+    break;
+   }
+  }
+ } while (0);
+ return $$0 | 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 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+   $27 = ($26 | 0) == (0 | 0);
+   if (!$27) {
+    $28 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+    FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($26 | 0, 127 | 0) | 0) & 127]($28, 
37212, 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 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+ $32 = ($31 | 0) == (0 | 0);
+ if (!$32) {
+  $33 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($31 | 0, 127 | 0) | 0) & 127]($33, 
37212, 10, 0, 0);
+ }
+ $34 = ($4 | 0) == (0 | 0);
+ if ($34) {
+  __gcry_mpi_free($12);
+ } else {
+  SAFE_HEAP_STORE($4 | 0, $12 | 0, 4);
+ }
+ $35 = ($5 | 0) == (0 | 0);
+ if ($35) {
+  __gcry_mpi_free($13);
+  $$0 = $16;
+  return $$0 | 0;
+ } else {
+  SAFE_HEAP_STORE($5 | 0, $13 | 0, 4);
+  $$0 = $16;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+function _vfprintf($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$0 = 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, $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, $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 + 120 | 0;
+ $4 = sp + 80 | 0;
+ $5 = sp;
+ $6 = sp + 136 | 0;
+ dest = $4;
+ stop = dest + 40 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $vacopy_currentptr = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($3 | 0, $vacopy_currentptr | 0, 4);
+ $7 = _printf_core(0, $1, $3, $5, $4) | 0;
+ $8 = ($7 | 0) < 0;
+ if ($8) {
+  $$0 = -1;
+ } else {
+  $9 = $0 + 76 | 0;
+  $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $11 = ($10 | 0) > -1;
+  if ($11) {
+   $12 = ___lockfile($0) | 0;
+   $39 = $12;
+  } else {
+   $39 = 0;
+  }
+  $13 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $14 = $13 & 32;
+  $15 = $0 + 74 | 0;
+  $16 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+  $17 = $16 << 24 >> 24 < 1;
+  if ($17) {
+   $18 = $13 & -33;
+   SAFE_HEAP_STORE($0 | 0, $18 | 0, 4);
+  }
+  $19 = $0 + 48 | 0;
+  $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+  $21 = ($20 | 0) == 0;
+  if ($21) {
+   $23 = $0 + 44 | 0;
+   $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+   SAFE_HEAP_STORE($23 | 0, $6 | 0, 4);
+   $25 = $0 + 28 | 0;
+   SAFE_HEAP_STORE($25 | 0, $6 | 0, 4);
+   $26 = $0 + 20 | 0;
+   SAFE_HEAP_STORE($26 | 0, $6 | 0, 4);
+   SAFE_HEAP_STORE($19 | 0, 80 | 0, 4);
+   $27 = $6 + 80 | 0;
+   $28 = $0 + 16 | 0;
+   SAFE_HEAP_STORE($28 | 0, $27 | 0, 4);
+   $29 = _printf_core($0, $1, $3, $5, $4) | 0;
+   $30 = ($24 | 0) == (0 | 0);
+   if ($30) {
+    $$1 = $29;
+   } else {
+    $31 = $0 + 36 | 0;
+    $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+    FUNCTION_TABLE_iiii[(SAFE_FT_MASK($32 | 0, 127 | 0) | 0) & 127]($0, 0, 0) 
| 0;
+    $33 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+    $34 = ($33 | 0) == (0 | 0);
+    $$ = $34 ? -1 : $29;
+    SAFE_HEAP_STORE($23 | 0, $24 | 0, 4);
+    SAFE_HEAP_STORE($19 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE($28 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE($25 | 0, 0 | 0, 4);
+    SAFE_HEAP_STORE($26 | 0, 0 | 0, 4);
+    $$1 = $$;
+   }
+  } else {
+   $22 = _printf_core($0, $1, $3, $5, $4) | 0;
+   $$1 = $22;
+  }
+  $35 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $36 = $35 & 32;
+  $37 = ($36 | 0) == 0;
+  $$1$ = $37 ? $$1 : -1;
+  $38 = $35 | $14;
+  SAFE_HEAP_STORE($0 | 0, $38 | 0, 4);
+  $40 = ($39 | 0) == 0;
+  if (!$40) {
+   ___unlockfile($0);
+  }
+  $$0 = $$1$;
+ }
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _GNUNET_CRYPTO_rsa_verify($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, 
$45 = 0, $46 = 0, $47 = 0;
+ var $5 = 0, $6 = 0, $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 + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $4 = $0;
+ $5 = $1;
+ $6 = $2;
+ $12 = $6;
+ $13 = $4;
+ $14 = _rsa_full_domain_hash($12, $13) | 0;
+ $8 = $14;
+ $15 = $8;
+ $16 = (0 | 0) == ($15 | 0);
+ if ($16) {
+  $10 = 1146;
+  $17 = SAFE_HEAP_LOAD(272 * 4 | 0, 4, 0) | 0 | 0;
+  $18 = ($17 | 0) == -1;
+  if ($18) {
+   $19 = $10;
+   $20 = _GNUNET_get_log_call_status(2, 0, 20893, 21562, $19) | 0;
+   SAFE_HEAP_STORE(272 * 4 | 0, $20 | 0, 4);
+  }
+  $21 = _GNUNET_get_log_skip() | 0;
+  $22 = ($21 | 0) > 0;
+  if ($22) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $23 = SAFE_HEAP_LOAD(272 * 4 | 0, 4, 0) | 0 | 0;
+   $24 = ($23 | 0) != 0;
+   if ($24) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+    $vararg_ptr1 = $vararg_buffer + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr1 | 0, 1146 | 0, 4);
+    _GNUNET_log_nocheck(66, 21097, $vararg_buffer);
+   }
+  }
+  $3 = 0;
+  $47 = $3;
+  STACKTOP = sp;
+  return $47 | 0;
+ }
+ $25 = $8;
+ $26 = _mpi_to_sexp($25) | 0;
+ $7 = $26;
+ $27 = $8;
+ _gcry_mpi_release($27);
+ $28 = $5;
+ $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+ $30 = $7;
+ $31 = $6;
+ $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ $33 = _gcry_pk_verify($29, $30, $32) | 0;
+ $9 = $33;
+ $34 = $7;
+ _gcry_sexp_release($34);
+ $35 = $9;
+ $36 = 0 != ($35 | 0);
+ if (!$36) {
+  $3 = 1;
+  $47 = $3;
+  STACKTOP = sp;
+  return $47 | 0;
+ }
+ $11 = 1169;
+ $37 = SAFE_HEAP_LOAD(273 * 4 | 0, 4, 0) | 0 | 0;
+ $38 = ($37 | 0) == -1;
+ if ($38) {
+  $39 = $11;
+  $40 = _GNUNET_get_log_call_status(2, 20980, 20893, 21562, $39) | 0;
+  SAFE_HEAP_STORE(273 * 4 | 0, $40 | 0, 4);
+ }
+ $41 = _GNUNET_get_log_skip() | 0;
+ $42 = ($41 | 0) > 0;
+ if ($42) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $43 = SAFE_HEAP_LOAD(273 * 4 | 0, 4, 0) | 0 | 0;
+  $44 = ($43 | 0) != 0;
+  if ($44) {
+   $45 = $9;
+   $46 = _gcry_strerror($45) | 0;
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, 20893 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, 1168 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, $46 | 0, 4);
+   _GNUNET_log_from_nocheck(2, 20980, 21587, $vararg_buffer2);
+  }
+ }
+ $3 = -1;
+ $47 = $3;
+ STACKTOP = sp;
+ return $47 | 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(52573, 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) {
+     SAFE_HEAP_STORE($2 | 0, 5 | 0, 4);
+     SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+     __gcry_random_progress(52589, 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 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    $13 = _strerror($12) | 0;
+    SAFE_HEAP_STORE($vararg_buffer5 | 0, $0 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer5 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, $13 | 0, 4);
+    __gcry_log_fatal(52605, $vararg_buffer5);
+   }
+  } else {
+   $4 = _open($0, 0, $vararg_buffer) | 0;
+   $5 = ($4 | 0) == -1;
+   if ($5) {
+    $11 = ___errno_location() | 0;
+    $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+    $13 = _strerror($12) | 0;
+    SAFE_HEAP_STORE($vararg_buffer5 | 0, $0 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer5 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, $13 | 0, 4);
+    __gcry_log_fatal(52605, $vararg_buffer5);
+   } else {
+    $$lcssa1016 = $4;
+   }
+  }
+ } while (0);
+ SAFE_HEAP_STORE($vararg_buffer8 | 0, 0 | 0, 4);
+ $14 = _fcntl($$lcssa1016, 1, $vararg_buffer8) | 0;
+ $15 = ($14 | 0) < 0;
+ if (!$15) {
+  $16 = $14 | 1;
+  SAFE_HEAP_STORE($vararg_buffer11 | 0, $16 | 0, 4);
+  $17 = _fcntl($$lcssa1016, 2, $vararg_buffer11) | 0;
+  $18 = ($17 | 0) == 0;
+  if ($18) {
+   STACKTOP = sp;
+   return $$lcssa1016 | 0;
+  }
+ }
+ $19 = ___errno_location() | 0;
+ $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+ $21 = _strerror($20) | 0;
+ SAFE_HEAP_STORE($vararg_buffer14 | 0, $$lcssa1016 | 0, 4);
+ $vararg_ptr17 = $vararg_buffer14 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr17 | 0, $21 | 0, 4);
+ __gcry_log_error(52624, $vararg_buffer14);
+ STACKTOP = sp;
+ return $$lcssa1016 | 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, $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, $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);
+ $1 = sp + 24 | 0;
+ $2 = sp + 16 | 0;
+ $3 = sp + 8 | 0;
+ $4 = sp;
+ $5 = _GNUNET_TIME_absolute_get() | 0;
+ $6 = tempRet0;
+ $7 = $4;
+ $8 = $7;
+ SAFE_HEAP_STORE($8 | 0, $5 | 0, 4);
+ $9 = $7 + 4 | 0;
+ $10 = $9;
+ SAFE_HEAP_STORE($10 | 0, $6 | 0, 4);
+ {}
+ SAFE_HEAP_STORE($2 | 0, SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 4 | 0, SAFE_HEAP_LOAD($4 + 4 | 0, 4, 0) | 0 | 0 | 0, 4);
+ $11 = $0;
+ $12 = $11;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = $11 + 4 | 0;
+ $15 = $14;
+ $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $17 = $2;
+ $18 = $17;
+ $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+ $20 = $17 + 4 | 0;
+ $21 = $20;
+ $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+ $23 = $16 >>> 0 > $22 >>> 0;
+ $24 = $13 >>> 0 > $19 >>> 0;
+ $25 = ($16 | 0) == ($22 | 0);
+ $26 = $25 & $24;
+ $27 = $23 | $26;
+ if ($27) {
+  $28 = _GNUNET_TIME_relative_get_zero_() | 0;
+  $29 = tempRet0;
+  $30 = $1;
+  $31 = $30;
+  SAFE_HEAP_STORE($31 | 0, $28 | 0, 4);
+  $32 = $30 + 4 | 0;
+  $33 = $32;
+  SAFE_HEAP_STORE($33 | 0, $29 | 0, 4);
+  $52 = $1;
+  $53 = $52;
+  $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+  $55 = $52 + 4 | 0;
+  $56 = $55;
+  $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+  tempRet0 = $57;
+  STACKTOP = sp;
+  return $54 | 0;
+ } else {
+  $34 = $2;
+  $35 = $34;
+  $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+  $37 = $34 + 4 | 0;
+  $38 = $37;
+  $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+  $40 = $0;
+  $41 = $40;
+  $42 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+  $43 = $40 + 4 | 0;
+  $44 = $43;
+  $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+  $46 = _i64Subtract($36 | 0, $39 | 0, $42 | 0, $45 | 0) | 0;
+  $47 = tempRet0;
+  $48 = $3;
+  $49 = $48;
+  SAFE_HEAP_STORE($49 | 0, $46 | 0, 4);
+  $50 = $48 + 4 | 0;
+  $51 = $50;
+  SAFE_HEAP_STORE($51 | 0, $47 | 0, 4);
+  {}
+  SAFE_HEAP_STORE($1 | 0, SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($1 + 4 | 0, SAFE_HEAP_LOAD($3 + 4 | 0, 4, 0) | 0 | 0 | 0, 4);
+  $52 = $1;
+  $53 = $52;
+  $54 = SAFE_HEAP_LOAD($53 | 0, 4, 0) | 0 | 0;
+  $55 = $52 + 4 | 0;
+  $56 = $55;
+  $57 = SAFE_HEAP_LOAD($56 | 0, 4, 0) | 0 | 0;
+  tempRet0 = $57;
+  STACKTOP = sp;
+  return $54 | 0;
+ }
+ return 0 | 0;
+}
+
+function _rsa_check_secret_key($0) {
+ $0 = $0 | 0;
+ var $$ = 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, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 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;
+ {}
+ SAFE_HEAP_STORE($1 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 20 | 0, 0 | 0 | 0, 4);
+ $2 = $1 + 4 | 0;
+ $3 = $1 + 8 | 0;
+ $4 = $1 + 12 | 0;
+ $5 = $1 + 16 | 0;
+ $6 = $1 + 20 | 0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $1 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $2 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $3 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $4 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer + 16 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $5 | 0, 4);
+ $vararg_ptr5 = $vararg_buffer + 20 | 0;
+ SAFE_HEAP_STORE($vararg_ptr5 | 0, $6 | 0, 4);
+ $vararg_ptr6 = $vararg_buffer + 24 | 0;
+ SAFE_HEAP_STORE($vararg_ptr6 | 0, 0 | 0, 4);
+ $7 = __gcry_sexp_extract_param($0, 0, 39064, $vararg_buffer) | 0;
+ $8 = ($7 | 0) == 0;
+ if ($8) {
+  $9 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $10 = $9 + 4 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $12 = $11 << 1;
+  $13 = __gcry_mpi_alloc($12) | 0;
+  $14 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $15 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_mul($13, $14, $15);
+  $16 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  $17 = __gcry_mpi_cmp($13, $16) | 0;
+  __gcry_mpi_free($13);
+  $18 = ($17 | 0) == 0;
+  $$ = $18 ? 0 : 7;
+  $$0 = $$;
+ } else {
+  $$0 = $7;
+ }
+ $19 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($19);
+ $20 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($20);
+ $21 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($21);
+ $22 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($22);
+ $23 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_release($23);
+ $24 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($vararg_buffer7 | 0, $27 | 0, 4);
+ __gcry_log_debug(41480, $vararg_buffer7);
+ STACKTOP = sp;
+ return $$0 | 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;
+ 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)) {
+  while (dest & 3) {
+   if ((num | 0) == 0) return ret | 0;
+   SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 1, 0) | 0 | 0, 1);
+   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)) {
+   SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 4, 0) | 0 | 0, 4);
+   SAFE_HEAP_STORE(dest + 4 | 0, SAFE_HEAP_LOAD(src + 4 | 0, 4, 0) | 0 | 0, 4);
+   SAFE_HEAP_STORE(dest + 8 | 0, SAFE_HEAP_LOAD(src + 8 | 0, 4, 0) | 0 | 0, 4);
+   SAFE_HEAP_STORE(dest + 12 | 0, SAFE_HEAP_LOAD(src + 12 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 16 | 0, SAFE_HEAP_LOAD(src + 16 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 20 | 0, SAFE_HEAP_LOAD(src + 20 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 24 | 0, SAFE_HEAP_LOAD(src + 24 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 28 | 0, SAFE_HEAP_LOAD(src + 28 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 32 | 0, SAFE_HEAP_LOAD(src + 32 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 36 | 0, SAFE_HEAP_LOAD(src + 36 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 40 | 0, SAFE_HEAP_LOAD(src + 40 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 44 | 0, SAFE_HEAP_LOAD(src + 44 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 48 | 0, SAFE_HEAP_LOAD(src + 48 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 52 | 0, SAFE_HEAP_LOAD(src + 52 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 56 | 0, SAFE_HEAP_LOAD(src + 56 | 0, 4, 0) | 0 | 0, 
4);
+   SAFE_HEAP_STORE(dest + 60 | 0, SAFE_HEAP_LOAD(src + 60 | 0, 4, 0) | 0 | 0, 
4);
+   dest = dest + 64 | 0;
+   src = src + 64 | 0;
+  }
+  while ((dest | 0) < (aligned_dest_end | 0)) {
+   SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 4, 0) | 0 | 0, 4);
+   dest = dest + 4 | 0;
+   src = src + 4 | 0;
+  }
+ } else {
+  aligned_dest_end = dest_end - 4 | 0;
+  while ((dest | 0) < (aligned_dest_end | 0)) {
+   SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 1, 0) | 0 | 0, 1);
+   SAFE_HEAP_STORE(dest + 1 | 0, SAFE_HEAP_LOAD(src + 1 | 0, 1, 0) | 0 | 0, 1);
+   SAFE_HEAP_STORE(dest + 2 | 0, SAFE_HEAP_LOAD(src + 2 | 0, 1, 0) | 0 | 0, 1);
+   SAFE_HEAP_STORE(dest + 3 | 0, SAFE_HEAP_LOAD(src + 3 | 0, 1, 0) | 0 | 0, 1);
+   dest = dest + 4 | 0;
+   src = src + 4 | 0;
+  }
+ }
+ while ((dest | 0) < (dest_end | 0)) {
+  SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 1, 0) | 0 | 0, 1);
+  dest = dest + 1 | 0;
+  src = src + 1 | 0;
+ }
+ return ret | 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, $$029 = 0, $$037 = 0, $$1$ph = 0, $$128$ph = 
0, $$12834 = 0, $$135 = 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 = SAFE_HEAP_LOAD($$02642 >> 0 | 0, 1, 0) | 0 | 0;
+     SAFE_HEAP_STORE($$02741 >> 0 | 0, $9 | 0, 1);
+     $10 = $9 << 24 >> 24 == 0;
+     if ($10) {
+      $$029 = $$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 = SAFE_HEAP_LOAD($$026$lcssa | 0, 4, 0) | 0 | 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;
+     SAFE_HEAP_STORE($$02536 | 0, $24 | 0, 4);
+     $25 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 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$ph = $$0$lcssa;
+   $$128$ph = $$025$lcssa;
+   label = 8;
+  } else {
+   $$1$ph = $1;
+   $$128$ph = $0;
+   label = 8;
+  }
+ } while (0);
+ if ((label | 0) == 8) {
+  $31 = SAFE_HEAP_LOAD($$1$ph >> 0 | 0, 1, 0) | 0 | 0;
+  SAFE_HEAP_STORE($$128$ph >> 0 | 0, $31 | 0, 1);
+  $32 = $31 << 24 >> 24 == 0;
+  if ($32) {
+   $$029 = $$128$ph;
+  } else {
+   $$12834 = $$128$ph;
+   $$135 = $$1$ph;
+   while (1) {
+    $33 = $$135 + 1 | 0;
+    $34 = $$12834 + 1 | 0;
+    $35 = SAFE_HEAP_LOAD($33 >> 0 | 0, 1, 0) | 0 | 0;
+    SAFE_HEAP_STORE($34 >> 0 | 0, $35 | 0, 1);
+    $36 = $35 << 24 >> 24 == 0;
+    if ($36) {
+     $$029 = $34;
+     break;
+    } else {
+     $$12834 = $34;
+     $$135 = $33;
+    }
+   }
+  }
+ }
+ return $$029 | 0;
+}
+
+function __gcry_cipher_setiv($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$i = 0, $$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;
+ var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 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 + 48 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $11 = $10 + 60 | 0;
+   $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+   $13 = ($12 | 0) == (0 | 0);
+   if (!$13) {
+    $14 = $0 + 496 | 0;
+    FUNCTION_TABLE_viii[(SAFE_FT_MASK($12 | 0, 127 | 0) | 0) & 127]($14, $1, 
$2);
+    $$0 = 0;
+    STACKTOP = sp;
+    return $$0 | 0;
+   }
+   $15 = $0 + 64 | 0;
+   $16 = $10 + 20 | 0;
+   $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+   _memset($15 | 0, 0, $17 | 0) | 0;
+   $18 = ($1 | 0) == (0 | 0);
+   if ($18) {
+    $26 = $0 + 56 | 0;
+    $27 = SAFE_HEAP_LOAD($26 >> 0 | 0, 1, 0) | 0 | 0;
+    $28 = $27 & -3;
+    SAFE_HEAP_STORE($26 >> 0 | 0, $28 | 0, 1);
+   } else {
+    $19 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+    $20 = ($19 | 0) == ($2 | 0);
+    if ($20) {
+     $21 = $2;
+    } else {
+     SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+     $vararg_ptr1 = $vararg_buffer + 4 | 0;
+     SAFE_HEAP_STORE($vararg_ptr1 | 0, $19 | 0, 4);
+     __gcry_log_info(24351, $vararg_buffer);
+     __gcry_fips_signal_error(24224, 682, 24394, 0, 24407);
+     $$pre$i = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+     $$phi$trans$insert$i = $$pre$i + 20 | 0;
+     $$pre1$i = SAFE_HEAP_LOAD($$phi$trans$insert$i | 0, 4, 0) | 0 | 0;
+     $21 = $$pre1$i;
+    }
+    $22 = $21 >>> 0 < $2 >>> 0;
+    $$$i = $22 ? $21 : $2;
+    _memcpy($15 | 0, $1 | 0, $$$i | 0) | 0;
+    $23 = $0 + 56 | 0;
+    $24 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+    $25 = $24 | 2;
+    SAFE_HEAP_STORE($23 >> 0 | 0, $25 | 0, 1);
+   }
+   $29 = $0 + 112 | 0;
+   SAFE_HEAP_STORE($29 | 0, 0 | 0, 4);
+   $$0 = 0;
+   STACKTOP = sp;
+   return $$0 | 0;
+  }
+ }
+ return 0 | 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;
+ SAFE_HEAP_STORE($2 | 0, $1 | 0, 4);
+ SAFE_HEAP_STORE($0 | 0, 1 | 0, 4);
+ $3 = $0 + 4 | 0;
+ $4 = $0 + 8 | 0;
+ $5 = $0 + 12 | 0;
+ SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(17636 * 4 | 0, $0 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 48 | 0, 4);
+ $6 = __gcry_xmalloc(20) | 0;
+ $7 = __gcry_xmalloc(4) | 0;
+ $8 = $6 + 16 | 0;
+ SAFE_HEAP_STORE($8 | 0, $7 | 0, 4);
+ SAFE_HEAP_STORE($6 | 0, 1 | 0, 4);
+ $9 = $6 + 4 | 0;
+ $10 = $6 + 8 | 0;
+ $11 = $6 + 12 | 0;
+ SAFE_HEAP_STORE($7 | 0, 1 | 0, 4);
+ SAFE_HEAP_STORE($9 | 0, 1 | 0, 4);
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(70548 | 0, $6 | 0, 4);
+ SAFE_HEAP_STORE($11 | 0, 48 | 0, 4);
+ $12 = __gcry_xmalloc(20) | 0;
+ $13 = __gcry_xmalloc(4) | 0;
+ $14 = $12 + 16 | 0;
+ SAFE_HEAP_STORE($14 | 0, $13 | 0, 4);
+ SAFE_HEAP_STORE($12 | 0, 1 | 0, 4);
+ $15 = $12 + 4 | 0;
+ $16 = $12 + 8 | 0;
+ $17 = $12 + 12 | 0;
+ SAFE_HEAP_STORE($13 | 0, 2 | 0, 4);
+ SAFE_HEAP_STORE($15 | 0, 1 | 0, 4);
+ SAFE_HEAP_STORE($16 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(70552 | 0, $12 | 0, 4);
+ SAFE_HEAP_STORE($17 | 0, 48 | 0, 4);
+ $18 = __gcry_xmalloc(20) | 0;
+ $19 = __gcry_xmalloc(4) | 0;
+ $20 = $18 + 16 | 0;
+ SAFE_HEAP_STORE($20 | 0, $19 | 0, 4);
+ SAFE_HEAP_STORE($18 | 0, 1 | 0, 4);
+ $21 = $18 + 4 | 0;
+ $22 = $18 + 8 | 0;
+ $23 = $18 + 12 | 0;
+ SAFE_HEAP_STORE($19 | 0, 3 | 0, 4);
+ SAFE_HEAP_STORE($21 | 0, 1 | 0, 4);
+ SAFE_HEAP_STORE($22 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(70556 | 0, $18 | 0, 4);
+ SAFE_HEAP_STORE($23 | 0, 48 | 0, 4);
+ $24 = __gcry_xmalloc(20) | 0;
+ $25 = __gcry_xmalloc(4) | 0;
+ $26 = $24 + 16 | 0;
+ SAFE_HEAP_STORE($26 | 0, $25 | 0, 4);
+ SAFE_HEAP_STORE($24 | 0, 1 | 0, 4);
+ $27 = $24 + 4 | 0;
+ $28 = $24 + 8 | 0;
+ $29 = $24 + 12 | 0;
+ SAFE_HEAP_STORE($25 | 0, 4 | 0, 4);
+ SAFE_HEAP_STORE($27 | 0, 1 | 0, 4);
+ SAFE_HEAP_STORE($28 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(70560 | 0, $24 | 0, 4);
+ SAFE_HEAP_STORE($29 | 0, 48 | 0, 4);
+ $30 = __gcry_xmalloc(20) | 0;
+ $31 = __gcry_xmalloc(4) | 0;
+ $32 = $30 + 16 | 0;
+ SAFE_HEAP_STORE($32 | 0, $31 | 0, 4);
+ SAFE_HEAP_STORE($30 | 0, 1 | 0, 4);
+ $33 = $30 + 4 | 0;
+ $34 = $30 + 8 | 0;
+ $35 = $30 + 12 | 0;
+ SAFE_HEAP_STORE($31 | 0, 8 | 0, 4);
+ SAFE_HEAP_STORE($33 | 0, 1 | 0, 4);
+ SAFE_HEAP_STORE($34 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(70564 | 0, $30 | 0, 4);
+ SAFE_HEAP_STORE($35 | 0, 48 | 0, 4);
+ return 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, $$048 = 0, $$1 = 0, $$145 = 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;
+ var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ $4 = ($3 | 0) != (0 | 0);
+ if ($4) {
+  SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ }
+ $5 = __gcry_sexp_find_token($0, 37529, 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, 46885) | 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+     $18 = ($17 | 0) == (0 | 0);
+     if ($18) {
+      $$046 = 70;
+      $$1 = $$043;
+      $$145 = $$044;
+     } else {
+      $$048 = 0;
+      $$pr = $17;
+      while (1) {
+       $23 = _strcasecmp($$043, $$pr) | 0;
+       $24 = ($23 | 0) == 0;
+       $20 = $$048 + 1 | 0;
+       if ($24) {
+        break;
+       }
+       $19 = $1 + ($20 << 2) | 0;
+       $21 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+       $22 = ($21 | 0) == (0 | 0);
+       if ($22) {
+        $$046 = 70;
+        $$1 = $$043;
+        $$145 = $$044;
+        break L4;
+       } else {
+        $$048 = $20;
+        $$pr = $21;
+       }
+      }
+      if ($4) {
+       $25 = _strcmp($$043, 49614) | 0;
+       $26 = ($25 | 0) == 0;
+       if ($26) {
+        SAFE_HEAP_STORE($3 | 0, 4096 | 0, 4);
+       }
+       $27 = _strcmp($$043, 49620) | 0;
+       $28 = ($27 | 0) == 0;
+       if ($28) {
+        SAFE_HEAP_STORE($3 | 0, 8192 | 0, 4);
+       }
+      }
+      SAFE_HEAP_STORE($2 | 0, $$044 | 0, 4);
+      $$046 = 0;
+      $$1 = $$043;
+      $$145 = 0;
+     }
+    }
+   }
+  }
+ } while (0);
+ __gcry_free($$1);
+ __gcry_sexp_release($$145);
+ __gcry_sexp_release($5);
+ return $$046 | 0;
+}
+
+function __gcry_cipher_close($0) {
+ $0 = $0 | 0;
+ var $$038$lcssa = 0, $$03848 = 0, $$039$lcssa = 0, $$03947 = 0, $$1 = 0, 
$$140 = 0, $$3$ph = 0, $$342$ph = 0, $$34245 = 0, $$346 = 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $switch$split2D = ($2 | 0) < 1183944770;
+ L4 : do {
+  if ($switch$split2D) {
+   switch ($2 | 0) {
+   case 604576100:
+    {
+     break L4;
+     break;
+    }
+   default:
+    {}
+   }
+   __gcry_fatal_error(63, 24175);
+  } else {
+   switch ($2 | 0) {
+   case 1183944770:
+    {
+     break L4;
+     break;
+    }
+   default:
+    {}
+   }
+   __gcry_fatal_error(63, 24175);
+  }
+ } while (0);
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $3 = $0 + 8 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $0 + 4 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $0;
+ $8 = $7 & 7;
+ $9 = ($8 | 0) != 0;
+ $10 = ($6 | 0) != 0;
+ $11 = $10 & $9;
+ if ($11) {
+  $$03848 = $0;
+  $$03947 = $6;
+  while (1) {
+   SAFE_HEAP_STORE($$03848 >> 0 | 0, 0 | 0, 1);
+   $12 = $$03848 + 1 | 0;
+   $13 = $$03947 + -1 | 0;
+   $14 = $12;
+   $15 = $14 & 7;
+   $16 = ($15 | 0) != 0;
+   $17 = ($13 | 0) != 0;
+   $18 = $17 & $16;
+   if ($18) {
+    $$03848 = $12;
+    $$03947 = $13;
+   } else {
+    $$038$lcssa = $12;
+    $$039$lcssa = $13;
+    break;
+   }
+  }
+ } else {
+  $$038$lcssa = $0;
+  $$039$lcssa = $6;
+ }
+ $19 = $$039$lcssa >>> 0 < 8;
+ if ($19) {
+  $$3$ph = $$038$lcssa;
+  $$342$ph = $$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;
+   SAFE_HEAP_STORE($24 | 0, 0 | 0, 4);
+   $25 = $23 + 4 | 0;
+   $26 = $25;
+   SAFE_HEAP_STORE($26 | 0, 0 | 0, 4);
+   $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;
+  $$3$ph = $scevgep;
+  $$342$ph = $30;
+ }
+ $31 = ($$342$ph | 0) == 0;
+ if (!$31) {
+  $$34245 = $$342$ph;
+  $$346 = $$3$ph;
+  while (1) {
+   SAFE_HEAP_STORE($$346 >> 0 | 0, 0 | 0, 1);
+   $32 = $$346 + 1 | 0;
+   $33 = $$34245 + -1 | 0;
+   $34 = ($33 | 0) == 0;
+   if ($34) {
+    break;
+   } else {
+    $$34245 = $33;
+    $$346 = $32;
+   }
+  }
+ }
+ $35 = 0 - $4 | 0;
+ $36 = $0 + $35 | 0;
+ __gcry_free($36);
+ return;
+}
+
+function __gcry_md_selftest($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$i$i = 0, $$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;
+ 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, $phitmp19 = 
0, $phitmp20 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == ($0 | 0);
+ if ($4) {
+  $$ph = 7620;
+  label = 7;
+ } else {
+  $5 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+  $6 = ($5 | 0) == ($0 | 0);
+  if ($6) {
+   $$ph = 7756;
+   label = 7;
+  } else {
+   $7 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+   $8 = ($7 | 0) == ($0 | 0);
+   if ($8) {
+    $$ph = 7696;
+    label = 7;
+   } else {
+    $9 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+    $10 = ($9 | 0) == ($0 | 0);
+    if ($10) {
+     $$ph = 7820;
+     label = 7;
+    } else {
+     $11 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+     $12 = ($11 | 0) == ($0 | 0);
+     if ($12) {
+      $$ph = 7884;
+      label = 7;
+     } else {
+      $13 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+      $14 = ($13 | 0) == ($0 | 0);
+      if ($14) {
+       $$ph = 7456;
+       label = 7;
+      } else {
+       $25 = 0;
+       $29 = 0;
+       $35 = 69;
+       label = 11;
+      }
+     }
+    }
+   }
+  }
+ }
+ do {
+  if ((label | 0) == 7) {
+   $15 = $$ph + 4 | 0;
+   $16 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+   $17 = $16 & 1;
+   $18 = $17 << 24 >> 24 == 0;
+   $19 = $$ph + 48 | 0;
+   $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+   if (!$18) {
+    $phitmp19 = ($20 | 0) != (0 | 0);
+    $phitmp20 = $phitmp19 ? 5 : 69;
+    $25 = $$ph;
+    $29 = 1;
+    $35 = $phitmp20;
+    label = 11;
+    break;
+   }
+   $21 = ($20 | 0) == (0 | 0);
+   if ($21) {
+    $25 = $$ph;
+    $29 = 1;
+    $35 = 69;
+    label = 11;
+   } else {
+    $22 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($20 | 0, 127 | 0) | 0) & 127]($0, 
$1, $2) | 0;
+    $$0 = $22;
+   }
+  }
+ } while (0);
+ if ((label | 0) == 11) {
+  $23 = ($2 | 0) == (0 | 0);
+  if ($23) {
+   $$0 = $35;
+  } else {
+   if ($29) {
+    $24 = $25 + 4 | 0;
+    $26 = SAFE_HEAP_LOAD($24 >> 0 | 0, 1, 0) | 0 | 0;
+    $27 = $26 & 1;
+    $28 = $27 << 24 >> 24 == 0;
+    if ($28) {
+     $31 = 37736;
+    } else {
+     label = 14;
+    }
+   } else {
+    label = 14;
+   }
+   if ((label | 0) == 14) {
+    $30 = $29 ? 37697 : 37716;
+    $31 = $30;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](42873, $0, 
37758, $31);
+   $$0 = $35;
+  }
+ }
+ $32 = ($$0 | 0) == 0;
+ $33 = $$0 & 65535;
+ $34 = $33 | 16777216;
+ $$$i$i = $32 ? 0 : $34;
+ return $$$i$i | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if (!$5) {
+  $6 = $2 + 16 | 0;
+  $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $8 = ($7 | 0) == (0 | 0);
+  if (!$8) {
+   $9 = $2 + 20 | 0;
+   $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $11 = ($10 | 0) == (0 | 0);
+   if (!$11) {
+    $15 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    $16 = $15 + 4 | 0;
+    $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+    $18 = $17 + 1 | 0;
+    $19 = __gcry_mpi_alloc_secure($18) | 0;
+    $20 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    $21 = $20 + 4 | 0;
+    $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+    $23 = $22 + 1 | 0;
+    $24 = __gcry_mpi_alloc_secure($23) | 0;
+    $25 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    $26 = $25 + 4 | 0;
+    $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+    $28 = $27 + 1 | 0;
+    $29 = __gcry_mpi_alloc_secure($28) | 0;
+    $30 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_sub_ui($29, $30, 1);
+    $31 = $2 + 8 | 0;
+    $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_fdiv_r($29, $32, $29);
+    $33 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_powm($19, $1, $29, $33);
+    $34 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_sub_ui($29, $34, 1);
+    $35 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_fdiv_r($29, $35, $29);
+    $36 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_powm($24, $1, $29, $36);
+    __gcry_mpi_sub($29, $24, $19);
+    $37 = $29 + 8 | 0;
+    $38 = SAFE_HEAP_LOAD($37 | 0, 4, 0) | 0 | 0;
+    $39 = ($38 | 0) == 0;
+    if (!$39) {
+     $40 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+     __gcry_mpi_add($29, $29, $40);
+    }
+    $41 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+    $42 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_mulm($29, $41, $29, $42);
+    $43 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_powm($0, $1, $13, $14);
+ return;
+}
+
+function _GNUNET_CRYPTO_rsa_private_key_get_public($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, 
$5 = 0, $6 = 0, $7 = 0;
+ var $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_buffer2 = 0, $vararg_ptr1 = 
0, $vararg_ptr5 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $4 = sp + 32 | 0;
+ $6 = sp + 20 | 0;
+ $2 = $0;
+ $8 = $2;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = _key_from_sexp_107($4, $9, 37679, 39061) | 0;
+ $5 = $10;
+ $11 = $5;
+ $12 = 0 != ($11 | 0);
+ if ($12) {
+  $13 = $2;
+  $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  $15 = _key_from_sexp_107($4, $14, 37667, 39061) | 0;
+  $5 = $15;
+ }
+ $16 = $5;
+ $17 = 0 != ($16 | 0);
+ if ($17) {
+  $18 = $2;
+  $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+  $20 = _key_from_sexp_107($4, $19, 40693, 39061) | 0;
+  $5 = $20;
+ }
+ $21 = $5;
+ $22 = 0 != ($21 | 0);
+ if (!$22) {
+  $31 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $32 = $4 + 4 | 0;
+  $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, $31 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, $33 | 0, 4);
+  $34 = _gcry_sexp_build($6, 0, 21145, $vararg_buffer2) | 0;
+  $5 = $34;
+  $35 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($35);
+  $36 = $4 + 4 | 0;
+  $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+  _gcry_mpi_release($37);
+  $38 = _GNUNET_xmalloc_(4, 20893, 280) | 0;
+  $3 = $38;
+  $39 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $40 = $3;
+  SAFE_HEAP_STORE($40 | 0, $39 | 0, 4);
+  $41 = $3;
+  $1 = $41;
+  $42 = $1;
+  STACKTOP = sp;
+  return $42 | 0;
+ }
+ $7 = 270;
+ $23 = SAFE_HEAP_LOAD(251 * 4 | 0, 4, 0) | 0 | 0;
+ $24 = ($23 | 0) == -1;
+ if ($24) {
+  $25 = $7;
+  $26 = _GNUNET_get_log_call_status(2, 0, 20893, 21056, $25) | 0;
+  SAFE_HEAP_STORE(251 * 4 | 0, $26 | 0, 4);
+ }
+ $27 = _GNUNET_get_log_skip() | 0;
+ $28 = ($27 | 0) > 0;
+ if ($28) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $29 = SAFE_HEAP_LOAD(251 * 4 | 0, 4, 0) | 0 | 0;
+  $30 = ($29 | 0) != 0;
+  if ($30) {
+   SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, 270 | 0, 4);
+   _GNUNET_log_nocheck(66, 21097, $vararg_buffer);
+  }
+ }
+ $1 = 0;
+ $42 = $1;
+ STACKTOP = sp;
+ return $42 | 0;
+}
+
+function _twocompl($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0 = 0, $$0$in = 0, $$145 = 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;
+ $$0$in = $1;
+ while (1) {
+  $$0 = $$0$in + -1 | 0;
+  $2 = ($$0 | 0) > -1;
+  if (!$2) {
+   label = 21;
+   break;
+  }
+  $3 = $0 + $$0 | 0;
+  $4 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+  $5 = $4 << 24 >> 24 == 0;
+  if ($5) {
+   $$0$in = $$0;
+  } else {
+   break;
+  }
+ }
+ if ((label | 0) == 21) {
+  return;
+ }
+ $6 = $4 & 255;
+ $7 = $6 & 1;
+ $8 = ($7 | 0) == 0;
+ do {
+  if ($8) {
+   $12 = $6 & 2;
+   $13 = ($12 | 0) == 0;
+   if (!$13) {
+    $14 = $6 & 252;
+    $15 = $14 ^ 254;
+    $16 = $15 & 255;
+    SAFE_HEAP_STORE($3 >> 0 | 0, $16 | 0, 1);
+    break;
+   }
+   $17 = $6 & 4;
+   $18 = ($17 | 0) == 0;
+   if (!$18) {
+    $19 = $6 & 248;
+    $20 = $19 ^ 252;
+    $21 = $20 & 255;
+    SAFE_HEAP_STORE($3 >> 0 | 0, $21 | 0, 1);
+    break;
+   }
+   $22 = $6 & 8;
+   $23 = ($22 | 0) == 0;
+   if (!$23) {
+    $24 = $6 & 240;
+    $25 = $24 ^ 248;
+    $26 = $25 & 255;
+    SAFE_HEAP_STORE($3 >> 0 | 0, $26 | 0, 1);
+    break;
+   }
+   $27 = $6 & 16;
+   $28 = ($27 | 0) == 0;
+   if (!$28) {
+    $29 = $6 & 224;
+    $30 = $29 ^ 240;
+    $31 = $30 & 255;
+    SAFE_HEAP_STORE($3 >> 0 | 0, $31 | 0, 1);
+    break;
+   }
+   $32 = $6 & 32;
+   $33 = ($32 | 0) == 0;
+   if (!$33) {
+    $34 = $6 & 192;
+    $35 = $34 ^ 224;
+    $36 = $35 & 255;
+    SAFE_HEAP_STORE($3 >> 0 | 0, $36 | 0, 1);
+    break;
+   }
+   $37 = $6 & 64;
+   $38 = ($37 | 0) == 0;
+   if ($38) {
+    SAFE_HEAP_STORE($3 >> 0 | 0, -128 | 0, 1);
+    break;
+   } else {
+    $39 = $6 & 128;
+    $40 = $39 ^ 192;
+    $41 = $40 & 255;
+    SAFE_HEAP_STORE($3 >> 0 | 0, $41 | 0, 1);
+    break;
+   }
+  } else {
+   $9 = $6 | 1;
+   $10 = $9 ^ 254;
+   $11 = $10 & 255;
+   SAFE_HEAP_STORE($3 >> 0 | 0, $11 | 0, 1);
+  }
+ } while (0);
+ $42 = $$0$in + -2 | 0;
+ $43 = ($42 | 0) > -1;
+ if ($43) {
+  $$145 = $42;
+ } else {
+  return;
+ }
+ while (1) {
+  $44 = $0 + $$145 | 0;
+  $45 = SAFE_HEAP_LOAD($44 >> 0 | 0, 1, 0) | 0 | 0;
+  $46 = $45 & 255;
+  $47 = $46 ^ 255;
+  $48 = $47 & 255;
+  SAFE_HEAP_STORE($44 >> 0 | 0, $48 | 0, 1);
+  $49 = $$145 + -1 | 0;
+  $50 = ($$145 | 0) > 0;
+  if ($50) {
+   $$145 = $49;
+  } else {
+   break;
+  }
+ }
+ return;
+}
+
+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, 
$25 = 0, $26 = 0, $27 = 0;
+ var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 
= 0, $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 + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer5 = sp + 16 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $3 = sp + 36 | 0;
+ $4 = sp + 32 | 0;
+ $1 = $0;
+ $7 = $1;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+ $8 = _gcry_sexp_build($4, 0, 20869, $vararg_buffer) | 0;
+ $9 = 0 == ($8 | 0);
+ if (!$9) {
+  $5 = 155;
+  $10 = SAFE_HEAP_LOAD(246 * 4 | 0, 4, 0) | 0 | 0;
+  $11 = ($10 | 0) == -1;
+  if ($11) {
+   $12 = $5;
+   $13 = _GNUNET_get_log_call_status(1, 0, 20893, 20906, $12) | 0;
+   SAFE_HEAP_STORE(246 * 4 | 0, $13 | 0, 4);
+  }
+  $14 = _GNUNET_get_log_skip() | 0;
+  $15 = ($14 | 0) > 0;
+  if ($15) {
+   _GNUNET_log_skip(-1, 0);
+   _GNUNET_abort_();
+  }
+  $16 = SAFE_HEAP_LOAD(246 * 4 | 0, 4, 0) | 0 | 0;
+  $17 = ($16 | 0) != 0;
+  if (!$17) {
+   _GNUNET_abort_();
+  }
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, 20893 | 0, 4);
+  $vararg_ptr4 = $vararg_buffer1 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr4 | 0, 155 | 0, 4);
+  _GNUNET_log_nocheck(1, 61295, $vararg_buffer1);
+  _GNUNET_abort_();
+ }
+ $18 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $19 = _gcry_pk_genkey($3, $18) | 0;
+ $20 = 0 == ($19 | 0);
+ if ($20) {
+  $29 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  _gcry_sexp_release($29);
+  $30 = _GNUNET_xmalloc_(4, 20893, 164) | 0;
+  $2 = $30;
+  $31 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $32 = $2;
+  SAFE_HEAP_STORE($32 | 0, $31 | 0, 4);
+  $33 = $2;
+  STACKTOP = sp;
+  return $33 | 0;
+ }
+ $6 = 158;
+ $21 = SAFE_HEAP_LOAD(247 * 4 | 0, 4, 0) | 0 | 0;
+ $22 = ($21 | 0) == -1;
+ if ($22) {
+  $23 = $6;
+  $24 = _GNUNET_get_log_call_status(1, 0, 20893, 20906, $23) | 0;
+  SAFE_HEAP_STORE(247 * 4 | 0, $24 | 0, 4);
+ }
+ $25 = _GNUNET_get_log_skip() | 0;
+ $26 = ($25 | 0) > 0;
+ if ($26) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $27 = SAFE_HEAP_LOAD(247 * 4 | 0, 4, 0) | 0 | 0;
+ $28 = ($27 | 0) != 0;
+ if (!$28) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer5 | 0, 20893 | 0, 4);
+ $vararg_ptr8 = $vararg_buffer5 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr8 | 0, 158 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer5);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+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 + 32 | 0;
+ $vararg_buffer7 = sp + 24 | 0;
+ $vararg_buffer4 = sp + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 44 | 0;
+ $3 = sp + 40 | 0;
+ $4 = sp + 36 | 0;
+ $5 = sp + 48 | 0;
+ $6 = ($1 | 0) == (0 | 0);
+ if ($6) {
+  $7 = ($0 | 0) != (0 | 0);
+  $8 = $7 ? $0 : 22120;
+  $9 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+  $10 = $9 << 24 >> 24 == 0;
+  if (!$10) {
+   SAFE_HEAP_STORE($vararg_buffer | 0, $8 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, 22151 | 0, 4);
+   __gcry_log_debug(22122, $vararg_buffer);
+  }
+  __gcry_log_printf(22378, $vararg_buffer2);
+  STACKTOP = sp;
+  return;
+ }
+ $11 = $1 + 12 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = $12 & 4;
+ $14 = ($13 | 0) == 0;
+ if (!$14) {
+  $15 = __gcry_mpi_get_opaque($1, $4) | 0;
+  $16 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($vararg_buffer4 | 0, $16 | 0, 4);
+  _snprintf($5, 30, 22159, $vararg_buffer4) | 0;
+  $17 = ($0 | 0) != (0 | 0);
+  $18 = $17 ? $0 : 22120;
+  $19 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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 ? $0 : 22120;
+  $26 = SAFE_HEAP_LOAD($25 >> 0 | 0, 1, 0) | 0 | 0;
+  $27 = $26 << 24 >> 24 == 0;
+  if (!$27) {
+   SAFE_HEAP_STORE($vararg_buffer7 | 0, $25 | 0, 4);
+   $vararg_ptr10 = $vararg_buffer7 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr10 | 0, 22169 | 0, 4);
+   __gcry_log_debug(22122, $vararg_buffer7);
+  }
+  __gcry_log_printf(22378, $vararg_buffer11);
+  STACKTOP = sp;
+  return;
+ }
+ $28 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $29 = ($28 | 0) == 0;
+ $30 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $31 = ($30 | 0) != 0;
+ $32 = $31 ? 22184 : 22186;
+ if ($29) {
+  _do_printhex($0, $32, 71847, 1);
+ } else {
+  _do_printhex($0, $32, $22, $28);
+ }
+ __gcry_free($22);
+ STACKTOP = sp;
+ return;
+}
+
+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) {
+   $8 = _strlen($0) | 0;
+   $9 = $0 + $8 | 0;
+   $$0 = $9;
+  } else {
+   $4 = $0;
+   $5 = $4 & 3;
+   $6 = ($5 | 0) == 0;
+   if ($6) {
+    $$030$lcssa = $0;
+   } else {
+    $7 = $1 & 255;
+    $$03039 = $0;
+    while (1) {
+     $10 = SAFE_HEAP_LOAD($$03039 >> 0 | 0, 1, 0) | 0 | 0;
+     $11 = $10 << 24 >> 24 == 0;
+     $12 = $10 << 24 >> 24 == $7 << 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 = SAFE_HEAP_LOAD($$030$lcssa | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($$1 >> 0 | 0, 1, 0) | 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 ___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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ if ($3) {
+  label = 3;
+ } else {
+  $4 = $0 + 108 | 0;
+  $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+   $11 = ($10 | 0) == 0;
+   $$phi$trans$insert = $0 + 8 | 0;
+   $$pre = SAFE_HEAP_LOAD($$phi$trans$insert | 0, 4, 0) | 0 | 0;
+   if ($11) {
+    $12 = $$pre;
+    $42 = $12;
+    label = 9;
+   } else {
+    $13 = $0 + 4 | 0;
+    $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    $15 = $14;
+    $16 = $$pre - $15 | 0;
+    $17 = $0 + 108 | 0;
+    $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 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;
+     SAFE_HEAP_STORE($24 | 0, $23 | 0, 4);
+     $26 = $21;
+    }
+   }
+   if ((label | 0) == 9) {
+    $25 = $0 + 100 | 0;
+    SAFE_HEAP_STORE($25 | 0, $$pre | 0, 4);
+    $26 = $42;
+   }
+   $27 = ($26 | 0) == (0 | 0);
+   $$phi$trans$insert28 = $0 + 4 | 0;
+   if ($27) {
+    $$pre29 = SAFE_HEAP_LOAD($$phi$trans$insert28 | 0, 4, 0) | 0 | 0;
+    $37 = $$pre29;
+   } else {
+    $28 = SAFE_HEAP_LOAD($$phi$trans$insert28 | 0, 4, 0) | 0 | 0;
+    $29 = $26;
+    $30 = $0 + 108 | 0;
+    $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+    $32 = $29 + 1 | 0;
+    $33 = $32 - $28 | 0;
+    $34 = $33 + $31 | 0;
+    SAFE_HEAP_STORE($30 | 0, $34 | 0, 4);
+    $35 = $28;
+    $37 = $35;
+   }
+   $36 = $37 + -1 | 0;
+   $38 = SAFE_HEAP_LOAD($36 >> 0 | 0, 1, 0) | 0 | 0;
+   $39 = $38 & 255;
+   $40 = ($39 | 0) == ($7 | 0);
+   if ($40) {
+    $$0 = $7;
+   } else {
+    $41 = $7 & 255;
+    SAFE_HEAP_STORE($36 >> 0 | 0, $41 | 0, 1);
+    $$0 = $7;
+   }
+  }
+ }
+ if ((label | 0) == 4) {
+  $9 = $0 + 100 | 0;
+  SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+  $$0 = -1;
+ }
+ return $$0 | 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;
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ $$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 = 16424 + ($7 << 1) | 0;
+  $8 = SAFE_HEAP_LOAD($6 | 0, 2, 0) | 0 | 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 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+  $22 = ($21 | 0) == (0 | 0);
+  if ($22) {
+   $$1 = 0;
+   STACKTOP = sp;
+   return $$1 | 0;
+  }
+  $23 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($21 | 0, 127 | 0) | 0) & 127]($23, 
37212, 46, 0, 0);
+  $$1 = 0;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $24 = ($3 | 0) != (0 | 0);
+ if ($24) {
+  $25 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 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[(SAFE_FT_MASK($3 | 0, 127 | 0) | 0) & 127]($4, 1, 
$0) | 0;
+   $30 = ($29 | 0) == 0;
+   if (!$30) {
+    $$1 = 1;
+    STACKTOP = sp;
+    return $$1 | 0;
+   }
+  }
+ }
+ $31 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+ $32 = ($31 | 0) == (0 | 0);
+ if ($32) {
+  $$1 = 0;
+  STACKTOP = sp;
+  return $$1 | 0;
+ }
+ $33 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+ FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($31 | 0, 127 | 0) | 0) & 127]($33, 37212, 
46, 0, 0);
+ $$1 = 0;
+ STACKTOP = sp;
+ return $$1 | 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, $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, $4 = 0, $5 = 0, $6 = 0;
+ var $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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $3 & 4;
+ $5 = ($4 | 0) == 0;
+ if (!$5) {
+  $6 = $0 + 8 | 0;
+  $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $8 = $7 + 7 | 0;
+  $9 = ($8 | 0) / 8 & -1;
+  $10 = $0 + 16 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  _memcpy($17 | 0, $16 | 0, $9 | 0) | 0;
+  $18 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($33 | 0, $34 | 0, 4);
+  SAFE_HEAP_STORE($24 | 0, $23 | 0, 4);
+  $35 = $24 + 4 | 0;
+  SAFE_HEAP_STORE($35 | 0, 0 | 0, 4);
+  $36 = $24 + 8 | 0;
+  SAFE_HEAP_STORE($36 | 0, 0 | 0, 4);
+  $37 = $24 + 12 | 0;
+  SAFE_HEAP_STORE($37 | 0, 0 | 0, 4);
+  $$pre$phi26Z2D = $35;
+  $$pre$phi28Z2D = $36;
+  $$pre$phi30Z2D = $37;
+ } else {
+  if ($25) {
+   $28 = 0;
+  } else {
+   $26 = __gcry_xmalloc_secure($$op$i$i24) | 0;
+   $28 = $26;
+  }
+  $27 = $24 + 16 | 0;
+  SAFE_HEAP_STORE($27 | 0, $28 | 0, 4);
+  SAFE_HEAP_STORE($24 | 0, $23 | 0, 4);
+  $29 = $24 + 12 | 0;
+  SAFE_HEAP_STORE($29 | 0, 1 | 0, 4);
+  $30 = $24 + 4 | 0;
+  SAFE_HEAP_STORE($30 | 0, 0 | 0, 4);
+  $31 = $24 + 8 | 0;
+  SAFE_HEAP_STORE($31 | 0, 0 | 0, 4);
+  $$pre$phi26Z2D = $30;
+  $$pre$phi28Z2D = $31;
+  $$pre$phi30Z2D = $29;
+ }
+ SAFE_HEAP_STORE($$pre$phi26Z2D | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($$pre$phi28Z2D | 0, 0 | 0, 4);
+ $38 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($$pre$phi30Z2D | 0, $38 | 0, 4);
+ $$0 = $24;
+ return $$0 | 0;
+}
+
+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, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
+ var $28 = 0, $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 + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer8 = sp + 24 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 44 | 0;
+ $1 = $0;
+ $6 = $1;
+ SAFE_HEAP_STORE($vararg_buffer | 0, 32 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $6 | 0, 4);
+ $7 = _gcry_sexp_build($2, 0, 19579, $vararg_buffer) | 0;
+ $3 = $7;
+ $8 = $3;
+ $9 = 0 != ($8 | 0);
+ if (!$9) {
+  $28 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  STACKTOP = sp;
+  return $28 | 0;
+ }
+ $4 = 169;
+ $10 = SAFE_HEAP_LOAD(203 * 4 | 0, 4, 0) | 0 | 0;
+ $11 = ($10 | 0) == -1;
+ if ($11) {
+  $12 = $4;
+  $13 = _GNUNET_get_log_call_status(1, 20980, 19405, 19634, $12) | 0;
+  SAFE_HEAP_STORE(203 * 4 | 0, $13 | 0, 4);
+ }
+ $14 = _GNUNET_get_log_skip() | 0;
+ $15 = ($14 | 0) > 0;
+ if ($15) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $16 = SAFE_HEAP_LOAD(203 * 4 | 0, 4, 0) | 0 | 0;
+  $17 = ($16 | 0) != 0;
+  if ($17) {
+   $18 = $3;
+   $19 = _gcry_strerror($18) | 0;
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, 19528 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, 19405 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, 169 | 0, 4);
+   $vararg_ptr7 = $vararg_buffer2 + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr7 | 0, $19 | 0, 4);
+   _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer2);
+  }
+ }
+ $5 = 170;
+ $20 = SAFE_HEAP_LOAD(204 * 4 | 0, 4, 0) | 0 | 0;
+ $21 = ($20 | 0) == -1;
+ if ($21) {
+  $22 = $5;
+  $23 = _GNUNET_get_log_call_status(1, 0, 19405, 19634, $22) | 0;
+  SAFE_HEAP_STORE(204 * 4 | 0, $23 | 0, 4);
+ }
+ $24 = _GNUNET_get_log_skip() | 0;
+ $25 = ($24 | 0) > 0;
+ if ($25) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $26 = SAFE_HEAP_LOAD(204 * 4 | 0, 4, 0) | 0 | 0;
+ $27 = ($26 | 0) != 0;
+ if (!$27) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer8 | 0, 19405 | 0, 4);
+ $vararg_ptr11 = $vararg_buffer8 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr11 | 0, 170 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer8);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+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, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
+ var $28 = 0, $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 + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer8 = sp + 24 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 44 | 0;
+ $1 = $0;
+ $6 = $1;
+ SAFE_HEAP_STORE($vararg_buffer | 0, 32 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $6 | 0, 4);
+ $7 = _gcry_sexp_build($2, 0, 19461, $vararg_buffer) | 0;
+ $3 = $7;
+ $8 = $3;
+ $9 = 0 != ($8 | 0);
+ if (!$9) {
+  $28 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  STACKTOP = sp;
+  return $28 | 0;
+ }
+ $4 = 136;
+ $10 = SAFE_HEAP_LOAD(198 * 4 | 0, 4, 0) | 0 | 0;
+ $11 = ($10 | 0) == -1;
+ if ($11) {
+  $12 = $4;
+  $13 = _GNUNET_get_log_call_status(1, 20980, 19405, 19503, $12) | 0;
+  SAFE_HEAP_STORE(198 * 4 | 0, $13 | 0, 4);
+ }
+ $14 = _GNUNET_get_log_skip() | 0;
+ $15 = ($14 | 0) > 0;
+ if ($15) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $16 = SAFE_HEAP_LOAD(198 * 4 | 0, 4, 0) | 0 | 0;
+  $17 = ($16 | 0) != 0;
+  if ($17) {
+   $18 = $3;
+   $19 = _gcry_strerror($18) | 0;
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, 19528 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, 19405 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, 136 | 0, 4);
+   $vararg_ptr7 = $vararg_buffer2 + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr7 | 0, $19 | 0, 4);
+   _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer2);
+  }
+ }
+ $5 = 137;
+ $20 = SAFE_HEAP_LOAD(199 * 4 | 0, 4, 0) | 0 | 0;
+ $21 = ($20 | 0) == -1;
+ if ($21) {
+  $22 = $5;
+  $23 = _GNUNET_get_log_call_status(1, 0, 19405, 19503, $22) | 0;
+  SAFE_HEAP_STORE(199 * 4 | 0, $23 | 0, 4);
+ }
+ $24 = _GNUNET_get_log_skip() | 0;
+ $25 = ($24 | 0) > 0;
+ if ($25) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $26 = SAFE_HEAP_LOAD(199 * 4 | 0, 4, 0) | 0 | 0;
+ $27 = ($26 | 0) != 0;
+ if (!$27) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer8 | 0, 19405 | 0, 4);
+ $vararg_ptr11 = $vararg_buffer8 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr11 | 0, 137 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer8);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+function _decode_private_ecdhe_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, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, 
$25 = 0, $26 = 0, $27 = 0;
+ var $28 = 0, $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 + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $vararg_buffer8 = sp + 24 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 44 | 0;
+ $1 = $0;
+ $6 = $1;
+ SAFE_HEAP_STORE($vararg_buffer | 0, 32 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $6 | 0, 4);
+ $7 = _gcry_sexp_build($2, 0, 19461, $vararg_buffer) | 0;
+ $3 = $7;
+ $8 = $3;
+ $9 = 0 != ($8 | 0);
+ if (!$9) {
+  $28 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  STACKTOP = sp;
+  return $28 | 0;
+ }
+ $4 = 202;
+ $10 = SAFE_HEAP_LOAD(208 * 4 | 0, 4, 0) | 0 | 0;
+ $11 = ($10 | 0) == -1;
+ if ($11) {
+  $12 = $4;
+  $13 = _GNUNET_get_log_call_status(1, 20980, 19405, 19694, $12) | 0;
+  SAFE_HEAP_STORE(208 * 4 | 0, $13 | 0, 4);
+ }
+ $14 = _GNUNET_get_log_skip() | 0;
+ $15 = ($14 | 0) > 0;
+ if ($15) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $16 = SAFE_HEAP_LOAD(208 * 4 | 0, 4, 0) | 0 | 0;
+  $17 = ($16 | 0) != 0;
+  if ($17) {
+   $18 = $3;
+   $19 = _gcry_strerror($18) | 0;
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, 19528 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, 19405 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, 202 | 0, 4);
+   $vararg_ptr7 = $vararg_buffer2 + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr7 | 0, $19 | 0, 4);
+   _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer2);
+  }
+ }
+ $5 = 203;
+ $20 = SAFE_HEAP_LOAD(209 * 4 | 0, 4, 0) | 0 | 0;
+ $21 = ($20 | 0) == -1;
+ if ($21) {
+  $22 = $5;
+  $23 = _GNUNET_get_log_call_status(1, 0, 19405, 19694, $22) | 0;
+  SAFE_HEAP_STORE(209 * 4 | 0, $23 | 0, 4);
+ }
+ $24 = _GNUNET_get_log_skip() | 0;
+ $25 = ($24 | 0) > 0;
+ if ($25) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $26 = SAFE_HEAP_LOAD(209 * 4 | 0, 4, 0) | 0 | 0;
+ $27 = ($26 | 0) != 0;
+ if (!$27) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer8 | 0, 19405 | 0, 4);
+ $vararg_ptr11 = $vararg_buffer8 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr11 | 0, 203 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer8);
+ _GNUNET_abort_();
+ return 0 | 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 = 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, $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);
+ $4 = sp;
+ $5 = $2 + 7 | 0;
+ $6 = $5 >>> 3;
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $14 = $13 >>> 0 < 4;
+ if ($14) {
+  __gcry_free($7);
+  $$0 = 155;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $15 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+ $16 = $15 << 24 >> 24 == 0;
+ $$ = $16 & 1;
+ $17 = $16 ? 2 : 1;
+ SAFE_HEAP_STORE($4 | 0, $17 | 0, 4);
+ $18 = $7 + $$ | 0;
+ $19 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+    $25 = $24 << 24 >> 24 == 0;
+    if ($25) {
+     $29 = $23;
+     break L17;
+    }
+    $26 = $23 + 1 | 0;
+    SAFE_HEAP_STORE($4 | 0, $26 | 0, 4);
+    $27 = $26 >>> 0 < $13 >>> 0;
+    if ($27) {
+     $23 = $26;
+    } else {
+     $29 = $26;
+     break;
+    }
+   }
+  } else {
+   $29 = $17;
+  }
+ } while (0);
+ $28 = $29 + 1 | 0;
+ $30 = $13 >>> 0 > $28 >>> 0;
+ if (!$30) {
+  __gcry_free($7);
+  $$0 = 155;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ SAFE_HEAP_STORE($4 | 0, $28 | 0, 4);
+ $31 = $7 + $28 | 0;
+ $32 = $13 - $28 | 0;
+ _memmove($7 | 0, $31 | 0, $32 | 0) | 0;
+ SAFE_HEAP_STORE($0 | 0, $7 | 0, 4);
+ SAFE_HEAP_STORE($1 | 0, $32 | 0, 4);
+ $33 = __gcry_get_debug_flag(1) | 0;
+ $34 = ($33 | 0) == 0;
+ if ($34) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $35 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $36 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ __gcry_log_printhex(38777, $35, $36);
+ $$0 = 0;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD(5824 | 0, 1, 0) | 0 | 0;
+ $1 = SAFE_HEAP_LOAD(5856 >> 0 | 0, 1, 0) | 0 | 0;
+ $2 = SAFE_HEAP_LOAD(5888 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = SAFE_HEAP_LOAD(5920 >> 0 | 0, 1, 0) | 0 | 0;
+ $4 = SAFE_HEAP_LOAD(5952 >> 0 | 0, 1, 0) | 0 | 0;
+ $5 = SAFE_HEAP_LOAD(5984 >> 0 | 0, 1, 0) | 0 | 0;
+ $6 = SAFE_HEAP_LOAD(6016 >> 0 | 0, 1, 0) | 0 | 0;
+ $7 = SAFE_HEAP_LOAD(6048 >> 0 | 0, 1, 0) | 0 | 0;
+ $8 = SAFE_HEAP_LOAD(6080 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = SAFE_HEAP_LOAD(6112 >> 0 | 0, 1, 0) | 0 | 0;
+ $10 = SAFE_HEAP_LOAD(6144 >> 0 | 0, 1, 0) | 0 | 0;
+ $11 = SAFE_HEAP_LOAD(6176 >> 0 | 0, 1, 0) | 0 | 0;
+ $12 = SAFE_HEAP_LOAD(6208 >> 0 | 0, 1, 0) | 0 | 0;
+ $13 = SAFE_HEAP_LOAD(6240 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = SAFE_HEAP_LOAD(6272 >> 0 | 0, 1, 0) | 0 | 0;
+ $15 = SAFE_HEAP_LOAD(6304 >> 0 | 0, 1, 0) | 0 | 0;
+ $16 = SAFE_HEAP_LOAD(6336 >> 0 | 0, 1, 0) | 0 | 0;
+ $17 = SAFE_HEAP_LOAD(6368 >> 0 | 0, 1, 0) | 0 | 0;
+ $18 = SAFE_HEAP_LOAD(6400 >> 0 | 0, 1, 0) | 0 | 0;
+ $19 = SAFE_HEAP_LOAD(6432 >> 0 | 0, 1, 0) | 0 | 0;
+ $20 = SAFE_HEAP_LOAD(6464 >> 0 | 0, 1, 0) | 0 | 0;
+ $21 = SAFE_HEAP_LOAD(6496 >> 0 | 0, 1, 0) | 0 | 0;
+ $22 = SAFE_HEAP_LOAD(6528 >> 0 | 0, 1, 0) | 0 | 0;
+ $23 = SAFE_HEAP_LOAD(6560 >> 0 | 0, 1, 0) | 0 | 0;
+ $24 = SAFE_HEAP_LOAD(6592 >> 0 | 0, 1, 0) | 0 | 0;
+ $25 = SAFE_HEAP_LOAD(6624 >> 0 | 0, 1, 0) | 0 | 0;
+ $26 = SAFE_HEAP_LOAD(6656 >> 0 | 0, 1, 0) | 0 | 0;
+ $27 = SAFE_HEAP_LOAD(6688 >> 0 | 0, 1, 0) | 0 | 0;
+ $28 = SAFE_HEAP_LOAD(6720 >> 0 | 0, 1, 0) | 0 | 0;
+ $29 = SAFE_HEAP_LOAD(6752 >> 0 | 0, 1, 0) | 0 | 0;
+ $30 = SAFE_HEAP_LOAD(6784 >> 0 | 0, 1, 0) | 0 | 0;
+ $31 = SAFE_HEAP_LOAD(6816 >> 0 | 0, 1, 0) | 0 | 0;
+ $32 = SAFE_HEAP_LOAD(6848 >> 0 | 0, 1, 0) | 0 | 0;
+ $33 = SAFE_HEAP_LOAD(6880 >> 0 | 0, 1, 0) | 0 | 0;
+ $34 = SAFE_HEAP_LOAD(6912 >> 0 | 0, 1, 0) | 0 | 0;
+ $35 = SAFE_HEAP_LOAD(6944 >> 0 | 0, 1, 0) | 0 | 0;
+ $36 = SAFE_HEAP_LOAD(6976 >> 0 | 0, 1, 0) | 0 | 0;
+ $37 = SAFE_HEAP_LOAD(7008 >> 0 | 0, 1, 0) | 0 | 0;
+ $38 = SAFE_HEAP_LOAD(7040 >> 0 | 0, 1, 0) | 0 | 0;
+ $39 = SAFE_HEAP_LOAD(7072 >> 0 | 0, 1, 0) | 0 | 0;
+ $40 = SAFE_HEAP_LOAD(7103 >> 0 | 0, 1, 0) | 0 | 0;
+ return;
+}
+
+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$cond = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $5 = $0 + 12 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 20 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = $13 & 4;
+ $15 = $14 << 24 >> 24 == 0;
+ if (!$15) {
+  $$0 = 139;
+  return $$0 | 0;
+ }
+ $16 = $0 + 56 | 0;
+ $17 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 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, 71779, 16) | 0;
+  $$pre = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+  $30 = $29 | 2;
+  SAFE_HEAP_STORE($12 >> 0 | 0, $30 | 0, 1);
+  $43 = $30;
+ } else {
+  $43 = $25;
+ }
+ $31 = $0 + 172 | 0;
+ $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ $33 = $32 + $4 | 0;
+ SAFE_HEAP_STORE($31 | 0, $33 | 0, 4);
+ $34 = $33 >>> 0 < $4 >>> 0;
+ $35 = $0 + 176 | 0;
+ $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+ if ($34) {
+  $37 = $36 + 1 | 0;
+  SAFE_HEAP_STORE($35 | 0, $37 | 0, 4);
+  $38 = $37;
+ } else {
+  $38 = $36;
+ }
+ $39 = $38 >>> 0 > 15;
+ if (!$39) {
+  $40 = ($38 | 0) != 15;
+  $41 = $33 >>> 0 < 4294967265;
+  $or$cond = $40 | $41;
+  if ($or$cond) {
+   $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;
+ SAFE_HEAP_STORE($12 >> 0 | 0, $42 | 0, 1);
+ $$0 = 139;
+ return $$0 | 0;
+}
+
+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, $$3$ph$i = 0, $$339$ph$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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if ($5) {
+  SAFE_HEAP_STORE($3 | 0, $1 | 0, 4);
+  SAFE_HEAP_STORE($0 | 0, $2 | 0, 4);
+  return;
+ }
+ $6 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 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) {
+    SAFE_HEAP_STORE($$045$i >> 0 | 0, 0 | 0, 1);
+    $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) {
+   $$3$ph$i = $$0$lcssa$i;
+   $$339$ph$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;
+    SAFE_HEAP_STORE($23 | 0, 0 | 0, 4);
+    $24 = $22 + 4 | 0;
+    $25 = $24;
+    SAFE_HEAP_STORE($25 | 0, 0 | 0, 4);
+    $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;
+   $$3$ph$i = $scevgep$i;
+   $$339$ph$i = $30;
+  }
+  $31 = ($$339$ph$i | 0) == 0;
+  if (!$31) {
+   $$33942$i = $$339$ph$i;
+   $$343$i = $$3$ph$i;
+   while (1) {
+    SAFE_HEAP_STORE($$343$i >> 0 | 0, 0 | 0, 1);
+    $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);
+ SAFE_HEAP_STORE($3 | 0, $1 | 0, 4);
+ SAFE_HEAP_STORE($0 | 0, $2 | 0, 4);
+ return;
+}
+
+function ___fwritex($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$038 = 0, $$042 = 0, $$1 = 0, $$139 = 0, $$141 = 0, $$143 = 0, $$pre = 
0, $$pre47 = 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, $4 = 0, $5 = 0, $6 = 0, $7 
= 0, $8 = 0, $9 = 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $2 + 16 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if ($5) {
+  $7 = ___towrite($2) | 0;
+  $8 = ($7 | 0) == 0;
+  if ($8) {
+   $$pre = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $11 = $12 - $10 | 0;
+   $13 = $11 >>> 0 < $1 >>> 0;
+   $14 = $10;
+   if ($13) {
+    $15 = $2 + 36 | 0;
+    $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+    $17 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($16 | 0, 127 | 0) | 0) & 127]($2, 
$0, $1) | 0;
+    $$1 = $17;
+    break;
+   }
+   $18 = $2 + 75 | 0;
+   $19 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+   $20 = $19 << 24 >> 24 > -1;
+   L10 : do {
+    if ($20) {
+     $$038 = $1;
+     while (1) {
+      $21 = ($$038 | 0) == 0;
+      if ($21) {
+       $$139 = 0;
+       $$141 = $0;
+       $$143 = $1;
+       $31 = $14;
+       break L10;
+      }
+      $22 = $$038 + -1 | 0;
+      $23 = $0 + $22 | 0;
+      $24 = SAFE_HEAP_LOAD($23 >> 0 | 0, 1, 0) | 0 | 0;
+      $25 = $24 << 24 >> 24 == 10;
+      if ($25) {
+       break;
+      } else {
+       $$038 = $22;
+      }
+     }
+     $26 = $2 + 36 | 0;
+     $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+     $28 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($27 | 0, 127 | 0) | 0) & 127]($2, 
$0, $$038) | 0;
+     $29 = $28 >>> 0 < $$038 >>> 0;
+     if ($29) {
+      $$1 = $28;
+      break L5;
+     }
+     $30 = $0 + $$038 | 0;
+     $$042 = $1 - $$038 | 0;
+     $$pre47 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+     $$139 = $$038;
+     $$141 = $30;
+     $$143 = $$042;
+     $31 = $$pre47;
+    } else {
+     $$139 = 0;
+     $$141 = $0;
+     $$143 = $1;
+     $31 = $14;
+    }
+   } while (0);
+   _memcpy($31 | 0, $$141 | 0, $$143 | 0) | 0;
+   $32 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $33 = $32 + $$143 | 0;
+   SAFE_HEAP_STORE($9 | 0, $33 | 0, 4);
+   $34 = $$139 + $$143 | 0;
+   $$1 = $34;
+  }
+ } while (0);
+ return $$1 | 0;
+}
+
+function _test_keys($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 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, $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, $5 = 0, $6 = 0;
+ var $7 = 0, $8 = 0, $9 = 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $7 = $0 + 4 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_randomize($2, $1, 0);
+ $9 = ($3 | 0) == ($2 | 0);
+ if ($9) {
+  $10 = $2 + 4 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 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;
+    $$ = $42 << 31 >> 31;
+    $$0 = $$;
+   } 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 __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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($2 | 0, $3 | 0, 4);
+ $4 = $1 + 4 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $2 + 4 | 0;
+ SAFE_HEAP_STORE($6 | 0, $5 | 0, 4);
+ $7 = $1 + 40 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $2 + 40 | 0;
+ SAFE_HEAP_STORE($9 | 0, $8 | 0, 4);
+ $10 = $1 + 8 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = __gcry_mpi_copy($11) | 0;
+ $13 = $2 + 8 | 0;
+ SAFE_HEAP_STORE($13 | 0, $12 | 0, 4);
+ $14 = $1 + 12 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = __gcry_mpi_copy($15) | 0;
+ $17 = $2 + 12 | 0;
+ SAFE_HEAP_STORE($17 | 0, $16 | 0, 4);
+ $18 = $1 + 16 | 0;
+ $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+ $20 = __gcry_mpi_copy($19) | 0;
+ $21 = $2 + 16 | 0;
+ SAFE_HEAP_STORE($21 | 0, $20 | 0, 4);
+ $22 = $2 + 20 | 0;
+ __gcry_mpi_point_init($22);
+ $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $24 = $1 + 20 | 0;
+ $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($23, $25) | 0;
+ $26 = $2 + 24 | 0;
+ $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+ $28 = $1 + 24 | 0;
+ $29 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($27, $29) | 0;
+ $30 = $2 + 28 | 0;
+ $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+ $32 = $1 + 28 | 0;
+ $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($31, $33) | 0;
+ $34 = $1 + 32 | 0;
+ $35 = SAFE_HEAP_LOAD($34 | 0, 4, 0) | 0 | 0;
+ $36 = __gcry_mpi_copy($35) | 0;
+ $37 = $2 + 32 | 0;
+ SAFE_HEAP_STORE($37 | 0, $36 | 0, 4);
+ $38 = $1 + 36 | 0;
+ $39 = SAFE_HEAP_LOAD($38 | 0, 4, 0) | 0 | 0;
+ $40 = __gcry_mpi_copy($39) | 0;
+ $41 = $2 + 36 | 0;
+ SAFE_HEAP_STORE($41 | 0, $40 | 0, 4);
+ dest = $0;
+ src = $2;
+ stop = dest + 44 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 4, 0) | 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+  src = src + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ STACKTOP = sp;
+ return;
+}
+
+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, $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, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$vararg_buffer = 0, $vararg_buffer4 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, 
$vararg_ptr3 = 0, $vararg_ptr7 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer4 = sp + 16 | 0;
+ $vararg_buffer = sp;
+ $5 = sp + 36 | 0;
+ $3 = $0;
+ $4 = $1;
+ SAFE_HEAP_STORE($5 | 0, $2 | 0, 4);
+ $9 = $3;
+ $10 = $4;
+ $11 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $12 = _gcry_mpi_scan($9, 5, $10, $11, $5) | 0;
+ $6 = $12;
+ $13 = 0 != ($12 | 0);
+ if (!$13) {
+  STACKTOP = sp;
+  return;
+ }
+ $7 = 140;
+ $14 = SAFE_HEAP_LOAD(240 * 4 | 0, 4, 0) | 0 | 0;
+ $15 = ($14 | 0) == -1;
+ if ($15) {
+  $16 = $7;
+  $17 = _GNUNET_get_log_call_status(1, 20980, 20485, 20583, $16) | 0;
+  SAFE_HEAP_STORE(240 * 4 | 0, $17 | 0, 4);
+ }
+ $18 = _GNUNET_get_log_skip() | 0;
+ $19 = ($18 | 0) > 0;
+ if ($19) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $20 = SAFE_HEAP_LOAD(240 * 4 | 0, 4, 0) | 0 | 0;
+  $21 = ($20 | 0) != 0;
+  if ($21) {
+   $22 = $6;
+   $23 = _gcry_strerror($22) | 0;
+   SAFE_HEAP_STORE($vararg_buffer | 0, 20615 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, 20485 | 0, 4);
+   $vararg_ptr2 = $vararg_buffer + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr2 | 0, 140 | 0, 4);
+   $vararg_ptr3 = $vararg_buffer + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr3 | 0, $23 | 0, 4);
+   _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer);
+  }
+ }
+ $8 = 141;
+ $24 = SAFE_HEAP_LOAD(241 * 4 | 0, 4, 0) | 0 | 0;
+ $25 = ($24 | 0) == -1;
+ if ($25) {
+  $26 = $8;
+  $27 = _GNUNET_get_log_call_status(1, 0, 20485, 20583, $26) | 0;
+  SAFE_HEAP_STORE(241 * 4 | 0, $27 | 0, 4);
+ }
+ $28 = _GNUNET_get_log_skip() | 0;
+ $29 = ($28 | 0) > 0;
+ if ($29) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $30 = SAFE_HEAP_LOAD(241 * 4 | 0, 4, 0) | 0 | 0;
+ $31 = ($30 | 0) != 0;
+ if (!$31) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer4 | 0, 20485 | 0, 4);
+ $vararg_ptr7 = $vararg_buffer4 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr7 | 0, 141 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer4);
+ _GNUNET_abort_();
+}
+
+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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $2 + 8 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $2 + 12 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = $2 + 16 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = $2 + 20 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_normalize($1);
+ $12 = $1 + 4 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = $5 << 1;
+ $15 = ($13 | 0) > ($14 | 0);
+ if ($15) {
+  __gcry_mpi_fdiv_r($0, $1, $3);
+  return;
+ }
+ $16 = $1 + 8 | 0;
+ $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($16 | 0, 0 | 0, 4);
+ __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 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = ($21 | 0) > ($19 | 0);
+ if ($22) {
+  SAFE_HEAP_STORE($20 | 0, $19 | 0, 4);
+ }
+ __gcry_mpi_mul($11, $11, $3);
+ $23 = $11 + 4 | 0;
+ $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ $25 = ($24 | 0) > ($19 | 0);
+ if ($25) {
+  SAFE_HEAP_STORE($23 | 0, $19 | 0, 4);
+ }
+ __gcry_mpi_sub($0, $9, $11);
+ $26 = $0 + 8 | 0;
+ $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+ $28 = ($27 | 0) == 0;
+ if (!$28) {
+  $29 = $2 + 24 | 0;
+  $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+  $31 = ($30 | 0) == (0 | 0);
+  if ($31) {
+   $32 = $5 + 2 | 0;
+   $33 = __gcry_mpi_alloc($32) | 0;
+   SAFE_HEAP_STORE($29 | 0, $33 | 0, 4);
+   __gcry_mpi_set_ui($33, 1) | 0;
+   $34 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_lshift_limbs($34, $19);
+   $$pre = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 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;
+   }
+  }
+ }
+ SAFE_HEAP_STORE($16 | 0, $17 | 0, 4);
+ 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 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 1;
+ if ($2) {
+  __gcry_assert_failed(23733, 23278, 295, 23752);
+ }
+ $3 = SAFE_HEAP_LOAD(17608 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == 0;
+ if (!$4) {
+  _fips_new_state(4);
+  $5 = ($0 | 0) != (0 | 0);
+  $6 = $5 ? $0 : 23779;
+  SAFE_HEAP_STORE($vararg_buffer | 0, 71847 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 23278 | 0, 4);
+  $vararg_ptr2 = $vararg_buffer + 8 | 0;
+  SAFE_HEAP_STORE($vararg_ptr2 | 0, 300 | 0, 4);
+  $vararg_ptr3 = $vararg_buffer + 12 | 0;
+  SAFE_HEAP_STORE($vararg_ptr3 | 0, 23852 | 0, 4);
+  $vararg_ptr4 = $vararg_buffer + 16 | 0;
+  SAFE_HEAP_STORE($vararg_ptr4 | 0, 23752 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer + 20 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, $6 | 0, 4);
+  __gcry_log_info(23804, $vararg_buffer);
+  STACKTOP = sp;
+  return;
+ }
+ $7 = _gpgrt_lock_lock(1312) | 0;
+ $8 = ($7 | 0) == 0;
+ if (!$8) {
+  $9 = _gpg_strerror($7) | 0;
+  SAFE_HEAP_STORE($vararg_buffer6 | 0, $9 | 0, 4);
+  __gcry_log_info(23505, $vararg_buffer6);
+  _abort();
+ }
+ $10 = SAFE_HEAP_LOAD(17610 * 4 | 0, 4, 0) | 0 | 0;
+ $11 = ($10 | 0) == 0;
+ if ($11) {
+  SAFE_HEAP_STORE(17610 * 4 | 0, 1 | 0, 4);
+  $12 = _gpgrt_lock_unlock(1312) | 0;
+  $13 = ($12 | 0) == 0;
+  if ($13) {
+   STACKTOP = sp;
+   return;
+  } else {
+   $14 = _gpg_strerror($12) | 0;
+   SAFE_HEAP_STORE($vararg_buffer9 | 0, $14 | 0, 4);
+   __gcry_log_info(23560, $vararg_buffer9);
+   _abort();
+  }
+ } else {
+  $15 = _gpgrt_lock_unlock(1312) | 0;
+  $16 = ($15 | 0) == 0;
+  if ($16) {
+   STACKTOP = sp;
+   return;
+  } else {
+   $17 = _gpg_strerror($15) | 0;
+   SAFE_HEAP_STORE($vararg_buffer12 | 0, $17 | 0, 4);
+   __gcry_log_info(23560, $vararg_buffer12);
+   _abort();
+  }
+ }
+}
+
+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(22673, $0) | 0;
+ $2 = ($1 | 0) == 0;
+ if ($2) {
+  $$07$lcssa = 0;
+ } else {
+  $7 = _strcmp(22685, $0) | 0;
+  $8 = ($7 | 0) == 0;
+  if ($8) {
+   $$07$lcssa = 1;
+  } else {
+   $9 = _strcmp(22697, $0) | 0;
+   $10 = ($9 | 0) == 0;
+   if ($10) {
+    $$07$lcssa = 2;
+   } else {
+    $11 = _strcmp(22709, $0) | 0;
+    $12 = ($11 | 0) == 0;
+    if ($12) {
+     $$07$lcssa = 3;
+    } else {
+     $13 = _strcmp(22722, $0) | 0;
+     $14 = ($13 | 0) == 0;
+     if ($14) {
+      $$07$lcssa = 4;
+     } else {
+      $15 = _strcmp(22732, $0) | 0;
+      $16 = ($15 | 0) == 0;
+      if ($16) {
+       $$07$lcssa = 5;
+      } else {
+       $17 = _strcmp(22743, $0) | 0;
+       $18 = ($17 | 0) == 0;
+       if ($18) {
+        $$07$lcssa = 6;
+       } else {
+        $19 = _strcmp(22755, $0) | 0;
+        $20 = ($19 | 0) == 0;
+        if ($20) {
+         $$07$lcssa = 7;
+        } else {
+         $21 = _strcmp(22768, $0) | 0;
+         $22 = ($21 | 0) == 0;
+         if ($22) {
+          $$07$lcssa = 8;
+         } else {
+          $23 = _strcmp(22780, $0) | 0;
+          $24 = ($23 | 0) == 0;
+          if ($24) {
+           $$07$lcssa = 9;
+          } else {
+           $25 = _strcmp(22793, $0) | 0;
+           $26 = ($25 | 0) == 0;
+           if ($26) {
+            $$07$lcssa = 10;
+           } else {
+            $27 = _strcmp(22803, $0) | 0;
+            $28 = ($27 | 0) == 0;
+            if ($28) {
+             $$07$lcssa = 11;
+            } else {
+             $29 = _strcmp(22814, $0) | 0;
+             $30 = ($29 | 0) == 0;
+             if ($30) {
+              $$07$lcssa = 12;
+             } else {
+              $$05 = 88;
+              return $$05 | 0;
+             }
+            }
+           }
+          }
+         }
+        }
+       }
+      }
+     }
+    }
+   }
+  }
+ }
+ $3 = 1164 + ($$07$lcssa << 3) | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = SAFE_HEAP_LOAD(17593 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = $5 | $4;
+ SAFE_HEAP_STORE(17593 * 4 | 0, $6 | 0, 4);
+ $$05 = 0;
+ return $$05 | 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 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+ $8 = $7 & 1;
+ $9 = $8 << 24 >> 24 == 0;
+ if ($9) {
+  $$0 = 156;
+  return $$0 | 0;
+ }
+ $10 = $0 + 56 | 0;
+ $11 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+ $20 = $17 + 4 | 0;
+ $21 = $20;
+ $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+ $30 = $27 + 4 | 0;
+ $31 = $30;
+ $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ $33 = 0 > $32 >>> 0;
+ $34 = $4 >>> 0 > $29 >>> 0;
+ $35 = 0 == ($32 | 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 = SAFE_HEAP_LOAD($41 | 0, 4, 0) | 0 | 0;
+ $43 = $40 + 4 | 0;
+ $44 = $43;
+ $45 = SAFE_HEAP_LOAD($44 | 0, 4, 0) | 0 | 0;
+ $46 = _i64Subtract($42 | 0, $45 | 0, $4 | 0, 0) | 0;
+ $47 = tempRet0;
+ $48 = $26;
+ $49 = $48;
+ SAFE_HEAP_STORE($49 | 0, $46 | 0, 4);
+ $50 = $48 + 4 | 0;
+ $51 = $50;
+ SAFE_HEAP_STORE($51 | 0, $47 | 0, 4);
+ $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 ___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;
+ $3 = sp + 16 | 0;
+ SAFE_HEAP_STORE($3 | 0, $1 | 0, 4);
+ $4 = $3 + 4 | 0;
+ $5 = $0 + 48 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) != 0;
+ $8 = $7 & 1;
+ $9 = $2 - $8 | 0;
+ SAFE_HEAP_STORE($4 | 0, $9 | 0, 4);
+ $10 = $3 + 8 | 0;
+ $11 = $0 + 44 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($10 | 0, $12 | 0, 4);
+ $13 = $3 + 12 | 0;
+ SAFE_HEAP_STORE($13 | 0, $6 | 0, 4);
+ $14 = $0 + 60 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = $3;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $15 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $16 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, 2 | 0, 4);
+ $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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $23 = $22 | $21;
+  SAFE_HEAP_STORE($0 | 0, $23 | 0, 4);
+  $$0 = $18;
+ } else {
+  $24 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $25 = $18 >>> 0 > $24 >>> 0;
+  if ($25) {
+   $26 = $18 - $24 | 0;
+   $27 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+   $28 = $0 + 4 | 0;
+   SAFE_HEAP_STORE($28 | 0, $27 | 0, 4);
+   $$cast = $27;
+   $29 = $$cast + $26 | 0;
+   $30 = $0 + 8 | 0;
+   SAFE_HEAP_STORE($30 | 0, $29 | 0, 4);
+   $31 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $32 = ($31 | 0) == 0;
+   if ($32) {
+    $$0 = $2;
+   } else {
+    $33 = $$cast + 1 | 0;
+    SAFE_HEAP_STORE($28 | 0, $33 | 0, 4);
+    $34 = SAFE_HEAP_LOAD($$cast >> 0 | 0, 1, 0) | 0 | 0;
+    $35 = $2 + -1 | 0;
+    $36 = $1 + $35 | 0;
+    SAFE_HEAP_STORE($36 >> 0 | 0, $34 | 0, 1);
+    $$0 = $2;
+   }
+  } else {
+   $$0 = $18;
+  }
+ }
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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, 
$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_buffer1 = 0, $vararg_buffer4 = 0, $vararg_ptr7 = 0, label = 0, sp = 
0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer4 = sp + 16 | 0;
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $7 = $3;
+ switch ($7 | 0) {
+ case 1:
+  {
+   $8 = SAFE_HEAP_LOAD(17574 * 4 | 0, 4, 0) | 0 | 0;
+   $9 = $8 + 1 | 0;
+   SAFE_HEAP_STORE(17574 * 4 | 0, $9 | 0, 4);
+   $10 = ($8 >>> 0) % 256 & -1;
+   $11 = ($10 | 0) == 0;
+   if ($11) {
+    SAFE_HEAP_STORE($vararg_buffer | 0, 0 | 0, 4);
+    _gcry_control(48, $vararg_buffer) | 0;
+   }
+   $12 = $4;
+   $13 = $5;
+   _gcry_randomize($12, $13, 1);
+   STACKTOP = sp;
+   return;
+   break;
+  }
+ case 2:
+  {
+   $14 = $4;
+   $15 = $5;
+   _gcry_create_nonce($14, $15);
+   STACKTOP = sp;
+   return;
+   break;
+  }
+ case 0:
+  {
+   $16 = SAFE_HEAP_LOAD(17574 * 4 | 0, 4, 0) | 0 | 0;
+   $17 = $16 + 1 | 0;
+   SAFE_HEAP_STORE(17574 * 4 | 0, $17 | 0, 4);
+   $18 = ($16 >>> 0) % 256 & -1;
+   $19 = ($18 | 0) == 0;
+   if ($19) {
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, 0 | 0, 4);
+    _gcry_control(48, $vararg_buffer1) | 0;
+   }
+   $20 = $4;
+   $21 = $5;
+   _gcry_randomize($20, $21, 0);
+   STACKTOP = sp;
+   return;
+   break;
+  }
+ default:
+  {
+   $6 = 135;
+   $22 = SAFE_HEAP_LOAD(245 * 4 | 0, 4, 0) | 0 | 0;
+   $23 = ($22 | 0) == -1;
+   if ($23) {
+    $24 = $6;
+    $25 = _GNUNET_get_log_call_status(1, 0, 20701, 20842, $24) | 0;
+    SAFE_HEAP_STORE(245 * 4 | 0, $25 | 0, 4);
+   }
+   $26 = _GNUNET_get_log_skip() | 0;
+   $27 = ($26 | 0) > 0;
+   if ($27) {
+    _GNUNET_log_skip(-1, 0);
+    _GNUNET_abort_();
+   }
+   $28 = SAFE_HEAP_LOAD(245 * 4 | 0, 4, 0) | 0 | 0;
+   $29 = ($28 | 0) != 0;
+   if (!$29) {
+    _GNUNET_abort_();
+   }
+   SAFE_HEAP_STORE($vararg_buffer4 | 0, 20701 | 0, 4);
+   $vararg_ptr7 = $vararg_buffer4 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr7 | 0, 135 | 0, 4);
+   _GNUNET_log_nocheck(1, 61295, $vararg_buffer4);
+   _GNUNET_abort_();
+  }
+ }
+}
+
+function _lock_seed_file($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$0 = 0, $$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, $3 = 0, $4 = 
0, $5 = 0, $6 = 0, $7 = 0;
+ var $8 = 0, $9 = 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;
+ {}
+ SAFE_HEAP_STORE($3 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($3 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($3 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($3 + 12 | 0, 0 | 0 | 0, 4);
+ $5 = ($2 | 0) != 0;
+ $6 = $5 & 1;
+ SAFE_HEAP_STORE($3 | 0, $6 | 0, 2);
+ $7 = $3 + 2 | 0;
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 2);
+ SAFE_HEAP_STORE($vararg_buffer | 0, $3 | 0, 4);
+ $8 = _fcntl($0, 13, $vararg_buffer) | 0;
+ $9 = ($8 | 0) == -1;
+ if (!$9) {
+  $$09 = 0;
+  STACKTOP = sp;
+  return $$09 | 0;
+ }
+ $10 = ___errno_location() | 0;
+ $11 = $4 + 4 | 0;
+ $$010 = 0;
+ L4 : while (1) {
+  $12 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  switch ($12 | 0) {
+  case 13:
+  case 11:
+   {
+    break;
+   }
+  default:
+   {
+    break L4;
+   }
+  }
+  $16 = ($$010 | 0) > 2;
+  if ($16) {
+   $17 = __gcry_gettext(50839) | 0;
+   SAFE_HEAP_STORE($vararg_buffer5 | 0, $1 | 0, 4);
+   __gcry_log_info($17, $vararg_buffer5);
+  }
+  SAFE_HEAP_STORE($4 | 0, $$010 | 0, 4);
+  SAFE_HEAP_STORE($11 | 0, 25e4 | 0, 4);
+  _select(0, 0, 0, 0, $4) | 0;
+  $18 = ($$010 | 0) < 10;
+  $19 = $18 & 1;
+  $$$0 = $19 + $$010 | 0;
+  SAFE_HEAP_STORE($vararg_buffer8 | 0, $3 | 0, 4);
+  $20 = _fcntl($0, 13, $vararg_buffer8) | 0;
+  $21 = ($20 | 0) == -1;
+  if ($21) {
+   $$010 = $$$0;
+  } else {
+   $$09 = 0;
+   label = 8;
+   break;
+  }
+ }
+ if ((label | 0) == 8) {
+  STACKTOP = sp;
+  return $$09 | 0;
+ }
+ $13 = __gcry_gettext(50818) | 0;
+ $14 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $15 = _strerror($14) | 0;
+ SAFE_HEAP_STORE($vararg_buffer1 | 0, $1 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer1 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $15 | 0, 4);
+ __gcry_log_info($13, $vararg_buffer1);
+ $$09 = -1;
+ STACKTOP = sp;
+ return $$09 | 0;
+}
+
+function __gcry_cipher_selftest($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$i$i = 0, $$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;
+ 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;
+ $3 = SAFE_HEAP_LOAD(1088 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == ($0 | 0);
+ if ($4) {
+  $$ph = 4352;
+  label = 6;
+ } else {
+  $5 = SAFE_HEAP_LOAD(1806 * 4 | 0, 4, 0) | 0 | 0;
+  $6 = ($5 | 0) == ($0 | 0);
+  if ($6) {
+   $$ph = 7224;
+   label = 6;
+  } else {
+   $7 = SAFE_HEAP_LOAD(1835 * 4 | 0, 4, 0) | 0 | 0;
+   $8 = ($7 | 0) == ($0 | 0);
+   if ($8) {
+    $$ph = 7340;
+    label = 6;
+   } else {
+    $9 = SAFE_HEAP_LOAD(1987 * 4 | 0, 4, 0) | 0 | 0;
+    $10 = ($9 | 0) == ($0 | 0);
+    if ($10) {
+     $$ph = 7948;
+     label = 6;
+    } else {
+     $11 = SAFE_HEAP_LOAD(3027 * 4 | 0, 4, 0) | 0 | 0;
+     $12 = ($11 | 0) == ($0 | 0);
+     if ($12) {
+      $$ph = 12108;
+      label = 6;
+     } else {
+      $23 = 0;
+      $27 = 0;
+      label = 9;
+     }
+    }
+   }
+  }
+ }
+ if ((label | 0) == 6) {
+  $13 = $$ph + 4 | 0;
+  $14 = SAFE_HEAP_LOAD($13 >> 0 | 0, 1, 0) | 0 | 0;
+  $15 = $14 & 1;
+  $16 = $15 << 24 >> 24 == 0;
+  if ($16) {
+   $17 = $$ph + 52 | 0;
+   $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+   $19 = ($18 | 0) == (0 | 0);
+   if ($19) {
+    $23 = $$ph;
+    $27 = 1;
+    label = 9;
+   } else {
+    $20 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($18 | 0, 127 | 0) | 0) & 127]($0, 
$1, $2) | 0;
+    $$0 = $20;
+   }
+  } else {
+   $23 = $$ph;
+   $27 = 1;
+   label = 9;
+  }
+ }
+ if ((label | 0) == 9) {
+  $21 = ($2 | 0) == (0 | 0);
+  if ($21) {
+   $$0 = 12;
+  } else {
+   if ($27) {
+    $22 = $23 + 4 | 0;
+    $24 = SAFE_HEAP_LOAD($22 >> 0 | 0, 1, 0) | 0 | 0;
+    $25 = $24 & 1;
+    $26 = $25 << 24 >> 24 == 0;
+    if ($26) {
+     $29 = 37736;
+    } else {
+     label = 12;
+    }
+   } else {
+    label = 12;
+   }
+   if ((label | 0) == 12) {
+    $28 = $27 ? 37697 : 37716;
+    $29 = $28;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](37899, $0, 
37758, $29);
+   $$0 = 12;
+  }
+ }
+ $30 = ($$0 | 0) == 0;
+ $31 = $$0 & 65535;
+ $32 = $31 | 16777216;
+ $$$i$i = $30 ? 0 : $32;
+ return $$$i$i | 0;
+}
+
+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$cond = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $5 = $0 + 12 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 20 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = $13 & 4;
+ $15 = $14 << 24 >> 24 == 0;
+ if (!$15) {
+  $$0 = 139;
+  return $$0 | 0;
+ }
+ $16 = $0 + 56 | 0;
+ $17 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 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, 71795, 16) | 0;
+  $$pre = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($12 >> 0 | 0, 1, 0) | 0 | 0;
+  $28 = $27 | 2;
+  SAFE_HEAP_STORE($12 >> 0 | 0, $28 | 0, 1);
+  $41 = $28;
+ } else {
+  $41 = $25;
+ }
+ $29 = $0 + 172 | 0;
+ $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+ $31 = $30 + $4 | 0;
+ SAFE_HEAP_STORE($29 | 0, $31 | 0, 4);
+ $32 = $31 >>> 0 < $4 >>> 0;
+ $33 = $0 + 176 | 0;
+ $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+ if ($32) {
+  $35 = $34 + 1 | 0;
+  SAFE_HEAP_STORE($33 | 0, $35 | 0, 4);
+  $36 = $35;
+ } else {
+  $36 = $34;
+ }
+ $37 = $36 >>> 0 > 15;
+ if (!$37) {
+  $38 = ($36 | 0) != 15;
+  $39 = $31 >>> 0 < 4294967265;
+  $or$cond = $38 | $39;
+  if ($or$cond) {
+   _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;
+ SAFE_HEAP_STORE($12 >> 0 | 0, $40 | 0, 1);
+ $$0 = 139;
+ return $$0 | 0;
+}
+
+function ___gcry_burn_stack($0) {
+ $0 = $0 | 0;
+ var $$0$lcssa = 0, $$034$lcssa = 0, $$03442 = 0, $$043 = 0, $$1 = 0, $$135 = 
0, $$3$ph = 0, $$337$ph = 0, $$33740 = 0, $$341 = 0, $$alloca_mul = 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, $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;
+ var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $scevgep = 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 = $6;
+ $8 = $7 & 7;
+ $9 = ($8 | 0) != 0;
+ $10 = ($5 | 0) != 0;
+ $11 = $10 & $9;
+ if ($11) {
+  $$03442 = $5;
+  $$043 = $6;
+  while (1) {
+   SAFE_HEAP_STORE($$043 >> 0 | 0, 0 | 0, 1);
+   $12 = $$043 + 1 | 0;
+   $13 = $$03442 + -1 | 0;
+   $14 = $12;
+   $15 = $14 & 7;
+   $16 = ($15 | 0) != 0;
+   $17 = ($13 | 0) != 0;
+   $18 = $17 & $16;
+   if ($18) {
+    $$03442 = $13;
+    $$043 = $12;
+   } else {
+    $$0$lcssa = $12;
+    $$034$lcssa = $13;
+    break;
+   }
+  }
+ } else {
+  $$0$lcssa = $6;
+  $$034$lcssa = $5;
+ }
+ $19 = $$034$lcssa >>> 0 < 8;
+ if ($19) {
+  $$3$ph = $$0$lcssa;
+  $$337$ph = $$034$lcssa;
+ } else {
+  $20 = $$034$lcssa + -8 | 0;
+  $21 = $20 & -8;
+  $22 = $21 + 8 | 0;
+  $$1 = $$0$lcssa;
+  $$135 = $$034$lcssa;
+  while (1) {
+   $23 = $$1;
+   $24 = $23;
+   SAFE_HEAP_STORE($24 | 0, 0 | 0, 4);
+   $25 = $23 + 4 | 0;
+   $26 = $25;
+   SAFE_HEAP_STORE($26 | 0, 0 | 0, 4);
+   $27 = $$135 + -8 | 0;
+   $28 = $$1 + 8 | 0;
+   $29 = $27 >>> 0 > 7;
+   if ($29) {
+    $$1 = $28;
+    $$135 = $27;
+   } else {
+    break;
+   }
+  }
+  $30 = $20 - $21 | 0;
+  $scevgep = $$0$lcssa + $22 | 0;
+  $$3$ph = $scevgep;
+  $$337$ph = $30;
+ }
+ $31 = ($$337$ph | 0) == 0;
+ if ($31) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $$33740 = $$337$ph;
+  $$341 = $$3$ph;
+ }
+ while (1) {
+  SAFE_HEAP_STORE($$341 >> 0 | 0, 0 | 0, 1);
+  $32 = $$341 + 1 | 0;
+  $33 = $$33740 + -1 | 0;
+  $34 = ($33 | 0) == 0;
+  if ($34) {
+   break;
+  } else {
+   $$33740 = $33;
+   $$341 = $32;
+  }
+ }
+ STACKTOP = sp;
+ return;
+}
+
+function _getValue__($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, $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 = $0;
+ $4 = $2;
+ $5 = $4 & 255;
+ switch ($5 | 0) {
+ case 111:
+ case 79:
+  {
+   $2 = 48;
+   break;
+  }
+ case 76:
+ case 108:
+ case 73:
+ case 105:
+  {
+   $2 = 49;
+   break;
+  }
+ case 85:
+ case 117:
+  {
+   $2 = 86;
+   break;
+  }
+ default:
+  {}
+ }
+ $6 = $2;
+ $7 = $6 & 255;
+ $8 = ($7 | 0) >= 48;
+ if ($8) {
+  $9 = $2;
+  $10 = $9 & 255;
+  $11 = ($10 | 0) <= 57;
+  if ($11) {
+   $12 = $2;
+   $13 = $12 & 255;
+   $14 = $13 - 48 | 0;
+   $1 = $14;
+   $57 = $1;
+   STACKTOP = sp;
+   return $57 | 0;
+  }
+ }
+ $15 = $2;
+ $16 = $15 & 255;
+ $17 = ($16 | 0) >= 97;
+ if ($17) {
+  $18 = $2;
+  $19 = $18 & 255;
+  $20 = ($19 | 0) <= 122;
+  if ($20) {
+   $21 = $2;
+   $22 = $21 & 255;
+   $23 = _toupper($22) | 0;
+   $24 = $23 & 255;
+   $2 = $24;
+  }
+ }
+ $3 = 0;
+ $25 = $2;
+ $26 = $25 & 255;
+ $27 = ($26 | 0) >= 65;
+ if ($27) {
+  $28 = $2;
+  $29 = $28 & 255;
+  $30 = ($29 | 0) <= 90;
+  if ($30) {
+   $31 = $2;
+   $32 = $31 & 255;
+   $33 = 73 < ($32 | 0);
+   if ($33) {
+    $34 = $3;
+    $35 = $34 + 1 | 0;
+    $3 = $35;
+   }
+   $36 = $2;
+   $37 = $36 & 255;
+   $38 = 76 < ($37 | 0);
+   if ($38) {
+    $39 = $3;
+    $40 = $39 + 1 | 0;
+    $3 = $40;
+   }
+   $41 = $2;
+   $42 = $41 & 255;
+   $43 = 79 < ($42 | 0);
+   if ($43) {
+    $44 = $3;
+    $45 = $44 + 1 | 0;
+    $3 = $45;
+   }
+   $46 = $2;
+   $47 = $46 & 255;
+   $48 = 85 < ($47 | 0);
+   if ($48) {
+    $49 = $3;
+    $50 = $49 + 1 | 0;
+    $3 = $50;
+   }
+   $51 = $2;
+   $52 = $51 & 255;
+   $53 = $52 - 65 | 0;
+   $54 = $53 + 10 | 0;
+   $55 = $3;
+   $56 = $54 - $55 | 0;
+   $1 = $56;
+   $57 = $1;
+   STACKTOP = sp;
+   return $57 | 0;
+  }
+ }
+ $1 = -1;
+ $57 = $1;
+ STACKTOP = sp;
+ return $57 | 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 + 8 | 0;
+ $6 = sp + 4 | 0;
+ $7 = sp;
+ $8 = $1 + 7 | 0;
+ $9 = $8 >>> 3;
+ SAFE_HEAP_STORE($6 | 0, $9 | 0, 4);
+ SAFE_HEAP_STORE($7 | 0, 100 | 0, 4);
+ $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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 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;
+ }
+ SAFE_HEAP_STORE($19 >> 0 | 0, 0 | 0, 1);
+ $22 = $19 + 1 | 0;
+ SAFE_HEAP_STORE($22 >> 0 | 0, 1 | 0, 1);
+ $23 = $9 - $3 | 0;
+ $24 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $25 = $23 - $24 | 0;
+ $26 = $25 + -3 | 0;
+ $27 = ($26 | 0) > 1;
+ if (!$27) {
+  __gcry_assert_failed(38831, 38688, 303, 38837);
+ }
+ $28 = $19 + 2 | 0;
+ _memset($28 | 0, -1, $26 | 0) | 0;
+ $29 = $25 + -1 | 0;
+ $30 = $19 + $29 | 0;
+ SAFE_HEAP_STORE($30 >> 0 | 0, 0 | 0, 1);
+ $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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   __gcry_log_printmpi(38868, $37);
+  }
+ }
+ __gcry_free($19);
+ $$0 = $33;
+ STACKTOP = sp;
+ 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, $27 = 0, $4 = 0, $5 = 0;
+ var $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, 
$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, 36051) | 0;
+ $8 = ($7 | 0) != 0;
+ $9 = $8 ? $0 : 42873;
+ $10 = ($7 | 0) == 0;
+ $11 = $10 ? 23871 : 71847;
+ $12 = _strcmp($0, 37899) | 0;
+ $13 = ($12 | 0) == 0;
+ do {
+  if ($13) {
+   $14 = __gcry_cipher_algo_name($1) | 0;
+   $27 = $14;
+  } else {
+   $15 = _strcmp($0, 42873) | 0;
+   $16 = ($15 | 0) == 0;
+   if ($16) {
+    $17 = __gcry_md_algo_name($1) | 0;
+    $27 = $17;
+    break;
+   }
+   if ($10) {
+    $18 = __gcry_md_algo_name($1) | 0;
+    $27 = $18;
+    break;
+   }
+   $19 = _strcmp($0, 40871) | 0;
+   $20 = ($19 | 0) == 0;
+   if ($20) {
+    $21 = __gcry_pk_algo_name($1) | 0;
+    $27 = $21;
+   } else {
+    $27 = 71847;
+   }
+  }
+ } while (0);
+ $22 = $4 ? $3 : 23877;
+ $23 = ($2 | 0) != (0 | 0);
+ $24 = $23 ? 23882 : 71847;
+ $25 = $23 ? $2 : 71847;
+ $26 = $23 ? 46947 : 71847;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $9 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $11 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $27 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $1 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer + 16 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $22 | 0, 4);
+ $vararg_ptr5 = $vararg_buffer + 20 | 0;
+ SAFE_HEAP_STORE($vararg_ptr5 | 0, $24 | 0, 4);
+ $vararg_ptr6 = $vararg_buffer + 24 | 0;
+ SAFE_HEAP_STORE($vararg_ptr6 | 0, $25 | 0, 4);
+ $vararg_ptr7 = $vararg_buffer + 28 | 0;
+ SAFE_HEAP_STORE($vararg_ptr7 | 0, $26 | 0, 4);
+ __gcry_log_info(23885, $vararg_buffer);
+ STACKTOP = sp;
+ return;
+}
+
+function _data_to_eddsa_value($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_buffer3 = 0, 
$vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, 
$vararg_ptr8 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 128 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(128 | 0);
+ $vararg_buffer3 = sp + 16 | 0;
+ $vararg_buffer = sp;
+ $3 = sp + 48 | 0;
+ $4 = sp + 40 | 0;
+ $2 = $0;
+ $7 = $2;
+ $8 = $2;
+ $9 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($8 + 1 >> 0 | 0, 
1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($8 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($8 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+ $10 = _ntohl($9) | 0;
+ _GNUNET_CRYPTO_hash($7, $10, $3);
+ SAFE_HEAP_STORE($vararg_buffer | 0, 37609 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 64 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $3 | 0, 4);
+ $11 = _gcry_sexp_build($4, 0, 20038, $vararg_buffer) | 0;
+ $5 = $11;
+ $12 = 0 != ($11 | 0);
+ if (!$12) {
+  $23 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $1 = $23;
+  $24 = $1;
+  STACKTOP = sp;
+  return $24 | 0;
+ }
+ $6 = 698;
+ $13 = SAFE_HEAP_LOAD(221 * 4 | 0, 4, 0) | 0 | 0;
+ $14 = ($13 | 0) == -1;
+ if ($14) {
+  $15 = $6;
+  $16 = _GNUNET_get_log_call_status(1, 20980, 19405, 20082, $15) | 0;
+  SAFE_HEAP_STORE(221 * 4 | 0, $16 | 0, 4);
+ }
+ $17 = _GNUNET_get_log_skip() | 0;
+ $18 = ($17 | 0) > 0;
+ if ($18) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $19 = SAFE_HEAP_LOAD(221 * 4 | 0, 4, 0) | 0 | 0;
+  $20 = ($19 | 0) != 0;
+  if ($20) {
+   $21 = $5;
+   $22 = _gcry_strerror($21) | 0;
+   SAFE_HEAP_STORE($vararg_buffer3 | 0, 19528 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, 19405 | 0, 4);
+   $vararg_ptr7 = $vararg_buffer3 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr7 | 0, 698 | 0, 4);
+   $vararg_ptr8 = $vararg_buffer3 + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr8 | 0, $22 | 0, 4);
+   _GNUNET_log_from_nocheck(1, 20980, 20531, $vararg_buffer3);
+  }
+ }
+ $1 = 0;
+ $24 = $1;
+ STACKTOP = sp;
+ return $24 | 0;
+}
+
+function _output_message($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, $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, $vararg_buffer = 
0, $vararg_buffer2 = 0, $vararg_ptr5 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $4 = $0;
+ $5 = $1;
+ $6 = $2;
+ $7 = $3;
+ $9 = SAFE_HEAP_LOAD(17562 * 4 | 0, 4, 0) | 0 | 0;
+ $10 = (0 | 0) != ($9 | 0);
+ $11 = SAFE_HEAP_LOAD(17571 * 4 | 0, 4, 0) | 0 | 0;
+ $12 = (0 | 0) == ($11 | 0);
+ $or$cond = $10 & $12;
+ if ($or$cond) {
+  $13 = $4;
+  $14 = ($13 | 0) == 4;
+  $15 = SAFE_HEAP_LOAD(17562 * 4 | 0, 4, 0) | 0 | 0;
+  if ($14) {
+   $16 = $7;
+   SAFE_HEAP_STORE($vararg_buffer | 0, $16 | 0, 4);
+   _fprintf($15, 19156, $vararg_buffer) | 0;
+  } else {
+   $17 = $6;
+   $18 = $5;
+   $19 = $4;
+   $20 = _GNUNET_error_type_to_string($19) | 0;
+   $21 = $7;
+   SAFE_HEAP_STORE($vararg_buffer2 | 0, $17 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, $18 | 0, 4);
+   $vararg_ptr6 = $vararg_buffer2 + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr6 | 0, $20 | 0, 4);
+   $vararg_ptr7 = $vararg_buffer2 + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr7 | 0, $21 | 0, 4);
+   _fprintf($15, 19161, $vararg_buffer2) | 0;
+  }
+  $22 = SAFE_HEAP_LOAD(17562 * 4 | 0, 4, 0) | 0 | 0;
+  _fflush($22) | 0;
+ }
+ $23 = SAFE_HEAP_LOAD(17571 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = $23;
+ while (1) {
+  $24 = $8;
+  $25 = ($24 | 0) != (0 | 0);
+  if (!$25) {
+   break;
+  }
+  $26 = $8;
+  $27 = $26 + 4 | 0;
+  $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+  $29 = $8;
+  $30 = $29 + 8 | 0;
+  $31 = SAFE_HEAP_LOAD($30 | 0, 4, 0) | 0 | 0;
+  $32 = $4;
+  $33 = $5;
+  $34 = $6;
+  $35 = $7;
+  FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($28 | 0, 127 | 0) | 0) & 127]($31, $32, 
$33, $34, $35);
+  $36 = $8;
+  $37 = SAFE_HEAP_LOAD($36 | 0, 4, 0) | 0 | 0;
+  $8 = $37;
+ }
+ STACKTOP = sp;
+ 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 + 112 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(112 | 0);
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $3 = sp + 12 | 0;
+ $4 = ($1 | 0) == (0 | 0);
+ if ($4) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+  _snprintf($3, 99, 45331, $vararg_buffer) | 0;
+  __gcry_log_printmpi($3, 0);
+  STACKTOP = sp;
+  return;
+ }
+ SAFE_HEAP_STORE($vararg_buffer1 | 0, $0 | 0, 4);
+ _snprintf($3, 99, 45336, $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;
+   SAFE_HEAP_STORE($12 >> 0 | 0, 120 | 0, 1);
+   __gcry_log_printmpi($3, $6);
+   $13 = _strlen($3) | 0;
+   $14 = $13 + -1 | 0;
+   $15 = $3 + $14 | 0;
+   SAFE_HEAP_STORE($15 >> 0 | 0, 121 | 0, 1);
+   __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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  __gcry_log_printmpi($3, $16);
+  $17 = _strlen($3) | 0;
+  $18 = $17 + -1 | 0;
+  $19 = $3 + $18 | 0;
+  SAFE_HEAP_STORE($19 >> 0 | 0, 89 | 0, 1);
+  $20 = $1 + 4 | 0;
+  $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+  __gcry_log_printmpi($3, $21);
+  $22 = _strlen($3) | 0;
+  $23 = $22 + -1 | 0;
+  $24 = $3 + $23 | 0;
+  SAFE_HEAP_STORE($24 >> 0 | 0, 90 | 0, 1);
+  $25 = $1 + 8 | 0;
+  $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 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_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, 
$36 = 0, $37 = 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 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $28 = ($27 | 0) != 0;
+   $or$cond$i = $26 & $28;
+   if ($or$cond$i) {
+    $not$$i = $19 ^ 1;
+    $29 = $not$$i << 31 >> 31;
+    $30 = $27 + $29 | 0;
+    $31 = $22 + $30 | 0;
+    $32 = SAFE_HEAP_LOAD($31 >> 0 | 0, 1, 0) | 0 | 0;
+    $33 = $32 & 255;
+    $34 = $33 | 128;
+    $35 = $34 & 255;
+    SAFE_HEAP_STORE($31 >> 0 | 0, $35 | 0, 1);
+   }
+   if ($19) {
+    SAFE_HEAP_STORE($22 >> 0 | 0, 64 | 0, 1);
+   }
+   SAFE_HEAP_STORE($5 | 0, $22 | 0, 4);
+   $36 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $37 = $36 + $20 | 0;
+   SAFE_HEAP_STORE($6 | 0, $37 | 0, 4);
+   $$0$i = 0;
+  }
+  $$0 = $$0$i;
+ } else {
+  __gcry_log_error(35508, $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 _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 = SAFE_HEAP_LOAD(3934 * 4 | 0, 4, 0) | 0 | 0;
+   $9 = ($8 | 0) == (0 | 0);
+   if ($9) {
+    $29 = 0;
+   } else {
+    $10 = SAFE_HEAP_LOAD(3934 * 4 | 0, 4, 0) | 0 | 0;
+    $11 = _fflush($10) | 0;
+    $29 = $11;
+   }
+   $12 = ___ofl_lock() | 0;
+   $$02325 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $13 = ($$02325 | 0) == (0 | 0);
+   if ($13) {
+    $$024$lcssa = $29;
+   } else {
+    $$02327 = $$02325;
+    $$02426 = $29;
+    while (1) {
+     $14 = $$02327 + 76 | 0;
+     $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+     $16 = ($15 | 0) > -1;
+     if ($16) {
+      $17 = ___lockfile($$02327) | 0;
+      $25 = $17;
+     } else {
+      $25 = 0;
+     }
+     $18 = $$02327 + 20 | 0;
+     $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+     $20 = $$02327 + 28 | 0;
+     $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+     $22 = $19 >>> 0 > $21 >>> 0;
+     if ($22) {
+      $23 = ___fflush_unlocked($$02327) | 0;
+      $24 = $23 | $$02426;
+      $$1 = $24;
+     } else {
+      $$1 = $$02426;
+     }
+     $26 = ($25 | 0) == 0;
+     if (!$26) {
+      ___unlockfile($$02327);
+     }
+     $27 = $$02327 + 56 | 0;
+     $$023 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 _GNUNET_CRYPTO_rsa_private_key_decode($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, $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 + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer1 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $3 = $0;
+ $4 = $1;
+ $8 = _GNUNET_xmalloc_(4, 20893, 226) | 0;
+ $5 = $8;
+ $9 = $5;
+ $10 = $3;
+ $11 = $4;
+ $12 = _gcry_sexp_new($9, $10, $11, 0) | 0;
+ $13 = 0 != ($12 | 0);
+ if ($13) {
+  $6 = 234;
+  $14 = SAFE_HEAP_LOAD(249 * 4 | 0, 4, 0) | 0 | 0;
+  $15 = ($14 | 0) == -1;
+  if ($15) {
+   $16 = $6;
+   $17 = _GNUNET_get_log_call_status(2, 20980, 20893, 20985, $16) | 0;
+   SAFE_HEAP_STORE(249 * 4 | 0, $17 | 0, 4);
+  }
+  $18 = _GNUNET_get_log_skip() | 0;
+  $19 = ($18 | 0) > 0;
+  if ($19) {
+   _GNUNET_log_skip(-1, 0);
+  } else {
+   $20 = SAFE_HEAP_LOAD(249 * 4 | 0, 4, 0) | 0 | 0;
+   $21 = ($20 | 0) != 0;
+   if ($21) {
+    _GNUNET_log_from_nocheck(2, 20980, 21022, $vararg_buffer);
+   }
+  }
+  $22 = $5;
+  _GNUNET_xfree_($22, 20893, 235);
+  $2 = 0;
+  $37 = $2;
+  STACKTOP = sp;
+  return $37 | 0;
+ }
+ $23 = $5;
+ $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ $25 = _gcry_pk_testkey($24) | 0;
+ $26 = 0 != ($25 | 0);
+ if (!$26) {
+  $36 = $5;
+  $2 = $36;
+  $37 = $2;
+  STACKTOP = sp;
+  return $37 | 0;
+ }
+ $7 = 241;
+ $27 = SAFE_HEAP_LOAD(250 * 4 | 0, 4, 0) | 0 | 0;
+ $28 = ($27 | 0) == -1;
+ if ($28) {
+  $29 = $7;
+  $30 = _GNUNET_get_log_call_status(2, 20980, 20893, 20985, $29) | 0;
+  SAFE_HEAP_STORE(250 * 4 | 0, $30 | 0, 4);
+ }
+ $31 = _GNUNET_get_log_skip() | 0;
+ $32 = ($31 | 0) > 0;
+ if ($32) {
+  _GNUNET_log_skip(-1, 0);
+ } else {
+  $33 = SAFE_HEAP_LOAD(250 * 4 | 0, 4, 0) | 0 | 0;
+  $34 = ($33 | 0) != 0;
+  if ($34) {
+   _GNUNET_log_from_nocheck(2, 20980, 21022, $vararg_buffer1);
+  }
+ }
+ $35 = $5;
+ _GNUNET_CRYPTO_rsa_private_key_free($35);
+ $2 = 0;
+ $37 = $2;
+ STACKTOP = sp;
+ return $37 | 0;
+}
+
+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 = SAFE_HEAP_LOAD(17651 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = SAFE_HEAP_LOAD(17652 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = SAFE_HEAP_LOAD(17653 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = SAFE_HEAP_LOAD(17654 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = SAFE_HEAP_LOAD(17655 * 4 | 0, 4, 0) | 0 | 0;
+ $5 = SAFE_HEAP_LOAD(17656 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = SAFE_HEAP_LOAD(17657 * 4 | 0, 4, 0) | 0 | 0;
+ $7 = SAFE_HEAP_LOAD(17658 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = SAFE_HEAP_LOAD(17659 * 4 | 0, 4, 0) | 0 | 0;
+ $9 = SAFE_HEAP_LOAD(17660 * 4 | 0, 4, 0) | 0 | 0;
+ $10 = __gcry_rndhw_failed_p() | 0;
+ $11 = ($10 | 0) != 0;
+ $12 = $11 ? 50284 : 71847;
+ SAFE_HEAP_STORE($vararg_buffer | 0, 600 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $0 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $1 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $2 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer + 16 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $3 | 0, 4);
+ $vararg_ptr5 = $vararg_buffer + 20 | 0;
+ SAFE_HEAP_STORE($vararg_ptr5 | 0, $4 | 0, 4);
+ $vararg_ptr6 = $vararg_buffer + 24 | 0;
+ SAFE_HEAP_STORE($vararg_ptr6 | 0, $5 | 0, 4);
+ $vararg_ptr7 = $vararg_buffer + 28 | 0;
+ SAFE_HEAP_STORE($vararg_ptr7 | 0, $6 | 0, 4);
+ $vararg_ptr8 = $vararg_buffer + 32 | 0;
+ SAFE_HEAP_STORE($vararg_ptr8 | 0, $7 | 0, 4);
+ $vararg_ptr9 = $vararg_buffer + 36 | 0;
+ SAFE_HEAP_STORE($vararg_ptr9 | 0, $8 | 0, 4);
+ $vararg_ptr10 = $vararg_buffer + 40 | 0;
+ SAFE_HEAP_STORE($vararg_ptr10 | 0, $9 | 0, 4);
+ $vararg_ptr11 = $vararg_buffer + 44 | 0;
+ SAFE_HEAP_STORE($vararg_ptr11 | 0, $12 | 0, 4);
+ __gcry_log_info(50300, $vararg_buffer);
+ STACKTOP = sp;
+ 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 = SAFE_HEAP_LOAD(17644 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 0;
+ if ($1) {
+  SAFE_HEAP_STORE(17644 * 4 | 0, 1 | 0, 4);
+ }
+ $2 = _gpgrt_lock_lock(12596) | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  $4 = _gpg_strerror($2) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $4 | 0, 4);
+  __gcry_log_fatal(50172, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17645 * 4 | 0, 1 | 0, 4);
+ $5 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == (0 | 0);
+ do {
+  if ($6) {
+   $7 = SAFE_HEAP_LOAD(17647 * 4 | 0, 4, 0) | 0 | 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;
+   }
+   SAFE_HEAP_STORE(17646 * 4 | 0, $11 | 0, 4);
+   $12 = SAFE_HEAP_LOAD(17647 * 4 | 0, 4, 0) | 0 | 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;
+   }
+   SAFE_HEAP_STORE(17648 * 4 | 0, $16 | 0, 4);
+   $17 = _access(52444, 4) | 0;
+   $18 = ($17 | 0) == 0;
+   if (!$18) {
+    $21 = __gcry_gettext(50209) | 0;
+    __gcry_log_fatal($21, $vararg_buffer1);
+   }
+   $19 = _access(52456, 4) | 0;
+   $20 = ($19 | 0) == 0;
+   if ($20) {
+    SAFE_HEAP_STORE(17649 * 4 | 0, 79 | 0, 4);
+    break;
+   } else {
+    $21 = __gcry_gettext(50209) | 0;
+    __gcry_log_fatal($21, $vararg_buffer1);
+   }
+  }
+ } while (0);
+ SAFE_HEAP_STORE(17645 * 4 | 0, 0 | 0, 4);
+ $22 = _gpgrt_lock_unlock(12596) | 0;
+ $23 = ($22 | 0) == 0;
+ if ($23) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $24 = _gpg_strerror($22) | 0;
+  SAFE_HEAP_STORE($vararg_buffer3 | 0, $24 | 0, 4);
+  __gcry_log_fatal(50247, $vararg_buffer3);
+ }
+}
+
+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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $4 = $3 + 8 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == (0 | 0);
+ $$pre = $0 + 4 | 0;
+ if (!$6) {
+  $7 = SAFE_HEAP_LOAD($$pre | 0, 4, 0) | 0 | 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(36953, 630, 36958);
+   }
+  }
+  $12 = ($2 | 0) == 0;
+  if (!$12) {
+   $13 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $14 = $13 + 8 | 0;
+   $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+   $16 = _fwrite($1, $2, 1, $15) | 0;
+   $17 = ($16 | 0) == 1;
+   if (!$17) {
+    __gcry_bug(36953, 632, 36958);
+   }
+  }
+ }
+ $18 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $19 = $18 + 16 | 0;
+ $$021 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+ $20 = ($$021 | 0) == (0 | 0);
+ if ($20) {
+  SAFE_HEAP_STORE($$pre | 0, 0 | 0, 4);
+  return;
+ }
+ $21 = $0 + 12 | 0;
+ $$022 = $$021;
+ while (1) {
+  $22 = SAFE_HEAP_LOAD($$pre | 0, 4, 0) | 0 | 0;
+  $23 = ($22 | 0) == 0;
+  if ($23) {
+   $$pre27 = $$022 + 16 | 0;
+   $$pre$phi30Z2D = $$pre27;
+  } else {
+   $24 = SAFE_HEAP_LOAD($$022 | 0, 4, 0) | 0 | 0;
+   $25 = $24 + 32 | 0;
+   $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+   $27 = $$022 + 16 | 0;
+   FUNCTION_TABLE_viii[(SAFE_FT_MASK($26 | 0, 127 | 0) | 0) & 127]($27, $21, 
$22);
+   $$pre$phi30Z2D = $27;
+  }
+  $28 = SAFE_HEAP_LOAD($$022 | 0, 4, 0) | 0 | 0;
+  $29 = $28 + 32 | 0;
+  $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viii[(SAFE_FT_MASK($30 | 0, 127 | 0) | 0) & 
127]($$pre$phi30Z2D, $1, $2);
+  $31 = $$022 + 4 | 0;
+  $$0 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+  $32 = ($$0 | 0) == (0 | 0);
+  if ($32) {
+   break;
+  } else {
+   $$022 = $$0;
+  }
+ }
+ SAFE_HEAP_STORE($$pre | 0, 0 | 0, 4);
+ 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;
+ SAFE_HEAP_STORE($4 | 0, -205731576 | 0, 4);
+ $5 = $3 + 4 | 0;
+ $6 = $5;
+ SAFE_HEAP_STORE($6 | 0, 1779033703 | 0, 4);
+ $7 = $0 + 168 | 0;
+ $8 = $7;
+ $9 = $8;
+ SAFE_HEAP_STORE($9 | 0, -2067093701 | 0, 4);
+ $10 = $8 + 4 | 0;
+ $11 = $10;
+ SAFE_HEAP_STORE($11 | 0, -1150833019 | 0, 4);
+ $12 = $0 + 176 | 0;
+ $13 = $12;
+ $14 = $13;
+ SAFE_HEAP_STORE($14 | 0, -23791573 | 0, 4);
+ $15 = $13 + 4 | 0;
+ $16 = $15;
+ SAFE_HEAP_STORE($16 | 0, 1013904242 | 0, 4);
+ $17 = $0 + 184 | 0;
+ $18 = $17;
+ $19 = $18;
+ SAFE_HEAP_STORE($19 | 0, 1595750129 | 0, 4);
+ $20 = $18 + 4 | 0;
+ $21 = $20;
+ SAFE_HEAP_STORE($21 | 0, -1521486534 | 0, 4);
+ $22 = $0 + 192 | 0;
+ $23 = $22;
+ $24 = $23;
+ SAFE_HEAP_STORE($24 | 0, -1377402159 | 0, 4);
+ $25 = $23 + 4 | 0;
+ $26 = $25;
+ SAFE_HEAP_STORE($26 | 0, 1359893119 | 0, 4);
+ $27 = $0 + 200 | 0;
+ $28 = $27;
+ $29 = $28;
+ SAFE_HEAP_STORE($29 | 0, 725511199 | 0, 4);
+ $30 = $28 + 4 | 0;
+ $31 = $30;
+ SAFE_HEAP_STORE($31 | 0, -1694144372 | 0, 4);
+ $32 = $0 + 208 | 0;
+ $33 = $32;
+ $34 = $33;
+ SAFE_HEAP_STORE($34 | 0, -79577749 | 0, 4);
+ $35 = $33 + 4 | 0;
+ $36 = $35;
+ SAFE_HEAP_STORE($36 | 0, 528734635 | 0, 4);
+ $37 = $0 + 216 | 0;
+ $38 = $37;
+ $39 = $38;
+ SAFE_HEAP_STORE($39 | 0, 327033209 | 0, 4);
+ $40 = $38 + 4 | 0;
+ $41 = $40;
+ SAFE_HEAP_STORE($41 | 0, 1541459225 | 0, 4);
+ $42 = $0 + 128 | 0;
+ $43 = $0 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($42 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($42 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($42 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($42 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($42 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($43 | 0, 128 | 0, 4);
+ $44 = $0 + 152 | 0;
+ SAFE_HEAP_STORE($44 | 0, 76 | 0, 4);
+ return;
+}
+
+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;
+ SAFE_HEAP_STORE($4 | 0, -1056596264 | 0, 4);
+ $5 = $3 + 4 | 0;
+ $6 = $5;
+ SAFE_HEAP_STORE($6 | 0, -876896931 | 0, 4);
+ $7 = $0 + 168 | 0;
+ $8 = $7;
+ $9 = $8;
+ SAFE_HEAP_STORE($9 | 0, 914150663 | 0, 4);
+ $10 = $8 + 4 | 0;
+ $11 = $10;
+ SAFE_HEAP_STORE($11 | 0, 1654270250 | 0, 4);
+ $12 = $0 + 176 | 0;
+ $13 = $12;
+ $14 = $13;
+ SAFE_HEAP_STORE($14 | 0, 812702999 | 0, 4);
+ $15 = $13 + 4 | 0;
+ $16 = $15;
+ SAFE_HEAP_STORE($16 | 0, -1856437926 | 0, 4);
+ $17 = $0 + 184 | 0;
+ $18 = $17;
+ $19 = $18;
+ SAFE_HEAP_STORE($19 | 0, -150054599 | 0, 4);
+ $20 = $18 + 4 | 0;
+ $21 = $20;
+ SAFE_HEAP_STORE($21 | 0, 355462360 | 0, 4);
+ $22 = $0 + 192 | 0;
+ $23 = $22;
+ $24 = $23;
+ SAFE_HEAP_STORE($24 | 0, -4191439 | 0, 4);
+ $25 = $23 + 4 | 0;
+ $26 = $25;
+ SAFE_HEAP_STORE($26 | 0, 1731405415 | 0, 4);
+ $27 = $0 + 200 | 0;
+ $28 = $27;
+ $29 = $28;
+ SAFE_HEAP_STORE($29 | 0, 1750603025 | 0, 4);
+ $30 = $28 + 4 | 0;
+ $31 = $30;
+ SAFE_HEAP_STORE($31 | 0, -1900787065 | 0, 4);
+ $32 = $0 + 208 | 0;
+ $33 = $32;
+ $34 = $33;
+ SAFE_HEAP_STORE($34 | 0, 1694076839 | 0, 4);
+ $35 = $33 + 4 | 0;
+ $36 = $35;
+ SAFE_HEAP_STORE($36 | 0, -619958771 | 0, 4);
+ $37 = $0 + 216 | 0;
+ $38 = $37;
+ $39 = $38;
+ SAFE_HEAP_STORE($39 | 0, -1090891868 | 0, 4);
+ $40 = $38 + 4 | 0;
+ $41 = $40;
+ SAFE_HEAP_STORE($41 | 0, 1203062813 | 0, 4);
+ $42 = $0 + 128 | 0;
+ $43 = $0 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($42 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($42 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($42 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($42 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($42 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($43 | 0, 128 | 0, 4);
+ $44 = $0 + 152 | 0;
+ SAFE_HEAP_STORE($44 | 0, 76 | 0, 4);
+ return;
+}
+
+function __gcry_mpi_swap_cond($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$045$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, $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, $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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $4 = ($2 | 0) != 0;
+ $5 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $6 = ($3 | 0) == ($5 | 0);
+ if (!$6) {
+  __gcry_log_bug(46186, $vararg_buffer);
+ }
+ $7 = ($3 | 0) > 0;
+ if ($7) {
+  $8 = $0 + 16 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = $1 + 16 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  if ($4) {
+   $$045$us = 0;
+   while (1) {
+    $12 = $9 + ($$045$us << 2) | 0;
+    $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+    $14 = $11 + ($$045$us << 2) | 0;
+    $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $16 = $15 ^ $13;
+    SAFE_HEAP_STORE($12 | 0, $15 | 0, 4);
+    $17 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+    $18 = $17 ^ $16;
+    SAFE_HEAP_STORE($14 | 0, $18 | 0, 4);
+    $19 = $$045$us + 1 | 0;
+    $exitcond = ($19 | 0) == ($3 | 0);
+    if ($exitcond) {
+     break;
+    } else {
+     $$045$us = $19;
+    }
+   }
+  }
+ }
+ $20 = $0 + 4 | 0;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = $1 + 4 | 0;
+ $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $24 = $23 ^ $21;
+ $25 = $4 ? $24 : 0;
+ $26 = $25 ^ $21;
+ SAFE_HEAP_STORE($20 | 0, $26 | 0, 4);
+ $27 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $28 = $27 ^ $25;
+ SAFE_HEAP_STORE($22 | 0, $28 | 0, 4);
+ $29 = $0 + 8 | 0;
+ $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+ $31 = $1 + 8 | 0;
+ $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ $33 = $32 ^ $30;
+ $34 = $4 ? $33 : 0;
+ $35 = $34 ^ $30;
+ SAFE_HEAP_STORE($29 | 0, $35 | 0, 4);
+ $36 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ $37 = $36 ^ $34;
+ SAFE_HEAP_STORE($31 | 0, $37 | 0, 4);
+ 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;
+ SAFE_HEAP_STORE($4 | 0, 1732584193 | 0, 4);
+ $5 = $3 + 164 | 0;
+ SAFE_HEAP_STORE($5 | 0, -271733879 | 0, 4);
+ $6 = $3 + 168 | 0;
+ SAFE_HEAP_STORE($6 | 0, -1732584194 | 0, 4);
+ $7 = $3 + 172 | 0;
+ SAFE_HEAP_STORE($7 | 0, 271733878 | 0, 4);
+ $8 = $3 + 176 | 0;
+ SAFE_HEAP_STORE($8 | 0, -1009589776 | 0, 4);
+ $9 = $3 + 128 | 0;
+ $10 = $3 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($9 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 | 0, 64 | 0, 4);
+ $11 = $3 + 152 | 0;
+ SAFE_HEAP_STORE($11 | 0, 74 | 0, 4);
+ $12 = ($2 | 0) > 0;
+ if ($12) {
+  $$067 = $1;
+  $$08 = $2;
+ } else {
+  _sha1_final($3);
+  dest = $0;
+  src = $3;
+  stop = dest + 20 | 0;
+  do {
+   SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+   dest = dest + 1 | 0;
+   src = src + 1 | 0;
+  } while ((dest | 0) < (stop | 0));
+  STACKTOP = sp;
+  return;
+ }
+ while (1) {
+  $13 = $$067 + 12 | 0;
+  $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  $15 = $$067 + 4 | 0;
+  $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $17 = $14 + $16 | 0;
+  $18 = $$067 + 8 | 0;
+  $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 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 {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  dest = dest + 1 | 0;
+  src = src + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ STACKTOP = sp;
+ return;
+}
+
+function _run_selftests_1348($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, 42568, 3, 42572, 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, 42621, 112, 42734, 48) | 0;
+    $7 = ($6 | 0) == (0 | 0);
+    if ($7) {
+     $8 = __gcry_hash_selftest_check_one(9, 1, 0, 0, 42783, 48) | 0;
+     $9 = ($8 | 0) == (0 | 0);
+     if ($9) {
+      $$0 = 0;
+      return $$0 | 0;
+     } else {
+      $$0$i = $8;
+      $$011$i = 42857;
+     }
+    } else {
+     $$0$i = $6;
+     $$011$i = 42845;
+    }
+   } else {
+    $$0$i = $3;
+    $$011$i = 42832;
+   }
+   $10 = ($2 | 0) == (0 | 0);
+   if ($10) {
+    $$0 = 50;
+    return $$0 | 0;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](42873, 9, 
$$011$i, $$0$i);
+   $$0 = 50;
+   return $$0 | 0;
+   break;
+  }
+ case 10:
+  {
+   $11 = __gcry_hash_selftest_check_one(10, 0, 42568, 3, 42880, 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, 42621, 112, 42945, 64) | 0;
+    $15 = ($14 | 0) == (0 | 0);
+    if ($15) {
+     $16 = __gcry_hash_selftest_check_one(10, 1, 0, 0, 43010, 64) | 0;
+     $17 = ($16 | 0) == (0 | 0);
+     if ($17) {
+      $$0 = 0;
+      return $$0 | 0;
+     } else {
+      $$0$i7 = $16;
+      $$011$i6 = 42857;
+     }
+    } else {
+     $$0$i7 = $14;
+     $$011$i6 = 42845;
+    }
+   } else {
+    $$0$i7 = $11;
+    $$011$i6 = 42832;
+   }
+   $18 = ($2 | 0) == (0 | 0);
+   if ($18) {
+    $$0 = 50;
+    return $$0 | 0;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](42873, 10, 
$$011$i6, $$0$i7);
+   $$0 = 50;
+   return $$0 | 0;
+   break;
+  }
+ default:
+  {
+   $$0 = 5;
+   return $$0 | 0;
+  }
+ }
+ return 0 | 0;
+}
+
+function _run_selftests_1325($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, 42568, 3, 42205, 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, 42234, 56, 42291, 28) | 0;
+    $7 = ($6 | 0) == (0 | 0);
+    if ($7) {
+     $8 = __gcry_hash_selftest_check_one(11, 1, 0, 0, 42320, 28) | 0;
+     $9 = ($8 | 0) == (0 | 0);
+     if ($9) {
+      $$0 = 0;
+      return $$0 | 0;
+     } else {
+      $$0$i = $8;
+      $$011$i = 42857;
+     }
+    } else {
+     $$0$i = $6;
+     $$011$i = 42845;
+    }
+   } else {
+    $$0$i = $3;
+    $$011$i = 42832;
+   }
+   $10 = ($2 | 0) == (0 | 0);
+   if ($10) {
+    $$0 = 50;
+    return $$0 | 0;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](42873, 11, 
$$011$i, $$0$i);
+   $$0 = 50;
+   return $$0 | 0;
+   break;
+  }
+ case 8:
+  {
+   $11 = __gcry_hash_selftest_check_one(8, 0, 42568, 3, 42349, 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, 42234, 56, 42382, 32) | 0;
+    $15 = ($14 | 0) == (0 | 0);
+    if ($15) {
+     $16 = __gcry_hash_selftest_check_one(8, 1, 0, 0, 42415, 32) | 0;
+     $17 = ($16 | 0) == (0 | 0);
+     if ($17) {
+      $$0 = 0;
+      return $$0 | 0;
+     } else {
+      $$0$i7 = $16;
+      $$011$i6 = 42857;
+     }
+    } else {
+     $$0$i7 = $14;
+     $$011$i6 = 42845;
+    }
+   } else {
+    $$0$i7 = $11;
+    $$011$i6 = 42832;
+   }
+   $18 = ($2 | 0) == (0 | 0);
+   if ($18) {
+    $$0 = 50;
+    return $$0 | 0;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](42873, 8, 
$$011$i6, $$0$i7);
+   $$0 = 50;
+   return $$0 | 0;
+   break;
+  }
+ default:
+  {
+   $$0 = 5;
+   return $$0 | 0;
+  }
+ }
+ return 0 | 0;
+}
+
+function __gcry_strdup($0) {
+ $0 = $0 | 0;
+ var $$0$i = 0, $$0$i$i = 0, $$010 = 0, $$012 = 0, $$pre$i$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;
+ var $23 = 0, $24 = 0, $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 = _strlen($0) | 0;
+ $2 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ do {
+  if ($3) {
+   label = 6;
+  } else {
+   $4 = __gcry_enforced_fips_mode() | 0;
+   $5 = ($4 | 0) == 0;
+   if (!$5) {
+    SAFE_HEAP_STORE(17583 * 4 | 0, 0 | 0, 4);
+    label = 6;
+    break;
+   }
+   $6 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD(17588 * 4 | 0, 4, 0) | 0 | 0;
+  $10 = ($9 | 0) == (0 | 0);
+  if ($10) {
+   $12 = __gcry_private_is_secure($0) | 0;
+   $$0$i = $12;
+  } else {
+   $11 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($9 | 0, 63 | 0) | 0) & 63]($0) | 0;
+   $$0$i = $11;
+  }
+  $13 = ($$0$i | 0) == 0;
+  $14 = $1 + 1 | 0;
+  if ($13) {
+   $17 = $14;
+   label = 10;
+  } else {
+   $25 = __gcry_malloc_secure($14) | 0;
+   $26 = ($25 | 0) == (0 | 0);
+   if ($26) {
+    $$010 = 0;
+    return $$010 | 0;
+   } else {
+    $$012 = $25;
+   }
+  }
+ }
+ if ((label | 0) == 10) {
+  $15 = SAFE_HEAP_LOAD(17586 * 4 | 0, 4, 0) | 0 | 0;
+  $16 = ($15 | 0) == (0 | 0);
+  if ($16) {
+   $19 = __gcry_private_malloc($17) | 0;
+   $$0$i$i = $19;
+  } else {
+   $18 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($15 | 0, 63 | 0) | 0) & 63]($17) | 0;
+   $$0$i$i = $18;
+  }
+  $20 = ($$0$i$i | 0) == (0 | 0);
+  if ($20) {
+   $21 = ___errno_location() | 0;
+   $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   $23 = ($22 | 0) == 0;
+   if ($23) {
+    _gpg_err_set_errno(12);
+    $$pre$i$i = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+    $24 = $$pre$i$i;
+   } else {
+    $24 = $22;
+   }
+   _gpg_err_code_from_errno($24) | 0;
+   $$010 = 0;
+   return $$010 | 0;
+  } else {
+   $$012 = $$0$i$i;
+  }
+ }
+ _strcpy($$012, $0) | 0;
+ $$010 = $$012;
+ return $$010 | 0;
+}
+
+function __gcry_pk_selftest($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$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;
+ var $26 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 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 = SAFE_HEAP_LOAD(3118 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($$0$i20 | 0) == ($3 | 0);
+ if ($4) {
+  $$0$i18$ph = 12472;
+  label = 8;
+ } else {
+  $5 = SAFE_HEAP_LOAD(1880 * 4 | 0, 4, 0) | 0 | 0;
+  $6 = ($$0$i20 | 0) == ($5 | 0);
+  if ($6) {
+   $$0$i18$ph = 7520;
+   label = 8;
+  } else {
+   $$0$i1822 = 0;
+   $20 = 0;
+   label = 11;
+  }
+ }
+ if ((label | 0) == 8) {
+  $7 = $$0$i18$ph + 4 | 0;
+  $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+  $9 = $8 & 1;
+  $10 = $9 << 24 >> 24 == 0;
+  if ($10) {
+   $11 = $$0$i18$ph + 68 | 0;
+   $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+   $13 = ($12 | 0) == (0 | 0);
+   if ($13) {
+    $$0$i1822 = $$0$i18$ph;
+    $20 = 1;
+    label = 11;
+   } else {
+    $14 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($12 | 0, 127 | 0) | 0) & 
127]($$0$i20, $1, $2) | 0;
+    $$0 = $14;
+   }
+  } else {
+   $$0$i1822 = $$0$i18$ph;
+   $20 = 1;
+   label = 11;
+  }
+ }
+ if ((label | 0) == 11) {
+  $15 = ($2 | 0) == (0 | 0);
+  if ($15) {
+   $$0 = 4;
+  } else {
+   if ($20) {
+    $16 = $$0$i1822 + 4 | 0;
+    $17 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+    $18 = $17 & 1;
+    $19 = $18 << 24 >> 24 == 0;
+    if ($19) {
+     $22 = 37736;
+    } else {
+     label = 14;
+    }
+   } else {
+    label = 14;
+   }
+   if ((label | 0) == 14) {
+    $21 = $20 ? 37697 : 37716;
+    $22 = $21;
+   }
+   FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](40871, 
$$0$i20, 37758, $22);
+   $$0 = 4;
+  }
+ }
+ $23 = ($$0 | 0) == 0;
+ $24 = $$0 & 65535;
+ $25 = $24 | 16777216;
+ $26 = $23 ? 0 : $25;
+ return $26 | 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, $$3$ph = 0, $$339$ph = 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) {
+    SAFE_HEAP_STORE($$045 >> 0 | 0, 0 | 0, 1);
+    $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) {
+   $$3$ph = $$0$lcssa;
+   $$339$ph = $$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;
+    SAFE_HEAP_STORE($20 | 0, 0 | 0, 4);
+    $21 = $19 + 4 | 0;
+    $22 = $21;
+    SAFE_HEAP_STORE($22 | 0, 0 | 0, 4);
+    $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;
+   $$3$ph = $scevgep;
+   $$339$ph = $26;
+  }
+  $27 = ($$339$ph | 0) == 0;
+  if (!$27) {
+   $$33942 = $$339$ph;
+   $$343 = $$3$ph;
+   while (1) {
+    SAFE_HEAP_STORE($$343 >> 0 | 0, 0 | 0, 1);
+    $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_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, $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, $or$cond 
= 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ while (1) {
+  $1 = __gcry_strdup($0) | 0;
+  $2 = ($1 | 0) == (0 | 0);
+  if (!$2) {
+   label = 15;
+   break;
+  }
+  $3 = _strlen($0) | 0;
+  $4 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+  $5 = ($4 | 0) == 0;
+  do {
+   if ($5) {
+    label = 7;
+   } else {
+    $6 = __gcry_enforced_fips_mode() | 0;
+    $7 = ($6 | 0) == 0;
+    if ($7) {
+     $8 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+     $9 = ($8 | 0) == 0;
+     if ($9) {
+      label = 7;
+      break;
+     } else {
+      $$0$i = 0;
+      break;
+     }
+    } else {
+     SAFE_HEAP_STORE(17583 * 4 | 0, 0 | 0, 4);
+     label = 7;
+     break;
+    }
+   }
+  } while (0);
+  do {
+   if ((label | 0) == 7) {
+    label = 0;
+    $10 = SAFE_HEAP_LOAD(17588 * 4 | 0, 4, 0) | 0 | 0;
+    $11 = ($10 | 0) == (0 | 0);
+    if ($11) {
+     $13 = __gcry_private_is_secure($0) | 0;
+     $$0$i = $13;
+     break;
+    } else {
+     $12 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($10 | 0, 63 | 0) | 0) & 63]($0) | 0;
+     $$0$i = $12;
+     break;
+    }
+   }
+  } while (0);
+  $14 = ($$0$i | 0) != 0;
+  $15 = __gcry_fips_mode() | 0;
+  $16 = ($15 | 0) == 0;
+  $17 = SAFE_HEAP_LOAD(17591 * 4 | 0, 4, 0) | 0 | 0;
+  $18 = ($17 | 0) != (0 | 0);
+  $or$cond = $16 & $18;
+  if (!$or$cond) {
+   break;
+  }
+  $19 = $14 & 1;
+  $20 = SAFE_HEAP_LOAD(17592 * 4 | 0, 4, 0) | 0 | 0;
+  $21 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($17 | 0, 127 | 0) | 0) & 127]($20, 
$3, $19) | 0;
+  $22 = ($21 | 0) == 0;
+  if ($22) {
+   break;
+  }
+ }
+ if ((label | 0) == 15) {
+  return $1 | 0;
+ }
+ $23 = ___errno_location() | 0;
+ $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ $25 = _gpg_err_code_from_errno($24) | 0;
+ if (!$14) {
+  $27 = 0;
+  __gcry_fatal_error($25, $27);
+ }
+ $26 = __gcry_gettext(22449) | 0;
+ $27 = $26;
+ __gcry_fatal_error($25, $27);
+ return 0 | 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, $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 + 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 = SAFE_HEAP_LOAD(17594 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ if ($3) {
+  $26 = __gcry_private_is_secure($0) | 0;
+  $27 = ($26 | 0) == 0;
+  if ($27) {
+   _free($0);
+   STACKTOP = sp;
+   return;
+  } else {
+   __gcry_secmem_free($0);
+   STACKTOP = sp;
+   return;
+  }
+ }
+ $4 = $0 + -1 | 0;
+ $5 = SAFE_HEAP_LOAD($4 >> 0 | 0, 1, 0) | 0 | 0;
+ switch ($5 << 24 >> 24) {
+ case -52:
+ case 85:
+  {
+   break;
+  }
+ default:
+  {
+   $6 = $5 & 255;
+   SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, $6 | 0, 4);
+   __gcry_log_fatal(22844, $vararg_buffer);
+  }
+ }
+ $7 = $0 + -4 | 0;
+ $8 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = $8 & 255;
+ $10 = $0 + -3 | 0;
+ $11 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+ $12 = $11 & 255;
+ $13 = $12 << 8;
+ $14 = $13 | $9;
+ $15 = $0 + -2 | 0;
+ $16 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+ $17 = $16 & 255;
+ $18 = $17 << 16;
+ $19 = $14 | $18;
+ $20 = $0 + $19 | 0;
+ $21 = SAFE_HEAP_LOAD($20 >> 0 | 0, 1, 0) | 0 | 0;
+ $22 = $21 << 24 >> 24 == -86;
+ if (!$22) {
+  $23 = $5 & 255;
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, $0 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, $23 | 0, 4);
+  __gcry_log_fatal(22885, $vararg_buffer2);
+ }
+ $24 = __gcry_private_is_secure($0) | 0;
+ $25 = ($24 | 0) == 0;
+ if ($25) {
+  _free($7);
+  STACKTOP = sp;
+  return;
+ } else {
+  __gcry_secmem_free($7);
+  STACKTOP = sp;
+  return;
+ }
+}
+
+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, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 
= 0, $8 = 0, $9 = 0;
+ var $not$ = 0, $vararg_buffer = 0, $vararg_buffer4 = 0, $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;
+ $4 = _htonl($1) | 0;
+ SAFE_HEAP_STORE($3 | 0, $4 | 0, 4);
+ SAFE_HEAP_STORE($vararg_buffer | 0, 61323 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 21 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, 0 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, 0 | 0, 4);
+ $5 = _GNUNET_CRYPTO_kdf($2, 64, $3, 4, $0, 64, $vararg_buffer) | 0;
+ $6 = ($5 | 0) == 1;
+ if ($6) {
+  $13 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+  $14 = $13 & 255;
+  $15 = $14 & 63;
+  $16 = $15 | 64;
+  $17 = $16 & 255;
+  SAFE_HEAP_STORE($2 >> 0 | 0, $17 | 0, 1);
+  $18 = $2 + 31 | 0;
+  $19 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+  $20 = $19 & 255;
+  $21 = $20 & 248;
+  $22 = $21 & 255;
+  SAFE_HEAP_STORE($18 >> 0 | 0, $22 | 0, 1);
+  STACKTOP = sp;
+  return;
+ }
+ $7 = SAFE_HEAP_LOAD(3841 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == -1;
+ if ($8) {
+  $9 = _GNUNET_get_log_call_status(1, 0, 61286, 61345, 197) | 0;
+  SAFE_HEAP_STORE(3841 * 4 | 0, $9 | 0, 4);
+ }
+ $10 = _GNUNET_get_log_skip() | 0;
+ $11 = ($10 | 0) > 0;
+ if ($11) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $12 = SAFE_HEAP_LOAD(3841 * 4 | 0, 4, 0) | 0 | 0;
+ $not$ = ($12 | 0) == 0;
+ if ($not$) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer4 | 0, 61286 | 0, 4);
+ $vararg_ptr7 = $vararg_buffer4 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr7 | 0, 197 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer4);
+ _GNUNET_abort_();
+}
+
+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, 35380) | 0;
+ $3 = ($2 | 0) == 0;
+ if ($3) {
+  $4 = $1 + 28 | 0;
+  $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $6 = ($5 | 0) == (0 | 0);
+  if (!$6) {
+   $7 = __gcry_mpi_point_new(0) | 0;
+   $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+   $9 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set($8, $9) | 0;
+   $10 = $7 + 4 | 0;
+   $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+   $12 = $5 + 4 | 0;
+   $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set($11, $13) | 0;
+   $14 = $7 + 8 | 0;
+   $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+   $16 = $5 + 8 | 0;
+   $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_set($15, $17) | 0;
+   $$0 = $7;
+   return $$0 | 0;
+  }
+ }
+ $18 = _strcmp($0, 46923) | 0;
+ $19 = ($18 | 0) == 0;
+ if (!$19) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $20 = $1 + 40 | 0;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = ($21 | 0) == (0 | 0);
+ if ($22) {
+  $23 = __gcry_ecc_compute_public(0, $1, 0, 0) | 0;
+  SAFE_HEAP_STORE($20 | 0, $23 | 0, 4);
+  $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 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+ $27 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($26, $27) | 0;
+ $29 = $25 + 4 | 0;
+ $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+ $31 = $28 + 4 | 0;
+ $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($30, $32) | 0;
+ $33 = $25 + 8 | 0;
+ $34 = SAFE_HEAP_LOAD($33 | 0, 4, 0) | 0 | 0;
+ $35 = $28 + 8 | 0;
+ $36 = SAFE_HEAP_LOAD($35 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_set($34, $36) | 0;
+ $$0 = $25;
+ return $$0 | 0;
+}
+
+function __gcry_realloc($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0 = 0, $$0$i$i = 0, $$010 = 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, $2 = 0, $20 = 
0, $21 = 0, $22 = 0, $23 = 0, $24 = 0;
+ var $25 = 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 = SAFE_HEAP_LOAD(17586 * 4 | 0, 4, 0) | 0 | 0;
+  $4 = ($3 | 0) == (0 | 0);
+  if ($4) {
+   $6 = __gcry_private_malloc($1) | 0;
+   $$0$i$i = $6;
+  } else {
+   $5 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($3 | 0, 63 | 0) | 0) & 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = ($9 | 0) == 0;
+  if ($10) {
+   _gpg_err_set_errno(12);
+   $$pre$i$i = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+   $11 = $$pre$i$i;
+  } else {
+   $11 = $9;
+  }
+  _gpg_err_code_from_errno($11) | 0;
+  $$010 = 0;
+  return $$010 | 0;
+ }
+ $12 = ($1 | 0) == 0;
+ if ($12) {
+  $13 = ___errno_location() | 0;
+  $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  $15 = SAFE_HEAP_LOAD(17590 * 4 | 0, 4, 0) | 0 | 0;
+  $16 = ($15 | 0) == (0 | 0);
+  if ($16) {
+   __gcry_private_free($0);
+  } else {
+   FUNCTION_TABLE_vi[(SAFE_FT_MASK($15 | 0, 127 | 0) | 0) & 127]($0);
+  }
+  $17 = ($14 | 0) == 0;
+  if ($17) {
+   $$010 = 0;
+   return $$010 | 0;
+  }
+  _gpg_err_set_errno($14);
+  $$010 = 0;
+  return $$010 | 0;
+ }
+ $18 = SAFE_HEAP_LOAD(17589 * 4 | 0, 4, 0) | 0 | 0;
+ $19 = ($18 | 0) == (0 | 0);
+ if ($19) {
+  $21 = __gcry_private_realloc($0, $1) | 0;
+  $$0 = $21;
+ } else {
+  $20 = FUNCTION_TABLE_iii[(SAFE_FT_MASK($18 | 0, 127 | 0) | 0) & 127]($0, $1) 
| 0;
+  $$0 = $20;
+ }
+ $22 = ($$0 | 0) == (0 | 0);
+ if (!$22) {
+  $$010 = $$0;
+  return $$010 | 0;
+ }
+ $23 = ___errno_location() | 0;
+ $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ $25 = ($24 | 0) == 0;
+ if (!$25) {
+  $$010 = 0;
+  return $$010 | 0;
+ }
+ _gpg_err_set_errno(12);
+ $$010 = 0;
+ return $$010 | 0;
+}
+
+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 = SAFE_HEAP_LOAD(4800 | 0, 1, 0) | 0 | 0;
+ $1 = SAFE_HEAP_LOAD(4832 >> 0 | 0, 1, 0) | 0 | 0;
+ $2 = SAFE_HEAP_LOAD(4864 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = SAFE_HEAP_LOAD(4896 >> 0 | 0, 1, 0) | 0 | 0;
+ $4 = SAFE_HEAP_LOAD(4928 >> 0 | 0, 1, 0) | 0 | 0;
+ $5 = SAFE_HEAP_LOAD(4960 >> 0 | 0, 1, 0) | 0 | 0;
+ $6 = SAFE_HEAP_LOAD(4992 >> 0 | 0, 1, 0) | 0 | 0;
+ $7 = SAFE_HEAP_LOAD(5024 >> 0 | 0, 1, 0) | 0 | 0;
+ $8 = SAFE_HEAP_LOAD(5056 >> 0 | 0, 1, 0) | 0 | 0;
+ $9 = SAFE_HEAP_LOAD(5088 >> 0 | 0, 1, 0) | 0 | 0;
+ $10 = SAFE_HEAP_LOAD(5120 >> 0 | 0, 1, 0) | 0 | 0;
+ $11 = SAFE_HEAP_LOAD(5152 >> 0 | 0, 1, 0) | 0 | 0;
+ $12 = SAFE_HEAP_LOAD(5184 >> 0 | 0, 1, 0) | 0 | 0;
+ $13 = SAFE_HEAP_LOAD(5216 >> 0 | 0, 1, 0) | 0 | 0;
+ $14 = SAFE_HEAP_LOAD(5248 >> 0 | 0, 1, 0) | 0 | 0;
+ $15 = SAFE_HEAP_LOAD(5280 >> 0 | 0, 1, 0) | 0 | 0;
+ $16 = SAFE_HEAP_LOAD(5312 >> 0 | 0, 1, 0) | 0 | 0;
+ $17 = SAFE_HEAP_LOAD(5344 >> 0 | 0, 1, 0) | 0 | 0;
+ $18 = SAFE_HEAP_LOAD(5376 >> 0 | 0, 1, 0) | 0 | 0;
+ $19 = SAFE_HEAP_LOAD(5408 >> 0 | 0, 1, 0) | 0 | 0;
+ $20 = SAFE_HEAP_LOAD(5440 >> 0 | 0, 1, 0) | 0 | 0;
+ $21 = SAFE_HEAP_LOAD(5472 >> 0 | 0, 1, 0) | 0 | 0;
+ $22 = SAFE_HEAP_LOAD(5504 >> 0 | 0, 1, 0) | 0 | 0;
+ $23 = SAFE_HEAP_LOAD(5536 >> 0 | 0, 1, 0) | 0 | 0;
+ $24 = SAFE_HEAP_LOAD(5568 >> 0 | 0, 1, 0) | 0 | 0;
+ $25 = SAFE_HEAP_LOAD(5600 >> 0 | 0, 1, 0) | 0 | 0;
+ $26 = SAFE_HEAP_LOAD(5632 >> 0 | 0, 1, 0) | 0 | 0;
+ $27 = SAFE_HEAP_LOAD(5664 >> 0 | 0, 1, 0) | 0 | 0;
+ $28 = SAFE_HEAP_LOAD(5696 >> 0 | 0, 1, 0) | 0 | 0;
+ $29 = SAFE_HEAP_LOAD(5728 >> 0 | 0, 1, 0) | 0 | 0;
+ $30 = SAFE_HEAP_LOAD(5760 >> 0 | 0, 1, 0) | 0 | 0;
+ $31 = SAFE_HEAP_LOAD(5792 >> 0 | 0, 1, 0) | 0 | 0;
+ $32 = SAFE_HEAP_LOAD(5823 >> 0 | 0, 1, 0) | 0 | 0;
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+ $8 = $7 & 1;
+ $9 = $8 << 24 >> 24 == 0;
+ if ($9) {
+  $$0 = 156;
+  return $$0 | 0;
+ }
+ $10 = $0 + 56 | 0;
+ $11 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+ $20 = $17 + 4 | 0;
+ $21 = $20;
+ $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($28 | 0, 4, 0) | 0 | 0;
+ $30 = $27 + 4 | 0;
+ $31 = $30;
+ $32 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($41 | 0, $38 | 0, 4);
+ $42 = $40 + 4 | 0;
+ $43 = $42;
+ SAFE_HEAP_STORE($43 | 0, $39 | 0, 4);
+ $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_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;
+ SAFE_HEAP_STORE($10 >> 0 | 0, 4 | 0, 1);
+ $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;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $14 | 0, 4);
+  __gcry_log_fatal(35824, $vararg_buffer);
+ }
+ $15 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $16 = $7 >>> 0 > $15 >>> 0;
+ if ($16) {
+  $17 = $7 - $15 | 0;
+  $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;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $22 | 0, 4);
+  __gcry_log_fatal(35824, $vararg_buffer1);
+ }
+ $23 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $24 = $7 >>> 0 > $23 >>> 0;
+ if ($24) {
+  $25 = $7 - $23 | 0;
+  $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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  STACKTOP = sp;
+  return $30 | 0;
+ } else {
+  $29 = _gpg_strerror($27) | 0;
+  SAFE_HEAP_STORE($vararg_buffer4 | 0, $29 | 0, 4);
+  __gcry_log_fatal(35846, $vararg_buffer4);
+ }
+ return 0 | 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 + 16 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 32 | 0;
+ $3 = $1 & 4194368;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  $$0 = 0;
+ } else {
+  SAFE_HEAP_STORE($2 | 0, $varargs | 0, 4);
+  $arglist_current = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $arglist_next = $10 + 4 | 0;
+  SAFE_HEAP_STORE($2 | 0, $arglist_next | 0, 4);
+  $$0 = $11;
+ }
+ $12 = $0;
+ $13 = $1 | 32768;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $12 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $13 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $$0 | 0, 4);
+ $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) {
+  SAFE_HEAP_STORE($vararg_buffer3 | 0, $14 | 0, 4);
+  $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr6 | 0, 2 | 0, 4);
+  $vararg_ptr7 = $vararg_buffer3 + 8 | 0;
+  SAFE_HEAP_STORE($vararg_ptr7 | 0, 1 | 0, 4);
+  ___syscall221(221, $vararg_buffer3 | 0) | 0;
+ }
+ $18 = ___syscall_ret($14) | 0;
+ STACKTOP = sp;
+ return $18 | 0;
+}
+
+function __gcry_xrealloc($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0$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, 
$25 = 0, $3 = 0, $4 = 0;
+ var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ while (1) {
+  $2 = __gcry_realloc($0, $1) | 0;
+  $3 = ($2 | 0) == (0 | 0);
+  if (!$3) {
+   label = 13;
+   break;
+  }
+  $4 = __gcry_fips_mode() | 0;
+  $5 = ($4 | 0) == 0;
+  $6 = SAFE_HEAP_LOAD(17591 * 4 | 0, 4, 0) | 0 | 0;
+  $7 = ($6 | 0) != (0 | 0);
+  $or$cond = $5 & $7;
+  if (!$or$cond) {
+   label = 12;
+   break;
+  }
+  $8 = SAFE_HEAP_LOAD(17592 * 4 | 0, 4, 0) | 0 | 0;
+  $9 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+  $10 = ($9 | 0) == 0;
+  do {
+   if ($10) {
+    label = 8;
+   } else {
+    $11 = __gcry_enforced_fips_mode() | 0;
+    $12 = ($11 | 0) == 0;
+    if ($12) {
+     $13 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+     $14 = ($13 | 0) == 0;
+     if ($14) {
+      label = 8;
+      break;
+     } else {
+      $$0$i = 0;
+      break;
+     }
+    } else {
+     SAFE_HEAP_STORE(17583 * 4 | 0, 0 | 0, 4);
+     label = 8;
+     break;
+    }
+   }
+  } while (0);
+  do {
+   if ((label | 0) == 8) {
+    label = 0;
+    $15 = SAFE_HEAP_LOAD(17588 * 4 | 0, 4, 0) | 0 | 0;
+    $16 = ($15 | 0) == (0 | 0);
+    if ($16) {
+     $18 = __gcry_private_is_secure($0) | 0;
+     $$0$i = $18;
+     break;
+    } else {
+     $17 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($15 | 0, 63 | 0) | 0) & 63]($0) | 0;
+     $$0$i = $17;
+     break;
+    }
+   }
+  } while (0);
+  $19 = ($$0$i | 0) != 0;
+  $20 = $19 ? 3 : 2;
+  $21 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($6 | 0, 127 | 0) | 0) & 127]($8, $1, 
$20) | 0;
+  $22 = ($21 | 0) == 0;
+  if ($22) {
+   label = 12;
+   break;
+  }
+ }
+ if ((label | 0) == 12) {
+  $23 = ___errno_location() | 0;
+  $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+  $25 = _gpg_err_code_from_errno($24) | 0;
+  __gcry_fatal_error($25, 0);
+ } else if ((label | 0) == 13) {
+  return $2 | 0;
+ }
+ return 0 | 0;
+}
+
+function _mul_n_basecase($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$0516 = 0, $$052 = 0, $$0534 = 0, $$0545 = 0, $$0545$pn = 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;
+ var $24 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $exitcond = 0, 
$exitcond11 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $4 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $5 = $4 >>> 0 < 2;
+ L1 : do {
+  if ($5) {
+   $6 = ($4 | 0) == 1;
+   $7 = ($3 | 0) > 0;
+   if ($6) {
+    if ($7) {
+     $$0516 = 0;
+     while (1) {
+      $9 = $1 + ($$0516 << 2) | 0;
+      $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+      $11 = $0 + ($$0516 << 2) | 0;
+      SAFE_HEAP_STORE($11 | 0, $10 | 0, 4);
+      $12 = $$0516 + 1 | 0;
+      $exitcond11 = ($12 | 0) == ($3 | 0);
+      if ($exitcond11) {
+       $$052 = 0;
+       break L1;
+      } else {
+       $$0516 = $12;
+      }
+     }
+    }
+   } else {
+    if ($7) {
+     $8 = $3 << 2;
+     _memset($0 | 0, 0, $8 | 0) | 0;
+     $$052 = 0;
+     break;
+    }
+   }
+   $14 = $0 + ($3 << 2) | 0;
+   SAFE_HEAP_STORE($14 | 0, 0 | 0, 4);
+   return;
+  } else {
+   $13 = __gcry_mpih_mul_1($0, $1, $3, $4) | 0;
+   $$052 = $13;
+  }
+ } while (0);
+ $15 = $0 + ($3 << 2) | 0;
+ SAFE_HEAP_STORE($15 | 0, $$052 | 0, 4);
+ $16 = ($3 | 0) > 1;
+ if ($16) {
+  $$0534 = 1;
+  $$0545$pn = $0;
+ } else {
+  return;
+ }
+ while (1) {
+  $$0545 = $$0545$pn + 4 | 0;
+  $17 = $2 + ($$0534 << 2) | 0;
+  $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+  $19 = $18 >>> 0 < 2;
+  if ($19) {
+   $20 = ($18 | 0) == 1;
+   if ($20) {
+    $21 = __gcry_mpih_add_n($$0545, $$0545, $1, $3) | 0;
+    $$2 = $21;
+   } else {
+    $$2 = 0;
+   }
+  } else {
+   $22 = __gcry_mpih_addmul_1($$0545, $1, $3, $18) | 0;
+   $$2 = $22;
+  }
+  $23 = $$0545 + ($3 << 2) | 0;
+  SAFE_HEAP_STORE($23 | 0, $$2 | 0, 4);
+  $24 = $$0534 + 1 | 0;
+  $exitcond = ($24 | 0) == ($3 | 0);
+  if ($exitcond) {
+   break;
+  } else {
+   $$0534 = $24;
+   $$0545$pn = $$0545;
+  }
+ }
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    __gcry_md_reset($15);
+   }
+   $16 = $$03839 >>> 24;
+   $17 = $16 & 255;
+   SAFE_HEAP_STORE($6 >> 0 | 0, $17 | 0, 1);
+   $18 = $$03839 >>> 16;
+   $19 = $18 & 255;
+   SAFE_HEAP_STORE($11 >> 0 | 0, $19 | 0, 1);
+   $20 = $$03839 >>> 8;
+   $21 = $20 & 255;
+   SAFE_HEAP_STORE($12 >> 0 | 0, $21 | 0, 1);
+   $22 = $$03839 & 255;
+   SAFE_HEAP_STORE($13 >> 0 | 0, $22 | 0, 1);
+   $23 = $$03839 + 1 | 0;
+   $24 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   __gcry_md_write($24, $2, $3);
+   $25 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   __gcry_md_write($25, $6, 4);
+   $26 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_md_close($33);
+ $$0 = 0;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $$idx$val$idx = $$idx$val + 16 | 0;
+ $$idx$val$idx$val = SAFE_HEAP_LOAD($$idx$val$idx | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 0;
+ $3 = ($$idx$val$idx$val | 0) == (0 | 0);
+ if ($2) {
+  if ($3) {
+   __gcry_bug(36953, 816, 37090);
+  }
+  $4 = $$idx$val$idx$val + 4 | 0;
+  $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $6 = ($5 | 0) == (0 | 0);
+  if (!$6) {
+   __gcry_log_debug(37051, $vararg_buffer);
+  }
+  $7 = SAFE_HEAP_LOAD($$idx$val$idx$val | 0, 4, 0) | 0 | 0;
+  $8 = $7 + 40 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = $$idx$val$idx$val + 16 | 0;
+  $11 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($9 | 0, 63 | 0) | 0) & 63]($10) | 0;
+  $$013$i = $11;
+  STACKTOP = sp;
+  return $$013$i | 0;
+ }
+ if ($3) {
+  __gcry_bug(36953, 816, 37090);
+ } else {
+  $$02$i = $$idx$val$idx$val;
+ }
+ while (1) {
+  $12 = SAFE_HEAP_LOAD($$02$i | 0, 4, 0) | 0 | 0;
+  $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $14 = ($13 | 0) == ($1 | 0);
+  if ($14) {
+   break;
+  }
+  $19 = $$02$i + 4 | 0;
+  $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+  $21 = ($20 | 0) == (0 | 0);
+  if ($21) {
+   label = 10;
+   break;
+  } else {
+   $$02$i = $20;
+  }
+ }
+ if ((label | 0) == 10) {
+  __gcry_bug(36953, 816, 37090);
+ }
+ $15 = $12 + 40 | 0;
+ $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $17 = $$02$i + 16 | 0;
+ $18 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($16 | 0, 63 | 0) | 0) & 63]($17) | 0;
+ $$013$i = $18;
+ STACKTOP = sp;
+ return $$013$i | 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 = SAFE_HEAP_LOAD($$idx >> 0 | 0, 1, 0) | 0 | 0;
+ $1 = $$idx$val << 24 >> 24 == 0;
+ if ($1) {
+  $$08 = -1;
+  return $$08 | 0;
+ }
+ $2 = $0 + 8 | 0;
+ $3 = $0;
+ $4 = $3;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $3 + 4 | 0;
+ $7 = $6;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = ($5 | 0) == -1;
+ $10 = ($8 | 0) == -1;
+ $11 = $9 & $10;
+ $12 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ L4 : do {
+  if ($11) {
+   $$0$lcssa = 0;
+   $27 = $12;
+  } else {
+   $$09 = 0;
+   $13 = $12;
+   $16 = $5;
+   $17 = $8;
+   while (1) {
+    $14 = $13 >>> 0 > 99999999;
+    if (!$14) {
+     $$08 = $$09;
+     break;
+    }
+    $15 = $13 + -1e8 | 0;
+    SAFE_HEAP_STORE($2 | 0, $15 | 0, 4);
+    $18 = _i64Add($16 | 0, $17 | 0, 1, 0) | 0;
+    $19 = tempRet0;
+    $20 = $0;
+    $21 = $20;
+    SAFE_HEAP_STORE($21 | 0, $18 | 0, 4);
+    $22 = $20 + 4 | 0;
+    $23 = $22;
+    SAFE_HEAP_STORE($23 | 0, $19 | 0, 4);
+    $24 = ($18 | 0) == -1;
+    $25 = ($19 | 0) == -1;
+    $26 = $24 & $25;
+    if ($26) {
+     $$0$lcssa = 1;
+     $27 = $15;
+     break L4;
+    } else {
+     $$09 = 1;
+     $13 = $15;
+     $16 = $18;
+     $17 = $19;
+    }
+   }
+   return $$08 | 0;
+  }
+ } while (0);
+ $28 = $27 >>> 0 > 99999999;
+ if (!$28) {
+  $$08 = $$0$lcssa;
+  return $$08 | 0;
+ }
+ {}
+ SAFE_HEAP_STORE($0 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 20 | 0, 0 | 0 | 0, 4);
+ $$08 = -1;
+ return $$08 | 0;
+}
+
+function __gcry_mpi_get_nbits($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $$024 = 0, $$neg26 = 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, $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, 
$6 = 0, $7 = 0, $8 = 0;
+ var $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == (0 | 0);
+ if (!$1) {
+  $2 = $0 + 12 | 0;
+  $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  $4 = $3 & 4;
+  $5 = ($4 | 0) == 0;
+  if (!$5) {
+   $6 = $0 + 8 | 0;
+   $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $$0 = $7;
+   return $$0 | 0;
+  }
+ }
+ $8 = $0 + 4 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == 0;
+ if ($10) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $11 = $0 + 16 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $14 = $9;
+ while (1) {
+  $13 = $14 + -1 | 0;
+  $15 = $12 + ($13 << 2) | 0;
+  $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $17 = ($16 | 0) == 0;
+  if (!$17) {
+   break;
+  }
+  SAFE_HEAP_STORE($8 | 0, $13 | 0, 4);
+  $18 = ($13 | 0) == 0;
+  if ($18) {
+   $$0 = 0;
+   label = 11;
+   break;
+  } else {
+   $14 = $13;
+  }
+ }
+ if ((label | 0) == 11) {
+  return $$0 | 0;
+ }
+ $19 = $14 + -1 | 0;
+ $20 = $0 + 16 | 0;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = $21 + ($19 << 2) | 0;
+ $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $24 = ($23 | 0) == 0;
+ if ($24) {
+  $$024 = 32;
+ } else {
+  $25 = $23 >>> 0 < 65536;
+  $26 = $23 >>> 0 < 256;
+  $27 = $26 ? 0 : 8;
+  $28 = $23 >>> 0 < 16777216;
+  $29 = $28 ? 16 : 24;
+  $30 = $25 ? $27 : $29;
+  $31 = $23 >>> $30;
+  $32 = 45555 + $31 | 0;
+  $33 = SAFE_HEAP_LOAD($32 >> 0 | 0, 1, 0) | 0 | 0;
+  $34 = $33 & 255;
+  $$neg26 = 32 - $30 | 0;
+  $35 = $$neg26 - $34 | 0;
+  $$024 = $35;
+ }
+ $36 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $37 = $36 << 5;
+ $38 = $37 - $$024 | 0;
+ $$0 = $38;
+ return $$0 | 0;
+}
+
+function __gcry_mpi_set_highbit($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0 = 0, $$03134 = 0, $$032 = 0, $$033 = 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $7 >>> 0 < $10 >>> 0;
+ if (!$11) {
+  $12 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $13 = $10 >>> 0 < $12 >>> 0;
+  if ($13) {
+   $14 = $0 + 16 | 0;
+   $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+   $$03134 = $10;
+   while (1) {
+    $16 = $15 + ($$03134 << 2) | 0;
+    SAFE_HEAP_STORE($16 | 0, 0 | 0, 4);
+    $17 = $$03134 + 1 | 0;
+    $18 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    $19 = $17 >>> 0 < $18 >>> 0;
+    if ($19) {
+     $$03134 = $17;
+    } else {
+     break;
+    }
+   }
+  }
+  $20 = $7 + 1 | 0;
+  __gcry_mpi_resize($0, $20);
+  SAFE_HEAP_STORE($9 | 0, $20 | 0, 4);
+ }
+ $21 = 1 << $8;
+ $22 = $0 + 16 | 0;
+ $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $24 = $23 + ($7 << 2) | 0;
+ $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+ $26 = $25 | $21;
+ SAFE_HEAP_STORE($24 | 0, $26 | 0, 4);
+ $$032 = $8 + 1 | 0;
+ $27 = $$032 >>> 0 < 32;
+ if ($27) {
+  $$033 = $$032;
+  $31 = $26;
+  while (1) {
+   $28 = 1 << $$033;
+   $29 = $28 ^ -1;
+   $30 = $31 & $29;
+   $$0 = $$033 + 1 | 0;
+   $exitcond = ($$0 | 0) == 32;
+   if ($exitcond) {
+    break;
+   } else {
+    $$033 = $$0;
+    $31 = $30;
+   }
+  }
+  SAFE_HEAP_STORE($24 | 0, $30 | 0, 4);
+ }
+ $32 = $7 + 1 | 0;
+ SAFE_HEAP_STORE($9 | 0, $32 | 0, 4);
+ 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 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $$mask = $3 & 2;
+ $4 = $$mask << 24 >> 24 == 0;
+ do {
+  if (!$4) {
+   $5 = _malloc(172) | 0;
+   $6 = ($5 | 0) == (0 | 0);
+   if (!$6) {
+    SAFE_HEAP_STORE($5 | 0, 1779033703 | 0, 4);
+    $7 = $5 + 4 | 0;
+    SAFE_HEAP_STORE($7 | 0, -1150833019 | 0, 4);
+    $8 = $5 + 8 | 0;
+    SAFE_HEAP_STORE($8 | 0, 1013904242 | 0, 4);
+    $9 = $5 + 12 | 0;
+    SAFE_HEAP_STORE($9 | 0, -1521486534 | 0, 4);
+    $10 = $5 + 16 | 0;
+    SAFE_HEAP_STORE($10 | 0, 1359893119 | 0, 4);
+    $11 = $5 + 20 | 0;
+    SAFE_HEAP_STORE($11 | 0, -1694144372 | 0, 4);
+    $12 = $5 + 24 | 0;
+    SAFE_HEAP_STORE($12 | 0, 528734635 | 0, 4);
+    $13 = $5 + 28 | 0;
+    SAFE_HEAP_STORE($13 | 0, 1541459225 | 0, 4);
+    $14 = $5 + 32 | 0;
+    SAFE_HEAP_STORE($14 | 0, 0 | 0, 4);
+    $15 = $5 + 36 | 0;
+    SAFE_HEAP_STORE($15 | 0, 0 | 0, 4);
+    $16 = $5 + 40 | 0;
+    SAFE_HEAP_STORE($16 >> 0 | 0, 0 | 0, 1);
+    $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 {
+     SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 
| 0, 1);
+     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) {
+  SAFE_HEAP_STORE($1 | 0, 32 | 0, 4);
+ }
+ $21 = $0 + 41 | 0;
+ $$1 = $21;
+ return $$1 | 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 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 1;
+ if ($1) {
+  $$0 = 1;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $2 = _gpgrt_lock_lock(1312) | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  $4 = _gpg_strerror($2) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $4 | 0, 4);
+  __gcry_log_info(23505, $vararg_buffer);
+  _abort();
+ }
+ $5 = SAFE_HEAP_LOAD(17609 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == 1;
+ do {
+  if ($6) {
+   $7 = _gpgrt_lock_unlock(1312) | 0;
+   $8 = ($7 | 0) == 0;
+   if (!$8) {
+    $9 = _gpg_strerror($7) | 0;
+    SAFE_HEAP_STORE($vararg_buffer1 | 0, $9 | 0, 4);
+    __gcry_log_info(23560, $vararg_buffer1);
+    _abort();
+   }
+   __gcry_fips_run_selftests(0) | 0;
+   $10 = _gpgrt_lock_lock(1312) | 0;
+   $11 = ($10 | 0) == 0;
+   if ($11) {
+    $$pre = SAFE_HEAP_LOAD(17609 * 4 | 0, 4, 0) | 0 | 0;
+    $13 = $$pre;
+    break;
+   } else {
+    $12 = _gpg_strerror($10) | 0;
+    SAFE_HEAP_STORE($vararg_buffer4 | 0, $12 | 0, 4);
+    __gcry_log_info(23505, $vararg_buffer4);
+    _abort();
+   }
+  } else {
+   $13 = $5;
+  }
+ } while (0);
+ $14 = ($13 | 0) == 3;
+ $15 = $14 & 1;
+ $16 = _gpgrt_lock_unlock(1312) | 0;
+ $17 = ($16 | 0) == 0;
+ if ($17) {
+  $$0 = $15;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  $18 = _gpg_strerror($16) | 0;
+  SAFE_HEAP_STORE($vararg_buffer7 | 0, $18 | 0, 4);
+  __gcry_log_info(23560, $vararg_buffer7);
+  _abort();
+ }
+ return 0 | 0;
+}
+
+function __gcry_rngsystem_randomize($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 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, $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 = SAFE_HEAP_LOAD(17684 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  SAFE_HEAP_STORE(17684 * 4 | 0, 1 | 0, 4);
+  SAFE_HEAP_STORE(17685 * 4 | 0, 0 | 0, 4);
+ }
+ $5 = ($2 | 0) == 2;
+ $$ = $5 ? 2 : 1;
+ $6 = _gpgrt_lock_lock(12688) | 0;
+ $7 = ($6 | 0) == 0;
+ if (!$7) {
+  $8 = _gpg_strerror($6) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $8 | 0, 4);
+  __gcry_log_fatal(52234, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17685 * 4 | 0, 1 | 0, 4);
+ $9 = ($0 | 0) == (0 | 0);
+ if ($9) {
+  __gcry_assert_failed(52320, 52327, 144, 52343);
+ }
+ SAFE_HEAP_STORE(17686 * 4 | 0, $0 | 0, 4);
+ SAFE_HEAP_STORE(17687 * 4 | 0, $1 | 0, 4);
+ SAFE_HEAP_STORE(17688 * 4 | 0, 0 | 0, 4);
+ $10 = __gcry_rndlinux_gather_random(82, 0, $1, $$) | 0;
+ $11 = ($10 | 0) < 0;
+ if ($11) {
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $10 | 0, 4);
+  __gcry_log_fatal(52354, $vararg_buffer1);
+ }
+ $12 = SAFE_HEAP_LOAD(17688 * 4 | 0, 4, 0) | 0 | 0;
+ $13 = SAFE_HEAP_LOAD(17687 * 4 | 0, 4, 0) | 0 | 0;
+ $14 = ($12 | 0) == ($13 | 0);
+ if (!$14) {
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $10 | 0, 4);
+  __gcry_log_fatal(52354, $vararg_buffer1);
+ }
+ SAFE_HEAP_STORE(17685 * 4 | 0, 0 | 0, 4);
+ $15 = _gpgrt_lock_unlock(12688) | 0;
+ $16 = ($15 | 0) == 0;
+ if ($16) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $17 = _gpg_strerror($15) | 0;
+  SAFE_HEAP_STORE($vararg_buffer4 | 0, $17 | 0, 4);
+  __gcry_log_fatal(52277, $vararg_buffer4);
+ }
+}
+
+function _vsnprintf($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$$015 = 0, $$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;
+ var $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 + 128 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(128 | 0);
+ $4 = sp + 124 | 0;
+ $5 = sp;
+ dest = $5;
+ src = 16160;
+ stop = dest + 124 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 4, 0) | 0 | 0 | 0, 4);
+  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;
+   SAFE_HEAP_STORE($9 | 0, 75 | 0, 4);
+   $$0 = -1;
+  }
+ } else {
+  $$014 = $0;
+  $$015 = $1;
+  label = 4;
+ }
+ if ((label | 0) == 4) {
+  $10 = $$014;
+  $11 = -2 - $10 | 0;
+  $12 = $$015 >>> 0 > $11 >>> 0;
+  $$$015 = $12 ? $11 : $$015;
+  $13 = $5 + 48 | 0;
+  SAFE_HEAP_STORE($13 | 0, $$$015 | 0, 4);
+  $14 = $5 + 20 | 0;
+  SAFE_HEAP_STORE($14 | 0, $$014 | 0, 4);
+  $15 = $5 + 44 | 0;
+  SAFE_HEAP_STORE($15 | 0, $$014 | 0, 4);
+  $16 = $$014 + $$$015 | 0;
+  $17 = $5 + 16 | 0;
+  SAFE_HEAP_STORE($17 | 0, $16 | 0, 4);
+  $18 = $5 + 28 | 0;
+  SAFE_HEAP_STORE($18 | 0, $16 | 0, 4);
+  $19 = _vfprintf($5, $2, $3) | 0;
+  $20 = ($$$015 | 0) == 0;
+  if ($20) {
+   $$0 = $19;
+  } else {
+   $21 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+   $22 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+   $23 = ($21 | 0) == ($22 | 0);
+   $24 = $23 << 31 >> 31;
+   $25 = $21 + $24 | 0;
+   SAFE_HEAP_STORE($25 >> 0 | 0, 0 | 0, 1);
+   $$0 = $19;
+  }
+ }
+ STACKTOP = sp;
+ return $$0 | 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;
+ SAFE_HEAP_STORE($11 | 0, $0 | 0, 4);
+ $12 = $10 + 4 | 0;
+ $13 = $12;
+ SAFE_HEAP_STORE($13 | 0, $1 | 0, 4);
+ $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 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+  $20 = $17 + 4 | 0;
+  $21 = $20;
+  $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+  $23 = $8;
+  $24 = $23;
+  SAFE_HEAP_STORE($24 | 0, $19 | 0, 4);
+  $25 = $23 + 4 | 0;
+  $26 = $25;
+  SAFE_HEAP_STORE($26 | 0, $22 | 0, 4);
+  $27 = $6;
+  $28 = $8 + 8 | 0;
+  SAFE_HEAP_STORE($28 | 0, $27 | 0, 4);
+  $29 = _GNUNET_xmalloc_(24, 19010, 117) | 0;
+  $9 = $29;
+  $30 = $9;
+  {}
+  SAFE_HEAP_STORE($30 | 0, SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($30 + 4 | 0, SAFE_HEAP_LOAD($8 + 4 | 0, 4, 0) | 0 | 0 | 0, 
4);
+  SAFE_HEAP_STORE($30 + 8 | 0, SAFE_HEAP_LOAD($8 + 8 | 0, 4, 0) | 0 | 0 | 0, 
4);
+  SAFE_HEAP_STORE($30 + 12 | 0, SAFE_HEAP_LOAD($8 + 12 | 0, 4, 0) | 0 | 0 | 0, 
4);
+  SAFE_HEAP_STORE($30 + 16 | 0, SAFE_HEAP_LOAD($8 + 16 | 0, 4, 0) | 0 | 0 | 0, 
4);
+  SAFE_HEAP_STORE($30 + 20 | 0, SAFE_HEAP_LOAD($8 + 20 | 0, 4, 0) | 0 | 0 | 0, 
4);
+  $31 = $9;
+  $4 = $31;
+  $32 = $4;
+  STACKTOP = sp;
+  return $32 | 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, $2 = 0, $3 
= 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $memchr = 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 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = $2 << 24 >> 24;
+ $memchr = _memchr(70204, $3, 4) | 0;
+ $4 = ($memchr | 0) == (0 | 0);
+ if ($4) {
+  $5 = ___errno_location() | 0;
+  SAFE_HEAP_STORE($5 | 0, 22 | 0, 4);
+  $$0 = 0;
+ } else {
+  $6 = ___fmodeflags($1) | 0;
+  $7 = $0;
+  $8 = $6 | 32768;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $7 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, $8 | 0, 4);
+  $vararg_ptr2 = $vararg_buffer + 8 | 0;
+  SAFE_HEAP_STORE($vararg_ptr2 | 0, 438 | 0, 4);
+  $9 = ___syscall5(5, $vararg_buffer | 0) | 0;
+  $10 = ___syscall_ret($9) | 0;
+  $11 = ($10 | 0) < 0;
+  if ($11) {
+   $$0 = 0;
+  } else {
+   $12 = $6 & 524288;
+   $13 = ($12 | 0) == 0;
+   if (!$13) {
+    SAFE_HEAP_STORE($vararg_buffer3 | 0, $10 | 0, 4);
+    $vararg_ptr6 = $vararg_buffer3 + 4 | 0;
+    SAFE_HEAP_STORE($vararg_ptr6 | 0, 2 | 0, 4);
+    $vararg_ptr7 = $vararg_buffer3 + 8 | 0;
+    SAFE_HEAP_STORE($vararg_ptr7 | 0, 1 | 0, 4);
+    ___syscall221(221, $vararg_buffer3 | 0) | 0;
+   }
+   $14 = ___fdopen($10, $1) | 0;
+   $15 = ($14 | 0) == (0 | 0);
+   if ($15) {
+    SAFE_HEAP_STORE($vararg_buffer8 | 0, $10 | 0, 4);
+    ___syscall6(6, $vararg_buffer8 | 0) | 0;
+    $$0 = 0;
+   } else {
+    $$0 = $14;
+   }
+  }
+ }
+ STACKTOP = sp;
+ return $$0 | 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, $23 = 0, $6 = 0, $7 = 0, 
$8 = 0, $9 = 0, $vararg_buffer = 0;
+ var $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;
+ $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;
+    SAFE_HEAP_STORE($15 | 0, 12 | 0, 4);
+    $$0 = -1;
+    break;
+   }
+   $16 = $3 & 16;
+   $17 = ($16 | 0) == 0;
+   if (!$17) {
+    _dummy_319();
+   }
+   $18 = $0;
+   $19 = _bitshift64Lshr($5 | 0, $7 | 0, 12) | 0;
+   $20 = tempRet0;
+   SAFE_HEAP_STORE($vararg_buffer | 0, $18 | 0, 4);
+   $vararg_ptr1 = $vararg_buffer + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr1 | 0, $1 | 0, 4);
+   $vararg_ptr2 = $vararg_buffer + 8 | 0;
+   SAFE_HEAP_STORE($vararg_ptr2 | 0, $2 | 0, 4);
+   $vararg_ptr3 = $vararg_buffer + 12 | 0;
+   SAFE_HEAP_STORE($vararg_ptr3 | 0, $3 | 0, 4);
+   $vararg_ptr4 = $vararg_buffer + 16 | 0;
+   SAFE_HEAP_STORE($vararg_ptr4 | 0, $4 | 0, 4);
+   $vararg_ptr5 = $vararg_buffer + 20 | 0;
+   SAFE_HEAP_STORE($vararg_ptr5 | 0, $19 | 0, 4);
+   $21 = ___syscall192(192, $vararg_buffer | 0) | 0;
+   $22 = ___syscall_ret($21) | 0;
+   $23 = $22;
+   $$0 = $23;
+  } else {
+   $13 = ___errno_location() | 0;
+   SAFE_HEAP_STORE($13 | 0, 22 | 0, 4);
+   $$0 = -1;
+  }
+ } while (0);
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _GNUNET_CRYPTO_hash_context_finish($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, $3 = 0, $4 = 0, 
$5 = 0, $6 = 0, $7 = 0;
+ var $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, 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);
+ $vararg_buffer = sp;
+ $2 = $0;
+ $3 = $1;
+ $6 = $2;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = _gcry_md_read($7, 0) | 0;
+ $4 = $8;
+ $9 = $4;
+ $10 = (0 | 0) != ($9 | 0);
+ if ($10) {
+  $19 = $3;
+  $20 = (0 | 0) != ($19 | 0);
+  if (!$20) {
+   $23 = $2;
+   _GNUNET_CRYPTO_hash_context_abort($23);
+   STACKTOP = sp;
+   return;
+  }
+  $21 = $3;
+  $22 = $4;
+  dest = $21;
+  src = $22;
+  stop = dest + 64 | 0;
+  do {
+   SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+   dest = dest + 1 | 0;
+   src = src + 1 | 0;
+  } while ((dest | 0) < (stop | 0));
+  $23 = $2;
+  _GNUNET_CRYPTO_hash_context_abort($23);
+  STACKTOP = sp;
+  return;
+ }
+ $5 = 462;
+ $11 = SAFE_HEAP_LOAD(233 * 4 | 0, 4, 0) | 0 | 0;
+ $12 = ($11 | 0) == -1;
+ if ($12) {
+  $13 = $5;
+  $14 = _GNUNET_get_log_call_status(1, 0, 20365, 20412, $13) | 0;
+  SAFE_HEAP_STORE(233 * 4 | 0, $14 | 0, 4);
+ }
+ $15 = _GNUNET_get_log_skip() | 0;
+ $16 = ($15 | 0) > 0;
+ if ($16) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $17 = SAFE_HEAP_LOAD(233 * 4 | 0, 4, 0) | 0 | 0;
+ $18 = ($17 | 0) != 0;
+ if (!$18) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer | 0, 20365 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 462 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ _GNUNET_abort_();
+}
+
+function __gcry_sexp_length($0) {
+ $0 = $0 | 0;
+ var $$0$copyload = 0, $$0$ph = 0, $$0$ph$be = 0, $$0$ph32 = 0, $$026$ph = 0, 
$$026$ph$be = 0, $$027 = 0, $$028 = 0, $$028$ph = 0, $$028$ph$be = 0, 
$$028$ph31 = 0, $$pn = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, 
$3 = 0, $4 = 0;
+ var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == (0 | 0);
+ if ($1) {
+  $$027 = 0;
+  return $$027 | 0;
+ }
+ $$0$ph = 0;
+ $$026$ph = 0;
+ $$028$ph = $0;
+ L4 : while (1) {
+  $$0$ph32 = $$0$ph;
+  $$028$ph31 = $$028$ph;
+  L6 : while (1) {
+   $$028 = $$028$ph31;
+   L8 : while (1) {
+    $2 = SAFE_HEAP_LOAD($$028 >> 0 | 0, 1, 0) | 0 | 0;
+    $3 = $2 << 24 >> 24 == 0;
+    if ($3) {
+     $$027 = $$026$ph;
+     break L4;
+    }
+    $4 = $$028 + 1 | 0;
+    switch ($2 << 24 >> 24) {
+    case 1:
+     {
+      label = 7;
+      break L6;
+      break;
+     }
+    case 3:
+     {
+      label = 8;
+      break L6;
+      break;
+     }
+    case 4:
+     {
+      break L8;
+      break;
+     }
+    default:
+     {
+      $$028 = $4;
+     }
+    }
+   }
+   $13 = $$0$ph32 + -1 | 0;
+   $$0$ph32 = $13;
+   $$028$ph31 = $4;
+  }
+  if ((label | 0) == 7) {
+   label = 0;
+   $$0$copyload = SAFE_HEAP_LOAD($4 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($4 + 
1 >> 0 | 0, 1, 1) | 0) << 8;
+   $5 = $$0$copyload & 65535;
+   $6 = $5 + 2 | 0;
+   $7 = $4 + $6 | 0;
+   $8 = ($$0$ph32 | 0) == 1;
+   $9 = $8 & 1;
+   $$0$ph$be = $$0$ph32;
+   $$028$ph$be = $7;
+   $$pn = $9;
+  } else if ((label | 0) == 8) {
+   label = 0;
+   $10 = ($$0$ph32 | 0) == 1;
+   $11 = $10 & 1;
+   $12 = $$0$ph32 + 1 | 0;
+   $$0$ph$be = $12;
+   $$028$ph$be = $4;
+   $$pn = $11;
+  }
+  $$026$ph$be = $$pn + $$026$ph | 0;
+  $$0$ph = $$0$ph$be;
+  $$026$ph = $$026$ph$be;
+  $$028$ph = $$028$ph$be;
+ }
+ return $$027 | 0;
+}
+
+function _spec_from_name($0) {
+ $0 = $0 | 0;
+ var $$016 = 0, $$019 = 0, $$019$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 $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD(12484 | 0, 4, 0) | 0 | 0;
+ $2 = _strcasecmp($0, $1) | 0;
+ $3 = ($2 | 0) == 0;
+ if ($3) {
+  $$016 = 12472;
+  return $$016 | 0;
+ }
+ $4 = SAFE_HEAP_LOAD(12488 | 0, 4, 0) | 0 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == (0 | 0);
+ L4 : do {
+  if (!$6) {
+   $$019 = $4;
+   $10 = $5;
+   while (1) {
+    $11 = _strcasecmp($0, $10) | 0;
+    $12 = ($11 | 0) == 0;
+    $8 = $$019 + 4 | 0;
+    if ($12) {
+     $$016 = 12472;
+     break;
+    }
+    $7 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    $9 = ($7 | 0) == (0 | 0);
+    if ($9) {
+     break L4;
+    } else {
+     $$019 = $8;
+     $10 = $7;
+    }
+   }
+   return $$016 | 0;
+  }
+ } while (0);
+ $13 = SAFE_HEAP_LOAD(7532 | 0, 4, 0) | 0 | 0;
+ $14 = _strcasecmp($0, $13) | 0;
+ $15 = ($14 | 0) == 0;
+ if ($15) {
+  $$016 = 7520;
+  return $$016 | 0;
+ }
+ $16 = SAFE_HEAP_LOAD(7536 | 0, 4, 0) | 0 | 0;
+ $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+ $18 = ($17 | 0) == (0 | 0);
+ if ($18) {
+  $$016 = 0;
+  return $$016 | 0;
+ } else {
+  $$019$1 = $16;
+  $19 = $17;
+ }
+ while (1) {
+  $20 = _strcasecmp($0, $19) | 0;
+  $21 = ($20 | 0) == 0;
+  $22 = $$019$1 + 4 | 0;
+  if ($21) {
+   $$016 = 7520;
+   label = 6;
+   break;
+  }
+  $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+  $24 = ($23 | 0) == (0 | 0);
+  if ($24) {
+   $$016 = 0;
+   label = 6;
+   break;
+  } else {
+   $$019$1 = $22;
+   $19 = $23;
+  }
+ }
+ if ((label | 0) == 6) {
+  return $$016 | 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $2 = $1 + 12 | 0;
+ $3 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $4 = $3 & -3;
+ SAFE_HEAP_STORE($2 >> 0 | 0, $4 | 0, 1);
+ $5 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ $6 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $7 = $6 + 16 | 0;
+ $$015 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $8 = ($$015 | 0) == (0 | 0);
+ if ($8) {
+  $24 = $6;
+ } else {
+  $$016 = $$015;
+  while (1) {
+   $9 = $$016 + 16 | 0;
+   $10 = SAFE_HEAP_LOAD($$016 | 0, 4, 0) | 0 | 0;
+   $11 = $10 + 44 | 0;
+   $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+   _memset($9 | 0, 0, $12 | 0) | 0;
+   $13 = $10 + 28 | 0;
+   $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+   $15 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $16 = $15 + 12 | 0;
+   $17 = SAFE_HEAP_LOAD($16 >> 0 | 0, 1, 0) | 0 | 0;
+   $18 = $17 & 4;
+   $19 = $18 & 255;
+   $20 = $19 << 6;
+   FUNCTION_TABLE_vii[(SAFE_FT_MASK($14 | 0, 63 | 0) | 0) & 63]($9, $20);
+   $21 = $$016 + 4 | 0;
+   $$0 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+   $22 = ($$0 | 0) == (0 | 0);
+   if ($22) {
+    break;
+   } else {
+    $$016 = $$0;
+   }
+  }
+  $$pre = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $24 = $$pre;
+ }
+ $23 = $24 + 20 | 0;
+ $25 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ $26 = ($25 | 0) == (0 | 0);
+ if ($26) {
+  return;
+ }
+ $27 = $24 + 24 | 0;
+ $28 = SAFE_HEAP_LOAD($27 | 0, 4, 0) | 0 | 0;
+ _md_write($0, $25, $28);
+ 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $3 = $2 >>> 0 < $1 >>> 0;
+ if (!$3) {
+  $4 = $0 + 4 | 0;
+  $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $6 = $5 >>> 0 < $2 >>> 0;
+  if (!$6) {
+   return;
+  }
+  $7 = $0 + 16 | 0;
+  $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  $$024 = $5;
+  while (1) {
+   $9 = $8 + ($$024 << 2) | 0;
+   SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+   $10 = $$024 + 1 | 0;
+   $11 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $12 = $10 >>> 0 < $11 >>> 0;
+   if ($12) {
+    $$024 = $10;
+   } else {
+    break;
+   }
+  }
+  return;
+ }
+ $13 = $0 + 16 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = ($14 | 0) == (0 | 0);
+ do {
+  if ($15) {
+   $22 = $0 + 12 | 0;
+   $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+   $24 = $23 & 1;
+   $25 = ($24 | 0) == 0;
+   if ($25) {
+    $27 = __gcry_xcalloc($1, 4) | 0;
+    SAFE_HEAP_STORE($13 | 0, $27 | 0, 4);
+    break;
+   } else {
+    $26 = __gcry_xcalloc_secure($1, 4) | 0;
+    SAFE_HEAP_STORE($13 | 0, $26 | 0, 4);
+    break;
+   }
+  } else {
+   $16 = $1 << 2;
+   $17 = __gcry_xrealloc($14, $16) | 0;
+   SAFE_HEAP_STORE($13 | 0, $17 | 0, 4);
+   $18 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 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);
+ SAFE_HEAP_STORE($0 | 0, $1 | 0, 4);
+ return;
+}
+
+function _int2octets($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 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, $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;
+ 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $7 = $6 >>> 0 > $2 >>> 0;
+ if ($7) {
+  $$0 = 67;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $8 = $6 >>> 0 < $2 >>> 0;
+ $9 = $2 - $6 | 0;
+ $$ = $8 ? $9 : 0;
+ $10 = $$ + $6 | 0;
+ $11 = ($1 | 0) == (0 | 0);
+ if ($11) {
+  label = 6;
+ } else {
+  $12 = $1 + 12 | 0;
+  $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $14 = $13 & 1;
+  $15 = ($14 | 0) == 0;
+  if ($15) {
+   label = 6;
+  } else {
+   $16 = __gcry_malloc_secure($10) | 0;
+   $18 = $16;
+  }
+ }
+ if ((label | 0) == 6) {
+  $17 = __gcry_malloc($10) | 0;
+  $18 = $17;
+ }
+ $19 = ($18 | 0) == (0 | 0);
+ if ($19) {
+  $20 = _gpg_err_code_from_syserror() | 0;
+  $$0 = $20;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $21 = ($$ | 0) == 0;
+ if (!$21) {
+  _memset($18 | 0, 0, $$ | 0) | 0;
+ }
+ $22 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $23 = $22 + $$ | 0;
+ SAFE_HEAP_STORE($3 | 0, $23 | 0, 4);
+ $24 = $18 + $$ | 0;
+ $25 = __gcry_mpi_print(5, $24, $22, 0, $1) | 0;
+ $26 = ($25 | 0) == 0;
+ if ($26) {
+  SAFE_HEAP_STORE($0 | 0, $18 | 0, 4);
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  __gcry_free($18);
+  $$0 = $25;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+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 = 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;
+ var $27 = 0, $28 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $tmp = 
0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $4 = ($0 | 0) != (0 | 0);
+ $5 = ($1 | 0) != (0 | 0);
+ $tmp = $4 ^ $5;
+ if (!$tmp) {
+  $$040 = 45;
+  return $$040 | 0;
+ }
+ if ($4) {
+  SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ }
+ $6 = __gcry_mpi_get_nbits($2) | 0;
+ $7 = $2 + 8 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = ($8 | 0) == 0;
+ if (!$9) {
+  __gcry_mpi_cmp_ui($2, 0) | 0;
+ }
+ $10 = $6 + 7 | 0;
+ $11 = $10 >>> 3;
+ $12 = $11 >>> 0 > $3 >>> 0;
+ if ($12) {
+  $$040 = 67;
+  return $$040 | 0;
+ }
+ $13 = $11 >>> 0 < $3 >>> 0;
+ $14 = $3 - $11 | 0;
+ $$ = $13 ? $14 : 0;
+ $15 = $$ + $11 | 0;
+ if ($5) {
+  $$0 = $1;
+ } else {
+  $16 = $2 + 12 | 0;
+  $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+  $18 = $17 & 1;
+  $19 = ($18 | 0) == 0;
+  if ($19) {
+   $21 = __gcry_malloc($15) | 0;
+   $22 = $21;
+  } else {
+   $20 = __gcry_malloc_secure($15) | 0;
+   $22 = $20;
+  }
+  $23 = ($22 | 0) == (0 | 0);
+  if ($23) {
+   $24 = _gpg_err_code_from_syserror() | 0;
+   $$040 = $24;
+   return $$040 | 0;
+  } else {
+   $$0 = $22;
+  }
+ }
+ $25 = ($$ | 0) == 0;
+ if (!$25) {
+  _memset($$0 | 0, 0, $$ | 0) | 0;
+ }
+ $26 = $$0 + $$ | 0;
+ $27 = __gcry_mpi_print(5, $26, $11, 0, $2) | 0;
+ $28 = ($27 | 0) == 0;
+ if (!$28) {
+  __gcry_free($$0);
+  $$040 = $27;
+  return $$040 | 0;
+ }
+ if (!$4) {
+  $$040 = 0;
+  return $$040 | 0;
+ }
+ SAFE_HEAP_STORE($0 | 0, $$0 | 0, 4);
+ $$040 = 0;
+ return $$040 | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $4 + 32 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $0 + 496 | 0;
+ $8 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($6 | 0, 127 | 0) | 0) & 127]($7, $1, 
$2) | 0;
+ $9 = ($8 | 0) == 0;
+ if (!$9) {
+  $19 = $0 + 56 | 0;
+  $20 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 0 | 0;
+  $21 = $20 & -2;
+  SAFE_HEAP_STORE($19 >> 0 | 0, $21 | 0, 1);
+  return $8 | 0;
+ }
+ $10 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $11 = $10 + 28 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = $7 + $12 | 0;
+ _memcpy($13 | 0, $7 | 0, $12 | 0) | 0;
+ $14 = $0 + 56 | 0;
+ $15 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+ $16 = $15 | 1;
+ SAFE_HEAP_STORE($14 >> 0 | 0, $16 | 0, 1);
+ $17 = $0 + 48 | 0;
+ $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 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_mpi_set_cond($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$035$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, $27 = 0, $28 = 0;
+ var $29 = 0, $3 = 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $4 = ($2 | 0) != 0;
+ $5 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == ($3 | 0);
+ if (!$6) {
+  __gcry_log_bug(46155, $vararg_buffer);
+ }
+ $7 = ($3 | 0) > 0;
+ if ($7) {
+  $8 = $0 + 16 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = $1 + 16 | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  if ($4) {
+   $$035$us = 0;
+   while (1) {
+    $12 = $9 + ($$035$us << 2) | 0;
+    $13 = $11 + ($$035$us << 2) | 0;
+    $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($12 | 0, $14 | 0, 4);
+    $15 = $$035$us + 1 | 0;
+    $exitcond = ($15 | 0) == ($3 | 0);
+    if ($exitcond) {
+     break;
+    } else {
+     $$035$us = $15;
+    }
+   }
+  }
+ }
+ $16 = $0 + 4 | 0;
+ $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+ $18 = $1 + 4 | 0;
+ $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+ $20 = $19 ^ $17;
+ $21 = $4 ? $20 : 0;
+ $22 = $21 ^ $17;
+ SAFE_HEAP_STORE($16 | 0, $22 | 0, 4);
+ $23 = $0 + 8 | 0;
+ $24 = SAFE_HEAP_LOAD($23 | 0, 4, 0) | 0 | 0;
+ $25 = $1 + 8 | 0;
+ $26 = SAFE_HEAP_LOAD($25 | 0, 4, 0) | 0 | 0;
+ $27 = $26 ^ $24;
+ $28 = $4 ? $27 : 0;
+ $29 = $28 ^ $24;
+ SAFE_HEAP_STORE($23 | 0, $29 | 0, 4);
+ 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;
+ SAFE_HEAP_STORE($4 | 0, $6 | 0, 4);
+ $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;
+ }
+ SAFE_HEAP_STORE($10 >> 0 | 0, 0 | 0, 1);
+ $13 = $10 + 1 | 0;
+ SAFE_HEAP_STORE($13 >> 0 | 0, 1 | 0, 1);
+ $14 = $6 - $3 | 0;
+ $15 = $14 + -3 | 0;
+ $16 = ($15 | 0) > 1;
+ if (!$16) {
+  __gcry_assert_failed(38831, 38688, 368, 38901);
+ }
+ $17 = $10 + 2 | 0;
+ _memset($17 | 0, -1, $15 | 0) | 0;
+ $18 = $14 + -1 | 0;
+ $19 = $10 + $18 | 0;
+ SAFE_HEAP_STORE($19 >> 0 | 0, 0 | 0, 1);
+ $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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   __gcry_log_printmpi(38868, $26);
+   $$040 = 0;
+  }
+ } else {
+  $23 = $21 & 65535;
+  $$040 = $23;
+ }
+ __gcry_free($10);
+ $$0 = $$040;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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, $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, $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 + 32 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(32 | 0);
+ $vararg_buffer = sp;
+ $2 = $0;
+ $3 = $1;
+ $7 = $2;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = _gcry_sexp_sprint($8, 0, 0, 0) | 0;
+ $4 = $9;
+ $10 = $4;
+ $11 = _GNUNET_xmalloc_($10, 20893, 202) | 0;
+ $5 = $11;
+ $12 = $4;
+ $13 = $12 - 1 | 0;
+ $14 = $2;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = $5;
+ $17 = $4;
+ $18 = _gcry_sexp_sprint($15, 0, $16, $17) | 0;
+ $19 = ($13 | 0) == ($18 | 0);
+ if ($19) {
+  $28 = $5;
+  $29 = $3;
+  SAFE_HEAP_STORE($29 | 0, $28 | 0, 4);
+  $30 = $4;
+  STACKTOP = sp;
+  return $30 | 0;
+ }
+ $6 = 207;
+ $20 = SAFE_HEAP_LOAD(248 * 4 | 0, 4, 0) | 0 | 0;
+ $21 = ($20 | 0) == -1;
+ if ($21) {
+  $22 = $6;
+  $23 = _GNUNET_get_log_call_status(1, 0, 20893, 20943, $22) | 0;
+  SAFE_HEAP_STORE(248 * 4 | 0, $23 | 0, 4);
+ }
+ $24 = _GNUNET_get_log_skip() | 0;
+ $25 = ($24 | 0) > 0;
+ if ($25) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $26 = SAFE_HEAP_LOAD(248 * 4 | 0, 4, 0) | 0 | 0;
+ $27 = ($26 | 0) != 0;
+ if (!$27) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 207 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+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, $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, $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 + 32 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(32 | 0);
+ $vararg_buffer = sp;
+ $2 = $0;
+ $3 = $1;
+ $7 = $2;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = _gcry_sexp_sprint($8, 3, 0, 0) | 0;
+ $4 = $9;
+ $10 = $4;
+ $11 = _GNUNET_xmalloc_($10, 20893, 318) | 0;
+ $5 = $11;
+ $12 = $4;
+ $13 = $12 - 1 | 0;
+ $14 = $2;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = $5;
+ $17 = $4;
+ $18 = _gcry_sexp_sprint($15, 3, $16, $17) | 0;
+ $19 = ($13 | 0) == ($18 | 0);
+ if ($19) {
+  $28 = $5;
+  $29 = $3;
+  SAFE_HEAP_STORE($29 | 0, $28 | 0, 4);
+  $30 = $4;
+  STACKTOP = sp;
+  return $30 | 0;
+ }
+ $6 = 323;
+ $20 = SAFE_HEAP_LOAD(252 * 4 | 0, 4, 0) | 0 | 0;
+ $21 = ($20 | 0) == -1;
+ if ($21) {
+  $22 = $6;
+  $23 = _GNUNET_get_log_call_status(1, 0, 20893, 21175, $22) | 0;
+  SAFE_HEAP_STORE(252 * 4 | 0, $23 | 0, 4);
+ }
+ $24 = _GNUNET_get_log_skip() | 0;
+ $25 = ($24 | 0) > 0;
+ if ($25) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $26 = SAFE_HEAP_LOAD(252 * 4 | 0, 4, 0) | 0 | 0;
+ $27 = ($26 | 0) != 0;
+ if (!$27) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 323 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ _GNUNET_abort_();
+ 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, $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, $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 + 32 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(32 | 0);
+ $vararg_buffer = sp;
+ $2 = $0;
+ $3 = $1;
+ $7 = $2;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = _gcry_sexp_sprint($8, 3, 0, 0) | 0;
+ $4 = $9;
+ $10 = $4;
+ $11 = _GNUNET_xmalloc_($10, 20893, 958) | 0;
+ $5 = $11;
+ $12 = $4;
+ $13 = $12 - 1 | 0;
+ $14 = $2;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = $5;
+ $17 = $4;
+ $18 = _gcry_sexp_sprint($15, 3, $16, $17) | 0;
+ $19 = ($13 | 0) == ($18 | 0);
+ if ($19) {
+  $28 = $5;
+  $29 = $3;
+  SAFE_HEAP_STORE($29 | 0, $28 | 0, 4);
+  $30 = $4;
+  STACKTOP = sp;
+  return $30 | 0;
+ }
+ $6 = 963;
+ $20 = SAFE_HEAP_LOAD(255 * 4 | 0, 4, 0) | 0 | 0;
+ $21 = ($20 | 0) == -1;
+ if ($21) {
+  $22 = $6;
+  $23 = _GNUNET_get_log_call_status(1, 0, 20893, 21247, $22) | 0;
+  SAFE_HEAP_STORE(255 * 4 | 0, $23 | 0, 4);
+ }
+ $24 = _GNUNET_get_log_skip() | 0;
+ $25 = ($24 | 0) > 0;
+ if ($25) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $26 = SAFE_HEAP_LOAD(255 * 4 | 0, 4, 0) | 0 | 0;
+ $27 = ($26 | 0) != 0;
+ if (!$27) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 963 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+function __gcry_malloc_secure($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $$0$i = 0, $$pre$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, $3 = 0, $4 = 
0, $5 = 0, $6 = 0, $7 = 0;
+ var $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 0;
+ do {
+  if ($2) {
+   label = 5;
+  } else {
+   $3 = __gcry_enforced_fips_mode() | 0;
+   $4 = ($3 | 0) == 0;
+   if (!$4) {
+    SAFE_HEAP_STORE(17583 * 4 | 0, 0 | 0, 4);
+    label = 5;
+    break;
+   }
+   $5 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+   $6 = ($5 | 0) == 0;
+   if ($6) {
+    label = 5;
+   } else {
+    $11 = SAFE_HEAP_LOAD(17586 * 4 | 0, 4, 0) | 0 | 0;
+    $12 = ($11 | 0) == (0 | 0);
+    if ($12) {
+     $14 = __gcry_private_malloc($0) | 0;
+     $$0$i = $14;
+     break;
+    } else {
+     $13 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($11 | 0, 63 | 0) | 0) & 63]($0) | 0;
+     $$0$i = $13;
+     break;
+    }
+   }
+  }
+ } while (0);
+ do {
+  if ((label | 0) == 5) {
+   $7 = SAFE_HEAP_LOAD(17587 * 4 | 0, 4, 0) | 0 | 0;
+   $8 = ($7 | 0) == (0 | 0);
+   if ($8) {
+    $10 = __gcry_private_malloc_secure($0) | 0;
+    $$0$i = $10;
+    break;
+   } else {
+    $9 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($7 | 0, 63 | 0) | 0) & 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 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+ $18 = ($17 | 0) == 0;
+ if ($18) {
+  _gpg_err_set_errno(12);
+  $$pre$i = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+  $19 = $$pre$i;
+ } else {
+  $19 = $17;
+ }
+ _gpg_err_code_from_errno($19) | 0;
+ $$0 = 0;
+ return $$0 | 0;
+}
+
+function __gcry_mpi_tdiv_q_2exp($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$043 = 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, $30 = 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 >>> 5;
+ $6 = $4 - $5 | 0;
+ $7 = ($4 | 0) > ($5 | 0);
+ if (!$7) {
+  $8 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+  return;
+ }
+ $9 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) < ($6 | 0);
+ if ($10) {
+  __gcry_mpi_resize($0, $6);
+ }
+ $11 = $0 + 16 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = $1 + 16 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = $2 & 31;
+ $16 = ($15 | 0) == 0;
+ if ($16) {
+  $17 = ($6 | 0) > 0;
+  if ($17) {
+   $18 = $14 + ($5 << 2) | 0;
+   $$044 = 0;
+   while (1) {
+    $26 = $18 + ($$044 << 2) | 0;
+    $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+    $28 = $12 + ($$044 << 2) | 0;
+    SAFE_HEAP_STORE($28 | 0, $27 | 0, 4);
+    $29 = $$044 + 1 | 0;
+    $exitcond = ($29 | 0) == ($6 | 0);
+    if ($exitcond) {
+     $$043 = $6;
+     break;
+    } else {
+     $$044 = $29;
+    }
+   }
+  } else {
+   $$043 = $6;
+  }
+ } else {
+  $19 = $14 + ($5 << 2) | 0;
+  __gcry_mpih_rshift($12, $19, $6, $15) | 0;
+  $20 = $6 + -1 | 0;
+  $21 = $12 + ($20 << 2) | 0;
+  $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+  $23 = ($22 | 0) == 0;
+  $24 = $23 & 1;
+  $25 = $6 - $24 | 0;
+  $$043 = $25;
+ }
+ $30 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($30 | 0, $$043 | 0, 4);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) > -1;
+ if ($3) {
+  $4 = ___lockfile($0) | 0;
+  $29 = $4;
+ } else {
+  $29 = 0;
+ }
+ ___unlist_locked_file($0);
+ $5 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $6 = $5 & 1;
+ $7 = ($6 | 0) != 0;
+ if (!$7) {
+  $8 = ___ofl_lock() | 0;
+  $9 = $0 + 52 | 0;
+  $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $11 = ($10 | 0) == (0 | 0);
+  $12 = $10;
+  $$pre = $0 + 56 | 0;
+  if (!$11) {
+   $13 = SAFE_HEAP_LOAD($$pre | 0, 4, 0) | 0 | 0;
+   $14 = $10 + 56 | 0;
+   SAFE_HEAP_STORE($14 | 0, $13 | 0, 4);
+  }
+  $15 = SAFE_HEAP_LOAD($$pre | 0, 4, 0) | 0 | 0;
+  $16 = ($15 | 0) == (0 | 0);
+  $17 = $15;
+  if (!$16) {
+   $18 = $15 + 52 | 0;
+   SAFE_HEAP_STORE($18 | 0, $12 | 0, 4);
+  }
+  $19 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $20 = ($19 | 0) == ($0 | 0);
+  if ($20) {
+   SAFE_HEAP_STORE($8 | 0, $17 | 0, 4);
+  }
+  ___ofl_unlock();
+ }
+ $21 = _fflush($0) | 0;
+ $22 = $0 + 12 | 0;
+ $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $24 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($23 | 0, 63 | 0) | 0) & 63]($0) | 0;
+ $25 = $24 | $21;
+ $26 = $0 + 92 | 0;
+ $27 = SAFE_HEAP_LOAD($26 | 0, 4, 0) | 0 | 0;
+ $28 = ($27 | 0) == (0 | 0);
+ if (!$28) {
+  _free($27);
+ }
+ if ($7) {
+  $30 = ($29 | 0) == 0;
+  if (!$30) {
+   ___unlockfile($0);
+  }
+ } else {
+  _free($0);
+ }
+ return $25 | 0;
+}
+
+function _numeric_mpi_alloc_n_print($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, $3 = 0, $4 = 0;
+ var $5 = 0, $6 = 0, $7 = 0, $8 = 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;
+ $4 = sp + 20 | 0;
+ $6 = sp + 12 | 0;
+ $2 = $0;
+ $3 = $1;
+ $8 = $2;
+ _gcry_mpi_print(5, 0, 0, $4, $8) | 0;
+ $9 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $10 = _GNUNET_xmalloc_($9, 20893, 655) | 0;
+ $5 = $10;
+ $11 = $5;
+ $12 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $13 = $2;
+ $14 = _gcry_mpi_print(5, $11, $12, $6, $13) | 0;
+ $15 = 0 == ($14 | 0);
+ if ($15) {
+  $24 = $5;
+  $25 = $3;
+  SAFE_HEAP_STORE($25 | 0, $24 | 0, 4);
+  $26 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  STACKTOP = sp;
+  return $26 | 0;
+ }
+ $7 = 661;
+ $16 = SAFE_HEAP_LOAD(258 * 4 | 0, 4, 0) | 0 | 0;
+ $17 = ($16 | 0) == -1;
+ if ($17) {
+  $18 = $7;
+  $19 = _GNUNET_get_log_call_status(1, 0, 20893, 21306, $18) | 0;
+  SAFE_HEAP_STORE(258 * 4 | 0, $19 | 0, 4);
+ }
+ $20 = _GNUNET_get_log_skip() | 0;
+ $21 = ($20 | 0) > 0;
+ if ($21) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $22 = SAFE_HEAP_LOAD(258 * 4 | 0, 4, 0) | 0 | 0;
+ $23 = ($22 | 0) != 0;
+ if (!$23) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer | 0, 20893 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 661 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+function _GNUNET_log_skip($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, 
$3 = 0, $4 = 0, $5 = 0;
+ var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, $vararg_buffer = 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;
+ $2 = $0;
+ $3 = $1;
+ $6 = $2;
+ $7 = 0 == ($6 | 0);
+ if (!$7) {
+  $23 = $2;
+  $24 = SAFE_HEAP_LOAD(17572 * 4 | 0, 4, 0) | 0 | 0;
+  $25 = $24 + $23 | 0;
+  SAFE_HEAP_STORE(17572 * 4 | 0, $25 | 0, 4);
+  STACKTOP = sp;
+  return;
+ }
+ $8 = SAFE_HEAP_LOAD(17572 * 4 | 0, 4, 0) | 0 | 0;
+ $9 = 0 == ($8 | 0);
+ $10 = $9 & 1;
+ $4 = $10;
+ SAFE_HEAP_STORE(17572 * 4 | 0, 0 | 0, 4);
+ $11 = $3;
+ $12 = ($11 | 0) == 0;
+ $13 = $4;
+ $14 = ($13 | 0) != 0;
+ $or$cond = $12 | $14;
+ if ($or$cond) {
+  STACKTOP = sp;
+  return;
+ }
+ $5 = 906;
+ $15 = SAFE_HEAP_LOAD(184 * 4 | 0, 4, 0) | 0 | 0;
+ $16 = ($15 | 0) == -1;
+ if ($16) {
+  $17 = $5;
+  $18 = _GNUNET_get_log_call_status(1, 0, 19090, 19268, $17) | 0;
+  SAFE_HEAP_STORE(184 * 4 | 0, $18 | 0, 4);
+ }
+ $19 = _GNUNET_get_log_skip() | 0;
+ $20 = ($19 | 0) > 0;
+ if ($20) {
+  _GNUNET_log_skip(-1, 0);
+  STACKTOP = sp;
+  return;
+ }
+ $21 = SAFE_HEAP_LOAD(184 * 4 | 0, 4, 0) | 0 | 0;
+ $22 = ($21 | 0) != 0;
+ if (!$22) {
+  STACKTOP = sp;
+  return;
+ }
+ SAFE_HEAP_STORE($vararg_buffer | 0, 19090 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, 906 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ STACKTOP = sp;
+ return;
+}
+
+function _GNUNET_TIME_absolute_get() {
+ 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, $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);
+ $0 = sp + 8 | 0;
+ $1 = sp;
+ $2 = sp + 16 | 0;
+ _gettimeofday($2 | 0, 0 | 0) | 0;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) < 0;
+ $5 = $4 << 31 >> 31;
+ $6 = ___muldi3($3 | 0, $5 | 0, 1e3, 0) | 0;
+ $7 = tempRet0;
+ $8 = ___muldi3($6 | 0, $7 | 0, 1e3, 0) | 0;
+ $9 = tempRet0;
+ $10 = $2 + 4 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = ($11 | 0) < 0;
+ $13 = $12 << 31 >> 31;
+ $14 = _i64Add($8 | 0, $9 | 0, $11 | 0, $13 | 0) | 0;
+ $15 = tempRet0;
+ $16 = 70232;
+ $17 = $16;
+ $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ $19 = $16 + 4 | 0;
+ $20 = $19;
+ $21 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+ $22 = _i64Add($14 | 0, $15 | 0, $18 | 0, $21 | 0) | 0;
+ $23 = tempRet0;
+ $24 = $1;
+ $25 = $24;
+ SAFE_HEAP_STORE($25 | 0, $22 | 0, 4);
+ $26 = $24 + 4 | 0;
+ $27 = $26;
+ SAFE_HEAP_STORE($27 | 0, $23 | 0, 4);
+ {}
+ SAFE_HEAP_STORE($0 | 0, SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 4 | 0, SAFE_HEAP_LOAD($1 + 4 | 0, 4, 0) | 0 | 0 | 0, 4);
+ $28 = $0;
+ $29 = $28;
+ $30 = SAFE_HEAP_LOAD($29 | 0, 4, 0) | 0 | 0;
+ $31 = $28 + 4 | 0;
+ $32 = $31;
+ $33 = SAFE_HEAP_LOAD($32 | 0, 4, 0) | 0 | 0;
+ tempRet0 = $33;
+ STACKTOP = sp;
+ return $30 | 0;
+}
+
+function _atoi($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $$010$lcssa = 0, $$01016 = 0, $$011 = 0, $$1$ph = 0, $$112$ph = 
0, $$11215 = 0, $$pre = 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;
+ var $7 = 0, $8 = 0, $9 = 0, $isdigit = 0, $isdigit14 = 0, $isdigittmp = 0, 
$isdigittmp13 = 0, $isdigittmp17 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $$011 = $0;
+ while (1) {
+  $1 = SAFE_HEAP_LOAD($$011 >> 0 | 0, 1, 0) | 0 | 0;
+  $2 = $1 << 24 >> 24;
+  $3 = _isspace($2) | 0;
+  $4 = ($3 | 0) == 0;
+  $5 = $$011 + 1 | 0;
+  if ($4) {
+   break;
+  } else {
+   $$011 = $5;
+  }
+ }
+ switch ($2 | 0) {
+ case 45:
+  {
+   $$0 = 1;
+   label = 5;
+   break;
+  }
+ case 43:
+  {
+   $$0 = 0;
+   label = 5;
+   break;
+  }
+ default:
+  {
+   $$1$ph = 0;
+   $$112$ph = $$011;
+   $7 = $1;
+  }
+ }
+ if ((label | 0) == 5) {
+  $$pre = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+  $$1$ph = $$0;
+  $$112$ph = $5;
+  $7 = $$pre;
+ }
+ $6 = $7 << 24 >> 24;
+ $isdigittmp13 = $6 + -48 | 0;
+ $isdigit14 = $isdigittmp13 >>> 0 < 10;
+ if ($isdigit14) {
+  $$01016 = 0;
+  $$11215 = $$112$ph;
+  $isdigittmp17 = $isdigittmp13;
+  while (1) {
+   $8 = $$01016 * 10 | 0;
+   $9 = $$11215 + 1 | 0;
+   $10 = $8 - $isdigittmp17 | 0;
+   $11 = SAFE_HEAP_LOAD($9 >> 0 | 0, 1, 0) | 0 | 0;
+   $12 = $11 << 24 >> 24;
+   $isdigittmp = $12 + -48 | 0;
+   $isdigit = $isdigittmp >>> 0 < 10;
+   if ($isdigit) {
+    $$01016 = $10;
+    $$11215 = $9;
+    $isdigittmp17 = $isdigittmp;
+   } else {
+    $$010$lcssa = $10;
+    break;
+   }
+  }
+ } else {
+  $$010$lcssa = 0;
+ }
+ $13 = ($$1$ph | 0) != 0;
+ $14 = 0 - $$010$lcssa | 0;
+ $15 = $13 ? $$010$lcssa : $14;
+ return $15 | 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, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
$or$cond$not$i = 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 {
+   SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+   $or$cond$not$i = $3 >>> 0 < 2;
+   $7 = ($1 | 0) != (0 | 0);
+   $or$cond3$i = $7 & $or$cond$not$i;
+   if ($or$cond3$i) {
+    $8 = $3 | $2;
+    $9 = ($8 | 0) == 0;
+    if ($9) {
+     $10 = __gcry_sexp_canon_len($1, 0, 0, $4) | 0;
+     $11 = ($10 | 0) == 0;
+     if ($11) {
+      $12 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+      $$0$i = $12;
+      break;
+     } else {
+      $$025$i = $10;
+     }
+    } else {
+     $13 = ($3 | 0) != 0;
+     $14 = ($2 | 0) == 0;
+     $or$cond7$i = $14 & $13;
+     if ($or$cond7$i) {
+      $15 = _strlen($1) | 0;
+      $$025$i = $15;
+     } else {
+      $$025$i = $2;
+     }
+    }
+    $16 = _do_sexp_sscan($5, 0, $1, $$025$i, 0, 0, $vararg_buffer) | 0;
+    SAFE_HEAP_STORE($4 | 0, $16 | 0, 4);
+    $17 = ($16 | 0) == 0;
+    if ($17) {
+     $18 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+     SAFE_HEAP_STORE($0 | 0, $18 | 0, 4);
+     $$0$i = 0;
+    } else {
+     $$0$i = $16;
+    }
+   } else {
+    $$0$i = 45;
+   }
+  }
+ } while (0);
+ STACKTOP = sp;
+ return $$0$i | 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, $3 = 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 = ___uremdi3($8 | 0, $9 | 0, 10, 0) | 0;
+   $11 = tempRet0;
+   $12 = $10 | 48;
+   $13 = $12 & 255;
+   $14 = $$0914 + -1 | 0;
+   SAFE_HEAP_STORE($14 >> 0 | 0, $13 | 0, 1);
+   $15 = ___udivdi3($8 | 0, $9 | 0, 10, 0) | 0;
+   $16 = tempRet0;
+   $17 = $9 >>> 0 > 9;
+   $18 = $8 >>> 0 > 4294967295;
+   $19 = ($9 | 0) == 9;
+   $20 = $19 & $18;
+   $21 = $17 | $20;
+   if ($21) {
+    $$0914 = $14;
+    $8 = $15;
+    $9 = $16;
+   } else {
+    break;
+   }
+  }
+  $$010$lcssa$off0 = $15;
+  $$09$lcssa = $14;
+ } else {
+  $$010$lcssa$off0 = $0;
+  $$09$lcssa = $2;
+ }
+ $22 = ($$010$lcssa$off0 | 0) == 0;
+ if ($22) {
+  $$1$lcssa = $$09$lcssa;
+ } else {
+  $$012 = $$010$lcssa$off0;
+  $$111 = $$09$lcssa;
+  while (1) {
+   $23 = ($$012 >>> 0) % 10 & -1;
+   $24 = $23 | 48;
+   $25 = $24 & 255;
+   $26 = $$111 + -1 | 0;
+   SAFE_HEAP_STORE($26 >> 0 | 0, $25 | 0, 1);
+   $27 = ($$012 >>> 0) / 10 & -1;
+   $28 = $$012 >>> 0 < 10;
+   if ($28) {
+    $$1$lcssa = $26;
+    break;
+   } else {
+    $$012 = $27;
+    $$111 = $26;
+   }
+  }
+ }
+ return $$1$lcssa | 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 = 4;
+  } else {
+   $$01518 = $0;
+   $22 = $1;
+   while (1) {
+    $4 = SAFE_HEAP_LOAD($$01518 >> 0 | 0, 1, 0) | 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 = 4;
+     break;
+    } else {
+     $$01518 = $6;
+     $22 = $7;
+    }
+   }
+  }
+ } while (0);
+ if ((label | 0) == 4) {
+  $$0 = $$015$lcssa;
+  while (1) {
+   $10 = SAFE_HEAP_LOAD($$0 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($19 >> 0 | 0, 1, 0) | 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 __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, $$023$ = 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, label = 0;
+ var sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 1008 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(1008 | 0);
+ $6 = sp;
+ $7 = sp + 8 | 0;
+ $8 = __gcry_md_get_algo_dlen($0) | 0;
+ $9 = ($8 | 0) == ($5 | 0);
+ if (!$9) {
+  $$022 = 49658;
+  STACKTOP = sp;
+  return $$022 | 0;
+ }
+ $10 = __gcry_md_open($6, $0, 0) | 0;
+ $11 = ($10 | 0) == 0;
+ if (!$11) {
+  $$022 = 49699;
+  STACKTOP = sp;
+  return $$022 | 0;
+ }
+ switch ($1 | 0) {
+ case 0:
+  {
+   $12 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   __gcry_md_write($12, $2, $3);
+   label = 8;
+   break;
+  }
+ case 1:
+  {
+   _memset($7 | 0, 97, 1e3) | 0;
+   $$025 = 0;
+   while (1) {
+    $13 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+    __gcry_md_write($13, $7, 1e3);
+    $14 = $$025 + 1 | 0;
+    $exitcond = ($14 | 0) == 1e3;
+    if ($exitcond) {
+     break;
+    } else {
+     $$025 = $14;
+    }
+   }
+   label = 8;
+   break;
+  }
+ default:
+  {
+   $$1 = 49641;
+  }
+ }
+ if ((label | 0) == 8) {
+  $15 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $16 = __gcry_md_read($15, $0) | 0;
+  $17 = _memcmp($16, $4, $5) | 0;
+  $18 = ($17 | 0) == 0;
+  $$023$ = $18 ? 0 : 49625;
+  $$1 = $$023$;
+ }
+ $19 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ __gcry_md_close($19);
+ $$022 = $$1;
+ STACKTOP = sp;
+ return $$022 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $8 = $7 & 16;
+  $9 = ($8 | 0) == 0;
+  if (!$9) {
+   __gcry_log_info(46049, $vararg_buffer);
+   STACKTOP = sp;
+   return;
+  }
+ }
+ $10 = ($2 | 0) == 0;
+ do {
+  if ($10) {
+   if ($5) {
+    $11 = $0 + 12 | 0;
+    $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 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 _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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 + 4 | 0;
+ $6 = $5;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = _GNUNET_htonll($4, $7) | 0;
+ $9 = tempRet0;
+ $10 = $0;
+ $11 = $10;
+ SAFE_HEAP_STORE($11 >> 0 | 0, $8 & 255 | 0, 1);
+ SAFE_HEAP_STORE($11 + 1 >> 0 | 0, $8 >> 8 & 255 | 0, 1);
+ SAFE_HEAP_STORE($11 + 2 >> 0 | 0, $8 >> 16 & 255 | 0, 1);
+ SAFE_HEAP_STORE($11 + 3 >> 0 | 0, $8 >> 24 | 0, 1);
+ $12 = $10 + 4 | 0;
+ $13 = $12;
+ SAFE_HEAP_STORE($13 >> 0 | 0, $9 & 255 | 0, 1);
+ SAFE_HEAP_STORE($13 + 1 >> 0 | 0, $9 >> 8 & 255 | 0, 1);
+ SAFE_HEAP_STORE($13 + 2 >> 0 | 0, $9 >> 16 & 255 | 0, 1);
+ SAFE_HEAP_STORE($13 + 3 >> 0 | 0, $9 >> 24 | 0, 1);
+ $14 = $1 + 8 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = _htonl($15) | 0;
+ $17 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($17 >> 0 | 0, $16 & 255 | 0, 1);
+ SAFE_HEAP_STORE($17 + 1 >> 0 | 0, $16 >> 8 & 255 | 0, 1);
+ SAFE_HEAP_STORE($17 + 2 >> 0 | 0, $16 >> 16 & 255 | 0, 1);
+ SAFE_HEAP_STORE($17 + 3 >> 0 | 0, $16 >> 24 | 0, 1);
+ $18 = $0 + 12 | 0;
+ $19 = $1 + 12 | 0;
+ dest = $18;
+ src = $19;
+ stop = dest + 12 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  dest = dest + 1 | 0;
+  src = src + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ return;
+}
+
+function _pad($0, $1, $2, $3, $4) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ $4 = $4 | 0;
+ var $$0$lcssa16 = 0, $$012 = 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, $5 = 0, $6 = 0;
+ var $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;
+ do {
+  if ($or$cond) {
+   $9 = $2 - $3 | 0;
+   $10 = $9 >>> 0 > 256;
+   $11 = $10 ? 256 : $9;
+   _memset($5 | 0, $1 | 0, $11 | 0) | 0;
+   $12 = $9 >>> 0 > 255;
+   $13 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+   $14 = $13 & 32;
+   $15 = ($14 | 0) == 0;
+   if ($12) {
+    $16 = $2 - $3 | 0;
+    $$012 = $9;
+    $23 = $13;
+    $24 = $15;
+    while (1) {
+     if ($24) {
+      ___fwritex($5, 256, $0) | 0;
+      $$pre = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+      $20 = $$pre;
+     } else {
+      $20 = $23;
+     }
+     $17 = $$012 + -256 | 0;
+     $18 = $17 >>> 0 > 255;
+     $19 = $20 & 32;
+     $21 = ($19 | 0) == 0;
+     if ($18) {
+      $$012 = $17;
+      $23 = $20;
+      $24 = $21;
+     } else {
+      break;
+     }
+    }
+    $22 = $16 & 255;
+    if ($21) {
+     $$0$lcssa16 = $22;
+    } else {
+     break;
+    }
+   } else {
+    if ($15) {
+     $$0$lcssa16 = $9;
+    } else {
+     break;
+    }
+   }
+   ___fwritex($5, $$0$lcssa16, $0) | 0;
+  }
+ } while (0);
+ STACKTOP = sp;
+ return;
+}
+
+function __gcry_mpih_submul_1($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $$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;
+ 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, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 
= 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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;
+  $$ = $20 ? $21 : $16;
+  $22 = $19 >>> 16;
+  $23 = $$ + $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 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+  $33 = $32 - $27 | 0;
+  $34 = $33 >>> 0 > $32 >>> 0;
+  $35 = $34 & 1;
+  $36 = $30 + $35 | 0;
+  SAFE_HEAP_STORE($31 | 0, $33 | 0, 4);
+  $37 = $$076 + 1 | 0;
+  $38 = ($37 | 0) == 0;
+  if ($38) {
+   break;
+  } else {
+   $$0 = $36;
+   $$076 = $37;
+  }
+ }
+ return $36 | 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 = 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;
+ 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, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 
= 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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;
+  $$ = $20 ? $21 : $16;
+  $22 = $19 >>> 16;
+  $23 = $$ + $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 = SAFE_HEAP_LOAD($31 | 0, 4, 0) | 0 | 0;
+  $33 = $27 + $32 | 0;
+  $34 = $33 >>> 0 < $32 >>> 0;
+  $35 = $34 & 1;
+  $36 = $30 + $35 | 0;
+  SAFE_HEAP_STORE($31 | 0, $33 | 0, 4);
+  $37 = $$076 + 1 | 0;
+  $38 = ($37 | 0) == 0;
+  if ($38) {
+   break;
+  } else {
+   $$0 = $36;
+   $$076 = $37;
+  }
+ }
+ return $36 | 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 & 255;
+ if ((num | 0) >= 67) {
+  while ((ptr & 3) != 0) {
+   SAFE_HEAP_STORE(ptr | 0, value | 0, 1);
+   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)) {
+   SAFE_HEAP_STORE(ptr | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 4 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 8 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 12 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 16 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 20 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 24 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 28 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 32 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 36 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 40 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 44 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 48 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 52 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 56 | 0, value4 | 0, 4);
+   SAFE_HEAP_STORE(ptr + 60 | 0, value4 | 0, 4);
+   ptr = ptr + 64 | 0;
+  }
+  while ((ptr | 0) < (aligned_end | 0)) {
+   SAFE_HEAP_STORE(ptr | 0, value4 | 0, 4);
+   ptr = ptr + 4 | 0;
+  }
+ }
+ while ((ptr | 0) < (end | 0)) {
+  SAFE_HEAP_STORE(ptr | 0, value | 0, 1);
+  ptr = ptr + 1 | 0;
+ }
+ return end - num | 0;
+}
+
+function __gcry_xmalloc($0) {
+ $0 = $0 | 0;
+ var $$0$i$i = 0, $$pre$i$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;
+ var $or$cond = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ while (1) {
+  $1 = SAFE_HEAP_LOAD(17586 * 4 | 0, 4, 0) | 0 | 0;
+  $2 = ($1 | 0) == (0 | 0);
+  if ($2) {
+   $4 = __gcry_private_malloc($0) | 0;
+   $$0$i$i = $4;
+  } else {
+   $3 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($1 | 0, 63 | 0) | 0) & 63]($0) | 0;
+   $$0$i$i = $3;
+  }
+  $5 = ($$0$i$i | 0) == (0 | 0);
+  if (!$5) {
+   label = 11;
+   break;
+  }
+  $6 = ___errno_location() | 0;
+  $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $8 = ($7 | 0) == 0;
+  if ($8) {
+   _gpg_err_set_errno(12);
+   $$pre$i$i = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $9 = $$pre$i$i;
+  } else {
+   $9 = $7;
+  }
+  _gpg_err_code_from_errno($9) | 0;
+  $10 = __gcry_fips_mode() | 0;
+  $11 = ($10 | 0) == 0;
+  $12 = SAFE_HEAP_LOAD(17591 * 4 | 0, 4, 0) | 0 | 0;
+  $13 = ($12 | 0) != (0 | 0);
+  $or$cond = $11 & $13;
+  if (!$or$cond) {
+   label = 10;
+   break;
+  }
+  $14 = SAFE_HEAP_LOAD(17592 * 4 | 0, 4, 0) | 0 | 0;
+  $15 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($12 | 0, 127 | 0) | 0) & 127]($14, 
$0, 0) | 0;
+  $16 = ($15 | 0) == 0;
+  if ($16) {
+   label = 10;
+   break;
+  }
+ }
+ if ((label | 0) == 10) {
+  $17 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $18 = _gpg_err_code_from_errno($17) | 0;
+  __gcry_fatal_error($18, 0);
+ } else if ((label | 0) == 11) {
+  return $$0$i$i | 0;
+ }
+ return 0 | 0;
+}
+
+function _strcasecmp($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0$lcssa = 0, $$01718 = 0, $$019 = 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 $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $2 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = $2 << 24 >> 24 == 0;
+ L1 : do {
+  if ($3) {
+   $$0$lcssa = $1;
+   $20 = 0;
+  } else {
+   $4 = $2 & 255;
+   $$01718 = $0;
+   $$019 = $1;
+   $10 = $4;
+   $8 = $2;
+   while (1) {
+    $5 = SAFE_HEAP_LOAD($$019 >> 0 | 0, 1, 0) | 0 | 0;
+    $6 = $5 & 255;
+    $7 = $5 << 24 >> 24 == 0;
+    if ($7) {
+     $$0$lcssa = $$019;
+     $20 = $8;
+     break L1;
+    }
+    $9 = $8 << 24 >> 24 == $5 << 24 >> 24;
+    if (!$9) {
+     $11 = _tolower($10) | 0;
+     $12 = _tolower($6) | 0;
+     $13 = ($11 | 0) == ($12 | 0);
+     if (!$13) {
+      $$0$lcssa = $$019;
+      $20 = $8;
+      break L1;
+     }
+    }
+    $14 = $$01718 + 1 | 0;
+    $15 = $$019 + 1 | 0;
+    $16 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 0) | 0 | 0;
+    $17 = $16 & 255;
+    $18 = $16 << 24 >> 24 == 0;
+    if ($18) {
+     $$0$lcssa = $15;
+     $20 = 0;
+     break;
+    } else {
+     $$01718 = $14;
+     $$019 = $15;
+     $10 = $17;
+     $8 = $16;
+    }
+   }
+  }
+ } while (0);
+ $19 = $20 & 255;
+ $21 = _tolower($19) | 0;
+ $22 = SAFE_HEAP_LOAD($$0$lcssa >> 0 | 0, 1, 0) | 0 | 0;
+ $23 = $22 & 255;
+ $24 = _tolower($23) | 0;
+ $25 = $21 - $24 | 0;
+ return $25 | 0;
+}
+
+function __gcry_mpih_release_karatsuba_ctx($0) {
+ $0 = $0 | 0;
+ var $$018 = 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == (0 | 0);
+ if (!$3) {
+  $4 = $0 + 20 | 0;
+  $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free_limb_space($2, $5);
+ }
+ $6 = $0 + 4 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ if (!$8) {
+  $9 = $0 + 8 | 0;
+  $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free_limb_space($7, $10);
+ }
+ $11 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $12 = ($11 | 0) == (0 | 0);
+ if ($12) {
+  return;
+ } else {
+  $$018 = $11;
+ }
+ while (1) {
+  $13 = SAFE_HEAP_LOAD($$018 | 0, 4, 0) | 0 | 0;
+  $14 = $$018 + 16 | 0;
+  $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+  $16 = ($15 | 0) == (0 | 0);
+  if (!$16) {
+   $17 = $$018 + 20 | 0;
+   $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_free_limb_space($15, $18);
+  }
+  $19 = $$018 + 4 | 0;
+  $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+  $21 = ($20 | 0) == (0 | 0);
+  if (!$21) {
+   $22 = $$018 + 8 | 0;
+   $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+   __gcry_mpi_free_limb_space($20, $23);
+  }
+  __gcry_free($$018);
+  $24 = ($13 | 0) == (0 | 0);
+  if ($24) {
+   break;
+  } else {
+   $$018 = $13;
+  }
+ }
+ return;
+}
+
+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, $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;
+ 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 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+  $5 = $4 << 24 >> 24 == 0;
+  L3 : do {
+   if ($5) {
+    $$0$lcssa = $1;
+    $16 = 0;
+   } else {
+    $$01823 = $0;
+    $$01925$in = $2;
+    $$024 = $1;
+    $9 = $4;
+    while (1) {
+     $$01925 = $$01925$in + -1 | 0;
+     $6 = SAFE_HEAP_LOAD($$024 >> 0 | 0, 1, 0) | 0 | 0;
+     $7 = $6 << 24 >> 24 != 0;
+     $8 = ($$01925 | 0) != 0;
+     $or$cond = $8 & $7;
+     $10 = $9 << 24 >> 24 == $6 << 24 >> 24;
+     $or$cond21 = $10 & $or$cond;
+     if (!$or$cond21) {
+      $$0$lcssa = $$024;
+      $16 = $9;
+      break L3;
+     }
+     $11 = $$01823 + 1 | 0;
+     $12 = $$024 + 1 | 0;
+     $13 = SAFE_HEAP_LOAD($11 >> 0 | 0, 1, 0) | 0 | 0;
+     $14 = $13 << 24 >> 24 == 0;
+     if ($14) {
+      $$0$lcssa = $12;
+      $16 = 0;
+      break;
+     } else {
+      $$01823 = $11;
+      $$01925$in = $$01925;
+      $$024 = $12;
+      $9 = $13;
+     }
+    }
+   }
+  } while (0);
+  $15 = $16 & 255;
+  $17 = SAFE_HEAP_LOAD($$0$lcssa >> 0 | 0, 1, 0) | 0 | 0;
+  $18 = $17 & 255;
+  $19 = $15 - $18 | 0;
+  $$020 = $19;
+ }
+ return $$020 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($3 + 1 >> 0 | 0, 
1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($3 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($3 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+ $5 = $2 + 4 | 0;
+ $6 = $5;
+ $7 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($6 + 1 >> 0 | 0, 
1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($6 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($6 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+ $8 = _GNUNET_ntohll($4, $7) | 0;
+ $9 = tempRet0;
+ $10 = $0;
+ $11 = $10;
+ SAFE_HEAP_STORE($11 | 0, $8 | 0, 4);
+ $12 = $10 + 4 | 0;
+ $13 = $12;
+ SAFE_HEAP_STORE($13 | 0, $9 | 0, 4);
+ $14 = $1 + 8 | 0;
+ $15 = SAFE_HEAP_LOAD($14 >> 0 | 0, 1, 1) | 0 | (SAFE_HEAP_LOAD($14 + 1 >> 0 | 
0, 1, 1) | 0) << 8 | (SAFE_HEAP_LOAD($14 + 2 >> 0 | 0, 1, 1) | 0) << 16 | 
(SAFE_HEAP_LOAD($14 + 3 >> 0 | 0, 1, 1) | 0) << 24;
+ $16 = _ntohl($15) | 0;
+ $17 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($17 | 0, $16 | 0, 4);
+ $18 = $0 + 12 | 0;
+ $19 = $1 + 12 | 0;
+ dest = $18;
+ src = $19;
+ stop = dest + 12 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  dest = dest + 1 | 0;
+  src = src + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ 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 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = $2 << 24 >> 24;
+ $4 = $3 + 255 | 0;
+ $5 = $4 | $3;
+ $6 = $5 & 255;
+ SAFE_HEAP_STORE($1 >> 0 | 0, $6 | 0, 1);
+ $7 = $0 + 20 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $0 + 28 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $8 >>> 0 > $10 >>> 0;
+ if ($11) {
+  $12 = $0 + 36 | 0;
+  $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_iiii[(SAFE_FT_MASK($13 | 0, 127 | 0) | 0) & 127]($0, 0, 0) | 
0;
+ }
+ $14 = $0 + 16 | 0;
+ SAFE_HEAP_STORE($14 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ $15 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $16 = $15 & 4;
+ $17 = ($16 | 0) == 0;
+ if ($17) {
+  $19 = $0 + 44 | 0;
+  $20 = SAFE_HEAP_LOAD($19 | 0, 4, 0) | 0 | 0;
+  $21 = $0 + 48 | 0;
+  $22 = SAFE_HEAP_LOAD($21 | 0, 4, 0) | 0 | 0;
+  $23 = $20 + $22 | 0;
+  $24 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($24 | 0, $23 | 0, 4);
+  $25 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($25 | 0, $23 | 0, 4);
+  $26 = $15 << 27;
+  $sext = $26 >> 31;
+  $$0 = $sext;
+ } else {
+  $18 = $15 | 32;
+  SAFE_HEAP_STORE($0 | 0, $18 | 0, 4);
+  $$0 = -1;
+ }
+ return $$0 | 0;
+}
+
+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, $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, $7 = 0;
+ var $8 = 0, $9 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 48 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(48 | 0);
+ $vararg_buffer = sp;
+ $7 = sp + 16 | 0;
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ SAFE_HEAP_STORE($7 | 0, $varargs | 0, 4);
+ $9 = $3;
+ $10 = $4;
+ $11 = $5;
+ $12 = _vsnprintf($9, $10, $11, $7) | 0;
+ $6 = $12;
+ $13 = $6;
+ $14 = $4;
+ $15 = $13 >>> 0 < $14 >>> 0;
+ if ($15) {
+  $24 = $6;
+  STACKTOP = sp;
+  return $24 | 0;
+ }
+ $8 = 506;
+ $16 = SAFE_HEAP_LOAD(182 * 4 | 0, 4, 0) | 0 | 0;
+ $17 = ($16 | 0) == -1;
+ if ($17) {
+  $18 = $8;
+  $19 = _GNUNET_get_log_call_status(1, 0, 19017, 19074, $18) | 0;
+  SAFE_HEAP_STORE(182 * 4 | 0, $19 | 0, 4);
+ }
+ $20 = _GNUNET_get_log_skip() | 0;
+ $21 = ($20 | 0) > 0;
+ if ($21) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $22 = SAFE_HEAP_LOAD(182 * 4 | 0, 4, 0) | 0 | 0;
+ $23 = ($22 | 0) != 0;
+ if (!$23) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer | 0, 19017 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 506 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ _GNUNET_abort_();
+ 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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $13 = __gcry_md_setkey($12, $3, $4) | 0;
+    $14 = ($13 | 0) == 0;
+    $15 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    if (!$14) {
+     __gcry_md_close($15);
+     $$0 = 36834;
+     break;
+    }
+    __gcry_md_write($15, $1, $2);
+    $16 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+    $17 = __gcry_md_read($16, $0) | 0;
+    $18 = ($17 | 0) == (0 | 0);
+    if ($18) {
+     $19 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     __gcry_md_close($19);
+     $$0 = 36856;
+     break;
+    } else {
+     $20 = _memcmp($17, $5, $6) | 0;
+     $21 = ($20 | 0) == 0;
+     $22 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+     __gcry_md_close($22);
+     $$ = $21 ? 0 : 36819;
+     $$0 = $$;
+     break;
+    }
+   } else {
+    $$0 = 49699;
+   }
+  } else {
+   $$0 = 36876;
+  }
+ } while (0);
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function __gcry_logv($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, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $vararg_buffer = sp;
+ $3 = SAFE_HEAP_LOAD(17578 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == (0 | 0);
+ if ($4) {
+  switch ($0 | 0) {
+  case 30:
+  case 20:
+  case 10:
+  case 0:
+   {
+    break;
+   }
+  case 40:
+   {
+    $6 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+    _fwrite(21962, 7, 1, $6) | 0;
+    break;
+   }
+  case 50:
+   {
+    $7 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+    _fwrite(21970, 13, 1, $7) | 0;
+    break;
+   }
+  case 100:
+   {
+    $8 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+    _fwrite(21984, 5, 1, $8) | 0;
+    break;
+   }
+  default:
+   {
+    $9 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+    SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+    _fprintf($9, 21990, $vararg_buffer) | 0;
+   }
+  }
+  $10 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+  _vfprintf($10, $1, $2) | 0;
+ } else {
+  $5 = SAFE_HEAP_LOAD(17579 * 4 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viiii[(SAFE_FT_MASK($3 | 0, 63 | 0) | 0) & 63]($5, $0, $1, 
$2);
+ }
+ switch ($0 | 0) {
+ case 40:
+ case 50:
+  {
+   __gcry_fips_signal_error(21922, 140, 22015, 1, 22026);
+   __gcry_secmem_term();
+   _abort();
+   break;
+  }
+ default:
+  {
+   STACKTOP = sp;
+   return;
+  }
+ }
+}
+
+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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $3 & 4;
+ $5 = ($4 | 0) == 0;
+ if ($5) {
+  __gcry_log_bug(46125, $vararg_buffer);
+ }
+ $6 = ($1 | 0) == (0 | 0);
+ if ($6) {
+  $7 = $0 + 16 | 0;
+  $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  $15 = 0;
+  $17 = $8;
+ } else {
+  $9 = $0 + 8 | 0;
+  $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($1 | 0, $10 | 0, 4);
+  $11 = $0 + 16 | 0;
+  $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 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;
+  $22 = $21;
+ } else {
+  $20 = __gcry_malloc_secure($16) | 0;
+  $22 = $20;
+ }
+ $23 = ($22 | 0) == (0 | 0);
+ if ($23) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ _memcpy($22 | 0, $17 | 0, $16 | 0) | 0;
+ $$0 = $22;
+ STACKTOP = sp;
+ 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, 
$2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0;
+ var $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = ___errno_location() | 0;
+ $1 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 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;
+     if ($8) {
+      $10 = ($$off | 0) < 0;
+      if ($10) {
+       $$0 = 16382;
+      } else {
+       $$ph$pn = $$off;
+       break;
+      }
+      return $$0 | 0;
+     } else {
+      $$off35 = $1 + -95 | 0;
+      $9 = $$off35 >>> 0 < 31;
+      if ($9) {
+       $$ph$pn = $1;
+       break;
+      } else {
+       $$0 = 16382;
+      }
+      return $$0 | 0;
+     }
+    }
+   }
+  }
+ } while (0);
+ $11 = 14836 + ($$ph$pn << 2) | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = $12 | 32768;
+ $$0 = $13;
+ return $$0 | 0;
+}
+
+function __gcry_mpi_set_bit($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$023 = 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = $7 >>> 0 < $10 >>> 0;
+ if (!$11) {
+  $12 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $13 = $10 >>> 0 < $12 >>> 0;
+  if ($13) {
+   $14 = $0 + 16 | 0;
+   $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+   $$023 = $10;
+   while (1) {
+    $16 = $15 + ($$023 << 2) | 0;
+    SAFE_HEAP_STORE($16 | 0, 0 | 0, 4);
+    $17 = $$023 + 1 | 0;
+    $18 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+    $19 = $17 >>> 0 < $18 >>> 0;
+    if ($19) {
+     $$023 = $17;
+    } else {
+     break;
+    }
+   }
+  }
+  $20 = $7 + 1 | 0;
+  __gcry_mpi_resize($0, $20);
+  SAFE_HEAP_STORE($9 | 0, $20 | 0, 4);
+ }
+ $21 = 1 << $8;
+ $22 = $0 + 16 | 0;
+ $23 = SAFE_HEAP_LOAD($22 | 0, 4, 0) | 0 | 0;
+ $24 = $23 + ($7 << 2) | 0;
+ $25 = SAFE_HEAP_LOAD($24 | 0, 4, 0) | 0 | 0;
+ $26 = $25 | $21;
+ SAFE_HEAP_STORE($24 | 0, $26 | 0, 4);
+ return;
+}
+
+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;
+ {}
+ SAFE_HEAP_STORE($2 | 0, SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 4 | 0, SAFE_HEAP_LOAD($0 + 4 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 8 | 0, SAFE_HEAP_LOAD($0 + 8 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($2 + 12 | 0, SAFE_HEAP_LOAD($0 + 12 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ SAFE_HEAP_STORE($2 + 16 | 0, SAFE_HEAP_LOAD($0 + 16 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ {}
+ SAFE_HEAP_STORE($0 | 0, SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 4 | 0, SAFE_HEAP_LOAD($1 + 4 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 8 | 0, SAFE_HEAP_LOAD($1 + 8 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 12 | 0, SAFE_HEAP_LOAD($1 + 12 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ SAFE_HEAP_STORE($0 + 16 | 0, SAFE_HEAP_LOAD($1 + 16 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ {}
+ SAFE_HEAP_STORE($1 | 0, SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 4 | 0, SAFE_HEAP_LOAD($2 + 4 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 8 | 0, SAFE_HEAP_LOAD($2 + 8 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 12 | 0, SAFE_HEAP_LOAD($2 + 12 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ SAFE_HEAP_STORE($1 + 16 | 0, SAFE_HEAP_LOAD($2 + 16 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ STACKTOP = sp;
+ 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 + 16 | 0;
+ $vararg_buffer2 = sp + 8 | 0;
+ $vararg_buffer = sp;
+ $2 = sp + 24 | 0;
+ $3 = $1;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $3 | 0, 4);
+ $4 = ___syscall197(197, $vararg_buffer | 0) | 0;
+ $5 = ($4 | 0) == -9;
+ if ($5) {
+  SAFE_HEAP_STORE($vararg_buffer2 | 0, $0 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer2 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, 1 | 0, 4);
+  $6 = ___syscall221(221, $vararg_buffer2 | 0) | 0;
+  $7 = ($6 | 0) < 0;
+  if ($7) {
+   label = 3;
+  } else {
+   ___procfdname($2, $0);
+   $9 = $2;
+   SAFE_HEAP_STORE($vararg_buffer6 | 0, $9 | 0, 4);
+   $vararg_ptr9 = $vararg_buffer6 + 4 | 0;
+   SAFE_HEAP_STORE($vararg_ptr9 | 0, $3 | 0, 4);
+   $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 ___srandom($0) {
+ $0 = $0 | 0;
+ var $$01011 = 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, $3 = 
0, $4 = 0, $5 = 0, $6 = 0;
+ var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD(4071 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 0;
+ if ($2) {
+  $3 = SAFE_HEAP_LOAD(4072 * 4 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($3 | 0, $0 | 0, 4);
+ } else {
+  $4 = ($1 | 0) == 31;
+  $5 = ($1 | 0) == 7;
+  $6 = $4 | $5;
+  $7 = $6 ? 3 : 1;
+  SAFE_HEAP_STORE(4073 * 4 | 0, $7 | 0, 4);
+  SAFE_HEAP_STORE(17715 * 4 | 0, 0 | 0, 4);
+  $8 = ($1 | 0) > 0;
+  if ($8) {
+   $9 = SAFE_HEAP_LOAD(4072 * 4 | 0, 4, 0) | 0 | 0;
+   $$01011 = 0;
+   $10 = $0;
+   $11 = 0;
+   while (1) {
+    $12 = ___muldi3($10 | 0, $11 | 0, 1284865837, 1481765933) | 0;
+    $13 = tempRet0;
+    $14 = _i64Add($12 | 0, $13 | 0, 1, 0) | 0;
+    $15 = tempRet0;
+    $16 = $9 + ($$01011 << 2) | 0;
+    SAFE_HEAP_STORE($16 | 0, $15 | 0, 4);
+    $17 = $$01011 + 1 | 0;
+    $18 = ($17 | 0) < ($1 | 0);
+    if ($18) {
+     $$01011 = $17;
+     $10 = $14;
+     $11 = $15;
+    } else {
+     $20 = $9;
+     break;
+    }
+   }
+  } else {
+   $$pre = SAFE_HEAP_LOAD(4072 * 4 | 0, 4, 0) | 0 | 0;
+   $20 = $$pre;
+  }
+  $19 = SAFE_HEAP_LOAD($20 | 0, 4, 0) | 0 | 0;
+  $21 = $19 | 1;
+  SAFE_HEAP_STORE($20 | 0, $21 | 0, 4);
+ }
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = $0 + 28 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 >>> 0 > $4 >>> 0;
+ if ($5) {
+  $6 = $0 + 36 | 0;
+  $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_iiii[(SAFE_FT_MASK($7 | 0, 127 | 0) | 0) & 127]($0, 0, 0) | 0;
+  $8 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $12 = $0 + 8 | 0;
+  $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $14 = $11 >>> 0 < $13 >>> 0;
+  if ($14) {
+   $15 = $0 + 40 | 0;
+   $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+   $17 = $11;
+   $18 = $13;
+   $19 = $17 - $18 | 0;
+   FUNCTION_TABLE_iiii[(SAFE_FT_MASK($16 | 0, 127 | 0) | 0) & 127]($0, $19, 1) 
| 0;
+  }
+  $20 = $0 + 16 | 0;
+  SAFE_HEAP_STORE($20 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+  SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+  $$0 = 0;
+ }
+ return $$0 | 0;
+}
+
+function _mpi_to_sexp($0) {
+ $0 = $0 | 0;
+ var $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_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;
+ $2 = sp + 20 | 0;
+ $1 = $0;
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ $4 = $1;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $4 | 0, 4);
+ $5 = _gcry_sexp_build($2, 0, 21436, $vararg_buffer) | 0;
+ $6 = 0 == ($5 | 0);
+ if ($6) {
+  $15 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  STACKTOP = sp;
+  return $15 | 0;
+ }
+ $3 = 806;
+ $7 = SAFE_HEAP_LOAD(264 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == -1;
+ if ($8) {
+  $9 = $3;
+  $10 = _GNUNET_get_log_call_status(1, 0, 20893, 21466, $9) | 0;
+  SAFE_HEAP_STORE(264 * 4 | 0, $10 | 0, 4);
+ }
+ $11 = _GNUNET_get_log_skip() | 0;
+ $12 = ($11 | 0) > 0;
+ if ($12) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $13 = SAFE_HEAP_LOAD(264 * 4 | 0, 4, 0) | 0 | 0;
+ $14 = ($13 | 0) != 0;
+ if (!$14) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer1 | 0, 20893 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer1 + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, 806 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer1);
+ _GNUNET_abort_();
+ return 0 | 0;
+}
+
+function __gcry_mpi_rshift_limbs($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0$lcssa = 0, $$023 = 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $0 + 4 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = ($0 | 0) == (0 | 0);
+ if (!$6) {
+  $7 = $0 + 12 | 0;
+  $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  $9 = $8 & 16;
+  $10 = ($9 | 0) == 0;
+  if (!$10) {
+   __gcry_mpi_immutable_failed();
+   return;
+  }
+ }
+ $11 = $5 >>> 0 > $1 >>> 0;
+ if (!$11) {
+  SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+  return;
+ }
+ $12 = $5 - $1 | 0;
+ $13 = ($12 | 0) == 0;
+ if ($13) {
+  $$0$lcssa = 0;
+ } else {
+  $$023 = 0;
+  while (1) {
+   $14 = $$023 + $1 | 0;
+   $15 = $3 + ($14 << 2) | 0;
+   $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+   $17 = $3 + ($$023 << 2) | 0;
+   SAFE_HEAP_STORE($17 | 0, $16 | 0, 4);
+   $18 = $$023 + 1 | 0;
+   $exitcond = ($18 | 0) == ($12 | 0);
+   if ($exitcond) {
+    $$0$lcssa = $12;
+    break;
+   } else {
+    $$023 = $18;
+   }
+  }
+ }
+ $19 = $3 + ($$0$lcssa << 2) | 0;
+ SAFE_HEAP_STORE($19 | 0, 0 | 0, 4);
+ $20 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $21 = $20 - $1 | 0;
+ SAFE_HEAP_STORE($4 | 0, $21 | 0, 4);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == 1;
+ if ($6) {
+  STACKTOP = sp;
+  return;
+ }
+ $7 = ($3 | 0) != 0;
+ $8 = $7 ? 5 : 4;
+ _fips_new_state($8);
+ $9 = $7 ? 23864 : 71847;
+ $10 = ($2 | 0) != (0 | 0);
+ $11 = $10 ? 23852 : 71847;
+ $12 = $10 ? $2 : 71847;
+ $13 = ($4 | 0) != (0 | 0);
+ $14 = $13 ? $4 : 23779;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $9 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $0 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $1 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $11 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer + 16 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $12 | 0, 4);
+ $vararg_ptr5 = $vararg_buffer + 20 | 0;
+ SAFE_HEAP_STORE($vararg_ptr5 | 0, $14 | 0, 4);
+ __gcry_log_info(23804, $vararg_buffer);
+ STACKTOP = sp;
+ return;
+}
+
+function __gcry_mpih_mul_1($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $$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;
+ var $27 = 0, $28 = 0, $29 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 
= 0, $6 = 0, $7 = 0, $8 = 0, $9 = 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 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 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;
+  $$ = $20 ? $21 : $16;
+  $22 = $19 >>> 16;
+  $23 = $$ + $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;
+  SAFE_HEAP_STORE($31 | 0, $27 | 0, 4);
+  $32 = $$067 + 1 | 0;
+  $33 = ($32 | 0) == 0;
+  if ($33) {
+   break;
+  } else {
+   $$0 = $30;
+   $$067 = $32;
+  }
+ }
+ return $30 | 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, $2 = 0, $3 = 0, $4 
= 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0;
+ var 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;
+     if ($7) {
+      $9 = ($$off | 0) < 0;
+      if ($9) {
+       $$0 = 16382;
+      } else {
+       $$ph$pn = $$off;
+       break;
+      }
+      return $$0 | 0;
+     } else {
+      $$off33 = $0 + -95 | 0;
+      $8 = $$off33 >>> 0 < 31;
+      if ($8) {
+       $$ph$pn = $0;
+       break;
+      } else {
+       $$0 = 16382;
+      }
+      return $$0 | 0;
+     }
+    }
+   }
+  }
+ } while (0);
+ $10 = 14836 + ($$ph$pn << 2) | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $11 | 32768;
+ $$0 = $12;
+ return $$0 | 0;
+}
+
+function __gcry_mpi_get_flag($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0 = 0, $$lobit = 0, $$lobit7 = 0, $$lobit8 = 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, 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 1:
+  {
+   $2 = $0 + 12 | 0;
+   $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+   $4 = $3 & 1;
+   $$0 = $4;
+   break;
+  }
+ case 2:
+  {
+   $5 = $0 + 12 | 0;
+   $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $7 = $6 >>> 2;
+   $$lobit8 = $7 & 1;
+   $$0 = $$lobit8;
+   break;
+  }
+ case 4:
+  {
+   $8 = $0 + 12 | 0;
+   $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+   $10 = $9 >>> 4;
+   $$lobit7 = $10 & 1;
+   $$0 = $$lobit7;
+   break;
+  }
+ case 8:
+  {
+   $11 = $0 + 12 | 0;
+   $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+   $13 = $12 >>> 5;
+   $$lobit = $13 & 1;
+   $$0 = $$lobit;
+   break;
+  }
+ case 2048:
+ case 1024:
+ case 512:
+ case 256:
+  {
+   $14 = $0 + 12 | 0;
+   $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+   $16 = $15 & $1;
+   $17 = ($16 | 0) != 0;
+   $18 = $17 & 1;
+   $$0 = $18;
+   break;
+  }
+ default:
+  {
+   __gcry_log_bug(46218, $vararg_buffer);
+  }
+ }
+ STACKTOP = sp;
+ 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, $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 label = 0, sp = 0;
+ sp = STACKTOP;
+ $$016 = 0;
+ while (1) {
+  $3 = 64610 + $$016 | 0;
+  $4 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+  $5 = $4 & 255;
+  $6 = ($5 | 0) == ($0 | 0);
+  if ($6) {
+   label = 2;
+   break;
+  }
+  $7 = $$016 + 1 | 0;
+  $8 = ($7 | 0) == 87;
+  if ($8) {
+   $$01214 = 64698;
+   $$115 = 87;
+   label = 5;
+   break;
+  } else {
+   $$016 = $7;
+  }
+ }
+ if ((label | 0) == 2) {
+  $2 = ($$016 | 0) == 0;
+  if ($2) {
+   $$012$lcssa = 64698;
+  } else {
+   $$01214 = 64698;
+   $$115 = $$016;
+   label = 5;
+  }
+ }
+ if ((label | 0) == 5) {
+  while (1) {
+   label = 0;
+   $$113 = $$01214;
+   while (1) {
+    $9 = SAFE_HEAP_LOAD($$113 >> 0 | 0, 1, 0) | 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;
+    label = 5;
+   }
+  }
+ }
+ $14 = $1 + 20 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = ___lctrans($$012$lcssa, $15) | 0;
+ return $16 | 0;
+}
+
+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;
+ SAFE_HEAP_STORE_D(tempDoublePtr | 0, +$0, 8);
+ $2 = SAFE_HEAP_LOAD(tempDoublePtr | 0, 4, 0) | 0 | 0;
+ $3 = SAFE_HEAP_LOAD(tempDoublePtr + 4 | 0, 4, 0) | 0 | 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 * 18446744073709551616.0;
+    $9 = +_frexp($8, $1);
+    $10 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+    $11 = $10 + -64 | 0;
+    $$016 = $9;
+    $storemerge = $11;
+   } else {
+    $$016 = $0;
+    $storemerge = 0;
+   }
+   SAFE_HEAP_STORE($1 | 0, $storemerge | 0, 4);
+   $$0 = $$016;
+   break;
+  }
+ case 2047:
+  {
+   $$0 = $0;
+   break;
+  }
+ default:
+  {
+   $12 = $4 & 2047;
+   $13 = $12 + -1022 | 0;
+   SAFE_HEAP_STORE($1 | 0, $13 | 0, 4);
+   $14 = $3 & -2146435073;
+   $15 = $14 | 1071644672;
+   SAFE_HEAP_STORE(tempDoublePtr | 0, $2 | 0, 4);
+   SAFE_HEAP_STORE(tempDoublePtr + 4 | 0, $15 | 0, 4);
+   $16 = +(+SAFE_HEAP_LOAD_D(tempDoublePtr | 0, 8));
+   $$0 = $16;
+  }
+ }
+ return +$$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, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 
0, $scevgep = 0, dest = 0, label = 0;
+ var sp = 0, src = 0, stop = 0;
+ sp = STACKTOP;
+ dest = $0;
+ src = 70208;
+ stop = dest + 15 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  dest = dest + 1 | 0;
+  src = src + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ $2 = ($1 | 0) == 0;
+ if ($2) {
+  $scevgep = $0 + 14 | 0;
+  SAFE_HEAP_STORE($scevgep >> 0 | 0, 48 | 0, 1);
+  $3 = $0 + 15 | 0;
+  SAFE_HEAP_STORE($3 >> 0 | 0, 0 | 0, 1);
+ } else {
+  $$027 = $1;
+  $$126 = 14;
+  while (1) {
+   $4 = ($$027 >>> 0) / 10 & -1;
+   $5 = $$126 + 1 | 0;
+   $6 = $$027 >>> 0 < 10;
+   if ($6) {
+    break;
+   } else {
+    $$027 = $4;
+    $$126 = $5;
+   }
+  }
+  $7 = $0 + $5 | 0;
+  SAFE_HEAP_STORE($7 >> 0 | 0, 0 | 0, 1);
+  $$02324 = $1;
+  $$225 = $5;
+  while (1) {
+   $8 = ($$02324 >>> 0) % 10 & -1;
+   $9 = $8 | 48;
+   $10 = $9 & 255;
+   $11 = $$225 + -1 | 0;
+   $12 = $0 + $11 | 0;
+   SAFE_HEAP_STORE($12 >> 0 | 0, $10 | 0, 1);
+   $13 = ($$02324 >>> 0) / 10 & -1;
+   $14 = $$02324 >>> 0 < 10;
+   if ($14) {
+    break;
+   } else {
+    $$02324 = $13;
+    $$225 = $11;
+   }
+  }
+ }
+ 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;
+ SAFE_HEAP_STORE($4 | 0, 1732584193 | 0, 4);
+ $5 = $3 + 164 | 0;
+ SAFE_HEAP_STORE($5 | 0, -271733879 | 0, 4);
+ $6 = $3 + 168 | 0;
+ SAFE_HEAP_STORE($6 | 0, -1732584194 | 0, 4);
+ $7 = $3 + 172 | 0;
+ SAFE_HEAP_STORE($7 | 0, 271733878 | 0, 4);
+ $8 = $3 + 176 | 0;
+ SAFE_HEAP_STORE($8 | 0, -1009589776 | 0, 4);
+ $9 = $3 + 128 | 0;
+ $10 = $3 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($9 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 | 0, 64 | 0, 4);
+ $11 = $3 + 152 | 0;
+ SAFE_HEAP_STORE($11 | 0, 72 | 0, 4);
+ __gcry_md_block_write($3, $1, $2);
+ _rmd160_final($3);
+ dest = $0;
+ src = $3;
+ stop = dest + 20 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  dest = dest + 1 | 0;
+  src = src + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ if ($3) {
+  $$1 = 0;
+  return $$1 | 0;
+ }
+ $4 = $0 + 16 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $$03436 = 0;
+ $$037 = 0;
+ while (1) {
+  $6 = $5 + ($$037 << 2) | 0;
+  $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = 45555 + $17 | 0;
+ $19 = SAFE_HEAP_LOAD($18 >> 0 | 0, 1, 0) | 0 | 0;
+ $20 = $19 & 255;
+ $21 = $$03436 + -1 | 0;
+ $22 = $21 + $16 | 0;
+ $23 = $22 + $20 | 0;
+ $$1 = $23;
+ return $$1 | 0;
+}
+
+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;
+ SAFE_HEAP_STORE($4 | 0, 1732584193 | 0, 4);
+ $5 = $3 + 164 | 0;
+ SAFE_HEAP_STORE($5 | 0, -271733879 | 0, 4);
+ $6 = $3 + 168 | 0;
+ SAFE_HEAP_STORE($6 | 0, -1732584194 | 0, 4);
+ $7 = $3 + 172 | 0;
+ SAFE_HEAP_STORE($7 | 0, 271733878 | 0, 4);
+ $8 = $3 + 176 | 0;
+ SAFE_HEAP_STORE($8 | 0, -1009589776 | 0, 4);
+ $9 = $3 + 128 | 0;
+ $10 = $3 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($9 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($9 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 | 0, 64 | 0, 4);
+ $11 = $3 + 152 | 0;
+ SAFE_HEAP_STORE($11 | 0, 74 | 0, 4);
+ __gcry_md_block_write($3, $1, $2);
+ _sha1_final($3);
+ dest = $0;
+ src = $3;
+ stop = dest + 20 | 0;
+ do {
+  SAFE_HEAP_STORE(dest >> 0 | 0, SAFE_HEAP_LOAD(src >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+  dest = dest + 1 | 0;
+  src = src + 1 | 0;
+ } while ((dest | 0) < (stop | 0));
+ STACKTOP = sp;
+ return;
+}
+
+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;
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ $9 = $0 + 64 | 0;
+ $10 = $0 + 80 | 0;
+ $11 = $4 & 255;
+ dest = $9;
+ stop = dest + 52 | 0;
+ do {
+  SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+  dest = dest + 4 | 0;
+ } while ((dest | 0) < (stop | 0));
+ SAFE_HEAP_STORE($10 >> 0 | 0, $11 | 0, 1);
+ $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;
+ SAFE_HEAP_STORE($9 >> 0 | 0, $11 | 0, 1);
+ $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 = SAFE_HEAP_LOAD($17 >> 0 | 0, 1, 0) | 0 | 0;
+ $19 = $18 | 1;
+ SAFE_HEAP_STORE($17 >> 0 | 0, $19 | 0, 1);
+ $$0 = 0;
+ return $$0 | 0;
+}
+
+function _GNUNET_STRINGS_data_to_string_alloc($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, $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);
+ $3 = $0;
+ $4 = $1;
+ $8 = $4;
+ $9 = $8 << 3;
+ $6 = $9;
+ $10 = $6;
+ $11 = ($10 >>> 0) % 5 & -1;
+ $12 = $11 >>> 0 > 0;
+ if ($12) {
+  $13 = $6;
+  $14 = ($13 >>> 0) % 5 & -1;
+  $15 = 5 - $14 | 0;
+  $16 = $6;
+  $17 = $16 + $15 | 0;
+  $6 = $17;
+ }
+ $18 = $6;
+ $19 = ($18 >>> 0) / 5 & -1;
+ $6 = $19;
+ $20 = $6;
+ $21 = $20 + 1 | 0;
+ $22 = _GNUNET_xmalloc_($21, 21635, 939) | 0;
+ $5 = $22;
+ $23 = $3;
+ $24 = $4;
+ $25 = $5;
+ $26 = $6;
+ $27 = _GNUNET_STRINGS_data_to_string($23, $24, $25, $26) | 0;
+ $7 = $27;
+ $28 = $7;
+ $29 = (0 | 0) == ($28 | 0);
+ if ($29) {
+  $30 = $5;
+  _GNUNET_xfree_($30, 21635, 943);
+  $2 = 0;
+  $33 = $2;
+  STACKTOP = sp;
+  return $33 | 0;
+ } else {
+  $31 = $7;
+  SAFE_HEAP_STORE($31 >> 0 | 0, 0 | 0, 1);
+  $32 = $5;
+  $2 = $32;
+  $33 = $2;
+  STACKTOP = sp;
+  return $33 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $8 = $7 & 4;
+  $9 = ($8 | 0) == 0;
+  if ($9) {
+   label = 6;
+  } else {
+   $10 = __gcry_mpi_get_opaque($0, $3) | 0;
+   $11 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+   $17 = $16 >>> 0 > $2 >>> 0;
+   if ($17) {
+    $18 = $16 - $2 | 0;
+    $19 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+    __gcry_mpi_rshift($19, $19, $18);
+   }
+  }
+ }
+ if ((label | 0) == 6) {
+  SAFE_HEAP_STORE($4 | 0, $0 | 0, 4);
+ }
+ $20 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($1 | 0, $20 | 0, 4);
+ $$0 = 0;
+ STACKTOP = sp;
+ 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 = SAFE_HEAP_LOAD(17672 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  __gcry_assert_failed(51340, 51065, 531, 51632);
+ }
+ $5 = SAFE_HEAP_LOAD(17681 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == (0 | 0);
+ if ($6) {
+  __gcry_assert_failed(51651, 51065, 532, 51632);
+ }
+ $7 = ($1 | 0) == 0;
+ if ($7) {
+  return;
+ }
+ $8 = SAFE_HEAP_LOAD(17682 * 4 | 0, 4, 0) | 0 | 0;
+ $$pre = SAFE_HEAP_LOAD(17683 * 4 | 0, 4, 0) | 0 | 0;
+ $$05 = $0;
+ $$in = $1;
+ $10 = $$pre;
+ while (1) {
+  $9 = $$in + -1 | 0;
+  $11 = $10 >>> 0 < $8 >>> 0;
+  if (!$11) {
+   label = 9;
+   break;
+  }
+  $12 = $$05 + 1 | 0;
+  $13 = SAFE_HEAP_LOAD($$05 >> 0 | 0, 1, 0) | 0 | 0;
+  $14 = $10 + 1 | 0;
+  SAFE_HEAP_STORE(17683 * 4 | 0, $14 | 0, 4);
+  $15 = $5 + $10 | 0;
+  $16 = SAFE_HEAP_LOAD($15 >> 0 | 0, 1, 0) | 0 | 0;
+  $17 = $16 ^ $13;
+  SAFE_HEAP_STORE($15 >> 0 | 0, $17 | 0, 1);
+  $18 = ($9 | 0) == 0;
+  if ($18) {
+   label = 9;
+   break;
+  } else {
+   $$05 = $12;
+   $$in = $9;
+   $10 = $14;
+  }
+ }
+ if ((label | 0) == 9) {
+  return;
+ }
+}
+
+function _random() {
+ var $$ = 0, $$0 = 0, $$1 = 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, $3 = 0, $4 = 
0, $5 = 0, $6 = 0;
+ var $7 = 0, $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ ___lock(70852 | 0);
+ $0 = SAFE_HEAP_LOAD(4071 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 0;
+ if ($1) {
+  $2 = SAFE_HEAP_LOAD(4072 * 4 | 0, 4, 0) | 0 | 0;
+  $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  $4 = Math_imul($3, 1103515245) | 0;
+  $5 = $4 + 12345 | 0;
+  $6 = $5 & 2147483647;
+  SAFE_HEAP_STORE($2 | 0, $6 | 0, 4);
+  $$0 = $6;
+ } else {
+  $7 = SAFE_HEAP_LOAD(17715 * 4 | 0, 4, 0) | 0 | 0;
+  $8 = SAFE_HEAP_LOAD(4072 * 4 | 0, 4, 0) | 0 | 0;
+  $9 = $8 + ($7 << 2) | 0;
+  $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+  $11 = SAFE_HEAP_LOAD(4073 * 4 | 0, 4, 0) | 0 | 0;
+  $12 = $8 + ($11 << 2) | 0;
+  $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+  $14 = $13 + $10 | 0;
+  SAFE_HEAP_STORE($12 | 0, $14 | 0, 4);
+  $15 = $14 >>> 1;
+  $16 = $11 + 1 | 0;
+  $17 = ($16 | 0) == ($0 | 0);
+  $$ = $17 ? 0 : $16;
+  SAFE_HEAP_STORE(4073 * 4 | 0, $$ | 0, 4);
+  $18 = $7 + 1 | 0;
+  $19 = ($18 | 0) == ($0 | 0);
+  $$1 = $19 ? 0 : $18;
+  SAFE_HEAP_STORE(17715 * 4 | 0, $$1 | 0, 4);
+  $$0 = $15;
+ }
+ ___unlock(70852 | 0);
+ 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, $$032 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, 
$4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $or$cond = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ $4 = ($3 | 0) != (0 | 0);
+ if ($4) {
+  SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ }
+ $5 = ($1 | 0) != 0;
+ $6 = $5 ? 37667 : 37679;
+ $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, 37667, 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 = _spec_from_name($12) | 0;
+ __gcry_free($12);
+ $15 = ($14 | 0) == (0 | 0);
+ if ($15) {
+  __gcry_sexp_release($11);
+  $$0 = 4;
+  return $$0 | 0;
+ }
+ SAFE_HEAP_STORE($2 | 0, $14 | 0, 4);
+ if ($4) {
+  SAFE_HEAP_STORE($3 | 0, $11 | 0, 4);
+  $$0 = 0;
+  return $$0 | 0;
+ } else {
+  __gcry_sexp_release($11);
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($$01011 | 0, 4, 0) | 0 | 0;
+     $11 = _iswctype($9, $10) | 0;
+     $12 = ($11 | 0) == 0;
+     if (!$12) {
+      $$0 = 1;
+      break L1;
+     }
+     $13 = _towlower($1) | 0;
+     $14 = SAFE_HEAP_LOAD($$01011 | 0, 4, 0) | 0 | 0;
+     $15 = _iswctype($13, $14) | 0;
+     $16 = ($15 | 0) == 0;
+     if (!$16) {
+      $$0 = 1;
+      break L1;
+     }
+    }
+    $17 = $$01011 + 4 | 0;
+    $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+    $19 = ($18 | 0) == 0;
+    if ($19) {
+     $$0 = 0;
+     break;
+    } else {
+     $$01011 = $17;
+     $6 = $18;
+    }
+   }
+  }
+ } while (0);
+ return $$0 | 0;
+}
+
+function __gcry_rngfips_run_external_test($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, $9 = 0, $notlhs 
= 0, $notrhs = 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;
+ $notlhs = ($0 | 0) == (0 | 0);
+ $notrhs = ($1 | 0) == (0 | 0);
+ $or$cond$not = $notlhs | $notrhs;
+ $3 = ($2 | 0) != 16;
+ $or$cond3 = $or$cond$not | $3;
+ if ($or$cond3) {
+  $$0 = 45;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $4 = _gpgrt_lock_lock(12644) | 0;
+ $5 = ($4 | 0) == 0;
+ if (!$5) {
+  $6 = _gpg_strerror($4) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $6 | 0, 4);
+  __gcry_log_fatal(51001, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17672 * 4 | 0, 1 | 0, 4);
+ _get_random($1, 16, $0);
+ SAFE_HEAP_STORE(17672 * 4 | 0, 0 | 0, 4);
+ $7 = _gpgrt_lock_unlock(12644) | 0;
+ $8 = ($7 | 0) == 0;
+ if ($8) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  $9 = _gpg_strerror($7) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $9 | 0, 4);
+  __gcry_log_fatal(51213, $vararg_buffer1);
+ }
+ return 0 | 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, 19010, 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;
+ SAFE_HEAP_STORE($19 >> 0 | 0, $17 & 255 | 0, 1);
+ SAFE_HEAP_STORE($19 + 1 >> 0 | 0, $17 >> 8 & 255 | 0, 1);
+ SAFE_HEAP_STORE($19 + 2 >> 0 | 0, $17 >> 16 & 255 | 0, 1);
+ SAFE_HEAP_STORE($19 + 3 >> 0 | 0, $17 >> 24 | 0, 1);
+ $20 = $7;
+ $21 = _htonl($20) | 0;
+ $22 = $6;
+ SAFE_HEAP_STORE($22 >> 0 | 0, $21 & 255 | 0, 1);
+ SAFE_HEAP_STORE($22 + 1 >> 0 | 0, $21 >> 8 & 255 | 0, 1);
+ SAFE_HEAP_STORE($22 + 2 >> 0 | 0, $21 >> 16 & 255 | 0, 1);
+ SAFE_HEAP_STORE($22 + 3 >> 0 | 0, $21 >> 24 | 0, 1);
+ $23 = $6;
+ STACKTOP = sp;
+ return $23 | 0;
+}
+
+function _GNUNET_xfree_($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_ptr1 = 0, label = 0;
+ var sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 32 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(32 | 0);
+ $vararg_buffer = sp;
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $7 = $3;
+ $8 = (0 | 0) != ($7 | 0);
+ if ($8) {
+  $19 = $3;
+  _free($19);
+  STACKTOP = sp;
+  return;
+ }
+ $6 = 311;
+ $9 = SAFE_HEAP_LOAD(181 * 4 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == -1;
+ if ($10) {
+  $11 = $6;
+  $12 = _GNUNET_get_log_call_status(1, 0, 19017, 19060, $11) | 0;
+  SAFE_HEAP_STORE(181 * 4 | 0, $12 | 0, 4);
+ }
+ $13 = _GNUNET_get_log_skip() | 0;
+ $14 = ($13 | 0) > 0;
+ if ($14) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $15 = SAFE_HEAP_LOAD(181 * 4 | 0, 4, 0) | 0 | 0;
+ $16 = ($15 | 0) != 0;
+ if (!$16) {
+  _GNUNET_abort_();
+ }
+ $17 = $4;
+ $18 = $5;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $17 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $18 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ _GNUNET_abort_();
+}
+
+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;
+ SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+ $2 = __gcry_sexp_find_token($0, 46949, 1) | 0;
+ $3 = ($2 | 0) == (0 | 0);
+ if ($3) {
+  $4 = __gcry_sexp_find_token($0, 46925, 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) {
+     SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+    }
+    __gcry_free($6);
+    $$pre = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 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;
+   SAFE_HEAP_STORE($1 | 0, $12 | 0, 4);
+   __gcry_mpi_release($10);
+   $$0 = $12;
+  }
+ }
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function _GNUNET_CRYPTO_hash_context_start() {
+ 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, $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 = _GNUNET_xmalloc_(4, 20365, 425) | 0;
+ $0 = $2;
+ $3 = $0;
+ $4 = _gcry_md_open($3, 10, 0) | 0;
+ $5 = 0 == ($4 | 0);
+ if ($5) {
+  $14 = $0;
+  STACKTOP = sp;
+  return $14 | 0;
+ }
+ $1 = 429;
+ $6 = SAFE_HEAP_LOAD(232 * 4 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) == -1;
+ if ($7) {
+  $8 = $1;
+  $9 = _GNUNET_get_log_call_status(1, 0, 20365, 20379, $8) | 0;
+  SAFE_HEAP_STORE(232 * 4 | 0, $9 | 0, 4);
+ }
+ $10 = _GNUNET_get_log_skip() | 0;
+ $11 = ($10 | 0) > 0;
+ if ($11) {
+  _GNUNET_log_skip(-1, 0);
+  _GNUNET_abort_();
+ }
+ $12 = SAFE_HEAP_LOAD(232 * 4 | 0, 4, 0) | 0 | 0;
+ $13 = ($12 | 0) != 0;
+ if (!$13) {
+  _GNUNET_abort_();
+ }
+ SAFE_HEAP_STORE($vararg_buffer | 0, 20365 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 429 | 0, 4);
+ _GNUNET_log_nocheck(1, 61295, $vararg_buffer);
+ _GNUNET_abort_();
+ 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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+    $7 = ($6 | 0) == 0;
+    $8 = $2 + ($$019 << 2) | 0;
+    $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+    $10 = $3 + ($$019 << 2) | 0;
+    $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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 _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 = SAFE_HEAP_LOAD(17685 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  __gcry_assert_failed(52400, 52327, 124, 52421);
+ }
+ $5 = SAFE_HEAP_LOAD(17686 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == (0 | 0);
+ if ($6) {
+  __gcry_assert_failed(52429, 52327, 125, 52421);
+ }
+ $7 = ($1 | 0) == 0;
+ if ($7) {
+  return;
+ }
+ $8 = SAFE_HEAP_LOAD(17687 * 4 | 0, 4, 0) | 0 | 0;
+ $$pre = SAFE_HEAP_LOAD(17688 * 4 | 0, 4, 0) | 0 | 0;
+ $$05 = $0;
+ $$in = $1;
+ $10 = $$pre;
+ while (1) {
+  $9 = $$in + -1 | 0;
+  $11 = $10 >>> 0 < $8 >>> 0;
+  if (!$11) {
+   label = 9;
+   break;
+  }
+  $12 = $$05 + 1 | 0;
+  $13 = SAFE_HEAP_LOAD($$05 >> 0 | 0, 1, 0) | 0 | 0;
+  $14 = $10 + 1 | 0;
+  SAFE_HEAP_STORE(17688 * 4 | 0, $14 | 0, 4);
+  $15 = $5 + $10 | 0;
+  SAFE_HEAP_STORE($15 >> 0 | 0, $13 | 0, 1);
+  $16 = ($9 | 0) == 0;
+  if ($16) {
+   label = 9;
+   break;
+  } else {
+   $$05 = $12;
+   $$in = $9;
+   $10 = $14;
+  }
+ }
+ if ((label | 0) == 9) {
+  return;
+ }
+}
+
+function _strtox($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;
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ $6 = $5 + 4 | 0;
+ SAFE_HEAP_STORE($6 | 0, $0 | 0, 4);
+ $7 = $5 + 44 | 0;
+ SAFE_HEAP_STORE($7 | 0, $0 | 0, 4);
+ $8 = ($0 | 0) < (0 | 0);
+ $9 = $0 + 2147483647 | 0;
+ $$sink = $8 ? -1 : $9;
+ $10 = $5 + 8 | 0;
+ SAFE_HEAP_STORE($10 | 0, $$sink | 0, 4);
+ $11 = $5 + 76 | 0;
+ SAFE_HEAP_STORE($11 | 0, -1 | 0, 4);
+ ___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 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+  $17 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $18 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $19 = $17 + $16 | 0;
+  $20 = $19 - $18 | 0;
+  $21 = $0 + $20 | 0;
+  SAFE_HEAP_STORE($1 | 0, $21 | 0, 4);
+ }
+ tempRet0 = $13;
+ STACKTOP = sp;
+ return $12 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = ($1 | 0) != 0;
+ $5 = ($3 | 0) != 0;
+ $or$cond = $4 & $5;
+ if (!$or$cond) {
+  return;
+ }
+ $6 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $7 = $3 + $1 | 0;
+ $8 = $6 >>> 0 < $7 >>> 0;
+ if ($8) {
+  __gcry_mpi_resize($0, $7);
+ }
+ $9 = $0 + 16 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = ($3 | 0) > 0;
+ if ($11) {
+  $$032$in = $3;
+  while (1) {
+   $$032 = $$032$in + -1 | 0;
+   $12 = $10 + ($$032 << 2) | 0;
+   $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $14 = $$032 + $1 | 0;
+   $15 = $10 + ($14 << 2) | 0;
+   SAFE_HEAP_STORE($15 | 0, $13 | 0, 4);
+   $16 = ($$032$in | 0) > 1;
+   if ($16) {
+    $$032$in = $$032;
+   } else {
+    break;
+   }
+  }
+ }
+ $17 = $1 << 2;
+ _memset($10 | 0, 0, $17 | 0) | 0;
+ $18 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $19 = $18 + $1 | 0;
+ SAFE_HEAP_STORE($2 | 0, $19 | 0, 4);
+ return;
+}
+
+function __gcry_pk_genkey($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0 = 0, $$030 = 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;
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $2 = __gcry_sexp_find_token($1, 37690, 0) | 0;
+ $3 = ($2 | 0) == (0 | 0);
+ 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 = _spec_from_name($6) | 0;
+    __gcry_free($6);
+    $9 = ($8 | 0) == (0 | 0);
+    if ($9) {
+     $$0 = 4;
+     $$030 = $4;
+    } else {
+     $10 = $8 + 40 | 0;
+     $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+     $12 = ($11 | 0) == (0 | 0);
+     if ($12) {
+      $$0 = 69;
+      $$030 = $4;
+     } else {
+      $13 = FUNCTION_TABLE_iii[(SAFE_FT_MASK($11 | 0, 127 | 0) | 0) & 127]($4, 
$0) | 0;
+      $$0 = $13;
+      $$030 = $4;
+     }
+    }
+   }
+  }
+ }
+ __gcry_sexp_release($$030);
+ __gcry_free(0);
+ __gcry_sexp_release(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;
+  SAFE_HEAP_STORE($5 | 0, $6 | 0, 4);
+  $7 = __gcry_mpi_new(0) | 0;
+  $8 = $5 + 4 | 0;
+  SAFE_HEAP_STORE($8 | 0, $7 | 0, 4);
+  $9 = __gcry_mpi_new(0) | 0;
+  $10 = $5 + 8 | 0;
+  SAFE_HEAP_STORE($10 | 0, $9 | 0, 4);
+  $$0 = $5;
+ } else {
+  $$0 = $0;
+ }
+ $11 = ($1 | 0) == (0 | 0);
+ $12 = SAFE_HEAP_LOAD($$0 | 0, 4, 0) | 0 | 0;
+ if ($11) {
+  __gcry_mpi_clear($12);
+ } else {
+  __gcry_mpi_snatch($12, $1);
+ }
+ $13 = ($2 | 0) == (0 | 0);
+ $14 = $$0 + 4 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ if ($13) {
+  __gcry_mpi_clear($15);
+ } else {
+  __gcry_mpi_snatch($15, $2);
+ }
+ $16 = ($3 | 0) == (0 | 0);
+ $17 = $$0 + 8 | 0;
+ $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 0;
+ if ($16) {
+  __gcry_mpi_clear($18);
+  return $$0 | 0;
+ } else {
+  __gcry_mpi_snatch($18, $3);
+  return $$0 | 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 __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;
+  SAFE_HEAP_STORE($5 | 0, $6 | 0, 4);
+  $7 = __gcry_mpi_new(0) | 0;
+  $8 = $5 + 4 | 0;
+  SAFE_HEAP_STORE($8 | 0, $7 | 0, 4);
+  $9 = __gcry_mpi_new(0) | 0;
+  $10 = $5 + 8 | 0;
+  SAFE_HEAP_STORE($10 | 0, $9 | 0, 4);
+  $$0 = $5;
+ } else {
+  $$0 = $0;
+ }
+ $11 = ($1 | 0) == (0 | 0);
+ $12 = SAFE_HEAP_LOAD($$0 | 0, 4, 0) | 0 | 0;
+ if ($11) {
+  __gcry_mpi_clear($12);
+ } else {
+  __gcry_mpi_set($12, $1) | 0;
+ }
+ $13 = ($2 | 0) == (0 | 0);
+ $14 = $$0 + 4 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ if ($13) {
+  __gcry_mpi_clear($15);
+ } else {
+  __gcry_mpi_set($15, $2) | 0;
+ }
+ $16 = ($3 | 0) == (0 | 0);
+ $17 = $$0 + 8 | 0;
+ $18 = SAFE_HEAP_LOAD($17 | 0, 4, 0) | 0 | 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_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) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+  __gcry_log_fatal(23979, $vararg_buffer);
+ }
+ $3 = _memcmp($0, 23975, 3) | 0;
+ $4 = ($3 | 0) == 0;
+ if (!$4) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+  __gcry_log_fatal(23979, $vararg_buffer);
+ }
+ $5 = $0 + 3 | 0;
+ $6 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+ $7 = $6 << 24 >> 24;
+ $8 = ($7 | 0) == ($1 | 0);
+ if ($8) {
+  $9 = $0 + 8 | 0;
+  STACKTOP = sp;
+  return $9 | 0;
+ } else {
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $1 | 0, 4);
+  $vararg_ptr4 = $vararg_buffer1 + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr4 | 0, $0 | 0, 4);
+  $vararg_ptr5 = $vararg_buffer1 + 8 | 0;
+  SAFE_HEAP_STORE($vararg_ptr5 | 0, $7 | 0, 4);
+  __gcry_log_fatal(24027, $vararg_buffer1);
+ }
+ return 0 | 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 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == ($0 | 0);
+ if ($2) {
+  $$ph$i = 7620;
+ } else {
+  $3 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+  $4 = ($3 | 0) == ($0 | 0);
+  if ($4) {
+   $$ph$i = 7756;
+  } else {
+   $5 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+   $6 = ($5 | 0) == ($0 | 0);
+   if ($6) {
+    $$ph$i = 7696;
+   } else {
+    $7 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+    $8 = ($7 | 0) == ($0 | 0);
+    if ($8) {
+     $$ph$i = 7820;
+    } else {
+     $9 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+     $10 = ($9 | 0) == ($0 | 0);
+     if ($10) {
+      $$ph$i = 7884;
+     } else {
+      $11 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+      $12 = ($11 | 0) == ($0 | 0);
+      if ($12) {
+       $$ph$i = 7456;
+      } else {
+       $15 = 0;
+       return $15 | 0;
+      }
+     }
+    }
+   }
+  }
+ }
+ $13 = $$ph$i + 24 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = $14;
+ return $15 | 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;
+  SAFE_HEAP_STORE($5 | 0, 12 | 0, 4);
+  $$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 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 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 ___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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $3;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $5 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 0 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $1 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $6 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer + 16 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $2 | 0, 4);
+ $7 = ___syscall140(140, $vararg_buffer | 0) | 0;
+ $8 = ___syscall_ret($7) | 0;
+ $9 = ($8 | 0) < 0;
+ if ($9) {
+  SAFE_HEAP_STORE($3 | 0, -1 | 0, 4);
+  $10 = -1;
+ } else {
+  $$pre = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $10 = $$pre;
+ }
+ STACKTOP = sp;
+ return $10 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $5 = $4 & 16;
+  $6 = ($5 | 0) == 0;
+  if (!$6) {
+   __gcry_mpi_immutable_failed();
+   return;
+  }
+ }
+ $7 = $1 >>> 5;
+ $8 = $0 + 4 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = $7 >>> 0 < $9 >>> 0;
+ if (!$10) {
+  return;
+ }
+ $11 = $1 & 31;
+ $12 = $0 + 16 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = $13 + ($7 << 2) | 0;
+ $$promoted = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 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;
+  }
+ }
+ SAFE_HEAP_STORE($14 | 0, $17 | 0, 4);
+ $20 = $7 + 1 | 0;
+ SAFE_HEAP_STORE($8 | 0, $20 | 0, 4);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD(1905 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == ($0 | 0);
+ if ($2) {
+  $$ph = 7620;
+ } else {
+  $3 = SAFE_HEAP_LOAD(1939 * 4 | 0, 4, 0) | 0 | 0;
+  $4 = ($3 | 0) == ($0 | 0);
+  if ($4) {
+   $$ph = 7756;
+  } else {
+   $5 = SAFE_HEAP_LOAD(1924 * 4 | 0, 4, 0) | 0 | 0;
+   $6 = ($5 | 0) == ($0 | 0);
+   if ($6) {
+    $$ph = 7696;
+   } else {
+    $7 = SAFE_HEAP_LOAD(1955 * 4 | 0, 4, 0) | 0 | 0;
+    $8 = ($7 | 0) == ($0 | 0);
+    if ($8) {
+     $$ph = 7820;
+    } else {
+     $9 = SAFE_HEAP_LOAD(1971 * 4 | 0, 4, 0) | 0 | 0;
+     $10 = ($9 | 0) == ($0 | 0);
+     if ($10) {
+      $$ph = 7884;
+     } else {
+      $11 = SAFE_HEAP_LOAD(1864 * 4 | 0, 4, 0) | 0 | 0;
+      $12 = ($11 | 0) == ($0 | 0);
+      if ($12) {
+       $$ph = 7456;
+      } else {
+       $15 = 37665;
+       return $15 | 0;
+      }
+     }
+    }
+   }
+  }
+ }
+ $13 = $$ph + 8 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = $14;
+ return $15 | 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(12644) | 0;
+ $4 = ($3 | 0) == 0;
+ if (!$4) {
+  $5 = _gpg_strerror($3) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $5 | 0, 4);
+  __gcry_log_fatal(51001, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17672 * 4 | 0, 1 | 0, 4);
+ $6 = ($2 | 0) == 2;
+ if ($6) {
+  $7 = SAFE_HEAP_LOAD(17676 * 4 | 0, 4, 0) | 0 | 0;
+  _get_random($0, $1, $7);
+ } else {
+  $8 = SAFE_HEAP_LOAD(17675 * 4 | 0, 4, 0) | 0 | 0;
+  _get_random($0, $1, $8);
+ }
+ SAFE_HEAP_STORE(17672 * 4 | 0, 0 | 0, 4);
+ $9 = _gpgrt_lock_unlock(12644) | 0;
+ $10 = ($9 | 0) == 0;
+ if ($10) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $11 = _gpg_strerror($9) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $11 | 0, 4);
+  __gcry_log_fatal(51213, $vararg_buffer1);
+ }
+}
+
+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 = SAFE_HEAP_LOAD(17681 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == (0 | 0);
+ if (!$1) {
+  __gcry_assert_failed(51568, 51065, 552, 51592);
+ }
+ $2 = __gcry_xmalloc_secure(16) | 0;
+ SAFE_HEAP_STORE(17681 * 4 | 0, $2 | 0, 4);
+ SAFE_HEAP_STORE(17682 * 4 | 0, 16 | 0, 4);
+ SAFE_HEAP_STORE(17683 * 4 | 0, 0 | 0, 4);
+ $3 = __gcry_rndlinux_gather_random(81, 0, 16, 2) | 0;
+ $4 = ($3 | 0) < 0;
+ if (!$4) {
+  $5 = SAFE_HEAP_LOAD(17683 * 4 | 0, 4, 0) | 0 | 0;
+  $6 = SAFE_HEAP_LOAD(17682 * 4 | 0, 4, 0) | 0 | 0;
+  $7 = ($5 | 0) == ($6 | 0);
+  if ($7) {
+   $9 = SAFE_HEAP_LOAD(17681 * 4 | 0, 4, 0) | 0 | 0;
+   SAFE_HEAP_STORE(17681 * 4 | 0, 0 | 0, 4);
+   STACKTOP = sp;
+   return $9 | 0;
+  }
+ }
+ $8 = SAFE_HEAP_LOAD(17681 * 4 | 0, 4, 0) | 0 | 0;
+ __gcry_free($8);
+ SAFE_HEAP_STORE(17681 * 4 | 0, 0 | 0, 4);
+ __gcry_log_fatal(51604, $vararg_buffer);
+ return 0 | 0;
+}
+
+function __gcry_mpih_lshift($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$034$lcssa = 0, $$03435 = 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, $4 = 0, $5 = 0, $6 = 0, $7 = 0;
+ var $8 = 0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $4 = $0 + 4 | 0;
+ $5 = 32 - $3 | 0;
+ $6 = $2 + -1 | 0;
+ $7 = $1 + ($6 << 2) | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $8 >>> $5;
+ $10 = $2 + -2 | 0;
+ $11 = ($2 | 0) > 1;
+ if ($11) {
+  $$03435 = $8;
+  $13 = $10;
+  while (1) {
+   $12 = $1 + ($13 << 2) | 0;
+   $14 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+   $15 = $$03435 << $3;
+   $16 = $14 >>> $5;
+   $17 = $16 | $15;
+   $18 = $4 + ($13 << 2) | 0;
+   SAFE_HEAP_STORE($18 | 0, $17 | 0, 4);
+   $19 = $13 + -1 | 0;
+   $20 = ($13 | 0) > 0;
+   if ($20) {
+    $$03435 = $14;
+    $13 = $19;
+   } else {
+    $$034$lcssa = $14;
+    $$lcssa = -1;
+    break;
+   }
+  }
+ } else {
+  $$034$lcssa = $8;
+  $$lcssa = $10;
+ }
+ $21 = $$034$lcssa << $3;
+ $22 = $4 + ($$lcssa << 2) | 0;
+ SAFE_HEAP_STORE($22 | 0, $21 | 0, 4);
+ return $9 | 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 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = $2 << 24 >> 24;
+ $4 = $3 + 255 | 0;
+ $5 = $4 | $3;
+ $6 = $5 & 255;
+ SAFE_HEAP_STORE($1 >> 0 | 0, $6 | 0, 1);
+ $7 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $8 = $7 & 8;
+ $9 = ($8 | 0) == 0;
+ if ($9) {
+  $11 = $0 + 8 | 0;
+  SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+  $12 = $0 + 4 | 0;
+  SAFE_HEAP_STORE($12 | 0, 0 | 0, 4);
+  $13 = $0 + 44 | 0;
+  $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  $15 = $0 + 28 | 0;
+  SAFE_HEAP_STORE($15 | 0, $14 | 0, 4);
+  $16 = $0 + 20 | 0;
+  SAFE_HEAP_STORE($16 | 0, $14 | 0, 4);
+  $17 = $14;
+  $18 = $0 + 48 | 0;
+  $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+  $20 = $17 + $19 | 0;
+  $21 = $0 + 16 | 0;
+  SAFE_HEAP_STORE($21 | 0, $20 | 0, 4);
+  $$0 = 0;
+ } else {
+  $10 = $7 | 32;
+  SAFE_HEAP_STORE($0 | 0, $10 | 0, 4);
+  $$0 = -1;
+ }
+ return $$0 | 0;
+}
+
+function _getPRK($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 $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, $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);
+ $7 = $0;
+ $8 = $1;
+ $9 = $2;
+ $10 = $3;
+ $11 = $4;
+ $12 = $5;
+ $14 = $7;
+ $15 = $8;
+ $16 = $9;
+ $17 = $10;
+ $18 = $11;
+ $19 = _doHMAC($14, $15, $16, $17, $18) | 0;
+ $13 = $19;
+ $20 = $13;
+ $21 = ($20 | 0) == (0 | 0);
+ if ($21) {
+  $6 = -1;
+  $31 = $6;
+  STACKTOP = sp;
+  return $31 | 0;
+ }
+ $22 = $7;
+ $23 = _gcry_md_get_algo($22) | 0;
+ $24 = _gcry_md_get_algo_dlen($23) | 0;
+ $25 = 0 != ($24 | 0);
+ if ($25) {
+  $26 = $12;
+  $27 = $13;
+  $28 = $7;
+  $29 = _gcry_md_get_algo($28) | 0;
+  $30 = _gcry_md_get_algo_dlen($29) | 0;
+  _memcpy($26 | 0, $27 | 0, $30 | 0) | 0;
+ }
+ $6 = 1;
+ $31 = $6;
+ STACKTOP = sp;
+ return $31 | 0;
+}
+
+function __gcry_calloc($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0 = 0, $$0$i$i = 0, $$pre$i$i = 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 = 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 = SAFE_HEAP_LOAD(17586 * 4 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) == (0 | 0);
+ if ($7) {
+  $9 = __gcry_private_malloc($2) | 0;
+  $$0$i$i = $9;
+ } else {
+  $8 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($6 | 0, 63 | 0) | 0) & 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 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = ($12 | 0) == 0;
+ if ($13) {
+  _gpg_err_set_errno(12);
+  $$pre$i$i = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+  $14 = $$pre$i$i;
+ } else {
+  $14 = $12;
+ }
+ _gpg_err_code_from_errno($14) | 0;
+ $$0 = 0;
+ return $$0 | 0;
+}
+
+function __gcry_fips_test_error_or_operational() {
+ var $$0 = 0, $$off = 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 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 1;
+ if ($1) {
+  $$0 = 1;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $2 = _gpgrt_lock_lock(1312) | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  $4 = _gpg_strerror($2) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $4 | 0, 4);
+  __gcry_log_info(23505, $vararg_buffer);
+  _abort();
+ }
+ $5 = SAFE_HEAP_LOAD(17609 * 4 | 0, 4, 0) | 0 | 0;
+ $$off = $5 + -3 | 0;
+ $6 = $$off >>> 0 < 2;
+ $7 = $6 & 1;
+ $8 = _gpgrt_lock_unlock(1312) | 0;
+ $9 = ($8 | 0) == 0;
+ if ($9) {
+  $$0 = $7;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  $10 = _gpg_strerror($8) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $10 | 0, 4);
+  __gcry_log_info(23560, $vararg_buffer1);
+  _abort();
+ }
+ 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = __gcry_mpi_alloc($4) | 0;
+ $6 = $2 + 8 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = ($7 | 0) == ($12 | 0);
+ if (!$13) {
+  $14 = $5 + 4 | 0;
+  $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 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_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 = SAFE_HEAP_LOAD(17644 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 0;
+ if ($1) {
+  SAFE_HEAP_STORE(17644 * 4 | 0, 1 | 0, 4);
+ }
+ $2 = _gpgrt_lock_lock(12596) | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  $4 = _gpg_strerror($2) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $4 | 0, 4);
+  __gcry_log_fatal(50172, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17645 * 4 | 0, 1 | 0, 4);
+ $5 = SAFE_HEAP_LOAD(17646 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == (0 | 0);
+ if (!$6) {
+  _do_fast_random_poll();
+ }
+ SAFE_HEAP_STORE(17645 * 4 | 0, 0 | 0, 4);
+ $7 = _gpgrt_lock_unlock(12596) | 0;
+ $8 = ($7 | 0) == 0;
+ if ($8) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $9 = _gpg_strerror($7) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $9 | 0, 4);
+  __gcry_log_fatal(50247, $vararg_buffer1);
+ }
+}
+
+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;
+ SAFE_HEAP_STORE($4 | 0, 52 | 0, 4);
+ $5 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $6 = $5 & 64;
+ $7 = ($6 | 0) == 0;
+ if ($7) {
+  $8 = $0 + 60 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = $3;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $9 | 0, 4);
+  $vararg_ptr1 = $vararg_buffer + 4 | 0;
+  SAFE_HEAP_STORE($vararg_ptr1 | 0, 21523 | 0, 4);
+  $vararg_ptr2 = $vararg_buffer + 8 | 0;
+  SAFE_HEAP_STORE($vararg_ptr2 | 0, $10 | 0, 4);
+  $11 = ___syscall54(54, $vararg_buffer | 0) | 0;
+  $12 = ($11 | 0) == 0;
+  if (!$12) {
+   $13 = $0 + 75 | 0;
+   SAFE_HEAP_STORE($13 >> 0 | 0, -1 | 0, 1);
+  }
+ }
+ $14 = ___stdio_write($0, $1, $2) | 0;
+ STACKTOP = sp;
+ return $14 | 0;
+}
+
+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;
+ SAFE_HEAP_STORE($2 | 0, 1779033703 | 0, 4);
+ $3 = $0 + 164 | 0;
+ SAFE_HEAP_STORE($3 | 0, -1150833019 | 0, 4);
+ $4 = $0 + 168 | 0;
+ SAFE_HEAP_STORE($4 | 0, 1013904242 | 0, 4);
+ $5 = $0 + 172 | 0;
+ SAFE_HEAP_STORE($5 | 0, -1521486534 | 0, 4);
+ $6 = $0 + 176 | 0;
+ SAFE_HEAP_STORE($6 | 0, 1359893119 | 0, 4);
+ $7 = $0 + 180 | 0;
+ SAFE_HEAP_STORE($7 | 0, -1694144372 | 0, 4);
+ $8 = $0 + 184 | 0;
+ SAFE_HEAP_STORE($8 | 0, 528734635 | 0, 4);
+ $9 = $0 + 188 | 0;
+ SAFE_HEAP_STORE($9 | 0, 1541459225 | 0, 4);
+ $10 = $0 + 128 | 0;
+ $11 = $0 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($10 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($11 | 0, 64 | 0, 4);
+ $12 = $0 + 152 | 0;
+ SAFE_HEAP_STORE($12 | 0, 75 | 0, 4);
+ 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $7 = $6 << $5;
+ $8 = ($2 | 0) > 1;
+ if ($8) {
+  $$03435 = $6;
+  $$036 = 1;
+  while (1) {
+   $9 = $1 + ($$036 << 2) | 0;
+   $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+   $11 = $$03435 >>> $3;
+   $12 = $10 << $5;
+   $13 = $12 | $11;
+   $14 = $4 + ($$036 << 2) | 0;
+   SAFE_HEAP_STORE($14 | 0, $13 | 0, 4);
+   $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;
+ SAFE_HEAP_STORE($17 | 0, $16 | 0, 4);
+ return $7 | 0;
+}
+
+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;
+ SAFE_HEAP_STORE($2 | 0, -1056596264 | 0, 4);
+ $3 = $0 + 164 | 0;
+ SAFE_HEAP_STORE($3 | 0, 914150663 | 0, 4);
+ $4 = $0 + 168 | 0;
+ SAFE_HEAP_STORE($4 | 0, 812702999 | 0, 4);
+ $5 = $0 + 172 | 0;
+ SAFE_HEAP_STORE($5 | 0, -150054599 | 0, 4);
+ $6 = $0 + 176 | 0;
+ SAFE_HEAP_STORE($6 | 0, -4191439 | 0, 4);
+ $7 = $0 + 180 | 0;
+ SAFE_HEAP_STORE($7 | 0, 1750603025 | 0, 4);
+ $8 = $0 + 184 | 0;
+ SAFE_HEAP_STORE($8 | 0, 1694076839 | 0, 4);
+ $9 = $0 + 188 | 0;
+ SAFE_HEAP_STORE($9 | 0, -1090891868 | 0, 4);
+ $10 = $0 + 128 | 0;
+ $11 = $0 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($10 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($10 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($11 | 0, 64 | 0, 4);
+ $12 = $0 + 152 | 0;
+ SAFE_HEAP_STORE($12 | 0, 75 | 0, 4);
+ return;
+}
+
+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 + 4 | 0;
+ $3 = sp;
+ SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+ $4 = __gcry_sexp_find_token($0, 37519, 0) | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if ($5) {
+  SAFE_HEAP_STORE($1 | 0, 65537 | 0, 4);
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $6 = __gcry_sexp_nth_data($4, 1, $3) | 0;
+ $7 = ($6 | 0) == (0 | 0);
+ $8 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($10 >> 0 | 0, 0 | 0, 1);
+  $11 = _strtoul($2, 0, 0) | 0;
+  SAFE_HEAP_STORE($1 | 0, $11 | 0, 4);
+  __gcry_sexp_release($4);
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+function _GNUNET_error_type_to_string($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, $3 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0;
+ var $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $2 = $0;
+ $3 = $2;
+ $4 = $3 & 1;
+ $5 = ($4 | 0) > 0;
+ do {
+  if ($5) {
+   $1 = 19173;
+  } else {
+   $6 = $2;
+   $7 = $6 & 2;
+   $8 = ($7 | 0) > 0;
+   if ($8) {
+    $1 = 19179;
+    break;
+   }
+   $9 = $2;
+   $10 = $9 & 4;
+   $11 = ($10 | 0) > 0;
+   if ($11) {
+    $1 = 19187;
+    break;
+   }
+   $12 = $2;
+   $13 = $12 & 8;
+   $14 = ($13 | 0) > 0;
+   if ($14) {
+    $1 = 19195;
+    break;
+   }
+   $15 = $2;
+   $16 = $15 & 16;
+   $17 = ($16 | 0) > 0;
+   if ($17) {
+    $1 = 19200;
+    break;
+   }
+   $18 = $2;
+   $19 = $18 & -65;
+   $20 = ($19 | 0) == 0;
+   if ($20) {
+    $1 = 19206;
+    break;
+   } else {
+    $1 = 19211;
+    break;
+   }
+  }
+ } while (0);
+ $21 = $1;
+ STACKTOP = sp;
+ return $21 | 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 = SAFE_HEAP_LOAD(17594 * 4 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($5 >> 0 | 0, $7 | 0, 1);
+ $8 = $0 >>> 8;
+ $9 = $8 & 255;
+ $10 = $5 + 1 | 0;
+ SAFE_HEAP_STORE($10 >> 0 | 0, $9 | 0, 1);
+ $11 = $0 >>> 16;
+ $12 = $11 & 255;
+ $13 = $5 + 2 | 0;
+ SAFE_HEAP_STORE($13 >> 0 | 0, $12 | 0, 1);
+ $14 = $5 + 3 | 0;
+ SAFE_HEAP_STORE($14 >> 0 | 0, -52 | 0, 1);
+ $15 = $0 + 4 | 0;
+ $16 = $5 + $15 | 0;
+ SAFE_HEAP_STORE($16 >> 0 | 0, -86 | 0, 1);
+ $17 = $5 + 4 | 0;
+ $$1 = $17;
+ return $$1 | 0;
+}
+
+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) {
+  SAFE_HEAP_STORE($2 | 0, $0 | 0, 4);
+ } else {
+  $4 = __gcry_mpi_copy($0) | 0;
+  SAFE_HEAP_STORE($2 | 0, $4 | 0, 4);
+  $5 = $2 + 4 | 0;
+  SAFE_HEAP_STORE($5 | 0, 1 | 0, 4);
+ }
+ $6 = $0 + 4 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = $2 + 8 | 0;
+ SAFE_HEAP_STORE($8 | 0, $7 | 0, 4);
+ $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;
+ SAFE_HEAP_STORE($12 | 0, $10 | 0, 4);
+ $13 = $11 | 1;
+ $14 = __gcry_mpi_alloc($13) | 0;
+ $15 = $2 + 16 | 0;
+ SAFE_HEAP_STORE($15 | 0, $14 | 0, 4);
+ $16 = __gcry_mpi_alloc($13) | 0;
+ $17 = $2 + 20 | 0;
+ SAFE_HEAP_STORE($17 | 0, $16 | 0, 4);
+ return $2 | 0;
+}
+
+function __gcry_ctx_alloc($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $cond = 
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) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+  __gcry_log_bug(23929, $vararg_buffer);
+ }
+ $3 = $1 >>> 0 < 8;
+ $$ = $3 ? 8 : $1;
+ $4 = $$ + 8 | 0;
+ $5 = __gcry_calloc(1, $4) | 0;
+ $6 = ($5 | 0) == (0 | 0);
+ if ($6) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ {}
+ SAFE_HEAP_STORE($5 >> 0 | 0, SAFE_HEAP_LOAD(23975 >> 0 | 0, 1, 0) | 0 | 0 | 
0, 1);
+ SAFE_HEAP_STORE($5 + 1 >> 0 | 0, SAFE_HEAP_LOAD(23975 + 1 >> 0 | 0, 1, 0) | 0 
| 0 | 0, 1);
+ SAFE_HEAP_STORE($5 + 2 >> 0 | 0, SAFE_HEAP_LOAD(23975 + 2 >> 0 | 0, 1, 0) | 0 
| 0 | 0, 1);
+ $7 = $5 + 3 | 0;
+ SAFE_HEAP_STORE($7 >> 0 | 0, 1 | 0, 1);
+ $8 = $5 + 4 | 0;
+ SAFE_HEAP_STORE($8 | 0, $2 | 0, 4);
+ $$0 = $5;
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 1;
+ if ($1) {
+  $$0 = 1;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $2 = _gpgrt_lock_lock(1312) | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  $4 = _gpg_strerror($2) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $4 | 0, 4);
+  __gcry_log_info(23505, $vararg_buffer);
+  _abort();
+ }
+ $5 = SAFE_HEAP_LOAD(17609 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == 3;
+ $7 = $6 & 1;
+ $8 = _gpgrt_lock_unlock(1312) | 0;
+ $9 = ($8 | 0) == 0;
+ if ($9) {
+  $$0 = $7;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  $10 = _gpg_strerror($8) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $10 | 0, 4);
+  __gcry_log_info(23560, $vararg_buffer1);
+  _abort();
+ }
+ return 0 | 0;
+}
+
+function _run_selftests_1302($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, 42568, 3, 42031, 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, 42234, 56, 42052, 20) | 0;
+  $7 = ($6 | 0) == (0 | 0);
+  if ($7) {
+   $8 = __gcry_hash_selftest_check_one(2, 1, 0, 0, 42073, 20) | 0;
+   $9 = ($8 | 0) == (0 | 0);
+   if ($9) {
+    $$0 = 0;
+    return $$0 | 0;
+   } else {
+    $$0$i = $8;
+    $$011$i = 42857;
+   }
+  } else {
+   $$0$i = $6;
+   $$011$i = 42845;
+  }
+ } else {
+  $$0$i = $3;
+  $$011$i = 42832;
+ }
+ $10 = ($2 | 0) == (0 | 0);
+ if ($10) {
+  $$0 = 50;
+  return $$0 | 0;
+ }
+ FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63](42873, 2, 
$$011$i, $$0$i);
+ $$0 = 50;
+ 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, 23975, 3) | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+  __gcry_log_fatal(24084, $vararg_buffer);
+ }
+ $4 = $0 + 3 | 0;
+ $5 = SAFE_HEAP_LOAD($4 >> 0 | 0, 1, 0) | 0 | 0;
+ $cond = $5 << 24 >> 24 == 1;
+ if (!$cond) {
+  $6 = $5 << 24 >> 24;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $6 | 0, 4);
+  __gcry_log_fatal(24126, $vararg_buffer1);
+ }
+ $7 = $0 + 4 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = ($8 | 0) == (0 | 0);
+ if (!$9) {
+  $10 = $0 + 8 | 0;
+  FUNCTION_TABLE_vi[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($10);
+ }
+ __gcry_free($0);
+ STACKTOP = sp;
+ return;
+}
+
+function ___remdi3($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, $1$0 = 0, $1$1 = 0, $2$0 = 0, $2$1 = 0, $4$0 = 0, $4$1 = 0, 
$6$0 = 0, $10$0 = 0, $10$1 = 0, __stackBase__ = 0;
+ __stackBase__ = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ $rem = __stackBase__ | 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;
+ ___udivmoddi4($4$0, $4$1, $6$0, tempRet0, $rem) | 0;
+ $10$0 = _i64Subtract((SAFE_HEAP_LOAD($rem | 0, 4, 0) | 0) ^ $1$0 | 0, 
(SAFE_HEAP_LOAD($rem + 4 | 0, 4, 0) | 0) ^ $1$1 | 0, $1$0 | 0, $1$1 | 0) | 0;
+ $10$1 = tempRet0;
+ STACKTOP = __stackBase__;
+ return (tempRet0 = $10$1, $10$0) | 0;
+}
+
+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 = SAFE_HEAP_LOAD(17594 * 4 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($5 >> 0 | 0, $7 | 0, 1);
+ $8 = $0 >>> 8;
+ $9 = $8 & 255;
+ $10 = $5 + 1 | 0;
+ SAFE_HEAP_STORE($10 >> 0 | 0, $9 | 0, 1);
+ $11 = $0 >>> 16;
+ $12 = $11 & 255;
+ $13 = $5 + 2 | 0;
+ SAFE_HEAP_STORE($13 >> 0 | 0, $12 | 0, 1);
+ $14 = $5 + 3 | 0;
+ SAFE_HEAP_STORE($14 >> 0 | 0, 85 | 0, 1);
+ $15 = $0 + 4 | 0;
+ $16 = $5 + $15 | 0;
+ SAFE_HEAP_STORE($16 >> 0 | 0, -86 | 0, 1);
+ $17 = $5 + 4 | 0;
+ $$1 = $17;
+ return $$1 | 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 + 4 | 0;
+ $3 = sp;
+ SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+ $4 = __gcry_sexp_find_token($0, 37513, 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($10 >> 0 | 0, 0 | 0, 1);
+  $11 = _strtoul($2, 0, 0) | 0;
+  SAFE_HEAP_STORE($1 | 0, $11 | 0, 4);
+  __gcry_sexp_release($4);
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ return 0 | 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 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $3 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 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 = SAFE_HEAP_LOAD($6 >> 0 | 0, 1, 0) | 0 | 0;
+   $9 = SAFE_HEAP_LOAD($7 >> 0 | 0, 1, 0) | 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 __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 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 1;
+ if ($1) {
+  $$0 = 0;
+  STACKTOP = sp;
+  return $$0 | 0;
+ }
+ $2 = _gpgrt_lock_lock(1312) | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  $4 = _gpg_strerror($2) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $4 | 0, 4);
+  __gcry_log_info(23505, $vararg_buffer);
+  _abort();
+ }
+ $5 = SAFE_HEAP_LOAD(17610 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = _gpgrt_lock_unlock(1312) | 0;
+ $7 = ($6 | 0) == 0;
+ if ($7) {
+  $$0 = $5;
+  STACKTOP = sp;
+  return $$0 | 0;
+ } else {
+  $8 = _gpg_strerror($6) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $8 | 0, 4);
+  __gcry_log_info(23560, $vararg_buffer1);
+  _abort();
+ }
+ return 0 | 0;
+}
+
+function __gcry_xmalloc_secure($0) {
+ $0 = $0 | 0;
+ var $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, $or$cond = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ while (1) {
+  $1 = __gcry_malloc_secure($0) | 0;
+  $2 = ($1 | 0) == (0 | 0);
+  if (!$2) {
+   label = 6;
+   break;
+  }
+  $3 = __gcry_fips_mode() | 0;
+  $4 = ($3 | 0) == 0;
+  $5 = SAFE_HEAP_LOAD(17591 * 4 | 0, 4, 0) | 0 | 0;
+  $6 = ($5 | 0) != (0 | 0);
+  $or$cond = $4 & $6;
+  if (!$or$cond) {
+   label = 5;
+   break;
+  }
+  $7 = SAFE_HEAP_LOAD(17592 * 4 | 0, 4, 0) | 0 | 0;
+  $8 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($5 | 0, 127 | 0) | 0) & 127]($7, $0, 
1) | 0;
+  $9 = ($8 | 0) == 0;
+  if ($9) {
+   label = 5;
+   break;
+  }
+ }
+ if ((label | 0) == 5) {
+  $10 = ___errno_location() | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $12 = _gpg_err_code_from_errno($11) | 0;
+  $13 = __gcry_gettext(22449) | 0;
+  __gcry_fatal_error($12, $13);
+ } else if ((label | 0) == 6) {
+  return $1 | 0;
+ }
+ return 0 | 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 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 0;
+ if (!$1) {
+  return;
+ }
+ SAFE_HEAP_STORE(17581 * 4 | 0, 1 | 0, 4);
+ __gcry_set_preferred_rng_type(0);
+ $2 = SAFE_HEAP_LOAD(17582 * 4 | 0, 4, 0) | 0 | 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(22203, 123, 22212);
+}
+
+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 = SAFE_HEAP_LOAD(1088 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == ($0 | 0);
+ if ($2) {
+  $$ph = 4352;
+ } else {
+  $3 = SAFE_HEAP_LOAD(1806 * 4 | 0, 4, 0) | 0 | 0;
+  $4 = ($3 | 0) == ($0 | 0);
+  if ($4) {
+   $$ph = 7224;
+  } else {
+   $5 = SAFE_HEAP_LOAD(1835 * 4 | 0, 4, 0) | 0 | 0;
+   $6 = ($5 | 0) == ($0 | 0);
+   if ($6) {
+    $$ph = 7340;
+   } else {
+    $7 = SAFE_HEAP_LOAD(1987 * 4 | 0, 4, 0) | 0 | 0;
+    $8 = ($7 | 0) == ($0 | 0);
+    if ($8) {
+     $$ph = 7948;
+    } else {
+     $9 = SAFE_HEAP_LOAD(3027 * 4 | 0, 4, 0) | 0 | 0;
+     $10 = ($9 | 0) == ($0 | 0);
+     if ($10) {
+      $$ph = 12108;
+     } else {
+      $13 = 37665;
+      return $13 | 0;
+     }
+    }
+   }
+  }
+ }
+ $11 = $$ph + 8 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = $12;
+ return $13 | 0;
+}
+
+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(12644) | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  $4 = _gpg_strerror($2) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $4 | 0, 4);
+  __gcry_log_fatal(51001, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17672 * 4 | 0, 1 | 0, 4);
+ $5 = SAFE_HEAP_LOAD(17674 * 4 | 0, 4, 0) | 0 | 0;
+ _get_random($0, $1, $5);
+ SAFE_HEAP_STORE(17672 * 4 | 0, 0 | 0, 4);
+ $6 = _gpgrt_lock_unlock(12644) | 0;
+ $7 = ($6 | 0) == 0;
+ if ($7) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $8 = _gpg_strerror($6) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $8 | 0, 4);
+  __gcry_log_fatal(51213, $vararg_buffer1);
+ }
+}
+
+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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = $5 + ($$0 << 2) | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($19 | 0, $15 | 0, 4);
+  $20 = $$0 + 1 | 0;
+  $21 = ($20 | 0) == 0;
+  if ($21) {
+   break;
+  } else {
+   $$0 = $20;
+   $$031 = $18;
+  }
+ }
+ return $18 | 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = $5 + ($$0 << 2) | 0;
+  $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 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;
+  SAFE_HEAP_STORE($19 | 0, $15 | 0, 4);
+  $20 = $$0 + 1 | 0;
+  $21 = ($20 | 0) == 0;
+  if ($21) {
+   break;
+  } else {
+   $$0 = $20;
+   $$031 = $18;
+  }
+ }
+ return $18 | 0;
+}
+
+function _GNUNET_ntohll($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, $3 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0;
+ var $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $2 = sp;
+ $3 = $2;
+ $4 = $3;
+ SAFE_HEAP_STORE($4 | 0, $0 | 0, 4);
+ $5 = $3 + 4 | 0;
+ $6 = $5;
+ SAFE_HEAP_STORE($6 | 0, $1 | 0, 4);
+ $7 = $2;
+ $8 = $7;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = $7 + 4 | 0;
+ $11 = $10;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = _ntohl($9) | 0;
+ $14 = $2;
+ $15 = $14;
+ $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $17 = $14 + 4 | 0;
+ $18 = $17;
+ $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+ $20 = _ntohl($19) | 0;
+ $21 = _i64Add(0, $13 | 0, $20 | 0, 0) | 0;
+ $22 = tempRet0;
+ tempRet0 = $22;
+ STACKTOP = sp;
+ return $21 | 0;
+}
+
+function _GNUNET_htonll($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, $3 = 0, $4 = 0, $5 = 0, $6 
= 0, $7 = 0, $8 = 0;
+ var $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $2 = sp;
+ $3 = $2;
+ $4 = $3;
+ SAFE_HEAP_STORE($4 | 0, $0 | 0, 4);
+ $5 = $3 + 4 | 0;
+ $6 = $5;
+ SAFE_HEAP_STORE($6 | 0, $1 | 0, 4);
+ $7 = $2;
+ $8 = $7;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = $7 + 4 | 0;
+ $11 = $10;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = _htonl($9) | 0;
+ $14 = $2;
+ $15 = $14;
+ $16 = SAFE_HEAP_LOAD($15 | 0, 4, 0) | 0 | 0;
+ $17 = $14 + 4 | 0;
+ $18 = $17;
+ $19 = SAFE_HEAP_LOAD($18 | 0, 4, 0) | 0 | 0;
+ $20 = _htonl($19) | 0;
+ $21 = _i64Add(0, $13 | 0, $20 | 0, 0) | 0;
+ $22 = tempRet0;
+ tempRet0 = $22;
+ STACKTOP = sp;
+ return $21 | 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;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $5 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $6 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $7 | 0, 4);
+ $vararg_ptr4 = $vararg_buffer + 16 | 0;
+ SAFE_HEAP_STORE($vararg_ptr4 | 0, $8 | 0, 4);
+ $9 = ___syscall142(142, $vararg_buffer | 0) | 0;
+ $10 = ___syscall_ret($9) | 0;
+ STACKTOP = sp;
+ return $10 | 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $$idx$val$idx = $$idx$val + 16 | 0;
+ $$idx$val$idx$val = SAFE_HEAP_LOAD($$idx$val$idx | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == (0 | 0);
+ if (!$4) {
+  __gcry_fips_signal_error(36953, 980, 36967, 0, 36979);
+  __gcry_log_error(37e3, $vararg_buffer);
+ }
+ $5 = SAFE_HEAP_LOAD($$idx$val$idx$val | 0, 4, 0) | 0 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $6;
+ STACKTOP = sp;
+ return $7 | 0;
+}
+
+function _GNUNET_log_from_nocheck($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, $14 = 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 + 176 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(176 | 0);
+ $vararg_buffer = sp;
+ $6 = sp + 8 | 0;
+ $7 = sp + 40 | 0;
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $8 = $4;
+ $9 = ($8 | 0) == (0 | 0);
+ if ($9) {
+  $10 = SAFE_HEAP_LOAD(17563 * 4 | 0, 4, 0) | 0 | 0;
+  $4 = $10;
+ }
+ SAFE_HEAP_STORE($6 | 0, $varargs | 0, 4);
+ $11 = $4;
+ $12 = _getpid() | 0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $11 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $12 | 0, 4);
+ _GNUNET_snprintf($7, 128, 19107, $vararg_buffer) | 0;
+ $13 = $3;
+ $14 = $5;
+ _mylog($13, $7, $14, $6);
+ STACKTOP = sp;
+ 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(1268) | 0;
+ $0 = SAFE_HEAP_LOAD(17600 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 0;
+ if ($1) {
+  _gpgrt_lock_unlock(1268) | 0;
+  STACKTOP = sp;
+  return;
+ }
+ $2 = SAFE_HEAP_LOAD(17604 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = SAFE_HEAP_LOAD(17605 * 4 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $3 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $4 | 0, 4);
+ __gcry_log_info(23231, $vararg_buffer);
+ _gpgrt_lock_unlock(1268) | 0;
+ STACKTOP = sp;
+ 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+  $4 = $3 & 4;
+  $5 = ($4 | 0) == 0;
+  if (!$5) {
+   return;
+  }
+ }
+ $6 = $0 + 4 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == 0;
+ if ($8) {
+  return;
+ }
+ $9 = $0 + 16 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $12 = $7;
+ while (1) {
+  $11 = $12 + -1 | 0;
+  $13 = $10 + ($11 << 2) | 0;
+  $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+  $15 = ($14 | 0) == 0;
+  if (!$15) {
+   label = 7;
+   break;
+  }
+  SAFE_HEAP_STORE($6 | 0, $11 | 0, 4);
+  $16 = ($11 | 0) == 0;
+  if ($16) {
+   label = 7;
+   break;
+  } else {
+   $12 = $11;
+  }
+ }
+ if ((label | 0) == 7) {
+  return;
+ }
+}
+
+function __gcry_mpi_fdiv_r_ui($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$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, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $1 + 16 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $1 + 4 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+  $12 = ($11 | 0) == 0;
+  $$ = $12 ? $7 : $9;
+  $$0 = $$;
+ }
+ $13 = ($0 | 0) == (0 | 0);
+ if ($13) {
+  return $$0 | 0;
+ }
+ $14 = $0 + 16 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($15 | 0, $$0 | 0, 4);
+ $16 = ($$0 | 0) != 0;
+ $17 = $16 & 1;
+ $18 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($18 | 0, $17 | 0, 4);
+ return $$0 | 0;
+}
+
+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(12596) | 0;
+ $1 = ($0 | 0) == 0;
+ if (!$1) {
+  $2 = _gpg_strerror($0) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+  __gcry_log_fatal(50172, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17645 * 4 | 0, 1 | 0, 4);
+ __gcry_rndlinux_gather_random(0, 0, 0, 0) | 0;
+ SAFE_HEAP_STORE(17650 * 4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(17645 * 4 | 0, 0 | 0, 4);
+ $3 = _gpgrt_lock_unlock(12596) | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $5 = _gpg_strerror($3) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $5 | 0, 4);
+  __gcry_log_fatal(50247, $vararg_buffer1);
+ }
+}
+
+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;
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $5 = _spec_from_sexp($2, 0, $3, $4) | 0;
+ $6 = ($5 | 0) == 0;
+ if ($6) {
+  $7 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $8 = $7 + 48 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = ($9 | 0) == (0 | 0);
+  if ($10) {
+   $$0 = 69;
+  } else {
+   $11 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $12 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($9 | 0, 127 | 0) | 0) & 127]($0, 
$1, $11) | 0;
+   $$0 = $12;
+  }
+ } else {
+  $$0 = $5;
+ }
+ $13 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_sexp_release($13);
+ STACKTOP = sp;
+ 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;
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $5 = _spec_from_sexp($2, 1, $3, $4) | 0;
+ $6 = ($5 | 0) == 0;
+ if ($6) {
+  $7 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $8 = $7 + 52 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = ($9 | 0) == (0 | 0);
+  if ($10) {
+   $$0 = 69;
+  } else {
+   $11 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $12 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($9 | 0, 127 | 0) | 0) & 127]($0, 
$1, $11) | 0;
+   $$0 = $12;
+  }
+ } else {
+  $$0 = $5;
+ }
+ $13 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 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;
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $5 = _spec_from_sexp($2, 1, $3, $4) | 0;
+ $6 = ($5 | 0) == 0;
+ if ($6) {
+  $7 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $8 = $7 + 56 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = ($9 | 0) == (0 | 0);
+  if ($10) {
+   $$0 = 69;
+  } else {
+   $11 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $12 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($9 | 0, 127 | 0) | 0) & 127]($0, 
$1, $11) | 0;
+   $$0 = $12;
+  }
+ } else {
+  $$0 = $5;
+ }
+ $13 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_sexp_release($13);
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function ___unlist_locked_file($0) {
+ $0 = $0 | 0;
+ var $$pre = 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ do {
+  if (!$3) {
+   $4 = $0 + 116 | 0;
+   $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $6 = ($5 | 0) == (0 | 0);
+   $7 = $5;
+   $$pre = $0 + 112 | 0;
+   if (!$6) {
+    $8 = SAFE_HEAP_LOAD($$pre | 0, 4, 0) | 0 | 0;
+    $9 = $5 + 112 | 0;
+    SAFE_HEAP_STORE($9 | 0, $8 | 0, 4);
+   }
+   $10 = SAFE_HEAP_LOAD($$pre | 0, 4, 0) | 0 | 0;
+   $11 = ($10 | 0) == (0 | 0);
+   if ($11) {
+    $13 = _pthread_self() | 0;
+    $14 = $13 + 232 | 0;
+    SAFE_HEAP_STORE($14 | 0, $7 | 0, 4);
+    break;
+   } else {
+    $12 = $10 + 116 | 0;
+    SAFE_HEAP_STORE($12 | 0, $7 | 0, 4);
+    break;
+   }
+  }
+ } while (0);
+ return;
+}
+
+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 $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, $8 = 0, $9 = 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 64 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(64 | 0);
+ $16 = sp + 8 | 0;
+ $8 = $0;
+ $9 = $1;
+ $10 = $2;
+ $11 = $3;
+ $12 = $4;
+ $13 = $5;
+ $14 = $6;
+ $15 = $7;
+ SAFE_HEAP_STORE($16 | 0, $varargs | 0, 4);
+ $18 = $8;
+ $19 = $9;
+ $20 = $10;
+ $21 = $11;
+ $22 = $12;
+ $23 = $13;
+ $24 = $14;
+ $25 = $15;
+ $26 = _GNUNET_CRYPTO_hkdf_v($18, $19, $20, $21, $22, $23, $24, $25, $16) | 0;
+ $17 = $26;
+ $27 = $17;
+ STACKTOP = sp;
+ return $27 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($$01318 >> 0 | 0, 1, 0) | 0 | 0;
+    $5 = SAFE_HEAP_LOAD($$019 >> 0 | 0, 1, 0) | 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 __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, label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_mpi_normalize($0);
+ $2 = $0 + 4 | 0;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = ($8 | 0) == 0;
+ if (!$9) {
+  $$0 = -1;
+  return $$0 | 0;
+ }
+ $10 = ($3 | 0) == 1;
+ if (!$10) {
+  $$0 = 1;
+  return $$0 | 0;
+ }
+ $11 = $0 + 16 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 0;
+ $14 = $13 >>> 0 > $1 >>> 0;
+ if ($14) {
+  $$0 = 1;
+  return $$0 | 0;
+ }
+ $15 = $13 >>> 0 < $1 >>> 0;
+ $$ = $15 << 31 >> 31;
+ $$0 = $$;
+ return $$0 | 0;
+}
+
+function ___fmodeflags($0) {
+ $0 = $0 | 0;
+ var $$ = 0, $$$4 = 0, $$0 = 0, $$0$ = 0, $$2 = 0, $$2$ = 0, $$4 = 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;
+ var $8 = 0, $9 = 0, $not$ = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = _strchr($0, 43) | 0;
+ $2 = ($1 | 0) == (0 | 0);
+ $3 = SAFE_HEAP_LOAD($0 >> 0 | 0, 1, 0) | 0 | 0;
+ $not$ = $3 << 24 >> 24 != 114;
+ $$ = $not$ & 1;
+ $$0 = $2 ? $$ : 2;
+ $4 = _strchr($0, 120) | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ $6 = $$0 | 128;
+ $$0$ = $5 ? $$0 : $6;
+ $7 = _strchr($0, 101) | 0;
+ $8 = ($7 | 0) == (0 | 0);
+ $9 = $$0$ | 524288;
+ $$2 = $8 ? $$0$ : $9;
+ $10 = $3 << 24 >> 24 == 114;
+ $11 = $$2 | 64;
+ $$2$ = $10 ? $$2 : $11;
+ $12 = $3 << 24 >> 24 == 119;
+ $13 = $$2$ | 512;
+ $$4 = $12 ? $13 : $$2$;
+ $14 = $3 << 24 >> 24 == 97;
+ $15 = $$4 | 1024;
+ $$$4 = $14 ? $15 : $$4;
+ return $$$4 | 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;
+ SAFE_HEAP_STORE($4 | 0, $1 | 0, 4);
+ $5 = $4 + 4 | 0;
+ SAFE_HEAP_STORE($5 | 0, $2 | 0, 4);
+ $6 = $4 + 8 | 0;
+ SAFE_HEAP_STORE($6 | 0, $3 | 0, 4);
+ $7 = $4 + 12 | 0;
+ SAFE_HEAP_STORE($7 | 0, $0 | 0, 4);
+ $8 = $4 + 16 | 0;
+ SAFE_HEAP_STORE($8 | 0, -1 | 0, 4);
+ ___synccall(86, $4);
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == 0;
+ if ($10) {
+  $$0 = 0;
+ } else {
+  $11 = ($9 | 0) > 0;
+  if ($11) {
+   $12 = ___errno_location() | 0;
+   SAFE_HEAP_STORE($12 | 0, $9 | 0, 4);
+   $$0 = -1;
+  } else {
+   $$0 = -1;
+  }
+ }
+ 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $8 = $7 + 60 | 0;
+  $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+  $10 = ($9 | 0) == (0 | 0);
+  if ($10) {
+   $$0 = 69;
+  } else {
+   $11 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $12 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($9 | 0, 127 | 0) | 0) & 127]($0, 
$1, $11) | 0;
+   $$0 = $12;
+  }
+ } else {
+  $$0 = $5;
+ }
+ $13 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_sexp_release($13);
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+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(12688) | 0;
+ $1 = ($0 | 0) == 0;
+ if (!$1) {
+  $2 = _gpg_strerror($0) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+  __gcry_log_fatal(52234, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17685 * 4 | 0, 1 | 0, 4);
+ __gcry_rndlinux_gather_random(0, 0, 0, 0) | 0;
+ SAFE_HEAP_STORE(17685 * 4 | 0, 0 | 0, 4);
+ $3 = _gpgrt_lock_unlock(12688) | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $5 = _gpg_strerror($3) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $5 | 0, 4);
+  __gcry_log_fatal(52277, $vararg_buffer1);
+ }
+}
+
+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(12644) | 0;
+ $1 = ($0 | 0) == 0;
+ if (!$1) {
+  $2 = _gpg_strerror($0) | 0;
+  SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+  __gcry_log_fatal(51001, $vararg_buffer);
+ }
+ SAFE_HEAP_STORE(17672 * 4 | 0, 1 | 0, 4);
+ __gcry_rndlinux_gather_random(0, 0, 0, 0) | 0;
+ SAFE_HEAP_STORE(17672 * 4 | 0, 0 | 0, 4);
+ $3 = _gpgrt_lock_unlock(12644) | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  STACKTOP = sp;
+  return;
+ } else {
+  $5 = _gpg_strerror($3) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, $5 | 0, 4);
+  __gcry_log_fatal(51213, $vararg_buffer1);
+ }
+}
+
+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 __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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($1 | 0, $3 | 0, 4);
+ $4 = $0 + 164 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $1 + 4 | 0;
+ SAFE_HEAP_STORE($6 | 0, $5 | 0, 4);
+ $7 = $0 + 168 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $1 + 8 | 0;
+ SAFE_HEAP_STORE($9 | 0, $8 | 0, 4);
+ $10 = $0 + 172 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $1 + 12 | 0;
+ SAFE_HEAP_STORE($12 | 0, $11 | 0, 4);
+ $13 = $0 + 176 | 0;
+ $14 = SAFE_HEAP_LOAD($13 | 0, 4, 0) | 0 | 0;
+ $15 = $1 + 16 | 0;
+ SAFE_HEAP_STORE($15 | 0, $14 | 0, 4);
+ 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;
+ SAFE_HEAP_STORE($2 | 0, 1732584193 | 0, 4);
+ $3 = $0 + 164 | 0;
+ SAFE_HEAP_STORE($3 | 0, -271733879 | 0, 4);
+ $4 = $0 + 168 | 0;
+ SAFE_HEAP_STORE($4 | 0, -1732584194 | 0, 4);
+ $5 = $0 + 172 | 0;
+ SAFE_HEAP_STORE($5 | 0, 271733878 | 0, 4);
+ $6 = $0 + 176 | 0;
+ SAFE_HEAP_STORE($6 | 0, -1009589776 | 0, 4);
+ $7 = $0 + 128 | 0;
+ $8 = $0 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($7 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($8 | 0, 64 | 0, 4);
+ $9 = $0 + 152 | 0;
+ SAFE_HEAP_STORE($9 | 0, 72 | 0, 4);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 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 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) != 0;
+ $11 = $7 ^ $10;
+ if ($11) {
+  $12 = $0 + 4 | 0;
+  $13 = SAFE_HEAP_LOAD($12 | 0, 4, 0) | 0 | 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 _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;
+ SAFE_HEAP_STORE($2 | 0, 1732584193 | 0, 4);
+ $3 = $0 + 164 | 0;
+ SAFE_HEAP_STORE($3 | 0, -271733879 | 0, 4);
+ $4 = $0 + 168 | 0;
+ SAFE_HEAP_STORE($4 | 0, -1732584194 | 0, 4);
+ $5 = $0 + 172 | 0;
+ SAFE_HEAP_STORE($5 | 0, 271733878 | 0, 4);
+ $6 = $0 + 176 | 0;
+ SAFE_HEAP_STORE($6 | 0, -1009589776 | 0, 4);
+ $7 = $0 + 128 | 0;
+ $8 = $0 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($7 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($8 | 0, 64 | 0, 4);
+ $9 = $0 + 152 | 0;
+ SAFE_HEAP_STORE($9 | 0, 74 | 0, 4);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($2);
+ SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+ $3 = $0 + 12 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($4);
+ SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ $5 = $0 + 16 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($6);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ $7 = $0 + 20 | 0;
+ __gcry_mpi_point_free_parts($7);
+ $8 = $0 + 32 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($9);
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ $10 = $0 + 36 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($11);
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $5 = $4 & 16;
+  $6 = ($5 | 0) == 0;
+  if (!$6) {
+   __gcry_mpi_immutable_failed();
+   return;
+  }
+ }
+ $7 = $1 >>> 5;
+ $8 = $0 + 4 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = $7 >>> 0 < $9 >>> 0;
+ if (!$10) {
+  return;
+ }
+ $11 = $1 & 31;
+ $12 = 1 << $11;
+ $13 = $12 ^ -1;
+ $14 = $0 + 16 | 0;
+ $15 = SAFE_HEAP_LOAD($14 | 0, 4, 0) | 0 | 0;
+ $16 = $15 + ($7 << 2) | 0;
+ $17 = SAFE_HEAP_LOAD($16 | 0, 4, 0) | 0 | 0;
+ $18 = $17 & $13;
+ SAFE_HEAP_STORE($16 | 0, $18 | 0, 4);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 0;
+ do {
+  if (!$2) {
+   $3 = __gcry_enforced_fips_mode() | 0;
+   $4 = ($3 | 0) == 0;
+   if (!$4) {
+    SAFE_HEAP_STORE(17583 * 4 | 0, 0 | 0, 4);
+    break;
+   }
+   $5 = SAFE_HEAP_LOAD(17583 * 4 | 0, 4, 0) | 0 | 0;
+   $6 = ($5 | 0) == 0;
+   if (!$6) {
+    $$0 = 0;
+    return $$0 | 0;
+   }
+  }
+ } while (0);
+ $7 = SAFE_HEAP_LOAD(17588 * 4 | 0, 4, 0) | 0 | 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[(SAFE_FT_MASK($7 | 0, 63 | 0) | 0) & 63]($0) | 0;
+  $$0 = $9;
+  return $$0 | 0;
+ }
+ return 0 | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($3);
+ $4 = $0 + 16 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($5);
+ $6 = $0 + 20 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($7);
+ $8 = $0 + 24 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == (0 | 0);
+ if (!$10) {
+  __gcry_mpi_free($9);
+ }
+ $11 = $0 + 4 | 0;
+ $12 = SAFE_HEAP_LOAD($11 | 0, 4, 0) | 0 | 0;
+ $13 = ($12 | 0) == 0;
+ if (!$13) {
+  $14 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  __gcry_mpi_free($14);
+ }
+ __gcry_free($0);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   $6 = $5 & 16;
+   $7 = ($6 | 0) == 0;
+   if (!$7) {
+    __gcry_log_info(46049, $vararg_buffer);
+    STACKTOP = sp;
+    return;
+   }
+  }
+ } else {
+  __gcry_mpi_set($0, $1) | 0;
+ }
+ $8 = $1 + 8 | 0;
+ $9 = SAFE_HEAP_LOAD($8 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == 0;
+ $11 = $10 & 1;
+ $12 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($12 | 0, $11 | 0, 4);
+ STACKTOP = sp;
+ return;
+}
+
+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;
+ SAFE_HEAP_STORE($1 | 0, 1732584193 | 0, 4);
+ $2 = $0 + 164 | 0;
+ SAFE_HEAP_STORE($2 | 0, -271733879 | 0, 4);
+ $3 = $0 + 168 | 0;
+ SAFE_HEAP_STORE($3 | 0, -1732584194 | 0, 4);
+ $4 = $0 + 172 | 0;
+ SAFE_HEAP_STORE($4 | 0, 271733878 | 0, 4);
+ $5 = $0 + 176 | 0;
+ SAFE_HEAP_STORE($5 | 0, -1009589776 | 0, 4);
+ $6 = $0 + 128 | 0;
+ $7 = $0 + 148 | 0;
+ {}
+ SAFE_HEAP_STORE($6 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($6 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($6 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($6 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($6 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($7 | 0, 64 | 0, 4);
+ $8 = $0 + 152 | 0;
+ SAFE_HEAP_STORE($8 | 0, 72 | 0, 4);
+ return;
+}
+
+function _iswprint($0) {
+ $0 = $0 | 0;
+ var $$ = 0, $$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, $or$cond = 
0, $or$cond11 = 0, $or$cond9 = 0;
+ var label = 0, 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 > 1048579;
+   $13 = $0 & 65534;
+   $14 = ($13 | 0) == 65534;
+   $or$cond11 = $12 | $14;
+   $15 = $or$cond11 & 1;
+   $$ = $15 ^ 1;
+   return $$ | 0;
+  }
+ }
+ 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  $6 = $5 + 44 | 0;
+  $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $8 = ($7 | 0) == (0 | 0);
+  if ($8) {
+   $$0 = 69;
+  } else {
+   $9 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+   $10 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($7 | 0, 63 | 0) | 0) & 63]($9) | 0;
+   $$0 = $10;
+  }
+ } else {
+  $$0 = $3;
+ }
+ $11 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ __gcry_sexp_release($11);
+ STACKTOP = sp;
+ return $$0 | 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;
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ $6 = $4 + 8 | 0;
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ $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_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 = SAFE_HEAP_LOAD(3118 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($$0$i$i | 0) == ($1 | 0);
+ if ($2) {
+  $$0$i$ph = 12472;
+ } else {
+  $3 = SAFE_HEAP_LOAD(1880 * 4 | 0, 4, 0) | 0 | 0;
+  $4 = ($$0$i$i | 0) == ($3 | 0);
+  if ($4) {
+   $$0$i$ph = 7520;
+  } else {
+   $$0 = 37665;
+   return $$0 | 0;
+  }
+ }
+ $5 = $$0$i$ph + 12 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $$0 = $6;
+ return $$0 | 0;
+}
+
+function __gcry_malloc($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $$0$i = 0, $$pre$i = 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 = SAFE_HEAP_LOAD(17586 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == (0 | 0);
+ if ($2) {
+  $4 = __gcry_private_malloc($0) | 0;
+  $$0$i = $4;
+ } else {
+  $3 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($1 | 0, 63 | 0) | 0) & 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == 0;
+ if ($8) {
+  _gpg_err_set_errno(12);
+  $$pre$i = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+  $9 = $$pre$i;
+ } else {
+  $9 = $7;
+ }
+ _gpg_err_code_from_errno($9) | 0;
+ $$0 = 0;
+ return $$0 | 0;
+}
+
+function _sbrk(increment) {
+ increment = increment | 0;
+ var oldDynamicTop = 0;
+ var oldDynamicTopOnChange = 0;
+ var newDynamicTop = 0;
+ var totalMemory = 0;
+ increment = increment + 15 & -16 | 0;
+ oldDynamicTop = SAFE_HEAP_LOAD(DYNAMICTOP_PTR | 0, 4, 0) | 0 | 0;
+ newDynamicTop = oldDynamicTop + increment | 0;
+ if ((increment | 0) > 0 & (newDynamicTop | 0) < (oldDynamicTop | 0) | 
(newDynamicTop | 0) < 0) {
+  abortOnCannotGrowMemory() | 0;
+  ___setErrNo(12);
+  return -1;
+ }
+ SAFE_HEAP_STORE(DYNAMICTOP_PTR | 0, newDynamicTop | 0, 4);
+ totalMemory = getTotalMemory() | 0;
+ if ((newDynamicTop | 0) > (totalMemory | 0)) {
+  if ((enlargeMemory() | 0) == 0) {
+   ___setErrNo(12);
+   SAFE_HEAP_STORE(DYNAMICTOP_PTR | 0, oldDynamicTop | 0, 4);
+   return -1;
+  }
+ }
+ return oldDynamicTop | 0;
+}
+
+function _fwrite($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$ = 0, $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, label = 0, sp = 0;
+ sp = STACKTOP;
+ $4 = Math_imul($2, $1) | 0;
+ $5 = ($1 | 0) == 0;
+ $$ = $5 ? 0 : $2;
+ $6 = $3 + 76 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) > -1;
+ if ($8) {
+  $10 = ___lockfile($3) | 0;
+  $phitmp = ($10 | 0) == 0;
+  $11 = ___fwritex($0, $4, $3) | 0;
+  if ($phitmp) {
+   $12 = $11;
+  } else {
+   ___unlockfile($3);
+   $12 = $11;
+  }
+ } else {
+  $9 = ___fwritex($0, $4, $3) | 0;
+  $12 = $9;
+ }
+ $13 = ($12 | 0) == ($4 | 0);
+ if ($13) {
+  $15 = $$;
+ } else {
+  $14 = ($12 >>> 0) / ($1 >>> 0) & -1;
+  $15 = $14;
+ }
+ return $15 | 0;
+}
+
+function _ftruncate($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $2 = 0, $3 = 0, $4 = 0, $5 = 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 | 0) < 0;
+ $3 = $2 << 31 >> 31;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, 0 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $1 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $3 | 0, 4);
+ $4 = ___syscall194(194, $vararg_buffer | 0) | 0;
+ $5 = ___syscall_ret($4) | 0;
+ STACKTOP = sp;
+ return $5 | 0;
+}
+
+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 = SAFE_HEAP_LOAD(17577 * 4 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if (!$5) {
+  $6 = __gcry_fips_mode() | 0;
+  $7 = ($6 | 0) == 0;
+  if ($7) {
+   $8 = SAFE_HEAP_LOAD(17577 * 4 | 0, 4, 0) | 0 | 0;
+   $9 = SAFE_HEAP_LOAD(17576 * 4 | 0, 4, 0) | 0 | 0;
+   FUNCTION_TABLE_viii[(SAFE_FT_MASK($8 | 0, 127 | 0) | 0) & 127]($9, $0, $$0);
+  }
+ }
+ __gcry_fips_signal_error(21922, 86, 21929, 1, $$0);
+ _write2stderr(21947);
+ _write2stderr($$0);
+ _write2stderr(22378);
+ __gcry_secmem_term();
+ _abort();
+}
+
+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 = SAFE_HEAP_LOAD(17623 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == 0;
+ if (!$6) {
+  __gcry_rngcsprng_randomize($0, $1, $2);
+  return;
+ }
+ $7 = SAFE_HEAP_LOAD(17624 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == 0;
+ if (!$8) {
+  __gcry_rngfips_randomize($0, $1, $2);
+  return;
+ }
+ $9 = SAFE_HEAP_LOAD(17625 * 4 | 0, 4, 0) | 0 | 0;
+ $10 = ($9 | 0) == 0;
+ if ($10) {
+  __gcry_rngcsprng_randomize($0, $1, $2);
+  return;
+ } else {
+  __gcry_rngsystem_randomize($0, $1, $2);
+  return;
+ }
+}
+
+function _adjust($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, label = 0;
+ var sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $7 = $3;
+ $6 = $7;
+ $8 = $4;
+ $9 = $5;
+ $10 = $8 >>> 0 < $9 >>> 0;
+ if (!$10) {
+  STACKTOP = sp;
+  return;
+ }
+ $11 = $5;
+ $12 = $4;
+ $13 = $11 - $12 | 0;
+ $14 = $6;
+ $15 = $14 + $13 | 0;
+ $16 = $3;
+ $17 = $4;
+ _memmove($15 | 0, $16 | 0, $17 | 0) | 0;
+ $18 = $3;
+ $19 = $5;
+ $20 = $4;
+ $21 = $19 - $20 | 0;
+ _memset($18 | 0, 0, $21 | 0) | 0;
+ STACKTOP = sp;
+ 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;
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $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, 77) | 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);
+  SAFE_HEAP_STORE($0 | 0, $9 | 0, 4);
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ return 0 | 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 $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 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);
+ $12 = sp + 8 | 0;
+ $6 = $0;
+ $7 = $1;
+ $8 = $2;
+ $9 = $3;
+ $10 = $4;
+ $11 = $5;
+ SAFE_HEAP_STORE($12 | 0, $varargs | 0, 4);
+ $14 = $6;
+ $15 = $7;
+ $16 = $8;
+ $17 = $9;
+ $18 = $10;
+ $19 = $11;
+ $20 = _GNUNET_CRYPTO_kdf_v($14, $15, $16, $17, $18, $19, $12) | 0;
+ $13 = $20;
+ $21 = $13;
+ STACKTOP = sp;
+ return $21 | 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;
+ SAFE_HEAP_STORE($0 | 0, $1 | 0, 4);
+ $3 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($3 | 0, $2 | 0, 4);
+ $4 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($4 | 0, 5 | 0, 4);
+ $5 = $0 + 12 | 0;
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ $6 = $0 + 16 | 0;
+ SAFE_HEAP_STORE($6 | 0, 2 | 0, 4);
+ $7 = $0 + 20 | 0;
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ $8 = $0 + 24 | 0;
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ $9 = $0 + 28 | 0;
+ SAFE_HEAP_STORE($9 | 0, 20 | 0, 4);
+ $10 = $0 + 32 | 0;
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ $11 = $0 + 36 | 0;
+ SAFE_HEAP_STORE($11 | 0, 0 | 0, 4);
+ return;
+}
+
+function _calloc($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$ = 0, $$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;
+ $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);
+   $$ = $7 ? $3 : -1;
+   $$0 = $$;
+  } else {
+   $$0 = $3;
+  }
+ }
+ $8 = _malloc($$0) | 0;
+ $9 = ($8 | 0) == (0 | 0);
+ if ($9) {
+  return $8 | 0;
+ }
+ $10 = $8 + -4 | 0;
+ $11 = SAFE_HEAP_LOAD($10 | 0, 4, 0) | 0 | 0;
+ $12 = $11 & 3;
+ $13 = ($12 | 0) == 0;
+ if ($13) {
+  return $8 | 0;
+ }
+ _memset($8 | 0, 0, $$0 | 0) | 0;
+ return $8 | 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;
+ SAFE_HEAP_STORE($2 | 0, $1 | 0, 4);
+ $3 = $0 + 8 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $0 + 4 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $4 - $6 | 0;
+ $8 = $0 + 108 | 0;
+ SAFE_HEAP_STORE($8 | 0, $7 | 0, 4);
+ $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;
+  SAFE_HEAP_STORE($13 | 0, $12 | 0, 4);
+ } else {
+  $14 = $0 + 100 | 0;
+  SAFE_HEAP_STORE($14 | 0, $4 | 0, 4);
+ }
+ 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:
+   {
+    SAFE_HEAP_STORE(17622 * 4 | 0, 1 | 0, 4);
+    break;
+   }
+  case 1:
+   {
+    SAFE_HEAP_STORE(17623 * 4 | 0, 1 | 0, 4);
+    break;
+   }
+  default:
+   {
+    $1 = SAFE_HEAP_LOAD(17622 * 4 | 0, 4, 0) | 0 | 0;
+    $2 = ($1 | 0) == 0;
+    if ($2) {
+     switch ($0 | 0) {
+     case 2:
+      {
+       SAFE_HEAP_STORE(17624 * 4 | 0, 1 | 0, 4);
+       break L1;
+       break;
+      }
+     case 3:
+      {
+       SAFE_HEAP_STORE(17625 * 4 | 0, 1 | 0, 4);
+       break L1;
+       break;
+      }
+     default:
+      {
+       break L1;
+      }
+     }
+    }
+   }
+  }
+ } while (0);
+ 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, $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);
+ $2 = sp;
+ SAFE_HEAP_STORE($2 | 0, $varargs | 0, 4);
+ $3 = SAFE_HEAP_LOAD(17578 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == (0 | 0);
+ if ($4) {
+  $6 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+  _vfprintf($6, $1, $2) | 0;
+  STACKTOP = sp;
+  return 0;
+ } else {
+  $5 = SAFE_HEAP_LOAD(17579 * 4 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viiii[(SAFE_FT_MASK($3 | 0, 63 | 0) | 0) & 63]($5, 10, $1, 
$2);
+  STACKTOP = sp;
+  return 0;
+ }
+ return 0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD(17623 * 4 | 0, 4, 0) | 0 | 0;
+  $5 = ($4 | 0) == 0;
+  if ($5) {
+   $6 = SAFE_HEAP_LOAD(17624 * 4 | 0, 4, 0) | 0 | 0;
+   $7 = ($6 | 0) == 0;
+   if ($7) {
+    $8 = SAFE_HEAP_LOAD(17625 * 4 | 0, 4, 0) | 0 | 0;
+    $9 = ($8 | 0) == 0;
+    $$ = $9 ? 1 : 3;
+    $$0 = $$;
+   } else {
+    $$0 = 2;
+   }
+  } else {
+   $$0 = 1;
+  }
+ }
+ return $$0 | 0;
+}
+
+function __gcry_log_printf($0, $varargs) {
+ $0 = $0 | 0;
+ $varargs = $varargs | 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 = sp;
+ $2 = ($0 | 0) == (0 | 0);
+ if ($2) {
+  STACKTOP = sp;
+  return;
+ }
+ SAFE_HEAP_STORE($1 | 0, $varargs | 0, 4);
+ $3 = SAFE_HEAP_LOAD(17578 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == (0 | 0);
+ if ($4) {
+  $6 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+  _vfprintf($6, $0, $1) | 0;
+ } else {
+  $5 = SAFE_HEAP_LOAD(17579 * 4 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viiii[(SAFE_FT_MASK($3 | 0, 63 | 0) | 0) & 63]($5, 0, $0, $1);
+ }
+ STACKTOP = sp;
+ return;
+}
+
+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, 39075, 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+    __gcry_md_write($0, $5, $7);
+    __gcry_sexp_release($3);
+    $$0 = 0;
+    break;
+   }
+  }
+ } while (0);
+ 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(84, 0);
+ $0 = _gcry_check_version(61222) | 0;
+ $1 = ($0 | 0) == (0 | 0);
+ if ($1) {
+  $2 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+  _fwrite(61228, 27, 1, $2) | 0;
+  _abort();
+ } else {
+  SAFE_HEAP_STORE($vararg_buffer | 0, 0 | 0, 4);
+  _gcry_control(37, $vararg_buffer) | 0;
+  SAFE_HEAP_STORE($vararg_buffer1 | 0, 0 | 0, 4);
+  _gcry_control(38, $vararg_buffer1) | 0;
+  STACKTOP = sp;
+  return;
+ }
+}
+
+function __gcry_mpi_const($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $or$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;
+ $2 = $0 >>> 0 > 6;
+ $or$cond = $1 | $2;
+ if ($or$cond) {
+  SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+  __gcry_log_bug(46238, $vararg_buffer);
+ }
+ $3 = 70544 + ($0 << 2) | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if ($5) {
+  __gcry_log_bug(46269, $vararg_buffer1);
+ } else {
+  STACKTOP = sp;
+  return $4 | 0;
+ }
+ 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $3 & 4;
+ $5 = ($4 | 0) == 0;
+ if ($5) {
+  __gcry_log_bug(46125, $vararg_buffer);
+ }
+ $6 = ($1 | 0) == (0 | 0);
+ if (!$6) {
+  $7 = $0 + 8 | 0;
+  $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($1 | 0, $8 | 0, 4);
+ }
+ $9 = $0 + 16 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ STACKTOP = sp;
+ return $10 | 0;
+}
+
+function __gcry_log_debug($0, $varargs) {
+ $0 = $0 | 0;
+ $varargs = $varargs | 0;
+ var $1 = 0, $2 = 0, $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);
+ $1 = sp;
+ SAFE_HEAP_STORE($1 | 0, $varargs | 0, 4);
+ $2 = SAFE_HEAP_LOAD(17578 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == (0 | 0);
+ if ($3) {
+  $5 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+  _fwrite(21984, 5, 1, $5) | 0;
+  _vfprintf($5, $0, $1) | 0;
+  STACKTOP = sp;
+  return;
+ } else {
+  $4 = SAFE_HEAP_LOAD(17579 * 4 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63]($4, 100, $0, 
$1);
+  STACKTOP = sp;
+  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 = SAFE_HEAP_LOAD(17623 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == 0;
+ if (!$4) {
+  __gcry_rngcsprng_initialize($0);
+  return;
+ }
+ $5 = SAFE_HEAP_LOAD(17624 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == 0;
+ if (!$6) {
+  __gcry_rngfips_initialize($0);
+  return;
+ }
+ $7 = SAFE_HEAP_LOAD(17625 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) == 0;
+ if ($8) {
+  __gcry_rngcsprng_initialize($0);
+  return;
+ } else {
+  __gcry_rngsystem_initialize($0);
+  return;
+ }
+}
+
+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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 1;
+ if (!$2) {
+  ___assert_fail(53052 | 0, 53072 | 0, 114, 53085 | 0);
+ }
+ $3 = $0 + 4 | 0;
+ $4 = _pthread_mutex_destroy($3 | 0) | 0;
+ $5 = ($4 | 0) == 0;
+ if ($5) {
+  SAFE_HEAP_STORE($0 | 0, 1 | 0, 4);
+  dest = $3;
+  stop = dest + 40 | 0;
+  do {
+   SAFE_HEAP_STORE(dest | 0, 0 | 0 | 0, 4);
+   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 __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;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $1 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $2 | 0, 4);
+ $vararg_ptr3 = $vararg_buffer + 12 | 0;
+ SAFE_HEAP_STORE($vararg_ptr3 | 0, $3 | 0, 4);
+ __gcry_log(50, 22086, $vararg_buffer);
+ _abort();
+}
+
+function _GNUNET_CRYPTO_kdf_v($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 $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, 
$18 = 0, $19 = 0, $20 = 0, $21 = 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);
+ $7 = $0;
+ $8 = $1;
+ $9 = $2;
+ $10 = $3;
+ $11 = $4;
+ $12 = $5;
+ $13 = $6;
+ $14 = $7;
+ $15 = $8;
+ $16 = $9;
+ $17 = $10;
+ $18 = $11;
+ $19 = $12;
+ $20 = $13;
+ $21 = _GNUNET_CRYPTO_hkdf_v($14, $15, 10, 8, $16, $17, $18, $19, $20) | 0;
+ STACKTOP = sp;
+ return $21 | 0;
+}
+
+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(1268) | 0;
+ $0 = SAFE_HEAP_LOAD(17595 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) != 0;
+ $2 = $1 & 1;
+ $3 = SAFE_HEAP_LOAD(17596 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) != 0;
+ $5 = $4 ? 2 : 0;
+ $6 = $5 | $2;
+ $7 = SAFE_HEAP_LOAD(17597 * 4 | 0, 4, 0) | 0 | 0;
+ $8 = ($7 | 0) != 0;
+ $9 = $8 ? 8 : 0;
+ $10 = $6 | $9;
+ $11 = SAFE_HEAP_LOAD(17598 * 4 | 0, 4, 0) | 0 | 0;
+ $12 = ($11 | 0) != 0;
+ $13 = $12 ? 16 : 0;
+ $14 = $10 | $13;
+ _gpgrt_lock_unlock(1268) | 0;
+ return $14 | 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 = 61634 + $2 | 0;
+  $4 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+  $5 = $4 & 255;
+  $6 = $5 << 5;
+  $7 = $0 >>> 3;
+  $8 = $7 & 31;
+  $9 = $6 | $8;
+  $10 = 61634 + $9 | 0;
+  $11 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 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 __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 = SAFE_HEAP_LOAD(17623 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  __gcry_rngcsprng_close_fds();
+  return;
+ }
+ $4 = SAFE_HEAP_LOAD(17624 * 4 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == 0;
+ if (!$5) {
+  __gcry_rngfips_close_fds();
+  return;
+ }
+ $6 = SAFE_HEAP_LOAD(17625 * 4 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) == 0;
+ if ($7) {
+  __gcry_rngcsprng_close_fds();
+  return;
+ } else {
+  __gcry_rngsystem_close_fds();
+  return;
+ }
+}
+
+function __gcry_log_error($0, $varargs) {
+ $0 = $0 | 0;
+ $varargs = $varargs | 0;
+ var $1 = 0, $2 = 0, $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);
+ $1 = sp;
+ SAFE_HEAP_STORE($1 | 0, $varargs | 0, 4);
+ $2 = SAFE_HEAP_LOAD(17578 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == (0 | 0);
+ if ($3) {
+  $5 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+  _vfprintf($5, $0, $1) | 0;
+  STACKTOP = sp;
+  return;
+ } else {
+  $4 = SAFE_HEAP_LOAD(17579 * 4 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63]($4, 30, $0, 
$1);
+  STACKTOP = sp;
+  return;
+ }
+}
+
+function __gcry_log_info($0, $varargs) {
+ $0 = $0 | 0;
+ $varargs = $varargs | 0;
+ var $1 = 0, $2 = 0, $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);
+ $1 = sp;
+ SAFE_HEAP_STORE($1 | 0, $varargs | 0, 4);
+ $2 = SAFE_HEAP_LOAD(17578 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == (0 | 0);
+ if ($3) {
+  $5 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+  _vfprintf($5, $0, $1) | 0;
+  STACKTOP = sp;
+  return;
+ } else {
+  $4 = SAFE_HEAP_LOAD(17579 * 4 | 0, 4, 0) | 0 | 0;
+  FUNCTION_TABLE_viiii[(SAFE_FT_MASK($2 | 0, 63 | 0) | 0) & 63]($4, 10, $0, 
$1);
+  STACKTOP = sp;
+  return;
+ }
+}
+
+function _GNUNET_xmalloc_unchecked_($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, $3 = 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 = $0;
+ $5 = $1;
+ $6 = $2;
+ $8 = $4;
+ $9 = _malloc($8) | 0;
+ $7 = $9;
+ $10 = $7;
+ $11 = (0 | 0) == ($10 | 0);
+ if ($11) {
+  $3 = 0;
+  $15 = $3;
+  STACKTOP = sp;
+  return $15 | 0;
+ } else {
+  $12 = $7;
+  $13 = $4;
+  _memset($12 | 0, 0, $13 | 0) | 0;
+  $14 = $7;
+  $3 = $14;
+  $15 = $3;
+  STACKTOP = sp;
+  return $15 | 0;
+ }
+ return 0 | 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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $6 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($5 | 0, 127 | 0) | 0) & 127]($0, $1, 
1) | 0;
+  $7 = ($6 | 0) == 1;
+  if ($7) {
+   $8 = SAFE_HEAP_LOAD($1 >> 0 | 0, 1, 0) | 0 | 0;
+   $9 = $8 & 255;
+   $$0 = $9;
+  } else {
+   $$0 = -1;
+  }
+ } else {
+  $$0 = -1;
+ }
+ STACKTOP = sp;
+ return $$0 | 0;
+}
+
+function __gcry_cipher_open($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$0 = 0, $$pre = 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);
+ $4 = sp;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ $5 = ($2 | 0) > 65535;
+ if ($5) {
+  $$0 = 71;
+  $8 = 0;
+ } else {
+  $6 = __gcry_cipher_open_internal($4, $1, $2, $3) | 0;
+  $$pre = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $$0 = $6;
+  $8 = $$pre;
+ }
+ $7 = ($$0 | 0) != 0;
+ $9 = $7 ? 0 : $8;
+ SAFE_HEAP_STORE($0 | 0, $9 | 0, 4);
+ 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;
+ SAFE_HEAP_STORE($1 | 0, 0 | 0, 4);
+ $2 = $1 + 4 | 0;
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ $3 = $0 + 136 | 0;
+ SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ $4 = $0 + 140 | 0;
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ $5 = $0 + 144 | 0;
+ $6 = SAFE_HEAP_LOAD($5 >> 0 | 0, 1, 0) | 0 | 0;
+ $7 = $6 & -4;
+ SAFE_HEAP_STORE($5 >> 0 | 0, $7 | 0, 1);
+ $8 = $0 + 56 | 0;
+ $9 = SAFE_HEAP_LOAD($8 >> 0 | 0, 1, 0) | 0 | 0;
+ $10 = $9 & -7;
+ SAFE_HEAP_STORE($8 >> 0 | 0, $10 | 0, 1);
+ 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(1268) | 0;
+ $2 = $0 + -8 | 0;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 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(1268) | 0;
+ 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;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $3 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $2 | 0, 4);
+ $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;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $3 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $2 | 0, 4);
+ $4 = ___syscall3(3, $vararg_buffer | 0) | 0;
+ $5 = ___syscall_ret($4) | 0;
+ STACKTOP = sp;
+ return $5 | 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;
+ SAFE_HEAP_STORE($6 | 0, $7 | 0, 4);
+ SAFE_HEAP_STORE($3 | 0, $2 | 0, 4);
+ $8 = $3 + 12 | 0;
+ SAFE_HEAP_STORE($8 | 0, 1 | 0, 4);
+ $9 = $3 + 4 | 0;
+ SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+ $10 = $3 + 8 | 0;
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ return $3 | 0;
+}
+
+function _GNUNET_CRYPTO_hash_create_random($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, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $2 = $0;
+ $3 = $1;
+ $4 = 15;
+ while (1) {
+  $5 = $4;
+  $6 = ($5 | 0) >= 0;
+  if (!$6) {
+   break;
+  }
+  $7 = $2;
+  $8 = _GNUNET_CRYPTO_random_u32($7, -1) | 0;
+  $9 = $4;
+  $10 = $3;
+  $11 = $10 + ($9 << 2) | 0;
+  SAFE_HEAP_STORE($11 | 0, $8 | 0, 4);
+  $12 = $4;
+  $13 = $12 + -1 | 0;
+  $4 = $13;
+ }
+ STACKTOP = sp;
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) > -1;
+ if ($3) {
+  $6 = ___lockfile($0) | 0;
+  $phitmp = ($6 | 0) == 0;
+  $7 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $8 = $7 >>> 4;
+  $$lobit = $8 & 1;
+  if ($phitmp) {
+   $$lobit9 = $$lobit;
+  } else {
+   $$lobit9 = $$lobit;
+  }
+ } else {
+  $4 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+  $5 = $4 >>> 4;
+  $$lobit8 = $5 & 1;
+  $$lobit9 = $$lobit8;
+ }
+ return $$lobit9 | 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 $$$i$i = 0, $$0 = 0, $10 = 0, $11 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 
= 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;
+  $$$i$i = $9 ? 0 : $11;
+  $$0 = $$$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_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;
+ SAFE_HEAP_STORE($6 | 0, $7 | 0, 4);
+ SAFE_HEAP_STORE($3 | 0, $2 | 0, 4);
+ $8 = $3 + 4 | 0;
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ $9 = $3 + 8 | 0;
+ SAFE_HEAP_STORE($9 | 0, 0 | 0, 4);
+ $10 = $3 + 12 | 0;
+ SAFE_HEAP_STORE($10 | 0, 0 | 0, 4);
+ return $3 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($$pre | 0, 4, 0) | 0 | 0;
+  $3 = $2 & 16;
+  $4 = ($3 | 0) == 0;
+  if (!$4) {
+   __gcry_log_info(46049, $vararg_buffer);
+   STACKTOP = sp;
+   return;
+  }
+ }
+ $5 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($$pre | 0, 0 | 0, 4);
+ STACKTOP = sp;
+ return;
+}
+
+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 = 67036 + $2 | 0;
+  $4 = SAFE_HEAP_LOAD($3 >> 0 | 0, 1, 0) | 0 | 0;
+  $5 = $4 & 255;
+  $6 = $5 << 5;
+  $7 = $0 >>> 3;
+  $8 = $7 & 31;
+  $9 = $6 | $8;
+  $10 = 67036 + $9 | 0;
+  $11 = SAFE_HEAP_LOAD($10 >> 0 | 0, 1, 0) | 0 | 0;
+  $12 = $11 & 255;
+  $13 = $0 & 7;
+  $14 = $12 >>> $13;
+  $15 = $14 & 1;
+  $$0 = $15;
+ } else {
+  $$0 = 0;
+ }
+ 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $2 >>> 0 < $4 >>> 0;
+ if (!$5) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $6 = $1 & 31;
+ $7 = $0 + 16 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $8 + ($2 << 2) | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = 1 << $6;
+ $12 = $10 & $11;
+ $13 = ($12 | 0) != 0;
+ $14 = $13 & 1;
+ $$0 = $14;
+ return $$0 | 0;
+}
+
+function _wcschr($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$0 = 0, $$09 = 0, $10 = 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 = SAFE_HEAP_LOAD($$09 | 0, 4, 0) | 0 | 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 = ($5 | 0) != 0;
+  $10 = $9 ? $$09 : 0;
+  $$0 = $10;
+ }
+ return $$0 | 0;
+}
+
+function _doHMAC($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, $15 = 0, $16 = 0, $17 = 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);
+ $5 = $0;
+ $6 = $1;
+ $7 = $2;
+ $8 = $3;
+ $9 = $4;
+ $10 = $5;
+ $11 = $6;
+ $12 = $7;
+ _gcry_md_setkey($10, $11, $12) | 0;
+ $13 = $5;
+ $14 = $8;
+ $15 = $9;
+ _gcry_md_write($13, $14, $15);
+ $16 = $5;
+ $17 = _gcry_md_read($16, 0) | 0;
+ STACKTOP = sp;
+ return $17 | 0;
+}
+
+function __gcry_md_open($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$0 = 0, $$pre = 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 = $2 & -260;
+ $5 = ($4 | 0) == 0;
+ if ($5) {
+  $6 = _md_open($3, $1, $2) | 0;
+  $$pre = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+  $$0 = $6;
+  $8 = $$pre;
+ } else {
+  $$0 = 45;
+  $8 = 0;
+ }
+ $7 = ($$0 | 0) != 0;
+ $9 = $7 ? 0 : $8;
+ SAFE_HEAP_STORE($0 | 0, $9 | 0, 4);
+ STACKTOP = sp;
+ return $$0 | 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;
+  $9 = $8;
+ } else {
+  $7 = __gcry_malloc_secure($4) | 0;
+  $9 = $7;
+ }
+ $10 = ($9 | 0) == (0 | 0);
+ if ($10) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ _memcpy($9 | 0, $1 | 0, $4 | 0) | 0;
+ $11 = __gcry_mpi_set_opaque($0, $9, $2) | 0;
+ $$0 = $11;
+ return $$0 | 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;
+ SAFE_HEAP_STORE($4 | 0, $5 | 0, 4);
+ SAFE_HEAP_STORE($1 | 0, $0 | 0, 4);
+ $6 = $1 + 12 | 0;
+ SAFE_HEAP_STORE($6 | 0, 1 | 0, 4);
+ $7 = $1 + 4 | 0;
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ $8 = $1 + 8 | 0;
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ return $1 | 0;
+}
+
+function _GNUNET_TIME_relative_get_zero_() {
+ var $0 = 0, $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);
+ $0 = sp;
+ {}
+ SAFE_HEAP_STORE($0 | 0, SAFE_HEAP_LOAD(70240 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 4 | 0, SAFE_HEAP_LOAD(70240 + 4 | 0, 4, 0) | 0 | 0 | 0, 
4);
+ $1 = $0;
+ $2 = $1;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $1 + 4 | 0;
+ $5 = $4;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ tempRet0 = $6;
+ STACKTOP = sp;
+ return $3 | 0;
+}
+
+function _GNUNET_TIME_relative_get_forever_() {
+ var $0 = 0, $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);
+ $0 = sp;
+ {}
+ SAFE_HEAP_STORE($0 | 0, SAFE_HEAP_LOAD(64 | 0, 4, 0) | 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($0 + 4 | 0, SAFE_HEAP_LOAD(64 + 4 | 0, 4, 0) | 0 | 0 | 0, 4);
+ $1 = $0;
+ $2 = $1;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $1 + 4 | 0;
+ $5 = $4;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ tempRet0 = $6;
+ STACKTOP = sp;
+ return $3 | 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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $8 = _gpg_err_code_from_errno($7) | 0;
+   __gcry_fatal_error($8, 0);
+  }
+ }
+ $9 = __gcry_xmalloc_secure($2) | 0;
+ _memset($9 | 0, 0, $2 | 0) | 0;
+ return $9 | 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;
+ SAFE_HEAP_STORE($4 | 0, $5 | 0, 4);
+ SAFE_HEAP_STORE($1 | 0, $0 | 0, 4);
+ $6 = $1 + 4 | 0;
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ $7 = $1 + 8 | 0;
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ $8 = $1 + 12 | 0;
+ SAFE_HEAP_STORE($8 | 0, 0 | 0, 4);
+ return $1 | 0;
+}
+
+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;
+ }
+ {}
+ SAFE_HEAP_STORE($1 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 4 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 8 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 12 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 16 | 0, 0 | 0 | 0, 4);
+ SAFE_HEAP_STORE($1 + 20 | 0, 0 | 0 | 0, 4);
+ $4 = $1 + 12 | 0;
+ _memcpy($4 | 0, $0 | 0, $2 | 0) | 0;
+ $$0 = 1;
+ return $$0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD(17623 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = ($3 | 0) == 0;
+ if (!$4) {
+  __gcry_rngcsprng_set_seed_file($0);
+  return;
+ }
+ $5 = SAFE_HEAP_LOAD(17624 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = SAFE_HEAP_LOAD(17625 * 4 | 0, 4, 0) | 0 | 0;
+ $7 = $6 | $5;
+ $8 = ($7 | 0) == 0;
+ if (!$8) {
+  return;
+ }
+ __gcry_rngcsprng_set_seed_file($0);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+   $8 = _gpg_err_code_from_errno($7) | 0;
+   __gcry_fatal_error($8, 0);
+  }
+ }
+ $9 = __gcry_xmalloc($2) | 0;
+ _memset($9 | 0, 0, $2 | 0) | 0;
+ return $9 | 0;
+}
+
+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 = SAFE_HEAP_LOAD(17623 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  __gcry_rngcsprng_update_seed_file();
+  return;
+ }
+ $4 = SAFE_HEAP_LOAD(17624 * 4 | 0, 4, 0) | 0 | 0;
+ $5 = SAFE_HEAP_LOAD(17625 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = $5 | $4;
+ $7 = ($6 | 0) == 0;
+ if (!$7) {
+  return;
+ }
+ __gcry_rngcsprng_update_seed_file();
+ 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;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $1 | 0, 4);
+ $vararg_ptr2 = $vararg_buffer + 8 | 0;
+ SAFE_HEAP_STORE($vararg_ptr2 | 0, $2 | 0, 4);
+ __gcry_log(50, 22056, $vararg_buffer);
+ _abort();
+}
+
+function _sn_write($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $$cast = 0, $10 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 
0, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = $0 + 16 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = $0 + 20 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = $4 - $6 | 0;
+ $8 = $7 >>> 0 > $2 >>> 0;
+ $$ = $8 ? $2 : $7;
+ $$cast = $6;
+ _memcpy($$cast | 0, $1 | 0, $$ | 0) | 0;
+ $9 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $10 = $9 + $$ | 0;
+ SAFE_HEAP_STORE($5 | 0, $10 | 0, 4);
+ return $2 | 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ switch ($1 | 0) {
+ case 0:
+  {
+   SAFE_HEAP_STORE($0 | 0, 1 | 0, 4);
+   break;
+  }
+ case 1:
+  {
+   break;
+  }
+ default:
+  {
+   ___assert_fail(53052 | 0, 53072 | 0, 114, 53085 | 0);
+  }
+ }
+ $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 __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, $8 = 0, $or$cond 
= 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $2 = ($0 | 0) < 0;
+ $3 = $0 >>> 0 > 12;
+ $or$cond = $2 | $3;
+ if ($or$cond) {
+  $$0 = 0;
+  return $$0 | 0;
+ }
+ $4 = ($1 | 0) == (0 | 0);
+ if (!$4) {
+  $5 = 1164 + ($0 << 3) | 0;
+  $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+  SAFE_HEAP_STORE($1 | 0, $6 | 0, 4);
+ }
+ $7 = (1164 + ($0 << 3) | 0) + 4 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $$0 = $8;
+ return $$0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($2);
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $3 = $0 + 4 | 0;
+ $4 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($4);
+ SAFE_HEAP_STORE($3 | 0, 0 | 0, 4);
+ $5 = $0 + 8 | 0;
+ $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($6);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ __gcry_free($0);
+ return;
+}
+
+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;
+ SAFE_HEAP_STORE($3 | 0, $2 | 0, 4);
+ SAFE_HEAP_STORE($1 | 0, 1 | 0, 4);
+ $4 = $1 + 4 | 0;
+ $5 = $1 + 8 | 0;
+ $6 = $1 + 12 | 0;
+ SAFE_HEAP_STORE($6 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE($2 | 0, $0 | 0, 4);
+ $7 = ($0 | 0) != 0;
+ $8 = $7 & 1;
+ SAFE_HEAP_STORE($4 | 0, $8 | 0, 4);
+ SAFE_HEAP_STORE($5 | 0, 0 | 0, 4);
+ return $1 | 0;
+}
+
+function __gcry_private_is_secure($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 = SAFE_HEAP_LOAD(17600 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 0;
+ if ($2) {
+  $10 = 0;
+ } else {
+  $3 = $0;
+  $4 = SAFE_HEAP_LOAD(17602 * 4 | 0, 4, 0) | 0 | 0;
+  $5 = $3 >>> 0 < $4 >>> 0;
+  if ($5) {
+   $10 = 0;
+  } else {
+   $6 = SAFE_HEAP_LOAD(17601 * 4 | 0, 4, 0) | 0 | 0;
+   $7 = $6 + $4 | 0;
+   $8 = $3 >>> 0 < $7 >>> 0;
+   $10 = $8;
+  }
+ }
+ $9 = $10 & 1;
+ return $9 | 0;
+}
+
+function _gcry_cipher_open($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$$i$i = 0, $$0 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $4 = __gcry_global_is_operational() | 0;
+ $5 = ($4 | 0) == 0;
+ if ($5) {
+  SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+  $$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;
+  $$$i$i = $7 ? 0 : $9;
+  $$0 = $$$i$i;
+  return $$0 | 0;
+ }
+ 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;
+ _dummy_319();
+ $2 = $0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $1 | 0, 4);
+ $3 = ___syscall91(91, $vararg_buffer | 0) | 0;
+ $4 = ___syscall_ret($3) | 0;
+ STACKTOP = sp;
+ return $4 | 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 __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 = SAFE_HEAP_LOAD(17623 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  __gcry_rngcsprng_fast_poll();
+  return;
+ }
+ $4 = SAFE_HEAP_LOAD(17624 * 4 | 0, 4, 0) | 0 | 0;
+ $5 = SAFE_HEAP_LOAD(17625 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = $5 | $4;
+ $7 = ($6 | 0) == 0;
+ if (!$7) {
+  return;
+ }
+ __gcry_rngcsprng_fast_poll();
+ return;
+}
+
+function SAFE_HEAP_LOAD(dest, bytes, unsigned) {
+ dest = dest | 0;
+ bytes = bytes | 0;
+ unsigned = unsigned | 0;
+ if ((dest | 0) <= 0) segfault();
+ if ((dest + bytes | 0) > (HEAP32[DYNAMICTOP_PTR >> 2] | 0)) segfault();
+ if ((bytes | 0) == 4) {
+  if (dest & 3) alignfault();
+  return HEAP32[dest >> 2] | 0;
+ } else if ((bytes | 0) == 1) {
+  if (unsigned) {
+   return HEAPU8[dest >> 0] | 0;
+  } else {
+   return HEAP8[dest >> 0] | 0;
+  }
+ }
+ if (dest & 1) alignfault();
+ if (unsigned) return HEAPU16[dest >> 1] | 0;
+ return HEAP16[dest >> 1] | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if (!$5) {
+  FUNCTION_TABLE_v[(SAFE_FT_MASK($4 | 0, 127 | 0) | 0) & 127]();
+ }
+ $6 = $0 + 492 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($7 | 0, 127 | 0) | 0) & 127]($0, $1, 
$2) | 0;
+ return $8 | 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 _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;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $0 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $2 | 0, 4);
+ $3 = ___syscall77(77, $vararg_buffer | 0) | 0;
+ $4 = ___syscall_ret($3) | 0;
+ STACKTOP = sp;
+ return $4 | 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;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+ $vararg_ptr1 = $vararg_buffer + 4 | 0;
+ SAFE_HEAP_STORE($vararg_ptr1 | 0, $1 | 0, 4);
+ $3 = ___syscall33(33, $vararg_buffer | 0) | 0;
+ $4 = ___syscall_ret($3) | 0;
+ STACKTOP = sp;
+ return $4 | 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;
+ SAFE_HEAP_STORE($3 | 0, $varargs | 0, 4);
+ $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_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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = SAFE_HEAP_LOAD(17590 * 4 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if ($5) {
+  __gcry_private_free($0);
+ } else {
+  FUNCTION_TABLE_vi[(SAFE_FT_MASK($4 | 0, 127 | 0) | 0) & 127]($0);
+ }
+ $6 = ($3 | 0) == 0;
+ if ($6) {
+  return;
+ }
+ _gpg_err_set_errno($3);
+ return;
+}
+
+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 {
+  {}
+  SAFE_HEAP_STORE($1 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($1 + 4 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($1 + 8 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($1 + 12 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($1 + 16 | 0, 0 | 0 | 0, 4);
+  SAFE_HEAP_STORE($1 + 20 | 0, 0 | 0 | 0, 4);
+  $$0$in = $1;
+ }
+ return $$0$in | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $0 + 4 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $5 + -1 | 0;
+ $7 = $0 + 16 | 0;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ $9 = $0 + 28 | 0;
+ $10 = SAFE_HEAP_LOAD($9 | 0, 4, 0) | 0 | 0;
+ $11 = __gcry_rsa_pss_verify($3, $1, $6, $8, $10) | 0;
+ return $11 | 0;
+}
+
+function _gcry_sexp_build($0, $1, $2, $varargs) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $varargs = $varargs | 0;
+ var $$$i$i = 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);
+ $3 = sp;
+ SAFE_HEAP_STORE($3 | 0, $varargs | 0, 4);
+ $4 = __gcry_sexp_vbuild($0, $1, $2, $3) | 0;
+ $5 = ($4 | 0) == 0;
+ $6 = $4 & 65535;
+ $7 = $6 | 16777216;
+ $$$i$i = $5 ? 0 : $7;
+ STACKTOP = sp;
+ return $$$i$i | 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_sign($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$i$i = 0, $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = __gcry_global_is_operational() | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+  $$0 = 16777392;
+  return $$0 | 0;
+ } else {
+  $5 = __gcry_pk_sign($0, $1, $2) | 0;
+  $6 = ($5 | 0) == 0;
+  $7 = $5 & 65535;
+  $8 = $7 | 16777216;
+  $$$i$i = $6 ? 0 : $8;
+  $$0 = $$$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 $$$i$i = 0, $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = __gcry_global_is_operational() | 0;
+ $4 = ($3 | 0) == 0;
+ if ($4) {
+  SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+  $$0 = 16777392;
+  return $$0 | 0;
+ } else {
+  $5 = __gcry_md_open($0, $1, $2) | 0;
+  $6 = ($5 | 0) == 0;
+  $7 = $5 & 65535;
+  $8 = $7 | 16777216;
+  $$$i$i = $6 ? 0 : $8;
+  $$0 = $$$i$i;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+function ___tre_mem_destroy($0) {
+ $0 = $0 | 0;
+ var $$010 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, label = 0, sp 
= 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == (0 | 0);
+ if (!$2) {
+  $$010 = $1;
+  while (1) {
+   $3 = SAFE_HEAP_LOAD($$010 | 0, 4, 0) | 0 | 0;
+   _free($3);
+   $4 = $$010 + 4 | 0;
+   $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+   _free($$010);
+   $6 = ($5 | 0) == (0 | 0);
+   if ($6) {
+    break;
+   } else {
+    $$010 = $5;
+   }
+  }
+ }
+ _free($0);
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 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_cipher_decrypt($0, $1, $2, $3, $4) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ $4 = $4 | 0;
+ var $$$i$i = 0, $$0 = 0, $10 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 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;
+ $$$i$i = $8 ? 0 : $10;
+ $$0 = $$$i$i;
+ return $$0 | 0;
+}
+
+function _rsa_gcd_validate($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;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $2 = $0;
+ $3 = $1;
+ $6 = _gcry_mpi_new(0) | 0;
+ $4 = $6;
+ $7 = $4;
+ $8 = $2;
+ $9 = $3;
+ $10 = _gcry_mpi_gcd($7, $8, $9) | 0;
+ $5 = $10;
+ $11 = $4;
+ _gcry_mpi_release($11);
+ $12 = $5;
+ STACKTOP = sp;
+ return $12 | 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = _dummy_128($2) | 0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $3 | 0, 4);
+ $4 = ___syscall6(6, $vararg_buffer | 0) | 0;
+ $5 = ___syscall_ret($4) | 0;
+ STACKTOP = sp;
+ return $5 | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if (!$5) {
+  FUNCTION_TABLE_v[(SAFE_FT_MASK($4 | 0, 127 | 0) | 0) & 127]();
+ }
+ $6 = $0 + 488 | 0;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = FUNCTION_TABLE_iiii[(SAFE_FT_MASK($7 | 0, 127 | 0) | 0) & 127]($0, $1, 
$2) | 0;
+ return $8 | 0;
+}
+
+function _gcry_pk_genkey($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var $$$i$i = 0, $$0 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $2 = __gcry_global_is_operational() | 0;
+ $3 = ($2 | 0) == 0;
+ if ($3) {
+  SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+  $$0 = 16777392;
+  return $$0 | 0;
+ } else {
+  $4 = __gcry_pk_genkey($0, $1) | 0;
+  $5 = ($4 | 0) == 0;
+  $6 = $4 & 65535;
+  $7 = $6 | 16777216;
+  $$$i$i = $5 ? 0 : $7;
+  $$0 = $$$i$i;
+  return $$0 | 0;
+ }
+ return 0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD(17614 * 4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == (0 | 0);
+ if ($6) {
+  return $4 | 0;
+ }
+ $7 = SAFE_HEAP_LOAD(17615 * 4 | 0, 4, 0) | 0 | 0;
+ FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($5 | 0, 127 | 0) | 0) & 127]($7, 37212, 
10, 0, 0);
+ return $4 | 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, 39075, 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 __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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($1);
+ SAFE_HEAP_STORE($0 | 0, 0 | 0, 4);
+ $2 = $0 + 4 | 0;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($3);
+ SAFE_HEAP_STORE($2 | 0, 0 | 0, 4);
+ $4 = $0 + 8 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ __gcry_mpi_free($5);
+ SAFE_HEAP_STORE($4 | 0, 0 | 0, 4);
+ return;
+}
+
+function _GNUNET_log_nocheck($0, $1, $varargs) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $varargs = $varargs | 0;
+ var $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 32 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(32 | 0);
+ $4 = sp;
+ $2 = $0;
+ $3 = $1;
+ SAFE_HEAP_STORE($4 | 0, $varargs | 0, 4);
+ $5 = $2;
+ $6 = SAFE_HEAP_LOAD(17568 * 4 | 0, 4, 0) | 0 | 0;
+ $7 = $3;
+ _mylog($5, $6, $7, $4);
+ STACKTOP = sp;
+ return;
+}
+
+function _close($0) {
+ $0 = $0 | 0;
+ var $$ = 0, $1 = 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;
+ $1 = _dummy_128($0) | 0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $1 | 0, 4);
+ $2 = ___syscall6(6, $vararg_buffer | 0) | 0;
+ $3 = ($2 | 0) == -4;
+ $$ = $3 ? 0 : $2;
+ $4 = ___syscall_ret($$) | 0;
+ STACKTOP = sp;
+ return $4 | 0;
+}
+
+function _gcry_control($0, $varargs) {
+ $0 = $0 | 0;
+ $varargs = $varargs | 0;
+ var $$$i$i = 0, $1 = 0, $2 = 0, $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);
+ $1 = sp;
+ SAFE_HEAP_STORE($1 | 0, $varargs | 0, 4);
+ $2 = __gcry_vcontrol($0, $1) | 0;
+ $3 = ($2 | 0) == 0;
+ $4 = $2 & 65535;
+ $5 = $4 | 16777216;
+ $$$i$i = $3 ? 0 : $5;
+ STACKTOP = sp;
+ return $$$i$i | 0;
+}
+
+function _gcry_cipher_setkey($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$i$i$i = 0, $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 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;
+ $$$i$i$i = $6 ? 0 : $8;
+ $$0 = $$$i$i$i;
+ 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 1;
+ if (!$2) {
+  ___assert_fail(53052 | 0, 53072 | 0, 114, 53085 | 0);
+ }
+ $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 _gcry_cipher_setiv($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$i$i$i = 0, $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 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;
+ $$$i$i$i = $6 ? 0 : $8;
+ $$0 = $$$i$i$i;
+ return $$0 | 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)) {
+  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;
+   SAFE_HEAP_STORE(dest | 0, SAFE_HEAP_LOAD(src | 0, 1, 0) | 0 | 0, 1);
+  }
+  dest = ret;
+ } else {
+  _memcpy(dest, src, num) | 0;
+ }
+ return dest | 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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 1;
+ if (!$2) {
+  ___assert_fail(53052 | 0, 53072 | 0, 114, 53085 | 0);
+ }
+ $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 ___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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = $0 + 56 | 0;
+ SAFE_HEAP_STORE($3 | 0, $2 | 0, 4);
+ $4 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if (!$5) {
+  $6 = $4 + 52 | 0;
+  SAFE_HEAP_STORE($6 | 0, $0 | 0, 4);
+ }
+ SAFE_HEAP_STORE($1 | 0, $0 | 0, 4);
+ ___ofl_unlock();
+ return $0 | 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;
+ SAFE_HEAP_STORE($6 | 0, $varargs | 0, 4);
+ $7 = _do_vsexp_sscan($0, $1, $2, $3, $4, $5, $6) | 0;
+ STACKTOP = sp;
+ return $7 | 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 _iswcntrl($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 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;
+ if ($or$cond6) {
+  $9 = 1;
+ } else {
+  $6 = $0 + -65529 | 0;
+  $7 = $6 >>> 0 < 3;
+  $9 = $7;
+ }
+ $8 = $9 & 1;
+ return $8 | 0;
+}
+
+function _gcry_pk_verify($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$i$i = 0, $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 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;
+ $$$i$i = $6 ? 0 : $8;
+ $$0 = $$$i$i;
+ return $$0 | 0;
+}
+
+function _gcry_md_setkey($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$i$i = 0, $$0 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 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;
+ $$$i$i = $6 ? 0 : $8;
+ $$0 = $$$i$i;
+ 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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = $3 + 4 | 0;
+ $7 = $6;
+ $8 = SAFE_HEAP_LOAD($7 | 0, 4, 0) | 0 | 0;
+ tempRet0 = $8;
+ STACKTOP = sp;
+ return $5 | 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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+  $4 = $1 + 4 | 0;
+  $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+  $6 = ___mo_lookup($3, $5, $0) | 0;
+  $$0 = $6;
+ }
+ $7 = ($$0 | 0) != (0 | 0);
+ $8 = $7 ? $$0 : $0;
+ return $8 | 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;
+ }
+ SAFE_HEAP_STORE($7 | 0, 0 | 0, 4);
+ return $7 | 0;
+}
+
+function _GNUNET_CRYPTO_hash_context_read($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, $9 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $6 = $3;
+ $7 = SAFE_HEAP_LOAD($6 | 0, 4, 0) | 0 | 0;
+ $8 = $4;
+ $9 = $5;
+ _gcry_md_write($7, $8, $9);
+ STACKTOP = sp;
+ return;
+}
+
+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 __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;
+ SAFE_HEAP_STORE($3 | 0, $varargs | 0, 4);
+ $4 = _strlen($2) | 0;
+ $5 = _do_vsexp_sscan($0, $1, $2, $4, 1, 0, $3) | 0;
+ STACKTOP = sp;
+ return $5 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+ $7 = ($6 | 0) == 0;
+ $8 = $7 & 1;
+ SAFE_HEAP_STORE($5 | 0, $8 | 0, 4);
+ __gcry_mpi_add($0, $1, $4);
+ __gcry_mpi_free($4);
+ __gcry_mpi_mod($0, $0, $3);
+ return;
+}
+
+function _fatal_error_handler_2486($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 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE($vararg_buffer | 0, $2 | 0, 4);
+ _fprintf($3, 61256, $vararg_buffer) | 0;
+ _abort();
+}
+
+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, 19010, 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, 19010, 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, 19010, 73) | 0;
+ $2 = $3;
+ $4 = $1;
+ $5 = $2;
+ _GNUNET_CRYPTO_ecdhe_key_get_public($4, $5);
+ $6 = $2;
+ STACKTOP = sp;
+ return $6 | 0;
+}
+
+function _llvm_cttz_i32(x) {
+ x = x | 0;
+ var ret = 0;
+ ret = SAFE_HEAP_LOAD(cttz_i8 + (x & 255) | 0, 1, 0) | 0;
+ if ((ret | 0) < 8) return ret | 0;
+ ret = SAFE_HEAP_LOAD(cttz_i8 + (x >> 8 & 255) | 0, 1, 0) | 0;
+ if ((ret | 0) < 8) return ret + 8 | 0;
+ ret = SAFE_HEAP_LOAD(cttz_i8 + (x >> 16 & 255) | 0, 1, 0) | 0;
+ if ((ret | 0) < 8) return ret + 16 | 0;
+ return (SAFE_HEAP_LOAD(cttz_i8 + (x >>> 24) | 0, 1, 0) | 0) + 24 | 0;
+}
+
+function SAFE_HEAP_STORE(dest, value, bytes) {
+ dest = dest | 0;
+ value = value | 0;
+ bytes = bytes | 0;
+ if ((dest | 0) <= 0) segfault();
+ if ((dest + bytes | 0) > (HEAP32[DYNAMICTOP_PTR >> 2] | 0)) segfault();
+ if ((bytes | 0) == 4) {
+  if (dest & 3) alignfault();
+  HEAP32[dest >> 2] = value;
+ } else if ((bytes | 0) == 1) {
+  HEAP8[dest >> 0] = value;
+ } else {
+  if (dest & 1) alignfault();
+  HEAP16[dest >> 1] = value;
+ }
+}
+
+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(1268) | 0;
+ $1 = $0 & 1;
+ SAFE_HEAP_STORE(17595 * 4 | 0, $1 | 0, 4);
+ $2 = $0 & 2;
+ SAFE_HEAP_STORE(17596 * 4 | 0, $2 | 0, 4);
+ $3 = $0 & 8;
+ SAFE_HEAP_STORE(17597 * 4 | 0, $3 | 0, 4);
+ $4 = $0 & 16;
+ SAFE_HEAP_STORE(17598 * 4 | 0, $4 | 0, 4);
+ _gpgrt_lock_unlock(1268) | 0;
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($rem + 4 | 0, 4, 0) | 0 | 0, 
SAFE_HEAP_LOAD($rem | 0, 4, 0) | 0 | 0) | 0;
+}
+
+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 = SAFE_HEAP_LOAD(17620 * 4 | 0, 4, 0) | 0 | 0;
+ $5 = ($4 | 0) == (0 | 0);
+ if ($5) {
+  return;
+ }
+ $6 = SAFE_HEAP_LOAD(17621 * 4 | 0, 4, 0) | 0 | 0;
+ FUNCTION_TABLE_viiiii[(SAFE_FT_MASK($4 | 0, 127 | 0) | 0) & 127]($6, $0, $1, 
$2, $3);
+ return;
+}
+
+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;
+ SAFE_HEAP_STORE($1 | 0, $2 | 0, 4);
+ $3 = __gcry_mpi_new(0) | 0;
+ $4 = $1 + 4 | 0;
+ SAFE_HEAP_STORE($4 | 0, $3 | 0, 4);
+ $5 = __gcry_mpi_new(0) | 0;
+ $6 = $1 + 8 | 0;
+ SAFE_HEAP_STORE($6 | 0, $5 | 0, 4);
+ return $1 | 0;
+}
+
+function _gcry_pk_testkey($0) {
+ $0 = $0 | 0;
+ var $$$i$i = 0, $$0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 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;
+ $$$i$i = $4 ? 0 : $6;
+ $$0 = $$$i$i;
+ return $$0 | 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 = 14272 + ($3 << 2) | 0;
+   $6 = SAFE_HEAP_LOAD($5 | 0, 4, 0) | 0 | 0;
+   $$0 = $6;
+  } else {
+   $$0 = 0;
+  }
+ }
+ 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 ? 35807 : 37665;
+ $switch$selectcmp2 = ($0 | 0) == 0;
+ $switch$select3 = $switch$selectcmp2 ? 35815 : $switch$select;
+ return $switch$select3 | 0;
+}
+
+function _GNUNET_CRYPTO_hash($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;
+ STACKTOP = STACKTOP + 16 | 0;
+ if ((STACKTOP | 0) >= (STACK_MAX | 0)) abortStackOverflow(16 | 0);
+ $3 = $0;
+ $4 = $1;
+ $5 = $2;
+ $6 = $5;
+ $7 = $3;
+ $8 = $4;
+ _gcry_md_hash_buffer(10, $6, $7, $8);
+ STACKTOP = sp;
+ return;
+}
+
+function _GNUNET_CRYPTO_rsa_private_key_free($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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($3);
+ $4 = $1;
+ _GNUNET_xfree_($4, 20893, 179);
+ STACKTOP = sp;
+ return;
+}
+
+function _GNUNET_CRYPTO_rsa_public_key_free($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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($3);
+ $4 = $1;
+ _GNUNET_xfree_($4, 20893, 295);
+ STACKTOP = sp;
+ return;
+}
+
+function _GNUNET_CRYPTO_rsa_signature_free($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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ _gcry_sexp_release($3);
+ $4 = $1;
+ _GNUNET_xfree_($4, 20893, 936);
+ STACKTOP = sp;
+ return;
+}
+
+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;
+ SAFE_HEAP_STORE($3 | 0, $varargs | 0, 4);
+ $4 = _vsnprintf($0, $1, $2, $3) | 0;
+ STACKTOP = sp;
+ return $4 | 0;
+}
+
+function _GNUNET_CRYPTO_hash_context_abort($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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ _gcry_md_close($3);
+ $4 = $1;
+ _GNUNET_xfree_($4, 20365, 480);
+ STACKTOP = sp;
+ return;
+}
+
+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_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 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = ($5 | 0) == 0;
+ $7 = $6 & 1;
+ SAFE_HEAP_STORE($4 | 0, $7 | 0, 4);
+ __gcry_mpi_add($0, $1, $3);
+ __gcry_mpi_free($3);
+ 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = $0 + 4 | 0;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ $6 = __gcry_mpih_mod_1($3, $5, $1) | 0;
+ $7 = ($6 | 0) == 0;
+ $8 = $7 & 1;
+ return $8 | 0;
+}
+
+function _rsa_blinding_key_free($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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ _gcry_mpi_release($3);
+ $4 = $1;
+ _GNUNET_xfree_($4, 20893, 631);
+ STACKTOP = sp;
+ return;
+}
+
+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 = SAFE_HEAP_LOAD($$0 | 0, 4, 0) | 0 | 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 _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(21777, 1198, 21842, 0, 21859);
+  $$0 = 0;
+  return $$0 | 0;
+ } else {
+  $3 = __gcry_md_get_algo($0) | 0;
+  $$0 = $3;
+  return $$0 | 0;
+ }
+ return 0 | 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;
+ SAFE_HEAP_STORE($0 | 0, $1 | 0, 4);
+ $2 = __gcry_mpi_new(0) | 0;
+ $3 = $0 + 4 | 0;
+ SAFE_HEAP_STORE($3 | 0, $2 | 0, 4);
+ $4 = __gcry_mpi_new(0) | 0;
+ $5 = $0 + 8 | 0;
+ SAFE_HEAP_STORE($5 | 0, $4 | 0, 4);
+ return;
+}
+
+function SAFE_HEAP_STORE_D(dest, value, bytes) {
+ dest = dest | 0;
+ value = +value;
+ bytes = bytes | 0;
+ if ((dest | 0) <= 0) segfault();
+ if ((dest + bytes | 0) > (HEAP32[DYNAMICTOP_PTR >> 2] | 0)) segfault();
+ if ((bytes | 0) == 8) {
+  if (dest & 7) alignfault();
+  HEAPF64[dest >> 3] = value;
+ } else {
+  if (dest & 3) alignfault();
+  HEAPF32[dest >> 2] = value;
+ }
+}
+
+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;
+ SAFE_HEAP_STORE($2 | 0, $varargs | 0, 4);
+ $3 = _vsprintf($0, $1, $2) | 0;
+ STACKTOP = sp;
+ return $3 | 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;
+ SAFE_HEAP_STORE($2 | 0, $varargs | 0, 4);
+ $3 = _vfprintf($0, $1, $2) | 0;
+ STACKTOP = sp;
+ return $3 | 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 $$$i$i = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 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;
+ $$$i$i = $6 ? 0 : $8;
+ return $$$i$i | 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(21777, 1287, 21889, 1, 21810);
+  __gcry_fips_noreturn();
+ } else {
+  __gcry_randomize($0, $1, $2);
+  return;
+ }
+}
+
+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 $$$i$i = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 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;
+ $$$i$i = $6 ? 0 : $8;
+ return $$$i$i | 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 _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 __gcry_rngcsprng_set_seed_file($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD(17665 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == (0 | 0);
+ if ($2) {
+  $3 = __gcry_xstrdup($0) | 0;
+  SAFE_HEAP_STORE(17665 * 4 | 0, $3 | 0, 4);
+  return;
+ } else {
+  __gcry_bug(50439, 673, 50868);
+ }
+}
+
+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_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;
+ SAFE_HEAP_STORE($2 | 0, $varargs | 0, 4);
+ __gcry_logv($0, $1, $2);
+ STACKTOP = sp;
+ return;
+}
+
+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(21777, 1175, 21790, 0, 21810);
+ }
+ __gcry_md_hash_buffer($0, $1, $2, $3);
+ return;
+}
+
+function __gcry_gettext($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD(17575 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == (0 | 0);
+ if ($2) {
+  $$0 = $0;
+  return $$0 | 0;
+ }
+ $3 = FUNCTION_TABLE_ii[(SAFE_FT_MASK($1 | 0, 63 | 0) | 0) & 63]($0) | 0;
+ $$0 = $3;
+ return $$0 | 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 = SAFE_HEAP_LOAD($3 | 0, 4, 0) | 0 | 0;
+ STACKTOP = sp;
+ return $4 | 0;
+}
+
+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(21777, 1340, 21904, 1, 21810);
+  __gcry_fips_noreturn();
+ } else {
+  __gcry_create_nonce($0, $1);
+  return;
+ }
+}
+
+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 = SAFE_HEAP_LOAD(17644 * 4 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) == 0;
+ if (!$3) {
+  return;
+ }
+ SAFE_HEAP_STORE(17644 * 4 | 0, 1 | 0, 4);
+ return;
+}
+
+function SAFE_HEAP_LOAD_D(dest, bytes) {
+ dest = dest | 0;
+ bytes = bytes | 0;
+ if ((dest | 0) <= 0) segfault();
+ if ((dest + bytes | 0) > (HEAP32[DYNAMICTOP_PTR >> 2] | 0)) segfault();
+ if ((bytes | 0) == 8) {
+  if (dest & 7) alignfault();
+  return +HEAPF64[dest >> 3];
+ }
+ if (dest & 3) alignfault();
+ return +HEAPF32[dest >> 2];
+}
+
+function _gcry_sexp_new($0, $1, $2, $3) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ $3 = $3 | 0;
+ var $$$i$i = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 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;
+ $$$i$i = $5 ? 0 : $7;
+ return $$$i$i | 0;
+}
+
+function _isxdigit($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $isdigit = 0, $isdigittmp = 0, 
label = 0, sp = 0;
+ sp = STACKTOP;
+ $isdigittmp = $0 + -48 | 0;
+ $isdigit = $isdigittmp >>> 0 < 10;
+ $1 = $0 | 32;
+ $2 = $1 + -97 | 0;
+ $3 = $2 >>> 0 < 6;
+ $4 = $isdigit | $3;
+ $5 = $4 & 1;
+ return $5 | 0;
+}
+
+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;
+ SAFE_HEAP_STORE($1 | 0, $varargs | 0, 4);
+ __gcry_logv(40, $0, $1);
+ _abort();
+}
+
+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 __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;
+ SAFE_HEAP_STORE($1 | 0, $varargs | 0, 4);
+ __gcry_logv(50, $0, $1);
+ _abort();
+}
+
+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 _gcry_mpi_ec_new($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$$i$i = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 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;
+ $$$i$i = $4 ? 0 : $6;
+ return $$$i$i | 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 = SAFE_HEAP_LOAD($2 >> 0 | 0, 1, 0) | 0 | 0;
+ $4 = $1 & 255;
+ $5 = $3 << 24 >> 24 == $4 << 24 >> 24;
+ $6 = $5 ? $2 : 0;
+ return $6 | 0;
+}
+
+function __gcry_rngsystem_initialize($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD(17684 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) == 0;
+ if (!$2) {
+  return;
+ }
+ SAFE_HEAP_STORE(17684 * 4 | 0, 1 | 0, 4);
+ SAFE_HEAP_STORE(17685 * 4 | 0, 0 | 0, 4);
+ return;
+}
+
+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 __gcry_ecc_model2str($0) {
+ $0 = $0 | 0;
+ var $$0 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ switch ($0 | 0) {
+ case 0:
+  {
+   $$0 = 35795;
+   break;
+  }
+ case 1:
+  {
+   $$0 = 45456;
+   break;
+  }
+ case 2:
+  {
+   $$0 = 35787;
+   break;
+  }
+ default:
+  {
+   $$0 = 37665;
+  }
+ }
+ return $$0 | 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;
+  SAFE_HEAP_STORE($3 | 0, $2 | 0, 4);
+  $$0 = -1;
+ } else {
+  $$0 = $0;
+ }
+ return $$0 | 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 _iswgraph($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 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;
+  $6 = $4;
+ } else {
+  $6 = 0;
+ }
+ $5 = $6 & 1;
+ return $5 | 0;
+}
+
+function _iswalnum($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 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;
+  $6 = $4;
+ } else {
+  $6 = 1;
+ }
+ $5 = $6 & 1;
+ return $5 | 0;
+}
+
+function _GNUNET_TIME_get_offset() {
+ var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = 70232;
+ $1 = $0;
+ $2 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = $0 + 4 | 0;
+ $4 = $3;
+ $5 = SAFE_HEAP_LOAD($4 | 0, 4, 0) | 0 | 0;
+ tempRet0 = $5;
+ return $2 | 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 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ __gcry_cipher_close($3);
+ __gcry_free($0);
+ return;
+}
+
+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 __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 _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 _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 _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 __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(46049, $vararg_buffer);
+ STACKTOP = sp;
+ return;
+}
+
+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 __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_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 = SAFE_HEAP_LOAD(17584 * 4 | 0, 4, 0) | 0 | 0;
+ $4 = $3 & $0;
+ $$0 = $2 ? $4 : 0;
+ return $$0 | 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 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[(SAFE_FT_MASK(index | 0, 63 | 0) | 0) & 63](a1 | 0, a2 
| 0, a3 | 0, a4 | 0, a5 | 0, a6 | 0);
+}
+
+function _iswxdigit($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 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;
+ $6 = $2 | $5;
+ $7 = $6 & 1;
+ return $7 | 0;
+}
+
+function _GNUNET_CRYPTO_seed_weak_random($0) {
+ $0 = $0 | 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 = $0;
+ $2 = $1;
+ _srandom($2);
+ STACKTOP = sp;
+ return;
+}
+
+function _iswspace($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == 0;
+ if ($1) {
+  $5 = 0;
+ } else {
+  $2 = _wcschr(16072, $0) | 0;
+  $3 = ($2 | 0) != (0 | 0);
+  $5 = $3;
+ }
+ $4 = $5 & 1;
+ return $4 | 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_enforced_fips_mode() {
+ var $$0 = 0, $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 1;
+ $2 = SAFE_HEAP_LOAD(17608 * 4 | 0, 4, 0) | 0 | 0;
+ $$0 = $1 ? 0 : $2;
+ return $$0 | 0;
+}
+
+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 = SAFE_HEAP_LOAD($0 | 0, 4, 0) | 0 | 0;
+ $2 = _gpg_err_code_from_errno($1) | 0;
+ __gcry_fatal_error($2, 22188);
+}
+
+function __gcry_global_is_operational() {
+ var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = SAFE_HEAP_LOAD(17581 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 0;
+ if ($1) {
+  _global_init();
+ }
+ $2 = __gcry_fips_is_operational() | 0;
+ return $2 | 0;
+}
+
+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 __gpgrt_es_init() {
+ var $0 = 0, $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = SAFE_HEAP_LOAD(17690 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = ($0 | 0) == 0;
+ if (!$1) {
+  return 0;
+ }
+ SAFE_HEAP_STORE(17690 * 4 | 0, 1 | 0, 4);
+ _atexit(83 | 0) | 0;
+ return 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[(SAFE_FT_MASK(index | 0, 127 | 0) | 0) & 127](a1 | 0, 
a2 | 0, a3 | 0, a4 | 0, a5 | 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() | 0;
+ $2 = $1 + 188 | 0;
+ $3 = SAFE_HEAP_LOAD($2 | 0, 4, 0) | 0 | 0;
+ $4 = ___strerror_l($0, $3) | 0;
+ return $4 | 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 _do_setxid($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = $0 + 16 | 0;
+ $2 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ $3 = ($2 | 0) > 0;
+ if (!$3) {
+  SAFE_HEAP_STORE($1 | 0, 1 | 0, 4);
+ }
+ return;
+}
+
+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 runPostSets() {}
+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;
+ return (tempRet0 = h, l | 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 __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_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_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_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 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[(SAFE_FT_MASK(index | 0, 127 | 0) | 0) & 127](a1 
| 0, a2 | 0, a3 | 0, a4 | 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 __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 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 _isspace($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ($0 | 0) == 32;
+ $2 = $0 + -9 | 0;
+ $3 = $2 >>> 0 < 5;
+ $4 = $1 | $3;
+ $5 = $4 & 1;
+ return $5 | 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[(SAFE_FT_MASK(index | 0, 63 | 0) | 0) & 63](a1 | 0, a2 | 
0, a3 | 0, a4 | 0);
+}
+
+function __gcry_log_verbosity($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, $3 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = SAFE_HEAP_LOAD(17580 * 4 | 0, 4, 0) | 0 | 0;
+ $2 = ($1 | 0) >= ($0 | 0);
+ $3 = $2 & 1;
+ return $3 | 0;
+}
+
+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_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_secmem_malloc($0) {
+ $0 = $0 | 0;
+ var $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ _gpgrt_lock_lock(1268) | 0;
+ $1 = __gcry_secmem_malloc_internal($0) | 0;
+ _gpgrt_lock_unlock(1268) | 0;
+ return $1 | 0;
+}
+
+function __gcry_register_primegen_progress($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE(17614 * 4 | 0, $0 | 0, 4);
+ SAFE_HEAP_STORE(17615 * 4 | 0, $1 | 0, 4);
+ return;
+}
+
+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 __gcry_register_random_progress($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE(17620 * 4 | 0, $0 | 0, 4);
+ SAFE_HEAP_STORE(17621 * 4 | 0, $1 | 0, 4);
+ 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_set_fatalerror_handler($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE(17576 * 4 | 0, $1 | 0, 4);
+ SAFE_HEAP_STORE(17577 * 4 | 0, $0 | 0, 4);
+ 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 _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_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 _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 _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 __gcry_sexp_cadr($0) {
+ $0 = $0 | 0;
+ var $1 = 0, $2 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = __gcry_sexp_cdr($0) | 0;
+ $2 = __gcry_sexp_nth($1, 0) | 0;
+ __gcry_sexp_release($1);
+ return $2 | 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_mul($0, $1, $2);
+ __gcry_mpi_tdiv_r($0, $0, $3);
+ return;
+}
+
+function dynCall_iiii(index, a1, a2, a3) {
+ index = index | 0;
+ a1 = a1 | 0;
+ a2 = a2 | 0;
+ a3 = a3 | 0;
+ return FUNCTION_TABLE_iiii[(SAFE_FT_MASK(index | 0, 127 | 0) | 0) & 127](a1 | 
0, a2 | 0, a3 | 0) | 0;
+}
+
+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 = SAFE_HEAP_LOAD($1 | 0, 4, 0) | 0 | 0;
+ __gcry_free($2);
+ 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 ___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 __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_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 _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($0, $1, $2, -1, 0) | 0;
+ $4 = tempRet0;
+ 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 _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 dynCall_viii(index, a1, a2, a3) {
+ index = index | 0;
+ a1 = a1 | 0;
+ a2 = a2 | 0;
+ a3 = a3 | 0;
+ FUNCTION_TABLE_viii[(SAFE_FT_MASK(index | 0, 127 | 0) | 0) & 127](a1 | 0, a2 
| 0, a3 | 0);
+}
+
+function _run_selftests_1807($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var $$ = 0, $3 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $3 = ($0 | 0) == 18;
+ $$ = $3 ? 0 : 4;
+ return $$ | 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 _i64Add(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 + (l >>> 0 < a >>> 0 | 0) >>> 0;
+ return (tempRet0 = h, l | 0) | 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_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_secmem_free($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ _gpgrt_lock_lock(1268) | 0;
+ __gcry_secmem_free_internal($0);
+ _gpgrt_lock_unlock(1268) | 0;
+ 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_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 _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 _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 _GNUNET_util_cl_init() {
+ var $0 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = SAFE_HEAP_LOAD(3935 * 4 | 0, 4, 0) | 0 | 0;
+ SAFE_HEAP_STORE(17562 * 4 | 0, $0 | 0, 4);
+ return;
+}
+
+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 _do_deinit() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gpgrt_fflush(0) | 0;
+ SAFE_HEAP_STORE(17691 * 4 | 0, 0 | 0, 4);
+ SAFE_HEAP_STORE(17692 * 4 | 0, 0 | 0, 4);
+ 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_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_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 dynCall_iii(index, a1, a2) {
+ index = index | 0;
+ a1 = a1 | 0;
+ a2 = a2 | 0;
+ return FUNCTION_TABLE_iii[(SAFE_FT_MASK(index | 0, 127 | 0) | 0) & 127](a1 | 
0, a2 | 0) | 0;
+}
+
+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 __gcry_secmem_init($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ _gpgrt_lock_lock(1268) | 0;
+ _secmem_init($0);
+ _gpgrt_lock_unlock(1268) | 0;
+ return;
+}
+
+function ___synccall($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ FUNCTION_TABLE_vi[(SAFE_FT_MASK($0 | 0, 127 | 0) | 0) & 127]($1);
+ return;
+}
+
+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 _get_weak_random() {
+ var $0 = 0, $1 = 0.0, $2 = 0.0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = _random() | 0;
+ $1 = +($0 | 0);
+ $2 = $1 / 2147483647.0;
+ return +$2;
+}
+
+function __gpg_err_set_errno($0) {
+ $0 = $0 | 0;
+ var $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = ___errno_location() | 0;
+ SAFE_HEAP_STORE($1 | 0, $0 | 0, 4);
+ return;
+}
+
+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 _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 _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_rngcsprng_is_faked() {
+ var $0 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ _initialize();
+ $0 = SAFE_HEAP_LOAD(17661 * 4 | 0, 4, 0) | 0 | 0;
+ return $0 | 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_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 SAFE_FT_MASK(value, mask) {
+ value = value | 0;
+ mask = mask | 0;
+ var ret = 0;
+ ret = value & mask;
+ if ((ret | 0) != (value | 0)) ftfault();
+ return ret | 0;
+}
+
+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_log_printhex($0, $1, $2) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ $2 = $2 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ _do_printhex($0, 22120, $1, $2);
+ return;
+}
+
+function dynCall_vii(index, a1, a2) {
+ index = index | 0;
+ a1 = a1 | 0;
+ a2 = a2 | 0;
+ FUNCTION_TABLE_vii[(SAFE_FT_MASK(index | 0, 63 | 0) | 0) & 63](a1 | 0, a2 | 
0);
+}
+
+function __gcry_fips_mode() {
+ var $0 = 0, $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = SAFE_HEAP_LOAD(17607 * 4 | 0, 4, 0) | 0 | 0;
+ $1 = $0 ^ 1;
+ return $1 | 0;
+}
+
+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_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_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 _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 _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 _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_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_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 ___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 _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 _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_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_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 establishStackSpace(stackBase, stackMax) {
+ stackBase = stackBase | 0;
+ stackMax = stackMax | 0;
+ STACKTOP = stackBase;
+ STACK_MAX = stackMax;
+}
+
+function dynCall_ii(index, a1) {
+ index = index | 0;
+ a1 = a1 | 0;
+ return FUNCTION_TABLE_ii[(SAFE_FT_MASK(index | 0, 63 | 0) | 0) & 63](a1 | 0) 
| 0;
+}
+
+function __gcry_rndhw_failed_p() {
+ var $0 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = SAFE_HEAP_LOAD(17689 * 4 | 0, 4, 0) | 0 | 0;
+ return $0 | 0;
+}
+
+function setThrew(threw, value) {
+ threw = threw | 0;
+ value = value | 0;
+ if ((__THREW__ | 0) == 0) {
+  __THREW__ = threw;
+  threwValue = value;
+ }
+}
+
+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 _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_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_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 ___errno_location() {
+ var $0 = 0, $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = _pthread_self() | 0;
+ $1 = $0 + 64 | 0;
+ return $1 | 0;
+}
+
+function _GNUNET_get_log_skip() {
+ var $0 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = SAFE_HEAP_LOAD(17572 * 4 | 0, 4, 0) | 0 | 0;
+ return $0 | 0;
+}
+
+function _srandom($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ ___lock(70852 | 0);
+ ___srandom($0);
+ ___unlock(70852 | 0);
+ return;
+}
+
+function b889(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(63);
+}
+
+function b888(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(62);
+}
+
+function b887(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(61);
+}
+
+function b886(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(60);
+}
+
+function b885(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(58);
+}
+
+function b884(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(57);
+}
+
+function b883(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(56);
+}
+
+function b882(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(55);
+}
+
+function b881(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(54);
+}
+
+function b880(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(53);
+}
+
+function b879(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(52);
+}
+
+function b878(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(51);
+}
+
+function b877(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(50);
+}
+
+function b876(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(49);
+}
+
+function b875(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(48);
+}
+
+function b874(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(47);
+}
+
+function b873(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(46);
+}
+
+function b872(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(45);
+}
+
+function b871(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(44);
+}
+
+function b870(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(43);
+}
+
+function b869(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(42);
+}
+
+function b868(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(41);
+}
+
+function b867(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(40);
+}
+
+function b866(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(39);
+}
+
+function b865(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(38);
+}
+
+function b864(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(37);
+}
+
+function b863(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(36);
+}
+
+function b862(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(35);
+}
+
+function b861(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(34);
+}
+
+function b860(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(33);
+}
+
+function b859(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(32);
+}
+
+function b858(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(31);
+}
+
+function b857(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(30);
+}
+
+function b856(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(29);
+}
+
+function b855(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(28);
+}
+
+function b854(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(27);
+}
+
+function b853(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(26);
+}
+
+function b852(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(25);
+}
+
+function b851(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(24);
+}
+
+function b850(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(23);
+}
+
+function b849(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(22);
+}
+
+function b848(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(21);
+}
+
+function b847(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(20);
+}
+
+function b846(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(19);
+}
+
+function b845(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(18);
+}
+
+function b844(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(17);
+}
+
+function b843(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(16);
+}
+
+function b842(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(15);
+}
+
+function b841(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(14);
+}
+
+function b840(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(13);
+}
+
+function b839(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(12);
+}
+
+function b838(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(11);
+}
+
+function b837(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);
+}
+
+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 _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 _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 __gcry_set_log_verbosity($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE(17580 * 4 | 0, $0 | 0, 4);
+ return;
+}
+
+function b836(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(9);
+}
+
+function b835(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(8);
+}
+
+function b834(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(7);
+}
+
+function b833(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(6);
+}
+
+function b832(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(5);
+}
+
+function b831(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(4);
+}
+
+function b830(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(3);
+}
+
+function b829(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(2);
+}
+
+function b828(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(1);
+}
+
+function b827(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(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_init($0) {
+ $0 = $0 | 0;
+ var $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = __gpgrt_lock_init($0) | 0;
+ return $1 | 0;
+}
+
+function dynCall_vi(index, a1) {
+ index = index | 0;
+ a1 = a1 | 0;
+ FUNCTION_TABLE_vi[(SAFE_FT_MASK(index | 0, 127 | 0) | 0) & 127](a1 | 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_rngcsprng_enable_quick_gen() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE(17661 * 4 | 0, 1 | 0, 4);
+ return;
+}
+
+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 __gcry_strerror($0) {
+ $0 = $0 | 0;
+ var $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = _gpg_strerror($0) | 0;
+ return $1 | 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 _gpg_strerror($0) {
+ $0 = $0 | 0;
+ var $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = __gpg_strerror($0) | 0;
+ return $1 | 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_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 _strcpy($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ ___stpcpy($0, $1) | 0;
+ return $0 | 0;
+}
+
+function _ntohl($0) {
+ $0 = $0 | 0;
+ var $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = _llvm_bswap_i32($0 | 0) | 0;
+ return $1 | 0;
+}
+
+function _htonl($0) {
+ $0 = $0 | 0;
+ var $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = _llvm_bswap_i32($0 | 0) | 0;
+ return $1 | 0;
+}
+
+function __gcry_set_enforced_fips_mode() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE(17608 * 4 | 0, 1 | 0, 4);
+ return;
+}
+
+function __gcry_rngcsprng_secure_alloc() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE(17647 * 4 | 0, 1 | 0, 4);
+ return;
+}
+
+function __gcry_private_enable_m_guard() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ SAFE_HEAP_STORE(17594 * 4 | 0, 1 | 0, 4);
+ return;
+}
+
+function _gcry_mpi_point_release($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_mpi_point_release($0);
+ return;
+}
+
+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 b214(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(127);
+}
+
+function b213(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(126);
+}
+
+function b212(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(125);
+}
+
+function b211(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(124);
+}
+
+function b210(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(123);
+}
+
+function b209(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(122);
+}
+
+function b208(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(121);
+}
+
+function b207(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(120);
+}
+
+function b206(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(119);
+}
+
+function b205(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(118);
+}
+
+function b204(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(117);
+}
+
+function b203(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(116);
+}
+
+function b202(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(115);
+}
+
+function b201(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(114);
+}
+
+function b200(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(113);
+}
+
+function b199(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(112);
+}
+
+function b198(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(111);
+}
+
+function b197(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(110);
+}
+
+function b196(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(109);
+}
+
+function b195(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(108);
+}
+
+function b194(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(107);
+}
+
+function b193(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(106);
+}
+
+function b192(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(105);
+}
+
+function b191(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(104);
+}
+
+function b190(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(103);
+}
+
+function b189(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(102);
+}
+
+function b188(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(101);
+}
+
+function b187(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(100);
+}
+
+function b186(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(99);
+}
+
+function b185(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(98);
+}
+
+function b184(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(97);
+}
+
+function b183(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(96);
+}
+
+function b182(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(95);
+}
+
+function b181(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(94);
+}
+
+function b180(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(93);
+}
+
+function b179(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(92);
+}
+
+function b178(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(91);
+}
+
+function b177(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(90);
+}
+
+function b176(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(89);
+}
+
+function b175(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(88);
+}
+
+function b174(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(87);
+}
+
+function b173(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(86);
+}
+
+function b172(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(85);
+}
+
+function b171(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(84);
+}
+
+function b170(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(83);
+}
+
+function b169(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(82);
+}
+
+function b168(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(81);
+}
+
+function b167(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(80);
+}
+
+function b166(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(79);
+}
+
+function b165(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(78);
+}
+
+function b164(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(77);
+}
+
+function b163(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(76);
+}
+
+function b162(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(75);
+}
+
+function b161(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(74);
+}
+
+function b160(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(73);
+}
+
+function b159(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(72);
+}
+
+function b158(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(71);
+}
+
+function b157(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(70);
+}
+
+function b156(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(69);
+}
+
+function b155(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(68);
+}
+
+function b154(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(67);
+}
+
+function b153(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(63);
+}
+
+function b152(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(59);
+}
+
+function b151(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(56);
+}
+
+function b150(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(55);
+}
+
+function b149(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(54);
+}
+
+function b148(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(53);
+}
+
+function b147(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(52);
+}
+
+function b146(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(51);
+}
+
+function b145(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(50);
+}
+
+function b144(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(49);
+}
+
+function b143(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(48);
+}
+
+function b142(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(47);
+}
+
+function b141(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(46);
+}
+
+function b140(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(45);
+}
+
+function b139(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(44);
+}
+
+function b138(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(43);
+}
+
+function b137(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(42);
+}
+
+function b136(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(41);
+}
+
+function b135(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(40);
+}
+
+function b134(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(39);
+}
+
+function b133(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(38);
+}
+
+function b132(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(37);
+}
+
+function b131(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(36);
+}
+
+function b130(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(35);
+}
+
+function b129(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(34);
+}
+
+function b128(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(33);
+}
+
+function b127(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(32);
+}
+
+function b126(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(31);
+}
+
+function b125(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(30);
+}
+
+function b124(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(29);
+}
+
+function b123(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(28);
+}
+
+function b122(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(27);
+}
+
+function b121(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(26);
+}
+
+function b120(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(25);
+}
+
+function b119(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(24);
+}
+
+function b118(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(23);
+}
+
+function b117(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(22);
+}
+
+function b116(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(21);
+}
+
+function b115(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(20);
+}
+
+function b114(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(19);
+}
+
+function b113(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(18);
+}
+
+function b112(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(17);
+}
+
+function b111(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(16);
+}
+
+function b110(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(15);
+}
+
+function b109(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(14);
+}
+
+function b108(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(13);
+}
+
+function b107(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(12);
+}
+
+function b106(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(11);
+}
+
+function b105(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(10);
+}
+
+function _llvm_bswap_i32(x) {
+ x = x | 0;
+ return (x & 255) << 24 | (x >> 8 & 255) << 16 | (x >> 16 & 255) << 8 | x >>> 
24 | 0;
+}
+
+function b104(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(9);
+}
+
+function b103(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(8);
+}
+
+function b102(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(7);
+}
+
+function b101(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(6);
+}
+
+function b100(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(5);
+}
+
+function _iswblank($0) {
+ $0 = $0 | 0;
+ var $1 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $1 = _isblank($0) | 0;
+ return $1 | 0;
+}
+
+function b99(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(4);
+}
+
+function b98(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(3);
+}
+
+function b97(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(2);
+}
+
+function b96(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(1);
+}
+
+function b95(p0, p1, p2, p3, p4) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ p4 = p4 | 0;
+ nullFunc_viiiii(0);
+}
+
+function _GNUNET_CRYPTO_random_fini() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ _gcry_set_progress_handler(0, 0);
+ return;
+}
+
+function _gpg_err_set_errno($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gpg_err_set_errno($0);
+ return;
+}
+
+function _gcry_sexp_release($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_sexp_release($0);
+ return;
+}
+
+function _gcry_cipher_close($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_cipher_close($0);
+ return;
+}
+
+function b825(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(127);
+ return 0;
+}
+
+function b824(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(126);
+ return 0;
+}
+
+function b823(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(125);
+ return 0;
+}
+
+function b822(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(124);
+ return 0;
+}
+
+function b821(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(123);
+ return 0;
+}
+
+function b820(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(122);
+ return 0;
+}
+
+function b819(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(121);
+ return 0;
+}
+
+function b818(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(120);
+ return 0;
+}
+
+function b817(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(119);
+ return 0;
+}
+
+function b816(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(118);
+ return 0;
+}
+
+function b815(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(117);
+ return 0;
+}
+
+function b814(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(116);
+ return 0;
+}
+
+function b813(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(115);
+ return 0;
+}
+
+function b812(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(114);
+ return 0;
+}
+
+function b811(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(113);
+ return 0;
+}
+
+function b810(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(112);
+ return 0;
+}
+
+function b809(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(111);
+ return 0;
+}
+
+function b808(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(110);
+ return 0;
+}
+
+function b807(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(109);
+ return 0;
+}
+
+function b806(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(108);
+ return 0;
+}
+
+function b805(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(107);
+ return 0;
+}
+
+function b804(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(106);
+ return 0;
+}
+
+function b803(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(105);
+ return 0;
+}
+
+function b802(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(104);
+ return 0;
+}
+
+function b801(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(103);
+ return 0;
+}
+
+function b800(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(102);
+ return 0;
+}
+
+function b799(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(101);
+ return 0;
+}
+
+function b798(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(100);
+ return 0;
+}
+
+function _gcry_mpi_release($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_mpi_release($0);
+ return;
+}
+
+function _gcry_ctx_release($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_ctx_release($0);
+ return;
+}
+
+function __gcry_rndhw_poll_slow($0, $1) {
+ $0 = $0 | 0;
+ $1 = $1 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function b797(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(99);
+ return 0;
+}
+
+function b796(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(98);
+ return 0;
+}
+
+function b795(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(97);
+ return 0;
+}
+
+function b794(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(96);
+ return 0;
+}
+
+function b793(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(95);
+ return 0;
+}
+
+function b792(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(94);
+ return 0;
+}
+
+function b791(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(93);
+ return 0;
+}
+
+function b790(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(92);
+ return 0;
+}
+
+function b789(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(91);
+ return 0;
+}
+
+function b788(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(90);
+ return 0;
+}
+
+function b787(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(89);
+ return 0;
+}
+
+function b786(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(88);
+ return 0;
+}
+
+function b785(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(87);
+ return 0;
+}
+
+function b784(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(86);
+ return 0;
+}
+
+function b783(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(85);
+ return 0;
+}
+
+function b782(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(84);
+ return 0;
+}
+
+function b781(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(83);
+ return 0;
+}
+
+function b780(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(82);
+ return 0;
+}
+
+function b779(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(81);
+ return 0;
+}
+
+function b778(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(80);
+ return 0;
+}
+
+function b777(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(77);
+ return 0;
+}
+
+function b776(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(76);
+ return 0;
+}
+
+function b775(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(75);
+ return 0;
+}
+
+function b774(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(74);
+ return 0;
+}
+
+function b773(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(73);
+ return 0;
+}
+
+function b772(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(72);
+ return 0;
+}
+
+function b771(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(71);
+ return 0;
+}
+
+function b770(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(70);
+ return 0;
+}
+
+function b769(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(69);
+ return 0;
+}
+
+function b768(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(68);
+ return 0;
+}
+
+function b767(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(67);
+ return 0;
+}
+
+function b766(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(66);
+ return 0;
+}
+
+function b765(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(65);
+ return 0;
+}
+
+function b764(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(64);
+ return 0;
+}
+
+function b763(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(63);
+ return 0;
+}
+
+function b762(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(62);
+ return 0;
+}
+
+function b761(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(61);
+ return 0;
+}
+
+function b760(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(60);
+ return 0;
+}
+
+function b759(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(59);
+ return 0;
+}
+
+function b758(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(58);
+ return 0;
+}
+
+function b757(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(57);
+ return 0;
+}
+
+function b756(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(56);
+ return 0;
+}
+
+function b755(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(55);
+ return 0;
+}
+
+function b754(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(54);
+ return 0;
+}
+
+function b753(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(53);
+ return 0;
+}
+
+function b752(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(52);
+ return 0;
+}
+
+function b751(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(51);
+ return 0;
+}
+
+function b750(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(50);
+ return 0;
+}
+
+function b749(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(49);
+ return 0;
+}
+
+function b748(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(47);
+ return 0;
+}
+
+function b747(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(46);
+ return 0;
+}
+
+function b746(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(45);
+ return 0;
+}
+
+function b745(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(44);
+ return 0;
+}
+
+function b744(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(43);
+ return 0;
+}
+
+function b743(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(42);
+ return 0;
+}
+
+function b742(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(41);
+ return 0;
+}
+
+function b741(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(40);
+ return 0;
+}
+
+function b740(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(39);
+ return 0;
+}
+
+function b739(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(38);
+ return 0;
+}
+
+function b738(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(37);
+ return 0;
+}
+
+function b737(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(36);
+ return 0;
+}
+
+function b736(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(35);
+ return 0;
+}
+
+function b735(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(34);
+ return 0;
+}
+
+function b734(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(33);
+ return 0;
+}
+
+function b733(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(32);
+ return 0;
+}
+
+function b732(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(31);
+ return 0;
+}
+
+function b731(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(30);
+ return 0;
+}
+
+function b730(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(29);
+ return 0;
+}
+
+function b729(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(28);
+ return 0;
+}
+
+function b728(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(27);
+ return 0;
+}
+
+function b727(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(26);
+ return 0;
+}
+
+function b726(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(25);
+ return 0;
+}
+
+function b725(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(24);
+ return 0;
+}
+
+function b724(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(23);
+ return 0;
+}
+
+function b723(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(22);
+ return 0;
+}
+
+function b722(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(21);
+ return 0;
+}
+
+function b721(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(20);
+ return 0;
+}
+
+function b720(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(19);
+ return 0;
+}
+
+function b719(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(18);
+ return 0;
+}
+
+function b718(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(17);
+ return 0;
+}
+
+function b717(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(16);
+ return 0;
+}
+
+function b716(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(15);
+ return 0;
+}
+
+function b715(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(14);
+ return 0;
+}
+
+function b714(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(13);
+ return 0;
+}
+
+function b713(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(12);
+ return 0;
+}
+
+function b712(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(11);
+ return 0;
+}
+
+function b711(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(10);
+ return 0;
+}
+
+function b710(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(9);
+ return 0;
+}
+
+function b709(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(8);
+ return 0;
+}
+
+function b708(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(7);
+ return 0;
+}
+
+function b707(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(6);
+ return 0;
+}
+
+function b706(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(5);
+ return 0;
+}
+
+function b705(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(4);
+ return 0;
+}
+
+function b704(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(3);
+ return 0;
+}
+
+function b703(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(2);
+ return 0;
+}
+
+function b702(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(1);
+ return 0;
+}
+
+function b701(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_iiiii(0);
+ return 0;
+}
+
+function _gpg_err_init() {
+ var $0 = 0, label = 0, sp = 0;
+ sp = STACKTOP;
+ $0 = __gpg_err_init() | 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_mpi_release($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_mpi_free($0);
+ return;
+}
+
+function dynCall_v(index) {
+ index = index | 0;
+ FUNCTION_TABLE_v[(SAFE_FT_MASK(index | 0, 127 | 0) | 0) & 127]();
+}
+
+function _gcry_md_reset($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_md_reset($0);
+ return;
+}
+
+function _gcry_md_close($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_md_close($0);
+ return;
+}
+
+function __gcry_rngcsprng_set_daemon_socket($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return;
+}
+
+function b1076(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(63);
+}
+
+function b1075(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(62);
+}
+
+function b1074(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(61);
+}
+
+function b1073(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(60);
+}
+
+function b1072(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(59);
+}
+
+function b1071(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(58);
+}
+
+function b1070(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(57);
+}
+
+function b1069(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(55);
+}
+
+function b1068(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(54);
+}
+
+function b1067(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(53);
+}
+
+function b1066(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(52);
+}
+
+function b1065(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(51);
+}
+
+function b1064(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(50);
+}
+
+function b1063(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(49);
+}
+
+function b1062(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(48);
+}
+
+function b1061(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(47);
+}
+
+function b1060(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(46);
+}
+
+function b1059(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(45);
+}
+
+function b1058(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(44);
+}
+
+function b1057(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(43);
+}
+
+function b1056(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(42);
+}
+
+function b1055(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(41);
+}
+
+function b1054(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(40);
+}
+
+function b1053(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(39);
+}
+
+function b1052(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(38);
+}
+
+function b1051(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(37);
+}
+
+function b1050(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(36);
+}
+
+function b1049(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(35);
+}
+
+function b1048(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(34);
+}
+
+function b1047(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(33);
+}
+
+function b1046(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(32);
+}
+
+function b1045(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(31);
+}
+
+function b1044(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(30);
+}
+
+function b1043(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(29);
+}
+
+function b1042(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(28);
+}
+
+function b1041(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(27);
+}
+
+function b1040(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(26);
+}
+
+function b1039(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(25);
+}
+
+function b1038(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(24);
+}
+
+function b1037(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(23);
+}
+
+function b1036(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(22);
+}
+
+function b1035(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(21);
+}
+
+function b1034(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(20);
+}
+
+function b1033(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(19);
+}
+
+function b1032(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(18);
+}
+
+function b1031(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(17);
+}
+
+function b1030(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(16);
+}
+
+function b1029(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(15);
+}
+
+function b1028(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(14);
+}
+
+function b1027(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(13);
+}
+
+function b1026(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(12);
+}
+
+function b1025(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(11);
+}
+
+function b1024(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(10);
+}
+
+function __gcry_md_close($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ _md_close($0);
+ return;
+}
+
+function b1023(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(9);
+}
+
+function b1022(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(8);
+}
+
+function b1021(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(7);
+}
+
+function b1020(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(6);
+}
+
+function b1019(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(5);
+}
+
+function b1018(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(4);
+}
+
+function b1017(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(3);
+}
+
+function b1016(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(2);
+}
+
+function b1015(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(1);
+}
+
+function b1014(p0, p1, p2, p3) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ p3 = p3 | 0;
+ nullFunc_viiii(0);
+}
+
+function __gcry_rngcsprng_use_daemon($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function _gcry_free($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gcry_free($0);
+ return;
+}
+
+function ___ofl_lock() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ ___lock(70840 | 0);
+ return 70848 | 0;
+}
+
+function setDynamicTop(value) {
+ value = value | 0;
+ SAFE_HEAP_STORE(DYNAMICTOP_PTR | 0, value | 0, 4);
+}
+
+function __gpg_err_init() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ __gpgrt_es_init() | 0;
+ return 0;
+}
+
+function __gcry_fips_noreturn() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ _fflush(0) | 0;
+ _abort();
+}
+
+function b93(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(127);
+ return 0;
+}
+
+function b92(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(126);
+ return 0;
+}
+
+function b91(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(125);
+ return 0;
+}
+
+function b90(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(124);
+ return 0;
+}
+
+function b89(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(123);
+ return 0;
+}
+
+function b88(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(122);
+ return 0;
+}
+
+function b87(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(121);
+ return 0;
+}
+
+function b86(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(120);
+ return 0;
+}
+
+function b85(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(119);
+ return 0;
+}
+
+function b84(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(118);
+ return 0;
+}
+
+function b83(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(117);
+ return 0;
+}
+
+function b82(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(116);
+ return 0;
+}
+
+function b81(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(115);
+ return 0;
+}
+
+function b80(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(114);
+ return 0;
+}
+
+function b79(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(113);
+ return 0;
+}
+
+function b78(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(112);
+ return 0;
+}
+
+function b77(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(111);
+ return 0;
+}
+
+function b76(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(110);
+ return 0;
+}
+
+function b75(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(109);
+ return 0;
+}
+
+function b74(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(108);
+ return 0;
+}
+
+function b73(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(107);
+ return 0;
+}
+
+function b72(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(106);
+ return 0;
+}
+
+function b71(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(105);
+ return 0;
+}
+
+function b70(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(104);
+ return 0;
+}
+
+function b69(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(103);
+ return 0;
+}
+
+function b68(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(102);
+ return 0;
+}
+
+function b67(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(101);
+ return 0;
+}
+
+function b66(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(100);
+ return 0;
+}
+
+function __gcry_compat_identification() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 46300 | 0;
+}
+
+function b65(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(99);
+ return 0;
+}
+
+function b64(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(98);
+ return 0;
+}
+
+function b63(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(97);
+ return 0;
+}
+
+function b62(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(96);
+ return 0;
+}
+
+function b61(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(95);
+ return 0;
+}
+
+function b60(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(94);
+ return 0;
+}
+
+function b59(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(93);
+ return 0;
+}
+
+function b58(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(92);
+ return 0;
+}
+
+function b57(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(91);
+ return 0;
+}
+
+function b56(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(90);
+ return 0;
+}
+
+function b55(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(89);
+ return 0;
+}
+
+function b54(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(88);
+ return 0;
+}
+
+function b53(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(87);
+ return 0;
+}
+
+function b52(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(86);
+ return 0;
+}
+
+function b51(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(84);
+ return 0;
+}
+
+function b50(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(83);
+ return 0;
+}
+
+function b49(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(82);
+ return 0;
+}
+
+function b48(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(81);
+ return 0;
+}
+
+function b47(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(80);
+ return 0;
+}
+
+function b46(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(79);
+ return 0;
+}
+
+function b45(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(78);
+ return 0;
+}
+
+function b44(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(77);
+ return 0;
+}
+
+function b43(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(73);
+ return 0;
+}
+
+function b42(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(71);
+ return 0;
+}
+
+function b41(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(70);
+ return 0;
+}
+
+function b40(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(67);
+ return 0;
+}
+
+function b39(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(66);
+ return 0;
+}
+
+function b38(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(65);
+ return 0;
+}
+
+function b37(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(64);
+ return 0;
+}
+
+function b36(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(63);
+ return 0;
+}
+
+function b35(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(62);
+ return 0;
+}
+
+function b34(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(61);
+ return 0;
+}
+
+function b33(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(60);
+ return 0;
+}
+
+function b32(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(59);
+ return 0;
+}
+
+function b31(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(58);
+ return 0;
+}
+
+function b30(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(57);
+ return 0;
+}
+
+function b29(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(56);
+ return 0;
+}
+
+function b28(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(49);
+ return 0;
+}
+
+function b27(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(48);
+ return 0;
+}
+
+function b26(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(46);
+ return 0;
+}
+
+function b25(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(45);
+ return 0;
+}
+
+function b24(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(43);
+ return 0;
+}
+
+function b23(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(41);
+ return 0;
+}
+
+function b22(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(36);
+ return 0;
+}
+
+function b21(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(35);
+ return 0;
+}
+
+function b20(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(31);
+ return 0;
+}
+
+function b19(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(29);
+ return 0;
+}
+
+function b18(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(28);
+ return 0;
+}
+
+function b17(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(27);
+ return 0;
+}
+
+function b16(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(26);
+ return 0;
+}
+
+function b15(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(24);
+ return 0;
+}
+
+function b14(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(23);
+ return 0;
+}
+
+function b13(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(22);
+ return 0;
+}
+
+function b12(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(20);
+ return 0;
+}
+
+function b11(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(19);
+ return 0;
+}
+
+function b10(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(18);
+ return 0;
+}
+
+function _emscripten_get_global_libc() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 70776 | 0;
+}
+
+function b9(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(17);
+ return 0;
+}
+
+function b8(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(15);
+ return 0;
+}
+
+function b7(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(10);
+ return 0;
+}
+
+function ___ofl_unlock() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ ___unlock(70840 | 0);
+ return;
+}
+
+function b6(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(9);
+ return 0;
+}
+
+function b5(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(8);
+ return 0;
+}
+
+function b4(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(7);
+ return 0;
+}
+
+function b3(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(6);
+ return 0;
+}
+
+function b2(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(5);
+ return 0;
+}
+
+function b1(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_iiii(0);
+ return 0;
+}
+
+function _sha512_read($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return $0 | 0;
+}
+
+function _sha256_read($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return $0 | 0;
+}
+
+function _rmd160_read($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return $0 | 0;
+}
+
+function __gcry_mpi_get_hw_config() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 45905 | 0;
+}
+
+function _sha1_read($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return $0 | 0;
+}
+
+function _dummy_128($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return $0 | 0;
+}
+
+function ___unlockfile($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return;
+}
+
+function ___lockfile($0) {
+ $0 = $0 | 0;
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function b573(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(127);
+}
+
+function b572(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(126);
+}
+
+function b571(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(125);
+}
+
+function b570(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(124);
+}
+
+function b569(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(123);
+}
+
+function b568(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(122);
+}
+
+function b567(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(121);
+}
+
+function b566(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(120);
+}
+
+function b565(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(119);
+}
+
+function b564(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(118);
+}
+
+function b563(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(117);
+}
+
+function b562(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(116);
+}
+
+function b561(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(115);
+}
+
+function b560(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(114);
+}
+
+function b559(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(113);
+}
+
+function b558(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(112);
+}
+
+function b557(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(111);
+}
+
+function b556(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(110);
+}
+
+function b555(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(109);
+}
+
+function b554(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(108);
+}
+
+function b553(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(107);
+}
+
+function b552(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(106);
+}
+
+function b551(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(105);
+}
+
+function b550(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(104);
+}
+
+function b549(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(103);
+}
+
+function b548(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(102);
+}
+
+function b547(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(101);
+}
+
+function b546(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(100);
+}
+
+function b545(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(99);
+}
+
+function b544(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(98);
+}
+
+function b543(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(97);
+}
+
+function b542(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(96);
+}
+
+function b541(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(95);
+}
+
+function b540(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(94);
+}
+
+function b539(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(93);
+}
+
+function b538(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(92);
+}
+
+function b537(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(91);
+}
+
+function b536(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(90);
+}
+
+function b535(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(89);
+}
+
+function b534(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(88);
+}
+
+function b533(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(87);
+}
+
+function b532(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(86);
+}
+
+function b531(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(85);
+}
+
+function b530(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(83);
+}
+
+function b529(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(79);
+}
+
+function b528(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(78);
+}
+
+function b527(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(77);
+}
+
+function b526(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(76);
+}
+
+function b525(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(75);
+}
+
+function b524(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(74);
+}
+
+function b523(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(73);
+}
+
+function b522(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(72);
+}
+
+function b521(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(71);
+}
+
+function b520(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(70);
+}
+
+function b519(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(69);
+}
+
+function b518(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(68);
+}
+
+function b517(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(67);
+}
+
+function b516(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(66);
+}
+
+function b515(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(65);
+}
+
+function b514(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(64);
+}
+
+function b513(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(62);
+}
+
+function b512(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(61);
+}
+
+function b511(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(60);
+}
+
+function b510(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(59);
+}
+
+function b509(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(58);
+}
+
+function b508(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(57);
+}
+
+function b507(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(56);
+}
+
+function b506(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(55);
+}
+
+function b505(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(54);
+}
+
+function b504(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(53);
+}
+
+function b503(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(52);
+}
+
+function b502(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(51);
+}
+
+function b501(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(50);
+}
+
+function b500(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(49);
+}
+
+function b499(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(48);
+}
+
+function b498(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(47);
+}
+
+function b497(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(46);
+}
+
+function b496(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(45);
+}
+
+function b495(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(44);
+}
+
+function b494(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(43);
+}
+
+function b493(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(42);
+}
+
+function b492(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(41);
+}
+
+function b491(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(40);
+}
+
+function b490(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(39);
+}
+
+function b489(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(38);
+}
+
+function b488(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(37);
+}
+
+function b487(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(36);
+}
+
+function b486(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(35);
+}
+
+function b485(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(34);
+}
+
+function b484(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(33);
+}
+
+function b483(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(32);
+}
+
+function b482(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(31);
+}
+
+function b481(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(30);
+}
+
+function b480(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(29);
+}
+
+function b479(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(28);
+}
+
+function b478(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(27);
+}
+
+function b477(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(26);
+}
+
+function b476(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(25);
+}
+
+function b475(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(24);
+}
+
+function b474(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(23);
+}
+
+function b473(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(22);
+}
+
+function b472(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(21);
+}
+
+function b471(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(20);
+}
+
+function b470(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(19);
+}
+
+function b469(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(18);
+}
+
+function b468(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(17);
+}
+
+function b467(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(16);
+}
+
+function b466(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(15);
+}
+
+function b465(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(14);
+}
+
+function b464(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(13);
+}
+
+function b463(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(12);
+}
+
+function b462(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(11);
+}
+
+function b461(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(10);
+}
+
+function __gcry_secmem_module_init() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function b460(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(9);
+}
+
+function b459(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(8);
+}
+
+function b458(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(7);
+}
+
+function b457(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(5);
+}
+
+function b456(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(4);
+}
+
+function b455(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(3);
+}
+
+function b454(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(2);
+}
+
+function b453(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(1);
+}
+
+function b452(p0, p1, p2) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ p2 = p2 | 0;
+ nullFunc_viii(0);
+}
+
+function __gcry_rngfips_is_faked() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function __gcry_rngfips_dump_stats() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return;
+}
+
+function __gcry_get_hw_features() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function ___gcry_burn_stack_dummy() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return;
+}
+
+function _pthread_self() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 15492 | 0;
+}
+
+function __gcry_primegen_init() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function b1012(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(127);
+ return 0;
+}
+
+function b1011(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(126);
+ return 0;
+}
+
+function b1010(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(125);
+ return 0;
+}
+
+function b1009(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(124);
+ return 0;
+}
+
+function b1008(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(123);
+ return 0;
+}
+
+function b1007(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(122);
+ return 0;
+}
+
+function b1006(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(121);
+ return 0;
+}
+
+function b1005(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(120);
+ return 0;
+}
+
+function b1004(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(119);
+ return 0;
+}
+
+function b1003(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(118);
+ return 0;
+}
+
+function b1002(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(117);
+ return 0;
+}
+
+function b1001(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(116);
+ return 0;
+}
+
+function b1000(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(115);
+ return 0;
+}
+
+function b999(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(114);
+ return 0;
+}
+
+function b998(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(113);
+ return 0;
+}
+
+function b997(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(112);
+ return 0;
+}
+
+function b996(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(111);
+ return 0;
+}
+
+function b995(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(110);
+ return 0;
+}
+
+function b994(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(109);
+ return 0;
+}
+
+function b993(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(108);
+ return 0;
+}
+
+function b992(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(107);
+ return 0;
+}
+
+function b991(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(106);
+ return 0;
+}
+
+function b990(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(105);
+ return 0;
+}
+
+function b989(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(104);
+ return 0;
+}
+
+function b988(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(103);
+ return 0;
+}
+
+function b987(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(102);
+ return 0;
+}
+
+function b986(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(101);
+ return 0;
+}
+
+function b985(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(100);
+ return 0;
+}
+
+function __gcry_cipher_init() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function _GNUNET_util_cl_fini() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return;
+}
+
+function b984(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(99);
+ return 0;
+}
+
+function b983(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(98);
+ return 0;
+}
+
+function b982(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(97);
+ return 0;
+}
+
+function b981(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(96);
+ return 0;
+}
+
+function b980(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(95);
+ return 0;
+}
+
+function b979(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(94);
+ return 0;
+}
+
+function b978(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(93);
+ return 0;
+}
+
+function b977(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(92);
+ return 0;
+}
+
+function b976(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(91);
+ return 0;
+}
+
+function b975(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(90);
+ return 0;
+}
+
+function b974(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(89);
+ return 0;
+}
+
+function b973(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(88);
+ return 0;
+}
+
+function b972(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(87);
+ return 0;
+}
+
+function b971(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(86);
+ return 0;
+}
+
+function b970(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(85);
+ return 0;
+}
+
+function b969(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(84);
+ return 0;
+}
+
+function b968(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(83);
+ return 0;
+}
+
+function b967(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(82);
+ return 0;
+}
+
+function b966(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(81);
+ return 0;
+}
+
+function b965(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(80);
+ return 0;
+}
+
+function b964(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(79);
+ return 0;
+}
+
+function b963(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(78);
+ return 0;
+}
+
+function b962(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(77);
+ return 0;
+}
+
+function b961(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(76);
+ return 0;
+}
+
+function b960(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(75);
+ return 0;
+}
+
+function b959(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(74);
+ return 0;
+}
+
+function b958(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(72);
+ return 0;
+}
+
+function b957(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(71);
+ return 0;
+}
+
+function b956(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(70);
+ return 0;
+}
+
+function b955(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(69);
+ return 0;
+}
+
+function b954(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(68);
+ return 0;
+}
+
+function b953(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(66);
+ return 0;
+}
+
+function b952(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(65);
+ return 0;
+}
+
+function b951(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(64);
+ return 0;
+}
+
+function b950(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(63);
+ return 0;
+}
+
+function b949(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(62);
+ return 0;
+}
+
+function b948(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(61);
+ return 0;
+}
+
+function b947(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(60);
+ return 0;
+}
+
+function b946(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(59);
+ return 0;
+}
+
+function b945(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(58);
+ return 0;
+}
+
+function b944(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(57);
+ return 0;
+}
+
+function b943(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(56);
+ return 0;
+}
+
+function b942(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(55);
+ return 0;
+}
+
+function b941(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(54);
+ return 0;
+}
+
+function b940(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(53);
+ return 0;
+}
+
+function b939(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(52);
+ return 0;
+}
+
+function b938(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(51);
+ return 0;
+}
+
+function b937(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(50);
+ return 0;
+}
+
+function b936(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(49);
+ return 0;
+}
+
+function b935(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(48);
+ return 0;
+}
+
+function b934(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(47);
+ return 0;
+}
+
+function b933(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(46);
+ return 0;
+}
+
+function b932(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(45);
+ return 0;
+}
+
+function b931(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(44);
+ return 0;
+}
+
+function b930(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(42);
+ return 0;
+}
+
+function b929(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(41);
+ return 0;
+}
+
+function b928(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(40);
+ return 0;
+}
+
+function b927(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(39);
+ return 0;
+}
+
+function b926(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(38);
+ return 0;
+}
+
+function b925(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(37);
+ return 0;
+}
+
+function b924(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(36);
+ return 0;
+}
+
+function b923(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(34);
+ return 0;
+}
+
+function b922(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(33);
+ return 0;
+}
+
+function b921(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(32);
+ return 0;
+}
+
+function b920(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(31);
+ return 0;
+}
+
+function b919(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(30);
+ return 0;
+}
+
+function b918(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(29);
+ return 0;
+}
+
+function b917(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(28);
+ return 0;
+}
+
+function b916(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(27);
+ return 0;
+}
+
+function b915(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(26);
+ return 0;
+}
+
+function b914(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(25);
+ return 0;
+}
+
+function b913(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(24);
+ return 0;
+}
+
+function b912(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(23);
+ return 0;
+}
+
+function b911(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(22);
+ return 0;
+}
+
+function b910(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(21);
+ return 0;
+}
+
+function b909(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(20);
+ return 0;
+}
+
+function b908(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(19);
+ return 0;
+}
+
+function b907(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(18);
+ return 0;
+}
+
+function b906(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(16);
+ return 0;
+}
+
+function b905(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(15);
+ return 0;
+}
+
+function b904(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(14);
+ return 0;
+}
+
+function b903(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(13);
+ return 0;
+}
+
+function b902(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(12);
+ return 0;
+}
+
+function b901(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(11);
+ return 0;
+}
+
+function b900(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(10);
+ return 0;
+}
+
+function b899(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(8);
+ return 0;
+}
+
+function b898(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(7);
+ return 0;
+}
+
+function b897(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(6);
+ return 0;
+}
+
+function b896(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(5);
+ return 0;
+}
+
+function b895(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(4);
+ return 0;
+}
+
+function b894(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(3);
+ return 0;
+}
+
+function b893(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(2);
+ return 0;
+}
+
+function b892(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(1);
+ return 0;
+}
+
+function b891(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_iii(0);
+ return 0;
+}
+
+function __gcry_pk_init() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function __gcry_md_init() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return 0;
+}
+
+function _GNUNET_abort_() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ _abort();
+}
+
+function _dummy_319() {
+ var label = 0, sp = 0;
+ sp = STACKTOP;
+ return;
+}
+
+function b395(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(63);
+}
+
+function b394(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(62);
+}
+
+function b393(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(61);
+}
+
+function b392(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(60);
+}
+
+function b391(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(59);
+}
+
+function b390(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(58);
+}
+
+function b389(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(57);
+}
+
+function b388(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(56);
+}
+
+function b387(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(55);
+}
+
+function b386(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(54);
+}
+
+function b385(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(53);
+}
+
+function b384(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(52);
+}
+
+function b383(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(51);
+}
+
+function b382(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(50);
+}
+
+function b381(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(49);
+}
+
+function b380(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(48);
+}
+
+function b379(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(47);
+}
+
+function b378(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(45);
+}
+
+function b377(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(44);
+}
+
+function b376(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(43);
+}
+
+function b375(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(42);
+}
+
+function b374(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(41);
+}
+
+function b373(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(40);
+}
+
+function b372(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(39);
+}
+
+function b371(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(38);
+}
+
+function b370(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(37);
+}
+
+function b369(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(36);
+}
+
+function b368(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(35);
+}
+
+function b367(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(34);
+}
+
+function b366(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(33);
+}
+
+function b365(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(32);
+}
+
+function b364(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(30);
+}
+
+function b363(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(29);
+}
+
+function b362(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(28);
+}
+
+function b361(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(25);
+}
+
+function b360(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(24);
+}
+
+function b359(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(23);
+}
+
+function b358(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(21);
+}
+
+function b357(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(20);
+}
+
+function b356(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(19);
+}
+
+function b355(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(17);
+}
+
+function b354(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(16);
+}
+
+function b353(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(15);
+}
+
+function b352(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(14);
+}
+
+function b351(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(13);
+}
+
+function b350(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(12);
+}
+
+function b349(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(11);
+}
+
+function b348(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(10);
+}
+
+function b347(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(9);
+}
+
+function b346(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(8);
+}
+
+function b345(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(7);
+}
+
+function b344(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(6);
+}
+
+function b343(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(4);
+}
+
+function b342(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(3);
+}
+
+function b341(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(2);
+}
+
+function b340(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(1);
+}
+
+function b339(p0, p1) {
+ p0 = p0 | 0;
+ p1 = p1 | 0;
+ nullFunc_vii(0);
+}
+
+function setTempRet0(value) {
+ value = value | 0;
+ tempRet0 = value;
+}
+
+function b450(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(63);
+ return 0;
+}
+
+function b449(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(62);
+ return 0;
+}
+
+function b448(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(61);
+ return 0;
+}
+
+function b447(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(60);
+ return 0;
+}
+
+function b446(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(59);
+ return 0;
+}
+
+function b445(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(58);
+ return 0;
+}
+
+function b444(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(57);
+ return 0;
+}
+
+function b443(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(56);
+ return 0;
+}
+
+function b442(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(55);
+ return 0;
+}
+
+function b441(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(54);
+ return 0;
+}
+
+function b440(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(53);
+ return 0;
+}
+
+function b439(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(52);
+ return 0;
+}
+
+function b438(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(51);
+ return 0;
+}
+
+function b437(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(50);
+ return 0;
+}
+
+function b436(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(48);
+ return 0;
+}
+
+function b435(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(47);
+ return 0;
+}
+
+function b434(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(46);
+ return 0;
+}
+
+function b433(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(44);
+ return 0;
+}
+
+function b432(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(43);
+ return 0;
+}
+
+function b431(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(42);
+ return 0;
+}
+
+function b430(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(40);
+ return 0;
+}
+
+function b429(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(39);
+ return 0;
+}
+
+function b428(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(38);
+ return 0;
+}
+
+function b427(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(37);
+ return 0;
+}
+
+function b426(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(35);
+ return 0;
+}
+
+function b425(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(34);
+ return 0;
+}
+
+function b424(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(33);
+ return 0;
+}
+
+function b423(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(32);
+ return 0;
+}
+
+function b422(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(31);
+ return 0;
+}
+
+function b421(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(30);
+ return 0;
+}
+
+function b420(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(28);
+ return 0;
+}
+
+function b419(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(27);
+ return 0;
+}
+
+function b418(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(26);
+ return 0;
+}
+
+function b417(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(25);
+ return 0;
+}
+
+function b416(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(23);
+ return 0;
+}
+
+function b415(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(22);
+ return 0;
+}
+
+function b414(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(21);
+ return 0;
+}
+
+function b413(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(19);
+ return 0;
+}
+
+function b412(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(18);
+ return 0;
+}
+
+function b411(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(17);
+ return 0;
+}
+
+function b410(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(16);
+ return 0;
+}
+
+function b409(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(14);
+ return 0;
+}
+
+function b408(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(13);
+ return 0;
+}
+
+function b407(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(12);
+ return 0;
+}
+
+function b406(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(11);
+ return 0;
+}
+
+function stackRestore(top) {
+ top = top | 0;
+ STACKTOP = top;
+}
+
+function b405(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(9);
+ return 0;
+}
+
+function b404(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(7);
+ return 0;
+}
+
+function b403(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(6);
+ return 0;
+}
+
+function b402(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(5);
+ return 0;
+}
+
+function b401(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(4);
+ return 0;
+}
+
+function b400(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(3);
+ return 0;
+}
+
+function b399(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(2);
+ return 0;
+}
+
+function b398(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(1);
+ return 0;
+}
+
+function b397(p0) {
+ p0 = p0 | 0;
+ nullFunc_ii(0);
+ return 0;
+}
+
+function _pthread_mutex_unlock(x) {
+ x = x | 0;
+ return 0;
+}
+
+function _pthread_mutex_lock(x) {
+ x = x | 0;
+ return 0;
+}
+
+function b337(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(127);
+}
+
+function b336(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(126);
+}
+
+function b335(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(125);
+}
+
+function b334(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(124);
+}
+
+function b333(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(123);
+}
+
+function b332(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(122);
+}
+
+function b331(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(121);
+}
+
+function b330(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(120);
+}
+
+function b329(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(119);
+}
+
+function b328(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(118);
+}
+
+function b327(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(117);
+}
+
+function b326(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(116);
+}
+
+function b325(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(115);
+}
+
+function b324(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(114);
+}
+
+function b323(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(113);
+}
+
+function b322(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(112);
+}
+
+function b321(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(111);
+}
+
+function b320(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(110);
+}
+
+function b319(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(109);
+}
+
+function b318(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(108);
+}
+
+function b317(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(107);
+}
+
+function b316(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(106);
+}
+
+function b315(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(105);
+}
+
+function b314(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(104);
+}
+
+function b313(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(103);
+}
+
+function b312(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(102);
+}
+
+function b311(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(101);
+}
+
+function b310(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(100);
+}
+
+function b309(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(99);
+}
+
+function b308(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(98);
+}
+
+function b307(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(97);
+}
+
+function b306(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(96);
+}
+
+function b305(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(95);
+}
+
+function b304(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(94);
+}
+
+function b303(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(93);
+}
+
+function b302(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(92);
+}
+
+function b301(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(91);
+}
+
+function b300(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(90);
+}
+
+function b299(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(89);
+}
+
+function b298(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(88);
+}
+
+function b297(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(87);
+}
+
+function b296(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(85);
+}
+
+function b295(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(84);
+}
+
+function b294(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(83);
+}
+
+function b293(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(82);
+}
+
+function b292(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(81);
+}
+
+function b291(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(80);
+}
+
+function b290(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(79);
+}
+
+function b289(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(78);
+}
+
+function b288(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(76);
+}
+
+function b287(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(75);
+}
+
+function b286(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(74);
+}
+
+function b285(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(73);
+}
+
+function b284(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(72);
+}
+
+function b283(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(71);
+}
+
+function b282(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(70);
+}
+
+function b281(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(69);
+}
+
+function b280(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(68);
+}
+
+function b279(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(67);
+}
+
+function b278(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(66);
+}
+
+function b277(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(65);
+}
+
+function b276(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(64);
+}
+
+function b275(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(63);
+}
+
+function b274(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(62);
+}
+
+function b273(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(61);
+}
+
+function b272(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(60);
+}
+
+function b271(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(59);
+}
+
+function b270(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(58);
+}
+
+function b269(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(57);
+}
+
+function b268(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(56);
+}
+
+function b267(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(55);
+}
+
+function b266(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(54);
+}
+
+function b265(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(53);
+}
+
+function b264(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(52);
+}
+
+function b263(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(51);
+}
+
+function b262(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(50);
+}
+
+function b261(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(49);
+}
+
+function b260(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(48);
+}
+
+function b259(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(47);
+}
+
+function b258(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(46);
+}
+
+function b257(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(45);
+}
+
+function b256(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(44);
+}
+
+function b255(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(43);
+}
+
+function b254(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(42);
+}
+
+function b253(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(41);
+}
+
+function b252(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(40);
+}
+
+function b251(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(39);
+}
+
+function b250(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(38);
+}
+
+function b249(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(37);
+}
+
+function b248(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(36);
+}
+
+function b247(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(35);
+}
+
+function b246(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(34);
+}
+
+function b245(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(33);
+}
+
+function b244(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(32);
+}
+
+function b243(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(31);
+}
+
+function b242(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(30);
+}
+
+function b241(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(29);
+}
+
+function b240(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(27);
+}
+
+function b239(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(26);
+}
+
+function b238(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(25);
+}
+
+function b237(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(24);
+}
+
+function b236(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(22);
+}
+
+function b235(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(21);
+}
+
+function b234(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(20);
+}
+
+function b233(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(18);
+}
+
+function b232(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(17);
+}
+
+function b231(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(16);
+}
+
+function b230(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(15);
+}
+
+function b229(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(14);
+}
+
+function b228(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(13);
+}
+
+function b227(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(12);
+}
+
+function b226(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(11);
+}
+
+function b225(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(10);
+}
+
+function b224(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(9);
+}
+
+function b223(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(8);
+}
+
+function b222(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(6);
+}
+
+function b221(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(5);
+}
+
+function b220(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(4);
+}
+
+function b219(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(3);
+}
+
+function b218(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(2);
+}
+
+function b217(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(1);
+}
+
+function b216(p0) {
+ p0 = p0 | 0;
+ nullFunc_vi(0);
+}
+
+function getTempRet0() {
+ return tempRet0 | 0;
+}
+
+function stackSave() {
+ return STACKTOP | 0;
+}
+
+function b699() {
+ {}
+ nullFunc_v(127);
+}
+
+function b698() {
+ {}
+ nullFunc_v(126);
+}
+
+function b697() {
+ {}
+ nullFunc_v(125);
+}
+
+function b696() {
+ {}
+ nullFunc_v(124);
+}
+
+function b695() {
+ {}
+ nullFunc_v(123);
+}
+
+function b694() {
+ {}
+ nullFunc_v(122);
+}
+
+function b693() {
+ {}
+ nullFunc_v(121);
+}
+
+function b692() {
+ {}
+ nullFunc_v(120);
+}
+
+function b691() {
+ {}
+ nullFunc_v(119);
+}
+
+function b690() {
+ {}
+ nullFunc_v(118);
+}
+
+function b689() {
+ {}
+ nullFunc_v(117);
+}
+
+function b688() {
+ {}
+ nullFunc_v(116);
+}
+
+function b687() {
+ {}
+ nullFunc_v(115);
+}
+
+function b686() {
+ {}
+ nullFunc_v(114);
+}
+
+function b685() {
+ {}
+ nullFunc_v(113);
+}
+
+function b684() {
+ {}
+ nullFunc_v(112);
+}
+
+function b683() {
+ {}
+ nullFunc_v(111);
+}
+
+function b682() {
+ {}
+ nullFunc_v(110);
+}
+
+function b681() {
+ {}
+ nullFunc_v(109);
+}
+
+function b680() {
+ {}
+ nullFunc_v(108);
+}
+
+function b679() {
+ {}
+ nullFunc_v(107);
+}
+
+function b678() {
+ {}
+ nullFunc_v(106);
+}
+
+function b677() {
+ {}
+ nullFunc_v(105);
+}
+
+function b676() {
+ {}
+ nullFunc_v(104);
+}
+
+function b675() {
+ {}
+ nullFunc_v(103);
+}
+
+function b674() {
+ {}
+ nullFunc_v(102);
+}
+
+function b673() {
+ {}
+ nullFunc_v(101);
+}
+
+function b672() {
+ {}
+ nullFunc_v(100);
+}
+
+function b671() {
+ {}
+ nullFunc_v(99);
+}
+
+function b670() {
+ {}
+ nullFunc_v(98);
+}
+
+function b669() {
+ {}
+ nullFunc_v(97);
+}
+
+function b668() {
+ {}
+ nullFunc_v(96);
+}
+
+function b667() {
+ {}
+ nullFunc_v(95);
+}
+
+function b666() {
+ {}
+ nullFunc_v(94);
+}
+
+function b665() {
+ {}
+ nullFunc_v(93);
+}
+
+function b664() {
+ {}
+ nullFunc_v(92);
+}
+
+function b663() {
+ {}
+ nullFunc_v(91);
+}
+
+function b662() {
+ {}
+ nullFunc_v(90);
+}
+
+function b661() {
+ {}
+ nullFunc_v(89);
+}
+
+function b660() {
+ {}
+ nullFunc_v(88);
+}
+
+function b659() {
+ {}
+ nullFunc_v(87);
+}
+
+function b658() {
+ {}
+ nullFunc_v(86);
+}
+
+function b657() {
+ {}
+ nullFunc_v(85);
+}
+
+function b656() {
+ {}
+ nullFunc_v(84);
+}
+
+function b655() {
+ {}
+ nullFunc_v(82);
+}
+
+function b654() {
+ {}
+ nullFunc_v(81);
+}
+
+function b653() {
+ {}
+ nullFunc_v(80);
+}
+
+function b652() {
+ {}
+ nullFunc_v(79);
+}
+
+function b651() {
+ {}
+ nullFunc_v(78);
+}
+
+function b650() {
+ {}
+ nullFunc_v(77);
+}
+
+function b649() {
+ {}
+ nullFunc_v(76);
+}
+
+function b648() {
+ {}
+ nullFunc_v(75);
+}
+
+function b647() {
+ {}
+ nullFunc_v(74);
+}
+
+function b646() {
+ {}
+ nullFunc_v(73);
+}
+
+function b645() {
+ {}
+ nullFunc_v(72);
+}
+
+function b644() {
+ {}
+ nullFunc_v(69);
+}
+
+function b643() {
+ {}
+ nullFunc_v(68);
+}
+
+function b642() {
+ {}
+ nullFunc_v(67);
+}
+
+function b641() {
+ {}
+ nullFunc_v(66);
+}
+
+function b640() {
+ {}
+ nullFunc_v(65);
+}
+
+function b639() {
+ {}
+ nullFunc_v(64);
+}
+
+function b638() {
+ {}
+ nullFunc_v(63);
+}
+
+function b637() {
+ {}
+ nullFunc_v(62);
+}
+
+function b636() {
+ {}
+ nullFunc_v(61);
+}
+
+function b635() {
+ {}
+ nullFunc_v(60);
+}
+
+function b634() {
+ {}
+ nullFunc_v(59);
+}
+
+function b633() {
+ {}
+ nullFunc_v(58);
+}
+
+function b632() {
+ {}
+ nullFunc_v(57);
+}
+
+function b631() {
+ {}
+ nullFunc_v(56);
+}
+
+function b630() {
+ {}
+ nullFunc_v(55);
+}
+
+function b629() {
+ {}
+ nullFunc_v(54);
+}
+
+function b628() {
+ {}
+ nullFunc_v(53);
+}
+
+function b627() {
+ {}
+ nullFunc_v(52);
+}
+
+function b626() {
+ {}
+ nullFunc_v(51);
+}
+
+function b625() {
+ {}
+ nullFunc_v(50);
+}
+
+function b624() {
+ {}
+ nullFunc_v(49);
+}
+
+function b623() {
+ {}
+ nullFunc_v(48);
+}
+
+function b622() {
+ {}
+ nullFunc_v(47);
+}
+
+function b621() {
+ {}
+ nullFunc_v(46);
+}
+
+function b620() {
+ {}
+ nullFunc_v(45);
+}
+
+function b619() {
+ {}
+ nullFunc_v(44);
+}
+
+function b618() {
+ {}
+ nullFunc_v(43);
+}
+
+function b617() {
+ {}
+ nullFunc_v(42);
+}
+
+function b616() {
+ {}
+ nullFunc_v(41);
+}
+
+function b615() {
+ {}
+ nullFunc_v(40);
+}
+
+function b614() {
+ {}
+ nullFunc_v(39);
+}
+
+function b613() {
+ {}
+ nullFunc_v(38);
+}
+
+function b612() {
+ {}
+ nullFunc_v(37);
+}
+
+function b611() {
+ {}
+ nullFunc_v(36);
+}
+
+function b610() {
+ {}
+ nullFunc_v(35);
+}
+
+function b609() {
+ {}
+ nullFunc_v(34);
+}
+
+function b608() {
+ {}
+ nullFunc_v(33);
+}
+
+function b607() {
+ {}
+ nullFunc_v(32);
+}
+
+function b606() {
+ {}
+ nullFunc_v(31);
+}
+
+function b605() {
+ {}
+ nullFunc_v(30);
+}
+
+function b604() {
+ {}
+ nullFunc_v(29);
+}
+
+function b603() {
+ {}
+ nullFunc_v(28);
+}
+
+function b602() {
+ {}
+ nullFunc_v(27);
+}
+
+function b601() {
+ {}
+ nullFunc_v(26);
+}
+
+function b600() {
+ {}
+ nullFunc_v(25);
+}
+
+function b599() {
+ {}
+ nullFunc_v(24);
+}
+
+function b598() {
+ {}
+ nullFunc_v(23);
+}
+
+function b597() {
+ {}
+ nullFunc_v(22);
+}
+
+function b596() {
+ {}
+ nullFunc_v(21);
+}
+
+function b595() {
+ {}
+ nullFunc_v(20);
+}
+
+function b594() {
+ {}
+ nullFunc_v(19);
+}
+
+function b593() {
+ {}
+ nullFunc_v(18);
+}
+
+function b592() {
+ {}
+ nullFunc_v(17);
+}
+
+function b591() {
+ {}
+ nullFunc_v(16);
+}
+
+function b590() {
+ {}
+ nullFunc_v(15);
+}
+
+function b589() {
+ {}
+ nullFunc_v(14);
+}
+
+function b588() {
+ {}
+ nullFunc_v(13);
+}
+
+function b587() {
+ {}
+ nullFunc_v(12);
+}
+
+function b586() {
+ {}
+ nullFunc_v(11);
+}
+
+function b585() {
+ {}
+ nullFunc_v(10);
+}
+
+function b584() {
+ {}
+ nullFunc_v(9);
+}
+
+function b583() {
+ {}
+ nullFunc_v(8);
+}
+
+function b582() {
+ {}
+ nullFunc_v(7);
+}
+
+function b581() {
+ {}
+ nullFunc_v(6);
+}
+
+function b580() {
+ {}
+ nullFunc_v(5);
+}
+
+function b579() {
+ {}
+ nullFunc_v(4);
+}
+
+function b578() {
+ {}
+ nullFunc_v(3);
+}
+
+function b577() {
+ {}
+ nullFunc_v(2);
+}
+
+function b576() {
+ {}
+ nullFunc_v(1);
+}
+
+function b575() {
+ {}
+ nullFunc_v(0);
+}
+
+// EMSCRIPTEN_END_FUNCS
+var FUNCTION_TABLE_iiii = 
[b1,_rijndael_setkey,_rijndael_encrypt,_rijndael_decrypt,_run_selftests,b2,b3,b4,b5,b6,b7,_rsa_encrypt,_rsa_decrypt,_rsa_sign,_rsa_verify,b8,_run_selftests_1202,b9,b10,b11,b12,_run_selftests_1302,b13,b14,b15,_run_selftests_1325,b16,b17,b18
+,b19,_run_selftests_1348,b20,_twofish_setkey,_twofish_encrypt,_twofish_decrypt,b21,b22,_ecc_encrypt_raw,_ecc_decrypt_raw,_ecc_sign,_ecc_verify,b23,_run_selftests_1807,b24,__gcry_ecc_get_curve,b25,b26,_poly1305_blocks_ref32,b27,b28,___stdout_write,___stdio_seek,___stdio_write,_sn_write,__gcry_log_info_with_dummy_fp,_fprintf,b29,b30,b31
+,b32,b33,b34,b35,b36,b37,b38,b39,b40,_do_encrypt,_do_decrypt,b41,b42,_transform,b43,_transform_1312,_transform_1338,_transform_1361,b44,b45,b46,b47,b48,b49,b50,b51,___stdio_read,b52,b53,b54
+,b55,b56,b57,b58,b59,b60,b61,b62,b63,b64,b65,b66,b67,b68,b69,b70,b71,b72,b73,b74,b75,b76,b77,b78,b79,b80,b81,b82,b83,b84
+,b85,b86,b87,b88,b89,b90,b91,b92,b93];
+var FUNCTION_TABLE_viiiii = 
[b95,b96,b97,b98,b99,b100,b101,b102,b103,b104,b105,b106,b107,b108,b109,b110,b111,b112,b113,b114,b115,b116,b117,b118,b119,b120,b121,b122,b123
+,b124,b125,b126,b127,b128,b129,b130,b131,b132,b133,b134,b135,b136,b137,b138,b139,b140,b141,b142,b143,b144,b145,b146,b147,b148,b149,b150,b151,__gcry_aes_cfb_enc,__gcry_aes_cfb_dec
+,b152,__gcry_aes_cbc_dec,__gcry_aes_ctr_enc,__gcry_aes_ocb_crypt,b153,__gcry_twofish_cbc_dec,__gcry_twofish_cfb_dec,__gcry_twofish_ctr_enc,b154,b155,b156,b157,b158,b159,b160,b161,b162,b163,b164,b165,b166,b167,b168,b169,b170,b171,b172,b173,b174,b175
+,b176,b177,b178,b179,b180,b181,b182,b183,b184,b185,b186,b187,b188,b189,b190,b191,b192,b193,b194,b195,b196,b197,b198,b199,b200,b201,b202,b203,b204,b205
+,b206,b207,b208,b209,b210,b211,b212,b213,b214];
+var FUNCTION_TABLE_vi = 
[b216,b217,b218,b219,b220,b221,b222,_rmd160_final,b223,b224,b225,b226,b227,b228,b229,b230,b231,b232,b233,_sha1_final,b234,b235,b236,_sha256_final,b237,b238,b239,b240,_sha512_final
+,b241,b242,b243,b244,b245,b246,b247,b248,b249,b250,b251,b252,b253,b254,b255,b256,b257,b258,b259,b260,b261,b262,b263,b264,b265,b266,b267,b268,b269,b270
+,b271,b272,b273,b274,b275,b276,b277,b278,b279,b280,b281,b282,b283,b284,b285,b286,b287,b288,_ec_deinit,b289,b290,b291,b292,b293,b294,b295,b296,_do_setxid,b297,b298
+,b299,b300,b301,b302,b303,b304,b305,b306,b307,b308,b309,b310,b311,b312,b313,b314,b315,b316,b317,b318,b319,b320,b321,b322,b323,b324,b325,b326,b327,b328
+,b329,b330,b331,b332,b333,b334,b335,b336,b337];
+var FUNCTION_TABLE_vii = 
[b339,b340,b341,b342,b343,_rmd160_init,b344,b345,b346,b347,b348,b349,b350,b351,b352,b353,b354,b355,_sha1_init,b356,b357,b358,_sha224_init,b359,b360,b361,_sha256_init,_sha512_init,b362
+,b363,b364,_sha384_init,b365,b366,b367,b368,b369,b370,b371,b372,b373,b374,b375,b376,b377,b378,_poly1305_init_ext_ref32,b379,b380,b381,b382,b383,b384,b385,b386,b387,b388,b389,b390
+,b391,b392,b393,b394,b395];
+var FUNCTION_TABLE_ii = 
[b397,b398,b399,b400,b401,b402,b403,b404,_rmd160_read,b405,_rsa_check_secret_key,b406,b407,b408,b409,_rsa_get_nbits,b410,b411,b412,b413,_sha1_read,b414,b415,b416,_sha256_read,b417,b418,b419,b420
+,_sha512_read,b421,b422,b423,b424,b425,b426,_ecc_check_secret_key,b427,b428,b429,b430,_ecc_get_nbits,b431,b432,b433,__gcry_ecc_get_param_sexp,b434,b435,b436,___stdio_close,b437,b438,b439,b440,b441,b442,b443,b444,b445
+,b446,b447,b448,b449,b450];
+var FUNCTION_TABLE_viii = 
[b452,b453,b454,b455,b456,b457,__gcry_md_block_write,b458,b459,b460,b461,b462,b463,b464,b465,b466,b467,b468,b469,b470,b471,b472,b473,b474,b475,b476,b477,b478,b479
+,b480,b481,b482,b483,b484,b485,b486,b487,b488,b489,b490,b491,b492,b493,b494,b495,b496,b497,b498,b499,b500,b501,b502,b503,b504,b505,b506,b507,b508,b509
+,b510,b511,b512,b513,__gcry_aes_ocb_auth,b514,b515,b516,b517,b518,b519,b520,b521,b522,b523,b524,b525,b526,b527,b528,b529,_add_randomness,_entropy_collect_cb,_read_cb,b530,_fatal_error_handler_2486,b531,b532,b533,b534
+,b535,b536,b537,b538,b539,b540,b541,b542,b543,b544,b545,b546,b547,b548,b549,b550,b551,b552,b553,b554,b555,b556,b557,b558,b559,b560,b561,b562,b563,b564
+,b565,b566,b567,b568,b569,b570,b571,b572,b573];
+var FUNCTION_TABLE_v = 
[b575,b576,b577,b578,b579,b580,b581,b582,b583,b584,b585,b586,b587,b588,b589,b590,b591,b592,b593,b594,b595,b596,b597,b598,b599,b600,b601,b602,b603
+,b604,b605,b606,b607,b608,b609,b610,b611,b612,b613,b614,b615,b616,b617,b618,b619,b620,b621,b622,b623,b624,b625,b626,b627,b628,b629,b630,b631,b632,b633
+,b634,b635,b636,b637,b638,b639,b640,b641,b642,b643,b644,_prefetch_enc,_prefetch_dec,b645,b646,b647,b648,b649,b650,b651,b652,b653,b654,b655,_do_deinit,b656,b657,b658,b659,b660
+,b661,b662,b663,b664,b665,b666,b667,b668,b669,b670,b671,b672,b673,b674,b675,b676,b677,b678,b679,b680,b681,b682,b683,b684,b685,b686,b687,b688,b689,b690
+,b691,b692,b693,b694,b695,b696,b697,b698,b699];
+var FUNCTION_TABLE_iiiii = 
[b701,b702,b703,b704,b705,b706,b707,b708,b709,b710,b711,b712,b713,b714,b715,b716,b717,b718,b719,b720,b721,b722,b723,b724,b725,b726,b727,b728,b729
+,b730,b731,b732,b733,b734,b735,b736,b737,b738,b739,b740,b741,b742,b743,b744,b745,b746,b747,b748,_poly1305_finish_ext_ref32,b749,b750,b751,b752,b753,b754,b755,b756,b757,b758
+,b759,b760,b761,b762,b763,b764,b765,b766,b767,b768,b769,b770,b771,b772,b773,b774,b775,b776,b777,_ghash_internal,__gcry_rndlinux_gather_random,b778,b779,b780,b781,b782,b783,b784,b785,b786
+,b787,b788,b789,b790,b791,b792,b793,b794,b795,b796,b797,b798,b799,b800,b801,b802,b803,b804,b805,b806,b807,b808,b809,b810,b811,b812,b813,b814,b815,b816
+,b817,b818,b819,b820,b821,b822,b823,b824,b825];
+var FUNCTION_TABLE_viiiiii = 
[b827,b828,b829,b830,b831,b832,b833,b834,b835,b836,b837,b838,b839,b840,b841,b842,b843,b844,b845,b846,b847,b848,b849,b850,b851,b852,b853,b854,b855
+,b856,b857,b858,b859,b860,b861,b862,b863,b864,b865,b866,b867,b868,b869,b870,b871,b872,b873,b874,b875,b876,b877,b878,b879,b880,b881,b882,b883,b884,b885
+,__gcry_aes_cbc_enc,b886,b887,b888,b889];
+var FUNCTION_TABLE_iii = 
[b891,b892,b893,b894,b895,b896,b897,b898,b899,_rsa_generate,b900,b901,b902,b903,b904,b905,b906,_compute_keygrip,b907,b908,b909,b910,b911,b912,b913,b914,b915,b916,b917
+,b918,b919,b920,b921,b922,b923,_ecc_generate,b924,b925,b926,b927,b928,b929,b930,_compute_keygrip_1808,b931,b932,b933,b934,b935,b936,b937,b938,b939,b940,b941,b942,b943,b944,b945
+,b946,b947,b948,b949,b950,b951,b952,b953,_pss_verify_cmp,b954,b955,b956,b957,b958,_check_exponent,b959,b960,b961,b962,b963,b964,b965,b966,b967,b968,b969,b970,b971,b972,b973
+,b974,b975,b976,b977,b978,b979,b980,b981,b982,b983,b984,b985,b986,b987,b988,b989,b990,b991,b992,b993,b994,b995,b996,b997,b998,b999,b1000,b1001,b1002,b1003
+,b1004,b1005,b1006,b1007,b1008,b1009,b1010,b1011,b1012];
+var FUNCTION_TABLE_viiii = 
[b1014,b1015,b1016,b1017,b1018,b1019,b1020,b1021,b1022,b1023,b1024,b1025,b1026,b1027,b1028,b1029,b1030,b1031,b1032,b1033,b1034,b1035,b1036,b1037,b1038,b1039,b1040,b1041,b1042
+,b1043,b1044,b1045,b1046,b1047,b1048,b1049,b1050,b1051,b1052,b1053,b1054,b1055,b1056,b1057,b1058,b1059,b1060,b1061,b1062,b1063,b1064,b1065,b1066,b1067,b1068,b1069,_reporter,b1070,b1071
+,b1072,b1073,b1074,b1075,b1076];
 
+  return { _GNUNET_CRYPTO_rsa_signature_encode: 
_GNUNET_CRYPTO_rsa_signature_encode, _GNUNET_CRYPTO_rsa_private_key_free: 
_GNUNET_CRYPTO_rsa_private_key_free, _GNUNET_CRYPTO_rsa_verify: 
_GNUNET_CRYPTO_rsa_verify, _bitshift64Shl: _bitshift64Shl, 
_GNUNET_CRYPTO_hash_context_start: _GNUNET_CRYPTO_hash_context_start, 
_bitshift64Lshr: _bitshift64Lshr, _TALER_setup_fresh_coin: 
_TALER_setup_fresh_coin, _GNUNET_STRINGS_string_to_data: 
_GNUNET_STRINGS_string_to_data, _GNUNET_CRYPTO_rsa_private_ke [...]
+})
 // EMSCRIPTEN_END_ASM
-(Module.asmGlobalArg,Module.asmLibraryArg,buffer);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__G 
[...]
+(Module.asmGlobalArg, Module.asmLibraryArg, buffer);
+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__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__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__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_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____udivmoddi4 = asm["___udivmoddi4"];
+asm["___udivmoddi4"] = (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____udivmoddi4.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__emscripten_get_global_libc = asm["_emscripten_get_global_libc"];
+asm["_emscripten_get_global_libc"] = (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_get_global_libc.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_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 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__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__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__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_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 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_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_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__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__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_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__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_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__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____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__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_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__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_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_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__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__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__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_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__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__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__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__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_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_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_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_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__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__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__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__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_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__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_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__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__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_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_setDynamicTop = asm["setDynamicTop"];
+asm["setDynamicTop"] = (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_setDynamicTop.apply(null, arguments);
+});
+var real____remdi3 = asm["___remdi3"];
+asm["___remdi3"] = (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____remdi3.apply(null, arguments);
+});
+var real____muldsi3 = asm["___muldsi3"];
+asm["___muldsi3"] = (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____muldsi3.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_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__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__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__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__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____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__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__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__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__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__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__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__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____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__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__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____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__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__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__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__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__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_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__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____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__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__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__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__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__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__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_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 _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"];
+var _bitshift64Ashr = Module["_bitshift64Ashr"] = asm["_bitshift64Ashr"];
+var _sbrk = Module["_sbrk"] = asm["_sbrk"];
+var _GNUNET_CRYPTO_eddsa_key_create = 
Module["_GNUNET_CRYPTO_eddsa_key_create"] = 
asm["_GNUNET_CRYPTO_eddsa_key_create"];
+var _memcpy = Module["_memcpy"] = asm["_memcpy"];
+var _GNUNET_CRYPTO_rsa_private_key_decode = 
Module["_GNUNET_CRYPTO_rsa_private_key_decode"] = 
asm["_GNUNET_CRYPTO_rsa_private_key_decode"];
+var ___udivmoddi4 = Module["___udivmoddi4"] = asm["___udivmoddi4"];
+var _GNUNET_CRYPTO_ecdh_eddsa = Module["_GNUNET_CRYPTO_ecdh_eddsa"] = 
asm["_GNUNET_CRYPTO_ecdh_eddsa"];
+var _emscripten_get_global_libc = Module["_emscripten_get_global_libc"] = 
asm["_emscripten_get_global_libc"];
+var _TALER_amount_hton = Module["_TALER_amount_hton"] = 
asm["_TALER_amount_hton"];
+var stackSave = Module["stackSave"] = asm["stackSave"];
+var _gpg_err_init = Module["_gpg_err_init"] = asm["_gpg_err_init"];
+var _free = Module["_free"] = asm["_free"];
+var runPostSets = Module["runPostSets"] = asm["runPostSets"];
+var _memalign = Module["_memalign"] = asm["_memalign"];
+var _GNUNET_CRYPTO_ecdsa_key_create = 
Module["_GNUNET_CRYPTO_ecdsa_key_create"] = 
asm["_GNUNET_CRYPTO_ecdsa_key_create"];
+var _GNUNET_CRYPTO_hash_context_start = 
Module["_GNUNET_CRYPTO_hash_context_start"] = 
asm["_GNUNET_CRYPTO_hash_context_start"];
+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_eddsa_verify = Module["_GNUNET_CRYPTO_eddsa_verify"] = 
asm["_GNUNET_CRYPTO_eddsa_verify"];
+var setThrew = Module["setThrew"] = asm["setThrew"];
+var _GNUNET_CRYPTO_symmetric_encrypt = 
Module["_GNUNET_CRYPTO_symmetric_encrypt"] = 
asm["_GNUNET_CRYPTO_symmetric_encrypt"];
+var _TALER_WR_get_fraction = Module["_TALER_WR_get_fraction"] = 
asm["_TALER_WR_get_fraction"];
+var _TALER_amount_cmp = Module["_TALER_amount_cmp"] = asm["_TALER_amount_cmp"];
+var _llvm_cttz_i32 = Module["_llvm_cttz_i32"] = asm["_llvm_cttz_i32"];
+var stackAlloc = Module["stackAlloc"] = asm["stackAlloc"];
+var _GNUNET_CRYPTO_kdf = Module["_GNUNET_CRYPTO_kdf"] = 
asm["_GNUNET_CRYPTO_kdf"];
+var ___divdi3 = Module["___divdi3"] = asm["___divdi3"];
+var _TALER_amount_ntoh = Module["_TALER_amount_ntoh"] = 
asm["_TALER_amount_ntoh"];
+var getTempRet0 = Module["getTempRet0"] = asm["getTempRet0"];
+var _GNUNET_CRYPTO_rsa_public_key_free = 
Module["_GNUNET_CRYPTO_rsa_public_key_free"] = 
asm["_GNUNET_CRYPTO_rsa_public_key_free"];
+var _GNUNET_CRYPTO_hkdf = Module["_GNUNET_CRYPTO_hkdf"] = 
asm["_GNUNET_CRYPTO_hkdf"];
+var _GNUNET_CRYPTO_eddsa_key_get_public = 
Module["_GNUNET_CRYPTO_eddsa_key_get_public"] = 
asm["_GNUNET_CRYPTO_eddsa_key_get_public"];
+var _llvm_bswap_i32 = Module["_llvm_bswap_i32"] = asm["_llvm_bswap_i32"];
+var _GNUNET_CRYPTO_rsa_private_key_create = 
Module["_GNUNET_CRYPTO_rsa_private_key_create"] = 
asm["_GNUNET_CRYPTO_rsa_private_key_create"];
+var _TALER_gcrypt_init = Module["_TALER_gcrypt_init"] = 
asm["_TALER_gcrypt_init"];
+var establishStackSpace = Module["establishStackSpace"] = 
asm["establishStackSpace"];
+var _pthread_mutex_lock = Module["_pthread_mutex_lock"] = 
asm["_pthread_mutex_lock"];
+var _GNUNET_CRYPTO_rsa_public_key_decode = 
Module["_GNUNET_CRYPTO_rsa_public_key_decode"] = 
asm["_GNUNET_CRYPTO_rsa_public_key_decode"];
+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 _GNUNET_CRYPTO_rsa_signature_encode = 
Module["_GNUNET_CRYPTO_rsa_signature_encode"] = 
asm["_GNUNET_CRYPTO_rsa_signature_encode"];
+var _GNUNET_CRYPTO_rsa_verify = Module["_GNUNET_CRYPTO_rsa_verify"] = 
asm["_GNUNET_CRYPTO_rsa_verify"];
+var _GNUNET_STRINGS_string_to_data = Module["_GNUNET_STRINGS_string_to_data"] 
= asm["_GNUNET_STRINGS_string_to_data"];
+var _memset = Module["_memset"] = asm["_memset"];
+var _GNUNET_CRYPTO_hash_context_finish = 
Module["_GNUNET_CRYPTO_hash_context_finish"] = 
asm["_GNUNET_CRYPTO_hash_context_finish"];
+var _GNUNET_CRYPTO_rsa_unblind = Module["_GNUNET_CRYPTO_rsa_unblind"] = 
asm["_GNUNET_CRYPTO_rsa_unblind"];
+var _TALER_WR_get_currency = Module["_TALER_WR_get_currency"] = 
asm["_TALER_WR_get_currency"];
+var _GNUNET_CRYPTO_random_block = Module["_GNUNET_CRYPTO_random_block"] = 
asm["_GNUNET_CRYPTO_random_block"];
+var _TALER_WRALL_get_amount = Module["_TALER_WRALL_get_amount"] = 
asm["_TALER_WRALL_get_amount"];
+var _GNUNET_CRYPTO_rsa_private_key_encode = 
Module["_GNUNET_CRYPTO_rsa_private_key_encode"] = 
asm["_GNUNET_CRYPTO_rsa_private_key_encode"];
+var _GNUNET_CRYPTO_symmetric_decrypt = 
Module["_GNUNET_CRYPTO_symmetric_decrypt"] = 
asm["_GNUNET_CRYPTO_symmetric_decrypt"];
+var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"];
+var setTempRet0 = Module["setTempRet0"] = asm["setTempRet0"];
+var _TALER_WR_get_value = Module["_TALER_WR_get_value"] = 
asm["_TALER_WR_get_value"];
+var _GNUNET_CRYPTO_ecdhe_key_get_public = 
Module["_GNUNET_CRYPTO_ecdhe_key_get_public"] = 
asm["_GNUNET_CRYPTO_ecdhe_key_get_public"];
+var _GNUNET_util_cl_init = Module["_GNUNET_util_cl_init"] = 
asm["_GNUNET_util_cl_init"];
+var setDynamicTop = Module["setDynamicTop"] = asm["setDynamicTop"];
+var ___remdi3 = Module["___remdi3"] = asm["___remdi3"];
+var ___muldsi3 = Module["___muldsi3"] = asm["___muldsi3"];
+var _GNUNET_CRYPTO_rsa_blind = Module["_GNUNET_CRYPTO_rsa_blind"] = 
asm["_GNUNET_CRYPTO_rsa_blind"];
+var _GNUNET_STRINGS_data_to_string_alloc = 
Module["_GNUNET_STRINGS_data_to_string_alloc"] = 
asm["_GNUNET_STRINGS_data_to_string_alloc"];
+var _malloc = Module["_malloc"] = asm["_malloc"];
+var _GNUNET_CRYPTO_rsa_signature_decode = 
Module["_GNUNET_CRYPTO_rsa_signature_decode"] = 
asm["_GNUNET_CRYPTO_rsa_signature_decode"];
+var _TALER_setup_fresh_coin = Module["_TALER_setup_fresh_coin"] = 
asm["_TALER_setup_fresh_coin"];
+var _GNUNET_CRYPTO_ecdhe_key_create = 
Module["_GNUNET_CRYPTO_ecdhe_key_create"] = 
asm["_GNUNET_CRYPTO_ecdhe_key_create"];
+var ___udivdi3 = Module["___udivdi3"] = asm["___udivdi3"];
+var _TALER_amount_normalize = Module["_TALER_amount_normalize"] = 
asm["_TALER_amount_normalize"];
+var _GNUNET_CRYPTO_hash_context_read = 
Module["_GNUNET_CRYPTO_hash_context_read"] = 
asm["_GNUNET_CRYPTO_hash_context_read"];
+var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"];
+var _GNUNET_CRYPTO_rsa_private_key_free = 
Module["_GNUNET_CRYPTO_rsa_private_key_free"] = 
asm["_GNUNET_CRYPTO_rsa_private_key_free"];
+var _fflush = Module["_fflush"] = asm["_fflush"];
+var _GNUNET_CRYPTO_hash_create_random = 
Module["_GNUNET_CRYPTO_hash_create_random"] = 
asm["_GNUNET_CRYPTO_hash_create_random"];
+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 ___muldi3 = Module["___muldi3"] = asm["___muldi3"];
+var _GNUNET_CRYPTO_ecc_ecdh = Module["_GNUNET_CRYPTO_ecc_ecdh"] = 
asm["_GNUNET_CRYPTO_ecc_ecdh"];
+var _TALER_amount_add = Module["_TALER_amount_add"] = asm["_TALER_amount_add"];
+var ___uremdi3 = Module["___uremdi3"] = asm["___uremdi3"];
+var _GNUNET_CRYPTO_rsa_signature_free = 
Module["_GNUNET_CRYPTO_rsa_signature_free"] = 
asm["_GNUNET_CRYPTO_rsa_signature_free"];
+var _TALER_amount_subtract = Module["_TALER_amount_subtract"] = 
asm["_TALER_amount_subtract"];
+var _i64Add = Module["_i64Add"] = asm["_i64Add"];
+var _TALER_WRALL_purpose_create = Module["_TALER_WRALL_purpose_create"] = 
asm["_TALER_WRALL_purpose_create"];
+var _pthread_mutex_unlock = Module["_pthread_mutex_unlock"] = 
asm["_pthread_mutex_unlock"];
+var stackRestore = Module["stackRestore"] = asm["stackRestore"];
+var _GNUNET_CRYPTO_eddsa_sign = Module["_GNUNET_CRYPTO_eddsa_sign"] = 
asm["_GNUNET_CRYPTO_eddsa_sign"];
+var ___errno_location = Module["___errno_location"] = asm["___errno_location"];
+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 _GNUNET_CRYPTO_hash_context_abort = 
Module["_GNUNET_CRYPTO_hash_context_abort"] = 
asm["_GNUNET_CRYPTO_hash_context_abort"];
+var _memmove = Module["_memmove"] = asm["_memmove"];
+var _GNUNET_CRYPTO_random_init = Module["_GNUNET_CRYPTO_random_init"] = 
asm["_GNUNET_CRYPTO_random_init"];
+var _TALER_amount_get_zero = Module["_TALER_amount_get_zero"] = 
asm["_TALER_amount_get_zero"];
+var _GNUNET_CRYPTO_rsa_public_key_encode = 
Module["_GNUNET_CRYPTO_rsa_public_key_encode"] = 
asm["_GNUNET_CRYPTO_rsa_public_key_encode"];
+var _GNUNET_CRYPTO_hash = Module["_GNUNET_CRYPTO_hash"] = 
asm["_GNUNET_CRYPTO_hash"];
+var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"];
+var dynCall_viiiii = Module["dynCall_viiiii"] = asm["dynCall_viiiii"];
+var dynCall_vi = Module["dynCall_vi"] = asm["dynCall_vi"];
+var dynCall_vii = Module["dynCall_vii"] = asm["dynCall_vii"];
+var dynCall_ii = Module["dynCall_ii"] = asm["dynCall_ii"];
+var dynCall_viii = Module["dynCall_viii"] = asm["dynCall_viii"];
+var dynCall_v = Module["dynCall_v"] = asm["dynCall_v"];
+var dynCall_iiiii = Module["dynCall_iiiii"] = asm["dynCall_iiiii"];
+var dynCall_viiiiii = Module["dynCall_viiiiii"] = asm["dynCall_viiiiii"];
+var dynCall_iii = Module["dynCall_iii"] = asm["dynCall_iii"];
+var dynCall_viiii = Module["dynCall_viiii"] = asm["dynCall_viiii"];
+Runtime.stackAlloc = Module["stackAlloc"];
+Runtime.stackSave = Module["stackSave"];
+Runtime.stackRestore = Module["stackRestore"];
+Runtime.establishStackSpace = Module["establishStackSpace"];
+Runtime.setDynamicTop = Module["setDynamicTop"];
+Runtime.setTempRet0 = Module["setTempRet0"];
+Runtime.getTempRet0 = Module["getTempRet0"];
+Module["asm"] = asm;
+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 preloadStartTime = null;
+var calledMain = false;
+dependenciesFulfilled = function runCaller() {
+ if (!Module["calledRun"]) run();
+ if (!Module["calledRun"]) dependenciesFulfilled = runCaller;
+};
+Module["callMain"] = Module.callMain = function callMain(args) {
+ assert(runDependencies == 0, "cannot call main when async dependencies 
remain! (listen on __ATMAIN__)");
+ assert(__ATPRERUN__.length == 0, "cannot call main when preRun functions 
remain to be called");
+ args = args || [];
+ ensureInitRuntime();
+ var argc = args.length + 1;
+ function pad() {
+  for (var i = 0; i < 4 - 1; i++) {
+   argv.push(0);
+  }
+ }
+ var argv = [ allocate(intArrayFromString(Module["thisProgram"]), "i8", 
ALLOC_NORMAL) ];
+ pad();
+ for (var i = 0; i < argc - 1; i = i + 1) {
+  argv.push(allocate(intArrayFromString(args[i]), "i8", ALLOC_NORMAL));
+  pad();
+ }
+ argv.push(0);
+ argv = allocate(argv, "i32", ALLOC_NORMAL);
+ try {
+  var ret = Module["_main"](argc, argv, 0);
+  exit(ret, true);
+ } catch (e) {
+  if (e instanceof ExitStatus) {
+   return;
+  } else if (e == "SimulateInfiniteLoop") {
+   Module["noExitRuntime"] = true;
+   return;
+  } else {
+   if (e && typeof e === "object" && e.stack) Module.printErr("exception 
thrown: " + [ e, e.stack ]);
+   throw e;
+  }
+ } finally {
+  calledMain = true;
+ }
+};
+function run(args) {
+ args = args || Module["arguments"];
+ if (preloadStartTime === null) preloadStartTime = Date.now();
+ if (runDependencies > 0) {
+  Module.printErr("run() called, but dependencies remain, so not running");
+  return;
+ }
+ writeStackCookie();
+ preRun();
+ if (runDependencies > 0) return;
+ if (Module["calledRun"]) return;
+ function doRun() {
+  if (Module["calledRun"]) return;
+  Module["calledRun"] = true;
+  if (ABORT) return;
+  ensureInitRuntime();
+  preMain();
+  if (ENVIRONMENT_IS_WEB && preloadStartTime !== null) {
+   Module.printErr("pre-main prep time: " + (Date.now() - preloadStartTime) + 
" ms");
+  }
+  if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"]();
+  if (Module["_main"] && shouldRunNow) Module["callMain"](args);
+  postRun();
+ }
+ if (Module["setStatus"]) {
+  Module["setStatus"]("Running...");
+  setTimeout((function() {
+   setTimeout((function() {
+    Module["setStatus"]("");
+   }), 1);
+   doRun();
+  }), 1);
+ } else {
+  doRun();
+ }
+ checkStackCookie();
+}
+Module["run"] = Module.run = run;
+function exit(status, implicit) {
+ if (implicit && Module["noExitRuntime"]) {
+  Module.printErr("exit(" + status + ") implicitly called by end of main(), 
but noExitRuntime, so not exiting the runtime (you can use 
emscripten_force_exit, if you want to force a true shutdown)");
+  return;
+ }
+ if (Module["noExitRuntime"]) {
+  Module.printErr("exit(" + status + ") called, but noExitRuntime, so halting 
execution but not exiting the runtime or preventing further async execution 
(you can use emscripten_force_exit, if you want to force a true shutdown)");
+ } else {
+  ABORT = true;
+  EXITSTATUS = status;
+  STACKTOP = initialStackTop;
+  exitRuntime();
+  if (Module["onExit"]) Module["onExit"](status);
+ }
+ if (ENVIRONMENT_IS_NODE) {
+  process["exit"](status);
+ } else if (ENVIRONMENT_IS_SHELL && typeof quit === "function") {
+  quit(status);
+ }
+ throw new ExitStatus(status);
+}
+Module["exit"] = Module.exit = exit;
+var abortDecorators = [];
+function abort(what) {
+ if (what !== undefined) {
+  Module.print(what);
+  Module.printErr(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"] = Module.abort = abort;
+if (Module["preInit"]) {
+ if (typeof Module["preInit"] == "function") Module["preInit"] = [ 
Module["preInit"] ];
+ while (Module["preInit"].length > 0) {
+  Module["preInit"].pop()();
+ }
+}
+var shouldRunNow = true;
+if (Module["noInitialRun"]) {
+ shouldRunNow = false;
+}
+run();
 
 
 

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



reply via email to

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