diff options
author | Alon Zakai <alonzakai@gmail.com> | 2019-03-01 10:28:07 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-01 10:28:07 -0800 |
commit | 689fe405a3417fbfd59456035add6f6f53149f35 (patch) | |
tree | d6f1dcaf0cbb85eb3ae830f68a46c9a6627d1562 /test/emcc_hello_world.fromasm.imprecise | |
parent | f59c3033e678ced61bc8c78e8ac9fbee31ef0210 (diff) | |
download | binaryen-689fe405a3417fbfd59456035add6f6f53149f35.tar.gz binaryen-689fe405a3417fbfd59456035add6f6f53149f35.tar.bz2 binaryen-689fe405a3417fbfd59456035add6f6f53149f35.zip |
Consistently optimize small added constants into load/store offsets (#1924)
See #1919 - we did not do this consistently before.
This adds a lowMemoryUnused option to PassOptions. It can be passed on the commandline with --low-memory-unused. If enabled, we run the new optimize-added-constants pass, which does the real work here, replacing older code in post-emscripten.
Aside from running at the proper time (unlike the old pass, see #1919), this also has a -propagate mode, which can do stuff like this:
y = x + 10
[..]
load(y)
[..]
load(y)
=>
y = x + 10
[..]
load(x, offset=10)
[..]
load(x, offset=10)
That is, it can propagate such offsets to the loads/stores. This pattern is common in big interpreter loops, where the pointers are offsets into a big struct of state.
The pass does this propagation by using a new feature of LocalGraph, which can verify which locals are in SSA mode. Binaryen IR is not SSA (intentionally, since it's a later IR), but if a local only has a single set for all gets, that means that local is in such a state, and can be optimized. The tricky thing is that all locals are initialized to zero, so there are at minimum two sets. But if we verify that the real set dominates all the gets, then the zero initialization cannot reach them, and we are safe.
This PR also makes safe-heap aware of lowMemoryUnused. If so, we check for not just an access of 0, but the range 0-1023.
This makes zlib 5% faster, with either the wasm backend or asm2wasm. It also makes it 0.5% smaller. Also helps sqlite (1.5% faster) and lua (1% faster)
Diffstat (limited to 'test/emcc_hello_world.fromasm.imprecise')
-rw-r--r-- | test/emcc_hello_world.fromasm.imprecise | 9345 |
1 files changed, 4668 insertions, 4677 deletions
diff --git a/test/emcc_hello_world.fromasm.imprecise b/test/emcc_hello_world.fromasm.imprecise index e3feaa729..aedcabd06 100644 --- a/test/emcc_hello_world.fromasm.imprecise +++ b/test/emcc_hello_world.fromasm.imprecise @@ -261,8 +261,11 @@ (loop $while-in (if (i32.ne - (i32.load8_u offset=687 - (local.get $1) + (i32.load8_u + (i32.add + (local.get $1) + (i32.const 687) + ) ) (local.get $0) ) @@ -496,11 +499,9 @@ ) (i32.store offset=12 (local.get $3) - (local.tee $0 - (i32.add - (local.get $3) - (i32.const 20) - ) + (i32.add + (local.get $3) + (i32.const 20) ) ) (i32.store offset=16 @@ -519,14 +520,14 @@ (i32.const 0) ) (block (result i32) - (i32.store - (local.get $0) + (i32.store offset=20 + (local.get $4) (i32.const -1) ) (i32.const -1) ) - (i32.load - (local.get $0) + (i32.load offset=20 + (local.get $4) ) ) ) @@ -658,11 +659,7 @@ (local $8 i32) (local $9 i32) (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local.set $10 + (local.set $8 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -678,43 +675,33 @@ ) (call $abort) ) - (local.set $8 + (local.set $9 (i32.add - (local.get $10) + (local.get $8) (i32.const 16) ) ) - (i32.store - (local.tee $4 - (i32.add - (local.tee $9 - (local.get $10) - ) - (i32.const 32) - ) + (i32.store offset=32 + (local.tee $6 + (local.get $8) ) (local.tee $3 - (i32.load - (local.tee $6 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) + (i32.load offset=28 + (local.get $0) ) ) ) (i32.store offset=4 - (local.get $4) + (local.tee $4 + (i32.add + (local.get $6) + (i32.const 32) + ) + ) (local.tee $3 (i32.sub - (i32.load - (local.tee $11 - (i32.add - (local.get $0) - (i32.const 20) - ) - ) + (i32.load offset=20 + (local.get $0) ) (local.get $3) ) @@ -728,25 +715,13 @@ (local.get $4) (local.get $2) ) - (local.set $13 - (i32.add - (local.get $0) - (i32.const 60) - ) - ) - (local.set $14 - (i32.add - (local.get $0) - (i32.const 44) - ) - ) (local.set $1 (local.get $4) ) (local.set $4 (i32.const 2) ) - (local.set $12 + (local.set $10 (i32.add (local.get $2) (local.get $3) @@ -766,24 +741,24 @@ (local.get $0) ) (i32.store - (local.get $9) - (i32.load - (local.get $13) + (local.get $6) + (i32.load offset=60 + (local.get $0) ) ) (i32.store offset=4 - (local.get $9) + (local.get $6) (local.get $1) ) (i32.store offset=8 - (local.get $9) + (local.get $6) (local.get $4) ) (local.set $3 (call $___syscall_ret (call $___syscall146 (i32.const 146) - (local.get $9) + (local.get $6) ) ) ) @@ -792,25 +767,25 @@ ) ) (block - (i32.store + (i32.store offset=16 (local.get $8) - (i32.load - (local.get $13) + (i32.load offset=60 + (local.get $0) ) ) (i32.store offset=4 - (local.get $8) + (local.get $9) (local.get $1) ) (i32.store offset=8 - (local.get $8) + (local.get $9) (local.get $4) ) (local.set $3 (call $___syscall_ret (call $___syscall146 (i32.const 146) - (local.get $8) + (local.get $9) ) ) ) @@ -819,7 +794,7 @@ (br_if $__rjti$0 (i32.eq (local.get $3) - (local.get $12) + (local.get $10) ) ) (br_if $__rjti$1 @@ -833,27 +808,33 @@ (i32.gt_u (local.get $3) (local.tee $5 - (i32.load offset=4 - (local.get $1) + (i32.load + (i32.add + (local.get $1) + (i32.const 4) + ) ) ) ) (block (result i32) - (i32.store - (local.get $6) + (i32.store offset=28 + (local.get $0) (local.tee $7 - (i32.load - (local.get $14) + (i32.load offset=44 + (local.get $0) ) ) ) - (i32.store - (local.get $11) + (i32.store offset=20 + (local.get $0) (local.get $7) ) (local.set $7 - (i32.load offset=12 - (local.get $1) + (i32.load + (i32.add + (local.get $1) + (i32.const 12) + ) ) ) (local.set $1 @@ -880,11 +861,11 @@ (i32.const 2) ) (block - (i32.store - (local.get $6) + (i32.store offset=28 + (local.get $0) (i32.add - (i32.load - (local.get $6) + (i32.load offset=28 + (local.get $0) ) (local.get $3) ) @@ -913,16 +894,19 @@ (local.get $5) ) ) - (i32.store offset=4 - (local.get $1) + (i32.store + (i32.add + (local.get $1) + (i32.const 4) + ) (i32.sub (local.get $7) (local.get $5) ) ) - (local.set $12 + (local.set $10 (i32.sub - (local.get $12) + (local.get $10) (local.get $3) ) ) @@ -933,8 +917,8 @@ (local.get $0) (i32.add (local.tee $1 - (i32.load - (local.get $14) + (i32.load offset=44 + (local.get $0) ) ) (i32.load offset=48 @@ -942,12 +926,12 @@ ) ) ) - (i32.store - (local.get $6) + (i32.store offset=28 + (local.get $0) (local.get $1) ) - (i32.store - (local.get $11) + (i32.store offset=20 + (local.get $0) (local.get $1) ) (br $__rjto$1) @@ -956,12 +940,12 @@ (local.get $0) (i32.const 0) ) - (i32.store - (local.get $6) + (i32.store offset=28 + (local.get $0) (i32.const 0) ) - (i32.store - (local.get $11) + (i32.store offset=20 + (local.get $0) (i32.const 0) ) (i32.store @@ -990,7 +974,7 @@ ) ) (global.set $STACKTOP - (local.get $10) + (local.get $8) ) (local.get $2) ) @@ -1002,11 +986,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local.set $6 + (local.set $2 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -1022,26 +1002,27 @@ ) (call $abort) ) - (local.set $3 + (local.set $6 (i32.add - (local.get $6) + (local.get $2) (i32.const 120) ) ) - (local.set $5 + (local.set $7 + (local.get $2) + ) + (local.set $4 (i32.add - (local.tee $4 - (local.get $6) - ) + (local.get $2) (i32.const 136) ) ) - (local.set $8 + (local.set $5 (i32.add - (local.tee $2 - (local.tee $7 + (local.tee $3 + (local.tee $8 (i32.add - (local.get $4) + (local.get $2) (i32.const 80) ) ) @@ -1051,23 +1032,23 @@ ) (loop $do-in (i32.store - (local.get $2) + (local.get $3) (i32.const 0) ) (br_if $do-in (i32.lt_s - (local.tee $2 + (local.tee $3 (i32.add - (local.get $2) + (local.get $3) (i32.const 4) ) ) - (local.get $8) + (local.get $5) ) ) ) - (i32.store - (local.get $3) + (i32.store offset=120 + (local.get $2) (i32.load (local.get $1) ) @@ -1077,15 +1058,15 @@ (i32.lt_s (call $_printf_core (i32.const 0) - (local.get $3) - (local.get $4) + (local.get $6) (local.get $7) + (local.get $8) ) (i32.const 0) ) (i32.const -1) (block (result i32) - (local.set $9 + (local.set $3 (i32.load (local.get $0) ) @@ -1100,87 +1081,62 @@ (i32.store (local.get $0) (i32.and - (local.get $9) + (local.get $3) (i32.const -33) ) ) ) (if - (i32.load - (local.tee $1 - (i32.add - (local.get $0) - (i32.const 48) - ) - ) + (i32.load offset=48 + (local.get $0) ) (drop (call $_printf_core (local.get $0) - (local.get $3) - (local.get $4) + (local.get $6) (local.get $7) + (local.get $8) ) ) (block - (local.set $11 - (i32.load - (local.tee $10 - (i32.add - (local.get $0) - (i32.const 44) - ) - ) + (local.set $5 + (i32.load offset=44 + (local.get $0) ) ) - (i32.store - (local.get $10) - (local.get $5) + (i32.store offset=44 + (local.get $0) + (local.get $4) ) - (i32.store - (local.tee $2 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) - (local.get $5) + (i32.store offset=28 + (local.get $0) + (local.get $4) ) - (i32.store - (local.tee $12 - (i32.add - (local.get $0) - (i32.const 20) - ) - ) - (local.get $5) + (i32.store offset=20 + (local.get $0) + (local.get $4) ) - (i32.store - (local.get $1) + (i32.store offset=48 + (local.get $0) (i32.const 80) ) - (i32.store - (local.tee $8 - (i32.add - (local.get $0) - (i32.const 16) - ) - ) + (i32.store offset=16 + (local.get $0) (i32.add - (local.get $5) + (local.get $4) (i32.const 80) ) ) (drop (call $_printf_core (local.get $0) - (local.get $3) - (local.get $4) + (local.get $6) (local.get $7) + (local.get $8) ) ) (if - (local.get $11) + (local.get $5) (block (drop (call_indirect (type $FUNCSIG$iiii) @@ -1198,24 +1154,24 @@ ) ) ) - (i32.store - (local.get $10) - (local.get $11) + (i32.store offset=44 + (local.get $0) + (local.get $5) ) - (i32.store - (local.get $1) + (i32.store offset=48 + (local.get $0) (i32.const 0) ) - (i32.store - (local.get $8) + (i32.store offset=16 + (local.get $0) (i32.const 0) ) - (i32.store - (local.get $2) + (i32.store offset=28 + (local.get $0) (i32.const 0) ) - (i32.store - (local.get $12) + (i32.store offset=20 + (local.get $0) (i32.const 0) ) ) @@ -1229,7 +1185,7 @@ (local.get $0) ) (i32.and - (local.get $9) + (local.get $3) (i32.const 32) ) ) @@ -1239,25 +1195,19 @@ ) ) (global.set $STACKTOP - (local.get $6) + (local.get $2) ) ) (func $___fwritex (; 36 ;) (; has Stack IR ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) - (local $6 i32) (block $label$break$L5 (block $__rjti$0 (br_if $__rjti$0 (local.tee $3 - (i32.load - (local.tee $4 - (i32.add - (local.get $2) - (i32.const 16) - ) - ) + (i32.load offset=16 + (local.get $2) ) ) ) @@ -1269,8 +1219,8 @@ ) (block (local.set $3 - (i32.load - (local.get $4) + (i32.load offset=16 + (local.get $2) ) ) (br $__rjti$0) @@ -1283,13 +1233,8 @@ (i32.sub (local.get $3) (local.tee $4 - (i32.load - (local.tee $5 - (i32.add - (local.get $2) - (i32.const 20) - ) - ) + (i32.load offset=20 + (local.get $2) ) ) ) @@ -1341,7 +1286,7 @@ (i32.load8_s (i32.add (local.get $0) - (local.tee $6 + (local.tee $5 (i32.add (local.get $3) (i32.const -1) @@ -1353,7 +1298,7 @@ ) (block (local.set $3 - (local.get $6) + (local.get $5) ) (br $while-in) ) @@ -1379,8 +1324,8 @@ ) ) (local.set $4 - (i32.load - (local.get $5) + (i32.load offset=20 + (local.get $2) ) ) (local.set $1 @@ -1407,11 +1352,11 @@ (local.get $1) ) ) - (i32.store - (local.get $5) + (i32.store offset=20 + (local.get $2) (i32.add - (i32.load - (local.get $5) + (i32.load offset=20 + (local.get $2) ) (local.get $1) ) @@ -1420,21 +1365,14 @@ ) (func $___towrite (; 37 ;) (; has Stack IR ;) (param $0 i32) (result i32) (local $1 i32) - (local $2 i32) - (local.set $1 - (i32.load8_s - (local.tee $2 - (i32.add + (i32.store8 offset=74 + (local.get $0) + (i32.or + (local.tee $1 + (i32.load8_s offset=74 (local.get $0) - (i32.const 74) ) ) - ) - ) - (i32.store8 - (local.get $2) - (i32.or - (local.get $1) (i32.add (local.get $1) (i32.const 255) @@ -1892,29 +1830,15 @@ (local $1 i32) (local $2 i32) (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) (block $__rjto$0 (result i32) (block $__rjti$0 (br_if $__rjti$0 (i32.le_u - (i32.load - (local.tee $2 - (i32.add - (local.get $0) - (i32.const 20) - ) - ) + (i32.load offset=20 + (local.get $0) ) - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 28) - ) - ) + (i32.load offset=28 + (local.get $0) ) ) ) @@ -1938,8 +1862,8 @@ ) ) (br_if $__rjti$0 - (i32.load - (local.get $2) + (i32.load offset=20 + (local.get $0) ) ) (br $__rjto$0 @@ -1948,29 +1872,19 @@ ) (if (i32.lt_u - (local.tee $4 - (i32.load - (local.tee $1 - (i32.add - (local.get $0) - (i32.const 4) - ) - ) + (local.tee $1 + (i32.load offset=4 + (local.get $0) ) ) - (local.tee $6 - (i32.load - (local.tee $5 - (i32.add - (local.get $0) - (i32.const 8) - ) - ) + (local.tee $2 + (i32.load offset=8 + (local.get $0) ) ) ) (block - (local.set $7 + (local.set $3 (i32.load offset=40 (local.get $0) ) @@ -1979,13 +1893,13 @@ (call_indirect (type $FUNCSIG$iiii) (local.get $0) (i32.sub - (local.get $4) - (local.get $6) + (local.get $1) + (local.get $2) ) (i32.const 1) (i32.add (i32.and - (local.get $7) + (local.get $3) (i32.const 7) ) (i32.const 2) @@ -1998,20 +1912,20 @@ (local.get $0) (i32.const 0) ) - (i32.store - (local.get $3) + (i32.store offset=28 + (local.get $0) (i32.const 0) ) - (i32.store - (local.get $2) + (i32.store offset=20 + (local.get $0) (i32.const 0) ) - (i32.store - (local.get $5) + (i32.store offset=8 + (local.get $0) (i32.const 0) ) - (i32.store - (local.get $1) + (i32.store offset=4 + (local.get $0) (i32.const 0) ) (i32.const 0) @@ -2067,8 +1981,7 @@ (local $47 i32) (local $48 i32) (local $49 i32) - (local $50 i32) - (local.set $34 + (local.set $20 (global.get $STACKTOP) ) (global.set $STACKTOP @@ -2084,16 +1997,16 @@ ) (call $abort) ) - (local.set $20 + (local.set $39 (i32.add - (local.get $34) + (local.get $20) (i32.const 16) ) ) - (local.set $35 + (local.set $33 (i32.add (local.tee $13 - (local.get $34) + (local.get $20) ) (i32.const 528) ) @@ -2104,7 +2017,7 @@ (i32.const 0) ) ) - (local.set $38 + (local.set $36 (local.tee $25 (i32.add (local.tee $4 @@ -2117,21 +2030,16 @@ ) ) ) - (local.set $39 + (local.set $40 (i32.add (local.get $4) (i32.const 39) ) ) - (local.set $43 + (local.set $41 (i32.add - (local.tee $40 - (i32.add - (local.get $13) - (i32.const 8) - ) - ) - (i32.const 4) + (local.get $13) + (i32.const 8) ) ) (local.set $32 @@ -2145,18 +2053,18 @@ (i32.const 12) ) ) - (local.set $41 + (local.set $42 (i32.add (local.get $4) (i32.const 11) ) ) - (local.set $44 + (local.set $43 (i32.sub (local.tee $27 (local.get $32) ) - (local.tee $36 + (local.tee $34 (local.tee $23 (i32.add (local.get $13) @@ -2166,21 +2074,21 @@ ) ) ) - (local.set $45 + (local.set $44 (i32.sub (i32.const -2) - (local.get $36) + (local.get $34) ) ) - (local.set $46 + (local.set $45 (i32.add (local.get $27) (i32.const 2) ) ) - (local.set $48 + (local.set $47 (i32.add - (local.tee $47 + (local.tee $46 (i32.add (local.get $13) (i32.const 24) @@ -2189,7 +2097,7 @@ (i32.const 288) ) ) - (local.set $42 + (local.set $37 (local.tee $29 (i32.add (local.get $23) @@ -2197,7 +2105,7 @@ ) ) ) - (local.set $33 + (local.set $38 (i32.add (local.get $23) (i32.const 8) @@ -3507,7 +3415,7 @@ (local.tee $10 (i32.add (i32.sub - (local.get $38) + (local.get $36) (local.tee $6 (local.get $7) ) @@ -3630,14 +3538,14 @@ ) (br $__rjti$4) ) - (i32.store8 - (local.get $39) + (i32.store8 offset=575 + (local.get $13) (i32.load (local.get $13) ) ) (local.set $4 - (local.get $39) + (local.get $40) ) (local.set $10 (local.get $7) @@ -3677,19 +3585,19 @@ ) (br $__rjti$5) ) - (i32.store - (local.get $40) + (i32.store offset=8 + (local.get $20) (i32.load (local.get $13) ) ) - (i32.store - (local.get $43) + (i32.store offset=12 + (local.get $13) (i32.const 0) ) (i32.store (local.get $13) - (local.get $40) + (local.get $41) ) (local.set $7 (i32.const -1) @@ -3723,7 +3631,7 @@ (local.get $13) ) ) - (i32.store + (i32.store offset=16 (local.get $20) (i32.const 0) ) @@ -3802,7 +3710,7 @@ (f64.mul (call $_frexp (local.get $15) - (local.get $20) + (local.get $39) ) (f64.const 2) ) @@ -3810,10 +3718,10 @@ (f64.const 0) ) ) - (i32.store + (i32.store offset=16 (local.get $20) (i32.add - (i32.load + (i32.load offset=16 (local.get $20) ) (i32.const -1) @@ -3927,7 +3835,7 @@ (i32.sub (i32.const 0) (local.tee $6 - (i32.load + (i32.load offset=16 (local.get $20) ) ) @@ -3955,12 +3863,12 @@ (local.get $32) ) (block - (i32.store8 - (local.get $41) + (i32.store8 offset=587 + (local.get $13) (i32.const 48) ) (local.set $4 - (local.get $41) + (local.get $42) ) ) ) @@ -4047,7 +3955,7 @@ (i32.const 1) ) ) - (local.get $36) + (local.get $34) ) (i32.const 1) ) @@ -4096,14 +4004,14 @@ (i32.sub (i32.add (local.get $5) - (local.get $46) + (local.get $45) ) (local.get $7) ) (i32.add (local.get $4) (i32.sub - (local.get $44) + (local.get $43) (local.get $7) ) ) @@ -4115,7 +4023,7 @@ (i32.lt_s (i32.add (local.get $4) - (local.get $45) + (local.get $44) ) (local.get $5) ) @@ -4154,7 +4062,7 @@ (local.set $4 (i32.sub (local.get $4) - (local.get $36) + (local.get $34) ) ) (if @@ -4231,11 +4139,11 @@ (if (result f64) (local.get $4) (block (result f64) - (i32.store + (i32.store offset=16 (local.get $20) (local.tee $4 (i32.add - (i32.load + (i32.load offset=16 (local.get $20) ) (i32.const -28) @@ -4249,7 +4157,7 @@ ) (block (result f64) (local.set $4 - (i32.load + (i32.load offset=16 (local.get $20) ) ) @@ -4260,8 +4168,8 @@ (local.set $6 (local.tee $7 (select + (local.get $46) (local.get $47) - (local.get $48) (i32.lt_s (local.get $4) (i32.const 0) @@ -4304,7 +4212,7 @@ (if (i32.gt_s (local.tee $8 - (i32.load + (i32.load offset=16 (local.get $20) ) ) @@ -4424,11 +4332,11 @@ ) ) ) - (i32.store + (i32.store offset=16 (local.get $20) (local.tee $8 (i32.sub - (i32.load + (i32.load offset=16 (local.get $20) ) (local.get $12) @@ -4519,7 +4427,7 @@ (i32.const -1) ) ) - (local.set $37 + (local.set $35 (i32.shr_u (i32.const 1000000000) (local.get $12) @@ -4552,7 +4460,7 @@ (local.get $8) (local.get $11) ) - (local.get $37) + (local.get $35) ) ) (br_if $while-in74 @@ -4636,11 +4544,11 @@ ) ) ) - (i32.store + (i32.store offset=16 (local.get $20) (local.tee $8 (i32.add - (i32.load + (i32.load offset=16 (local.get $20) ) (local.get $12) @@ -4758,7 +4666,7 @@ (i32.const 103) ) ) - (local.tee $37 + (local.tee $35 (i32.ne (local.get $17) (i32.const 0) @@ -4859,7 +4767,7 @@ (if (i32.eqz (i32.and - (local.tee $49 + (local.tee $48 (i32.eq (i32.add (local.get $5) @@ -4878,7 +4786,7 @@ (if (result f64) (i32.lt_u (local.get $12) - (local.tee $50 + (local.tee $49 (i32.div_s (local.get $11) (i32.const 2) @@ -4890,10 +4798,10 @@ (f64.const 1) (f64.const 1.5) (i32.and - (local.get $49) + (local.get $48) (i32.eq (local.get $12) - (local.get $50) + (local.get $49) ) ) ) @@ -5142,7 +5050,7 @@ (i32.add (local.get $17) (i32.xor - (local.get $37) + (local.get $35) (i32.const 1) ) ) @@ -5567,12 +5475,12 @@ (local.get $29) ) ) - (i32.store8 - (local.get $33) + (i32.store8 offset=596 + (local.get $13) (i32.const 48) ) (local.set $6 - (local.get $33) + (local.get $38) ) ) (block @@ -5614,7 +5522,7 @@ (call $___fwritex (local.get $6) (i32.sub - (local.get $42) + (local.get $37) (local.get $6) ) (local.get $0) @@ -5811,12 +5719,12 @@ (local.get $29) ) (block - (i32.store8 - (local.get $33) + (i32.store8 offset=596 + (local.get $13) (i32.const 48) ) (local.set $4 - (local.get $33) + (local.get $38) ) ) ) @@ -5900,7 +5808,7 @@ ) (local.set $7 (i32.sub - (local.get $42) + (local.get $37) (local.get $4) ) ) @@ -6313,7 +6221,7 @@ (i32.lt_s (local.tee $6 (call $_wctomb - (local.get $35) + (local.get $33) (local.get $8) ) ) @@ -6398,7 +6306,7 @@ (i32.add (local.tee $7 (call $_wctomb - (local.get $35) + (local.get $33) (local.get $7) ) ) @@ -6419,7 +6327,7 @@ ) ) (call $___fwritex - (local.get $35) + (local.get $33) (local.get $7) (local.get $0) ) @@ -6510,7 +6418,7 @@ (i32.const 1) ) (i32.sub - (local.get $38) + (local.get $36) (local.tee $4 (local.get $6) ) @@ -6725,7 +6633,7 @@ ) ) (global.set $STACKTOP - (local.get $34) + (local.get $20) ) (local.get $16) ) @@ -6810,8 +6718,11 @@ (local.get $0) (local.get $1) ) - (i32.store offset=4 - (local.get $0) + (i32.store + (i32.add + (local.get $0) + (i32.const 4) + ) (i32.shr_s (i32.shl (i32.lt_s @@ -6851,8 +6762,11 @@ (local.get $0) (local.get $3) ) - (i32.store offset=4 - (local.get $0) + (i32.store + (i32.add + (local.get $0) + (i32.const 4) + ) (i32.const 0) ) (br $label$break$L1) @@ -6875,8 +6789,11 @@ ) ) (local.set $3 - (i32.load offset=4 - (local.get $3) + (i32.load + (i32.add + (local.get $3) + (i32.const 4) + ) ) ) (i32.store @@ -6890,8 +6807,11 @@ (local.get $0) (local.get $5) ) - (i32.store offset=4 - (local.get $0) + (i32.store + (i32.add + (local.get $0) + (i32.const 4) + ) (local.get $3) ) (br $label$break$L1) @@ -6933,8 +6853,11 @@ ) ) ) - (i32.store offset=4 - (local.get $0) + (i32.store + (i32.add + (local.get $0) + (i32.const 4) + ) (i32.shr_s (i32.shl (i32.lt_s @@ -6977,8 +6900,11 @@ (i32.const 65535) ) ) - (i32.store offset=4 - (local.get $0) + (i32.store + (i32.add + (local.get $0) + (i32.const 4) + ) (i32.const 0) ) (br $label$break$L1) @@ -7020,8 +6946,11 @@ ) ) ) - (i32.store offset=4 - (local.get $0) + (i32.store + (i32.add + (local.get $0) + (i32.const 4) + ) (i32.shr_s (i32.shl (i32.lt_s @@ -7064,8 +6993,11 @@ (i32.const 255) ) ) - (i32.store offset=4 - (local.get $0) + (i32.store + (i32.add + (local.get $0) + (i32.const 4) + ) (i32.const 0) ) (br $label$break$L1) @@ -7406,569 +7338,575 @@ (local $16 i32) (local $17 i32) (local $18 i32) - (local.set $0 - (if (result i32) - (i32.lt_u - (local.get $0) - (i32.const 245) - ) - (block (result i32) - (if - (i32.and - (local.tee $10 - (i32.shr_u - (local.tee $6 - (i32.load - (i32.const 176) + (block $folding-inner1 + (local.set $0 + (if (result i32) + (i32.lt_u + (local.get $0) + (i32.const 245) + ) + (block (result i32) + (if + (i32.and + (local.tee $12 + (i32.shr_u + (local.tee $6 + (i32.load + (i32.const 176) + ) ) - ) - (local.tee $13 - (i32.shr_u - (local.tee $2 - (select - (i32.const 16) - (i32.and - (i32.add + (local.tee $13 + (i32.shr_u + (local.tee $4 + (select + (i32.const 16) + (i32.and + (i32.add + (local.get $0) + (i32.const 11) + ) + (i32.const -8) + ) + (i32.lt_u (local.get $0) (i32.const 11) ) - (i32.const -8) - ) - (i32.lt_u - (local.get $0) - (i32.const 11) ) ) + (i32.const 3) ) - (i32.const 3) ) ) ) + (i32.const 3) ) - (i32.const 3) - ) - (block - (if - (i32.eq - (local.tee $7 - (i32.load - (local.tee $1 - (i32.add - (local.tee $11 - (i32.load - (local.tee $3 - (i32.add - (local.tee $2 + (block + (if + (i32.eq + (local.tee $2 + (i32.load offset=8 + (local.tee $3 + (i32.load offset=8 + (local.tee $1 + (i32.add + (i32.shl + (local.tee $0 (i32.add - (i32.shl - (local.tee $4 - (i32.add - (i32.xor - (i32.and - (local.get $10) - (i32.const 1) - ) - (i32.const 1) - ) - (local.get $13) - ) + (i32.xor + (i32.and + (local.get $12) + (i32.const 1) ) - (i32.const 3) + (i32.const 1) ) - (i32.const 216) + (local.get $13) ) ) - (i32.const 8) + (i32.const 3) ) + (i32.const 216) ) ) ) - (i32.const 8) ) ) ) + (local.get $1) ) - (local.get $2) - ) - (i32.store - (i32.const 176) - (i32.and - (local.get $6) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $4) - ) - (i32.const -1) - ) - ) - ) - (block - (if - (i32.lt_u - (local.get $7) - (i32.load - (i32.const 192) + (i32.store + (i32.const 176) + (i32.and + (local.get $6) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $0) + ) + (i32.const -1) ) ) - (call $_abort) ) - (if - (i32.eq - (local.get $11) - (i32.load - (local.tee $0 - (i32.add - (local.get $7) - (i32.const 12) - ) + (block + (if + (i32.lt_u + (local.get $2) + (i32.load + (i32.const 192) ) ) + (call $_abort) ) - (block - (i32.store - (local.get $0) - (local.get $2) - ) - (i32.store + (if + (i32.eq (local.get $3) - (local.get $7) + (i32.load offset=12 + (local.get $2) + ) ) + (block + (i32.store offset=12 + (local.get $2) + (local.get $1) + ) + (i32.store offset=8 + (local.get $1) + (local.get $2) + ) + ) + (call $_abort) ) - (call $_abort) ) ) - ) - (i32.store offset=4 - (local.get $11) - (i32.or - (local.tee $0 - (i32.shl - (local.get $4) - (i32.const 3) + (i32.store offset=4 + (local.get $3) + (i32.or + (local.tee $0 + (i32.shl + (local.get $0) + (i32.const 3) + ) ) + (i32.const 3) ) - (i32.const 3) ) - ) - (i32.store - (local.tee $0 - (i32.add + (i32.store offset=4 + (local.tee $0 (i32.add (local.get $0) - (local.get $11) + (local.get $3) ) - (i32.const 4) ) - ) - (i32.or - (i32.load - (local.get $0) + (i32.or + (i32.load offset=4 + (local.get $0) + ) + (i32.const 1) ) - (i32.const 1) ) - ) - (return - (local.get $1) + (br $folding-inner1) ) ) - ) - (if (result i32) - (i32.gt_u - (local.get $2) - (local.tee $0 - (i32.load - (i32.const 184) + (if (result i32) + (i32.gt_u + (local.get $4) + (local.tee $0 + (i32.load + (i32.const 184) + ) ) ) - ) - (block (result i32) - (if - (local.get $10) - (block - (if - (i32.eq - (local.tee $8 - (i32.load - (local.tee $4 - (i32.add - (local.tee $10 - (i32.load - (local.tee $3 - (i32.add - (local.tee $7 + (block (result i32) + (if + (local.get $12) + (block + (if + (i32.eq + (local.tee $9 + (i32.load offset=8 + (local.tee $11 + (i32.load offset=8 + (local.tee $7 + (i32.add + (i32.shl + (local.tee $2 (i32.add - (i32.shl - (local.tee $11 - (i32.add + (i32.or + (i32.or + (i32.or (i32.or - (i32.or - (i32.or - (i32.or - (local.tee $3 - (i32.and - (i32.shr_u - (local.tee $4 - (i32.add - (i32.and - (local.tee $3 - (i32.and - (i32.or - (local.tee $3 - (i32.shl - (i32.const 2) - (local.get $13) - ) - ) - (i32.sub - (i32.const 0) - (local.get $3) - ) - ) - (i32.shl - (local.get $10) - (local.get $13) - ) + (local.tee $2 + (i32.and + (i32.shr_u + (local.tee $7 + (i32.add + (i32.and + (local.tee $2 + (i32.and + (i32.or + (local.tee $2 + (i32.shl + (i32.const 2) + (local.get $13) ) ) (i32.sub (i32.const 0) - (local.get $3) + (local.get $2) ) ) - (i32.const -1) + (i32.shl + (local.get $12) + (local.get $13) + ) ) ) - (i32.const 12) - ) - (i32.const 16) - ) - ) - (local.tee $3 - (i32.and - (i32.shr_u - (local.tee $4 - (i32.shr_u - (local.get $4) - (local.get $3) - ) + (i32.sub + (i32.const 0) + (local.get $2) ) - (i32.const 5) ) - (i32.const 8) + (i32.const -1) ) ) + (i32.const 12) ) - (local.tee $3 - (i32.and + (i32.const 16) + ) + ) + (local.tee $2 + (i32.and + (i32.shr_u + (local.tee $7 (i32.shr_u - (local.tee $4 - (i32.shr_u - (local.get $4) - (local.get $3) - ) - ) - (i32.const 2) + (local.get $7) + (local.get $2) ) - (i32.const 4) ) + (i32.const 5) ) + (i32.const 8) ) - (local.tee $3 - (i32.and + ) + ) + (local.tee $2 + (i32.and + (i32.shr_u + (local.tee $7 (i32.shr_u - (local.tee $4 - (i32.shr_u - (local.get $4) - (local.get $3) - ) - ) - (i32.const 1) + (local.get $7) + (local.get $2) ) - (i32.const 2) ) + (i32.const 2) ) + (i32.const 4) ) - (local.tee $3 - (i32.and + ) + ) + (local.tee $2 + (i32.and + (i32.shr_u + (local.tee $7 (i32.shr_u - (local.tee $4 - (i32.shr_u - (local.get $4) - (local.get $3) - ) - ) - (i32.const 1) + (local.get $7) + (local.get $2) ) - (i32.const 1) ) + (i32.const 1) ) + (i32.const 2) ) + ) + ) + (local.tee $2 + (i32.and (i32.shr_u - (local.get $4) - (local.get $3) + (local.tee $7 + (i32.shr_u + (local.get $7) + (local.get $2) + ) + ) + (i32.const 1) ) + (i32.const 1) ) ) - (i32.const 3) ) - (i32.const 216) + (i32.shr_u + (local.get $7) + (local.get $2) + ) ) ) - (i32.const 8) + (i32.const 3) ) + (i32.const 216) ) ) ) - (i32.const 8) ) ) ) + (local.get $7) ) - (local.get $7) - ) - (block - (i32.store - (i32.const 176) - (i32.and - (local.get $6) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $11) + (block + (i32.store + (i32.const 176) + (i32.and + (local.get $6) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $2) + ) + (i32.const -1) ) - (i32.const -1) ) ) - ) - (local.set $9 - (local.get $0) - ) - ) - (block - (if - (i32.lt_u - (local.get $8) - (i32.load - (i32.const 192) - ) + (local.set $8 + (local.get $0) ) - (call $_abort) ) - (if - (i32.eq - (i32.load - (local.tee $0 - (i32.add - (local.get $8) - (i32.const 12) - ) - ) - ) - (local.get $10) - ) - (block - (i32.store - (local.get $0) - (local.get $7) - ) - (i32.store - (local.get $3) - (local.get $8) - ) - (local.set $9 + (block + (if + (i32.lt_u + (local.get $9) (i32.load - (i32.const 184) + (i32.const 192) ) ) + (call $_abort) ) - (call $_abort) - ) - ) - ) - (i32.store offset=4 - (local.get $10) - (i32.or - (local.get $2) - (i32.const 3) - ) - ) - (i32.store offset=4 - (local.tee $7 - (i32.add - (local.get $2) - (local.get $10) - ) - ) - (i32.or - (local.tee $11 - (i32.sub - (i32.shl + (if + (i32.eq + (i32.load offset=12 + (local.get $9) + ) (local.get $11) - (i32.const 3) ) - (local.get $2) + (block + (i32.store offset=12 + (local.get $9) + (local.get $7) + ) + (i32.store offset=8 + (local.get $7) + (local.get $9) + ) + (local.set $8 + (i32.load + (i32.const 184) + ) + ) + ) + (call $_abort) ) ) - (i32.const 1) ) - ) - (i32.store - (i32.add - (local.get $7) + (i32.store offset=4 (local.get $11) + (i32.or + (local.get $4) + (i32.const 3) + ) ) - (local.get $11) - ) - (if - (local.get $9) - (block - (local.set $6 - (i32.load - (i32.const 196) + (i32.store offset=4 + (local.tee $7 + (i32.add + (local.get $4) + (local.get $11) ) ) - (local.set $2 - (i32.add - (i32.shl - (local.tee $0 - (i32.shr_u - (local.get $9) - (i32.const 3) - ) + (i32.or + (local.tee $9 + (i32.sub + (i32.shl + (local.get $2) + (i32.const 3) ) - (i32.const 3) + (local.get $4) ) - (i32.const 216) ) + (i32.const 1) ) - (if - (i32.and - (local.tee $3 - (i32.load - (i32.const 176) - ) + ) + (i32.store + (i32.add + (local.get $7) + (local.get $9) + ) + (local.get $9) + ) + (if + (local.get $8) + (block + (local.set $6 + (i32.load + (i32.const 196) ) - (local.tee $0 + ) + (local.set $4 + (i32.add (i32.shl - (i32.const 1) - (local.get $0) + (local.tee $0 + (i32.shr_u + (local.get $8) + (i32.const 3) + ) + ) + (i32.const 3) ) + (i32.const 216) ) ) (if - (i32.lt_u - (local.tee $0 + (i32.and + (local.tee $2 (i32.load - (local.tee $3 - (i32.add - (local.get $2) - (i32.const 8) - ) - ) + (i32.const 176) ) ) - (i32.load - (i32.const 192) + (local.tee $0 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) - (call $_abort) (block - (local.set $5 - (local.get $3) + (local.set $2 + (i32.add + (local.get $4) + (i32.const 8) + ) ) - (local.set $1 - (local.get $0) + (if + (i32.lt_u + (local.tee $0 + (i32.load offset=8 + (local.get $4) + ) + ) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + (block + (local.set $3 + (local.get $2) + ) + (local.set $1 + (local.get $0) + ) + ) ) ) - ) - (block - (i32.store - (i32.const 176) - (i32.or - (local.get $0) - (local.get $3) + (block + (i32.store + (i32.const 176) + (i32.or + (local.get $0) + (local.get $2) + ) ) - ) - (local.set $5 - (i32.add - (local.get $2) - (i32.const 8) + (local.set $3 + (i32.add + (local.get $4) + (i32.const 8) + ) + ) + (local.set $1 + (local.get $4) ) ) - (local.set $1 - (local.get $2) + ) + (i32.store + (local.get $3) + (local.get $6) + ) + (i32.store + (i32.add + (local.get $1) + (i32.const 12) ) + (local.get $6) + ) + (i32.store offset=8 + (local.get $6) + (local.get $1) + ) + (i32.store offset=12 + (local.get $6) + (local.get $4) ) ) - (i32.store - (local.get $5) - (local.get $6) - ) - (i32.store offset=12 - (local.get $1) - (local.get $6) - ) - (i32.store offset=8 - (local.get $6) - (local.get $1) - ) - (i32.store offset=12 - (local.get $6) - (local.get $2) + ) + (i32.store + (i32.const 184) + (local.get $9) + ) + (i32.store + (i32.const 196) + (local.get $7) + ) + (return + (i32.add + (local.get $11) + (i32.const 8) ) ) ) - (i32.store - (i32.const 184) - (local.get $11) - ) - (i32.store - (i32.const 196) - (local.get $7) - ) - (return - (local.get $4) - ) ) - ) - (if (result i32) - (local.tee $0 - (i32.load - (i32.const 180) + (if (result i32) + (local.tee $0 + (i32.load + (i32.const 180) + ) ) - ) - (block - (local.set $11 - (i32.sub - (i32.and - (i32.load offset=4 - (local.tee $0 - (i32.load offset=480 - (i32.shl + (block + (local.set $7 + (i32.sub + (i32.and + (i32.load offset=4 + (local.tee $0 + (i32.load (i32.add - (i32.or - (i32.or + (i32.shl + (i32.add (i32.or (i32.or - (local.tee $0 - (i32.and - (i32.shr_u - (local.tee $1 - (i32.add - (i32.and - (local.get $0) - (i32.sub - (i32.const 0) + (i32.or + (i32.or + (local.tee $0 + (i32.and + (i32.shr_u + (local.tee $1 + (i32.add + (i32.and + (local.get $0) + (i32.sub + (i32.const 0) + (local.get $0) + ) + ) + (i32.const -1) + ) + ) + (i32.const 12) + ) + (i32.const 16) + ) + ) + (local.tee $0 + (i32.and + (i32.shr_u + (local.tee $1 + (i32.shr_u + (local.get $1) (local.get $0) ) ) - (i32.const -1) + (i32.const 5) ) + (i32.const 8) ) - (i32.const 12) ) - (i32.const 16) + ) + (local.tee $0 + (i32.and + (i32.shr_u + (local.tee $1 + (i32.shr_u + (local.get $1) + (local.get $0) + ) + ) + (i32.const 2) + ) + (i32.const 4) + ) ) ) (local.tee $0 @@ -7980,9 +7918,9 @@ (local.get $0) ) ) - (i32.const 5) + (i32.const 1) ) - (i32.const 8) + (i32.const 2) ) ) ) @@ -7995,881 +7933,876 @@ (local.get $0) ) ) - (i32.const 2) - ) - (i32.const 4) - ) - ) - ) - (local.tee $0 - (i32.and - (i32.shr_u - (local.tee $1 - (i32.shr_u - (local.get $1) - (local.get $0) - ) + (i32.const 1) ) (i32.const 1) ) - (i32.const 2) ) ) - ) - (local.tee $0 - (i32.and - (i32.shr_u - (local.tee $1 - (i32.shr_u - (local.get $1) - (local.get $0) - ) - ) - (i32.const 1) - ) - (i32.const 1) + (i32.shr_u + (local.get $1) + (local.get $0) ) ) + (i32.const 2) ) - (i32.shr_u - (local.get $1) - (local.get $0) - ) + (i32.const 480) ) - (i32.const 2) ) ) ) + (i32.const -8) ) - (i32.const -8) + (local.get $4) ) - (local.get $2) ) - ) - (local.set $7 - (local.get $0) - ) - (loop $while-in - (block $while-out - (if - (local.tee $1 - (i32.load offset=16 - (local.get $0) - ) - ) - (local.set $0 - (local.get $1) - ) + (local.set $3 + (local.tee $1 + (local.get $0) + ) + ) + (loop $while-in + (block $while-out (if (i32.eqz (local.tee $0 - (i32.load offset=20 - (local.get $0) + (i32.load + (i32.add + (local.get $1) + (i32.const 16) + ) ) ) ) - (block - (local.set $6 - (local.get $11) + (if + (i32.eqz + (local.tee $0 + (i32.load + (i32.add + (local.get $1) + (i32.const 20) + ) + ) + ) ) - (local.set $8 - (local.get $7) + (block + (local.set $9 + (local.get $7) + ) + (local.set $6 + (local.get $3) + ) + (br $while-out) ) - (br $while-out) ) ) - ) - (local.set $6 - (i32.lt_u - (local.tee $1 - (i32.sub - (i32.and - (i32.load offset=4 - (local.get $0) + (local.set $9 + (i32.lt_u + (local.tee $1 + (i32.sub + (i32.and + (i32.load + (i32.add + (local.get $0) + (i32.const 4) + ) + ) + (i32.const -8) ) - (i32.const -8) + (local.get $4) ) - (local.get $2) ) + (local.get $7) ) - (local.get $11) ) - ) - (local.set $11 - (select - (local.get $1) - (local.get $11) - (local.get $6) + (local.set $7 + (select + (local.get $1) + (local.get $7) + (local.get $9) + ) ) - ) - (local.set $7 - (select - (local.get $0) - (local.get $7) - (local.get $6) + (local.set $3 + (select + (local.tee $1 + (local.get $0) + ) + (local.get $3) + (local.get $9) + ) ) + (br $while-in) ) - (br $while-in) ) - ) - (if - (i32.lt_u - (local.get $8) - (local.tee $10 - (i32.load - (i32.const 192) + (if + (i32.lt_u + (local.get $6) + (local.tee $11 + (i32.load + (i32.const 192) + ) ) ) + (call $_abort) ) - (call $_abort) - ) - (if - (i32.ge_u - (local.get $8) - (local.tee $5 - (i32.add - (local.get $2) - (local.get $8) + (if + (i32.ge_u + (local.get $6) + (local.tee $12 + (i32.add + (local.get $4) + (local.get $6) + ) ) ) + (call $_abort) ) - (call $_abort) - ) - (local.set $9 - (i32.load offset=24 - (local.get $8) + (local.set $8 + (i32.load offset=24 + (local.get $6) + ) ) - ) - (if - (i32.eq - (local.tee $0 - (i32.load offset=12 - (local.get $8) + (if + (i32.eq + (local.tee $0 + (i32.load offset=12 + (local.get $6) + ) ) + (local.get $6) ) - (local.get $8) - ) - (block $do-once4 - (if - (i32.eqz - (local.tee $1 - (i32.load - (local.tee $0 - (i32.add - (local.get $8) - (i32.const 20) - ) - ) - ) + (block $do-once4 + (local.set $0 + (i32.add + (local.get $6) + (i32.const 20) ) ) - (br_if $do-once4 + (if (i32.eqz (local.tee $1 - (i32.load - (local.tee $0 - (i32.add - (local.get $8) - (i32.const 16) + (i32.load offset=20 + (local.get $6) + ) + ) + ) + (block + (local.set $0 + (i32.add + (local.get $6) + (i32.const 16) + ) + ) + (br_if $do-once4 + (i32.eqz + (local.tee $1 + (i32.load offset=16 + (local.get $6) ) ) ) ) ) ) - ) - (loop $while-in7 - (if - (local.tee $7 - (i32.load - (local.tee $11 - (i32.add - (local.get $1) - (i32.const 20) + (loop $while-in7 + (if + (local.tee $3 + (i32.load + (local.tee $7 + (i32.add + (local.get $1) + (i32.const 20) + ) ) ) ) - ) - (block - (local.set $1 - (local.get $7) - ) - (local.set $0 - (local.get $11) + (block + (local.set $1 + (local.get $3) + ) + (local.set $0 + (local.get $7) + ) + (br $while-in7) ) - (br $while-in7) ) - ) - (if - (local.tee $7 - (i32.load - (local.tee $11 - (i32.add - (local.get $1) - (i32.const 16) + (if + (local.tee $3 + (i32.load + (local.tee $7 + (i32.add + (local.get $1) + (i32.const 16) + ) ) ) ) - ) - (block - (local.set $1 - (local.get $7) - ) - (local.set $0 - (local.get $11) + (block + (local.set $1 + (local.get $3) + ) + (local.set $0 + (local.get $7) + ) + (br $while-in7) ) - (br $while-in7) ) ) - ) - (if - (i32.lt_u - (local.get $0) - (local.get $10) - ) - (call $_abort) - (block - (i32.store + (if + (i32.lt_u (local.get $0) - (i32.const 0) - ) - (local.set $4 - (local.get $1) + (local.get $11) ) - ) - ) - ) - (block - (if - (i32.lt_u - (local.tee $11 - (i32.load offset=8 - (local.get $8) + (call $_abort) + (block + (i32.store + (local.get $0) + (i32.const 0) ) - ) - (local.get $10) - ) - (call $_abort) - ) - (if - (i32.ne - (local.get $8) - (i32.load - (local.tee $7 - (i32.add - (local.get $11) - (i32.const 12) - ) + (local.set $10 + (local.get $1) ) ) ) - (call $_abort) ) - (if - (i32.eq - (i32.load + (block + (if + (i32.lt_u (local.tee $1 - (i32.add - (local.get $0) - (i32.const 8) + (i32.load offset=8 + (local.get $6) ) ) + (local.get $11) ) - (local.get $8) + (call $_abort) ) - (block - (i32.store - (local.get $7) - (local.get $0) + (if + (i32.ne + (local.get $6) + (i32.load offset=12 + (local.get $1) + ) ) - (i32.store - (local.get $1) - (local.get $11) + (call $_abort) + ) + (if + (i32.eq + (i32.load offset=8 + (local.get $0) + ) + (local.get $6) ) - (local.set $4 - (local.get $0) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $10 + (local.get $0) + ) ) + (call $_abort) ) - (call $_abort) ) ) - ) - (if - (local.get $9) - (block $do-once8 - (if - (i32.eq - (i32.load - (local.tee $0 - (i32.add - (i32.shl - (local.tee $1 - (i32.load offset=28 - (local.get $8) + (if + (local.get $8) + (block $do-once8 + (if + (i32.eq + (i32.load + (local.tee $0 + (i32.add + (i32.shl + (local.tee $1 + (i32.load offset=28 + (local.get $6) + ) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 480) ) - (i32.const 480) ) ) + (local.get $6) ) - (local.get $8) - ) - (block - (i32.store - (local.get $0) - (local.get $4) - ) - (if - (i32.eqz - (local.get $4) + (block + (i32.store + (local.get $0) + (local.get $10) ) - (block - (i32.store - (i32.const 180) - (i32.and - (i32.load - (i32.const 180) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $1) + (if + (i32.eqz + (local.get $10) + ) + (block + (i32.store + (i32.const 180) + (i32.and + (i32.load + (i32.const 180) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $1) + ) + (i32.const -1) ) - (i32.const -1) ) ) + (br $do-once8) ) - (br $do-once8) ) ) - ) - (block - (if - (i32.lt_u - (local.get $9) - (i32.load - (i32.const 192) + (block + (if + (i32.lt_u + (local.get $8) + (i32.load + (i32.const 192) + ) ) + (call $_abort) ) - (call $_abort) - ) - (if - (i32.eq - (i32.load - (local.tee $0 - (i32.add - (local.get $9) - (i32.const 16) - ) + (if + (i32.eq + (i32.load offset=16 + (local.get $8) ) + (local.get $6) + ) + (i32.store offset=16 + (local.get $8) + (local.get $10) + ) + (i32.store offset=20 + (local.get $8) + (local.get $10) ) - (local.get $8) - ) - (i32.store - (local.get $0) - (local.get $4) - ) - (i32.store offset=20 - (local.get $9) - (local.get $4) ) - ) - (br_if $do-once8 - (i32.eqz - (local.get $4) + (br_if $do-once8 + (i32.eqz + (local.get $10) + ) ) ) ) - ) - (if - (i32.lt_u - (local.get $4) - (local.tee $0 - (i32.load - (i32.const 192) + (if + (i32.lt_u + (local.get $10) + (local.tee $0 + (i32.load + (i32.const 192) + ) ) ) + (call $_abort) ) - (call $_abort) - ) - (i32.store offset=24 - (local.get $4) - (local.get $9) - ) - (if - (local.tee $1 - (i32.load offset=16 - (local.get $8) + (i32.store + (i32.add + (local.get $10) + (i32.const 24) ) + (local.get $8) ) (if - (i32.lt_u - (local.get $1) - (local.get $0) + (local.tee $1 + (i32.load offset=16 + (local.get $6) + ) ) - (call $_abort) - (block - (i32.store offset=16 - (local.get $4) + (if + (i32.lt_u (local.get $1) + (local.get $0) ) - (i32.store offset=24 - (local.get $1) - (local.get $4) + (call $_abort) + (block + (i32.store + (i32.add + (local.get $10) + (i32.const 16) + ) + (local.get $1) + ) + (i32.store offset=24 + (local.get $1) + (local.get $10) + ) ) ) ) - ) - (if - (local.tee $0 - (i32.load offset=20 - (local.get $8) - ) - ) (if - (i32.lt_u - (local.get $0) - (i32.load - (i32.const 192) + (local.tee $0 + (i32.load offset=20 + (local.get $6) ) ) - (call $_abort) - (block - (i32.store offset=20 - (local.get $4) + (if + (i32.lt_u (local.get $0) + (i32.load + (i32.const 192) + ) ) - (i32.store offset=24 - (local.get $0) - (local.get $4) + (call $_abort) + (block + (i32.store + (i32.add + (local.get $10) + (i32.const 20) + ) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $10) + ) ) ) ) ) ) - ) - (if - (i32.lt_u - (local.get $6) - (i32.const 16) - ) - (block - (i32.store offset=4 - (local.get $8) - (i32.or - (local.tee $0 - (i32.add - (local.get $2) - (local.get $6) + (if + (i32.lt_u + (local.get $9) + (i32.const 16) + ) + (block + (i32.store offset=4 + (local.get $6) + (i32.or + (local.tee $0 + (i32.add + (local.get $4) + (local.get $9) + ) ) + (i32.const 3) ) - (i32.const 3) ) - ) - (i32.store - (local.tee $0 - (i32.add + (i32.store offset=4 + (local.tee $0 (i32.add (local.get $0) - (local.get $8) + (local.get $6) ) - (i32.const 4) ) - ) - (i32.or - (i32.load - (local.get $0) + (i32.or + (i32.load offset=4 + (local.get $0) + ) + (i32.const 1) ) - (i32.const 1) ) ) - ) - (block - (i32.store offset=4 - (local.get $8) - (i32.or - (local.get $2) - (i32.const 3) - ) - ) - (i32.store offset=4 - (local.get $5) - (i32.or + (block + (i32.store offset=4 (local.get $6) - (i32.const 1) + (i32.or + (local.get $4) + (i32.const 3) + ) ) - ) - (i32.store - (i32.add - (local.get $5) - (local.get $6) + (i32.store offset=4 + (local.get $12) + (i32.or + (local.get $9) + (i32.const 1) + ) ) - (local.get $6) - ) - (if - (local.tee $0 - (i32.load - (i32.const 184) + (i32.store + (i32.add + (local.get $9) + (local.get $12) ) + (local.get $9) ) - (block - (local.set $4 + (if + (local.tee $0 (i32.load - (i32.const 196) + (i32.const 184) ) ) - (local.set $2 - (i32.add - (i32.shl - (local.tee $0 - (i32.shr_u - (local.get $0) - (i32.const 3) - ) - ) - (i32.const 3) + (block + (local.set $4 + (i32.load + (i32.const 196) ) - (i32.const 216) ) - ) - (if - (i32.and - (local.tee $1 - (i32.load - (i32.const 176) - ) - ) - (local.tee $0 + (local.set $3 + (i32.add (i32.shl - (i32.const 1) - (local.get $0) + (local.tee $0 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (i32.const 3) ) + (i32.const 216) ) ) (if - (i32.lt_u - (local.tee $0 + (i32.and + (local.tee $1 (i32.load - (local.tee $1 - (i32.add - (local.get $2) - (i32.const 8) - ) - ) + (i32.const 176) ) ) - (i32.load - (i32.const 192) + (local.tee $0 + (i32.shl + (i32.const 1) + (local.get $0) + ) ) ) - (call $_abort) (block - (local.set $12 - (local.get $1) + (local.set $1 + (i32.add + (local.get $3) + (i32.const 8) + ) ) - (local.set $3 - (local.get $0) + (if + (i32.lt_u + (local.tee $0 + (i32.load offset=8 + (local.get $3) + ) + ) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + (block + (local.set $5 + (local.get $1) + ) + (local.set $2 + (local.get $0) + ) + ) ) ) - ) - (block - (i32.store - (i32.const 176) - (i32.or - (local.get $0) - (local.get $1) + (block + (i32.store + (i32.const 176) + (i32.or + (local.get $0) + (local.get $1) + ) ) - ) - (local.set $12 - (i32.add - (local.get $2) - (i32.const 8) + (local.set $5 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + (local.set $2 + (local.get $3) ) ) - (local.set $3 + ) + (i32.store + (local.get $5) + (local.get $4) + ) + (i32.store + (i32.add (local.get $2) + (i32.const 12) ) + (local.get $4) + ) + (i32.store offset=8 + (local.get $4) + (local.get $2) + ) + (i32.store offset=12 + (local.get $4) + (local.get $3) ) ) - (i32.store - (local.get $12) - (local.get $4) - ) - (i32.store offset=12 - (local.get $3) - (local.get $4) - ) - (i32.store offset=8 - (local.get $4) - (local.get $3) - ) - (i32.store offset=12 - (local.get $4) - (local.get $2) - ) + ) + (i32.store + (i32.const 184) + (local.get $9) + ) + (i32.store + (i32.const 196) + (local.get $12) ) ) - (i32.store - (i32.const 184) + ) + (return + (i32.add (local.get $6) + (i32.const 8) ) - (i32.store - (i32.const 196) - (local.get $5) - ) - ) - ) - (return - (i32.add - (local.get $8) - (i32.const 8) ) ) + (local.get $4) ) - (local.get $2) ) + (local.get $4) ) - (local.get $2) - ) - ) - (if (result i32) - (i32.gt_u - (local.get $0) - (i32.const -65) ) - (i32.const -1) - (block $do-once (result i32) - (local.set $2 - (i32.and - (local.tee $0 - (i32.add - (local.get $0) - (i32.const 11) + (if (result i32) + (i32.gt_u + (local.get $0) + (i32.const -65) + ) + (i32.const -1) + (block $do-once (result i32) + (local.set $3 + (i32.and + (local.tee $0 + (i32.add + (local.get $0) + (i32.const 11) + ) ) + (i32.const -8) ) - (i32.const -8) ) - ) - (if (result i32) - (local.tee $18 - (i32.load - (i32.const 180) + (if (result i32) + (local.tee $18 + (i32.load + (i32.const 180) + ) ) - ) - (block (result i32) - (local.set $14 - (if (result i32) - (local.tee $0 - (i32.shr_u - (local.get $0) - (i32.const 8) - ) - ) + (block (result i32) + (local.set $14 (if (result i32) - (i32.gt_u - (local.get $2) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $0) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $4 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $0) - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.get $0) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $3) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $4 + (i32.and + (i32.shr_u + (i32.add + (local.tee $0 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (local.set $3 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $0) - (local.get $4) + (local.set $2 + (i32.and + (i32.shr_u + (i32.add + (local.tee $0 + (i32.shl + (local.get $0) + (local.get $4) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $2) - (i32.add - (local.tee $0 - (i32.add - (i32.sub - (i32.const 14) - (i32.or + (i32.or + (i32.and + (i32.shr_u + (local.get $3) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) (i32.or - (local.get $1) - (local.get $4) + (i32.or + (local.get $1) + (local.get $4) + ) + (local.get $2) ) - (local.get $3) ) - ) - (i32.shr_u - (i32.shl - (local.get $0) - (local.get $3) + (i32.shr_u + (i32.shl + (local.get $0) + (local.get $2) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $0) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) - ) - (local.set $3 - (i32.sub - (i32.const 0) - (local.get $2) + (local.set $2 + (i32.sub + (i32.const 0) + (local.get $3) + ) ) - ) - (block $__rjto$3 - (block $__rjti$3 - (local.set $0 - (if (result i32) - (local.tee $0 - (i32.load offset=480 - (i32.shl - (local.get $14) - (i32.const 2) + (block $__rjto$3 + (block $__rjti$3 + (local.set $0 + (if (result i32) + (local.tee $0 + (i32.load + (i32.add + (i32.shl + (local.get $14) + (i32.const 2) + ) + (i32.const 480) + ) ) ) - ) - (block (result i32) - (local.set $9 - (i32.shl - (local.get $2) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u + (block (result i32) + (local.set $8 + (i32.shl + (local.get $3) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $14) + (i32.const 1) + ) + ) + (i32.eq (local.get $14) - (i32.const 1) + (i32.const 31) ) ) - (i32.eq - (local.get $14) - (i32.const 31) - ) ) ) - ) - (local.set $1 - (i32.const 0) - ) - (loop $while-in14 (result i32) - (if - (i32.lt_u - (local.tee $4 - (i32.sub - (local.tee $12 - (i32.and - (i32.load offset=4 - (local.get $0) + (local.set $1 + (i32.const 0) + ) + (loop $while-in14 (result i32) + (if + (i32.lt_u + (local.tee $4 + (i32.sub + (local.tee $10 + (i32.and + (i32.load + (i32.add + (local.get $0) + (i32.const 4) + ) + ) + (i32.const -8) ) - (i32.const -8) ) + (local.get $3) ) - (local.get $2) ) + (local.get $2) ) - (local.get $3) - ) - (local.set $1 - (if (result i32) - (i32.eq - (local.get $2) - (local.get $12) - ) - (block - (local.set $1 - (local.get $4) + (local.set $1 + (if (result i32) + (i32.eq + (local.get $3) + (local.get $10) ) - (local.set $3 - (local.get $0) + (block + (local.set $1 + (local.get $4) + ) + (local.set $2 + (local.get $0) + ) + (br $__rjti$3) ) - (br $__rjti$3) - ) - (block (result i32) - (local.set $3 - (local.get $4) + (block (result i32) + (local.set $2 + (local.get $4) + ) + (local.get $0) ) - (local.get $0) ) ) ) - ) - (local.set $0 - (select - (local.get $5) - (local.tee $4 - (i32.load offset=20 - (local.get $0) - ) - ) - (i32.or - (i32.eqz - (local.get $4) + (local.set $0 + (select + (local.get $5) + (local.tee $4 + (i32.load + (i32.add + (local.get $0) + (i32.const 20) + ) + ) ) - (i32.eq - (local.get $4) - (local.tee $12 - (i32.load - (i32.add + (i32.or + (i32.eqz + (local.get $4) + ) + (i32.eq + (local.get $4) + (local.tee $10 + (i32.load (i32.add - (local.get $0) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $9) - (i32.const 31) + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $8) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) @@ -8877,109 +8810,139 @@ ) ) ) - ) - (local.set $4 - (i32.shl - (local.get $9) - (i32.xor - (local.tee $5 - (i32.eqz - (local.get $12) + (local.set $4 + (i32.shl + (local.get $8) + (i32.xor + (local.tee $5 + (i32.eqz + (local.get $10) + ) ) + (i32.const 1) ) - (i32.const 1) - ) - ) - ) - (if (result i32) - (local.get $5) - (block (result i32) - (local.set $4 - (local.get $0) ) - (local.get $1) ) - (block - (local.set $5 - (local.get $0) - ) - (local.set $9 - (local.get $4) + (if (result i32) + (local.get $5) + (block (result i32) + (local.set $4 + (local.get $0) + ) + (local.get $1) ) - (local.set $0 - (local.get $12) + (block + (local.set $5 + (local.get $0) + ) + (local.set $8 + (local.get $4) + ) + (local.set $0 + (local.get $10) + ) + (br $while-in14) ) - (br $while-in14) ) ) ) - ) - (block (result i32) - (local.set $4 + (block (result i32) + (local.set $4 + (i32.const 0) + ) (i32.const 0) ) - (i32.const 0) ) ) - ) - (if - (i32.eqz - (i32.or - (local.get $0) - (local.get $4) + (if + (i32.eqz + (i32.or + (local.get $0) + (local.get $4) + ) ) - ) - (block - (drop - (br_if $do-once - (local.get $2) - (i32.eqz - (local.tee $1 - (i32.and - (local.get $18) - (i32.or - (local.tee $1 - (i32.shl - (i32.const 2) - (local.get $14) + (block + (drop + (br_if $do-once + (local.get $3) + (i32.eqz + (local.tee $1 + (i32.and + (local.get $18) + (i32.or + (local.tee $1 + (i32.shl + (i32.const 2) + (local.get $14) + ) + ) + (i32.sub + (i32.const 0) + (local.get $1) ) - ) - (i32.sub - (i32.const 0) - (local.get $1) ) ) ) ) ) ) - ) - (local.set $4 - (i32.load offset=480 - (i32.shl + (local.set $4 + (i32.load (i32.add - (i32.or - (i32.or + (i32.shl + (i32.add (i32.or (i32.or - (local.tee $1 - (i32.and - (i32.shr_u - (local.tee $4 - (i32.add - (i32.and - (local.get $1) - (i32.sub - (i32.const 0) + (i32.or + (i32.or + (local.tee $1 + (i32.and + (i32.shr_u + (local.tee $4 + (i32.add + (i32.and + (local.get $1) + (i32.sub + (i32.const 0) + (local.get $1) + ) + ) + (i32.const -1) + ) + ) + (i32.const 12) + ) + (i32.const 16) + ) + ) + (local.tee $1 + (i32.and + (i32.shr_u + (local.tee $4 + (i32.shr_u + (local.get $4) (local.get $1) ) ) - (i32.const -1) + (i32.const 5) ) + (i32.const 8) ) - (i32.const 12) ) - (i32.const 16) + ) + (local.tee $1 + (i32.and + (i32.shr_u + (local.tee $4 + (i32.shr_u + (local.get $4) + (local.get $1) + ) + ) + (i32.const 2) + ) + (i32.const 4) + ) ) ) (local.tee $1 @@ -8991,9 +8954,9 @@ (local.get $1) ) ) - (i32.const 5) + (i32.const 1) ) - (i32.const 8) + (i32.const 2) ) ) ) @@ -9006,1889 +8969,1852 @@ (local.get $1) ) ) - (i32.const 2) - ) - (i32.const 4) - ) - ) - ) - (local.tee $1 - (i32.and - (i32.shr_u - (local.tee $4 - (i32.shr_u - (local.get $4) - (local.get $1) - ) + (i32.const 1) ) (i32.const 1) ) - (i32.const 2) ) ) - ) - (local.tee $1 - (i32.and - (i32.shr_u - (local.tee $4 - (i32.shr_u - (local.get $4) - (local.get $1) - ) - ) - (i32.const 1) - ) - (i32.const 1) + (i32.shr_u + (local.get $4) + (local.get $1) ) ) + (i32.const 2) ) - (i32.shr_u - (local.get $4) - (local.get $1) - ) + (i32.const 480) ) - (i32.const 2) ) ) ) ) - ) - (local.set $4 - (if (result i32) - (local.get $4) - (block - (local.set $1 - (local.get $3) - ) - (local.set $3 - (local.get $4) + (local.set $4 + (if (result i32) + (local.get $4) + (block + (local.set $1 + (local.get $2) + ) + (local.set $2 + (local.get $4) + ) + (br $__rjti$3) ) - (br $__rjti$3) + (local.get $0) ) - (local.get $0) ) + (br $__rjto$3) ) - (br $__rjto$3) - ) - (local.set $3 - (loop $while-in16 (result i32) - (local.set $12 - (i32.lt_u - (local.tee $4 - (i32.sub - (i32.and - (i32.load offset=4 - (local.get $3) + (local.set $2 + (loop $while-in16 (result i32) + (local.set $10 + (i32.lt_u + (local.tee $4 + (i32.sub + (i32.and + (i32.load + (i32.add + (local.get $2) + (i32.const 4) + ) + ) + (i32.const -8) ) - (i32.const -8) + (local.get $3) ) - (local.get $2) ) + (local.get $1) ) - (local.get $1) ) - ) - (local.set $1 - (select - (local.get $4) - (local.get $1) - (local.get $12) - ) - ) - (local.set $0 - (select - (local.get $3) - (local.get $0) - (local.get $12) + (local.set $1 + (select + (local.get $4) + (local.get $1) + (local.get $10) + ) ) - ) - (if - (local.tee $4 - (i32.load offset=16 - (local.get $3) + (local.set $0 + (select + (local.get $2) + (local.get $0) + (local.get $10) ) ) - (block - (local.set $3 - (local.get $4) + (if + (local.tee $4 + (i32.load + (i32.add + (local.get $2) + (i32.const 16) + ) + ) + ) + (block + (local.set $2 + (local.get $4) + ) + (br $while-in16) ) - (br $while-in16) ) - ) - (br_if $while-in16 - (local.tee $3 - (i32.load offset=20 - (local.get $3) + (br_if $while-in16 + (local.tee $2 + (i32.load + (i32.add + (local.get $2) + (i32.const 20) + ) + ) ) ) + (local.set $4 + (local.get $0) + ) + (local.get $1) ) - (local.set $4 - (local.get $0) - ) - (local.get $1) ) ) - ) - (if (result i32) - (local.get $4) (if (result i32) - (i32.lt_u - (local.get $3) - (i32.sub - (i32.load - (i32.const 184) - ) + (local.get $4) + (if (result i32) + (i32.lt_u (local.get $2) - ) - ) - (block - (if - (i32.lt_u - (local.get $4) - (local.tee $8 - (i32.load - (i32.const 192) - ) + (i32.sub + (i32.load + (i32.const 184) ) + (local.get $3) ) - (call $_abort) ) - (if - (i32.ge_u - (local.get $4) - (local.tee $5 - (i32.add - (local.get $2) - (local.get $4) + (block + (if + (i32.lt_u + (local.get $4) + (local.tee $11 + (i32.load + (i32.const 192) + ) ) ) + (call $_abort) ) - (call $_abort) - ) - (local.set $12 - (i32.load offset=24 - (local.get $4) + (if + (i32.ge_u + (local.get $4) + (local.tee $5 + (i32.add + (local.get $3) + (local.get $4) + ) + ) + ) + (call $_abort) ) - ) - (if - (i32.eq - (local.tee $0 - (i32.load offset=12 + (local.set $10 + (i32.load + (i32.add (local.get $4) + (i32.const 24) ) ) - (local.get $4) ) - (block $do-once17 - (if - (i32.eqz - (local.tee $1 - (i32.load - (local.tee $0 - (i32.add - (local.get $4) - (i32.const 20) - ) - ) + (if + (i32.eq + (local.tee $0 + (i32.load + (i32.add + (local.get $4) + (i32.const 12) ) ) ) - (br_if $do-once17 + (local.get $4) + ) + (block $do-once17 + (if (i32.eqz (local.tee $1 (i32.load (local.tee $0 (i32.add (local.get $4) - (i32.const 16) + (i32.const 20) ) ) ) ) ) - ) - ) - (loop $while-in20 - (if - (local.tee $7 - (i32.load - (local.tee $11 - (i32.add - (local.get $1) - (i32.const 20) + (br_if $do-once17 + (i32.eqz + (local.tee $1 + (i32.load + (local.tee $0 + (i32.add + (local.get $4) + (i32.const 16) + ) + ) ) ) ) ) - (block - (local.set $1 - (local.get $7) - ) - (local.set $0 - (local.get $11) - ) - (br $while-in20) - ) ) - (if - (local.tee $7 - (i32.load - (local.tee $11 - (i32.add - (local.get $1) - (i32.const 16) + (loop $while-in20 + (if + (local.tee $7 + (i32.load + (local.tee $9 + (i32.add + (local.get $1) + (i32.const 20) + ) ) ) ) + (block + (local.set $1 + (local.get $7) + ) + (local.set $0 + (local.get $9) + ) + (br $while-in20) + ) ) - (block - (local.set $1 - (local.get $7) + (if + (local.tee $7 + (i32.load + (local.tee $9 + (i32.add + (local.get $1) + (i32.const 16) + ) + ) + ) ) - (local.set $0 - (local.get $11) + (block + (local.set $1 + (local.get $7) + ) + (local.set $0 + (local.get $9) + ) + (br $while-in20) ) - (br $while-in20) ) ) - ) - (if - (i32.lt_u - (local.get $0) - (local.get $8) - ) - (call $_abort) - (block - (i32.store + (if + (i32.lt_u (local.get $0) - (i32.const 0) - ) - (local.set $10 - (local.get $1) + (local.get $11) ) - ) - ) - ) - (block - (if - (i32.lt_u - (local.tee $11 - (i32.load offset=8 - (local.get $4) + (call $_abort) + (block + (i32.store + (local.get $0) + (i32.const 0) ) - ) - (local.get $8) - ) - (call $_abort) - ) - (if - (i32.ne - (local.get $4) - (i32.load - (local.tee $7 - (i32.add - (local.get $11) - (i32.const 12) - ) + (local.set $12 + (local.get $1) ) ) ) - (call $_abort) ) - (if - (i32.eq - (i32.load + (block + (if + (i32.lt_u (local.tee $1 - (i32.add - (local.get $0) - (i32.const 8) + (i32.load + (i32.add + (local.get $4) + (i32.const 8) + ) ) ) + (local.get $11) ) - (local.get $4) + (call $_abort) ) - (block - (i32.store - (local.get $7) - (local.get $0) + (if + (i32.ne + (local.get $4) + (i32.load offset=12 + (local.get $1) + ) ) - (i32.store - (local.get $1) - (local.get $11) + (call $_abort) + ) + (if + (i32.eq + (i32.load offset=8 + (local.get $0) + ) + (local.get $4) ) - (local.set $10 - (local.get $0) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $12 + (local.get $0) + ) ) + (call $_abort) ) - (call $_abort) ) ) - ) - (if - (local.get $12) - (block $do-once21 - (if - (i32.eq - (i32.load - (local.tee $0 - (i32.add - (i32.shl - (local.tee $1 - (i32.load offset=28 - (local.get $4) + (if + (local.get $10) + (block $do-once21 + (if + (i32.eq + (i32.load + (local.tee $0 + (i32.add + (i32.shl + (local.tee $1 + (i32.load + (i32.add + (local.get $4) + (i32.const 28) + ) + ) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 480) ) - (i32.const 480) ) ) + (local.get $4) ) - (local.get $4) - ) - (block - (i32.store - (local.get $0) - (local.get $10) - ) - (if - (i32.eqz - (local.get $10) + (block + (i32.store + (local.get $0) + (local.get $12) ) - (block - (i32.store - (i32.const 180) - (i32.and - (i32.load - (i32.const 180) - ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $1) + (if + (i32.eqz + (local.get $12) + ) + (block + (i32.store + (i32.const 180) + (i32.and + (i32.load + (i32.const 180) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $1) + ) + (i32.const -1) ) - (i32.const -1) ) ) + (br $do-once21) ) - (br $do-once21) ) ) - ) - (block - (if - (i32.lt_u - (local.get $12) - (i32.load - (i32.const 192) + (block + (if + (i32.lt_u + (local.get $10) + (i32.load + (i32.const 192) + ) ) + (call $_abort) ) - (call $_abort) - ) - (if - (i32.eq - (i32.load - (local.tee $0 - (i32.add - (local.get $12) - (i32.const 16) - ) + (if + (i32.eq + (i32.load offset=16 + (local.get $10) ) + (local.get $4) + ) + (i32.store offset=16 + (local.get $10) + (local.get $12) + ) + (i32.store offset=20 + (local.get $10) + (local.get $12) ) - (local.get $4) - ) - (i32.store - (local.get $0) - (local.get $10) - ) - (i32.store offset=20 - (local.get $12) - (local.get $10) ) - ) - (br_if $do-once21 - (i32.eqz - (local.get $10) + (br_if $do-once21 + (i32.eqz + (local.get $12) + ) ) ) ) - ) - (if - (i32.lt_u - (local.get $10) - (local.tee $0 - (i32.load - (i32.const 192) + (if + (i32.lt_u + (local.get $12) + (local.tee $0 + (i32.load + (i32.const 192) + ) ) ) + (call $_abort) ) - (call $_abort) - ) - (i32.store offset=24 - (local.get $10) - (local.get $12) - ) - (if - (local.tee $1 - (i32.load offset=16 - (local.get $4) + (i32.store + (i32.add + (local.get $12) + (i32.const 24) ) + (local.get $10) ) (if - (i32.lt_u - (local.get $1) - (local.get $0) + (local.tee $1 + (i32.load + (i32.add + (local.get $4) + (i32.const 16) + ) + ) ) - (call $_abort) - (block - (i32.store offset=16 - (local.get $10) + (if + (i32.lt_u (local.get $1) + (local.get $0) ) - (i32.store offset=24 - (local.get $1) - (local.get $10) + (call $_abort) + (block + (i32.store + (i32.add + (local.get $12) + (i32.const 16) + ) + (local.get $1) + ) + (i32.store offset=24 + (local.get $1) + (local.get $12) + ) ) ) ) - ) - (if - (local.tee $0 - (i32.load offset=20 - (local.get $4) - ) - ) (if - (i32.lt_u - (local.get $0) + (local.tee $0 (i32.load - (i32.const 192) + (i32.add + (local.get $4) + (i32.const 20) + ) ) ) - (call $_abort) - (block - (i32.store offset=20 - (local.get $10) + (if + (i32.lt_u (local.get $0) + (i32.load + (i32.const 192) + ) ) - (i32.store offset=24 - (local.get $0) - (local.get $10) + (call $_abort) + (block + (i32.store + (i32.add + (local.get $12) + (i32.const 20) + ) + (local.get $0) + ) + (i32.store offset=24 + (local.get $0) + (local.get $12) + ) ) ) ) ) ) - ) - (if - (i32.lt_u - (local.get $3) - (i32.const 16) - ) - (block - (i32.store offset=4 - (local.get $4) - (i32.or - (local.tee $0 - (i32.add - (local.get $2) - (local.get $3) + (if + (i32.lt_u + (local.get $2) + (i32.const 16) + ) + (block + (i32.store + (i32.add + (local.get $4) + (i32.const 4) + ) + (i32.or + (local.tee $0 + (i32.add + (local.get $2) + (local.get $3) + ) ) + (i32.const 3) ) - (i32.const 3) ) - ) - (i32.store - (local.tee $0 - (i32.add + (i32.store offset=4 + (local.tee $0 (i32.add (local.get $0) (local.get $4) ) - (i32.const 4) ) - ) - (i32.or - (i32.load - (local.get $0) + (i32.or + (i32.load offset=4 + (local.get $0) + ) + (i32.const 1) ) - (i32.const 1) ) ) - ) - (block $do-once25 - (i32.store offset=4 - (local.get $4) - (i32.or - (local.get $2) - (i32.const 3) - ) - ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.get $3) - (i32.const 1) + (block $do-once25 + (i32.store + (i32.add + (local.get $4) + (i32.const 4) + ) + (i32.or + (local.get $3) + (i32.const 3) + ) ) - ) - (i32.store - (i32.add - (local.get $3) + (i32.store offset=4 (local.get $5) + (i32.or + (local.get $2) + (i32.const 1) + ) ) - (local.get $3) - ) - (local.set $0 - (i32.shr_u - (local.get $3) - (i32.const 3) + (i32.store + (i32.add + (local.get $2) + (local.get $5) + ) + (local.get $2) ) - ) - (if - (i32.lt_u - (local.get $3) - (i32.const 256) + (local.set $0 + (i32.shr_u + (local.get $2) + (i32.const 3) + ) ) - (block - (local.set $3 - (i32.add - (i32.shl - (local.get $0) - (i32.const 3) - ) - (i32.const 216) - ) + (if + (i32.lt_u + (local.get $2) + (i32.const 256) ) - (if - (i32.and - (local.tee $1 - (i32.load - (i32.const 176) - ) - ) - (local.tee $0 + (block + (local.set $2 + (i32.add (i32.shl - (i32.const 1) (local.get $0) + (i32.const 3) ) + (i32.const 216) ) ) (if - (i32.lt_u - (local.tee $0 + (i32.and + (local.tee $1 (i32.load - (local.tee $1 - (i32.add - (local.get $3) - (i32.const 8) + (i32.const 176) + ) + ) + (local.tee $0 + (i32.shl + (i32.const 1) + (local.get $0) + ) + ) + ) + (block + (local.set $1 + (i32.add + (local.get $2) + (i32.const 8) + ) + ) + (if + (i32.lt_u + (local.tee $0 + (i32.load offset=8 + (local.get $2) ) ) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + (block + (local.set $13 + (local.get $1) + ) + (local.set $6 + (local.get $0) + ) ) - ) - (i32.load - (i32.const 192) ) ) - (call $_abort) (block + (i32.store + (i32.const 176) + (i32.or + (local.get $0) + (local.get $1) + ) + ) (local.set $13 - (local.get $1) + (i32.add + (local.get $2) + (i32.const 8) + ) ) (local.set $6 - (local.get $0) + (local.get $2) ) ) ) - (block - (i32.store - (i32.const 176) - (i32.or - (local.get $0) - (local.get $1) - ) - ) - (local.set $13 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) - (local.set $6 - (local.get $3) + (i32.store + (local.get $13) + (local.get $5) + ) + (i32.store + (i32.add + (local.get $6) + (i32.const 12) ) + (local.get $5) ) + (i32.store offset=8 + (local.get $5) + (local.get $6) + ) + (i32.store offset=12 + (local.get $5) + (local.get $2) + ) + (br $do-once25) ) - (i32.store - (local.get $13) - (local.get $5) - ) - (i32.store offset=12 - (local.get $6) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $6) - ) - (i32.store offset=12 - (local.get $5) - (local.get $3) - ) - (br $do-once25) ) - ) - (local.set $2 - (i32.add - (i32.shl - (local.tee $7 - (if (result i32) - (local.tee $0 - (i32.shr_u - (local.get $3) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (i32.shl + (local.tee $7 (if (result i32) - (i32.gt_u - (local.get $3) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $2) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $7 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $0) - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.get $0) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $2) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $7 + (i32.and + (i32.shr_u + (i32.add + (local.tee $0 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (local.set $2 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $0) - (local.get $7) + (local.set $3 + (i32.and + (i32.shr_u + (i32.add + (local.tee $0 + (i32.shl + (local.get $0) + (local.get $7) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $3) - (i32.add - (local.tee $0 - (i32.add - (i32.sub - (i32.const 14) - (i32.or + (i32.or + (i32.and + (i32.shr_u + (local.get $2) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) (i32.or - (local.get $1) - (local.get $7) + (i32.or + (local.get $1) + (local.get $7) + ) + (local.get $3) ) - (local.get $2) ) - ) - (i32.shr_u - (i32.shl - (local.get $0) - (local.get $2) + (i32.shr_u + (i32.shl + (local.get $0) + (local.get $3) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $0) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 480) ) - (i32.const 480) ) - ) - (i32.store offset=28 - (local.get $5) - (local.get $7) - ) - (i32.store offset=4 - (local.tee $0 + (i32.store offset=28 + (local.get $5) + (local.get $7) + ) + (i32.store offset=4 (i32.add (local.get $5) (i32.const 16) ) + (i32.const 0) ) - (i32.const 0) - ) - (i32.store - (local.get $0) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $1 - (i32.load - (i32.const 180) + (i32.store offset=16 + (local.get $5) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $1 + (i32.load + (i32.const 180) + ) ) - ) - (local.tee $0 - (i32.shl - (i32.const 1) - (local.get $7) + (local.tee $0 + (i32.shl + (i32.const 1) + (local.get $7) + ) ) ) ) - ) - (block - (i32.store - (i32.const 180) - (i32.or - (local.get $0) - (local.get $1) + (block + (i32.store + (i32.const 180) + (i32.or + (local.get $0) + (local.get $1) + ) ) + (i32.store + (local.get $3) + (local.get $5) + ) + (i32.store offset=24 + (local.get $5) + (local.get $3) + ) + (i32.store offset=12 + (local.get $5) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $5) + ) + (br $do-once25) ) - (i32.store - (local.get $2) - (local.get $5) - ) - (i32.store offset=24 - (local.get $5) - (local.get $2) - ) - (i32.store offset=12 - (local.get $5) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $5) - ) - (br $do-once25) ) - ) - (local.set $7 - (i32.shl - (local.get $3) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u + (local.set $7 + (i32.shl + (local.get $2) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $7) + (i32.const 1) + ) + ) + (i32.eq (local.get $7) - (i32.const 1) + (i32.const 31) ) ) - (i32.eq - (local.get $7) - (i32.const 31) - ) ) ) - ) - (local.set $0 - (i32.load - (local.get $2) + (local.set $0 + (i32.load + (local.get $3) + ) ) - ) - (block $__rjto$1 - (block $__rjti$1 - (loop $while-in28 - (br_if $__rjti$1 - (i32.eq - (i32.and - (i32.load offset=4 - (local.get $0) + (block $__rjto$1 + (block $__rjti$1 + (loop $while-in28 + (br_if $__rjti$1 + (i32.eq + (i32.and + (i32.load + (i32.add + (local.get $0) + (i32.const 4) + ) + ) + (i32.const -8) ) - (i32.const -8) + (local.get $2) ) - (local.get $3) ) - ) - (local.set $2 - (i32.shl - (local.get $7) - (i32.const 1) + (local.set $3 + (i32.shl + (local.get $7) + (i32.const 1) + ) ) - ) - (if - (local.tee $1 - (i32.load - (local.tee $7 - (i32.add + (if + (local.tee $1 + (i32.load + (local.tee $7 (i32.add - (local.get $0) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $7) - (i32.const 31) + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $7) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) ) + (block + (local.set $7 + (local.get $3) + ) + (local.set $0 + (local.get $1) + ) + (br $while-in28) + ) + ) + ) + (if + (i32.lt_u + (local.get $7) + (i32.load + (i32.const 192) + ) ) + (call $_abort) (block - (local.set $7 - (local.get $2) + (i32.store + (local.get $7) + (local.get $5) ) - (local.set $0 - (local.get $1) + (i32.store offset=24 + (local.get $5) + (local.get $0) + ) + (i32.store offset=12 + (local.get $5) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $5) ) - (br $while-in28) + (br $do-once25) ) ) + (br $__rjto$1) ) (if - (i32.lt_u - (local.get $7) - (i32.load - (i32.const 192) + (i32.and + (i32.ge_u + (local.tee $2 + (i32.load offset=8 + (local.get $0) + ) + ) + (local.tee $1 + (i32.load + (i32.const 192) + ) + ) + ) + (i32.ge_u + (local.get $0) + (local.get $1) ) ) - (call $_abort) (block - (i32.store - (local.get $7) + (i32.store offset=12 + (local.get $2) (local.get $5) ) - (i32.store offset=24 - (local.get $5) + (i32.store offset=8 (local.get $0) - ) - (i32.store offset=12 - (local.get $5) (local.get $5) ) (i32.store offset=8 (local.get $5) - (local.get $5) + (local.get $2) ) - (br $do-once25) - ) - ) - (br $__rjto$1) - ) - (if - (i32.and - (i32.ge_u - (local.tee $2 - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 8) - ) - ) - ) + (i32.store offset=12 + (local.get $5) + (local.get $0) ) - (local.tee $1 - (i32.load - (i32.const 192) - ) + (i32.store offset=24 + (local.get $5) + (i32.const 0) ) ) - (i32.ge_u - (local.get $0) - (local.get $1) - ) - ) - (block - (i32.store offset=12 - (local.get $2) - (local.get $5) - ) - (i32.store - (local.get $3) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $2) - ) - (i32.store offset=12 - (local.get $5) - (local.get $0) - ) - (i32.store offset=24 - (local.get $5) - (i32.const 0) - ) + (call $_abort) ) - (call $_abort) ) ) ) - ) - (return - (i32.add - (local.get $4) - (i32.const 8) + (return + (i32.add + (local.get $4) + (i32.const 8) + ) ) ) + (local.get $3) ) - (local.get $2) + (local.get $3) ) - (local.get $2) ) + (local.get $3) ) - (local.get $2) ) ) ) ) - ) - (if - (i32.ge_u - (local.tee $1 - (i32.load - (i32.const 184) - ) - ) - (local.get $0) - ) - (block - (local.set $2 - (i32.load - (i32.const 196) + (if + (i32.ge_u + (local.tee $1 + (i32.load + (i32.const 184) + ) ) + (local.get $0) ) - (if - (i32.gt_u - (local.tee $3 - (i32.sub - (local.get $1) - (local.get $0) - ) + (block + (local.set $3 + (i32.load + (i32.const 196) ) - (i32.const 15) ) - (block - (i32.store - (i32.const 196) - (local.tee $1 - (i32.add + (if + (i32.gt_u + (local.tee $2 + (i32.sub + (local.get $1) (local.get $0) - (local.get $2) ) ) + (i32.const 15) ) - (i32.store - (i32.const 184) - (local.get $3) - ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $3) - (i32.const 1) + (block + (i32.store + (i32.const 196) + (local.tee $1 + (i32.add + (local.get $0) + (local.get $3) + ) + ) ) - ) - (i32.store - (i32.add + (i32.store + (i32.const 184) + (local.get $2) + ) + (i32.store offset=4 (local.get $1) + (i32.or + (local.get $2) + (i32.const 1) + ) + ) + (i32.store + (i32.add + (local.get $1) + (local.get $2) + ) + (local.get $2) + ) + (i32.store offset=4 (local.get $3) + (i32.or + (local.get $0) + (i32.const 3) + ) ) - (local.get $3) ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $0) - (i32.const 3) + (block + (i32.store + (i32.const 184) + (i32.const 0) ) - ) - ) - (block - (i32.store - (i32.const 184) - (i32.const 0) - ) - (i32.store - (i32.const 196) - (i32.const 0) - ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $1) - (i32.const 3) + (i32.store + (i32.const 196) + (i32.const 0) ) - ) - (i32.store - (local.tee $0 - (i32.add + (i32.store offset=4 + (local.get $3) + (i32.or + (local.get $1) + (i32.const 3) + ) + ) + (i32.store offset=4 + (local.tee $0 (i32.add (local.get $1) - (local.get $2) + (local.get $3) ) - (i32.const 4) ) - ) - (i32.or - (i32.load - (local.get $0) + (i32.or + (i32.load offset=4 + (local.get $0) + ) + (i32.const 1) ) - (i32.const 1) ) ) ) - ) - (return - (i32.add - (local.get $2) - (i32.const 8) - ) + (br $folding-inner1) ) ) - ) - (block $folding-inner0 - (br_if $folding-inner0 - (i32.gt_u - (local.tee $1 - (i32.load - (i32.const 188) + (block $folding-inner0 + (br_if $folding-inner0 + (i32.gt_u + (local.tee $1 + (i32.load + (i32.const 188) + ) ) - ) - (local.get $0) - ) - ) - (if - (i32.eqz - (i32.load - (i32.const 648) + (local.get $0) ) ) (if - (i32.and - (local.tee $1 - (call $_sysconf - (i32.const 30) - ) - ) - (i32.add - (local.get $1) - (i32.const -1) + (i32.eqz + (i32.load + (i32.const 648) ) ) - (call $_abort) - (block - (i32.store - (i32.const 656) - (local.get $1) - ) - (i32.store - (i32.const 652) - (local.get $1) - ) - (i32.store - (i32.const 660) - (i32.const -1) - ) - (i32.store - (i32.const 664) - (i32.const -1) - ) - (i32.store - (i32.const 668) - (i32.const 0) - ) - (i32.store - (i32.const 620) - (i32.const 0) + (if + (i32.and + (local.tee $1 + (call $_sysconf + (i32.const 30) + ) + ) + (i32.add + (local.get $1) + (i32.const -1) + ) ) - (i32.store - (i32.const 648) - (i32.xor - (i32.and - (call $_time - (i32.const 0) + (call $_abort) + (block + (i32.store + (i32.const 656) + (local.get $1) + ) + (i32.store + (i32.const 652) + (local.get $1) + ) + (i32.store + (i32.const 660) + (i32.const -1) + ) + (i32.store + (i32.const 664) + (i32.const -1) + ) + (i32.store + (i32.const 668) + (i32.const 0) + ) + (i32.store + (i32.const 620) + (i32.const 0) + ) + (i32.store + (i32.const 648) + (i32.xor + (i32.and + (call $_time + (i32.const 0) + ) + (i32.const -16) ) - (i32.const -16) + (i32.const 1431655768) ) - (i32.const 1431655768) ) ) ) ) - ) - (if - (i32.le_u - (local.tee $6 - (i32.and - (local.tee $5 - (i32.add - (local.tee $1 - (i32.load - (i32.const 656) + (if + (i32.le_u + (local.tee $6 + (i32.and + (local.tee $5 + (i32.add + (local.tee $1 + (i32.load + (i32.const 656) + ) ) - ) - (local.tee $9 - (i32.add - (local.get $0) - (i32.const 47) + (local.tee $8 + (i32.add + (local.get $0) + (i32.const 47) + ) ) ) ) - ) - (local.tee $12 - (i32.sub - (i32.const 0) - (local.get $1) + (local.tee $10 + (i32.sub + (i32.const 0) + (local.get $1) + ) ) ) ) + (local.get $0) ) - (local.get $0) - ) - (return - (i32.const 0) - ) - ) - (if - (local.tee $2 - (i32.load - (i32.const 616) + (return + (i32.const 0) ) ) (if - (i32.or - (i32.le_u - (local.tee $1 - (i32.add - (local.tee $3 - (i32.load - (i32.const 608) + (local.tee $3 + (i32.load + (i32.const 616) + ) + ) + (if + (i32.or + (i32.le_u + (local.tee $1 + (i32.add + (local.tee $2 + (i32.load + (i32.const 608) + ) ) + (local.get $6) ) - (local.get $6) ) + (local.get $2) + ) + (i32.gt_u + (local.get $1) + (local.get $3) ) - (local.get $3) ) - (i32.gt_u - (local.get $1) - (local.get $2) + (return + (i32.const 0) ) ) - (return - (i32.const 0) - ) ) - ) - (local.set $10 - (i32.add - (local.get $0) - (i32.const 48) + (local.set $12 + (i32.add + (local.get $0) + (i32.const 48) + ) ) - ) - (block $__rjto$13 - (block $__rjti$13 - (if - (i32.eqz - (i32.and - (i32.load - (i32.const 620) + (block $__rjto$13 + (block $__rjti$13 + (if + (i32.eqz + (i32.and + (i32.load + (i32.const 620) + ) + (i32.const 4) ) - (i32.const 4) ) - ) - (block - (block $label$break$L279 - (block $__rjti$5 - (block $__rjti$4 - (br_if $__rjti$4 - (i32.eqz - (local.tee $4 - (i32.load - (i32.const 200) + (block + (block $label$break$L279 + (block $__rjti$5 + (block $__rjti$4 + (br_if $__rjti$4 + (i32.eqz + (local.tee $4 + (i32.load + (i32.const 200) + ) ) ) ) - ) - (local.set $1 - (i32.const 624) - ) - (loop $while-in34 - (block $while-out33 - (if - (i32.le_u - (local.tee $3 - (i32.load - (local.get $1) - ) - ) - (local.get $4) - ) + (local.set $1 + (i32.const 624) + ) + (loop $while-in34 + (block $while-out33 (if - (i32.gt_u - (i32.add - (local.get $3) + (i32.le_u + (local.tee $2 (i32.load - (local.tee $2 - (i32.add - (local.get $1) - (i32.const 4) - ) - ) + (local.get $1) ) ) (local.get $4) ) - (block - (local.set $4 - (local.get $1) + (if + (i32.gt_u + (i32.add + (local.get $2) + (i32.load + (local.tee $3 + (i32.add + (local.get $1) + (i32.const 4) + ) + ) + ) + ) + (local.get $4) + ) + (block + (local.set $4 + (local.get $1) + ) + (br $while-out33) ) - (br $while-out33) - ) - ) - ) - (br_if $while-in34 - (local.tee $1 - (i32.load offset=8 - (local.get $1) ) ) - ) - (br $__rjti$4) - ) - ) - (if - (i32.lt_u - (local.tee $3 - (i32.and - (i32.sub - (local.get $5) + (br_if $while-in34 + (local.tee $1 (i32.load - (i32.const 188) + (i32.add + (local.get $1) + (i32.const 8) + ) ) ) - (local.get $12) ) + (br $__rjti$4) ) - (i32.const 2147483647) ) - (block - (local.set $1 - (call $_sbrk - (local.get $3) - ) - ) - (if - (i32.eq - (i32.add - (i32.load - (local.get $4) - ) - (i32.load - (local.get $2) + (if + (i32.lt_u + (local.tee $2 + (i32.and + (i32.sub + (local.get $5) + (i32.load + (i32.const 188) + ) ) + (local.get $10) ) - (local.get $1) ) - (br_if $__rjti$13 - (i32.ne - (local.get $1) - (i32.const -1) + (i32.const 2147483647) + ) + (block + (local.set $1 + (call $_sbrk + (local.get $2) ) ) - (block - (local.set $2 + (if + (i32.eq + (i32.add + (i32.load + (local.get $4) + ) + (i32.load + (local.get $3) + ) + ) (local.get $1) ) - (br $__rjti$5) + (br_if $__rjti$13 + (i32.ne + (local.get $1) + (i32.const -1) + ) + ) + (block + (local.set $3 + (local.get $1) + ) + (br $__rjti$5) + ) ) ) ) + (br $label$break$L279) ) - (br $label$break$L279) - ) - (if - (i32.ne - (local.tee $1 - (call $_sbrk - (i32.const 0) + (if + (i32.ne + (local.tee $1 + (call $_sbrk + (i32.const 0) + ) ) + (i32.const -1) ) - (i32.const -1) - ) - (block - (local.set $3 - (if (result i32) - (i32.and - (local.tee $3 - (local.get $1) - ) - (local.tee $2 - (i32.add - (local.tee $4 - (i32.load - (i32.const 652) + (block + (local.set $2 + (if (result i32) + (i32.and + (local.tee $2 + (local.get $1) + ) + (local.tee $3 + (i32.add + (local.tee $4 + (i32.load + (i32.const 652) + ) ) + (i32.const -1) ) - (i32.const -1) ) ) - ) - (i32.add - (i32.sub - (local.get $6) - (local.get $3) - ) - (i32.and - (i32.add + (i32.add + (i32.sub + (local.get $6) (local.get $2) - (local.get $3) ) - (i32.sub - (i32.const 0) - (local.get $4) + (i32.and + (i32.add + (local.get $2) + (local.get $3) + ) + (i32.sub + (i32.const 0) + (local.get $4) + ) ) ) + (local.get $6) ) - (local.get $6) ) - ) - (local.set $12 - (i32.add - (local.tee $4 - (i32.load - (i32.const 608) + (local.set $10 + (i32.add + (local.tee $4 + (i32.load + (i32.const 608) + ) ) - ) - (local.get $3) - ) - ) - (if - (i32.and - (i32.lt_u - (local.get $3) - (i32.const 2147483647) - ) - (i32.gt_u - (local.get $3) - (local.get $0) + (local.get $2) ) ) - (block - (if - (local.tee $2 - (i32.load - (i32.const 616) - ) + (if + (i32.and + (i32.lt_u + (local.get $2) + (i32.const 2147483647) ) - (br_if $label$break$L279 - (i32.or - (i32.le_u - (local.get $12) - (local.get $4) + (i32.gt_u + (local.get $2) + (local.get $0) + ) + ) + (block + (if + (local.tee $3 + (i32.load + (i32.const 616) ) - (i32.gt_u - (local.get $12) - (local.get $2) + ) + (br_if $label$break$L279 + (i32.or + (i32.le_u + (local.get $10) + (local.get $4) + ) + (i32.gt_u + (local.get $10) + (local.get $3) + ) ) ) ) - ) - (br_if $__rjti$13 - (i32.eq - (local.get $1) - (local.tee $2 - (call $_sbrk - (local.get $3) + (br_if $__rjti$13 + (i32.eq + (local.get $1) + (local.tee $3 + (call $_sbrk + (local.get $2) + ) ) ) ) + (br $__rjti$5) ) - (br $__rjti$5) ) ) ) + (br $label$break$L279) ) - (br $label$break$L279) - ) - (local.set $1 - (local.get $3) - ) - (local.set $4 - (i32.sub - (i32.const 0) - (local.get $1) + (local.set $1 + (local.get $2) ) - ) - (local.set $3 - (if (result i32) - (i32.and + (local.set $4 + (i32.sub + (i32.const 0) + (local.get $1) + ) + ) + (local.set $2 + (if (result i32) (i32.and - (i32.ne - (local.get $2) - (i32.const -1) + (i32.and + (i32.ne + (local.get $3) + (i32.const -1) + ) + (i32.lt_u + (local.get $1) + (i32.const 2147483647) + ) ) - (i32.lt_u + (i32.gt_u + (local.get $12) (local.get $1) - (i32.const 2147483647) ) ) - (i32.gt_u - (local.get $10) - (local.get $1) - ) - ) - (if (result i32) - (i32.lt_u - (local.tee $3 - (i32.and - (i32.add - (local.tee $3 - (i32.load - (i32.const 656) + (if (result i32) + (i32.lt_u + (local.tee $2 + (i32.and + (i32.add + (local.tee $2 + (i32.load + (i32.const 656) + ) + ) + (i32.sub + (local.get $8) + (local.get $1) ) ) (i32.sub - (local.get $9) - (local.get $1) + (i32.const 0) + (local.get $2) ) ) - (i32.sub - (i32.const 0) - (local.get $3) - ) ) + (i32.const 2147483647) ) - (i32.const 2147483647) - ) - (if (result i32) - (i32.eq - (call $_sbrk - (local.get $3) - ) - (i32.const -1) - ) - (block - (drop + (if (result i32) + (i32.eq (call $_sbrk - (local.get $4) + (local.get $2) ) + (i32.const -1) + ) + (block + (drop + (call $_sbrk + (local.get $4) + ) + ) + (br $label$break$L279) + ) + (i32.add + (local.get $1) + (local.get $2) ) - (br $label$break$L279) - ) - (i32.add - (local.get $1) - (local.get $3) ) + (local.get $1) ) (local.get $1) ) - (local.get $1) - ) - ) - (if - (i32.ne - (local.get $2) - (i32.const -1) ) - (block - (local.set $1 - (local.get $2) + (if + (i32.ne + (local.get $3) + (i32.const -1) + ) + (block + (local.set $1 + (local.get $3) + ) + (br $__rjti$13) ) - (br $__rjti$13) ) ) - ) - (i32.store - (i32.const 620) - (i32.or - (i32.load - (i32.const 620) + (i32.store + (i32.const 620) + (i32.or + (i32.load + (i32.const 620) + ) + (i32.const 4) ) - (i32.const 4) ) ) ) - ) - (if - (i32.lt_u - (local.get $6) - (i32.const 2147483647) - ) (if - (i32.and - (i32.lt_u - (local.tee $1 - (call $_sbrk - (local.get $6) + (i32.lt_u + (local.get $6) + (i32.const 2147483647) + ) + (if + (i32.and + (i32.lt_u + (local.tee $1 + (call $_sbrk + (local.get $6) + ) + ) + (local.tee $2 + (call $_sbrk + (i32.const 0) + ) ) ) - (local.tee $3 - (call $_sbrk - (i32.const 0) + (i32.and + (i32.ne + (local.get $1) + (i32.const -1) + ) + (i32.ne + (local.get $2) + (i32.const -1) ) ) ) - (i32.and - (i32.ne - (local.get $1) - (i32.const -1) - ) - (i32.ne - (local.get $3) - (i32.const -1) + (br_if $__rjti$13 + (i32.gt_u + (local.tee $2 + (i32.sub + (local.get $2) + (local.get $1) + ) + ) + (i32.add + (local.get $0) + (i32.const 40) + ) ) ) ) - (br_if $__rjti$13 - (i32.gt_u - (local.tee $3 - (i32.sub - (local.get $3) - (local.get $1) - ) - ) - (i32.add - (local.get $0) - (i32.const 40) - ) + ) + (br $__rjto$13) + ) + (i32.store + (i32.const 608) + (local.tee $3 + (i32.add + (i32.load + (i32.const 608) ) + (local.get $2) ) ) ) - (br $__rjto$13) - ) - (i32.store - (i32.const 608) - (local.tee $2 - (i32.add + (if + (i32.gt_u + (local.get $3) (i32.load - (i32.const 608) + (i32.const 612) ) - (local.get $3) ) - ) - ) - (if - (i32.gt_u - (local.get $2) - (i32.load + (i32.store (i32.const 612) + (local.get $3) ) ) - (i32.store - (i32.const 612) - (local.get $2) - ) - ) - (if - (local.tee $5 - (i32.load - (i32.const 200) - ) - ) - (block $do-once40 - (local.set $2 - (i32.const 624) + (if + (local.tee $5 + (i32.load + (i32.const 200) + ) ) - (block $__rjto$10 - (block $__rjti$10 - (loop $while-in45 - (br_if $__rjti$10 - (i32.eq - (i32.add - (local.tee $10 - (i32.load - (local.get $2) + (block $do-once40 + (local.set $3 + (i32.const 624) + ) + (block $__rjto$10 + (block $__rjti$10 + (loop $while-in45 + (br_if $__rjti$10 + (i32.eq + (i32.add + (local.tee $12 + (i32.load + (local.get $3) + ) ) - ) - (local.tee $6 - (i32.load - (local.tee $4 - (i32.add - (local.get $2) - (i32.const 4) + (local.tee $6 + (i32.load + (local.tee $4 + (i32.add + (local.get $3) + (i32.const 4) + ) ) ) ) ) + (local.get $1) ) - (local.get $1) ) - ) - (br_if $while-in45 - (local.tee $2 - (i32.load offset=8 - (local.get $2) + (br_if $while-in45 + (local.tee $3 + (i32.load + (i32.add + (local.get $3) + (i32.const 8) + ) + ) ) ) ) - ) - (br $__rjto$10) - ) - (if - (i32.eqz - (i32.and - (i32.load offset=12 - (local.get $2) - ) - (i32.const 8) - ) + (br $__rjto$10) ) (if - (i32.and - (i32.lt_u - (local.get $5) - (local.get $1) - ) - (i32.ge_u - (local.get $5) - (local.get $10) - ) - ) - (block - (i32.store - (local.get $4) - (i32.add + (i32.eqz + (i32.and + (i32.load offset=12 (local.get $3) - (local.get $6) ) + (i32.const 8) ) - (local.set $2 - (i32.add + ) + (if + (i32.and + (i32.lt_u (local.get $5) - (local.tee $1 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $1 - (i32.add - (local.get $5) - (i32.const 8) + (local.get $1) + ) + (i32.ge_u + (local.get $5) + (local.get $12) + ) + ) + (block + (i32.store + (local.get $4) + (i32.add + (local.get $2) + (local.get $6) + ) + ) + (local.set $3 + (i32.add + (local.get $5) + (local.tee $1 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $5) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $1) - (i32.const 7) ) ) ) ) - ) - (local.set $1 - (i32.add - (i32.load - (i32.const 188) - ) - (i32.sub - (local.get $3) - (local.get $1) + (local.set $1 + (i32.add + (i32.load + (i32.const 188) + ) + (i32.sub + (local.get $2) + (local.get $1) + ) ) ) - ) - (i32.store - (i32.const 200) - (local.get $2) - ) - (i32.store - (i32.const 188) - (local.get $1) - ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $1) - (i32.const 1) + (i32.store + (i32.const 200) + (local.get $3) ) - ) - (i32.store offset=4 - (i32.add + (i32.store + (i32.const 188) (local.get $1) - (local.get $2) ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) + (i32.store offset=4 + (local.get $3) + (i32.or + (local.get $1) + (i32.const 1) + ) ) + (i32.store offset=4 + (i32.add + (local.get $1) + (local.get $3) + ) + (i32.const 40) + ) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) + ) + (br $do-once40) ) - (br $do-once40) ) ) ) - ) - (if - (i32.lt_u - (local.get $1) - (local.tee $4 - (i32.load + (if + (i32.lt_u + (local.get $1) + (local.tee $4 + (i32.load + (i32.const 192) + ) + ) + ) + (block + (i32.store (i32.const 192) + (local.get $1) + ) + (local.set $4 + (local.get $1) ) ) ) - (block - (i32.store - (i32.const 192) - (local.get $1) - ) - (local.set $4 + (local.set $12 + (i32.add (local.get $1) + (local.get $2) ) ) - ) - (local.set $10 - (i32.add - (local.get $1) - (local.get $3) + (local.set $3 + (i32.const 624) ) - ) - (local.set $2 - (i32.const 624) - ) - (local.set $4 - (block $__rjto$11 (result i32) - (block $__rjti$11 - (br $__rjto$11 - (loop $while-in47 (result i32) - (if - (i32.eq - (i32.load - (local.get $2) + (local.set $4 + (block $__rjto$11 (result i32) + (block $__rjti$11 + (br $__rjto$11 + (loop $while-in47 (result i32) + (if + (i32.eq + (i32.load + (local.get $3) + ) + (local.get $12) ) - (local.get $10) - ) - (block - (local.set $6 - (local.get $2) + (block + (local.set $6 + (local.get $3) + ) + (br $__rjti$11) ) - (br $__rjti$11) ) - ) - (br_if $while-in47 - (local.tee $2 - (i32.load offset=8 - (local.get $2) + (br_if $while-in47 + (local.tee $3 + (i32.load + (i32.add + (local.get $3) + (i32.const 8) + ) + ) ) ) + (i32.const 624) ) - (i32.const 624) ) ) - ) - (if (result i32) - (i32.and - (i32.load offset=12 - (local.get $2) - ) - (i32.const 8) - ) - (i32.const 624) - (block - (i32.store - (local.get $6) - (local.get $1) - ) - (i32.store - (local.tee $2 - (i32.add - (local.get $2) - (i32.const 4) - ) - ) - (i32.add - (i32.load - (local.get $2) - ) + (if (result i32) + (i32.and + (i32.load offset=12 (local.get $3) ) + (i32.const 8) ) - (local.set $9 - (i32.add - (local.tee $12 - (i32.add - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $3 - (i32.add - (local.get $1) - (i32.const 8) - ) - ) - ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $3) - (i32.const 7) - ) - ) - (local.get $1) + (i32.const 624) + (block + (i32.store + (local.get $6) + (local.get $1) + ) + (i32.store offset=4 + (local.get $3) + (i32.add + (i32.load offset=4 + (local.get $3) ) + (local.get $2) ) - (local.get $0) ) - ) - (local.set $7 - (i32.sub - (i32.sub - (local.tee $6 + (local.set $8 + (i32.add + (local.tee $10 (i32.add - (local.get $10) (select (i32.and (i32.sub (i32.const 0) - (local.tee $1 + (local.tee $2 (i32.add - (local.get $10) + (local.get $1) (i32.const 8) ) ) @@ -10897,1116 +10823,1146 @@ ) (i32.const 0) (i32.and - (local.get $1) + (local.get $2) (i32.const 7) ) ) + (local.get $1) ) ) - (local.get $12) + (local.get $0) ) - (local.get $0) ) - ) - (i32.store offset=4 - (local.get $12) - (i32.or - (local.get $0) - (i32.const 3) - ) - ) - (if - (i32.eq - (local.get $5) - (local.get $6) - ) - (block - (i32.store - (i32.const 188) - (local.tee $0 - (i32.add - (i32.load - (i32.const 188) + (local.set $7 + (i32.sub + (i32.sub + (local.tee $6 + (i32.add + (local.get $12) + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $1 + (i32.add + (local.get $12) + (i32.const 8) + ) + ) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $1) + (i32.const 7) + ) + ) ) - (local.get $7) ) + (local.get $10) ) + (local.get $0) ) - (i32.store - (i32.const 200) - (local.get $9) - ) - (i32.store offset=4 - (local.get $9) - (i32.or - (local.get $0) - (i32.const 1) - ) + ) + (i32.store offset=4 + (local.get $10) + (i32.or + (local.get $0) + (i32.const 3) ) ) - (block $do-once48 - (if - (i32.eq - (i32.load - (i32.const 196) - ) - (local.get $6) - ) - (block - (i32.store - (i32.const 184) - (local.tee $0 - (i32.add - (i32.load - (i32.const 184) - ) - (local.get $7) + (if + (i32.eq + (local.get $5) + (local.get $6) + ) + (block + (i32.store + (i32.const 188) + (local.tee $0 + (i32.add + (i32.load + (i32.const 188) ) + (local.get $7) ) ) - (i32.store - (i32.const 196) - (local.get $9) - ) - (i32.store offset=4 - (local.get $9) - (i32.or - (local.get $0) - (i32.const 1) - ) - ) - (i32.store - (i32.add - (local.get $0) - (local.get $9) - ) + ) + (i32.store + (i32.const 200) + (local.get $8) + ) + (i32.store offset=4 + (local.get $8) + (i32.or (local.get $0) + (i32.const 1) ) - (br $do-once48) ) ) - (i32.store - (local.tee $0 - (i32.add - (if (result i32) - (i32.eq - (i32.and - (local.tee $0 - (i32.load offset=4 - (local.get $6) - ) + (block $do-once48 + (if + (i32.eq + (i32.load + (i32.const 196) + ) + (local.get $6) + ) + (block + (i32.store + (i32.const 184) + (local.tee $0 + (i32.add + (i32.load + (i32.const 184) ) - (i32.const 3) + (local.get $7) ) + ) + ) + (i32.store + (i32.const 196) + (local.get $8) + ) + (i32.store offset=4 + (local.get $8) + (i32.or + (local.get $0) (i32.const 1) ) - (block (result i32) - (local.set $10 + ) + (i32.store + (i32.add + (local.get $0) + (local.get $8) + ) + (local.get $0) + ) + (br $do-once48) + ) + ) + (i32.store + (local.tee $0 + (i32.add + (if (result i32) + (i32.eq (i32.and - (local.get $0) - (i32.const -8) - ) - ) - (local.set $1 - (i32.shr_u - (local.get $0) + (local.tee $0 + (i32.load offset=4 + (local.get $6) + ) + ) (i32.const 3) ) + (i32.const 1) ) - (block $label$break$L331 - (if - (i32.lt_u + (block (result i32) + (local.set $12 + (i32.and (local.get $0) - (i32.const 256) + (i32.const -8) ) - (block - (local.set $2 - (i32.load offset=12 - (local.get $6) - ) + ) + (local.set $1 + (i32.shr_u + (local.get $0) + (i32.const 3) + ) + ) + (block $label$break$L331 + (if + (i32.lt_u + (local.get $0) + (i32.const 256) ) - (if - (i32.ne - (local.tee $3 - (i32.load offset=8 - (local.get $6) - ) - ) - (local.tee $0 - (i32.add - (i32.shl - (local.get $1) - (i32.const 3) - ) - (i32.const 216) - ) + (block + (local.set $3 + (i32.load offset=12 + (local.get $6) ) ) - (block $do-once51 - (if - (i32.lt_u - (local.get $3) - (local.get $4) + (if + (i32.ne + (local.tee $2 + (i32.load offset=8 + (local.get $6) + ) ) - (call $_abort) - ) - (br_if $do-once51 - (i32.eq - (i32.load offset=12 - (local.get $3) + (local.tee $0 + (i32.add + (i32.shl + (local.get $1) + (i32.const 3) + ) + (i32.const 216) ) - (local.get $6) ) ) - (call $_abort) - ) - ) - (if - (i32.eq - (local.get $2) - (local.get $3) - ) - (block - (i32.store - (i32.const 176) - (i32.and - (i32.load - (i32.const 176) + (block $do-once51 + (if + (i32.lt_u + (local.get $2) + (local.get $4) ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $1) + (call $_abort) + ) + (br_if $do-once51 + (i32.eq + (i32.load offset=12 + (local.get $2) ) - (i32.const -1) + (local.get $6) ) ) + (call $_abort) ) - (br $label$break$L331) ) - ) - (if - (i32.eq - (local.get $0) - (local.get $2) - ) - (local.set $15 - (i32.add + (if + (i32.eq (local.get $2) - (i32.const 8) + (local.get $3) + ) + (block + (i32.store + (i32.const 176) + (i32.and + (i32.load + (i32.const 176) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $1) + ) + (i32.const -1) + ) + ) + ) + (br $label$break$L331) ) ) - (block $do-once53 - (if - (i32.lt_u - (local.get $2) - (local.get $4) + (if + (i32.eq + (local.get $0) + (local.get $3) + ) + (local.set $15 + (i32.add + (local.get $3) + (i32.const 8) ) - (call $_abort) ) - (if - (i32.eq - (i32.load - (local.tee $0 - (i32.add - (local.get $2) - (i32.const 8) - ) - ) + (block $do-once53 + (if + (i32.lt_u + (local.get $3) + (local.get $4) ) - (local.get $6) + (call $_abort) ) - (block - (local.set $15 - (local.get $0) + (local.set $0 + (i32.add + (local.get $3) + (i32.const 8) ) - (br $do-once53) ) + (if + (i32.eq + (i32.load offset=8 + (local.get $3) + ) + (local.get $6) + ) + (block + (local.set $15 + (local.get $0) + ) + (br $do-once53) + ) + ) + (call $_abort) ) - (call $_abort) ) - ) - (i32.store offset=12 - (local.get $3) - (local.get $2) - ) - (i32.store - (local.get $15) - (local.get $3) - ) - ) - (block - (local.set $5 - (i32.load offset=24 - (local.get $6) + (i32.store offset=12 + (local.get $2) + (local.get $3) + ) + (i32.store + (local.get $15) + (local.get $2) ) ) - (if - (i32.eq - (local.tee $0 - (i32.load offset=12 - (local.get $6) - ) + (block + (local.set $5 + (i32.load offset=24 + (local.get $6) ) - (local.get $6) ) - (block $do-once55 - (if - (i32.eqz - (local.tee $1 - (i32.load - (local.tee $0 - (i32.add - (local.tee $3 - (i32.add - (local.get $6) - (i32.const 16) - ) - ) - (i32.const 4) - ) - ) - ) + (if + (i32.eq + (local.tee $0 + (i32.load offset=12 + (local.get $6) ) ) - (block - (br_if $do-once55 - (i32.eqz - (local.tee $1 - (i32.load - (local.get $3) - ) + (local.get $6) + ) + (block $do-once55 + (local.set $0 + (i32.add + (local.tee $2 + (i32.add + (local.get $6) + (i32.const 16) ) ) - ) - (local.set $0 - (local.get $3) + (i32.const 4) ) ) - ) - (loop $while-in58 (if - (local.tee $3 - (i32.load - (local.tee $2 - (i32.add - (local.get $1) - (i32.const 20) - ) + (i32.eqz + (local.tee $1 + (i32.load offset=4 + (local.get $2) ) ) ) (block - (local.set $1 - (local.get $3) + (br_if $do-once55 + (i32.eqz + (local.tee $1 + (i32.load offset=16 + (local.get $6) + ) + ) + ) ) (local.set $0 (local.get $2) ) - (br $while-in58) ) ) - (if - (local.tee $3 - (i32.load - (local.tee $2 - (i32.add - (local.get $1) - (i32.const 16) + (loop $while-in58 + (if + (local.tee $2 + (i32.load + (local.tee $3 + (i32.add + (local.get $1) + (i32.const 20) + ) ) ) ) + (block + (local.set $1 + (local.get $2) + ) + (local.set $0 + (local.get $3) + ) + (br $while-in58) + ) ) - (block - (local.set $1 - (local.get $3) + (if + (local.tee $2 + (i32.load + (local.tee $3 + (i32.add + (local.get $1) + (i32.const 16) + ) + ) + ) ) - (local.set $0 - (local.get $2) + (block + (local.set $1 + (local.get $2) + ) + (local.set $0 + (local.get $3) + ) + (br $while-in58) ) - (br $while-in58) ) ) - ) - (if - (i32.lt_u - (local.get $0) - (local.get $4) - ) - (call $_abort) - (block - (i32.store + (if + (i32.lt_u (local.get $0) - (i32.const 0) - ) - (local.set $8 - (local.get $1) + (local.get $4) ) - ) - ) - ) - (block - (if - (i32.lt_u - (local.tee $2 - (i32.load offset=8 - (local.get $6) + (call $_abort) + (block + (i32.store + (local.get $0) + (i32.const 0) ) - ) - (local.get $4) - ) - (call $_abort) - ) - (if - (i32.ne - (local.get $6) - (i32.load - (local.tee $3 - (i32.add - (local.get $2) - (i32.const 12) - ) + (local.set $11 + (local.get $1) ) ) ) - (call $_abort) ) - (if - (i32.eq - (i32.load + (block + (if + (i32.lt_u (local.tee $1 - (i32.add - (local.get $0) - (i32.const 8) + (i32.load offset=8 + (local.get $6) ) ) + (local.get $4) ) - (local.get $6) + (call $_abort) ) - (block - (i32.store - (local.get $3) - (local.get $0) + (if + (i32.ne + (local.get $6) + (i32.load offset=12 + (local.get $1) + ) ) - (i32.store - (local.get $1) - (local.get $2) + (call $_abort) + ) + (if + (i32.eq + (i32.load offset=8 + (local.get $0) + ) + (local.get $6) ) - (local.set $8 - (local.get $0) + (block + (i32.store offset=12 + (local.get $1) + (local.get $0) + ) + (i32.store offset=8 + (local.get $0) + (local.get $1) + ) + (local.set $11 + (local.get $0) + ) ) + (call $_abort) ) - (call $_abort) ) ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.get $5) + (br_if $label$break$L331 + (i32.eqz + (local.get $5) + ) ) - ) - (if - (i32.eq - (i32.load - (local.tee $0 - (i32.add - (i32.shl - (local.tee $1 - (i32.load offset=28 - (local.get $6) + (if + (i32.eq + (i32.load + (local.tee $0 + (i32.add + (i32.shl + (local.tee $1 + (i32.load offset=28 + (local.get $6) + ) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 480) ) - (i32.const 480) ) ) + (local.get $6) ) - (local.get $6) - ) - (block $do-once59 - (i32.store - (local.get $0) - (local.get $8) - ) - (br_if $do-once59 - (local.get $8) + (block $do-once59 + (i32.store + (local.get $0) + (local.get $11) + ) + (br_if $do-once59 + (local.get $11) + ) + (i32.store + (i32.const 180) + (i32.and + (i32.load + (i32.const 180) + ) + (i32.xor + (i32.shl + (i32.const 1) + (local.get $1) + ) + (i32.const -1) + ) + ) + ) + (br $label$break$L331) ) - (i32.store - (i32.const 180) - (i32.and - (i32.load - (i32.const 180) + (block + (if + (i32.lt_u + (local.get $5) + (i32.load + (i32.const 192) + ) ) - (i32.xor - (i32.shl - (i32.const 1) - (local.get $1) + (call $_abort) + ) + (if + (i32.eq + (i32.load offset=16 + (local.get $5) ) - (i32.const -1) + (local.get $6) + ) + (i32.store offset=16 + (local.get $5) + (local.get $11) + ) + (i32.store offset=20 + (local.get $5) + (local.get $11) + ) + ) + (br_if $label$break$L331 + (i32.eqz + (local.get $11) ) ) ) - (br $label$break$L331) ) - (block - (if - (i32.lt_u - (local.get $5) + (if + (i32.lt_u + (local.get $11) + (local.tee $0 (i32.load (i32.const 192) ) ) - (call $_abort) ) - (if - (i32.eq - (i32.load - (local.tee $0 - (i32.add - (local.get $5) - (i32.const 16) - ) - ) - ) + (call $_abort) + ) + (i32.store + (i32.add + (local.get $11) + (i32.const 24) + ) + (local.get $5) + ) + (if + (local.tee $1 + (i32.load offset=16 (local.get $6) ) - (i32.store - (local.get $0) - (local.get $8) - ) - (i32.store offset=20 - (local.get $5) - (local.get $8) - ) ) - (br_if $label$break$L331 - (i32.eqz - (local.get $8) + (if + (i32.lt_u + (local.get $1) + (local.get $0) ) - ) - ) - ) - (if - (i32.lt_u - (local.get $8) - (local.tee $1 - (i32.load - (i32.const 192) + (call $_abort) + (block + (i32.store + (i32.add + (local.get $11) + (i32.const 16) + ) + (local.get $1) + ) + (i32.store offset=24 + (local.get $1) + (local.get $11) + ) ) ) ) - (call $_abort) - ) - (i32.store offset=24 - (local.get $8) - (local.get $5) - ) - (if - (local.tee $3 - (i32.load + (br_if $label$break$L331 + (i32.eqz (local.tee $0 - (i32.add - (local.get $6) - (i32.const 16) + (i32.load offset=4 + (i32.add + (local.get $6) + (i32.const 16) + ) ) ) ) ) (if (i32.lt_u - (local.get $3) - (local.get $1) + (local.get $0) + (i32.load + (i32.const 192) + ) ) (call $_abort) (block - (i32.store offset=16 - (local.get $8) - (local.get $3) + (i32.store + (i32.add + (local.get $11) + (i32.const 20) + ) + (local.get $0) ) (i32.store offset=24 - (local.get $3) - (local.get $8) - ) - ) - ) - ) - (br_if $label$break$L331 - (i32.eqz - (local.tee $0 - (i32.load offset=4 (local.get $0) + (local.get $11) ) ) ) ) - (if - (i32.lt_u - (local.get $0) - (i32.load - (i32.const 192) - ) - ) - (call $_abort) - (block - (i32.store offset=20 - (local.get $8) - (local.get $0) - ) - (i32.store offset=24 - (local.get $0) - (local.get $8) - ) - ) - ) ) ) - ) - (local.set $7 + (local.set $7 + (i32.add + (local.get $7) + (local.get $12) + ) + ) (i32.add - (local.get $7) - (local.get $10) + (local.get $6) + (local.get $12) ) ) - (i32.add - (local.get $6) - (local.get $10) - ) + (local.get $6) ) - (local.get $6) + (i32.const 4) ) - (i32.const 4) ) - ) - (i32.and - (i32.load - (local.get $0) + (i32.and + (i32.load + (local.get $0) + ) + (i32.const -2) ) - (i32.const -2) - ) - ) - (i32.store offset=4 - (local.get $9) - (i32.or - (local.get $7) - (i32.const 1) ) - ) - (i32.store - (i32.add - (local.get $7) - (local.get $9) + (i32.store offset=4 + (local.get $8) + (i32.or + (local.get $7) + (i32.const 1) + ) ) - (local.get $7) - ) - (local.set $0 - (i32.shr_u + (i32.store + (i32.add + (local.get $7) + (local.get $8) + ) (local.get $7) - (i32.const 3) ) - ) - (if - (i32.lt_u - (local.get $7) - (i32.const 256) + (local.set $0 + (i32.shr_u + (local.get $7) + (i32.const 3) + ) ) - (block - (local.set $3 - (i32.add - (i32.shl - (local.get $0) - (i32.const 3) - ) - (i32.const 216) - ) + (if + (i32.lt_u + (local.get $7) + (i32.const 256) ) - (if - (i32.and - (local.tee $1 - (i32.load - (i32.const 176) - ) - ) - (local.tee $0 + (block + (local.set $2 + (i32.add (i32.shl - (i32.const 1) (local.get $0) + (i32.const 3) ) + (i32.const 216) ) ) - (block $do-once63 - (if - (i32.ge_u - (local.tee $0 - (i32.load - (local.tee $1 - (i32.add - (local.get $3) - (i32.const 8) - ) - ) - ) - ) + (if + (i32.and + (local.tee $1 (i32.load - (i32.const 192) + (i32.const 176) ) ) - (block - (local.set $16 - (local.get $1) - ) - (local.set $11 + (local.tee $0 + (i32.shl + (i32.const 1) (local.get $0) ) - (br $do-once63) ) ) - (call $_abort) - ) - (block - (i32.store - (i32.const 176) - (i32.or - (local.get $0) - (local.get $1) + (block $do-once63 + (local.set $1 + (i32.add + (local.get $2) + (i32.const 8) + ) ) + (if + (i32.ge_u + (local.tee $0 + (i32.load offset=8 + (local.get $2) + ) + ) + (i32.load + (i32.const 192) + ) + ) + (block + (local.set $16 + (local.get $1) + ) + (local.set $9 + (local.get $0) + ) + (br $do-once63) + ) + ) + (call $_abort) ) - (local.set $16 - (i32.add - (local.get $3) - (i32.const 8) + (block + (i32.store + (i32.const 176) + (i32.or + (local.get $0) + (local.get $1) + ) + ) + (local.set $16 + (i32.add + (local.get $2) + (i32.const 8) + ) + ) + (local.set $9 + (local.get $2) ) ) - (local.set $11 - (local.get $3) + ) + (i32.store + (local.get $16) + (local.get $8) + ) + (i32.store + (i32.add + (local.get $9) + (i32.const 12) ) + (local.get $8) ) + (i32.store offset=8 + (local.get $8) + (local.get $9) + ) + (i32.store offset=12 + (local.get $8) + (local.get $2) + ) + (br $do-once48) ) - (i32.store - (local.get $16) - (local.get $9) - ) - (i32.store offset=12 - (local.get $11) - (local.get $9) - ) - (i32.store offset=8 - (local.get $9) - (local.get $11) - ) - (i32.store offset=12 - (local.get $9) - (local.get $3) - ) - (br $do-once48) ) - ) - (local.set $3 - (i32.add - (i32.shl - (local.tee $2 - (if (result i32) - (local.tee $0 - (i32.shr_u - (local.get $7) - (i32.const 8) - ) - ) + (local.set $2 + (i32.add + (i32.shl + (local.tee $3 (if (result i32) - (i32.gt_u - (local.get $7) - (i32.const 16777215) + (local.tee $0 + (i32.shr_u + (local.get $7) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $2 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $0) - (local.tee $1 - (i32.and - (i32.shr_u - (i32.add - (local.get $0) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $7) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $3 + (i32.and + (i32.shr_u + (i32.add + (local.tee $0 + (i32.shl + (local.get $0) + (local.tee $1 + (i32.and + (i32.shr_u + (i32.add + (local.get $0) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (local.set $3 - (i32.and - (i32.shr_u - (i32.add - (local.tee $0 - (i32.shl - (local.get $0) - (local.get $2) + (local.set $2 + (i32.and + (i32.shr_u + (i32.add + (local.tee $0 + (i32.shl + (local.get $0) + (local.get $3) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $7) - (i32.add - (local.tee $0 - (i32.add - (i32.sub - (i32.const 14) - (i32.or + (i32.or + (i32.and + (i32.shr_u + (local.get $7) + (i32.add + (local.tee $0 + (i32.add + (i32.sub + (i32.const 14) (i32.or - (local.get $1) + (i32.or + (local.get $1) + (local.get $3) + ) (local.get $2) ) - (local.get $3) ) - ) - (i32.shr_u - (i32.shl - (local.get $0) - (local.get $3) + (i32.shr_u + (i32.shl + (local.get $0) + (local.get $2) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $0) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $0) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 480) ) - (i32.const 480) ) - ) - (i32.store offset=28 - (local.get $9) - (local.get $2) - ) - (i32.store offset=4 - (local.tee $0 + (i32.store offset=28 + (local.get $8) + (local.get $3) + ) + (i32.store offset=4 (i32.add - (local.get $9) + (local.get $8) (i32.const 16) ) + (i32.const 0) ) - (i32.const 0) - ) - (i32.store - (local.get $0) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $1 - (i32.load - (i32.const 180) + (i32.store offset=16 + (local.get $8) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $1 + (i32.load + (i32.const 180) + ) ) - ) - (local.tee $0 - (i32.shl - (i32.const 1) - (local.get $2) + (local.tee $0 + (i32.shl + (i32.const 1) + (local.get $3) + ) ) ) ) - ) - (block - (i32.store - (i32.const 180) - (i32.or - (local.get $0) - (local.get $1) - ) - ) - (i32.store - (local.get $3) - (local.get $9) - ) - (i32.store offset=24 - (local.get $9) - (local.get $3) - ) - (i32.store offset=12 - (local.get $9) - (local.get $9) - ) - (i32.store offset=8 - (local.get $9) - (local.get $9) - ) - (br $do-once48) - ) - ) - (local.set $2 - (i32.shl - (local.get $7) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u - (local.get $2) - (i32.const 1) + (block + (i32.store + (i32.const 180) + (i32.or + (local.get $0) + (local.get $1) ) ) - (i32.eq + (i32.store (local.get $2) - (i32.const 31) + (local.get $8) ) + (i32.store offset=24 + (local.get $8) + (local.get $2) + ) + (i32.store offset=12 + (local.get $8) + (local.get $8) + ) + (i32.store offset=8 + (local.get $8) + (local.get $8) + ) + (br $do-once48) ) ) - ) - (local.set $0 - (i32.load - (local.get $3) - ) - ) - (block $__rjto$7 - (block $__rjti$7 - (loop $while-in68 - (br_if $__rjti$7 - (i32.eq - (i32.and - (i32.load offset=4 - (local.get $0) - ) - (i32.const -8) + (local.set $3 + (i32.shl + (local.get $7) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $3) + (i32.const 1) ) - (local.get $7) ) - ) - (local.set $3 - (i32.shl - (local.get $2) - (i32.const 1) + (i32.eq + (local.get $3) + (i32.const 31) ) ) - (if - (local.tee $1 - (i32.load - (local.tee $2 - (i32.add + ) + ) + (local.set $0 + (i32.load + (local.get $2) + ) + ) + (block $__rjto$7 + (block $__rjti$7 + (loop $while-in68 + (br_if $__rjti$7 + (i32.eq + (i32.and + (i32.load (i32.add (local.get $0) - (i32.const 16) + (i32.const 4) ) - (i32.shl - (i32.shr_u - (local.get $2) - (i32.const 31) + ) + (i32.const -8) + ) + (local.get $7) + ) + ) + (local.set $2 + (i32.shl + (local.get $3) + (i32.const 1) + ) + ) + (if + (local.tee $1 + (i32.load + (local.tee $3 + (i32.add + (i32.add + (local.get $0) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $3) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) ) + (block + (local.set $3 + (local.get $2) + ) + (local.set $0 + (local.get $1) + ) + (br $while-in68) + ) ) + ) + (if + (i32.lt_u + (local.get $3) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) (block - (local.set $2 + (i32.store (local.get $3) + (local.get $8) ) - (local.set $0 - (local.get $1) + (i32.store offset=24 + (local.get $8) + (local.get $0) + ) + (i32.store offset=12 + (local.get $8) + (local.get $8) + ) + (i32.store offset=8 + (local.get $8) + (local.get $8) ) - (br $while-in68) + (br $do-once48) ) ) + (br $__rjto$7) ) (if - (i32.lt_u - (local.get $2) - (i32.load - (i32.const 192) + (i32.and + (i32.ge_u + (local.tee $2 + (i32.load offset=8 + (local.get $0) + ) + ) + (local.tee $1 + (i32.load + (i32.const 192) + ) + ) + ) + (i32.ge_u + (local.get $0) + (local.get $1) ) ) - (call $_abort) (block - (i32.store + (i32.store offset=12 (local.get $2) - (local.get $9) + (local.get $8) ) - (i32.store offset=24 - (local.get $9) + (i32.store offset=8 (local.get $0) - ) - (i32.store offset=12 - (local.get $9) - (local.get $9) + (local.get $8) ) (i32.store offset=8 - (local.get $9) - (local.get $9) + (local.get $8) + (local.get $2) ) - (br $do-once48) - ) - ) - (br $__rjto$7) - ) - (if - (i32.and - (i32.ge_u - (local.tee $2 - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 8) - ) - ) - ) + (i32.store offset=12 + (local.get $8) + (local.get $0) ) - (local.tee $1 - (i32.load - (i32.const 192) - ) + (i32.store offset=24 + (local.get $8) + (i32.const 0) ) ) - (i32.ge_u - (local.get $0) - (local.get $1) - ) - ) - (block - (i32.store offset=12 - (local.get $2) - (local.get $9) - ) - (i32.store - (local.get $3) - (local.get $9) - ) - (i32.store offset=8 - (local.get $9) - (local.get $2) - ) - (i32.store offset=12 - (local.get $9) - (local.get $0) - ) - (i32.store offset=24 - (local.get $9) - (i32.const 0) - ) + (call $_abort) ) - (call $_abort) ) ) ) - ) - (return - (i32.add - (local.get $12) - (i32.const 8) + (return + (i32.add + (local.get $10) + (i32.const 8) + ) ) ) ) ) ) - ) - (loop $while-in70 - (block $while-out69 - (if - (i32.le_u - (local.tee $2 - (i32.load - (local.get $4) + (loop $while-in70 + (block $while-out69 + (if + (i32.le_u + (local.tee $3 + (i32.load + (local.get $4) + ) ) + (local.get $5) ) - (local.get $5) - ) - (br_if $while-out69 - (i32.gt_u - (local.tee $2 - (i32.add - (local.get $2) - (i32.load offset=4 - (local.get $4) + (br_if $while-out69 + (i32.gt_u + (local.tee $3 + (i32.add + (local.get $3) + (i32.load + (i32.add + (local.get $4) + (i32.const 4) + ) + ) ) ) + (local.get $5) ) - (local.get $5) ) ) - ) - (local.set $4 - (i32.load offset=8 - (local.get $4) + (local.set $4 + (i32.load + (i32.add + (local.get $4) + (i32.const 8) + ) + ) ) + (br $while-in70) ) - (br $while-in70) ) - ) - (local.set $11 - (i32.add - (local.tee $4 - (i32.add - (local.get $2) - (i32.const -47) + (local.set $9 + (i32.add + (local.tee $4 + (i32.add + (local.get $3) + (i32.const -47) + ) ) + (i32.const 8) ) - (i32.const 8) ) - ) - (local.set $8 - (i32.add - (local.tee $10 - (select - (local.get $5) - (local.tee $4 - (i32.add - (local.get $4) - (select - (i32.and - (i32.sub - (i32.const 0) - (local.get $11) + (local.set $6 + (i32.add + (local.tee $11 + (select + (local.get $5) + (local.tee $4 + (i32.add + (local.get $4) + (select + (i32.and + (i32.sub + (i32.const 0) + (local.get $9) + ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $9) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $11) - (i32.const 7) ) ) ) - ) - (i32.lt_u - (local.get $4) - (local.tee $11 + (i32.lt_u + (local.get $4) (i32.add (local.get $5) (i32.const 16) @@ -12014,791 +11970,790 @@ ) ) ) + (i32.const 8) ) - (i32.const 8) ) - ) - (i32.store - (i32.const 200) - (local.tee $6 - (i32.add - (local.tee $4 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $4 - (i32.add - (local.get $1) - (i32.const 8) + (i32.store + (i32.const 200) + (local.tee $9 + (i32.add + (local.tee $4 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $4 + (i32.add + (local.get $1) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $4) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $4) - (i32.const 7) ) ) + (local.get $1) ) - (local.get $1) ) ) - ) - (i32.store - (i32.const 188) - (local.tee $4 - (i32.sub - (i32.add - (local.get $3) - (i32.const -40) + (i32.store + (i32.const 188) + (local.tee $4 + (i32.sub + (i32.add + (local.get $2) + (i32.const -40) + ) + (local.get $4) ) + ) + ) + (i32.store offset=4 + (local.get $9) + (i32.or (local.get $4) + (i32.const 1) ) ) - ) - (i32.store offset=4 - (local.get $6) - (i32.or - (local.get $4) - (i32.const 1) + (i32.store offset=4 + (i32.add + (local.get $4) + (local.get $9) + ) + (i32.const 40) ) - ) - (i32.store offset=4 - (i32.add - (local.get $4) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) + ) + (i32.store offset=4 + (local.get $11) + (i32.const 27) + ) + (i32.store offset=8 + (local.get $11) + (i32.load + (i32.const 624) + ) + ) + (i32.store offset=4 (local.get $6) + (i32.load + (i32.const 628) + ) ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) + (i32.store offset=8 + (local.get $6) + (i32.load + (i32.const 632) + ) ) - ) - (i32.store - (local.tee $4 - (i32.add - (local.get $10) - (i32.const 4) + (i32.store offset=12 + (local.get $6) + (i32.load + (i32.const 636) ) ) - (i32.const 27) - ) - (i32.store - (local.get $8) - (i32.load + (i32.store (i32.const 624) + (local.get $1) ) - ) - (i32.store offset=4 - (local.get $8) - (i32.load + (i32.store (i32.const 628) + (local.get $2) ) - ) - (i32.store offset=8 - (local.get $8) - (i32.load - (i32.const 632) - ) - ) - (i32.store offset=12 - (local.get $8) - (i32.load + (i32.store (i32.const 636) + (i32.const 0) ) - ) - (i32.store - (i32.const 624) - (local.get $1) - ) - (i32.store - (i32.const 628) - (local.get $3) - ) - (i32.store - (i32.const 636) - (i32.const 0) - ) - (i32.store - (i32.const 632) - (local.get $8) - ) - (local.set $1 - (i32.add - (local.get $10) - (i32.const 24) - ) - ) - (loop $while-in72 (i32.store - (local.tee $1 - (i32.add - (local.get $1) - (i32.const 4) - ) - ) - (i32.const 7) + (i32.const 632) + (local.get $6) ) - (br_if $while-in72 - (i32.lt_u - (i32.add - (local.get $1) - (i32.const 4) - ) - (local.get $2) + (local.set $1 + (i32.add + (local.get $11) + (i32.const 24) ) ) - ) - (if - (i32.ne - (local.get $5) - (local.get $10) - ) - (block + (loop $while-in72 (i32.store - (local.get $4) - (i32.and - (i32.load - (local.get $4) + (local.tee $1 + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const -2) ) + (i32.const 7) ) - (i32.store offset=4 - (local.get $5) - (i32.or - (local.tee $6 - (i32.sub - (local.get $10) - (local.get $5) - ) + (br_if $while-in72 + (i32.lt_u + (i32.add + (local.get $1) + (i32.const 4) ) - (i32.const 1) + (local.get $3) ) ) - (i32.store - (local.get $10) - (local.get $6) - ) - (local.set $1 - (i32.shr_u - (local.get $6) - (i32.const 3) - ) + ) + (if + (i32.ne + (local.get $5) + (local.get $11) ) - (if - (i32.lt_u - (local.get $6) - (i32.const 256) + (block + (i32.store offset=4 + (local.get $11) + (i32.and + (i32.load offset=4 + (local.get $11) + ) + (i32.const -2) + ) ) - (block - (local.set $2 - (i32.add - (i32.shl - (local.get $1) - (i32.const 3) + (i32.store offset=4 + (local.get $5) + (i32.or + (local.tee $9 + (i32.sub + (local.get $11) + (local.get $5) ) - (i32.const 216) ) + (i32.const 1) ) - (if - (i32.and - (local.tee $3 - (i32.load - (i32.const 176) - ) - ) - (local.tee $1 + ) + (i32.store + (local.get $11) + (local.get $9) + ) + (local.set $1 + (i32.shr_u + (local.get $9) + (i32.const 3) + ) + ) + (if + (i32.lt_u + (local.get $9) + (i32.const 256) + ) + (block + (local.set $3 + (i32.add (i32.shl - (i32.const 1) (local.get $1) + (i32.const 3) ) + (i32.const 216) ) ) (if - (i32.lt_u - (local.tee $1 + (i32.and + (local.tee $2 (i32.load - (local.tee $3 - (i32.add - (local.get $2) - (i32.const 8) + (i32.const 176) + ) + ) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $1) + ) + ) + ) + (block + (local.set $2 + (i32.add + (local.get $3) + (i32.const 8) + ) + ) + (if + (i32.lt_u + (local.tee $1 + (i32.load offset=8 + (local.get $3) ) ) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) + (block + (local.set $17 + (local.get $2) + ) + (local.set $7 + (local.get $1) + ) ) - ) - (i32.load - (i32.const 192) ) ) - (call $_abort) (block + (i32.store + (i32.const 176) + (i32.or + (local.get $1) + (local.get $2) + ) + ) (local.set $17 - (local.get $3) + (i32.add + (local.get $3) + (i32.const 8) + ) ) (local.set $7 - (local.get $1) - ) - ) - ) - (block - (i32.store - (i32.const 176) - (i32.or - (local.get $1) (local.get $3) ) ) - (local.set $17 - (i32.add - (local.get $2) - (i32.const 8) - ) - ) - (local.set $7 - (local.get $2) + ) + (i32.store + (local.get $17) + (local.get $5) + ) + (i32.store + (i32.add + (local.get $7) + (i32.const 12) ) + (local.get $5) ) + (i32.store offset=8 + (local.get $5) + (local.get $7) + ) + (i32.store offset=12 + (local.get $5) + (local.get $3) + ) + (br $do-once40) ) - (i32.store - (local.get $17) - (local.get $5) - ) - (i32.store offset=12 - (local.get $7) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $7) - ) - (i32.store offset=12 - (local.get $5) - (local.get $2) - ) - (br $do-once40) ) - ) - (local.set $2 - (i32.add - (i32.shl - (local.tee $4 - (if (result i32) - (local.tee $1 - (i32.shr_u - (local.get $6) - (i32.const 8) - ) - ) + (local.set $3 + (i32.add + (i32.shl + (local.tee $4 (if (result i32) - (i32.gt_u - (local.get $6) - (i32.const 16777215) + (local.tee $1 + (i32.shr_u + (local.get $9) + (i32.const 8) + ) ) - (i32.const 31) - (block (result i32) - (local.set $4 - (i32.and - (i32.shr_u - (i32.add - (local.tee $1 - (i32.shl - (local.get $1) - (local.tee $3 - (i32.and - (i32.shr_u - (i32.add - (local.get $1) - (i32.const 1048320) + (if (result i32) + (i32.gt_u + (local.get $9) + (i32.const 16777215) + ) + (i32.const 31) + (block (result i32) + (local.set $4 + (i32.and + (i32.shr_u + (i32.add + (local.tee $1 + (i32.shl + (local.get $1) + (local.tee $2 + (i32.and + (i32.shr_u + (i32.add + (local.get $1) + (i32.const 1048320) + ) + (i32.const 16) ) - (i32.const 16) + (i32.const 8) ) - (i32.const 8) ) ) ) + (i32.const 520192) ) - (i32.const 520192) + (i32.const 16) ) - (i32.const 16) + (i32.const 4) ) - (i32.const 4) ) - ) - (local.set $2 - (i32.and - (i32.shr_u - (i32.add - (local.tee $1 - (i32.shl - (local.get $1) - (local.get $4) + (local.set $3 + (i32.and + (i32.shr_u + (i32.add + (local.tee $1 + (i32.shl + (local.get $1) + (local.get $4) + ) ) + (i32.const 245760) ) - (i32.const 245760) + (i32.const 16) ) - (i32.const 16) + (i32.const 2) ) - (i32.const 2) ) - ) - (i32.or - (i32.and - (i32.shr_u - (local.get $6) - (i32.add - (local.tee $1 - (i32.add - (i32.sub - (i32.const 14) - (i32.or + (i32.or + (i32.and + (i32.shr_u + (local.get $9) + (i32.add + (local.tee $1 + (i32.add + (i32.sub + (i32.const 14) (i32.or + (i32.or + (local.get $2) + (local.get $4) + ) (local.get $3) - (local.get $4) ) - (local.get $2) ) - ) - (i32.shr_u - (i32.shl - (local.get $1) - (local.get $2) + (i32.shr_u + (i32.shl + (local.get $1) + (local.get $3) + ) + (i32.const 15) ) - (i32.const 15) ) ) + (i32.const 7) ) - (i32.const 7) ) + (i32.const 1) + ) + (i32.shl + (local.get $1) + (i32.const 1) ) - (i32.const 1) - ) - (i32.shl - (local.get $1) - (i32.const 1) ) ) ) + (i32.const 0) ) - (i32.const 0) ) + (i32.const 2) ) - (i32.const 2) + (i32.const 480) ) - (i32.const 480) ) - ) - (i32.store offset=28 - (local.get $5) - (local.get $4) - ) - (i32.store offset=20 - (local.get $5) - (i32.const 0) - ) - (i32.store - (local.get $11) - (i32.const 0) - ) - (if - (i32.eqz - (i32.and - (local.tee $3 - (i32.load - (i32.const 180) + (i32.store offset=28 + (local.get $5) + (local.get $4) + ) + (i32.store offset=20 + (local.get $5) + (i32.const 0) + ) + (i32.store offset=16 + (local.get $5) + (i32.const 0) + ) + (if + (i32.eqz + (i32.and + (local.tee $2 + (i32.load + (i32.const 180) + ) ) - ) - (local.tee $1 - (i32.shl - (i32.const 1) - (local.get $4) + (local.tee $1 + (i32.shl + (i32.const 1) + (local.get $4) + ) ) ) ) - ) - (block - (i32.store - (i32.const 180) - (i32.or - (local.get $1) + (block + (i32.store + (i32.const 180) + (i32.or + (local.get $1) + (local.get $2) + ) + ) + (i32.store + (local.get $3) + (local.get $5) + ) + (i32.store offset=24 + (local.get $5) (local.get $3) ) + (i32.store offset=12 + (local.get $5) + (local.get $5) + ) + (i32.store offset=8 + (local.get $5) + (local.get $5) + ) + (br $do-once40) ) - (i32.store - (local.get $2) - (local.get $5) - ) - (i32.store offset=24 - (local.get $5) - (local.get $2) - ) - (i32.store offset=12 - (local.get $5) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $5) - ) - (br $do-once40) ) - ) - (local.set $4 - (i32.shl - (local.get $6) - (select - (i32.const 0) - (i32.sub - (i32.const 25) - (i32.shr_u + (local.set $4 + (i32.shl + (local.get $9) + (select + (i32.const 0) + (i32.sub + (i32.const 25) + (i32.shr_u + (local.get $4) + (i32.const 1) + ) + ) + (i32.eq (local.get $4) - (i32.const 1) + (i32.const 31) ) ) - (i32.eq - (local.get $4) - (i32.const 31) - ) ) ) - ) - (local.set $1 - (i32.load - (local.get $2) + (local.set $1 + (i32.load + (local.get $3) + ) ) - ) - (block $__rjto$9 - (block $__rjti$9 - (loop $while-in74 - (br_if $__rjti$9 - (i32.eq - (i32.and - (i32.load offset=4 - (local.get $1) + (block $__rjto$9 + (block $__rjti$9 + (loop $while-in74 + (br_if $__rjti$9 + (i32.eq + (i32.and + (i32.load + (i32.add + (local.get $1) + (i32.const 4) + ) + ) + (i32.const -8) ) - (i32.const -8) + (local.get $9) ) - (local.get $6) ) - ) - (local.set $2 - (i32.shl - (local.get $4) - (i32.const 1) + (local.set $3 + (i32.shl + (local.get $4) + (i32.const 1) + ) ) - ) - (if - (local.tee $3 - (i32.load - (local.tee $4 - (i32.add + (if + (local.tee $2 + (i32.load + (local.tee $4 (i32.add - (local.get $1) - (i32.const 16) - ) - (i32.shl - (i32.shr_u - (local.get $4) - (i32.const 31) + (i32.add + (local.get $1) + (i32.const 16) + ) + (i32.shl + (i32.shr_u + (local.get $4) + (i32.const 31) + ) + (i32.const 2) ) - (i32.const 2) ) ) ) ) + (block + (local.set $4 + (local.get $3) + ) + (local.set $1 + (local.get $2) + ) + (br $while-in74) + ) ) + ) + (if + (i32.lt_u + (local.get $4) + (i32.load + (i32.const 192) + ) + ) + (call $_abort) (block - (local.set $4 - (local.get $2) + (i32.store + (local.get $4) + (local.get $5) ) - (local.set $1 - (local.get $3) + (i32.store offset=24 + (local.get $5) + (local.get $1) + ) + (i32.store offset=12 + (local.get $5) + (local.get $5) ) - (br $while-in74) + (i32.store offset=8 + (local.get $5) + (local.get $5) + ) + (br $do-once40) ) ) + (br $__rjto$9) ) (if - (i32.lt_u - (local.get $4) - (i32.load - (i32.const 192) + (i32.and + (i32.ge_u + (local.tee $3 + (i32.load offset=8 + (local.get $1) + ) + ) + (local.tee $2 + (i32.load + (i32.const 192) + ) + ) + ) + (i32.ge_u + (local.get $1) + (local.get $2) ) ) - (call $_abort) (block - (i32.store - (local.get $4) + (i32.store offset=12 + (local.get $3) (local.get $5) ) - (i32.store offset=24 - (local.get $5) + (i32.store offset=8 (local.get $1) - ) - (i32.store offset=12 - (local.get $5) (local.get $5) ) (i32.store offset=8 (local.get $5) - (local.get $5) + (local.get $3) ) - (br $do-once40) - ) - ) - (br $__rjto$9) - ) - (if - (i32.and - (i32.ge_u - (local.tee $4 - (i32.load - (local.tee $2 - (i32.add - (local.get $1) - (i32.const 8) - ) - ) - ) + (i32.store offset=12 + (local.get $5) + (local.get $1) ) - (local.tee $3 - (i32.load - (i32.const 192) - ) + (i32.store offset=24 + (local.get $5) + (i32.const 0) ) ) - (i32.ge_u - (local.get $1) - (local.get $3) - ) - ) - (block - (i32.store offset=12 - (local.get $4) - (local.get $5) - ) - (i32.store - (local.get $2) - (local.get $5) - ) - (i32.store offset=8 - (local.get $5) - (local.get $4) - ) - (i32.store offset=12 - (local.get $5) - (local.get $1) - ) - (i32.store offset=24 - (local.get $5) - (i32.const 0) - ) + (call $_abort) ) - (call $_abort) ) ) ) ) - ) - (block - (if - (i32.or - (i32.eqz - (local.tee $2 - (i32.load - (i32.const 192) + (block + (if + (i32.or + (i32.eqz + (local.tee $3 + (i32.load + (i32.const 192) + ) ) ) + (i32.lt_u + (local.get $1) + (local.get $3) + ) ) - (i32.lt_u + (i32.store + (i32.const 192) (local.get $1) - (local.get $2) ) ) (i32.store - (i32.const 192) + (i32.const 624) (local.get $1) ) - ) - (i32.store - (i32.const 624) - (local.get $1) - ) - (i32.store - (i32.const 628) - (local.get $3) - ) - (i32.store - (i32.const 636) - (i32.const 0) - ) - (i32.store - (i32.const 212) - (i32.load - (i32.const 648) + (i32.store + (i32.const 628) + (local.get $2) ) - ) - (i32.store - (i32.const 208) - (i32.const -1) - ) - (local.set $2 - (i32.const 0) - ) - (loop $while-in43 - (i32.store offset=12 - (local.tee $4 - (i32.add - (i32.shl - (local.get $2) - (i32.const 3) - ) - (i32.const 216) - ) + (i32.store + (i32.const 636) + (i32.const 0) + ) + (i32.store + (i32.const 212) + (i32.load + (i32.const 648) ) - (local.get $4) ) - (i32.store offset=8 - (local.get $4) - (local.get $4) + (i32.store + (i32.const 208) + (i32.const -1) ) - (br_if $while-in43 - (i32.ne - (local.tee $2 + (local.set $3 + (i32.const 0) + ) + (loop $while-in43 + (i32.store offset=12 + (local.tee $4 (i32.add - (local.get $2) - (i32.const 1) + (i32.shl + (local.get $3) + (i32.const 3) + ) + (i32.const 216) ) ) - (i32.const 32) + (local.get $4) + ) + (i32.store offset=8 + (local.get $4) + (local.get $4) + ) + (br_if $while-in43 + (i32.ne + (local.tee $3 + (i32.add + (local.get $3) + (i32.const 1) + ) + ) + (i32.const 32) + ) ) ) - ) - (i32.store - (i32.const 200) - (local.tee $4 - (i32.add - (local.tee $2 - (select - (i32.and - (i32.sub - (i32.const 0) - (local.tee $2 - (i32.add - (local.get $1) - (i32.const 8) + (i32.store + (i32.const 200) + (local.tee $4 + (i32.add + (local.tee $3 + (select + (i32.and + (i32.sub + (i32.const 0) + (local.tee $3 + (i32.add + (local.get $1) + (i32.const 8) + ) ) ) + (i32.const 7) + ) + (i32.const 0) + (i32.and + (local.get $3) + (i32.const 7) ) - (i32.const 7) - ) - (i32.const 0) - (i32.and - (local.get $2) - (i32.const 7) ) ) + (local.get $1) ) - (local.get $1) ) ) - ) - (i32.store - (i32.const 188) - (local.tee $1 - (i32.sub - (i32.add + (i32.store + (i32.const 188) + (local.tee $1 + (i32.sub + (i32.add + (local.get $2) + (i32.const -40) + ) (local.get $3) - (i32.const -40) ) - (local.get $2) ) ) - ) - (i32.store offset=4 - (local.get $4) - (i32.or - (local.get $1) - (i32.const 1) - ) - ) - (i32.store offset=4 - (i32.add - (local.get $1) + (i32.store offset=4 (local.get $4) + (i32.or + (local.get $1) + (i32.const 1) + ) ) - (i32.const 40) - ) - (i32.store - (i32.const 204) - (i32.load - (i32.const 664) + (i32.store offset=4 + (i32.add + (local.get $1) + (local.get $4) + ) + (i32.const 40) + ) + (i32.store + (i32.const 204) + (i32.load + (i32.const 664) + ) ) ) ) - ) - (br_if $folding-inner0 - (i32.gt_u - (local.tee $1 - (i32.load - (i32.const 188) + (br_if $folding-inner0 + (i32.gt_u + (local.tee $1 + (i32.load + (i32.const 188) + ) ) + (local.get $0) ) - (local.get $0) ) ) + (i32.store + (call $___errno_location) + (i32.const 12) + ) + (return + (i32.const 0) + ) ) (i32.store - (call $___errno_location) - (i32.const 12) - ) - (return - (i32.const 0) - ) - ) - (i32.store - (i32.const 188) - (local.tee $3 - (i32.sub - (local.get $1) - (local.get $0) + (i32.const 188) + (local.tee $2 + (i32.sub + (local.get $1) + (local.get $0) + ) ) ) - ) - (i32.store - (i32.const 200) - (local.tee $1 - (i32.add - (local.tee $2 - (i32.load - (i32.const 200) + (i32.store + (i32.const 200) + (local.tee $1 + (i32.add + (local.tee $3 + (i32.load + (i32.const 200) + ) ) + (local.get $0) ) - (local.get $0) ) ) - ) - (i32.store offset=4 - (local.get $1) - (i32.or - (local.get $3) - (i32.const 1) + (i32.store offset=4 + (local.get $1) + (i32.or + (local.get $2) + (i32.const 1) + ) ) - ) - (i32.store offset=4 - (local.get $2) - (i32.or - (local.get $0) - (i32.const 3) + (i32.store offset=4 + (local.get $3) + (i32.or + (local.get $0) + (i32.const 3) + ) ) ) (i32.add - (local.get $2) + (local.get $3) (i32.const 8) ) ) @@ -12842,7 +12797,7 @@ ) (if (i32.eq - (local.tee $5 + (local.tee $4 (i32.and (local.tee $8 (i32.load @@ -12876,17 +12831,17 @@ (i32.const 1) ) (block - (local.set $2 + (local.set $3 (local.get $1) ) - (local.set $3 + (local.set $2 (local.get $0) ) ) (block $do-once (if (i32.eqz - (local.get $5) + (local.get $4) ) (return) ) @@ -12923,14 +12878,9 @@ (if (i32.ne (i32.and - (local.tee $3 - (i32.load - (local.tee $2 - (i32.add - (local.get $7) - (i32.const 4) - ) - ) + (local.tee $2 + (i32.load offset=4 + (local.get $7) ) ) (i32.const 3) @@ -12938,10 +12888,10 @@ (i32.const 3) ) (block - (local.set $2 + (local.set $3 (local.get $1) ) - (local.set $3 + (local.set $2 (local.get $0) ) (br $do-once) @@ -12951,10 +12901,10 @@ (i32.const 184) (local.get $0) ) - (i32.store - (local.get $2) + (i32.store offset=4 + (local.get $7) (i32.and - (local.get $3) + (local.get $2) (i32.const -2) ) ) @@ -12975,7 +12925,7 @@ (return) ) ) - (local.set $5 + (local.set $4 (i32.shr_u (local.get $8) (i32.const 3) @@ -12994,15 +12944,15 @@ ) (if (i32.ne - (local.tee $2 + (local.tee $3 (i32.load offset=8 (local.get $1) ) ) - (local.tee $3 + (local.tee $2 (i32.add (i32.shl - (local.get $5) + (local.get $4) (i32.const 3) ) (i32.const 216) @@ -13012,7 +12962,7 @@ (block (if (i32.lt_u - (local.get $2) + (local.get $3) (local.get $11) ) (call $_abort) @@ -13021,7 +12971,7 @@ (i32.ne (local.get $1) (i32.load offset=12 - (local.get $2) + (local.get $3) ) ) (call $_abort) @@ -13030,7 +12980,7 @@ ) (if (i32.eq - (local.get $2) + (local.get $3) (local.get $6) ) (block @@ -13043,16 +12993,16 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $5) + (local.get $4) ) (i32.const -1) ) ) ) - (local.set $2 + (local.set $3 (local.get $1) ) - (local.set $3 + (local.set $2 (local.get $0) ) (br $do-once) @@ -13060,10 +13010,10 @@ ) (if (i32.eq - (local.get $3) + (local.get $2) (local.get $6) ) - (local.set $4 + (local.set $5 (i32.add (local.get $6) (i32.const 8) @@ -13077,50 +13027,51 @@ ) (call $_abort) ) + (local.set $2 + (i32.add + (local.get $6) + (i32.const 8) + ) + ) (if (i32.eq - (i32.load - (local.tee $3 - (i32.add - (local.get $6) - (i32.const 8) - ) - ) + (i32.load offset=8 + (local.get $6) ) (local.get $1) ) - (local.set $4 - (local.get $3) + (local.set $5 + (local.get $2) ) (call $_abort) ) ) ) (i32.store offset=12 - (local.get $2) + (local.get $3) (local.get $6) ) (i32.store - (local.get $4) - (local.get $2) + (local.get $5) + (local.get $3) ) - (local.set $2 + (local.set $3 (local.get $1) ) - (local.set $3 + (local.set $2 (local.get $0) ) (br $do-once) ) ) - (local.set $12 + (local.set $10 (i32.load offset=24 (local.get $1) ) ) (if (i32.eq - (local.tee $4 + (local.tee $5 (i32.load offset=12 (local.get $1) ) @@ -13128,35 +13079,36 @@ (local.get $1) ) (block $do-once0 + (local.set $5 + (i32.add + (local.tee $8 + (i32.add + (local.get $1) + (i32.const 16) + ) + ) + (i32.const 4) + ) + ) (if (i32.eqz - (local.tee $5 - (i32.load - (local.tee $4 - (i32.add - (local.tee $8 - (i32.add - (local.get $1) - (i32.const 16) - ) - ) - (i32.const 4) - ) - ) + (local.tee $4 + (i32.load offset=4 + (local.get $8) ) ) ) (block (br_if $do-once0 (i32.eqz - (local.tee $5 - (i32.load - (local.get $8) + (local.tee $4 + (i32.load offset=16 + (local.get $1) ) ) ) ) - (local.set $4 + (local.set $5 (local.get $8) ) ) @@ -13165,20 +13117,20 @@ (if (local.tee $8 (i32.load - (local.tee $10 + (local.tee $12 (i32.add - (local.get $5) + (local.get $4) (i32.const 20) ) ) ) ) (block - (local.set $5 + (local.set $4 (local.get $8) ) - (local.set $4 - (local.get $10) + (local.set $5 + (local.get $12) ) (br $while-in) ) @@ -13186,20 +13138,20 @@ (if (local.tee $8 (i32.load - (local.tee $10 + (local.tee $12 (i32.add - (local.get $5) + (local.get $4) (i32.const 16) ) ) ) ) (block - (local.set $5 + (local.set $4 (local.get $8) ) - (local.set $4 - (local.get $10) + (local.set $5 + (local.get $12) ) (br $while-in) ) @@ -13207,17 +13159,17 @@ ) (if (i32.lt_u - (local.get $4) + (local.get $5) (local.get $11) ) (call $_abort) (block (i32.store - (local.get $4) + (local.get $5) (i32.const 0) ) (local.set $6 - (local.get $5) + (local.get $4) ) ) ) @@ -13225,7 +13177,7 @@ (block (if (i32.lt_u - (local.tee $10 + (local.tee $4 (i32.load offset=8 (local.get $1) ) @@ -13237,40 +13189,30 @@ (if (i32.ne (local.get $1) - (i32.load - (local.tee $8 - (i32.add - (local.get $10) - (i32.const 12) - ) - ) + (i32.load offset=12 + (local.get $4) ) ) (call $_abort) ) (if (i32.eq - (i32.load - (local.tee $5 - (i32.add - (local.get $4) - (i32.const 8) - ) - ) + (i32.load offset=8 + (local.get $5) ) (local.get $1) ) (block - (i32.store - (local.get $8) + (i32.store offset=12 (local.get $4) + (local.get $5) ) - (i32.store + (i32.store offset=8 (local.get $5) - (local.get $10) + (local.get $4) ) (local.set $6 - (local.get $4) + (local.get $5) ) ) (call $_abort) @@ -13278,15 +13220,15 @@ ) ) (if - (local.get $12) + (local.get $10) (block (if (i32.eq (i32.load - (local.tee $4 + (local.tee $5 (i32.add (i32.shl - (local.tee $5 + (local.tee $4 (i32.load offset=28 (local.get $1) ) @@ -13301,7 +13243,7 @@ ) (block (i32.store - (local.get $4) + (local.get $5) (local.get $6) ) (if @@ -13318,16 +13260,16 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $5) + (local.get $4) ) (i32.const -1) ) ) ) - (local.set $2 + (local.set $3 (local.get $1) ) - (local.set $3 + (local.set $2 (local.get $0) ) (br $do-once) @@ -13337,7 +13279,7 @@ (block (if (i32.lt_u - (local.get $12) + (local.get $10) (i32.load (i32.const 192) ) @@ -13346,22 +13288,17 @@ ) (if (i32.eq - (i32.load - (local.tee $4 - (i32.add - (local.get $12) - (i32.const 16) - ) - ) + (i32.load offset=16 + (local.get $10) ) (local.get $1) ) - (i32.store - (local.get $4) + (i32.store offset=16 + (local.get $10) (local.get $6) ) (i32.store offset=20 - (local.get $12) + (local.get $10) (local.get $6) ) ) @@ -13370,10 +13307,10 @@ (local.get $6) ) (block - (local.set $2 + (local.set $3 (local.get $1) ) - (local.set $3 + (local.set $2 (local.get $0) ) (br $do-once) @@ -13392,85 +13329,92 @@ ) (call $_abort) ) - (i32.store offset=24 - (local.get $6) - (local.get $12) + (i32.store + (i32.add + (local.get $6) + (i32.const 24) + ) + (local.get $10) ) (if - (local.tee $8 - (i32.load - (local.tee $4 - (i32.add - (local.get $1) - (i32.const 16) - ) - ) + (local.tee $4 + (i32.load offset=16 + (local.get $1) ) ) (if (i32.lt_u - (local.get $8) + (local.get $4) (local.get $5) ) (call $_abort) (block - (i32.store offset=16 - (local.get $6) - (local.get $8) + (i32.store + (i32.add + (local.get $6) + (i32.const 16) + ) + (local.get $4) ) (i32.store offset=24 - (local.get $8) + (local.get $4) (local.get $6) ) ) ) ) (if - (local.tee $4 + (local.tee $5 (i32.load offset=4 - (local.get $4) + (i32.add + (local.get $1) + (i32.const 16) + ) ) ) (if (i32.lt_u - (local.get $4) + (local.get $5) (i32.load (i32.const 192) ) ) (call $_abort) (block - (i32.store offset=20 - (local.get $6) - (local.get $4) + (i32.store + (i32.add + (local.get $6) + (i32.const 20) + ) + (local.get $5) ) (i32.store offset=24 - (local.get $4) + (local.get $5) (local.get $6) ) - (local.set $2 + (local.set $3 (local.get $1) ) - (local.set $3 + (local.set $2 (local.get $0) ) ) ) (block - (local.set $2 + (local.set $3 (local.get $1) ) - (local.set $3 + (local.set $2 (local.get $0) ) ) ) ) (block - (local.set $2 + (local.set $3 (local.get $1) ) - (local.set $3 + (local.set $2 (local.get $0) ) ) @@ -13479,7 +13423,7 @@ ) (if (i32.ge_u - (local.get $2) + (local.get $3) (local.get $7) ) (call $_abort) @@ -13487,14 +13431,9 @@ (if (i32.eqz (i32.and - (local.tee $1 - (i32.load - (local.tee $0 - (i32.add - (local.get $7) - (i32.const 4) - ) - ) + (local.tee $0 + (i32.load offset=4 + (local.get $7) ) ) (i32.const 1) @@ -13504,21 +13443,24 @@ ) (if (i32.and - (local.get $1) + (local.get $0) (i32.const 2) ) (block - (i32.store - (local.get $0) + (i32.store offset=4 + (local.get $7) (i32.and - (local.get $1) + (local.get $0) (i32.const -2) ) ) - (i32.store offset=4 - (local.get $2) - (i32.or + (i32.store + (i32.add (local.get $3) + (i32.const 4) + ) + (i32.or + (local.get $2) (i32.const 1) ) ) @@ -13527,7 +13469,7 @@ (local.get $2) (local.get $3) ) - (local.get $3) + (local.get $2) ) ) (block @@ -13546,16 +13488,19 @@ (i32.load (i32.const 188) ) - (local.get $3) + (local.get $2) ) ) ) (i32.store (i32.const 200) - (local.get $2) + (local.get $3) ) - (i32.store offset=4 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 4) + ) (i32.or (local.get $0) (i32.const 1) @@ -13563,7 +13508,7 @@ ) (if (i32.ne - (local.get $2) + (local.get $3) (i32.load (i32.const 196) ) @@ -13596,16 +13541,19 @@ (i32.load (i32.const 184) ) - (local.get $3) + (local.get $2) ) ) ) (i32.store (i32.const 196) - (local.get $2) + (local.get $3) ) - (i32.store offset=4 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 4) + ) (i32.or (local.get $0) (i32.const 1) @@ -13614,36 +13562,36 @@ (i32.store (i32.add (local.get $0) - (local.get $2) + (local.get $3) ) (local.get $0) ) (return) ) ) - (local.set $5 + (local.set $4 (i32.add (i32.and - (local.get $1) + (local.get $0) (i32.const -8) ) - (local.get $3) + (local.get $2) ) ) - (local.set $3 + (local.set $2 (i32.shr_u - (local.get $1) + (local.get $0) (i32.const 3) ) ) (block $do-once4 (if (i32.lt_u - (local.get $1) + (local.get $0) (i32.const 256) ) (block - (local.set $4 + (local.set $5 (i32.load offset=12 (local.get $7) ) @@ -13658,7 +13606,7 @@ (local.tee $0 (i32.add (i32.shl - (local.get $3) + (local.get $2) (i32.const 3) ) (i32.const 216) @@ -13689,7 +13637,7 @@ (if (i32.eq (local.get $1) - (local.get $4) + (local.get $5) ) (block (i32.store @@ -13701,7 +13649,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $3) + (local.get $2) ) (i32.const -1) ) @@ -13713,33 +13661,34 @@ (if (i32.eq (local.get $0) - (local.get $4) + (local.get $5) ) (local.set $14 (i32.add - (local.get $4) + (local.get $5) (i32.const 8) ) ) (block (if (i32.lt_u - (local.get $4) + (local.get $5) (i32.load (i32.const 192) ) ) (call $_abort) ) + (local.set $0 + (i32.add + (local.get $5) + (i32.const 8) + ) + ) (if (i32.eq - (i32.load - (local.tee $0 - (i32.add - (local.get $4) - (i32.const 8) - ) - ) + (i32.load offset=8 + (local.get $5) ) (local.get $7) ) @@ -13752,7 +13701,7 @@ ) (i32.store offset=12 (local.get $1) - (local.get $4) + (local.get $5) ) (i32.store (local.get $14) @@ -13775,30 +13724,31 @@ (local.get $7) ) (block $do-once6 + (local.set $0 + (i32.add + (local.tee $1 + (i32.add + (local.get $7) + (i32.const 16) + ) + ) + (i32.const 4) + ) + ) (if (i32.eqz - (local.tee $3 - (i32.load - (local.tee $0 - (i32.add - (local.tee $1 - (i32.add - (local.get $7) - (i32.const 16) - ) - ) - (i32.const 4) - ) - ) + (local.tee $2 + (i32.load offset=4 + (local.get $1) ) ) ) (block (br_if $do-once6 (i32.eqz - (local.tee $3 - (i32.load - (local.get $1) + (local.tee $2 + (i32.load offset=16 + (local.get $7) ) ) ) @@ -13812,20 +13762,20 @@ (if (local.tee $1 (i32.load - (local.tee $4 + (local.tee $5 (i32.add - (local.get $3) + (local.get $2) (i32.const 20) ) ) ) ) (block - (local.set $3 + (local.set $2 (local.get $1) ) (local.set $0 - (local.get $4) + (local.get $5) ) (br $while-in9) ) @@ -13833,20 +13783,20 @@ (if (local.tee $1 (i32.load - (local.tee $4 + (local.tee $5 (i32.add - (local.get $3) + (local.get $2) (i32.const 16) ) ) ) ) (block - (local.set $3 + (local.set $2 (local.get $1) ) (local.set $0 - (local.get $4) + (local.get $5) ) (br $while-in9) ) @@ -13866,7 +13816,7 @@ (i32.const 0) ) (local.set $9 - (local.get $3) + (local.get $2) ) ) ) @@ -13874,7 +13824,7 @@ (block (if (i32.lt_u - (local.tee $4 + (local.tee $2 (i32.load offset=8 (local.get $7) ) @@ -13888,37 +13838,27 @@ (if (i32.ne (local.get $7) - (i32.load - (local.tee $1 - (i32.add - (local.get $4) - (i32.const 12) - ) - ) + (i32.load offset=12 + (local.get $2) ) ) (call $_abort) ) (if (i32.eq - (i32.load - (local.tee $3 - (i32.add - (local.get $0) - (i32.const 8) - ) - ) + (i32.load offset=8 + (local.get $0) ) (local.get $7) ) (block - (i32.store - (local.get $1) + (i32.store offset=12 + (local.get $2) (local.get $0) ) - (i32.store - (local.get $3) - (local.get $4) + (i32.store offset=8 + (local.get $0) + (local.get $2) ) (local.set $9 (local.get $0) @@ -13937,7 +13877,7 @@ (local.tee $0 (i32.add (i32.shl - (local.tee $3 + (local.tee $2 (i32.load offset=28 (local.get $7) ) @@ -13969,7 +13909,7 @@ (i32.xor (i32.shl (i32.const 1) - (local.get $3) + (local.get $2) ) (i32.const -1) ) @@ -13991,18 +13931,13 @@ ) (if (i32.eq - (i32.load - (local.tee $0 - (i32.add - (local.get $6) - (i32.const 16) - ) - ) + (i32.load offset=16 + (local.get $6) ) (local.get $7) ) - (i32.store - (local.get $0) + (i32.store offset=16 + (local.get $6) (local.get $9) ) (i32.store offset=20 @@ -14020,7 +13955,7 @@ (if (i32.lt_u (local.get $9) - (local.tee $3 + (local.tee $0 (i32.load (i32.const 192) ) @@ -14028,34 +13963,35 @@ ) (call $_abort) ) - (i32.store offset=24 - (local.get $9) + (i32.store + (i32.add + (local.get $9) + (i32.const 24) + ) (local.get $6) ) (if - (local.tee $1 - (i32.load - (local.tee $0 - (i32.add - (local.get $7) - (i32.const 16) - ) - ) + (local.tee $2 + (i32.load offset=16 + (local.get $7) ) ) (if (i32.lt_u - (local.get $1) - (local.get $3) + (local.get $2) + (local.get $0) ) (call $_abort) (block - (i32.store offset=16 - (local.get $9) - (local.get $1) + (i32.store + (i32.add + (local.get $9) + (i32.const 16) + ) + (local.get $2) ) (i32.store offset=24 - (local.get $1) + (local.get $2) (local.get $9) ) ) @@ -14064,7 +14000,10 @@ (if (local.tee $0 (i32.load offset=4 - (local.get $0) + (i32.add + (local.get $7) + (i32.const 16) + ) ) ) (if @@ -14076,8 +14015,11 @@ ) (call $_abort) (block - (i32.store offset=20 - (local.get $9) + (i32.store + (i32.add + (local.get $9) + (i32.const 20) + ) (local.get $0) ) (i32.store offset=24 @@ -14092,49 +14034,52 @@ ) ) ) - (i32.store offset=4 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 4) + ) (i32.or - (local.get $5) + (local.get $4) (i32.const 1) ) ) (i32.store (i32.add - (local.get $2) - (local.get $5) + (local.get $3) + (local.get $4) ) - (local.get $5) + (local.get $4) ) - (local.set $3 + (local.set $2 (if (result i32) (i32.eq (i32.load (i32.const 196) ) - (local.get $2) + (local.get $3) ) (block (i32.store (i32.const 184) - (local.get $5) + (local.get $4) ) (return) ) - (local.get $5) + (local.get $4) ) ) ) ) (local.set $0 (i32.shr_u - (local.get $3) + (local.get $2) (i32.const 3) ) ) (if (i32.lt_u - (local.get $3) + (local.get $2) (i32.const 256) ) (block @@ -14149,7 +14094,7 @@ ) (if (i32.and - (local.tee $3 + (local.tee $2 (i32.load (i32.const 176) ) @@ -14161,29 +14106,32 @@ ) ) ) - (if - (i32.lt_u - (local.tee $0 - (i32.load - (local.tee $3 - (i32.add - (local.get $1) - (i32.const 8) - ) - ) - ) - ) - (i32.load - (i32.const 192) + (block + (local.set $2 + (i32.add + (local.get $1) + (i32.const 8) ) ) - (call $_abort) - (block - (local.set $15 - (local.get $3) + (if + (i32.lt_u + (local.tee $0 + (i32.load offset=8 + (local.get $1) + ) + ) + (i32.load + (i32.const 192) + ) ) - (local.set $13 - (local.get $0) + (call $_abort) + (block + (local.set $15 + (local.get $2) + ) + (local.set $13 + (local.get $0) + ) ) ) ) @@ -14192,7 +14140,7 @@ (i32.const 176) (i32.or (local.get $0) - (local.get $3) + (local.get $2) ) ) (local.set $15 @@ -14208,42 +14156,51 @@ ) (i32.store (local.get $15) - (local.get $2) + (local.get $3) ) - (i32.store offset=12 - (local.get $13) - (local.get $2) + (i32.store + (i32.add + (local.get $13) + (i32.const 12) + ) + (local.get $3) ) - (i32.store offset=8 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 8) + ) (local.get $13) ) - (i32.store offset=12 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 12) + ) (local.get $1) ) (return) ) ) - (local.set $4 + (local.set $5 (i32.add (i32.shl - (local.tee $5 + (local.tee $4 (if (result i32) (local.tee $0 (i32.shr_u - (local.get $3) + (local.get $2) (i32.const 8) ) ) (if (result i32) (i32.gt_u - (local.get $3) + (local.get $2) (i32.const 16777215) ) (i32.const 31) (block (result i32) - (local.set $5 + (local.set $4 (i32.and (i32.shr_u (i32.add @@ -14271,14 +14228,14 @@ (i32.const 4) ) ) - (local.set $4 + (local.set $5 (i32.and (i32.shr_u (i32.add (local.tee $0 (i32.shl (local.get $0) - (local.get $5) + (local.get $4) ) ) (i32.const 245760) @@ -14291,7 +14248,7 @@ (i32.or (i32.and (i32.shr_u - (local.get $3) + (local.get $2) (i32.add (local.tee $0 (i32.add @@ -14300,15 +14257,15 @@ (i32.or (i32.or (local.get $1) - (local.get $5) + (local.get $4) ) - (local.get $4) + (local.get $5) ) ) (i32.shr_u (i32.shl (local.get $0) - (local.get $4) + (local.get $5) ) (i32.const 15) ) @@ -14334,16 +14291,25 @@ (i32.const 480) ) ) - (i32.store offset=28 - (local.get $2) - (local.get $5) + (i32.store + (i32.add + (local.get $3) + (i32.const 28) + ) + (local.get $4) ) - (i32.store offset=20 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 20) + ) (i32.const 0) ) - (i32.store offset=16 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 16) + ) (i32.const 0) ) (if @@ -14356,25 +14322,25 @@ (local.tee $0 (i32.shl (i32.const 1) - (local.get $5) + (local.get $4) ) ) ) (block $do-once12 - (local.set $5 + (local.set $4 (i32.shl - (local.get $3) + (local.get $2) (select (i32.const 0) (i32.sub (i32.const 25) (i32.shr_u - (local.get $5) + (local.get $4) (i32.const 1) ) ) (i32.eq - (local.get $5) + (local.get $4) (i32.const 31) ) ) @@ -14382,7 +14348,7 @@ ) (local.set $0 (i32.load - (local.get $4) + (local.get $5) ) ) (block $__rjto$1 @@ -14391,24 +14357,27 @@ (br_if $__rjti$1 (i32.eq (i32.and - (i32.load offset=4 - (local.get $0) + (i32.load + (i32.add + (local.get $0) + (i32.const 4) + ) ) (i32.const -8) ) - (local.get $3) + (local.get $2) ) ) - (local.set $4 + (local.set $5 (i32.shl - (local.get $5) + (local.get $4) (i32.const 1) ) ) (if (local.tee $1 (i32.load - (local.tee $5 + (local.tee $4 (i32.add (i32.add (local.get $0) @@ -14416,7 +14385,7 @@ ) (i32.shl (i32.shr_u - (local.get $5) + (local.get $4) (i32.const 31) ) (i32.const 2) @@ -14426,8 +14395,8 @@ ) ) (block - (local.set $5 - (local.get $4) + (local.set $4 + (local.get $5) ) (local.set $0 (local.get $1) @@ -14438,7 +14407,7 @@ ) (if (i32.lt_u - (local.get $5) + (local.get $4) (i32.load (i32.const 192) ) @@ -14446,20 +14415,29 @@ (call $_abort) (block (i32.store - (local.get $5) - (local.get $2) + (local.get $4) + (local.get $3) ) - (i32.store offset=24 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 24) + ) (local.get $0) ) - (i32.store offset=12 - (local.get $2) - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 12) + ) + (local.get $3) ) - (i32.store offset=8 - (local.get $2) - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 8) + ) + (local.get $3) ) (br $do-once12) ) @@ -14469,17 +14447,12 @@ (if (i32.and (i32.ge_u - (local.tee $4 - (i32.load - (local.tee $1 - (i32.add - (local.get $0) - (i32.const 8) - ) - ) + (local.tee $1 + (i32.load offset=8 + (local.get $0) ) ) - (local.tee $3 + (local.tee $2 (i32.load (i32.const 192) ) @@ -14487,28 +14460,37 @@ ) (i32.ge_u (local.get $0) - (local.get $3) + (local.get $2) ) ) (block (i32.store offset=12 - (local.get $4) - (local.get $2) - ) - (i32.store (local.get $1) - (local.get $2) + (local.get $3) ) (i32.store offset=8 - (local.get $2) - (local.get $4) + (local.get $0) + (local.get $3) ) - (i32.store offset=12 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 8) + ) + (local.get $1) + ) + (i32.store + (i32.add + (local.get $3) + (i32.const 12) + ) (local.get $0) ) - (i32.store offset=24 - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 24) + ) (i32.const 0) ) ) @@ -14525,20 +14507,29 @@ ) ) (i32.store - (local.get $4) - (local.get $2) + (local.get $5) + (local.get $3) ) - (i32.store offset=24 - (local.get $2) - (local.get $4) + (i32.store + (i32.add + (local.get $3) + (i32.const 24) + ) + (local.get $5) ) - (i32.store offset=12 - (local.get $2) - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 12) + ) + (local.get $3) ) - (i32.store offset=8 - (local.get $2) - (local.get $2) + (i32.store + (i32.add + (local.get $3) + (i32.const 8) + ) + (local.get $3) ) ) ) @@ -14563,7 +14554,7 @@ (loop $while-in17 (local.set $0 (i32.add - (local.tee $3 + (local.tee $2 (i32.load (local.get $0) ) @@ -14572,7 +14563,7 @@ ) ) (br_if $while-in17 - (local.get $3) + (local.get $2) ) ) (i32.store |