diff --git a/cli/asc.js b/cli/asc.js index c88ec45bd3..5589881137 100644 --- a/cli/asc.js +++ b/cli/asc.js @@ -24,6 +24,7 @@ const mkdirp = require("./util/mkdirp"); const find = require("./util/find"); const EOL = process.platform === "win32" ? "\r\n" : "\n"; const SEP = process.platform === "win32" ? "\\" : "/"; +const Long = require("long"); const binaryen = global.Binaryen || (global.Binaryen = require("binaryen")); // Proxy Binaryen's ready event @@ -238,6 +239,43 @@ exports.main = function main(argv, options, callback) { assemblyscript.setGlobalAlias(compilerOptions, "abort", "~lib/builtins/abort"); assemblyscript.setGlobalAlias(compilerOptions, "trace", "~lib/builtins/trace"); + // Initialize randomness source + switch (args.seedRandom) { + case "const": { + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_CONST", "1"); + // fall-through + } + case undefined: { + let value = Long.fromBits(Math.random() * 0xffffffff, Math.random() * 0xffffffff, true); + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_LOW", (value.low >>> 0).toString()); + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_HIGH", (value.high >>> 0).toString()); + break; + } + case "math": { + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_MATH", "1"); + break; + } + case "date": { + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_DATE", "1"); + break; + } + case "wasi": { + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_WASI", "1"); + break; + } + default: { + if (/^\d+$/.test(args.seedRandom)) { + let value = Long.fromString(args.seedRandom); + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_CONST", "1"); + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_LOW", (value.low >>> 0).toString()); + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_HIGH", (value.high >>> 0).toString()); + } else { + assemblyscript.setGlobalAlias(compilerOptions, "ASC_SEEDRANDOM_FUNC", String(args.seedRandom)); + } + break; + } + } + // Add or override aliases if specified if (args.use) { let aliases = args.use; diff --git a/cli/asc.json b/cli/asc.json index 936d849320..3f607d76d0 100644 --- a/cli/asc.json +++ b/cli/asc.json @@ -191,6 +191,22 @@ "type": "S", "alias": "u" }, + "seedRandom": { + "category": "Features", + "description": [ + "Sets the randomness source used by Math.random. Defalts to", + "a compile-time constant while emitting a warning.", + "", + " const Compile-time constant without a warning.", + " 12345 Custom constant without a warning.", + " date Imports 'Date' from JS and calls Date.now()", + " math Imports 'Math' from JS and calls Math.random()", + " wasi Uses the respective WASI interface.", + " ... Internal name of a custom function returning i64.", + "" + ], + "type": "s" + }, "memoryBase": { "category": "Linking", diff --git a/std/assembly/math.ts b/std/assembly/math.ts index 73203c083a..a86c0c29e1 100644 --- a/std/assembly/math.ts +++ b/std/assembly/math.ts @@ -1,4 +1,10 @@ +/// + +import { ArrayBufferView } from "./arraybuffer"; import * as JSMath from "./bindings/Math"; +import * as JSDate from "./bindings/Date"; +import * as wasi from "./bindings/wasi_snapshot"; + export { JSMath }; import { @@ -135,7 +141,7 @@ function umuldi(u: u64, v: u64): u64 { /** @internal */ function pio2_large_quot(x: f64, u: i64): i32 { // see: jdh8/metallic/blob/master/src/math/double/rem_pio2.c - const bits = PIO2_TABLE.dataStart; + const bits = changetype(PIO2_TABLE).dataStart; var magnitude = u & 0x7FFFFFFFFFFFFFFF; var offset = (magnitude >> 52) - 1045; @@ -1410,7 +1416,7 @@ export namespace NativeMath { } export function random(): f64 { // see: v8/src/base/utils/random-number-generator.cc - if (!random_seeded) throw new Error("PRNG must be seeded."); + if (!random_seeded) seedRandom(seedRandomSelect()); var s1 = random_state0_64; var s0 = random_state1_64; random_state0_64 = s0; @@ -1782,7 +1788,7 @@ function expo2f(x: f32): f32 { // exp(x)/2 for x >= log(DBL_MAX) @inline function pio2f_large_quot(x: f32, u: i32): i32 { // see: jdh8/metallic/blob/master/src/math/float/rem_pio2f.c const coeff = reinterpret(0x3BF921FB54442D18); // π * 0x1p-65 = 8.51530395021638647334e-20 - const bits = PIO2F_TABLE.dataStart; + const bits = changetype(PIO2F_TABLE).dataStart; var offset = (u >> 23) - 152; var shift = (offset & 63); @@ -2603,7 +2609,7 @@ export namespace NativeMathf { // Using xoroshiro64starstar from http://xoshiro.di.unimi.it/xoroshiro64starstar.c export function random(): f32 { - if (!random_seeded) throw new Error("PRNG must be seeded."); + if (!random_seeded) NativeMath.seedRandom(seedRandomSelect()); var s0 = random_state0_32; var s1 = random_state1_32; @@ -3132,3 +3138,30 @@ export function ipow64f(x: f64, e: i32): f64 { } return sign ? 1.0 / out : out; } + +// @ts-ignore: decorator +@lazy +const seedRandomSelect_wasiBuf: i64[] = [ 0 ]; + +function seedRandomSelect(): i64 { + if (isDefined(ASC_SEEDRANDOM_FUNC)) return ASC_SEEDRANDOM_FUNC(); + if (isDefined(ASC_SEEDRANDOM_MATH)) { + let val: i64; + do val = reinterpret(JSMath.random()); + while (!val); + return val; + } + if (isDefined(ASC_SEEDRANDOM_DATE)) return JSDate.now(); + if (isDefined(ASC_SEEDRANDOM_WASI)) { + let buf = changetype(seedRandomSelect_wasiBuf).dataStart; + let val: i64; + do assert(wasi.random_get(buf, 8) == wasi.errno.SUCCESS); + while (!(val = load(buf))); + return val; + } + if (!isDefined(ASC_SEEDRANDOM_CONST)) { + WARNING("Falling back to a compile-time constant random seed. See --seedRandom to silence this warning."); + } + const value = ((ASC_SEEDRANDOM_HIGH) << 32) | ASC_SEEDRANDOM_LOW; + return value; +} diff --git a/std/assembly/util/seedrandom.d.ts b/std/assembly/util/seedrandom.d.ts new file mode 100644 index 0000000000..71add20951 --- /dev/null +++ b/std/assembly/util/seedrandom.d.ts @@ -0,0 +1,7 @@ +declare const ASC_SEEDRANDOM_LOW: i32; +declare const ASC_SEEDRANDOM_HIGH: i32; +declare const ASC_SEEDRANDOM_CONST: i32; +declare const ASC_SEEDRANDOM_DATE: i32; +declare const ASC_SEEDRANDOM_MATH: i32; +declare const ASC_SEEDRANDOM_WASI: i32; +declare const ASC_SEEDRANDOM_FUNC: i32; diff --git a/tests/compiler/std/array.json b/tests/compiler/std/array.json index 59c251c705..57c814b4de 100644 --- a/tests/compiler/std/array.json +++ b/tests/compiler/std/array.json @@ -2,6 +2,7 @@ "asc_flags": [ "--runtime half", "--explicitStart", + "--seedRandom math", "--use ASC_RTRACE=1" ] } \ No newline at end of file diff --git a/tests/compiler/std/array.optimized.wat b/tests/compiler/std/array.optimized.wat index 09b4f7e5cf..df5c030e04 100644 --- a/tests/compiler/std/array.optimized.wat +++ b/tests/compiler/std/array.optimized.wat @@ -130,94 +130,93 @@ (data (i32.const 3840) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05") (data (i32.const 3892) "\01") (data (i32.const 3904) "^\00\00\00\01\00\00\00\01\00\00\00^\00\00\00E\00l\00e\00m\00e\00n\00t\00 \00t\00y\00p\00e\00 \00m\00u\00s\00t\00 \00b\00e\00 \00n\00u\00l\00l\00a\00b\00l\00e\00 \00i\00f\00 \00a\00r\00r\00a\00y\00 \00i\00s\00 \00h\00o\00l\00e\00y") - (data (i32.const 4016) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s") - (data (i32.const 4064) "\ac\00\00\00\01\00\00\00\01\00\00\00\ac\00\00\00A\00B\00C\00D\00E\00F\00G\00H\00I\00J\00K\00L\00M\00N\00O\00P\00Q\00R\00S\00T\00U\00V\00W\00X\00Y\00Z\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00n\00o\00p\00q\00r\00s\00t\00u\00v\00w\00x\00y\00z\000\001\002\003\004\005\006\007\008\009\00_\00-\00,\00.\00+\00/\00\\\00[\00]\00{\00}\00(\00)\00<\00>\00*\00&\00$\00%\00^\00@\00#\00!\00?") - (data (i32.const 4256) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80?\00\00\c0\7f\00\00\80\ff\00\00\80?\00\00\00\00\00\00\80\bf\00\00\00\c0\00\00\80\7f") - (data (i32.const 4304) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80\ff\00\00\00\c0\00\00\80\bf\00\00\00\00\00\00\80?\00\00\80?\00\00\80\7f\00\00\c0\7f") - (data (i32.const 4352) "@\00\00\00\01\00\00\00\00\00\00\00@") - (data (i32.const 4374) "\f0?\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\05\00\00\00\00\00\f0?") - (data (i32.const 4414) "\f0\bf\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\7f") - (data (i32.const 4432) "@\00\00\00\01\00\00\00\00\00\00\00@") - (data (i32.const 4454) "\f0\ff\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\bf") - (data (i32.const 4486) "\f0?\05\00\00\00\00\00\f0?\00\00\00\00\00\00\f0\7f\00\00\00\00\00\00\f8\7f") - (data (i32.const 4512) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\02") - (data (i32.const 4560) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\01\00\00\00\02") - (data (i32.const 4608) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\ff\ff\ff\ff\fe\ff\ff\ff\00\00\00\00\02") - (data (i32.const 4656) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff") - (data (i32.const 4708) "\01") - (data (i32.const 4720) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01") - (data (i32.const 4752) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\02\00\00\00\01") - (data (i32.const 4784) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\02\00\00\00\01") - (data (i32.const 4816) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03") - (data (i32.const 4848) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00P\00R\00N\00G\00 \00m\00u\00s\00t\00 \00b\00e\00 \00s\00e\00e\00d\00e\00d\00.") - (data (i32.const 4912) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01") - (data (i32.const 4944) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02") - (data (i32.const 4976) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a") - (data (i32.const 5008) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b") - (data (i32.const 5040) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00b") - (data (i32.const 5072) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00a") - (data (i32.const 5108) "\01\00\00\00\01") - (data (i32.const 5120) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\80\13\00\00\a0\13\00\00\80\13\00\00\c0\13\00\00\e0\13\00\00\00\14") - (data (i32.const 5168) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\00\14\00\00\80\13\00\00\80\13\00\00\c0\13\00\00\a0\13\00\00\e0\13") - (data (i32.const 5216) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l") - (data (i32.const 5248) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01") - (data (i32.const 5280) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e") - (data (i32.const 5312) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e") - (data (i32.const 5344) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,") - (data (i32.const 5376) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00t\00r\00u\00e\00,\00f\00a\00l\00s\00e") - (data (i32.const 5424) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\fe\ff\ff\ff\fd\ff\ff\ff") - (data (i32.const 5456) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000") - (data (i32.const 5488) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00-\002\00-\003") - (data (i32.const 5520) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03") - (data (i32.const 5552) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-") - (data (i32.const 5584) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\00\00\00\80\00\00\00\80") - (data (i32.const 5616) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00_\00_") - (data (i32.const 5648) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\00-\002\001\004\007\004\008\003\006\004\008\00_\00_\00-\002\001\004\007\004\008\003\006\004\008") - (data (i32.const 5712) "0\00\00\00\01\00\00\00\00\00\00\000") - (data (i32.const 5742) "\f0?\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\f0\7f") - (data (i32.const 5776) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00,\00 ") - (data (i32.const 5808) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000") - (data (i32.const 5840) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N") - (data (i32.const 5872) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y") - (data (i32.const 5920) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y") - (data (i32.const 5952) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8\00\00\00\01\00\00\00\01\00\00\00>\00\00\00[\00o\00b\00j\00e\00c\00t\00 \00O\00b\00j\00e\00c\00t\00]\00,\00[\00o\00b\00j\00e\00c\00t\00 \00O\00b\00j\00e\00c\00t\00]") - (data (i32.const 7396) "\01") - (data (i32.const 7408) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01") - (data (i32.const 7440) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02") - (data (i32.const 7472) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03") - (data (i32.const 7504) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00,\002") - (data (i32.const 7536) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\000\00,\001\00,\002\00,\003") - (data (i32.const 7568) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\01\ff") - (data (i32.const 7600) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00,\00-\001\00,\000") - (data (i32.const 7632) "\06\00\00\00\01\00\00\00\00\00\00\00\06\00\00\00\01\00\ff\ff") - (data (i32.const 7664) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\00,\006\005\005\003\005\00,\000") - (data (i32.const 7712) "\18\00\00\00\01\00\00\00\00\00\00\00\18\00\00\00\01\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") - (data (i32.const 7760) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\001\00,\001\008\004\004\006\007\004\004\000\007\003\007\000\009\005\005\001\006\001\005\00,\000") - (data (i32.const 7824) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\ff\ff\ff\ff\ff\ff\ff\ff@Eu\c3*\9d\fb\ff\00\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\7f") - (data (i32.const 7872) "T\00\00\00\01\00\00\00\01\00\00\00T\00\00\00-\001\00,\00-\001\002\003\004\005\006\007\008\009\000\001\002\003\004\005\006\00,\000\00,\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\007") - (data (i32.const 7984) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\00\14\00\00\80\13\00\00\80\13\00\00\c0\13\00\00\a0\13\00\00\e0\13") - (data (i32.const 8032) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00,\00a\00,\00a\00,\00a\00b\00,\00b\00,\00b\00a\00,") - (data (i32.const 8080) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\002") - (data (i32.const 8112) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\004") - (data (i32.const 8144) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\e0\1b\00\00\a0\1f\00\00\00\00\00\00\c0\1f") - (data (i32.const 8176) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00,\002\00,\00,\004") - (data (i32.const 8208) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02") - (data (i32.const 8240) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\03\00\00\00\04") - (data (i32.const 8272) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00,\002\00,\003\00,\004") - (data (i32.const 8304) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01\02") - (data (i32.const 8336) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\03\04") - (data (i32.const 8368) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01") + (data (i32.const 4016) "\ac\00\00\00\01\00\00\00\01\00\00\00\ac\00\00\00A\00B\00C\00D\00E\00F\00G\00H\00I\00J\00K\00L\00M\00N\00O\00P\00Q\00R\00S\00T\00U\00V\00W\00X\00Y\00Z\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00n\00o\00p\00q\00r\00s\00t\00u\00v\00w\00x\00y\00z\000\001\002\003\004\005\006\007\008\009\00_\00-\00,\00.\00+\00/\00\\\00[\00]\00{\00}\00(\00)\00<\00>\00*\00&\00$\00%\00^\00@\00#\00!\00?") + (data (i32.const 4208) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80?\00\00\c0\7f\00\00\80\ff\00\00\80?\00\00\00\00\00\00\80\bf\00\00\00\c0\00\00\80\7f") + (data (i32.const 4256) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80\ff\00\00\00\c0\00\00\80\bf\00\00\00\00\00\00\80?\00\00\80?\00\00\80\7f\00\00\c0\7f") + (data (i32.const 4304) "@\00\00\00\01\00\00\00\00\00\00\00@") + (data (i32.const 4326) "\f0?\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\05\00\00\00\00\00\f0?") + (data (i32.const 4366) "\f0\bf\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\7f") + (data (i32.const 4384) "@\00\00\00\01\00\00\00\00\00\00\00@") + (data (i32.const 4406) "\f0\ff\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\bf") + (data (i32.const 4438) "\f0?\05\00\00\00\00\00\f0?\00\00\00\00\00\00\f0\7f\00\00\00\00\00\00\f8\7f") + (data (i32.const 4464) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\02") + (data (i32.const 4512) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\01\00\00\00\02") + (data (i32.const 4560) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\ff\ff\ff\ff\fe\ff\ff\ff\00\00\00\00\02") + (data (i32.const 4608) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff") + (data (i32.const 4660) "\01") + (data (i32.const 4672) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01") + (data (i32.const 4704) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\02\00\00\00\01") + (data (i32.const 4736) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\02\00\00\00\01") + (data (i32.const 4768) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03") + (data (i32.const 4800) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s") + (data (i32.const 4848) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01") + (data (i32.const 4880) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02") + (data (i32.const 4912) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a") + (data (i32.const 4944) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b") + (data (i32.const 4976) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00b") + (data (i32.const 5008) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00a") + (data (i32.const 5044) "\01\00\00\00\01") + (data (i32.const 5056) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00@\13\00\00`\13\00\00@\13\00\00\80\13\00\00\a0\13\00\00\c0\13") + (data (i32.const 5104) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\c0\13\00\00@\13\00\00@\13\00\00\80\13\00\00`\13\00\00\a0\13") + (data (i32.const 5152) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l") + (data (i32.const 5184) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01") + (data (i32.const 5216) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e") + (data (i32.const 5248) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e") + (data (i32.const 5280) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,") + (data (i32.const 5312) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00t\00r\00u\00e\00,\00f\00a\00l\00s\00e") + (data (i32.const 5360) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\fe\ff\ff\ff\fd\ff\ff\ff") + (data (i32.const 5392) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000") + (data (i32.const 5424) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00-\002\00-\003") + (data (i32.const 5456) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03") + (data (i32.const 5488) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-") + (data (i32.const 5520) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\00\00\00\80\00\00\00\80") + (data (i32.const 5552) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00_\00_") + (data (i32.const 5584) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\00-\002\001\004\007\004\008\003\006\004\008\00_\00_\00-\002\001\004\007\004\008\003\006\004\008") + (data (i32.const 5648) "0\00\00\00\01\00\00\00\00\00\00\000") + (data (i32.const 5678) "\f0?\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\f0\7f") + (data (i32.const 5712) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00,\00 ") + (data (i32.const 5744) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000") + (data (i32.const 5776) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N") + (data (i32.const 5808) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y") + (data (i32.const 5856) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y") + (data (i32.const 5888) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8\00\00\00\01\00\00\00\01\00\00\00>\00\00\00[\00o\00b\00j\00e\00c\00t\00 \00O\00b\00j\00e\00c\00t\00]\00,\00[\00o\00b\00j\00e\00c\00t\00 \00O\00b\00j\00e\00c\00t\00]") + (data (i32.const 7332) "\01") + (data (i32.const 7344) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01") + (data (i32.const 7376) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02") + (data (i32.const 7408) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03") + (data (i32.const 7440) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00,\002") + (data (i32.const 7472) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\000\00,\001\00,\002\00,\003") + (data (i32.const 7504) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\01\ff") + (data (i32.const 7536) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00,\00-\001\00,\000") + (data (i32.const 7568) "\06\00\00\00\01\00\00\00\00\00\00\00\06\00\00\00\01\00\ff\ff") + (data (i32.const 7600) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\00,\006\005\005\003\005\00,\000") + (data (i32.const 7648) "\18\00\00\00\01\00\00\00\00\00\00\00\18\00\00\00\01\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff") + (data (i32.const 7696) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\001\00,\001\008\004\004\006\007\004\004\000\007\003\007\000\009\005\005\001\006\001\005\00,\000") + (data (i32.const 7760) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\ff\ff\ff\ff\ff\ff\ff\ff@Eu\c3*\9d\fb\ff\00\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\7f") + (data (i32.const 7808) "T\00\00\00\01\00\00\00\01\00\00\00T\00\00\00-\001\00,\00-\001\002\003\004\005\006\007\008\009\000\001\002\003\004\005\006\00,\000\00,\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\007") + (data (i32.const 7920) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\c0\13\00\00@\13\00\00@\13\00\00\80\13\00\00`\13\00\00\a0\13") + (data (i32.const 7968) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00,\00a\00,\00a\00,\00a\00b\00,\00b\00,\00b\00a\00,") + (data (i32.const 8016) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\002") + (data (i32.const 8048) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\004") + (data (i32.const 8080) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\a0\1b\00\00`\1f\00\00\00\00\00\00\80\1f") + (data (i32.const 8112) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00,\002\00,\00,\004") + (data (i32.const 8144) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02") + (data (i32.const 8176) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\03\00\00\00\04") + (data (i32.const 8208) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00,\002\00,\003\00,\004") + (data (i32.const 8240) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01\02") + (data (i32.const 8272) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\03\04") + (data (i32.const 8304) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01") (table $0 57 funcref) (elem (i32.const 1) $start:std/array~anonymous|0 $start:std/array~anonymous|1 $start:std/array~anonymous|2 $start:std/array~anonymous|3 $start:std/array~anonymous|2 $start:std/array~anonymous|5 $start:std/array~anonymous|6 $start:std/array~anonymous|7 $start:std/array~anonymous|8 $start:std/array~anonymous|9 $start:std/array~anonymous|10 $start:std/array~anonymous|11 $start:std/array~anonymous|12 $start:std/array~anonymous|13 $start:std/array~anonymous|14 $start:std/array~anonymous|15 $start:std/array~anonymous|16 $start:std/array~anonymous|17 $start:std/array~anonymous|16 $start:std/array~anonymous|19 $start:std/array~anonymous|20 $start:std/array~anonymous|21 $start:std/array~anonymous|22 $start:std/array~anonymous|23 $start:std/array~anonymous|24 $start:std/array~anonymous|25 $start:std/array~anonymous|26 $start:std/array~anonymous|27 $start:std/array~anonymous|28 $start:std/array~anonymous|29 $start:std/array~anonymous|29 $start:std/array~anonymous|31 $start:std/array~anonymous|32 $start:std/array~anonymous|33 $start:std/array~anonymous|29 $start:std/array~anonymous|35 $start:std/array~anonymous|29 $start:std/array~anonymous|29 $start:std/array~anonymous|31 $start:std/array~anonymous|32 $start:std/array~anonymous|33 $start:std/array~anonymous|29 $start:std/array~anonymous|35 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $start:std/array~anonymous|44 $~lib/util/sort/COMPARATOR~anonymous|0 $start:std/array~anonymous|44 $start:std/array~anonymous|47 $start:std/array~anonymous|48 $~lib/util/sort/COMPARATOR<~lib/string/String | null>~anonymous|0 $~lib/util/sort/COMPARATOR<~lib/string/String | null>~anonymous|0) (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) @@ -828,11 +827,11 @@ if unreachable end - i32.const 8400 + i32.const 8336 local.tee $0 i32.const 0 i32.store - i32.const 9968 + i32.const 9904 i32.const 0 i32.store loop $for-loop|0 @@ -843,7 +842,7 @@ local.get $1 i32.const 2 i32.shl - i32.const 8400 + i32.const 8336 i32.add i32.const 0 i32.store offset=4 @@ -861,7 +860,7 @@ i32.add i32.const 2 i32.shl - i32.const 8400 + i32.const 8336 i32.add i32.const 0 i32.store offset=96 @@ -879,13 +878,13 @@ br $for-loop|0 end end - i32.const 8400 - i32.const 9984 + i32.const 8336 + i32.const 9920 memory.size i32.const 16 i32.shl call $~lib/rt/tlsf/addMemory - i32.const 8400 + i32.const 8336 global.set $~lib/rt/tlsf/ROOT end local.get $0 @@ -1541,7 +1540,7 @@ ) (func $~lib/rt/pure/__retain (; 19 ;) (param $0 i32) (result i32) local.get $0 - i32.const 8388 + i32.const 8324 i32.gt_u if local.get $0 @@ -1553,7 +1552,7 @@ ) (func $~lib/rt/pure/__release (; 20 ;) (param $0 i32) local.get $0 - i32.const 8388 + i32.const 8324 i32.gt_u if local.get $0 @@ -2300,7 +2299,7 @@ local.get $2 call $~lib/memory/memory.copy local.get $1 - i32.const 8388 + i32.const 8324 i32.ge_u if local.get $1 @@ -4131,104 +4130,7 @@ end local.get $2 ) - (func $~lib/math/murmurHash3 (; 102 ;) (param $0 i64) (result i64) - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - i64.const -49064778989728563 - i64.mul - local.tee $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - i64.const -4265267296055464877 - i64.mul - local.tee $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - ) - (func $~lib/math/splitMix32 (; 103 ;) (param $0 i32) (result i32) - local.get $0 - i32.const 1831565813 - i32.add - local.tee $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - local.get $0 - i32.const 1 - i32.or - i32.mul - local.tee $0 - local.get $0 - local.get $0 - i32.const 61 - i32.or - local.get $0 - local.get $0 - i32.const 7 - i32.shr_u - i32.xor - i32.mul - i32.add - i32.xor - local.tee $0 - local.get $0 - i32.const 14 - i32.shr_u - i32.xor - ) - (func $~lib/math/NativeMath.seedRandom (; 104 ;) (param $0 i64) - i32.const 1 - global.set $~lib/math/random_seeded - local.get $0 - call $~lib/math/murmurHash3 - global.set $~lib/math/random_state0_64 - global.get $~lib/math/random_state0_64 - i64.const -1 - i64.xor - call $~lib/math/murmurHash3 - global.set $~lib/math/random_state1_64 - local.get $0 - i32.wrap_i64 - call $~lib/math/splitMix32 - global.set $~lib/math/random_state0_32 - global.get $~lib/math/random_state0_32 - call $~lib/math/splitMix32 - global.set $~lib/math/random_state1_32 - global.get $~lib/math/random_state1_32 - i32.const 0 - i32.ne - i32.const 0 - global.get $~lib/math/random_state0_32 - i32.const 0 - global.get $~lib/math/random_state1_64 - i64.const 0 - i64.ne - i32.const 0 - global.get $~lib/math/random_state0_64 - i64.const 0 - i64.ne - select - select - select - i32.eqz - if - i32.const 0 - i32.const 4032 - i32.const 1406 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - ) - (func $~lib/util/sort/insertionSort (; 105 ;) (param $0 i32) (param $1 i32) + (func $~lib/util/sort/insertionSort (; 102 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 f32) @@ -4306,13 +4208,13 @@ end end ) - (func $~lib/rt/tlsf/__free (; 106 ;) (param $0 i32) + (func $~lib/rt/tlsf/__free (; 103 ;) (param $0 i32) call $~lib/rt/tlsf/maybeInitialize local.get $0 call $~lib/rt/tlsf/checkUsedBlock call $~lib/rt/tlsf/freeBlock ) - (func $~lib/util/sort/weakHeapSort (; 107 ;) (param $0 i32) (param $1 i32) + (func $~lib/util/sort/weakHeapSort (; 104 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 f32) @@ -4569,7 +4471,7 @@ local.get $4 f32.store ) - (func $~lib/array/Array#sort (; 108 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#sort (; 105 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 f32) @@ -4631,7 +4533,7 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 109 ;) (param $0 f32) (param $1 f32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 106 ;) (param $0 f32) (param $1 f32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -4660,7 +4562,7 @@ i32.lt_s i32.sub ) - (func $std/array/isArraysEqual (; 110 ;) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isArraysEqual (; 107 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 f32) (local $4 i32) @@ -4725,7 +4627,7 @@ end i32.const 1 ) - (func $~lib/util/sort/insertionSort (; 111 ;) (param $0 i32) (param $1 i32) + (func $~lib/util/sort/insertionSort (; 108 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 f64) @@ -4803,7 +4705,7 @@ end end ) - (func $~lib/util/sort/weakHeapSort (; 112 ;) (param $0 i32) (param $1 i32) + (func $~lib/util/sort/weakHeapSort (; 109 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 f64) @@ -5060,7 +4962,7 @@ local.get $4 f64.store ) - (func $~lib/array/Array#sort (; 113 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#sort (; 110 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 f64) @@ -5122,7 +5024,7 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 114 ;) (param $0 f64) (param $1 f64) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 111 ;) (param $0 f64) (param $1 f64) (result i32) (local $2 i64) (local $3 i64) local.get $0 @@ -5151,7 +5053,7 @@ i64.lt_s i32.sub ) - (func $~lib/array/Array#__get (; 115 ;) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/array/Array#__get (; 112 ;) (param $0 i32) (param $1 i32) (result f64) local.get $1 local.get $0 i32.load offset=12 @@ -5172,7 +5074,7 @@ i32.add f64.load ) - (func $std/array/isArraysEqual (; 116 ;) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isArraysEqual (; 113 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 f64) (local $4 i32) @@ -5237,7 +5139,7 @@ end i32.const 1 ) - (func $~lib/util/sort/insertionSort (; 117 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 114 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5316,7 +5218,7 @@ end end ) - (func $~lib/util/sort/weakHeapSort (; 118 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 115 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -5575,7 +5477,7 @@ local.get $1 i32.store ) - (func $~lib/array/Array#sort (; 119 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 116 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -5639,12 +5541,12 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 120 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 117 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.sub ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 121 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 118 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.gt_u @@ -5653,7 +5555,7 @@ i32.lt_u i32.sub ) - (func $std/array/createReverseOrderedArray (; 122 ;) (param $0 i32) (result i32) + (func $std/array/createReverseOrderedArray (; 119 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) local.get $0 @@ -5681,42 +5583,142 @@ end local.get $2 ) + (func $~lib/math/murmurHash3 (; 120 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -49064778989728563 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -4265267296055464877 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + ) + (func $~lib/math/splitMix32 (; 121 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.tee $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.tee $0 + local.get $0 + local.get $0 + i32.const 61 + i32.or + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + i32.mul + i32.add + i32.xor + local.tee $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 122 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + i32.const 0 + global.get $~lib/math/random_state0_32 + i32.const 0 + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + i32.const 0 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + select + select + select + i32.eqz + if + i32.const 0 + i32.const 4816 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) (func $~lib/math/NativeMath.random (; 123 ;) (result f64) (local $0 i64) (local $1 i64) global.get $~lib/math/random_seeded i32.eqz if - i32.const 4864 - i32.const 4032 - i32.const 1413 - i32.const 24 - call $~lib/builtins/abort - unreachable + loop $do-continue|0 + call $~lib/bindings/Math/random + i64.reinterpret_f64 + local.tee $0 + i64.eqz + br_if $do-continue|0 + end + local.get $0 + call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_64 - local.set $0 + local.set $1 global.get $~lib/math/random_state1_64 - local.tee $1 + local.tee $0 global.set $~lib/math/random_state0_64 - local.get $1 - local.get $0 local.get $0 + local.get $1 + local.get $1 i64.const 23 i64.shl i64.xor - local.tee $0 - local.get $0 + local.tee $1 + local.get $1 i64.const 17 i64.shr_u i64.xor i64.xor - local.get $1 + local.get $0 i64.const 26 i64.shr_u i64.xor global.set $~lib/math/random_state1_64 - local.get $1 + local.get $0 i64.const 12 i64.shr_u i64.const 4607182418800017408 @@ -5804,7 +5806,7 @@ if i32.const 0 i32.const 304 - i32.const 881 + i32.const 879 i32.const 2 call $~lib/builtins/abort unreachable @@ -6047,7 +6049,7 @@ if i32.const 0 i32.const 304 - i32.const 881 + i32.const 879 i32.const 2 call $~lib/builtins/abort unreachable @@ -6169,7 +6171,7 @@ if i32.const 0 i32.const 304 - i32.const 881 + i32.const 879 i32.const 2 call $~lib/builtins/abort unreachable @@ -6410,11 +6412,11 @@ (func $~lib/string/String#charAt (; 145 ;) (param $0 i32) (result i32) (local $1 i32) local.get $0 - i32.const 4080 + i32.const 4032 call $~lib/string/String#get:length i32.ge_u if - i32.const 5120 + i32.const 5056 return end i32.const 2 @@ -6424,7 +6426,7 @@ local.get $0 i32.const 1 i32.shl - i32.const 4080 + i32.const 4032 i32.add i32.load16_u i32.store16 @@ -6440,16 +6442,16 @@ local.tee $1 i32.eqz if - i32.const 5232 + i32.const 5168 local.set $3 local.get $1 - i32.const 5232 + i32.const 5168 i32.ne if local.get $1 call $~lib/rt/pure/__release end - i32.const 5232 + i32.const 5168 local.set $1 end local.get $0 @@ -6468,7 +6470,7 @@ if local.get $1 call $~lib/rt/pure/__release - i32.const 5120 + i32.const 5056 local.tee $0 return end @@ -6492,7 +6494,7 @@ ) (func $~lib/string/String.__concat (; 147 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 - i32.const 5232 + i32.const 5168 local.get $0 select local.get $1 @@ -6504,7 +6506,7 @@ (local $3 i32) (local $4 i32) (local $5 i32) - i32.const 5120 + i32.const 5056 local.set $1 loop $for-loop|0 local.get $2 @@ -6515,7 +6517,7 @@ local.tee $3 local.get $1 call $~lib/math/NativeMath.random - i32.const 4080 + i32.const 4032 call $~lib/string/String#get:length f64.convert_i32_s f64.mul @@ -6635,7 +6637,7 @@ local.tee $3 i32.eqz if - i32.const 5120 + i32.const 5056 return end i32.const 0 @@ -6678,14 +6680,14 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $2 i32.eqz if - i32.const 5296 - i32.const 5328 + i32.const 5232 + i32.const 5264 local.get $0 i32.load8_u select @@ -6693,7 +6695,7 @@ return end local.get $2 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.tee $4 i32.const 5 @@ -6729,8 +6731,8 @@ i32.const 1 i32.shl i32.add - i32.const 5296 - i32.const 5328 + i32.const 5232 + i32.const 5264 local.get $8 select local.get $6 @@ -6748,7 +6750,7 @@ i32.const 1 i32.shl i32.add - i32.const 5360 + i32.const 5296 local.get $4 i32.const 1 i32.shl @@ -6779,8 +6781,8 @@ i32.const 1 i32.shl i32.add - i32.const 5296 - i32.const 5328 + i32.const 5232 + i32.const 5264 local.get $2 select local.get $0 @@ -6882,7 +6884,7 @@ local.get $0 i32.eqz if - i32.const 5472 + i32.const 5408 return end local.get $0 @@ -6972,7 +6974,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $4 @@ -7080,7 +7082,7 @@ local.get $0 i32.eqz if - i32.const 5472 + i32.const 5408 return end local.get $0 @@ -7134,7 +7136,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $4 @@ -7271,7 +7273,7 @@ local.tee $7 call $~lib/util/number/decimalCount32 local.set $4 - i32.const 7012 + i32.const 6948 i32.load local.set $13 loop $while-continue|0 @@ -7991,7 +7993,7 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 6692 + i32.const 6628 i32.load local.get $3 i32.const 3 @@ -7999,7 +8001,7 @@ i32.add i64.load global.set $~lib/util/number/_frc_pow - i32.const 6916 + i32.const 6852 i32.load local.get $3 i32.const 1 @@ -8170,7 +8172,7 @@ f64.const 0 f64.eq if - i32.const 5824 + i32.const 5760 return end local.get $0 @@ -8183,11 +8185,11 @@ local.get $0 f64.ne if - i32.const 5856 + i32.const 5792 return end - i32.const 5888 - i32.const 5936 + i32.const 5824 + i32.const 5872 local.get $0 f64.const 0 f64.lt @@ -8269,8 +8271,8 @@ i32.add local.set $1 local.get $0 - i32.const 5888 - i32.const 5936 + i32.const 5824 + i32.const 5872 local.get $3 select local.get $1 @@ -8299,7 +8301,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $3 @@ -8311,7 +8313,7 @@ return end local.get $3 - i32.const 5792 + i32.const 5728 call $~lib/string/String#get:length local.tee $4 i32.const 28 @@ -8352,7 +8354,7 @@ i32.const 1 i32.shl i32.add - i32.const 5792 + i32.const 5728 local.get $4 i32.const 1 i32.shl @@ -8410,7 +8412,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end i32.const 0 @@ -8431,13 +8433,13 @@ local.get $4 call $~lib/rt/pure/__retain else - i32.const 5120 + i32.const 5056 end local.get $4 call $~lib/rt/pure/__release return end - i32.const 5120 + i32.const 5056 local.set $1 local.get $5 call $~lib/string/String#get:length @@ -8583,7 +8585,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $5 @@ -8599,15 +8601,15 @@ end local.get $4 call $~lib/rt/pure/__release - i32.const 7200 - i32.const 5120 + i32.const 7136 + i32.const 5056 local.get $4 select return end - i32.const 5120 + i32.const 5056 local.set $1 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.set $7 loop $for-loop|0 @@ -8636,7 +8638,7 @@ if local.get $1 local.get $1 - i32.const 7200 + i32.const 7136 call $~lib/string/String.__concat local.tee $6 local.tee $2 @@ -8657,7 +8659,7 @@ if local.get $1 local.tee $2 - i32.const 5360 + i32.const 5296 call $~lib/string/String.__concat local.tee $6 local.tee $1 @@ -8700,7 +8702,7 @@ if local.get $1 local.get $1 - i32.const 7200 + i32.const 7136 call $~lib/string/String.__concat local.tee $0 local.tee $3 @@ -8730,7 +8732,7 @@ ) (func $~lib/array/Array#toString (; 172 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join ) (func $~lib/util/number/itoa_stream (; 173 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) @@ -8801,7 +8803,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $3 @@ -8813,7 +8815,7 @@ return end local.get $3 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.tee $4 i32.const 11 @@ -8852,7 +8854,7 @@ i32.const 1 i32.shl i32.add - i32.const 5360 + i32.const 5296 local.get $4 i32.const 1 i32.shl @@ -8934,7 +8936,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $3 @@ -8946,7 +8948,7 @@ return end local.get $3 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.tee $4 i32.const 10 @@ -8987,7 +8989,7 @@ i32.const 1 i32.shl i32.add - i32.const 5360 + i32.const 5296 local.get $4 i32.const 1 i32.shl @@ -9115,7 +9117,7 @@ local.get $0 i64.eqz if - i32.const 5472 + i32.const 5408 return end local.get $0 @@ -9204,7 +9206,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $3 @@ -9216,7 +9218,7 @@ return end local.get $3 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.tee $4 i32.const 20 @@ -9257,7 +9259,7 @@ i32.const 1 i32.shl i32.add - i32.const 5360 + i32.const 5296 local.get $4 i32.const 1 i32.shl @@ -9306,7 +9308,7 @@ local.get $0 i64.eqz if - i32.const 5472 + i32.const 5408 return end local.get $0 @@ -9436,7 +9438,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $3 @@ -9448,7 +9450,7 @@ return end local.get $3 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.tee $4 i32.const 21 @@ -9489,7 +9491,7 @@ i32.const 1 i32.shl i32.add - i32.const 5360 + i32.const 5296 local.get $4 i32.const 1 i32.shl @@ -9532,7 +9534,7 @@ ) (func $~lib/array/Array<~lib/string/String | null>#toString (; 185 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array<~lib/string/String | null>#join ) (func $~lib/util/string/joinReferenceArray<~lib/array/Array> (; 186 ;) (param $0 i32) (param $1 i32) (result i32) @@ -9550,7 +9552,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $5 @@ -9569,15 +9571,15 @@ local.get $3 call $~lib/array/Array#toString else - i32.const 5120 + i32.const 5056 end local.get $3 call $~lib/rt/pure/__release return end - i32.const 5120 + i32.const 5056 local.set $1 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.set $7 loop $for-loop|0 @@ -9631,7 +9633,7 @@ if local.get $1 local.tee $2 - i32.const 5360 + i32.const 5296 call $~lib/string/String.__concat local.tee $6 local.tee $1 @@ -9742,7 +9744,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $3 @@ -9754,7 +9756,7 @@ return end local.get $3 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.tee $4 i32.const 10 @@ -9793,7 +9795,7 @@ i32.const 1 i32.shl i32.add - i32.const 5360 + i32.const 5296 local.get $4 i32.const 1 i32.shl @@ -9854,7 +9856,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $5 @@ -9873,15 +9875,15 @@ local.get $3 call $~lib/array/Array#toString else - i32.const 5120 + i32.const 5056 end local.get $3 call $~lib/rt/pure/__release return end - i32.const 5120 + i32.const 5056 local.set $1 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.set $7 loop $for-loop|0 @@ -9935,7 +9937,7 @@ if local.get $1 local.tee $2 - i32.const 5360 + i32.const 5296 call $~lib/string/String.__concat local.tee $6 local.tee $1 @@ -10005,7 +10007,7 @@ ) (func $~lib/array/Array#toString (; 191 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join ) (func $~lib/util/string/joinReferenceArray<~lib/array/Array> (; 192 ;) (param $0 i32) (param $1 i32) (result i32) @@ -10023,7 +10025,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $5 @@ -10042,15 +10044,15 @@ local.get $3 call $~lib/array/Array#toString else - i32.const 5120 + i32.const 5056 end local.get $3 call $~lib/rt/pure/__release return end - i32.const 5120 + i32.const 5056 local.set $1 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.set $7 loop $for-loop|0 @@ -10104,7 +10106,7 @@ if local.get $1 local.tee $2 - i32.const 5360 + i32.const 5296 call $~lib/string/String.__concat local.tee $6 local.tee $1 @@ -10194,7 +10196,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 return end local.get $5 @@ -10213,15 +10215,15 @@ local.get $3 call $~lib/array/Array<~lib/array/Array>#toString else - i32.const 5120 + i32.const 5056 end local.get $3 call $~lib/rt/pure/__release return end - i32.const 5120 + i32.const 5056 local.set $1 - i32.const 5360 + i32.const 5296 call $~lib/string/String#get:length local.set $7 loop $for-loop|0 @@ -10275,7 +10277,7 @@ if local.get $1 local.tee $2 - i32.const 5360 + i32.const 5296 call $~lib/string/String.__concat local.tee $6 local.tee $1 @@ -14713,13 +14715,10 @@ global.get $std/array/arr i32.const 3 call $~lib/array/Array#push - call $~lib/bindings/Math/random - i64.reinterpret_f64 - call $~lib/math/NativeMath.seedRandom i32.const 8 i32.const 2 i32.const 9 - i32.const 4272 + i32.const 4224 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $2 @@ -14732,7 +14731,7 @@ i32.const 8 i32.const 2 i32.const 9 - i32.const 4320 + i32.const 4272 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $18 @@ -14741,7 +14740,7 @@ if i32.const 0 i32.const 304 - i32.const 892 + i32.const 890 i32.const 2 call $~lib/builtins/abort unreachable @@ -14749,7 +14748,7 @@ i32.const 8 i32.const 3 i32.const 10 - i32.const 4368 + i32.const 4320 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $3 @@ -14762,7 +14761,7 @@ i32.const 8 i32.const 3 i32.const 10 - i32.const 4448 + i32.const 4400 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $19 @@ -14771,7 +14770,7 @@ if i32.const 0 i32.const 304 - i32.const 896 + i32.const 894 i32.const 2 call $~lib/builtins/abort unreachable @@ -14779,7 +14778,7 @@ i32.const 5 i32.const 2 i32.const 3 - i32.const 4528 + i32.const 4480 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $5 @@ -14793,7 +14792,7 @@ i32.const 5 i32.const 2 i32.const 3 - i32.const 4576 + i32.const 4528 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $20 @@ -14803,7 +14802,7 @@ if i32.const 0 i32.const 304 - i32.const 900 + i32.const 898 i32.const 2 call $~lib/builtins/abort unreachable @@ -14811,7 +14810,7 @@ i32.const 5 i32.const 2 i32.const 7 - i32.const 4624 + i32.const 4576 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $7 @@ -14825,7 +14824,7 @@ i32.const 5 i32.const 2 i32.const 7 - i32.const 4672 + i32.const 4624 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $15 @@ -14835,7 +14834,7 @@ if i32.const 0 i32.const 304 - i32.const 904 + i32.const 902 i32.const 2 call $~lib/builtins/abort unreachable @@ -14843,35 +14842,35 @@ i32.const 0 i32.const 2 i32.const 3 - i32.const 4720 + i32.const 4672 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $16 i32.const 1 i32.const 2 i32.const 3 - i32.const 4736 + i32.const 4688 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $8 i32.const 2 i32.const 2 i32.const 3 - i32.const 4768 + i32.const 4720 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $9 i32.const 4 i32.const 2 i32.const 3 - i32.const 4800 + i32.const 4752 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $10 i32.const 4 i32.const 2 i32.const 3 - i32.const 4832 + i32.const 4784 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $0 @@ -14898,7 +14897,7 @@ i32.const 1 i32.const 2 i32.const 3 - i32.const 4928 + i32.const 4864 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $21 @@ -14908,7 +14907,7 @@ if i32.const 0 i32.const 304 - i32.const 924 + i32.const 922 i32.const 2 call $~lib/builtins/abort unreachable @@ -14919,7 +14918,7 @@ i32.const 2 i32.const 2 i32.const 3 - i32.const 4960 + i32.const 4896 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $22 @@ -14929,7 +14928,7 @@ if i32.const 0 i32.const 304 - i32.const 927 + i32.const 925 i32.const 2 call $~lib/builtins/abort unreachable @@ -14944,7 +14943,7 @@ if i32.const 0 i32.const 304 - i32.const 930 + i32.const 928 i32.const 2 call $~lib/builtins/abort unreachable @@ -14959,7 +14958,7 @@ if i32.const 0 i32.const 304 - i32.const 933 + i32.const 931 i32.const 2 call $~lib/builtins/abort unreachable @@ -14974,7 +14973,7 @@ if i32.const 0 i32.const 304 - i32.const 936 + i32.const 934 i32.const 2 call $~lib/builtins/abort unreachable @@ -14989,7 +14988,7 @@ if i32.const 0 i32.const 304 - i32.const 939 + i32.const 937 i32.const 2 call $~lib/builtins/abort unreachable @@ -15004,7 +15003,7 @@ if i32.const 0 i32.const 304 - i32.const 942 + i32.const 940 i32.const 2 call $~lib/builtins/abort unreachable @@ -15088,14 +15087,14 @@ i32.const 7 i32.const 2 i32.const 15 - i32.const 5136 + i32.const 5072 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $2 i32.const 7 i32.const 2 i32.const 15 - i32.const 5184 + i32.const 5120 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $3 @@ -15110,7 +15109,7 @@ if i32.const 0 i32.const 304 - i32.const 979 + i32.const 977 i32.const 2 call $~lib/builtins/abort unreachable @@ -15131,7 +15130,7 @@ i32.const 2 i32.const 0 i32.const 17 - i32.const 5264 + i32.const 5200 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $0 @@ -15141,13 +15140,13 @@ call $~lib/util/string/joinBooleanArray local.tee $2 local.get $2 - i32.const 5392 + i32.const 5328 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 988 + i32.const 986 i32.const 2 call $~lib/builtins/abort unreachable @@ -15155,20 +15154,20 @@ i32.const 3 i32.const 2 i32.const 3 - i32.const 5440 + i32.const 5376 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $8 - i32.const 5120 + i32.const 5056 call $~lib/array/Array#join local.tee $9 - i32.const 5504 + i32.const 5440 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 989 + i32.const 987 i32.const 2 call $~lib/builtins/abort unreachable @@ -15176,20 +15175,20 @@ i32.const 3 i32.const 2 i32.const 7 - i32.const 5536 + i32.const 5472 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $10 - i32.const 5568 + i32.const 5504 call $~lib/array/Array#join local.tee $11 - i32.const 5504 + i32.const 5440 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 990 + i32.const 988 i32.const 2 call $~lib/builtins/abort unreachable @@ -15197,20 +15196,20 @@ i32.const 2 i32.const 2 i32.const 3 - i32.const 5600 + i32.const 5536 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $12 - i32.const 5632 + i32.const 5568 call $~lib/array/Array#join local.tee $13 - i32.const 5664 + i32.const 5600 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 991 + i32.const 989 i32.const 2 call $~lib/builtins/abort unreachable @@ -15218,7 +15217,7 @@ i32.const 6 i32.const 3 i32.const 10 - i32.const 5728 + i32.const 5664 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $2 @@ -15229,13 +15228,13 @@ local.tee $3 local.set $14 local.get $3 - i32.const 7040 + i32.const 6976 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 992 + i32.const 990 i32.const 2 call $~lib/builtins/abort unreachable @@ -15243,20 +15242,20 @@ i32.const 3 i32.const 2 i32.const 15 - i32.const 7168 + i32.const 7104 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $16 - i32.const 5120 + i32.const 5056 call $~lib/array/Array<~lib/string/String | null>#join local.tee $17 - i32.const 7136 + i32.const 7072 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 993 + i32.const 991 i32.const 2 call $~lib/builtins/abort unreachable @@ -15287,13 +15286,13 @@ local.get $3 call $~lib/array/Array#join local.tee $20 - i32.const 7248 + i32.const 7184 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 995 + i32.const 993 i32.const 2 call $~lib/builtins/abort unreachable @@ -15321,13 +15320,13 @@ local.get $5 call $~lib/array/Array#join local.tee $22 - i32.const 7328 + i32.const 7264 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 998 + i32.const 996 i32.const 2 call $~lib/builtins/abort unreachable @@ -15374,41 +15373,41 @@ i32.const 0 i32.const 2 i32.const 3 - i32.const 7408 + i32.const 7344 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $5 i32.const 1 i32.const 2 i32.const 3 - i32.const 7424 + i32.const 7360 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $7 i32.const 2 i32.const 2 i32.const 3 - i32.const 7456 + i32.const 7392 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $8 i32.const 4 i32.const 2 i32.const 3 - i32.const 7488 + i32.const 7424 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $9 local.get $5 call $~lib/array/Array#toString local.tee $16 - i32.const 5120 + i32.const 5056 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1008 + i32.const 1006 i32.const 2 call $~lib/builtins/abort unreachable @@ -15416,13 +15415,13 @@ local.get $7 call $~lib/array/Array#toString local.tee $17 - i32.const 7136 + i32.const 7072 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1009 + i32.const 1007 i32.const 2 call $~lib/builtins/abort unreachable @@ -15430,13 +15429,13 @@ local.get $8 call $~lib/array/Array#toString local.tee $18 - i32.const 7520 + i32.const 7456 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1010 + i32.const 1008 i32.const 2 call $~lib/builtins/abort unreachable @@ -15444,13 +15443,13 @@ local.get $9 call $~lib/array/Array#toString local.tee $19 - i32.const 7552 + i32.const 7488 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1011 + i32.const 1009 i32.const 2 call $~lib/builtins/abort unreachable @@ -15458,7 +15457,7 @@ i32.const 3 i32.const 0 i32.const 20 - i32.const 7584 + i32.const 7520 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $10 @@ -15468,13 +15467,13 @@ call $~lib/util/string/joinIntegerArray local.tee $0 local.get $0 - i32.const 7616 + i32.const 7552 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1013 + i32.const 1011 i32.const 2 call $~lib/builtins/abort unreachable @@ -15482,7 +15481,7 @@ i32.const 3 i32.const 1 i32.const 21 - i32.const 7648 + i32.const 7584 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $11 @@ -15493,13 +15492,13 @@ local.tee $0 local.set $15 local.get $0 - i32.const 7680 + i32.const 7616 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1014 + i32.const 1012 i32.const 2 call $~lib/builtins/abort unreachable @@ -15507,7 +15506,7 @@ i32.const 3 i32.const 3 i32.const 18 - i32.const 7728 + i32.const 7664 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $12 @@ -15518,13 +15517,13 @@ local.tee $0 local.set $21 local.get $0 - i32.const 7776 + i32.const 7712 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1015 + i32.const 1013 i32.const 2 call $~lib/builtins/abort unreachable @@ -15532,7 +15531,7 @@ i32.const 4 i32.const 3 i32.const 22 - i32.const 7840 + i32.const 7776 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $13 @@ -15543,13 +15542,13 @@ local.tee $0 local.set $22 local.get $0 - i32.const 7888 + i32.const 7824 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1016 + i32.const 1014 i32.const 2 call $~lib/builtins/abort unreachable @@ -15557,19 +15556,19 @@ i32.const 7 i32.const 2 i32.const 15 - i32.const 8000 + i32.const 7936 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $23 call $~lib/array/Array<~lib/string/String | null>#toString local.tee $26 - i32.const 8048 + i32.const 7984 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1020 + i32.const 1018 i32.const 2 call $~lib/builtins/abort unreachable @@ -15577,19 +15576,19 @@ i32.const 4 i32.const 2 i32.const 15 - i32.const 8160 + i32.const 8096 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $27 call $~lib/array/Array<~lib/string/String | null>#toString local.tee $28 - i32.const 8192 + i32.const 8128 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1021 + i32.const 1019 i32.const 2 call $~lib/builtins/abort unreachable @@ -15606,7 +15605,7 @@ i32.const 2 i32.const 2 i32.const 3 - i32.const 8224 + i32.const 8160 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $29 @@ -15616,7 +15615,7 @@ i32.const 2 i32.const 2 i32.const 3 - i32.const 8256 + i32.const 8192 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $30 @@ -15630,13 +15629,13 @@ local.tee $2 local.set $31 local.get $2 - i32.const 8288 + i32.const 8224 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1024 + i32.const 1022 i32.const 2 call $~lib/builtins/abort unreachable @@ -15653,7 +15652,7 @@ i32.const 2 i32.const 0 i32.const 6 - i32.const 8320 + i32.const 8256 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $32 @@ -15663,7 +15662,7 @@ i32.const 2 i32.const 0 i32.const 6 - i32.const 8352 + i32.const 8288 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $33 @@ -15677,13 +15676,13 @@ local.tee $3 local.set $34 local.get $3 - i32.const 8288 + i32.const 8224 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1027 + i32.const 1025 i32.const 2 call $~lib/builtins/abort unreachable @@ -15707,7 +15706,7 @@ i32.const 1 i32.const 2 i32.const 7 - i32.const 8384 + i32.const 8320 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $35 @@ -15724,13 +15723,13 @@ local.tee $24 local.set $36 local.get $24 - i32.const 7136 + i32.const 7072 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1030 + i32.const 1028 i32.const 2 call $~lib/builtins/abort unreachable @@ -15889,7 +15888,7 @@ ) (func $~lib/rt/pure/__visit (; 198 ;) (param $0 i32) local.get $0 - i32.const 8388 + i32.const 8324 i32.lt_u if return diff --git a/tests/compiler/std/array.ts b/tests/compiler/std/array.ts index 7113b7c741..d8368396b3 100644 --- a/tests/compiler/std/array.ts +++ b/tests/compiler/std/array.ts @@ -826,8 +826,6 @@ function createReverseOrderedArray(size: i32): Array { return arr; } -NativeMath.seedRandom(reinterpret(JSMath.random())); - function createRandomOrderedArray(size: i32): Array { var arr = new Array(size); for (let i = 0; i < size; i++) { diff --git a/tests/compiler/std/array.untouched.wat b/tests/compiler/std/array.untouched.wat index 5a4a2b0ea9..cb5b34f1d7 100644 --- a/tests/compiler/std/array.untouched.wat +++ b/tests/compiler/std/array.untouched.wat @@ -26,6 +26,7 @@ (type $i32_i64_i32_i64_i32_i64_i32_=>_i32 (func (param i32 i64 i32 i64 i32 i64 i32) (result i32))) (type $i32_f64_=>_i32 (func (param i32 f64) (result i32))) (type $f64_=>_i32 (func (param f64) (result i32))) + (type $none_=>_i64 (func (result i64))) (type $i32_i32_=>_i64 (func (param i32 i32) (result i64))) (type $i64_=>_i64 (func (param i64) (result i64))) (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) @@ -132,91 +133,90 @@ (data (i32.const 3840) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00\04\00\00\00\05\00\00\00") (data (i32.const 3888) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") (data (i32.const 3904) "^\00\00\00\01\00\00\00\01\00\00\00^\00\00\00E\00l\00e\00m\00e\00n\00t\00 \00t\00y\00p\00e\00 \00m\00u\00s\00t\00 \00b\00e\00 \00n\00u\00l\00l\00a\00b\00l\00e\00 \00i\00f\00 \00a\00r\00r\00a\00y\00 \00i\00s\00 \00h\00o\00l\00e\00y\00") - (data (i32.const 4016) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") - (data (i32.const 4064) "\ac\00\00\00\01\00\00\00\01\00\00\00\ac\00\00\00A\00B\00C\00D\00E\00F\00G\00H\00I\00J\00K\00L\00M\00N\00O\00P\00Q\00R\00S\00T\00U\00V\00W\00X\00Y\00Z\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00n\00o\00p\00q\00r\00s\00t\00u\00v\00w\00x\00y\00z\000\001\002\003\004\005\006\007\008\009\00_\00-\00,\00.\00+\00/\00\\\00[\00]\00{\00}\00(\00)\00<\00>\00*\00&\00$\00%\00^\00@\00#\00!\00?\00") - (data (i32.const 4256) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80?\00\00\c0\7f\00\00\80\ff\00\00\80?\00\00\00\00\00\00\80\bf\00\00\00\c0\00\00\80\7f") - (data (i32.const 4304) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80\ff\00\00\00\c0\00\00\80\bf\00\00\00\00\00\00\80?\00\00\80?\00\00\80\7f\00\00\c0\7f") - (data (i32.const 4352) "@\00\00\00\01\00\00\00\00\00\00\00@\00\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\05\00\00\00\00\00\f0?\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0\bf\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\7f") - (data (i32.const 4432) "@\00\00\00\01\00\00\00\00\00\00\00@\00\00\00\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\bf\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0?\05\00\00\00\00\00\f0?\00\00\00\00\00\00\f0\7f\00\00\00\00\00\00\f8\7f") - (data (i32.const 4512) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\02\00\00\00") - (data (i32.const 4560) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 4608) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\ff\ff\ff\ff\fe\ff\ff\ff\00\00\00\00\02\00\00\00") - (data (i32.const 4656) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff") - (data (i32.const 4704) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 4720) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") - (data (i32.const 4752) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\02\00\00\00\01\00\00\00") - (data (i32.const 4784) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\02\00\00\00\01\00\00\00\00\00\00\00") - (data (i32.const 4816) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") - (data (i32.const 4848) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00P\00R\00N\00G\00 \00m\00u\00s\00t\00 \00b\00e\00 \00s\00e\00e\00d\00e\00d\00.\00") - (data (i32.const 4912) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") - (data (i32.const 4944) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 4976) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") - (data (i32.const 5008) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b\00") - (data (i32.const 5040) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00b\00") - (data (i32.const 5072) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00a\00") - (data (i32.const 5104) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") - (data (i32.const 5120) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\80\13\00\00\a0\13\00\00\80\13\00\00\c0\13\00\00\e0\13\00\00\00\14\00\00\00\00\00\00") - (data (i32.const 5168) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\00\14\00\00\80\13\00\00\80\13\00\00\c0\13\00\00\a0\13\00\00\e0\13\00\00\00\00\00\00") - (data (i32.const 5216) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l\00") - (data (i32.const 5248) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01\00") - (data (i32.const 5280) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") - (data (i32.const 5312) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") - (data (i32.const 5344) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,\00") - (data (i32.const 5376) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00t\00r\00u\00e\00,\00f\00a\00l\00s\00e\00") - (data (i32.const 5424) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\fe\ff\ff\ff\fd\ff\ff\ff") - (data (i32.const 5456) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") - (data (i32.const 5488) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") - (data (i32.const 5904) "\10\00\00\00\01\00\00\00\07\00\00\00\10\00\00\00\80\15\00\00\80\15\00\00\90\01\00\00d\00\00\00") - (data (i32.const 5936) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00-\002\00-\003\00") - (data (i32.const 5968) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") - (data (i32.const 6000) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-\00") - (data (i32.const 6032) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\00\00\00\80\00\00\00\80") - (data (i32.const 6064) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00_\00_\00") - (data (i32.const 6096) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\00-\002\001\004\007\004\008\003\006\004\008\00_\00_\00-\002\001\004\007\004\008\003\006\004\008\00") - (data (i32.const 6160) "0\00\00\00\01\00\00\00\00\00\00\000\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\f0\7f") - (data (i32.const 6224) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00,\00 \00") - (data (i32.const 6256) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") - (data (i32.const 6288) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") - (data (i32.const 6320) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 6368) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") - (data (i32.const 6400) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8\00\00\00\01\00\00\00\01\00\00\00>\00\00\00[\00o\00b\00j\00e\00c\00t\00 \00O\00b\00j\00e\00c\00t\00]\00,\00[\00o\00b\00j\00e\00c\00t\00 \00O\00b\00j\00e\00c\00t\00]\00") - (data (i32.const 7840) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") - (data (i32.const 7856) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") - (data (i32.const 7888) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 7920) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") - (data (i32.const 7952) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00,\002\00") - (data (i32.const 7984) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\000\00,\001\00,\002\00,\003\00") - (data (i32.const 8016) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\01\ff\00") - (data (i32.const 8048) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00,\00-\001\00,\000\00") - (data (i32.const 8080) "\06\00\00\00\01\00\00\00\00\00\00\00\06\00\00\00\01\00\ff\ff\00\00") - (data (i32.const 8112) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\00,\006\005\005\003\005\00,\000\00") - (data (i32.const 8160) "\18\00\00\00\01\00\00\00\00\00\00\00\18\00\00\00\01\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\00\00\00\00") - (data (i32.const 8208) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\001\00,\001\008\004\004\006\007\004\004\000\007\003\007\000\009\005\005\001\006\001\005\00,\000\00") - (data (i32.const 8272) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\ff\ff\ff\ff\ff\ff\ff\ff@Eu\c3*\9d\fb\ff\00\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\7f") - (data (i32.const 8320) "T\00\00\00\01\00\00\00\01\00\00\00T\00\00\00-\001\00,\00-\001\002\003\004\005\006\007\008\009\000\001\002\003\004\005\006\00,\000\00,\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\007\00") - (data (i32.const 8432) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\00\14\00\00\80\13\00\00\80\13\00\00\c0\13\00\00\a0\13\00\00\e0\13\00\00\00\00\00\00") - (data (i32.const 8480) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00,\00a\00,\00a\00,\00a\00b\00,\00b\00,\00b\00a\00,\00") - (data (i32.const 8528) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\002\00") - (data (i32.const 8560) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\004\00") - (data (i32.const 8592) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\a0\1d\00\00`!\00\00\00\00\00\00\80!\00\00") - (data (i32.const 8624) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00,\002\00,\00,\004\00") - (data (i32.const 8656) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") - (data (i32.const 8688) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\03\00\00\00\04\00\00\00") - (data (i32.const 8720) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00,\002\00,\003\00,\004\00") - (data (i32.const 8752) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01\02") - (data (i32.const 8784) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\03\04") - (data (i32.const 8816) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") + (data (i32.const 4016) "\ac\00\00\00\01\00\00\00\01\00\00\00\ac\00\00\00A\00B\00C\00D\00E\00F\00G\00H\00I\00J\00K\00L\00M\00N\00O\00P\00Q\00R\00S\00T\00U\00V\00W\00X\00Y\00Z\00a\00b\00c\00d\00e\00f\00g\00h\00i\00j\00k\00l\00m\00n\00o\00p\00q\00r\00s\00t\00u\00v\00w\00x\00y\00z\000\001\002\003\004\005\006\007\008\009\00_\00-\00,\00.\00+\00/\00\\\00[\00]\00{\00}\00(\00)\00<\00>\00*\00&\00$\00%\00^\00@\00#\00!\00?\00") + (data (i32.const 4208) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80?\00\00\c0\7f\00\00\80\ff\00\00\80?\00\00\00\00\00\00\80\bf\00\00\00\c0\00\00\80\7f") + (data (i32.const 4256) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\00\00\80\ff\00\00\00\c0\00\00\80\bf\00\00\00\00\00\00\80?\00\00\80?\00\00\80\7f\00\00\c0\7f") + (data (i32.const 4304) "@\00\00\00\01\00\00\00\00\00\00\00@\00\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\05\00\00\00\00\00\f0?\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0\bf\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\7f") + (data (i32.const 4384) "@\00\00\00\01\00\00\00\00\00\00\00@\00\00\00\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f0\bf\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0?\05\00\00\00\00\00\f0?\00\00\00\00\00\00\f0\7f\00\00\00\00\00\00\f8\7f") + (data (i32.const 4464) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\02\00\00\00") + (data (i32.const 4512) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 4560) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\01\00\00\00\ff\ff\ff\ff\fe\ff\ff\ff\00\00\00\00\02\00\00\00") + (data (i32.const 4608) "\14\00\00\00\01\00\00\00\00\00\00\00\14\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\fe\ff\ff\ff\ff\ff\ff\ff") + (data (i32.const 4656) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 4672) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") + (data (i32.const 4704) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\02\00\00\00\01\00\00\00") + (data (i32.const 4736) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\02\00\00\00\01\00\00\00\00\00\00\00") + (data (i32.const 4768) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") + (data (i32.const 4800) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") + (data (i32.const 4848) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") + (data (i32.const 4880) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 4912) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00a\00") + (data (i32.const 4944) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00b\00") + (data (i32.const 4976) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00a\00b\00") + (data (i32.const 5008) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00b\00a\00") + (data (i32.const 5040) "\00\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00") + (data (i32.const 5056) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00@\13\00\00`\13\00\00@\13\00\00\80\13\00\00\a0\13\00\00\c0\13\00\00\00\00\00\00") + (data (i32.const 5104) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\c0\13\00\00@\13\00\00@\13\00\00\80\13\00\00`\13\00\00\a0\13\00\00\00\00\00\00") + (data (i32.const 5152) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00n\00u\00l\00l\00") + (data (i32.const 5184) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01\00") + (data (i32.const 5216) "\08\00\00\00\01\00\00\00\01\00\00\00\08\00\00\00t\00r\00u\00e\00") + (data (i32.const 5248) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\00f\00a\00l\00s\00e\00") + (data (i32.const 5280) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00,\00") + (data (i32.const 5312) "\14\00\00\00\01\00\00\00\01\00\00\00\14\00\00\00t\00r\00u\00e\00,\00f\00a\00l\00s\00e\00") + (data (i32.const 5360) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\fe\ff\ff\ff\fd\ff\ff\ff") + (data (i32.const 5392) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\000\00") + (data (i32.const 5424) "\90\01\00\00\01\00\00\00\00\00\00\00\90\01\00\000\000\000\001\000\002\000\003\000\004\000\005\000\006\000\007\000\008\000\009\001\000\001\001\001\002\001\003\001\004\001\005\001\006\001\007\001\008\001\009\002\000\002\001\002\002\002\003\002\004\002\005\002\006\002\007\002\008\002\009\003\000\003\001\003\002\003\003\003\004\003\005\003\006\003\007\003\008\003\009\004\000\004\001\004\002\004\003\004\004\004\005\004\006\004\007\004\008\004\009\005\000\005\001\005\002\005\003\005\004\005\005\005\006\005\007\005\008\005\009\006\000\006\001\006\002\006\003\006\004\006\005\006\006\006\007\006\008\006\009\007\000\007\001\007\002\007\003\007\004\007\005\007\006\007\007\007\008\007\009\008\000\008\001\008\002\008\003\008\004\008\005\008\006\008\007\008\008\008\009\009\000\009\001\009\002\009\003\009\004\009\005\009\006\009\007\009\008\009\009\00") + (data (i32.const 5840) "\10\00\00\00\01\00\00\00\07\00\00\00\10\00\00\00@\15\00\00@\15\00\00\90\01\00\00d\00\00\00") + (data (i32.const 5872) "\n\00\00\00\01\00\00\00\01\00\00\00\n\00\00\001\00-\002\00-\003\00") + (data (i32.const 5904) "\0c\00\00\00\01\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") + (data (i32.const 5936) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\00-\00") + (data (i32.const 5968) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\00\00\00\80\00\00\00\80") + (data (i32.const 6000) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00_\00_\00") + (data (i32.const 6032) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\00-\002\001\004\007\004\008\003\006\004\008\00_\00_\00-\002\001\004\007\004\008\003\006\004\008\00") + (data (i32.const 6096) "0\00\00\00\01\00\00\00\00\00\00\000\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0?\00\00\00\00\00\00\00\c0\00\00\00\00\00\00\f8\7f\00\00\00\00\00\00\f0\ff\00\00\00\00\00\00\f0\7f") + (data (i32.const 6160) "\04\00\00\00\01\00\00\00\01\00\00\00\04\00\00\00,\00 \00") + (data (i32.const 6192) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\000\00.\000\00") + (data (i32.const 6224) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\00N\00a\00N\00") + (data (i32.const 6256) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\00-\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 6304) "\10\00\00\00\01\00\00\00\01\00\00\00\10\00\00\00I\00n\00f\00i\00n\00i\00t\00y\00") + (data (i32.const 6336) "\b8\02\00\00\01\00\00\00\00\00\00\00\b8\02\00\00\88\02\1c\08\a0\d5\8f\fav\bf>\a2\7f\e1\ae\bav\acU0 \fb\16\8b\ea5\ce]J\89B\cf-;eU\aa\b0k\9a\dfE\1a=\03\cf\1a\e6\ca\c6\9a\c7\17\fep\abO\dc\bc\be\fc\b1w\ff\0c\d6kA\ef\91V\be<\fc\7f\90\ad\1f\d0\8d\83\9aU1(\\Q\d3\b5\c9\a6\ad\8f\acq\9d\cb\8b\ee#w\"\9c\eamSx@\91I\cc\aeW\ce\b6]y\12<\827V\fbM6\94\10\c2O\98H8o\ea\96\90\c7:\82%\cb\85t\d7\f4\97\bf\97\cd\cf\86\a0\e5\ac*\17\98\n4\ef\8e\b25*\fbg8\b2;?\c6\d2\df\d4\c8\84\ba\cd\d3\1a\'D\dd\c5\96\c9%\bb\ce\9fk\93\84\a5b}$l\ac\db\f6\da_\0dXf\ab\a3&\f1\c3\de\93\f8\e2\f3\b8\80\ff\aa\a8\ad\b5\b5\8bJ|l\05_b\87S0\c14`\ff\bc\c9U&\ba\91\8c\85N\96\bd~)p$w\f9\df\8f\b8\e5\b8\9f\bd\df\a6\94}t\88\cf_\a9\f8\cf\9b\a8\8f\93pD\b9k\15\0f\bf\f8\f0\08\8a\b611eU%\b0\cd\ac\7f{\d0\c6\e2?\99\06;+*\c4\10\\\e4\d3\92si\99$$\aa\0e\ca\00\83\f2\b5\87\fd\eb\1a\11\92d\08\e5\bc\cc\88Po\t\cc\bc\8c,e\19\e2X\17\b7\d1\00\00\00\00\00\00@\9c\00\00\00\00\10\a5\d4\e8\00\00b\ac\c5\ebx\ad\84\t\94\f8x9?\81\b3\15\07\c9{\ce\97\c0p\\\ea{\ce2~\8fh\80\e9\ab\a48\d2\d5E\"\9a\17&\'O\9f\'\fb\c4\d41\a2c\ed\a8\ad\c8\8c8e\de\b0\dbe\ab\1a\8e\08\c7\83\9a\1dqB\f9\1d]\c4X\e7\1b\a6,iM\92\ea\8dp\1ad\ee\01\daJw\ef\9a\99\a3m\a2\85k}\b4{x\t\f2w\18\ddy\a1\e4T\b4\c2\c5\9b[\92\86[\86=]\96\c8\c5S5\c8\b3\a0\97\fa\\\b4*\95\e3_\a0\99\bd\9fF\de%\8c9\db4\c2\9b\a5\\\9f\98\a3r\9a\c6\f6\ce\be\e9TS\bf\dc\b7\e2A\"\f2\17\f3\fc\88\a5x\\\d3\9b\ce \cc\dfS!{\f3Z\16\98:0\1f\97\dc\b5\a0\e2\96\b3\e3\\S\d1\d9\a8\00\00\00\01\00\00\00\01\00\00\00>\00\00\00[\00o\00b\00j\00e\00c\00t\00 \00O\00b\00j\00e\00c\00t\00]\00,\00[\00o\00b\00j\00e\00c\00t\00 \00O\00b\00j\00e\00c\00t\00]\00") + (data (i32.const 7776) "\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 7792) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") + (data (i32.const 7824) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 7856) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\01\00\00\00\02\00\00\00\03\00\00\00") + (data (i32.const 7888) "\06\00\00\00\01\00\00\00\01\00\00\00\06\00\00\001\00,\002\00") + (data (i32.const 7920) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\000\00,\001\00,\002\00,\003\00") + (data (i32.const 7952) "\03\00\00\00\01\00\00\00\00\00\00\00\03\00\00\00\01\ff\00") + (data (i32.const 7984) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00,\00-\001\00,\000\00") + (data (i32.const 8016) "\06\00\00\00\01\00\00\00\00\00\00\00\06\00\00\00\01\00\ff\ff\00\00") + (data (i32.const 8048) "\12\00\00\00\01\00\00\00\01\00\00\00\12\00\00\001\00,\006\005\005\003\005\00,\000\00") + (data (i32.const 8096) "\18\00\00\00\01\00\00\00\00\00\00\00\18\00\00\00\01\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\00\00\00\00") + (data (i32.const 8144) "0\00\00\00\01\00\00\00\01\00\00\000\00\00\001\00,\001\008\004\004\006\007\004\004\000\007\003\007\000\009\005\005\001\006\001\005\00,\000\00") + (data (i32.const 8208) " \00\00\00\01\00\00\00\00\00\00\00 \00\00\00\ff\ff\ff\ff\ff\ff\ff\ff@Eu\c3*\9d\fb\ff\00\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\7f") + (data (i32.const 8256) "T\00\00\00\01\00\00\00\01\00\00\00T\00\00\00-\001\00,\00-\001\002\003\004\005\006\007\008\009\000\001\002\003\004\005\006\00,\000\00,\009\002\002\003\003\007\002\000\003\006\008\005\004\007\007\005\008\000\007\00") + (data (i32.const 8368) "\1c\00\00\00\01\00\00\00\00\00\00\00\1c\00\00\00\c0\13\00\00@\13\00\00@\13\00\00\80\13\00\00`\13\00\00\a0\13\00\00\00\00\00\00") + (data (i32.const 8416) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00,\00a\00,\00a\00,\00a\00b\00,\00b\00,\00b\00a\00,\00") + (data (i32.const 8464) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\002\00") + (data (i32.const 8496) "\02\00\00\00\01\00\00\00\01\00\00\00\02\00\00\004\00") + (data (i32.const 8528) "\10\00\00\00\01\00\00\00\00\00\00\00\10\00\00\00`\1d\00\00 !\00\00\00\00\00\00@!\00\00") + (data (i32.const 8560) "\0c\00\00\00\01\00\00\00\01\00\00\00\0c\00\00\001\00,\002\00,\00,\004\00") + (data (i32.const 8592) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\01\00\00\00\02\00\00\00") + (data (i32.const 8624) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\03\00\00\00\04\00\00\00") + (data (i32.const 8656) "\0e\00\00\00\01\00\00\00\01\00\00\00\0e\00\00\001\00,\002\00,\003\00,\004\00") + (data (i32.const 8688) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\01\02") + (data (i32.const 8720) "\02\00\00\00\01\00\00\00\00\00\00\00\02\00\00\00\03\04") + (data (i32.const 8752) "\04\00\00\00\01\00\00\00\00\00\00\00\04\00\00\00\01\00\00\00") (table $0 57 funcref) (elem (i32.const 1) $start:std/array~anonymous|0 $start:std/array~anonymous|1 $start:std/array~anonymous|2 $start:std/array~anonymous|3 $start:std/array~anonymous|4 $start:std/array~anonymous|5 $start:std/array~anonymous|6 $start:std/array~anonymous|7 $start:std/array~anonymous|8 $start:std/array~anonymous|9 $start:std/array~anonymous|10 $start:std/array~anonymous|11 $start:std/array~anonymous|12 $start:std/array~anonymous|13 $start:std/array~anonymous|14 $start:std/array~anonymous|15 $start:std/array~anonymous|16 $start:std/array~anonymous|17 $start:std/array~anonymous|18 $start:std/array~anonymous|19 $start:std/array~anonymous|20 $start:std/array~anonymous|21 $start:std/array~anonymous|22 $start:std/array~anonymous|23 $start:std/array~anonymous|24 $start:std/array~anonymous|25 $start:std/array~anonymous|26 $start:std/array~anonymous|27 $start:std/array~anonymous|28 $start:std/array~anonymous|29 $start:std/array~anonymous|30 $start:std/array~anonymous|31 $start:std/array~anonymous|32 $start:std/array~anonymous|33 $start:std/array~anonymous|34 $start:std/array~anonymous|35 $start:std/array~anonymous|36 $start:std/array~anonymous|37 $start:std/array~anonymous|38 $start:std/array~anonymous|39 $start:std/array~anonymous|40 $start:std/array~anonymous|41 $start:std/array~anonymous|42 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|0 $~lib/util/sort/COMPARATOR~anonymous|1 $start:std/array~anonymous|43 $start:std/array~anonymous|44 $start:std/array~anonymous|45 $start:std/array~anonymous|46 $start:std/array~anonymous|47 $start:std/array~anonymous|48 $~lib/util/sort/COMPARATOR<~lib/string/String | null>~anonymous|0 $~lib/util/sort/COMPARATOR<~lib/string/String>~anonymous|0) (global $~lib/rt/tlsf/ROOT (mut i32) (i32.const 0)) @@ -227,12 +227,12 @@ (global $~lib/builtins/i32.MAX_VALUE i32 (i32.const 2147483647)) (global $std/array/i (mut i32) (i32.const 0)) (global $~argumentsLength (mut i32) (i32.const 0)) + (global $std/array/charset i32 (i32.const 4032)) (global $~lib/math/random_seeded (mut i32) (i32.const 0)) (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) - (global $std/array/charset i32 (i32.const 4080)) (global $~lib/builtins/i32.MIN_VALUE i32 (i32.const -2147483648)) (global $~lib/util/number/_frc_plus (mut i64) (i64.const 0)) (global $~lib/util/number/_frc_minus (mut i64) (i64.const 0)) @@ -243,7 +243,7 @@ (global $~lib/builtins/u32.MAX_VALUE i32 (i32.const -1)) (global $~lib/builtins/i64.MAX_VALUE i64 (i64.const 9223372036854775807)) (global $~started (mut i32) (i32.const 0)) - (global $~lib/heap/__heap_base i32 (i32.const 8836)) + (global $~lib/heap/__heap_base i32 (i32.const 8772)) (export "__setArgumentsLength" (func $~setArgumentsLength)) (export "_start" (func $~start)) (export "memory" (memory $0)) @@ -6897,123 +6897,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/math/murmurHash3 (; 138 ;) (param $0 i64) (result i64) - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - i64.const -49064778989728563 - i64.mul - local.set $0 - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - i64.const -4265267296055464877 - i64.mul - local.set $0 - local.get $0 - local.get $0 - i64.const 33 - i64.shr_u - i64.xor - local.set $0 - local.get $0 - ) - (func $~lib/math/splitMix32 (; 139 ;) (param $0 i32) (result i32) - local.get $0 - i32.const 1831565813 - i32.add - local.set $0 - local.get $0 - local.get $0 - i32.const 15 - i32.shr_u - i32.xor - local.get $0 - i32.const 1 - i32.or - i32.mul - local.set $0 - local.get $0 - local.get $0 - local.get $0 - local.get $0 - i32.const 7 - i32.shr_u - i32.xor - local.get $0 - i32.const 61 - i32.or - i32.mul - i32.add - i32.xor - local.set $0 - local.get $0 - local.get $0 - i32.const 14 - i32.shr_u - i32.xor - ) - (func $~lib/math/NativeMath.seedRandom (; 140 ;) (param $0 i64) - i32.const 1 - global.set $~lib/math/random_seeded - local.get $0 - call $~lib/math/murmurHash3 - global.set $~lib/math/random_state0_64 - global.get $~lib/math/random_state0_64 - i64.const -1 - i64.xor - call $~lib/math/murmurHash3 - global.set $~lib/math/random_state1_64 - local.get $0 - i32.wrap_i64 - call $~lib/math/splitMix32 - global.set $~lib/math/random_state0_32 - global.get $~lib/math/random_state0_32 - call $~lib/math/splitMix32 - global.set $~lib/math/random_state1_32 - global.get $~lib/math/random_state0_64 - i64.const 0 - i64.ne - if (result i32) - global.get $~lib/math/random_state1_64 - i64.const 0 - i64.ne - else - i32.const 0 - end - if (result i32) - global.get $~lib/math/random_state0_32 - i32.const 0 - i32.ne - else - i32.const 0 - end - if (result i32) - global.get $~lib/math/random_state1_32 - i32.const 0 - i32.ne - else - i32.const 0 - end - i32.eqz - if - i32.const 0 - i32.const 4032 - i32.const 1406 - i32.const 4 - call $~lib/builtins/abort - unreachable - end - ) - (func $~lib/util/sort/insertionSort (; 141 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 138 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 f32) @@ -7103,13 +6987,13 @@ end end ) - (func $~lib/rt/tlsf/__free (; 142 ;) (param $0 i32) + (func $~lib/rt/tlsf/__free (; 139 ;) (param $0 i32) call $~lib/rt/tlsf/maybeInitialize local.get $0 call $~lib/rt/tlsf/checkUsedBlock call $~lib/rt/tlsf/freeBlock ) - (func $~lib/util/sort/weakHeapSort (; 143 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 140 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -7398,7 +7282,7 @@ local.get $12 f32.store ) - (func $~lib/array/Array#sort (; 144 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 141 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 f32) @@ -7473,7 +7357,7 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 145 ;) (param $0 f32) (param $1 f32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 142 ;) (param $0 f32) (param $1 f32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -7506,7 +7390,7 @@ i32.lt_s i32.sub ) - (func $~lib/array/Array#sort|trampoline (; 146 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort|trampoline (; 143 ;) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -7525,7 +7409,7 @@ local.get $1 call $~lib/array/Array#sort ) - (func $std/array/isArraysEqual (; 147 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/array/isArraysEqual (; 144 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 f32) @@ -7632,7 +7516,7 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $~lib/util/sort/insertionSort (; 148 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 145 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 f64) @@ -7722,7 +7606,7 @@ end end ) - (func $~lib/util/sort/weakHeapSort (; 149 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 146 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -8011,7 +7895,7 @@ local.get $12 f64.store ) - (func $~lib/array/Array#sort (; 150 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 147 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 f64) @@ -8086,7 +7970,7 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 151 ;) (param $0 f64) (param $1 f64) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 148 ;) (param $0 f64) (param $1 f64) (result i32) (local $2 i64) (local $3 i64) local.get $0 @@ -8119,7 +8003,7 @@ i64.lt_s i32.sub ) - (func $~lib/array/Array#sort|trampoline (; 152 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort|trampoline (; 149 ;) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -8138,11 +8022,11 @@ local.get $1 call $~lib/array/Array#sort ) - (func $~lib/array/Array#get:length (; 153 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#get:length (; 150 ;) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array#__unchecked_get (; 154 ;) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/array/Array#__unchecked_get (; 151 ;) (param $0 i32) (param $1 i32) (result f64) local.get $0 i32.load offset=4 local.get $1 @@ -8151,7 +8035,7 @@ i32.add f64.load ) - (func $~lib/array/Array#__get (; 155 ;) (param $0 i32) (param $1 i32) (result f64) + (func $~lib/array/Array#__get (; 152 ;) (param $0 i32) (param $1 i32) (result f64) (local $2 f64) local.get $1 local.get $0 @@ -8171,7 +8055,7 @@ local.set $2 local.get $2 ) - (func $std/array/isArraysEqual (; 156 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/array/isArraysEqual (; 153 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 f64) @@ -8278,7 +8162,7 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $~lib/util/sort/insertionSort (; 157 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 154 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -8368,7 +8252,7 @@ end end ) - (func $~lib/util/sort/weakHeapSort (; 158 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 155 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -8657,7 +8541,7 @@ local.get $12 i32.store ) - (func $~lib/array/Array#sort (; 159 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 156 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -8730,12 +8614,12 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 160 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 157 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.sub ) - (func $~lib/array/Array#sort|trampoline (; 161 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort|trampoline (; 158 ;) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -8754,7 +8638,7 @@ local.get $1 call $~lib/array/Array#sort ) - (func $~lib/util/sort/insertionSort (; 162 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort (; 159 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -8844,7 +8728,7 @@ end end ) - (func $~lib/util/sort/weakHeapSort (; 163 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/weakHeapSort (; 160 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -9133,7 +9017,7 @@ local.get $12 i32.store ) - (func $~lib/array/Array#sort (; 164 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort (; 161 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9206,7 +9090,7 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 165 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|0 (; 162 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.gt_u @@ -9215,7 +9099,7 @@ i32.lt_u i32.sub ) - (func $~lib/array/Array#sort|trampoline (; 166 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#sort|trampoline (; 163 ;) (param $0 i32) (param $1 i32) (result i32) block $1of1 block $0of1 block $outOfRange @@ -9234,7 +9118,7 @@ local.get $1 call $~lib/array/Array#sort ) - (func $std/array/createReverseOrderedArray (; 167 ;) (param $0 i32) (result i32) + (func $std/array/createReverseOrderedArray (; 164 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -9268,19 +9152,149 @@ end local.get $1 ) - (func $~lib/math/NativeMath.random (; 168 ;) (result f64) + (func $~lib/math/seedRandomSelect (; 165 ;) (result i64) + (local $0 i64) + (local $1 i32) + loop $do-continue|0 + call $~lib/bindings/Math/random + i64.reinterpret_f64 + local.set $0 + local.get $0 + i64.const 0 + i64.ne + i32.eqz + local.set $1 + local.get $1 + br_if $do-continue|0 + end + local.get $0 + return + ) + (func $~lib/math/murmurHash3 (; 166 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -49064778989728563 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -4265267296055464877 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + ) + (func $~lib/math/splitMix32 (; 167 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.set $0 + local.get $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.set $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + local.get $0 + i32.const 61 + i32.or + i32.mul + i32.add + i32.xor + local.set $0 + local.get $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 168 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + if (result i32) + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state0_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 4816 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 169 ;) (result f64) (local $0 i64) (local $1 i64) (local $2 i64) global.get $~lib/math/random_seeded i32.eqz if - i32.const 4864 - i32.const 4032 - i32.const 1413 - i32.const 24 - call $~lib/builtins/abort - unreachable + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_64 local.set $0 @@ -9323,7 +9337,7 @@ f64.const 1 f64.sub ) - (func $std/array/createRandomOrderedArray (; 169 ;) (param $0 i32) (result i32) + (func $std/array/createRandomOrderedArray (; 170 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -9357,12 +9371,12 @@ end local.get $1 ) - (func $~lib/util/sort/COMPARATOR~anonymous|1 (; 170 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR~anonymous|1 (; 171 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.sub ) - (func $std/array/isSorted (; 171 ;) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isSorted (; 172 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9417,7 +9431,7 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $std/array/assertSorted (; 172 ;) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted (; 173 ;) (param $0 i32) (param $1 i32) (local $2 i32) local.get $0 call $~lib/rt/pure/__retain @@ -9432,7 +9446,7 @@ if i32.const 0 i32.const 304 - i32.const 881 + i32.const 879 i32.const 2 call $~lib/builtins/abort unreachable @@ -9442,7 +9456,7 @@ local.get $0 call $~lib/rt/pure/__release ) - (func $std/array/assertSortedDefault (; 173 ;) (param $0 i32) + (func $std/array/assertSortedDefault (; 174 ;) (param $0 i32) local.get $0 call $~lib/rt/pure/__retain local.set $0 @@ -9455,27 +9469,27 @@ local.get $0 call $~lib/rt/pure/__release ) - (func $start:std/array~anonymous|43 (; 174 ;) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|43 (; 175 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.sub ) - (func $start:std/array~anonymous|44 (; 175 ;) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|44 (; 176 ;) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.sub ) - (func $start:std/array~anonymous|45 (; 176 ;) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|45 (; 177 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 local.get $1 i32.sub ) - (func $start:std/array~anonymous|46 (; 177 ;) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|46 (; 178 ;) (param $0 i32) (param $1 i32) (result i32) local.get $1 local.get $0 i32.sub ) - (func $~lib/array/Array<~lib/array/Array>#constructor (; 178 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#constructor (; 179 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 if (result i32) local.get $0 @@ -9497,7 +9511,7 @@ i32.store offset=12 local.get $0 ) - (func $~lib/array/Array<~lib/array/Array>#__unchecked_set (; 179 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array<~lib/array/Array>#__unchecked_set (; 180 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) local.get $2 @@ -9527,7 +9541,7 @@ local.get $2 call $~lib/rt/pure/__release ) - (func $~lib/array/Array<~lib/array/Array>#__set (; 180 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array<~lib/array/Array>#__set (; 181 ;) (param $0 i32) (param $1 i32) (param $2 i32) local.get $2 call $~lib/rt/pure/__retain local.set $2 @@ -9568,7 +9582,7 @@ local.get $2 call $~lib/rt/pure/__release ) - (func $std/array/createReverseOrderedNestedArray (; 181 ;) (param $0 i32) (result i32) + (func $std/array/createReverseOrderedNestedArray (; 182 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -9613,7 +9627,7 @@ end local.get $1 ) - (func $start:std/array~anonymous|47 (; 182 ;) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|47 (; 183 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 call $~lib/rt/pure/__retain @@ -9635,7 +9649,7 @@ call $~lib/rt/pure/__release local.get $2 ) - (func $~lib/util/sort/insertionSort<~lib/array/Array> (; 183 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort<~lib/array/Array> (; 184 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -9733,7 +9747,7 @@ end end ) - (func $~lib/array/Array<~lib/array/Array>#sort (; 184 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#sort (; 185 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9804,11 +9818,11 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/array/Array<~lib/array/Array>#get:length (; 185 ;) (param $0 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#get:length (; 186 ;) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 186 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#__unchecked_get (; 187 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.load offset=4 local.get $1 @@ -9818,7 +9832,7 @@ i32.load call $~lib/rt/pure/__retain ) - (func $~lib/array/Array<~lib/array/Array>#__get (; 187 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#__get (; 188 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $1 local.get $0 @@ -9850,7 +9864,7 @@ end local.get $2 ) - (func $std/array/isSorted<~lib/array/Array> (; 188 ;) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isSorted<~lib/array/Array> (; 189 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9917,7 +9931,7 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $std/array/assertSorted<~lib/array/Array> (; 189 ;) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted<~lib/array/Array> (; 190 ;) (param $0 i32) (param $1 i32) (local $2 i32) local.get $0 call $~lib/rt/pure/__retain @@ -9932,7 +9946,7 @@ if i32.const 0 i32.const 304 - i32.const 881 + i32.const 879 i32.const 2 call $~lib/builtins/abort unreachable @@ -9942,7 +9956,7 @@ local.get $0 call $~lib/rt/pure/__release ) - (func $~lib/array/Array>#constructor (; 190 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#constructor (; 191 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 if (result i32) local.get $0 @@ -9964,7 +9978,7 @@ i32.store offset=12 local.get $0 ) - (func $std/array/Proxy#constructor (; 191 ;) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/Proxy#constructor (; 192 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.eqz if @@ -9979,7 +9993,7 @@ i32.store local.get $0 ) - (func $~lib/array/Array>#__unchecked_set (; 192 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array>#__unchecked_set (; 193 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) local.get $2 @@ -10009,7 +10023,7 @@ local.get $2 call $~lib/rt/pure/__release ) - (func $~lib/array/Array>#__set (; 193 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array>#__set (; 194 ;) (param $0 i32) (param $1 i32) (param $2 i32) local.get $2 call $~lib/rt/pure/__retain local.set $2 @@ -10050,7 +10064,7 @@ local.get $2 call $~lib/rt/pure/__release ) - (func $std/array/createReverseOrderedElementsArray (; 194 ;) (param $0 i32) (result i32) + (func $std/array/createReverseOrderedElementsArray (; 195 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -10090,7 +10104,7 @@ end local.get $1 ) - (func $start:std/array~anonymous|48 (; 195 ;) (param $0 i32) (param $1 i32) (result i32) + (func $start:std/array~anonymous|48 (; 196 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 call $~lib/rt/pure/__retain @@ -10110,7 +10124,7 @@ call $~lib/rt/pure/__release local.get $2 ) - (func $~lib/util/sort/insertionSort> (; 196 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort> (; 197 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -10208,7 +10222,7 @@ end end ) - (func $~lib/array/Array>#sort (; 197 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#sort (; 198 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10279,11 +10293,11 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/array/Array>#get:length (; 198 ;) (param $0 i32) (result i32) + (func $~lib/array/Array>#get:length (; 199 ;) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array>#__unchecked_get (; 199 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#__unchecked_get (; 200 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.load offset=4 local.get $1 @@ -10293,7 +10307,7 @@ i32.load call $~lib/rt/pure/__retain ) - (func $~lib/array/Array>#__get (; 200 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array>#__get (; 201 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $1 local.get $0 @@ -10325,7 +10339,7 @@ end local.get $2 ) - (func $std/array/isSorted> (; 201 ;) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isSorted> (; 202 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10392,7 +10406,7 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $std/array/assertSorted> (; 202 ;) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted> (; 203 ;) (param $0 i32) (param $1 i32) (local $2 i32) local.get $0 call $~lib/rt/pure/__retain @@ -10407,7 +10421,7 @@ if i32.const 0 i32.const 304 - i32.const 881 + i32.const 879 i32.const 2 call $~lib/builtins/abort unreachable @@ -10417,7 +10431,7 @@ local.get $0 call $~lib/rt/pure/__release ) - (func $~lib/util/sort/insertionSort<~lib/string/String | null> (; 203 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort<~lib/string/String | null> (; 204 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -10515,7 +10529,7 @@ end end ) - (func $~lib/array/Array<~lib/string/String | null>#sort (; 204 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/string/String | null>#sort (; 205 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10586,11 +10600,11 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/array/Array<~lib/string/String | null>#get:length (; 205 ;) (param $0 i32) (result i32) + (func $~lib/array/Array<~lib/string/String | null>#get:length (; 206 ;) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array<~lib/string/String | null>#__unchecked_get (; 206 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/string/String | null>#__unchecked_get (; 207 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.load offset=4 local.get $1 @@ -10600,7 +10614,7 @@ i32.load call $~lib/rt/pure/__retain ) - (func $~lib/array/Array<~lib/string/String | null>#__get (; 207 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/string/String | null>#__get (; 208 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $1 local.get $0 @@ -10620,7 +10634,7 @@ local.set $2 local.get $2 ) - (func $std/array/isSorted<~lib/string/String | null> (; 208 ;) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isSorted<~lib/string/String | null> (; 209 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10687,7 +10701,7 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $std/array/assertSorted<~lib/string/String | null> (; 209 ;) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted<~lib/string/String | null> (; 210 ;) (param $0 i32) (param $1 i32) (local $2 i32) local.get $0 call $~lib/rt/pure/__retain @@ -10702,7 +10716,7 @@ if i32.const 0 i32.const 304 - i32.const 881 + i32.const 879 i32.const 2 call $~lib/builtins/abort unreachable @@ -10712,7 +10726,7 @@ local.get $0 call $~lib/rt/pure/__release ) - (func $~lib/string/String#get:length (; 210 ;) (param $0 i32) (result i32) + (func $~lib/string/String#get:length (; 211 ;) (param $0 i32) (result i32) local.get $0 i32.const 16 i32.sub @@ -10720,7 +10734,7 @@ i32.const 1 i32.shr_u ) - (func $~lib/util/string/compareImpl (; 211 ;) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) + (func $~lib/util/string/compareImpl (; 212 ;) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) (local $5 i32) (local $6 i32) (local $7 i32) @@ -10842,7 +10856,7 @@ call $~lib/rt/pure/__release local.get $7 ) - (func $~lib/util/sort/COMPARATOR<~lib/string/String | null>~anonymous|0 (; 212 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR<~lib/string/String | null>~anonymous|0 (; 213 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -10948,7 +10962,7 @@ call $~lib/rt/pure/__release local.get $2 ) - (func $std/array/assertSorted<~lib/string/String | null>|trampoline (; 213 ;) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted<~lib/string/String | null>|trampoline (; 214 ;) (param $0 i32) (param $1 i32) block $1of1 block $0of1 block $outOfRange @@ -10969,7 +10983,7 @@ local.get $1 call $std/array/assertSorted<~lib/string/String | null> ) - (func $~lib/string/String.__eq (; 214 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__eq (; 215 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) local.get $0 @@ -11042,7 +11056,7 @@ call $~lib/rt/pure/__release local.get $2 ) - (func $~lib/string/String.__ne (; 215 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__ne (; 216 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 call $~lib/rt/pure/__retain @@ -11061,7 +11075,7 @@ call $~lib/rt/pure/__release local.get $2 ) - (func $std/array/isArraysEqual<~lib/string/String | null> (; 216 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $std/array/isArraysEqual<~lib/string/String | null> (; 217 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -11158,7 +11172,7 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $~lib/array/Array<~lib/string/String>#constructor (; 217 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/string/String>#constructor (; 218 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 if (result i32) local.get $0 @@ -11180,14 +11194,14 @@ i32.store offset=12 local.get $0 ) - (func $~lib/string/String#charAt (; 218 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#charAt (; 219 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $1 local.get $0 call $~lib/string/String#get:length i32.ge_u if - i32.const 5120 + i32.const 5056 call $~lib/rt/pure/__retain return end @@ -11206,7 +11220,7 @@ local.get $2 call $~lib/rt/pure/__retain ) - (func $~lib/string/String#concat (; 219 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String#concat (; 220 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11220,7 +11234,7 @@ i32.const 0 i32.eq if - i32.const 5232 + i32.const 5168 local.tee $2 local.get $1 local.tee $3 @@ -11253,7 +11267,7 @@ i32.const 0 i32.eq if - i32.const 5120 + i32.const 5056 call $~lib/rt/pure/__retain local.set $2 local.get $1 @@ -11282,7 +11296,7 @@ call $~lib/rt/pure/__release local.get $2 ) - (func $~lib/string/String.__concat (; 220 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/string/String.__concat (; 221 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $0 call $~lib/rt/pure/__retain @@ -11291,7 +11305,7 @@ call $~lib/rt/pure/__retain local.set $1 local.get $0 - i32.const 5232 + i32.const 5168 local.get $0 i32.const 0 i32.ne @@ -11305,7 +11319,7 @@ call $~lib/rt/pure/__release local.get $2 ) - (func $std/array/createRandomString (; 221 ;) (param $0 i32) (result i32) + (func $std/array/createRandomString (; 222 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -11314,7 +11328,7 @@ (local $6 i32) (local $7 i32) (local $8 i32) - i32.const 5120 + i32.const 5056 local.set $1 i32.const 0 local.set $2 @@ -11366,7 +11380,7 @@ end local.get $1 ) - (func $~lib/array/Array<~lib/string/String>#__unchecked_set (; 222 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array<~lib/string/String>#__unchecked_set (; 223 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) local.get $2 @@ -11396,7 +11410,7 @@ local.get $2 call $~lib/rt/pure/__release ) - (func $~lib/array/Array<~lib/string/String>#__set (; 223 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/array/Array<~lib/string/String>#__set (; 224 ;) (param $0 i32) (param $1 i32) (param $2 i32) local.get $2 call $~lib/rt/pure/__retain local.set $2 @@ -11437,7 +11451,7 @@ local.get $2 call $~lib/rt/pure/__release ) - (func $std/array/createRandomStringArray (; 224 ;) (param $0 i32) (result i32) + (func $std/array/createRandomStringArray (; 225 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -11475,7 +11489,7 @@ end local.get $1 ) - (func $~lib/util/sort/insertionSort<~lib/string/String> (; 225 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/sort/insertionSort<~lib/string/String> (; 226 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -11573,7 +11587,7 @@ end end ) - (func $~lib/array/Array<~lib/string/String>#sort (; 226 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/string/String>#sort (; 227 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11644,11 +11658,11 @@ local.get $0 call $~lib/rt/pure/__retain ) - (func $~lib/array/Array<~lib/string/String>#get:length (; 227 ;) (param $0 i32) (result i32) + (func $~lib/array/Array<~lib/string/String>#get:length (; 228 ;) (param $0 i32) (result i32) local.get $0 i32.load offset=12 ) - (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 228 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 229 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.load offset=4 local.get $1 @@ -11658,7 +11672,7 @@ i32.load call $~lib/rt/pure/__retain ) - (func $~lib/array/Array<~lib/string/String>#__get (; 229 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/string/String>#__get (; 230 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) local.get $1 local.get $0 @@ -11690,7 +11704,7 @@ end local.get $2 ) - (func $std/array/isSorted<~lib/string/String> (; 230 ;) (param $0 i32) (param $1 i32) (result i32) + (func $std/array/isSorted<~lib/string/String> (; 231 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11757,7 +11771,7 @@ call $~lib/rt/pure/__release local.get $3 ) - (func $std/array/assertSorted<~lib/string/String> (; 231 ;) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted<~lib/string/String> (; 232 ;) (param $0 i32) (param $1 i32) (local $2 i32) local.get $0 call $~lib/rt/pure/__retain @@ -11772,7 +11786,7 @@ if i32.const 0 i32.const 304 - i32.const 881 + i32.const 879 i32.const 2 call $~lib/builtins/abort unreachable @@ -11782,7 +11796,7 @@ local.get $0 call $~lib/rt/pure/__release ) - (func $~lib/util/sort/COMPARATOR<~lib/string/String>~anonymous|0 (; 232 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/util/sort/COMPARATOR<~lib/string/String>~anonymous|0 (; 233 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -11888,7 +11902,7 @@ call $~lib/rt/pure/__release local.get $2 ) - (func $std/array/assertSorted<~lib/string/String>|trampoline (; 233 ;) (param $0 i32) (param $1 i32) + (func $std/array/assertSorted<~lib/string/String>|trampoline (; 234 ;) (param $0 i32) (param $1 i32) block $1of1 block $0of1 block $outOfRange @@ -11909,7 +11923,7 @@ local.get $1 call $std/array/assertSorted<~lib/string/String> ) - (func $~lib/string/String#substring (; 234 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/string/String#substring (; 235 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -11983,7 +11997,7 @@ local.get $10 i32.eqz if - i32.const 5120 + i32.const 5056 call $~lib/rt/pure/__retain return end @@ -12016,7 +12030,7 @@ local.get $11 call $~lib/rt/pure/__retain ) - (func $~lib/util/string/joinBooleanArray (; 235 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinBooleanArray (; 236 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -12038,7 +12052,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -12048,8 +12062,8 @@ local.get $3 i32.eqz if - i32.const 5296 - i32.const 5328 + i32.const 5232 + i32.const 5264 local.get $0 i32.load8_u select @@ -12106,8 +12120,8 @@ i32.const 1 i32.shl i32.add - i32.const 5296 - i32.const 5328 + i32.const 5232 + i32.const 5264 local.get $10 select local.get $6 @@ -12157,8 +12171,8 @@ i32.const 1 i32.shl i32.add - i32.const 5296 - i32.const 5328 + i32.const 5232 + i32.const 5264 local.get $10 select local.get $6 @@ -12191,7 +12205,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 236 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 237 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12214,7 +12228,7 @@ local.get $4 return ) - (func $~lib/util/number/decimalCount32 (; 237 ;) (param $0 i32) (result i32) + (func $~lib/util/number/decimalCount32 (; 238 ;) (param $0 i32) (result i32) (local $1 i32) local.get $0 i32.const 100000 @@ -12280,7 +12294,7 @@ end unreachable ) - (func $~lib/util/number/utoa32_lut (; 238 ;) (param $0 i32) (param $1 i32) (param $2 i32) + (func $~lib/util/number/utoa32_lut (; 239 ;) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -12291,7 +12305,7 @@ (local $10 i64) (local $11 i32) (local $12 i32) - i32.const 5920 + i32.const 5856 i32.load offset=4 local.set $3 loop $while-continue|0 @@ -12424,7 +12438,7 @@ i32.store16 end ) - (func $~lib/util/number/itoa32 (; 239 ;) (param $0 i32) (result i32) + (func $~lib/util/number/itoa32 (; 240 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -12434,7 +12448,7 @@ local.get $0 i32.eqz if - i32.const 5472 + i32.const 5408 return end local.get $0 @@ -12478,12 +12492,12 @@ local.get $3 call $~lib/rt/pure/__retain ) - (func $~lib/util/number/itoa (; 240 ;) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 241 ;) (param $0 i32) (result i32) local.get $0 call $~lib/util/number/itoa32 return ) - (func $~lib/util/number/itoa_stream (; 241 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 242 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -12540,7 +12554,7 @@ end local.get $3 ) - (func $~lib/util/string/joinIntegerArray (; 242 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinIntegerArray (; 243 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -12560,7 +12574,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -12683,7 +12697,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 243 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 244 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12706,7 +12720,7 @@ local.get $4 return ) - (func $~lib/util/number/utoa32 (; 244 ;) (param $0 i32) (result i32) + (func $~lib/util/number/utoa32 (; 245 ;) (param $0 i32) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -12715,7 +12729,7 @@ local.get $0 i32.eqz if - i32.const 5472 + i32.const 5408 return end local.get $0 @@ -12740,12 +12754,12 @@ local.get $2 call $~lib/rt/pure/__retain ) - (func $~lib/util/number/itoa (; 245 ;) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 246 ;) (param $0 i32) (result i32) local.get $0 call $~lib/util/number/utoa32 return ) - (func $~lib/util/number/itoa_stream (; 246 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 247 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -12782,7 +12796,7 @@ call $~lib/util/number/utoa32_lut local.get $3 ) - (func $~lib/util/string/joinIntegerArray (; 247 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinIntegerArray (; 248 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -12802,7 +12816,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -12925,7 +12939,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 248 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 249 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12948,7 +12962,7 @@ local.get $4 return ) - (func $~lib/array/Array#__unchecked_get (; 249 ;) (param $0 i32) (param $1 i32) (result i64) + (func $~lib/array/Array#__unchecked_get (; 250 ;) (param $0 i32) (param $1 i32) (result i64) local.get $0 i32.load offset=4 local.get $1 @@ -12957,7 +12971,7 @@ i32.add i64.load ) - (func $~lib/array/Array#__unchecked_get (; 250 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#__unchecked_get (; 251 ;) (param $0 i32) (param $1 i32) (result i32) local.get $0 i32.load offset=4 local.get $1 @@ -12966,7 +12980,7 @@ i32.add i32.load16_s ) - (func $~lib/util/number/genDigits (; 251 ;) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) + (func $~lib/util/number/genDigits (; 252 ;) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32) (local $7 i32) (local $8 i64) (local $9 i64) @@ -13024,7 +13038,7 @@ local.set $14 local.get $6 local.set $15 - i32.const 7456 + i32.const 7392 i32.load offset=4 local.set $16 loop $while-continue|0 @@ -13473,7 +13487,7 @@ end local.get $15 ) - (func $~lib/util/number/prettify (; 252 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/prettify (; 253 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -13790,7 +13804,7 @@ end unreachable ) - (func $~lib/util/number/dtoa_core (; 253 ;) (param $0 i32) (param $1 f64) (result i32) + (func $~lib/util/number/dtoa_core (; 254 ;) (param $0 i32) (param $1 f64) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -13955,11 +13969,11 @@ i32.shl i32.sub global.set $~lib/util/number/_K - i32.const 7136 + i32.const 7072 local.get $14 call $~lib/array/Array#__unchecked_get global.set $~lib/util/number/_frc_pow - i32.const 7360 + i32.const 7296 local.get $14 call $~lib/array/Array#__unchecked_get global.set $~lib/util/number/_exp_pow @@ -14212,7 +14226,7 @@ local.get $2 i32.add ) - (func $~lib/util/number/dtoa (; 254 ;) (param $0 f64) (result i32) + (func $~lib/util/number/dtoa (; 255 ;) (param $0 f64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -14220,7 +14234,7 @@ f64.const 0 f64.eq if - i32.const 6272 + i32.const 6208 return end local.get $0 @@ -14234,11 +14248,11 @@ local.get $0 f64.ne if - i32.const 6304 + i32.const 6240 return end - i32.const 6336 - i32.const 6384 + i32.const 6272 + i32.const 6320 local.get $0 f64.const 0 f64.lt @@ -14273,7 +14287,7 @@ call $~lib/rt/tlsf/__free local.get $3 ) - (func $~lib/util/number/dtoa_stream (; 255 ;) (param $0 i32) (param $1 i32) (param $2 f64) (result i32) + (func $~lib/util/number/dtoa_stream (; 256 ;) (param $0 i32) (param $1 i32) (param $2 f64) (result i32) (local $3 i32) (local $4 i32) local.get $0 @@ -14330,8 +14344,8 @@ i32.add local.set $4 local.get $0 - i32.const 6336 - i32.const 6384 + i32.const 6272 + i32.const 6320 local.get $3 select local.get $4 @@ -14347,7 +14361,7 @@ local.get $2 call $~lib/util/number/dtoa_core ) - (func $~lib/util/string/joinFloatArray (; 256 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinFloatArray (; 257 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -14367,7 +14381,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -14490,7 +14504,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 257 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 258 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -14513,7 +14527,7 @@ local.get $4 return ) - (func $~lib/util/string/joinStringArray (; 258 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinStringArray (; 259 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -14535,7 +14549,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -14552,7 +14566,7 @@ local.get $4 call $~lib/rt/pure/__retain else - i32.const 5120 + i32.const 5056 end local.set $4 local.get $2 @@ -14742,7 +14756,7 @@ call $~lib/rt/pure/__release local.get $8 ) - (func $~lib/array/Array<~lib/string/String | null>#join (; 259 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/string/String | null>#join (; 260 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -14765,10 +14779,10 @@ local.get $4 return ) - (func $std/array/Ref#toString (; 260 ;) (param $0 i32) (result i32) - i32.const 7648 + (func $std/array/Ref#toString (; 261 ;) (param $0 i32) (result i32) + i32.const 7584 ) - (func $~lib/util/string/joinReferenceArray (; 261 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinReferenceArray (; 262 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -14790,7 +14804,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -14824,7 +14838,7 @@ local.get $5 call $std/array/Ref#toString else - i32.const 5120 + i32.const 5056 end local.set $4 local.get $2 @@ -14834,7 +14848,7 @@ local.get $4 return end - i32.const 5120 + i32.const 5056 local.set $7 local.get $2 call $~lib/string/String#get:length @@ -14979,7 +14993,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 262 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 263 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -15002,7 +15016,7 @@ local.get $4 return ) - (func $~lib/util/string/joinReferenceArray (; 263 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinReferenceArray (; 264 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15024,7 +15038,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -15058,7 +15072,7 @@ local.get $5 call $std/array/Ref#toString else - i32.const 5120 + i32.const 5056 end local.set $4 local.get $2 @@ -15068,7 +15082,7 @@ local.get $4 return end - i32.const 5120 + i32.const 5056 local.set $7 local.get $2 call $~lib/string/String#get:length @@ -15213,7 +15227,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 264 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 265 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -15236,12 +15250,12 @@ local.get $4 return ) - (func $~lib/array/Array#toString (; 265 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 266 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join ) - (func $~lib/util/number/itoa (; 266 ;) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 267 ;) (param $0 i32) (result i32) local.get $0 i32.const 24 i32.shl @@ -15250,7 +15264,7 @@ call $~lib/util/number/itoa32 return ) - (func $~lib/util/number/itoa_stream (; 267 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 268 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15323,7 +15337,7 @@ end local.get $3 ) - (func $~lib/util/string/joinIntegerArray (; 268 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinIntegerArray (; 269 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15343,7 +15357,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -15466,7 +15480,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 269 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 270 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -15489,19 +15503,19 @@ local.get $4 return ) - (func $~lib/array/Array#toString (; 270 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 271 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join ) - (func $~lib/util/number/itoa (; 271 ;) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 272 ;) (param $0 i32) (result i32) local.get $0 i32.const 65535 i32.and call $~lib/util/number/utoa32 return ) - (func $~lib/util/number/itoa_stream (; 272 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 273 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15544,7 +15558,7 @@ call $~lib/util/number/utoa32_lut local.get $3 ) - (func $~lib/util/string/joinIntegerArray (; 273 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinIntegerArray (; 274 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -15564,7 +15578,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -15687,7 +15701,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 274 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 275 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -15710,12 +15724,12 @@ local.get $4 return ) - (func $~lib/array/Array#toString (; 275 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 276 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join ) - (func $~lib/util/number/decimalCount64 (; 276 ;) (param $0 i64) (result i32) + (func $~lib/util/number/decimalCount64 (; 277 ;) (param $0 i64) (result i32) (local $1 i32) local.get $0 i64.const 1000000000000000 @@ -15788,7 +15802,7 @@ end unreachable ) - (func $~lib/util/number/utoa64_lut (; 277 ;) (param $0 i32) (param $1 i64) (param $2 i32) + (func $~lib/util/number/utoa64_lut (; 278 ;) (param $0 i32) (param $1 i64) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i64) @@ -15801,7 +15815,7 @@ (local $12 i32) (local $13 i64) (local $14 i64) - i32.const 5920 + i32.const 5856 i32.load offset=4 local.set $3 loop $while-continue|0 @@ -15915,7 +15929,7 @@ local.get $2 call $~lib/util/number/utoa32_lut ) - (func $~lib/util/number/utoa64 (; 278 ;) (param $0 i64) (result i32) + (func $~lib/util/number/utoa64 (; 279 ;) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -15928,7 +15942,7 @@ i64.ne i32.eqz if - i32.const 5472 + i32.const 5408 return end local.get $0 @@ -15981,12 +15995,12 @@ local.get $1 call $~lib/rt/pure/__retain ) - (func $~lib/util/number/itoa (; 279 ;) (param $0 i64) (result i32) + (func $~lib/util/number/itoa (; 280 ;) (param $0 i64) (result i32) local.get $0 call $~lib/util/number/utoa64 return ) - (func $~lib/util/number/itoa_stream (; 280 ;) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) + (func $~lib/util/number/itoa_stream (; 281 ;) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16049,7 +16063,7 @@ end local.get $3 ) - (func $~lib/util/string/joinIntegerArray (; 281 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinIntegerArray (; 282 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16069,7 +16083,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -16192,7 +16206,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 282 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 283 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -16215,12 +16229,12 @@ local.get $4 return ) - (func $~lib/array/Array#toString (; 283 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 284 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join ) - (func $~lib/util/number/itoa64 (; 284 ;) (param $0 i64) (result i32) + (func $~lib/util/number/itoa64 (; 285 ;) (param $0 i64) (result i32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -16234,7 +16248,7 @@ i64.ne i32.eqz if - i32.const 5472 + i32.const 5408 return end local.get $0 @@ -16308,12 +16322,12 @@ local.get $2 call $~lib/rt/pure/__retain ) - (func $~lib/util/number/itoa (; 285 ;) (param $0 i64) (result i32) + (func $~lib/util/number/itoa (; 286 ;) (param $0 i64) (result i32) local.get $0 call $~lib/util/number/itoa64 return ) - (func $~lib/util/number/itoa_stream (; 286 ;) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) + (func $~lib/util/number/itoa_stream (; 287 ;) (param $0 i32) (param $1 i32) (param $2 i64) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16398,7 +16412,7 @@ end local.get $3 ) - (func $~lib/util/string/joinIntegerArray (; 287 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinIntegerArray (; 288 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16418,7 +16432,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -16541,7 +16555,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 288 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 289 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -16564,17 +16578,17 @@ local.get $4 return ) - (func $~lib/array/Array#toString (; 289 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 290 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join ) - (func $~lib/array/Array<~lib/string/String | null>#toString (; 290 ;) (param $0 i32) (result i32) + (func $~lib/array/Array<~lib/string/String | null>#toString (; 291 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array<~lib/string/String | null>#join ) - (func $~lib/util/string/joinReferenceArray<~lib/array/Array> (; 291 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinReferenceArray<~lib/array/Array> (; 292 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16596,7 +16610,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -16630,7 +16644,7 @@ local.get $5 call $~lib/array/Array#toString else - i32.const 5120 + i32.const 5056 end local.set $4 local.get $2 @@ -16640,7 +16654,7 @@ local.get $4 return end - i32.const 5120 + i32.const 5056 local.set $7 local.get $2 call $~lib/string/String#get:length @@ -16785,7 +16799,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array<~lib/array/Array>#join (; 292 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#join (; 293 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -16808,19 +16822,19 @@ local.get $4 return ) - (func $~lib/array/Array<~lib/array/Array>#toString (; 293 ;) (param $0 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#toString (; 294 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array<~lib/array/Array>#join ) - (func $~lib/util/number/itoa (; 294 ;) (param $0 i32) (result i32) + (func $~lib/util/number/itoa (; 295 ;) (param $0 i32) (result i32) local.get $0 i32.const 255 i32.and call $~lib/util/number/utoa32 return ) - (func $~lib/util/number/itoa_stream (; 295 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/number/itoa_stream (; 296 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16863,7 +16877,7 @@ call $~lib/util/number/utoa32_lut local.get $3 ) - (func $~lib/util/string/joinIntegerArray (; 296 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinIntegerArray (; 297 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -16883,7 +16897,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -17006,7 +17020,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array#join (; 297 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array#join (; 298 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -17029,12 +17043,12 @@ local.get $4 return ) - (func $~lib/array/Array#toString (; 298 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 299 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join ) - (func $~lib/util/string/joinReferenceArray<~lib/array/Array> (; 299 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinReferenceArray<~lib/array/Array> (; 300 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -17056,7 +17070,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -17090,7 +17104,7 @@ local.get $5 call $~lib/array/Array#toString else - i32.const 5120 + i32.const 5056 end local.set $4 local.get $2 @@ -17100,7 +17114,7 @@ local.get $4 return end - i32.const 5120 + i32.const 5056 local.set $7 local.get $2 call $~lib/string/String#get:length @@ -17245,7 +17259,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array<~lib/array/Array>#join (; 300 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#join (; 301 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -17268,17 +17282,17 @@ local.get $4 return ) - (func $~lib/array/Array<~lib/array/Array>#toString (; 301 ;) (param $0 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#toString (; 302 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array<~lib/array/Array>#join ) - (func $~lib/array/Array#toString (; 302 ;) (param $0 i32) (result i32) + (func $~lib/array/Array#toString (; 303 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join ) - (func $~lib/util/string/joinReferenceArray<~lib/array/Array> (; 303 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinReferenceArray<~lib/array/Array> (; 304 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -17300,7 +17314,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -17334,7 +17348,7 @@ local.get $5 call $~lib/array/Array#toString else - i32.const 5120 + i32.const 5056 end local.set $4 local.get $2 @@ -17344,7 +17358,7 @@ local.get $4 return end - i32.const 5120 + i32.const 5056 local.set $7 local.get $2 call $~lib/string/String#get:length @@ -17489,7 +17503,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array<~lib/array/Array>#join (; 304 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#join (; 305 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -17512,12 +17526,12 @@ local.get $4 return ) - (func $~lib/array/Array<~lib/array/Array>#toString (; 305 ;) (param $0 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array>#toString (; 306 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array<~lib/array/Array>#join ) - (func $~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> (; 306 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) + (func $~lib/util/string/joinReferenceArray<~lib/array/Array<~lib/array/Array>> (; 307 ;) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (local $3 i32) (local $4 i32) (local $5 i32) @@ -17539,7 +17553,7 @@ i32.const 0 i32.lt_s if - i32.const 5120 + i32.const 5056 local.set $4 local.get $2 call $~lib/rt/pure/__release @@ -17573,7 +17587,7 @@ local.get $5 call $~lib/array/Array<~lib/array/Array>#toString else - i32.const 5120 + i32.const 5056 end local.set $4 local.get $2 @@ -17583,7 +17597,7 @@ local.get $4 return end - i32.const 5120 + i32.const 5056 local.set $7 local.get $2 call $~lib/string/String#get:length @@ -17728,7 +17742,7 @@ call $~lib/rt/pure/__release local.get $4 ) - (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#join (; 307 ;) (param $0 i32) (param $1 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#join (; 308 ;) (param $0 i32) (param $1 i32) (result i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -17751,12 +17765,12 @@ local.get $4 return ) - (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#toString (; 308 ;) (param $0 i32) (result i32) + (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#toString (; 309 ;) (param $0 i32) (result i32) local.get $0 - i32.const 5360 + i32.const 5296 call $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#join ) - (func $start:std/array (; 309 ;) + (func $start:std/array (; 310 ;) (local $0 i32) (local $1 i32) (local $2 i32) @@ -22606,13 +22620,10 @@ i32.const 3 call $~lib/array/Array#push drop - call $~lib/bindings/Math/random - i64.reinterpret_f64 - call $~lib/math/NativeMath.seedRandom i32.const 8 i32.const 2 i32.const 9 - i32.const 4272 + i32.const 4224 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $55 @@ -22626,7 +22637,7 @@ i32.const 8 i32.const 2 i32.const 9 - i32.const 4320 + i32.const 4272 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $56 @@ -22636,7 +22647,7 @@ if i32.const 0 i32.const 304 - i32.const 892 + i32.const 890 i32.const 2 call $~lib/builtins/abort unreachable @@ -22644,7 +22655,7 @@ i32.const 8 i32.const 3 i32.const 10 - i32.const 4368 + i32.const 4320 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $58 @@ -22658,7 +22669,7 @@ i32.const 8 i32.const 3 i32.const 10 - i32.const 4448 + i32.const 4400 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $57 @@ -22668,7 +22679,7 @@ if i32.const 0 i32.const 304 - i32.const 896 + i32.const 894 i32.const 2 call $~lib/builtins/abort unreachable @@ -22676,7 +22687,7 @@ i32.const 5 i32.const 2 i32.const 3 - i32.const 4528 + i32.const 4480 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $54 @@ -22690,7 +22701,7 @@ i32.const 5 i32.const 2 i32.const 3 - i32.const 4576 + i32.const 4528 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $53 @@ -22700,7 +22711,7 @@ if i32.const 0 i32.const 304 - i32.const 900 + i32.const 898 i32.const 2 call $~lib/builtins/abort unreachable @@ -22708,7 +22719,7 @@ i32.const 5 i32.const 2 i32.const 7 - i32.const 4624 + i32.const 4576 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $52 @@ -22722,7 +22733,7 @@ i32.const 5 i32.const 2 i32.const 7 - i32.const 4672 + i32.const 4624 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $44 @@ -22732,7 +22743,7 @@ if i32.const 0 i32.const 304 - i32.const 904 + i32.const 902 i32.const 2 call $~lib/builtins/abort unreachable @@ -22740,35 +22751,35 @@ i32.const 0 i32.const 2 i32.const 3 - i32.const 4720 + i32.const 4672 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $41 i32.const 1 i32.const 2 i32.const 3 - i32.const 4736 + i32.const 4688 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $51 i32.const 2 i32.const 2 i32.const 3 - i32.const 4768 + i32.const 4720 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $50 i32.const 4 i32.const 2 i32.const 3 - i32.const 4800 + i32.const 4752 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $49 i32.const 4 i32.const 2 i32.const 3 - i32.const 4832 + i32.const 4784 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $48 @@ -22795,7 +22806,7 @@ i32.const 1 i32.const 2 i32.const 3 - i32.const 4928 + i32.const 4864 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $39 @@ -22805,7 +22816,7 @@ if i32.const 0 i32.const 304 - i32.const 924 + i32.const 922 i32.const 2 call $~lib/builtins/abort unreachable @@ -22816,7 +22827,7 @@ i32.const 2 i32.const 2 i32.const 3 - i32.const 4960 + i32.const 4896 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $35 @@ -22826,7 +22837,7 @@ if i32.const 0 i32.const 304 - i32.const 927 + i32.const 925 i32.const 2 call $~lib/builtins/abort unreachable @@ -22841,7 +22852,7 @@ if i32.const 0 i32.const 304 - i32.const 930 + i32.const 928 i32.const 2 call $~lib/builtins/abort unreachable @@ -22856,7 +22867,7 @@ if i32.const 0 i32.const 304 - i32.const 933 + i32.const 931 i32.const 2 call $~lib/builtins/abort unreachable @@ -22871,7 +22882,7 @@ if i32.const 0 i32.const 304 - i32.const 936 + i32.const 934 i32.const 2 call $~lib/builtins/abort unreachable @@ -22886,7 +22897,7 @@ if i32.const 0 i32.const 304 - i32.const 939 + i32.const 937 i32.const 2 call $~lib/builtins/abort unreachable @@ -22901,7 +22912,7 @@ if i32.const 0 i32.const 304 - i32.const 942 + i32.const 940 i32.const 2 call $~lib/builtins/abort unreachable @@ -22989,14 +23000,14 @@ i32.const 7 i32.const 2 i32.const 15 - i32.const 5136 + i32.const 5072 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $35 i32.const 7 i32.const 2 i32.const 15 - i32.const 5184 + i32.const 5120 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $38 @@ -23013,7 +23024,7 @@ if i32.const 0 i32.const 304 - i32.const 979 + i32.const 977 i32.const 2 call $~lib/builtins/abort unreachable @@ -23035,20 +23046,20 @@ i32.const 2 i32.const 0 i32.const 17 - i32.const 5264 + i32.const 5200 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $38 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join local.tee $39 - i32.const 5392 + i32.const 5328 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 988 + i32.const 986 i32.const 2 call $~lib/builtins/abort unreachable @@ -23056,20 +23067,20 @@ i32.const 3 i32.const 2 i32.const 3 - i32.const 5440 + i32.const 5376 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $42 - i32.const 5120 + i32.const 5056 call $~lib/array/Array#join local.tee $35 - i32.const 5952 + i32.const 5888 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 989 + i32.const 987 i32.const 2 call $~lib/builtins/abort unreachable @@ -23077,20 +23088,20 @@ i32.const 3 i32.const 2 i32.const 7 - i32.const 5984 + i32.const 5920 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $47 - i32.const 6016 + i32.const 5952 call $~lib/array/Array#join local.tee $43 - i32.const 5952 + i32.const 5888 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 990 + i32.const 988 i32.const 2 call $~lib/builtins/abort unreachable @@ -23098,20 +23109,20 @@ i32.const 2 i32.const 2 i32.const 3 - i32.const 6048 + i32.const 5984 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $48 - i32.const 6080 + i32.const 6016 call $~lib/array/Array#join local.tee $61 - i32.const 6112 + i32.const 6048 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 991 + i32.const 989 i32.const 2 call $~lib/builtins/abort unreachable @@ -23119,20 +23130,20 @@ i32.const 6 i32.const 3 i32.const 10 - i32.const 6176 + i32.const 6112 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $50 - i32.const 6240 + i32.const 6176 call $~lib/array/Array#join local.tee $49 - i32.const 7488 + i32.const 7424 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 992 + i32.const 990 i32.const 2 call $~lib/builtins/abort unreachable @@ -23140,20 +23151,20 @@ i32.const 3 i32.const 2 i32.const 15 - i32.const 7616 + i32.const 7552 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $41 - i32.const 5120 + i32.const 5056 call $~lib/array/Array<~lib/string/String | null>#join local.tee $51 - i32.const 7584 + i32.const 7520 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 993 + i32.const 991 i32.const 2 call $~lib/builtins/abort unreachable @@ -23189,16 +23200,16 @@ local.get $44 local.set $52 local.get $52 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join local.tee $44 - i32.const 7696 + i32.const 7632 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 995 + i32.const 993 i32.const 2 call $~lib/builtins/abort unreachable @@ -23230,16 +23241,16 @@ local.get $57 local.set $58 local.get $58 - i32.const 5360 + i32.const 5296 call $~lib/array/Array#join local.tee $57 - i32.const 7776 + i32.const 7712 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 998 + i32.const 996 i32.const 2 call $~lib/builtins/abort unreachable @@ -23287,41 +23298,41 @@ i32.const 0 i32.const 2 i32.const 3 - i32.const 7856 + i32.const 7792 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $58 i32.const 1 i32.const 2 i32.const 3 - i32.const 7872 + i32.const 7808 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $55 i32.const 2 i32.const 2 i32.const 3 - i32.const 7904 + i32.const 7840 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $56 i32.const 4 i32.const 2 i32.const 3 - i32.const 7936 + i32.const 7872 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $44 local.get $58 call $~lib/array/Array#toString local.tee $57 - i32.const 5120 + i32.const 5056 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1008 + i32.const 1006 i32.const 2 call $~lib/builtins/abort unreachable @@ -23329,13 +23340,13 @@ local.get $55 call $~lib/array/Array#toString local.tee $52 - i32.const 7584 + i32.const 7520 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1009 + i32.const 1007 i32.const 2 call $~lib/builtins/abort unreachable @@ -23343,13 +23354,13 @@ local.get $56 call $~lib/array/Array#toString local.tee $54 - i32.const 7968 + i32.const 7904 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1010 + i32.const 1008 i32.const 2 call $~lib/builtins/abort unreachable @@ -23357,13 +23368,13 @@ local.get $44 call $~lib/array/Array#toString local.tee $53 - i32.const 8000 + i32.const 7936 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1011 + i32.const 1009 i32.const 2 call $~lib/builtins/abort unreachable @@ -23371,19 +23382,19 @@ i32.const 3 i32.const 0 i32.const 20 - i32.const 8032 + i32.const 7968 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $41 call $~lib/array/Array#toString local.tee $51 - i32.const 8064 + i32.const 8000 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1013 + i32.const 1011 i32.const 2 call $~lib/builtins/abort unreachable @@ -23391,19 +23402,19 @@ i32.const 3 i32.const 1 i32.const 21 - i32.const 8096 + i32.const 8032 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $50 call $~lib/array/Array#toString local.tee $49 - i32.const 8128 + i32.const 8064 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1014 + i32.const 1012 i32.const 2 call $~lib/builtins/abort unreachable @@ -23411,19 +23422,19 @@ i32.const 3 i32.const 3 i32.const 18 - i32.const 8176 + i32.const 8112 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $48 call $~lib/array/Array#toString local.tee $61 - i32.const 8224 + i32.const 8160 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1015 + i32.const 1013 i32.const 2 call $~lib/builtins/abort unreachable @@ -23431,19 +23442,19 @@ i32.const 4 i32.const 3 i32.const 22 - i32.const 8288 + i32.const 8224 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $47 call $~lib/array/Array#toString local.tee $43 - i32.const 8336 + i32.const 8272 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1016 + i32.const 1014 i32.const 2 call $~lib/builtins/abort unreachable @@ -23451,20 +23462,20 @@ i32.const 7 i32.const 2 i32.const 15 - i32.const 8448 + i32.const 8384 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.set $42 local.get $42 call $~lib/array/Array<~lib/string/String | null>#toString local.tee $35 - i32.const 8496 + i32.const 8432 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1020 + i32.const 1018 i32.const 2 call $~lib/builtins/abort unreachable @@ -23472,19 +23483,19 @@ i32.const 4 i32.const 2 i32.const 15 - i32.const 8608 + i32.const 8544 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $38 call $~lib/array/Array<~lib/string/String | null>#toString local.tee $39 - i32.const 8640 + i32.const 8576 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1021 + i32.const 1019 i32.const 2 call $~lib/builtins/abort unreachable @@ -23503,7 +23514,7 @@ i32.const 2 i32.const 2 i32.const 3 - i32.const 8672 + i32.const 8608 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $32 @@ -23513,7 +23524,7 @@ i32.const 2 i32.const 2 i32.const 3 - i32.const 8704 + i32.const 8640 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $34 @@ -23524,13 +23535,13 @@ local.get $63 call $~lib/array/Array<~lib/array/Array>#toString local.tee $37 - i32.const 8736 + i32.const 8672 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1024 + i32.const 1022 i32.const 2 call $~lib/builtins/abort unreachable @@ -23549,7 +23560,7 @@ i32.const 2 i32.const 0 i32.const 6 - i32.const 8768 + i32.const 8704 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $29 @@ -23559,7 +23570,7 @@ i32.const 2 i32.const 0 i32.const 6 - i32.const 8800 + i32.const 8736 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $31 @@ -23570,13 +23581,13 @@ local.get $64 call $~lib/array/Array<~lib/array/Array>#toString local.tee $36 - i32.const 8736 + i32.const 8672 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1027 + i32.const 1025 i32.const 2 call $~lib/builtins/abort unreachable @@ -23606,7 +23617,7 @@ i32.const 1 i32.const 2 i32.const 7 - i32.const 8832 + i32.const 8768 call $~lib/rt/__allocArray call $~lib/rt/pure/__retain local.tee $27 @@ -23621,13 +23632,13 @@ local.get $65 call $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#toString local.tee $33 - i32.const 7584 + i32.const 7520 call $~lib/string/String.__eq i32.eqz if i32.const 0 i32.const 304 - i32.const 1030 + i32.const 1028 i32.const 2 call $~lib/builtins/abort unreachable @@ -23707,7 +23718,7 @@ local.get $65 call $~lib/rt/pure/__release ) - (func $~start (; 310 ;) + (func $~start (; 311 ;) global.get $~started if return @@ -23717,10 +23728,10 @@ end call $start:std/array ) - (func $~lib/rt/pure/__collect (; 311 ;) + (func $~lib/rt/pure/__collect (; 312 ;) return ) - (func $~lib/rt/pure/decrement (; 312 ;) (param $0 i32) + (func $~lib/rt/pure/decrement (; 313 ;) (param $0 i32) (local $1 i32) (local $2 i32) local.get $0 @@ -23797,7 +23808,7 @@ i32.store offset=4 end ) - (func $~lib/rt/pure/__visit (; 313 ;) (param $0 i32) (param $1 i32) + (func $~lib/rt/pure/__visit (; 314 ;) (param $0 i32) (param $1 i32) local.get $0 global.get $~lib/heap/__heap_base i32.lt_u @@ -23821,16 +23832,16 @@ i32.sub call $~lib/rt/pure/decrement ) - (func $~lib/array/Array#__visit_impl (; 314 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 315 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 315 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 316 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 316 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 317 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 317 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 318 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -23869,13 +23880,13 @@ end end ) - (func $~lib/array/Array#__visit_impl (; 318 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 319 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 319 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 320 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 320 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 321 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -23914,7 +23925,7 @@ end end ) - (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 321 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 322 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -23953,7 +23964,7 @@ end end ) - (func $~lib/array/Array>#__visit_impl (; 322 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array>#__visit_impl (; 323 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -23992,7 +24003,7 @@ end end ) - (func $~lib/array/Array<~lib/string/String | null>#__visit_impl (; 323 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array<~lib/string/String | null>#__visit_impl (; 324 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -24031,7 +24042,7 @@ end end ) - (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 324 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array<~lib/string/String>#__visit_impl (; 325 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -24070,25 +24081,25 @@ end end ) - (func $~lib/array/Array#__visit_impl (; 325 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 326 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 326 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 327 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 327 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 328 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 328 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 329 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 329 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 330 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array#__visit_impl (; 330 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array#__visit_impl (; 331 ;) (param $0 i32) (param $1 i32) nop ) - (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 331 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 332 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -24127,7 +24138,7 @@ end end ) - (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 332 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array<~lib/array/Array>#__visit_impl (; 333 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -24166,7 +24177,7 @@ end end ) - (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#__visit_impl (; 333 ;) (param $0 i32) (param $1 i32) + (func $~lib/array/Array<~lib/array/Array<~lib/array/Array>>#__visit_impl (; 334 ;) (param $0 i32) (param $1 i32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -24205,7 +24216,7 @@ end end ) - (func $~lib/rt/__visit_members (; 334 ;) (param $0 i32) (param $1 i32) + (func $~lib/rt/__visit_members (; 335 ;) (param $0 i32) (param $1 i32) (local $2 i32) block $block$4$break block $switch$1$default diff --git a/tests/compiler/std/math.json b/tests/compiler/std/math.json index b1da366ff4..49cb5d56a4 100644 --- a/tests/compiler/std/math.json +++ b/tests/compiler/std/math.json @@ -1,5 +1,6 @@ { "asc_flags": [ - "--runtime none" + "--runtime none", + "--seedRandom math" ] } \ No newline at end of file diff --git a/tests/compiler/std/math.optimized.wat b/tests/compiler/std/math.optimized.wat index ff1ea500bc..3a9fc610e8 100644 --- a/tests/compiler/std/math.optimized.wat +++ b/tests/compiler/std/math.optimized.wat @@ -22,6 +22,7 @@ (type $f32_i32_f32_=>_i32 (func (param f32 i32 f32) (result i32))) (type $f64_=>_i32 (func (param f64) (result i32))) (type $f64_i32_f64_=>_i32 (func (param f64 i32 f64) (result i32))) + (type $none_=>_i64 (func (result i64))) (type $i64_=>_i64 (func (param i64) (result i64))) (type $i64_i32_=>_i64 (func (param i64 i32) (result i64))) (type $none_=>_f32 (func (result f32))) @@ -81,7 +82,6 @@ (data (i32.const 2785) "\01\00\00\01\00\00\00\00\00\00\00\00\01\00\00\be\f3\f8y\eca\f6?\190\96[\c6\fe\de\bf=\88\afJ\edq\f5?\a4\fc\d42h\0b\db\bf\b0\10\f0\f09\95\f4?{\b7\1f\n\8bA\d7\bf\85\03\b8\b0\95\c9\f3?{\cfm\1a\e9\9d\d3\bf\a5d\88\0c\19\0d\f3?1\b6\f2\f3\9b\1d\d0\bf\a0\8e\0b{\"^\f2?\f0z;\1b\1d|\c9\bf?4\1aJJ\bb\f1?\9f<\af\93\e3\f9\c2\bf\ba\e5\8a\f0X#\f1?\\\8dx\bf\cb`\b9\bf\a7\00\99A?\95\f0?\ce_G\b6\9do\aa\bf\00\00\00\00\00\00\f0?\00\00\00\00\00\00\00\00\acG\9a\fd\8c`\ee?=\f5$\9f\ca8\b3?\a0j\02\1f\b3\a4\ec?\ba\918T\a9v\c4?\e6\fcjW6 \eb?\d2\e4\c4J\0b\84\ce?-\aa\a1c\d1\c2\e9?\1ce\c6\f0E\06\d4?\edAx\03\e6\86\e8?\f8\9f\1b,\9c\8e\d8?bHS\f5\dcg\e7?\cc{\b1N\a4\e0\dc?") (data (i32.const 3056) "\10\00\00\00\01\00\00\00\04\00\00\00\10\00\00\00\f0\n\00\00\f0\n\00\00\00\01\00\00 ") (data (i32.const 3088) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s") - (data (i32.const 3136) "(\00\00\00\01\00\00\00\01\00\00\00(\00\00\00P\00R\00N\00G\00 \00m\00u\00s\00t\00 \00b\00e\00 \00s\00e\00e\00d\00e\00d\00.") (global $~lib/math/rempio2_y0 (mut f64) (f64.const 0)) (global $~lib/math/rempio2_y1 (mut f64) (f64.const 0)) (global $~lib/math/res128_hi (mut i64) (i64.const 0)) @@ -8559,7 +8559,18 @@ local.get $3 call $std/math/check ) - (func $~lib/math/murmurHash3 (; 133 ;) (param $0 i64) (result i64) + (func $~lib/math/seedRandomSelect (; 133 ;) (result i64) + (local $0 i64) + loop $do-continue|0 + call $~lib/bindings/Math/random + i64.reinterpret_f64 + local.tee $0 + i64.eqz + br_if $do-continue|0 + end + local.get $0 + ) + (func $~lib/math/murmurHash3 (; 134 ;) (param $0 i64) (result i64) local.get $0 local.get $0 i64.const 33 @@ -8580,7 +8591,7 @@ i64.shr_u i64.xor ) - (func $~lib/math/splitMix32 (; 134 ;) (param $0 i32) (result i32) + (func $~lib/math/splitMix32 (; 135 ;) (param $0 i32) (result i32) local.get $0 i32.const 1831565813 i32.add @@ -8612,7 +8623,7 @@ i32.shr_u i32.xor ) - (func $~lib/math/NativeMath.seedRandom (; 135 ;) (param $0 i64) + (func $~lib/math/NativeMath.seedRandom (; 136 ;) (param $0 i64) i32.const 1 global.set $~lib/math/random_seeded local.get $0 @@ -8650,24 +8661,20 @@ if i32.const 0 i32.const 3104 - i32.const 1406 + i32.const 1412 i32.const 4 call $~lib/builtins/abort unreachable end ) - (func $~lib/math/NativeMath.random (; 136 ;) (result f64) + (func $~lib/math/NativeMath.random (; 137 ;) (result f64) (local $0 i64) (local $1 i64) global.get $~lib/math/random_seeded i32.eqz if - i32.const 3152 - i32.const 3104 - i32.const 1413 - i32.const 24 - call $~lib/builtins/abort - unreachable + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_64 local.set $0 @@ -8700,18 +8707,14 @@ f64.const 1 f64.sub ) - (func $~lib/math/NativeMathf.random (; 137 ;) (result f32) + (func $~lib/math/NativeMathf.random (; 138 ;) (result f32) (local $0 i32) (local $1 i32) global.get $~lib/math/random_seeded i32.eqz if - i32.const 3152 - i32.const 3104 - i32.const 2606 - i32.const 24 - call $~lib/builtins/abort - unreachable + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_32 local.tee $0 @@ -8746,7 +8749,7 @@ f32.const 1 f32.sub ) - (func $std/math/test_round (; 138 ;) (param $0 f64) (param $1 f64) (result i32) + (func $std/math/test_round (; 139 ;) (param $0 f64) (param $1 f64) (result i32) local.get $0 f64.const 0.5 f64.add @@ -8757,7 +8760,7 @@ f64.const 0 call $std/math/check ) - (func $std/math/test_roundf (; 139 ;) (param $0 f32) (param $1 f32) (result i32) + (func $std/math/test_roundf (; 140 ;) (param $0 f32) (param $1 f32) (result i32) local.get $0 f32.const 0.5 f32.add @@ -8768,7 +8771,7 @@ f32.const 0 call $std/math/check ) - (func $std/math/test_sign (; 140 ;) (param $0 f64) (param $1 f64) (result i32) + (func $std/math/test_sign (; 141 ;) (param $0 f64) (param $1 f64) (result i32) f64.const 1 local.get $0 f64.copysign @@ -8791,7 +8794,7 @@ i32.const 0 end ) - (func $std/math/test_signf (; 141 ;) (param $0 f32) (param $1 f32) (result i32) + (func $std/math/test_signf (; 142 ;) (param $0 f32) (param $1 f32) (result i32) f32.const 1 local.get $0 f32.copysign @@ -8805,7 +8808,7 @@ f32.const 0 call $std/math/check ) - (func $~lib/math/NativeMath.rem (; 142 ;) (param $0 f64) (param $1 f64) (result f64) + (func $~lib/math/NativeMath.rem (; 143 ;) (param $0 f64) (param $1 f64) (result f64) (local $2 i64) (local $3 i64) (local $4 i64) @@ -9054,7 +9057,7 @@ end local.get $0 ) - (func $std/math/test_rem (; 143 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) + (func $std/math/test_rem (; 144 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) local.get $0 local.get $1 call $~lib/math/NativeMath.rem @@ -9062,7 +9065,7 @@ f64.const 0 call $std/math/check ) - (func $~lib/math/NativeMathf.rem (; 144 ;) (param $0 f32) (param $1 f32) (result f32) + (func $~lib/math/NativeMathf.rem (; 145 ;) (param $0 f32) (param $1 f32) (result f32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -9303,7 +9306,7 @@ end local.get $0 ) - (func $std/math/test_remf (; 145 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) + (func $std/math/test_remf (; 146 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) local.get $0 local.get $1 call $~lib/math/NativeMathf.rem @@ -9311,7 +9314,7 @@ f32.const 0 call $std/math/check ) - (func $~lib/math/NativeMath.sin (; 146 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.sin (; 147 ;) (param $0 f64) (result f64) (local $1 f64) (local $2 f64) (local $3 f64) @@ -9631,7 +9634,7 @@ end local.get $0 ) - (func $std/math/test_sin (; 147 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) + (func $std/math/test_sin (; 148 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) local.get $0 call $~lib/math/NativeMath.sin local.get $1 @@ -9647,7 +9650,7 @@ i32.const 0 end ) - (func $~lib/math/NativeMathf.sin (; 148 ;) (param $0 f32) (result f32) + (func $~lib/math/NativeMathf.sin (; 149 ;) (param $0 f32) (result f32) (local $1 f64) (local $2 i32) (local $3 f64) @@ -9918,14 +9921,14 @@ end local.get $0 ) - (func $std/math/test_sinf (; 149 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) + (func $std/math/test_sinf (; 150 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) local.get $0 call $~lib/math/NativeMathf.sin local.get $1 local.get $2 call $std/math/check ) - (func $~lib/math/NativeMath.sinh (; 150 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.sinh (; 151 ;) (param $0 f64) (result f64) (local $1 f64) (local $2 f64) (local $3 i32) @@ -10002,7 +10005,7 @@ f64.mul f64.mul ) - (func $std/math/test_sinh (; 151 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) + (func $std/math/test_sinh (; 152 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) local.get $0 call $~lib/math/NativeMath.sinh local.get $1 @@ -10018,7 +10021,7 @@ i32.const 0 end ) - (func $~lib/math/NativeMathf.sinh (; 152 ;) (param $0 f32) (result f32) + (func $~lib/math/NativeMathf.sinh (; 153 ;) (param $0 f32) (result f32) (local $1 f32) (local $2 i32) (local $3 f32) @@ -10090,14 +10093,14 @@ f32.mul f32.mul ) - (func $std/math/test_sinhf (; 153 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) + (func $std/math/test_sinhf (; 154 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) local.get $0 call $~lib/math/NativeMathf.sinh local.get $1 local.get $2 call $std/math/check ) - (func $std/math/test_sqrt (; 154 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) + (func $std/math/test_sqrt (; 155 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) local.get $0 f64.sqrt local.get $1 @@ -10113,14 +10116,14 @@ i32.const 0 end ) - (func $std/math/test_sqrtf (; 155 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) + (func $std/math/test_sqrtf (; 156 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) local.get $0 f32.sqrt local.get $1 local.get $2 call $std/math/check ) - (func $~lib/math/tan_kern (; 156 ;) (param $0 f64) (param $1 f64) (param $2 i32) (result f64) + (func $~lib/math/tan_kern (; 157 ;) (param $0 f64) (param $1 f64) (param $2 i32) (result f64) (local $3 f64) (local $4 f64) (local $5 f64) @@ -10302,7 +10305,7 @@ f64.mul f64.add ) - (func $~lib/math/NativeMath.tan (; 157 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.tan (; 158 ;) (param $0 f64) (result f64) (local $1 f64) (local $2 i32) (local $3 f64) @@ -10479,7 +10482,7 @@ i32.sub call $~lib/math/tan_kern ) - (func $std/math/test_tan (; 158 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) + (func $std/math/test_tan (; 159 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) local.get $0 call $~lib/math/NativeMath.tan local.get $1 @@ -10495,7 +10498,7 @@ i32.const 0 end ) - (func $~lib/math/NativeMathf.tan (; 159 ;) (param $0 f32) (result f32) + (func $~lib/math/NativeMathf.tan (; 160 ;) (param $0 f32) (result f32) (local $1 f64) (local $2 i32) (local $3 f64) @@ -10750,14 +10753,14 @@ local.get $1 f32.demote_f64 ) - (func $std/math/test_tanf (; 160 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) + (func $std/math/test_tanf (; 161 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) local.get $0 call $~lib/math/NativeMathf.tan local.get $1 local.get $2 call $std/math/check ) - (func $~lib/math/NativeMath.tanh (; 161 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.tanh (; 162 ;) (param $0 f64) (result f64) (local $1 f64) (local $2 i32) (local $3 i64) @@ -10836,7 +10839,7 @@ local.get $0 f64.copysign ) - (func $std/math/test_tanh (; 162 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) + (func $std/math/test_tanh (; 163 ;) (param $0 f64) (param $1 f64) (param $2 f64) (result i32) local.get $0 call $~lib/math/NativeMath.tanh local.get $1 @@ -10852,7 +10855,7 @@ i32.const 0 end ) - (func $~lib/math/NativeMathf.tanh (; 163 ;) (param $0 f32) (result f32) + (func $~lib/math/NativeMathf.tanh (; 164 ;) (param $0 f32) (result f32) (local $1 f32) (local $2 i32) local.get $0 @@ -10926,14 +10929,14 @@ local.get $0 f32.copysign ) - (func $std/math/test_tanhf (; 164 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) + (func $std/math/test_tanhf (; 165 ;) (param $0 f32) (param $1 f32) (param $2 f32) (result i32) local.get $0 call $~lib/math/NativeMathf.tanh local.get $1 local.get $2 call $std/math/check ) - (func $std/math/test_trunc (; 165 ;) (param $0 f64) (param $1 f64) (result i32) + (func $std/math/test_trunc (; 166 ;) (param $0 f64) (param $1 f64) (result i32) local.get $0 f64.trunc local.get $1 @@ -10949,14 +10952,14 @@ i32.const 0 end ) - (func $std/math/test_truncf (; 166 ;) (param $0 f32) (param $1 f32) (result i32) + (func $std/math/test_truncf (; 167 ;) (param $0 f32) (param $1 f32) (result i32) local.get $0 f32.trunc local.get $1 f32.const 0 call $std/math/check ) - (func $~lib/math/NativeMath.sincos (; 167 ;) (param $0 f64) + (func $~lib/math/NativeMath.sincos (; 168 ;) (param $0 f64) (local $1 f64) (local $2 f64) (local $3 f64) @@ -11351,7 +11354,7 @@ local.get $1 global.set $~lib/math/NativeMath.sincos_cos ) - (func $std/math/test_sincos (; 168 ;) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) + (func $std/math/test_sincos (; 169 ;) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) (local $5 f64) (local $6 f64) local.get $3 @@ -11377,7 +11380,7 @@ drop end ) - (func $~lib/math/dtoi32 (; 169 ;) (param $0 f64) (result i32) + (func $~lib/math/dtoi32 (; 170 ;) (param $0 f64) (result i32) local.get $0 f64.const 4294967296 local.get $0 @@ -11389,7 +11392,7 @@ i64.trunc_f64_s i32.wrap_i64 ) - (func $~lib/math/NativeMath.imul (; 170 ;) (param $0 f64) (param $1 f64) (result f64) + (func $~lib/math/NativeMath.imul (; 171 ;) (param $0 f64) (param $1 f64) (result f64) (local $2 f64) local.get $0 local.get $1 @@ -11410,7 +11413,7 @@ i32.mul f64.convert_i32_s ) - (func $~lib/math/NativeMath.clz32 (; 171 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.clz32 (; 172 ;) (param $0 f64) (result f64) local.get $0 local.get $0 f64.sub @@ -11425,7 +11428,7 @@ i32.clz f64.convert_i32_s ) - (func $~lib/math/ipow64 (; 172 ;) (param $0 i64) (param $1 i32) (result i64) + (func $~lib/math/ipow64 (; 173 ;) (param $0 i64) (param $1 i32) (result i64) (local $2 i64) i64.const 1 local.set $2 @@ -11456,7 +11459,7 @@ end local.get $2 ) - (func $~lib/math/ipow32f (; 173 ;) (param $0 f32) (param $1 i32) (result f32) + (func $~lib/math/ipow32f (; 174 ;) (param $0 f32) (param $1 i32) (result f32) (local $2 f32) (local $3 i32) local.get $1 @@ -11502,7 +11505,7 @@ end local.get $2 ) - (func $~lib/math/ipow64f (; 174 ;) (param $0 f64) (param $1 i32) (result f64) + (func $~lib/math/ipow64f (; 175 ;) (param $0 f64) (param $1 i32) (result f64) (local $2 f64) (local $3 i32) local.get $1 @@ -11548,7 +11551,7 @@ end local.get $2 ) - (func $start:std/math (; 175 ;) + (func $start:std/math (; 176 ;) (local $0 f64) (local $1 f32) (local $2 i32) @@ -36885,9 +36888,6 @@ call $~lib/builtins/abort unreachable end - call $~lib/bindings/Math/random - i64.reinterpret_f64 - call $~lib/math/NativeMath.seedRandom loop $for-loop|0 local.get $2 f64.convert_i32_s @@ -36909,7 +36909,7 @@ if i32.const 0 i32.const 32 - i32.const 2850 + i32.const 2849 i32.const 2 call $~lib/builtins/abort unreachable @@ -36921,9 +36921,6 @@ br $for-loop|0 end end - call $~lib/bindings/Math/random - i64.reinterpret_f64 - call $~lib/math/NativeMath.seedRandom i32.const 0 local.set $2 loop $for-loop|1 @@ -36947,7 +36944,7 @@ if i32.const 0 i32.const 32 - i32.const 2858 + i32.const 2856 i32.const 2 call $~lib/builtins/abort unreachable @@ -36966,7 +36963,7 @@ if i32.const 0 i32.const 32 - i32.const 2872 + i32.const 2870 i32.const 0 call $~lib/builtins/abort unreachable @@ -36978,7 +36975,7 @@ if i32.const 0 i32.const 32 - i32.const 2873 + i32.const 2871 i32.const 0 call $~lib/builtins/abort unreachable @@ -36990,7 +36987,7 @@ if i32.const 0 i32.const 32 - i32.const 2874 + i32.const 2872 i32.const 0 call $~lib/builtins/abort unreachable @@ -37002,7 +36999,7 @@ if i32.const 0 i32.const 32 - i32.const 2875 + i32.const 2873 i32.const 0 call $~lib/builtins/abort unreachable @@ -37014,7 +37011,7 @@ if i32.const 0 i32.const 32 - i32.const 2876 + i32.const 2874 i32.const 0 call $~lib/builtins/abort unreachable @@ -37026,7 +37023,7 @@ if i32.const 0 i32.const 32 - i32.const 2877 + i32.const 2875 i32.const 0 call $~lib/builtins/abort unreachable @@ -37038,7 +37035,7 @@ if i32.const 0 i32.const 32 - i32.const 2878 + i32.const 2876 i32.const 0 call $~lib/builtins/abort unreachable @@ -37050,7 +37047,7 @@ if i32.const 0 i32.const 32 - i32.const 2879 + i32.const 2877 i32.const 0 call $~lib/builtins/abort unreachable @@ -37062,7 +37059,7 @@ if i32.const 0 i32.const 32 - i32.const 2880 + i32.const 2878 i32.const 0 call $~lib/builtins/abort unreachable @@ -37074,7 +37071,7 @@ if i32.const 0 i32.const 32 - i32.const 2881 + i32.const 2879 i32.const 0 call $~lib/builtins/abort unreachable @@ -37086,7 +37083,7 @@ if i32.const 0 i32.const 32 - i32.const 2884 + i32.const 2882 i32.const 0 call $~lib/builtins/abort unreachable @@ -37098,7 +37095,7 @@ if i32.const 0 i32.const 32 - i32.const 2885 + i32.const 2883 i32.const 0 call $~lib/builtins/abort unreachable @@ -37110,7 +37107,7 @@ if i32.const 0 i32.const 32 - i32.const 2886 + i32.const 2884 i32.const 0 call $~lib/builtins/abort unreachable @@ -37122,7 +37119,7 @@ if i32.const 0 i32.const 32 - i32.const 2887 + i32.const 2885 i32.const 0 call $~lib/builtins/abort unreachable @@ -37134,7 +37131,7 @@ if i32.const 0 i32.const 32 - i32.const 2888 + i32.const 2886 i32.const 0 call $~lib/builtins/abort unreachable @@ -37146,7 +37143,7 @@ if i32.const 0 i32.const 32 - i32.const 2889 + i32.const 2887 i32.const 0 call $~lib/builtins/abort unreachable @@ -37158,7 +37155,7 @@ if i32.const 0 i32.const 32 - i32.const 2890 + i32.const 2888 i32.const 0 call $~lib/builtins/abort unreachable @@ -37170,7 +37167,7 @@ if i32.const 0 i32.const 32 - i32.const 2891 + i32.const 2889 i32.const 0 call $~lib/builtins/abort unreachable @@ -37182,7 +37179,7 @@ if i32.const 0 i32.const 32 - i32.const 2892 + i32.const 2890 i32.const 0 call $~lib/builtins/abort unreachable @@ -37194,7 +37191,7 @@ if i32.const 0 i32.const 32 - i32.const 2893 + i32.const 2891 i32.const 0 call $~lib/builtins/abort unreachable @@ -37206,7 +37203,7 @@ if i32.const 0 i32.const 32 - i32.const 2894 + i32.const 2892 i32.const 0 call $~lib/builtins/abort unreachable @@ -37218,7 +37215,7 @@ if i32.const 0 i32.const 32 - i32.const 2895 + i32.const 2893 i32.const 0 call $~lib/builtins/abort unreachable @@ -37230,7 +37227,7 @@ if i32.const 0 i32.const 32 - i32.const 2896 + i32.const 2894 i32.const 0 call $~lib/builtins/abort unreachable @@ -37242,7 +37239,7 @@ if i32.const 0 i32.const 32 - i32.const 2897 + i32.const 2895 i32.const 0 call $~lib/builtins/abort unreachable @@ -37254,7 +37251,7 @@ if i32.const 0 i32.const 32 - i32.const 2898 + i32.const 2896 i32.const 0 call $~lib/builtins/abort unreachable @@ -37266,7 +37263,7 @@ if i32.const 0 i32.const 32 - i32.const 2899 + i32.const 2897 i32.const 0 call $~lib/builtins/abort unreachable @@ -37278,7 +37275,7 @@ if i32.const 0 i32.const 32 - i32.const 2900 + i32.const 2898 i32.const 0 call $~lib/builtins/abort unreachable @@ -37290,7 +37287,7 @@ if i32.const 0 i32.const 32 - i32.const 2909 + i32.const 2907 i32.const 0 call $~lib/builtins/abort unreachable @@ -37302,7 +37299,7 @@ if i32.const 0 i32.const 32 - i32.const 2910 + i32.const 2908 i32.const 0 call $~lib/builtins/abort unreachable @@ -37314,7 +37311,7 @@ if i32.const 0 i32.const 32 - i32.const 2911 + i32.const 2909 i32.const 0 call $~lib/builtins/abort unreachable @@ -37326,7 +37323,7 @@ if i32.const 0 i32.const 32 - i32.const 2912 + i32.const 2910 i32.const 0 call $~lib/builtins/abort unreachable @@ -37338,7 +37335,7 @@ if i32.const 0 i32.const 32 - i32.const 2913 + i32.const 2911 i32.const 0 call $~lib/builtins/abort unreachable @@ -37350,7 +37347,7 @@ if i32.const 0 i32.const 32 - i32.const 2914 + i32.const 2912 i32.const 0 call $~lib/builtins/abort unreachable @@ -37362,7 +37359,7 @@ if i32.const 0 i32.const 32 - i32.const 2915 + i32.const 2913 i32.const 0 call $~lib/builtins/abort unreachable @@ -37374,7 +37371,7 @@ if i32.const 0 i32.const 32 - i32.const 2916 + i32.const 2914 i32.const 0 call $~lib/builtins/abort unreachable @@ -37386,7 +37383,7 @@ if i32.const 0 i32.const 32 - i32.const 2917 + i32.const 2915 i32.const 0 call $~lib/builtins/abort unreachable @@ -37398,7 +37395,7 @@ if i32.const 0 i32.const 32 - i32.const 2918 + i32.const 2916 i32.const 0 call $~lib/builtins/abort unreachable @@ -37410,7 +37407,7 @@ if i32.const 0 i32.const 32 - i32.const 2921 + i32.const 2919 i32.const 0 call $~lib/builtins/abort unreachable @@ -37422,7 +37419,7 @@ if i32.const 0 i32.const 32 - i32.const 2922 + i32.const 2920 i32.const 0 call $~lib/builtins/abort unreachable @@ -37434,7 +37431,7 @@ if i32.const 0 i32.const 32 - i32.const 2923 + i32.const 2921 i32.const 0 call $~lib/builtins/abort unreachable @@ -37446,7 +37443,7 @@ if i32.const 0 i32.const 32 - i32.const 2924 + i32.const 2922 i32.const 0 call $~lib/builtins/abort unreachable @@ -37458,7 +37455,7 @@ if i32.const 0 i32.const 32 - i32.const 2925 + i32.const 2923 i32.const 0 call $~lib/builtins/abort unreachable @@ -37470,7 +37467,7 @@ if i32.const 0 i32.const 32 - i32.const 2926 + i32.const 2924 i32.const 0 call $~lib/builtins/abort unreachable @@ -37482,7 +37479,7 @@ if i32.const 0 i32.const 32 - i32.const 2927 + i32.const 2925 i32.const 0 call $~lib/builtins/abort unreachable @@ -37494,7 +37491,7 @@ if i32.const 0 i32.const 32 - i32.const 2928 + i32.const 2926 i32.const 0 call $~lib/builtins/abort unreachable @@ -37506,7 +37503,7 @@ if i32.const 0 i32.const 32 - i32.const 2929 + i32.const 2927 i32.const 0 call $~lib/builtins/abort unreachable @@ -37518,7 +37515,7 @@ if i32.const 0 i32.const 32 - i32.const 2930 + i32.const 2928 i32.const 0 call $~lib/builtins/abort unreachable @@ -37530,7 +37527,7 @@ if i32.const 0 i32.const 32 - i32.const 2931 + i32.const 2929 i32.const 0 call $~lib/builtins/abort unreachable @@ -37542,7 +37539,7 @@ if i32.const 0 i32.const 32 - i32.const 2932 + i32.const 2930 i32.const 0 call $~lib/builtins/abort unreachable @@ -37554,7 +37551,7 @@ if i32.const 0 i32.const 32 - i32.const 2933 + i32.const 2931 i32.const 0 call $~lib/builtins/abort unreachable @@ -37566,7 +37563,7 @@ if i32.const 0 i32.const 32 - i32.const 2934 + i32.const 2932 i32.const 0 call $~lib/builtins/abort unreachable @@ -37578,7 +37575,7 @@ if i32.const 0 i32.const 32 - i32.const 2935 + i32.const 2933 i32.const 0 call $~lib/builtins/abort unreachable @@ -37590,7 +37587,7 @@ if i32.const 0 i32.const 32 - i32.const 2936 + i32.const 2934 i32.const 0 call $~lib/builtins/abort unreachable @@ -37602,7 +37599,7 @@ if i32.const 0 i32.const 32 - i32.const 2937 + i32.const 2935 i32.const 0 call $~lib/builtins/abort unreachable @@ -37614,7 +37611,7 @@ if i32.const 0 i32.const 32 - i32.const 2948 + i32.const 2946 i32.const 0 call $~lib/builtins/abort unreachable @@ -37626,7 +37623,7 @@ if i32.const 0 i32.const 32 - i32.const 2949 + i32.const 2947 i32.const 0 call $~lib/builtins/abort unreachable @@ -37638,7 +37635,7 @@ if i32.const 0 i32.const 32 - i32.const 2950 + i32.const 2948 i32.const 0 call $~lib/builtins/abort unreachable @@ -37650,7 +37647,7 @@ if i32.const 0 i32.const 32 - i32.const 2951 + i32.const 2949 i32.const 0 call $~lib/builtins/abort unreachable @@ -37662,7 +37659,7 @@ if i32.const 0 i32.const 32 - i32.const 2952 + i32.const 2950 i32.const 0 call $~lib/builtins/abort unreachable @@ -37674,7 +37671,7 @@ if i32.const 0 i32.const 32 - i32.const 2953 + i32.const 2951 i32.const 0 call $~lib/builtins/abort unreachable @@ -37686,7 +37683,7 @@ if i32.const 0 i32.const 32 - i32.const 2954 + i32.const 2952 i32.const 0 call $~lib/builtins/abort unreachable @@ -37698,7 +37695,7 @@ if i32.const 0 i32.const 32 - i32.const 2955 + i32.const 2953 i32.const 0 call $~lib/builtins/abort unreachable @@ -37710,7 +37707,7 @@ if i32.const 0 i32.const 32 - i32.const 2956 + i32.const 2954 i32.const 0 call $~lib/builtins/abort unreachable @@ -37722,7 +37719,7 @@ if i32.const 0 i32.const 32 - i32.const 2964 + i32.const 2962 i32.const 0 call $~lib/builtins/abort unreachable @@ -37734,7 +37731,7 @@ if i32.const 0 i32.const 32 - i32.const 2965 + i32.const 2963 i32.const 0 call $~lib/builtins/abort unreachable @@ -37746,7 +37743,7 @@ if i32.const 0 i32.const 32 - i32.const 2966 + i32.const 2964 i32.const 0 call $~lib/builtins/abort unreachable @@ -37758,7 +37755,7 @@ if i32.const 0 i32.const 32 - i32.const 2967 + i32.const 2965 i32.const 0 call $~lib/builtins/abort unreachable @@ -37770,7 +37767,7 @@ if i32.const 0 i32.const 32 - i32.const 2968 + i32.const 2966 i32.const 0 call $~lib/builtins/abort unreachable @@ -37782,7 +37779,7 @@ if i32.const 0 i32.const 32 - i32.const 2969 + i32.const 2967 i32.const 0 call $~lib/builtins/abort unreachable @@ -37794,7 +37791,7 @@ if i32.const 0 i32.const 32 - i32.const 2970 + i32.const 2968 i32.const 0 call $~lib/builtins/abort unreachable @@ -37806,7 +37803,7 @@ if i32.const 0 i32.const 32 - i32.const 2971 + i32.const 2969 i32.const 0 call $~lib/builtins/abort unreachable @@ -37818,7 +37815,7 @@ if i32.const 0 i32.const 32 - i32.const 2972 + i32.const 2970 i32.const 0 call $~lib/builtins/abort unreachable @@ -37831,7 +37828,7 @@ if i32.const 0 i32.const 32 - i32.const 3009 + i32.const 3007 i32.const 0 call $~lib/builtins/abort unreachable @@ -37844,7 +37841,7 @@ if i32.const 0 i32.const 32 - i32.const 3010 + i32.const 3008 i32.const 0 call $~lib/builtins/abort unreachable @@ -37857,7 +37854,7 @@ if i32.const 0 i32.const 32 - i32.const 3011 + i32.const 3009 i32.const 0 call $~lib/builtins/abort unreachable @@ -37870,7 +37867,7 @@ if i32.const 0 i32.const 32 - i32.const 3012 + i32.const 3010 i32.const 0 call $~lib/builtins/abort unreachable @@ -37883,7 +37880,7 @@ if i32.const 0 i32.const 32 - i32.const 3013 + i32.const 3011 i32.const 0 call $~lib/builtins/abort unreachable @@ -37896,7 +37893,7 @@ if i32.const 0 i32.const 32 - i32.const 3014 + i32.const 3012 i32.const 0 call $~lib/builtins/abort unreachable @@ -37909,7 +37906,7 @@ if i32.const 0 i32.const 32 - i32.const 3015 + i32.const 3013 i32.const 0 call $~lib/builtins/abort unreachable @@ -37922,7 +37919,7 @@ if i32.const 0 i32.const 32 - i32.const 3016 + i32.const 3014 i32.const 0 call $~lib/builtins/abort unreachable @@ -37935,7 +37932,7 @@ if i32.const 0 i32.const 32 - i32.const 3017 + i32.const 3015 i32.const 0 call $~lib/builtins/abort unreachable @@ -37948,7 +37945,7 @@ if i32.const 0 i32.const 32 - i32.const 3018 + i32.const 3016 i32.const 0 call $~lib/builtins/abort unreachable @@ -37961,7 +37958,7 @@ if i32.const 0 i32.const 32 - i32.const 3021 + i32.const 3019 i32.const 0 call $~lib/builtins/abort unreachable @@ -37974,7 +37971,7 @@ if i32.const 0 i32.const 32 - i32.const 3022 + i32.const 3020 i32.const 0 call $~lib/builtins/abort unreachable @@ -37987,7 +37984,7 @@ if i32.const 0 i32.const 32 - i32.const 3023 + i32.const 3021 i32.const 0 call $~lib/builtins/abort unreachable @@ -38000,7 +37997,7 @@ if i32.const 0 i32.const 32 - i32.const 3024 + i32.const 3022 i32.const 0 call $~lib/builtins/abort unreachable @@ -38013,7 +38010,7 @@ if i32.const 0 i32.const 32 - i32.const 3025 + i32.const 3023 i32.const 0 call $~lib/builtins/abort unreachable @@ -38026,7 +38023,7 @@ if i32.const 0 i32.const 32 - i32.const 3026 + i32.const 3024 i32.const 0 call $~lib/builtins/abort unreachable @@ -38039,7 +38036,7 @@ if i32.const 0 i32.const 32 - i32.const 3027 + i32.const 3025 i32.const 0 call $~lib/builtins/abort unreachable @@ -38052,7 +38049,7 @@ if i32.const 0 i32.const 32 - i32.const 3028 + i32.const 3026 i32.const 0 call $~lib/builtins/abort unreachable @@ -38065,7 +38062,7 @@ if i32.const 0 i32.const 32 - i32.const 3029 + i32.const 3027 i32.const 0 call $~lib/builtins/abort unreachable @@ -38078,7 +38075,7 @@ if i32.const 0 i32.const 32 - i32.const 3030 + i32.const 3028 i32.const 0 call $~lib/builtins/abort unreachable @@ -38091,7 +38088,7 @@ if i32.const 0 i32.const 32 - i32.const 3031 + i32.const 3029 i32.const 0 call $~lib/builtins/abort unreachable @@ -38104,7 +38101,7 @@ if i32.const 0 i32.const 32 - i32.const 3032 + i32.const 3030 i32.const 0 call $~lib/builtins/abort unreachable @@ -38117,7 +38114,7 @@ if i32.const 0 i32.const 32 - i32.const 3033 + i32.const 3031 i32.const 0 call $~lib/builtins/abort unreachable @@ -38130,7 +38127,7 @@ if i32.const 0 i32.const 32 - i32.const 3034 + i32.const 3032 i32.const 0 call $~lib/builtins/abort unreachable @@ -38143,7 +38140,7 @@ if i32.const 0 i32.const 32 - i32.const 3035 + i32.const 3033 i32.const 0 call $~lib/builtins/abort unreachable @@ -38156,7 +38153,7 @@ if i32.const 0 i32.const 32 - i32.const 3036 + i32.const 3034 i32.const 0 call $~lib/builtins/abort unreachable @@ -38169,7 +38166,7 @@ if i32.const 0 i32.const 32 - i32.const 3037 + i32.const 3035 i32.const 0 call $~lib/builtins/abort unreachable @@ -38182,7 +38179,7 @@ if i32.const 0 i32.const 32 - i32.const 3038 + i32.const 3036 i32.const 0 call $~lib/builtins/abort unreachable @@ -38195,7 +38192,7 @@ if i32.const 0 i32.const 32 - i32.const 3039 + i32.const 3037 i32.const 0 call $~lib/builtins/abort unreachable @@ -38208,7 +38205,7 @@ if i32.const 0 i32.const 32 - i32.const 3040 + i32.const 3038 i32.const 0 call $~lib/builtins/abort unreachable @@ -38221,7 +38218,7 @@ if i32.const 0 i32.const 32 - i32.const 3041 + i32.const 3039 i32.const 0 call $~lib/builtins/abort unreachable @@ -38234,7 +38231,7 @@ if i32.const 0 i32.const 32 - i32.const 3042 + i32.const 3040 i32.const 0 call $~lib/builtins/abort unreachable @@ -38247,7 +38244,7 @@ if i32.const 0 i32.const 32 - i32.const 3043 + i32.const 3041 i32.const 0 call $~lib/builtins/abort unreachable @@ -38260,7 +38257,7 @@ if i32.const 0 i32.const 32 - i32.const 3044 + i32.const 3042 i32.const 0 call $~lib/builtins/abort unreachable @@ -38273,7 +38270,7 @@ if i32.const 0 i32.const 32 - i32.const 3045 + i32.const 3043 i32.const 0 call $~lib/builtins/abort unreachable @@ -38286,7 +38283,7 @@ if i32.const 0 i32.const 32 - i32.const 3046 + i32.const 3044 i32.const 0 call $~lib/builtins/abort unreachable @@ -38299,7 +38296,7 @@ if i32.const 0 i32.const 32 - i32.const 3047 + i32.const 3045 i32.const 0 call $~lib/builtins/abort unreachable @@ -38312,7 +38309,7 @@ if i32.const 0 i32.const 32 - i32.const 3048 + i32.const 3046 i32.const 0 call $~lib/builtins/abort unreachable @@ -38325,7 +38322,7 @@ if i32.const 0 i32.const 32 - i32.const 3049 + i32.const 3047 i32.const 0 call $~lib/builtins/abort unreachable @@ -38338,7 +38335,7 @@ if i32.const 0 i32.const 32 - i32.const 3050 + i32.const 3048 i32.const 0 call $~lib/builtins/abort unreachable @@ -38351,7 +38348,7 @@ if i32.const 0 i32.const 32 - i32.const 3051 + i32.const 3049 i32.const 0 call $~lib/builtins/abort unreachable @@ -38364,7 +38361,7 @@ if i32.const 0 i32.const 32 - i32.const 3052 + i32.const 3050 i32.const 0 call $~lib/builtins/abort unreachable @@ -38377,7 +38374,7 @@ if i32.const 0 i32.const 32 - i32.const 3053 + i32.const 3051 i32.const 0 call $~lib/builtins/abort unreachable @@ -38390,7 +38387,7 @@ if i32.const 0 i32.const 32 - i32.const 3054 + i32.const 3052 i32.const 0 call $~lib/builtins/abort unreachable @@ -38403,7 +38400,7 @@ if i32.const 0 i32.const 32 - i32.const 3055 + i32.const 3053 i32.const 0 call $~lib/builtins/abort unreachable @@ -38416,7 +38413,7 @@ if i32.const 0 i32.const 32 - i32.const 3056 + i32.const 3054 i32.const 0 call $~lib/builtins/abort unreachable @@ -38429,7 +38426,7 @@ if i32.const 0 i32.const 32 - i32.const 3057 + i32.const 3055 i32.const 0 call $~lib/builtins/abort unreachable @@ -38442,7 +38439,7 @@ if i32.const 0 i32.const 32 - i32.const 3058 + i32.const 3056 i32.const 0 call $~lib/builtins/abort unreachable @@ -38455,7 +38452,7 @@ if i32.const 0 i32.const 32 - i32.const 3059 + i32.const 3057 i32.const 0 call $~lib/builtins/abort unreachable @@ -38468,7 +38465,7 @@ if i32.const 0 i32.const 32 - i32.const 3060 + i32.const 3058 i32.const 0 call $~lib/builtins/abort unreachable @@ -38481,7 +38478,7 @@ if i32.const 0 i32.const 32 - i32.const 3061 + i32.const 3059 i32.const 0 call $~lib/builtins/abort unreachable @@ -38494,7 +38491,7 @@ if i32.const 0 i32.const 32 - i32.const 3062 + i32.const 3060 i32.const 0 call $~lib/builtins/abort unreachable @@ -38507,7 +38504,7 @@ if i32.const 0 i32.const 32 - i32.const 3063 + i32.const 3061 i32.const 0 call $~lib/builtins/abort unreachable @@ -38520,7 +38517,7 @@ if i32.const 0 i32.const 32 - i32.const 3064 + i32.const 3062 i32.const 0 call $~lib/builtins/abort unreachable @@ -38533,7 +38530,7 @@ if i32.const 0 i32.const 32 - i32.const 3065 + i32.const 3063 i32.const 0 call $~lib/builtins/abort unreachable @@ -38546,7 +38543,7 @@ if i32.const 0 i32.const 32 - i32.const 3066 + i32.const 3064 i32.const 0 call $~lib/builtins/abort unreachable @@ -38559,7 +38556,7 @@ if i32.const 0 i32.const 32 - i32.const 3067 + i32.const 3065 i32.const 0 call $~lib/builtins/abort unreachable @@ -38572,7 +38569,7 @@ if i32.const 0 i32.const 32 - i32.const 3068 + i32.const 3066 i32.const 0 call $~lib/builtins/abort unreachable @@ -38585,7 +38582,7 @@ if i32.const 0 i32.const 32 - i32.const 3069 + i32.const 3067 i32.const 0 call $~lib/builtins/abort unreachable @@ -38598,7 +38595,7 @@ if i32.const 0 i32.const 32 - i32.const 3070 + i32.const 3068 i32.const 0 call $~lib/builtins/abort unreachable @@ -38611,7 +38608,7 @@ if i32.const 0 i32.const 32 - i32.const 3071 + i32.const 3069 i32.const 0 call $~lib/builtins/abort unreachable @@ -38624,7 +38621,7 @@ if i32.const 0 i32.const 32 - i32.const 3072 + i32.const 3070 i32.const 0 call $~lib/builtins/abort unreachable @@ -38637,7 +38634,7 @@ if i32.const 0 i32.const 32 - i32.const 3073 + i32.const 3071 i32.const 0 call $~lib/builtins/abort unreachable @@ -38650,7 +38647,7 @@ if i32.const 0 i32.const 32 - i32.const 3074 + i32.const 3072 i32.const 0 call $~lib/builtins/abort unreachable @@ -38663,7 +38660,7 @@ if i32.const 0 i32.const 32 - i32.const 3075 + i32.const 3073 i32.const 0 call $~lib/builtins/abort unreachable @@ -38676,7 +38673,7 @@ if i32.const 0 i32.const 32 - i32.const 3076 + i32.const 3074 i32.const 0 call $~lib/builtins/abort unreachable @@ -38689,7 +38686,7 @@ if i32.const 0 i32.const 32 - i32.const 3077 + i32.const 3075 i32.const 0 call $~lib/builtins/abort unreachable @@ -38702,7 +38699,7 @@ if i32.const 0 i32.const 32 - i32.const 3078 + i32.const 3076 i32.const 0 call $~lib/builtins/abort unreachable @@ -38715,7 +38712,7 @@ if i32.const 0 i32.const 32 - i32.const 3079 + i32.const 3077 i32.const 0 call $~lib/builtins/abort unreachable @@ -38728,7 +38725,7 @@ if i32.const 0 i32.const 32 - i32.const 3080 + i32.const 3078 i32.const 0 call $~lib/builtins/abort unreachable @@ -38741,7 +38738,7 @@ if i32.const 0 i32.const 32 - i32.const 3081 + i32.const 3079 i32.const 0 call $~lib/builtins/abort unreachable @@ -38754,7 +38751,7 @@ if i32.const 0 i32.const 32 - i32.const 3082 + i32.const 3080 i32.const 0 call $~lib/builtins/abort unreachable @@ -38767,7 +38764,7 @@ if i32.const 0 i32.const 32 - i32.const 3083 + i32.const 3081 i32.const 0 call $~lib/builtins/abort unreachable @@ -38780,7 +38777,7 @@ if i32.const 0 i32.const 32 - i32.const 3084 + i32.const 3082 i32.const 0 call $~lib/builtins/abort unreachable @@ -38793,7 +38790,7 @@ if i32.const 0 i32.const 32 - i32.const 3085 + i32.const 3083 i32.const 0 call $~lib/builtins/abort unreachable @@ -38806,7 +38803,7 @@ if i32.const 0 i32.const 32 - i32.const 3086 + i32.const 3084 i32.const 0 call $~lib/builtins/abort unreachable @@ -38819,7 +38816,7 @@ if i32.const 0 i32.const 32 - i32.const 3087 + i32.const 3085 i32.const 0 call $~lib/builtins/abort unreachable @@ -38832,7 +38829,7 @@ if i32.const 0 i32.const 32 - i32.const 3096 + i32.const 3094 i32.const 0 call $~lib/builtins/abort unreachable @@ -38845,7 +38842,7 @@ if i32.const 0 i32.const 32 - i32.const 3097 + i32.const 3095 i32.const 0 call $~lib/builtins/abort unreachable @@ -38858,7 +38855,7 @@ if i32.const 0 i32.const 32 - i32.const 3098 + i32.const 3096 i32.const 0 call $~lib/builtins/abort unreachable @@ -38871,7 +38868,7 @@ if i32.const 0 i32.const 32 - i32.const 3099 + i32.const 3097 i32.const 0 call $~lib/builtins/abort unreachable @@ -38884,7 +38881,7 @@ if i32.const 0 i32.const 32 - i32.const 3100 + i32.const 3098 i32.const 0 call $~lib/builtins/abort unreachable @@ -38897,7 +38894,7 @@ if i32.const 0 i32.const 32 - i32.const 3101 + i32.const 3099 i32.const 0 call $~lib/builtins/abort unreachable @@ -38910,7 +38907,7 @@ if i32.const 0 i32.const 32 - i32.const 3102 + i32.const 3100 i32.const 0 call $~lib/builtins/abort unreachable @@ -38923,7 +38920,7 @@ if i32.const 0 i32.const 32 - i32.const 3103 + i32.const 3101 i32.const 0 call $~lib/builtins/abort unreachable @@ -38936,7 +38933,7 @@ if i32.const 0 i32.const 32 - i32.const 3104 + i32.const 3102 i32.const 0 call $~lib/builtins/abort unreachable @@ -38949,7 +38946,7 @@ if i32.const 0 i32.const 32 - i32.const 3105 + i32.const 3103 i32.const 0 call $~lib/builtins/abort unreachable @@ -38962,7 +38959,7 @@ if i32.const 0 i32.const 32 - i32.const 3108 + i32.const 3106 i32.const 0 call $~lib/builtins/abort unreachable @@ -38975,7 +38972,7 @@ if i32.const 0 i32.const 32 - i32.const 3109 + i32.const 3107 i32.const 0 call $~lib/builtins/abort unreachable @@ -38988,7 +38985,7 @@ if i32.const 0 i32.const 32 - i32.const 3110 + i32.const 3108 i32.const 0 call $~lib/builtins/abort unreachable @@ -39001,7 +38998,7 @@ if i32.const 0 i32.const 32 - i32.const 3111 + i32.const 3109 i32.const 0 call $~lib/builtins/abort unreachable @@ -39014,7 +39011,7 @@ if i32.const 0 i32.const 32 - i32.const 3112 + i32.const 3110 i32.const 0 call $~lib/builtins/abort unreachable @@ -39027,7 +39024,7 @@ if i32.const 0 i32.const 32 - i32.const 3113 + i32.const 3111 i32.const 0 call $~lib/builtins/abort unreachable @@ -39040,7 +39037,7 @@ if i32.const 0 i32.const 32 - i32.const 3114 + i32.const 3112 i32.const 0 call $~lib/builtins/abort unreachable @@ -39053,7 +39050,7 @@ if i32.const 0 i32.const 32 - i32.const 3115 + i32.const 3113 i32.const 0 call $~lib/builtins/abort unreachable @@ -39066,7 +39063,7 @@ if i32.const 0 i32.const 32 - i32.const 3116 + i32.const 3114 i32.const 0 call $~lib/builtins/abort unreachable @@ -39079,7 +39076,7 @@ if i32.const 0 i32.const 32 - i32.const 3117 + i32.const 3115 i32.const 0 call $~lib/builtins/abort unreachable @@ -39092,7 +39089,7 @@ if i32.const 0 i32.const 32 - i32.const 3118 + i32.const 3116 i32.const 0 call $~lib/builtins/abort unreachable @@ -39105,7 +39102,7 @@ if i32.const 0 i32.const 32 - i32.const 3119 + i32.const 3117 i32.const 0 call $~lib/builtins/abort unreachable @@ -39118,7 +39115,7 @@ if i32.const 0 i32.const 32 - i32.const 3120 + i32.const 3118 i32.const 0 call $~lib/builtins/abort unreachable @@ -39131,7 +39128,7 @@ if i32.const 0 i32.const 32 - i32.const 3121 + i32.const 3119 i32.const 0 call $~lib/builtins/abort unreachable @@ -39144,7 +39141,7 @@ if i32.const 0 i32.const 32 - i32.const 3122 + i32.const 3120 i32.const 0 call $~lib/builtins/abort unreachable @@ -39157,7 +39154,7 @@ if i32.const 0 i32.const 32 - i32.const 3123 + i32.const 3121 i32.const 0 call $~lib/builtins/abort unreachable @@ -39170,7 +39167,7 @@ if i32.const 0 i32.const 32 - i32.const 3124 + i32.const 3122 i32.const 0 call $~lib/builtins/abort unreachable @@ -39183,7 +39180,7 @@ if i32.const 0 i32.const 32 - i32.const 3125 + i32.const 3123 i32.const 0 call $~lib/builtins/abort unreachable @@ -39196,7 +39193,7 @@ if i32.const 0 i32.const 32 - i32.const 3126 + i32.const 3124 i32.const 0 call $~lib/builtins/abort unreachable @@ -39209,7 +39206,7 @@ if i32.const 0 i32.const 32 - i32.const 3127 + i32.const 3125 i32.const 0 call $~lib/builtins/abort unreachable @@ -39222,7 +39219,7 @@ if i32.const 0 i32.const 32 - i32.const 3128 + i32.const 3126 i32.const 0 call $~lib/builtins/abort unreachable @@ -39235,7 +39232,7 @@ if i32.const 0 i32.const 32 - i32.const 3129 + i32.const 3127 i32.const 0 call $~lib/builtins/abort unreachable @@ -39248,7 +39245,7 @@ if i32.const 0 i32.const 32 - i32.const 3130 + i32.const 3128 i32.const 0 call $~lib/builtins/abort unreachable @@ -39261,7 +39258,7 @@ if i32.const 0 i32.const 32 - i32.const 3131 + i32.const 3129 i32.const 0 call $~lib/builtins/abort unreachable @@ -39274,7 +39271,7 @@ if i32.const 0 i32.const 32 - i32.const 3132 + i32.const 3130 i32.const 0 call $~lib/builtins/abort unreachable @@ -39287,7 +39284,7 @@ if i32.const 0 i32.const 32 - i32.const 3133 + i32.const 3131 i32.const 0 call $~lib/builtins/abort unreachable @@ -39300,7 +39297,7 @@ if i32.const 0 i32.const 32 - i32.const 3134 + i32.const 3132 i32.const 0 call $~lib/builtins/abort unreachable @@ -39313,7 +39310,7 @@ if i32.const 0 i32.const 32 - i32.const 3135 + i32.const 3133 i32.const 0 call $~lib/builtins/abort unreachable @@ -39326,7 +39323,7 @@ if i32.const 0 i32.const 32 - i32.const 3136 + i32.const 3134 i32.const 0 call $~lib/builtins/abort unreachable @@ -39339,7 +39336,7 @@ if i32.const 0 i32.const 32 - i32.const 3137 + i32.const 3135 i32.const 0 call $~lib/builtins/abort unreachable @@ -39352,7 +39349,7 @@ if i32.const 0 i32.const 32 - i32.const 3138 + i32.const 3136 i32.const 0 call $~lib/builtins/abort unreachable @@ -39365,7 +39362,7 @@ if i32.const 0 i32.const 32 - i32.const 3139 + i32.const 3137 i32.const 0 call $~lib/builtins/abort unreachable @@ -39378,7 +39375,7 @@ if i32.const 0 i32.const 32 - i32.const 3140 + i32.const 3138 i32.const 0 call $~lib/builtins/abort unreachable @@ -39391,7 +39388,7 @@ if i32.const 0 i32.const 32 - i32.const 3141 + i32.const 3139 i32.const 0 call $~lib/builtins/abort unreachable @@ -39404,7 +39401,7 @@ if i32.const 0 i32.const 32 - i32.const 3142 + i32.const 3140 i32.const 0 call $~lib/builtins/abort unreachable @@ -39417,7 +39414,7 @@ if i32.const 0 i32.const 32 - i32.const 3143 + i32.const 3141 i32.const 0 call $~lib/builtins/abort unreachable @@ -39430,7 +39427,7 @@ if i32.const 0 i32.const 32 - i32.const 3144 + i32.const 3142 i32.const 0 call $~lib/builtins/abort unreachable @@ -39443,7 +39440,7 @@ if i32.const 0 i32.const 32 - i32.const 3145 + i32.const 3143 i32.const 0 call $~lib/builtins/abort unreachable @@ -39456,7 +39453,7 @@ if i32.const 0 i32.const 32 - i32.const 3146 + i32.const 3144 i32.const 0 call $~lib/builtins/abort unreachable @@ -39469,7 +39466,7 @@ if i32.const 0 i32.const 32 - i32.const 3147 + i32.const 3145 i32.const 0 call $~lib/builtins/abort unreachable @@ -39482,7 +39479,7 @@ if i32.const 0 i32.const 32 - i32.const 3148 + i32.const 3146 i32.const 0 call $~lib/builtins/abort unreachable @@ -39495,7 +39492,7 @@ if i32.const 0 i32.const 32 - i32.const 3149 + i32.const 3147 i32.const 0 call $~lib/builtins/abort unreachable @@ -39508,7 +39505,7 @@ if i32.const 0 i32.const 32 - i32.const 3150 + i32.const 3148 i32.const 0 call $~lib/builtins/abort unreachable @@ -39521,7 +39518,7 @@ if i32.const 0 i32.const 32 - i32.const 3151 + i32.const 3149 i32.const 0 call $~lib/builtins/abort unreachable @@ -39534,7 +39531,7 @@ if i32.const 0 i32.const 32 - i32.const 3152 + i32.const 3150 i32.const 0 call $~lib/builtins/abort unreachable @@ -39547,7 +39544,7 @@ if i32.const 0 i32.const 32 - i32.const 3153 + i32.const 3151 i32.const 0 call $~lib/builtins/abort unreachable @@ -39560,7 +39557,7 @@ if i32.const 0 i32.const 32 - i32.const 3154 + i32.const 3152 i32.const 0 call $~lib/builtins/abort unreachable @@ -39573,7 +39570,7 @@ if i32.const 0 i32.const 32 - i32.const 3155 + i32.const 3153 i32.const 0 call $~lib/builtins/abort unreachable @@ -39586,7 +39583,7 @@ if i32.const 0 i32.const 32 - i32.const 3156 + i32.const 3154 i32.const 0 call $~lib/builtins/abort unreachable @@ -39599,7 +39596,7 @@ if i32.const 0 i32.const 32 - i32.const 3157 + i32.const 3155 i32.const 0 call $~lib/builtins/abort unreachable @@ -39612,7 +39609,7 @@ if i32.const 0 i32.const 32 - i32.const 3158 + i32.const 3156 i32.const 0 call $~lib/builtins/abort unreachable @@ -39625,7 +39622,7 @@ if i32.const 0 i32.const 32 - i32.const 3159 + i32.const 3157 i32.const 0 call $~lib/builtins/abort unreachable @@ -39638,7 +39635,7 @@ if i32.const 0 i32.const 32 - i32.const 3160 + i32.const 3158 i32.const 0 call $~lib/builtins/abort unreachable @@ -39651,7 +39648,7 @@ if i32.const 0 i32.const 32 - i32.const 3161 + i32.const 3159 i32.const 0 call $~lib/builtins/abort unreachable @@ -39664,7 +39661,7 @@ if i32.const 0 i32.const 32 - i32.const 3162 + i32.const 3160 i32.const 0 call $~lib/builtins/abort unreachable @@ -39677,7 +39674,7 @@ if i32.const 0 i32.const 32 - i32.const 3163 + i32.const 3161 i32.const 0 call $~lib/builtins/abort unreachable @@ -39690,7 +39687,7 @@ if i32.const 0 i32.const 32 - i32.const 3164 + i32.const 3162 i32.const 0 call $~lib/builtins/abort unreachable @@ -39703,7 +39700,7 @@ if i32.const 0 i32.const 32 - i32.const 3165 + i32.const 3163 i32.const 0 call $~lib/builtins/abort unreachable @@ -39716,7 +39713,7 @@ if i32.const 0 i32.const 32 - i32.const 3166 + i32.const 3164 i32.const 0 call $~lib/builtins/abort unreachable @@ -39729,7 +39726,7 @@ if i32.const 0 i32.const 32 - i32.const 3167 + i32.const 3165 i32.const 0 call $~lib/builtins/abort unreachable @@ -39742,7 +39739,7 @@ if i32.const 0 i32.const 32 - i32.const 3168 + i32.const 3166 i32.const 0 call $~lib/builtins/abort unreachable @@ -39755,7 +39752,7 @@ if i32.const 0 i32.const 32 - i32.const 3169 + i32.const 3167 i32.const 0 call $~lib/builtins/abort unreachable @@ -39768,7 +39765,7 @@ if i32.const 0 i32.const 32 - i32.const 3170 + i32.const 3168 i32.const 0 call $~lib/builtins/abort unreachable @@ -39781,7 +39778,7 @@ if i32.const 0 i32.const 32 - i32.const 3171 + i32.const 3169 i32.const 0 call $~lib/builtins/abort unreachable @@ -39794,7 +39791,7 @@ if i32.const 0 i32.const 32 - i32.const 3172 + i32.const 3170 i32.const 0 call $~lib/builtins/abort unreachable @@ -39807,7 +39804,7 @@ if i32.const 0 i32.const 32 - i32.const 3173 + i32.const 3171 i32.const 0 call $~lib/builtins/abort unreachable @@ -39820,7 +39817,7 @@ if i32.const 0 i32.const 32 - i32.const 3174 + i32.const 3172 i32.const 0 call $~lib/builtins/abort unreachable @@ -39833,7 +39830,7 @@ if i32.const 0 i32.const 32 - i32.const 3186 + i32.const 3184 i32.const 0 call $~lib/builtins/abort unreachable @@ -39846,7 +39843,7 @@ if i32.const 0 i32.const 32 - i32.const 3187 + i32.const 3185 i32.const 0 call $~lib/builtins/abort unreachable @@ -39859,7 +39856,7 @@ if i32.const 0 i32.const 32 - i32.const 3188 + i32.const 3186 i32.const 0 call $~lib/builtins/abort unreachable @@ -39872,7 +39869,7 @@ if i32.const 0 i32.const 32 - i32.const 3189 + i32.const 3187 i32.const 0 call $~lib/builtins/abort unreachable @@ -39885,7 +39882,7 @@ if i32.const 0 i32.const 32 - i32.const 3190 + i32.const 3188 i32.const 0 call $~lib/builtins/abort unreachable @@ -39898,7 +39895,7 @@ if i32.const 0 i32.const 32 - i32.const 3191 + i32.const 3189 i32.const 0 call $~lib/builtins/abort unreachable @@ -39911,7 +39908,7 @@ if i32.const 0 i32.const 32 - i32.const 3192 + i32.const 3190 i32.const 0 call $~lib/builtins/abort unreachable @@ -39924,7 +39921,7 @@ if i32.const 0 i32.const 32 - i32.const 3193 + i32.const 3191 i32.const 0 call $~lib/builtins/abort unreachable @@ -39937,7 +39934,7 @@ if i32.const 0 i32.const 32 - i32.const 3194 + i32.const 3192 i32.const 0 call $~lib/builtins/abort unreachable @@ -39950,7 +39947,7 @@ if i32.const 0 i32.const 32 - i32.const 3195 + i32.const 3193 i32.const 0 call $~lib/builtins/abort unreachable @@ -39963,7 +39960,7 @@ if i32.const 0 i32.const 32 - i32.const 3198 + i32.const 3196 i32.const 0 call $~lib/builtins/abort unreachable @@ -39976,7 +39973,7 @@ if i32.const 0 i32.const 32 - i32.const 3199 + i32.const 3197 i32.const 0 call $~lib/builtins/abort unreachable @@ -39989,7 +39986,7 @@ if i32.const 0 i32.const 32 - i32.const 3200 + i32.const 3198 i32.const 0 call $~lib/builtins/abort unreachable @@ -40002,7 +39999,7 @@ if i32.const 0 i32.const 32 - i32.const 3201 + i32.const 3199 i32.const 0 call $~lib/builtins/abort unreachable @@ -40015,7 +40012,7 @@ if i32.const 0 i32.const 32 - i32.const 3202 + i32.const 3200 i32.const 0 call $~lib/builtins/abort unreachable @@ -40028,7 +40025,7 @@ if i32.const 0 i32.const 32 - i32.const 3203 + i32.const 3201 i32.const 0 call $~lib/builtins/abort unreachable @@ -40041,7 +40038,7 @@ if i32.const 0 i32.const 32 - i32.const 3204 + i32.const 3202 i32.const 0 call $~lib/builtins/abort unreachable @@ -40054,7 +40051,7 @@ if i32.const 0 i32.const 32 - i32.const 3205 + i32.const 3203 i32.const 0 call $~lib/builtins/abort unreachable @@ -40067,7 +40064,7 @@ if i32.const 0 i32.const 32 - i32.const 3206 + i32.const 3204 i32.const 0 call $~lib/builtins/abort unreachable @@ -40080,7 +40077,7 @@ if i32.const 0 i32.const 32 - i32.const 3207 + i32.const 3205 i32.const 0 call $~lib/builtins/abort unreachable @@ -40093,7 +40090,7 @@ if i32.const 0 i32.const 32 - i32.const 3208 + i32.const 3206 i32.const 0 call $~lib/builtins/abort unreachable @@ -40106,7 +40103,7 @@ if i32.const 0 i32.const 32 - i32.const 3209 + i32.const 3207 i32.const 0 call $~lib/builtins/abort unreachable @@ -40119,7 +40116,7 @@ if i32.const 0 i32.const 32 - i32.const 3210 + i32.const 3208 i32.const 0 call $~lib/builtins/abort unreachable @@ -40132,7 +40129,7 @@ if i32.const 0 i32.const 32 - i32.const 3211 + i32.const 3209 i32.const 0 call $~lib/builtins/abort unreachable @@ -40145,7 +40142,7 @@ if i32.const 0 i32.const 32 - i32.const 3212 + i32.const 3210 i32.const 0 call $~lib/builtins/abort unreachable @@ -40158,7 +40155,7 @@ if i32.const 0 i32.const 32 - i32.const 3213 + i32.const 3211 i32.const 0 call $~lib/builtins/abort unreachable @@ -40171,7 +40168,7 @@ if i32.const 0 i32.const 32 - i32.const 3214 + i32.const 3212 i32.const 0 call $~lib/builtins/abort unreachable @@ -40184,7 +40181,7 @@ if i32.const 0 i32.const 32 - i32.const 3215 + i32.const 3213 i32.const 0 call $~lib/builtins/abort unreachable @@ -40197,7 +40194,7 @@ if i32.const 0 i32.const 32 - i32.const 3216 + i32.const 3214 i32.const 0 call $~lib/builtins/abort unreachable @@ -40210,7 +40207,7 @@ if i32.const 0 i32.const 32 - i32.const 3217 + i32.const 3215 i32.const 0 call $~lib/builtins/abort unreachable @@ -40223,7 +40220,7 @@ if i32.const 0 i32.const 32 - i32.const 3218 + i32.const 3216 i32.const 0 call $~lib/builtins/abort unreachable @@ -40236,7 +40233,7 @@ if i32.const 0 i32.const 32 - i32.const 3219 + i32.const 3217 i32.const 0 call $~lib/builtins/abort unreachable @@ -40249,7 +40246,7 @@ if i32.const 0 i32.const 32 - i32.const 3220 + i32.const 3218 i32.const 0 call $~lib/builtins/abort unreachable @@ -40262,7 +40259,7 @@ if i32.const 0 i32.const 32 - i32.const 3221 + i32.const 3219 i32.const 0 call $~lib/builtins/abort unreachable @@ -40275,7 +40272,7 @@ if i32.const 0 i32.const 32 - i32.const 3222 + i32.const 3220 i32.const 0 call $~lib/builtins/abort unreachable @@ -40288,7 +40285,7 @@ if i32.const 0 i32.const 32 - i32.const 3223 + i32.const 3221 i32.const 0 call $~lib/builtins/abort unreachable @@ -40301,7 +40298,7 @@ if i32.const 0 i32.const 32 - i32.const 3224 + i32.const 3222 i32.const 0 call $~lib/builtins/abort unreachable @@ -40314,7 +40311,7 @@ if i32.const 0 i32.const 32 - i32.const 3225 + i32.const 3223 i32.const 0 call $~lib/builtins/abort unreachable @@ -40327,7 +40324,7 @@ if i32.const 0 i32.const 32 - i32.const 3226 + i32.const 3224 i32.const 0 call $~lib/builtins/abort unreachable @@ -40340,7 +40337,7 @@ if i32.const 0 i32.const 32 - i32.const 3227 + i32.const 3225 i32.const 0 call $~lib/builtins/abort unreachable @@ -40353,7 +40350,7 @@ if i32.const 0 i32.const 32 - i32.const 3228 + i32.const 3226 i32.const 0 call $~lib/builtins/abort unreachable @@ -40366,7 +40363,7 @@ if i32.const 0 i32.const 32 - i32.const 3229 + i32.const 3227 i32.const 0 call $~lib/builtins/abort unreachable @@ -40379,7 +40376,7 @@ if i32.const 0 i32.const 32 - i32.const 3230 + i32.const 3228 i32.const 0 call $~lib/builtins/abort unreachable @@ -40392,7 +40389,7 @@ if i32.const 0 i32.const 32 - i32.const 3231 + i32.const 3229 i32.const 0 call $~lib/builtins/abort unreachable @@ -40405,7 +40402,7 @@ if i32.const 0 i32.const 32 - i32.const 3232 + i32.const 3230 i32.const 0 call $~lib/builtins/abort unreachable @@ -40418,7 +40415,7 @@ if i32.const 0 i32.const 32 - i32.const 3233 + i32.const 3231 i32.const 0 call $~lib/builtins/abort unreachable @@ -40431,7 +40428,7 @@ if i32.const 0 i32.const 32 - i32.const 3234 + i32.const 3232 i32.const 0 call $~lib/builtins/abort unreachable @@ -40444,7 +40441,7 @@ if i32.const 0 i32.const 32 - i32.const 3237 + i32.const 3235 i32.const 0 call $~lib/builtins/abort unreachable @@ -40457,7 +40454,7 @@ if i32.const 0 i32.const 32 - i32.const 3238 + i32.const 3236 i32.const 0 call $~lib/builtins/abort unreachable @@ -40470,7 +40467,7 @@ if i32.const 0 i32.const 32 - i32.const 3239 + i32.const 3237 i32.const 0 call $~lib/builtins/abort unreachable @@ -40483,7 +40480,7 @@ if i32.const 0 i32.const 32 - i32.const 3240 + i32.const 3238 i32.const 0 call $~lib/builtins/abort unreachable @@ -40496,7 +40493,7 @@ if i32.const 0 i32.const 32 - i32.const 3241 + i32.const 3239 i32.const 0 call $~lib/builtins/abort unreachable @@ -40509,7 +40506,7 @@ if i32.const 0 i32.const 32 - i32.const 3244 + i32.const 3242 i32.const 0 call $~lib/builtins/abort unreachable @@ -40522,7 +40519,7 @@ if i32.const 0 i32.const 32 - i32.const 3245 + i32.const 3243 i32.const 0 call $~lib/builtins/abort unreachable @@ -40534,7 +40531,7 @@ if i32.const 0 i32.const 32 - i32.const 3248 + i32.const 3246 i32.const 0 call $~lib/builtins/abort unreachable @@ -40546,7 +40543,7 @@ if i32.const 0 i32.const 32 - i32.const 3249 + i32.const 3247 i32.const 0 call $~lib/builtins/abort unreachable @@ -40558,7 +40555,7 @@ if i32.const 0 i32.const 32 - i32.const 3251 + i32.const 3249 i32.const 0 call $~lib/builtins/abort unreachable @@ -40570,7 +40567,7 @@ if i32.const 0 i32.const 32 - i32.const 3252 + i32.const 3250 i32.const 0 call $~lib/builtins/abort unreachable @@ -40582,7 +40579,7 @@ if i32.const 0 i32.const 32 - i32.const 3255 + i32.const 3253 i32.const 0 call $~lib/builtins/abort unreachable @@ -40594,7 +40591,7 @@ if i32.const 0 i32.const 32 - i32.const 3256 + i32.const 3254 i32.const 0 call $~lib/builtins/abort unreachable @@ -40606,7 +40603,7 @@ if i32.const 0 i32.const 32 - i32.const 3257 + i32.const 3255 i32.const 0 call $~lib/builtins/abort unreachable @@ -40618,7 +40615,7 @@ if i32.const 0 i32.const 32 - i32.const 3258 + i32.const 3256 i32.const 0 call $~lib/builtins/abort unreachable @@ -40630,7 +40627,7 @@ if i32.const 0 i32.const 32 - i32.const 3260 + i32.const 3258 i32.const 0 call $~lib/builtins/abort unreachable @@ -40642,7 +40639,7 @@ if i32.const 0 i32.const 32 - i32.const 3261 + i32.const 3259 i32.const 0 call $~lib/builtins/abort unreachable @@ -40654,7 +40651,7 @@ if i32.const 0 i32.const 32 - i32.const 3263 + i32.const 3261 i32.const 0 call $~lib/builtins/abort unreachable @@ -40666,7 +40663,7 @@ if i32.const 0 i32.const 32 - i32.const 3264 + i32.const 3262 i32.const 0 call $~lib/builtins/abort unreachable @@ -40678,7 +40675,7 @@ if i32.const 0 i32.const 32 - i32.const 3265 + i32.const 3263 i32.const 0 call $~lib/builtins/abort unreachable @@ -40690,7 +40687,7 @@ if i32.const 0 i32.const 32 - i32.const 3266 + i32.const 3264 i32.const 0 call $~lib/builtins/abort unreachable @@ -40702,7 +40699,7 @@ if i32.const 0 i32.const 32 - i32.const 3267 + i32.const 3265 i32.const 0 call $~lib/builtins/abort unreachable @@ -40714,7 +40711,7 @@ if i32.const 0 i32.const 32 - i32.const 3270 + i32.const 3268 i32.const 0 call $~lib/builtins/abort unreachable @@ -40726,7 +40723,7 @@ if i32.const 0 i32.const 32 - i32.const 3271 + i32.const 3269 i32.const 0 call $~lib/builtins/abort unreachable @@ -40739,7 +40736,7 @@ if i32.const 0 i32.const 32 - i32.const 3280 + i32.const 3278 i32.const 0 call $~lib/builtins/abort unreachable @@ -40752,7 +40749,7 @@ if i32.const 0 i32.const 32 - i32.const 3281 + i32.const 3279 i32.const 0 call $~lib/builtins/abort unreachable @@ -40765,7 +40762,7 @@ if i32.const 0 i32.const 32 - i32.const 3282 + i32.const 3280 i32.const 0 call $~lib/builtins/abort unreachable @@ -40778,7 +40775,7 @@ if i32.const 0 i32.const 32 - i32.const 3283 + i32.const 3281 i32.const 0 call $~lib/builtins/abort unreachable @@ -40791,7 +40788,7 @@ if i32.const 0 i32.const 32 - i32.const 3284 + i32.const 3282 i32.const 0 call $~lib/builtins/abort unreachable @@ -40804,7 +40801,7 @@ if i32.const 0 i32.const 32 - i32.const 3285 + i32.const 3283 i32.const 0 call $~lib/builtins/abort unreachable @@ -40817,7 +40814,7 @@ if i32.const 0 i32.const 32 - i32.const 3286 + i32.const 3284 i32.const 0 call $~lib/builtins/abort unreachable @@ -40830,7 +40827,7 @@ if i32.const 0 i32.const 32 - i32.const 3287 + i32.const 3285 i32.const 0 call $~lib/builtins/abort unreachable @@ -40843,7 +40840,7 @@ if i32.const 0 i32.const 32 - i32.const 3288 + i32.const 3286 i32.const 0 call $~lib/builtins/abort unreachable @@ -40856,7 +40853,7 @@ if i32.const 0 i32.const 32 - i32.const 3289 + i32.const 3287 i32.const 0 call $~lib/builtins/abort unreachable @@ -40869,7 +40866,7 @@ if i32.const 0 i32.const 32 - i32.const 3292 + i32.const 3290 i32.const 0 call $~lib/builtins/abort unreachable @@ -40882,7 +40879,7 @@ if i32.const 0 i32.const 32 - i32.const 3293 + i32.const 3291 i32.const 0 call $~lib/builtins/abort unreachable @@ -40895,7 +40892,7 @@ if i32.const 0 i32.const 32 - i32.const 3294 + i32.const 3292 i32.const 0 call $~lib/builtins/abort unreachable @@ -40908,7 +40905,7 @@ if i32.const 0 i32.const 32 - i32.const 3295 + i32.const 3293 i32.const 0 call $~lib/builtins/abort unreachable @@ -40921,7 +40918,7 @@ if i32.const 0 i32.const 32 - i32.const 3296 + i32.const 3294 i32.const 0 call $~lib/builtins/abort unreachable @@ -40934,7 +40931,7 @@ if i32.const 0 i32.const 32 - i32.const 3299 + i32.const 3297 i32.const 0 call $~lib/builtins/abort unreachable @@ -40947,7 +40944,7 @@ if i32.const 0 i32.const 32 - i32.const 3300 + i32.const 3298 i32.const 0 call $~lib/builtins/abort unreachable @@ -40960,7 +40957,7 @@ if i32.const 0 i32.const 32 - i32.const 3301 + i32.const 3299 i32.const 0 call $~lib/builtins/abort unreachable @@ -40973,7 +40970,7 @@ if i32.const 0 i32.const 32 - i32.const 3302 + i32.const 3300 i32.const 0 call $~lib/builtins/abort unreachable @@ -40986,7 +40983,7 @@ if i32.const 0 i32.const 32 - i32.const 3303 + i32.const 3301 i32.const 0 call $~lib/builtins/abort unreachable @@ -40999,7 +40996,7 @@ if i32.const 0 i32.const 32 - i32.const 3304 + i32.const 3302 i32.const 0 call $~lib/builtins/abort unreachable @@ -41012,7 +41009,7 @@ if i32.const 0 i32.const 32 - i32.const 3305 + i32.const 3303 i32.const 0 call $~lib/builtins/abort unreachable @@ -41025,7 +41022,7 @@ if i32.const 0 i32.const 32 - i32.const 3306 + i32.const 3304 i32.const 0 call $~lib/builtins/abort unreachable @@ -41038,7 +41035,7 @@ if i32.const 0 i32.const 32 - i32.const 3307 + i32.const 3305 i32.const 0 call $~lib/builtins/abort unreachable @@ -41051,7 +41048,7 @@ if i32.const 0 i32.const 32 - i32.const 3308 + i32.const 3306 i32.const 0 call $~lib/builtins/abort unreachable @@ -41064,7 +41061,7 @@ if i32.const 0 i32.const 32 - i32.const 3309 + i32.const 3307 i32.const 0 call $~lib/builtins/abort unreachable @@ -41077,7 +41074,7 @@ if i32.const 0 i32.const 32 - i32.const 3310 + i32.const 3308 i32.const 0 call $~lib/builtins/abort unreachable @@ -41090,7 +41087,7 @@ if i32.const 0 i32.const 32 - i32.const 3311 + i32.const 3309 i32.const 0 call $~lib/builtins/abort unreachable @@ -41103,7 +41100,7 @@ if i32.const 0 i32.const 32 - i32.const 3312 + i32.const 3310 i32.const 0 call $~lib/builtins/abort unreachable @@ -41116,7 +41113,7 @@ if i32.const 0 i32.const 32 - i32.const 3313 + i32.const 3311 i32.const 0 call $~lib/builtins/abort unreachable @@ -41129,7 +41126,7 @@ if i32.const 0 i32.const 32 - i32.const 3314 + i32.const 3312 i32.const 0 call $~lib/builtins/abort unreachable @@ -41142,7 +41139,7 @@ if i32.const 0 i32.const 32 - i32.const 3315 + i32.const 3313 i32.const 0 call $~lib/builtins/abort unreachable @@ -41155,7 +41152,7 @@ if i32.const 0 i32.const 32 - i32.const 3316 + i32.const 3314 i32.const 0 call $~lib/builtins/abort unreachable @@ -41168,7 +41165,7 @@ if i32.const 0 i32.const 32 - i32.const 3317 + i32.const 3315 i32.const 0 call $~lib/builtins/abort unreachable @@ -41181,7 +41178,7 @@ if i32.const 0 i32.const 32 - i32.const 3318 + i32.const 3316 i32.const 0 call $~lib/builtins/abort unreachable @@ -41194,7 +41191,7 @@ if i32.const 0 i32.const 32 - i32.const 3319 + i32.const 3317 i32.const 0 call $~lib/builtins/abort unreachable @@ -41207,7 +41204,7 @@ if i32.const 0 i32.const 32 - i32.const 3320 + i32.const 3318 i32.const 0 call $~lib/builtins/abort unreachable @@ -41220,7 +41217,7 @@ if i32.const 0 i32.const 32 - i32.const 3321 + i32.const 3319 i32.const 0 call $~lib/builtins/abort unreachable @@ -41233,7 +41230,7 @@ if i32.const 0 i32.const 32 - i32.const 3322 + i32.const 3320 i32.const 0 call $~lib/builtins/abort unreachable @@ -41246,7 +41243,7 @@ if i32.const 0 i32.const 32 - i32.const 3323 + i32.const 3321 i32.const 0 call $~lib/builtins/abort unreachable @@ -41259,7 +41256,7 @@ if i32.const 0 i32.const 32 - i32.const 3324 + i32.const 3322 i32.const 0 call $~lib/builtins/abort unreachable @@ -41272,7 +41269,7 @@ if i32.const 0 i32.const 32 - i32.const 3325 + i32.const 3323 i32.const 0 call $~lib/builtins/abort unreachable @@ -41285,7 +41282,7 @@ if i32.const 0 i32.const 32 - i32.const 3326 + i32.const 3324 i32.const 0 call $~lib/builtins/abort unreachable @@ -41298,7 +41295,7 @@ if i32.const 0 i32.const 32 - i32.const 3327 + i32.const 3325 i32.const 0 call $~lib/builtins/abort unreachable @@ -41311,7 +41308,7 @@ if i32.const 0 i32.const 32 - i32.const 3328 + i32.const 3326 i32.const 0 call $~lib/builtins/abort unreachable @@ -41324,7 +41321,7 @@ if i32.const 0 i32.const 32 - i32.const 3329 + i32.const 3327 i32.const 0 call $~lib/builtins/abort unreachable @@ -41337,7 +41334,7 @@ if i32.const 0 i32.const 32 - i32.const 3330 + i32.const 3328 i32.const 0 call $~lib/builtins/abort unreachable @@ -41350,7 +41347,7 @@ if i32.const 0 i32.const 32 - i32.const 3331 + i32.const 3329 i32.const 0 call $~lib/builtins/abort unreachable @@ -41363,7 +41360,7 @@ if i32.const 0 i32.const 32 - i32.const 3332 + i32.const 3330 i32.const 0 call $~lib/builtins/abort unreachable @@ -41376,7 +41373,7 @@ if i32.const 0 i32.const 32 - i32.const 3333 + i32.const 3331 i32.const 0 call $~lib/builtins/abort unreachable @@ -41389,7 +41386,7 @@ if i32.const 0 i32.const 32 - i32.const 3334 + i32.const 3332 i32.const 0 call $~lib/builtins/abort unreachable @@ -41402,7 +41399,7 @@ if i32.const 0 i32.const 32 - i32.const 3335 + i32.const 3333 i32.const 0 call $~lib/builtins/abort unreachable @@ -41415,7 +41412,7 @@ if i32.const 0 i32.const 32 - i32.const 3336 + i32.const 3334 i32.const 0 call $~lib/builtins/abort unreachable @@ -41428,7 +41425,7 @@ if i32.const 0 i32.const 32 - i32.const 3339 + i32.const 3337 i32.const 0 call $~lib/builtins/abort unreachable @@ -41441,7 +41438,7 @@ if i32.const 0 i32.const 32 - i32.const 3340 + i32.const 3338 i32.const 0 call $~lib/builtins/abort unreachable @@ -41454,7 +41451,7 @@ if i32.const 0 i32.const 32 - i32.const 3341 + i32.const 3339 i32.const 0 call $~lib/builtins/abort unreachable @@ -41467,7 +41464,7 @@ if i32.const 0 i32.const 32 - i32.const 3342 + i32.const 3340 i32.const 0 call $~lib/builtins/abort unreachable @@ -41480,7 +41477,7 @@ if i32.const 0 i32.const 32 - i32.const 3343 + i32.const 3341 i32.const 0 call $~lib/builtins/abort unreachable @@ -41493,7 +41490,7 @@ if i32.const 0 i32.const 32 - i32.const 3344 + i32.const 3342 i32.const 0 call $~lib/builtins/abort unreachable @@ -41506,7 +41503,7 @@ if i32.const 0 i32.const 32 - i32.const 3345 + i32.const 3343 i32.const 0 call $~lib/builtins/abort unreachable @@ -41519,7 +41516,7 @@ if i32.const 0 i32.const 32 - i32.const 3346 + i32.const 3344 i32.const 0 call $~lib/builtins/abort unreachable @@ -41532,7 +41529,7 @@ if i32.const 0 i32.const 32 - i32.const 3347 + i32.const 3345 i32.const 0 call $~lib/builtins/abort unreachable @@ -41545,7 +41542,7 @@ if i32.const 0 i32.const 32 - i32.const 3348 + i32.const 3346 i32.const 0 call $~lib/builtins/abort unreachable @@ -41558,7 +41555,7 @@ if i32.const 0 i32.const 32 - i32.const 3349 + i32.const 3347 i32.const 0 call $~lib/builtins/abort unreachable @@ -41571,7 +41568,7 @@ if i32.const 0 i32.const 32 - i32.const 3350 + i32.const 3348 i32.const 0 call $~lib/builtins/abort unreachable @@ -41584,7 +41581,7 @@ if i32.const 0 i32.const 32 - i32.const 3351 + i32.const 3349 i32.const 0 call $~lib/builtins/abort unreachable @@ -41597,7 +41594,7 @@ if i32.const 0 i32.const 32 - i32.const 3352 + i32.const 3350 i32.const 0 call $~lib/builtins/abort unreachable @@ -41610,7 +41607,7 @@ if i32.const 0 i32.const 32 - i32.const 3364 + i32.const 3362 i32.const 0 call $~lib/builtins/abort unreachable @@ -41623,7 +41620,7 @@ if i32.const 0 i32.const 32 - i32.const 3365 + i32.const 3363 i32.const 0 call $~lib/builtins/abort unreachable @@ -41636,7 +41633,7 @@ if i32.const 0 i32.const 32 - i32.const 3366 + i32.const 3364 i32.const 0 call $~lib/builtins/abort unreachable @@ -41649,7 +41646,7 @@ if i32.const 0 i32.const 32 - i32.const 3367 + i32.const 3365 i32.const 0 call $~lib/builtins/abort unreachable @@ -41662,7 +41659,7 @@ if i32.const 0 i32.const 32 - i32.const 3368 + i32.const 3366 i32.const 0 call $~lib/builtins/abort unreachable @@ -41675,7 +41672,7 @@ if i32.const 0 i32.const 32 - i32.const 3369 + i32.const 3367 i32.const 0 call $~lib/builtins/abort unreachable @@ -41688,7 +41685,7 @@ if i32.const 0 i32.const 32 - i32.const 3370 + i32.const 3368 i32.const 0 call $~lib/builtins/abort unreachable @@ -41701,7 +41698,7 @@ if i32.const 0 i32.const 32 - i32.const 3371 + i32.const 3369 i32.const 0 call $~lib/builtins/abort unreachable @@ -41714,7 +41711,7 @@ if i32.const 0 i32.const 32 - i32.const 3372 + i32.const 3370 i32.const 0 call $~lib/builtins/abort unreachable @@ -41727,7 +41724,7 @@ if i32.const 0 i32.const 32 - i32.const 3373 + i32.const 3371 i32.const 0 call $~lib/builtins/abort unreachable @@ -41740,7 +41737,7 @@ if i32.const 0 i32.const 32 - i32.const 3376 + i32.const 3374 i32.const 0 call $~lib/builtins/abort unreachable @@ -41753,7 +41750,7 @@ if i32.const 0 i32.const 32 - i32.const 3377 + i32.const 3375 i32.const 0 call $~lib/builtins/abort unreachable @@ -41766,7 +41763,7 @@ if i32.const 0 i32.const 32 - i32.const 3378 + i32.const 3376 i32.const 0 call $~lib/builtins/abort unreachable @@ -41779,7 +41776,7 @@ if i32.const 0 i32.const 32 - i32.const 3379 + i32.const 3377 i32.const 0 call $~lib/builtins/abort unreachable @@ -41792,7 +41789,7 @@ if i32.const 0 i32.const 32 - i32.const 3380 + i32.const 3378 i32.const 0 call $~lib/builtins/abort unreachable @@ -41805,7 +41802,7 @@ if i32.const 0 i32.const 32 - i32.const 3389 + i32.const 3387 i32.const 0 call $~lib/builtins/abort unreachable @@ -41818,7 +41815,7 @@ if i32.const 0 i32.const 32 - i32.const 3390 + i32.const 3388 i32.const 0 call $~lib/builtins/abort unreachable @@ -41831,7 +41828,7 @@ if i32.const 0 i32.const 32 - i32.const 3391 + i32.const 3389 i32.const 0 call $~lib/builtins/abort unreachable @@ -41844,7 +41841,7 @@ if i32.const 0 i32.const 32 - i32.const 3392 + i32.const 3390 i32.const 0 call $~lib/builtins/abort unreachable @@ -41857,7 +41854,7 @@ if i32.const 0 i32.const 32 - i32.const 3393 + i32.const 3391 i32.const 0 call $~lib/builtins/abort unreachable @@ -41870,7 +41867,7 @@ if i32.const 0 i32.const 32 - i32.const 3394 + i32.const 3392 i32.const 0 call $~lib/builtins/abort unreachable @@ -41883,7 +41880,7 @@ if i32.const 0 i32.const 32 - i32.const 3395 + i32.const 3393 i32.const 0 call $~lib/builtins/abort unreachable @@ -41896,7 +41893,7 @@ if i32.const 0 i32.const 32 - i32.const 3396 + i32.const 3394 i32.const 0 call $~lib/builtins/abort unreachable @@ -41909,7 +41906,7 @@ if i32.const 0 i32.const 32 - i32.const 3397 + i32.const 3395 i32.const 0 call $~lib/builtins/abort unreachable @@ -41922,7 +41919,7 @@ if i32.const 0 i32.const 32 - i32.const 3398 + i32.const 3396 i32.const 0 call $~lib/builtins/abort unreachable @@ -41935,7 +41932,7 @@ if i32.const 0 i32.const 32 - i32.const 3401 + i32.const 3399 i32.const 0 call $~lib/builtins/abort unreachable @@ -41948,7 +41945,7 @@ if i32.const 0 i32.const 32 - i32.const 3402 + i32.const 3400 i32.const 0 call $~lib/builtins/abort unreachable @@ -41961,7 +41958,7 @@ if i32.const 0 i32.const 32 - i32.const 3403 + i32.const 3401 i32.const 0 call $~lib/builtins/abort unreachable @@ -41974,7 +41971,7 @@ if i32.const 0 i32.const 32 - i32.const 3404 + i32.const 3402 i32.const 0 call $~lib/builtins/abort unreachable @@ -41987,7 +41984,7 @@ if i32.const 0 i32.const 32 - i32.const 3405 + i32.const 3403 i32.const 0 call $~lib/builtins/abort unreachable @@ -42000,7 +41997,7 @@ if i32.const 0 i32.const 32 - i32.const 3417 + i32.const 3415 i32.const 0 call $~lib/builtins/abort unreachable @@ -42013,7 +42010,7 @@ if i32.const 0 i32.const 32 - i32.const 3418 + i32.const 3416 i32.const 0 call $~lib/builtins/abort unreachable @@ -42026,7 +42023,7 @@ if i32.const 0 i32.const 32 - i32.const 3419 + i32.const 3417 i32.const 0 call $~lib/builtins/abort unreachable @@ -42039,7 +42036,7 @@ if i32.const 0 i32.const 32 - i32.const 3420 + i32.const 3418 i32.const 0 call $~lib/builtins/abort unreachable @@ -42052,7 +42049,7 @@ if i32.const 0 i32.const 32 - i32.const 3421 + i32.const 3419 i32.const 0 call $~lib/builtins/abort unreachable @@ -42065,7 +42062,7 @@ if i32.const 0 i32.const 32 - i32.const 3422 + i32.const 3420 i32.const 0 call $~lib/builtins/abort unreachable @@ -42078,7 +42075,7 @@ if i32.const 0 i32.const 32 - i32.const 3423 + i32.const 3421 i32.const 0 call $~lib/builtins/abort unreachable @@ -42091,7 +42088,7 @@ if i32.const 0 i32.const 32 - i32.const 3424 + i32.const 3422 i32.const 0 call $~lib/builtins/abort unreachable @@ -42104,7 +42101,7 @@ if i32.const 0 i32.const 32 - i32.const 3425 + i32.const 3423 i32.const 0 call $~lib/builtins/abort unreachable @@ -42117,7 +42114,7 @@ if i32.const 0 i32.const 32 - i32.const 3426 + i32.const 3424 i32.const 0 call $~lib/builtins/abort unreachable @@ -42130,7 +42127,7 @@ if i32.const 0 i32.const 32 - i32.const 3429 + i32.const 3427 i32.const 0 call $~lib/builtins/abort unreachable @@ -42143,7 +42140,7 @@ if i32.const 0 i32.const 32 - i32.const 3430 + i32.const 3428 i32.const 0 call $~lib/builtins/abort unreachable @@ -42156,7 +42153,7 @@ if i32.const 0 i32.const 32 - i32.const 3431 + i32.const 3429 i32.const 0 call $~lib/builtins/abort unreachable @@ -42169,7 +42166,7 @@ if i32.const 0 i32.const 32 - i32.const 3432 + i32.const 3430 i32.const 0 call $~lib/builtins/abort unreachable @@ -42182,7 +42179,7 @@ if i32.const 0 i32.const 32 - i32.const 3433 + i32.const 3431 i32.const 0 call $~lib/builtins/abort unreachable @@ -42195,7 +42192,7 @@ if i32.const 0 i32.const 32 - i32.const 3434 + i32.const 3432 i32.const 0 call $~lib/builtins/abort unreachable @@ -42208,7 +42205,7 @@ if i32.const 0 i32.const 32 - i32.const 3435 + i32.const 3433 i32.const 0 call $~lib/builtins/abort unreachable @@ -42221,7 +42218,7 @@ if i32.const 0 i32.const 32 - i32.const 3436 + i32.const 3434 i32.const 0 call $~lib/builtins/abort unreachable @@ -42234,7 +42231,7 @@ if i32.const 0 i32.const 32 - i32.const 3437 + i32.const 3435 i32.const 0 call $~lib/builtins/abort unreachable @@ -42247,7 +42244,7 @@ if i32.const 0 i32.const 32 - i32.const 3438 + i32.const 3436 i32.const 0 call $~lib/builtins/abort unreachable @@ -42260,7 +42257,7 @@ if i32.const 0 i32.const 32 - i32.const 3439 + i32.const 3437 i32.const 0 call $~lib/builtins/abort unreachable @@ -42273,7 +42270,7 @@ if i32.const 0 i32.const 32 - i32.const 3440 + i32.const 3438 i32.const 0 call $~lib/builtins/abort unreachable @@ -42286,7 +42283,7 @@ if i32.const 0 i32.const 32 - i32.const 3441 + i32.const 3439 i32.const 0 call $~lib/builtins/abort unreachable @@ -42299,7 +42296,7 @@ if i32.const 0 i32.const 32 - i32.const 3442 + i32.const 3440 i32.const 0 call $~lib/builtins/abort unreachable @@ -42312,7 +42309,7 @@ if i32.const 0 i32.const 32 - i32.const 3443 + i32.const 3441 i32.const 0 call $~lib/builtins/abort unreachable @@ -42325,7 +42322,7 @@ if i32.const 0 i32.const 32 - i32.const 3444 + i32.const 3442 i32.const 0 call $~lib/builtins/abort unreachable @@ -42338,7 +42335,7 @@ if i32.const 0 i32.const 32 - i32.const 3445 + i32.const 3443 i32.const 0 call $~lib/builtins/abort unreachable @@ -42351,7 +42348,7 @@ if i32.const 0 i32.const 32 - i32.const 3446 + i32.const 3444 i32.const 0 call $~lib/builtins/abort unreachable @@ -42364,7 +42361,7 @@ if i32.const 0 i32.const 32 - i32.const 3447 + i32.const 3445 i32.const 0 call $~lib/builtins/abort unreachable @@ -42377,7 +42374,7 @@ if i32.const 0 i32.const 32 - i32.const 3448 + i32.const 3446 i32.const 0 call $~lib/builtins/abort unreachable @@ -42390,7 +42387,7 @@ if i32.const 0 i32.const 32 - i32.const 3449 + i32.const 3447 i32.const 0 call $~lib/builtins/abort unreachable @@ -42403,7 +42400,7 @@ if i32.const 0 i32.const 32 - i32.const 3450 + i32.const 3448 i32.const 0 call $~lib/builtins/abort unreachable @@ -42416,7 +42413,7 @@ if i32.const 0 i32.const 32 - i32.const 3451 + i32.const 3449 i32.const 0 call $~lib/builtins/abort unreachable @@ -42429,7 +42426,7 @@ if i32.const 0 i32.const 32 - i32.const 3452 + i32.const 3450 i32.const 0 call $~lib/builtins/abort unreachable @@ -42442,7 +42439,7 @@ if i32.const 0 i32.const 32 - i32.const 3453 + i32.const 3451 i32.const 0 call $~lib/builtins/abort unreachable @@ -42455,7 +42452,7 @@ if i32.const 0 i32.const 32 - i32.const 3454 + i32.const 3452 i32.const 0 call $~lib/builtins/abort unreachable @@ -42468,7 +42465,7 @@ if i32.const 0 i32.const 32 - i32.const 3455 + i32.const 3453 i32.const 0 call $~lib/builtins/abort unreachable @@ -42481,7 +42478,7 @@ if i32.const 0 i32.const 32 - i32.const 3456 + i32.const 3454 i32.const 0 call $~lib/builtins/abort unreachable @@ -42494,7 +42491,7 @@ if i32.const 0 i32.const 32 - i32.const 3457 + i32.const 3455 i32.const 0 call $~lib/builtins/abort unreachable @@ -42507,7 +42504,7 @@ if i32.const 0 i32.const 32 - i32.const 3458 + i32.const 3456 i32.const 0 call $~lib/builtins/abort unreachable @@ -42520,7 +42517,7 @@ if i32.const 0 i32.const 32 - i32.const 3459 + i32.const 3457 i32.const 0 call $~lib/builtins/abort unreachable @@ -42533,7 +42530,7 @@ if i32.const 0 i32.const 32 - i32.const 3460 + i32.const 3458 i32.const 0 call $~lib/builtins/abort unreachable @@ -42546,7 +42543,7 @@ if i32.const 0 i32.const 32 - i32.const 3461 + i32.const 3459 i32.const 0 call $~lib/builtins/abort unreachable @@ -42559,7 +42556,7 @@ if i32.const 0 i32.const 32 - i32.const 3462 + i32.const 3460 i32.const 0 call $~lib/builtins/abort unreachable @@ -42572,7 +42569,7 @@ if i32.const 0 i32.const 32 - i32.const 3463 + i32.const 3461 i32.const 0 call $~lib/builtins/abort unreachable @@ -42585,7 +42582,7 @@ if i32.const 0 i32.const 32 - i32.const 3464 + i32.const 3462 i32.const 0 call $~lib/builtins/abort unreachable @@ -42598,7 +42595,7 @@ if i32.const 0 i32.const 32 - i32.const 3465 + i32.const 3463 i32.const 0 call $~lib/builtins/abort unreachable @@ -42611,7 +42608,7 @@ if i32.const 0 i32.const 32 - i32.const 3466 + i32.const 3464 i32.const 0 call $~lib/builtins/abort unreachable @@ -42624,7 +42621,7 @@ if i32.const 0 i32.const 32 - i32.const 3467 + i32.const 3465 i32.const 0 call $~lib/builtins/abort unreachable @@ -42637,7 +42634,7 @@ if i32.const 0 i32.const 32 - i32.const 3468 + i32.const 3466 i32.const 0 call $~lib/builtins/abort unreachable @@ -42650,7 +42647,7 @@ if i32.const 0 i32.const 32 - i32.const 3469 + i32.const 3467 i32.const 0 call $~lib/builtins/abort unreachable @@ -42663,7 +42660,7 @@ if i32.const 0 i32.const 32 - i32.const 3470 + i32.const 3468 i32.const 0 call $~lib/builtins/abort unreachable @@ -42676,7 +42673,7 @@ if i32.const 0 i32.const 32 - i32.const 3471 + i32.const 3469 i32.const 0 call $~lib/builtins/abort unreachable @@ -42689,7 +42686,7 @@ if i32.const 0 i32.const 32 - i32.const 3472 + i32.const 3470 i32.const 0 call $~lib/builtins/abort unreachable @@ -42702,7 +42699,7 @@ if i32.const 0 i32.const 32 - i32.const 3473 + i32.const 3471 i32.const 0 call $~lib/builtins/abort unreachable @@ -42715,7 +42712,7 @@ if i32.const 0 i32.const 32 - i32.const 3474 + i32.const 3472 i32.const 0 call $~lib/builtins/abort unreachable @@ -42728,7 +42725,7 @@ if i32.const 0 i32.const 32 - i32.const 3475 + i32.const 3473 i32.const 0 call $~lib/builtins/abort unreachable @@ -42741,7 +42738,7 @@ if i32.const 0 i32.const 32 - i32.const 3476 + i32.const 3474 i32.const 0 call $~lib/builtins/abort unreachable @@ -42754,7 +42751,7 @@ if i32.const 0 i32.const 32 - i32.const 3477 + i32.const 3475 i32.const 0 call $~lib/builtins/abort unreachable @@ -42767,7 +42764,7 @@ if i32.const 0 i32.const 32 - i32.const 3478 + i32.const 3476 i32.const 0 call $~lib/builtins/abort unreachable @@ -42780,7 +42777,7 @@ if i32.const 0 i32.const 32 - i32.const 3479 + i32.const 3477 i32.const 0 call $~lib/builtins/abort unreachable @@ -42793,7 +42790,7 @@ if i32.const 0 i32.const 32 - i32.const 3480 + i32.const 3478 i32.const 0 call $~lib/builtins/abort unreachable @@ -42806,7 +42803,7 @@ if i32.const 0 i32.const 32 - i32.const 3481 + i32.const 3479 i32.const 0 call $~lib/builtins/abort unreachable @@ -42819,7 +42816,7 @@ if i32.const 0 i32.const 32 - i32.const 3482 + i32.const 3480 i32.const 0 call $~lib/builtins/abort unreachable @@ -42832,7 +42829,7 @@ if i32.const 0 i32.const 32 - i32.const 3483 + i32.const 3481 i32.const 0 call $~lib/builtins/abort unreachable @@ -42845,7 +42842,7 @@ if i32.const 0 i32.const 32 - i32.const 3484 + i32.const 3482 i32.const 0 call $~lib/builtins/abort unreachable @@ -42858,7 +42855,7 @@ if i32.const 0 i32.const 32 - i32.const 3485 + i32.const 3483 i32.const 0 call $~lib/builtins/abort unreachable @@ -42871,7 +42868,7 @@ if i32.const 0 i32.const 32 - i32.const 3486 + i32.const 3484 i32.const 0 call $~lib/builtins/abort unreachable @@ -42884,7 +42881,7 @@ if i32.const 0 i32.const 32 - i32.const 3487 + i32.const 3485 i32.const 0 call $~lib/builtins/abort unreachable @@ -42897,7 +42894,7 @@ if i32.const 0 i32.const 32 - i32.const 3488 + i32.const 3486 i32.const 0 call $~lib/builtins/abort unreachable @@ -42910,7 +42907,7 @@ if i32.const 0 i32.const 32 - i32.const 3489 + i32.const 3487 i32.const 0 call $~lib/builtins/abort unreachable @@ -42923,7 +42920,7 @@ if i32.const 0 i32.const 32 - i32.const 3490 + i32.const 3488 i32.const 0 call $~lib/builtins/abort unreachable @@ -42936,7 +42933,7 @@ if i32.const 0 i32.const 32 - i32.const 3491 + i32.const 3489 i32.const 0 call $~lib/builtins/abort unreachable @@ -42949,7 +42946,7 @@ if i32.const 0 i32.const 32 - i32.const 3492 + i32.const 3490 i32.const 0 call $~lib/builtins/abort unreachable @@ -42962,7 +42959,7 @@ if i32.const 0 i32.const 32 - i32.const 3493 + i32.const 3491 i32.const 0 call $~lib/builtins/abort unreachable @@ -42975,7 +42972,7 @@ if i32.const 0 i32.const 32 - i32.const 3494 + i32.const 3492 i32.const 0 call $~lib/builtins/abort unreachable @@ -42988,7 +42985,7 @@ if i32.const 0 i32.const 32 - i32.const 3495 + i32.const 3493 i32.const 0 call $~lib/builtins/abort unreachable @@ -43001,7 +42998,7 @@ if i32.const 0 i32.const 32 - i32.const 3496 + i32.const 3494 i32.const 0 call $~lib/builtins/abort unreachable @@ -43014,7 +43011,7 @@ if i32.const 0 i32.const 32 - i32.const 3497 + i32.const 3495 i32.const 0 call $~lib/builtins/abort unreachable @@ -43027,7 +43024,7 @@ if i32.const 0 i32.const 32 - i32.const 3498 + i32.const 3496 i32.const 0 call $~lib/builtins/abort unreachable @@ -43040,7 +43037,7 @@ if i32.const 0 i32.const 32 - i32.const 3499 + i32.const 3497 i32.const 0 call $~lib/builtins/abort unreachable @@ -43053,7 +43050,7 @@ if i32.const 0 i32.const 32 - i32.const 3500 + i32.const 3498 i32.const 0 call $~lib/builtins/abort unreachable @@ -43066,7 +43063,7 @@ if i32.const 0 i32.const 32 - i32.const 3501 + i32.const 3499 i32.const 0 call $~lib/builtins/abort unreachable @@ -43079,7 +43076,7 @@ if i32.const 0 i32.const 32 - i32.const 3502 + i32.const 3500 i32.const 0 call $~lib/builtins/abort unreachable @@ -43092,7 +43089,7 @@ if i32.const 0 i32.const 32 - i32.const 3511 + i32.const 3509 i32.const 0 call $~lib/builtins/abort unreachable @@ -43105,7 +43102,7 @@ if i32.const 0 i32.const 32 - i32.const 3512 + i32.const 3510 i32.const 0 call $~lib/builtins/abort unreachable @@ -43118,7 +43115,7 @@ if i32.const 0 i32.const 32 - i32.const 3513 + i32.const 3511 i32.const 0 call $~lib/builtins/abort unreachable @@ -43131,7 +43128,7 @@ if i32.const 0 i32.const 32 - i32.const 3514 + i32.const 3512 i32.const 0 call $~lib/builtins/abort unreachable @@ -43144,7 +43141,7 @@ if i32.const 0 i32.const 32 - i32.const 3515 + i32.const 3513 i32.const 0 call $~lib/builtins/abort unreachable @@ -43157,7 +43154,7 @@ if i32.const 0 i32.const 32 - i32.const 3516 + i32.const 3514 i32.const 0 call $~lib/builtins/abort unreachable @@ -43170,7 +43167,7 @@ if i32.const 0 i32.const 32 - i32.const 3517 + i32.const 3515 i32.const 0 call $~lib/builtins/abort unreachable @@ -43183,7 +43180,7 @@ if i32.const 0 i32.const 32 - i32.const 3518 + i32.const 3516 i32.const 0 call $~lib/builtins/abort unreachable @@ -43196,7 +43193,7 @@ if i32.const 0 i32.const 32 - i32.const 3519 + i32.const 3517 i32.const 0 call $~lib/builtins/abort unreachable @@ -43209,7 +43206,7 @@ if i32.const 0 i32.const 32 - i32.const 3520 + i32.const 3518 i32.const 0 call $~lib/builtins/abort unreachable @@ -43222,7 +43219,7 @@ if i32.const 0 i32.const 32 - i32.const 3523 + i32.const 3521 i32.const 0 call $~lib/builtins/abort unreachable @@ -43235,7 +43232,7 @@ if i32.const 0 i32.const 32 - i32.const 3524 + i32.const 3522 i32.const 0 call $~lib/builtins/abort unreachable @@ -43248,7 +43245,7 @@ if i32.const 0 i32.const 32 - i32.const 3525 + i32.const 3523 i32.const 0 call $~lib/builtins/abort unreachable @@ -43261,7 +43258,7 @@ if i32.const 0 i32.const 32 - i32.const 3526 + i32.const 3524 i32.const 0 call $~lib/builtins/abort unreachable @@ -43274,7 +43271,7 @@ if i32.const 0 i32.const 32 - i32.const 3527 + i32.const 3525 i32.const 0 call $~lib/builtins/abort unreachable @@ -43287,7 +43284,7 @@ if i32.const 0 i32.const 32 - i32.const 3528 + i32.const 3526 i32.const 0 call $~lib/builtins/abort unreachable @@ -43300,7 +43297,7 @@ if i32.const 0 i32.const 32 - i32.const 3529 + i32.const 3527 i32.const 0 call $~lib/builtins/abort unreachable @@ -43313,7 +43310,7 @@ if i32.const 0 i32.const 32 - i32.const 3530 + i32.const 3528 i32.const 0 call $~lib/builtins/abort unreachable @@ -43326,7 +43323,7 @@ if i32.const 0 i32.const 32 - i32.const 3531 + i32.const 3529 i32.const 0 call $~lib/builtins/abort unreachable @@ -43339,7 +43336,7 @@ if i32.const 0 i32.const 32 - i32.const 3532 + i32.const 3530 i32.const 0 call $~lib/builtins/abort unreachable @@ -43352,7 +43349,7 @@ if i32.const 0 i32.const 32 - i32.const 3533 + i32.const 3531 i32.const 0 call $~lib/builtins/abort unreachable @@ -43365,7 +43362,7 @@ if i32.const 0 i32.const 32 - i32.const 3534 + i32.const 3532 i32.const 0 call $~lib/builtins/abort unreachable @@ -43378,7 +43375,7 @@ if i32.const 0 i32.const 32 - i32.const 3535 + i32.const 3533 i32.const 0 call $~lib/builtins/abort unreachable @@ -43391,7 +43388,7 @@ if i32.const 0 i32.const 32 - i32.const 3536 + i32.const 3534 i32.const 0 call $~lib/builtins/abort unreachable @@ -43404,7 +43401,7 @@ if i32.const 0 i32.const 32 - i32.const 3537 + i32.const 3535 i32.const 0 call $~lib/builtins/abort unreachable @@ -43417,7 +43414,7 @@ if i32.const 0 i32.const 32 - i32.const 3538 + i32.const 3536 i32.const 0 call $~lib/builtins/abort unreachable @@ -43430,7 +43427,7 @@ if i32.const 0 i32.const 32 - i32.const 3539 + i32.const 3537 i32.const 0 call $~lib/builtins/abort unreachable @@ -43443,7 +43440,7 @@ if i32.const 0 i32.const 32 - i32.const 3540 + i32.const 3538 i32.const 0 call $~lib/builtins/abort unreachable @@ -43456,7 +43453,7 @@ if i32.const 0 i32.const 32 - i32.const 3541 + i32.const 3539 i32.const 0 call $~lib/builtins/abort unreachable @@ -43469,7 +43466,7 @@ if i32.const 0 i32.const 32 - i32.const 3542 + i32.const 3540 i32.const 0 call $~lib/builtins/abort unreachable @@ -43482,7 +43479,7 @@ if i32.const 0 i32.const 32 - i32.const 3543 + i32.const 3541 i32.const 0 call $~lib/builtins/abort unreachable @@ -43495,7 +43492,7 @@ if i32.const 0 i32.const 32 - i32.const 3544 + i32.const 3542 i32.const 0 call $~lib/builtins/abort unreachable @@ -43508,7 +43505,7 @@ if i32.const 0 i32.const 32 - i32.const 3556 + i32.const 3554 i32.const 0 call $~lib/builtins/abort unreachable @@ -43521,7 +43518,7 @@ if i32.const 0 i32.const 32 - i32.const 3557 + i32.const 3555 i32.const 0 call $~lib/builtins/abort unreachable @@ -43534,7 +43531,7 @@ if i32.const 0 i32.const 32 - i32.const 3558 + i32.const 3556 i32.const 0 call $~lib/builtins/abort unreachable @@ -43547,7 +43544,7 @@ if i32.const 0 i32.const 32 - i32.const 3559 + i32.const 3557 i32.const 0 call $~lib/builtins/abort unreachable @@ -43560,7 +43557,7 @@ if i32.const 0 i32.const 32 - i32.const 3560 + i32.const 3558 i32.const 0 call $~lib/builtins/abort unreachable @@ -43573,7 +43570,7 @@ if i32.const 0 i32.const 32 - i32.const 3561 + i32.const 3559 i32.const 0 call $~lib/builtins/abort unreachable @@ -43586,7 +43583,7 @@ if i32.const 0 i32.const 32 - i32.const 3562 + i32.const 3560 i32.const 0 call $~lib/builtins/abort unreachable @@ -43599,7 +43596,7 @@ if i32.const 0 i32.const 32 - i32.const 3563 + i32.const 3561 i32.const 0 call $~lib/builtins/abort unreachable @@ -43612,7 +43609,7 @@ if i32.const 0 i32.const 32 - i32.const 3564 + i32.const 3562 i32.const 0 call $~lib/builtins/abort unreachable @@ -43625,7 +43622,7 @@ if i32.const 0 i32.const 32 - i32.const 3565 + i32.const 3563 i32.const 0 call $~lib/builtins/abort unreachable @@ -43638,7 +43635,7 @@ if i32.const 0 i32.const 32 - i32.const 3568 + i32.const 3566 i32.const 0 call $~lib/builtins/abort unreachable @@ -43651,7 +43648,7 @@ if i32.const 0 i32.const 32 - i32.const 3569 + i32.const 3567 i32.const 0 call $~lib/builtins/abort unreachable @@ -43664,7 +43661,7 @@ if i32.const 0 i32.const 32 - i32.const 3570 + i32.const 3568 i32.const 0 call $~lib/builtins/abort unreachable @@ -43677,7 +43674,7 @@ if i32.const 0 i32.const 32 - i32.const 3571 + i32.const 3569 i32.const 0 call $~lib/builtins/abort unreachable @@ -43690,7 +43687,7 @@ if i32.const 0 i32.const 32 - i32.const 3572 + i32.const 3570 i32.const 0 call $~lib/builtins/abort unreachable @@ -43703,7 +43700,7 @@ if i32.const 0 i32.const 32 - i32.const 3573 + i32.const 3571 i32.const 0 call $~lib/builtins/abort unreachable @@ -43716,7 +43713,7 @@ if i32.const 0 i32.const 32 - i32.const 3574 + i32.const 3572 i32.const 0 call $~lib/builtins/abort unreachable @@ -43729,7 +43726,7 @@ if i32.const 0 i32.const 32 - i32.const 3575 + i32.const 3573 i32.const 0 call $~lib/builtins/abort unreachable @@ -43742,7 +43739,7 @@ if i32.const 0 i32.const 32 - i32.const 3576 + i32.const 3574 i32.const 0 call $~lib/builtins/abort unreachable @@ -43755,7 +43752,7 @@ if i32.const 0 i32.const 32 - i32.const 3577 + i32.const 3575 i32.const 0 call $~lib/builtins/abort unreachable @@ -43768,7 +43765,7 @@ if i32.const 0 i32.const 32 - i32.const 3578 + i32.const 3576 i32.const 0 call $~lib/builtins/abort unreachable @@ -43781,7 +43778,7 @@ if i32.const 0 i32.const 32 - i32.const 3579 + i32.const 3577 i32.const 0 call $~lib/builtins/abort unreachable @@ -43794,7 +43791,7 @@ if i32.const 0 i32.const 32 - i32.const 3580 + i32.const 3578 i32.const 0 call $~lib/builtins/abort unreachable @@ -43807,7 +43804,7 @@ if i32.const 0 i32.const 32 - i32.const 3581 + i32.const 3579 i32.const 0 call $~lib/builtins/abort unreachable @@ -43820,7 +43817,7 @@ if i32.const 0 i32.const 32 - i32.const 3582 + i32.const 3580 i32.const 0 call $~lib/builtins/abort unreachable @@ -43833,7 +43830,7 @@ if i32.const 0 i32.const 32 - i32.const 3583 + i32.const 3581 i32.const 0 call $~lib/builtins/abort unreachable @@ -43846,7 +43843,7 @@ if i32.const 0 i32.const 32 - i32.const 3584 + i32.const 3582 i32.const 0 call $~lib/builtins/abort unreachable @@ -43859,7 +43856,7 @@ if i32.const 0 i32.const 32 - i32.const 3585 + i32.const 3583 i32.const 0 call $~lib/builtins/abort unreachable @@ -43872,7 +43869,7 @@ if i32.const 0 i32.const 32 - i32.const 3586 + i32.const 3584 i32.const 0 call $~lib/builtins/abort unreachable @@ -43885,7 +43882,7 @@ if i32.const 0 i32.const 32 - i32.const 3587 + i32.const 3585 i32.const 0 call $~lib/builtins/abort unreachable @@ -43898,7 +43895,7 @@ if i32.const 0 i32.const 32 - i32.const 3588 + i32.const 3586 i32.const 0 call $~lib/builtins/abort unreachable @@ -43911,7 +43908,7 @@ if i32.const 0 i32.const 32 - i32.const 3589 + i32.const 3587 i32.const 0 call $~lib/builtins/abort unreachable @@ -43924,7 +43921,7 @@ if i32.const 0 i32.const 32 - i32.const 3590 + i32.const 3588 i32.const 0 call $~lib/builtins/abort unreachable @@ -43937,7 +43934,7 @@ if i32.const 0 i32.const 32 - i32.const 3591 + i32.const 3589 i32.const 0 call $~lib/builtins/abort unreachable @@ -43950,7 +43947,7 @@ if i32.const 0 i32.const 32 - i32.const 3592 + i32.const 3590 i32.const 0 call $~lib/builtins/abort unreachable @@ -43963,7 +43960,7 @@ if i32.const 0 i32.const 32 - i32.const 3593 + i32.const 3591 i32.const 0 call $~lib/builtins/abort unreachable @@ -43976,7 +43973,7 @@ if i32.const 0 i32.const 32 - i32.const 3594 + i32.const 3592 i32.const 0 call $~lib/builtins/abort unreachable @@ -43989,7 +43986,7 @@ if i32.const 0 i32.const 32 - i32.const 3595 + i32.const 3593 i32.const 0 call $~lib/builtins/abort unreachable @@ -44002,7 +43999,7 @@ if i32.const 0 i32.const 32 - i32.const 3596 + i32.const 3594 i32.const 0 call $~lib/builtins/abort unreachable @@ -44015,7 +44012,7 @@ if i32.const 0 i32.const 32 - i32.const 3597 + i32.const 3595 i32.const 0 call $~lib/builtins/abort unreachable @@ -44028,7 +44025,7 @@ if i32.const 0 i32.const 32 - i32.const 3598 + i32.const 3596 i32.const 0 call $~lib/builtins/abort unreachable @@ -44041,7 +44038,7 @@ if i32.const 0 i32.const 32 - i32.const 3599 + i32.const 3597 i32.const 0 call $~lib/builtins/abort unreachable @@ -44054,7 +44051,7 @@ if i32.const 0 i32.const 32 - i32.const 3600 + i32.const 3598 i32.const 0 call $~lib/builtins/abort unreachable @@ -44067,7 +44064,7 @@ if i32.const 0 i32.const 32 - i32.const 3601 + i32.const 3599 i32.const 0 call $~lib/builtins/abort unreachable @@ -44080,7 +44077,7 @@ if i32.const 0 i32.const 32 - i32.const 3602 + i32.const 3600 i32.const 0 call $~lib/builtins/abort unreachable @@ -44093,7 +44090,7 @@ if i32.const 0 i32.const 32 - i32.const 3603 + i32.const 3601 i32.const 0 call $~lib/builtins/abort unreachable @@ -44106,7 +44103,7 @@ if i32.const 0 i32.const 32 - i32.const 3604 + i32.const 3602 i32.const 0 call $~lib/builtins/abort unreachable @@ -44119,7 +44116,7 @@ if i32.const 0 i32.const 32 - i32.const 3605 + i32.const 3603 i32.const 0 call $~lib/builtins/abort unreachable @@ -44132,7 +44129,7 @@ if i32.const 0 i32.const 32 - i32.const 3608 + i32.const 3606 i32.const 0 call $~lib/builtins/abort unreachable @@ -44145,7 +44142,7 @@ if i32.const 0 i32.const 32 - i32.const 3609 + i32.const 3607 i32.const 0 call $~lib/builtins/abort unreachable @@ -44158,7 +44155,7 @@ if i32.const 0 i32.const 32 - i32.const 3610 + i32.const 3608 i32.const 0 call $~lib/builtins/abort unreachable @@ -44171,7 +44168,7 @@ if i32.const 0 i32.const 32 - i32.const 3611 + i32.const 3609 i32.const 0 call $~lib/builtins/abort unreachable @@ -44184,7 +44181,7 @@ if i32.const 0 i32.const 32 - i32.const 3612 + i32.const 3610 i32.const 0 call $~lib/builtins/abort unreachable @@ -44197,7 +44194,7 @@ if i32.const 0 i32.const 32 - i32.const 3613 + i32.const 3611 i32.const 0 call $~lib/builtins/abort unreachable @@ -44210,7 +44207,7 @@ if i32.const 0 i32.const 32 - i32.const 3614 + i32.const 3612 i32.const 0 call $~lib/builtins/abort unreachable @@ -44223,7 +44220,7 @@ if i32.const 0 i32.const 32 - i32.const 3615 + i32.const 3613 i32.const 0 call $~lib/builtins/abort unreachable @@ -44236,7 +44233,7 @@ if i32.const 0 i32.const 32 - i32.const 3617 + i32.const 3615 i32.const 0 call $~lib/builtins/abort unreachable @@ -44249,7 +44246,7 @@ if i32.const 0 i32.const 32 - i32.const 3618 + i32.const 3616 i32.const 0 call $~lib/builtins/abort unreachable @@ -44262,7 +44259,7 @@ if i32.const 0 i32.const 32 - i32.const 3619 + i32.const 3617 i32.const 0 call $~lib/builtins/abort unreachable @@ -44275,7 +44272,7 @@ if i32.const 0 i32.const 32 - i32.const 3620 + i32.const 3618 i32.const 0 call $~lib/builtins/abort unreachable @@ -44288,7 +44285,7 @@ if i32.const 0 i32.const 32 - i32.const 3621 + i32.const 3619 i32.const 0 call $~lib/builtins/abort unreachable @@ -44301,7 +44298,7 @@ if i32.const 0 i32.const 32 - i32.const 3622 + i32.const 3620 i32.const 0 call $~lib/builtins/abort unreachable @@ -44314,7 +44311,7 @@ if i32.const 0 i32.const 32 - i32.const 3623 + i32.const 3621 i32.const 0 call $~lib/builtins/abort unreachable @@ -44327,7 +44324,7 @@ if i32.const 0 i32.const 32 - i32.const 3624 + i32.const 3622 i32.const 0 call $~lib/builtins/abort unreachable @@ -44340,7 +44337,7 @@ if i32.const 0 i32.const 32 - i32.const 3627 + i32.const 3625 i32.const 0 call $~lib/builtins/abort unreachable @@ -44353,7 +44350,7 @@ if i32.const 0 i32.const 32 - i32.const 3628 + i32.const 3626 i32.const 0 call $~lib/builtins/abort unreachable @@ -44366,7 +44363,7 @@ if i32.const 0 i32.const 32 - i32.const 3629 + i32.const 3627 i32.const 0 call $~lib/builtins/abort unreachable @@ -44379,7 +44376,7 @@ if i32.const 0 i32.const 32 - i32.const 3630 + i32.const 3628 i32.const 0 call $~lib/builtins/abort unreachable @@ -44392,7 +44389,7 @@ if i32.const 0 i32.const 32 - i32.const 3631 + i32.const 3629 i32.const 0 call $~lib/builtins/abort unreachable @@ -44405,7 +44402,7 @@ if i32.const 0 i32.const 32 - i32.const 3640 + i32.const 3638 i32.const 0 call $~lib/builtins/abort unreachable @@ -44418,7 +44415,7 @@ if i32.const 0 i32.const 32 - i32.const 3641 + i32.const 3639 i32.const 0 call $~lib/builtins/abort unreachable @@ -44431,7 +44428,7 @@ if i32.const 0 i32.const 32 - i32.const 3642 + i32.const 3640 i32.const 0 call $~lib/builtins/abort unreachable @@ -44444,7 +44441,7 @@ if i32.const 0 i32.const 32 - i32.const 3643 + i32.const 3641 i32.const 0 call $~lib/builtins/abort unreachable @@ -44457,7 +44454,7 @@ if i32.const 0 i32.const 32 - i32.const 3644 + i32.const 3642 i32.const 0 call $~lib/builtins/abort unreachable @@ -44470,7 +44467,7 @@ if i32.const 0 i32.const 32 - i32.const 3645 + i32.const 3643 i32.const 0 call $~lib/builtins/abort unreachable @@ -44483,7 +44480,7 @@ if i32.const 0 i32.const 32 - i32.const 3646 + i32.const 3644 i32.const 0 call $~lib/builtins/abort unreachable @@ -44496,7 +44493,7 @@ if i32.const 0 i32.const 32 - i32.const 3647 + i32.const 3645 i32.const 0 call $~lib/builtins/abort unreachable @@ -44509,7 +44506,7 @@ if i32.const 0 i32.const 32 - i32.const 3648 + i32.const 3646 i32.const 0 call $~lib/builtins/abort unreachable @@ -44522,7 +44519,7 @@ if i32.const 0 i32.const 32 - i32.const 3649 + i32.const 3647 i32.const 0 call $~lib/builtins/abort unreachable @@ -44535,7 +44532,7 @@ if i32.const 0 i32.const 32 - i32.const 3652 + i32.const 3650 i32.const 0 call $~lib/builtins/abort unreachable @@ -44548,7 +44545,7 @@ if i32.const 0 i32.const 32 - i32.const 3653 + i32.const 3651 i32.const 0 call $~lib/builtins/abort unreachable @@ -44561,7 +44558,7 @@ if i32.const 0 i32.const 32 - i32.const 3654 + i32.const 3652 i32.const 0 call $~lib/builtins/abort unreachable @@ -44574,7 +44571,7 @@ if i32.const 0 i32.const 32 - i32.const 3655 + i32.const 3653 i32.const 0 call $~lib/builtins/abort unreachable @@ -44587,7 +44584,7 @@ if i32.const 0 i32.const 32 - i32.const 3656 + i32.const 3654 i32.const 0 call $~lib/builtins/abort unreachable @@ -44600,7 +44597,7 @@ if i32.const 0 i32.const 32 - i32.const 3659 + i32.const 3657 i32.const 0 call $~lib/builtins/abort unreachable @@ -44613,7 +44610,7 @@ if i32.const 0 i32.const 32 - i32.const 3660 + i32.const 3658 i32.const 0 call $~lib/builtins/abort unreachable @@ -44626,7 +44623,7 @@ if i32.const 0 i32.const 32 - i32.const 3661 + i32.const 3659 i32.const 0 call $~lib/builtins/abort unreachable @@ -44639,7 +44636,7 @@ if i32.const 0 i32.const 32 - i32.const 3662 + i32.const 3660 i32.const 0 call $~lib/builtins/abort unreachable @@ -44652,7 +44649,7 @@ if i32.const 0 i32.const 32 - i32.const 3663 + i32.const 3661 i32.const 0 call $~lib/builtins/abort unreachable @@ -44665,7 +44662,7 @@ if i32.const 0 i32.const 32 - i32.const 3664 + i32.const 3662 i32.const 0 call $~lib/builtins/abort unreachable @@ -44678,7 +44675,7 @@ if i32.const 0 i32.const 32 - i32.const 3665 + i32.const 3663 i32.const 0 call $~lib/builtins/abort unreachable @@ -44691,7 +44688,7 @@ if i32.const 0 i32.const 32 - i32.const 3666 + i32.const 3664 i32.const 0 call $~lib/builtins/abort unreachable @@ -44704,7 +44701,7 @@ if i32.const 0 i32.const 32 - i32.const 3667 + i32.const 3665 i32.const 0 call $~lib/builtins/abort unreachable @@ -44717,7 +44714,7 @@ if i32.const 0 i32.const 32 - i32.const 3668 + i32.const 3666 i32.const 0 call $~lib/builtins/abort unreachable @@ -44730,7 +44727,7 @@ if i32.const 0 i32.const 32 - i32.const 3669 + i32.const 3667 i32.const 0 call $~lib/builtins/abort unreachable @@ -44743,7 +44740,7 @@ if i32.const 0 i32.const 32 - i32.const 3670 + i32.const 3668 i32.const 0 call $~lib/builtins/abort unreachable @@ -44756,7 +44753,7 @@ if i32.const 0 i32.const 32 - i32.const 3671 + i32.const 3669 i32.const 0 call $~lib/builtins/abort unreachable @@ -44769,7 +44766,7 @@ if i32.const 0 i32.const 32 - i32.const 3672 + i32.const 3670 i32.const 0 call $~lib/builtins/abort unreachable @@ -44782,7 +44779,7 @@ if i32.const 0 i32.const 32 - i32.const 3673 + i32.const 3671 i32.const 0 call $~lib/builtins/abort unreachable @@ -44795,7 +44792,7 @@ if i32.const 0 i32.const 32 - i32.const 3674 + i32.const 3672 i32.const 0 call $~lib/builtins/abort unreachable @@ -44808,7 +44805,7 @@ if i32.const 0 i32.const 32 - i32.const 3675 + i32.const 3673 i32.const 0 call $~lib/builtins/abort unreachable @@ -44821,7 +44818,7 @@ if i32.const 0 i32.const 32 - i32.const 3676 + i32.const 3674 i32.const 0 call $~lib/builtins/abort unreachable @@ -44834,7 +44831,7 @@ if i32.const 0 i32.const 32 - i32.const 3677 + i32.const 3675 i32.const 0 call $~lib/builtins/abort unreachable @@ -44847,7 +44844,7 @@ if i32.const 0 i32.const 32 - i32.const 3678 + i32.const 3676 i32.const 0 call $~lib/builtins/abort unreachable @@ -44860,7 +44857,7 @@ if i32.const 0 i32.const 32 - i32.const 3679 + i32.const 3677 i32.const 0 call $~lib/builtins/abort unreachable @@ -44873,7 +44870,7 @@ if i32.const 0 i32.const 32 - i32.const 3680 + i32.const 3678 i32.const 0 call $~lib/builtins/abort unreachable @@ -44886,7 +44883,7 @@ if i32.const 0 i32.const 32 - i32.const 3681 + i32.const 3679 i32.const 0 call $~lib/builtins/abort unreachable @@ -44899,7 +44896,7 @@ if i32.const 0 i32.const 32 - i32.const 3682 + i32.const 3680 i32.const 0 call $~lib/builtins/abort unreachable @@ -44912,7 +44909,7 @@ if i32.const 0 i32.const 32 - i32.const 3683 + i32.const 3681 i32.const 0 call $~lib/builtins/abort unreachable @@ -44925,7 +44922,7 @@ if i32.const 0 i32.const 32 - i32.const 3684 + i32.const 3682 i32.const 0 call $~lib/builtins/abort unreachable @@ -44938,7 +44935,7 @@ if i32.const 0 i32.const 32 - i32.const 3685 + i32.const 3683 i32.const 0 call $~lib/builtins/abort unreachable @@ -44951,7 +44948,7 @@ if i32.const 0 i32.const 32 - i32.const 3686 + i32.const 3684 i32.const 0 call $~lib/builtins/abort unreachable @@ -44964,7 +44961,7 @@ if i32.const 0 i32.const 32 - i32.const 3687 + i32.const 3685 i32.const 0 call $~lib/builtins/abort unreachable @@ -44977,7 +44974,7 @@ if i32.const 0 i32.const 32 - i32.const 3688 + i32.const 3686 i32.const 0 call $~lib/builtins/abort unreachable @@ -44990,7 +44987,7 @@ if i32.const 0 i32.const 32 - i32.const 3689 + i32.const 3687 i32.const 0 call $~lib/builtins/abort unreachable @@ -45003,7 +45000,7 @@ if i32.const 0 i32.const 32 - i32.const 3690 + i32.const 3688 i32.const 0 call $~lib/builtins/abort unreachable @@ -45016,7 +45013,7 @@ if i32.const 0 i32.const 32 - i32.const 3691 + i32.const 3689 i32.const 0 call $~lib/builtins/abort unreachable @@ -45029,7 +45026,7 @@ if i32.const 0 i32.const 32 - i32.const 3692 + i32.const 3690 i32.const 0 call $~lib/builtins/abort unreachable @@ -45042,7 +45039,7 @@ if i32.const 0 i32.const 32 - i32.const 3693 + i32.const 3691 i32.const 0 call $~lib/builtins/abort unreachable @@ -45055,7 +45052,7 @@ if i32.const 0 i32.const 32 - i32.const 3694 + i32.const 3692 i32.const 0 call $~lib/builtins/abort unreachable @@ -45068,7 +45065,7 @@ if i32.const 0 i32.const 32 - i32.const 3706 + i32.const 3704 i32.const 0 call $~lib/builtins/abort unreachable @@ -45081,7 +45078,7 @@ if i32.const 0 i32.const 32 - i32.const 3707 + i32.const 3705 i32.const 0 call $~lib/builtins/abort unreachable @@ -45094,7 +45091,7 @@ if i32.const 0 i32.const 32 - i32.const 3708 + i32.const 3706 i32.const 0 call $~lib/builtins/abort unreachable @@ -45107,7 +45104,7 @@ if i32.const 0 i32.const 32 - i32.const 3709 + i32.const 3707 i32.const 0 call $~lib/builtins/abort unreachable @@ -45120,7 +45117,7 @@ if i32.const 0 i32.const 32 - i32.const 3710 + i32.const 3708 i32.const 0 call $~lib/builtins/abort unreachable @@ -45133,7 +45130,7 @@ if i32.const 0 i32.const 32 - i32.const 3711 + i32.const 3709 i32.const 0 call $~lib/builtins/abort unreachable @@ -45146,7 +45143,7 @@ if i32.const 0 i32.const 32 - i32.const 3712 + i32.const 3710 i32.const 0 call $~lib/builtins/abort unreachable @@ -45159,7 +45156,7 @@ if i32.const 0 i32.const 32 - i32.const 3713 + i32.const 3711 i32.const 0 call $~lib/builtins/abort unreachable @@ -45172,7 +45169,7 @@ if i32.const 0 i32.const 32 - i32.const 3714 + i32.const 3712 i32.const 0 call $~lib/builtins/abort unreachable @@ -45185,7 +45182,7 @@ if i32.const 0 i32.const 32 - i32.const 3715 + i32.const 3713 i32.const 0 call $~lib/builtins/abort unreachable @@ -45198,7 +45195,7 @@ if i32.const 0 i32.const 32 - i32.const 3718 + i32.const 3716 i32.const 0 call $~lib/builtins/abort unreachable @@ -45211,7 +45208,7 @@ if i32.const 0 i32.const 32 - i32.const 3719 + i32.const 3717 i32.const 0 call $~lib/builtins/abort unreachable @@ -45224,7 +45221,7 @@ if i32.const 0 i32.const 32 - i32.const 3720 + i32.const 3718 i32.const 0 call $~lib/builtins/abort unreachable @@ -45237,7 +45234,7 @@ if i32.const 0 i32.const 32 - i32.const 3721 + i32.const 3719 i32.const 0 call $~lib/builtins/abort unreachable @@ -45250,7 +45247,7 @@ if i32.const 0 i32.const 32 - i32.const 3722 + i32.const 3720 i32.const 0 call $~lib/builtins/abort unreachable @@ -45263,7 +45260,7 @@ if i32.const 0 i32.const 32 - i32.const 3731 + i32.const 3729 i32.const 0 call $~lib/builtins/abort unreachable @@ -45276,7 +45273,7 @@ if i32.const 0 i32.const 32 - i32.const 3732 + i32.const 3730 i32.const 0 call $~lib/builtins/abort unreachable @@ -45289,7 +45286,7 @@ if i32.const 0 i32.const 32 - i32.const 3733 + i32.const 3731 i32.const 0 call $~lib/builtins/abort unreachable @@ -45302,7 +45299,7 @@ if i32.const 0 i32.const 32 - i32.const 3734 + i32.const 3732 i32.const 0 call $~lib/builtins/abort unreachable @@ -45315,7 +45312,7 @@ if i32.const 0 i32.const 32 - i32.const 3735 + i32.const 3733 i32.const 0 call $~lib/builtins/abort unreachable @@ -45328,7 +45325,7 @@ if i32.const 0 i32.const 32 - i32.const 3736 + i32.const 3734 i32.const 0 call $~lib/builtins/abort unreachable @@ -45341,7 +45338,7 @@ if i32.const 0 i32.const 32 - i32.const 3737 + i32.const 3735 i32.const 0 call $~lib/builtins/abort unreachable @@ -45354,7 +45351,7 @@ if i32.const 0 i32.const 32 - i32.const 3738 + i32.const 3736 i32.const 0 call $~lib/builtins/abort unreachable @@ -45367,7 +45364,7 @@ if i32.const 0 i32.const 32 - i32.const 3739 + i32.const 3737 i32.const 0 call $~lib/builtins/abort unreachable @@ -45380,7 +45377,7 @@ if i32.const 0 i32.const 32 - i32.const 3740 + i32.const 3738 i32.const 0 call $~lib/builtins/abort unreachable @@ -45393,7 +45390,7 @@ if i32.const 0 i32.const 32 - i32.const 3743 + i32.const 3741 i32.const 0 call $~lib/builtins/abort unreachable @@ -45406,7 +45403,7 @@ if i32.const 0 i32.const 32 - i32.const 3744 + i32.const 3742 i32.const 0 call $~lib/builtins/abort unreachable @@ -45419,7 +45416,7 @@ if i32.const 0 i32.const 32 - i32.const 3745 + i32.const 3743 i32.const 0 call $~lib/builtins/abort unreachable @@ -45432,7 +45429,7 @@ if i32.const 0 i32.const 32 - i32.const 3746 + i32.const 3744 i32.const 0 call $~lib/builtins/abort unreachable @@ -45445,7 +45442,7 @@ if i32.const 0 i32.const 32 - i32.const 3747 + i32.const 3745 i32.const 0 call $~lib/builtins/abort unreachable @@ -45457,7 +45454,7 @@ if i32.const 0 i32.const 32 - i32.const 3759 + i32.const 3757 i32.const 0 call $~lib/builtins/abort unreachable @@ -45469,7 +45466,7 @@ if i32.const 0 i32.const 32 - i32.const 3760 + i32.const 3758 i32.const 0 call $~lib/builtins/abort unreachable @@ -45481,7 +45478,7 @@ if i32.const 0 i32.const 32 - i32.const 3761 + i32.const 3759 i32.const 0 call $~lib/builtins/abort unreachable @@ -45493,7 +45490,7 @@ if i32.const 0 i32.const 32 - i32.const 3762 + i32.const 3760 i32.const 0 call $~lib/builtins/abort unreachable @@ -45505,7 +45502,7 @@ if i32.const 0 i32.const 32 - i32.const 3763 + i32.const 3761 i32.const 0 call $~lib/builtins/abort unreachable @@ -45517,7 +45514,7 @@ if i32.const 0 i32.const 32 - i32.const 3764 + i32.const 3762 i32.const 0 call $~lib/builtins/abort unreachable @@ -45529,7 +45526,7 @@ if i32.const 0 i32.const 32 - i32.const 3765 + i32.const 3763 i32.const 0 call $~lib/builtins/abort unreachable @@ -45541,7 +45538,7 @@ if i32.const 0 i32.const 32 - i32.const 3766 + i32.const 3764 i32.const 0 call $~lib/builtins/abort unreachable @@ -45553,7 +45550,7 @@ if i32.const 0 i32.const 32 - i32.const 3767 + i32.const 3765 i32.const 0 call $~lib/builtins/abort unreachable @@ -45565,7 +45562,7 @@ if i32.const 0 i32.const 32 - i32.const 3768 + i32.const 3766 i32.const 0 call $~lib/builtins/abort unreachable @@ -45577,7 +45574,7 @@ if i32.const 0 i32.const 32 - i32.const 3771 + i32.const 3769 i32.const 0 call $~lib/builtins/abort unreachable @@ -45589,7 +45586,7 @@ if i32.const 0 i32.const 32 - i32.const 3772 + i32.const 3770 i32.const 0 call $~lib/builtins/abort unreachable @@ -45601,7 +45598,7 @@ if i32.const 0 i32.const 32 - i32.const 3773 + i32.const 3771 i32.const 0 call $~lib/builtins/abort unreachable @@ -45613,7 +45610,7 @@ if i32.const 0 i32.const 32 - i32.const 3774 + i32.const 3772 i32.const 0 call $~lib/builtins/abort unreachable @@ -45625,7 +45622,7 @@ if i32.const 0 i32.const 32 - i32.const 3775 + i32.const 3773 i32.const 0 call $~lib/builtins/abort unreachable @@ -45637,7 +45634,7 @@ if i32.const 0 i32.const 32 - i32.const 3776 + i32.const 3774 i32.const 0 call $~lib/builtins/abort unreachable @@ -45649,7 +45646,7 @@ if i32.const 0 i32.const 32 - i32.const 3777 + i32.const 3775 i32.const 0 call $~lib/builtins/abort unreachable @@ -45661,7 +45658,7 @@ if i32.const 0 i32.const 32 - i32.const 3778 + i32.const 3776 i32.const 0 call $~lib/builtins/abort unreachable @@ -45673,7 +45670,7 @@ if i32.const 0 i32.const 32 - i32.const 3779 + i32.const 3777 i32.const 0 call $~lib/builtins/abort unreachable @@ -45685,7 +45682,7 @@ if i32.const 0 i32.const 32 - i32.const 3780 + i32.const 3778 i32.const 0 call $~lib/builtins/abort unreachable @@ -45697,7 +45694,7 @@ if i32.const 0 i32.const 32 - i32.const 3781 + i32.const 3779 i32.const 0 call $~lib/builtins/abort unreachable @@ -45709,7 +45706,7 @@ if i32.const 0 i32.const 32 - i32.const 3782 + i32.const 3780 i32.const 0 call $~lib/builtins/abort unreachable @@ -45721,7 +45718,7 @@ if i32.const 0 i32.const 32 - i32.const 3783 + i32.const 3781 i32.const 0 call $~lib/builtins/abort unreachable @@ -45733,7 +45730,7 @@ if i32.const 0 i32.const 32 - i32.const 3784 + i32.const 3782 i32.const 0 call $~lib/builtins/abort unreachable @@ -45745,7 +45742,7 @@ if i32.const 0 i32.const 32 - i32.const 3785 + i32.const 3783 i32.const 0 call $~lib/builtins/abort unreachable @@ -45757,7 +45754,7 @@ if i32.const 0 i32.const 32 - i32.const 3794 + i32.const 3792 i32.const 0 call $~lib/builtins/abort unreachable @@ -45769,7 +45766,7 @@ if i32.const 0 i32.const 32 - i32.const 3795 + i32.const 3793 i32.const 0 call $~lib/builtins/abort unreachable @@ -45781,7 +45778,7 @@ if i32.const 0 i32.const 32 - i32.const 3796 + i32.const 3794 i32.const 0 call $~lib/builtins/abort unreachable @@ -45793,7 +45790,7 @@ if i32.const 0 i32.const 32 - i32.const 3797 + i32.const 3795 i32.const 0 call $~lib/builtins/abort unreachable @@ -45805,7 +45802,7 @@ if i32.const 0 i32.const 32 - i32.const 3798 + i32.const 3796 i32.const 0 call $~lib/builtins/abort unreachable @@ -45817,7 +45814,7 @@ if i32.const 0 i32.const 32 - i32.const 3799 + i32.const 3797 i32.const 0 call $~lib/builtins/abort unreachable @@ -45829,7 +45826,7 @@ if i32.const 0 i32.const 32 - i32.const 3800 + i32.const 3798 i32.const 0 call $~lib/builtins/abort unreachable @@ -45841,7 +45838,7 @@ if i32.const 0 i32.const 32 - i32.const 3801 + i32.const 3799 i32.const 0 call $~lib/builtins/abort unreachable @@ -45853,7 +45850,7 @@ if i32.const 0 i32.const 32 - i32.const 3802 + i32.const 3800 i32.const 0 call $~lib/builtins/abort unreachable @@ -45865,7 +45862,7 @@ if i32.const 0 i32.const 32 - i32.const 3803 + i32.const 3801 i32.const 0 call $~lib/builtins/abort unreachable @@ -45877,7 +45874,7 @@ if i32.const 0 i32.const 32 - i32.const 3806 + i32.const 3804 i32.const 0 call $~lib/builtins/abort unreachable @@ -45889,7 +45886,7 @@ if i32.const 0 i32.const 32 - i32.const 3807 + i32.const 3805 i32.const 0 call $~lib/builtins/abort unreachable @@ -45901,7 +45898,7 @@ if i32.const 0 i32.const 32 - i32.const 3808 + i32.const 3806 i32.const 0 call $~lib/builtins/abort unreachable @@ -45913,7 +45910,7 @@ if i32.const 0 i32.const 32 - i32.const 3809 + i32.const 3807 i32.const 0 call $~lib/builtins/abort unreachable @@ -45925,7 +45922,7 @@ if i32.const 0 i32.const 32 - i32.const 3810 + i32.const 3808 i32.const 0 call $~lib/builtins/abort unreachable @@ -45937,7 +45934,7 @@ if i32.const 0 i32.const 32 - i32.const 3811 + i32.const 3809 i32.const 0 call $~lib/builtins/abort unreachable @@ -45949,7 +45946,7 @@ if i32.const 0 i32.const 32 - i32.const 3812 + i32.const 3810 i32.const 0 call $~lib/builtins/abort unreachable @@ -45961,7 +45958,7 @@ if i32.const 0 i32.const 32 - i32.const 3813 + i32.const 3811 i32.const 0 call $~lib/builtins/abort unreachable @@ -45973,7 +45970,7 @@ if i32.const 0 i32.const 32 - i32.const 3814 + i32.const 3812 i32.const 0 call $~lib/builtins/abort unreachable @@ -45985,7 +45982,7 @@ if i32.const 0 i32.const 32 - i32.const 3815 + i32.const 3813 i32.const 0 call $~lib/builtins/abort unreachable @@ -45997,7 +45994,7 @@ if i32.const 0 i32.const 32 - i32.const 3816 + i32.const 3814 i32.const 0 call $~lib/builtins/abort unreachable @@ -46009,7 +46006,7 @@ if i32.const 0 i32.const 32 - i32.const 3817 + i32.const 3815 i32.const 0 call $~lib/builtins/abort unreachable @@ -46021,7 +46018,7 @@ if i32.const 0 i32.const 32 - i32.const 3818 + i32.const 3816 i32.const 0 call $~lib/builtins/abort unreachable @@ -46033,7 +46030,7 @@ if i32.const 0 i32.const 32 - i32.const 3819 + i32.const 3817 i32.const 0 call $~lib/builtins/abort unreachable @@ -46045,7 +46042,7 @@ if i32.const 0 i32.const 32 - i32.const 3820 + i32.const 3818 i32.const 0 call $~lib/builtins/abort unreachable @@ -46118,7 +46115,7 @@ if i32.const 0 i32.const 32 - i32.const 3861 + i32.const 3859 i32.const 0 call $~lib/builtins/abort unreachable @@ -46131,7 +46128,7 @@ if i32.const 0 i32.const 32 - i32.const 3862 + i32.const 3860 i32.const 0 call $~lib/builtins/abort unreachable @@ -46144,7 +46141,7 @@ if i32.const 0 i32.const 32 - i32.const 3863 + i32.const 3861 i32.const 0 call $~lib/builtins/abort unreachable @@ -46157,7 +46154,7 @@ if i32.const 0 i32.const 32 - i32.const 3864 + i32.const 3862 i32.const 0 call $~lib/builtins/abort unreachable @@ -46170,7 +46167,7 @@ if i32.const 0 i32.const 32 - i32.const 3865 + i32.const 3863 i32.const 0 call $~lib/builtins/abort unreachable @@ -46183,7 +46180,7 @@ if i32.const 0 i32.const 32 - i32.const 3866 + i32.const 3864 i32.const 0 call $~lib/builtins/abort unreachable @@ -46196,7 +46193,7 @@ if i32.const 0 i32.const 32 - i32.const 3867 + i32.const 3865 i32.const 0 call $~lib/builtins/abort unreachable @@ -46209,7 +46206,7 @@ if i32.const 0 i32.const 32 - i32.const 3868 + i32.const 3866 i32.const 0 call $~lib/builtins/abort unreachable @@ -46222,7 +46219,7 @@ if i32.const 0 i32.const 32 - i32.const 3869 + i32.const 3867 i32.const 0 call $~lib/builtins/abort unreachable @@ -46235,7 +46232,7 @@ if i32.const 0 i32.const 32 - i32.const 3870 + i32.const 3868 i32.const 0 call $~lib/builtins/abort unreachable @@ -46248,7 +46245,7 @@ if i32.const 0 i32.const 32 - i32.const 3871 + i32.const 3869 i32.const 0 call $~lib/builtins/abort unreachable @@ -46261,7 +46258,7 @@ if i32.const 0 i32.const 32 - i32.const 3872 + i32.const 3870 i32.const 0 call $~lib/builtins/abort unreachable @@ -46273,7 +46270,7 @@ if i32.const 0 i32.const 32 - i32.const 3876 + i32.const 3874 i32.const 0 call $~lib/builtins/abort unreachable @@ -46285,7 +46282,7 @@ if i32.const 0 i32.const 32 - i32.const 3877 + i32.const 3875 i32.const 0 call $~lib/builtins/abort unreachable @@ -46297,7 +46294,7 @@ if i32.const 0 i32.const 32 - i32.const 3878 + i32.const 3876 i32.const 0 call $~lib/builtins/abort unreachable @@ -46309,7 +46306,7 @@ if i32.const 0 i32.const 32 - i32.const 3879 + i32.const 3877 i32.const 0 call $~lib/builtins/abort unreachable @@ -46321,7 +46318,7 @@ if i32.const 0 i32.const 32 - i32.const 3880 + i32.const 3878 i32.const 0 call $~lib/builtins/abort unreachable @@ -46333,7 +46330,7 @@ if i32.const 0 i32.const 32 - i32.const 3881 + i32.const 3879 i32.const 0 call $~lib/builtins/abort unreachable @@ -46345,7 +46342,7 @@ if i32.const 0 i32.const 32 - i32.const 3882 + i32.const 3880 i32.const 0 call $~lib/builtins/abort unreachable @@ -46357,7 +46354,7 @@ if i32.const 0 i32.const 32 - i32.const 3883 + i32.const 3881 i32.const 0 call $~lib/builtins/abort unreachable @@ -46369,7 +46366,7 @@ if i32.const 0 i32.const 32 - i32.const 3884 + i32.const 3882 i32.const 0 call $~lib/builtins/abort unreachable @@ -46381,7 +46378,7 @@ if i32.const 0 i32.const 32 - i32.const 3885 + i32.const 3883 i32.const 0 call $~lib/builtins/abort unreachable @@ -46393,7 +46390,7 @@ if i32.const 0 i32.const 32 - i32.const 3886 + i32.const 3884 i32.const 0 call $~lib/builtins/abort unreachable @@ -46405,7 +46402,7 @@ if i32.const 0 i32.const 32 - i32.const 3887 + i32.const 3885 i32.const 0 call $~lib/builtins/abort unreachable @@ -46417,7 +46414,7 @@ if i32.const 0 i32.const 32 - i32.const 3888 + i32.const 3886 i32.const 0 call $~lib/builtins/abort unreachable @@ -46429,7 +46426,7 @@ if i32.const 0 i32.const 32 - i32.const 3889 + i32.const 3887 i32.const 0 call $~lib/builtins/abort unreachable @@ -46441,7 +46438,7 @@ if i32.const 0 i32.const 32 - i32.const 3890 + i32.const 3888 i32.const 0 call $~lib/builtins/abort unreachable @@ -46453,7 +46450,7 @@ if i32.const 0 i32.const 32 - i32.const 3891 + i32.const 3889 i32.const 0 call $~lib/builtins/abort unreachable @@ -46466,7 +46463,7 @@ if i32.const 0 i32.const 32 - i32.const 3895 + i32.const 3893 i32.const 0 call $~lib/builtins/abort unreachable @@ -46479,7 +46476,7 @@ if i32.const 0 i32.const 32 - i32.const 3896 + i32.const 3894 i32.const 0 call $~lib/builtins/abort unreachable @@ -46492,7 +46489,7 @@ if i32.const 0 i32.const 32 - i32.const 3897 + i32.const 3895 i32.const 0 call $~lib/builtins/abort unreachable @@ -46505,7 +46502,7 @@ if i32.const 0 i32.const 32 - i32.const 3898 + i32.const 3896 i32.const 0 call $~lib/builtins/abort unreachable @@ -46518,7 +46515,7 @@ if i32.const 0 i32.const 32 - i32.const 3900 + i32.const 3898 i32.const 0 call $~lib/builtins/abort unreachable @@ -46531,7 +46528,7 @@ if i32.const 0 i32.const 32 - i32.const 3901 + i32.const 3899 i32.const 0 call $~lib/builtins/abort unreachable @@ -46544,7 +46541,7 @@ if i32.const 0 i32.const 32 - i32.const 3902 + i32.const 3900 i32.const 0 call $~lib/builtins/abort unreachable @@ -46557,7 +46554,7 @@ if i32.const 0 i32.const 32 - i32.const 3903 + i32.const 3901 i32.const 0 call $~lib/builtins/abort unreachable @@ -46570,7 +46567,7 @@ if i32.const 0 i32.const 32 - i32.const 3905 + i32.const 3903 i32.const 0 call $~lib/builtins/abort unreachable @@ -46583,7 +46580,7 @@ if i32.const 0 i32.const 32 - i32.const 3906 + i32.const 3904 i32.const 0 call $~lib/builtins/abort unreachable @@ -46596,7 +46593,7 @@ if i32.const 0 i32.const 32 - i32.const 3907 + i32.const 3905 i32.const 0 call $~lib/builtins/abort unreachable @@ -46609,7 +46606,7 @@ if i32.const 0 i32.const 32 - i32.const 3908 + i32.const 3906 i32.const 0 call $~lib/builtins/abort unreachable @@ -46622,7 +46619,7 @@ if i32.const 0 i32.const 32 - i32.const 3910 + i32.const 3908 i32.const 0 call $~lib/builtins/abort unreachable @@ -46635,7 +46632,7 @@ if i32.const 0 i32.const 32 - i32.const 3911 + i32.const 3909 i32.const 0 call $~lib/builtins/abort unreachable @@ -46648,7 +46645,7 @@ if i32.const 0 i32.const 32 - i32.const 3912 + i32.const 3910 i32.const 0 call $~lib/builtins/abort unreachable @@ -46661,7 +46658,7 @@ if i32.const 0 i32.const 32 - i32.const 3913 + i32.const 3911 i32.const 0 call $~lib/builtins/abort unreachable @@ -46674,7 +46671,7 @@ if i32.const 0 i32.const 32 - i32.const 3915 + i32.const 3913 i32.const 0 call $~lib/builtins/abort unreachable @@ -46687,7 +46684,7 @@ if i32.const 0 i32.const 32 - i32.const 3916 + i32.const 3914 i32.const 0 call $~lib/builtins/abort unreachable @@ -46700,7 +46697,7 @@ if i32.const 0 i32.const 32 - i32.const 3917 + i32.const 3915 i32.const 0 call $~lib/builtins/abort unreachable @@ -46713,7 +46710,7 @@ if i32.const 0 i32.const 32 - i32.const 3918 + i32.const 3916 i32.const 0 call $~lib/builtins/abort unreachable @@ -46726,7 +46723,7 @@ if i32.const 0 i32.const 32 - i32.const 3920 + i32.const 3918 i32.const 0 call $~lib/builtins/abort unreachable @@ -46739,7 +46736,7 @@ if i32.const 0 i32.const 32 - i32.const 3921 + i32.const 3919 i32.const 0 call $~lib/builtins/abort unreachable @@ -46752,7 +46749,7 @@ if i32.const 0 i32.const 32 - i32.const 3922 + i32.const 3920 i32.const 0 call $~lib/builtins/abort unreachable @@ -46765,7 +46762,7 @@ if i32.const 0 i32.const 32 - i32.const 3923 + i32.const 3921 i32.const 0 call $~lib/builtins/abort unreachable @@ -46778,7 +46775,7 @@ if i32.const 0 i32.const 32 - i32.const 3924 + i32.const 3922 i32.const 0 call $~lib/builtins/abort unreachable @@ -46791,7 +46788,7 @@ if i32.const 0 i32.const 32 - i32.const 3925 + i32.const 3923 i32.const 0 call $~lib/builtins/abort unreachable @@ -46804,7 +46801,7 @@ if i32.const 0 i32.const 32 - i32.const 3926 + i32.const 3924 i32.const 0 call $~lib/builtins/abort unreachable @@ -46821,7 +46818,7 @@ if i32.const 0 i32.const 32 - i32.const 3928 + i32.const 3926 i32.const 0 call $~lib/builtins/abort unreachable @@ -46834,7 +46831,7 @@ if i32.const 0 i32.const 32 - i32.const 3932 + i32.const 3930 i32.const 0 call $~lib/builtins/abort unreachable @@ -46847,7 +46844,7 @@ if i32.const 0 i32.const 32 - i32.const 3933 + i32.const 3931 i32.const 0 call $~lib/builtins/abort unreachable @@ -46861,7 +46858,7 @@ if i32.const 0 i32.const 32 - i32.const 3934 + i32.const 3932 i32.const 0 call $~lib/builtins/abort unreachable @@ -46875,7 +46872,7 @@ if i32.const 0 i32.const 32 - i32.const 3935 + i32.const 3933 i32.const 0 call $~lib/builtins/abort unreachable @@ -46889,7 +46886,7 @@ if i32.const 0 i32.const 32 - i32.const 3936 + i32.const 3934 i32.const 0 call $~lib/builtins/abort unreachable @@ -46902,7 +46899,7 @@ if i32.const 0 i32.const 32 - i32.const 3937 + i32.const 3935 i32.const 0 call $~lib/builtins/abort unreachable @@ -46915,7 +46912,7 @@ if i32.const 0 i32.const 32 - i32.const 3938 + i32.const 3936 i32.const 0 call $~lib/builtins/abort unreachable @@ -46928,7 +46925,7 @@ if i32.const 0 i32.const 32 - i32.const 3939 + i32.const 3937 i32.const 0 call $~lib/builtins/abort unreachable @@ -46941,7 +46938,7 @@ if i32.const 0 i32.const 32 - i32.const 3940 + i32.const 3938 i32.const 0 call $~lib/builtins/abort unreachable @@ -46954,7 +46951,7 @@ if i32.const 0 i32.const 32 - i32.const 3941 + i32.const 3939 i32.const 0 call $~lib/builtins/abort unreachable @@ -46967,7 +46964,7 @@ if i32.const 0 i32.const 32 - i32.const 3942 + i32.const 3940 i32.const 0 call $~lib/builtins/abort unreachable @@ -46980,7 +46977,7 @@ if i32.const 0 i32.const 32 - i32.const 3943 + i32.const 3941 i32.const 0 call $~lib/builtins/abort unreachable @@ -46993,7 +46990,7 @@ if i32.const 0 i32.const 32 - i32.const 3944 + i32.const 3942 i32.const 0 call $~lib/builtins/abort unreachable @@ -47006,7 +47003,7 @@ if i32.const 0 i32.const 32 - i32.const 3945 + i32.const 3943 i32.const 0 call $~lib/builtins/abort unreachable @@ -47019,7 +47016,7 @@ if i32.const 0 i32.const 32 - i32.const 3946 + i32.const 3944 i32.const 0 call $~lib/builtins/abort unreachable @@ -47032,7 +47029,7 @@ if i32.const 0 i32.const 32 - i32.const 3947 + i32.const 3945 i32.const 0 call $~lib/builtins/abort unreachable @@ -47045,7 +47042,7 @@ if i32.const 0 i32.const 32 - i32.const 3951 + i32.const 3949 i32.const 0 call $~lib/builtins/abort unreachable @@ -47058,7 +47055,7 @@ if i32.const 0 i32.const 32 - i32.const 3952 + i32.const 3950 i32.const 0 call $~lib/builtins/abort unreachable @@ -47072,7 +47069,7 @@ if i32.const 0 i32.const 32 - i32.const 3953 + i32.const 3951 i32.const 0 call $~lib/builtins/abort unreachable @@ -47086,7 +47083,7 @@ if i32.const 0 i32.const 32 - i32.const 3954 + i32.const 3952 i32.const 0 call $~lib/builtins/abort unreachable @@ -47100,7 +47097,7 @@ if i32.const 0 i32.const 32 - i32.const 3955 + i32.const 3953 i32.const 0 call $~lib/builtins/abort unreachable @@ -47113,7 +47110,7 @@ if i32.const 0 i32.const 32 - i32.const 3956 + i32.const 3954 i32.const 0 call $~lib/builtins/abort unreachable @@ -47126,7 +47123,7 @@ if i32.const 0 i32.const 32 - i32.const 3957 + i32.const 3955 i32.const 0 call $~lib/builtins/abort unreachable @@ -47139,7 +47136,7 @@ if i32.const 0 i32.const 32 - i32.const 3958 + i32.const 3956 i32.const 0 call $~lib/builtins/abort unreachable @@ -47152,7 +47149,7 @@ if i32.const 0 i32.const 32 - i32.const 3959 + i32.const 3957 i32.const 0 call $~lib/builtins/abort unreachable @@ -47165,7 +47162,7 @@ if i32.const 0 i32.const 32 - i32.const 3960 + i32.const 3958 i32.const 0 call $~lib/builtins/abort unreachable @@ -47178,7 +47175,7 @@ if i32.const 0 i32.const 32 - i32.const 3961 + i32.const 3959 i32.const 0 call $~lib/builtins/abort unreachable @@ -47191,7 +47188,7 @@ if i32.const 0 i32.const 32 - i32.const 3962 + i32.const 3960 i32.const 0 call $~lib/builtins/abort unreachable @@ -47204,7 +47201,7 @@ if i32.const 0 i32.const 32 - i32.const 3963 + i32.const 3961 i32.const 0 call $~lib/builtins/abort unreachable @@ -47217,7 +47214,7 @@ if i32.const 0 i32.const 32 - i32.const 3964 + i32.const 3962 i32.const 0 call $~lib/builtins/abort unreachable @@ -47230,7 +47227,7 @@ if i32.const 0 i32.const 32 - i32.const 3965 + i32.const 3963 i32.const 0 call $~lib/builtins/abort unreachable @@ -47243,13 +47240,13 @@ if i32.const 0 i32.const 32 - i32.const 3966 + i32.const 3964 i32.const 0 call $~lib/builtins/abort unreachable end ) - (func $~start (; 176 ;) + (func $~start (; 177 ;) call $start:std/math ) ) diff --git a/tests/compiler/std/math.ts b/tests/compiler/std/math.ts index 2ba0a2806a..99963b2609 100644 --- a/tests/compiler/std/math.ts +++ b/tests/compiler/std/math.ts @@ -2844,7 +2844,6 @@ assert(test_powf(-2.0, -1.0, -0.5, 0.0, 0)); // Math.random //////////////////////////////////////////////////////////////////////////////////////////////////// -NativeMath.seedRandom(reinterpret(JSMath.random())); for (let i = 0; i < 1e6; ++i) { let r = NativeMath.random(); assert(r >= 0.0 && r < 1.0); @@ -2852,7 +2851,6 @@ for (let i = 0; i < 1e6; ++i) { // Mathf.random //////////////////////////////////////////////////////////////////////////////////// -NativeMathf.seedRandom(reinterpret(JSMath.random())); for (let i = 0; i < 1e6; ++i) { let r = NativeMathf.random(); assert(r >= 0.0 && r < 1.0); diff --git a/tests/compiler/std/math.untouched.wat b/tests/compiler/std/math.untouched.wat index 1ac6a5d4d1..f5452f65b6 100644 --- a/tests/compiler/std/math.untouched.wat +++ b/tests/compiler/std/math.untouched.wat @@ -21,6 +21,7 @@ (type $f32_i32_f32_f32_i32_=>_i32 (func (param f32 i32 f32 f32 i32) (result i32))) (type $f64_i32_f64_f64_i32_=>_i32 (func (param f64 i32 f64 f64 i32) (result i32))) (type $f64_i64_=>_i32 (func (param f64 i64) (result i32))) + (type $none_=>_i64 (func (result i64))) (type $i64_=>_i64 (func (param i64) (result i64))) (type $i64_i32_=>_i64 (func (param i64 i32) (result i64))) (type $none_=>_f32 (func (result f32))) @@ -91,7 +92,6 @@ (data (i32.const 9728) "\00\10\00\00\01\00\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\a0\f6?\00\00\00\00\00\00\00\00\00\c8\b9\f2\82,\d6\bf\80V7($\b4\fa<\00\00\00\00\00\80\f6?\00\00\00\00\00\00\00\00\00\08X\bf\bd\d1\d5\bf \f7\e0\d8\08\a5\1c\bd\00\00\00\00\00`\f6?\00\00\00\00\00\00\00\00\00XE\17wv\d5\bfmP\b6\d5\a4b#\bd\00\00\00\00\00@\f6?\00\00\00\00\00\00\00\00\00\f8-\87\ad\1a\d5\bf\d5g\b0\9e\e4\84\e6\bc\00\00\00\00\00 \f6?\00\00\00\00\00\00\00\00\00xw\95_\be\d4\bf\e0>)\93i\1b\04\bd\00\00\00\00\00\00\f6?\00\00\00\00\00\00\00\00\00`\1c\c2\8ba\d4\bf\cc\84LH/\d8\13=\00\00\00\00\00\e0\f5?\00\00\00\00\00\00\00\00\00\a8\86\860\04\d4\bf:\0b\82\ed\f3B\dc<\00\00\00\00\00\c0\f5?\00\00\00\00\00\00\00\00\00HiUL\a6\d3\bf`\94Q\86\c6\b1 =\00\00\00\00\00\a0\f5?\00\00\00\00\00\00\00\00\00\80\98\9a\ddG\d3\bf\92\80\c5\d4MY%=\00\00\00\00\00\80\f5?\00\00\00\00\00\00\00\00\00 \e1\ba\e2\e8\d2\bf\d8+\b7\99\1e{&=\00\00\00\00\00`\f5?\00\00\00\00\00\00\00\00\00\88\de\13Z\89\d2\bf?\b0\cf\b6\14\ca\15=\00\00\00\00\00`\f5?\00\00\00\00\00\00\00\00\00\88\de\13Z\89\d2\bf?\b0\cf\b6\14\ca\15=\00\00\00\00\00@\f5?\00\00\00\00\00\00\00\00\00x\cf\fbA)\d2\bfv\daS($Z\16\bd\00\00\00\00\00 \f5?\00\00\00\00\00\00\00\00\00\98i\c1\98\c8\d1\bf\04T\e7h\bc\af\1f\bd\00\00\00\00\00\00\f5?\00\00\00\00\00\00\00\00\00\a8\ab\ab\\g\d1\bf\f0\a8\823\c6\1f\1f=\00\00\00\00\00\e0\f4?\00\00\00\00\00\00\00\00\00H\ae\f9\8b\05\d1\bffZ\05\fd\c4\a8&\bd\00\00\00\00\00\c0\f4?\00\00\00\00\00\00\00\00\00\90s\e2$\a3\d0\bf\0e\03\f4~\eek\0c\bd\00\00\00\00\00\a0\f4?\00\00\00\00\00\00\00\00\00\d0\b4\94%@\d0\bf\7f-\f4\9e\b86\f0\bc\00\00\00\00\00\a0\f4?\00\00\00\00\00\00\00\00\00\d0\b4\94%@\d0\bf\7f-\f4\9e\b86\f0\bc\00\00\00\00\00\80\f4?\00\00\00\00\00\00\00\00\00@^m\18\b9\cf\bf\87<\99\ab*W\0d=\00\00\00\00\00`\f4?\00\00\00\00\00\00\00\00\00`\dc\cb\ad\f0\ce\bf$\af\86\9c\b7&+=\00\00\00\00\00@\f4?\00\00\00\00\00\00\00\00\00\f0*n\07\'\ce\bf\10\ff?TO/\17\bd\00\00\00\00\00 \f4?\00\00\00\00\00\00\00\00\00\c0Ok!\\\cd\bf\1bh\ca\bb\91\ba!=\00\00\00\00\00\00\f4?\00\00\00\00\00\00\00\00\00\a0\9a\c7\f7\8f\cc\bf4\84\9fhOy\'=\00\00\00\00\00\00\f4?\00\00\00\00\00\00\00\00\00\a0\9a\c7\f7\8f\cc\bf4\84\9fhOy\'=\00\00\00\00\00\e0\f3?\00\00\00\00\00\00\00\00\00\90-t\86\c2\cb\bf\8f\b7\8b1\b0N\19=\00\00\00\00\00\c0\f3?\00\00\00\00\00\00\00\00\00\c0\80N\c9\f3\ca\bff\90\cd?cN\ba<\00\00\00\00\00\a0\f3?\00\00\00\00\00\00\00\00\00\b0\e2\1f\bc#\ca\bf\ea\c1F\dcd\8c%\bd\00\00\00\00\00\a0\f3?\00\00\00\00\00\00\00\00\00\b0\e2\1f\bc#\ca\bf\ea\c1F\dcd\8c%\bd\00\00\00\00\00\80\f3?\00\00\00\00\00\00\00\00\00P\f4\9cZR\c9\bf\e3\d4\c1\04\d9\d1*\bd\00\00\00\00\00`\f3?\00\00\00\00\00\00\00\00\00\d0 e\a0\7f\c8\bf\t\fa\db\7f\bf\bd+=\00\00\00\00\00@\f3?\00\00\00\00\00\00\00\00\00\e0\10\02\89\ab\c7\bfXJSr\90\db+=\00\00\00\00\00@\f3?\00\00\00\00\00\00\00\00\00\e0\10\02\89\ab\c7\bfXJSr\90\db+=\00\00\00\00\00 \f3?\00\00\00\00\00\00\00\00\00\d0\19\e7\0f\d6\c6\bff\e2\b2\a3j\e4\10\bd\00\00\00\00\00\00\f3?\00\00\00\00\00\00\00\00\00\90\a7p0\ff\c5\bf9P\10\9fC\9e\1e\bd\00\00\00\00\00\00\f3?\00\00\00\00\00\00\00\00\00\90\a7p0\ff\c5\bf9P\10\9fC\9e\1e\bd\00\00\00\00\00\e0\f2?\00\00\00\00\00\00\00\00\00\b0\a1\e3\e5&\c5\bf\8f[\07\90\8b\de \bd\00\00\00\00\00\c0\f2?\00\00\00\00\00\00\00\00\00\80\cbl+M\c4\bf\11\0e\bd\00\00\00\00\00\e0\ed?\00\00\00\00\00\00\00\00\00`F\d1;\97\b1?\9b\9e\0dV]2%\bd\00\00\00\00\00\a0\ed?\00\00\00\00\00\00\00\00\00\e0\d1\a7\f5\bd\b3?\d7N\db\a5^\c8,=\00\00\00\00\00`\ed?\00\00\00\00\00\00\00\00\00\a0\97MZ\e9\b5?\1e\1d]<\06i,\bd\00\00\00\00\00@\ed?\00\00\00\00\00\00\00\00\00\c0\ea\n\d3\00\b7?2\ed\9d\a9\8d\1e\ec<\00\00\00\00\00\00\ed?\00\00\00\00\00\00\00\00\00@Y]^3\b9?\daG\bd:\\\11#=\00\00\00\00\00\c0\ec?\00\00\00\00\00\00\00\00\00`\ad\8d\c8j\bb?\e5h\f7+\80\90\13\bd\00\00\00\00\00\a0\ec?\00\00\00\00\00\00\00\00\00@\bc\01X\88\bc?\d3\acZ\c6\d1F&=\00\00\00\00\00`\ec?\00\00\00\00\00\00\00\00\00 \n\839\c7\be?\e0E\e6\afh\c0-\bd\00\00\00\00\00@\ec?\00\00\00\00\00\00\00\00\00\e0\db9\91\e8\bf?\fd\n\a1O\d64%\bd\00\00\00\00\00\00\ec?\00\00\00\00\00\00\00\00\00\e0\'\82\8e\17\c1?\f2\07-\cex\ef!=\00\00\00\00\00\e0\eb?\00\00\00\00\00\00\00\00\00\f0#~+\aa\c1?4\998D\8e\a7,=\00\00\00\00\00\a0\eb?\00\00\00\00\00\00\00\00\00\80\86\0ca\d1\c2?\a1\b4\81\cbl\9d\03=\00\00\00\00\00\80\eb?\00\00\00\00\00\00\00\00\00\90\15\b0\fce\c3?\89rK#\a8/\c6<\00\00\00\00\00@\eb?\00\00\00\00\00\00\00\00\00\b03\83=\91\c4?x\b6\fdTy\83%=\00\00\00\00\00 \eb?\00\00\00\00\00\00\00\00\00\b0\a1\e4\e5\'\c5?\c7}i\e5\e83&=\00\00\00\00\00\e0\ea?\00\00\00\00\00\00\00\00\00\10\8c\beNW\c6?x.<,\8b\cf\19=\00\00\00\00\00\c0\ea?\00\00\00\00\00\00\00\00\00pu\8b\12\f0\c6?\e1!\9c\e5\8d\11%\bd\00\00\00\00\00\a0\ea?\00\00\00\00\00\00\00\00\00PD\85\8d\89\c7?\05C\91p\10f\1c\bd\00\00\00\00\00`\ea?\00\00\00\00\00\00\00\00\00\009\eb\af\be\c8?\d1,\e9\aaT=\07\bd\00\00\00\00\00@\ea?\00\00\00\00\00\00\00\00\00\00\f7\dcZZ\c9?o\ff\a0X(\f2\07=\00\00\00\00\00\00\ea?\00\00\00\00\00\00\00\00\00\e0\8a<\ed\93\ca?i!VPCr(\bd\00\00\00\00\00\e0\e9?\00\00\00\00\00\00\00\00\00\d0[W\d81\cb?\aa\e1\acN\8d5\0c\bd\00\00\00\00\00\c0\e9?\00\00\00\00\00\00\00\00\00\e0;8\87\d0\cb?\b6\12TY\c4K-\bd\00\00\00\00\00\a0\e9?\00\00\00\00\00\00\00\00\00\10\f0\c6\fbo\cc?\d2+\96\c5r\ec\f1\bc\00\00\00\00\00`\e9?\00\00\00\00\00\00\00\00\00\90\d4\b0=\b1\cd?5\b0\15\f7*\ff*\bd\00\00\00\00\00@\e9?\00\00\00\00\00\00\00\00\00\10\e7\ff\0eS\ce?0\f4A`\'\12\c2<\00\00\00\00\00 \e9?\00\00\00\00\00\00\00\00\00\00\dd\e4\ad\f5\ce?\11\8e\bbe\15!\ca\bc\00\00\00\00\00\00\e9?\00\00\00\00\00\00\00\00\00\b0\b3l\1c\99\cf?0\df\0c\ca\ec\cb\1b=\00\00\00\00\00\c0\e8?\00\00\00\00\00\00\00\00\00XM`8q\d0?\91N\ed\16\db\9c\f8<\00\00\00\00\00\a0\e8?\00\00\00\00\00\00\00\00\00`ag-\c4\d0?\e9\ea<\16\8b\18\'=\00\00\00\00\00\80\e8?\00\00\00\00\00\00\00\00\00\e8\'\82\8e\17\d1?\1c\f0\a5c\0e!,\bd\00\00\00\00\00`\e8?\00\00\00\00\00\00\00\00\00\f8\ac\cb\\k\d1?\81\16\a5\f7\cd\9a+=\00\00\00\00\00@\e8?\00\00\00\00\00\00\00\00\00hZc\99\bf\d1?\b7\bdGQ\ed\a6,=\00\00\00\00\00 \e8?\00\00\00\00\00\00\00\00\00\b8\0emE\14\d2?\ea\baF\ba\de\87\n=\00\00\00\00\00\e0\e7?\00\00\00\00\00\00\00\00\00\90\dc|\f0\be\d2?\f4\04PJ\fa\9c*=\00\00\00\00\00\c0\e7?\00\00\00\00\00\00\00\00\00`\d3\e1\f1\14\d3?\b8 ) - (func $~lib/math/murmurHash3 (; 135 ;) (param $0 i64) (result i64) + (func $~lib/math/seedRandomSelect (; 135 ;) (result i64) + (local $0 i64) + (local $1 i32) + loop $do-continue|0 + call $~lib/bindings/Math/random + i64.reinterpret_f64 + local.set $0 + local.get $0 + i64.const 0 + i64.ne + i32.eqz + local.set $1 + local.get $1 + br_if $do-continue|0 + end + local.get $0 + return + ) + (func $~lib/math/murmurHash3 (; 136 ;) (param $0 i64) (result i64) local.get $0 local.get $0 i64.const 33 @@ -11250,7 +11268,7 @@ local.set $0 local.get $0 ) - (func $~lib/math/splitMix32 (; 136 ;) (param $0 i32) (result i32) + (func $~lib/math/splitMix32 (; 137 ;) (param $0 i32) (result i32) local.get $0 i32.const 1831565813 i32.add @@ -11285,7 +11303,7 @@ i32.shr_u i32.xor ) - (func $~lib/math/NativeMath.seedRandom (; 137 ;) (param $0 i64) + (func $~lib/math/NativeMath.seedRandom (; 138 ;) (param $0 i64) i32.const 1 global.set $~lib/math/random_seeded local.get $0 @@ -11331,25 +11349,21 @@ if i32.const 0 i32.const 13888 - i32.const 1406 + i32.const 1412 i32.const 4 call $~lib/builtins/abort unreachable end ) - (func $~lib/math/NativeMath.random (; 138 ;) (result f64) + (func $~lib/math/NativeMath.random (; 139 ;) (result f64) (local $0 i64) (local $1 i64) (local $2 i64) global.get $~lib/math/random_seeded i32.eqz if - i32.const 13936 - i32.const 13888 - i32.const 1413 - i32.const 24 - call $~lib/builtins/abort - unreachable + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_64 local.set $0 @@ -11392,19 +11406,15 @@ f64.const 1 f64.sub ) - (func $~lib/math/NativeMathf.random (; 139 ;) (result f32) + (func $~lib/math/NativeMathf.random (; 140 ;) (result f32) (local $0 i32) (local $1 i32) (local $2 i32) global.get $~lib/math/random_seeded i32.eqz if - i32.const 13936 - i32.const 13888 - i32.const 2606 - i32.const 24 - call $~lib/builtins/abort - unreachable + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom end global.get $~lib/math/random_state0_32 local.set $0 @@ -11447,7 +11457,7 @@ f32.const 1 f32.sub ) - (func $std/math/test_round (; 140 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (func $std/math/test_round (; 141 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) (local $4 f64) local.get $0 local.set $4 @@ -11462,7 +11472,7 @@ local.get $3 call $std/math/check ) - (func $std/math/test_roundf (; 141 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (func $std/math/test_roundf (; 142 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) (local $4 f32) local.get $0 local.set $4 @@ -11477,7 +11487,7 @@ local.get $3 call $std/math/check ) - (func $std/math/test_sign (; 142 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (func $std/math/test_sign (; 143 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) (local $4 f64) block $~lib/math/NativeMath.sign|inlined.0 (result f64) local.get $0 @@ -11520,7 +11530,7 @@ i32.const 0 end ) - (func $std/math/test_signf (; 143 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (func $std/math/test_signf (; 144 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) (local $4 f32) block $~lib/math/NativeMathf.sign|inlined.0 (result f32) local.get $0 @@ -11547,7 +11557,7 @@ local.get $3 call $std/math/check ) - (func $~lib/math/NativeMath.rem (; 144 ;) (param $0 f64) (param $1 f64) (result f64) + (func $~lib/math/NativeMath.rem (; 145 ;) (param $0 f64) (param $1 f64) (result f64) (local $2 i64) (local $3 i64) (local $4 i64) @@ -11865,7 +11875,7 @@ local.get $0 end ) - (func $std/math/test_rem (; 145 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) + (func $std/math/test_rem (; 146 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 f64) (param $4 i32) (result i32) local.get $0 local.get $1 call $~lib/math/NativeMath.rem @@ -11874,7 +11884,7 @@ local.get $4 call $std/math/check ) - (func $~lib/math/NativeMathf.rem (; 146 ;) (param $0 f32) (param $1 f32) (result f32) + (func $~lib/math/NativeMathf.rem (; 147 ;) (param $0 f32) (param $1 f32) (result f32) (local $2 i32) (local $3 i32) (local $4 i32) @@ -12185,7 +12195,7 @@ local.get $0 end ) - (func $std/math/test_remf (; 147 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) + (func $std/math/test_remf (; 148 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 f32) (param $4 i32) (result i32) local.get $0 local.get $1 call $~lib/math/NativeMathf.rem @@ -12194,7 +12204,7 @@ local.get $4 call $std/math/check ) - (func $~lib/math/NativeMath.sin (; 148 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.sin (; 149 ;) (param $0 f64) (result f64) (local $1 i64) (local $2 i32) (local $3 i32) @@ -12723,7 +12733,7 @@ local.get $0 end ) - (func $std/math/test_sin (; 149 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (func $std/math/test_sin (; 150 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) local.get $0 call $~lib/math/NativeMath.sin local.get $1 @@ -12747,7 +12757,7 @@ i32.const 0 end ) - (func $~lib/math/NativeMathf.sin (; 150 ;) (param $0 f32) (result f32) + (func $~lib/math/NativeMathf.sin (; 151 ;) (param $0 f32) (result f32) (local $1 i32) (local $2 i32) (local $3 f64) @@ -13357,7 +13367,7 @@ local.get $27 end ) - (func $std/math/test_sinf (; 151 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (func $std/math/test_sinf (; 152 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) local.get $0 call $~lib/math/NativeMathf.sin local.get $1 @@ -13365,7 +13375,7 @@ local.get $3 call $std/math/check ) - (func $~lib/math/NativeMath.sinh (; 152 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.sinh (; 153 ;) (param $0 f64) (result f64) (local $1 i64) (local $2 f64) (local $3 i32) @@ -13463,7 +13473,7 @@ local.set $4 local.get $4 ) - (func $std/math/test_sinh (; 153 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (func $std/math/test_sinh (; 154 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) local.get $0 call $~lib/math/NativeMath.sinh local.get $1 @@ -13487,7 +13497,7 @@ i32.const 0 end ) - (func $~lib/math/NativeMathf.sinh (; 154 ;) (param $0 f32) (result f32) + (func $~lib/math/NativeMathf.sinh (; 155 ;) (param $0 f32) (result f32) (local $1 i32) (local $2 f32) (local $3 f32) @@ -13576,7 +13586,7 @@ local.set $3 local.get $3 ) - (func $std/math/test_sinhf (; 155 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (func $std/math/test_sinhf (; 156 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) local.get $0 call $~lib/math/NativeMathf.sinh local.get $1 @@ -13584,7 +13594,7 @@ local.get $3 call $std/math/check ) - (func $std/math/test_sqrt (; 156 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (func $std/math/test_sqrt (; 157 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) (local $4 f64) local.get $0 local.set $4 @@ -13611,7 +13621,7 @@ i32.const 0 end ) - (func $std/math/test_sqrtf (; 157 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (func $std/math/test_sqrtf (; 158 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) (local $4 f32) local.get $0 local.set $4 @@ -13622,7 +13632,7 @@ local.get $3 call $std/math/check ) - (func $~lib/math/tan_kern (; 158 ;) (param $0 f64) (param $1 f64) (param $2 i32) (result f64) + (func $~lib/math/tan_kern (; 159 ;) (param $0 f64) (param $1 f64) (param $2 i32) (result f64) (local $3 f64) (local $4 f64) (local $5 f64) @@ -13835,7 +13845,7 @@ f64.mul f64.add ) - (func $~lib/math/NativeMath.tan (; 159 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.tan (; 160 ;) (param $0 f64) (result f64) (local $1 i64) (local $2 i32) (local $3 i32) @@ -14147,7 +14157,7 @@ i32.sub call $~lib/math/tan_kern ) - (func $std/math/test_tan (; 160 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (func $std/math/test_tan (; 161 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) local.get $0 call $~lib/math/NativeMath.tan local.get $1 @@ -14171,7 +14181,7 @@ i32.const 0 end ) - (func $~lib/math/NativeMathf.tan (; 161 ;) (param $0 f32) (result f32) + (func $~lib/math/NativeMathf.tan (; 162 ;) (param $0 f32) (result f32) (local $1 i32) (local $2 i32) (local $3 i32) @@ -14822,7 +14832,7 @@ end f32.demote_f64 ) - (func $std/math/test_tanf (; 162 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (func $std/math/test_tanf (; 163 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) local.get $0 call $~lib/math/NativeMathf.tan local.get $1 @@ -14830,7 +14840,7 @@ local.get $3 call $std/math/check ) - (func $~lib/math/NativeMath.tanh (; 163 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.tanh (; 164 ;) (param $0 f64) (result f64) (local $1 i64) (local $2 f64) (local $3 i32) @@ -14922,7 +14932,7 @@ local.get $0 f64.copysign ) - (func $std/math/test_tanh (; 164 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (func $std/math/test_tanh (; 165 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) local.get $0 call $~lib/math/NativeMath.tanh local.get $1 @@ -14946,7 +14956,7 @@ i32.const 0 end ) - (func $~lib/math/NativeMathf.tanh (; 165 ;) (param $0 f32) (result f32) + (func $~lib/math/NativeMathf.tanh (; 166 ;) (param $0 f32) (result f32) (local $1 i32) (local $2 f32) (local $3 f32) @@ -15032,7 +15042,7 @@ local.get $0 f32.copysign ) - (func $std/math/test_tanhf (; 166 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (func $std/math/test_tanhf (; 167 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) local.get $0 call $~lib/math/NativeMathf.tanh local.get $1 @@ -15040,7 +15050,7 @@ local.get $3 call $std/math/check ) - (func $std/math/test_trunc (; 167 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) + (func $std/math/test_trunc (; 168 ;) (param $0 f64) (param $1 f64) (param $2 f64) (param $3 i32) (result i32) (local $4 f64) local.get $0 local.set $4 @@ -15067,7 +15077,7 @@ i32.const 0 end ) - (func $std/math/test_truncf (; 168 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) + (func $std/math/test_truncf (; 169 ;) (param $0 f32) (param $1 f32) (param $2 f32) (param $3 i32) (result i32) (local $4 f32) local.get $0 local.set $4 @@ -15078,7 +15088,7 @@ local.get $3 call $std/math/check ) - (func $~lib/math/NativeMath.sincos (; 169 ;) (param $0 f64) + (func $~lib/math/NativeMath.sincos (; 170 ;) (param $0 f64) (local $1 i64) (local $2 i32) (local $3 i32) @@ -15697,7 +15707,7 @@ local.get $23 global.set $~lib/math/NativeMath.sincos_cos ) - (func $std/math/test_sincos (; 170 ;) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) (param $5 i32) (result i32) + (func $std/math/test_sincos (; 171 ;) (param $0 i64) (param $1 i64) (param $2 i64) (param $3 i64) (param $4 i64) (param $5 i32) (result i32) (local $6 f64) (local $7 f64) (local $8 f64) @@ -15735,7 +15745,7 @@ i32.const 0 end ) - (func $~lib/math/dtoi32 (; 171 ;) (param $0 f64) (result i32) + (func $~lib/math/dtoi32 (; 172 ;) (param $0 f64) (result i32) (local $1 i32) (local $2 i64) (local $3 i64) @@ -15806,7 +15816,7 @@ local.get $1 return ) - (func $~lib/math/NativeMath.imul (; 172 ;) (param $0 f64) (param $1 f64) (result f64) + (func $~lib/math/NativeMath.imul (; 173 ;) (param $0 f64) (param $1 f64) (result f64) (local $2 f64) local.get $0 local.get $1 @@ -15828,7 +15838,7 @@ i32.mul f64.convert_i32_s ) - (func $~lib/math/NativeMath.clz32 (; 173 ;) (param $0 f64) (result f64) + (func $~lib/math/NativeMath.clz32 (; 174 ;) (param $0 f64) (result f64) local.get $0 local.get $0 f64.sub @@ -15844,7 +15854,7 @@ i32.clz f64.convert_i32_s ) - (func $~lib/math/ipow64 (; 174 ;) (param $0 i64) (param $1 i32) (result i64) + (func $~lib/math/ipow64 (; 175 ;) (param $0 i64) (param $1 i32) (result i64) (local $2 i64) (local $3 i32) (local $4 i32) @@ -16064,7 +16074,7 @@ end local.get $2 ) - (func $~lib/math/ipow32f (; 175 ;) (param $0 f32) (param $1 i32) (result f32) + (func $~lib/math/ipow32f (; 176 ;) (param $0 f32) (param $1 i32) (result f32) (local $2 i32) (local $3 f32) (local $4 i32) @@ -16114,7 +16124,7 @@ local.get $3 end ) - (func $~lib/math/ipow64f (; 176 ;) (param $0 f64) (param $1 i32) (result f64) + (func $~lib/math/ipow64f (; 177 ;) (param $0 f64) (param $1 i32) (result f64) (local $2 i32) (local $3 f64) (local $4 i32) @@ -16164,12 +16174,11 @@ local.get $3 end ) - (func $start:std/math (; 177 ;) + (func $start:std/math (; 178 ;) (local $0 f64) (local $1 i32) (local $2 i32) - (local $3 i64) - (local $4 f32) + (local $3 f32) f64.const 2.718281828459045 global.get $~lib/bindings/Math/E f64.const 0 @@ -44196,9 +44205,6 @@ call $~lib/builtins/abort unreachable end - call $~lib/bindings/Math/random - i64.reinterpret_f64 - call $~lib/math/NativeMath.seedRandom i32.const 0 local.set $1 loop $for-loop|0 @@ -44225,7 +44231,7 @@ if i32.const 0 i32.const 32 - i32.const 2850 + i32.const 2849 i32.const 2 call $~lib/builtins/abort unreachable @@ -44237,11 +44243,6 @@ br $for-loop|0 end end - call $~lib/bindings/Math/random - i64.reinterpret_f64 - local.set $3 - local.get $3 - call $~lib/math/NativeMath.seedRandom i32.const 0 local.set $1 loop $for-loop|1 @@ -44253,12 +44254,12 @@ local.get $2 if call $~lib/math/NativeMathf.random - local.set $4 - local.get $4 + local.set $3 + local.get $3 f32.const 0 f32.ge if (result i32) - local.get $4 + local.get $3 f32.const 1 f32.lt else @@ -44268,7 +44269,7 @@ if i32.const 0 i32.const 32 - i32.const 2858 + i32.const 2856 i32.const 2 call $~lib/builtins/abort unreachable @@ -44289,7 +44290,7 @@ if i32.const 0 i32.const 32 - i32.const 2872 + i32.const 2870 i32.const 0 call $~lib/builtins/abort unreachable @@ -44303,7 +44304,7 @@ if i32.const 0 i32.const 32 - i32.const 2873 + i32.const 2871 i32.const 0 call $~lib/builtins/abort unreachable @@ -44317,7 +44318,7 @@ if i32.const 0 i32.const 32 - i32.const 2874 + i32.const 2872 i32.const 0 call $~lib/builtins/abort unreachable @@ -44331,7 +44332,7 @@ if i32.const 0 i32.const 32 - i32.const 2875 + i32.const 2873 i32.const 0 call $~lib/builtins/abort unreachable @@ -44345,7 +44346,7 @@ if i32.const 0 i32.const 32 - i32.const 2876 + i32.const 2874 i32.const 0 call $~lib/builtins/abort unreachable @@ -44359,7 +44360,7 @@ if i32.const 0 i32.const 32 - i32.const 2877 + i32.const 2875 i32.const 0 call $~lib/builtins/abort unreachable @@ -44373,7 +44374,7 @@ if i32.const 0 i32.const 32 - i32.const 2878 + i32.const 2876 i32.const 0 call $~lib/builtins/abort unreachable @@ -44387,7 +44388,7 @@ if i32.const 0 i32.const 32 - i32.const 2879 + i32.const 2877 i32.const 0 call $~lib/builtins/abort unreachable @@ -44401,7 +44402,7 @@ if i32.const 0 i32.const 32 - i32.const 2880 + i32.const 2878 i32.const 0 call $~lib/builtins/abort unreachable @@ -44415,7 +44416,7 @@ if i32.const 0 i32.const 32 - i32.const 2881 + i32.const 2879 i32.const 0 call $~lib/builtins/abort unreachable @@ -44429,7 +44430,7 @@ if i32.const 0 i32.const 32 - i32.const 2884 + i32.const 2882 i32.const 0 call $~lib/builtins/abort unreachable @@ -44443,7 +44444,7 @@ if i32.const 0 i32.const 32 - i32.const 2885 + i32.const 2883 i32.const 0 call $~lib/builtins/abort unreachable @@ -44457,7 +44458,7 @@ if i32.const 0 i32.const 32 - i32.const 2886 + i32.const 2884 i32.const 0 call $~lib/builtins/abort unreachable @@ -44471,7 +44472,7 @@ if i32.const 0 i32.const 32 - i32.const 2887 + i32.const 2885 i32.const 0 call $~lib/builtins/abort unreachable @@ -44485,7 +44486,7 @@ if i32.const 0 i32.const 32 - i32.const 2888 + i32.const 2886 i32.const 0 call $~lib/builtins/abort unreachable @@ -44499,7 +44500,7 @@ if i32.const 0 i32.const 32 - i32.const 2889 + i32.const 2887 i32.const 0 call $~lib/builtins/abort unreachable @@ -44513,7 +44514,7 @@ if i32.const 0 i32.const 32 - i32.const 2890 + i32.const 2888 i32.const 0 call $~lib/builtins/abort unreachable @@ -44527,7 +44528,7 @@ if i32.const 0 i32.const 32 - i32.const 2891 + i32.const 2889 i32.const 0 call $~lib/builtins/abort unreachable @@ -44541,7 +44542,7 @@ if i32.const 0 i32.const 32 - i32.const 2892 + i32.const 2890 i32.const 0 call $~lib/builtins/abort unreachable @@ -44555,7 +44556,7 @@ if i32.const 0 i32.const 32 - i32.const 2893 + i32.const 2891 i32.const 0 call $~lib/builtins/abort unreachable @@ -44569,7 +44570,7 @@ if i32.const 0 i32.const 32 - i32.const 2894 + i32.const 2892 i32.const 0 call $~lib/builtins/abort unreachable @@ -44583,7 +44584,7 @@ if i32.const 0 i32.const 32 - i32.const 2895 + i32.const 2893 i32.const 0 call $~lib/builtins/abort unreachable @@ -44597,7 +44598,7 @@ if i32.const 0 i32.const 32 - i32.const 2896 + i32.const 2894 i32.const 0 call $~lib/builtins/abort unreachable @@ -44611,7 +44612,7 @@ if i32.const 0 i32.const 32 - i32.const 2897 + i32.const 2895 i32.const 0 call $~lib/builtins/abort unreachable @@ -44625,7 +44626,7 @@ if i32.const 0 i32.const 32 - i32.const 2898 + i32.const 2896 i32.const 0 call $~lib/builtins/abort unreachable @@ -44639,7 +44640,7 @@ if i32.const 0 i32.const 32 - i32.const 2899 + i32.const 2897 i32.const 0 call $~lib/builtins/abort unreachable @@ -44653,7 +44654,7 @@ if i32.const 0 i32.const 32 - i32.const 2900 + i32.const 2898 i32.const 0 call $~lib/builtins/abort unreachable @@ -44667,7 +44668,7 @@ if i32.const 0 i32.const 32 - i32.const 2909 + i32.const 2907 i32.const 0 call $~lib/builtins/abort unreachable @@ -44681,7 +44682,7 @@ if i32.const 0 i32.const 32 - i32.const 2910 + i32.const 2908 i32.const 0 call $~lib/builtins/abort unreachable @@ -44695,7 +44696,7 @@ if i32.const 0 i32.const 32 - i32.const 2911 + i32.const 2909 i32.const 0 call $~lib/builtins/abort unreachable @@ -44709,7 +44710,7 @@ if i32.const 0 i32.const 32 - i32.const 2912 + i32.const 2910 i32.const 0 call $~lib/builtins/abort unreachable @@ -44723,7 +44724,7 @@ if i32.const 0 i32.const 32 - i32.const 2913 + i32.const 2911 i32.const 0 call $~lib/builtins/abort unreachable @@ -44737,7 +44738,7 @@ if i32.const 0 i32.const 32 - i32.const 2914 + i32.const 2912 i32.const 0 call $~lib/builtins/abort unreachable @@ -44751,7 +44752,7 @@ if i32.const 0 i32.const 32 - i32.const 2915 + i32.const 2913 i32.const 0 call $~lib/builtins/abort unreachable @@ -44765,7 +44766,7 @@ if i32.const 0 i32.const 32 - i32.const 2916 + i32.const 2914 i32.const 0 call $~lib/builtins/abort unreachable @@ -44779,7 +44780,7 @@ if i32.const 0 i32.const 32 - i32.const 2917 + i32.const 2915 i32.const 0 call $~lib/builtins/abort unreachable @@ -44793,7 +44794,7 @@ if i32.const 0 i32.const 32 - i32.const 2918 + i32.const 2916 i32.const 0 call $~lib/builtins/abort unreachable @@ -44807,7 +44808,7 @@ if i32.const 0 i32.const 32 - i32.const 2921 + i32.const 2919 i32.const 0 call $~lib/builtins/abort unreachable @@ -44821,7 +44822,7 @@ if i32.const 0 i32.const 32 - i32.const 2922 + i32.const 2920 i32.const 0 call $~lib/builtins/abort unreachable @@ -44835,7 +44836,7 @@ if i32.const 0 i32.const 32 - i32.const 2923 + i32.const 2921 i32.const 0 call $~lib/builtins/abort unreachable @@ -44849,7 +44850,7 @@ if i32.const 0 i32.const 32 - i32.const 2924 + i32.const 2922 i32.const 0 call $~lib/builtins/abort unreachable @@ -44863,7 +44864,7 @@ if i32.const 0 i32.const 32 - i32.const 2925 + i32.const 2923 i32.const 0 call $~lib/builtins/abort unreachable @@ -44877,7 +44878,7 @@ if i32.const 0 i32.const 32 - i32.const 2926 + i32.const 2924 i32.const 0 call $~lib/builtins/abort unreachable @@ -44891,7 +44892,7 @@ if i32.const 0 i32.const 32 - i32.const 2927 + i32.const 2925 i32.const 0 call $~lib/builtins/abort unreachable @@ -44905,7 +44906,7 @@ if i32.const 0 i32.const 32 - i32.const 2928 + i32.const 2926 i32.const 0 call $~lib/builtins/abort unreachable @@ -44919,7 +44920,7 @@ if i32.const 0 i32.const 32 - i32.const 2929 + i32.const 2927 i32.const 0 call $~lib/builtins/abort unreachable @@ -44933,7 +44934,7 @@ if i32.const 0 i32.const 32 - i32.const 2930 + i32.const 2928 i32.const 0 call $~lib/builtins/abort unreachable @@ -44947,7 +44948,7 @@ if i32.const 0 i32.const 32 - i32.const 2931 + i32.const 2929 i32.const 0 call $~lib/builtins/abort unreachable @@ -44961,7 +44962,7 @@ if i32.const 0 i32.const 32 - i32.const 2932 + i32.const 2930 i32.const 0 call $~lib/builtins/abort unreachable @@ -44975,7 +44976,7 @@ if i32.const 0 i32.const 32 - i32.const 2933 + i32.const 2931 i32.const 0 call $~lib/builtins/abort unreachable @@ -44989,7 +44990,7 @@ if i32.const 0 i32.const 32 - i32.const 2934 + i32.const 2932 i32.const 0 call $~lib/builtins/abort unreachable @@ -45003,7 +45004,7 @@ if i32.const 0 i32.const 32 - i32.const 2935 + i32.const 2933 i32.const 0 call $~lib/builtins/abort unreachable @@ -45017,7 +45018,7 @@ if i32.const 0 i32.const 32 - i32.const 2936 + i32.const 2934 i32.const 0 call $~lib/builtins/abort unreachable @@ -45031,7 +45032,7 @@ if i32.const 0 i32.const 32 - i32.const 2937 + i32.const 2935 i32.const 0 call $~lib/builtins/abort unreachable @@ -45045,7 +45046,7 @@ if i32.const 0 i32.const 32 - i32.const 2948 + i32.const 2946 i32.const 0 call $~lib/builtins/abort unreachable @@ -45059,7 +45060,7 @@ if i32.const 0 i32.const 32 - i32.const 2949 + i32.const 2947 i32.const 0 call $~lib/builtins/abort unreachable @@ -45073,7 +45074,7 @@ if i32.const 0 i32.const 32 - i32.const 2950 + i32.const 2948 i32.const 0 call $~lib/builtins/abort unreachable @@ -45087,7 +45088,7 @@ if i32.const 0 i32.const 32 - i32.const 2951 + i32.const 2949 i32.const 0 call $~lib/builtins/abort unreachable @@ -45101,7 +45102,7 @@ if i32.const 0 i32.const 32 - i32.const 2952 + i32.const 2950 i32.const 0 call $~lib/builtins/abort unreachable @@ -45115,7 +45116,7 @@ if i32.const 0 i32.const 32 - i32.const 2953 + i32.const 2951 i32.const 0 call $~lib/builtins/abort unreachable @@ -45129,7 +45130,7 @@ if i32.const 0 i32.const 32 - i32.const 2954 + i32.const 2952 i32.const 0 call $~lib/builtins/abort unreachable @@ -45143,7 +45144,7 @@ if i32.const 0 i32.const 32 - i32.const 2955 + i32.const 2953 i32.const 0 call $~lib/builtins/abort unreachable @@ -45157,7 +45158,7 @@ if i32.const 0 i32.const 32 - i32.const 2956 + i32.const 2954 i32.const 0 call $~lib/builtins/abort unreachable @@ -45171,7 +45172,7 @@ if i32.const 0 i32.const 32 - i32.const 2964 + i32.const 2962 i32.const 0 call $~lib/builtins/abort unreachable @@ -45185,7 +45186,7 @@ if i32.const 0 i32.const 32 - i32.const 2965 + i32.const 2963 i32.const 0 call $~lib/builtins/abort unreachable @@ -45199,7 +45200,7 @@ if i32.const 0 i32.const 32 - i32.const 2966 + i32.const 2964 i32.const 0 call $~lib/builtins/abort unreachable @@ -45213,7 +45214,7 @@ if i32.const 0 i32.const 32 - i32.const 2967 + i32.const 2965 i32.const 0 call $~lib/builtins/abort unreachable @@ -45227,7 +45228,7 @@ if i32.const 0 i32.const 32 - i32.const 2968 + i32.const 2966 i32.const 0 call $~lib/builtins/abort unreachable @@ -45241,7 +45242,7 @@ if i32.const 0 i32.const 32 - i32.const 2969 + i32.const 2967 i32.const 0 call $~lib/builtins/abort unreachable @@ -45255,7 +45256,7 @@ if i32.const 0 i32.const 32 - i32.const 2970 + i32.const 2968 i32.const 0 call $~lib/builtins/abort unreachable @@ -45269,7 +45270,7 @@ if i32.const 0 i32.const 32 - i32.const 2971 + i32.const 2969 i32.const 0 call $~lib/builtins/abort unreachable @@ -45283,7 +45284,7 @@ if i32.const 0 i32.const 32 - i32.const 2972 + i32.const 2970 i32.const 0 call $~lib/builtins/abort unreachable @@ -45307,7 +45308,7 @@ if i32.const 0 i32.const 32 - i32.const 2978 + i32.const 2976 i32.const 0 call $~lib/builtins/abort unreachable @@ -45331,7 +45332,7 @@ if i32.const 0 i32.const 32 - i32.const 2979 + i32.const 2977 i32.const 0 call $~lib/builtins/abort unreachable @@ -45355,7 +45356,7 @@ if i32.const 0 i32.const 32 - i32.const 2980 + i32.const 2978 i32.const 0 call $~lib/builtins/abort unreachable @@ -45379,7 +45380,7 @@ if i32.const 0 i32.const 32 - i32.const 2981 + i32.const 2979 i32.const 0 call $~lib/builtins/abort unreachable @@ -45403,7 +45404,7 @@ if i32.const 0 i32.const 32 - i32.const 2982 + i32.const 2980 i32.const 0 call $~lib/builtins/abort unreachable @@ -45427,7 +45428,7 @@ if i32.const 0 i32.const 32 - i32.const 2983 + i32.const 2981 i32.const 0 call $~lib/builtins/abort unreachable @@ -45451,7 +45452,7 @@ if i32.const 0 i32.const 32 - i32.const 2984 + i32.const 2982 i32.const 0 call $~lib/builtins/abort unreachable @@ -45475,19 +45476,19 @@ if i32.const 0 i32.const 32 - i32.const 2985 + i32.const 2983 i32.const 0 call $~lib/builtins/abort unreachable end f32.const 0 - local.set $4 - local.get $4 + local.set $3 + local.get $3 i32.reinterpret_f32 i32.const 31 i32.shr_u - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.eq i32.and i32.const 0 @@ -45498,19 +45499,19 @@ if i32.const 0 i32.const 32 - i32.const 2991 + i32.const 2989 i32.const 0 call $~lib/builtins/abort unreachable end f32.const -0 - local.set $4 - local.get $4 + local.set $3 + local.get $3 i32.reinterpret_f32 i32.const 31 i32.shr_u - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.eq i32.and i32.const 0 @@ -45521,19 +45522,19 @@ if i32.const 0 i32.const 32 - i32.const 2992 + i32.const 2990 i32.const 0 call $~lib/builtins/abort unreachable end f32.const 1 - local.set $4 - local.get $4 + local.set $3 + local.get $3 i32.reinterpret_f32 i32.const 31 i32.shr_u - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.eq i32.and i32.const 0 @@ -45544,19 +45545,19 @@ if i32.const 0 i32.const 32 - i32.const 2993 + i32.const 2991 i32.const 0 call $~lib/builtins/abort unreachable end f32.const -1 - local.set $4 - local.get $4 + local.set $3 + local.get $3 i32.reinterpret_f32 i32.const 31 i32.shr_u - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.eq i32.and i32.const 0 @@ -45567,19 +45568,19 @@ if i32.const 0 i32.const 32 - i32.const 2994 + i32.const 2992 i32.const 0 call $~lib/builtins/abort unreachable end f32.const nan:0x400000 - local.set $4 - local.get $4 + local.set $3 + local.get $3 i32.reinterpret_f32 i32.const 31 i32.shr_u - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.eq i32.and i32.const 0 @@ -45590,19 +45591,19 @@ if i32.const 0 i32.const 32 - i32.const 2995 + i32.const 2993 i32.const 0 call $~lib/builtins/abort unreachable end f32.const -nan:0x400000 - local.set $4 - local.get $4 + local.set $3 + local.get $3 i32.reinterpret_f32 i32.const 31 i32.shr_u - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.eq i32.and i32.const 0 @@ -45613,19 +45614,19 @@ if i32.const 0 i32.const 32 - i32.const 2996 + i32.const 2994 i32.const 0 call $~lib/builtins/abort unreachable end f32.const inf - local.set $4 - local.get $4 + local.set $3 + local.get $3 i32.reinterpret_f32 i32.const 31 i32.shr_u - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.eq i32.and i32.const 0 @@ -45636,19 +45637,19 @@ if i32.const 0 i32.const 32 - i32.const 2997 + i32.const 2995 i32.const 0 call $~lib/builtins/abort unreachable end f32.const -inf - local.set $4 - local.get $4 + local.set $3 + local.get $3 i32.reinterpret_f32 i32.const 31 i32.shr_u - local.get $4 - local.get $4 + local.get $3 + local.get $3 f32.eq i32.and i32.const 0 @@ -45659,7 +45660,7 @@ if i32.const 0 i32.const 32 - i32.const 2998 + i32.const 2996 i32.const 0 call $~lib/builtins/abort unreachable @@ -45674,7 +45675,7 @@ if i32.const 0 i32.const 32 - i32.const 3009 + i32.const 3007 i32.const 0 call $~lib/builtins/abort unreachable @@ -45689,7 +45690,7 @@ if i32.const 0 i32.const 32 - i32.const 3010 + i32.const 3008 i32.const 0 call $~lib/builtins/abort unreachable @@ -45704,7 +45705,7 @@ if i32.const 0 i32.const 32 - i32.const 3011 + i32.const 3009 i32.const 0 call $~lib/builtins/abort unreachable @@ -45719,7 +45720,7 @@ if i32.const 0 i32.const 32 - i32.const 3012 + i32.const 3010 i32.const 0 call $~lib/builtins/abort unreachable @@ -45734,7 +45735,7 @@ if i32.const 0 i32.const 32 - i32.const 3013 + i32.const 3011 i32.const 0 call $~lib/builtins/abort unreachable @@ -45749,7 +45750,7 @@ if i32.const 0 i32.const 32 - i32.const 3014 + i32.const 3012 i32.const 0 call $~lib/builtins/abort unreachable @@ -45764,7 +45765,7 @@ if i32.const 0 i32.const 32 - i32.const 3015 + i32.const 3013 i32.const 0 call $~lib/builtins/abort unreachable @@ -45779,7 +45780,7 @@ if i32.const 0 i32.const 32 - i32.const 3016 + i32.const 3014 i32.const 0 call $~lib/builtins/abort unreachable @@ -45794,7 +45795,7 @@ if i32.const 0 i32.const 32 - i32.const 3017 + i32.const 3015 i32.const 0 call $~lib/builtins/abort unreachable @@ -45809,7 +45810,7 @@ if i32.const 0 i32.const 32 - i32.const 3018 + i32.const 3016 i32.const 0 call $~lib/builtins/abort unreachable @@ -45824,7 +45825,7 @@ if i32.const 0 i32.const 32 - i32.const 3021 + i32.const 3019 i32.const 0 call $~lib/builtins/abort unreachable @@ -45839,7 +45840,7 @@ if i32.const 0 i32.const 32 - i32.const 3022 + i32.const 3020 i32.const 0 call $~lib/builtins/abort unreachable @@ -45854,7 +45855,7 @@ if i32.const 0 i32.const 32 - i32.const 3023 + i32.const 3021 i32.const 0 call $~lib/builtins/abort unreachable @@ -45869,7 +45870,7 @@ if i32.const 0 i32.const 32 - i32.const 3024 + i32.const 3022 i32.const 0 call $~lib/builtins/abort unreachable @@ -45884,7 +45885,7 @@ if i32.const 0 i32.const 32 - i32.const 3025 + i32.const 3023 i32.const 0 call $~lib/builtins/abort unreachable @@ -45899,7 +45900,7 @@ if i32.const 0 i32.const 32 - i32.const 3026 + i32.const 3024 i32.const 0 call $~lib/builtins/abort unreachable @@ -45914,7 +45915,7 @@ if i32.const 0 i32.const 32 - i32.const 3027 + i32.const 3025 i32.const 0 call $~lib/builtins/abort unreachable @@ -45929,7 +45930,7 @@ if i32.const 0 i32.const 32 - i32.const 3028 + i32.const 3026 i32.const 0 call $~lib/builtins/abort unreachable @@ -45944,7 +45945,7 @@ if i32.const 0 i32.const 32 - i32.const 3029 + i32.const 3027 i32.const 0 call $~lib/builtins/abort unreachable @@ -45959,7 +45960,7 @@ if i32.const 0 i32.const 32 - i32.const 3030 + i32.const 3028 i32.const 0 call $~lib/builtins/abort unreachable @@ -45974,7 +45975,7 @@ if i32.const 0 i32.const 32 - i32.const 3031 + i32.const 3029 i32.const 0 call $~lib/builtins/abort unreachable @@ -45989,7 +45990,7 @@ if i32.const 0 i32.const 32 - i32.const 3032 + i32.const 3030 i32.const 0 call $~lib/builtins/abort unreachable @@ -46004,7 +46005,7 @@ if i32.const 0 i32.const 32 - i32.const 3033 + i32.const 3031 i32.const 0 call $~lib/builtins/abort unreachable @@ -46019,7 +46020,7 @@ if i32.const 0 i32.const 32 - i32.const 3034 + i32.const 3032 i32.const 0 call $~lib/builtins/abort unreachable @@ -46034,7 +46035,7 @@ if i32.const 0 i32.const 32 - i32.const 3035 + i32.const 3033 i32.const 0 call $~lib/builtins/abort unreachable @@ -46049,7 +46050,7 @@ if i32.const 0 i32.const 32 - i32.const 3036 + i32.const 3034 i32.const 0 call $~lib/builtins/abort unreachable @@ -46064,7 +46065,7 @@ if i32.const 0 i32.const 32 - i32.const 3037 + i32.const 3035 i32.const 0 call $~lib/builtins/abort unreachable @@ -46079,7 +46080,7 @@ if i32.const 0 i32.const 32 - i32.const 3038 + i32.const 3036 i32.const 0 call $~lib/builtins/abort unreachable @@ -46094,7 +46095,7 @@ if i32.const 0 i32.const 32 - i32.const 3039 + i32.const 3037 i32.const 0 call $~lib/builtins/abort unreachable @@ -46109,7 +46110,7 @@ if i32.const 0 i32.const 32 - i32.const 3040 + i32.const 3038 i32.const 0 call $~lib/builtins/abort unreachable @@ -46124,7 +46125,7 @@ if i32.const 0 i32.const 32 - i32.const 3041 + i32.const 3039 i32.const 0 call $~lib/builtins/abort unreachable @@ -46139,7 +46140,7 @@ if i32.const 0 i32.const 32 - i32.const 3042 + i32.const 3040 i32.const 0 call $~lib/builtins/abort unreachable @@ -46154,7 +46155,7 @@ if i32.const 0 i32.const 32 - i32.const 3043 + i32.const 3041 i32.const 0 call $~lib/builtins/abort unreachable @@ -46169,7 +46170,7 @@ if i32.const 0 i32.const 32 - i32.const 3044 + i32.const 3042 i32.const 0 call $~lib/builtins/abort unreachable @@ -46184,7 +46185,7 @@ if i32.const 0 i32.const 32 - i32.const 3045 + i32.const 3043 i32.const 0 call $~lib/builtins/abort unreachable @@ -46199,7 +46200,7 @@ if i32.const 0 i32.const 32 - i32.const 3046 + i32.const 3044 i32.const 0 call $~lib/builtins/abort unreachable @@ -46214,7 +46215,7 @@ if i32.const 0 i32.const 32 - i32.const 3047 + i32.const 3045 i32.const 0 call $~lib/builtins/abort unreachable @@ -46229,7 +46230,7 @@ if i32.const 0 i32.const 32 - i32.const 3048 + i32.const 3046 i32.const 0 call $~lib/builtins/abort unreachable @@ -46244,7 +46245,7 @@ if i32.const 0 i32.const 32 - i32.const 3049 + i32.const 3047 i32.const 0 call $~lib/builtins/abort unreachable @@ -46259,7 +46260,7 @@ if i32.const 0 i32.const 32 - i32.const 3050 + i32.const 3048 i32.const 0 call $~lib/builtins/abort unreachable @@ -46274,7 +46275,7 @@ if i32.const 0 i32.const 32 - i32.const 3051 + i32.const 3049 i32.const 0 call $~lib/builtins/abort unreachable @@ -46289,7 +46290,7 @@ if i32.const 0 i32.const 32 - i32.const 3052 + i32.const 3050 i32.const 0 call $~lib/builtins/abort unreachable @@ -46304,7 +46305,7 @@ if i32.const 0 i32.const 32 - i32.const 3053 + i32.const 3051 i32.const 0 call $~lib/builtins/abort unreachable @@ -46319,7 +46320,7 @@ if i32.const 0 i32.const 32 - i32.const 3054 + i32.const 3052 i32.const 0 call $~lib/builtins/abort unreachable @@ -46334,7 +46335,7 @@ if i32.const 0 i32.const 32 - i32.const 3055 + i32.const 3053 i32.const 0 call $~lib/builtins/abort unreachable @@ -46349,7 +46350,7 @@ if i32.const 0 i32.const 32 - i32.const 3056 + i32.const 3054 i32.const 0 call $~lib/builtins/abort unreachable @@ -46364,7 +46365,7 @@ if i32.const 0 i32.const 32 - i32.const 3057 + i32.const 3055 i32.const 0 call $~lib/builtins/abort unreachable @@ -46379,7 +46380,7 @@ if i32.const 0 i32.const 32 - i32.const 3058 + i32.const 3056 i32.const 0 call $~lib/builtins/abort unreachable @@ -46394,7 +46395,7 @@ if i32.const 0 i32.const 32 - i32.const 3059 + i32.const 3057 i32.const 0 call $~lib/builtins/abort unreachable @@ -46409,7 +46410,7 @@ if i32.const 0 i32.const 32 - i32.const 3060 + i32.const 3058 i32.const 0 call $~lib/builtins/abort unreachable @@ -46424,7 +46425,7 @@ if i32.const 0 i32.const 32 - i32.const 3061 + i32.const 3059 i32.const 0 call $~lib/builtins/abort unreachable @@ -46439,7 +46440,7 @@ if i32.const 0 i32.const 32 - i32.const 3062 + i32.const 3060 i32.const 0 call $~lib/builtins/abort unreachable @@ -46454,7 +46455,7 @@ if i32.const 0 i32.const 32 - i32.const 3063 + i32.const 3061 i32.const 0 call $~lib/builtins/abort unreachable @@ -46469,7 +46470,7 @@ if i32.const 0 i32.const 32 - i32.const 3064 + i32.const 3062 i32.const 0 call $~lib/builtins/abort unreachable @@ -46484,7 +46485,7 @@ if i32.const 0 i32.const 32 - i32.const 3065 + i32.const 3063 i32.const 0 call $~lib/builtins/abort unreachable @@ -46499,7 +46500,7 @@ if i32.const 0 i32.const 32 - i32.const 3066 + i32.const 3064 i32.const 0 call $~lib/builtins/abort unreachable @@ -46514,7 +46515,7 @@ if i32.const 0 i32.const 32 - i32.const 3067 + i32.const 3065 i32.const 0 call $~lib/builtins/abort unreachable @@ -46529,7 +46530,7 @@ if i32.const 0 i32.const 32 - i32.const 3068 + i32.const 3066 i32.const 0 call $~lib/builtins/abort unreachable @@ -46544,7 +46545,7 @@ if i32.const 0 i32.const 32 - i32.const 3069 + i32.const 3067 i32.const 0 call $~lib/builtins/abort unreachable @@ -46559,7 +46560,7 @@ if i32.const 0 i32.const 32 - i32.const 3070 + i32.const 3068 i32.const 0 call $~lib/builtins/abort unreachable @@ -46574,7 +46575,7 @@ if i32.const 0 i32.const 32 - i32.const 3071 + i32.const 3069 i32.const 0 call $~lib/builtins/abort unreachable @@ -46589,7 +46590,7 @@ if i32.const 0 i32.const 32 - i32.const 3072 + i32.const 3070 i32.const 0 call $~lib/builtins/abort unreachable @@ -46604,7 +46605,7 @@ if i32.const 0 i32.const 32 - i32.const 3073 + i32.const 3071 i32.const 0 call $~lib/builtins/abort unreachable @@ -46619,7 +46620,7 @@ if i32.const 0 i32.const 32 - i32.const 3074 + i32.const 3072 i32.const 0 call $~lib/builtins/abort unreachable @@ -46634,7 +46635,7 @@ if i32.const 0 i32.const 32 - i32.const 3075 + i32.const 3073 i32.const 0 call $~lib/builtins/abort unreachable @@ -46649,7 +46650,7 @@ if i32.const 0 i32.const 32 - i32.const 3076 + i32.const 3074 i32.const 0 call $~lib/builtins/abort unreachable @@ -46664,7 +46665,7 @@ if i32.const 0 i32.const 32 - i32.const 3077 + i32.const 3075 i32.const 0 call $~lib/builtins/abort unreachable @@ -46679,7 +46680,7 @@ if i32.const 0 i32.const 32 - i32.const 3078 + i32.const 3076 i32.const 0 call $~lib/builtins/abort unreachable @@ -46694,7 +46695,7 @@ if i32.const 0 i32.const 32 - i32.const 3079 + i32.const 3077 i32.const 0 call $~lib/builtins/abort unreachable @@ -46709,7 +46710,7 @@ if i32.const 0 i32.const 32 - i32.const 3080 + i32.const 3078 i32.const 0 call $~lib/builtins/abort unreachable @@ -46724,7 +46725,7 @@ if i32.const 0 i32.const 32 - i32.const 3081 + i32.const 3079 i32.const 0 call $~lib/builtins/abort unreachable @@ -46739,7 +46740,7 @@ if i32.const 0 i32.const 32 - i32.const 3082 + i32.const 3080 i32.const 0 call $~lib/builtins/abort unreachable @@ -46754,7 +46755,7 @@ if i32.const 0 i32.const 32 - i32.const 3083 + i32.const 3081 i32.const 0 call $~lib/builtins/abort unreachable @@ -46769,7 +46770,7 @@ if i32.const 0 i32.const 32 - i32.const 3084 + i32.const 3082 i32.const 0 call $~lib/builtins/abort unreachable @@ -46784,7 +46785,7 @@ if i32.const 0 i32.const 32 - i32.const 3085 + i32.const 3083 i32.const 0 call $~lib/builtins/abort unreachable @@ -46799,7 +46800,7 @@ if i32.const 0 i32.const 32 - i32.const 3086 + i32.const 3084 i32.const 0 call $~lib/builtins/abort unreachable @@ -46814,7 +46815,7 @@ if i32.const 0 i32.const 32 - i32.const 3087 + i32.const 3085 i32.const 0 call $~lib/builtins/abort unreachable @@ -46829,7 +46830,7 @@ if i32.const 0 i32.const 32 - i32.const 3096 + i32.const 3094 i32.const 0 call $~lib/builtins/abort unreachable @@ -46844,7 +46845,7 @@ if i32.const 0 i32.const 32 - i32.const 3097 + i32.const 3095 i32.const 0 call $~lib/builtins/abort unreachable @@ -46859,7 +46860,7 @@ if i32.const 0 i32.const 32 - i32.const 3098 + i32.const 3096 i32.const 0 call $~lib/builtins/abort unreachable @@ -46874,7 +46875,7 @@ if i32.const 0 i32.const 32 - i32.const 3099 + i32.const 3097 i32.const 0 call $~lib/builtins/abort unreachable @@ -46889,7 +46890,7 @@ if i32.const 0 i32.const 32 - i32.const 3100 + i32.const 3098 i32.const 0 call $~lib/builtins/abort unreachable @@ -46904,7 +46905,7 @@ if i32.const 0 i32.const 32 - i32.const 3101 + i32.const 3099 i32.const 0 call $~lib/builtins/abort unreachable @@ -46919,7 +46920,7 @@ if i32.const 0 i32.const 32 - i32.const 3102 + i32.const 3100 i32.const 0 call $~lib/builtins/abort unreachable @@ -46934,7 +46935,7 @@ if i32.const 0 i32.const 32 - i32.const 3103 + i32.const 3101 i32.const 0 call $~lib/builtins/abort unreachable @@ -46949,7 +46950,7 @@ if i32.const 0 i32.const 32 - i32.const 3104 + i32.const 3102 i32.const 0 call $~lib/builtins/abort unreachable @@ -46964,7 +46965,7 @@ if i32.const 0 i32.const 32 - i32.const 3105 + i32.const 3103 i32.const 0 call $~lib/builtins/abort unreachable @@ -46979,7 +46980,7 @@ if i32.const 0 i32.const 32 - i32.const 3108 + i32.const 3106 i32.const 0 call $~lib/builtins/abort unreachable @@ -46994,7 +46995,7 @@ if i32.const 0 i32.const 32 - i32.const 3109 + i32.const 3107 i32.const 0 call $~lib/builtins/abort unreachable @@ -47009,7 +47010,7 @@ if i32.const 0 i32.const 32 - i32.const 3110 + i32.const 3108 i32.const 0 call $~lib/builtins/abort unreachable @@ -47024,7 +47025,7 @@ if i32.const 0 i32.const 32 - i32.const 3111 + i32.const 3109 i32.const 0 call $~lib/builtins/abort unreachable @@ -47039,7 +47040,7 @@ if i32.const 0 i32.const 32 - i32.const 3112 + i32.const 3110 i32.const 0 call $~lib/builtins/abort unreachable @@ -47054,7 +47055,7 @@ if i32.const 0 i32.const 32 - i32.const 3113 + i32.const 3111 i32.const 0 call $~lib/builtins/abort unreachable @@ -47069,7 +47070,7 @@ if i32.const 0 i32.const 32 - i32.const 3114 + i32.const 3112 i32.const 0 call $~lib/builtins/abort unreachable @@ -47084,7 +47085,7 @@ if i32.const 0 i32.const 32 - i32.const 3115 + i32.const 3113 i32.const 0 call $~lib/builtins/abort unreachable @@ -47099,7 +47100,7 @@ if i32.const 0 i32.const 32 - i32.const 3116 + i32.const 3114 i32.const 0 call $~lib/builtins/abort unreachable @@ -47114,7 +47115,7 @@ if i32.const 0 i32.const 32 - i32.const 3117 + i32.const 3115 i32.const 0 call $~lib/builtins/abort unreachable @@ -47129,7 +47130,7 @@ if i32.const 0 i32.const 32 - i32.const 3118 + i32.const 3116 i32.const 0 call $~lib/builtins/abort unreachable @@ -47144,7 +47145,7 @@ if i32.const 0 i32.const 32 - i32.const 3119 + i32.const 3117 i32.const 0 call $~lib/builtins/abort unreachable @@ -47159,7 +47160,7 @@ if i32.const 0 i32.const 32 - i32.const 3120 + i32.const 3118 i32.const 0 call $~lib/builtins/abort unreachable @@ -47174,7 +47175,7 @@ if i32.const 0 i32.const 32 - i32.const 3121 + i32.const 3119 i32.const 0 call $~lib/builtins/abort unreachable @@ -47189,7 +47190,7 @@ if i32.const 0 i32.const 32 - i32.const 3122 + i32.const 3120 i32.const 0 call $~lib/builtins/abort unreachable @@ -47204,7 +47205,7 @@ if i32.const 0 i32.const 32 - i32.const 3123 + i32.const 3121 i32.const 0 call $~lib/builtins/abort unreachable @@ -47219,7 +47220,7 @@ if i32.const 0 i32.const 32 - i32.const 3124 + i32.const 3122 i32.const 0 call $~lib/builtins/abort unreachable @@ -47234,7 +47235,7 @@ if i32.const 0 i32.const 32 - i32.const 3125 + i32.const 3123 i32.const 0 call $~lib/builtins/abort unreachable @@ -47249,7 +47250,7 @@ if i32.const 0 i32.const 32 - i32.const 3126 + i32.const 3124 i32.const 0 call $~lib/builtins/abort unreachable @@ -47264,7 +47265,7 @@ if i32.const 0 i32.const 32 - i32.const 3127 + i32.const 3125 i32.const 0 call $~lib/builtins/abort unreachable @@ -47279,7 +47280,7 @@ if i32.const 0 i32.const 32 - i32.const 3128 + i32.const 3126 i32.const 0 call $~lib/builtins/abort unreachable @@ -47294,7 +47295,7 @@ if i32.const 0 i32.const 32 - i32.const 3129 + i32.const 3127 i32.const 0 call $~lib/builtins/abort unreachable @@ -47309,7 +47310,7 @@ if i32.const 0 i32.const 32 - i32.const 3130 + i32.const 3128 i32.const 0 call $~lib/builtins/abort unreachable @@ -47324,7 +47325,7 @@ if i32.const 0 i32.const 32 - i32.const 3131 + i32.const 3129 i32.const 0 call $~lib/builtins/abort unreachable @@ -47339,7 +47340,7 @@ if i32.const 0 i32.const 32 - i32.const 3132 + i32.const 3130 i32.const 0 call $~lib/builtins/abort unreachable @@ -47354,7 +47355,7 @@ if i32.const 0 i32.const 32 - i32.const 3133 + i32.const 3131 i32.const 0 call $~lib/builtins/abort unreachable @@ -47369,7 +47370,7 @@ if i32.const 0 i32.const 32 - i32.const 3134 + i32.const 3132 i32.const 0 call $~lib/builtins/abort unreachable @@ -47384,7 +47385,7 @@ if i32.const 0 i32.const 32 - i32.const 3135 + i32.const 3133 i32.const 0 call $~lib/builtins/abort unreachable @@ -47399,7 +47400,7 @@ if i32.const 0 i32.const 32 - i32.const 3136 + i32.const 3134 i32.const 0 call $~lib/builtins/abort unreachable @@ -47414,7 +47415,7 @@ if i32.const 0 i32.const 32 - i32.const 3137 + i32.const 3135 i32.const 0 call $~lib/builtins/abort unreachable @@ -47429,7 +47430,7 @@ if i32.const 0 i32.const 32 - i32.const 3138 + i32.const 3136 i32.const 0 call $~lib/builtins/abort unreachable @@ -47444,7 +47445,7 @@ if i32.const 0 i32.const 32 - i32.const 3139 + i32.const 3137 i32.const 0 call $~lib/builtins/abort unreachable @@ -47459,7 +47460,7 @@ if i32.const 0 i32.const 32 - i32.const 3140 + i32.const 3138 i32.const 0 call $~lib/builtins/abort unreachable @@ -47474,7 +47475,7 @@ if i32.const 0 i32.const 32 - i32.const 3141 + i32.const 3139 i32.const 0 call $~lib/builtins/abort unreachable @@ -47489,7 +47490,7 @@ if i32.const 0 i32.const 32 - i32.const 3142 + i32.const 3140 i32.const 0 call $~lib/builtins/abort unreachable @@ -47504,7 +47505,7 @@ if i32.const 0 i32.const 32 - i32.const 3143 + i32.const 3141 i32.const 0 call $~lib/builtins/abort unreachable @@ -47519,7 +47520,7 @@ if i32.const 0 i32.const 32 - i32.const 3144 + i32.const 3142 i32.const 0 call $~lib/builtins/abort unreachable @@ -47534,7 +47535,7 @@ if i32.const 0 i32.const 32 - i32.const 3145 + i32.const 3143 i32.const 0 call $~lib/builtins/abort unreachable @@ -47549,7 +47550,7 @@ if i32.const 0 i32.const 32 - i32.const 3146 + i32.const 3144 i32.const 0 call $~lib/builtins/abort unreachable @@ -47564,7 +47565,7 @@ if i32.const 0 i32.const 32 - i32.const 3147 + i32.const 3145 i32.const 0 call $~lib/builtins/abort unreachable @@ -47579,7 +47580,7 @@ if i32.const 0 i32.const 32 - i32.const 3148 + i32.const 3146 i32.const 0 call $~lib/builtins/abort unreachable @@ -47594,7 +47595,7 @@ if i32.const 0 i32.const 32 - i32.const 3149 + i32.const 3147 i32.const 0 call $~lib/builtins/abort unreachable @@ -47609,7 +47610,7 @@ if i32.const 0 i32.const 32 - i32.const 3150 + i32.const 3148 i32.const 0 call $~lib/builtins/abort unreachable @@ -47624,7 +47625,7 @@ if i32.const 0 i32.const 32 - i32.const 3151 + i32.const 3149 i32.const 0 call $~lib/builtins/abort unreachable @@ -47639,7 +47640,7 @@ if i32.const 0 i32.const 32 - i32.const 3152 + i32.const 3150 i32.const 0 call $~lib/builtins/abort unreachable @@ -47654,7 +47655,7 @@ if i32.const 0 i32.const 32 - i32.const 3153 + i32.const 3151 i32.const 0 call $~lib/builtins/abort unreachable @@ -47669,7 +47670,7 @@ if i32.const 0 i32.const 32 - i32.const 3154 + i32.const 3152 i32.const 0 call $~lib/builtins/abort unreachable @@ -47684,7 +47685,7 @@ if i32.const 0 i32.const 32 - i32.const 3155 + i32.const 3153 i32.const 0 call $~lib/builtins/abort unreachable @@ -47699,7 +47700,7 @@ if i32.const 0 i32.const 32 - i32.const 3156 + i32.const 3154 i32.const 0 call $~lib/builtins/abort unreachable @@ -47714,7 +47715,7 @@ if i32.const 0 i32.const 32 - i32.const 3157 + i32.const 3155 i32.const 0 call $~lib/builtins/abort unreachable @@ -47729,7 +47730,7 @@ if i32.const 0 i32.const 32 - i32.const 3158 + i32.const 3156 i32.const 0 call $~lib/builtins/abort unreachable @@ -47744,7 +47745,7 @@ if i32.const 0 i32.const 32 - i32.const 3159 + i32.const 3157 i32.const 0 call $~lib/builtins/abort unreachable @@ -47759,7 +47760,7 @@ if i32.const 0 i32.const 32 - i32.const 3160 + i32.const 3158 i32.const 0 call $~lib/builtins/abort unreachable @@ -47774,7 +47775,7 @@ if i32.const 0 i32.const 32 - i32.const 3161 + i32.const 3159 i32.const 0 call $~lib/builtins/abort unreachable @@ -47789,7 +47790,7 @@ if i32.const 0 i32.const 32 - i32.const 3162 + i32.const 3160 i32.const 0 call $~lib/builtins/abort unreachable @@ -47804,7 +47805,7 @@ if i32.const 0 i32.const 32 - i32.const 3163 + i32.const 3161 i32.const 0 call $~lib/builtins/abort unreachable @@ -47819,7 +47820,7 @@ if i32.const 0 i32.const 32 - i32.const 3164 + i32.const 3162 i32.const 0 call $~lib/builtins/abort unreachable @@ -47834,7 +47835,7 @@ if i32.const 0 i32.const 32 - i32.const 3165 + i32.const 3163 i32.const 0 call $~lib/builtins/abort unreachable @@ -47849,7 +47850,7 @@ if i32.const 0 i32.const 32 - i32.const 3166 + i32.const 3164 i32.const 0 call $~lib/builtins/abort unreachable @@ -47864,7 +47865,7 @@ if i32.const 0 i32.const 32 - i32.const 3167 + i32.const 3165 i32.const 0 call $~lib/builtins/abort unreachable @@ -47879,7 +47880,7 @@ if i32.const 0 i32.const 32 - i32.const 3168 + i32.const 3166 i32.const 0 call $~lib/builtins/abort unreachable @@ -47894,7 +47895,7 @@ if i32.const 0 i32.const 32 - i32.const 3169 + i32.const 3167 i32.const 0 call $~lib/builtins/abort unreachable @@ -47909,7 +47910,7 @@ if i32.const 0 i32.const 32 - i32.const 3170 + i32.const 3168 i32.const 0 call $~lib/builtins/abort unreachable @@ -47924,7 +47925,7 @@ if i32.const 0 i32.const 32 - i32.const 3171 + i32.const 3169 i32.const 0 call $~lib/builtins/abort unreachable @@ -47939,7 +47940,7 @@ if i32.const 0 i32.const 32 - i32.const 3172 + i32.const 3170 i32.const 0 call $~lib/builtins/abort unreachable @@ -47954,7 +47955,7 @@ if i32.const 0 i32.const 32 - i32.const 3173 + i32.const 3171 i32.const 0 call $~lib/builtins/abort unreachable @@ -47969,7 +47970,7 @@ if i32.const 0 i32.const 32 - i32.const 3174 + i32.const 3172 i32.const 0 call $~lib/builtins/abort unreachable @@ -47983,7 +47984,7 @@ if i32.const 0 i32.const 32 - i32.const 3186 + i32.const 3184 i32.const 0 call $~lib/builtins/abort unreachable @@ -47997,7 +47998,7 @@ if i32.const 0 i32.const 32 - i32.const 3187 + i32.const 3185 i32.const 0 call $~lib/builtins/abort unreachable @@ -48011,7 +48012,7 @@ if i32.const 0 i32.const 32 - i32.const 3188 + i32.const 3186 i32.const 0 call $~lib/builtins/abort unreachable @@ -48025,7 +48026,7 @@ if i32.const 0 i32.const 32 - i32.const 3189 + i32.const 3187 i32.const 0 call $~lib/builtins/abort unreachable @@ -48039,7 +48040,7 @@ if i32.const 0 i32.const 32 - i32.const 3190 + i32.const 3188 i32.const 0 call $~lib/builtins/abort unreachable @@ -48053,7 +48054,7 @@ if i32.const 0 i32.const 32 - i32.const 3191 + i32.const 3189 i32.const 0 call $~lib/builtins/abort unreachable @@ -48067,7 +48068,7 @@ if i32.const 0 i32.const 32 - i32.const 3192 + i32.const 3190 i32.const 0 call $~lib/builtins/abort unreachable @@ -48081,7 +48082,7 @@ if i32.const 0 i32.const 32 - i32.const 3193 + i32.const 3191 i32.const 0 call $~lib/builtins/abort unreachable @@ -48095,7 +48096,7 @@ if i32.const 0 i32.const 32 - i32.const 3194 + i32.const 3192 i32.const 0 call $~lib/builtins/abort unreachable @@ -48109,7 +48110,7 @@ if i32.const 0 i32.const 32 - i32.const 3195 + i32.const 3193 i32.const 0 call $~lib/builtins/abort unreachable @@ -48123,7 +48124,7 @@ if i32.const 0 i32.const 32 - i32.const 3198 + i32.const 3196 i32.const 0 call $~lib/builtins/abort unreachable @@ -48137,7 +48138,7 @@ if i32.const 0 i32.const 32 - i32.const 3199 + i32.const 3197 i32.const 0 call $~lib/builtins/abort unreachable @@ -48151,7 +48152,7 @@ if i32.const 0 i32.const 32 - i32.const 3200 + i32.const 3198 i32.const 0 call $~lib/builtins/abort unreachable @@ -48165,7 +48166,7 @@ if i32.const 0 i32.const 32 - i32.const 3201 + i32.const 3199 i32.const 0 call $~lib/builtins/abort unreachable @@ -48179,7 +48180,7 @@ if i32.const 0 i32.const 32 - i32.const 3202 + i32.const 3200 i32.const 0 call $~lib/builtins/abort unreachable @@ -48193,7 +48194,7 @@ if i32.const 0 i32.const 32 - i32.const 3203 + i32.const 3201 i32.const 0 call $~lib/builtins/abort unreachable @@ -48207,7 +48208,7 @@ if i32.const 0 i32.const 32 - i32.const 3204 + i32.const 3202 i32.const 0 call $~lib/builtins/abort unreachable @@ -48221,7 +48222,7 @@ if i32.const 0 i32.const 32 - i32.const 3205 + i32.const 3203 i32.const 0 call $~lib/builtins/abort unreachable @@ -48235,7 +48236,7 @@ if i32.const 0 i32.const 32 - i32.const 3206 + i32.const 3204 i32.const 0 call $~lib/builtins/abort unreachable @@ -48249,7 +48250,7 @@ if i32.const 0 i32.const 32 - i32.const 3207 + i32.const 3205 i32.const 0 call $~lib/builtins/abort unreachable @@ -48263,7 +48264,7 @@ if i32.const 0 i32.const 32 - i32.const 3208 + i32.const 3206 i32.const 0 call $~lib/builtins/abort unreachable @@ -48277,7 +48278,7 @@ if i32.const 0 i32.const 32 - i32.const 3209 + i32.const 3207 i32.const 0 call $~lib/builtins/abort unreachable @@ -48291,7 +48292,7 @@ if i32.const 0 i32.const 32 - i32.const 3210 + i32.const 3208 i32.const 0 call $~lib/builtins/abort unreachable @@ -48305,7 +48306,7 @@ if i32.const 0 i32.const 32 - i32.const 3211 + i32.const 3209 i32.const 0 call $~lib/builtins/abort unreachable @@ -48319,7 +48320,7 @@ if i32.const 0 i32.const 32 - i32.const 3212 + i32.const 3210 i32.const 0 call $~lib/builtins/abort unreachable @@ -48333,7 +48334,7 @@ if i32.const 0 i32.const 32 - i32.const 3213 + i32.const 3211 i32.const 0 call $~lib/builtins/abort unreachable @@ -48347,7 +48348,7 @@ if i32.const 0 i32.const 32 - i32.const 3214 + i32.const 3212 i32.const 0 call $~lib/builtins/abort unreachable @@ -48361,7 +48362,7 @@ if i32.const 0 i32.const 32 - i32.const 3215 + i32.const 3213 i32.const 0 call $~lib/builtins/abort unreachable @@ -48375,7 +48376,7 @@ if i32.const 0 i32.const 32 - i32.const 3216 + i32.const 3214 i32.const 0 call $~lib/builtins/abort unreachable @@ -48389,7 +48390,7 @@ if i32.const 0 i32.const 32 - i32.const 3217 + i32.const 3215 i32.const 0 call $~lib/builtins/abort unreachable @@ -48403,7 +48404,7 @@ if i32.const 0 i32.const 32 - i32.const 3218 + i32.const 3216 i32.const 0 call $~lib/builtins/abort unreachable @@ -48417,7 +48418,7 @@ if i32.const 0 i32.const 32 - i32.const 3219 + i32.const 3217 i32.const 0 call $~lib/builtins/abort unreachable @@ -48431,7 +48432,7 @@ if i32.const 0 i32.const 32 - i32.const 3220 + i32.const 3218 i32.const 0 call $~lib/builtins/abort unreachable @@ -48445,7 +48446,7 @@ if i32.const 0 i32.const 32 - i32.const 3221 + i32.const 3219 i32.const 0 call $~lib/builtins/abort unreachable @@ -48459,7 +48460,7 @@ if i32.const 0 i32.const 32 - i32.const 3222 + i32.const 3220 i32.const 0 call $~lib/builtins/abort unreachable @@ -48473,7 +48474,7 @@ if i32.const 0 i32.const 32 - i32.const 3223 + i32.const 3221 i32.const 0 call $~lib/builtins/abort unreachable @@ -48487,7 +48488,7 @@ if i32.const 0 i32.const 32 - i32.const 3224 + i32.const 3222 i32.const 0 call $~lib/builtins/abort unreachable @@ -48501,7 +48502,7 @@ if i32.const 0 i32.const 32 - i32.const 3225 + i32.const 3223 i32.const 0 call $~lib/builtins/abort unreachable @@ -48515,7 +48516,7 @@ if i32.const 0 i32.const 32 - i32.const 3226 + i32.const 3224 i32.const 0 call $~lib/builtins/abort unreachable @@ -48529,7 +48530,7 @@ if i32.const 0 i32.const 32 - i32.const 3227 + i32.const 3225 i32.const 0 call $~lib/builtins/abort unreachable @@ -48543,7 +48544,7 @@ if i32.const 0 i32.const 32 - i32.const 3228 + i32.const 3226 i32.const 0 call $~lib/builtins/abort unreachable @@ -48557,7 +48558,7 @@ if i32.const 0 i32.const 32 - i32.const 3229 + i32.const 3227 i32.const 0 call $~lib/builtins/abort unreachable @@ -48571,7 +48572,7 @@ if i32.const 0 i32.const 32 - i32.const 3230 + i32.const 3228 i32.const 0 call $~lib/builtins/abort unreachable @@ -48585,7 +48586,7 @@ if i32.const 0 i32.const 32 - i32.const 3231 + i32.const 3229 i32.const 0 call $~lib/builtins/abort unreachable @@ -48599,7 +48600,7 @@ if i32.const 0 i32.const 32 - i32.const 3232 + i32.const 3230 i32.const 0 call $~lib/builtins/abort unreachable @@ -48613,7 +48614,7 @@ if i32.const 0 i32.const 32 - i32.const 3233 + i32.const 3231 i32.const 0 call $~lib/builtins/abort unreachable @@ -48627,7 +48628,7 @@ if i32.const 0 i32.const 32 - i32.const 3234 + i32.const 3232 i32.const 0 call $~lib/builtins/abort unreachable @@ -48641,7 +48642,7 @@ if i32.const 0 i32.const 32 - i32.const 3237 + i32.const 3235 i32.const 0 call $~lib/builtins/abort unreachable @@ -48655,7 +48656,7 @@ if i32.const 0 i32.const 32 - i32.const 3238 + i32.const 3236 i32.const 0 call $~lib/builtins/abort unreachable @@ -48669,7 +48670,7 @@ if i32.const 0 i32.const 32 - i32.const 3239 + i32.const 3237 i32.const 0 call $~lib/builtins/abort unreachable @@ -48683,7 +48684,7 @@ if i32.const 0 i32.const 32 - i32.const 3240 + i32.const 3238 i32.const 0 call $~lib/builtins/abort unreachable @@ -48697,7 +48698,7 @@ if i32.const 0 i32.const 32 - i32.const 3241 + i32.const 3239 i32.const 0 call $~lib/builtins/abort unreachable @@ -48711,7 +48712,7 @@ if i32.const 0 i32.const 32 - i32.const 3244 + i32.const 3242 i32.const 0 call $~lib/builtins/abort unreachable @@ -48725,7 +48726,7 @@ if i32.const 0 i32.const 32 - i32.const 3245 + i32.const 3243 i32.const 0 call $~lib/builtins/abort unreachable @@ -48738,7 +48739,7 @@ if i32.const 0 i32.const 32 - i32.const 3248 + i32.const 3246 i32.const 0 call $~lib/builtins/abort unreachable @@ -48751,7 +48752,7 @@ if i32.const 0 i32.const 32 - i32.const 3249 + i32.const 3247 i32.const 0 call $~lib/builtins/abort unreachable @@ -48764,7 +48765,7 @@ if i32.const 0 i32.const 32 - i32.const 3251 + i32.const 3249 i32.const 0 call $~lib/builtins/abort unreachable @@ -48777,7 +48778,7 @@ if i32.const 0 i32.const 32 - i32.const 3252 + i32.const 3250 i32.const 0 call $~lib/builtins/abort unreachable @@ -48790,7 +48791,7 @@ if i32.const 0 i32.const 32 - i32.const 3255 + i32.const 3253 i32.const 0 call $~lib/builtins/abort unreachable @@ -48803,7 +48804,7 @@ if i32.const 0 i32.const 32 - i32.const 3256 + i32.const 3254 i32.const 0 call $~lib/builtins/abort unreachable @@ -48816,7 +48817,7 @@ if i32.const 0 i32.const 32 - i32.const 3257 + i32.const 3255 i32.const 0 call $~lib/builtins/abort unreachable @@ -48829,7 +48830,7 @@ if i32.const 0 i32.const 32 - i32.const 3258 + i32.const 3256 i32.const 0 call $~lib/builtins/abort unreachable @@ -48842,7 +48843,7 @@ if i32.const 0 i32.const 32 - i32.const 3260 + i32.const 3258 i32.const 0 call $~lib/builtins/abort unreachable @@ -48855,7 +48856,7 @@ if i32.const 0 i32.const 32 - i32.const 3261 + i32.const 3259 i32.const 0 call $~lib/builtins/abort unreachable @@ -48868,7 +48869,7 @@ if i32.const 0 i32.const 32 - i32.const 3263 + i32.const 3261 i32.const 0 call $~lib/builtins/abort unreachable @@ -48881,7 +48882,7 @@ if i32.const 0 i32.const 32 - i32.const 3264 + i32.const 3262 i32.const 0 call $~lib/builtins/abort unreachable @@ -48894,7 +48895,7 @@ if i32.const 0 i32.const 32 - i32.const 3265 + i32.const 3263 i32.const 0 call $~lib/builtins/abort unreachable @@ -48907,7 +48908,7 @@ if i32.const 0 i32.const 32 - i32.const 3266 + i32.const 3264 i32.const 0 call $~lib/builtins/abort unreachable @@ -48920,7 +48921,7 @@ if i32.const 0 i32.const 32 - i32.const 3267 + i32.const 3265 i32.const 0 call $~lib/builtins/abort unreachable @@ -48933,7 +48934,7 @@ if i32.const 0 i32.const 32 - i32.const 3270 + i32.const 3268 i32.const 0 call $~lib/builtins/abort unreachable @@ -48946,7 +48947,7 @@ if i32.const 0 i32.const 32 - i32.const 3271 + i32.const 3269 i32.const 0 call $~lib/builtins/abort unreachable @@ -48960,7 +48961,7 @@ if i32.const 0 i32.const 32 - i32.const 3280 + i32.const 3278 i32.const 0 call $~lib/builtins/abort unreachable @@ -48974,7 +48975,7 @@ if i32.const 0 i32.const 32 - i32.const 3281 + i32.const 3279 i32.const 0 call $~lib/builtins/abort unreachable @@ -48988,7 +48989,7 @@ if i32.const 0 i32.const 32 - i32.const 3282 + i32.const 3280 i32.const 0 call $~lib/builtins/abort unreachable @@ -49002,7 +49003,7 @@ if i32.const 0 i32.const 32 - i32.const 3283 + i32.const 3281 i32.const 0 call $~lib/builtins/abort unreachable @@ -49016,7 +49017,7 @@ if i32.const 0 i32.const 32 - i32.const 3284 + i32.const 3282 i32.const 0 call $~lib/builtins/abort unreachable @@ -49030,7 +49031,7 @@ if i32.const 0 i32.const 32 - i32.const 3285 + i32.const 3283 i32.const 0 call $~lib/builtins/abort unreachable @@ -49044,7 +49045,7 @@ if i32.const 0 i32.const 32 - i32.const 3286 + i32.const 3284 i32.const 0 call $~lib/builtins/abort unreachable @@ -49058,7 +49059,7 @@ if i32.const 0 i32.const 32 - i32.const 3287 + i32.const 3285 i32.const 0 call $~lib/builtins/abort unreachable @@ -49072,7 +49073,7 @@ if i32.const 0 i32.const 32 - i32.const 3288 + i32.const 3286 i32.const 0 call $~lib/builtins/abort unreachable @@ -49086,7 +49087,7 @@ if i32.const 0 i32.const 32 - i32.const 3289 + i32.const 3287 i32.const 0 call $~lib/builtins/abort unreachable @@ -49100,7 +49101,7 @@ if i32.const 0 i32.const 32 - i32.const 3292 + i32.const 3290 i32.const 0 call $~lib/builtins/abort unreachable @@ -49114,7 +49115,7 @@ if i32.const 0 i32.const 32 - i32.const 3293 + i32.const 3291 i32.const 0 call $~lib/builtins/abort unreachable @@ -49128,7 +49129,7 @@ if i32.const 0 i32.const 32 - i32.const 3294 + i32.const 3292 i32.const 0 call $~lib/builtins/abort unreachable @@ -49142,7 +49143,7 @@ if i32.const 0 i32.const 32 - i32.const 3295 + i32.const 3293 i32.const 0 call $~lib/builtins/abort unreachable @@ -49156,7 +49157,7 @@ if i32.const 0 i32.const 32 - i32.const 3296 + i32.const 3294 i32.const 0 call $~lib/builtins/abort unreachable @@ -49170,7 +49171,7 @@ if i32.const 0 i32.const 32 - i32.const 3299 + i32.const 3297 i32.const 0 call $~lib/builtins/abort unreachable @@ -49184,7 +49185,7 @@ if i32.const 0 i32.const 32 - i32.const 3300 + i32.const 3298 i32.const 0 call $~lib/builtins/abort unreachable @@ -49198,7 +49199,7 @@ if i32.const 0 i32.const 32 - i32.const 3301 + i32.const 3299 i32.const 0 call $~lib/builtins/abort unreachable @@ -49212,7 +49213,7 @@ if i32.const 0 i32.const 32 - i32.const 3302 + i32.const 3300 i32.const 0 call $~lib/builtins/abort unreachable @@ -49226,7 +49227,7 @@ if i32.const 0 i32.const 32 - i32.const 3303 + i32.const 3301 i32.const 0 call $~lib/builtins/abort unreachable @@ -49240,7 +49241,7 @@ if i32.const 0 i32.const 32 - i32.const 3304 + i32.const 3302 i32.const 0 call $~lib/builtins/abort unreachable @@ -49254,7 +49255,7 @@ if i32.const 0 i32.const 32 - i32.const 3305 + i32.const 3303 i32.const 0 call $~lib/builtins/abort unreachable @@ -49268,7 +49269,7 @@ if i32.const 0 i32.const 32 - i32.const 3306 + i32.const 3304 i32.const 0 call $~lib/builtins/abort unreachable @@ -49282,7 +49283,7 @@ if i32.const 0 i32.const 32 - i32.const 3307 + i32.const 3305 i32.const 0 call $~lib/builtins/abort unreachable @@ -49296,7 +49297,7 @@ if i32.const 0 i32.const 32 - i32.const 3308 + i32.const 3306 i32.const 0 call $~lib/builtins/abort unreachable @@ -49310,7 +49311,7 @@ if i32.const 0 i32.const 32 - i32.const 3309 + i32.const 3307 i32.const 0 call $~lib/builtins/abort unreachable @@ -49324,7 +49325,7 @@ if i32.const 0 i32.const 32 - i32.const 3310 + i32.const 3308 i32.const 0 call $~lib/builtins/abort unreachable @@ -49338,7 +49339,7 @@ if i32.const 0 i32.const 32 - i32.const 3311 + i32.const 3309 i32.const 0 call $~lib/builtins/abort unreachable @@ -49352,7 +49353,7 @@ if i32.const 0 i32.const 32 - i32.const 3312 + i32.const 3310 i32.const 0 call $~lib/builtins/abort unreachable @@ -49366,7 +49367,7 @@ if i32.const 0 i32.const 32 - i32.const 3313 + i32.const 3311 i32.const 0 call $~lib/builtins/abort unreachable @@ -49380,7 +49381,7 @@ if i32.const 0 i32.const 32 - i32.const 3314 + i32.const 3312 i32.const 0 call $~lib/builtins/abort unreachable @@ -49394,7 +49395,7 @@ if i32.const 0 i32.const 32 - i32.const 3315 + i32.const 3313 i32.const 0 call $~lib/builtins/abort unreachable @@ -49408,7 +49409,7 @@ if i32.const 0 i32.const 32 - i32.const 3316 + i32.const 3314 i32.const 0 call $~lib/builtins/abort unreachable @@ -49422,7 +49423,7 @@ if i32.const 0 i32.const 32 - i32.const 3317 + i32.const 3315 i32.const 0 call $~lib/builtins/abort unreachable @@ -49436,7 +49437,7 @@ if i32.const 0 i32.const 32 - i32.const 3318 + i32.const 3316 i32.const 0 call $~lib/builtins/abort unreachable @@ -49450,7 +49451,7 @@ if i32.const 0 i32.const 32 - i32.const 3319 + i32.const 3317 i32.const 0 call $~lib/builtins/abort unreachable @@ -49464,7 +49465,7 @@ if i32.const 0 i32.const 32 - i32.const 3320 + i32.const 3318 i32.const 0 call $~lib/builtins/abort unreachable @@ -49478,7 +49479,7 @@ if i32.const 0 i32.const 32 - i32.const 3321 + i32.const 3319 i32.const 0 call $~lib/builtins/abort unreachable @@ -49492,7 +49493,7 @@ if i32.const 0 i32.const 32 - i32.const 3322 + i32.const 3320 i32.const 0 call $~lib/builtins/abort unreachable @@ -49506,7 +49507,7 @@ if i32.const 0 i32.const 32 - i32.const 3323 + i32.const 3321 i32.const 0 call $~lib/builtins/abort unreachable @@ -49520,7 +49521,7 @@ if i32.const 0 i32.const 32 - i32.const 3324 + i32.const 3322 i32.const 0 call $~lib/builtins/abort unreachable @@ -49534,7 +49535,7 @@ if i32.const 0 i32.const 32 - i32.const 3325 + i32.const 3323 i32.const 0 call $~lib/builtins/abort unreachable @@ -49548,7 +49549,7 @@ if i32.const 0 i32.const 32 - i32.const 3326 + i32.const 3324 i32.const 0 call $~lib/builtins/abort unreachable @@ -49562,7 +49563,7 @@ if i32.const 0 i32.const 32 - i32.const 3327 + i32.const 3325 i32.const 0 call $~lib/builtins/abort unreachable @@ -49576,7 +49577,7 @@ if i32.const 0 i32.const 32 - i32.const 3328 + i32.const 3326 i32.const 0 call $~lib/builtins/abort unreachable @@ -49590,7 +49591,7 @@ if i32.const 0 i32.const 32 - i32.const 3329 + i32.const 3327 i32.const 0 call $~lib/builtins/abort unreachable @@ -49604,7 +49605,7 @@ if i32.const 0 i32.const 32 - i32.const 3330 + i32.const 3328 i32.const 0 call $~lib/builtins/abort unreachable @@ -49618,7 +49619,7 @@ if i32.const 0 i32.const 32 - i32.const 3331 + i32.const 3329 i32.const 0 call $~lib/builtins/abort unreachable @@ -49632,7 +49633,7 @@ if i32.const 0 i32.const 32 - i32.const 3332 + i32.const 3330 i32.const 0 call $~lib/builtins/abort unreachable @@ -49646,7 +49647,7 @@ if i32.const 0 i32.const 32 - i32.const 3333 + i32.const 3331 i32.const 0 call $~lib/builtins/abort unreachable @@ -49660,7 +49661,7 @@ if i32.const 0 i32.const 32 - i32.const 3334 + i32.const 3332 i32.const 0 call $~lib/builtins/abort unreachable @@ -49674,7 +49675,7 @@ if i32.const 0 i32.const 32 - i32.const 3335 + i32.const 3333 i32.const 0 call $~lib/builtins/abort unreachable @@ -49688,7 +49689,7 @@ if i32.const 0 i32.const 32 - i32.const 3336 + i32.const 3334 i32.const 0 call $~lib/builtins/abort unreachable @@ -49702,7 +49703,7 @@ if i32.const 0 i32.const 32 - i32.const 3339 + i32.const 3337 i32.const 0 call $~lib/builtins/abort unreachable @@ -49716,7 +49717,7 @@ if i32.const 0 i32.const 32 - i32.const 3340 + i32.const 3338 i32.const 0 call $~lib/builtins/abort unreachable @@ -49730,7 +49731,7 @@ if i32.const 0 i32.const 32 - i32.const 3341 + i32.const 3339 i32.const 0 call $~lib/builtins/abort unreachable @@ -49744,7 +49745,7 @@ if i32.const 0 i32.const 32 - i32.const 3342 + i32.const 3340 i32.const 0 call $~lib/builtins/abort unreachable @@ -49758,7 +49759,7 @@ if i32.const 0 i32.const 32 - i32.const 3343 + i32.const 3341 i32.const 0 call $~lib/builtins/abort unreachable @@ -49772,7 +49773,7 @@ if i32.const 0 i32.const 32 - i32.const 3344 + i32.const 3342 i32.const 0 call $~lib/builtins/abort unreachable @@ -49786,7 +49787,7 @@ if i32.const 0 i32.const 32 - i32.const 3345 + i32.const 3343 i32.const 0 call $~lib/builtins/abort unreachable @@ -49800,7 +49801,7 @@ if i32.const 0 i32.const 32 - i32.const 3346 + i32.const 3344 i32.const 0 call $~lib/builtins/abort unreachable @@ -49814,7 +49815,7 @@ if i32.const 0 i32.const 32 - i32.const 3347 + i32.const 3345 i32.const 0 call $~lib/builtins/abort unreachable @@ -49828,7 +49829,7 @@ if i32.const 0 i32.const 32 - i32.const 3348 + i32.const 3346 i32.const 0 call $~lib/builtins/abort unreachable @@ -49842,7 +49843,7 @@ if i32.const 0 i32.const 32 - i32.const 3349 + i32.const 3347 i32.const 0 call $~lib/builtins/abort unreachable @@ -49856,7 +49857,7 @@ if i32.const 0 i32.const 32 - i32.const 3350 + i32.const 3348 i32.const 0 call $~lib/builtins/abort unreachable @@ -49870,7 +49871,7 @@ if i32.const 0 i32.const 32 - i32.const 3351 + i32.const 3349 i32.const 0 call $~lib/builtins/abort unreachable @@ -49884,7 +49885,7 @@ if i32.const 0 i32.const 32 - i32.const 3352 + i32.const 3350 i32.const 0 call $~lib/builtins/abort unreachable @@ -49898,7 +49899,7 @@ if i32.const 0 i32.const 32 - i32.const 3364 + i32.const 3362 i32.const 0 call $~lib/builtins/abort unreachable @@ -49912,7 +49913,7 @@ if i32.const 0 i32.const 32 - i32.const 3365 + i32.const 3363 i32.const 0 call $~lib/builtins/abort unreachable @@ -49926,7 +49927,7 @@ if i32.const 0 i32.const 32 - i32.const 3366 + i32.const 3364 i32.const 0 call $~lib/builtins/abort unreachable @@ -49940,7 +49941,7 @@ if i32.const 0 i32.const 32 - i32.const 3367 + i32.const 3365 i32.const 0 call $~lib/builtins/abort unreachable @@ -49954,7 +49955,7 @@ if i32.const 0 i32.const 32 - i32.const 3368 + i32.const 3366 i32.const 0 call $~lib/builtins/abort unreachable @@ -49968,7 +49969,7 @@ if i32.const 0 i32.const 32 - i32.const 3369 + i32.const 3367 i32.const 0 call $~lib/builtins/abort unreachable @@ -49982,7 +49983,7 @@ if i32.const 0 i32.const 32 - i32.const 3370 + i32.const 3368 i32.const 0 call $~lib/builtins/abort unreachable @@ -49996,7 +49997,7 @@ if i32.const 0 i32.const 32 - i32.const 3371 + i32.const 3369 i32.const 0 call $~lib/builtins/abort unreachable @@ -50010,7 +50011,7 @@ if i32.const 0 i32.const 32 - i32.const 3372 + i32.const 3370 i32.const 0 call $~lib/builtins/abort unreachable @@ -50024,7 +50025,7 @@ if i32.const 0 i32.const 32 - i32.const 3373 + i32.const 3371 i32.const 0 call $~lib/builtins/abort unreachable @@ -50038,7 +50039,7 @@ if i32.const 0 i32.const 32 - i32.const 3376 + i32.const 3374 i32.const 0 call $~lib/builtins/abort unreachable @@ -50052,7 +50053,7 @@ if i32.const 0 i32.const 32 - i32.const 3377 + i32.const 3375 i32.const 0 call $~lib/builtins/abort unreachable @@ -50066,7 +50067,7 @@ if i32.const 0 i32.const 32 - i32.const 3378 + i32.const 3376 i32.const 0 call $~lib/builtins/abort unreachable @@ -50080,7 +50081,7 @@ if i32.const 0 i32.const 32 - i32.const 3379 + i32.const 3377 i32.const 0 call $~lib/builtins/abort unreachable @@ -50094,7 +50095,7 @@ if i32.const 0 i32.const 32 - i32.const 3380 + i32.const 3378 i32.const 0 call $~lib/builtins/abort unreachable @@ -50108,7 +50109,7 @@ if i32.const 0 i32.const 32 - i32.const 3389 + i32.const 3387 i32.const 0 call $~lib/builtins/abort unreachable @@ -50122,7 +50123,7 @@ if i32.const 0 i32.const 32 - i32.const 3390 + i32.const 3388 i32.const 0 call $~lib/builtins/abort unreachable @@ -50136,7 +50137,7 @@ if i32.const 0 i32.const 32 - i32.const 3391 + i32.const 3389 i32.const 0 call $~lib/builtins/abort unreachable @@ -50150,7 +50151,7 @@ if i32.const 0 i32.const 32 - i32.const 3392 + i32.const 3390 i32.const 0 call $~lib/builtins/abort unreachable @@ -50164,7 +50165,7 @@ if i32.const 0 i32.const 32 - i32.const 3393 + i32.const 3391 i32.const 0 call $~lib/builtins/abort unreachable @@ -50178,7 +50179,7 @@ if i32.const 0 i32.const 32 - i32.const 3394 + i32.const 3392 i32.const 0 call $~lib/builtins/abort unreachable @@ -50192,7 +50193,7 @@ if i32.const 0 i32.const 32 - i32.const 3395 + i32.const 3393 i32.const 0 call $~lib/builtins/abort unreachable @@ -50206,7 +50207,7 @@ if i32.const 0 i32.const 32 - i32.const 3396 + i32.const 3394 i32.const 0 call $~lib/builtins/abort unreachable @@ -50220,7 +50221,7 @@ if i32.const 0 i32.const 32 - i32.const 3397 + i32.const 3395 i32.const 0 call $~lib/builtins/abort unreachable @@ -50234,7 +50235,7 @@ if i32.const 0 i32.const 32 - i32.const 3398 + i32.const 3396 i32.const 0 call $~lib/builtins/abort unreachable @@ -50248,7 +50249,7 @@ if i32.const 0 i32.const 32 - i32.const 3401 + i32.const 3399 i32.const 0 call $~lib/builtins/abort unreachable @@ -50262,7 +50263,7 @@ if i32.const 0 i32.const 32 - i32.const 3402 + i32.const 3400 i32.const 0 call $~lib/builtins/abort unreachable @@ -50276,7 +50277,7 @@ if i32.const 0 i32.const 32 - i32.const 3403 + i32.const 3401 i32.const 0 call $~lib/builtins/abort unreachable @@ -50290,7 +50291,7 @@ if i32.const 0 i32.const 32 - i32.const 3404 + i32.const 3402 i32.const 0 call $~lib/builtins/abort unreachable @@ -50304,7 +50305,7 @@ if i32.const 0 i32.const 32 - i32.const 3405 + i32.const 3403 i32.const 0 call $~lib/builtins/abort unreachable @@ -50318,7 +50319,7 @@ if i32.const 0 i32.const 32 - i32.const 3417 + i32.const 3415 i32.const 0 call $~lib/builtins/abort unreachable @@ -50332,7 +50333,7 @@ if i32.const 0 i32.const 32 - i32.const 3418 + i32.const 3416 i32.const 0 call $~lib/builtins/abort unreachable @@ -50346,7 +50347,7 @@ if i32.const 0 i32.const 32 - i32.const 3419 + i32.const 3417 i32.const 0 call $~lib/builtins/abort unreachable @@ -50360,7 +50361,7 @@ if i32.const 0 i32.const 32 - i32.const 3420 + i32.const 3418 i32.const 0 call $~lib/builtins/abort unreachable @@ -50374,7 +50375,7 @@ if i32.const 0 i32.const 32 - i32.const 3421 + i32.const 3419 i32.const 0 call $~lib/builtins/abort unreachable @@ -50388,7 +50389,7 @@ if i32.const 0 i32.const 32 - i32.const 3422 + i32.const 3420 i32.const 0 call $~lib/builtins/abort unreachable @@ -50402,7 +50403,7 @@ if i32.const 0 i32.const 32 - i32.const 3423 + i32.const 3421 i32.const 0 call $~lib/builtins/abort unreachable @@ -50416,7 +50417,7 @@ if i32.const 0 i32.const 32 - i32.const 3424 + i32.const 3422 i32.const 0 call $~lib/builtins/abort unreachable @@ -50430,7 +50431,7 @@ if i32.const 0 i32.const 32 - i32.const 3425 + i32.const 3423 i32.const 0 call $~lib/builtins/abort unreachable @@ -50444,7 +50445,7 @@ if i32.const 0 i32.const 32 - i32.const 3426 + i32.const 3424 i32.const 0 call $~lib/builtins/abort unreachable @@ -50458,7 +50459,7 @@ if i32.const 0 i32.const 32 - i32.const 3429 + i32.const 3427 i32.const 0 call $~lib/builtins/abort unreachable @@ -50472,7 +50473,7 @@ if i32.const 0 i32.const 32 - i32.const 3430 + i32.const 3428 i32.const 0 call $~lib/builtins/abort unreachable @@ -50486,7 +50487,7 @@ if i32.const 0 i32.const 32 - i32.const 3431 + i32.const 3429 i32.const 0 call $~lib/builtins/abort unreachable @@ -50500,7 +50501,7 @@ if i32.const 0 i32.const 32 - i32.const 3432 + i32.const 3430 i32.const 0 call $~lib/builtins/abort unreachable @@ -50514,7 +50515,7 @@ if i32.const 0 i32.const 32 - i32.const 3433 + i32.const 3431 i32.const 0 call $~lib/builtins/abort unreachable @@ -50528,7 +50529,7 @@ if i32.const 0 i32.const 32 - i32.const 3434 + i32.const 3432 i32.const 0 call $~lib/builtins/abort unreachable @@ -50542,7 +50543,7 @@ if i32.const 0 i32.const 32 - i32.const 3435 + i32.const 3433 i32.const 0 call $~lib/builtins/abort unreachable @@ -50556,7 +50557,7 @@ if i32.const 0 i32.const 32 - i32.const 3436 + i32.const 3434 i32.const 0 call $~lib/builtins/abort unreachable @@ -50570,7 +50571,7 @@ if i32.const 0 i32.const 32 - i32.const 3437 + i32.const 3435 i32.const 0 call $~lib/builtins/abort unreachable @@ -50584,7 +50585,7 @@ if i32.const 0 i32.const 32 - i32.const 3438 + i32.const 3436 i32.const 0 call $~lib/builtins/abort unreachable @@ -50598,7 +50599,7 @@ if i32.const 0 i32.const 32 - i32.const 3439 + i32.const 3437 i32.const 0 call $~lib/builtins/abort unreachable @@ -50612,7 +50613,7 @@ if i32.const 0 i32.const 32 - i32.const 3440 + i32.const 3438 i32.const 0 call $~lib/builtins/abort unreachable @@ -50626,7 +50627,7 @@ if i32.const 0 i32.const 32 - i32.const 3441 + i32.const 3439 i32.const 0 call $~lib/builtins/abort unreachable @@ -50640,7 +50641,7 @@ if i32.const 0 i32.const 32 - i32.const 3442 + i32.const 3440 i32.const 0 call $~lib/builtins/abort unreachable @@ -50654,7 +50655,7 @@ if i32.const 0 i32.const 32 - i32.const 3443 + i32.const 3441 i32.const 0 call $~lib/builtins/abort unreachable @@ -50668,7 +50669,7 @@ if i32.const 0 i32.const 32 - i32.const 3444 + i32.const 3442 i32.const 0 call $~lib/builtins/abort unreachable @@ -50682,7 +50683,7 @@ if i32.const 0 i32.const 32 - i32.const 3445 + i32.const 3443 i32.const 0 call $~lib/builtins/abort unreachable @@ -50696,7 +50697,7 @@ if i32.const 0 i32.const 32 - i32.const 3446 + i32.const 3444 i32.const 0 call $~lib/builtins/abort unreachable @@ -50710,7 +50711,7 @@ if i32.const 0 i32.const 32 - i32.const 3447 + i32.const 3445 i32.const 0 call $~lib/builtins/abort unreachable @@ -50724,7 +50725,7 @@ if i32.const 0 i32.const 32 - i32.const 3448 + i32.const 3446 i32.const 0 call $~lib/builtins/abort unreachable @@ -50738,7 +50739,7 @@ if i32.const 0 i32.const 32 - i32.const 3449 + i32.const 3447 i32.const 0 call $~lib/builtins/abort unreachable @@ -50752,7 +50753,7 @@ if i32.const 0 i32.const 32 - i32.const 3450 + i32.const 3448 i32.const 0 call $~lib/builtins/abort unreachable @@ -50766,7 +50767,7 @@ if i32.const 0 i32.const 32 - i32.const 3451 + i32.const 3449 i32.const 0 call $~lib/builtins/abort unreachable @@ -50780,7 +50781,7 @@ if i32.const 0 i32.const 32 - i32.const 3452 + i32.const 3450 i32.const 0 call $~lib/builtins/abort unreachable @@ -50794,7 +50795,7 @@ if i32.const 0 i32.const 32 - i32.const 3453 + i32.const 3451 i32.const 0 call $~lib/builtins/abort unreachable @@ -50808,7 +50809,7 @@ if i32.const 0 i32.const 32 - i32.const 3454 + i32.const 3452 i32.const 0 call $~lib/builtins/abort unreachable @@ -50822,7 +50823,7 @@ if i32.const 0 i32.const 32 - i32.const 3455 + i32.const 3453 i32.const 0 call $~lib/builtins/abort unreachable @@ -50836,7 +50837,7 @@ if i32.const 0 i32.const 32 - i32.const 3456 + i32.const 3454 i32.const 0 call $~lib/builtins/abort unreachable @@ -50850,7 +50851,7 @@ if i32.const 0 i32.const 32 - i32.const 3457 + i32.const 3455 i32.const 0 call $~lib/builtins/abort unreachable @@ -50864,7 +50865,7 @@ if i32.const 0 i32.const 32 - i32.const 3458 + i32.const 3456 i32.const 0 call $~lib/builtins/abort unreachable @@ -50878,7 +50879,7 @@ if i32.const 0 i32.const 32 - i32.const 3459 + i32.const 3457 i32.const 0 call $~lib/builtins/abort unreachable @@ -50892,7 +50893,7 @@ if i32.const 0 i32.const 32 - i32.const 3460 + i32.const 3458 i32.const 0 call $~lib/builtins/abort unreachable @@ -50906,7 +50907,7 @@ if i32.const 0 i32.const 32 - i32.const 3461 + i32.const 3459 i32.const 0 call $~lib/builtins/abort unreachable @@ -50920,7 +50921,7 @@ if i32.const 0 i32.const 32 - i32.const 3462 + i32.const 3460 i32.const 0 call $~lib/builtins/abort unreachable @@ -50934,7 +50935,7 @@ if i32.const 0 i32.const 32 - i32.const 3463 + i32.const 3461 i32.const 0 call $~lib/builtins/abort unreachable @@ -50948,7 +50949,7 @@ if i32.const 0 i32.const 32 - i32.const 3464 + i32.const 3462 i32.const 0 call $~lib/builtins/abort unreachable @@ -50962,7 +50963,7 @@ if i32.const 0 i32.const 32 - i32.const 3465 + i32.const 3463 i32.const 0 call $~lib/builtins/abort unreachable @@ -50976,7 +50977,7 @@ if i32.const 0 i32.const 32 - i32.const 3466 + i32.const 3464 i32.const 0 call $~lib/builtins/abort unreachable @@ -50990,7 +50991,7 @@ if i32.const 0 i32.const 32 - i32.const 3467 + i32.const 3465 i32.const 0 call $~lib/builtins/abort unreachable @@ -51004,7 +51005,7 @@ if i32.const 0 i32.const 32 - i32.const 3468 + i32.const 3466 i32.const 0 call $~lib/builtins/abort unreachable @@ -51018,7 +51019,7 @@ if i32.const 0 i32.const 32 - i32.const 3469 + i32.const 3467 i32.const 0 call $~lib/builtins/abort unreachable @@ -51032,7 +51033,7 @@ if i32.const 0 i32.const 32 - i32.const 3470 + i32.const 3468 i32.const 0 call $~lib/builtins/abort unreachable @@ -51046,7 +51047,7 @@ if i32.const 0 i32.const 32 - i32.const 3471 + i32.const 3469 i32.const 0 call $~lib/builtins/abort unreachable @@ -51060,7 +51061,7 @@ if i32.const 0 i32.const 32 - i32.const 3472 + i32.const 3470 i32.const 0 call $~lib/builtins/abort unreachable @@ -51074,7 +51075,7 @@ if i32.const 0 i32.const 32 - i32.const 3473 + i32.const 3471 i32.const 0 call $~lib/builtins/abort unreachable @@ -51088,7 +51089,7 @@ if i32.const 0 i32.const 32 - i32.const 3474 + i32.const 3472 i32.const 0 call $~lib/builtins/abort unreachable @@ -51102,7 +51103,7 @@ if i32.const 0 i32.const 32 - i32.const 3475 + i32.const 3473 i32.const 0 call $~lib/builtins/abort unreachable @@ -51116,7 +51117,7 @@ if i32.const 0 i32.const 32 - i32.const 3476 + i32.const 3474 i32.const 0 call $~lib/builtins/abort unreachable @@ -51130,7 +51131,7 @@ if i32.const 0 i32.const 32 - i32.const 3477 + i32.const 3475 i32.const 0 call $~lib/builtins/abort unreachable @@ -51144,7 +51145,7 @@ if i32.const 0 i32.const 32 - i32.const 3478 + i32.const 3476 i32.const 0 call $~lib/builtins/abort unreachable @@ -51158,7 +51159,7 @@ if i32.const 0 i32.const 32 - i32.const 3479 + i32.const 3477 i32.const 0 call $~lib/builtins/abort unreachable @@ -51172,7 +51173,7 @@ if i32.const 0 i32.const 32 - i32.const 3480 + i32.const 3478 i32.const 0 call $~lib/builtins/abort unreachable @@ -51186,7 +51187,7 @@ if i32.const 0 i32.const 32 - i32.const 3481 + i32.const 3479 i32.const 0 call $~lib/builtins/abort unreachable @@ -51200,7 +51201,7 @@ if i32.const 0 i32.const 32 - i32.const 3482 + i32.const 3480 i32.const 0 call $~lib/builtins/abort unreachable @@ -51214,7 +51215,7 @@ if i32.const 0 i32.const 32 - i32.const 3483 + i32.const 3481 i32.const 0 call $~lib/builtins/abort unreachable @@ -51228,7 +51229,7 @@ if i32.const 0 i32.const 32 - i32.const 3484 + i32.const 3482 i32.const 0 call $~lib/builtins/abort unreachable @@ -51242,7 +51243,7 @@ if i32.const 0 i32.const 32 - i32.const 3485 + i32.const 3483 i32.const 0 call $~lib/builtins/abort unreachable @@ -51256,7 +51257,7 @@ if i32.const 0 i32.const 32 - i32.const 3486 + i32.const 3484 i32.const 0 call $~lib/builtins/abort unreachable @@ -51270,7 +51271,7 @@ if i32.const 0 i32.const 32 - i32.const 3487 + i32.const 3485 i32.const 0 call $~lib/builtins/abort unreachable @@ -51284,7 +51285,7 @@ if i32.const 0 i32.const 32 - i32.const 3488 + i32.const 3486 i32.const 0 call $~lib/builtins/abort unreachable @@ -51298,7 +51299,7 @@ if i32.const 0 i32.const 32 - i32.const 3489 + i32.const 3487 i32.const 0 call $~lib/builtins/abort unreachable @@ -51312,7 +51313,7 @@ if i32.const 0 i32.const 32 - i32.const 3490 + i32.const 3488 i32.const 0 call $~lib/builtins/abort unreachable @@ -51326,7 +51327,7 @@ if i32.const 0 i32.const 32 - i32.const 3491 + i32.const 3489 i32.const 0 call $~lib/builtins/abort unreachable @@ -51340,7 +51341,7 @@ if i32.const 0 i32.const 32 - i32.const 3492 + i32.const 3490 i32.const 0 call $~lib/builtins/abort unreachable @@ -51354,7 +51355,7 @@ if i32.const 0 i32.const 32 - i32.const 3493 + i32.const 3491 i32.const 0 call $~lib/builtins/abort unreachable @@ -51368,7 +51369,7 @@ if i32.const 0 i32.const 32 - i32.const 3494 + i32.const 3492 i32.const 0 call $~lib/builtins/abort unreachable @@ -51382,7 +51383,7 @@ if i32.const 0 i32.const 32 - i32.const 3495 + i32.const 3493 i32.const 0 call $~lib/builtins/abort unreachable @@ -51396,7 +51397,7 @@ if i32.const 0 i32.const 32 - i32.const 3496 + i32.const 3494 i32.const 0 call $~lib/builtins/abort unreachable @@ -51410,7 +51411,7 @@ if i32.const 0 i32.const 32 - i32.const 3497 + i32.const 3495 i32.const 0 call $~lib/builtins/abort unreachable @@ -51424,7 +51425,7 @@ if i32.const 0 i32.const 32 - i32.const 3498 + i32.const 3496 i32.const 0 call $~lib/builtins/abort unreachable @@ -51438,7 +51439,7 @@ if i32.const 0 i32.const 32 - i32.const 3499 + i32.const 3497 i32.const 0 call $~lib/builtins/abort unreachable @@ -51452,7 +51453,7 @@ if i32.const 0 i32.const 32 - i32.const 3500 + i32.const 3498 i32.const 0 call $~lib/builtins/abort unreachable @@ -51466,7 +51467,7 @@ if i32.const 0 i32.const 32 - i32.const 3501 + i32.const 3499 i32.const 0 call $~lib/builtins/abort unreachable @@ -51480,7 +51481,7 @@ if i32.const 0 i32.const 32 - i32.const 3502 + i32.const 3500 i32.const 0 call $~lib/builtins/abort unreachable @@ -51494,7 +51495,7 @@ if i32.const 0 i32.const 32 - i32.const 3511 + i32.const 3509 i32.const 0 call $~lib/builtins/abort unreachable @@ -51508,7 +51509,7 @@ if i32.const 0 i32.const 32 - i32.const 3512 + i32.const 3510 i32.const 0 call $~lib/builtins/abort unreachable @@ -51522,7 +51523,7 @@ if i32.const 0 i32.const 32 - i32.const 3513 + i32.const 3511 i32.const 0 call $~lib/builtins/abort unreachable @@ -51536,7 +51537,7 @@ if i32.const 0 i32.const 32 - i32.const 3514 + i32.const 3512 i32.const 0 call $~lib/builtins/abort unreachable @@ -51550,7 +51551,7 @@ if i32.const 0 i32.const 32 - i32.const 3515 + i32.const 3513 i32.const 0 call $~lib/builtins/abort unreachable @@ -51564,7 +51565,7 @@ if i32.const 0 i32.const 32 - i32.const 3516 + i32.const 3514 i32.const 0 call $~lib/builtins/abort unreachable @@ -51578,7 +51579,7 @@ if i32.const 0 i32.const 32 - i32.const 3517 + i32.const 3515 i32.const 0 call $~lib/builtins/abort unreachable @@ -51592,7 +51593,7 @@ if i32.const 0 i32.const 32 - i32.const 3518 + i32.const 3516 i32.const 0 call $~lib/builtins/abort unreachable @@ -51606,7 +51607,7 @@ if i32.const 0 i32.const 32 - i32.const 3519 + i32.const 3517 i32.const 0 call $~lib/builtins/abort unreachable @@ -51620,7 +51621,7 @@ if i32.const 0 i32.const 32 - i32.const 3520 + i32.const 3518 i32.const 0 call $~lib/builtins/abort unreachable @@ -51634,7 +51635,7 @@ if i32.const 0 i32.const 32 - i32.const 3523 + i32.const 3521 i32.const 0 call $~lib/builtins/abort unreachable @@ -51648,7 +51649,7 @@ if i32.const 0 i32.const 32 - i32.const 3524 + i32.const 3522 i32.const 0 call $~lib/builtins/abort unreachable @@ -51662,7 +51663,7 @@ if i32.const 0 i32.const 32 - i32.const 3525 + i32.const 3523 i32.const 0 call $~lib/builtins/abort unreachable @@ -51676,7 +51677,7 @@ if i32.const 0 i32.const 32 - i32.const 3526 + i32.const 3524 i32.const 0 call $~lib/builtins/abort unreachable @@ -51690,7 +51691,7 @@ if i32.const 0 i32.const 32 - i32.const 3527 + i32.const 3525 i32.const 0 call $~lib/builtins/abort unreachable @@ -51704,7 +51705,7 @@ if i32.const 0 i32.const 32 - i32.const 3528 + i32.const 3526 i32.const 0 call $~lib/builtins/abort unreachable @@ -51718,7 +51719,7 @@ if i32.const 0 i32.const 32 - i32.const 3529 + i32.const 3527 i32.const 0 call $~lib/builtins/abort unreachable @@ -51732,7 +51733,7 @@ if i32.const 0 i32.const 32 - i32.const 3530 + i32.const 3528 i32.const 0 call $~lib/builtins/abort unreachable @@ -51746,7 +51747,7 @@ if i32.const 0 i32.const 32 - i32.const 3531 + i32.const 3529 i32.const 0 call $~lib/builtins/abort unreachable @@ -51760,7 +51761,7 @@ if i32.const 0 i32.const 32 - i32.const 3532 + i32.const 3530 i32.const 0 call $~lib/builtins/abort unreachable @@ -51774,7 +51775,7 @@ if i32.const 0 i32.const 32 - i32.const 3533 + i32.const 3531 i32.const 0 call $~lib/builtins/abort unreachable @@ -51788,7 +51789,7 @@ if i32.const 0 i32.const 32 - i32.const 3534 + i32.const 3532 i32.const 0 call $~lib/builtins/abort unreachable @@ -51802,7 +51803,7 @@ if i32.const 0 i32.const 32 - i32.const 3535 + i32.const 3533 i32.const 0 call $~lib/builtins/abort unreachable @@ -51816,7 +51817,7 @@ if i32.const 0 i32.const 32 - i32.const 3536 + i32.const 3534 i32.const 0 call $~lib/builtins/abort unreachable @@ -51830,7 +51831,7 @@ if i32.const 0 i32.const 32 - i32.const 3537 + i32.const 3535 i32.const 0 call $~lib/builtins/abort unreachable @@ -51844,7 +51845,7 @@ if i32.const 0 i32.const 32 - i32.const 3538 + i32.const 3536 i32.const 0 call $~lib/builtins/abort unreachable @@ -51858,7 +51859,7 @@ if i32.const 0 i32.const 32 - i32.const 3539 + i32.const 3537 i32.const 0 call $~lib/builtins/abort unreachable @@ -51872,7 +51873,7 @@ if i32.const 0 i32.const 32 - i32.const 3540 + i32.const 3538 i32.const 0 call $~lib/builtins/abort unreachable @@ -51886,7 +51887,7 @@ if i32.const 0 i32.const 32 - i32.const 3541 + i32.const 3539 i32.const 0 call $~lib/builtins/abort unreachable @@ -51900,7 +51901,7 @@ if i32.const 0 i32.const 32 - i32.const 3542 + i32.const 3540 i32.const 0 call $~lib/builtins/abort unreachable @@ -51914,7 +51915,7 @@ if i32.const 0 i32.const 32 - i32.const 3543 + i32.const 3541 i32.const 0 call $~lib/builtins/abort unreachable @@ -51928,7 +51929,7 @@ if i32.const 0 i32.const 32 - i32.const 3544 + i32.const 3542 i32.const 0 call $~lib/builtins/abort unreachable @@ -51942,7 +51943,7 @@ if i32.const 0 i32.const 32 - i32.const 3556 + i32.const 3554 i32.const 0 call $~lib/builtins/abort unreachable @@ -51956,7 +51957,7 @@ if i32.const 0 i32.const 32 - i32.const 3557 + i32.const 3555 i32.const 0 call $~lib/builtins/abort unreachable @@ -51970,7 +51971,7 @@ if i32.const 0 i32.const 32 - i32.const 3558 + i32.const 3556 i32.const 0 call $~lib/builtins/abort unreachable @@ -51984,7 +51985,7 @@ if i32.const 0 i32.const 32 - i32.const 3559 + i32.const 3557 i32.const 0 call $~lib/builtins/abort unreachable @@ -51998,7 +51999,7 @@ if i32.const 0 i32.const 32 - i32.const 3560 + i32.const 3558 i32.const 0 call $~lib/builtins/abort unreachable @@ -52012,7 +52013,7 @@ if i32.const 0 i32.const 32 - i32.const 3561 + i32.const 3559 i32.const 0 call $~lib/builtins/abort unreachable @@ -52026,7 +52027,7 @@ if i32.const 0 i32.const 32 - i32.const 3562 + i32.const 3560 i32.const 0 call $~lib/builtins/abort unreachable @@ -52040,7 +52041,7 @@ if i32.const 0 i32.const 32 - i32.const 3563 + i32.const 3561 i32.const 0 call $~lib/builtins/abort unreachable @@ -52054,7 +52055,7 @@ if i32.const 0 i32.const 32 - i32.const 3564 + i32.const 3562 i32.const 0 call $~lib/builtins/abort unreachable @@ -52068,7 +52069,7 @@ if i32.const 0 i32.const 32 - i32.const 3565 + i32.const 3563 i32.const 0 call $~lib/builtins/abort unreachable @@ -52082,7 +52083,7 @@ if i32.const 0 i32.const 32 - i32.const 3568 + i32.const 3566 i32.const 0 call $~lib/builtins/abort unreachable @@ -52096,7 +52097,7 @@ if i32.const 0 i32.const 32 - i32.const 3569 + i32.const 3567 i32.const 0 call $~lib/builtins/abort unreachable @@ -52110,7 +52111,7 @@ if i32.const 0 i32.const 32 - i32.const 3570 + i32.const 3568 i32.const 0 call $~lib/builtins/abort unreachable @@ -52124,7 +52125,7 @@ if i32.const 0 i32.const 32 - i32.const 3571 + i32.const 3569 i32.const 0 call $~lib/builtins/abort unreachable @@ -52138,7 +52139,7 @@ if i32.const 0 i32.const 32 - i32.const 3572 + i32.const 3570 i32.const 0 call $~lib/builtins/abort unreachable @@ -52152,7 +52153,7 @@ if i32.const 0 i32.const 32 - i32.const 3573 + i32.const 3571 i32.const 0 call $~lib/builtins/abort unreachable @@ -52166,7 +52167,7 @@ if i32.const 0 i32.const 32 - i32.const 3574 + i32.const 3572 i32.const 0 call $~lib/builtins/abort unreachable @@ -52180,7 +52181,7 @@ if i32.const 0 i32.const 32 - i32.const 3575 + i32.const 3573 i32.const 0 call $~lib/builtins/abort unreachable @@ -52194,7 +52195,7 @@ if i32.const 0 i32.const 32 - i32.const 3576 + i32.const 3574 i32.const 0 call $~lib/builtins/abort unreachable @@ -52208,7 +52209,7 @@ if i32.const 0 i32.const 32 - i32.const 3577 + i32.const 3575 i32.const 0 call $~lib/builtins/abort unreachable @@ -52222,7 +52223,7 @@ if i32.const 0 i32.const 32 - i32.const 3578 + i32.const 3576 i32.const 0 call $~lib/builtins/abort unreachable @@ -52236,7 +52237,7 @@ if i32.const 0 i32.const 32 - i32.const 3579 + i32.const 3577 i32.const 0 call $~lib/builtins/abort unreachable @@ -52250,7 +52251,7 @@ if i32.const 0 i32.const 32 - i32.const 3580 + i32.const 3578 i32.const 0 call $~lib/builtins/abort unreachable @@ -52264,7 +52265,7 @@ if i32.const 0 i32.const 32 - i32.const 3581 + i32.const 3579 i32.const 0 call $~lib/builtins/abort unreachable @@ -52278,7 +52279,7 @@ if i32.const 0 i32.const 32 - i32.const 3582 + i32.const 3580 i32.const 0 call $~lib/builtins/abort unreachable @@ -52292,7 +52293,7 @@ if i32.const 0 i32.const 32 - i32.const 3583 + i32.const 3581 i32.const 0 call $~lib/builtins/abort unreachable @@ -52306,7 +52307,7 @@ if i32.const 0 i32.const 32 - i32.const 3584 + i32.const 3582 i32.const 0 call $~lib/builtins/abort unreachable @@ -52320,7 +52321,7 @@ if i32.const 0 i32.const 32 - i32.const 3585 + i32.const 3583 i32.const 0 call $~lib/builtins/abort unreachable @@ -52334,7 +52335,7 @@ if i32.const 0 i32.const 32 - i32.const 3586 + i32.const 3584 i32.const 0 call $~lib/builtins/abort unreachable @@ -52348,7 +52349,7 @@ if i32.const 0 i32.const 32 - i32.const 3587 + i32.const 3585 i32.const 0 call $~lib/builtins/abort unreachable @@ -52362,7 +52363,7 @@ if i32.const 0 i32.const 32 - i32.const 3588 + i32.const 3586 i32.const 0 call $~lib/builtins/abort unreachable @@ -52376,7 +52377,7 @@ if i32.const 0 i32.const 32 - i32.const 3589 + i32.const 3587 i32.const 0 call $~lib/builtins/abort unreachable @@ -52390,7 +52391,7 @@ if i32.const 0 i32.const 32 - i32.const 3590 + i32.const 3588 i32.const 0 call $~lib/builtins/abort unreachable @@ -52404,7 +52405,7 @@ if i32.const 0 i32.const 32 - i32.const 3591 + i32.const 3589 i32.const 0 call $~lib/builtins/abort unreachable @@ -52418,7 +52419,7 @@ if i32.const 0 i32.const 32 - i32.const 3592 + i32.const 3590 i32.const 0 call $~lib/builtins/abort unreachable @@ -52432,7 +52433,7 @@ if i32.const 0 i32.const 32 - i32.const 3593 + i32.const 3591 i32.const 0 call $~lib/builtins/abort unreachable @@ -52446,7 +52447,7 @@ if i32.const 0 i32.const 32 - i32.const 3594 + i32.const 3592 i32.const 0 call $~lib/builtins/abort unreachable @@ -52460,7 +52461,7 @@ if i32.const 0 i32.const 32 - i32.const 3595 + i32.const 3593 i32.const 0 call $~lib/builtins/abort unreachable @@ -52474,7 +52475,7 @@ if i32.const 0 i32.const 32 - i32.const 3596 + i32.const 3594 i32.const 0 call $~lib/builtins/abort unreachable @@ -52488,7 +52489,7 @@ if i32.const 0 i32.const 32 - i32.const 3597 + i32.const 3595 i32.const 0 call $~lib/builtins/abort unreachable @@ -52502,7 +52503,7 @@ if i32.const 0 i32.const 32 - i32.const 3598 + i32.const 3596 i32.const 0 call $~lib/builtins/abort unreachable @@ -52516,7 +52517,7 @@ if i32.const 0 i32.const 32 - i32.const 3599 + i32.const 3597 i32.const 0 call $~lib/builtins/abort unreachable @@ -52530,7 +52531,7 @@ if i32.const 0 i32.const 32 - i32.const 3600 + i32.const 3598 i32.const 0 call $~lib/builtins/abort unreachable @@ -52544,7 +52545,7 @@ if i32.const 0 i32.const 32 - i32.const 3601 + i32.const 3599 i32.const 0 call $~lib/builtins/abort unreachable @@ -52558,7 +52559,7 @@ if i32.const 0 i32.const 32 - i32.const 3602 + i32.const 3600 i32.const 0 call $~lib/builtins/abort unreachable @@ -52572,7 +52573,7 @@ if i32.const 0 i32.const 32 - i32.const 3603 + i32.const 3601 i32.const 0 call $~lib/builtins/abort unreachable @@ -52586,7 +52587,7 @@ if i32.const 0 i32.const 32 - i32.const 3604 + i32.const 3602 i32.const 0 call $~lib/builtins/abort unreachable @@ -52600,7 +52601,7 @@ if i32.const 0 i32.const 32 - i32.const 3605 + i32.const 3603 i32.const 0 call $~lib/builtins/abort unreachable @@ -52614,7 +52615,7 @@ if i32.const 0 i32.const 32 - i32.const 3608 + i32.const 3606 i32.const 0 call $~lib/builtins/abort unreachable @@ -52628,7 +52629,7 @@ if i32.const 0 i32.const 32 - i32.const 3609 + i32.const 3607 i32.const 0 call $~lib/builtins/abort unreachable @@ -52642,7 +52643,7 @@ if i32.const 0 i32.const 32 - i32.const 3610 + i32.const 3608 i32.const 0 call $~lib/builtins/abort unreachable @@ -52656,7 +52657,7 @@ if i32.const 0 i32.const 32 - i32.const 3611 + i32.const 3609 i32.const 0 call $~lib/builtins/abort unreachable @@ -52670,7 +52671,7 @@ if i32.const 0 i32.const 32 - i32.const 3612 + i32.const 3610 i32.const 0 call $~lib/builtins/abort unreachable @@ -52684,7 +52685,7 @@ if i32.const 0 i32.const 32 - i32.const 3613 + i32.const 3611 i32.const 0 call $~lib/builtins/abort unreachable @@ -52698,7 +52699,7 @@ if i32.const 0 i32.const 32 - i32.const 3614 + i32.const 3612 i32.const 0 call $~lib/builtins/abort unreachable @@ -52712,7 +52713,7 @@ if i32.const 0 i32.const 32 - i32.const 3615 + i32.const 3613 i32.const 0 call $~lib/builtins/abort unreachable @@ -52726,7 +52727,7 @@ if i32.const 0 i32.const 32 - i32.const 3617 + i32.const 3615 i32.const 0 call $~lib/builtins/abort unreachable @@ -52740,7 +52741,7 @@ if i32.const 0 i32.const 32 - i32.const 3618 + i32.const 3616 i32.const 0 call $~lib/builtins/abort unreachable @@ -52754,7 +52755,7 @@ if i32.const 0 i32.const 32 - i32.const 3619 + i32.const 3617 i32.const 0 call $~lib/builtins/abort unreachable @@ -52768,7 +52769,7 @@ if i32.const 0 i32.const 32 - i32.const 3620 + i32.const 3618 i32.const 0 call $~lib/builtins/abort unreachable @@ -52782,7 +52783,7 @@ if i32.const 0 i32.const 32 - i32.const 3621 + i32.const 3619 i32.const 0 call $~lib/builtins/abort unreachable @@ -52796,7 +52797,7 @@ if i32.const 0 i32.const 32 - i32.const 3622 + i32.const 3620 i32.const 0 call $~lib/builtins/abort unreachable @@ -52810,7 +52811,7 @@ if i32.const 0 i32.const 32 - i32.const 3623 + i32.const 3621 i32.const 0 call $~lib/builtins/abort unreachable @@ -52824,7 +52825,7 @@ if i32.const 0 i32.const 32 - i32.const 3624 + i32.const 3622 i32.const 0 call $~lib/builtins/abort unreachable @@ -52838,7 +52839,7 @@ if i32.const 0 i32.const 32 - i32.const 3627 + i32.const 3625 i32.const 0 call $~lib/builtins/abort unreachable @@ -52852,7 +52853,7 @@ if i32.const 0 i32.const 32 - i32.const 3628 + i32.const 3626 i32.const 0 call $~lib/builtins/abort unreachable @@ -52866,7 +52867,7 @@ if i32.const 0 i32.const 32 - i32.const 3629 + i32.const 3627 i32.const 0 call $~lib/builtins/abort unreachable @@ -52880,7 +52881,7 @@ if i32.const 0 i32.const 32 - i32.const 3630 + i32.const 3628 i32.const 0 call $~lib/builtins/abort unreachable @@ -52894,7 +52895,7 @@ if i32.const 0 i32.const 32 - i32.const 3631 + i32.const 3629 i32.const 0 call $~lib/builtins/abort unreachable @@ -52908,7 +52909,7 @@ if i32.const 0 i32.const 32 - i32.const 3640 + i32.const 3638 i32.const 0 call $~lib/builtins/abort unreachable @@ -52922,7 +52923,7 @@ if i32.const 0 i32.const 32 - i32.const 3641 + i32.const 3639 i32.const 0 call $~lib/builtins/abort unreachable @@ -52936,7 +52937,7 @@ if i32.const 0 i32.const 32 - i32.const 3642 + i32.const 3640 i32.const 0 call $~lib/builtins/abort unreachable @@ -52950,7 +52951,7 @@ if i32.const 0 i32.const 32 - i32.const 3643 + i32.const 3641 i32.const 0 call $~lib/builtins/abort unreachable @@ -52964,7 +52965,7 @@ if i32.const 0 i32.const 32 - i32.const 3644 + i32.const 3642 i32.const 0 call $~lib/builtins/abort unreachable @@ -52978,7 +52979,7 @@ if i32.const 0 i32.const 32 - i32.const 3645 + i32.const 3643 i32.const 0 call $~lib/builtins/abort unreachable @@ -52992,7 +52993,7 @@ if i32.const 0 i32.const 32 - i32.const 3646 + i32.const 3644 i32.const 0 call $~lib/builtins/abort unreachable @@ -53006,7 +53007,7 @@ if i32.const 0 i32.const 32 - i32.const 3647 + i32.const 3645 i32.const 0 call $~lib/builtins/abort unreachable @@ -53020,7 +53021,7 @@ if i32.const 0 i32.const 32 - i32.const 3648 + i32.const 3646 i32.const 0 call $~lib/builtins/abort unreachable @@ -53034,7 +53035,7 @@ if i32.const 0 i32.const 32 - i32.const 3649 + i32.const 3647 i32.const 0 call $~lib/builtins/abort unreachable @@ -53048,7 +53049,7 @@ if i32.const 0 i32.const 32 - i32.const 3652 + i32.const 3650 i32.const 0 call $~lib/builtins/abort unreachable @@ -53062,7 +53063,7 @@ if i32.const 0 i32.const 32 - i32.const 3653 + i32.const 3651 i32.const 0 call $~lib/builtins/abort unreachable @@ -53076,7 +53077,7 @@ if i32.const 0 i32.const 32 - i32.const 3654 + i32.const 3652 i32.const 0 call $~lib/builtins/abort unreachable @@ -53090,7 +53091,7 @@ if i32.const 0 i32.const 32 - i32.const 3655 + i32.const 3653 i32.const 0 call $~lib/builtins/abort unreachable @@ -53104,7 +53105,7 @@ if i32.const 0 i32.const 32 - i32.const 3656 + i32.const 3654 i32.const 0 call $~lib/builtins/abort unreachable @@ -53118,7 +53119,7 @@ if i32.const 0 i32.const 32 - i32.const 3659 + i32.const 3657 i32.const 0 call $~lib/builtins/abort unreachable @@ -53132,7 +53133,7 @@ if i32.const 0 i32.const 32 - i32.const 3660 + i32.const 3658 i32.const 0 call $~lib/builtins/abort unreachable @@ -53146,7 +53147,7 @@ if i32.const 0 i32.const 32 - i32.const 3661 + i32.const 3659 i32.const 0 call $~lib/builtins/abort unreachable @@ -53160,7 +53161,7 @@ if i32.const 0 i32.const 32 - i32.const 3662 + i32.const 3660 i32.const 0 call $~lib/builtins/abort unreachable @@ -53174,7 +53175,7 @@ if i32.const 0 i32.const 32 - i32.const 3663 + i32.const 3661 i32.const 0 call $~lib/builtins/abort unreachable @@ -53188,7 +53189,7 @@ if i32.const 0 i32.const 32 - i32.const 3664 + i32.const 3662 i32.const 0 call $~lib/builtins/abort unreachable @@ -53202,7 +53203,7 @@ if i32.const 0 i32.const 32 - i32.const 3665 + i32.const 3663 i32.const 0 call $~lib/builtins/abort unreachable @@ -53216,7 +53217,7 @@ if i32.const 0 i32.const 32 - i32.const 3666 + i32.const 3664 i32.const 0 call $~lib/builtins/abort unreachable @@ -53230,7 +53231,7 @@ if i32.const 0 i32.const 32 - i32.const 3667 + i32.const 3665 i32.const 0 call $~lib/builtins/abort unreachable @@ -53244,7 +53245,7 @@ if i32.const 0 i32.const 32 - i32.const 3668 + i32.const 3666 i32.const 0 call $~lib/builtins/abort unreachable @@ -53258,7 +53259,7 @@ if i32.const 0 i32.const 32 - i32.const 3669 + i32.const 3667 i32.const 0 call $~lib/builtins/abort unreachable @@ -53272,7 +53273,7 @@ if i32.const 0 i32.const 32 - i32.const 3670 + i32.const 3668 i32.const 0 call $~lib/builtins/abort unreachable @@ -53286,7 +53287,7 @@ if i32.const 0 i32.const 32 - i32.const 3671 + i32.const 3669 i32.const 0 call $~lib/builtins/abort unreachable @@ -53300,7 +53301,7 @@ if i32.const 0 i32.const 32 - i32.const 3672 + i32.const 3670 i32.const 0 call $~lib/builtins/abort unreachable @@ -53314,7 +53315,7 @@ if i32.const 0 i32.const 32 - i32.const 3673 + i32.const 3671 i32.const 0 call $~lib/builtins/abort unreachable @@ -53328,7 +53329,7 @@ if i32.const 0 i32.const 32 - i32.const 3674 + i32.const 3672 i32.const 0 call $~lib/builtins/abort unreachable @@ -53342,7 +53343,7 @@ if i32.const 0 i32.const 32 - i32.const 3675 + i32.const 3673 i32.const 0 call $~lib/builtins/abort unreachable @@ -53356,7 +53357,7 @@ if i32.const 0 i32.const 32 - i32.const 3676 + i32.const 3674 i32.const 0 call $~lib/builtins/abort unreachable @@ -53370,7 +53371,7 @@ if i32.const 0 i32.const 32 - i32.const 3677 + i32.const 3675 i32.const 0 call $~lib/builtins/abort unreachable @@ -53384,7 +53385,7 @@ if i32.const 0 i32.const 32 - i32.const 3678 + i32.const 3676 i32.const 0 call $~lib/builtins/abort unreachable @@ -53398,7 +53399,7 @@ if i32.const 0 i32.const 32 - i32.const 3679 + i32.const 3677 i32.const 0 call $~lib/builtins/abort unreachable @@ -53412,7 +53413,7 @@ if i32.const 0 i32.const 32 - i32.const 3680 + i32.const 3678 i32.const 0 call $~lib/builtins/abort unreachable @@ -53426,7 +53427,7 @@ if i32.const 0 i32.const 32 - i32.const 3681 + i32.const 3679 i32.const 0 call $~lib/builtins/abort unreachable @@ -53440,7 +53441,7 @@ if i32.const 0 i32.const 32 - i32.const 3682 + i32.const 3680 i32.const 0 call $~lib/builtins/abort unreachable @@ -53454,7 +53455,7 @@ if i32.const 0 i32.const 32 - i32.const 3683 + i32.const 3681 i32.const 0 call $~lib/builtins/abort unreachable @@ -53468,7 +53469,7 @@ if i32.const 0 i32.const 32 - i32.const 3684 + i32.const 3682 i32.const 0 call $~lib/builtins/abort unreachable @@ -53482,7 +53483,7 @@ if i32.const 0 i32.const 32 - i32.const 3685 + i32.const 3683 i32.const 0 call $~lib/builtins/abort unreachable @@ -53496,7 +53497,7 @@ if i32.const 0 i32.const 32 - i32.const 3686 + i32.const 3684 i32.const 0 call $~lib/builtins/abort unreachable @@ -53510,7 +53511,7 @@ if i32.const 0 i32.const 32 - i32.const 3687 + i32.const 3685 i32.const 0 call $~lib/builtins/abort unreachable @@ -53524,7 +53525,7 @@ if i32.const 0 i32.const 32 - i32.const 3688 + i32.const 3686 i32.const 0 call $~lib/builtins/abort unreachable @@ -53538,7 +53539,7 @@ if i32.const 0 i32.const 32 - i32.const 3689 + i32.const 3687 i32.const 0 call $~lib/builtins/abort unreachable @@ -53552,7 +53553,7 @@ if i32.const 0 i32.const 32 - i32.const 3690 + i32.const 3688 i32.const 0 call $~lib/builtins/abort unreachable @@ -53566,7 +53567,7 @@ if i32.const 0 i32.const 32 - i32.const 3691 + i32.const 3689 i32.const 0 call $~lib/builtins/abort unreachable @@ -53580,7 +53581,7 @@ if i32.const 0 i32.const 32 - i32.const 3692 + i32.const 3690 i32.const 0 call $~lib/builtins/abort unreachable @@ -53594,7 +53595,7 @@ if i32.const 0 i32.const 32 - i32.const 3693 + i32.const 3691 i32.const 0 call $~lib/builtins/abort unreachable @@ -53608,7 +53609,7 @@ if i32.const 0 i32.const 32 - i32.const 3694 + i32.const 3692 i32.const 0 call $~lib/builtins/abort unreachable @@ -53622,7 +53623,7 @@ if i32.const 0 i32.const 32 - i32.const 3706 + i32.const 3704 i32.const 0 call $~lib/builtins/abort unreachable @@ -53636,7 +53637,7 @@ if i32.const 0 i32.const 32 - i32.const 3707 + i32.const 3705 i32.const 0 call $~lib/builtins/abort unreachable @@ -53650,7 +53651,7 @@ if i32.const 0 i32.const 32 - i32.const 3708 + i32.const 3706 i32.const 0 call $~lib/builtins/abort unreachable @@ -53664,7 +53665,7 @@ if i32.const 0 i32.const 32 - i32.const 3709 + i32.const 3707 i32.const 0 call $~lib/builtins/abort unreachable @@ -53678,7 +53679,7 @@ if i32.const 0 i32.const 32 - i32.const 3710 + i32.const 3708 i32.const 0 call $~lib/builtins/abort unreachable @@ -53692,7 +53693,7 @@ if i32.const 0 i32.const 32 - i32.const 3711 + i32.const 3709 i32.const 0 call $~lib/builtins/abort unreachable @@ -53706,7 +53707,7 @@ if i32.const 0 i32.const 32 - i32.const 3712 + i32.const 3710 i32.const 0 call $~lib/builtins/abort unreachable @@ -53720,7 +53721,7 @@ if i32.const 0 i32.const 32 - i32.const 3713 + i32.const 3711 i32.const 0 call $~lib/builtins/abort unreachable @@ -53734,7 +53735,7 @@ if i32.const 0 i32.const 32 - i32.const 3714 + i32.const 3712 i32.const 0 call $~lib/builtins/abort unreachable @@ -53748,7 +53749,7 @@ if i32.const 0 i32.const 32 - i32.const 3715 + i32.const 3713 i32.const 0 call $~lib/builtins/abort unreachable @@ -53762,7 +53763,7 @@ if i32.const 0 i32.const 32 - i32.const 3718 + i32.const 3716 i32.const 0 call $~lib/builtins/abort unreachable @@ -53776,7 +53777,7 @@ if i32.const 0 i32.const 32 - i32.const 3719 + i32.const 3717 i32.const 0 call $~lib/builtins/abort unreachable @@ -53790,7 +53791,7 @@ if i32.const 0 i32.const 32 - i32.const 3720 + i32.const 3718 i32.const 0 call $~lib/builtins/abort unreachable @@ -53804,7 +53805,7 @@ if i32.const 0 i32.const 32 - i32.const 3721 + i32.const 3719 i32.const 0 call $~lib/builtins/abort unreachable @@ -53818,7 +53819,7 @@ if i32.const 0 i32.const 32 - i32.const 3722 + i32.const 3720 i32.const 0 call $~lib/builtins/abort unreachable @@ -53832,7 +53833,7 @@ if i32.const 0 i32.const 32 - i32.const 3731 + i32.const 3729 i32.const 0 call $~lib/builtins/abort unreachable @@ -53846,7 +53847,7 @@ if i32.const 0 i32.const 32 - i32.const 3732 + i32.const 3730 i32.const 0 call $~lib/builtins/abort unreachable @@ -53860,7 +53861,7 @@ if i32.const 0 i32.const 32 - i32.const 3733 + i32.const 3731 i32.const 0 call $~lib/builtins/abort unreachable @@ -53874,7 +53875,7 @@ if i32.const 0 i32.const 32 - i32.const 3734 + i32.const 3732 i32.const 0 call $~lib/builtins/abort unreachable @@ -53888,7 +53889,7 @@ if i32.const 0 i32.const 32 - i32.const 3735 + i32.const 3733 i32.const 0 call $~lib/builtins/abort unreachable @@ -53902,7 +53903,7 @@ if i32.const 0 i32.const 32 - i32.const 3736 + i32.const 3734 i32.const 0 call $~lib/builtins/abort unreachable @@ -53916,7 +53917,7 @@ if i32.const 0 i32.const 32 - i32.const 3737 + i32.const 3735 i32.const 0 call $~lib/builtins/abort unreachable @@ -53930,7 +53931,7 @@ if i32.const 0 i32.const 32 - i32.const 3738 + i32.const 3736 i32.const 0 call $~lib/builtins/abort unreachable @@ -53944,7 +53945,7 @@ if i32.const 0 i32.const 32 - i32.const 3739 + i32.const 3737 i32.const 0 call $~lib/builtins/abort unreachable @@ -53958,7 +53959,7 @@ if i32.const 0 i32.const 32 - i32.const 3740 + i32.const 3738 i32.const 0 call $~lib/builtins/abort unreachable @@ -53972,7 +53973,7 @@ if i32.const 0 i32.const 32 - i32.const 3743 + i32.const 3741 i32.const 0 call $~lib/builtins/abort unreachable @@ -53986,7 +53987,7 @@ if i32.const 0 i32.const 32 - i32.const 3744 + i32.const 3742 i32.const 0 call $~lib/builtins/abort unreachable @@ -54000,7 +54001,7 @@ if i32.const 0 i32.const 32 - i32.const 3745 + i32.const 3743 i32.const 0 call $~lib/builtins/abort unreachable @@ -54014,7 +54015,7 @@ if i32.const 0 i32.const 32 - i32.const 3746 + i32.const 3744 i32.const 0 call $~lib/builtins/abort unreachable @@ -54028,7 +54029,7 @@ if i32.const 0 i32.const 32 - i32.const 3747 + i32.const 3745 i32.const 0 call $~lib/builtins/abort unreachable @@ -54042,7 +54043,7 @@ if i32.const 0 i32.const 32 - i32.const 3759 + i32.const 3757 i32.const 0 call $~lib/builtins/abort unreachable @@ -54056,7 +54057,7 @@ if i32.const 0 i32.const 32 - i32.const 3760 + i32.const 3758 i32.const 0 call $~lib/builtins/abort unreachable @@ -54070,7 +54071,7 @@ if i32.const 0 i32.const 32 - i32.const 3761 + i32.const 3759 i32.const 0 call $~lib/builtins/abort unreachable @@ -54084,7 +54085,7 @@ if i32.const 0 i32.const 32 - i32.const 3762 + i32.const 3760 i32.const 0 call $~lib/builtins/abort unreachable @@ -54098,7 +54099,7 @@ if i32.const 0 i32.const 32 - i32.const 3763 + i32.const 3761 i32.const 0 call $~lib/builtins/abort unreachable @@ -54112,7 +54113,7 @@ if i32.const 0 i32.const 32 - i32.const 3764 + i32.const 3762 i32.const 0 call $~lib/builtins/abort unreachable @@ -54126,7 +54127,7 @@ if i32.const 0 i32.const 32 - i32.const 3765 + i32.const 3763 i32.const 0 call $~lib/builtins/abort unreachable @@ -54140,7 +54141,7 @@ if i32.const 0 i32.const 32 - i32.const 3766 + i32.const 3764 i32.const 0 call $~lib/builtins/abort unreachable @@ -54154,7 +54155,7 @@ if i32.const 0 i32.const 32 - i32.const 3767 + i32.const 3765 i32.const 0 call $~lib/builtins/abort unreachable @@ -54168,7 +54169,7 @@ if i32.const 0 i32.const 32 - i32.const 3768 + i32.const 3766 i32.const 0 call $~lib/builtins/abort unreachable @@ -54182,7 +54183,7 @@ if i32.const 0 i32.const 32 - i32.const 3771 + i32.const 3769 i32.const 0 call $~lib/builtins/abort unreachable @@ -54196,7 +54197,7 @@ if i32.const 0 i32.const 32 - i32.const 3772 + i32.const 3770 i32.const 0 call $~lib/builtins/abort unreachable @@ -54210,7 +54211,7 @@ if i32.const 0 i32.const 32 - i32.const 3773 + i32.const 3771 i32.const 0 call $~lib/builtins/abort unreachable @@ -54224,7 +54225,7 @@ if i32.const 0 i32.const 32 - i32.const 3774 + i32.const 3772 i32.const 0 call $~lib/builtins/abort unreachable @@ -54238,7 +54239,7 @@ if i32.const 0 i32.const 32 - i32.const 3775 + i32.const 3773 i32.const 0 call $~lib/builtins/abort unreachable @@ -54252,7 +54253,7 @@ if i32.const 0 i32.const 32 - i32.const 3776 + i32.const 3774 i32.const 0 call $~lib/builtins/abort unreachable @@ -54266,7 +54267,7 @@ if i32.const 0 i32.const 32 - i32.const 3777 + i32.const 3775 i32.const 0 call $~lib/builtins/abort unreachable @@ -54280,7 +54281,7 @@ if i32.const 0 i32.const 32 - i32.const 3778 + i32.const 3776 i32.const 0 call $~lib/builtins/abort unreachable @@ -54294,7 +54295,7 @@ if i32.const 0 i32.const 32 - i32.const 3779 + i32.const 3777 i32.const 0 call $~lib/builtins/abort unreachable @@ -54308,7 +54309,7 @@ if i32.const 0 i32.const 32 - i32.const 3780 + i32.const 3778 i32.const 0 call $~lib/builtins/abort unreachable @@ -54322,7 +54323,7 @@ if i32.const 0 i32.const 32 - i32.const 3781 + i32.const 3779 i32.const 0 call $~lib/builtins/abort unreachable @@ -54336,7 +54337,7 @@ if i32.const 0 i32.const 32 - i32.const 3782 + i32.const 3780 i32.const 0 call $~lib/builtins/abort unreachable @@ -54350,7 +54351,7 @@ if i32.const 0 i32.const 32 - i32.const 3783 + i32.const 3781 i32.const 0 call $~lib/builtins/abort unreachable @@ -54364,7 +54365,7 @@ if i32.const 0 i32.const 32 - i32.const 3784 + i32.const 3782 i32.const 0 call $~lib/builtins/abort unreachable @@ -54378,7 +54379,7 @@ if i32.const 0 i32.const 32 - i32.const 3785 + i32.const 3783 i32.const 0 call $~lib/builtins/abort unreachable @@ -54392,7 +54393,7 @@ if i32.const 0 i32.const 32 - i32.const 3794 + i32.const 3792 i32.const 0 call $~lib/builtins/abort unreachable @@ -54406,7 +54407,7 @@ if i32.const 0 i32.const 32 - i32.const 3795 + i32.const 3793 i32.const 0 call $~lib/builtins/abort unreachable @@ -54420,7 +54421,7 @@ if i32.const 0 i32.const 32 - i32.const 3796 + i32.const 3794 i32.const 0 call $~lib/builtins/abort unreachable @@ -54434,7 +54435,7 @@ if i32.const 0 i32.const 32 - i32.const 3797 + i32.const 3795 i32.const 0 call $~lib/builtins/abort unreachable @@ -54448,7 +54449,7 @@ if i32.const 0 i32.const 32 - i32.const 3798 + i32.const 3796 i32.const 0 call $~lib/builtins/abort unreachable @@ -54462,7 +54463,7 @@ if i32.const 0 i32.const 32 - i32.const 3799 + i32.const 3797 i32.const 0 call $~lib/builtins/abort unreachable @@ -54476,7 +54477,7 @@ if i32.const 0 i32.const 32 - i32.const 3800 + i32.const 3798 i32.const 0 call $~lib/builtins/abort unreachable @@ -54490,7 +54491,7 @@ if i32.const 0 i32.const 32 - i32.const 3801 + i32.const 3799 i32.const 0 call $~lib/builtins/abort unreachable @@ -54504,7 +54505,7 @@ if i32.const 0 i32.const 32 - i32.const 3802 + i32.const 3800 i32.const 0 call $~lib/builtins/abort unreachable @@ -54518,7 +54519,7 @@ if i32.const 0 i32.const 32 - i32.const 3803 + i32.const 3801 i32.const 0 call $~lib/builtins/abort unreachable @@ -54532,7 +54533,7 @@ if i32.const 0 i32.const 32 - i32.const 3806 + i32.const 3804 i32.const 0 call $~lib/builtins/abort unreachable @@ -54546,7 +54547,7 @@ if i32.const 0 i32.const 32 - i32.const 3807 + i32.const 3805 i32.const 0 call $~lib/builtins/abort unreachable @@ -54560,7 +54561,7 @@ if i32.const 0 i32.const 32 - i32.const 3808 + i32.const 3806 i32.const 0 call $~lib/builtins/abort unreachable @@ -54574,7 +54575,7 @@ if i32.const 0 i32.const 32 - i32.const 3809 + i32.const 3807 i32.const 0 call $~lib/builtins/abort unreachable @@ -54588,7 +54589,7 @@ if i32.const 0 i32.const 32 - i32.const 3810 + i32.const 3808 i32.const 0 call $~lib/builtins/abort unreachable @@ -54602,7 +54603,7 @@ if i32.const 0 i32.const 32 - i32.const 3811 + i32.const 3809 i32.const 0 call $~lib/builtins/abort unreachable @@ -54616,7 +54617,7 @@ if i32.const 0 i32.const 32 - i32.const 3812 + i32.const 3810 i32.const 0 call $~lib/builtins/abort unreachable @@ -54630,7 +54631,7 @@ if i32.const 0 i32.const 32 - i32.const 3813 + i32.const 3811 i32.const 0 call $~lib/builtins/abort unreachable @@ -54644,7 +54645,7 @@ if i32.const 0 i32.const 32 - i32.const 3814 + i32.const 3812 i32.const 0 call $~lib/builtins/abort unreachable @@ -54658,7 +54659,7 @@ if i32.const 0 i32.const 32 - i32.const 3815 + i32.const 3813 i32.const 0 call $~lib/builtins/abort unreachable @@ -54672,7 +54673,7 @@ if i32.const 0 i32.const 32 - i32.const 3816 + i32.const 3814 i32.const 0 call $~lib/builtins/abort unreachable @@ -54686,7 +54687,7 @@ if i32.const 0 i32.const 32 - i32.const 3817 + i32.const 3815 i32.const 0 call $~lib/builtins/abort unreachable @@ -54700,7 +54701,7 @@ if i32.const 0 i32.const 32 - i32.const 3818 + i32.const 3816 i32.const 0 call $~lib/builtins/abort unreachable @@ -54714,7 +54715,7 @@ if i32.const 0 i32.const 32 - i32.const 3819 + i32.const 3817 i32.const 0 call $~lib/builtins/abort unreachable @@ -54728,7 +54729,7 @@ if i32.const 0 i32.const 32 - i32.const 3820 + i32.const 3818 i32.const 0 call $~lib/builtins/abort unreachable @@ -54822,7 +54823,7 @@ if i32.const 0 i32.const 32 - i32.const 3861 + i32.const 3859 i32.const 0 call $~lib/builtins/abort unreachable @@ -54836,7 +54837,7 @@ if i32.const 0 i32.const 32 - i32.const 3862 + i32.const 3860 i32.const 0 call $~lib/builtins/abort unreachable @@ -54850,7 +54851,7 @@ if i32.const 0 i32.const 32 - i32.const 3863 + i32.const 3861 i32.const 0 call $~lib/builtins/abort unreachable @@ -54864,7 +54865,7 @@ if i32.const 0 i32.const 32 - i32.const 3864 + i32.const 3862 i32.const 0 call $~lib/builtins/abort unreachable @@ -54878,7 +54879,7 @@ if i32.const 0 i32.const 32 - i32.const 3865 + i32.const 3863 i32.const 0 call $~lib/builtins/abort unreachable @@ -54892,7 +54893,7 @@ if i32.const 0 i32.const 32 - i32.const 3866 + i32.const 3864 i32.const 0 call $~lib/builtins/abort unreachable @@ -54906,7 +54907,7 @@ if i32.const 0 i32.const 32 - i32.const 3867 + i32.const 3865 i32.const 0 call $~lib/builtins/abort unreachable @@ -54920,7 +54921,7 @@ if i32.const 0 i32.const 32 - i32.const 3868 + i32.const 3866 i32.const 0 call $~lib/builtins/abort unreachable @@ -54934,7 +54935,7 @@ if i32.const 0 i32.const 32 - i32.const 3869 + i32.const 3867 i32.const 0 call $~lib/builtins/abort unreachable @@ -54948,7 +54949,7 @@ if i32.const 0 i32.const 32 - i32.const 3870 + i32.const 3868 i32.const 0 call $~lib/builtins/abort unreachable @@ -54962,7 +54963,7 @@ if i32.const 0 i32.const 32 - i32.const 3871 + i32.const 3869 i32.const 0 call $~lib/builtins/abort unreachable @@ -54976,7 +54977,7 @@ if i32.const 0 i32.const 32 - i32.const 3872 + i32.const 3870 i32.const 0 call $~lib/builtins/abort unreachable @@ -54989,7 +54990,7 @@ if i32.const 0 i32.const 32 - i32.const 3876 + i32.const 3874 i32.const 0 call $~lib/builtins/abort unreachable @@ -55002,7 +55003,7 @@ if i32.const 0 i32.const 32 - i32.const 3877 + i32.const 3875 i32.const 0 call $~lib/builtins/abort unreachable @@ -55015,7 +55016,7 @@ if i32.const 0 i32.const 32 - i32.const 3878 + i32.const 3876 i32.const 0 call $~lib/builtins/abort unreachable @@ -55028,7 +55029,7 @@ if i32.const 0 i32.const 32 - i32.const 3879 + i32.const 3877 i32.const 0 call $~lib/builtins/abort unreachable @@ -55041,7 +55042,7 @@ if i32.const 0 i32.const 32 - i32.const 3880 + i32.const 3878 i32.const 0 call $~lib/builtins/abort unreachable @@ -55054,7 +55055,7 @@ if i32.const 0 i32.const 32 - i32.const 3881 + i32.const 3879 i32.const 0 call $~lib/builtins/abort unreachable @@ -55067,7 +55068,7 @@ if i32.const 0 i32.const 32 - i32.const 3882 + i32.const 3880 i32.const 0 call $~lib/builtins/abort unreachable @@ -55080,7 +55081,7 @@ if i32.const 0 i32.const 32 - i32.const 3883 + i32.const 3881 i32.const 0 call $~lib/builtins/abort unreachable @@ -55093,7 +55094,7 @@ if i32.const 0 i32.const 32 - i32.const 3884 + i32.const 3882 i32.const 0 call $~lib/builtins/abort unreachable @@ -55106,7 +55107,7 @@ if i32.const 0 i32.const 32 - i32.const 3885 + i32.const 3883 i32.const 0 call $~lib/builtins/abort unreachable @@ -55119,7 +55120,7 @@ if i32.const 0 i32.const 32 - i32.const 3886 + i32.const 3884 i32.const 0 call $~lib/builtins/abort unreachable @@ -55132,7 +55133,7 @@ if i32.const 0 i32.const 32 - i32.const 3887 + i32.const 3885 i32.const 0 call $~lib/builtins/abort unreachable @@ -55145,7 +55146,7 @@ if i32.const 0 i32.const 32 - i32.const 3888 + i32.const 3886 i32.const 0 call $~lib/builtins/abort unreachable @@ -55158,7 +55159,7 @@ if i32.const 0 i32.const 32 - i32.const 3889 + i32.const 3887 i32.const 0 call $~lib/builtins/abort unreachable @@ -55171,7 +55172,7 @@ if i32.const 0 i32.const 32 - i32.const 3890 + i32.const 3888 i32.const 0 call $~lib/builtins/abort unreachable @@ -55184,7 +55185,7 @@ if i32.const 0 i32.const 32 - i32.const 3891 + i32.const 3889 i32.const 0 call $~lib/builtins/abort unreachable @@ -55198,7 +55199,7 @@ if i32.const 0 i32.const 32 - i32.const 3895 + i32.const 3893 i32.const 0 call $~lib/builtins/abort unreachable @@ -55212,7 +55213,7 @@ if i32.const 0 i32.const 32 - i32.const 3896 + i32.const 3894 i32.const 0 call $~lib/builtins/abort unreachable @@ -55226,7 +55227,7 @@ if i32.const 0 i32.const 32 - i32.const 3897 + i32.const 3895 i32.const 0 call $~lib/builtins/abort unreachable @@ -55240,7 +55241,7 @@ if i32.const 0 i32.const 32 - i32.const 3898 + i32.const 3896 i32.const 0 call $~lib/builtins/abort unreachable @@ -55254,7 +55255,7 @@ if i32.const 0 i32.const 32 - i32.const 3900 + i32.const 3898 i32.const 0 call $~lib/builtins/abort unreachable @@ -55268,7 +55269,7 @@ if i32.const 0 i32.const 32 - i32.const 3901 + i32.const 3899 i32.const 0 call $~lib/builtins/abort unreachable @@ -55282,7 +55283,7 @@ if i32.const 0 i32.const 32 - i32.const 3902 + i32.const 3900 i32.const 0 call $~lib/builtins/abort unreachable @@ -55296,7 +55297,7 @@ if i32.const 0 i32.const 32 - i32.const 3903 + i32.const 3901 i32.const 0 call $~lib/builtins/abort unreachable @@ -55310,7 +55311,7 @@ if i32.const 0 i32.const 32 - i32.const 3905 + i32.const 3903 i32.const 0 call $~lib/builtins/abort unreachable @@ -55324,7 +55325,7 @@ if i32.const 0 i32.const 32 - i32.const 3906 + i32.const 3904 i32.const 0 call $~lib/builtins/abort unreachable @@ -55338,7 +55339,7 @@ if i32.const 0 i32.const 32 - i32.const 3907 + i32.const 3905 i32.const 0 call $~lib/builtins/abort unreachable @@ -55352,7 +55353,7 @@ if i32.const 0 i32.const 32 - i32.const 3908 + i32.const 3906 i32.const 0 call $~lib/builtins/abort unreachable @@ -55366,7 +55367,7 @@ if i32.const 0 i32.const 32 - i32.const 3910 + i32.const 3908 i32.const 0 call $~lib/builtins/abort unreachable @@ -55380,7 +55381,7 @@ if i32.const 0 i32.const 32 - i32.const 3911 + i32.const 3909 i32.const 0 call $~lib/builtins/abort unreachable @@ -55394,7 +55395,7 @@ if i32.const 0 i32.const 32 - i32.const 3912 + i32.const 3910 i32.const 0 call $~lib/builtins/abort unreachable @@ -55408,7 +55409,7 @@ if i32.const 0 i32.const 32 - i32.const 3913 + i32.const 3911 i32.const 0 call $~lib/builtins/abort unreachable @@ -55422,7 +55423,7 @@ if i32.const 0 i32.const 32 - i32.const 3915 + i32.const 3913 i32.const 0 call $~lib/builtins/abort unreachable @@ -55436,7 +55437,7 @@ if i32.const 0 i32.const 32 - i32.const 3916 + i32.const 3914 i32.const 0 call $~lib/builtins/abort unreachable @@ -55450,7 +55451,7 @@ if i32.const 0 i32.const 32 - i32.const 3917 + i32.const 3915 i32.const 0 call $~lib/builtins/abort unreachable @@ -55464,7 +55465,7 @@ if i32.const 0 i32.const 32 - i32.const 3918 + i32.const 3916 i32.const 0 call $~lib/builtins/abort unreachable @@ -55478,7 +55479,7 @@ if i32.const 0 i32.const 32 - i32.const 3920 + i32.const 3918 i32.const 0 call $~lib/builtins/abort unreachable @@ -55492,7 +55493,7 @@ if i32.const 0 i32.const 32 - i32.const 3921 + i32.const 3919 i32.const 0 call $~lib/builtins/abort unreachable @@ -55506,7 +55507,7 @@ if i32.const 0 i32.const 32 - i32.const 3922 + i32.const 3920 i32.const 0 call $~lib/builtins/abort unreachable @@ -55520,7 +55521,7 @@ if i32.const 0 i32.const 32 - i32.const 3923 + i32.const 3921 i32.const 0 call $~lib/builtins/abort unreachable @@ -55534,7 +55535,7 @@ if i32.const 0 i32.const 32 - i32.const 3924 + i32.const 3922 i32.const 0 call $~lib/builtins/abort unreachable @@ -55548,7 +55549,7 @@ if i32.const 0 i32.const 32 - i32.const 3925 + i32.const 3923 i32.const 0 call $~lib/builtins/abort unreachable @@ -55562,7 +55563,7 @@ if i32.const 0 i32.const 32 - i32.const 3926 + i32.const 3924 i32.const 0 call $~lib/builtins/abort unreachable @@ -55580,7 +55581,7 @@ if i32.const 0 i32.const 32 - i32.const 3928 + i32.const 3926 i32.const 0 call $~lib/builtins/abort unreachable @@ -55594,7 +55595,7 @@ if i32.const 0 i32.const 32 - i32.const 3932 + i32.const 3930 i32.const 0 call $~lib/builtins/abort unreachable @@ -55608,7 +55609,7 @@ if i32.const 0 i32.const 32 - i32.const 3933 + i32.const 3931 i32.const 0 call $~lib/builtins/abort unreachable @@ -55616,14 +55617,14 @@ f32.const nan:0x400000 i32.const 1 call $~lib/math/ipow32f - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f32.ne i32.eqz if i32.const 0 i32.const 32 - i32.const 3934 + i32.const 3932 i32.const 0 call $~lib/builtins/abort unreachable @@ -55631,14 +55632,14 @@ f32.const nan:0x400000 i32.const -1 call $~lib/math/ipow32f - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f32.ne i32.eqz if i32.const 0 i32.const 32 - i32.const 3935 + i32.const 3933 i32.const 0 call $~lib/builtins/abort unreachable @@ -55646,14 +55647,14 @@ f32.const nan:0x400000 i32.const 2 call $~lib/math/ipow32f - local.tee $4 - local.get $4 + local.tee $3 + local.get $3 f32.ne i32.eqz if i32.const 0 i32.const 32 - i32.const 3936 + i32.const 3934 i32.const 0 call $~lib/builtins/abort unreachable @@ -55667,7 +55668,7 @@ if i32.const 0 i32.const 32 - i32.const 3937 + i32.const 3935 i32.const 0 call $~lib/builtins/abort unreachable @@ -55681,7 +55682,7 @@ if i32.const 0 i32.const 32 - i32.const 3938 + i32.const 3936 i32.const 0 call $~lib/builtins/abort unreachable @@ -55695,7 +55696,7 @@ if i32.const 0 i32.const 32 - i32.const 3939 + i32.const 3937 i32.const 0 call $~lib/builtins/abort unreachable @@ -55709,7 +55710,7 @@ if i32.const 0 i32.const 32 - i32.const 3940 + i32.const 3938 i32.const 0 call $~lib/builtins/abort unreachable @@ -55723,7 +55724,7 @@ if i32.const 0 i32.const 32 - i32.const 3941 + i32.const 3939 i32.const 0 call $~lib/builtins/abort unreachable @@ -55737,7 +55738,7 @@ if i32.const 0 i32.const 32 - i32.const 3942 + i32.const 3940 i32.const 0 call $~lib/builtins/abort unreachable @@ -55751,7 +55752,7 @@ if i32.const 0 i32.const 32 - i32.const 3943 + i32.const 3941 i32.const 0 call $~lib/builtins/abort unreachable @@ -55765,7 +55766,7 @@ if i32.const 0 i32.const 32 - i32.const 3944 + i32.const 3942 i32.const 0 call $~lib/builtins/abort unreachable @@ -55779,7 +55780,7 @@ if i32.const 0 i32.const 32 - i32.const 3945 + i32.const 3943 i32.const 0 call $~lib/builtins/abort unreachable @@ -55793,7 +55794,7 @@ if i32.const 0 i32.const 32 - i32.const 3946 + i32.const 3944 i32.const 0 call $~lib/builtins/abort unreachable @@ -55807,7 +55808,7 @@ if i32.const 0 i32.const 32 - i32.const 3947 + i32.const 3945 i32.const 0 call $~lib/builtins/abort unreachable @@ -55821,7 +55822,7 @@ if i32.const 0 i32.const 32 - i32.const 3951 + i32.const 3949 i32.const 0 call $~lib/builtins/abort unreachable @@ -55835,7 +55836,7 @@ if i32.const 0 i32.const 32 - i32.const 3952 + i32.const 3950 i32.const 0 call $~lib/builtins/abort unreachable @@ -55850,7 +55851,7 @@ if i32.const 0 i32.const 32 - i32.const 3953 + i32.const 3951 i32.const 0 call $~lib/builtins/abort unreachable @@ -55865,7 +55866,7 @@ if i32.const 0 i32.const 32 - i32.const 3954 + i32.const 3952 i32.const 0 call $~lib/builtins/abort unreachable @@ -55880,7 +55881,7 @@ if i32.const 0 i32.const 32 - i32.const 3955 + i32.const 3953 i32.const 0 call $~lib/builtins/abort unreachable @@ -55894,7 +55895,7 @@ if i32.const 0 i32.const 32 - i32.const 3956 + i32.const 3954 i32.const 0 call $~lib/builtins/abort unreachable @@ -55908,7 +55909,7 @@ if i32.const 0 i32.const 32 - i32.const 3957 + i32.const 3955 i32.const 0 call $~lib/builtins/abort unreachable @@ -55922,7 +55923,7 @@ if i32.const 0 i32.const 32 - i32.const 3958 + i32.const 3956 i32.const 0 call $~lib/builtins/abort unreachable @@ -55936,7 +55937,7 @@ if i32.const 0 i32.const 32 - i32.const 3959 + i32.const 3957 i32.const 0 call $~lib/builtins/abort unreachable @@ -55950,7 +55951,7 @@ if i32.const 0 i32.const 32 - i32.const 3960 + i32.const 3958 i32.const 0 call $~lib/builtins/abort unreachable @@ -55964,7 +55965,7 @@ if i32.const 0 i32.const 32 - i32.const 3961 + i32.const 3959 i32.const 0 call $~lib/builtins/abort unreachable @@ -55978,7 +55979,7 @@ if i32.const 0 i32.const 32 - i32.const 3962 + i32.const 3960 i32.const 0 call $~lib/builtins/abort unreachable @@ -55992,7 +55993,7 @@ if i32.const 0 i32.const 32 - i32.const 3963 + i32.const 3961 i32.const 0 call $~lib/builtins/abort unreachable @@ -56006,7 +56007,7 @@ if i32.const 0 i32.const 32 - i32.const 3964 + i32.const 3962 i32.const 0 call $~lib/builtins/abort unreachable @@ -56020,7 +56021,7 @@ if i32.const 0 i32.const 32 - i32.const 3965 + i32.const 3963 i32.const 0 call $~lib/builtins/abort unreachable @@ -56034,13 +56035,13 @@ if i32.const 0 i32.const 32 - i32.const 3966 + i32.const 3964 i32.const 0 call $~lib/builtins/abort unreachable end ) - (func $~start (; 178 ;) + (func $~start (; 179 ;) call $start:std/math ) ) diff --git a/tests/compiler/std/seedrandom-const.json b/tests/compiler/std/seedrandom-const.json new file mode 100644 index 0000000000..26d5172649 --- /dev/null +++ b/tests/compiler/std/seedrandom-const.json @@ -0,0 +1,7 @@ +{ + "asc_flags": [ + "--runtime none", + "--explicitStart", + "--seedRandom 9223372036854775807" + ] +} \ No newline at end of file diff --git a/tests/compiler/std/seedrandom-const.optimized.wat b/tests/compiler/std/seedrandom-const.optimized.wat new file mode 100644 index 0000000000..26687ae2d8 --- /dev/null +++ b/tests/compiler/std/seedrandom-const.optimized.wat @@ -0,0 +1,173 @@ +(module + (type $none_=>_none (func)) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (type $none_=>_f64 (func (result f64))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=") + (data (i32.const 64) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s") + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $~lib/math/murmurHash3 (; 2 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -49064778989728563 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -4265267296055464877 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + ) + (func $~lib/math/splitMix32 (; 3 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.tee $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.tee $0 + local.get $0 + local.get $0 + i32.const 61 + i32.or + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + i32.mul + i32.add + i32.xor + local.tee $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 4 ;) + i32.const 1 + global.set $~lib/math/random_seeded + i64.const 9223372036854775807 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + i32.const -1 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + i32.const 0 + global.get $~lib/math/random_state0_32 + i32.const 0 + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + i32.const 0 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + select + select + select + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 5 ;) (result f64) + (local $0 i64) + (local $1 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.tee $1 + global.set $~lib/math/random_state0_64 + local.get $1 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.tee $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + i64.xor + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $~start (; 6 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) +) diff --git a/tests/compiler/std/seedrandom-const.ts b/tests/compiler/std/seedrandom-const.ts new file mode 100644 index 0000000000..1ae45b386d --- /dev/null +++ b/tests/compiler/std/seedrandom-const.ts @@ -0,0 +1 @@ +trace("Math.random =", 1, Math.random()); diff --git a/tests/compiler/std/seedrandom-const.untouched.wat b/tests/compiler/std/seedrandom-const.untouched.wat new file mode 100644 index 0000000000..07ae1ec275 --- /dev/null +++ b/tests/compiler/std/seedrandom-const.untouched.wat @@ -0,0 +1,216 @@ +(module + (type $none_=>_none (func)) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i64_=>_none (func (param i64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $none_=>_i64 (func (result i64))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (type $none_=>_f64 (func (result f64))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=\00") + (data (i32.const 64) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") + (table $0 1 funcref) + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/ASC_SEEDRANDOM_HIGH i32 (i32.const 2147483647)) + (global $~lib/ASC_SEEDRANDOM_LOW i32 (i32.const -1)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $~lib/math/seedRandomSelect (; 2 ;) (result i64) + i64.const 9223372036854775807 + ) + (func $~lib/math/murmurHash3 (; 3 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -49064778989728563 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -4265267296055464877 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + ) + (func $~lib/math/splitMix32 (; 4 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.set $0 + local.get $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.set $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + local.get $0 + i32.const 61 + i32.or + i32.mul + i32.add + i32.xor + local.set $0 + local.get $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 5 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + if (result i32) + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state0_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 6 ;) (result f64) + (local $0 i64) + (local $1 i64) + (local $2 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.set $1 + local.get $1 + global.set $~lib/math/random_state0_64 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.set $0 + local.get $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + local.set $2 + local.get $2 + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $start:std/seedrandom-const (; 7 ;) + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) + (func $~start (; 8 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + call $start:std/seedrandom-const + ) +) diff --git a/tests/compiler/std/seedrandom-date.json b/tests/compiler/std/seedrandom-date.json new file mode 100644 index 0000000000..fe282cb62c --- /dev/null +++ b/tests/compiler/std/seedrandom-date.json @@ -0,0 +1,7 @@ +{ + "asc_flags": [ + "--runtime none", + "--explicitStart", + "--seedRandom date" + ] +} \ No newline at end of file diff --git a/tests/compiler/std/seedrandom-date.optimized.wat b/tests/compiler/std/seedrandom-date.optimized.wat new file mode 100644 index 0000000000..8344ff9e81 --- /dev/null +++ b/tests/compiler/std/seedrandom-date.optimized.wat @@ -0,0 +1,178 @@ +(module + (type $none_=>_f64 (func (result f64))) + (type $none_=>_none (func)) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i64_=>_none (func (param i64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (import "Date" "now" (func $~lib/bindings/Date/now (result f64))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=") + (data (i32.const 64) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s") + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $~lib/math/murmurHash3 (; 3 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -49064778989728563 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -4265267296055464877 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + ) + (func $~lib/math/splitMix32 (; 4 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.tee $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.tee $0 + local.get $0 + local.get $0 + i32.const 61 + i32.or + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + i32.mul + i32.add + i32.xor + local.tee $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 5 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + i32.const 0 + global.get $~lib/math/random_state0_32 + i32.const 0 + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + i32.const 0 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + select + select + select + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 6 ;) (result f64) + (local $0 i64) + (local $1 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + call $~lib/bindings/Date/now + i64.trunc_f64_s + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.tee $1 + global.set $~lib/math/random_state0_64 + local.get $1 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.tee $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + i64.xor + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $~start (; 7 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) +) diff --git a/tests/compiler/std/seedrandom-date.ts b/tests/compiler/std/seedrandom-date.ts new file mode 100644 index 0000000000..1ae45b386d --- /dev/null +++ b/tests/compiler/std/seedrandom-date.ts @@ -0,0 +1 @@ +trace("Math.random =", 1, Math.random()); diff --git a/tests/compiler/std/seedrandom-date.untouched.wat b/tests/compiler/std/seedrandom-date.untouched.wat new file mode 100644 index 0000000000..c8b5c1225f --- /dev/null +++ b/tests/compiler/std/seedrandom-date.untouched.wat @@ -0,0 +1,217 @@ +(module + (type $none_=>_none (func)) + (type $none_=>_f64 (func (result f64))) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i64_=>_none (func (param i64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $none_=>_i64 (func (result i64))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (import "Date" "now" (func $~lib/bindings/Date/now (result f64))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=\00") + (data (i32.const 64) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") + (table $0 1 funcref) + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $~lib/math/seedRandomSelect (; 3 ;) (result i64) + call $~lib/bindings/Date/now + i64.trunc_f64_s + return + ) + (func $~lib/math/murmurHash3 (; 4 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -49064778989728563 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -4265267296055464877 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + ) + (func $~lib/math/splitMix32 (; 5 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.set $0 + local.get $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.set $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + local.get $0 + i32.const 61 + i32.or + i32.mul + i32.add + i32.xor + local.set $0 + local.get $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 6 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + if (result i32) + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state0_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 7 ;) (result f64) + (local $0 i64) + (local $1 i64) + (local $2 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.set $1 + local.get $1 + global.set $~lib/math/random_state0_64 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.set $0 + local.get $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + local.set $2 + local.get $2 + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $start:std/seedrandom-date (; 8 ;) + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) + (func $~start (; 9 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + call $start:std/seedrandom-date + ) +) diff --git a/tests/compiler/std/seedrandom-default.json b/tests/compiler/std/seedrandom-default.json new file mode 100644 index 0000000000..3ba835b130 --- /dev/null +++ b/tests/compiler/std/seedrandom-default.json @@ -0,0 +1,8 @@ +{ + "asc_flags": [ + "--runtime none" + ], + "stderr": [ + "AS102: User-defined: \"Falling back to a compile-time constant random seed" + ] +} \ No newline at end of file diff --git a/tests/compiler/std/seedrandom-default.ts b/tests/compiler/std/seedrandom-default.ts new file mode 100644 index 0000000000..f6ce7920db --- /dev/null +++ b/tests/compiler/std/seedrandom-default.ts @@ -0,0 +1 @@ +Math.random(); diff --git a/tests/compiler/std/seedrandom-func.json b/tests/compiler/std/seedrandom-func.json new file mode 100644 index 0000000000..51aa5ea2f2 --- /dev/null +++ b/tests/compiler/std/seedrandom-func.json @@ -0,0 +1,7 @@ +{ + "asc_flags": [ + "--runtime none", + "--explicitStart", + "--seedRandom std/seedrandom-func/seedRandom" + ] +} \ No newline at end of file diff --git a/tests/compiler/std/seedrandom-func.optimized.wat b/tests/compiler/std/seedrandom-func.optimized.wat new file mode 100644 index 0000000000..f7fffef6ae --- /dev/null +++ b/tests/compiler/std/seedrandom-func.optimized.wat @@ -0,0 +1,173 @@ +(module + (type $none_=>_none (func)) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (type $none_=>_f64 (func (result f64))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=") + (data (i32.const 64) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s") + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $~lib/math/murmurHash3 (; 2 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -49064778989728563 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -4265267296055464877 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + ) + (func $~lib/math/splitMix32 (; 3 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.tee $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.tee $0 + local.get $0 + local.get $0 + i32.const 61 + i32.or + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + i32.mul + i32.add + i32.xor + local.tee $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 4 ;) + i32.const 1 + global.set $~lib/math/random_seeded + i64.const 1 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + i32.const 1 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + i32.const 0 + global.get $~lib/math/random_state0_32 + i32.const 0 + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + i32.const 0 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + select + select + select + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 5 ;) (result f64) + (local $0 i64) + (local $1 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.tee $1 + global.set $~lib/math/random_state0_64 + local.get $1 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.tee $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + i64.xor + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $~start (; 6 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) +) diff --git a/tests/compiler/std/seedrandom-func.ts b/tests/compiler/std/seedrandom-func.ts new file mode 100644 index 0000000000..e1256bc3a7 --- /dev/null +++ b/tests/compiler/std/seedrandom-func.ts @@ -0,0 +1,5 @@ +function seedRandom(): i64 { + return 1; +} + +trace("Math.random =", 1, Math.random()); diff --git a/tests/compiler/std/seedrandom-func.untouched.wat b/tests/compiler/std/seedrandom-func.untouched.wat new file mode 100644 index 0000000000..53f801e38f --- /dev/null +++ b/tests/compiler/std/seedrandom-func.untouched.wat @@ -0,0 +1,218 @@ +(module + (type $none_=>_none (func)) + (type $none_=>_i64 (func (result i64))) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i64_=>_none (func (param i64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (type $none_=>_f64 (func (result f64))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=\00") + (data (i32.const 64) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") + (table $0 1 funcref) + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $std/seedrandom-func/seedRandom (; 2 ;) (result i64) + i64.const 1 + ) + (func $~lib/math/seedRandomSelect (; 3 ;) (result i64) + call $std/seedrandom-func/seedRandom + return + ) + (func $~lib/math/murmurHash3 (; 4 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -49064778989728563 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -4265267296055464877 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + ) + (func $~lib/math/splitMix32 (; 5 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.set $0 + local.get $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.set $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + local.get $0 + i32.const 61 + i32.or + i32.mul + i32.add + i32.xor + local.set $0 + local.get $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 6 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + if (result i32) + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state0_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 7 ;) (result f64) + (local $0 i64) + (local $1 i64) + (local $2 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.set $1 + local.get $1 + global.set $~lib/math/random_state0_64 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.set $0 + local.get $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + local.set $2 + local.get $2 + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $start:std/seedrandom-func (; 8 ;) + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) + (func $~start (; 9 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + call $start:std/seedrandom-func + ) +) diff --git a/tests/compiler/std/seedrandom-math.json b/tests/compiler/std/seedrandom-math.json new file mode 100644 index 0000000000..78c8fec8ad --- /dev/null +++ b/tests/compiler/std/seedrandom-math.json @@ -0,0 +1,7 @@ +{ + "asc_flags": [ + "--runtime none", + "--seedRandom math", + "--explicitStart" + ] +} \ No newline at end of file diff --git a/tests/compiler/std/seedrandom-math.optimized.wat b/tests/compiler/std/seedrandom-math.optimized.wat new file mode 100644 index 0000000000..11dced58e8 --- /dev/null +++ b/tests/compiler/std/seedrandom-math.optimized.wat @@ -0,0 +1,184 @@ +(module + (type $none_=>_f64 (func (result f64))) + (type $none_=>_none (func)) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i64_=>_none (func (param i64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (import "Math" "random" (func $~lib/bindings/Math/random (result f64))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=") + (data (i32.const 64) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s") + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $~lib/math/murmurHash3 (; 3 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -49064778989728563 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -4265267296055464877 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + ) + (func $~lib/math/splitMix32 (; 4 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.tee $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.tee $0 + local.get $0 + local.get $0 + i32.const 61 + i32.or + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + i32.mul + i32.add + i32.xor + local.tee $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 5 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + i32.const 0 + global.get $~lib/math/random_state0_32 + i32.const 0 + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + i32.const 0 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + select + select + select + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 6 ;) (result f64) + (local $0 i64) + (local $1 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + loop $do-continue|0 + call $~lib/bindings/Math/random + i64.reinterpret_f64 + local.tee $0 + i64.eqz + br_if $do-continue|0 + end + local.get $0 + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $1 + global.get $~lib/math/random_state1_64 + local.tee $0 + global.set $~lib/math/random_state0_64 + local.get $0 + local.get $1 + local.get $1 + i64.const 23 + i64.shl + i64.xor + local.tee $1 + local.get $1 + i64.const 17 + i64.shr_u + i64.xor + i64.xor + local.get $0 + i64.const 26 + i64.shr_u + i64.xor + global.set $~lib/math/random_state1_64 + local.get $0 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $~start (; 7 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) +) diff --git a/tests/compiler/std/seedrandom-math.ts b/tests/compiler/std/seedrandom-math.ts new file mode 100644 index 0000000000..1ae45b386d --- /dev/null +++ b/tests/compiler/std/seedrandom-math.ts @@ -0,0 +1 @@ +trace("Math.random =", 1, Math.random()); diff --git a/tests/compiler/std/seedrandom-math.untouched.wat b/tests/compiler/std/seedrandom-math.untouched.wat new file mode 100644 index 0000000000..9f31ba26cb --- /dev/null +++ b/tests/compiler/std/seedrandom-math.untouched.wat @@ -0,0 +1,230 @@ +(module + (type $none_=>_none (func)) + (type $none_=>_f64 (func (result f64))) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i64_=>_none (func (param i64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $none_=>_i64 (func (result i64))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (import "Math" "random" (func $~lib/bindings/Math/random (result f64))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=\00") + (data (i32.const 64) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") + (table $0 1 funcref) + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $~lib/math/seedRandomSelect (; 3 ;) (result i64) + (local $0 i64) + (local $1 i32) + loop $do-continue|0 + call $~lib/bindings/Math/random + i64.reinterpret_f64 + local.set $0 + local.get $0 + i64.const 0 + i64.ne + i32.eqz + local.set $1 + local.get $1 + br_if $do-continue|0 + end + local.get $0 + return + ) + (func $~lib/math/murmurHash3 (; 4 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -49064778989728563 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -4265267296055464877 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + ) + (func $~lib/math/splitMix32 (; 5 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.set $0 + local.get $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.set $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + local.get $0 + i32.const 61 + i32.or + i32.mul + i32.add + i32.xor + local.set $0 + local.get $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 6 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + if (result i32) + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state0_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 80 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 7 ;) (result f64) + (local $0 i64) + (local $1 i64) + (local $2 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.set $1 + local.get $1 + global.set $~lib/math/random_state0_64 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.set $0 + local.get $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + local.set $2 + local.get $2 + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $start:std/seedrandom-math (; 8 ;) + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) + (func $~start (; 9 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + call $start:std/seedrandom-math + ) +) diff --git a/tests/compiler/std/seedrandom-wasi.js b/tests/compiler/std/seedrandom-wasi.js new file mode 100644 index 0000000000..2cfee51e37 --- /dev/null +++ b/tests/compiler/std/seedrandom-wasi.js @@ -0,0 +1,12 @@ +exports.preInstantiate = function(imports, exports) { + imports.wasi_snapshot = { + random_get: function(buf, len) { + var len32 = len >>> 2; + var view = new Uint32Array(exports.memory.buffer, buf, len32); + for (let i = 0; i < len32; ++i) { + view[i] = (Math.random() * 0xffffffff) >>> 0; + } + return 0; + } + }; +}; diff --git a/tests/compiler/std/seedrandom-wasi.json b/tests/compiler/std/seedrandom-wasi.json new file mode 100644 index 0000000000..e7eb540fba --- /dev/null +++ b/tests/compiler/std/seedrandom-wasi.json @@ -0,0 +1,7 @@ +{ + "asc_flags": [ + "--runtime none", + "--explicitStart", + "--seedRandom wasi" + ] +} \ No newline at end of file diff --git a/tests/compiler/std/seedrandom-wasi.optimized.wat b/tests/compiler/std/seedrandom-wasi.optimized.wat new file mode 100644 index 0000000000..fc39f53d08 --- /dev/null +++ b/tests/compiler/std/seedrandom-wasi.optimized.wat @@ -0,0 +1,209 @@ +(module + (type $none_=>_none (func)) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i64_=>_none (func (param i64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (type $none_=>_i64 (func (result i64))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (type $none_=>_f64 (func (result f64))) + (import "wasi_snapshot" "random_get" (func $~lib/bindings/wasi_snapshot/random_get (param i32 i32) (result i32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=") + (data (i32.const 64) "\08\00\00\00\01\00\00\00\00\00\00\00\08") + (data (i32.const 96) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00P\00\00\00P\00\00\00\08\00\00\00\01") + (data (i32.const 128) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s") + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $~lib/math/seedRandomSelect (; 3 ;) (result i64) + (local $0 i32) + (local $1 i64) + i32.const 116 + i32.load + local.set $0 + loop $do-continue|0 + local.get $0 + i32.const 8 + call $~lib/bindings/wasi_snapshot/random_get + i32.const 65535 + i32.and + if + i32.const 0 + i32.const 144 + i32.const 3158 + i32.const 7 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i64.load + local.tee $1 + i64.eqz + br_if $do-continue|0 + end + local.get $1 + ) + (func $~lib/math/murmurHash3 (; 4 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -49064778989728563 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + i64.const -4265267296055464877 + i64.mul + local.tee $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + ) + (func $~lib/math/splitMix32 (; 5 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.tee $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.tee $0 + local.get $0 + local.get $0 + i32.const 61 + i32.or + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + i32.mul + i32.add + i32.xor + local.tee $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 6 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + i32.const 0 + global.get $~lib/math/random_state0_32 + i32.const 0 + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + i32.const 0 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + select + select + select + i32.eqz + if + i32.const 0 + i32.const 144 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 7 ;) (result f64) + (local $0 i64) + (local $1 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.tee $1 + global.set $~lib/math/random_state0_64 + local.get $1 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.tee $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + i64.xor + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $~start (; 8 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) +) diff --git a/tests/compiler/std/seedrandom-wasi.ts b/tests/compiler/std/seedrandom-wasi.ts new file mode 100644 index 0000000000..1ae45b386d --- /dev/null +++ b/tests/compiler/std/seedrandom-wasi.ts @@ -0,0 +1 @@ +trace("Math.random =", 1, Math.random()); diff --git a/tests/compiler/std/seedrandom-wasi.untouched.wat b/tests/compiler/std/seedrandom-wasi.untouched.wat new file mode 100644 index 0000000000..e82edca686 --- /dev/null +++ b/tests/compiler/std/seedrandom-wasi.untouched.wat @@ -0,0 +1,253 @@ +(module + (type $none_=>_none (func)) + (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) + (type $i32_i32_f64_f64_f64_f64_f64_=>_none (func (param i32 i32 f64 f64 f64 f64 f64))) + (type $i64_=>_none (func (param i64))) + (type $i32_=>_i32 (func (param i32) (result i32))) + (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) + (type $none_=>_i64 (func (result i64))) + (type $i64_=>_i64 (func (param i64) (result i64))) + (type $none_=>_f64 (func (result f64))) + (import "wasi_snapshot" "random_get" (func $~lib/bindings/wasi_snapshot/random_get (param i32 i32) (result i32))) + (import "env" "abort" (func $~lib/builtins/abort (param i32 i32 i32 i32))) + (import "env" "trace" (func $~lib/builtins/trace (param i32 i32 f64 f64 f64 f64 f64))) + (memory $0 1) + (data (i32.const 16) "\1a\00\00\00\01\00\00\00\01\00\00\00\1a\00\00\00M\00a\00t\00h\00.\00r\00a\00n\00d\00o\00m\00 \00=\00") + (data (i32.const 64) "\08\00\00\00\01\00\00\00\00\00\00\00\08\00\00\00\00\00\00\00\00\00\00\00") + (data (i32.const 96) "\10\00\00\00\01\00\00\00\03\00\00\00\10\00\00\00P\00\00\00P\00\00\00\08\00\00\00\01\00\00\00") + (data (i32.const 128) "\18\00\00\00\01\00\00\00\01\00\00\00\18\00\00\00~\00l\00i\00b\00/\00m\00a\00t\00h\00.\00t\00s\00") + (table $0 1 funcref) + (global $~lib/math/random_seeded (mut i32) (i32.const 0)) + (global $~lib/math/seedRandomSelect_wasiBuf i32 (i32.const 112)) + (global $~lib/math/random_state0_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state1_64 (mut i64) (i64.const 0)) + (global $~lib/math/random_state0_32 (mut i32) (i32.const 0)) + (global $~lib/math/random_state1_32 (mut i32) (i32.const 0)) + (global $~started (mut i32) (i32.const 0)) + (export "_start" (func $~start)) + (export "memory" (memory $0)) + (func $~lib/math/seedRandomSelect (; 3 ;) (result i64) + (local $0 i32) + (local $1 i64) + (local $2 i32) + global.get $~lib/math/seedRandomSelect_wasiBuf + i32.load offset=4 + local.set $0 + loop $do-continue|0 + local.get $0 + i32.const 8 + call $~lib/bindings/wasi_snapshot/random_get + i32.const 65535 + i32.and + i32.const 0 + i32.eq + i32.eqz + if + i32.const 0 + i32.const 144 + i32.const 3158 + i32.const 7 + call $~lib/builtins/abort + unreachable + end + local.get $0 + i64.load + local.tee $1 + i64.const 0 + i64.ne + i32.eqz + local.set $2 + local.get $2 + br_if $do-continue|0 + end + local.get $1 + return + ) + (func $~lib/math/murmurHash3 (; 4 ;) (param $0 i64) (result i64) + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -49064778989728563 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + i64.const -4265267296055464877 + i64.mul + local.set $0 + local.get $0 + local.get $0 + i64.const 33 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + ) + (func $~lib/math/splitMix32 (; 5 ;) (param $0 i32) (result i32) + local.get $0 + i32.const 1831565813 + i32.add + local.set $0 + local.get $0 + local.get $0 + i32.const 15 + i32.shr_u + i32.xor + local.get $0 + i32.const 1 + i32.or + i32.mul + local.set $0 + local.get $0 + local.get $0 + local.get $0 + local.get $0 + i32.const 7 + i32.shr_u + i32.xor + local.get $0 + i32.const 61 + i32.or + i32.mul + i32.add + i32.xor + local.set $0 + local.get $0 + local.get $0 + i32.const 14 + i32.shr_u + i32.xor + ) + (func $~lib/math/NativeMath.seedRandom (; 6 ;) (param $0 i64) + i32.const 1 + global.set $~lib/math/random_seeded + local.get $0 + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state0_64 + global.get $~lib/math/random_state0_64 + i64.const -1 + i64.xor + call $~lib/math/murmurHash3 + global.set $~lib/math/random_state1_64 + local.get $0 + i32.wrap_i64 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state0_32 + global.get $~lib/math/random_state0_32 + call $~lib/math/splitMix32 + global.set $~lib/math/random_state1_32 + global.get $~lib/math/random_state0_64 + i64.const 0 + i64.ne + if (result i32) + global.get $~lib/math/random_state1_64 + i64.const 0 + i64.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state0_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + if (result i32) + global.get $~lib/math/random_state1_32 + i32.const 0 + i32.ne + else + i32.const 0 + end + i32.eqz + if + i32.const 0 + i32.const 144 + i32.const 1412 + i32.const 4 + call $~lib/builtins/abort + unreachable + end + ) + (func $~lib/math/NativeMath.random (; 7 ;) (result f64) + (local $0 i64) + (local $1 i64) + (local $2 i64) + global.get $~lib/math/random_seeded + i32.eqz + if + call $~lib/math/seedRandomSelect + call $~lib/math/NativeMath.seedRandom + end + global.get $~lib/math/random_state0_64 + local.set $0 + global.get $~lib/math/random_state1_64 + local.set $1 + local.get $1 + global.set $~lib/math/random_state0_64 + local.get $0 + local.get $0 + i64.const 23 + i64.shl + i64.xor + local.set $0 + local.get $0 + local.get $0 + i64.const 17 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.xor + local.set $0 + local.get $0 + local.get $1 + i64.const 26 + i64.shr_u + i64.xor + local.set $0 + local.get $0 + global.set $~lib/math/random_state1_64 + local.get $1 + i64.const 12 + i64.shr_u + i64.const 4607182418800017408 + i64.or + local.set $2 + local.get $2 + f64.reinterpret_i64 + f64.const 1 + f64.sub + ) + (func $start:std/seedrandom-wasi (; 8 ;) + i32.const 32 + i32.const 1 + call $~lib/math/NativeMath.random + f64.const 0 + f64.const 0 + f64.const 0 + f64.const 0 + call $~lib/builtins/trace + ) + (func $~start (; 9 ;) + global.get $~started + if + return + else + i32.const 1 + global.set $~started + end + call $start:std/seedrandom-wasi + ) +)