VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /proc/self/root/usr/share/emscripten/tools/eliminator/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/usr/share/emscripten/tools/eliminator/eliminator-test-output.js
function a($directory) {
 chak($directory + _strlen($directory) | 0);
 var $210 = HEAP32[100];
 HEAP32[1e3] = HEAP32[5];
 HEAP32[90] = $210;
 chak();
 var $210a = HEAP32[100];
 something();
 HEAP32[90] = $210a;
 chak();
 HEAP32[1e3] = HEAP32[5];
 HEAP32[90] = $hack;
 chak();
 var $b = HEAP32[11] + 7 | 0;
 HEAP32[1e3] = HEAP32[5];
 HEAP32[90] = $b;
 chak();
 var $bb2 = HEAP32[11];
 HEAP32[111] = 321;
 HEAP32[1e3] = HEAP32[5];
 HEAP32[90] = $bb2 + 7 | 0;
 chak();
 HEAP32[1e3] = HEAP32[100];
 chak();
 HEAP32[1e3] = func();
 chak();
 tor(func());
 chak();
 tor(HEAP[9]);
 barrier();
 var $$210, $$210a, $$b, $$bb2;
 $$210 = HEAP32[100];
 HEAP32[1e3] = HEAP32[5];
 HEAP32[90] = $$210;
 chak();
 $$210a = HEAP32[100];
 something();
 HEAP32[90] = $$210a;
 chak();
 HEAP32[1e3] = HEAP32[5];
 HEAP32[90] = $$hack;
 chak();
 $$b = HEAP32[11] + 7 | 0;
 HEAP32[1e3] = HEAP32[5];
 HEAP32[90] = $$b;
 chak();
 $$bb2 = HEAP32[11];
 HEAP32[111] = 321;
 HEAP32[1e3] = HEAP32[5];
 HEAP32[90] = $$bb2 + 7 | 0;
 chak();
 HEAP32[1e3] = HEAP32[100];
 chak();
 HEAP32[1e3] = func();
 chak();
 tor(func());
 chak();
 tor(HEAP[9]);
 barrier();
 var $65, $image, $51$s2;
 HEAP32[$65 >> 2] = _int_ceildivpow2(HEAP32[$65 >> 2] - _int_ceildiv(HEAP32[$image >> 2], HEAP32[$51$s2]) | 0, HEAP32[$51$s2 + 10]);
 barr();
 var ONCE = sheep();
 while (ONCE) {
  work();
 }
 var ONCEb = 75;
 while (ONCEb) {
  work();
 }
 var $26 = __ZL3minIiET_S0_S0_12(4096, 4096 - $16 | 0);
 print(FUNCTION_TABLE[$22]($18, $16 + ($this + 27) | 0, $26));
 chak();
 do {
  print(10);
 } while (0);
 var zzz1 = 10;
 do {
  print(zzz1);
 } while (1);
}
function b() {
 var $148 = _sqlite3Strlen30($147);
 var $150 = HEAP32[$pExpr + 16 >> 2];
 if (($150 | 0) == 0) {
  var $156 = 0;
 } else {
  var $156 = HEAP32[$150 >> 2];
 }
 var $156;
 HEAP32[$139 + ($136 << 4) + 4 >> 2] = _sqlite3FindFunction($145, $147, $148, $156, $135, 0);
 farr();
 f3(f1() + f2());
 farr();
 return cheez();
}
function c() {
 var x = MEM[100], y = callMe(5);
 zoom(glob);
 hail(x * 2);
 sunk(y);
 barrier();
 var y2 = $callMe2;
 var w2 = MEM[100] * 2;
 zoom(glob);
 hail(w2);
 sunk(y2);
 you(fools);
 var two = three();
 fools(you);
 var noneed2;
 noneed2 += fools(you2);
 return;
}
function f() {
 HEAP[123] = (GLOB[1] + 1) / 2;
}
function g(a1, a2) {
 var a = 1;
 var c = a * 2 - 1;
 a = c;
 foo(c);
 foo(2);
 for (var i = 0; i < 5; i++) {
  {
   a: 1
  } + [ 2, 3 ];
 }
 for (var iterator in SOME_GLOBAL) {
  quux(iterator);
 }
 var $0 = HEAP[5];
 MAYBE_HEAP[myglobal] = 123;
 if ($0 < 0) {
  __label__ = 1;
 } else {
  __label__ = 2;
 }
 new asd;
 sadijn2 = "qwe%sert";
 this.Module || (this.Module = {});
 {
  "quoted": 1,
  "doublequoted": 2,
  unquoted: 3,
  4: 5
 };
}
function h() {
 var out;
 bar(hello);
 var hello = 5;
 if (0) {
  var sb1 = 21;
 }
 out = sb1;
 if (0) {
  var sb2 = 23;
 } else {
  out = sb2;
 }
 if (0) {
  out = sb3;
 } else {
  var sb3 = 23;
 }
 for (var it = 0; it < 5; it++) {
  x = y ? x + 1 : 7;
  var x = -5;
 }
 if (1) {
  otherGlob = glob;
  breakMe();
 }
 var oneUse2 = glob2;
 while (1) {
  otherGlob2 = oneUse2;
  breakMe();
 }
 return out;
}
function strtok_part(b, j, f) {
 var a;
 for (;;) {
  h = a == 13 ? h : 0;
  a = HEAP[d + h];
  if (a == g != 0) break;
  var h = h + 1;
  if (a != 0) a = 13;
 }
}
function py() {
 HEAP[HEAP[HEAP[__PyThreadState_Current] + 12] + 1 + 12] = 99;
}
var anon = (function(x) {
 var $4 = HEAP[__PyThreadState_Current];
 var $5 = $4 + 12;
 var $7 = HEAP[$5] + 1;
 var $8 = $4 + 12;
 HEAP[$8] = $7;
});
function r($0) {
 HEAP[$0 + 7] = 107;
}
function t() {
 if ($10 < $11) {
  __label__ = 3;
 }
 if (!($12 < $13)) {
  __label__ = 4;
 }
}
function f2() {
 var $_pre = HEAPU32[($vla + ($storemerge312 << 2) | 0) >> 2];
 var $storemerge312 = $storemerge312 + 1 | 0;
 c($_pre);
}
function f3($s, $tree, $k) {
 var $0 = HEAPU32[($s + 2908 + ($k << 2) | 0) >> 2];
 while (1) {
  HEAP32[($s + 2908 + ($storemerge_in << 2) | 0) >> 2] = $9;
 }
 HEAP32[($s + 2908 + ($storemerge_in << 2) | 0) >> 2] = $0;
}
function llvm3_1() {
 while (check()) {
  if ($curri_01 % $zj_0 == 0) {
   break;
  }
  run(($aj_0 + 1) / 2);
 }
}
function _inflate($strm, $flush) {
 var __stackBase__ = STACKTOP;
 STACKTOP += 4;
 var __label__;
 var $hbuf = __stackBase__;
 $_$2 : do {
  if (($strm | 0) == 0) {
   var $retval_0 = -2;
  } else {
   var $0 = HEAPU32[($strm + 28 | 0) >> 2];
   if (($0 | 0) == 0) {
    var $retval_0 = -2;
    break;
   }
   var $next_out = $strm + 12 | 0;
   var $1 = HEAP32[$next_out >> 2];
   if (($1 | 0) == 0) {
    var $retval_0 = -2;
    break;
   }
   var $next_in = $strm | 0;
   var $2 = HEAP32[$next_in >> 2];
   if (($2 | 0) == 0) {
    if (!((HEAP32[($strm + 4 | 0) >> 2] | 0) == 0)) {
     var $retval_0 = -2;
     break;
    }
   }
   var $4 = $0;
   var $mode = $0 | 0;
   var $5 = HEAP32[$mode >> 2];
   if (($5 | 0) == 11) {
    HEAP32[$mode >> 2] = 12;
    var $8 = HEAP32[$next_out >> 2];
    var $7 = HEAP32[$next_in >> 2];
    var $6 = 12;
   } else {
    var $8 = $1;
    var $7 = $2;
    var $6 = $5;
   }
   var $6;
   var $7;
   var $8;
   var $avail_out = $strm + 16 | 0;
   var $9 = HEAP32[$avail_out >> 2];
   var $avail_in15 = $strm + 4 | 0;
   var $10 = HEAPU32[$avail_in15 >> 2];
   var $11 = $0 + 56 | 0;
   var $13 = $0 + 60 | 0;
   var $15 = $0 + 8 | 0;
   var $16 = $0 + 24 | 0;
   var $arrayidx = $hbuf | 0;
   var $arrayidx40 = $hbuf + 1 | 0;
   var $17 = $0 + 16 | 0;
   var $18 = $0 + 32 | 0;
   var $msg = $strm + 24 | 0;
   var $19 = $0 + 36 | 0;
   var $20 = $0 + 20 | 0;
   var $adler = $strm + 48 | 0;
   var $21 = $0 + 64 | 0;
   var $22 = $0 + 12 | 0;
   var $23 = ($flush - 5 | 0) >>> 0 < 2;
   var $24 = $0 + 4 | 0;
   var $cmp660 = ($flush | 0) == 6;
   var $25 = $0 + 7108 | 0;
   var $26 = $0 + 84 | 0;
   var $27 = $0 + 76 | 0;
   var $28 = $0 + 72 | 0;
   var $29 = $0 + 7112 | 0;
   var $30 = $0 + 68 | 0;
   var $31 = $0 + 44 | 0;
   var $32 = $0 + 7104 | 0;
   var $33 = $0 + 48 | 0;
   var $34 = $0 + 52 | 0;
   var $35 = $0 + 40 | 0;
   var $total_out = $strm + 20 | 0;
   var $36 = $0 + 28 | 0;
   var $arrayidx199 = $hbuf + 2 | 0;
   var $arrayidx202 = $hbuf + 3 | 0;
   var $37 = $0 + 96 | 0;
   var $38 = $0 + 100 | 0;
   var $39 = $0 + 92 | 0;
   var $40 = $0 + 104 | 0;
   var $lens = $0 + 112 | 0;
   var $41 = $lens;
   var $next861 = $0 + 108 | 0;
   var $42 = $next861;
   var $43 = $next861 | 0;
   var $arraydecay860_c = $0 + 1328 | 0;
   var $44 = $0 + 76 | 0;
   var $arraydecay864 = $lens;
   var $arraydecay867 = $0 + 752 | 0;
   var $45 = $0 + 624 | 0;
   var $46 = $0 + 80 | 0;
   var $47 = $0 + 88 | 0;
   var $48 = $0 + 80 | 0;
   var $ret_0 = 0;
   var $next_0 = $7;
   var $put_0 = $8;
   var $have_0 = $10;
   var $left_0 = $9;
   var $hold_0 = HEAP32[$11 >> 2];
   var $bits_0 = HEAP32[$13 >> 2];
   var $out_0 = $9;
   var $49 = $6;
   $_$12 : while (1) {
    var $49;
    var $out_0;
    var $bits_0;
    var $hold_0;
    var $left_0;
    var $have_0;
    var $put_0;
    var $next_0;
    var $ret_0;
    $_$14 : do {
     if (($49 | 0) == 0) {
      var $50 = HEAPU32[$15 >> 2];
      if (($50 | 0) == 0) {
       HEAP32[$mode >> 2] = 12;
       var $ret_0_be = $ret_0;
       var $next_0_be = $next_0;
       var $put_0_be = $put_0;
       var $have_0_be = $have_0;
       var $left_0_be = $left_0;
       var $hold_0_be = $hold_0;
       var $bits_0_be = $bits_0;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      var $next_1 = $next_0;
      var $have_1 = $have_0;
      var $hold_1 = $hold_0;
      var $bits_1 = $bits_0;
      while (1) {
       var $bits_1;
       var $hold_1;
       var $have_1;
       var $next_1;
       if (!($bits_1 >>> 0 < 16)) {
        break;
       }
       if (($have_1 | 0) == 0) {
        var $ret_8 = $ret_0;
        var $next_58 = $next_1;
        var $have_58 = 0;
        var $hold_54 = $hold_1;
        var $bits_54 = $bits_1;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $add = ((HEAPU8[$next_1] & 255) << $bits_1) + $hold_1 | 0;
       var $next_1 = $next_1 + 1 | 0;
       var $have_1 = $have_1 - 1 | 0;
       var $hold_1 = $add;
       var $bits_1 = $bits_1 + 8 | 0;
      }
      if (($50 & 2 | 0) != 0 & ($hold_1 | 0) == 35615) {
       HEAP32[$16 >> 2] = _crc32(0, 0, 0);
       HEAP8[$arrayidx] = 31;
       HEAP8[$arrayidx40] = -117;
       HEAP32[$16 >> 2] = _crc32(HEAP32[$16 >> 2], $arrayidx, 2);
       HEAP32[$mode >> 2] = 1;
       var $ret_0_be = $ret_0;
       var $next_0_be = $next_1;
       var $put_0_be = $put_0;
       var $have_0_be = $have_1;
       var $left_0_be = $left_0;
       var $hold_0_be = 0;
       var $bits_0_be = 0;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      HEAP32[$17 >> 2] = 0;
      var $53 = HEAP32[$18 >> 2];
      if (($53 | 0) == 0) {
       var $54 = $50;
      } else {
       HEAP32[($53 + 48 | 0) >> 2] = -1;
       var $54 = HEAP32[$15 >> 2];
      }
      var $54;
      do {
       if (!(($54 & 1 | 0) == 0)) {
        if (!((((($hold_1 << 8 & 65280) + ($hold_1 >>> 8) | 0) >>> 0) % 31 | 0) == 0)) {
         break;
        }
        if (($hold_1 & 15 | 0) == 8) {
         var $shr74 = $hold_1 >>> 4;
         var $sub = $bits_1 - 4 | 0;
         var $add77 = ($shr74 & 15) + 8 | 0;
         var $55 = HEAPU32[$19 >> 2];
         do {
          if (!(($55 | 0) == 0)) {
           if (!($add77 >>> 0 > $55 >>> 0)) {
            break;
           }
           HEAP32[$msg >> 2] = STRING_TABLE.__str3100 | 0;
           HEAP32[$mode >> 2] = 29;
           var $ret_0_be = $ret_0;
           var $next_0_be = $next_1;
           var $put_0_be = $put_0;
           var $have_0_be = $have_1;
           var $left_0_be = $left_0;
           var $hold_0_be = $shr74;
           var $bits_0_be = $sub;
           var $out_0_be = $out_0;
           __label__ = 268;
           break $_$14;
          }
          HEAP32[$19 >> 2] = $add77;
         } while (0);
         HEAP32[$20 >> 2] = 1 << $add77;
         var $call91 = _adler32(0, 0, 0);
         HEAP32[$16 >> 2] = $call91;
         HEAP32[$adler >> 2] = $call91;
         HEAP32[$mode >> 2] = $hold_1 >>> 12 & 2 ^ 11;
         var $ret_0_be = $ret_0;
         var $next_0_be = $next_1;
         var $put_0_be = $put_0;
         var $have_0_be = $have_1;
         var $left_0_be = $left_0;
         var $hold_0_be = 0;
         var $bits_0_be = 0;
         var $out_0_be = $out_0;
         __label__ = 268;
         break $_$14;
        }
        HEAP32[$msg >> 2] = STRING_TABLE.__str299 | 0;
        HEAP32[$mode >> 2] = 29;
        var $ret_0_be = $ret_0;
        var $next_0_be = $next_1;
        var $put_0_be = $put_0;
        var $have_0_be = $have_1;
        var $left_0_be = $left_0;
        var $hold_0_be = $hold_1;
        var $bits_0_be = $bits_1;
        var $out_0_be = $out_0;
        __label__ = 268;
        break $_$14;
       }
      } while (0);
      HEAP32[$msg >> 2] = STRING_TABLE.__str198 | 0;
      HEAP32[$mode >> 2] = 29;
      var $ret_0_be = $ret_0;
      var $next_0_be = $next_1;
      var $put_0_be = $put_0;
      var $have_0_be = $have_1;
      var $left_0_be = $left_0;
      var $hold_0_be = $hold_1;
      var $bits_0_be = $bits_1;
      var $out_0_be = $out_0;
      __label__ = 268;
      break;
     } else if (($49 | 0) == 1) {
      var $next_2 = $next_0;
      var $have_2 = $have_0;
      var $hold_2 = $hold_0;
      var $bits_2 = $bits_0;
      while (1) {
       var $bits_2;
       var $hold_2;
       var $have_2;
       var $next_2;
       if (!($bits_2 >>> 0 < 16)) {
        break;
       }
       if (($have_2 | 0) == 0) {
        var $ret_8 = $ret_0;
        var $next_58 = $next_2;
        var $have_58 = 0;
        var $hold_54 = $hold_2;
        var $bits_54 = $bits_2;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $add113 = ((HEAPU8[$next_2] & 255) << $bits_2) + $hold_2 | 0;
       var $next_2 = $next_2 + 1 | 0;
       var $have_2 = $have_2 - 1 | 0;
       var $hold_2 = $add113;
       var $bits_2 = $bits_2 + 8 | 0;
      }
      HEAP32[$17 >> 2] = $hold_2;
      if (!(($hold_2 & 255 | 0) == 8)) {
       HEAP32[$msg >> 2] = STRING_TABLE.__str299 | 0;
       HEAP32[$mode >> 2] = 29;
       var $ret_0_be = $ret_0;
       var $next_0_be = $next_2;
       var $put_0_be = $put_0;
       var $have_0_be = $have_2;
       var $left_0_be = $left_0;
       var $hold_0_be = $hold_2;
       var $bits_0_be = $bits_2;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      if (($hold_2 & 57344 | 0) == 0) {
       var $59 = HEAPU32[$18 >> 2];
       if (($59 | 0) == 0) {
        var $60 = $hold_2;
       } else {
        HEAP32[($59 | 0) >> 2] = $hold_2 >>> 8 & 1;
        var $60 = HEAP32[$17 >> 2];
       }
       var $60;
       if (!(($60 & 512 | 0) == 0)) {
        HEAP8[$arrayidx] = $hold_2 & 255;
        HEAP8[$arrayidx40] = $hold_2 >>> 8 & 255;
        HEAP32[$16 >> 2] = _crc32(HEAP32[$16 >> 2], $arrayidx, 2);
       }
       HEAP32[$mode >> 2] = 2;
       var $next_3 = $next_2;
       var $have_3 = $have_2;
       var $hold_3 = 0;
       var $bits_3 = 0;
       __label__ = 44;
       break;
      }
      HEAP32[$msg >> 2] = STRING_TABLE.__str4101 | 0;
      HEAP32[$mode >> 2] = 29;
      var $ret_0_be = $ret_0;
      var $next_0_be = $next_2;
      var $put_0_be = $put_0;
      var $have_0_be = $have_2;
      var $left_0_be = $left_0;
      var $hold_0_be = $hold_2;
      var $bits_0_be = $bits_2;
      var $out_0_be = $out_0;
      __label__ = 268;
      break;
     } else if (($49 | 0) == 2) {
      var $next_3 = $next_0;
      var $have_3 = $have_0;
      var $hold_3 = $hold_0;
      var $bits_3 = $bits_0;
      __label__ = 44;
     } else if (($49 | 0) == 3) {
      var $next_4 = $next_0;
      var $have_4 = $have_0;
      var $hold_4 = $hold_0;
      var $bits_4 = $bits_0;
      __label__ = 52;
     } else if (($49 | 0) == 4) {
      var $next_5 = $next_0;
      var $have_5 = $have_0;
      var $hold_5 = $hold_0;
      var $bits_5 = $bits_0;
      __label__ = 60;
     } else if (($49 | 0) == 5) {
      var $next_8 = $next_0;
      var $have_8 = $have_0;
      var $hold_8 = $hold_0;
      var $bits_8 = $bits_0;
      __label__ = 71;
     } else if (($49 | 0) == 6) {
      var $next_11 = $next_0;
      var $have_11 = $have_0;
      var $hold_9 = $hold_0;
      var $bits_9 = $bits_0;
      var $89 = HEAP32[$17 >> 2];
      __label__ = 81;
      break;
     } else if (($49 | 0) == 7) {
      var $next_13 = $next_0;
      var $have_13 = $have_0;
      var $hold_10 = $hold_0;
      var $bits_10 = $bits_0;
      __label__ = 94;
     } else if (($49 | 0) == 8) {
      var $next_15 = $next_0;
      var $have_15 = $have_0;
      var $hold_11 = $hold_0;
      var $bits_11 = $bits_0;
      __label__ = 107;
     } else if (($49 | 0) == 9) {
      var $next_18 = $next_0;
      var $have_18 = $have_0;
      var $hold_14 = $hold_0;
      var $bits_14 = $bits_0;
      while (1) {
       var $bits_14;
       var $hold_14;
       var $have_18;
       var $next_18;
       if (!($bits_14 >>> 0 < 32)) {
        break;
       }
       if (($have_18 | 0) == 0) {
        var $ret_8 = $ret_0;
        var $next_58 = $next_18;
        var $have_58 = 0;
        var $hold_54 = $hold_14;
        var $bits_54 = $bits_14;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $add564 = ((HEAPU8[$next_18] & 255) << $bits_14) + $hold_14 | 0;
       var $next_18 = $next_18 + 1 | 0;
       var $have_18 = $have_18 - 1 | 0;
       var $hold_14 = $add564;
       var $bits_14 = $bits_14 + 8 | 0;
      }
      var $add581 = _llvm_bswap_i32($hold_14);
      HEAP32[$16 >> 2] = $add581;
      HEAP32[$adler >> 2] = $add581;
      HEAP32[$mode >> 2] = 10;
      var $next_19 = $next_18;
      var $have_19 = $have_18;
      var $hold_15 = 0;
      var $bits_15 = 0;
      __label__ = 120;
      break;
     } else if (($49 | 0) == 10) {
      var $next_19 = $next_0;
      var $have_19 = $have_0;
      var $hold_15 = $hold_0;
      var $bits_15 = $bits_0;
      __label__ = 120;
     } else if (($49 | 0) == 11) {
      var $next_20 = $next_0;
      var $have_20 = $have_0;
      var $hold_16 = $hold_0;
      var $bits_16 = $bits_0;
      __label__ = 123;
     } else if (($49 | 0) == 12) {
      var $next_21 = $next_0;
      var $have_21 = $have_0;
      var $hold_17 = $hold_0;
      var $bits_17 = $bits_0;
      __label__ = 124;
     } else if (($49 | 0) == 13) {
      var $and681 = $bits_0 & 7;
      var $next_23 = $next_0;
      var $have_23 = $have_0;
      var $hold_19 = $hold_0 >>> ($and681 >>> 0);
      var $bits_19 = $bits_0 - $and681 | 0;
      while (1) {
       var $bits_19;
       var $hold_19;
       var $have_23;
       var $next_23;
       if (!($bits_19 >>> 0 < 32)) {
        break;
       }
       if (($have_23 | 0) == 0) {
        var $ret_8 = $ret_0;
        var $next_58 = $next_23;
        var $have_58 = 0;
        var $hold_54 = $hold_19;
        var $bits_54 = $bits_19;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $add701 = ((HEAPU8[$next_23] & 255) << $bits_19) + $hold_19 | 0;
       var $next_23 = $next_23 + 1 | 0;
       var $have_23 = $have_23 - 1 | 0;
       var $hold_19 = $add701;
       var $bits_19 = $bits_19 + 8 | 0;
      }
      var $and708 = $hold_19 & 65535;
      if (!(($and708 | 0) == ($hold_19 >>> 16 ^ 65535 | 0))) {
       HEAP32[$msg >> 2] = STRING_TABLE.__str7104 | 0;
       HEAP32[$mode >> 2] = 29;
       var $ret_0_be = $ret_0;
       var $next_0_be = $next_23;
       var $put_0_be = $put_0;
       var $have_0_be = $have_23;
       var $left_0_be = $left_0;
       var $hold_0_be = $hold_19;
       var $bits_0_be = $bits_19;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      HEAP32[$21 >> 2] = $and708;
      HEAP32[$mode >> 2] = 14;
      if ($cmp660) {
       var $ret_8 = $ret_0;
       var $next_58 = $next_23;
       var $have_58 = $have_23;
       var $hold_54 = 0;
       var $bits_54 = 0;
       var $out_4 = $out_0;
       break $_$12;
      }
      var $next_24 = $next_23;
      var $have_24 = $have_23;
      var $hold_20 = 0;
      var $bits_20 = 0;
      __label__ = 143;
      break;
     } else if (($49 | 0) == 14) {
      var $next_24 = $next_0;
      var $have_24 = $have_0;
      var $hold_20 = $hold_0;
      var $bits_20 = $bits_0;
      __label__ = 143;
     } else if (($49 | 0) == 15) {
      var $next_25 = $next_0;
      var $have_25 = $have_0;
      var $hold_21 = $hold_0;
      var $bits_21 = $bits_0;
      __label__ = 144;
     } else if (($49 | 0) == 16) {
      var $next_26 = $next_0;
      var $have_26 = $have_0;
      var $hold_22 = $hold_0;
      var $bits_22 = $bits_0;
      while (1) {
       var $bits_22;
       var $hold_22;
       var $have_26;
       var $next_26;
       if (!($bits_22 >>> 0 < 14)) {
        break;
       }
       if (($have_26 | 0) == 0) {
        var $ret_8 = $ret_0;
        var $next_58 = $next_26;
        var $have_58 = 0;
        var $hold_54 = $hold_22;
        var $bits_54 = $bits_22;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $add767 = ((HEAPU8[$next_26] & 255) << $bits_22) + $hold_22 | 0;
       var $next_26 = $next_26 + 1 | 0;
       var $have_26 = $have_26 - 1 | 0;
       var $hold_22 = $add767;
       var $bits_22 = $bits_22 + 8 | 0;
      }
      var $add775 = ($hold_22 & 31) + 257 | 0;
      HEAP32[$37 >> 2] = $add775;
      var $add782 = ($hold_22 >>> 5 & 31) + 1 | 0;
      HEAP32[$38 >> 2] = $add782;
      HEAP32[$39 >> 2] = ($hold_22 >>> 10 & 15) + 4 | 0;
      var $shr791 = $hold_22 >>> 14;
      var $sub792 = $bits_22 - 14 | 0;
      if ($add775 >>> 0 > 286 | $add782 >>> 0 > 30) {
       HEAP32[$msg >> 2] = STRING_TABLE.__str8105 | 0;
       HEAP32[$mode >> 2] = 29;
       var $ret_0_be = $ret_0;
       var $next_0_be = $next_26;
       var $put_0_be = $put_0;
       var $have_0_be = $have_26;
       var $left_0_be = $left_0;
       var $hold_0_be = $shr791;
       var $bits_0_be = $sub792;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      HEAP32[$40 >> 2] = 0;
      HEAP32[$mode >> 2] = 17;
      var $next_27 = $next_26;
      var $have_27 = $have_26;
      var $hold_23 = $shr791;
      var $bits_23 = $sub792;
      __label__ = 154;
      break;
     } else if (($49 | 0) == 17) {
      var $next_27 = $next_0;
      var $have_27 = $have_0;
      var $hold_23 = $hold_0;
      var $bits_23 = $bits_0;
      __label__ = 154;
     } else if (($49 | 0) == 18) {
      var $ret_1_ph = $ret_0;
      var $next_29_ph = $next_0;
      var $have_29_ph = $have_0;
      var $hold_25_ph = $hold_0;
      var $bits_25_ph = $bits_0;
      __label__ = 164;
     } else if (($49 | 0) == 19) {
      var $ret_2 = $ret_0;
      var $next_37 = $next_0;
      var $have_37 = $have_0;
      var $hold_33 = $hold_0;
      var $bits_33 = $bits_0;
      __label__ = 205;
     } else if (($49 | 0) == 20) {
      var $ret_3 = $ret_0;
      var $next_38 = $next_0;
      var $have_38 = $have_0;
      var $hold_34 = $hold_0;
      var $bits_34 = $bits_0;
      __label__ = 206;
     } else if (($49 | 0) == 21) {
      var $ret_4 = $ret_0;
      var $next_42 = $next_0;
      var $have_42 = $have_0;
      var $hold_38 = $hold_0;
      var $bits_38 = $bits_0;
      var $156 = HEAP32[$28 >> 2];
      __label__ = 227;
      break;
     } else if (($49 | 0) == 22) {
      var $ret_5_ph = $ret_0;
      var $next_45_ph = $next_0;
      var $have_45_ph = $have_0;
      var $hold_41_ph = $hold_0;
      var $bits_41_ph = $bits_0;
      __label__ = 234;
     } else if (($49 | 0) == 23) {
      var $ret_6 = $ret_0;
      var $next_48 = $next_0;
      var $have_48 = $have_0;
      var $hold_44 = $hold_0;
      var $bits_44 = $bits_0;
      var $167 = HEAP32[$28 >> 2];
      __label__ = 248;
      break;
     } else if (($49 | 0) == 24) {
      var $ret_7 = $ret_0;
      var $next_51 = $next_0;
      var $have_51 = $have_0;
      var $hold_47 = $hold_0;
      var $bits_47 = $bits_0;
      __label__ = 254;
     } else if (($49 | 0) == 25) {
      if (($left_0 | 0) == 0) {
       var $ret_8 = $ret_0;
       var $next_58 = $next_0;
       var $have_58 = $have_0;
       var $hold_54 = $hold_0;
       var $bits_54 = $bits_0;
       var $out_4 = $out_0;
       break $_$12;
      }
      HEAP8[$put_0] = HEAP32[$21 >> 2] & 255;
      HEAP32[$mode >> 2] = 20;
      var $ret_0_be = $ret_0;
      var $next_0_be = $next_0;
      var $put_0_be = $put_0 + 1 | 0;
      var $have_0_be = $have_0;
      var $left_0_be = $left_0 - 1 | 0;
      var $hold_0_be = $hold_0;
      var $bits_0_be = $bits_0;
      var $out_0_be = $out_0;
      __label__ = 268;
      break;
     } else if (($49 | 0) == 26) {
      do {
       if (!((HEAP32[$15 >> 2] | 0) == 0)) {
        var $next_52 = $next_0;
        var $have_52 = $have_0;
        var $hold_48 = $hold_0;
        var $bits_48 = $bits_0;
        while (1) {
         var $bits_48;
         var $hold_48;
         var $have_52;
         var $next_52;
         if (!($bits_48 >>> 0 < 32)) {
          break;
         }
         if (($have_52 | 0) == 0) {
          var $ret_8 = $ret_0;
          var $next_58 = $next_52;
          var $have_58 = 0;
          var $hold_54 = $hold_48;
          var $bits_54 = $bits_48;
          var $out_4 = $out_0;
          break $_$12;
         }
         var $add1642 = ((HEAPU8[$next_52] & 255) << $bits_48) + $hold_48 | 0;
         var $next_52 = $next_52 + 1 | 0;
         var $have_52 = $have_52 - 1 | 0;
         var $hold_48 = $add1642;
         var $bits_48 = $bits_48 + 8 | 0;
        }
        var $sub1649 = $out_0 - $left_0 | 0;
        HEAP32[$total_out >> 2] = HEAP32[$total_out >> 2] + $sub1649 | 0;
        HEAP32[$36 >> 2] = HEAP32[$36 >> 2] + $sub1649 | 0;
        if (!(($out_0 | 0) == ($left_0 | 0))) {
         var $192 = HEAP32[$16 >> 2];
         var $add_ptr1659 = $put_0 + (-$sub1649 | 0) | 0;
         if ((HEAP32[$17 >> 2] | 0) == 0) {
          var $cond1667 = _adler32($192, $add_ptr1659, $sub1649);
         } else {
          var $cond1667 = _crc32($192, $add_ptr1659, $sub1649);
         }
         var $cond1667;
         HEAP32[$16 >> 2] = $cond1667;
         HEAP32[$adler >> 2] = $cond1667;
        }
        if ((HEAP32[$17 >> 2] | 0) == 0) {
         var $cond1687 = _llvm_bswap_i32($hold_48);
        } else {
         var $cond1687 = $hold_48;
        }
        var $cond1687;
        if (($cond1687 | 0) == (HEAP32[$16 >> 2] | 0)) {
         var $next_53 = $next_52;
         var $have_53 = $have_52;
         var $hold_49 = 0;
         var $bits_49 = 0;
         var $out_1 = $left_0;
         break;
        }
        HEAP32[$msg >> 2] = STRING_TABLE.__str17114 | 0;
        HEAP32[$mode >> 2] = 29;
        var $ret_0_be = $ret_0;
        var $next_0_be = $next_52;
        var $put_0_be = $put_0;
        var $have_0_be = $have_52;
        var $left_0_be = $left_0;
        var $hold_0_be = $hold_48;
        var $bits_0_be = $bits_48;
        var $out_0_be = $left_0;
        __label__ = 268;
        break $_$14;
       }
       var $next_53 = $next_0;
       var $have_53 = $have_0;
       var $hold_49 = $hold_0;
       var $bits_49 = $bits_0;
       var $out_1 = $out_0;
      } while (0);
      var $out_1;
      var $bits_49;
      var $hold_49;
      var $have_53;
      var $next_53;
      HEAP32[$mode >> 2] = 27;
      var $next_54 = $next_53;
      var $have_54 = $have_53;
      var $hold_50 = $hold_49;
      var $bits_50 = $bits_49;
      var $out_2 = $out_1;
      __label__ = 286;
      break;
     } else if (($49 | 0) == 27) {
      var $next_54 = $next_0;
      var $have_54 = $have_0;
      var $hold_50 = $hold_0;
      var $bits_50 = $bits_0;
      var $out_2 = $out_0;
      __label__ = 286;
     } else if (($49 | 0) == 28) {
      var $ret_8 = 1;
      var $next_58 = $next_0;
      var $have_58 = $have_0;
      var $hold_54 = $hold_0;
      var $bits_54 = $bits_0;
      var $out_4 = $out_0;
      break $_$12;
     } else if (($49 | 0) == 29) {
      var $ret_8 = -3;
      var $next_58 = $next_0;
      var $have_58 = $have_0;
      var $hold_54 = $hold_0;
      var $bits_54 = $bits_0;
      var $out_4 = $out_0;
      break $_$12;
     } else if (($49 | 0) == 30) {
      var $retval_0 = -4;
      break $_$2;
     } else {
      var $retval_0 = -2;
      break $_$2;
     }
    } while (0);
    $_$106 : do {
     if (__label__ == 44) {
      while (1) {
       var $bits_3;
       var $hold_3;
       var $have_3;
       var $next_3;
       if (!($bits_3 >>> 0 < 32)) {
        break;
       }
       if (($have_3 | 0) == 0) {
        var $ret_8 = $ret_0;
        var $next_58 = $next_3;
        var $have_58 = 0;
        var $hold_54 = $hold_3;
        var $bits_54 = $bits_3;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $add176 = ((HEAPU8[$next_3] & 255) << $bits_3) + $hold_3 | 0;
       var $next_3 = $next_3 + 1 | 0;
       var $have_3 = $have_3 - 1 | 0;
       var $hold_3 = $add176;
       var $bits_3 = $bits_3 + 8 | 0;
      }
      var $63 = HEAP32[$18 >> 2];
      if (!(($63 | 0) == 0)) {
       HEAP32[($63 + 4 | 0) >> 2] = $hold_3;
      }
      if (!((HEAP32[$17 >> 2] & 512 | 0) == 0)) {
       HEAP8[$arrayidx] = $hold_3 & 255;
       HEAP8[$arrayidx40] = $hold_3 >>> 8 & 255;
       HEAP8[$arrayidx199] = $hold_3 >>> 16 & 255;
       HEAP8[$arrayidx202] = $hold_3 >>> 24 & 255;
       HEAP32[$16 >> 2] = _crc32(HEAP32[$16 >> 2], $arrayidx, 4);
      }
      HEAP32[$mode >> 2] = 3;
      var $next_4 = $next_3;
      var $have_4 = $have_3;
      var $hold_4 = 0;
      var $bits_4 = 0;
      __label__ = 52;
      break;
     } else if (__label__ == 120) {
      var $bits_15;
      var $hold_15;
      var $have_19;
      var $next_19;
      if ((HEAP32[$22 >> 2] | 0) == 0) {
       HEAP32[$next_out >> 2] = $put_0;
       HEAP32[$avail_out >> 2] = $left_0;
       HEAP32[$next_in >> 2] = $next_19;
       HEAP32[$avail_in15 >> 2] = $have_19;
       HEAP32[$11 >> 2] = $hold_15;
       HEAP32[$13 >> 2] = $bits_15;
       var $retval_0 = 2;
       break $_$2;
      }
      var $call602 = _adler32(0, 0, 0);
      HEAP32[$16 >> 2] = $call602;
      HEAP32[$adler >> 2] = $call602;
      HEAP32[$mode >> 2] = 11;
      var $next_20 = $next_19;
      var $have_20 = $have_19;
      var $hold_16 = $hold_15;
      var $bits_16 = $bits_15;
      __label__ = 123;
      break;
     } else if (__label__ == 143) {
      var $bits_20;
      var $hold_20;
      var $have_24;
      var $next_24;
      HEAP32[$mode >> 2] = 15;
      var $next_25 = $next_24;
      var $have_25 = $have_24;
      var $hold_21 = $hold_20;
      var $bits_21 = $bits_20;
      __label__ = 144;
      break;
     } else if (__label__ == 154) {
      while (1) {
       var $bits_23;
       var $hold_23;
       var $have_27;
       var $next_27;
       var $122 = HEAPU32[$40 >> 2];
       if (!($122 >>> 0 < HEAPU32[$39 >> 2] >>> 0)) {
        break;
       }
       var $next_28 = $next_27;
       var $have_28 = $have_27;
       var $hold_24 = $hold_23;
       var $bits_24 = $bits_23;
       while (1) {
        var $bits_24;
        var $hold_24;
        var $have_28;
        var $next_28;
        if (!($bits_24 >>> 0 < 3)) {
         break;
        }
        if (($have_28 | 0) == 0) {
         var $ret_8 = $ret_0;
         var $next_58 = $next_28;
         var $have_58 = 0;
         var $hold_54 = $hold_24;
         var $bits_54 = $bits_24;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $add829 = ((HEAPU8[$next_28] & 255) << $bits_24) + $hold_24 | 0;
        var $next_28 = $next_28 + 1 | 0;
        var $have_28 = $have_28 - 1 | 0;
        var $hold_24 = $add829;
        var $bits_24 = $bits_24 + 8 | 0;
       }
       HEAP32[$40 >> 2] = $122 + 1 | 0;
       HEAP16[($41 + ((HEAPU16[(_inflate_order + ($122 << 1) | 0) >> 1] & 65535) << 1) | 0) >> 1] = $hold_24 & 65535 & 7;
       var $next_27 = $next_28;
       var $have_27 = $have_28;
       var $hold_23 = $hold_24 >>> 3;
       var $bits_23 = $bits_24 - 3 | 0;
      }
      $_$131 : do {
       if ($122 >>> 0 < 19) {
        var $126 = $122;
        while (1) {
         var $126;
         HEAP32[$40 >> 2] = $126 + 1 | 0;
         HEAP16[($41 + ((HEAPU16[(_inflate_order + ($126 << 1) | 0) >> 1] & 65535) << 1) | 0) >> 1] = 0;
         var $_pr = HEAPU32[$40 >> 2];
         if (!($_pr >>> 0 < 19)) {
          break $_$131;
         }
         var $126 = $_pr;
        }
       }
      } while (0);
      HEAP32[$43 >> 2] = $arraydecay860_c;
      HEAP32[$44 >> 2] = $arraydecay860_c;
      HEAP32[$26 >> 2] = 7;
      var $call868 = _inflate_table(0, $arraydecay864, 19, $42, $26, $arraydecay867);
      if (($call868 | 0) == 0) {
       HEAP32[$40 >> 2] = 0;
       HEAP32[$mode >> 2] = 18;
       var $ret_1_ph = 0;
       var $next_29_ph = $next_27;
       var $have_29_ph = $have_27;
       var $hold_25_ph = $hold_23;
       var $bits_25_ph = $bits_23;
       __label__ = 164;
       break;
      }
      HEAP32[$msg >> 2] = STRING_TABLE.__str9106 | 0;
      HEAP32[$mode >> 2] = 29;
      var $ret_0_be = $call868;
      var $next_0_be = $next_27;
      var $put_0_be = $put_0;
      var $have_0_be = $have_27;
      var $left_0_be = $left_0;
      var $hold_0_be = $hold_23;
      var $bits_0_be = $bits_23;
      var $out_0_be = $out_0;
      __label__ = 268;
      break;
     } else if (__label__ == 286) {
      var $out_2;
      var $bits_50;
      var $hold_50;
      var $have_54;
      var $next_54;
      do {
       if (!((HEAP32[$15 >> 2] | 0) == 0)) {
        if ((HEAP32[$17 >> 2] | 0) == 0) {
         var $next_56 = $next_54;
         var $have_56 = $have_54;
         var $hold_52 = $hold_50;
         var $bits_52 = $bits_50;
         break;
        }
        var $next_55 = $next_54;
        var $have_55 = $have_54;
        var $hold_51 = $hold_50;
        var $bits_51 = $bits_50;
        while (1) {
         var $bits_51;
         var $hold_51;
         var $have_55;
         var $next_55;
         if (!($bits_51 >>> 0 < 32)) {
          break;
         }
         if (($have_55 | 0) == 0) {
          var $ret_8 = $ret_0;
          var $next_58 = $next_55;
          var $have_58 = 0;
          var $hold_54 = $hold_51;
          var $bits_54 = $bits_51;
          var $out_4 = $out_2;
          break $_$12;
         }
         var $add1721 = ((HEAPU8[$next_55] & 255) << $bits_51) + $hold_51 | 0;
         var $next_55 = $next_55 + 1 | 0;
         var $have_55 = $have_55 - 1 | 0;
         var $hold_51 = $add1721;
         var $bits_51 = $bits_51 + 8 | 0;
        }
        if (($hold_51 | 0) == (HEAP32[$36 >> 2] | 0)) {
         var $next_56 = $next_55;
         var $have_56 = $have_55;
         var $hold_52 = 0;
         var $bits_52 = 0;
         break;
        }
        HEAP32[$msg >> 2] = STRING_TABLE.__str18115 | 0;
        HEAP32[$mode >> 2] = 29;
        var $ret_0_be = $ret_0;
        var $next_0_be = $next_55;
        var $put_0_be = $put_0;
        var $have_0_be = $have_55;
        var $left_0_be = $left_0;
        var $hold_0_be = $hold_51;
        var $bits_0_be = $bits_51;
        var $out_0_be = $out_2;
        __label__ = 268;
        break $_$106;
       }
       var $next_56 = $next_54;
       var $have_56 = $have_54;
       var $hold_52 = $hold_50;
       var $bits_52 = $bits_50;
      } while (0);
      var $bits_52;
      var $hold_52;
      var $have_56;
      var $next_56;
      HEAP32[$mode >> 2] = 28;
      var $ret_8 = 1;
      var $next_58 = $next_56;
      var $have_58 = $have_56;
      var $hold_54 = $hold_52;
      var $bits_54 = $bits_52;
      var $out_4 = $out_2;
      break $_$12;
     }
    } while (0);
    $_$148 : do {
     if (__label__ == 52) {
      while (1) {
       var $bits_4;
       var $hold_4;
       var $have_4;
       var $next_4;
       if (!($bits_4 >>> 0 < 16)) {
        break;
       }
       if (($have_4 | 0) == 0) {
        var $ret_8 = $ret_0;
        var $next_58 = $next_4;
        var $have_58 = 0;
        var $hold_54 = $hold_4;
        var $bits_54 = $bits_4;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $add227 = ((HEAPU8[$next_4] & 255) << $bits_4) + $hold_4 | 0;
       var $next_4 = $next_4 + 1 | 0;
       var $have_4 = $have_4 - 1 | 0;
       var $hold_4 = $add227;
       var $bits_4 = $bits_4 + 8 | 0;
      }
      var $67 = HEAP32[$18 >> 2];
      if (!(($67 | 0) == 0)) {
       HEAP32[($67 + 8 | 0) >> 2] = $hold_4 & 255;
       HEAP32[(HEAP32[$18 >> 2] + 12 | 0) >> 2] = $hold_4 >>> 8;
      }
      if (!((HEAP32[$17 >> 2] & 512 | 0) == 0)) {
       HEAP8[$arrayidx] = $hold_4 & 255;
       HEAP8[$arrayidx40] = $hold_4 >>> 8 & 255;
       HEAP32[$16 >> 2] = _crc32(HEAP32[$16 >> 2], $arrayidx, 2);
      }
      HEAP32[$mode >> 2] = 4;
      var $next_5 = $next_4;
      var $have_5 = $have_4;
      var $hold_5 = 0;
      var $bits_5 = 0;
      __label__ = 60;
      break;
     } else if (__label__ == 123) {
      var $bits_16;
      var $hold_16;
      var $have_20;
      var $next_20;
      if ($23) {
       var $ret_8 = $ret_0;
       var $next_58 = $next_20;
       var $have_58 = $have_20;
       var $hold_54 = $hold_16;
       var $bits_54 = $bits_16;
       var $out_4 = $out_0;
       break $_$12;
      }
      var $next_21 = $next_20;
      var $have_21 = $have_20;
      var $hold_17 = $hold_16;
      var $bits_17 = $bits_16;
      __label__ = 124;
      break;
     } else if (__label__ == 144) {
      var $bits_21;
      var $hold_21;
      var $have_25;
      var $next_25;
      var $119 = HEAPU32[$21 >> 2];
      if (($119 | 0) == 0) {
       HEAP32[$mode >> 2] = 11;
       var $ret_0_be = $ret_0;
       var $next_0_be = $next_25;
       var $put_0_be = $put_0;
       var $have_0_be = $have_25;
       var $left_0_be = $left_0;
       var $hold_0_be = $hold_21;
       var $bits_0_be = $bits_21;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      var $copy_3 = $119 >>> 0 > $have_25 >>> 0 ? $have_25 : $119;
      var $copy_4 = $copy_3 >>> 0 > $left_0 >>> 0 ? $left_0 : $copy_3;
      if (($copy_4 | 0) == 0) {
       var $ret_8 = $ret_0;
       var $next_58 = $next_25;
       var $have_58 = $have_25;
       var $hold_54 = $hold_21;
       var $bits_54 = $bits_21;
       var $out_4 = $out_0;
       break $_$12;
      }
      _memcpy($put_0, $next_25, $copy_4, 1);
      HEAP32[$21 >> 2] = HEAP32[$21 >> 2] - $copy_4 | 0;
      var $ret_0_be = $ret_0;
      var $next_0_be = $next_25 + $copy_4 | 0;
      var $put_0_be = $put_0 + $copy_4 | 0;
      var $have_0_be = $have_25 - $copy_4 | 0;
      var $left_0_be = $left_0 - $copy_4 | 0;
      var $hold_0_be = $hold_21;
      var $bits_0_be = $bits_21;
      var $out_0_be = $out_0;
      __label__ = 268;
      break;
     } else if (__label__ == 164) {
      var $bits_25_ph;
      var $hold_25_ph;
      var $have_29_ph;
      var $next_29_ph;
      var $ret_1_ph;
      var $next_29 = $next_29_ph;
      var $have_29 = $have_29_ph;
      var $hold_25 = $hold_25_ph;
      var $bits_25 = $bits_25_ph;
      $_$167 : while (1) {
       var $bits_25;
       var $hold_25;
       var $have_29;
       var $next_29;
       var $128 = HEAPU32[$40 >> 2];
       var $129 = HEAPU32[$37 >> 2];
       var $add881 = HEAP32[$38 >> 2] + $129 | 0;
       if ($128 >>> 0 < $add881 >>> 0) {
        var $sub888 = (1 << HEAP32[$26 >> 2]) - 1 | 0;
        var $132 = HEAPU32[$27 >> 2];
        var $next_30 = $next_29;
        var $have_30 = $have_29;
        var $hold_26 = $hold_25;
        var $bits_26 = $bits_25;
        while (1) {
         var $bits_26;
         var $hold_26;
         var $have_30;
         var $next_30;
         var $and889 = $sub888 & $hold_26;
         var $conv893 = HEAPU8[$132 + ($and889 << 2) + 1 | 0] & 255;
         if (!($conv893 >>> 0 > $bits_26 >>> 0)) {
          break;
         }
         if (($have_30 | 0) == 0) {
          var $ret_8 = $ret_1_ph;
          var $next_58 = $next_30;
          var $have_58 = 0;
          var $hold_54 = $hold_26;
          var $bits_54 = $bits_26;
          var $out_4 = $out_0;
          break $_$12;
         }
         var $add907 = ((HEAPU8[$next_30] & 255) << $bits_26) + $hold_26 | 0;
         var $next_30 = $next_30 + 1 | 0;
         var $have_30 = $have_30 - 1 | 0;
         var $hold_26 = $add907;
         var $bits_26 = $bits_26 + 8 | 0;
        }
        var $tmp26 = HEAPU16[($132 + ($and889 << 2) + 2 | 0) >> 1];
        if (($tmp26 & 65535) < 16) {
         var $next_31 = $next_30;
         var $have_31 = $have_30;
         var $hold_27 = $hold_26;
         var $bits_27 = $bits_26;
         while (1) {
          var $bits_27;
          var $hold_27;
          var $have_31;
          var $next_31;
          if (!($bits_27 >>> 0 < $conv893 >>> 0)) {
           break;
          }
          if (($have_31 | 0) == 0) {
           var $ret_8 = $ret_1_ph;
           var $next_58 = $next_31;
           var $have_58 = 0;
           var $hold_54 = $hold_27;
           var $bits_54 = $bits_27;
           var $out_4 = $out_0;
           break $_$12;
          }
          var $add931 = ((HEAPU8[$next_31] & 255) << $bits_27) + $hold_27 | 0;
          var $next_31 = $next_31 + 1 | 0;
          var $have_31 = $have_31 - 1 | 0;
          var $hold_27 = $add931;
          var $bits_27 = $bits_27 + 8 | 0;
         }
         HEAP32[$40 >> 2] = $128 + 1 | 0;
         HEAP16[($41 + ($128 << 1) | 0) >> 1] = $tmp26;
         var $next_29 = $next_31;
         var $have_29 = $have_31;
         var $hold_25 = $hold_27 >>> ($conv893 >>> 0);
         var $bits_25 = $bits_27 - $conv893 | 0;
        } else {
         if ($tmp26 << 16 >> 16 == 16) {
          var $add962 = $conv893 + 2 | 0;
          var $next_32 = $next_30;
          var $have_32 = $have_30;
          var $hold_28 = $hold_26;
          var $bits_28 = $bits_26;
          while (1) {
           var $bits_28;
           var $hold_28;
           var $have_32;
           var $next_32;
           if (!($bits_28 >>> 0 < $add962 >>> 0)) {
            break;
           }
           if (($have_32 | 0) == 0) {
            var $ret_8 = $ret_1_ph;
            var $next_58 = $next_32;
            var $have_58 = 0;
            var $hold_54 = $hold_28;
            var $bits_54 = $bits_28;
            var $out_4 = $out_0;
            break $_$12;
           }
           var $add975 = ((HEAPU8[$next_32] & 255) << $bits_28) + $hold_28 | 0;
           var $next_32 = $next_32 + 1 | 0;
           var $have_32 = $have_32 - 1 | 0;
           var $hold_28 = $add975;
           var $bits_28 = $bits_28 + 8 | 0;
          }
          var $shr985 = $hold_28 >>> ($conv893 >>> 0);
          var $sub988 = $bits_28 - $conv893 | 0;
          if (($128 | 0) == 0) {
           HEAP32[$msg >> 2] = STRING_TABLE.__str10107 | 0;
           HEAP32[$mode >> 2] = 29;
           var $ret_0_be = $ret_1_ph;
           var $next_0_be = $next_32;
           var $put_0_be = $put_0;
           var $have_0_be = $have_32;
           var $left_0_be = $left_0;
           var $hold_0_be = $shr985;
           var $bits_0_be = $sub988;
           var $out_0_be = $out_0;
           __label__ = 268;
           break $_$148;
          }
          var $len_0 = HEAP16[($41 + (($128 - 1 | 0) << 1) | 0) >> 1];
          var $next_35 = $next_32;
          var $have_35 = $have_32;
          var $hold_31 = $shr985 >>> 2;
          var $bits_31 = $sub988 - 2 | 0;
          var $copy_5 = ($shr985 & 3) + 3 | 0;
         } else if ($tmp26 << 16 >> 16 == 17) {
          var $add1020 = $conv893 + 3 | 0;
          var $next_33 = $next_30;
          var $have_33 = $have_30;
          var $hold_29 = $hold_26;
          var $bits_29 = $bits_26;
          while (1) {
           var $bits_29;
           var $hold_29;
           var $have_33;
           var $next_33;
           if (!($bits_29 >>> 0 < $add1020 >>> 0)) {
            break;
           }
           if (($have_33 | 0) == 0) {
            var $ret_8 = $ret_1_ph;
            var $next_58 = $next_33;
            var $have_58 = 0;
            var $hold_54 = $hold_29;
            var $bits_54 = $bits_29;
            var $out_4 = $out_0;
            break $_$12;
           }
           var $add1033 = ((HEAPU8[$next_33] & 255) << $bits_29) + $hold_29 | 0;
           var $next_33 = $next_33 + 1 | 0;
           var $have_33 = $have_33 - 1 | 0;
           var $hold_29 = $add1033;
           var $bits_29 = $bits_29 + 8 | 0;
          }
          var $shr1043 = $hold_29 >>> ($conv893 >>> 0);
          var $len_0 = 0;
          var $next_35 = $next_33;
          var $have_35 = $have_33;
          var $hold_31 = $shr1043 >>> 3;
          var $bits_31 = (-3 - $conv893 | 0) + $bits_29 | 0;
          var $copy_5 = ($shr1043 & 7) + 3 | 0;
         } else {
          var $add1061 = $conv893 + 7 | 0;
          var $next_34 = $next_30;
          var $have_34 = $have_30;
          var $hold_30 = $hold_26;
          var $bits_30 = $bits_26;
          while (1) {
           var $bits_30;
           var $hold_30;
           var $have_34;
           var $next_34;
           if (!($bits_30 >>> 0 < $add1061 >>> 0)) {
            break;
           }
           if (($have_34 | 0) == 0) {
            var $ret_8 = $ret_1_ph;
            var $next_58 = $next_34;
            var $have_58 = 0;
            var $hold_54 = $hold_30;
            var $bits_54 = $bits_30;
            var $out_4 = $out_0;
            break $_$12;
           }
           var $add1074 = ((HEAPU8[$next_34] & 255) << $bits_30) + $hold_30 | 0;
           var $next_34 = $next_34 + 1 | 0;
           var $have_34 = $have_34 - 1 | 0;
           var $hold_30 = $add1074;
           var $bits_30 = $bits_30 + 8 | 0;
          }
          var $shr1084 = $hold_30 >>> ($conv893 >>> 0);
          var $len_0 = 0;
          var $next_35 = $next_34;
          var $have_35 = $have_34;
          var $hold_31 = $shr1084 >>> 7;
          var $bits_31 = (-7 - $conv893 | 0) + $bits_30 | 0;
          var $copy_5 = ($shr1084 & 127) + 11 | 0;
         }
         var $copy_5;
         var $bits_31;
         var $hold_31;
         var $have_35;
         var $next_35;
         var $len_0;
         if (($128 + $copy_5 | 0) >>> 0 > $add881 >>> 0) {
          HEAP32[$msg >> 2] = STRING_TABLE.__str10107 | 0;
          HEAP32[$mode >> 2] = 29;
          var $ret_0_be = $ret_1_ph;
          var $next_0_be = $next_35;
          var $put_0_be = $put_0;
          var $have_0_be = $have_35;
          var $left_0_be = $left_0;
          var $hold_0_be = $hold_31;
          var $bits_0_be = $bits_31;
          var $out_0_be = $out_0;
          __label__ = 268;
          break $_$148;
         }
         var $copy_6127 = $copy_5;
         var $139 = $128;
         while (1) {
          var $139;
          var $copy_6127;
          var $dec1111 = $copy_6127 - 1 | 0;
          HEAP32[$40 >> 2] = $139 + 1 | 0;
          HEAP16[($41 + ($139 << 1) | 0) >> 1] = $len_0;
          if (($dec1111 | 0) == 0) {
           var $next_29 = $next_35;
           var $have_29 = $have_35;
           var $hold_25 = $hold_31;
           var $bits_25 = $bits_31;
           continue $_$167;
          }
          var $copy_6127 = $dec1111;
          var $139 = HEAP32[$40 >> 2];
         }
        }
       } else {
        if ((HEAP32[$mode >> 2] | 0) == 29) {
         var $ret_0_be = $ret_1_ph;
         var $next_0_be = $next_29;
         var $put_0_be = $put_0;
         var $have_0_be = $have_29;
         var $left_0_be = $left_0;
         var $hold_0_be = $hold_25;
         var $bits_0_be = $bits_25;
         var $out_0_be = $out_0;
         __label__ = 268;
         break $_$148;
        }
        if (HEAP16[$45 >> 1] << 16 >> 16 == 0) {
         HEAP32[$msg >> 2] = STRING_TABLE.__str11108 | 0;
         HEAP32[$mode >> 2] = 29;
         var $ret_0_be = $ret_1_ph;
         var $next_0_be = $next_29;
         var $put_0_be = $put_0;
         var $have_0_be = $have_29;
         var $left_0_be = $left_0;
         var $hold_0_be = $hold_25;
         var $bits_0_be = $bits_25;
         var $out_0_be = $out_0;
         __label__ = 268;
         break $_$148;
        }
        HEAP32[$43 >> 2] = $arraydecay860_c;
        HEAP32[$44 >> 2] = $arraydecay860_c;
        HEAP32[$26 >> 2] = 9;
        var $call1149 = _inflate_table(1, $arraydecay864, $129, $42, $26, $arraydecay867);
        if (!(($call1149 | 0) == 0)) {
         HEAP32[$msg >> 2] = STRING_TABLE.__str12109 | 0;
         HEAP32[$mode >> 2] = 29;
         var $ret_0_be = $call1149;
         var $next_0_be = $next_29;
         var $put_0_be = $put_0;
         var $have_0_be = $have_29;
         var $left_0_be = $left_0;
         var $hold_0_be = $hold_25;
         var $bits_0_be = $bits_25;
         var $out_0_be = $out_0;
         __label__ = 268;
         break $_$148;
        }
        HEAP32[$46 >> 2] = HEAP32[$42 >> 2];
        HEAP32[$47 >> 2] = 6;
        var $call1165 = _inflate_table(2, $arraydecay864 + (HEAP32[$37 >> 2] << 1) | 0, HEAP32[$38 >> 2], $42, $47, $arraydecay867);
        if (!(($call1165 | 0) == 0)) {
         HEAP32[$msg >> 2] = STRING_TABLE.__str13110 | 0;
         HEAP32[$mode >> 2] = 29;
         var $ret_0_be = $call1165;
         var $next_0_be = $next_29;
         var $put_0_be = $put_0;
         var $have_0_be = $have_29;
         var $left_0_be = $left_0;
         var $hold_0_be = $hold_25;
         var $bits_0_be = $bits_25;
         var $out_0_be = $out_0;
         __label__ = 268;
         break $_$148;
        }
        HEAP32[$mode >> 2] = 19;
        if ($cmp660) {
         var $ret_8 = 0;
         var $next_58 = $next_29;
         var $have_58 = $have_29;
         var $hold_54 = $hold_25;
         var $bits_54 = $bits_25;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $ret_2 = 0;
        var $next_37 = $next_29;
        var $have_37 = $have_29;
        var $hold_33 = $hold_25;
        var $bits_33 = $bits_25;
        __label__ = 205;
        break $_$148;
       }
      }
     }
    } while (0);
    do {
     if (__label__ == 60) {
      var $bits_5;
      var $hold_5;
      var $have_5;
      var $next_5;
      var $71 = HEAPU32[$17 >> 2];
      do {
       if (($71 & 1024 | 0) == 0) {
        var $76 = HEAP32[$18 >> 2];
        if (($76 | 0) == 0) {
         var $next_7 = $next_5;
         var $have_7 = $have_5;
         var $hold_7 = $hold_5;
         var $bits_7 = $bits_5;
         break;
        }
        HEAP32[($76 + 16 | 0) >> 2] = 0;
        var $next_7 = $next_5;
        var $have_7 = $have_5;
        var $hold_7 = $hold_5;
        var $bits_7 = $bits_5;
       } else {
        var $next_6 = $next_5;
        var $have_6 = $have_5;
        var $hold_6 = $hold_5;
        var $bits_6 = $bits_5;
        while (1) {
         var $bits_6;
         var $hold_6;
         var $have_6;
         var $next_6;
         if (!($bits_6 >>> 0 < 16)) {
          break;
         }
         if (($have_6 | 0) == 0) {
          var $ret_8 = $ret_0;
          var $next_58 = $next_6;
          var $have_58 = 0;
          var $hold_54 = $hold_6;
          var $bits_54 = $bits_6;
          var $out_4 = $out_0;
          break $_$12;
         }
         var $add279 = ((HEAPU8[$next_6] & 255) << $bits_6) + $hold_6 | 0;
         var $next_6 = $next_6 + 1 | 0;
         var $have_6 = $have_6 - 1 | 0;
         var $hold_6 = $add279;
         var $bits_6 = $bits_6 + 8 | 0;
        }
        HEAP32[$21 >> 2] = $hold_6;
        var $73 = HEAP32[$18 >> 2];
        if (($73 | 0) == 0) {
         var $74 = $71;
        } else {
         HEAP32[($73 + 20 | 0) >> 2] = $hold_6;
         var $74 = HEAP32[$17 >> 2];
        }
        var $74;
        if (($74 & 512 | 0) == 0) {
         var $next_7 = $next_6;
         var $have_7 = $have_6;
         var $hold_7 = 0;
         var $bits_7 = 0;
         break;
        }
        HEAP8[$arrayidx] = $hold_6 & 255;
        HEAP8[$arrayidx40] = $hold_6 >>> 8 & 255;
        HEAP32[$16 >> 2] = _crc32(HEAP32[$16 >> 2], $arrayidx, 2);
        var $next_7 = $next_6;
        var $have_7 = $have_6;
        var $hold_7 = 0;
        var $bits_7 = 0;
       }
      } while (0);
      var $bits_7;
      var $hold_7;
      var $have_7;
      var $next_7;
      HEAP32[$mode >> 2] = 5;
      var $next_8 = $next_7;
      var $have_8 = $have_7;
      var $hold_8 = $hold_7;
      var $bits_8 = $bits_7;
      __label__ = 71;
      break;
     } else if (__label__ == 124) {
      var $bits_17;
      var $hold_17;
      var $have_21;
      var $next_21;
      if ((HEAP32[$24 >> 2] | 0) == 0) {
       var $next_22 = $next_21;
       var $have_22 = $have_21;
       var $hold_18 = $hold_17;
       var $bits_18 = $bits_17;
       while (1) {
        var $bits_18;
        var $hold_18;
        var $have_22;
        var $next_22;
        if (!($bits_18 >>> 0 < 3)) {
         break;
        }
        if (($have_22 | 0) == 0) {
         var $ret_8 = $ret_0;
         var $next_58 = $next_22;
         var $have_58 = 0;
         var $hold_54 = $hold_18;
         var $bits_54 = $bits_18;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $add641 = ((HEAPU8[$next_22] & 255) << $bits_18) + $hold_18 | 0;
        var $next_22 = $next_22 + 1 | 0;
        var $have_22 = $have_22 - 1 | 0;
        var $hold_18 = $add641;
        var $bits_18 = $bits_18 + 8 | 0;
       }
       HEAP32[$24 >> 2] = $hold_18 & 1;
       var $and655 = $hold_18 >>> 1 & 3;
       do {
        if (($and655 | 0) == 0) {
         HEAP32[$mode >> 2] = 13;
        } else if (($and655 | 0) == 1) {
         _fixedtables($4);
         HEAP32[$mode >> 2] = 19;
         if (!$cmp660) {
          break;
         }
         var $ret_8 = $ret_0;
         var $next_58 = $next_22;
         var $have_58 = $have_22;
         var $hold_54 = $hold_18 >>> 3;
         var $bits_54 = $bits_18 - 3 | 0;
         var $out_4 = $out_0;
         break $_$12;
        } else if (($and655 | 0) == 2) {
         HEAP32[$mode >> 2] = 16;
        } else if (($and655 | 0) == 3) {
         HEAP32[$msg >> 2] = STRING_TABLE.__str6103 | 0;
         HEAP32[$mode >> 2] = 29;
        }
       } while (0);
       var $ret_0_be = $ret_0;
       var $next_0_be = $next_22;
       var $put_0_be = $put_0;
       var $have_0_be = $have_22;
       var $left_0_be = $left_0;
       var $hold_0_be = $hold_18 >>> 3;
       var $bits_0_be = $bits_18 - 3 | 0;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      var $and619 = $bits_17 & 7;
      HEAP32[$mode >> 2] = 26;
      var $ret_0_be = $ret_0;
      var $next_0_be = $next_21;
      var $put_0_be = $put_0;
      var $have_0_be = $have_21;
      var $left_0_be = $left_0;
      var $hold_0_be = $hold_17 >>> ($and619 >>> 0);
      var $bits_0_be = $bits_17 - $and619 | 0;
      var $out_0_be = $out_0;
      __label__ = 268;
      break;
     } else if (__label__ == 205) {
      var $bits_33;
      var $hold_33;
      var $have_37;
      var $next_37;
      var $ret_2;
      HEAP32[$mode >> 2] = 20;
      var $ret_3 = $ret_2;
      var $next_38 = $next_37;
      var $have_38 = $have_37;
      var $hold_34 = $hold_33;
      var $bits_34 = $bits_33;
      __label__ = 206;
      break;
     }
    } while (0);
    do {
     if (__label__ == 71) {
      var $bits_8;
      var $hold_8;
      var $have_8;
      var $next_8;
      var $77 = HEAPU32[$17 >> 2];
      if (($77 & 1024 | 0) == 0) {
       var $next_10 = $next_8;
       var $have_10 = $have_8;
       var $88 = $77;
      } else {
       var $78 = HEAPU32[$21 >> 2];
       var $copy_0 = $78 >>> 0 > $have_8 >>> 0 ? $have_8 : $78;
       if (($copy_0 | 0) == 0) {
        var $next_9 = $next_8;
        var $have_9 = $have_8;
        var $87 = $78;
        var $86 = $77;
       } else {
        var $79 = HEAPU32[$18 >> 2];
        do {
         if (($79 | 0) == 0) {
          var $83 = $77;
         } else {
          var $80 = HEAP32[($79 + 16 | 0) >> 2];
          if (($80 | 0) == 0) {
           var $83 = $77;
           break;
          }
          var $sub341 = HEAP32[($79 + 20 | 0) >> 2] - $78 | 0;
          var $82 = HEAPU32[($79 + 24 | 0) >> 2];
          _memcpy($80 + $sub341 | 0, $next_8, ($sub341 + $copy_0 | 0) >>> 0 > $82 >>> 0 ? $82 - $sub341 | 0 : $copy_0, 1);
          var $83 = HEAP32[$17 >> 2];
         }
        } while (0);
        var $83;
        if (!(($83 & 512 | 0) == 0)) {
         HEAP32[$16 >> 2] = _crc32(HEAP32[$16 >> 2], $next_8, $copy_0);
        }
        var $sub364 = HEAP32[$21 >> 2] - $copy_0 | 0;
        HEAP32[$21 >> 2] = $sub364;
        var $next_9 = $next_8 + $copy_0 | 0;
        var $have_9 = $have_8 - $copy_0 | 0;
        var $87 = $sub364;
        var $86 = $83;
       }
       var $86;
       var $87;
       var $have_9;
       var $next_9;
       if (!(($87 | 0) == 0)) {
        var $ret_8 = $ret_0;
        var $next_58 = $next_9;
        var $have_58 = $have_9;
        var $hold_54 = $hold_8;
        var $bits_54 = $bits_8;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $next_10 = $next_9;
       var $have_10 = $have_9;
       var $88 = $86;
      }
      var $88;
      var $have_10;
      var $next_10;
      HEAP32[$21 >> 2] = 0;
      HEAP32[$mode >> 2] = 6;
      var $next_11 = $next_10;
      var $have_11 = $have_10;
      var $hold_9 = $hold_8;
      var $bits_9 = $bits_8;
      var $89 = $88;
      __label__ = 81;
      break;
     } else if (__label__ == 206) {
      var $bits_34;
      var $hold_34;
      var $have_38;
      var $next_38;
      var $ret_3;
      if ($have_38 >>> 0 > 5 & $left_0 >>> 0 > 257) {
       HEAP32[$next_out >> 2] = $put_0;
       HEAP32[$avail_out >> 2] = $left_0;
       HEAP32[$next_in >> 2] = $next_38;
       HEAP32[$avail_in15 >> 2] = $have_38;
       HEAP32[$11 >> 2] = $hold_34;
       HEAP32[$13 >> 2] = $bits_34;
       _inflate_fast($strm, $out_0);
       var $144 = HEAP32[$next_out >> 2];
       var $145 = HEAP32[$avail_out >> 2];
       var $146 = HEAP32[$next_in >> 2];
       var $147 = HEAP32[$avail_in15 >> 2];
       var $148 = HEAP32[$11 >> 2];
       var $149 = HEAP32[$13 >> 2];
       if (!((HEAP32[$mode >> 2] | 0) == 11)) {
        var $ret_0_be = $ret_3;
        var $next_0_be = $146;
        var $put_0_be = $144;
        var $have_0_be = $147;
        var $left_0_be = $145;
        var $hold_0_be = $148;
        var $bits_0_be = $149;
        var $out_0_be = $out_0;
        __label__ = 268;
        break;
       }
       HEAP32[$25 >> 2] = -1;
       var $ret_0_be = $ret_3;
       var $next_0_be = $146;
       var $put_0_be = $144;
       var $have_0_be = $147;
       var $left_0_be = $145;
       var $hold_0_be = $148;
       var $bits_0_be = $149;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      HEAP32[$25 >> 2] = 0;
      var $sub1213 = (1 << HEAP32[$26 >> 2]) - 1 | 0;
      var $152 = HEAPU32[$27 >> 2];
      var $next_39 = $next_38;
      var $have_39 = $have_38;
      var $hold_35 = $hold_34;
      var $bits_35 = $bits_34;
      while (1) {
       var $bits_35;
       var $hold_35;
       var $have_39;
       var $next_39;
       var $and1214 = $sub1213 & $hold_35;
       var $tmp22 = HEAPU8[$152 + ($and1214 << 2) + 1 | 0];
       var $conv1218 = $tmp22 & 255;
       if (!($conv1218 >>> 0 > $bits_35 >>> 0)) {
        break;
       }
       if (($have_39 | 0) == 0) {
        var $ret_8 = $ret_3;
        var $next_58 = $next_39;
        var $have_58 = 0;
        var $hold_54 = $hold_35;
        var $bits_54 = $bits_35;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $add1232 = ((HEAPU8[$next_39] & 255) << $bits_35) + $hold_35 | 0;
       var $next_39 = $next_39 + 1 | 0;
       var $have_39 = $have_39 - 1 | 0;
       var $hold_35 = $add1232;
       var $bits_35 = $bits_35 + 8 | 0;
      }
      var $tmp21 = HEAPU8[$152 + ($and1214 << 2) | 0];
      var $tmp23 = HEAPU16[($152 + ($and1214 << 2) + 2 | 0) >> 1];
      var $conv1237 = $tmp21 & 255;
      do {
       if ($tmp21 << 24 >> 24 == 0) {
        var $next_41 = $next_39;
        var $have_41 = $have_39;
        var $hold_37 = $hold_35;
        var $bits_37 = $bits_35;
        var $here_09_0 = 0;
        var $here_110_0 = $tmp22;
        var $here_211_0 = $tmp23;
        var $155 = 0;
       } else {
        if (!(($conv1237 & 240 | 0) == 0)) {
         var $next_41 = $next_39;
         var $have_41 = $have_39;
         var $hold_37 = $hold_35;
         var $bits_37 = $bits_35;
         var $here_09_0 = $tmp21;
         var $here_110_0 = $tmp22;
         var $here_211_0 = $tmp23;
         var $155 = 0;
         break;
        }
        var $conv1248 = $tmp23 & 65535;
        var $sub1255 = (1 << ($conv1218 + $conv1237 | 0)) - 1 | 0;
        var $next_40 = $next_39;
        var $have_40 = $have_39;
        var $hold_36 = $hold_35;
        var $bits_36 = $bits_35;
        while (1) {
         var $bits_36;
         var $hold_36;
         var $have_40;
         var $next_40;
         var $add1260 = (($hold_36 & $sub1255) >>> ($conv1218 >>> 0)) + $conv1248 | 0;
         var $tmp19 = HEAPU8[$152 + ($add1260 << 2) + 1 | 0];
         if (!((($tmp19 & 255) + $conv1218 | 0) >>> 0 > $bits_36 >>> 0)) {
          break;
         }
         if (($have_40 | 0) == 0) {
          var $ret_8 = $ret_3;
          var $next_58 = $next_40;
          var $have_58 = 0;
          var $hold_54 = $hold_36;
          var $bits_54 = $bits_36;
          var $out_4 = $out_0;
          break $_$12;
         }
         var $add1281 = ((HEAPU8[$next_40] & 255) << $bits_36) + $hold_36 | 0;
         var $next_40 = $next_40 + 1 | 0;
         var $have_40 = $have_40 - 1 | 0;
         var $hold_36 = $add1281;
         var $bits_36 = $bits_36 + 8 | 0;
        }
        var $tmp20 = HEAP16[($152 + ($add1260 << 2) + 2 | 0) >> 1];
        var $tmp18 = HEAP8[$152 + ($add1260 << 2) | 0];
        HEAP32[$25 >> 2] = $conv1218;
        var $next_41 = $next_40;
        var $have_41 = $have_40;
        var $hold_37 = $hold_36 >>> ($conv1218 >>> 0);
        var $bits_37 = $bits_36 - $conv1218 | 0;
        var $here_09_0 = $tmp18;
        var $here_110_0 = $tmp19;
        var $here_211_0 = $tmp20;
        var $155 = $conv1218;
       }
      } while (0);
      var $155;
      var $here_211_0;
      var $here_110_0;
      var $here_09_0;
      var $bits_37;
      var $hold_37;
      var $have_41;
      var $next_41;
      var $conv1302 = $here_110_0 & 255;
      var $shr1303 = $hold_37 >>> ($conv1302 >>> 0);
      var $sub1306 = $bits_37 - $conv1302 | 0;
      HEAP32[$25 >> 2] = $155 + $conv1302 | 0;
      HEAP32[$21 >> 2] = $here_211_0 & 65535;
      var $conv1317 = $here_09_0 & 255;
      if ($here_09_0 << 24 >> 24 == 0) {
       HEAP32[$mode >> 2] = 25;
       var $ret_0_be = $ret_3;
       var $next_0_be = $next_41;
       var $put_0_be = $put_0;
       var $have_0_be = $have_41;
       var $left_0_be = $left_0;
       var $hold_0_be = $shr1303;
       var $bits_0_be = $sub1306;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      if (!(($conv1317 & 32 | 0) == 0)) {
       HEAP32[$25 >> 2] = -1;
       HEAP32[$mode >> 2] = 11;
       var $ret_0_be = $ret_3;
       var $next_0_be = $next_41;
       var $put_0_be = $put_0;
       var $have_0_be = $have_41;
       var $left_0_be = $left_0;
       var $hold_0_be = $shr1303;
       var $bits_0_be = $sub1306;
       var $out_0_be = $out_0;
       __label__ = 268;
       break;
      }
      if (($conv1317 & 64 | 0) == 0) {
       var $and1341 = $conv1317 & 15;
       HEAP32[$28 >> 2] = $and1341;
       HEAP32[$mode >> 2] = 21;
       var $ret_4 = $ret_3;
       var $next_42 = $next_41;
       var $have_42 = $have_41;
       var $hold_38 = $shr1303;
       var $bits_38 = $sub1306;
       var $156 = $and1341;
       __label__ = 227;
       break;
      }
      HEAP32[$msg >> 2] = STRING_TABLE.__str2171 | 0;
      HEAP32[$mode >> 2] = 29;
      var $ret_0_be = $ret_3;
      var $next_0_be = $next_41;
      var $put_0_be = $put_0;
      var $have_0_be = $have_41;
      var $left_0_be = $left_0;
      var $hold_0_be = $shr1303;
      var $bits_0_be = $sub1306;
      var $out_0_be = $out_0;
      __label__ = 268;
      break;
     }
    } while (0);
    do {
     if (__label__ == 81) {
      var $89;
      var $bits_9;
      var $hold_9;
      var $have_11;
      var $next_11;
      do {
       if (($89 & 2048 | 0) == 0) {
        var $98 = HEAP32[$18 >> 2];
        if (($98 | 0) == 0) {
         var $next_12 = $next_11;
         var $have_12 = $have_11;
         break;
        }
        HEAP32[($98 + 28 | 0) >> 2] = 0;
        var $next_12 = $next_11;
        var $have_12 = $have_11;
       } else {
        if (($have_11 | 0) == 0) {
         var $ret_8 = $ret_0;
         var $next_58 = $next_11;
         var $have_58 = 0;
         var $hold_54 = $hold_9;
         var $bits_54 = $bits_9;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $copy_1 = 0;
        while (1) {
         var $copy_1;
         var $inc = $copy_1 + 1 | 0;
         var $90 = HEAP8[$next_11 + $copy_1 | 0];
         var $91 = HEAP32[$18 >> 2];
         do {
          if (!(($91 | 0) == 0)) {
           var $name = $91 + 28 | 0;
           if ((HEAP32[$name >> 2] | 0) == 0) {
            break;
           }
           var $93 = HEAPU32[$21 >> 2];
           if (!($93 >>> 0 < HEAPU32[($91 + 32 | 0) >> 2] >>> 0)) {
            break;
           }
           HEAP32[$21 >> 2] = $93 + 1 | 0;
           HEAP8[HEAP32[$name >> 2] + $93 | 0] = $90;
          }
         } while (0);
         var $tobool405 = $90 << 24 >> 24 != 0;
         if (!($tobool405 & $inc >>> 0 < $have_11 >>> 0)) {
          break;
         }
         var $copy_1 = $inc;
        }
        if (!((HEAP32[$17 >> 2] & 512 | 0) == 0)) {
         HEAP32[$16 >> 2] = _crc32(HEAP32[$16 >> 2], $next_11, $inc);
        }
        var $sub417 = $have_11 - $inc | 0;
        var $add_ptr418 = $next_11 + $inc | 0;
        if ($tobool405) {
         var $ret_8 = $ret_0;
         var $next_58 = $add_ptr418;
         var $have_58 = $sub417;
         var $hold_54 = $hold_9;
         var $bits_54 = $bits_9;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $next_12 = $add_ptr418;
        var $have_12 = $sub417;
       }
      } while (0);
      var $have_12;
      var $next_12;
      HEAP32[$21 >> 2] = 0;
      HEAP32[$mode >> 2] = 7;
      var $next_13 = $next_12;
      var $have_13 = $have_12;
      var $hold_10 = $hold_9;
      var $bits_10 = $bits_9;
      __label__ = 94;
      break;
     } else if (__label__ == 227) {
      var $156;
      var $bits_38;
      var $hold_38;
      var $have_42;
      var $next_42;
      var $ret_4;
      if (($156 | 0) == 0) {
       var $next_44 = $next_42;
       var $have_44 = $have_42;
       var $hold_40 = $hold_38;
       var $bits_40 = $bits_38;
       var $160 = HEAP32[$21 >> 2];
      } else {
       var $next_43 = $next_42;
       var $have_43 = $have_42;
       var $hold_39 = $hold_38;
       var $bits_39 = $bits_38;
       while (1) {
        var $bits_39;
        var $hold_39;
        var $have_43;
        var $next_43;
        if (!($bits_39 >>> 0 < $156 >>> 0)) {
         break;
        }
        if (($have_43 | 0) == 0) {
         var $ret_8 = $ret_4;
         var $next_58 = $next_43;
         var $have_58 = 0;
         var $hold_54 = $hold_39;
         var $bits_54 = $bits_39;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $add1363 = ((HEAPU8[$next_43] & 255) << $bits_39) + $hold_39 | 0;
        var $next_43 = $next_43 + 1 | 0;
        var $have_43 = $have_43 - 1 | 0;
        var $hold_39 = $add1363;
        var $bits_39 = $bits_39 + 8 | 0;
       }
       var $add1375 = HEAP32[$21 >> 2] + (((1 << $156) - 1 | 0) & $hold_39) | 0;
       HEAP32[$21 >> 2] = $add1375;
       HEAP32[$25 >> 2] = HEAP32[$25 >> 2] + $156 | 0;
       var $next_44 = $next_43;
       var $have_44 = $have_43;
       var $hold_40 = $hold_39 >>> ($156 >>> 0);
       var $bits_40 = $bits_39 - $156 | 0;
       var $160 = $add1375;
      }
      var $160;
      var $bits_40;
      var $hold_40;
      var $have_44;
      var $next_44;
      HEAP32[$29 >> 2] = $160;
      HEAP32[$mode >> 2] = 22;
      var $ret_5_ph = $ret_4;
      var $next_45_ph = $next_44;
      var $have_45_ph = $have_44;
      var $hold_41_ph = $hold_40;
      var $bits_41_ph = $bits_40;
      __label__ = 234;
      break;
     }
    } while (0);
    do {
     if (__label__ == 94) {
      var $bits_10;
      var $hold_10;
      var $have_13;
      var $next_13;
      do {
       if ((HEAP32[$17 >> 2] & 4096 | 0) == 0) {
        var $108 = HEAP32[$18 >> 2];
        if (($108 | 0) == 0) {
         var $next_14 = $next_13;
         var $have_14 = $have_13;
         break;
        }
        HEAP32[($108 + 36 | 0) >> 2] = 0;
        var $next_14 = $next_13;
        var $have_14 = $have_13;
       } else {
        if (($have_13 | 0) == 0) {
         var $ret_8 = $ret_0;
         var $next_58 = $next_13;
         var $have_58 = 0;
         var $hold_54 = $hold_10;
         var $bits_54 = $bits_10;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $copy_2 = 0;
        while (1) {
         var $copy_2;
         var $inc443 = $copy_2 + 1 | 0;
         var $100 = HEAP8[$next_13 + $copy_2 | 0];
         var $101 = HEAP32[$18 >> 2];
         do {
          if (!(($101 | 0) == 0)) {
           var $comment = $101 + 36 | 0;
           if ((HEAP32[$comment >> 2] | 0) == 0) {
            break;
           }
           var $103 = HEAPU32[$21 >> 2];
           if (!($103 >>> 0 < HEAPU32[($101 + 40 | 0) >> 2] >>> 0)) {
            break;
           }
           HEAP32[$21 >> 2] = $103 + 1 | 0;
           HEAP8[HEAP32[$comment >> 2] + $103 | 0] = $100;
          }
         } while (0);
         var $tobool467 = $100 << 24 >> 24 != 0;
         if (!($tobool467 & $inc443 >>> 0 < $have_13 >>> 0)) {
          break;
         }
         var $copy_2 = $inc443;
        }
        if (!((HEAP32[$17 >> 2] & 512 | 0) == 0)) {
         HEAP32[$16 >> 2] = _crc32(HEAP32[$16 >> 2], $next_13, $inc443);
        }
        var $sub481 = $have_13 - $inc443 | 0;
        var $add_ptr482 = $next_13 + $inc443 | 0;
        if ($tobool467) {
         var $ret_8 = $ret_0;
         var $next_58 = $add_ptr482;
         var $have_58 = $sub481;
         var $hold_54 = $hold_10;
         var $bits_54 = $bits_10;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $next_14 = $add_ptr482;
        var $have_14 = $sub481;
       }
      } while (0);
      var $have_14;
      var $next_14;
      HEAP32[$mode >> 2] = 8;
      var $next_15 = $next_14;
      var $have_15 = $have_14;
      var $hold_11 = $hold_10;
      var $bits_11 = $bits_10;
      __label__ = 107;
      break;
     } else if (__label__ == 234) {
      var $bits_41_ph;
      var $hold_41_ph;
      var $have_45_ph;
      var $next_45_ph;
      var $ret_5_ph;
      var $sub1393 = (1 << HEAP32[$47 >> 2]) - 1 | 0;
      var $162 = HEAPU32[$48 >> 2];
      var $next_45 = $next_45_ph;
      var $have_45 = $have_45_ph;
      var $hold_41 = $hold_41_ph;
      var $bits_41 = $bits_41_ph;
      while (1) {
       var $bits_41;
       var $hold_41;
       var $have_45;
       var $next_45;
       var $and1394 = $sub1393 & $hold_41;
       var $tmp16 = HEAPU8[$162 + ($and1394 << 2) + 1 | 0];
       var $conv1398 = $tmp16 & 255;
       if (!($conv1398 >>> 0 > $bits_41 >>> 0)) {
        break;
       }
       if (($have_45 | 0) == 0) {
        var $ret_8 = $ret_5_ph;
        var $next_58 = $next_45;
        var $have_58 = 0;
        var $hold_54 = $hold_41;
        var $bits_54 = $bits_41;
        var $out_4 = $out_0;
        break $_$12;
       }
       var $add1412 = ((HEAPU8[$next_45] & 255) << $bits_41) + $hold_41 | 0;
       var $next_45 = $next_45 + 1 | 0;
       var $have_45 = $have_45 - 1 | 0;
       var $hold_41 = $add1412;
       var $bits_41 = $bits_41 + 8 | 0;
      }
      var $tmp15 = HEAPU8[$162 + ($and1394 << 2) | 0];
      var $tmp17 = HEAPU16[($162 + ($and1394 << 2) + 2 | 0) >> 1];
      var $conv1418 = $tmp15 & 255;
      if (($conv1418 & 240 | 0) == 0) {
       var $conv1425 = $tmp17 & 65535;
       var $sub1432 = (1 << ($conv1398 + $conv1418 | 0)) - 1 | 0;
       var $next_46 = $next_45;
       var $have_46 = $have_45;
       var $hold_42 = $hold_41;
       var $bits_42 = $bits_41;
       while (1) {
        var $bits_42;
        var $hold_42;
        var $have_46;
        var $next_46;
        var $add1437 = (($hold_42 & $sub1432) >>> ($conv1398 >>> 0)) + $conv1425 | 0;
        var $tmp13 = HEAPU8[$162 + ($add1437 << 2) + 1 | 0];
        if (!((($tmp13 & 255) + $conv1398 | 0) >>> 0 > $bits_42 >>> 0)) {
         break;
        }
        if (($have_46 | 0) == 0) {
         var $ret_8 = $ret_5_ph;
         var $next_58 = $next_46;
         var $have_58 = 0;
         var $hold_54 = $hold_42;
         var $bits_54 = $bits_42;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $add1458 = ((HEAPU8[$next_46] & 255) << $bits_42) + $hold_42 | 0;
        var $next_46 = $next_46 + 1 | 0;
        var $have_46 = $have_46 - 1 | 0;
        var $hold_42 = $add1458;
        var $bits_42 = $bits_42 + 8 | 0;
       }
       var $tmp14 = HEAP16[($162 + ($add1437 << 2) + 2 | 0) >> 1];
       var $tmp12 = HEAP8[$162 + ($add1437 << 2) | 0];
       var $add1475 = HEAP32[$25 >> 2] + $conv1398 | 0;
       HEAP32[$25 >> 2] = $add1475;
       var $next_47 = $next_46;
       var $have_47 = $have_46;
       var $hold_43 = $hold_42 >>> ($conv1398 >>> 0);
       var $bits_43 = $bits_42 - $conv1398 | 0;
       var $here_09_1 = $tmp12;
       var $here_110_1 = $tmp13;
       var $here_211_1 = $tmp14;
       var $166 = $add1475;
      } else {
       var $next_47 = $next_45;
       var $have_47 = $have_45;
       var $hold_43 = $hold_41;
       var $bits_43 = $bits_41;
       var $here_09_1 = $tmp15;
       var $here_110_1 = $tmp16;
       var $here_211_1 = $tmp17;
       var $166 = HEAP32[$25 >> 2];
      }
      var $166;
      var $here_211_1;
      var $here_110_1;
      var $here_09_1;
      var $bits_43;
      var $hold_43;
      var $have_47;
      var $next_47;
      var $conv1479 = $here_110_1 & 255;
      var $shr1480 = $hold_43 >>> ($conv1479 >>> 0);
      var $sub1483 = $bits_43 - $conv1479 | 0;
      HEAP32[$25 >> 2] = $166 + $conv1479 | 0;
      var $conv1491 = $here_09_1 & 255;
      if (($conv1491 & 64 | 0) == 0) {
       HEAP32[$30 >> 2] = $here_211_1 & 65535;
       var $and1502 = $conv1491 & 15;
       HEAP32[$28 >> 2] = $and1502;
       HEAP32[$mode >> 2] = 23;
       var $ret_6 = $ret_5_ph;
       var $next_48 = $next_47;
       var $have_48 = $have_47;
       var $hold_44 = $shr1480;
       var $bits_44 = $sub1483;
       var $167 = $and1502;
       __label__ = 248;
       break;
      }
      HEAP32[$msg >> 2] = STRING_TABLE.__str1170 | 0;
      HEAP32[$mode >> 2] = 29;
      var $ret_0_be = $ret_5_ph;
      var $next_0_be = $next_47;
      var $put_0_be = $put_0;
      var $have_0_be = $have_47;
      var $left_0_be = $left_0;
      var $hold_0_be = $shr1480;
      var $bits_0_be = $sub1483;
      var $out_0_be = $out_0;
      __label__ = 268;
      break;
     }
    } while (0);
    $_$359 : do {
     if (__label__ == 107) {
      var $bits_11;
      var $hold_11;
      var $have_15;
      var $next_15;
      var $109 = HEAPU32[$17 >> 2];
      do {
       if (!(($109 & 512 | 0) == 0)) {
        var $next_16 = $next_15;
        var $have_16 = $have_15;
        var $hold_12 = $hold_11;
        var $bits_12 = $bits_11;
        while (1) {
         var $bits_12;
         var $hold_12;
         var $have_16;
         var $next_16;
         if (!($bits_12 >>> 0 < 16)) {
          break;
         }
         if (($have_16 | 0) == 0) {
          var $ret_8 = $ret_0;
          var $next_58 = $next_16;
          var $have_58 = 0;
          var $hold_54 = $hold_12;
          var $bits_54 = $bits_12;
          var $out_4 = $out_0;
          break $_$12;
         }
         var $add515 = ((HEAPU8[$next_16] & 255) << $bits_12) + $hold_12 | 0;
         var $next_16 = $next_16 + 1 | 0;
         var $have_16 = $have_16 - 1 | 0;
         var $hold_12 = $add515;
         var $bits_12 = $bits_12 + 8 | 0;
        }
        if (($hold_12 | 0) == (HEAP32[$16 >> 2] & 65535 | 0)) {
         var $next_17 = $next_16;
         var $have_17 = $have_16;
         var $hold_13 = 0;
         var $bits_13 = 0;
         break;
        }
        HEAP32[$msg >> 2] = STRING_TABLE.__str5102 | 0;
        HEAP32[$mode >> 2] = 29;
        var $ret_0_be = $ret_0;
        var $next_0_be = $next_16;
        var $put_0_be = $put_0;
        var $have_0_be = $have_16;
        var $left_0_be = $left_0;
        var $hold_0_be = $hold_12;
        var $bits_0_be = $bits_12;
        var $out_0_be = $out_0;
        __label__ = 268;
        break $_$359;
       }
       var $next_17 = $next_15;
       var $have_17 = $have_15;
       var $hold_13 = $hold_11;
       var $bits_13 = $bits_11;
      } while (0);
      var $bits_13;
      var $hold_13;
      var $have_17;
      var $next_17;
      var $112 = HEAPU32[$18 >> 2];
      if (!(($112 | 0) == 0)) {
       HEAP32[($112 + 44 | 0) >> 2] = $109 >>> 9 & 1;
       HEAP32[(HEAP32[$18 >> 2] + 48 | 0) >> 2] = 1;
      }
      var $call545 = _crc32(0, 0, 0);
      HEAP32[$16 >> 2] = $call545;
      HEAP32[$adler >> 2] = $call545;
      HEAP32[$mode >> 2] = 11;
      var $ret_0_be = $ret_0;
      var $next_0_be = $next_17;
      var $put_0_be = $put_0;
      var $have_0_be = $have_17;
      var $left_0_be = $left_0;
      var $hold_0_be = $hold_13;
      var $bits_0_be = $bits_13;
      var $out_0_be = $out_0;
      __label__ = 268;
      break;
     } else if (__label__ == 248) {
      var $167;
      var $bits_44;
      var $hold_44;
      var $have_48;
      var $next_48;
      var $ret_6;
      if (($167 | 0) == 0) {
       var $next_50 = $next_48;
       var $have_50 = $have_48;
       var $hold_46 = $hold_44;
       var $bits_46 = $bits_44;
      } else {
       var $next_49 = $next_48;
       var $have_49 = $have_48;
       var $hold_45 = $hold_44;
       var $bits_45 = $bits_44;
       while (1) {
        var $bits_45;
        var $hold_45;
        var $have_49;
        var $next_49;
        if (!($bits_45 >>> 0 < $167 >>> 0)) {
         break;
        }
        if (($have_49 | 0) == 0) {
         var $ret_8 = $ret_6;
         var $next_58 = $next_49;
         var $have_58 = 0;
         var $hold_54 = $hold_45;
         var $bits_54 = $bits_45;
         var $out_4 = $out_0;
         break $_$12;
        }
        var $add1524 = ((HEAPU8[$next_49] & 255) << $bits_45) + $hold_45 | 0;
        var $next_49 = $next_49 + 1 | 0;
        var $have_49 = $have_49 - 1 | 0;
        var $hold_45 = $add1524;
        var $bits_45 = $bits_45 + 8 | 0;
       }
       HEAP32[$30 >> 2] = HEAP32[$30 >> 2] + (((1 << $167) - 1 | 0) & $hold_45) | 0;
       HEAP32[$25 >> 2] = HEAP32[$25 >> 2] + $167 | 0;
       var $next_50 = $next_49;
       var $have_50 = $have_49;
       var $hold_46 = $hold_45 >>> ($167 >>> 0);
       var $bits_46 = $bits_45 - $167 | 0;
      }
      var $bits_46;
      var $hold_46;
      var $have_50;
      var $next_50;
      HEAP32[$mode >> 2] = 24;
      var $ret_7 = $ret_6;
      var $next_51 = $next_50;
      var $have_51 = $have_50;
      var $hold_47 = $hold_46;
      var $bits_47 = $bits_46;
      __label__ = 254;
      break;
     }
    } while (0);
    $_$380 : do {
     if (__label__ == 254) {
      var $bits_47;
      var $hold_47;
      var $have_51;
      var $next_51;
      var $ret_7;
      if (($left_0 | 0) == 0) {
       var $ret_8 = $ret_7;
       var $next_58 = $next_51;
       var $have_58 = $have_51;
       var $hold_54 = $hold_47;
       var $bits_54 = $bits_47;
       var $out_4 = $out_0;
       break $_$12;
      }
      var $sub1554 = $out_0 - $left_0 | 0;
      var $171 = HEAPU32[$30 >> 2];
      do {
       if ($171 >>> 0 > $sub1554 >>> 0) {
        var $sub1560 = $171 - $sub1554 | 0;
        do {
         if ($sub1560 >>> 0 > HEAPU32[$31 >> 2] >>> 0) {
          if ((HEAP32[$32 >> 2] | 0) == 0) {
           break;
          }
          HEAP32[$msg >> 2] = STRING_TABLE.__str169 | 0;
          HEAP32[$mode >> 2] = 29;
          var $ret_0_be = $ret_7;
          var $next_0_be = $next_51;
          var $put_0_be = $put_0;
          var $have_0_be = $have_51;
          var $left_0_be = $left_0;
          var $hold_0_be = $hold_47;
          var $bits_0_be = $bits_47;
          var $out_0_be = $out_0;
          break $_$380;
         }
        } while (0);
        var $174 = HEAPU32[$33 >> 2];
        if ($sub1560 >>> 0 > $174 >>> 0) {
         var $sub1574 = $sub1560 - $174 | 0;
         var $from_0 = HEAP32[$34 >> 2] + (HEAP32[$35 >> 2] - $sub1574 | 0) | 0;
         var $copy_7 = $sub1574;
        } else {
         var $from_0 = HEAP32[$34 >> 2] + ($174 - $sub1560 | 0) | 0;
         var $copy_7 = $sub1560;
        }
        var $copy_7;
        var $from_0;
        var $178 = HEAPU32[$21 >> 2];
        if (!($copy_7 >>> 0 > $178 >>> 0)) {
         var $from_1 = $from_0;
         var $copy_8 = $copy_7;
         var $180 = $178;
         break;
        }
        var $from_1 = $from_0;
        var $copy_8 = $178;
        var $180 = $178;
       } else {
        var $179 = HEAP32[$21 >> 2];
        var $from_1 = $put_0 + (-$171 | 0) | 0;
        var $copy_8 = $179;
        var $180 = $179;
       }
      } while (0);
      var $180;
      var $copy_8;
      var $from_1;
      var $copy_9 = $copy_8 >>> 0 > $left_0 >>> 0 ? $left_0 : $copy_8;
      HEAP32[$21 >> 2] = $180 - $copy_9 | 0;
      var $181 = $copy_8 ^ -1;
      var $182 = $left_0 ^ -1;
      var $umax = $181 >>> 0 > $182 >>> 0 ? $181 : $182;
      var $from_2 = $from_1;
      var $put_1 = $put_0;
      var $copy_10 = $copy_9;
      while (1) {
       var $copy_10;
       var $put_1;
       var $from_2;
       HEAP8[$put_1] = HEAP8[$from_2];
       var $dec1605 = $copy_10 - 1 | 0;
       if (($dec1605 | 0) == 0) {
        break;
       }
       var $from_2 = $from_2 + 1 | 0;
       var $put_1 = $put_1 + 1 | 0;
       var $copy_10 = $dec1605;
      }
      var $sub1598 = $left_0 - $copy_9 | 0;
      var $scevgep632 = $put_0 + ($umax ^ -1) | 0;
      if (!((HEAP32[$21 >> 2] | 0) == 0)) {
       var $ret_0_be = $ret_7;
       var $next_0_be = $next_51;
       var $put_0_be = $scevgep632;
       var $have_0_be = $have_51;
       var $left_0_be = $sub1598;
       var $hold_0_be = $hold_47;
       var $bits_0_be = $bits_47;
       var $out_0_be = $out_0;
       break;
      }
      HEAP32[$mode >> 2] = 20;
      var $ret_0_be = $ret_7;
      var $next_0_be = $next_51;
      var $put_0_be = $scevgep632;
      var $have_0_be = $have_51;
      var $left_0_be = $sub1598;
      var $hold_0_be = $hold_47;
      var $bits_0_be = $bits_47;
      var $out_0_be = $out_0;
     }
    } while (0);
    var $out_0_be;
    var $bits_0_be;
    var $hold_0_be;
    var $left_0_be;
    var $have_0_be;
    var $put_0_be;
    var $next_0_be;
    var $ret_0_be;
    var $ret_0 = $ret_0_be;
    var $next_0 = $next_0_be;
    var $put_0 = $put_0_be;
    var $have_0 = $have_0_be;
    var $left_0 = $left_0_be;
    var $hold_0 = $hold_0_be;
    var $bits_0 = $bits_0_be;
    var $out_0 = $out_0_be;
    var $49 = HEAP32[$mode >> 2];
   }
   var $out_4;
   var $bits_54;
   var $hold_54;
   var $have_58;
   var $next_58;
   var $ret_8;
   HEAP32[$next_out >> 2] = $put_0;
   HEAP32[$avail_out >> 2] = $left_0;
   HEAP32[$next_in >> 2] = $next_58;
   HEAP32[$avail_in15 >> 2] = $have_58;
   HEAP32[$11 >> 2] = $hold_54;
   HEAP32[$13 >> 2] = $bits_54;
   do {
    if ((HEAP32[$35 >> 2] | 0) == 0) {
     if (!(HEAPU32[$mode >> 2] >>> 0 < 26)) {
      __label__ = 300;
      break;
     }
     if (($out_4 | 0) == (HEAP32[$avail_out >> 2] | 0)) {
      __label__ = 300;
      break;
     }
     __label__ = 298;
     break;
    } else {
     __label__ = 298;
    }
   } while (0);
   do {
    if (__label__ == 298) {
     if ((_updatewindow($strm, $out_4) | 0) == 0) {
      break;
     }
     HEAP32[$mode >> 2] = 30;
     var $retval_0 = -4;
     break $_$2;
    }
   } while (0);
   var $202 = HEAPU32[$avail_in15 >> 2];
   var $203 = HEAPU32[$avail_out >> 2];
   var $sub1774 = $out_4 - $203 | 0;
   var $total_in = $strm + 8 | 0;
   HEAP32[$total_in >> 2] = ($10 - $202 | 0) + HEAP32[$total_in >> 2] | 0;
   HEAP32[$total_out >> 2] = HEAP32[$total_out >> 2] + $sub1774 | 0;
   HEAP32[$36 >> 2] = HEAP32[$36 >> 2] + $sub1774 | 0;
   var $tobool1783 = ($out_4 | 0) == ($203 | 0);
   if (!((HEAP32[$15 >> 2] | 0) == 0 | $tobool1783)) {
    var $209 = HEAP32[$16 >> 2];
    var $add_ptr1791 = HEAP32[$next_out >> 2] + (-$sub1774 | 0) | 0;
    if ((HEAP32[$17 >> 2] | 0) == 0) {
     var $cond1800 = _adler32($209, $add_ptr1791, $sub1774);
    } else {
     var $cond1800 = _crc32($209, $add_ptr1791, $sub1774);
    }
    var $cond1800;
    HEAP32[$16 >> 2] = $cond1800;
    HEAP32[$adler >> 2] = $cond1800;
   }
   var $213 = HEAP32[$mode >> 2];
   if (($213 | 0) == 19) {
    var $214 = 256;
   } else {
    var $214 = ($213 | 0) == 14 ? 256 : 0;
   }
   var $214;
   HEAP32[($strm + 44 | 0) >> 2] = ((((HEAP32[$24 >> 2] | 0) != 0 ? 64 : 0) + HEAP32[$13 >> 2] | 0) + (($213 | 0) == 11 ? 128 : 0) | 0) + $214 | 0;
   var $retval_0 = (($10 | 0) == ($202 | 0) & $tobool1783 | ($flush | 0) == 4) & ($ret_8 | 0) == 0 ? -5 : $ret_8;
  }
 } while (0);
 var $retval_0;
 STACKTOP = __stackBase__;
 return $retval_0;
}
function _malloc($bytes) {
 var __label__;
 $_$2 : do {
  if ($bytes >>> 0 < 245) {
   if ($bytes >>> 0 < 11) {
    var $8 = 16;
   } else {
    var $8 = ($bytes + 11 | 0) & -8;
   }
   var $8;
   var $9 = $8 >>> 3;
   var $10 = HEAPU32[(__gm_ | 0) >> 2];
   var $11 = $10 >>> ($9 >>> 0);
   if (!(($11 & 3 | 0) == 0)) {
    var $17 = ($11 & 1 ^ 1) + $9 | 0;
    var $18 = $17 << 1;
    var $20 = __gm_ + 40 + ($18 << 2) | 0;
    var $21 = __gm_ + 40 + (($18 + 2 | 0) << 2) | 0;
    var $22 = HEAPU32[$21 >> 2];
    var $23 = $22 + 8 | 0;
    var $24 = HEAPU32[$23 >> 2];
    if (($20 | 0) == ($24 | 0)) {
     HEAP32[(__gm_ | 0) >> 2] = $10 & (1 << $17 ^ -1);
    } else {
     if ($24 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
      _abort();
     } else {
      HEAP32[$21 >> 2] = $24;
      HEAP32[($24 + 12 | 0) >> 2] = $20;
     }
    }
    var $38 = $17 << 3;
    HEAP32[($22 + 4 | 0) >> 2] = $38 | 3;
    var $43 = $22 + ($38 | 4) | 0;
    HEAP32[$43 >> 2] = HEAP32[$43 >> 2] | 1;
    var $mem_0 = $23;
    __label__ = 331;
    break;
   }
   if (!($8 >>> 0 > HEAPU32[(__gm_ + 8 | 0) >> 2] >>> 0)) {
    var $nb_0 = $8;
    __label__ = 155;
    break;
   }
   if (!(($11 | 0) == 0)) {
    var $54 = 2 << $9;
    var $57 = $11 << $9 & ($54 | (-$54 | 0));
    var $60 = ($57 & (-$57 | 0)) - 1 | 0;
    var $62 = $60 >>> 12 & 16;
    var $63 = $60 >>> ($62 >>> 0);
    var $65 = $63 >>> 5 & 8;
    var $66 = $63 >>> ($65 >>> 0);
    var $68 = $66 >>> 2 & 4;
    var $69 = $66 >>> ($68 >>> 0);
    var $71 = $69 >>> 1 & 2;
    var $72 = $69 >>> ($71 >>> 0);
    var $74 = $72 >>> 1 & 1;
    var $80 = ($65 | $62 | $68 | $71 | $74) + ($72 >>> ($74 >>> 0)) | 0;
    var $81 = $80 << 1;
    var $83 = __gm_ + 40 + ($81 << 2) | 0;
    var $84 = __gm_ + 40 + (($81 + 2 | 0) << 2) | 0;
    var $85 = HEAPU32[$84 >> 2];
    var $86 = $85 + 8 | 0;
    var $87 = HEAPU32[$86 >> 2];
    if (($83 | 0) == ($87 | 0)) {
     HEAP32[(__gm_ | 0) >> 2] = $10 & (1 << $80 ^ -1);
    } else {
     if ($87 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
      _abort();
     } else {
      HEAP32[$84 >> 2] = $87;
      HEAP32[($87 + 12 | 0) >> 2] = $83;
     }
    }
    var $101 = $80 << 3;
    var $102 = $101 - $8 | 0;
    HEAP32[($85 + 4 | 0) >> 2] = $8 | 3;
    var $105 = $85;
    var $107 = $105 + $8 | 0;
    HEAP32[($105 + ($8 | 4) | 0) >> 2] = $102 | 1;
    HEAP32[($105 + $101 | 0) >> 2] = $102;
    var $113 = HEAPU32[(__gm_ + 8 | 0) >> 2];
    if (!(($113 | 0) == 0)) {
     var $116 = HEAP32[(__gm_ + 20 | 0) >> 2];
     var $119 = $113 >>> 2 & 1073741822;
     var $121 = __gm_ + 40 + ($119 << 2) | 0;
     var $122 = HEAPU32[(__gm_ | 0) >> 2];
     var $123 = 1 << ($113 >>> 3);
     do {
      if (($122 & $123 | 0) == 0) {
       HEAP32[(__gm_ | 0) >> 2] = $122 | $123;
       var $F4_0 = $121;
       var $_pre_phi = __gm_ + 40 + (($119 + 2 | 0) << 2) | 0;
      } else {
       var $129 = __gm_ + 40 + (($119 + 2 | 0) << 2) | 0;
       var $130 = HEAPU32[$129 >> 2];
       if (!($130 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
        var $F4_0 = $130;
        var $_pre_phi = $129;
        break;
       }
       _abort();
      }
     } while (0);
     var $_pre_phi;
     var $F4_0;
     HEAP32[$_pre_phi >> 2] = $116;
     HEAP32[($F4_0 + 12 | 0) >> 2] = $116;
     HEAP32[($116 + 8 | 0) >> 2] = $F4_0;
     HEAP32[($116 + 12 | 0) >> 2] = $121;
    }
    HEAP32[(__gm_ + 8 | 0) >> 2] = $102;
    HEAP32[(__gm_ + 20 | 0) >> 2] = $107;
    var $mem_0 = $86;
    __label__ = 331;
    break;
   }
   var $142 = HEAP32[(__gm_ + 4 | 0) >> 2];
   if (($142 | 0) == 0) {
    var $nb_0 = $8;
    __label__ = 155;
    break;
   }
   var $147 = ($142 & (-$142 | 0)) - 1 | 0;
   var $149 = $147 >>> 12 & 16;
   var $150 = $147 >>> ($149 >>> 0);
   var $152 = $150 >>> 5 & 8;
   var $153 = $150 >>> ($152 >>> 0);
   var $155 = $153 >>> 2 & 4;
   var $156 = $153 >>> ($155 >>> 0);
   var $158 = $156 >>> 1 & 2;
   var $159 = $156 >>> ($158 >>> 0);
   var $161 = $159 >>> 1 & 1;
   var $169 = HEAPU32[(__gm_ + 304 + ((($152 | $149 | $155 | $158 | $161) + ($159 >>> ($161 >>> 0)) | 0) << 2) | 0) >> 2];
   var $t_0_i = $169;
   var $v_0_i = $169;
   var $rsize_0_i = (HEAP32[($169 + 4 | 0) >> 2] & -8) - $8 | 0;
   while (1) {
    var $rsize_0_i;
    var $v_0_i;
    var $t_0_i;
    var $176 = HEAP32[($t_0_i + 16 | 0) >> 2];
    if (($176 | 0) == 0) {
     var $180 = HEAP32[($t_0_i + 20 | 0) >> 2];
     if (($180 | 0) == 0) {
      break;
     }
     var $182 = $180;
    } else {
     var $182 = $176;
    }
    var $182;
    var $186 = (HEAP32[($182 + 4 | 0) >> 2] & -8) - $8 | 0;
    var $187 = $186 >>> 0 < $rsize_0_i >>> 0;
    var $t_0_i = $182;
    var $v_0_i = $187 ? $182 : $v_0_i;
    var $rsize_0_i = $187 ? $186 : $rsize_0_i;
   }
   var $189 = $v_0_i;
   var $190 = HEAPU32[(__gm_ + 16 | 0) >> 2];
   do {
    if (!($189 >>> 0 < $190 >>> 0)) {
     var $193 = $189 + $8 | 0;
     var $194 = $193;
     if (!($189 >>> 0 < $193 >>> 0)) {
      break;
     }
     var $198 = HEAPU32[($v_0_i + 24 | 0) >> 2];
     var $200 = HEAPU32[($v_0_i + 12 | 0) >> 2];
     do {
      if (($200 | 0) == ($v_0_i | 0)) {
       var $212 = $v_0_i + 20 | 0;
       var $213 = HEAP32[$212 >> 2];
       if (($213 | 0) == 0) {
        var $216 = $v_0_i + 16 | 0;
        var $217 = HEAP32[$216 >> 2];
        if (($217 | 0) == 0) {
         var $R_1_i = 0;
         break;
        }
        var $RP_0_i = $216;
        var $R_0_i = $217;
       } else {
        var $RP_0_i = $212;
        var $R_0_i = $213;
        __label__ = 39;
       }
       while (1) {
        var $R_0_i;
        var $RP_0_i;
        var $219 = $R_0_i + 20 | 0;
        var $220 = HEAP32[$219 >> 2];
        if (!(($220 | 0) == 0)) {
         var $RP_0_i = $219;
         var $R_0_i = $220;
         continue;
        }
        var $223 = $R_0_i + 16 | 0;
        var $224 = HEAPU32[$223 >> 2];
        if (($224 | 0) == 0) {
         break;
        }
        var $RP_0_i = $223;
        var $R_0_i = $224;
       }
       if ($RP_0_i >>> 0 < $190 >>> 0) {
        _abort();
       } else {
        HEAP32[$RP_0_i >> 2] = 0;
        var $R_1_i = $R_0_i;
       }
      } else {
       var $204 = HEAPU32[($v_0_i + 8 | 0) >> 2];
       if ($204 >>> 0 < $190 >>> 0) {
        _abort();
       } else {
        HEAP32[($204 + 12 | 0) >> 2] = $200;
        HEAP32[($200 + 8 | 0) >> 2] = $204;
        var $R_1_i = $200;
       }
      }
     } while (0);
     var $R_1_i;
     $_$62 : do {
      if (!(($198 | 0) == 0)) {
       var $234 = $v_0_i + 28 | 0;
       var $236 = __gm_ + 304 + (HEAP32[$234 >> 2] << 2) | 0;
       do {
        if (($v_0_i | 0) == (HEAP32[$236 >> 2] | 0)) {
         HEAP32[$236 >> 2] = $R_1_i;
         if (!(($R_1_i | 0) == 0)) {
          break;
         }
         HEAP32[(__gm_ + 4 | 0) >> 2] = HEAP32[(__gm_ + 4 | 0) >> 2] & (1 << HEAP32[$234 >> 2] ^ -1);
         break $_$62;
        }
        if ($198 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
         _abort();
        } else {
         var $250 = $198 + 16 | 0;
         if ((HEAP32[$250 >> 2] | 0) == ($v_0_i | 0)) {
          HEAP32[$250 >> 2] = $R_1_i;
         } else {
          HEAP32[($198 + 20 | 0) >> 2] = $R_1_i;
         }
         if (($R_1_i | 0) == 0) {
          break $_$62;
         }
        }
       } while (0);
       if ($R_1_i >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
        _abort();
       } else {
        HEAP32[($R_1_i + 24 | 0) >> 2] = $198;
        var $266 = HEAPU32[($v_0_i + 16 | 0) >> 2];
        if (!(($266 | 0) == 0)) {
         if ($266 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
          _abort();
         } else {
          HEAP32[($R_1_i + 16 | 0) >> 2] = $266;
          HEAP32[($266 + 24 | 0) >> 2] = $R_1_i;
         }
        }
        var $278 = HEAPU32[($v_0_i + 20 | 0) >> 2];
        if (($278 | 0) == 0) {
         break;
        }
        if ($278 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
         _abort();
        } else {
         HEAP32[($R_1_i + 20 | 0) >> 2] = $278;
         HEAP32[($278 + 24 | 0) >> 2] = $R_1_i;
        }
       }
      }
     } while (0);
     if ($rsize_0_i >>> 0 < 16) {
      var $292 = $rsize_0_i + $8 | 0;
      HEAP32[($v_0_i + 4 | 0) >> 2] = $292 | 3;
      var $296 = $189 + ($292 + 4 | 0) | 0;
      HEAP32[$296 >> 2] = HEAP32[$296 >> 2] | 1;
     } else {
      HEAP32[($v_0_i + 4 | 0) >> 2] = $8 | 3;
      HEAP32[($189 + ($8 | 4) | 0) >> 2] = $rsize_0_i | 1;
      HEAP32[($189 + ($rsize_0_i + $8 | 0) | 0) >> 2] = $rsize_0_i;
      var $307 = HEAPU32[(__gm_ + 8 | 0) >> 2];
      if (!(($307 | 0) == 0)) {
       var $310 = HEAPU32[(__gm_ + 20 | 0) >> 2];
       var $313 = $307 >>> 2 & 1073741822;
       var $315 = __gm_ + 40 + ($313 << 2) | 0;
       var $316 = HEAPU32[(__gm_ | 0) >> 2];
       var $317 = 1 << ($307 >>> 3);
       do {
        if (($316 & $317 | 0) == 0) {
         HEAP32[(__gm_ | 0) >> 2] = $316 | $317;
         var $F1_0_i = $315;
         var $_pre_phi_i = __gm_ + 40 + (($313 + 2 | 0) << 2) | 0;
        } else {
         var $323 = __gm_ + 40 + (($313 + 2 | 0) << 2) | 0;
         var $324 = HEAPU32[$323 >> 2];
         if (!($324 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
          var $F1_0_i = $324;
          var $_pre_phi_i = $323;
          break;
         }
         _abort();
        }
       } while (0);
       var $_pre_phi_i;
       var $F1_0_i;
       HEAP32[$_pre_phi_i >> 2] = $310;
       HEAP32[($F1_0_i + 12 | 0) >> 2] = $310;
       HEAP32[($310 + 8 | 0) >> 2] = $F1_0_i;
       HEAP32[($310 + 12 | 0) >> 2] = $315;
      }
      HEAP32[(__gm_ + 8 | 0) >> 2] = $rsize_0_i;
      HEAP32[(__gm_ + 20 | 0) >> 2] = $194;
     }
     var $335 = $v_0_i + 8 | 0;
     if (($335 | 0) == 0) {
      var $nb_0 = $8;
      __label__ = 155;
      break $_$2;
     }
     var $mem_0 = $335;
     __label__ = 331;
     break $_$2;
    }
   } while (0);
   _abort();
  } else {
   if ($bytes >>> 0 > 4294967231) {
    var $nb_0 = -1;
    __label__ = 155;
    break;
   }
   var $341 = $bytes + 11 | 0;
   var $342 = $341 & -8;
   var $343 = HEAPU32[(__gm_ + 4 | 0) >> 2];
   if (($343 | 0) == 0) {
    var $nb_0 = $342;
    __label__ = 155;
    break;
   }
   var $346 = -$342 | 0;
   var $347 = $341 >>> 8;
   do {
    if (($347 | 0) == 0) {
     var $idx_0_i = 0;
    } else {
     if ($342 >>> 0 > 16777215) {
      var $idx_0_i = 31;
      break;
     }
     var $354 = ($347 + 1048320 | 0) >>> 16 & 8;
     var $355 = $347 << $354;
     var $358 = ($355 + 520192 | 0) >>> 16 & 4;
     var $359 = $355 << $358;
     var $362 = ($359 + 245760 | 0) >>> 16 & 2;
     var $368 = (14 - ($358 | $354 | $362) | 0) + ($359 << $362 >>> 15) | 0;
     var $idx_0_i = $342 >>> (($368 + 7 | 0) >>> 0) & 1 | $368 << 1;
    }
   } while (0);
   var $idx_0_i;
   var $376 = HEAPU32[(__gm_ + 304 + ($idx_0_i << 2) | 0) >> 2];
   $_$110 : do {
    if (($376 | 0) == 0) {
     var $v_2_i = 0;
     var $rsize_2_i = $346;
     var $t_1_i = 0;
    } else {
     if (($idx_0_i | 0) == 31) {
      var $384 = 0;
     } else {
      var $384 = 25 - ($idx_0_i >>> 1) | 0;
     }
     var $384;
     var $v_0_i15 = 0;
     var $rsize_0_i14 = $346;
     var $t_0_i13 = $376;
     var $sizebits_0_i = $342 << $384;
     var $rst_0_i = 0;
     while (1) {
      var $rst_0_i;
      var $sizebits_0_i;
      var $t_0_i13;
      var $rsize_0_i14;
      var $v_0_i15;
      var $389 = HEAP32[($t_0_i13 + 4 | 0) >> 2] & -8;
      var $390 = $389 - $342 | 0;
      if ($390 >>> 0 < $rsize_0_i14 >>> 0) {
       if (($389 | 0) == ($342 | 0)) {
        var $v_2_i = $t_0_i13;
        var $rsize_2_i = $390;
        var $t_1_i = $t_0_i13;
        break $_$110;
       }
       var $v_1_i = $t_0_i13;
       var $rsize_1_i = $390;
      } else {
       var $v_1_i = $v_0_i15;
       var $rsize_1_i = $rsize_0_i14;
      }
      var $rsize_1_i;
      var $v_1_i;
      var $396 = HEAPU32[($t_0_i13 + 20 | 0) >> 2];
      var $399 = HEAPU32[($t_0_i13 + 16 + ($sizebits_0_i >>> 31 << 2) | 0) >> 2];
      var $rst_1_i = ($396 | 0) == 0 | ($396 | 0) == ($399 | 0) ? $rst_0_i : $396;
      if (($399 | 0) == 0) {
       var $v_2_i = $v_1_i;
       var $rsize_2_i = $rsize_1_i;
       var $t_1_i = $rst_1_i;
       break $_$110;
      }
      var $v_0_i15 = $v_1_i;
      var $rsize_0_i14 = $rsize_1_i;
      var $t_0_i13 = $399;
      var $sizebits_0_i = $sizebits_0_i << 1;
      var $rst_0_i = $rst_1_i;
     }
    }
   } while (0);
   var $t_1_i;
   var $rsize_2_i;
   var $v_2_i;
   if (($t_1_i | 0) == 0 & ($v_2_i | 0) == 0) {
    var $407 = 2 << $idx_0_i;
    var $410 = $343 & ($407 | (-$407 | 0));
    if (($410 | 0) == 0) {
     var $nb_0 = $342;
     __label__ = 155;
     break;
    }
    var $415 = ($410 & (-$410 | 0)) - 1 | 0;
    var $417 = $415 >>> 12 & 16;
    var $418 = $415 >>> ($417 >>> 0);
    var $420 = $418 >>> 5 & 8;
    var $421 = $418 >>> ($420 >>> 0);
    var $423 = $421 >>> 2 & 4;
    var $424 = $421 >>> ($423 >>> 0);
    var $426 = $424 >>> 1 & 2;
    var $427 = $424 >>> ($426 >>> 0);
    var $429 = $427 >>> 1 & 1;
    var $t_2_ph_i = HEAP32[(__gm_ + 304 + ((($420 | $417 | $423 | $426 | $429) + ($427 >>> ($429 >>> 0)) | 0) << 2) | 0) >> 2];
   } else {
    var $t_2_ph_i = $t_1_i;
   }
   var $t_2_ph_i;
   $_$125 : do {
    if (($t_2_ph_i | 0) == 0) {
     var $rsize_3_lcssa_i = $rsize_2_i;
     var $v_3_lcssa_i = $v_2_i;
    } else {
     var $t_224_i = $t_2_ph_i;
     var $rsize_325_i = $rsize_2_i;
     var $v_326_i = $v_2_i;
     while (1) {
      var $v_326_i;
      var $rsize_325_i;
      var $t_224_i;
      var $442 = (HEAP32[($t_224_i + 4 | 0) >> 2] & -8) - $342 | 0;
      var $443 = $442 >>> 0 < $rsize_325_i >>> 0;
      var $_rsize_3_i = $443 ? $442 : $rsize_325_i;
      var $t_2_v_3_i = $443 ? $t_224_i : $v_326_i;
      var $445 = HEAPU32[($t_224_i + 16 | 0) >> 2];
      if (!(($445 | 0) == 0)) {
       var $t_224_i = $445;
       var $rsize_325_i = $_rsize_3_i;
       var $v_326_i = $t_2_v_3_i;
       continue;
      }
      var $448 = HEAPU32[($t_224_i + 20 | 0) >> 2];
      if (($448 | 0) == 0) {
       var $rsize_3_lcssa_i = $_rsize_3_i;
       var $v_3_lcssa_i = $t_2_v_3_i;
       break $_$125;
      }
      var $t_224_i = $448;
      var $rsize_325_i = $_rsize_3_i;
      var $v_326_i = $t_2_v_3_i;
     }
    }
   } while (0);
   var $v_3_lcssa_i;
   var $rsize_3_lcssa_i;
   if (($v_3_lcssa_i | 0) == 0) {
    var $nb_0 = $342;
    __label__ = 155;
    break;
   }
   if (!($rsize_3_lcssa_i >>> 0 < (HEAP32[(__gm_ + 8 | 0) >> 2] - $342 | 0) >>> 0)) {
    var $nb_0 = $342;
    __label__ = 155;
    break;
   }
   var $456 = $v_3_lcssa_i;
   var $457 = HEAPU32[(__gm_ + 16 | 0) >> 2];
   do {
    if (!($456 >>> 0 < $457 >>> 0)) {
     var $460 = $456 + $342 | 0;
     var $461 = $460;
     if (!($456 >>> 0 < $460 >>> 0)) {
      break;
     }
     var $465 = HEAPU32[($v_3_lcssa_i + 24 | 0) >> 2];
     var $467 = HEAPU32[($v_3_lcssa_i + 12 | 0) >> 2];
     do {
      if (($467 | 0) == ($v_3_lcssa_i | 0)) {
       var $479 = $v_3_lcssa_i + 20 | 0;
       var $480 = HEAP32[$479 >> 2];
       if (($480 | 0) == 0) {
        var $483 = $v_3_lcssa_i + 16 | 0;
        var $484 = HEAP32[$483 >> 2];
        if (($484 | 0) == 0) {
         var $R_1_i19 = 0;
         break;
        }
        var $RP_0_i17 = $483;
        var $R_0_i16 = $484;
       } else {
        var $RP_0_i17 = $479;
        var $R_0_i16 = $480;
        __label__ = 103;
       }
       while (1) {
        var $R_0_i16;
        var $RP_0_i17;
        var $486 = $R_0_i16 + 20 | 0;
        var $487 = HEAP32[$486 >> 2];
        if (!(($487 | 0) == 0)) {
         var $RP_0_i17 = $486;
         var $R_0_i16 = $487;
         continue;
        }
        var $490 = $R_0_i16 + 16 | 0;
        var $491 = HEAPU32[$490 >> 2];
        if (($491 | 0) == 0) {
         break;
        }
        var $RP_0_i17 = $490;
        var $R_0_i16 = $491;
       }
       if ($RP_0_i17 >>> 0 < $457 >>> 0) {
        _abort();
       } else {
        HEAP32[$RP_0_i17 >> 2] = 0;
        var $R_1_i19 = $R_0_i16;
       }
      } else {
       var $471 = HEAPU32[($v_3_lcssa_i + 8 | 0) >> 2];
       if ($471 >>> 0 < $457 >>> 0) {
        _abort();
       } else {
        HEAP32[($471 + 12 | 0) >> 2] = $467;
        HEAP32[($467 + 8 | 0) >> 2] = $471;
        var $R_1_i19 = $467;
       }
      }
     } while (0);
     var $R_1_i19;
     $_$151 : do {
      if (!(($465 | 0) == 0)) {
       var $501 = $v_3_lcssa_i + 28 | 0;
       var $503 = __gm_ + 304 + (HEAP32[$501 >> 2] << 2) | 0;
       do {
        if (($v_3_lcssa_i | 0) == (HEAP32[$503 >> 2] | 0)) {
         HEAP32[$503 >> 2] = $R_1_i19;
         if (!(($R_1_i19 | 0) == 0)) {
          break;
         }
         HEAP32[(__gm_ + 4 | 0) >> 2] = HEAP32[(__gm_ + 4 | 0) >> 2] & (1 << HEAP32[$501 >> 2] ^ -1);
         break $_$151;
        }
        if ($465 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
         _abort();
        } else {
         var $517 = $465 + 16 | 0;
         if ((HEAP32[$517 >> 2] | 0) == ($v_3_lcssa_i | 0)) {
          HEAP32[$517 >> 2] = $R_1_i19;
         } else {
          HEAP32[($465 + 20 | 0) >> 2] = $R_1_i19;
         }
         if (($R_1_i19 | 0) == 0) {
          break $_$151;
         }
        }
       } while (0);
       if ($R_1_i19 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
        _abort();
       } else {
        HEAP32[($R_1_i19 + 24 | 0) >> 2] = $465;
        var $533 = HEAPU32[($v_3_lcssa_i + 16 | 0) >> 2];
        if (!(($533 | 0) == 0)) {
         if ($533 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
          _abort();
         } else {
          HEAP32[($R_1_i19 + 16 | 0) >> 2] = $533;
          HEAP32[($533 + 24 | 0) >> 2] = $R_1_i19;
         }
        }
        var $545 = HEAPU32[($v_3_lcssa_i + 20 | 0) >> 2];
        if (($545 | 0) == 0) {
         break;
        }
        if ($545 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
         _abort();
        } else {
         HEAP32[($R_1_i19 + 20 | 0) >> 2] = $545;
         HEAP32[($545 + 24 | 0) >> 2] = $R_1_i19;
        }
       }
      }
     } while (0);
     $_$179 : do {
      if ($rsize_3_lcssa_i >>> 0 < 16) {
       var $559 = $rsize_3_lcssa_i + $342 | 0;
       HEAP32[($v_3_lcssa_i + 4 | 0) >> 2] = $559 | 3;
       var $563 = $456 + ($559 + 4 | 0) | 0;
       HEAP32[$563 >> 2] = HEAP32[$563 >> 2] | 1;
      } else {
       HEAP32[($v_3_lcssa_i + 4 | 0) >> 2] = $342 | 3;
       HEAP32[($456 + ($342 | 4) | 0) >> 2] = $rsize_3_lcssa_i | 1;
       HEAP32[($456 + ($rsize_3_lcssa_i + $342 | 0) | 0) >> 2] = $rsize_3_lcssa_i;
       if ($rsize_3_lcssa_i >>> 0 < 256) {
        var $578 = $rsize_3_lcssa_i >>> 2 & 1073741822;
        var $580 = __gm_ + 40 + ($578 << 2) | 0;
        var $581 = HEAPU32[(__gm_ | 0) >> 2];
        var $582 = 1 << ($rsize_3_lcssa_i >>> 3);
        do {
         if (($581 & $582 | 0) == 0) {
          HEAP32[(__gm_ | 0) >> 2] = $581 | $582;
          var $F5_0_i = $580;
          var $_pre_phi_i25 = __gm_ + 40 + (($578 + 2 | 0) << 2) | 0;
         } else {
          var $588 = __gm_ + 40 + (($578 + 2 | 0) << 2) | 0;
          var $589 = HEAPU32[$588 >> 2];
          if (!($589 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
           var $F5_0_i = $589;
           var $_pre_phi_i25 = $588;
           break;
          }
          _abort();
         }
        } while (0);
        var $_pre_phi_i25;
        var $F5_0_i;
        HEAP32[$_pre_phi_i25 >> 2] = $461;
        HEAP32[($F5_0_i + 12 | 0) >> 2] = $461;
        HEAP32[($456 + ($342 + 8 | 0) | 0) >> 2] = $F5_0_i;
        HEAP32[($456 + ($342 + 12 | 0) | 0) >> 2] = $580;
       } else {
        var $601 = $460;
        var $602 = $rsize_3_lcssa_i >>> 8;
        do {
         if (($602 | 0) == 0) {
          var $I7_0_i = 0;
         } else {
          if ($rsize_3_lcssa_i >>> 0 > 16777215) {
           var $I7_0_i = 31;
           break;
          }
          var $609 = ($602 + 1048320 | 0) >>> 16 & 8;
          var $610 = $602 << $609;
          var $613 = ($610 + 520192 | 0) >>> 16 & 4;
          var $614 = $610 << $613;
          var $617 = ($614 + 245760 | 0) >>> 16 & 2;
          var $623 = (14 - ($613 | $609 | $617) | 0) + ($614 << $617 >>> 15) | 0;
          var $I7_0_i = $rsize_3_lcssa_i >>> (($623 + 7 | 0) >>> 0) & 1 | $623 << 1;
         }
        } while (0);
        var $I7_0_i;
        var $630 = __gm_ + 304 + ($I7_0_i << 2) | 0;
        HEAP32[($456 + ($342 + 28 | 0) | 0) >> 2] = $I7_0_i;
        HEAP32[($456 + ($342 + 20 | 0) | 0) >> 2] = 0;
        HEAP32[($456 + ($342 + 16 | 0) | 0) >> 2] = 0;
        var $637 = HEAP32[(__gm_ + 4 | 0) >> 2];
        var $638 = 1 << $I7_0_i;
        if (($637 & $638 | 0) == 0) {
         HEAP32[(__gm_ + 4 | 0) >> 2] = $637 | $638;
         HEAP32[$630 >> 2] = $601;
         HEAP32[($456 + ($342 + 24 | 0) | 0) >> 2] = $630;
         HEAP32[($456 + ($342 + 12 | 0) | 0) >> 2] = $601;
         HEAP32[($456 + ($342 + 8 | 0) | 0) >> 2] = $601;
        } else {
         if (($I7_0_i | 0) == 31) {
          var $657 = 0;
         } else {
          var $657 = 25 - ($I7_0_i >>> 1) | 0;
         }
         var $657;
         var $K12_0_i = $rsize_3_lcssa_i << $657;
         var $T_0_i = HEAP32[$630 >> 2];
         while (1) {
          var $T_0_i;
          var $K12_0_i;
          if ((HEAP32[($T_0_i + 4 | 0) >> 2] & -8 | 0) == ($rsize_3_lcssa_i | 0)) {
           var $683 = $T_0_i + 8 | 0;
           var $684 = HEAPU32[$683 >> 2];
           var $686 = HEAPU32[(__gm_ + 16 | 0) >> 2];
           do {
            if (!($T_0_i >>> 0 < $686 >>> 0)) {
             if ($684 >>> 0 < $686 >>> 0) {
              break;
             }
             HEAP32[($684 + 12 | 0) >> 2] = $601;
             HEAP32[$683 >> 2] = $601;
             HEAP32[($456 + ($342 + 8 | 0) | 0) >> 2] = $684;
             HEAP32[($456 + ($342 + 12 | 0) | 0) >> 2] = $T_0_i;
             HEAP32[($456 + ($342 + 24 | 0) | 0) >> 2] = 0;
             break $_$179;
            }
           } while (0);
           _abort();
          } else {
           var $666 = $T_0_i + 16 + ($K12_0_i >>> 31 << 2) | 0;
           var $667 = HEAPU32[$666 >> 2];
           if (!(($667 | 0) == 0)) {
            var $K12_0_i = $K12_0_i << 1;
            var $T_0_i = $667;
            continue;
           }
           if (!($666 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
            HEAP32[$666 >> 2] = $601;
            HEAP32[($456 + ($342 + 24 | 0) | 0) >> 2] = $T_0_i;
            HEAP32[($456 + ($342 + 12 | 0) | 0) >> 2] = $601;
            HEAP32[($456 + ($342 + 8 | 0) | 0) >> 2] = $601;
            break $_$179;
           }
           _abort();
          }
         }
        }
       }
      }
     } while (0);
     var $700 = $v_3_lcssa_i + 8 | 0;
     if (($700 | 0) == 0) {
      var $nb_0 = $342;
      __label__ = 155;
      break $_$2;
     }
     var $mem_0 = $700;
     __label__ = 331;
     break $_$2;
    }
   } while (0);
   _abort();
  }
 } while (0);
 $_$215 : do {
  if (__label__ == 155) {
   var $nb_0;
   var $703 = HEAPU32[(__gm_ + 8 | 0) >> 2];
   if ($nb_0 >>> 0 > $703 >>> 0) {
    var $732 = HEAPU32[(__gm_ + 12 | 0) >> 2];
    if ($nb_0 >>> 0 < $732 >>> 0) {
     var $735 = $732 - $nb_0 | 0;
     HEAP32[(__gm_ + 12 | 0) >> 2] = $735;
     var $736 = HEAPU32[(__gm_ + 24 | 0) >> 2];
     var $737 = $736;
     HEAP32[(__gm_ + 24 | 0) >> 2] = $737 + $nb_0 | 0;
     HEAP32[($737 + ($nb_0 + 4 | 0) | 0) >> 2] = $735 | 1;
     HEAP32[($736 + 4 | 0) >> 2] = $nb_0 | 3;
     var $mem_0 = $736 + 8 | 0;
    } else {
     do {
      if ((HEAP32[(_mparams | 0) >> 2] | 0) == 0) {
       if (!((HEAP32[(_mparams | 0) >> 2] | 0) == 0)) {
        break;
       }
       var $754 = _sysconf(8);
       if ((($754 - 1 | 0) & $754 | 0) == 0) {
        HEAP32[(_mparams + 8 | 0) >> 2] = $754;
        HEAP32[(_mparams + 4 | 0) >> 2] = $754;
        HEAP32[(_mparams + 12 | 0) >> 2] = -1;
        HEAP32[(_mparams + 16 | 0) >> 2] = 2097152;
        HEAP32[(_mparams + 20 | 0) >> 2] = 0;
        HEAP32[(__gm_ + 440 | 0) >> 2] = 0;
        var $762 = _time(0) & -16 ^ 1431655768;
        HEAP32[(_mparams | 0) >> 2] = $762;
       } else {
        _abort();
       }
      }
     } while (0);
     $_$234 : do {
      if ((HEAP32[(__gm_ + 440 | 0) >> 2] & 4 | 0) == 0) {
       var $767 = HEAP32[(__gm_ + 24 | 0) >> 2];
       $_$236 : do {
        if (!(($767 | 0) == 0)) {
         var $770 = $767;
         var $sp_0_i_i = __gm_ + 444 | 0;
         while (1) {
          var $sp_0_i_i;
          var $772 = $sp_0_i_i | 0;
          var $773 = HEAPU32[$772 >> 2];
          if (!($773 >>> 0 > $770 >>> 0)) {
           var $776 = $sp_0_i_i + 4 | 0;
           if (($773 + HEAP32[$776 >> 2] | 0) >>> 0 > $770 >>> 0) {
            break;
           }
          }
          var $782 = HEAPU32[($sp_0_i_i + 8 | 0) >> 2];
          if (($782 | 0) == 0) {
           __label__ = 174;
           break $_$236;
          }
          var $sp_0_i_i = $782;
         }
         if (($sp_0_i_i | 0) == 0) {
          __label__ = 174;
          break;
         }
         var $811 = HEAP32[(_mparams + 8 | 0) >> 2];
         var $816 = ((($nb_0 + 47 | 0) - HEAP32[(__gm_ + 12 | 0) >> 2] | 0) + $811 | 0) & (-$811 | 0);
         if (!($816 >>> 0 < 2147483647)) {
          var $tsize_0242932_ph_i = 0;
          __label__ = 189;
          break;
         }
         var $819 = _sbrk($816);
         var $823 = ($819 | 0) == (HEAP32[$772 >> 2] + HEAP32[$776 >> 2] | 0 | 0);
         var $tbase_0_i = $823 ? $819 : -1;
         var $tsize_0_i = $823 ? $816 : 0;
         var $asize_1_i = $816;
         var $br_0_i = $819;
         __label__ = 181;
         break;
        }
        __label__ = 174;
       } while (0);
       do {
        if (__label__ == 174) {
         var $785 = _sbrk(0);
         if (($785 | 0) == -1) {
          var $tsize_0242932_ph_i = 0;
          __label__ = 189;
          break;
         }
         var $788 = HEAP32[(_mparams + 8 | 0) >> 2];
         var $792 = (($nb_0 + 47 | 0) + $788 | 0) & (-$788 | 0);
         var $793 = $785;
         var $794 = HEAP32[(_mparams + 4 | 0) >> 2];
         var $795 = $794 - 1 | 0;
         if (($795 & $793 | 0) == 0) {
          var $asize_0_i = $792;
         } else {
          var $asize_0_i = ($792 - $793 | 0) + (($795 + $793 | 0) & (-$794 | 0)) | 0;
         }
         var $asize_0_i;
         if (!($asize_0_i >>> 0 < 2147483647)) {
          var $tsize_0242932_ph_i = 0;
          __label__ = 189;
          break;
         }
         var $807 = _sbrk($asize_0_i);
         var $808 = ($807 | 0) == ($785 | 0);
         var $tbase_0_i = $808 ? $785 : -1;
         var $tsize_0_i = $808 ? $asize_0_i : 0;
         var $asize_1_i = $asize_0_i;
         var $br_0_i = $807;
         __label__ = 181;
         break;
        }
       } while (0);
       $_$253 : do {
        if (__label__ == 181) {
         var $br_0_i;
         var $asize_1_i;
         var $tsize_0_i;
         var $tbase_0_i;
         var $825 = -$asize_1_i | 0;
         if (!(($tbase_0_i | 0) == -1)) {
          var $tsize_242_i = $tsize_0_i;
          var $tbase_243_i = $tbase_0_i;
          __label__ = 194;
          break $_$234;
         }
         do {
          if (($br_0_i | 0) != -1 & $asize_1_i >>> 0 < 2147483647) {
           if (!($asize_1_i >>> 0 < ($nb_0 + 48 | 0) >>> 0)) {
            var $asize_2_i = $asize_1_i;
            break;
           }
           var $834 = HEAP32[(_mparams + 8 | 0) >> 2];
           var $839 = ((($nb_0 + 47 | 0) - $asize_1_i | 0) + $834 | 0) & (-$834 | 0);
           if (!($839 >>> 0 < 2147483647)) {
            var $asize_2_i = $asize_1_i;
            break;
           }
           if ((_sbrk($839) | 0) == -1) {
            _sbrk($825);
            var $tsize_0242932_ph_i = $tsize_0_i;
            break $_$253;
           }
           var $asize_2_i = $839 + $asize_1_i | 0;
          } else {
           var $asize_2_i = $asize_1_i;
          }
         } while (0);
         var $asize_2_i;
         if (!(($br_0_i | 0) == -1)) {
          var $tsize_242_i = $asize_2_i;
          var $tbase_243_i = $br_0_i;
          __label__ = 194;
          break $_$234;
         }
         HEAP32[(__gm_ + 440 | 0) >> 2] = HEAP32[(__gm_ + 440 | 0) >> 2] | 4;
         var $tsize_137_i = $tsize_0_i;
         __label__ = 191;
         break $_$234;
        }
       } while (0);
       var $tsize_0242932_ph_i;
       HEAP32[(__gm_ + 440 | 0) >> 2] = HEAP32[(__gm_ + 440 | 0) >> 2] | 4;
       var $tsize_137_i = $tsize_0242932_ph_i;
       __label__ = 191;
       break;
      }
      var $tsize_137_i = 0;
      __label__ = 191;
     } while (0);
     do {
      if (__label__ == 191) {
       var $tsize_137_i;
       var $854 = HEAP32[(_mparams + 8 | 0) >> 2];
       var $858 = (($nb_0 + 47 | 0) + $854 | 0) & (-$854 | 0);
       if (!($858 >>> 0 < 2147483647)) {
        __label__ = 330;
        break;
       }
       var $861 = _sbrk($858);
       var $862 = _sbrk(0);
       if (!(($862 | 0) != -1 & ($861 | 0) != -1 & $861 >>> 0 < $862 >>> 0)) {
        __label__ = 330;
        break;
       }
       var $866 = $862 - $861 | 0;
       var $868 = $866 >>> 0 > ($nb_0 + 40 | 0) >>> 0;
       var $_tbase_1_i = $868 ? $861 : -1;
       if (($_tbase_1_i | 0) == -1) {
        __label__ = 330;
        break;
       }
       var $tsize_242_i = $868 ? $866 : $tsize_137_i;
       var $tbase_243_i = $_tbase_1_i;
       __label__ = 194;
       break;
      }
     } while (0);
     do {
      if (__label__ == 194) {
       var $tbase_243_i;
       var $tsize_242_i;
       var $871 = HEAP32[(__gm_ + 432 | 0) >> 2] + $tsize_242_i | 0;
       HEAP32[(__gm_ + 432 | 0) >> 2] = $871;
       if ($871 >>> 0 > HEAPU32[(__gm_ + 436 | 0) >> 2] >>> 0) {
        HEAP32[(__gm_ + 436 | 0) >> 2] = $871;
       }
       var $876 = HEAPU32[(__gm_ + 24 | 0) >> 2];
       $_$275 : do {
        if (($876 | 0) == 0) {
         var $879 = HEAPU32[(__gm_ + 16 | 0) >> 2];
         if (($879 | 0) == 0 | $tbase_243_i >>> 0 < $879 >>> 0) {
          HEAP32[(__gm_ + 16 | 0) >> 2] = $tbase_243_i;
         }
         HEAP32[(__gm_ + 444 | 0) >> 2] = $tbase_243_i;
         HEAP32[(__gm_ + 448 | 0) >> 2] = $tsize_242_i;
         HEAP32[(__gm_ + 456 | 0) >> 2] = 0;
         HEAP32[(__gm_ + 36 | 0) >> 2] = HEAP32[(_mparams | 0) >> 2];
         HEAP32[(__gm_ + 32 | 0) >> 2] = -1;
         var $i_02_i_i = 0;
         while (1) {
          var $i_02_i_i;
          var $886 = $i_02_i_i << 1;
          var $888 = __gm_ + 40 + ($886 << 2) | 0;
          HEAP32[(__gm_ + 40 + (($886 + 3 | 0) << 2) | 0) >> 2] = $888;
          HEAP32[(__gm_ + 40 + (($886 + 2 | 0) << 2) | 0) >> 2] = $888;
          var $891 = $i_02_i_i + 1 | 0;
          if (($891 | 0) == 32) {
           break;
          }
          var $i_02_i_i = $891;
         }
         var $893 = $tbase_243_i + 8 | 0;
         if (($893 & 7 | 0) == 0) {
          var $899 = 0;
         } else {
          var $899 = (-$893 | 0) & 7;
         }
         var $899;
         var $903 = ($tsize_242_i - 40 | 0) - $899 | 0;
         HEAP32[(__gm_ + 24 | 0) >> 2] = $tbase_243_i + $899 | 0;
         HEAP32[(__gm_ + 12 | 0) >> 2] = $903;
         HEAP32[($tbase_243_i + ($899 + 4 | 0) | 0) >> 2] = $903 | 1;
         HEAP32[($tbase_243_i + ($tsize_242_i - 36 | 0) | 0) >> 2] = 40;
         HEAP32[(__gm_ + 28 | 0) >> 2] = HEAP32[(_mparams + 16 | 0) >> 2];
        } else {
         var $sp_0_i = __gm_ + 444 | 0;
         while (1) {
          var $sp_0_i;
          if (($sp_0_i | 0) == 0) {
           break;
          }
          var $913 = HEAPU32[($sp_0_i | 0) >> 2];
          var $914 = $sp_0_i + 4 | 0;
          var $915 = HEAPU32[$914 >> 2];
          if (($tbase_243_i | 0) == ($913 + $915 | 0 | 0)) {
           if (!((HEAP32[($sp_0_i + 12 | 0) >> 2] & 8 | 0) == 0)) {
            break;
           }
           var $926 = $876;
           if (!($926 >>> 0 >= $913 >>> 0 & $926 >>> 0 < $tbase_243_i >>> 0)) {
            break;
           }
           HEAP32[$914 >> 2] = $915 + $tsize_242_i | 0;
           var $931 = HEAP32[(__gm_ + 24 | 0) >> 2];
           var $933 = HEAP32[(__gm_ + 12 | 0) >> 2] + $tsize_242_i | 0;
           var $934 = $931;
           var $936 = $931 + 8 | 0;
           if (($936 & 7 | 0) == 0) {
            var $942 = 0;
           } else {
            var $942 = (-$936 | 0) & 7;
           }
           var $942;
           var $945 = $933 - $942 | 0;
           HEAP32[(__gm_ + 24 | 0) >> 2] = $934 + $942 | 0;
           HEAP32[(__gm_ + 12 | 0) >> 2] = $945;
           HEAP32[($934 + ($942 + 4 | 0) | 0) >> 2] = $945 | 1;
           HEAP32[($934 + ($933 + 4 | 0) | 0) >> 2] = 40;
           HEAP32[(__gm_ + 28 | 0) >> 2] = HEAP32[(_mparams + 16 | 0) >> 2];
           break $_$275;
          }
          var $sp_0_i = HEAP32[($sp_0_i + 8 | 0) >> 2];
         }
         if ($tbase_243_i >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
          HEAP32[(__gm_ + 16 | 0) >> 2] = $tbase_243_i;
         }
         var $955 = $tbase_243_i + $tsize_242_i | 0;
         var $sp_1_i = __gm_ + 444 | 0;
         while (1) {
          var $sp_1_i;
          if (($sp_1_i | 0) == 0) {
           __label__ = 293;
           break;
          }
          var $959 = $sp_1_i | 0;
          if ((HEAP32[$959 >> 2] | 0) == ($955 | 0)) {
           __label__ = 218;
           break;
          }
          var $sp_1_i = HEAP32[($sp_1_i + 8 | 0) >> 2];
         }
         do {
          if (__label__ == 218) {
           if (!((HEAP32[($sp_1_i + 12 | 0) >> 2] & 8 | 0) == 0)) {
            break;
           }
           HEAP32[$959 >> 2] = $tbase_243_i;
           var $970 = $sp_1_i + 4 | 0;
           HEAP32[$970 >> 2] = HEAP32[$970 >> 2] + $tsize_242_i | 0;
           var $974 = $tbase_243_i + 8 | 0;
           if (($974 & 7 | 0) == 0) {
            var $981 = 0;
           } else {
            var $981 = (-$974 | 0) & 7;
           }
           var $981;
           var $984 = $tbase_243_i + ($tsize_242_i + 8 | 0) | 0;
           if (($984 & 7 | 0) == 0) {
            var $991 = 0;
           } else {
            var $991 = (-$984 | 0) & 7;
           }
           var $991;
           var $992 = $tbase_243_i + ($991 + $tsize_242_i | 0) | 0;
           var $993 = $992;
           var $_sum_i16_i = $981 + $nb_0 | 0;
           var $997 = $tbase_243_i + $_sum_i16_i | 0;
           var $998 = $997;
           var $999 = ($992 - ($tbase_243_i + $981 | 0) | 0) - $nb_0 | 0;
           HEAP32[($tbase_243_i + ($981 + 4 | 0) | 0) >> 2] = $nb_0 | 3;
           $_$314 : do {
            if (($993 | 0) == (HEAP32[(__gm_ + 24 | 0) >> 2] | 0)) {
             var $1007 = HEAP32[(__gm_ + 12 | 0) >> 2] + $999 | 0;
             HEAP32[(__gm_ + 12 | 0) >> 2] = $1007;
             HEAP32[(__gm_ + 24 | 0) >> 2] = $998;
             HEAP32[($tbase_243_i + ($_sum_i16_i + 4 | 0) | 0) >> 2] = $1007 | 1;
            } else {
             if (($993 | 0) == (HEAP32[(__gm_ + 20 | 0) >> 2] | 0)) {
              var $1016 = HEAP32[(__gm_ + 8 | 0) >> 2] + $999 | 0;
              HEAP32[(__gm_ + 8 | 0) >> 2] = $1016;
              HEAP32[(__gm_ + 20 | 0) >> 2] = $998;
              HEAP32[($tbase_243_i + ($_sum_i16_i + 4 | 0) | 0) >> 2] = $1016 | 1;
              HEAP32[($tbase_243_i + ($1016 + $_sum_i16_i | 0) | 0) >> 2] = $1016;
             } else {
              var $_sum2_i18_i = $tsize_242_i + 4 | 0;
              var $1025 = HEAPU32[($tbase_243_i + ($_sum2_i18_i + $991 | 0) | 0) >> 2];
              if (($1025 & 3 | 0) == 1) {
               var $1029 = $1025 & -8;
               var $1030 = $1025 >>> 3;
               $_$322 : do {
                if ($1025 >>> 0 < 256) {
                 var $1035 = HEAPU32[($tbase_243_i + (($991 | 8) + $tsize_242_i | 0) | 0) >> 2];
                 var $1038 = HEAPU32[($tbase_243_i + (($tsize_242_i + 12 | 0) + $991 | 0) | 0) >> 2];
                 if (($1035 | 0) == ($1038 | 0)) {
                  HEAP32[(__gm_ | 0) >> 2] = HEAP32[(__gm_ | 0) >> 2] & (1 << $1030 ^ -1);
                 } else {
                  var $1049 = __gm_ + 40 + (($1025 >>> 2 & 1073741822) << 2) | 0;
                  do {
                   if (($1035 | 0) == ($1049 | 0)) {
                    __label__ = 233;
                   } else {
                    if ($1035 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                     __label__ = 236;
                     break;
                    }
                    __label__ = 233;
                    break;
                   }
                  } while (0);
                  do {
                   if (__label__ == 233) {
                    if (!(($1038 | 0) == ($1049 | 0))) {
                     if ($1038 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                      break;
                     }
                    }
                    HEAP32[($1035 + 12 | 0) >> 2] = $1038;
                    HEAP32[($1038 + 8 | 0) >> 2] = $1035;
                    break $_$322;
                   }
                  } while (0);
                  _abort();
                 }
                } else {
                 var $1064 = $992;
                 var $1067 = HEAPU32[($tbase_243_i + (($991 | 24) + $tsize_242_i | 0) | 0) >> 2];
                 var $1070 = HEAPU32[($tbase_243_i + (($tsize_242_i + 12 | 0) + $991 | 0) | 0) >> 2];
                 do {
                  if (($1070 | 0) == ($1064 | 0)) {
                   var $_sum67_i_i = $991 | 16;
                   var $1085 = $tbase_243_i + ($_sum2_i18_i + $_sum67_i_i | 0) | 0;
                   var $1086 = HEAP32[$1085 >> 2];
                   if (($1086 | 0) == 0) {
                    var $1090 = $tbase_243_i + ($_sum67_i_i + $tsize_242_i | 0) | 0;
                    var $1091 = HEAP32[$1090 >> 2];
                    if (($1091 | 0) == 0) {
                     var $R_1_i_i = 0;
                     break;
                    }
                    var $RP_0_i_i = $1090;
                    var $R_0_i_i = $1091;
                   } else {
                    var $RP_0_i_i = $1085;
                    var $R_0_i_i = $1086;
                    __label__ = 243;
                   }
                   while (1) {
                    var $R_0_i_i;
                    var $RP_0_i_i;
                    var $1093 = $R_0_i_i + 20 | 0;
                    var $1094 = HEAP32[$1093 >> 2];
                    if (!(($1094 | 0) == 0)) {
                     var $RP_0_i_i = $1093;
                     var $R_0_i_i = $1094;
                     continue;
                    }
                    var $1097 = $R_0_i_i + 16 | 0;
                    var $1098 = HEAPU32[$1097 >> 2];
                    if (($1098 | 0) == 0) {
                     break;
                    }
                    var $RP_0_i_i = $1097;
                    var $R_0_i_i = $1098;
                   }
                   if ($RP_0_i_i >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                    _abort();
                   } else {
                    HEAP32[$RP_0_i_i >> 2] = 0;
                    var $R_1_i_i = $R_0_i_i;
                   }
                  } else {
                   var $1075 = HEAPU32[($tbase_243_i + (($991 | 8) + $tsize_242_i | 0) | 0) >> 2];
                   if ($1075 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                    _abort();
                   } else {
                    HEAP32[($1075 + 12 | 0) >> 2] = $1070;
                    HEAP32[($1070 + 8 | 0) >> 2] = $1075;
                    var $R_1_i_i = $1070;
                   }
                  }
                 } while (0);
                 var $R_1_i_i;
                 if (($1067 | 0) == 0) {
                  break;
                 }
                 var $1110 = $tbase_243_i + (($tsize_242_i + 28 | 0) + $991 | 0) | 0;
                 var $1112 = __gm_ + 304 + (HEAP32[$1110 >> 2] << 2) | 0;
                 do {
                  if (($1064 | 0) == (HEAP32[$1112 >> 2] | 0)) {
                   HEAP32[$1112 >> 2] = $R_1_i_i;
                   if (!(($R_1_i_i | 0) == 0)) {
                    break;
                   }
                   HEAP32[(__gm_ + 4 | 0) >> 2] = HEAP32[(__gm_ + 4 | 0) >> 2] & (1 << HEAP32[$1110 >> 2] ^ -1);
                   break $_$322;
                  }
                  if ($1067 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                   _abort();
                  } else {
                   var $1126 = $1067 + 16 | 0;
                   if ((HEAP32[$1126 >> 2] | 0) == ($1064 | 0)) {
                    HEAP32[$1126 >> 2] = $R_1_i_i;
                   } else {
                    HEAP32[($1067 + 20 | 0) >> 2] = $R_1_i_i;
                   }
                   if (($R_1_i_i | 0) == 0) {
                    break $_$322;
                   }
                  }
                 } while (0);
                 if ($R_1_i_i >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                  _abort();
                 } else {
                  HEAP32[($R_1_i_i + 24 | 0) >> 2] = $1067;
                  var $_sum3132_i_i = $991 | 16;
                  var $1143 = HEAPU32[($tbase_243_i + ($_sum3132_i_i + $tsize_242_i | 0) | 0) >> 2];
                  if (!(($1143 | 0) == 0)) {
                   if ($1143 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                    _abort();
                   } else {
                    HEAP32[($R_1_i_i + 16 | 0) >> 2] = $1143;
                    HEAP32[($1143 + 24 | 0) >> 2] = $R_1_i_i;
                   }
                  }
                  var $1156 = HEAPU32[($tbase_243_i + ($_sum2_i18_i + $_sum3132_i_i | 0) | 0) >> 2];
                  if (($1156 | 0) == 0) {
                   break;
                  }
                  if ($1156 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                   _abort();
                  } else {
                   HEAP32[($R_1_i_i + 20 | 0) >> 2] = $1156;
                   HEAP32[($1156 + 24 | 0) >> 2] = $R_1_i_i;
                  }
                 }
                }
               } while (0);
               var $oldfirst_0_i_i = $tbase_243_i + (($1029 | $991) + $tsize_242_i | 0) | 0;
               var $qsize_0_i_i = $1029 + $999 | 0;
              } else {
               var $oldfirst_0_i_i = $993;
               var $qsize_0_i_i = $999;
              }
              var $qsize_0_i_i;
              var $oldfirst_0_i_i;
              var $1172 = $oldfirst_0_i_i + 4 | 0;
              HEAP32[$1172 >> 2] = HEAP32[$1172 >> 2] & -2;
              HEAP32[($tbase_243_i + ($_sum_i16_i + 4 | 0) | 0) >> 2] = $qsize_0_i_i | 1;
              HEAP32[($tbase_243_i + ($qsize_0_i_i + $_sum_i16_i | 0) | 0) >> 2] = $qsize_0_i_i;
              if ($qsize_0_i_i >>> 0 < 256) {
               var $1184 = $qsize_0_i_i >>> 2 & 1073741822;
               var $1186 = __gm_ + 40 + ($1184 << 2) | 0;
               var $1187 = HEAPU32[(__gm_ | 0) >> 2];
               var $1188 = 1 << ($qsize_0_i_i >>> 3);
               do {
                if (($1187 & $1188 | 0) == 0) {
                 HEAP32[(__gm_ | 0) >> 2] = $1187 | $1188;
                 var $F4_0_i_i = $1186;
                 var $_pre_phi_i20_i = __gm_ + 40 + (($1184 + 2 | 0) << 2) | 0;
                } else {
                 var $1194 = __gm_ + 40 + (($1184 + 2 | 0) << 2) | 0;
                 var $1195 = HEAPU32[$1194 >> 2];
                 if (!($1195 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
                  var $F4_0_i_i = $1195;
                  var $_pre_phi_i20_i = $1194;
                  break;
                 }
                 _abort();
                }
               } while (0);
               var $_pre_phi_i20_i;
               var $F4_0_i_i;
               HEAP32[$_pre_phi_i20_i >> 2] = $998;
               HEAP32[($F4_0_i_i + 12 | 0) >> 2] = $998;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 8 | 0) | 0) >> 2] = $F4_0_i_i;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 12 | 0) | 0) >> 2] = $1186;
              } else {
               var $1207 = $997;
               var $1208 = $qsize_0_i_i >>> 8;
               do {
                if (($1208 | 0) == 0) {
                 var $I7_0_i_i = 0;
                } else {
                 if ($qsize_0_i_i >>> 0 > 16777215) {
                  var $I7_0_i_i = 31;
                  break;
                 }
                 var $1215 = ($1208 + 1048320 | 0) >>> 16 & 8;
                 var $1216 = $1208 << $1215;
                 var $1219 = ($1216 + 520192 | 0) >>> 16 & 4;
                 var $1220 = $1216 << $1219;
                 var $1223 = ($1220 + 245760 | 0) >>> 16 & 2;
                 var $1229 = (14 - ($1219 | $1215 | $1223) | 0) + ($1220 << $1223 >>> 15) | 0;
                 var $I7_0_i_i = $qsize_0_i_i >>> (($1229 + 7 | 0) >>> 0) & 1 | $1229 << 1;
                }
               } while (0);
               var $I7_0_i_i;
               var $1236 = __gm_ + 304 + ($I7_0_i_i << 2) | 0;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 28 | 0) | 0) >> 2] = $I7_0_i_i;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 20 | 0) | 0) >> 2] = 0;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 16 | 0) | 0) >> 2] = 0;
               var $1243 = HEAP32[(__gm_ + 4 | 0) >> 2];
               var $1244 = 1 << $I7_0_i_i;
               if (($1243 & $1244 | 0) == 0) {
                HEAP32[(__gm_ + 4 | 0) >> 2] = $1243 | $1244;
                HEAP32[$1236 >> 2] = $1207;
                HEAP32[($tbase_243_i + ($_sum_i16_i + 24 | 0) | 0) >> 2] = $1236;
                HEAP32[($tbase_243_i + ($_sum_i16_i + 12 | 0) | 0) >> 2] = $1207;
                HEAP32[($tbase_243_i + ($_sum_i16_i + 8 | 0) | 0) >> 2] = $1207;
               } else {
                if (($I7_0_i_i | 0) == 31) {
                 var $1263 = 0;
                } else {
                 var $1263 = 25 - ($I7_0_i_i >>> 1) | 0;
                }
                var $1263;
                var $K8_0_i_i = $qsize_0_i_i << $1263;
                var $T_0_i21_i = HEAP32[$1236 >> 2];
                while (1) {
                 var $T_0_i21_i;
                 var $K8_0_i_i;
                 if ((HEAP32[($T_0_i21_i + 4 | 0) >> 2] & -8 | 0) == ($qsize_0_i_i | 0)) {
                  var $1289 = $T_0_i21_i + 8 | 0;
                  var $1290 = HEAPU32[$1289 >> 2];
                  var $1292 = HEAPU32[(__gm_ + 16 | 0) >> 2];
                  do {
                   if (!($T_0_i21_i >>> 0 < $1292 >>> 0)) {
                    if ($1290 >>> 0 < $1292 >>> 0) {
                     break;
                    }
                    HEAP32[($1290 + 12 | 0) >> 2] = $1207;
                    HEAP32[$1289 >> 2] = $1207;
                    HEAP32[($tbase_243_i + ($_sum_i16_i + 8 | 0) | 0) >> 2] = $1290;
                    HEAP32[($tbase_243_i + ($_sum_i16_i + 12 | 0) | 0) >> 2] = $T_0_i21_i;
                    HEAP32[($tbase_243_i + ($_sum_i16_i + 24 | 0) | 0) >> 2] = 0;
                    break $_$314;
                   }
                  } while (0);
                  _abort();
                 } else {
                  var $1272 = $T_0_i21_i + 16 + ($K8_0_i_i >>> 31 << 2) | 0;
                  var $1273 = HEAPU32[$1272 >> 2];
                  if (!(($1273 | 0) == 0)) {
                   var $K8_0_i_i = $K8_0_i_i << 1;
                   var $T_0_i21_i = $1273;
                   continue;
                  }
                  if (!($1272 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
                   HEAP32[$1272 >> 2] = $1207;
                   HEAP32[($tbase_243_i + ($_sum_i16_i + 24 | 0) | 0) >> 2] = $T_0_i21_i;
                   HEAP32[($tbase_243_i + ($_sum_i16_i + 12 | 0) | 0) >> 2] = $1207;
                   HEAP32[($tbase_243_i + ($_sum_i16_i + 8 | 0) | 0) >> 2] = $1207;
                   break $_$314;
                  }
                  _abort();
                 }
                }
               }
              }
             }
            }
           } while (0);
           var $mem_0 = $tbase_243_i + ($981 | 8) | 0;
           break $_$215;
          }
         } while (0);
         var $1306 = $876;
         var $sp_0_i_i_i = __gm_ + 444 | 0;
         while (1) {
          var $sp_0_i_i_i;
          var $1309 = HEAPU32[($sp_0_i_i_i | 0) >> 2];
          if (!($1309 >>> 0 > $1306 >>> 0)) {
           var $1313 = HEAPU32[($sp_0_i_i_i + 4 | 0) >> 2];
           if (($1309 + $1313 | 0) >>> 0 > $1306 >>> 0) {
            var $1321 = $1309;
            var $1320 = $1313;
            break;
           }
          }
          var $1318 = HEAPU32[($sp_0_i_i_i + 8 | 0) >> 2];
          if (!(($1318 | 0) == 0)) {
           var $sp_0_i_i_i = $1318;
           continue;
          }
          var $1321 = 0;
          var $1320 = 4;
          break;
         }
         var $1320;
         var $1321;
         var $1322 = $1321 + $1320 | 0;
         var $1324 = $1321 + ($1320 - 39 | 0) | 0;
         if (($1324 & 7 | 0) == 0) {
          var $1331 = 0;
         } else {
          var $1331 = (-$1324 | 0) & 7;
         }
         var $1331;
         var $1332 = $1321 + (($1320 - 47 | 0) + $1331 | 0) | 0;
         var $1336 = $1332 >>> 0 < ($876 + 16 | 0) >>> 0 ? $1306 : $1332;
         var $1337 = $1336 + 8 | 0;
         var $1340 = $tbase_243_i + 8 | 0;
         if (($1340 & 7 | 0) == 0) {
          var $1346 = 0;
         } else {
          var $1346 = (-$1340 | 0) & 7;
         }
         var $1346;
         var $1350 = ($tsize_242_i - 40 | 0) - $1346 | 0;
         HEAP32[(__gm_ + 24 | 0) >> 2] = $tbase_243_i + $1346 | 0;
         HEAP32[(__gm_ + 12 | 0) >> 2] = $1350;
         HEAP32[($tbase_243_i + ($1346 + 4 | 0) | 0) >> 2] = $1350 | 1;
         HEAP32[($tbase_243_i + ($tsize_242_i - 36 | 0) | 0) >> 2] = 40;
         HEAP32[(__gm_ + 28 | 0) >> 2] = HEAP32[(_mparams + 16 | 0) >> 2];
         HEAP32[($1336 + 4 | 0) >> 2] = 27;
         HEAP32[$1337 >> 2] = HEAP32[(__gm_ + 444 | 0) >> 2];
         HEAP32[$1337 + 4 >> 2] = HEAP32[(__gm_ + 444 | 0) + 4 >> 2];
         HEAP32[$1337 + 8 >> 2] = HEAP32[(__gm_ + 444 | 0) + 8 >> 2];
         HEAP32[$1337 + 12 >> 2] = HEAP32[(__gm_ + 444 | 0) + 12 >> 2];
         HEAP32[(__gm_ + 444 | 0) >> 2] = $tbase_243_i;
         HEAP32[(__gm_ + 448 | 0) >> 2] = $tsize_242_i;
         HEAP32[(__gm_ + 456 | 0) >> 2] = 0;
         HEAP32[(__gm_ + 452 | 0) >> 2] = $1337;
         var $1360 = $1336 + 28 | 0;
         HEAP32[$1360 >> 2] = 7;
         $_$426 : do {
          if (($1336 + 32 | 0) >>> 0 < $1322 >>> 0) {
           var $1363 = $1360;
           while (1) {
            var $1363;
            var $1364 = $1363 + 4 | 0;
            HEAP32[$1364 >> 2] = 7;
            if (!(($1363 + 8 | 0) >>> 0 < $1322 >>> 0)) {
             break $_$426;
            }
            var $1363 = $1364;
           }
          }
         } while (0);
         if (($1336 | 0) == ($1306 | 0)) {
          break;
         }
         var $1372 = $1336 - $876 | 0;
         var $1375 = $1306 + ($1372 + 4 | 0) | 0;
         HEAP32[$1375 >> 2] = HEAP32[$1375 >> 2] & -2;
         HEAP32[($876 + 4 | 0) >> 2] = $1372 | 1;
         HEAP32[($1306 + $1372 | 0) >> 2] = $1372;
         if ($1372 >>> 0 < 256) {
          var $1385 = $1372 >>> 2 & 1073741822;
          var $1387 = __gm_ + 40 + ($1385 << 2) | 0;
          var $1388 = HEAPU32[(__gm_ | 0) >> 2];
          var $1389 = 1 << ($1372 >>> 3);
          do {
           if (($1388 & $1389 | 0) == 0) {
            HEAP32[(__gm_ | 0) >> 2] = $1388 | $1389;
            var $F_0_i_i = $1387;
            var $_pre_phi_i_i = __gm_ + 40 + (($1385 + 2 | 0) << 2) | 0;
           } else {
            var $1395 = __gm_ + 40 + (($1385 + 2 | 0) << 2) | 0;
            var $1396 = HEAPU32[$1395 >> 2];
            if (!($1396 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
             var $F_0_i_i = $1396;
             var $_pre_phi_i_i = $1395;
             break;
            }
            _abort();
           }
          } while (0);
          var $_pre_phi_i_i;
          var $F_0_i_i;
          HEAP32[$_pre_phi_i_i >> 2] = $876;
          HEAP32[($F_0_i_i + 12 | 0) >> 2] = $876;
          HEAP32[($876 + 8 | 0) >> 2] = $F_0_i_i;
          HEAP32[($876 + 12 | 0) >> 2] = $1387;
         } else {
          var $1406 = $876;
          var $1407 = $1372 >>> 8;
          do {
           if (($1407 | 0) == 0) {
            var $I1_0_i_i = 0;
           } else {
            if ($1372 >>> 0 > 16777215) {
             var $I1_0_i_i = 31;
             break;
            }
            var $1414 = ($1407 + 1048320 | 0) >>> 16 & 8;
            var $1415 = $1407 << $1414;
            var $1418 = ($1415 + 520192 | 0) >>> 16 & 4;
            var $1419 = $1415 << $1418;
            var $1422 = ($1419 + 245760 | 0) >>> 16 & 2;
            var $1428 = (14 - ($1418 | $1414 | $1422) | 0) + ($1419 << $1422 >>> 15) | 0;
            var $I1_0_i_i = $1372 >>> (($1428 + 7 | 0) >>> 0) & 1 | $1428 << 1;
           }
          } while (0);
          var $I1_0_i_i;
          var $1435 = __gm_ + 304 + ($I1_0_i_i << 2) | 0;
          HEAP32[($876 + 28 | 0) >> 2] = $I1_0_i_i;
          HEAP32[($876 + 20 | 0) >> 2] = 0;
          HEAP32[($876 + 16 | 0) >> 2] = 0;
          var $1439 = HEAP32[(__gm_ + 4 | 0) >> 2];
          var $1440 = 1 << $I1_0_i_i;
          if (($1439 & $1440 | 0) == 0) {
           HEAP32[(__gm_ + 4 | 0) >> 2] = $1439 | $1440;
           HEAP32[$1435 >> 2] = $1406;
           HEAP32[($876 + 24 | 0) >> 2] = $1435;
           HEAP32[($876 + 12 | 0) >> 2] = $876;
           HEAP32[($876 + 8 | 0) >> 2] = $876;
          } else {
           if (($I1_0_i_i | 0) == 31) {
            var $1455 = 0;
           } else {
            var $1455 = 25 - ($I1_0_i_i >>> 1) | 0;
           }
           var $1455;
           var $K2_0_i_i = $1372 << $1455;
           var $T_0_i_i = HEAP32[$1435 >> 2];
           while (1) {
            var $T_0_i_i;
            var $K2_0_i_i;
            if ((HEAP32[($T_0_i_i + 4 | 0) >> 2] & -8 | 0) == ($1372 | 0)) {
             var $1478 = $T_0_i_i + 8 | 0;
             var $1479 = HEAPU32[$1478 >> 2];
             var $1481 = HEAPU32[(__gm_ + 16 | 0) >> 2];
             do {
              if (!($T_0_i_i >>> 0 < $1481 >>> 0)) {
               if ($1479 >>> 0 < $1481 >>> 0) {
                break;
               }
               HEAP32[($1479 + 12 | 0) >> 2] = $1406;
               HEAP32[$1478 >> 2] = $1406;
               HEAP32[($876 + 8 | 0) >> 2] = $1479;
               HEAP32[($876 + 12 | 0) >> 2] = $T_0_i_i;
               HEAP32[($876 + 24 | 0) >> 2] = 0;
               break $_$275;
              }
             } while (0);
             _abort();
            } else {
             var $1464 = $T_0_i_i + 16 + ($K2_0_i_i >>> 31 << 2) | 0;
             var $1465 = HEAPU32[$1464 >> 2];
             if (!(($1465 | 0) == 0)) {
              var $K2_0_i_i = $K2_0_i_i << 1;
              var $T_0_i_i = $1465;
              continue;
             }
             if (!($1464 >>> 0 < HEAPU32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
              HEAP32[$1464 >> 2] = $1406;
              HEAP32[($876 + 24 | 0) >> 2] = $T_0_i_i;
              HEAP32[($876 + 12 | 0) >> 2] = $876;
              HEAP32[($876 + 8 | 0) >> 2] = $876;
              break $_$275;
             }
             _abort();
            }
           }
          }
         }
        }
       } while (0);
       var $1491 = HEAPU32[(__gm_ + 12 | 0) >> 2];
       if (!($1491 >>> 0 > $nb_0 >>> 0)) {
        break;
       }
       var $1494 = $1491 - $nb_0 | 0;
       HEAP32[(__gm_ + 12 | 0) >> 2] = $1494;
       var $1495 = HEAPU32[(__gm_ + 24 | 0) >> 2];
       var $1496 = $1495;
       HEAP32[(__gm_ + 24 | 0) >> 2] = $1496 + $nb_0 | 0;
       HEAP32[($1496 + ($nb_0 + 4 | 0) | 0) >> 2] = $1494 | 1;
       HEAP32[($1495 + 4 | 0) >> 2] = $nb_0 | 3;
       var $mem_0 = $1495 + 8 | 0;
       break $_$215;
      }
     } while (0);
     HEAP32[___errno() >> 2] = 12;
     var $mem_0 = 0;
    }
   } else {
    var $706 = $703 - $nb_0 | 0;
    var $707 = HEAPU32[(__gm_ + 20 | 0) >> 2];
    if ($706 >>> 0 > 15) {
     var $710 = $707;
     HEAP32[(__gm_ + 20 | 0) >> 2] = $710 + $nb_0 | 0;
     HEAP32[(__gm_ + 8 | 0) >> 2] = $706;
     HEAP32[($710 + ($nb_0 + 4 | 0) | 0) >> 2] = $706 | 1;
     HEAP32[($710 + $703 | 0) >> 2] = $706;
     HEAP32[($707 + 4 | 0) >> 2] = $nb_0 | 3;
    } else {
     HEAP32[(__gm_ + 8 | 0) >> 2] = 0;
     HEAP32[(__gm_ + 20 | 0) >> 2] = 0;
     HEAP32[($707 + 4 | 0) >> 2] = $703 | 3;
     var $725 = $707 + ($703 + 4 | 0) | 0;
     HEAP32[$725 >> 2] = HEAP32[$725 >> 2] | 1;
    }
    var $mem_0 = $707 + 8 | 0;
   }
  }
 } while (0);
 var $mem_0;
 return $mem_0;
}
function _mallocNoU($bytes) {
 var __label__;
 $_$2 : do {
  if ($bytes >>> 0 < 245) {
   if ($bytes >>> 0 < 11) {
    var $8 = 16;
   } else {
    var $8 = ($bytes + 11 | 0) & -8;
   }
   var $8;
   var $9 = $8 >>> 3;
   var $10 = HEAP32[(__gm_ | 0) >> 2];
   var $11 = $10 >>> ($9 >>> 0);
   if (!(($11 & 3 | 0) == 0)) {
    var $17 = ($11 & 1 ^ 1) + $9 | 0;
    var $18 = $17 << 1;
    var $20 = __gm_ + 40 + ($18 << 2) | 0;
    var $21 = __gm_ + 40 + (($18 + 2 | 0) << 2) | 0;
    var $22 = HEAP32[$21 >> 2];
    var $23 = $22 + 8 | 0;
    var $24 = HEAP32[$23 >> 2];
    if (($20 | 0) == ($24 | 0)) {
     HEAP32[(__gm_ | 0) >> 2] = $10 & (1 << $17 ^ -1);
    } else {
     if ($24 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
      _abort();
     } else {
      HEAP32[$21 >> 2] = $24;
      HEAP32[($24 + 12 | 0) >> 2] = $20;
     }
    }
    var $38 = $17 << 3;
    HEAP32[($22 + 4 | 0) >> 2] = $38 | 3;
    var $43 = $22 + ($38 | 4) | 0;
    HEAP32[$43 >> 2] = HEAP32[$43 >> 2] | 1;
    var $mem_0 = $23;
    __label__ = 331;
    break;
   }
   if (!($8 >>> 0 > HEAP32[(__gm_ + 8 | 0) >> 2] >>> 0)) {
    var $nb_0 = $8;
    __label__ = 155;
    break;
   }
   if (!(($11 | 0) == 0)) {
    var $54 = 2 << $9;
    var $57 = $11 << $9 & ($54 | (-$54 | 0));
    var $60 = ($57 & (-$57 | 0)) - 1 | 0;
    var $62 = $60 >>> 12 & 16;
    var $63 = $60 >>> ($62 >>> 0);
    var $65 = $63 >>> 5 & 8;
    var $66 = $63 >>> ($65 >>> 0);
    var $68 = $66 >>> 2 & 4;
    var $69 = $66 >>> ($68 >>> 0);
    var $71 = $69 >>> 1 & 2;
    var $72 = $69 >>> ($71 >>> 0);
    var $74 = $72 >>> 1 & 1;
    var $80 = ($65 | $62 | $68 | $71 | $74) + ($72 >>> ($74 >>> 0)) | 0;
    var $81 = $80 << 1;
    var $83 = __gm_ + 40 + ($81 << 2) | 0;
    var $84 = __gm_ + 40 + (($81 + 2 | 0) << 2) | 0;
    var $85 = HEAP32[$84 >> 2];
    var $86 = $85 + 8 | 0;
    var $87 = HEAP32[$86 >> 2];
    if (($83 | 0) == ($87 | 0)) {
     HEAP32[(__gm_ | 0) >> 2] = $10 & (1 << $80 ^ -1);
    } else {
     if ($87 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
      _abort();
     } else {
      HEAP32[$84 >> 2] = $87;
      HEAP32[($87 + 12 | 0) >> 2] = $83;
     }
    }
    var $101 = $80 << 3;
    var $102 = $101 - $8 | 0;
    HEAP32[($85 + 4 | 0) >> 2] = $8 | 3;
    var $105 = $85;
    var $107 = $105 + $8 | 0;
    HEAP32[($105 + ($8 | 4) | 0) >> 2] = $102 | 1;
    HEAP32[($105 + $101 | 0) >> 2] = $102;
    var $113 = HEAP32[(__gm_ + 8 | 0) >> 2];
    if (!(($113 | 0) == 0)) {
     var $116 = HEAP32[(__gm_ + 20 | 0) >> 2];
     var $119 = $113 >>> 2 & 1073741822;
     var $121 = __gm_ + 40 + ($119 << 2) | 0;
     var $122 = HEAP32[(__gm_ | 0) >> 2];
     var $123 = 1 << ($113 >>> 3);
     do {
      if (($122 & $123 | 0) == 0) {
       HEAP32[(__gm_ | 0) >> 2] = $122 | $123;
       var $F4_0 = $121;
       var $_pre_phi = __gm_ + 40 + (($119 + 2 | 0) << 2) | 0;
      } else {
       var $129 = __gm_ + 40 + (($119 + 2 | 0) << 2) | 0;
       var $130 = HEAP32[$129 >> 2];
       if (!($130 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
        var $F4_0 = $130;
        var $_pre_phi = $129;
        break;
       }
       _abort();
      }
     } while (0);
     var $_pre_phi;
     var $F4_0;
     HEAP32[$_pre_phi >> 2] = $116;
     HEAP32[($F4_0 + 12 | 0) >> 2] = $116;
     HEAP32[($116 + 8 | 0) >> 2] = $F4_0;
     HEAP32[($116 + 12 | 0) >> 2] = $121;
    }
    HEAP32[(__gm_ + 8 | 0) >> 2] = $102;
    HEAP32[(__gm_ + 20 | 0) >> 2] = $107;
    var $mem_0 = $86;
    __label__ = 331;
    break;
   }
   var $142 = HEAP32[(__gm_ + 4 | 0) >> 2];
   if (($142 | 0) == 0) {
    var $nb_0 = $8;
    __label__ = 155;
    break;
   }
   var $147 = ($142 & (-$142 | 0)) - 1 | 0;
   var $149 = $147 >>> 12 & 16;
   var $150 = $147 >>> ($149 >>> 0);
   var $152 = $150 >>> 5 & 8;
   var $153 = $150 >>> ($152 >>> 0);
   var $155 = $153 >>> 2 & 4;
   var $156 = $153 >>> ($155 >>> 0);
   var $158 = $156 >>> 1 & 2;
   var $159 = $156 >>> ($158 >>> 0);
   var $161 = $159 >>> 1 & 1;
   var $169 = HEAP32[(__gm_ + 304 + ((($152 | $149 | $155 | $158 | $161) + ($159 >>> ($161 >>> 0)) | 0) << 2) | 0) >> 2];
   var $t_0_i = $169;
   var $v_0_i = $169;
   var $rsize_0_i = (HEAP32[($169 + 4 | 0) >> 2] & -8) - $8 | 0;
   while (1) {
    var $rsize_0_i;
    var $v_0_i;
    var $t_0_i;
    var $176 = HEAP32[($t_0_i + 16 | 0) >> 2];
    if (($176 | 0) == 0) {
     var $180 = HEAP32[($t_0_i + 20 | 0) >> 2];
     if (($180 | 0) == 0) {
      break;
     }
     var $182 = $180;
    } else {
     var $182 = $176;
    }
    var $182;
    var $186 = (HEAP32[($182 + 4 | 0) >> 2] & -8) - $8 | 0;
    var $187 = $186 >>> 0 < $rsize_0_i >>> 0;
    var $t_0_i = $182;
    var $v_0_i = $187 ? $182 : $v_0_i;
    var $rsize_0_i = $187 ? $186 : $rsize_0_i;
   }
   var $189 = $v_0_i;
   var $190 = HEAP32[(__gm_ + 16 | 0) >> 2];
   do {
    if (!($189 >>> 0 < $190 >>> 0)) {
     var $193 = $189 + $8 | 0;
     var $194 = $193;
     if (!($189 >>> 0 < $193 >>> 0)) {
      break;
     }
     var $198 = HEAP32[($v_0_i + 24 | 0) >> 2];
     var $200 = HEAP32[($v_0_i + 12 | 0) >> 2];
     do {
      if (($200 | 0) == ($v_0_i | 0)) {
       var $212 = $v_0_i + 20 | 0;
       var $213 = HEAP32[$212 >> 2];
       if (($213 | 0) == 0) {
        var $216 = $v_0_i + 16 | 0;
        var $217 = HEAP32[$216 >> 2];
        if (($217 | 0) == 0) {
         var $R_1_i = 0;
         break;
        }
        var $RP_0_i = $216;
        var $R_0_i = $217;
       } else {
        var $RP_0_i = $212;
        var $R_0_i = $213;
        __label__ = 39;
       }
       while (1) {
        var $R_0_i;
        var $RP_0_i;
        var $219 = $R_0_i + 20 | 0;
        var $220 = HEAP32[$219 >> 2];
        if (!(($220 | 0) == 0)) {
         var $RP_0_i = $219;
         var $R_0_i = $220;
         continue;
        }
        var $223 = $R_0_i + 16 | 0;
        var $224 = HEAP32[$223 >> 2];
        if (($224 | 0) == 0) {
         break;
        }
        var $RP_0_i = $223;
        var $R_0_i = $224;
       }
       if ($RP_0_i >>> 0 < $190 >>> 0) {
        _abort();
       } else {
        HEAP32[$RP_0_i >> 2] = 0;
        var $R_1_i = $R_0_i;
       }
      } else {
       var $204 = HEAP32[($v_0_i + 8 | 0) >> 2];
       if ($204 >>> 0 < $190 >>> 0) {
        _abort();
       } else {
        HEAP32[($204 + 12 | 0) >> 2] = $200;
        HEAP32[($200 + 8 | 0) >> 2] = $204;
        var $R_1_i = $200;
       }
      }
     } while (0);
     var $R_1_i;
     $_$62 : do {
      if (!(($198 | 0) == 0)) {
       var $234 = $v_0_i + 28 | 0;
       var $236 = __gm_ + 304 + (HEAP32[$234 >> 2] << 2) | 0;
       do {
        if (($v_0_i | 0) == (HEAP32[$236 >> 2] | 0)) {
         HEAP32[$236 >> 2] = $R_1_i;
         if (!(($R_1_i | 0) == 0)) {
          break;
         }
         HEAP32[(__gm_ + 4 | 0) >> 2] = HEAP32[(__gm_ + 4 | 0) >> 2] & (1 << HEAP32[$234 >> 2] ^ -1);
         break $_$62;
        }
        if ($198 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
         _abort();
        } else {
         var $250 = $198 + 16 | 0;
         if ((HEAP32[$250 >> 2] | 0) == ($v_0_i | 0)) {
          HEAP32[$250 >> 2] = $R_1_i;
         } else {
          HEAP32[($198 + 20 | 0) >> 2] = $R_1_i;
         }
         if (($R_1_i | 0) == 0) {
          break $_$62;
         }
        }
       } while (0);
       if ($R_1_i >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
        _abort();
       } else {
        HEAP32[($R_1_i + 24 | 0) >> 2] = $198;
        var $266 = HEAP32[($v_0_i + 16 | 0) >> 2];
        if (!(($266 | 0) == 0)) {
         if ($266 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
          _abort();
         } else {
          HEAP32[($R_1_i + 16 | 0) >> 2] = $266;
          HEAP32[($266 + 24 | 0) >> 2] = $R_1_i;
         }
        }
        var $278 = HEAP32[($v_0_i + 20 | 0) >> 2];
        if (($278 | 0) == 0) {
         break;
        }
        if ($278 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
         _abort();
        } else {
         HEAP32[($R_1_i + 20 | 0) >> 2] = $278;
         HEAP32[($278 + 24 | 0) >> 2] = $R_1_i;
        }
       }
      }
     } while (0);
     if ($rsize_0_i >>> 0 < 16) {
      var $292 = $rsize_0_i + $8 | 0;
      HEAP32[($v_0_i + 4 | 0) >> 2] = $292 | 3;
      var $296 = $189 + ($292 + 4 | 0) | 0;
      HEAP32[$296 >> 2] = HEAP32[$296 >> 2] | 1;
     } else {
      HEAP32[($v_0_i + 4 | 0) >> 2] = $8 | 3;
      HEAP32[($189 + ($8 | 4) | 0) >> 2] = $rsize_0_i | 1;
      HEAP32[($189 + ($rsize_0_i + $8 | 0) | 0) >> 2] = $rsize_0_i;
      var $307 = HEAP32[(__gm_ + 8 | 0) >> 2];
      if (!(($307 | 0) == 0)) {
       var $310 = HEAP32[(__gm_ + 20 | 0) >> 2];
       var $313 = $307 >>> 2 & 1073741822;
       var $315 = __gm_ + 40 + ($313 << 2) | 0;
       var $316 = HEAP32[(__gm_ | 0) >> 2];
       var $317 = 1 << ($307 >>> 3);
       do {
        if (($316 & $317 | 0) == 0) {
         HEAP32[(__gm_ | 0) >> 2] = $316 | $317;
         var $F1_0_i = $315;
         var $_pre_phi_i = __gm_ + 40 + (($313 + 2 | 0) << 2) | 0;
        } else {
         var $323 = __gm_ + 40 + (($313 + 2 | 0) << 2) | 0;
         var $324 = HEAP32[$323 >> 2];
         if (!($324 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
          var $F1_0_i = $324;
          var $_pre_phi_i = $323;
          break;
         }
         _abort();
        }
       } while (0);
       var $_pre_phi_i;
       var $F1_0_i;
       HEAP32[$_pre_phi_i >> 2] = $310;
       HEAP32[($F1_0_i + 12 | 0) >> 2] = $310;
       HEAP32[($310 + 8 | 0) >> 2] = $F1_0_i;
       HEAP32[($310 + 12 | 0) >> 2] = $315;
      }
      HEAP32[(__gm_ + 8 | 0) >> 2] = $rsize_0_i;
      HEAP32[(__gm_ + 20 | 0) >> 2] = $194;
     }
     var $335 = $v_0_i + 8 | 0;
     if (($335 | 0) == 0) {
      var $nb_0 = $8;
      __label__ = 155;
      break $_$2;
     }
     var $mem_0 = $335;
     __label__ = 331;
     break $_$2;
    }
   } while (0);
   _abort();
  } else {
   if ($bytes >>> 0 > 4294967231) {
    var $nb_0 = -1;
    __label__ = 155;
    break;
   }
   var $341 = $bytes + 11 | 0;
   var $342 = $341 & -8;
   var $343 = HEAP32[(__gm_ + 4 | 0) >> 2];
   if (($343 | 0) == 0) {
    var $nb_0 = $342;
    __label__ = 155;
    break;
   }
   var $346 = -$342 | 0;
   var $347 = $341 >>> 8;
   do {
    if (($347 | 0) == 0) {
     var $idx_0_i = 0;
    } else {
     if ($342 >>> 0 > 16777215) {
      var $idx_0_i = 31;
      break;
     }
     var $354 = ($347 + 1048320 | 0) >>> 16 & 8;
     var $355 = $347 << $354;
     var $358 = ($355 + 520192 | 0) >>> 16 & 4;
     var $359 = $355 << $358;
     var $362 = ($359 + 245760 | 0) >>> 16 & 2;
     var $368 = (14 - ($358 | $354 | $362) | 0) + ($359 << $362 >>> 15) | 0;
     var $idx_0_i = $342 >>> (($368 + 7 | 0) >>> 0) & 1 | $368 << 1;
    }
   } while (0);
   var $idx_0_i;
   var $376 = HEAP32[(__gm_ + 304 + ($idx_0_i << 2) | 0) >> 2];
   $_$110 : do {
    if (($376 | 0) == 0) {
     var $v_2_i = 0;
     var $rsize_2_i = $346;
     var $t_1_i = 0;
    } else {
     if (($idx_0_i | 0) == 31) {
      var $384 = 0;
     } else {
      var $384 = 25 - ($idx_0_i >>> 1) | 0;
     }
     var $384;
     var $v_0_i15 = 0;
     var $rsize_0_i14 = $346;
     var $t_0_i13 = $376;
     var $sizebits_0_i = $342 << $384;
     var $rst_0_i = 0;
     while (1) {
      var $rst_0_i;
      var $sizebits_0_i;
      var $t_0_i13;
      var $rsize_0_i14;
      var $v_0_i15;
      var $389 = HEAP32[($t_0_i13 + 4 | 0) >> 2] & -8;
      var $390 = $389 - $342 | 0;
      if ($390 >>> 0 < $rsize_0_i14 >>> 0) {
       if (($389 | 0) == ($342 | 0)) {
        var $v_2_i = $t_0_i13;
        var $rsize_2_i = $390;
        var $t_1_i = $t_0_i13;
        break $_$110;
       }
       var $v_1_i = $t_0_i13;
       var $rsize_1_i = $390;
      } else {
       var $v_1_i = $v_0_i15;
       var $rsize_1_i = $rsize_0_i14;
      }
      var $rsize_1_i;
      var $v_1_i;
      var $396 = HEAP32[($t_0_i13 + 20 | 0) >> 2];
      var $399 = HEAP32[($t_0_i13 + 16 + ($sizebits_0_i >>> 31 << 2) | 0) >> 2];
      var $rst_1_i = ($396 | 0) == 0 | ($396 | 0) == ($399 | 0) ? $rst_0_i : $396;
      if (($399 | 0) == 0) {
       var $v_2_i = $v_1_i;
       var $rsize_2_i = $rsize_1_i;
       var $t_1_i = $rst_1_i;
       break $_$110;
      }
      var $v_0_i15 = $v_1_i;
      var $rsize_0_i14 = $rsize_1_i;
      var $t_0_i13 = $399;
      var $sizebits_0_i = $sizebits_0_i << 1;
      var $rst_0_i = $rst_1_i;
     }
    }
   } while (0);
   var $t_1_i;
   var $rsize_2_i;
   var $v_2_i;
   if (($t_1_i | 0) == 0 & ($v_2_i | 0) == 0) {
    var $407 = 2 << $idx_0_i;
    var $410 = $343 & ($407 | (-$407 | 0));
    if (($410 | 0) == 0) {
     var $nb_0 = $342;
     __label__ = 155;
     break;
    }
    var $415 = ($410 & (-$410 | 0)) - 1 | 0;
    var $417 = $415 >>> 12 & 16;
    var $418 = $415 >>> ($417 >>> 0);
    var $420 = $418 >>> 5 & 8;
    var $421 = $418 >>> ($420 >>> 0);
    var $423 = $421 >>> 2 & 4;
    var $424 = $421 >>> ($423 >>> 0);
    var $426 = $424 >>> 1 & 2;
    var $427 = $424 >>> ($426 >>> 0);
    var $429 = $427 >>> 1 & 1;
    var $t_2_ph_i = HEAP32[(__gm_ + 304 + ((($420 | $417 | $423 | $426 | $429) + ($427 >>> ($429 >>> 0)) | 0) << 2) | 0) >> 2];
   } else {
    var $t_2_ph_i = $t_1_i;
   }
   var $t_2_ph_i;
   $_$125 : do {
    if (($t_2_ph_i | 0) == 0) {
     var $rsize_3_lcssa_i = $rsize_2_i;
     var $v_3_lcssa_i = $v_2_i;
    } else {
     var $t_224_i = $t_2_ph_i;
     var $rsize_325_i = $rsize_2_i;
     var $v_326_i = $v_2_i;
     while (1) {
      var $v_326_i;
      var $rsize_325_i;
      var $t_224_i;
      var $442 = (HEAP32[($t_224_i + 4 | 0) >> 2] & -8) - $342 | 0;
      var $443 = $442 >>> 0 < $rsize_325_i >>> 0;
      var $_rsize_3_i = $443 ? $442 : $rsize_325_i;
      var $t_2_v_3_i = $443 ? $t_224_i : $v_326_i;
      var $445 = HEAP32[($t_224_i + 16 | 0) >> 2];
      if (!(($445 | 0) == 0)) {
       var $t_224_i = $445;
       var $rsize_325_i = $_rsize_3_i;
       var $v_326_i = $t_2_v_3_i;
       continue;
      }
      var $448 = HEAP32[($t_224_i + 20 | 0) >> 2];
      if (($448 | 0) == 0) {
       var $rsize_3_lcssa_i = $_rsize_3_i;
       var $v_3_lcssa_i = $t_2_v_3_i;
       break $_$125;
      }
      var $t_224_i = $448;
      var $rsize_325_i = $_rsize_3_i;
      var $v_326_i = $t_2_v_3_i;
     }
    }
   } while (0);
   var $v_3_lcssa_i;
   var $rsize_3_lcssa_i;
   if (($v_3_lcssa_i | 0) == 0) {
    var $nb_0 = $342;
    __label__ = 155;
    break;
   }
   if (!($rsize_3_lcssa_i >>> 0 < (HEAP32[(__gm_ + 8 | 0) >> 2] - $342 | 0) >>> 0)) {
    var $nb_0 = $342;
    __label__ = 155;
    break;
   }
   var $456 = $v_3_lcssa_i;
   var $457 = HEAP32[(__gm_ + 16 | 0) >> 2];
   do {
    if (!($456 >>> 0 < $457 >>> 0)) {
     var $460 = $456 + $342 | 0;
     var $461 = $460;
     if (!($456 >>> 0 < $460 >>> 0)) {
      break;
     }
     var $465 = HEAP32[($v_3_lcssa_i + 24 | 0) >> 2];
     var $467 = HEAP32[($v_3_lcssa_i + 12 | 0) >> 2];
     do {
      if (($467 | 0) == ($v_3_lcssa_i | 0)) {
       var $479 = $v_3_lcssa_i + 20 | 0;
       var $480 = HEAP32[$479 >> 2];
       if (($480 | 0) == 0) {
        var $483 = $v_3_lcssa_i + 16 | 0;
        var $484 = HEAP32[$483 >> 2];
        if (($484 | 0) == 0) {
         var $R_1_i19 = 0;
         break;
        }
        var $RP_0_i17 = $483;
        var $R_0_i16 = $484;
       } else {
        var $RP_0_i17 = $479;
        var $R_0_i16 = $480;
        __label__ = 103;
       }
       while (1) {
        var $R_0_i16;
        var $RP_0_i17;
        var $486 = $R_0_i16 + 20 | 0;
        var $487 = HEAP32[$486 >> 2];
        if (!(($487 | 0) == 0)) {
         var $RP_0_i17 = $486;
         var $R_0_i16 = $487;
         continue;
        }
        var $490 = $R_0_i16 + 16 | 0;
        var $491 = HEAP32[$490 >> 2];
        if (($491 | 0) == 0) {
         break;
        }
        var $RP_0_i17 = $490;
        var $R_0_i16 = $491;
       }
       if ($RP_0_i17 >>> 0 < $457 >>> 0) {
        _abort();
       } else {
        HEAP32[$RP_0_i17 >> 2] = 0;
        var $R_1_i19 = $R_0_i16;
       }
      } else {
       var $471 = HEAP32[($v_3_lcssa_i + 8 | 0) >> 2];
       if ($471 >>> 0 < $457 >>> 0) {
        _abort();
       } else {
        HEAP32[($471 + 12 | 0) >> 2] = $467;
        HEAP32[($467 + 8 | 0) >> 2] = $471;
        var $R_1_i19 = $467;
       }
      }
     } while (0);
     var $R_1_i19;
     $_$151 : do {
      if (!(($465 | 0) == 0)) {
       var $501 = $v_3_lcssa_i + 28 | 0;
       var $503 = __gm_ + 304 + (HEAP32[$501 >> 2] << 2) | 0;
       do {
        if (($v_3_lcssa_i | 0) == (HEAP32[$503 >> 2] | 0)) {
         HEAP32[$503 >> 2] = $R_1_i19;
         if (!(($R_1_i19 | 0) == 0)) {
          break;
         }
         HEAP32[(__gm_ + 4 | 0) >> 2] = HEAP32[(__gm_ + 4 | 0) >> 2] & (1 << HEAP32[$501 >> 2] ^ -1);
         break $_$151;
        }
        if ($465 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
         _abort();
        } else {
         var $517 = $465 + 16 | 0;
         if ((HEAP32[$517 >> 2] | 0) == ($v_3_lcssa_i | 0)) {
          HEAP32[$517 >> 2] = $R_1_i19;
         } else {
          HEAP32[($465 + 20 | 0) >> 2] = $R_1_i19;
         }
         if (($R_1_i19 | 0) == 0) {
          break $_$151;
         }
        }
       } while (0);
       if ($R_1_i19 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
        _abort();
       } else {
        HEAP32[($R_1_i19 + 24 | 0) >> 2] = $465;
        var $533 = HEAP32[($v_3_lcssa_i + 16 | 0) >> 2];
        if (!(($533 | 0) == 0)) {
         if ($533 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
          _abort();
         } else {
          HEAP32[($R_1_i19 + 16 | 0) >> 2] = $533;
          HEAP32[($533 + 24 | 0) >> 2] = $R_1_i19;
         }
        }
        var $545 = HEAP32[($v_3_lcssa_i + 20 | 0) >> 2];
        if (($545 | 0) == 0) {
         break;
        }
        if ($545 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
         _abort();
        } else {
         HEAP32[($R_1_i19 + 20 | 0) >> 2] = $545;
         HEAP32[($545 + 24 | 0) >> 2] = $R_1_i19;
        }
       }
      }
     } while (0);
     $_$179 : do {
      if ($rsize_3_lcssa_i >>> 0 < 16) {
       var $559 = $rsize_3_lcssa_i + $342 | 0;
       HEAP32[($v_3_lcssa_i + 4 | 0) >> 2] = $559 | 3;
       var $563 = $456 + ($559 + 4 | 0) | 0;
       HEAP32[$563 >> 2] = HEAP32[$563 >> 2] | 1;
      } else {
       HEAP32[($v_3_lcssa_i + 4 | 0) >> 2] = $342 | 3;
       HEAP32[($456 + ($342 | 4) | 0) >> 2] = $rsize_3_lcssa_i | 1;
       HEAP32[($456 + ($rsize_3_lcssa_i + $342 | 0) | 0) >> 2] = $rsize_3_lcssa_i;
       if ($rsize_3_lcssa_i >>> 0 < 256) {
        var $578 = $rsize_3_lcssa_i >>> 2 & 1073741822;
        var $580 = __gm_ + 40 + ($578 << 2) | 0;
        var $581 = HEAP32[(__gm_ | 0) >> 2];
        var $582 = 1 << ($rsize_3_lcssa_i >>> 3);
        do {
         if (($581 & $582 | 0) == 0) {
          HEAP32[(__gm_ | 0) >> 2] = $581 | $582;
          var $F5_0_i = $580;
          var $_pre_phi_i25 = __gm_ + 40 + (($578 + 2 | 0) << 2) | 0;
         } else {
          var $588 = __gm_ + 40 + (($578 + 2 | 0) << 2) | 0;
          var $589 = HEAP32[$588 >> 2];
          if (!($589 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
           var $F5_0_i = $589;
           var $_pre_phi_i25 = $588;
           break;
          }
          _abort();
         }
        } while (0);
        var $_pre_phi_i25;
        var $F5_0_i;
        HEAP32[$_pre_phi_i25 >> 2] = $461;
        HEAP32[($F5_0_i + 12 | 0) >> 2] = $461;
        HEAP32[($456 + ($342 + 8 | 0) | 0) >> 2] = $F5_0_i;
        HEAP32[($456 + ($342 + 12 | 0) | 0) >> 2] = $580;
       } else {
        var $601 = $460;
        var $602 = $rsize_3_lcssa_i >>> 8;
        do {
         if (($602 | 0) == 0) {
          var $I7_0_i = 0;
         } else {
          if ($rsize_3_lcssa_i >>> 0 > 16777215) {
           var $I7_0_i = 31;
           break;
          }
          var $609 = ($602 + 1048320 | 0) >>> 16 & 8;
          var $610 = $602 << $609;
          var $613 = ($610 + 520192 | 0) >>> 16 & 4;
          var $614 = $610 << $613;
          var $617 = ($614 + 245760 | 0) >>> 16 & 2;
          var $623 = (14 - ($613 | $609 | $617) | 0) + ($614 << $617 >>> 15) | 0;
          var $I7_0_i = $rsize_3_lcssa_i >>> (($623 + 7 | 0) >>> 0) & 1 | $623 << 1;
         }
        } while (0);
        var $I7_0_i;
        var $630 = __gm_ + 304 + ($I7_0_i << 2) | 0;
        HEAP32[($456 + ($342 + 28 | 0) | 0) >> 2] = $I7_0_i;
        HEAP32[($456 + ($342 + 20 | 0) | 0) >> 2] = 0;
        HEAP32[($456 + ($342 + 16 | 0) | 0) >> 2] = 0;
        var $637 = HEAP32[(__gm_ + 4 | 0) >> 2];
        var $638 = 1 << $I7_0_i;
        if (($637 & $638 | 0) == 0) {
         HEAP32[(__gm_ + 4 | 0) >> 2] = $637 | $638;
         HEAP32[$630 >> 2] = $601;
         HEAP32[($456 + ($342 + 24 | 0) | 0) >> 2] = $630;
         HEAP32[($456 + ($342 + 12 | 0) | 0) >> 2] = $601;
         HEAP32[($456 + ($342 + 8 | 0) | 0) >> 2] = $601;
        } else {
         if (($I7_0_i | 0) == 31) {
          var $657 = 0;
         } else {
          var $657 = 25 - ($I7_0_i >>> 1) | 0;
         }
         var $657;
         var $K12_0_i = $rsize_3_lcssa_i << $657;
         var $T_0_i = HEAP32[$630 >> 2];
         while (1) {
          var $T_0_i;
          var $K12_0_i;
          if ((HEAP32[($T_0_i + 4 | 0) >> 2] & -8 | 0) == ($rsize_3_lcssa_i | 0)) {
           var $683 = $T_0_i + 8 | 0;
           var $684 = HEAP32[$683 >> 2];
           var $686 = HEAP32[(__gm_ + 16 | 0) >> 2];
           do {
            if (!($T_0_i >>> 0 < $686 >>> 0)) {
             if ($684 >>> 0 < $686 >>> 0) {
              break;
             }
             HEAP32[($684 + 12 | 0) >> 2] = $601;
             HEAP32[$683 >> 2] = $601;
             HEAP32[($456 + ($342 + 8 | 0) | 0) >> 2] = $684;
             HEAP32[($456 + ($342 + 12 | 0) | 0) >> 2] = $T_0_i;
             HEAP32[($456 + ($342 + 24 | 0) | 0) >> 2] = 0;
             break $_$179;
            }
           } while (0);
           _abort();
          } else {
           var $666 = $T_0_i + 16 + ($K12_0_i >>> 31 << 2) | 0;
           var $667 = HEAP32[$666 >> 2];
           if (!(($667 | 0) == 0)) {
            var $K12_0_i = $K12_0_i << 1;
            var $T_0_i = $667;
            continue;
           }
           if (!($666 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
            HEAP32[$666 >> 2] = $601;
            HEAP32[($456 + ($342 + 24 | 0) | 0) >> 2] = $T_0_i;
            HEAP32[($456 + ($342 + 12 | 0) | 0) >> 2] = $601;
            HEAP32[($456 + ($342 + 8 | 0) | 0) >> 2] = $601;
            break $_$179;
           }
           _abort();
          }
         }
        }
       }
      }
     } while (0);
     var $700 = $v_3_lcssa_i + 8 | 0;
     if (($700 | 0) == 0) {
      var $nb_0 = $342;
      __label__ = 155;
      break $_$2;
     }
     var $mem_0 = $700;
     __label__ = 331;
     break $_$2;
    }
   } while (0);
   _abort();
  }
 } while (0);
 $_$215 : do {
  if (__label__ == 155) {
   var $nb_0;
   var $703 = HEAP32[(__gm_ + 8 | 0) >> 2];
   if ($nb_0 >>> 0 > $703 >>> 0) {
    var $732 = HEAP32[(__gm_ + 12 | 0) >> 2];
    if ($nb_0 >>> 0 < $732 >>> 0) {
     var $735 = $732 - $nb_0 | 0;
     HEAP32[(__gm_ + 12 | 0) >> 2] = $735;
     var $736 = HEAP32[(__gm_ + 24 | 0) >> 2];
     var $737 = $736;
     HEAP32[(__gm_ + 24 | 0) >> 2] = $737 + $nb_0 | 0;
     HEAP32[($737 + ($nb_0 + 4 | 0) | 0) >> 2] = $735 | 1;
     HEAP32[($736 + 4 | 0) >> 2] = $nb_0 | 3;
     var $mem_0 = $736 + 8 | 0;
    } else {
     do {
      if ((HEAP32[(_mparams | 0) >> 2] | 0) == 0) {
       if (!((HEAP32[(_mparams | 0) >> 2] | 0) == 0)) {
        break;
       }
       var $754 = _sysconf(8);
       if ((($754 - 1 | 0) & $754 | 0) == 0) {
        HEAP32[(_mparams + 8 | 0) >> 2] = $754;
        HEAP32[(_mparams + 4 | 0) >> 2] = $754;
        HEAP32[(_mparams + 12 | 0) >> 2] = -1;
        HEAP32[(_mparams + 16 | 0) >> 2] = 2097152;
        HEAP32[(_mparams + 20 | 0) >> 2] = 0;
        HEAP32[(__gm_ + 440 | 0) >> 2] = 0;
        var $762 = _time(0) & -16 ^ 1431655768;
        HEAP32[(_mparams | 0) >> 2] = $762;
       } else {
        _abort();
       }
      }
     } while (0);
     $_$234 : do {
      if ((HEAP32[(__gm_ + 440 | 0) >> 2] & 4 | 0) == 0) {
       var $767 = HEAP32[(__gm_ + 24 | 0) >> 2];
       $_$236 : do {
        if (!(($767 | 0) == 0)) {
         var $770 = $767;
         var $sp_0_i_i = __gm_ + 444 | 0;
         while (1) {
          var $sp_0_i_i;
          var $772 = $sp_0_i_i | 0;
          var $773 = HEAP32[$772 >> 2];
          if (!($773 >>> 0 > $770 >>> 0)) {
           var $776 = $sp_0_i_i + 4 | 0;
           if (($773 + HEAP32[$776 >> 2] | 0) >>> 0 > $770 >>> 0) {
            break;
           }
          }
          var $782 = HEAP32[($sp_0_i_i + 8 | 0) >> 2];
          if (($782 | 0) == 0) {
           __label__ = 174;
           break $_$236;
          }
          var $sp_0_i_i = $782;
         }
         if (($sp_0_i_i | 0) == 0) {
          __label__ = 174;
          break;
         }
         var $811 = HEAP32[(_mparams + 8 | 0) >> 2];
         var $816 = ((($nb_0 + 47 | 0) - HEAP32[(__gm_ + 12 | 0) >> 2] | 0) + $811 | 0) & (-$811 | 0);
         if (!($816 >>> 0 < 2147483647)) {
          var $tsize_0242932_ph_i = 0;
          __label__ = 189;
          break;
         }
         var $819 = _sbrk($816);
         var $823 = ($819 | 0) == (HEAP32[$772 >> 2] + HEAP32[$776 >> 2] | 0 | 0);
         var $tbase_0_i = $823 ? $819 : -1;
         var $tsize_0_i = $823 ? $816 : 0;
         var $asize_1_i = $816;
         var $br_0_i = $819;
         __label__ = 181;
         break;
        }
        __label__ = 174;
       } while (0);
       do {
        if (__label__ == 174) {
         var $785 = _sbrk(0);
         if (($785 | 0) == -1) {
          var $tsize_0242932_ph_i = 0;
          __label__ = 189;
          break;
         }
         var $788 = HEAP32[(_mparams + 8 | 0) >> 2];
         var $792 = (($nb_0 + 47 | 0) + $788 | 0) & (-$788 | 0);
         var $793 = $785;
         var $794 = HEAP32[(_mparams + 4 | 0) >> 2];
         var $795 = $794 - 1 | 0;
         if (($795 & $793 | 0) == 0) {
          var $asize_0_i = $792;
         } else {
          var $asize_0_i = ($792 - $793 | 0) + (($795 + $793 | 0) & (-$794 | 0)) | 0;
         }
         var $asize_0_i;
         if (!($asize_0_i >>> 0 < 2147483647)) {
          var $tsize_0242932_ph_i = 0;
          __label__ = 189;
          break;
         }
         var $807 = _sbrk($asize_0_i);
         var $808 = ($807 | 0) == ($785 | 0);
         var $tbase_0_i = $808 ? $785 : -1;
         var $tsize_0_i = $808 ? $asize_0_i : 0;
         var $asize_1_i = $asize_0_i;
         var $br_0_i = $807;
         __label__ = 181;
         break;
        }
       } while (0);
       $_$253 : do {
        if (__label__ == 181) {
         var $br_0_i;
         var $asize_1_i;
         var $tsize_0_i;
         var $tbase_0_i;
         var $825 = -$asize_1_i | 0;
         if (!(($tbase_0_i | 0) == -1)) {
          var $tsize_242_i = $tsize_0_i;
          var $tbase_243_i = $tbase_0_i;
          __label__ = 194;
          break $_$234;
         }
         do {
          if (($br_0_i | 0) != -1 & $asize_1_i >>> 0 < 2147483647) {
           if (!($asize_1_i >>> 0 < ($nb_0 + 48 | 0) >>> 0)) {
            var $asize_2_i = $asize_1_i;
            break;
           }
           var $834 = HEAP32[(_mparams + 8 | 0) >> 2];
           var $839 = ((($nb_0 + 47 | 0) - $asize_1_i | 0) + $834 | 0) & (-$834 | 0);
           if (!($839 >>> 0 < 2147483647)) {
            var $asize_2_i = $asize_1_i;
            break;
           }
           if ((_sbrk($839) | 0) == -1) {
            _sbrk($825);
            var $tsize_0242932_ph_i = $tsize_0_i;
            break $_$253;
           }
           var $asize_2_i = $839 + $asize_1_i | 0;
          } else {
           var $asize_2_i = $asize_1_i;
          }
         } while (0);
         var $asize_2_i;
         if (!(($br_0_i | 0) == -1)) {
          var $tsize_242_i = $asize_2_i;
          var $tbase_243_i = $br_0_i;
          __label__ = 194;
          break $_$234;
         }
         HEAP32[(__gm_ + 440 | 0) >> 2] = HEAP32[(__gm_ + 440 | 0) >> 2] | 4;
         var $tsize_137_i = $tsize_0_i;
         __label__ = 191;
         break $_$234;
        }
       } while (0);
       var $tsize_0242932_ph_i;
       HEAP32[(__gm_ + 440 | 0) >> 2] = HEAP32[(__gm_ + 440 | 0) >> 2] | 4;
       var $tsize_137_i = $tsize_0242932_ph_i;
       __label__ = 191;
       break;
      }
      var $tsize_137_i = 0;
      __label__ = 191;
     } while (0);
     do {
      if (__label__ == 191) {
       var $tsize_137_i;
       var $854 = HEAP32[(_mparams + 8 | 0) >> 2];
       var $858 = (($nb_0 + 47 | 0) + $854 | 0) & (-$854 | 0);
       if (!($858 >>> 0 < 2147483647)) {
        __label__ = 330;
        break;
       }
       var $861 = _sbrk($858);
       var $862 = _sbrk(0);
       if (!(($862 | 0) != -1 & ($861 | 0) != -1 & $861 >>> 0 < $862 >>> 0)) {
        __label__ = 330;
        break;
       }
       var $866 = $862 - $861 | 0;
       var $868 = $866 >>> 0 > ($nb_0 + 40 | 0) >>> 0;
       var $_tbase_1_i = $868 ? $861 : -1;
       if (($_tbase_1_i | 0) == -1) {
        __label__ = 330;
        break;
       }
       var $tsize_242_i = $868 ? $866 : $tsize_137_i;
       var $tbase_243_i = $_tbase_1_i;
       __label__ = 194;
       break;
      }
     } while (0);
     do {
      if (__label__ == 194) {
       var $tbase_243_i;
       var $tsize_242_i;
       var $871 = HEAP32[(__gm_ + 432 | 0) >> 2] + $tsize_242_i | 0;
       HEAP32[(__gm_ + 432 | 0) >> 2] = $871;
       if ($871 >>> 0 > HEAP32[(__gm_ + 436 | 0) >> 2] >>> 0) {
        HEAP32[(__gm_ + 436 | 0) >> 2] = $871;
       }
       var $876 = HEAP32[(__gm_ + 24 | 0) >> 2];
       $_$275 : do {
        if (($876 | 0) == 0) {
         var $879 = HEAP32[(__gm_ + 16 | 0) >> 2];
         if (($879 | 0) == 0 | $tbase_243_i >>> 0 < $879 >>> 0) {
          HEAP32[(__gm_ + 16 | 0) >> 2] = $tbase_243_i;
         }
         HEAP32[(__gm_ + 444 | 0) >> 2] = $tbase_243_i;
         HEAP32[(__gm_ + 448 | 0) >> 2] = $tsize_242_i;
         HEAP32[(__gm_ + 456 | 0) >> 2] = 0;
         HEAP32[(__gm_ + 36 | 0) >> 2] = HEAP32[(_mparams | 0) >> 2];
         HEAP32[(__gm_ + 32 | 0) >> 2] = -1;
         var $i_02_i_i = 0;
         while (1) {
          var $i_02_i_i;
          var $886 = $i_02_i_i << 1;
          var $888 = __gm_ + 40 + ($886 << 2) | 0;
          HEAP32[(__gm_ + 40 + (($886 + 3 | 0) << 2) | 0) >> 2] = $888;
          HEAP32[(__gm_ + 40 + (($886 + 2 | 0) << 2) | 0) >> 2] = $888;
          var $891 = $i_02_i_i + 1 | 0;
          if (($891 | 0) == 32) {
           break;
          }
          var $i_02_i_i = $891;
         }
         var $893 = $tbase_243_i + 8 | 0;
         if (($893 & 7 | 0) == 0) {
          var $899 = 0;
         } else {
          var $899 = (-$893 | 0) & 7;
         }
         var $899;
         var $903 = ($tsize_242_i - 40 | 0) - $899 | 0;
         HEAP32[(__gm_ + 24 | 0) >> 2] = $tbase_243_i + $899 | 0;
         HEAP32[(__gm_ + 12 | 0) >> 2] = $903;
         HEAP32[($tbase_243_i + ($899 + 4 | 0) | 0) >> 2] = $903 | 1;
         HEAP32[($tbase_243_i + ($tsize_242_i - 36 | 0) | 0) >> 2] = 40;
         HEAP32[(__gm_ + 28 | 0) >> 2] = HEAP32[(_mparams + 16 | 0) >> 2];
        } else {
         var $sp_0_i = __gm_ + 444 | 0;
         while (1) {
          var $sp_0_i;
          if (($sp_0_i | 0) == 0) {
           break;
          }
          var $913 = HEAP32[($sp_0_i | 0) >> 2];
          var $914 = $sp_0_i + 4 | 0;
          var $915 = HEAP32[$914 >> 2];
          if (($tbase_243_i | 0) == ($913 + $915 | 0 | 0)) {
           if (!((HEAP32[($sp_0_i + 12 | 0) >> 2] & 8 | 0) == 0)) {
            break;
           }
           var $926 = $876;
           if (!($926 >>> 0 >= $913 >>> 0 & $926 >>> 0 < $tbase_243_i >>> 0)) {
            break;
           }
           HEAP32[$914 >> 2] = $915 + $tsize_242_i | 0;
           var $931 = HEAP32[(__gm_ + 24 | 0) >> 2];
           var $933 = HEAP32[(__gm_ + 12 | 0) >> 2] + $tsize_242_i | 0;
           var $934 = $931;
           var $936 = $931 + 8 | 0;
           if (($936 & 7 | 0) == 0) {
            var $942 = 0;
           } else {
            var $942 = (-$936 | 0) & 7;
           }
           var $942;
           var $945 = $933 - $942 | 0;
           HEAP32[(__gm_ + 24 | 0) >> 2] = $934 + $942 | 0;
           HEAP32[(__gm_ + 12 | 0) >> 2] = $945;
           HEAP32[($934 + ($942 + 4 | 0) | 0) >> 2] = $945 | 1;
           HEAP32[($934 + ($933 + 4 | 0) | 0) >> 2] = 40;
           HEAP32[(__gm_ + 28 | 0) >> 2] = HEAP32[(_mparams + 16 | 0) >> 2];
           break $_$275;
          }
          var $sp_0_i = HEAP32[($sp_0_i + 8 | 0) >> 2];
         }
         if ($tbase_243_i >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
          HEAP32[(__gm_ + 16 | 0) >> 2] = $tbase_243_i;
         }
         var $955 = $tbase_243_i + $tsize_242_i | 0;
         var $sp_1_i = __gm_ + 444 | 0;
         while (1) {
          var $sp_1_i;
          if (($sp_1_i | 0) == 0) {
           __label__ = 293;
           break;
          }
          var $959 = $sp_1_i | 0;
          if ((HEAP32[$959 >> 2] | 0) == ($955 | 0)) {
           __label__ = 218;
           break;
          }
          var $sp_1_i = HEAP32[($sp_1_i + 8 | 0) >> 2];
         }
         do {
          if (__label__ == 218) {
           if (!((HEAP32[($sp_1_i + 12 | 0) >> 2] & 8 | 0) == 0)) {
            break;
           }
           HEAP32[$959 >> 2] = $tbase_243_i;
           var $970 = $sp_1_i + 4 | 0;
           HEAP32[$970 >> 2] = HEAP32[$970 >> 2] + $tsize_242_i | 0;
           var $974 = $tbase_243_i + 8 | 0;
           if (($974 & 7 | 0) == 0) {
            var $981 = 0;
           } else {
            var $981 = (-$974 | 0) & 7;
           }
           var $981;
           var $984 = $tbase_243_i + ($tsize_242_i + 8 | 0) | 0;
           if (($984 & 7 | 0) == 0) {
            var $991 = 0;
           } else {
            var $991 = (-$984 | 0) & 7;
           }
           var $991;
           var $992 = $tbase_243_i + ($991 + $tsize_242_i | 0) | 0;
           var $993 = $992;
           var $_sum_i16_i = $981 + $nb_0 | 0;
           var $997 = $tbase_243_i + $_sum_i16_i | 0;
           var $998 = $997;
           var $999 = ($992 - ($tbase_243_i + $981 | 0) | 0) - $nb_0 | 0;
           HEAP32[($tbase_243_i + ($981 + 4 | 0) | 0) >> 2] = $nb_0 | 3;
           $_$314 : do {
            if (($993 | 0) == (HEAP32[(__gm_ + 24 | 0) >> 2] | 0)) {
             var $1007 = HEAP32[(__gm_ + 12 | 0) >> 2] + $999 | 0;
             HEAP32[(__gm_ + 12 | 0) >> 2] = $1007;
             HEAP32[(__gm_ + 24 | 0) >> 2] = $998;
             HEAP32[($tbase_243_i + ($_sum_i16_i + 4 | 0) | 0) >> 2] = $1007 | 1;
            } else {
             if (($993 | 0) == (HEAP32[(__gm_ + 20 | 0) >> 2] | 0)) {
              var $1016 = HEAP32[(__gm_ + 8 | 0) >> 2] + $999 | 0;
              HEAP32[(__gm_ + 8 | 0) >> 2] = $1016;
              HEAP32[(__gm_ + 20 | 0) >> 2] = $998;
              HEAP32[($tbase_243_i + ($_sum_i16_i + 4 | 0) | 0) >> 2] = $1016 | 1;
              HEAP32[($tbase_243_i + ($1016 + $_sum_i16_i | 0) | 0) >> 2] = $1016;
             } else {
              var $_sum2_i18_i = $tsize_242_i + 4 | 0;
              var $1025 = HEAP32[($tbase_243_i + ($_sum2_i18_i + $991 | 0) | 0) >> 2];
              if (($1025 & 3 | 0) == 1) {
               var $1029 = $1025 & -8;
               var $1030 = $1025 >>> 3;
               $_$322 : do {
                if ($1025 >>> 0 < 256) {
                 var $1035 = HEAP32[($tbase_243_i + (($991 | 8) + $tsize_242_i | 0) | 0) >> 2];
                 var $1038 = HEAP32[($tbase_243_i + (($tsize_242_i + 12 | 0) + $991 | 0) | 0) >> 2];
                 if (($1035 | 0) == ($1038 | 0)) {
                  HEAP32[(__gm_ | 0) >> 2] = HEAP32[(__gm_ | 0) >> 2] & (1 << $1030 ^ -1);
                 } else {
                  var $1049 = __gm_ + 40 + (($1025 >>> 2 & 1073741822) << 2) | 0;
                  do {
                   if (($1035 | 0) == ($1049 | 0)) {
                    __label__ = 233;
                   } else {
                    if ($1035 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                     __label__ = 236;
                     break;
                    }
                    __label__ = 233;
                    break;
                   }
                  } while (0);
                  do {
                   if (__label__ == 233) {
                    if (!(($1038 | 0) == ($1049 | 0))) {
                     if ($1038 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                      break;
                     }
                    }
                    HEAP32[($1035 + 12 | 0) >> 2] = $1038;
                    HEAP32[($1038 + 8 | 0) >> 2] = $1035;
                    break $_$322;
                   }
                  } while (0);
                  _abort();
                 }
                } else {
                 var $1064 = $992;
                 var $1067 = HEAP32[($tbase_243_i + (($991 | 24) + $tsize_242_i | 0) | 0) >> 2];
                 var $1070 = HEAP32[($tbase_243_i + (($tsize_242_i + 12 | 0) + $991 | 0) | 0) >> 2];
                 do {
                  if (($1070 | 0) == ($1064 | 0)) {
                   var $_sum67_i_i = $991 | 16;
                   var $1085 = $tbase_243_i + ($_sum2_i18_i + $_sum67_i_i | 0) | 0;
                   var $1086 = HEAP32[$1085 >> 2];
                   if (($1086 | 0) == 0) {
                    var $1090 = $tbase_243_i + ($_sum67_i_i + $tsize_242_i | 0) | 0;
                    var $1091 = HEAP32[$1090 >> 2];
                    if (($1091 | 0) == 0) {
                     var $R_1_i_i = 0;
                     break;
                    }
                    var $RP_0_i_i = $1090;
                    var $R_0_i_i = $1091;
                   } else {
                    var $RP_0_i_i = $1085;
                    var $R_0_i_i = $1086;
                    __label__ = 243;
                   }
                   while (1) {
                    var $R_0_i_i;
                    var $RP_0_i_i;
                    var $1093 = $R_0_i_i + 20 | 0;
                    var $1094 = HEAP32[$1093 >> 2];
                    if (!(($1094 | 0) == 0)) {
                     var $RP_0_i_i = $1093;
                     var $R_0_i_i = $1094;
                     continue;
                    }
                    var $1097 = $R_0_i_i + 16 | 0;
                    var $1098 = HEAP32[$1097 >> 2];
                    if (($1098 | 0) == 0) {
                     break;
                    }
                    var $RP_0_i_i = $1097;
                    var $R_0_i_i = $1098;
                   }
                   if ($RP_0_i_i >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                    _abort();
                   } else {
                    HEAP32[$RP_0_i_i >> 2] = 0;
                    var $R_1_i_i = $R_0_i_i;
                   }
                  } else {
                   var $1075 = HEAP32[($tbase_243_i + (($991 | 8) + $tsize_242_i | 0) | 0) >> 2];
                   if ($1075 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                    _abort();
                   } else {
                    HEAP32[($1075 + 12 | 0) >> 2] = $1070;
                    HEAP32[($1070 + 8 | 0) >> 2] = $1075;
                    var $R_1_i_i = $1070;
                   }
                  }
                 } while (0);
                 var $R_1_i_i;
                 if (($1067 | 0) == 0) {
                  break;
                 }
                 var $1110 = $tbase_243_i + (($tsize_242_i + 28 | 0) + $991 | 0) | 0;
                 var $1112 = __gm_ + 304 + (HEAP32[$1110 >> 2] << 2) | 0;
                 do {
                  if (($1064 | 0) == (HEAP32[$1112 >> 2] | 0)) {
                   HEAP32[$1112 >> 2] = $R_1_i_i;
                   if (!(($R_1_i_i | 0) == 0)) {
                    break;
                   }
                   HEAP32[(__gm_ + 4 | 0) >> 2] = HEAP32[(__gm_ + 4 | 0) >> 2] & (1 << HEAP32[$1110 >> 2] ^ -1);
                   break $_$322;
                  }
                  if ($1067 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                   _abort();
                  } else {
                   var $1126 = $1067 + 16 | 0;
                   if ((HEAP32[$1126 >> 2] | 0) == ($1064 | 0)) {
                    HEAP32[$1126 >> 2] = $R_1_i_i;
                   } else {
                    HEAP32[($1067 + 20 | 0) >> 2] = $R_1_i_i;
                   }
                   if (($R_1_i_i | 0) == 0) {
                    break $_$322;
                   }
                  }
                 } while (0);
                 if ($R_1_i_i >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                  _abort();
                 } else {
                  HEAP32[($R_1_i_i + 24 | 0) >> 2] = $1067;
                  var $_sum3132_i_i = $991 | 16;
                  var $1143 = HEAP32[($tbase_243_i + ($_sum3132_i_i + $tsize_242_i | 0) | 0) >> 2];
                  if (!(($1143 | 0) == 0)) {
                   if ($1143 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                    _abort();
                   } else {
                    HEAP32[($R_1_i_i + 16 | 0) >> 2] = $1143;
                    HEAP32[($1143 + 24 | 0) >> 2] = $R_1_i_i;
                   }
                  }
                  var $1156 = HEAP32[($tbase_243_i + ($_sum2_i18_i + $_sum3132_i_i | 0) | 0) >> 2];
                  if (($1156 | 0) == 0) {
                   break;
                  }
                  if ($1156 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0) {
                   _abort();
                  } else {
                   HEAP32[($R_1_i_i + 20 | 0) >> 2] = $1156;
                   HEAP32[($1156 + 24 | 0) >> 2] = $R_1_i_i;
                  }
                 }
                }
               } while (0);
               var $oldfirst_0_i_i = $tbase_243_i + (($1029 | $991) + $tsize_242_i | 0) | 0;
               var $qsize_0_i_i = $1029 + $999 | 0;
              } else {
               var $oldfirst_0_i_i = $993;
               var $qsize_0_i_i = $999;
              }
              var $qsize_0_i_i;
              var $oldfirst_0_i_i;
              var $1172 = $oldfirst_0_i_i + 4 | 0;
              HEAP32[$1172 >> 2] = HEAP32[$1172 >> 2] & -2;
              HEAP32[($tbase_243_i + ($_sum_i16_i + 4 | 0) | 0) >> 2] = $qsize_0_i_i | 1;
              HEAP32[($tbase_243_i + ($qsize_0_i_i + $_sum_i16_i | 0) | 0) >> 2] = $qsize_0_i_i;
              if ($qsize_0_i_i >>> 0 < 256) {
               var $1184 = $qsize_0_i_i >>> 2 & 1073741822;
               var $1186 = __gm_ + 40 + ($1184 << 2) | 0;
               var $1187 = HEAP32[(__gm_ | 0) >> 2];
               var $1188 = 1 << ($qsize_0_i_i >>> 3);
               do {
                if (($1187 & $1188 | 0) == 0) {
                 HEAP32[(__gm_ | 0) >> 2] = $1187 | $1188;
                 var $F4_0_i_i = $1186;
                 var $_pre_phi_i20_i = __gm_ + 40 + (($1184 + 2 | 0) << 2) | 0;
                } else {
                 var $1194 = __gm_ + 40 + (($1184 + 2 | 0) << 2) | 0;
                 var $1195 = HEAP32[$1194 >> 2];
                 if (!($1195 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
                  var $F4_0_i_i = $1195;
                  var $_pre_phi_i20_i = $1194;
                  break;
                 }
                 _abort();
                }
               } while (0);
               var $_pre_phi_i20_i;
               var $F4_0_i_i;
               HEAP32[$_pre_phi_i20_i >> 2] = $998;
               HEAP32[($F4_0_i_i + 12 | 0) >> 2] = $998;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 8 | 0) | 0) >> 2] = $F4_0_i_i;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 12 | 0) | 0) >> 2] = $1186;
              } else {
               var $1207 = $997;
               var $1208 = $qsize_0_i_i >>> 8;
               do {
                if (($1208 | 0) == 0) {
                 var $I7_0_i_i = 0;
                } else {
                 if ($qsize_0_i_i >>> 0 > 16777215) {
                  var $I7_0_i_i = 31;
                  break;
                 }
                 var $1215 = ($1208 + 1048320 | 0) >>> 16 & 8;
                 var $1216 = $1208 << $1215;
                 var $1219 = ($1216 + 520192 | 0) >>> 16 & 4;
                 var $1220 = $1216 << $1219;
                 var $1223 = ($1220 + 245760 | 0) >>> 16 & 2;
                 var $1229 = (14 - ($1219 | $1215 | $1223) | 0) + ($1220 << $1223 >>> 15) | 0;
                 var $I7_0_i_i = $qsize_0_i_i >>> (($1229 + 7 | 0) >>> 0) & 1 | $1229 << 1;
                }
               } while (0);
               var $I7_0_i_i;
               var $1236 = __gm_ + 304 + ($I7_0_i_i << 2) | 0;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 28 | 0) | 0) >> 2] = $I7_0_i_i;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 20 | 0) | 0) >> 2] = 0;
               HEAP32[($tbase_243_i + ($_sum_i16_i + 16 | 0) | 0) >> 2] = 0;
               var $1243 = HEAP32[(__gm_ + 4 | 0) >> 2];
               var $1244 = 1 << $I7_0_i_i;
               if (($1243 & $1244 | 0) == 0) {
                HEAP32[(__gm_ + 4 | 0) >> 2] = $1243 | $1244;
                HEAP32[$1236 >> 2] = $1207;
                HEAP32[($tbase_243_i + ($_sum_i16_i + 24 | 0) | 0) >> 2] = $1236;
                HEAP32[($tbase_243_i + ($_sum_i16_i + 12 | 0) | 0) >> 2] = $1207;
                HEAP32[($tbase_243_i + ($_sum_i16_i + 8 | 0) | 0) >> 2] = $1207;
               } else {
                if (($I7_0_i_i | 0) == 31) {
                 var $1263 = 0;
                } else {
                 var $1263 = 25 - ($I7_0_i_i >>> 1) | 0;
                }
                var $1263;
                var $K8_0_i_i = $qsize_0_i_i << $1263;
                var $T_0_i21_i = HEAP32[$1236 >> 2];
                while (1) {
                 var $T_0_i21_i;
                 var $K8_0_i_i;
                 if ((HEAP32[($T_0_i21_i + 4 | 0) >> 2] & -8 | 0) == ($qsize_0_i_i | 0)) {
                  var $1289 = $T_0_i21_i + 8 | 0;
                  var $1290 = HEAP32[$1289 >> 2];
                  var $1292 = HEAP32[(__gm_ + 16 | 0) >> 2];
                  do {
                   if (!($T_0_i21_i >>> 0 < $1292 >>> 0)) {
                    if ($1290 >>> 0 < $1292 >>> 0) {
                     break;
                    }
                    HEAP32[($1290 + 12 | 0) >> 2] = $1207;
                    HEAP32[$1289 >> 2] = $1207;
                    HEAP32[($tbase_243_i + ($_sum_i16_i + 8 | 0) | 0) >> 2] = $1290;
                    HEAP32[($tbase_243_i + ($_sum_i16_i + 12 | 0) | 0) >> 2] = $T_0_i21_i;
                    HEAP32[($tbase_243_i + ($_sum_i16_i + 24 | 0) | 0) >> 2] = 0;
                    break $_$314;
                   }
                  } while (0);
                  _abort();
                 } else {
                  var $1272 = $T_0_i21_i + 16 + ($K8_0_i_i >>> 31 << 2) | 0;
                  var $1273 = HEAP32[$1272 >> 2];
                  if (!(($1273 | 0) == 0)) {
                   var $K8_0_i_i = $K8_0_i_i << 1;
                   var $T_0_i21_i = $1273;
                   continue;
                  }
                  if (!($1272 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
                   HEAP32[$1272 >> 2] = $1207;
                   HEAP32[($tbase_243_i + ($_sum_i16_i + 24 | 0) | 0) >> 2] = $T_0_i21_i;
                   HEAP32[($tbase_243_i + ($_sum_i16_i + 12 | 0) | 0) >> 2] = $1207;
                   HEAP32[($tbase_243_i + ($_sum_i16_i + 8 | 0) | 0) >> 2] = $1207;
                   break $_$314;
                  }
                  _abort();
                 }
                }
               }
              }
             }
            }
           } while (0);
           var $mem_0 = $tbase_243_i + ($981 | 8) | 0;
           break $_$215;
          }
         } while (0);
         var $1306 = $876;
         var $sp_0_i_i_i = __gm_ + 444 | 0;
         while (1) {
          var $sp_0_i_i_i;
          var $1309 = HEAP32[($sp_0_i_i_i | 0) >> 2];
          if (!($1309 >>> 0 > $1306 >>> 0)) {
           var $1313 = HEAP32[($sp_0_i_i_i + 4 | 0) >> 2];
           if (($1309 + $1313 | 0) >>> 0 > $1306 >>> 0) {
            var $1321 = $1309;
            var $1320 = $1313;
            break;
           }
          }
          var $1318 = HEAP32[($sp_0_i_i_i + 8 | 0) >> 2];
          if (!(($1318 | 0) == 0)) {
           var $sp_0_i_i_i = $1318;
           continue;
          }
          var $1321 = 0;
          var $1320 = 4;
          break;
         }
         var $1320;
         var $1321;
         var $1322 = $1321 + $1320 | 0;
         var $1324 = $1321 + ($1320 - 39 | 0) | 0;
         if (($1324 & 7 | 0) == 0) {
          var $1331 = 0;
         } else {
          var $1331 = (-$1324 | 0) & 7;
         }
         var $1331;
         var $1332 = $1321 + (($1320 - 47 | 0) + $1331 | 0) | 0;
         var $1336 = $1332 >>> 0 < ($876 + 16 | 0) >>> 0 ? $1306 : $1332;
         var $1337 = $1336 + 8 | 0;
         var $1340 = $tbase_243_i + 8 | 0;
         if (($1340 & 7 | 0) == 0) {
          var $1346 = 0;
         } else {
          var $1346 = (-$1340 | 0) & 7;
         }
         var $1346;
         var $1350 = ($tsize_242_i - 40 | 0) - $1346 | 0;
         HEAP32[(__gm_ + 24 | 0) >> 2] = $tbase_243_i + $1346 | 0;
         HEAP32[(__gm_ + 12 | 0) >> 2] = $1350;
         HEAP32[($tbase_243_i + ($1346 + 4 | 0) | 0) >> 2] = $1350 | 1;
         HEAP32[($tbase_243_i + ($tsize_242_i - 36 | 0) | 0) >> 2] = 40;
         HEAP32[(__gm_ + 28 | 0) >> 2] = HEAP32[(_mparams + 16 | 0) >> 2];
         HEAP32[($1336 + 4 | 0) >> 2] = 27;
         HEAP32[$1337 >> 2] = HEAP32[(__gm_ + 444 | 0) >> 2];
         HEAP32[$1337 + 4 >> 2] = HEAP32[(__gm_ + 444 | 0) + 4 >> 2];
         HEAP32[$1337 + 8 >> 2] = HEAP32[(__gm_ + 444 | 0) + 8 >> 2];
         HEAP32[$1337 + 12 >> 2] = HEAP32[(__gm_ + 444 | 0) + 12 >> 2];
         HEAP32[(__gm_ + 444 | 0) >> 2] = $tbase_243_i;
         HEAP32[(__gm_ + 448 | 0) >> 2] = $tsize_242_i;
         HEAP32[(__gm_ + 456 | 0) >> 2] = 0;
         HEAP32[(__gm_ + 452 | 0) >> 2] = $1337;
         var $1360 = $1336 + 28 | 0;
         HEAP32[$1360 >> 2] = 7;
         $_$426 : do {
          if (($1336 + 32 | 0) >>> 0 < $1322 >>> 0) {
           var $1363 = $1360;
           while (1) {
            var $1363;
            var $1364 = $1363 + 4 | 0;
            HEAP32[$1364 >> 2] = 7;
            if (!(($1363 + 8 | 0) >>> 0 < $1322 >>> 0)) {
             break $_$426;
            }
            var $1363 = $1364;
           }
          }
         } while (0);
         if (($1336 | 0) == ($1306 | 0)) {
          break;
         }
         var $1372 = $1336 - $876 | 0;
         var $1375 = $1306 + ($1372 + 4 | 0) | 0;
         HEAP32[$1375 >> 2] = HEAP32[$1375 >> 2] & -2;
         HEAP32[($876 + 4 | 0) >> 2] = $1372 | 1;
         HEAP32[($1306 + $1372 | 0) >> 2] = $1372;
         if ($1372 >>> 0 < 256) {
          var $1385 = $1372 >>> 2 & 1073741822;
          var $1387 = __gm_ + 40 + ($1385 << 2) | 0;
          var $1388 = HEAP32[(__gm_ | 0) >> 2];
          var $1389 = 1 << ($1372 >>> 3);
          do {
           if (($1388 & $1389 | 0) == 0) {
            HEAP32[(__gm_ | 0) >> 2] = $1388 | $1389;
            var $F_0_i_i = $1387;
            var $_pre_phi_i_i = __gm_ + 40 + (($1385 + 2 | 0) << 2) | 0;
           } else {
            var $1395 = __gm_ + 40 + (($1385 + 2 | 0) << 2) | 0;
            var $1396 = HEAP32[$1395 >> 2];
            if (!($1396 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
             var $F_0_i_i = $1396;
             var $_pre_phi_i_i = $1395;
             break;
            }
            _abort();
           }
          } while (0);
          var $_pre_phi_i_i;
          var $F_0_i_i;
          HEAP32[$_pre_phi_i_i >> 2] = $876;
          HEAP32[($F_0_i_i + 12 | 0) >> 2] = $876;
          HEAP32[($876 + 8 | 0) >> 2] = $F_0_i_i;
          HEAP32[($876 + 12 | 0) >> 2] = $1387;
         } else {
          var $1406 = $876;
          var $1407 = $1372 >>> 8;
          do {
           if (($1407 | 0) == 0) {
            var $I1_0_i_i = 0;
           } else {
            if ($1372 >>> 0 > 16777215) {
             var $I1_0_i_i = 31;
             break;
            }
            var $1414 = ($1407 + 1048320 | 0) >>> 16 & 8;
            var $1415 = $1407 << $1414;
            var $1418 = ($1415 + 520192 | 0) >>> 16 & 4;
            var $1419 = $1415 << $1418;
            var $1422 = ($1419 + 245760 | 0) >>> 16 & 2;
            var $1428 = (14 - ($1418 | $1414 | $1422) | 0) + ($1419 << $1422 >>> 15) | 0;
            var $I1_0_i_i = $1372 >>> (($1428 + 7 | 0) >>> 0) & 1 | $1428 << 1;
           }
          } while (0);
          var $I1_0_i_i;
          var $1435 = __gm_ + 304 + ($I1_0_i_i << 2) | 0;
          HEAP32[($876 + 28 | 0) >> 2] = $I1_0_i_i;
          HEAP32[($876 + 20 | 0) >> 2] = 0;
          HEAP32[($876 + 16 | 0) >> 2] = 0;
          var $1439 = HEAP32[(__gm_ + 4 | 0) >> 2];
          var $1440 = 1 << $I1_0_i_i;
          if (($1439 & $1440 | 0) == 0) {
           HEAP32[(__gm_ + 4 | 0) >> 2] = $1439 | $1440;
           HEAP32[$1435 >> 2] = $1406;
           HEAP32[($876 + 24 | 0) >> 2] = $1435;
           HEAP32[($876 + 12 | 0) >> 2] = $876;
           HEAP32[($876 + 8 | 0) >> 2] = $876;
          } else {
           if (($I1_0_i_i | 0) == 31) {
            var $1455 = 0;
           } else {
            var $1455 = 25 - ($I1_0_i_i >>> 1) | 0;
           }
           var $1455;
           var $K2_0_i_i = $1372 << $1455;
           var $T_0_i_i = HEAP32[$1435 >> 2];
           while (1) {
            var $T_0_i_i;
            var $K2_0_i_i;
            if ((HEAP32[($T_0_i_i + 4 | 0) >> 2] & -8 | 0) == ($1372 | 0)) {
             var $1478 = $T_0_i_i + 8 | 0;
             var $1479 = HEAP32[$1478 >> 2];
             var $1481 = HEAP32[(__gm_ + 16 | 0) >> 2];
             do {
              if (!($T_0_i_i >>> 0 < $1481 >>> 0)) {
               if ($1479 >>> 0 < $1481 >>> 0) {
                break;
               }
               HEAP32[($1479 + 12 | 0) >> 2] = $1406;
               HEAP32[$1478 >> 2] = $1406;
               HEAP32[($876 + 8 | 0) >> 2] = $1479;
               HEAP32[($876 + 12 | 0) >> 2] = $T_0_i_i;
               HEAP32[($876 + 24 | 0) >> 2] = 0;
               break $_$275;
              }
             } while (0);
             _abort();
            } else {
             var $1464 = $T_0_i_i + 16 + ($K2_0_i_i >>> 31 << 2) | 0;
             var $1465 = HEAP32[$1464 >> 2];
             if (!(($1465 | 0) == 0)) {
              var $K2_0_i_i = $K2_0_i_i << 1;
              var $T_0_i_i = $1465;
              continue;
             }
             if (!($1464 >>> 0 < HEAP32[(__gm_ + 16 | 0) >> 2] >>> 0)) {
              HEAP32[$1464 >> 2] = $1406;
              HEAP32[($876 + 24 | 0) >> 2] = $T_0_i_i;
              HEAP32[($876 + 12 | 0) >> 2] = $876;
              HEAP32[($876 + 8 | 0) >> 2] = $876;
              break $_$275;
             }
             _abort();
            }
           }
          }
         }
        }
       } while (0);
       var $1491 = HEAP32[(__gm_ + 12 | 0) >> 2];
       if (!($1491 >>> 0 > $nb_0 >>> 0)) {
        break;
       }
       var $1494 = $1491 - $nb_0 | 0;
       HEAP32[(__gm_ + 12 | 0) >> 2] = $1494;
       var $1495 = HEAP32[(__gm_ + 24 | 0) >> 2];
       var $1496 = $1495;
       HEAP32[(__gm_ + 24 | 0) >> 2] = $1496 + $nb_0 | 0;
       HEAP32[($1496 + ($nb_0 + 4 | 0) | 0) >> 2] = $1494 | 1;
       HEAP32[($1495 + 4 | 0) >> 2] = $nb_0 | 3;
       var $mem_0 = $1495 + 8 | 0;
       break $_$215;
      }
     } while (0);
     HEAP32[___errno() >> 2] = 12;
     var $mem_0 = 0;
    }
   } else {
    var $706 = $703 - $nb_0 | 0;
    var $707 = HEAP32[(__gm_ + 20 | 0) >> 2];
    if ($706 >>> 0 > 15) {
     var $710 = $707;
     HEAP32[(__gm_ + 20 | 0) >> 2] = $710 + $nb_0 | 0;
     HEAP32[(__gm_ + 8 | 0) >> 2] = $706;
     HEAP32[($710 + ($nb_0 + 4 | 0) | 0) >> 2] = $706 | 1;
     HEAP32[($710 + $703 | 0) >> 2] = $706;
     HEAP32[($707 + 4 | 0) >> 2] = $nb_0 | 3;
    } else {
     HEAP32[(__gm_ + 8 | 0) >> 2] = 0;
     HEAP32[(__gm_ + 20 | 0) >> 2] = 0;
     HEAP32[($707 + 4 | 0) >> 2] = $703 | 3;
     var $725 = $707 + ($703 + 4 | 0) | 0;
     HEAP32[$725 >> 2] = HEAP32[$725 >> 2] | 1;
    }
    var $mem_0 = $707 + 8 | 0;
   }
  }
 } while (0);
 var $mem_0;
 return $mem_0;
}
function asm(x, y) {
 x = +x;
 y = y | 0;
 var a = 0, b = +0;
 a = cheez(y + ~~x | 0) | 0;
 b = a * a;
 fleefl(b | 0, a | 0);
}
function phi() {
 if (wat()) {
  var $10 = 1;
 } else {
  var $10 = (_init_mparams() | 0) != 0;
 }
 var $10;
}
function intoCond() {
 var $115 = 22;
 var $NumWords = __ZN4llvm15BitstreamCursor4ReadEj($117, 32);
 if (($115 | 0) != 0) {
  HEAP32[$115 >> 2] = $NumWords;
 }
}
function math(a, b, c, d) {
 print(Math_imul(d) + (Math_fround(c) + (a + Math_abs(b))));
}
function td(x, y) {
 HEAP32[tempDoublePtr >> 2] = x;
 var xf = HEAPF32[tempDoublePtr >> 2];
 HEAP32[tempDoublePtr >> 2] = y;
 func(xf, HEAPF32[tempDoublePtr >> 2]);
 HEAPF64[tempDoublePtr >> 3] = x;
 var xl = HEAP32[tempDoublePtr >> 2];
 var xh = HEAP32[tempDoublePtr >> 2];
 HEAPF64[tempDoublePtr >> 3] = y;
 func(xl, xh, HEAP32[tempDoublePtr >> 2], HEAP32[tempDoublePtr >> 2]);
}


VaKeR 2022