diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/brainfuck/brainfuck.js b/brainfuck/brainfuck.js new file mode 100644 index 00000000..ddabedaf --- /dev/null +++ b/brainfuck/brainfuck.js @@ -0,0 +1,187 @@ +// Auto generated by Wa Compiler, DONOT EDIT!!! + +class WaApp { + constructor() { + this._wasm_url = "./brainfuck.wasm"; + this._mem_util = this._createMemUtil(); + this._wasm_inst = null; + this._wa_print_buf = ""; + } + + _createMemUtil = () => { + return { + mem: () => { return this._wasm_inst.exports.memory; }, + mem_view: (addr, len) => { return new DataView(this._mem_util.mem().buffer, addr, len); }, + mem_array_u8: (addr, len) => { return new Uint8Array(this._mem_util.mem().buffer, addr, len); }, + mem_array_u16: (addr, len) => { return new Uint16Array(this._mem_util.mem().buffer, addr, len); }, + mem_array_u32: (addr, len) => { return new Uint32Array(this._mem_util.mem().buffer, addr, len); }, + mem_array_i32: (addr, len) => { return new Int32Array(this._mem_util.mem().buffer, addr, len); }, + mem_array_f32: (addr, len) => { return new Float32Array(this._mem_util.mem().buffer, addr, len); }, + mem_array_f64: (addr, len) => { return new Float64Array(this._mem_util.mem().buffer, addr, len); }, + get_string: (d, l) => { return new TextDecoder("utf-8").decode(this._mem_util.mem_view(d, l)); }, + set_string: (s) => { + const bytes = new TextEncoder("utf-8").encode(s); + const l = bytes.length; + const b = this._wasm_inst.exports["runtime.Block.HeapAlloc"](l, 0, 1); + const d = b + 16; + this._mem_util.mem_array_u8(d, l).set(bytes); + return [b, d, l]; + }, + get_bytes: (d, l) => { return this._mem_util.mem_array_u8(d, l).slice(0); }, + set_bytes: (bytes) => { + const l = bytes.length; + const c = l; + const b = this._wasm_inst.exports["runtime.Block.HeapAlloc"](l, 0, 1); + const d = b + 16; + this._mem_util.mem_array_u8(d, l).set(bytes); + return [b, d, l, c]; + }, + block_release: (addr) => { this._wasm_inst.exports["runtime.Block.Release"](addr); }, + //基本类型直接读写: + bool_load: (addr) => { return this._mem_util.mem_array_u8(addr, 1)[0] != 0; }, + bool_store: (addr, v) => { + if (v) { + this._mem_util.mem_array_u8(addr, 1)[0] = 1; + } else { + this._mem_util.mem_array_u8(addr, 1)[0] = 0; + } + }, + u8_load: (addr) => { return this._mem_util.mem_array_u8(addr, 1)[0]; }, + u8_store: (addr, v) => { this._mem_util.mem_array_u8(addr, 1)[0] = v; }, + u16_load: (addr) => { return this._mem_util.mem_array_u16(addr, 1)[0]; }, + u16_store: (addr, v) => { this._mem_util.mem_array_u16(addr, 1)[0] = v; }, + u32_load: (addr) => { return this._mem_util.mem_array_u32(addr, 1)[0]; }, + u32_store: (addr, v) => { this._mem_util.mem_array_u32(addr, 1)[0] = v; }, + i32_load: (addr) => { return this._mem_util.mem_array_i32(addr, 1)[0]; }, + i32_store: (addr, v) => { this._mem_util.mem_array_i32(addr, 1)[0] = v; }, + rune_load: (addr) => { return String.fromCodePoint(this._mem_util.mem_array_u32(addr, 1)[0]); }, + rune_store: (addr, v) => { this._mem_util.mem_array_u32(addr, 1)[0] = v.codePointAt(0); }, + f32_load: (addr) => { return this._mem_util.mem_array_f32(addr, 1)[0]; }, + f32_store: (addr, v) => { this._mem_util.mem_array_f32(addr, 1)[0] = v; }, + f64_load: (addr) => { return this._mem_util.mem_array_f64(addr, 1)[0]; }, + f64_store: (addr, v) => { this._mem_util.mem_array_f64(addr, 1)[0] = v; }, + string_load: (addr) => { + const d = this._mem_util.i32_load(addr + 4); + const l = this._mem_util.i32_load(addr + 8); + return this._mem_util.get_string(d, l); + }, + string_store: (addr, v) => { + const b = this._mem_util.i32_load(addr); + this._mem_util.block_release(b); + let ns = this._mem_util.set_string(v); + this._mem_util.i32_store(addr, ns[0]); + this._mem_util.i32_store(addr + 4, ns[1]); + this._mem_util.i32_store(addr + 8, ns[2]); + }, + extract_string: (arr) => { + const s = this._mem_util.get_string(arr[1], arr[2]); + this._mem_util.block_release(arr[0]); + arr.splice(0, 3); + return s; + }, + extract_bytes: (arr) => { + const b = this._mem_util.get_bytes(arr[1], arr[2]); + this._mem_util.block_release(arr[0]); + arr.splice(0, 4); + return b + }, + extract_bool: (arr) => { const v = arr[0]; arr.splice(0, 1); return v?true:false; }, + extract_rune: (arr) => { const v = arr[0]; arr.splice(0, 1); return String.fromCodePoint(v); }, + extract_number: (arr) => { const v = arr[0]; arr.splice(0, 1); return v; }, + } + }; + + _createSyscall = () => { + return { + print_bool: (b) => { this._wa_print_buf += Boolean(b).toString(); }, + print_u32: (i) => { + if (i < 0) { + i += 4294967296; + } + this._wa_print_buf += i; + }, + print_i32: (i) => { this._wa_print_buf += i }, + print_u64: (i) => { this._wa_print_buf += i }, + print_u64: (i) => { this._wa_print_buf += i }, + print_i64: (i) => { this._wa_print_buf += i }, + print_f32: (f) => { this._wa_print_buf += f }, + print_f64: (f) => { this._wa_print_buf += f }, + print_ptr: (p) => { this._wa_print_buf += p }, + print_str: (addr, len) => { this._wa_print_buf += this._mem_util.get_string(addr, len);}, + proc_exit: (code) => { alert(code) }, + print_rune: (c) => { + let ch = String.fromCodePoint(c); + if (ch == "\n") { + console.log(this._wa_print_buf); + this._wa_print_buf = ""; + } + else { + this._wa_print_buf += ch; + } + } + } + }; + + async init() { + const app = this; + const imports = { + syscall_js: this._createSyscall(), + + + // ... + }; + + try { + const source = await fetch(this._wasm_url); + const result = await WebAssembly.instantiateStreaming(source, imports); + this._wasm_inst = result.instance; + + // 全局变量: + + + // 全局函数: + + this.Run = function(code) { + // 准备参数 + let params = []; + let p0 = this._mem_util.set_string(code); +params = params.concat(p0); + + + let res = this._wasm_inst.exports["brainfuck.Run"](...params); + + if (!Array.prototype.isPrototypeOf(res)) { + res = [res]; + } + let r0 = this._mem_util.extract_string(res); + + this._mem_util.block_release(p0[0]); + + return r0; + } + + this.main = function() { + // 准备参数 + let params = []; + + + let res = this._wasm_inst.exports["brainfuck.main"](...params); + + if (!Array.prototype.isPrototypeOf(res)) { + res = [res]; + } + + + + } + + + this._wasm_inst.exports._start(); + return this + } catch (error) { + console.error('WASM 初始化失败:', error); + } + } + +} // class WaApp + diff --git a/brainfuck/brainfuck.wasm b/brainfuck/brainfuck.wasm new file mode 100644 index 00000000..9dd19423 Binary files /dev/null and b/brainfuck/brainfuck.wasm differ diff --git a/brainfuck/brainfuck.wat b/brainfuck/brainfuck.wat new file mode 100644 index 00000000..8cc09d32 --- /dev/null +++ b/brainfuck/brainfuck.wat @@ -0,0 +1,13987 @@ +(module $__walang__ + (import "syscall_js" "print_bool" (func $syscall$js.__import__print_bool (param i32))) + (import "syscall_js" "print_f32" (func $syscall$js.__import__print_f32 (param f32))) + (import "syscall_js" "print_f64" (func $syscall$js.__import__print_f64 (param f64))) + (import "syscall_js" "print_i32" (func $syscall$js.__import__print_i32 (param i32))) + (import "syscall_js" "print_i64" (func $syscall$js.__import__print_i64 (param i64))) + (import "syscall_js" "print_ptr" (func $syscall$js.__import__print_ptr (param i32))) + (import "syscall_js" "print_rune" (func $syscall$js.__import__print_rune (param i32))) + (import "syscall_js" "print_str" (func $syscall$js.__import__print_str (param i32) (param i32))) + (import "syscall_js" "print_u32" (func $syscall$js.__import__print_u32 (param i32))) + (import "syscall_js" "print_u64" (func $syscall$js.__import__print_u64 (param i64))) + (import "syscall_js" "proc_exit" (func $syscall$js.__import__proc_exit (param i32))) +;; Copyright 2023 The Wa Authors. All rights reserved. + +(memory $memory 1024) + +(export "memory" (memory $memory)) + +;; +-----------------+---------------------+--------------+ +;; | 0 <-- stack --> | <-- static-data --> | <-- heap --> | +;; +-----------------+---------------------+--------------+ + +(global $__stack_ptr (mut i32) (i32.const 1024)) ;; index=0 +;;(global $__heap_base i32 (i32.const 1048576)) ;; index=1 +(global $__heap_max i32 (i32.const 67108864)) ;; 64MB, 1024 page + + +;; --------------------------------------------------------- +;; package: runtime +;; --------------------------------------------------------- + +;; file: heap.wat.ws + +;; Copyright 2023 The Wa Authors. All rights reserved. + +(func $runtime.throw + unreachable +) + +(func $runtime.getStackPtr (result i32) + global.get $__stack_ptr +) + +(func $runtime.setStackPtr (param $sp i32) + local.get $sp + global.set $__stack_ptr +) + +(func $runtime.stackAlloc (param $size i32) (result i32) + ;; $__stack_ptr -= $size + global.get $__stack_ptr + local.get $size + i32.sub + global.set $__stack_ptr + + ;; return $__stack_ptr + global.get $__stack_ptr + return +) + +(func $runtime.stackFree (param $size i32) + ;; $__stack_ptr += $size + global.get $__stack_ptr + local.get $size + i32.add + global.set $__stack_ptr +) + +(func $runtime.heapBase(result i32) + global.get $__heap_base +) + +(func $runtime.heapMax(result i32) + global.get $__heap_max +) + +(func $runtime.HeapAlloc (export "runtime.HeapAlloc") (param $nbytes i32) (result i32) ;;result = ptr + (local $ptr i32) + + local.get $nbytes + i32.eqz + if + i32.const 0 + return + end + + local.get $nbytes + i32.const 7 + i32.add + i32.const 8 + i32.div_u + i32.const 8 + i32.mul + local.set $nbytes + + local.get $nbytes + call $runtime.malloc + local.set $ptr + + loop $zero + local.get $nbytes + i32.const 8 + i32.sub + local.tee $nbytes + local.get $ptr + i32.add + + i64.const 0 + i64.store + + local.get $nbytes + if + br $zero + end + end ;;loop $zero + + local.get $ptr +) + +(func $runtime.HeapFree (export "runtime.HeapFree") (param $ptr i32) + local.get $ptr + call $runtime.free +) + +(func $runtime.Block.Init (param $ptr i32) (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) ;;result = ptr + local.get $ptr + + local.get $ptr + if + local.get $ptr + i32.const 1 + i32.store offset=0 align=1 + + local.get $ptr + local.get $item_count + i32.store offset=4 align=1 + + local.get $ptr + local.get $release_func + i32.store offset=8 align=1 + + local.get $ptr + local.get $item_size + i32.store offset=12 align=1 + end +) + +(func $runtime.Block.SetFinalizer (param $ptr i32) (param $release_func i32) + local.get $ptr + if + local.get $ptr + local.get $release_func + i32.store offset=8 align=1 + end +) + +(func $runtime.Block.HeapAlloc (export "runtime.Block.HeapAlloc") (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) ;;result = ptr_block + local.get $item_count + local.get $item_size + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + + local.get $item_count + local.get $release_func + local.get $item_size + call $runtime.Block.Init +) + +(func $runtime.DupI32 (param $a i32) (result i32 i32) ;;r0 = r1 = p0 + local.get $a + local.get $a +) + +(func $runtime.SwapI32 (param $a i32) (param $b i32) (result i32 i32) ;;r0 = p1, r1 = p0 + local.get $b + local.get $a +) + +(func $runtime.Block.Retain (export "runtime.Block.Retain") (param $ptr i32) (result i32) ;;result = ptr + local.get $ptr + + local.get $ptr + if + local.get $ptr + local.get $ptr + i32.load offset=0 align=1 + i32.const 1 + i32.add + i32.store offset=0 align=1 + end +) + +(func $runtime.Block.Release (export "runtime.Block.Release") (param $ptr i32) + (local $ref_count i32) + (local $item_count i32) + (local $free_func i32) + (local $item_size i32) + (local $data_ptr i32) + + local.get $ptr + i32.const 0 + i32.eq + if + return + end + + local.get $ptr + i32.load offset=0 align=1 + i32.const 1 + i32.sub + local.set $ref_count + + local.get $ref_count + if + local.get $ptr + local.get $ref_count + i32.store offset=0 align=1 + + else ;;ref_count == 0 + local.get $ptr + i32.load offset=8 align=1 + local.set $free_func + + local.get $free_func + if ;;free_func != 0 + local.get $ptr + i32.load offset=4 align=1 + local.set $item_count + + local.get $item_count + if ;;item_count > 0 + local.get $ptr + i32.load offset=12 align=1 + local.set $item_size + + local.get $ptr + i32.const 16 + i32.add + local.set $data_ptr + + loop $free_next + ;; onFree(data_ptr) + local.get $data_ptr + local.get $free_func + call_indirect (type $$onFree) + + ;; item_count-- + local.get $item_count + i32.const 1 + i32.sub + local.set $item_count + + local.get $item_count + if ;;while item_count>0 + ;; data_ptr += item_size + local.get $data_ptr + local.get $item_size + i32.add + local.set $data_ptr + + br $free_next ;;continue + end ;;while item_count>0 + end ;;loop $free_next + end ;;if item_count > 0 + end ;;free_func != 0 + + local.get $ptr + call $runtime.HeapFree + end ;;ref_count == 0 +) + +(func $$wa.runtime.i32_ref_to_ptr (param $b i32) (param $d i32) (result i32) ;;result = ptr + local.get $d +) + +(func $$wa.runtime.i64_ref_to_ptr (param $b i32) (param $d i32) (result i32) ;;result = ptr + local.get $d +) + +(func $$wa.runtime.slice_to_ptr (param $b i32) (param $d i32) (param $l i32) (param $c i32) (result i32) ;;result = ptr + local.get $d +) +;; file: interface.wat.ws + +(func $$wa.runtime.queryIface (param $d.b i32) (param $d.d i32) (param $itab i32) (param $eq i32) (param $ihash i32) + (result i32 i32 i32 i32) + (local $t i32) + local.get $itab + if (result i32 i32 i32 i32) + local.get $itab + i32.load offset=0 align=4 + local.get $ihash + i32.const 0 + call $runtime.getItab + local.set $t + local.get $t + if (result i32 i32 i32 i32) + local.get $d.b + call $runtime.Block.Retain + local.get $d.d + local.get $t + local.get $eq + else + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + unreachable + end + else + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + unreachable + end +) + +(func $$wa.runtime.queryIface_CommaOk (param $d.b i32) (param $d.d i32) (param $itab i32) (param $eq i32) (param $ihash i32) + (result i32 i32 i32 i32 i32) + (local $t i32) + local.get $itab + if (result i32 i32 i32 i32 i32) + local.get $itab + i32.load offset=0 align=4 + local.get $ihash + i32.const 1 + call $runtime.getItab + local.set $t + local.get $t + if (result i32 i32 i32 i32 i32) + local.get $d.b + call $runtime.Block.Retain + local.get $d.d + local.get $t + local.get $eq + i32.const 1 + else + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + end + else + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + end +) + +(func $runtime.Compare (param $l.d.b i32) (param $l.d.d i32) (param $l.itab i32) (param $l.comp i32) (param $r.d.b i32) (param $r.d.d i32) (param $r.itab i32) (param $r.comp i32) + (result i32) + local.get $l.comp + local.get $r.comp + i32.lt_s + if (result i32) ;;if l.comp < r.comp + i32.const -1 + else + local.get $l.comp + local.get $r.comp + i32.gt_s + if (result i32) ;;if l.comp > r.comp + i32.const 1 + else ;;if l.comp == r.comp: + local.get $l.comp + if (result i32) ;;if comp != 0, compare by type.comp: + local.get $l.d.d + local.get $r.d.d + local.get $l.comp + call_indirect (type $$wa.runtime.comp) + else ;;if comp == 0, compare as ref: + local.get $l.d.d + local.get $r.d.d + i32.le_u + if (result i32) + i32.const -1 + else + local.get $l.d.d + local.get $r.d.d + i32.gt_u + end + end + end + end +) +;; file: map.wat.ws + + +;; file: string.wat.ws + +(func $$wa.runtime.string_to_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) ;;result = ptr + local.get $d +) + +(func $$wa.runtime.string_to_iter (param $b i32) (param $d i32) (param $l i32) (result i32 i32 i32) + local.get $d + local.get $l + i32.const 0 +) +;; --------------------------------------------------------- +;; package: syscall/js +;; --------------------------------------------------------- + +;; file: z_abi.wat.ws + +;; Copyright 2024 The Wa Authors. All rights reserved. + +(func $$syscall/js.__linkname__string_to_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) ;;result = ptr + local.get $d +) +(data (i32.const 8224) "\24\24\77\61\64\73\24\24\30\61\73\73\65\72\74\20\66\61\69\6c\65\64\20\28\61\73\73\65\72\74\20\66\61\69\6c\65\64\3a\20\6e\69\6c\20\6d\61\70\2e\6d\61\70\2e\77\61\3a\32\30\3a\38\70\61\6e\69\63\3a\20\74\72\75\65\66\61\6c\73\65\4e\61\4e\2b\49\6e\66\2d\49\6e\66\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\0a\5b\2f\5d\2b\2b\2b\2b\2b\2b\2b\2b\2b\2b\5b\3e\2b\2b\2b\2b\2b\2b\2b\2b\2b\2b\3c\2d\5d\3e\2b\2b\2b\2b\2e\2b\2e\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\00\01\00\00\00\ff\ff\ff\ff\f8\95\00\00") +(table 16 funcref) +(elem (i32.const 1) $$string.$$compAddr) +(elem (i32.const 2) $$u8.$$block.$$onFree) +(elem (i32.const 3) $$string.underlying.$$onFree) +(elem (i32.const 4) $$void.$$block.$$onFree) +(elem (i32.const 5) $$void.$ref.underlying.$$onFree) +(elem (i32.const 6) $$i`0`.underlying.$$onFree) +(elem (i32.const 7) $$runtime.mapNode.$$onFree) +(elem (i32.const 8) $$runtime.mapNode.$$block.$$onFree) +(elem (i32.const 9) $$runtime.mapNode.$slice.underlying.$$onFree) +(elem (i32.const 10) $$runtime.mapImp.$$onFree) +(elem (i32.const 11) $$runtime.mapImp.$$block.$$onFree) +(elem (i32.const 12) $$runtime.mapImp.$ref.underlying.$$onFree) +(elem (i32.const 13) $$runtime.mapIter.$$onFree) +(elem (i32.const 14) $$runtime.mapNode.$array1.underlying.$$onFree) +(elem (i32.const 15) $$brainfuck$bfpkg.BrainFuck.$$onFree) +(type $$onFree (func (param i32))) +(type $$wa.runtime.comp (func (param i32) (param i32) (result i32))) +(global $$wa.runtime.closure_data (mut i32) (i32.const 0)) +(global $$wa.runtime._concretTypeCount (mut i32) (i32.const 1)) +(global $$wa.runtime._interfaceCount (mut i32) (i32.const 1)) +(global $$wa.runtime._itabsPtr (mut i32) (i32.const 38400)) +(global $runtime.init$guard (mut i32) (i32.const 0)) +(global $$knr_basep (mut i32) (i32.const 0)) +(global $$knr_freep (mut i32) (i32.const 0)) +(global $brainfuck$bfpkg.init$guard (mut i32) (i32.const 0)) +(global $brainfuck.init$guard (mut i32) (i32.const 0)) +(global $syscall$js.init$guard (mut i32) (i32.const 0)) +(global $runtime.zptr (mut i32) (i32.const 8368)) +(global $__heap_base i32 (i32.const 38432)) + + +(func $$string.appendstr (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32 i32 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $item i32) + (local $src i32) + (local $dest i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_len + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + else + end + local.get $src + i32.load8_u offset=0 align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 offset=0 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end ;;loop2 + end ;;block2 + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + else + end + local.get $src + i32.load8_u offset=0 align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 offset=0 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end ;;loop3 + end ;;block3 +) ;;$string.appendstr + +(func $$string.equal (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $ret i32) + i32.const 1 + local.set $ret + local.get $x.2 + local.get $y.2 + i32.ne + if + i32.const 0 + local.set $ret + else + loop $loop1 + local.get $x.2 + if + local.get $x.1 + local.get $x.2 + i32.add + i32.const 1 + i32.sub + i32.load8_u offset=0 align=1 + local.get $y.1 + local.get $x.2 + i32.add + i32.const 1 + i32.sub + i32.load8_u offset=0 align=1 + i32.eq + if + local.get $x.2 + i32.const 1 + i32.sub + local.set $x.2 + br $loop1 + else + i32.const 0 + local.set $ret + end + else + end + end ;;loop1 + end + local.get $ret +) ;;$string.equal + +(func $$string.$$compAddr (param $p0 i32) (param $p1 i32) (result i32) + (local $v0.0 i32) + (local $v0.1 i32) + (local $v0.2 i32) + (local $v1.0 i32) + (local $v1.1 i32) + (local $v1.2 i32) + local.get $p0 + if + local.get $p0 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $p0 + i32.load offset=4 align=4 + local.get $p0 + i32.load offset=8 align=4 + local.set $v0.2 + local.set $v0.1 + local.get $v0.0 + call $runtime.Block.Release + local.set $v0.0 + else + end + local.get $p1 + if + local.get $p1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $p1 + i32.load offset=4 align=4 + local.get $p1 + i32.load offset=8 align=4 + local.set $v1.2 + local.set $v1.1 + local.get $v1.0 + call $runtime.Block.Release + local.set $v1.0 + else + end + local.get $v0.0 + local.get $v0.1 + local.get $v0.2 + local.get $v1.0 + local.get $v1.1 + local.get $v1.2 + call $$wa.runtime.string_Comp + local.get $v0.0 + call $runtime.Block.Release + local.get $v1.0 + call $runtime.Block.Release +) ;;$string.$$compAddr + +(func $$u8.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load offset=0 align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store offset=0 align=1 +) ;;$u8.$$block.$$onFree + +(func $$string.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect (type $$onFree) +) ;;$string.underlying.$$onFree + +(func $runtime.ActivateEmptyInterface + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0.0 i32) + (local $$t0.0.1 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;make interface{} <- string ("":string) + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 3 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + call $runtime.DupI32 + i32.const 0 + call $runtime.SwapI32 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + call $runtime.DupI32 + i32.const 8224 + i32.store offset=4 align=4 + call $runtime.DupI32 + i32.const 0 + i32.store offset=8 align=4 + i32.const 1 + i32.const -1 + i32.const 0 + call $runtime.getItab + i32.const 1 + local.set $$t0.2 + local.set $$t0.1 + local.set $$t0.0.1 + local.get $$t0.0.0 + call $runtime.Block.Release + local.set $$t0.0.0 + + ;;typeassert t0.(string) + local.get $$t0.1 + i32.load offset=0 align=4 + i32.const 1 + i32.eq + if (result i32 i32 i32) + local.get $$t0.0.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t0.0.1 + i32.load offset=4 align=4 + local.get $$t0.0.1 + i32.load offset=8 align=4 + else + i32.const 0 + i32.const 8232 + i32.const 1 + unreachable + end + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;println(t1) + local.get $$t1.1 + local.get $$t1.2 + call $$runtime.waPuts + i32.const 10 + call $$runtime.waPrintChar + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$t0.0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release +) ;;runtime.ActivateEmptyInterface + +(func $$runtime.argsGet (param $result_argv i32) (param $result_argv_buf i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;return 0:i32 + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$runtime.argsGet + +(func $$runtime.argsSizesGet (param $result_argc i32) (param $result_argv_len i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;return 0:i32 + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$runtime.argsSizesGet + +(func $$runtime.assert (param $ok i32) (param $pos_msg_ptr i32) (param $pos_msg_len i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;ok == 0:i32 + local.get $ok + i32.const 0 + i32.eq + local.set $$t0 + + ;;if t0 goto 1 else 2 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;printString("assert failed (":string) + i32.const 0 + i32.const 8233 + i32.const 15 + call $runtime.printString + + ;;waPuts(pos_msg_ptr, pos_msg_len) + local.get $pos_msg_ptr + local.get $pos_msg_len + call $$runtime.waPuts + + ;;waPrintRune(41:i32) + i32.const 41 + call $$runtime.waPrintRune + + ;;waPrintRune(10:i32) + i32.const 10 + call $$runtime.waPrintRune + + ;;procExit(1:i32) + i32.const 1 + call $$runtime.procExit + + ;;jump 2 + br $$Block_1 + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.assert + +(func $$runtime.assertWithMessage (param $ok i32) (param $msg_ptr i32) (param $msg_len i32) (param $pos_msg_ptr i32) (param $pos_msg_len i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;ok == 0:i32 + local.get $ok + i32.const 0 + i32.eq + local.set $$t0 + + ;;if t0 goto 1 else 2 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;printString("assert failed: ":string) + i32.const 0 + i32.const 8248 + i32.const 15 + call $runtime.printString + + ;;waPuts(msg_ptr, msg_len) + local.get $msg_ptr + local.get $msg_len + call $$runtime.waPuts + + ;;printString(" (":string) + i32.const 0 + i32.const 8246 + i32.const 2 + call $runtime.printString + + ;;waPuts(pos_msg_ptr, pos_msg_len) + local.get $pos_msg_ptr + local.get $pos_msg_len + call $$runtime.waPuts + + ;;waPrintRune(41:i32) + i32.const 41 + call $$runtime.waPrintRune + + ;;waPrintRune(10:i32) + i32.const 10 + call $$runtime.waPrintRune + + ;;procExit(1:i32) + i32.const 1 + call $$runtime.procExit + + ;;jump 2 + br $$Block_1 + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.assertWithMessage + +(func $$wa.runtime.complex128_Add (param $a f64) (param $ai f64) (param $b f64) (param $bi f64) (result f64 f64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f64) + (local $$ret_1 f64) + (local $$t0 f64) + (local $$t1 f64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;a + b + local.get $a + local.get $b + f64.add + local.set $$t0 + + ;;ai + bi + local.get $ai + local.get $bi + f64.add + local.set $$t1 + + ;;return t0, t1 + local.get $$t0 + local.set $$ret_0 + local.get $$t1 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1 +) ;;$wa.runtime.complex128_Add + +(func $$wa.runtime.complex128_Div (param $a f64) (param $ai f64) (param $b f64) (param $bi f64) (result f64 f64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f64) + (local $$ret_1 f64) + (local $$t0 f64) + (local $$t1 f64) + (local $$t2 f64) + (local $$t3 f64) + (local $$t4 f64) + (local $$t5 f64) + (local $$t6 f64) + (local $$t7 f64) + (local $$t8 f64) + (local $$t9 f64) + (local $$t10 f64) + (local $$t11 f64) + (local $$t12 f64) + (local $$t13 f64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;a * b + local.get $a + local.get $b + f64.mul + local.set $$t0 + + ;;ai * bi + local.get $ai + local.get $bi + f64.mul + local.set $$t1 + + ;;t0 + t1 + local.get $$t0 + local.get $$t1 + f64.add + local.set $$t2 + + ;;b * b + local.get $b + local.get $b + f64.mul + local.set $$t3 + + ;;bi * bi + local.get $bi + local.get $bi + f64.mul + local.set $$t4 + + ;;t3 + t4 + local.get $$t3 + local.get $$t4 + f64.add + local.set $$t5 + + ;;t2 / t5 + local.get $$t2 + local.get $$t5 + f64.div + local.set $$t6 + + ;;ai * b + local.get $ai + local.get $b + f64.mul + local.set $$t7 + + ;;a * bi + local.get $a + local.get $bi + f64.mul + local.set $$t8 + + ;;t7 - t8 + local.get $$t7 + local.get $$t8 + f64.sub + local.set $$t9 + + ;;b * b + local.get $b + local.get $b + f64.mul + local.set $$t10 + + ;;bi * bi + local.get $bi + local.get $bi + f64.mul + local.set $$t11 + + ;;t10 + t11 + local.get $$t10 + local.get $$t11 + f64.add + local.set $$t12 + + ;;t9 / t12 + local.get $$t9 + local.get $$t12 + f64.div + local.set $$t13 + + ;;return t6, t13 + local.get $$t6 + local.set $$ret_0 + local.get $$t13 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1 +) ;;$wa.runtime.complex128_Div + +(func $$wa.runtime.complex128_Mul (param $a f64) (param $ai f64) (param $b f64) (param $bi f64) (result f64 f64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f64) + (local $$ret_1 f64) + (local $$t0 f64) + (local $$t1 f64) + (local $$t2 f64) + (local $$t3 f64) + (local $$t4 f64) + (local $$t5 f64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;a * b + local.get $a + local.get $b + f64.mul + local.set $$t0 + + ;;ai * bi + local.get $ai + local.get $bi + f64.mul + local.set $$t1 + + ;;t0 - t1 + local.get $$t0 + local.get $$t1 + f64.sub + local.set $$t2 + + ;;ai * b + local.get $ai + local.get $b + f64.mul + local.set $$t3 + + ;;a * bi + local.get $a + local.get $bi + f64.mul + local.set $$t4 + + ;;t3 + t4 + local.get $$t3 + local.get $$t4 + f64.add + local.set $$t5 + + ;;return t2, t5 + local.get $$t2 + local.set $$ret_0 + local.get $$t5 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1 +) ;;$wa.runtime.complex128_Mul + +(func $$wa.runtime.complex128_Sub (param $a f64) (param $ai f64) (param $b f64) (param $bi f64) (result f64 f64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f64) + (local $$ret_1 f64) + (local $$t0 f64) + (local $$t1 f64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;a - b + local.get $a + local.get $b + f64.sub + local.set $$t0 + + ;;ai - bi + local.get $ai + local.get $bi + f64.sub + local.set $$t1 + + ;;return t0, t1 + local.get $$t0 + local.set $$ret_0 + local.get $$t1 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1 +) ;;$wa.runtime.complex128_Sub + +(func $$wa.runtime.complex64_Add (param $a f32) (param $ai f32) (param $b f32) (param $bi f32) (result f32 f32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f32) + (local $$ret_1 f32) + (local $$t0 f32) + (local $$t1 f32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;a + b + local.get $a + local.get $b + f32.add + local.set $$t0 + + ;;ai + bi + local.get $ai + local.get $bi + f32.add + local.set $$t1 + + ;;return t0, t1 + local.get $$t0 + local.set $$ret_0 + local.get $$t1 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1 +) ;;$wa.runtime.complex64_Add + +(func $$wa.runtime.complex64_Div (param $a f32) (param $ai f32) (param $b f32) (param $bi f32) (result f32 f32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f32) + (local $$ret_1 f32) + (local $$t0 f32) + (local $$t1 f32) + (local $$t2 f32) + (local $$t3 f32) + (local $$t4 f32) + (local $$t5 f32) + (local $$t6 f32) + (local $$t7 f32) + (local $$t8 f32) + (local $$t9 f32) + (local $$t10 f32) + (local $$t11 f32) + (local $$t12 f32) + (local $$t13 f32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;a * b + local.get $a + local.get $b + f32.mul + local.set $$t0 + + ;;ai * bi + local.get $ai + local.get $bi + f32.mul + local.set $$t1 + + ;;t0 + t1 + local.get $$t0 + local.get $$t1 + f32.add + local.set $$t2 + + ;;b * b + local.get $b + local.get $b + f32.mul + local.set $$t3 + + ;;bi * bi + local.get $bi + local.get $bi + f32.mul + local.set $$t4 + + ;;t3 + t4 + local.get $$t3 + local.get $$t4 + f32.add + local.set $$t5 + + ;;t2 / t5 + local.get $$t2 + local.get $$t5 + f32.div + local.set $$t6 + + ;;ai * b + local.get $ai + local.get $b + f32.mul + local.set $$t7 + + ;;a * bi + local.get $a + local.get $bi + f32.mul + local.set $$t8 + + ;;t7 - t8 + local.get $$t7 + local.get $$t8 + f32.sub + local.set $$t9 + + ;;b * b + local.get $b + local.get $b + f32.mul + local.set $$t10 + + ;;bi * bi + local.get $bi + local.get $bi + f32.mul + local.set $$t11 + + ;;t10 + t11 + local.get $$t10 + local.get $$t11 + f32.add + local.set $$t12 + + ;;t9 / t12 + local.get $$t9 + local.get $$t12 + f32.div + local.set $$t13 + + ;;return t6, t13 + local.get $$t6 + local.set $$ret_0 + local.get $$t13 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1 +) ;;$wa.runtime.complex64_Div + +(func $$wa.runtime.complex64_Mul (param $a f32) (param $ai f32) (param $b f32) (param $bi f32) (result f32 f32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f32) + (local $$ret_1 f32) + (local $$t0 f32) + (local $$t1 f32) + (local $$t2 f32) + (local $$t3 f32) + (local $$t4 f32) + (local $$t5 f32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;a * b + local.get $a + local.get $b + f32.mul + local.set $$t0 + + ;;ai * bi + local.get $ai + local.get $bi + f32.mul + local.set $$t1 + + ;;t0 - t1 + local.get $$t0 + local.get $$t1 + f32.sub + local.set $$t2 + + ;;ai * b + local.get $ai + local.get $b + f32.mul + local.set $$t3 + + ;;a * bi + local.get $a + local.get $bi + f32.mul + local.set $$t4 + + ;;t3 + t4 + local.get $$t3 + local.get $$t4 + f32.add + local.set $$t5 + + ;;return t2, t5 + local.get $$t2 + local.set $$ret_0 + local.get $$t5 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1 +) ;;$wa.runtime.complex64_Mul + +(func $$wa.runtime.complex64_Sub (param $a f32) (param $ai f32) (param $b f32) (param $bi f32) (result f32 f32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f32) + (local $$ret_1 f32) + (local $$t0 f32) + (local $$t1 f32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;a - b + local.get $a + local.get $b + f32.sub + local.set $$t0 + + ;;ai - bi + local.get $ai + local.get $bi + f32.sub + local.set $$t1 + + ;;return t0, t1 + local.get $$t0 + local.set $$ret_0 + local.get $$t1 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1 +) ;;$wa.runtime.complex64_Sub + +(func $$runtime.environGet (param $result_environv i32) (param $result_environv_buf i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;return 0:i32 + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$runtime.environGet + +(func $$runtime.environSizesGet (param $result_environc i32) (param $result_environv_len i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;return 0:i32 + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$runtime.environSizesGet + +(func $$runtime.fdWrite (param $fd i32) (param $io i32) (param $iovs_len i32) (param $nwritten i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;return 0:i32 + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$runtime.fdWrite + +(func $runtime.free (param $ap i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;ap == 0:u32 + local.get $ap + i32.const 0 + i32.eq + local.set $$t0 + + ;;if t0 goto 1 else 3 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;ap - 8:u32 + local.get $ap + i32.const 8 + i32.sub + local.set $$t1 + + ;;local knr_Header (bp) + i32.const 0 + local.set $$t2.0 + i32.const 0 + local.set $$t2.1 + + ;;knr_getBlockHeader(t1) + local.get $$t1 + call $runtime.knr_getBlockHeader + local.set $$t3.1 + local.set $$t3.0 + + ;;*t2 = t3 + local.get $$t3.0 + local.get $$t3.1 + local.set $$t2.1 + local.set $$t2.0 + + ;;&t2.size [#1] + + ;;*t4 + local.get $$t2.1 + local.set $$t4 + + ;;t5 <= 1:u32 + local.get $$t4 + i32.const 1 + i32.le_u + local.set $$t5 + + ;;if t6 goto 4 else 5 + local.get $$t5 + if + br $$Block_3 + else + br $$Block_4 + end + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;ap % 8:u32 + local.get $ap + i32.const 8 + i32.rem_u + local.set $$t6 + + ;;t7 != 0:u32 + local.get $$t6 + i32.const 0 + i32.eq + i32.eqz + local.set $$t7 + + ;;if t8 goto 1 else 2 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_4 + i32.const 5 + local.set $$current_block + + ;;*knr_freep + global.get $$knr_freep + local.set $$t8 + + ;;local knr_Header (p) + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + + ;;knr_getBlockHeader(t9) + local.get $$t8 + call $runtime.knr_getBlockHeader + local.set $$t10.1 + local.set $$t10.0 + + ;;*t10 = t11 + local.get $$t10.0 + local.get $$t10.1 + local.set $$t9.1 + local.set $$t9.0 + + ;;jump 8 + br $$Block_7 + + end ;;$Block_5 + i32.const 6 + local.set $$current_block + + ;;&t10.ptr [#0] + + ;;*t12 + local.get $$t9.0 + local.set $$t11 + + ;;t22 >= t13 + local.get $$t12 + local.get $$t11 + i32.ge_u + local.set $$t13 + + ;;if t14 goto 11 else 10 + local.get $$t13 + if + br $$Block_10 + else + br $$Block_9 + end + + end ;;$Block_6 + i32.const 7 + local.set $$current_block + + ;;&t2.size [#1] + + ;;*t15 + local.get $$t2.1 + local.set $$t14 + + ;;t16 * 8:u32 + local.get $$t14 + i32.const 8 + i32.mul + local.set $$t15 + + ;;t1 + t17 + local.get $$t1 + local.get $$t15 + i32.add + local.set $$t16 + + ;;&t10.ptr [#0] + + ;;*t19 + local.get $$t9.0 + local.set $$t17 + + ;;t18 == t20 + local.get $$t16 + local.get $$t17 + i32.eq + local.set $$t18 + + ;;if t21 goto 13 else 15 + local.get $$t18 + if + br $$Block_12 + else + br $$Block_14 + end + + end ;;$Block_7 + ;;phi [5: t9, 10: t28] #p_addr + local.get $$current_block + i32.const 5 + i32.eq + if (result i32) + local.get $$t8 + else + local.get $$t19 + end + local.set $$t12 + + i32.const 8 + local.set $$current_block + + ;;t1 > t22 + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t20 + + ;;if t23 goto 9 else 6 + local.get $$t20 + if + br $$Block_8 + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_8 + i32.const 9 + local.set $$current_block + + ;;&t10.ptr [#0] + + ;;*t24 + local.get $$t9.0 + local.set $$t21 + + ;;t1 < t25 + local.get $$t1 + local.get $$t21 + i32.lt_u + local.set $$t22 + + ;;if t26 goto 7 else 6 + local.get $$t22 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_9 + i32.const 10 + local.set $$current_block + + ;;&t10.ptr [#0] + + ;;*t27 + local.get $$t9.0 + local.set $$t19 + + ;;knr_getBlockHeader(t28) + local.get $$t19 + call $runtime.knr_getBlockHeader + local.set $$t23.1 + local.set $$t23.0 + + ;;*t10 = t29 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t9.1 + local.set $$t9.0 + + ;;jump 8 + i32.const 8 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_10 + i32.const 11 + local.set $$current_block + + ;;t1 > t22 + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t24 + + ;;if t30 goto 7 else 12 + local.get $$t24 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + + end ;;$Block_11 + i32.const 12 + local.set $$current_block + + ;;&t10.ptr [#0] + + ;;*t31 + local.get $$t9.0 + local.set $$t25 + + ;;t1 < t32 + local.get $$t1 + local.get $$t25 + i32.lt_u + local.set $$t26 + + ;;if t33 goto 7 else 10 + local.get $$t26 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_12 + i32.const 13 + local.set $$current_block + + ;;local knr_Header (p_ptr) + i32.const 0 + local.set $$t27.0 + i32.const 0 + local.set $$t27.1 + + ;;&t10.ptr [#0] + + ;;*t35 + local.get $$t9.0 + local.set $$t28 + + ;;knr_getBlockHeader(t36) + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t29.1 + local.set $$t29.0 + + ;;*t34 = t37 + local.get $$t29.0 + local.get $$t29.1 + local.set $$t27.1 + local.set $$t27.0 + + ;;&t2.size [#1] + + ;;&t34.size [#1] + + ;;*t39 + local.get $$t27.1 + local.set $$t30 + + ;;*t38 + local.get $$t2.1 + local.set $$t31 + + ;;t41 + t40 + local.get $$t31 + local.get $$t30 + i32.add + local.set $$t32 + + ;;*t38 = t42 + local.get $$t32 + local.set $$t2.1 + + ;;&t2.ptr [#0] + + ;;&t34.ptr [#0] + + ;;*t44 + local.get $$t27.0 + local.set $$t33 + + ;;*t43 = t45 + local.get $$t33 + local.set $$t2.0 + + ;;*t2 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t34.1 + local.set $$t34.0 + + ;;knr_setBlockHeader(t1, t46) + local.get $$t1 + local.get $$t34.0 + local.get $$t34.1 + call $runtime.knr_setBlockHeader + + ;;jump 14 + br $$Block_13 + + end ;;$Block_13 + i32.const 14 + local.set $$current_block + + ;;&t10.size [#1] + + ;;*t48 + local.get $$t9.1 + local.set $$t35 + + ;;t49 * 8:u32 + local.get $$t35 + i32.const 8 + i32.mul + local.set $$t36 + + ;;t22 + t50 + local.get $$t12 + local.get $$t36 + i32.add + local.set $$t37 + + ;;t51 == t1 + local.get $$t37 + local.get $$t1 + i32.eq + local.set $$t38 + + ;;if t52 goto 16 else 18 + local.get $$t38 + if + br $$Block_15 + else + br $$Block_17 + end + + end ;;$Block_14 + i32.const 15 + local.set $$current_block + + ;;&t2.ptr [#0] + + ;;&t10.ptr [#0] + + ;;*t54 + local.get $$t9.0 + local.set $$t39 + + ;;*t53 = t55 + local.get $$t39 + local.set $$t2.0 + + ;;*t2 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t40.1 + local.set $$t40.0 + + ;;knr_setBlockHeader(t1, t56) + local.get $$t1 + local.get $$t40.0 + local.get $$t40.1 + call $runtime.knr_setBlockHeader + + ;;jump 14 + i32.const 14 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_15 + i32.const 16 + local.set $$current_block + + ;;&t10.size [#1] + + ;;&t2.size [#1] + + ;;*t59 + local.get $$t2.1 + local.set $$t41 + + ;;*t58 + local.get $$t9.1 + local.set $$t42 + + ;;t61 + t60 + local.get $$t42 + local.get $$t41 + i32.add + local.set $$t43 + + ;;*t58 = t62 + local.get $$t43 + local.set $$t9.1 + + ;;&t10.ptr [#0] + + ;;&t2.ptr [#0] + + ;;*t64 + local.get $$t2.0 + local.set $$t44 + + ;;*t63 = t65 + local.get $$t44 + local.set $$t9.0 + + ;;*t10 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t45.1 + local.set $$t45.0 + + ;;knr_setBlockHeader(t22, t66) + local.get $$t12 + local.get $$t45.0 + local.get $$t45.1 + call $runtime.knr_setBlockHeader + + ;;jump 17 + br $$Block_16 + + end ;;$Block_16 + i32.const 17 + local.set $$current_block + + ;;*knr_freep = t22 + local.get $$t12 + global.set $$knr_freep + + ;;return + br $$BlockFnBody + + end ;;$Block_17 + i32.const 18 + local.set $$current_block + + ;;&t10.ptr [#0] + + ;;*t68 = t1 + local.get $$t1 + local.set $$t9.0 + + ;;*t10 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t46.1 + local.set $$t46.0 + + ;;knr_setBlockHeader(t22, t69) + local.get $$t12 + local.get $$t46.0 + local.get $$t46.1 + call $runtime.knr_setBlockHeader + + ;;jump 17 + i32.const 17 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_18 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;runtime.free + +(func $runtime.getItab (param $dhash i32) (param $ihash i32) (param $commanok i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;*_itabsPtr + global.get $$wa.runtime._itabsPtr + local.set $$t0 + + ;;dhash - 1:i32 + local.get $dhash + i32.const 1 + i32.sub + local.set $$t1 + + ;;*_interfaceCount + global.get $$wa.runtime._interfaceCount + local.set $$t2 + + ;;t1 * t2 + local.get $$t1 + local.get $$t2 + i32.mul + local.set $$t3 + + ;;t3 - ihash + local.get $$t3 + local.get $ihash + i32.sub + local.set $$t4 + + ;;t4 - 1:i32 + local.get $$t4 + i32.const 1 + i32.sub + local.set $$t5 + + ;;t5 * 4:i32 + local.get $$t5 + i32.const 4 + i32.mul + local.set $$t6 + + ;;t0 + t6 + local.get $$t0 + local.get $$t6 + i32.add + local.set $$t7 + + ;;convert u32 <- i32 (t7) + local.get $$t7 + local.set $$t8 + + ;;getU32(t8) + local.get $$t8 + call $runtime.getU32 + local.set $$t9 + + ;;return t9 + local.get $$t9 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;runtime.getItab + +(func $$wa.runtime.getTypePtr (param $hash i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;return 0:uintptr + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$wa.runtime.getTypePtr + +(func $runtime.getU32 (param $addr i32) (result i32) + local.get $addr + i32.load offset=0 align=4 +) ;;runtime.getU32 + +(func $runtime.get_u8 (param $addr i32) (result i32) + local.get $addr + i32.load8_u offset=0 align=1 +) ;;runtime.get_u8 + +(func $runtime.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;*init$guard + global.get $runtime.init$guard + local.set $$t0 + + ;;if t0 goto 2 else 1 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;*init$guard = true:bool + i32.const 1 + global.set $runtime.init$guard + + ;;syscall/js.init() + call $syscall$js.init + + ;;jump 2 + br $$Block_1 + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;runtime.init + +(func $runtime.knr_getBlockHeader (param $addr i32) (result i32 i32) + local.get $addr + i32.load offset=0 align=4 + local.get $addr + i32.load offset=4 align=4 +) ;;runtime.knr_getBlockHeader + +(func $runtime.knr_setBlockHeader (param $addr i32) (param $data.0 i32) (param $data.1 i32) + local.get $addr + local.get $data.0 + i32.store offset=0 align=4 + local.get $addr + local.get $data.1 + i32.store offset=4 align=4 +) ;;runtime.knr_setBlockHeader + +(func $runtime.malloc (param $nbytes i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;nbytes == 0:u32 + local.get $nbytes + i32.const 0 + i32.eq + local.set $$t0 + + ;;if t0 goto 1 else 3 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;return 0:u32 + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;*knr_basep + global.get $$knr_basep + local.set $$t1 + + ;;t1 == 0:u32 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + + ;;if t2 goto 4 else 5 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_4 + end + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;heapMax() + call $runtime.heapMax + local.set $$t3 + + ;;*knr_basep + global.get $$knr_basep + local.set $$t4 + + ;;t3 - t4 + local.get $$t3 + local.get $$t4 + i32.sub + local.set $$t5 + + ;;nbytes >= t5 + local.get $nbytes + local.get $$t5 + i32.ge_u + local.set $$t6 + + ;;if t6 goto 1 else 2 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;heapBase() + call $runtime.heapBase + local.set $$t7 + + ;;*knr_basep = t7 + local.get $$t7 + global.set $$knr_basep + + ;;*knr_basep + global.get $$knr_basep + local.set $$t8 + + ;;*knr_freep = t8 + local.get $$t8 + global.set $$knr_freep + + ;;local knr_Header (base) + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + + ;;&t9.ptr [#0] + + ;;*knr_basep + global.get $$knr_basep + local.set $$t10 + + ;;&t9.size [#1] + + ;;heapMax() + call $runtime.heapMax + local.set $$t11 + + ;;*knr_basep + global.get $$knr_basep + local.set $$t12 + + ;;t13 - t14 + local.get $$t11 + local.get $$t12 + i32.sub + local.set $$t13 + + ;;t15 / 8:u32 + local.get $$t13 + i32.const 8 + i32.div_u + local.set $$t14 + + ;;t16 - 1:u32 + local.get $$t14 + i32.const 1 + i32.sub + local.set $$t15 + + ;;*t10 = t11 + local.get $$t10 + local.set $$t9.0 + + ;;*t12 = t17 + local.get $$t15 + local.set $$t9.1 + + ;;*knr_basep + global.get $$knr_basep + local.set $$t16 + + ;;*t9 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t17.1 + local.set $$t17.0 + + ;;knr_setBlockHeader(t18, t19) + local.get $$t16 + local.get $$t17.0 + local.get $$t17.1 + call $runtime.knr_setBlockHeader + + ;;jump 5 + br $$Block_4 + + end ;;$Block_4 + i32.const 5 + local.set $$current_block + + ;;nbytes + 8:u32 + local.get $nbytes + i32.const 8 + i32.add + local.set $$t18 + + ;;t21 - 1:u32 + local.get $$t18 + i32.const 1 + i32.sub + local.set $$t19 + + ;;t22 / 8:u32 + local.get $$t19 + i32.const 8 + i32.div_u + local.set $$t20 + + ;;t23 + 1:u32 + local.get $$t20 + i32.const 1 + i32.add + local.set $$t21 + + ;;*knr_freep + global.get $$knr_freep + local.set $$t22 + + ;;local knr_Header (prevp) + i32.const 0 + local.set $$t23.0 + i32.const 0 + local.set $$t23.1 + + ;;knr_getBlockHeader(t25) + local.get $$t22 + call $runtime.knr_getBlockHeader + local.set $$t24.1 + local.set $$t24.0 + + ;;*t26 = t27 + local.get $$t24.0 + local.get $$t24.1 + local.set $$t23.1 + local.set $$t23.0 + + ;;&t26.ptr [#0] + + ;;*t28 + local.get $$t23.0 + local.set $$t25 + + ;;local knr_Header (p) + i32.const 0 + local.set $$t26.0 + i32.const 0 + local.set $$t26.1 + + ;;knr_getBlockHeader(t29) + local.get $$t25 + call $runtime.knr_getBlockHeader + local.set $$t27.1 + local.set $$t27.0 + + ;;*t30 = t31 + local.get $$t27.0 + local.get $$t27.1 + local.set $$t26.1 + local.set $$t26.0 + + ;;jump 6 + br $$Block_5 + + end ;;$Block_5 + ;;phi [5: t25, 13: t33] #prevp_addr + local.get $$current_block + i32.const 5 + i32.eq + if (result i32) + local.get $$t22 + else + local.get $$t28 + end + local.set $$t29 + + ;;phi [5: t29, 13: t64] #p_addr + local.get $$current_block + i32.const 5 + i32.eq + if (result i32) + local.get $$t25 + else + local.get $$t30 + end + local.set $$t28 + + i32.const 6 + local.set $$current_block + + ;;&t30.size [#1] + + ;;*t34 + local.get $$t26.1 + local.set $$t31 + + ;;t35 >= t24 + local.get $$t31 + local.get $$t21 + i32.ge_u + local.set $$t32 + + ;;if t36 goto 7 else 8 + local.get $$t32 + if + br $$Block_6 + else + br $$Block_7 + end + + end ;;$Block_6 + i32.const 7 + local.set $$current_block + + ;;&t30.size [#1] + + ;;*t37 + local.get $$t26.1 + local.set $$t33 + + ;;t38 == t24 + local.get $$t33 + local.get $$t21 + i32.eq + local.set $$t34 + + ;;if t39 goto 9 else 11 + local.get $$t34 + if + br $$Block_8 + else + br $$Block_10 + end + + end ;;$Block_7 + i32.const 8 + local.set $$current_block + + ;;*knr_freep + global.get $$knr_freep + local.set $$t35 + + ;;t33 == t40 + local.get $$t28 + local.get $$t35 + i32.eq + local.set $$t36 + + ;;if t41 goto 12 else 13 + local.get $$t36 + if + br $$Block_11 + else + br $$Block_12 + end + + end ;;$Block_8 + i32.const 9 + local.set $$current_block + + ;;&t26.ptr [#0] + + ;;&t30.ptr [#0] + + ;;*t43 + local.get $$t26.0 + local.set $$t37 + + ;;*t42 = t44 + local.get $$t37 + local.set $$t23.0 + + ;;*t26 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t38.1 + local.set $$t38.0 + + ;;knr_setBlockHeader(t32, t45) + local.get $$t29 + local.get $$t38.0 + local.get $$t38.1 + call $runtime.knr_setBlockHeader + + ;;jump 10 + br $$Block_9 + + end ;;$Block_9 + ;;phi [9: t33, 11: t57] #p_addr + local.get $$current_block + i32.const 9 + i32.eq + if (result i32) + local.get $$t28 + else + local.get $$t39 + end + local.set $$t40 + + i32.const 10 + local.set $$current_block + + ;;*knr_freep = t32 + local.get $$t29 + global.set $$knr_freep + + ;;t47 + 8:u32 + local.get $$t40 + i32.const 8 + i32.add + local.set $$t41 + + ;;return t48 + local.get $$t41 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_10 + i32.const 11 + local.set $$current_block + + ;;&t30.size [#1] + + ;;*t49 + local.get $$t26.1 + local.set $$t42 + + ;;t50 - t24 + local.get $$t42 + local.get $$t21 + i32.sub + local.set $$t43 + + ;;*t49 = t51 + local.get $$t43 + local.set $$t26.1 + + ;;*t30 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t44.1 + local.set $$t44.0 + + ;;knr_setBlockHeader(t33, t52) + local.get $$t28 + local.get $$t44.0 + local.get $$t44.1 + call $runtime.knr_setBlockHeader + + ;;&t30.size [#1] + + ;;*t54 + local.get $$t26.1 + local.set $$t45 + + ;;t55 * 8:u32 + local.get $$t45 + i32.const 8 + i32.mul + local.set $$t46 + + ;;t33 + t56 + local.get $$t28 + local.get $$t46 + i32.add + local.set $$t39 + + ;;knr_getBlockHeader(t57) + local.get $$t39 + call $runtime.knr_getBlockHeader + local.set $$t47.1 + local.set $$t47.0 + + ;;*t30 = t58 + local.get $$t47.0 + local.get $$t47.1 + local.set $$t26.1 + local.set $$t26.0 + + ;;&t30.size [#1] + + ;;*t59 = t24 + local.get $$t21 + local.set $$t26.1 + + ;;*t30 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t48.1 + local.set $$t48.0 + + ;;knr_setBlockHeader(t57, t60) + local.get $$t39 + local.get $$t48.0 + local.get $$t48.1 + call $runtime.knr_setBlockHeader + + ;;jump 10 + i32.const 10 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_11 + i32.const 12 + local.set $$current_block + + ;;return 0:u32 + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_12 + i32.const 13 + local.set $$current_block + + ;;knr_getBlockHeader(t33) + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t49.1 + local.set $$t49.0 + + ;;*t26 = t62 + local.get $$t49.0 + local.get $$t49.1 + local.set $$t23.1 + local.set $$t23.0 + + ;;&t30.ptr [#0] + + ;;*t63 + local.get $$t26.0 + local.set $$t30 + + ;;knr_getBlockHeader(t64) + local.get $$t30 + call $runtime.knr_getBlockHeader + local.set $$t50.1 + local.set $$t50.0 + + ;;*t30 = t65 + local.get $$t50.0 + local.get $$t50.1 + local.set $$t26.1 + local.set $$t26.0 + + ;;jump 6 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_13 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;runtime.malloc + +(func $runtime.mapLen (param $m.0 i32) (param $m.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;m == nil:*mapImp + local.get $m.1 + i32.const 0 + i32.eq + local.set $$t0 + + ;;if t0 goto 1 else 2 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;return 0:int + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;&m.nodes [#0] + local.get $m.0 + call $runtime.Block.Retain + local.get $m.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;*t1 + local.get $$t1.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=4 align=4 + local.get $$t1.1 + i32.load offset=8 align=4 + local.get $$t1.1 + i32.load offset=12 align=4 + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;len(t2) + local.get $$t2.2 + local.set $$t3 + + ;;return t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release +) ;;runtime.mapLen + +(func $$void.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load offset=0 align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store offset=0 align=1 +) ;;$void.$$block.$$onFree + +(func $$void.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + call_indirect (type $$onFree) +) ;;$void.$ref.underlying.$$onFree + +(func $$i`0`.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect (type $$onFree) +) ;;$i`0`.underlying.$$onFree + +(func $$runtime.mapNode.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect (type $$onFree) +) ;;$runtime.mapNode.$$onFree + +(func $runtime.mapLookup (param $m.0 i32) (param $m.1 i32) (param $k.0.0 i32) (param $k.0.1 i32) (param $k.1 i32) (param $k.2 i32) (result i32 i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0.0 i32) + (local $$ret_0.0.1 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_1 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0.0.0 i32) + (local $$t9.0.0.1 i32) + (local $$t9.0.1 i32) + (local $$t9.0.2 i32) + (local $$t9.1.0.0 i32) + (local $$t9.1.0.1 i32) + (local $$t9.1.1 i32) + (local $$t9.1.2 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0.0 i32) + (local $$t11.0.1 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0.0 i32) + (local $$t15.0.1 i32) + (local $$t15.1 i32) + (local $$t15.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;m == nil:*mapImp + local.get $m.1 + i32.const 0 + i32.eq + local.set $$t0 + + ;;if t0 goto 1 else 2 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;return nil:interface{}, false:bool + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.set $$ret_0.0.1 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.set $$ret_0.0.0 + i32.const 0 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;local mapNode (n) + i32.const 48 + call $runtime.HeapAlloc + i32.const 1 + i32.const 7 + i32.const 32 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;&m.nodes [#0] + local.get $m.0 + call $runtime.Block.Retain + local.get $m.1 + i32.const 0 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;*t2 + local.get $$t2.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t2.1 + i32.load offset=4 align=4 + local.get $$t2.1 + i32.load offset=8 align=4 + local.get $$t2.1 + i32.load offset=12 align=4 + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + + ;;len(t3) + local.get $$t3.2 + local.set $$t4 + + ;;jump 3 + br $$Block_2 + + end ;;$Block_2 + ;;phi [2: -1:int, 4: t6] + local.get $$current_block + i32.const 2 + i32.eq + if (result i32) + i32.const -1 + else + local.get $$t5 + end + local.set $$t6 + + i32.const 3 + local.set $$current_block + + ;;t5 + 1:int + local.get $$t6 + i32.const 1 + i32.add + local.set $$t5 + + ;;t6 < t4 + local.get $$t5 + local.get $$t4 + i32.lt_s + local.set $$t7 + + ;;if t7 goto 4 else 5 + local.get $$t7 + if + br $$Block_3 + else + br $$Block_4 + end + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;&t3[t6] + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 32 + local.get $$t5 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + + ;;*t8 + local.get $$t8.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t8.1 + i32.load offset=4 align=4 + local.get $$t8.1 + i32.load offset=8 align=4 + local.get $$t8.1 + i32.load offset=12 align=4 + local.get $$t8.1 + i32.load offset=16 align=4 + call $runtime.Block.Retain + local.get $$t8.1 + i32.load offset=20 align=4 + local.get $$t8.1 + i32.load offset=24 align=4 + local.get $$t8.1 + i32.load offset=28 align=4 + local.set $$t9.1.2 + local.set $$t9.1.1 + local.set $$t9.1.0.1 + local.get $$t9.1.0.0 + call $runtime.Block.Release + local.set $$t9.1.0.0 + local.set $$t9.0.2 + local.set $$t9.0.1 + local.set $$t9.0.0.1 + local.get $$t9.0.0.0 + call $runtime.Block.Release + local.set $$t9.0.0.0 + + ;;*t1 = t9 + local.get $$t1.1 + local.get $$t9.0.0.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t1.1 + local.get $$t9.0.0.1 + i32.store offset=4 align=4 + local.get $$t1.1 + local.get $$t9.0.1 + i32.store offset=8 align=4 + local.get $$t1.1 + local.get $$t9.0.2 + i32.store offset=12 align=4 + local.get $$t1.1 + local.get $$t9.1.0.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=16 align=1 + call $runtime.Block.Release + i32.store offset=16 align=1 + local.get $$t1.1 + local.get $$t9.1.0.1 + i32.store offset=20 align=4 + local.get $$t1.1 + local.get $$t9.1.1 + i32.store offset=24 align=4 + local.get $$t1.1 + local.get $$t9.1.2 + i32.store offset=28 align=4 + + ;;&t1.k [#0] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + + ;;*t10 + local.get $$t10.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t10.1 + i32.load offset=4 align=4 + local.get $$t10.1 + i32.load offset=8 align=4 + local.get $$t10.1 + i32.load offset=12 align=4 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0.1 + local.get $$t11.0.0 + call $runtime.Block.Release + local.set $$t11.0.0 + + ;;Compare(t11, k) + local.get $$t11.0.0 + local.get $$t11.0.1 + local.get $$t11.1 + local.get $$t11.2 + local.get $k.0.0 + local.get $k.0.1 + local.get $k.1 + local.get $k.2 + call $runtime.Compare + local.set $$t12 + + ;;t12 == 0:i32 + local.get $$t12 + i32.const 0 + i32.eq + local.set $$t13 + + ;;if t13 goto 6 else 3 + local.get $$t13 + if + br $$Block_5 + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_4 + i32.const 5 + local.set $$current_block + + ;;return nil:interface{}, false:bool + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.set $$ret_0.0.1 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.set $$ret_0.0.0 + i32.const 0 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_5 + i32.const 6 + local.set $$current_block + + ;;&t1.v [#1] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + + ;;*t14 + local.get $$t14.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t14.1 + i32.load offset=4 align=4 + local.get $$t14.1 + i32.load offset=8 align=4 + local.get $$t14.1 + i32.load offset=12 align=4 + local.set $$t15.2 + local.set $$t15.1 + local.set $$t15.0.1 + local.get $$t15.0.0 + call $runtime.Block.Release + local.set $$t15.0.0 + + ;;return t15, true:bool + local.get $$t15.0.0 + call $runtime.Block.Retain + local.get $$t15.0.1 + local.get $$t15.1 + local.get $$t15.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.set $$ret_0.0.1 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.set $$ret_0.0.0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + + end ;;$Block_6 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0.0.0 + call $runtime.Block.Retain + local.get $$ret_0.0.1 + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_1 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.1.0.0 + call $runtime.Block.Release + local.get $$t9.0.0.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0.0 + call $runtime.Block.Release +) ;;runtime.mapLookup + +(func $$runtime.mapNode.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load offset=0 align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store offset=0 align=1 +) ;;$runtime.mapNode.$$block.$$onFree + +(func $$runtime.mapNode.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + call_indirect (type $$onFree) +) ;;$runtime.mapNode.$slice.underlying.$$onFree + +(func $$runtime.mapImp.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 9 + call_indirect (type $$onFree) +) ;;$runtime.mapImp.$$onFree + +(func $runtime.mapMake (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;new mapImp (m) + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 10 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;return t0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release +) ;;runtime.mapMake + +(func $$runtime.mapImp.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load offset=0 align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store offset=0 align=1 +) ;;$runtime.mapImp.$$block.$$onFree + +(func $$runtime.mapImp.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 11 + call_indirect (type $$onFree) +) ;;$runtime.mapImp.$ref.underlying.$$onFree + +(func $$runtime.mapIter.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 12 + call_indirect (type $$onFree) +) ;;$runtime.mapIter.$$onFree + +(func $runtime.mapNext (param $iter.0.0 i32) (param $iter.0.1 i32) (param $iter.1 i32) (result i32 i32 i32 i32 i32 i32 i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1.0.0 i32) + (local $$ret_1.0.1 i32) + (local $$ret_1.1 i32) + (local $$ret_1.2 i32) + (local $$ret_2.0.0 i32) + (local $$ret_2.0.1 i32) + (local $$ret_2.1 i32) + (local $$ret_2.2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t20.2 i32) + (local $$t20.3 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0.0.0 i32) + (local $$t24.0.0.1 i32) + (local $$t24.0.1 i32) + (local $$t24.0.2 i32) + (local $$t24.1.0.0 i32) + (local $$t24.1.0.1 i32) + (local $$t24.1.1 i32) + (local $$t24.1.2 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26.0.0 i32) + (local $$t26.0.1 i32) + (local $$t26.1 i32) + (local $$t26.2 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0.0 i32) + (local $$t28.0.1 i32) + (local $$t28.1 i32) + (local $$t28.2 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;local mapIter (iter) + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 13 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;*t0 = iter + local.get $$t0.1 + local.get $iter.0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t0.1 + local.get $iter.0.1 + i32.store offset=4 align=4 + local.get $$t0.1 + local.get $iter.1 + i32.store offset=8 align=4 + + ;;&t0.m [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;*t1 + local.get $$t1.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=4 align=4 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;t2 == nil:*mapImp + local.get $$t2.1 + i32.const 0 + i32.eq + local.set $$t3 + + ;;if t3 goto 1 else 2 + local.get $$t3 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;&t0.pos [#1] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + + ;;*t4 + local.get $$t4.1 + i32.load offset=0 align=4 + local.set $$t5 + + ;;return false:bool, nil:interface{}, nil:interface{}, t5 + i32.const 0 + local.set $$ret_0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.set $$ret_1.2 + local.set $$ret_1.1 + local.set $$ret_1.0.1 + local.get $$ret_1.0.0 + call $runtime.Block.Release + local.set $$ret_1.0.0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.set $$ret_2.2 + local.set $$ret_2.1 + local.set $$ret_2.0.1 + local.get $$ret_2.0.0 + call $runtime.Block.Release + local.set $$ret_2.0.0 + local.get $$t5 + local.set $$ret_3 + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;&t0.pos [#1] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + + ;;*t6 + local.get $$t6.1 + i32.load offset=0 align=4 + local.set $$t7 + + ;;&t0.m [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + + ;;*t8 + local.get $$t8.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t8.1 + i32.load offset=4 align=4 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + + ;;&t9.nodes [#0] + local.get $$t9.0 + call $runtime.Block.Retain + local.get $$t9.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + + ;;*t10 + local.get $$t10.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t10.1 + i32.load offset=4 align=4 + local.get $$t10.1 + i32.load offset=8 align=4 + local.get $$t10.1 + i32.load offset=12 align=4 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + + ;;len(t11) + local.get $$t11.2 + local.set $$t12 + + ;;t7 >= t12 + local.get $$t7 + local.get $$t12 + i32.ge_s + local.set $$t13 + + ;;if t13 goto 3 else 4 + local.get $$t13 + if + br $$Block_2 + else + br $$Block_3 + end + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;&t0.pos [#1] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + + ;;*t14 + local.get $$t14.1 + i32.load offset=0 align=4 + local.set $$t15 + + ;;return false:bool, nil:interface{}, nil:interface{}, t15 + i32.const 0 + local.set $$ret_0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.set $$ret_1.2 + local.set $$ret_1.1 + local.set $$ret_1.0.1 + local.get $$ret_1.0.0 + call $runtime.Block.Release + local.set $$ret_1.0.0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.set $$ret_2.2 + local.set $$ret_2.1 + local.set $$ret_2.0.1 + local.get $$ret_2.0.0 + call $runtime.Block.Release + local.set $$ret_2.0.0 + local.get $$t15 + local.set $$ret_3 + br $$BlockFnBody + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;local mapNode (node) + i32.const 48 + call $runtime.HeapAlloc + i32.const 1 + i32.const 7 + i32.const 32 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + + ;;&t0.m [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + + ;;*t17 + local.get $$t17.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t17.1 + i32.load offset=4 align=4 + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + + ;;&t18.nodes [#0] + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + i32.const 0 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + + ;;*t19 + local.get $$t19.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t19.1 + i32.load offset=4 align=4 + local.get $$t19.1 + i32.load offset=8 align=4 + local.get $$t19.1 + i32.load offset=12 align=4 + local.set $$t20.3 + local.set $$t20.2 + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + + ;;&t0.pos [#1] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + + ;;*t21 + local.get $$t21.1 + i32.load offset=0 align=4 + local.set $$t22 + + ;;&t20[t22] + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 32 + local.get $$t22 + i32.mul + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + + ;;*t23 + local.get $$t23.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t23.1 + i32.load offset=4 align=4 + local.get $$t23.1 + i32.load offset=8 align=4 + local.get $$t23.1 + i32.load offset=12 align=4 + local.get $$t23.1 + i32.load offset=16 align=4 + call $runtime.Block.Retain + local.get $$t23.1 + i32.load offset=20 align=4 + local.get $$t23.1 + i32.load offset=24 align=4 + local.get $$t23.1 + i32.load offset=28 align=4 + local.set $$t24.1.2 + local.set $$t24.1.1 + local.set $$t24.1.0.1 + local.get $$t24.1.0.0 + call $runtime.Block.Release + local.set $$t24.1.0.0 + local.set $$t24.0.2 + local.set $$t24.0.1 + local.set $$t24.0.0.1 + local.get $$t24.0.0.0 + call $runtime.Block.Release + local.set $$t24.0.0.0 + + ;;*t16 = t24 + local.get $$t16.1 + local.get $$t24.0.0.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t16.1 + local.get $$t24.0.0.1 + i32.store offset=4 align=4 + local.get $$t16.1 + local.get $$t24.0.1 + i32.store offset=8 align=4 + local.get $$t16.1 + local.get $$t24.0.2 + i32.store offset=12 align=4 + local.get $$t16.1 + local.get $$t24.1.0.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.load offset=16 align=1 + call $runtime.Block.Release + i32.store offset=16 align=1 + local.get $$t16.1 + local.get $$t24.1.0.1 + i32.store offset=20 align=4 + local.get $$t16.1 + local.get $$t24.1.1 + i32.store offset=24 align=4 + local.get $$t16.1 + local.get $$t24.1.2 + i32.store offset=28 align=4 + + ;;&t16.k [#0] + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.const 0 + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + + ;;*t25 + local.get $$t25.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t25.1 + i32.load offset=4 align=4 + local.get $$t25.1 + i32.load offset=8 align=4 + local.get $$t25.1 + i32.load offset=12 align=4 + local.set $$t26.2 + local.set $$t26.1 + local.set $$t26.0.1 + local.get $$t26.0.0 + call $runtime.Block.Release + local.set $$t26.0.0 + + ;;&t16.v [#1] + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.const 16 + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + + ;;*t27 + local.get $$t27.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t27.1 + i32.load offset=4 align=4 + local.get $$t27.1 + i32.load offset=8 align=4 + local.get $$t27.1 + i32.load offset=12 align=4 + local.set $$t28.2 + local.set $$t28.1 + local.set $$t28.0.1 + local.get $$t28.0.0 + call $runtime.Block.Release + local.set $$t28.0.0 + + ;;&t0.pos [#1] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + + ;;*t29 + local.get $$t29.1 + i32.load offset=0 align=4 + local.set $$t30 + + ;;t30 + 1:int + local.get $$t30 + i32.const 1 + i32.add + local.set $$t31 + + ;;return true:bool, t26, t28, t31 + i32.const 1 + local.set $$ret_0 + local.get $$t26.0.0 + call $runtime.Block.Retain + local.get $$t26.0.1 + local.get $$t26.1 + local.get $$t26.2 + local.set $$ret_1.2 + local.set $$ret_1.1 + local.set $$ret_1.0.1 + local.get $$ret_1.0.0 + call $runtime.Block.Release + local.set $$ret_1.0.0 + local.get $$t28.0.0 + call $runtime.Block.Retain + local.get $$t28.0.1 + local.get $$t28.1 + local.get $$t28.2 + local.set $$ret_2.2 + local.set $$ret_2.1 + local.set $$ret_2.0.1 + local.get $$ret_2.0.0 + call $runtime.Block.Release + local.set $$ret_2.0.0 + local.get $$t31 + local.set $$ret_3 + br $$BlockFnBody + + end ;;$Block_4 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1.0.0 + call $runtime.Block.Retain + local.get $$ret_1.0.1 + local.get $$ret_1.1 + local.get $$ret_1.2 + local.get $$ret_2.0.0 + call $runtime.Block.Retain + local.get $$ret_2.0.1 + local.get $$ret_2.1 + local.get $$ret_2.2 + local.get $$ret_3 + local.get $$ret_1.0.0 + call $runtime.Block.Release + local.get $$ret_2.0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.1.0.0 + call $runtime.Block.Release + local.get $$t24.0.0.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release +) ;;runtime.mapNext + +(func $$runtime.mapNode.$array1.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect (type $$onFree) +) ;;$runtime.mapNode.$array1.underlying.$$onFree + +(func $$runtime.mapNode.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item.0.0.0 i32) + (local $item.0.0.1 i32) + (local $item.0.1 i32) + (local $item.0.2 i32) + (local $item.1.0.0 i32) + (local $item.1.0.1 i32) + (local $item.1.1 i32) + (local $item.1.2 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if (result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 32 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + else + end + local.get $src + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $src + i32.load offset=4 align=4 + local.get $src + i32.load offset=8 align=4 + local.get $src + i32.load offset=12 align=4 + local.get $src + i32.load offset=16 align=4 + call $runtime.Block.Retain + local.get $src + i32.load offset=20 align=4 + local.get $src + i32.load offset=24 align=4 + local.get $src + i32.load offset=28 align=4 + local.set $item.1.2 + local.set $item.1.1 + local.set $item.1.0.1 + local.get $item.1.0.0 + call $runtime.Block.Release + local.set $item.1.0.0 + local.set $item.0.2 + local.set $item.0.1 + local.set $item.0.0.1 + local.get $item.0.0.0 + call $runtime.Block.Release + local.set $item.0.0.0 + local.get $dest + local.get $item.0.0.0 + call $runtime.Block.Retain + local.get $dest + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $dest + local.get $item.0.0.1 + i32.store offset=4 align=4 + local.get $dest + local.get $item.0.1 + i32.store offset=8 align=4 + local.get $dest + local.get $item.0.2 + i32.store offset=12 align=4 + local.get $dest + local.get $item.1.0.0 + call $runtime.Block.Retain + local.get $dest + i32.load offset=16 align=1 + call $runtime.Block.Release + i32.store offset=16 align=1 + local.get $dest + local.get $item.1.0.1 + i32.store offset=20 align=4 + local.get $dest + local.get $item.1.1 + i32.store offset=24 align=4 + local.get $dest + local.get $item.1.2 + i32.store offset=28 align=4 + local.get $src + i32.const 32 + i32.add + local.set $src + local.get $dest + i32.const 32 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end ;;loop1 + end ;;block1 + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 32 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 7 + i32.const 32 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + else + end + local.get $src + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $src + i32.load offset=4 align=4 + local.get $src + i32.load offset=8 align=4 + local.get $src + i32.load offset=12 align=4 + local.get $src + i32.load offset=16 align=4 + call $runtime.Block.Retain + local.get $src + i32.load offset=20 align=4 + local.get $src + i32.load offset=24 align=4 + local.get $src + i32.load offset=28 align=4 + local.set $item.1.2 + local.set $item.1.1 + local.set $item.1.0.1 + local.get $item.1.0.0 + call $runtime.Block.Release + local.set $item.1.0.0 + local.set $item.0.2 + local.set $item.0.1 + local.set $item.0.0.1 + local.get $item.0.0.0 + call $runtime.Block.Release + local.set $item.0.0.0 + local.get $dest + local.get $item.0.0.0 + call $runtime.Block.Retain + local.get $dest + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $dest + local.get $item.0.0.1 + i32.store offset=4 align=4 + local.get $dest + local.get $item.0.1 + i32.store offset=8 align=4 + local.get $dest + local.get $item.0.2 + i32.store offset=12 align=4 + local.get $dest + local.get $item.1.0.0 + call $runtime.Block.Retain + local.get $dest + i32.load offset=16 align=1 + call $runtime.Block.Release + i32.store offset=16 align=1 + local.get $dest + local.get $item.1.0.1 + i32.store offset=20 align=4 + local.get $dest + local.get $item.1.1 + i32.store offset=24 align=4 + local.get $dest + local.get $item.1.2 + i32.store offset=28 align=4 + local.get $src + i32.const 32 + i32.add + local.set $src + local.get $dest + i32.const 32 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end ;;loop2 + end ;;block2 + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + else + end + local.get $src + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $src + i32.load offset=4 align=4 + local.get $src + i32.load offset=8 align=4 + local.get $src + i32.load offset=12 align=4 + local.get $src + i32.load offset=16 align=4 + call $runtime.Block.Retain + local.get $src + i32.load offset=20 align=4 + local.get $src + i32.load offset=24 align=4 + local.get $src + i32.load offset=28 align=4 + local.set $item.1.2 + local.set $item.1.1 + local.set $item.1.0.1 + local.get $item.1.0.0 + call $runtime.Block.Release + local.set $item.1.0.0 + local.set $item.0.2 + local.set $item.0.1 + local.set $item.0.0.1 + local.get $item.0.0.0 + call $runtime.Block.Release + local.set $item.0.0.0 + local.get $dest + local.get $item.0.0.0 + call $runtime.Block.Retain + local.get $dest + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $dest + local.get $item.0.0.1 + i32.store offset=4 align=4 + local.get $dest + local.get $item.0.1 + i32.store offset=8 align=4 + local.get $dest + local.get $item.0.2 + i32.store offset=12 align=4 + local.get $dest + local.get $item.1.0.0 + call $runtime.Block.Retain + local.get $dest + i32.load offset=16 align=1 + call $runtime.Block.Release + i32.store offset=16 align=1 + local.get $dest + local.get $item.1.0.1 + i32.store offset=20 align=4 + local.get $dest + local.get $item.1.1 + i32.store offset=24 align=4 + local.get $dest + local.get $item.1.2 + i32.store offset=28 align=4 + local.get $src + i32.const 32 + i32.add + local.set $src + local.get $dest + i32.const 32 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end ;;loop3 + end ;;block3 + end + local.get $item.1.0.0 + call $runtime.Block.Release + local.get $item.0.0.0 + call $runtime.Block.Release +) ;;$runtime.mapNode.$slice.append + +(func $runtime.mapUpdate (param $m.0 i32) (param $m.1 i32) (param $k.0.0 i32) (param $k.0.1 i32) (param $k.1 i32) (param $k.2 i32) (param $v.0.0 i32) (param $v.0.1 i32) (param $v.1 i32) (param $v.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0.0.0 i32) + (local $$t9.0.0.1 i32) + (local $$t9.0.1 i32) + (local $$t9.0.2 i32) + (local $$t9.1.0.0 i32) + (local $$t9.1.0.1 i32) + (local $$t9.1.1 i32) + (local $$t9.1.2 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0.0 i32) + (local $$t11.0.1 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t16.2 i32) + (local $$t16.3 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0.0.0 i32) + (local $$t20.0.0.1 i32) + (local $$t20.0.1 i32) + (local $$t20.0.2 i32) + (local $$t20.1.0.0 i32) + (local $$t20.1.0.1 i32) + (local $$t20.1.1 i32) + (local $$t20.1.2 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t23.2 i32) + (local $$t23.3 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t26.2 i32) + (local $$t26.3 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;m == nil:*mapImp + local.get $m.1 + i32.const 0 + i32.eq + local.set $$t0 + + ;;if t0 goto 1 else 2 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;panic "nil map.":string + i32.const 8263 + i32.const 8 + i32.const 8271 + i32.const 11 + call $$runtime.panic_ + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;local mapNode (n) + i32.const 48 + call $runtime.HeapAlloc + i32.const 1 + i32.const 7 + i32.const 32 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;&m.nodes [#0] + local.get $m.0 + call $runtime.Block.Retain + local.get $m.1 + i32.const 0 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;*t2 + local.get $$t2.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t2.1 + i32.load offset=4 align=4 + local.get $$t2.1 + i32.load offset=8 align=4 + local.get $$t2.1 + i32.load offset=12 align=4 + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + + ;;len(t3) + local.get $$t3.2 + local.set $$t4 + + ;;jump 3 + br $$Block_2 + + end ;;$Block_2 + ;;phi [2: -1:int, 4: t6] + local.get $$current_block + i32.const 2 + i32.eq + if (result i32) + i32.const -1 + else + local.get $$t5 + end + local.set $$t6 + + i32.const 3 + local.set $$current_block + + ;;t5 + 1:int + local.get $$t6 + i32.const 1 + i32.add + local.set $$t5 + + ;;t6 < t4 + local.get $$t5 + local.get $$t4 + i32.lt_s + local.set $$t7 + + ;;if t7 goto 4 else 5 + local.get $$t7 + if + br $$Block_3 + else + br $$Block_4 + end + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;&t3[t6] + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 32 + local.get $$t5 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + + ;;*t8 + local.get $$t8.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t8.1 + i32.load offset=4 align=4 + local.get $$t8.1 + i32.load offset=8 align=4 + local.get $$t8.1 + i32.load offset=12 align=4 + local.get $$t8.1 + i32.load offset=16 align=4 + call $runtime.Block.Retain + local.get $$t8.1 + i32.load offset=20 align=4 + local.get $$t8.1 + i32.load offset=24 align=4 + local.get $$t8.1 + i32.load offset=28 align=4 + local.set $$t9.1.2 + local.set $$t9.1.1 + local.set $$t9.1.0.1 + local.get $$t9.1.0.0 + call $runtime.Block.Release + local.set $$t9.1.0.0 + local.set $$t9.0.2 + local.set $$t9.0.1 + local.set $$t9.0.0.1 + local.get $$t9.0.0.0 + call $runtime.Block.Release + local.set $$t9.0.0.0 + + ;;*t1 = t9 + local.get $$t1.1 + local.get $$t9.0.0.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t1.1 + local.get $$t9.0.0.1 + i32.store offset=4 align=4 + local.get $$t1.1 + local.get $$t9.0.1 + i32.store offset=8 align=4 + local.get $$t1.1 + local.get $$t9.0.2 + i32.store offset=12 align=4 + local.get $$t1.1 + local.get $$t9.1.0.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=16 align=1 + call $runtime.Block.Release + i32.store offset=16 align=1 + local.get $$t1.1 + local.get $$t9.1.0.1 + i32.store offset=20 align=4 + local.get $$t1.1 + local.get $$t9.1.1 + i32.store offset=24 align=4 + local.get $$t1.1 + local.get $$t9.1.2 + i32.store offset=28 align=4 + + ;;&t1.k [#0] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + + ;;*t10 + local.get $$t10.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t10.1 + i32.load offset=4 align=4 + local.get $$t10.1 + i32.load offset=8 align=4 + local.get $$t10.1 + i32.load offset=12 align=4 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0.1 + local.get $$t11.0.0 + call $runtime.Block.Release + local.set $$t11.0.0 + + ;;Compare(t11, k) + local.get $$t11.0.0 + local.get $$t11.0.1 + local.get $$t11.1 + local.get $$t11.2 + local.get $k.0.0 + local.get $k.0.1 + local.get $k.1 + local.get $k.2 + call $runtime.Compare + local.set $$t12 + + ;;t12 == 0:i32 + local.get $$t12 + i32.const 0 + i32.eq + local.set $$t13 + + ;;if t13 goto 6 else 3 + local.get $$t13 + if + br $$Block_5 + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_4 + i32.const 5 + local.set $$current_block + + ;;&m.nodes [#0] + local.get $m.0 + call $runtime.Block.Retain + local.get $m.1 + i32.const 0 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + + ;;&m.nodes [#0] + local.get $m.0 + call $runtime.Block.Retain + local.get $m.1 + i32.const 0 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + + ;;*t15 + local.get $$t15.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t15.1 + i32.load offset=4 align=4 + local.get $$t15.1 + i32.load offset=8 align=4 + local.get $$t15.1 + i32.load offset=12 align=4 + local.set $$t16.3 + local.set $$t16.2 + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + + ;;local mapNode (complit) + i32.const 48 + call $runtime.HeapAlloc + i32.const 1 + i32.const 7 + i32.const 32 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + + ;;&t17.k [#0] + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 0 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + + ;;&t17.v [#1] + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 16 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + + ;;*t18 = k + local.get $$t18.1 + local.get $k.0.0 + call $runtime.Block.Retain + local.get $$t18.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t18.1 + local.get $k.0.1 + i32.store offset=4 align=4 + local.get $$t18.1 + local.get $k.1 + i32.store offset=8 align=4 + local.get $$t18.1 + local.get $k.2 + i32.store offset=12 align=4 + + ;;*t19 = v + local.get $$t19.1 + local.get $v.0.0 + call $runtime.Block.Retain + local.get $$t19.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t19.1 + local.get $v.0.1 + i32.store offset=4 align=4 + local.get $$t19.1 + local.get $v.1 + i32.store offset=8 align=4 + local.get $$t19.1 + local.get $v.2 + i32.store offset=12 align=4 + + ;;*t17 + local.get $$t17.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t17.1 + i32.load offset=4 align=4 + local.get $$t17.1 + i32.load offset=8 align=4 + local.get $$t17.1 + i32.load offset=12 align=4 + local.get $$t17.1 + i32.load offset=16 align=4 + call $runtime.Block.Retain + local.get $$t17.1 + i32.load offset=20 align=4 + local.get $$t17.1 + i32.load offset=24 align=4 + local.get $$t17.1 + i32.load offset=28 align=4 + local.set $$t20.1.2 + local.set $$t20.1.1 + local.set $$t20.1.0.1 + local.get $$t20.1.0.0 + call $runtime.Block.Release + local.set $$t20.1.0.0 + local.set $$t20.0.2 + local.set $$t20.0.1 + local.set $$t20.0.0.1 + local.get $$t20.0.0.0 + call $runtime.Block.Release + local.set $$t20.0.0.0 + + ;;new [1]mapNode (varargs) + i32.const 48 + call $runtime.HeapAlloc + i32.const 1 + i32.const 14 + i32.const 32 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + + ;;&t21[0:int] + local.get $$t21.0 + call $runtime.Block.Retain + local.get $$t21.1 + i32.const 32 + i32.const 0 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + + ;;*t22 = t20 + local.get $$t22.1 + local.get $$t20.0.0.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t22.1 + local.get $$t20.0.0.1 + i32.store offset=4 align=4 + local.get $$t22.1 + local.get $$t20.0.1 + i32.store offset=8 align=4 + local.get $$t22.1 + local.get $$t20.0.2 + i32.store offset=12 align=4 + local.get $$t22.1 + local.get $$t20.1.0.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.load offset=16 align=1 + call $runtime.Block.Release + i32.store offset=16 align=1 + local.get $$t22.1 + local.get $$t20.1.0.1 + i32.store offset=20 align=4 + local.get $$t22.1 + local.get $$t20.1.1 + i32.store offset=24 align=4 + local.get $$t22.1 + local.get $$t20.1.2 + i32.store offset=28 align=4 + + ;;slice t21[:] + local.get $$t21.0 + call $runtime.Block.Retain + local.get $$t21.1 + i32.const 32 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t23.3 + local.set $$t23.2 + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + + ;;append(t16, t23...) + local.get $$t16.0 + local.get $$t16.1 + local.get $$t16.2 + local.get $$t16.3 + local.get $$t23.0 + local.get $$t23.1 + local.get $$t23.2 + local.get $$t23.3 + call $$runtime.mapNode.$slice.append + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + + ;;*t14 = t24 + local.get $$t14.1 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t14.1 + local.get $$t24.1 + i32.store offset=4 align=4 + local.get $$t14.1 + local.get $$t24.2 + i32.store offset=8 align=4 + local.get $$t14.1 + local.get $$t24.3 + i32.store offset=12 align=4 + + ;;return + br $$BlockFnBody + + end ;;$Block_5 + i32.const 6 + local.set $$current_block + + ;;&m.nodes [#0] + local.get $m.0 + call $runtime.Block.Retain + local.get $m.1 + i32.const 0 + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + + ;;*t25 + local.get $$t25.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t25.1 + i32.load offset=4 align=4 + local.get $$t25.1 + i32.load offset=8 align=4 + local.get $$t25.1 + i32.load offset=12 align=4 + local.set $$t26.3 + local.set $$t26.2 + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + + ;;&t26[t6] + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + i32.const 32 + local.get $$t5 + i32.mul + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + + ;;&t27.v [#1] + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + i32.const 16 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + + ;;*t28 = v + local.get $$t28.1 + local.get $v.0.0 + call $runtime.Block.Retain + local.get $$t28.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t28.1 + local.get $v.0.1 + i32.store offset=4 align=4 + local.get $$t28.1 + local.get $v.1 + i32.store offset=8 align=4 + local.get $$t28.1 + local.get $v.2 + i32.store offset=12 align=4 + + ;;return + br $$BlockFnBody + + end ;;$Block_6 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.1.0.0 + call $runtime.Block.Release + local.get $$t9.0.0.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.1.0.0 + call $runtime.Block.Release + local.get $$t20.0.0.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release +) ;;runtime.mapUpdate + +(func $runtime.next_rune (param $iter.0 i32) (param $iter.1 i32) (param $iter.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$ret_2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101 i32) + (local $$t102 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106 i32) + (local $$t107 i32) + (local $$t108 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110 i32) + (local $$t111 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116 i32) + (local $$t117 i32) + (local $$t118 i32) + (local $$t119 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121 i32) + (local $$t122 i32) + (local $$t123 i32) + (local $$t124 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126 i32) + (local $$t127 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;local stringIter (iter) + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;*t0 = iter + local.get $$t0.1 + local.get $iter.0 + i32.store offset=0 align=4 + local.get $$t0.1 + local.get $iter.1 + i32.store offset=4 align=4 + local.get $$t0.1 + local.get $iter.2 + i32.store offset=8 align=4 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;*t1 + local.get $$t1.1 + i32.load offset=0 align=4 + local.set $$t2 + + ;;&t0.len [#1] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + + ;;*t3 + local.get $$t3.1 + i32.load offset=0 align=4 + local.set $$t4 + + ;;t2 >= t4 + local.get $$t2 + local.get $$t4 + i32.ge_s + local.set $$t5 + + ;;if t5 goto 1 else 2 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + + ;;*t6 + local.get $$t6.1 + i32.load offset=0 align=4 + local.set $$t7 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + + ;;*t8 + local.get $$t8.1 + i32.load offset=0 align=4 + local.set $$t9 + + ;;return false:bool, t7, 0:rune, t9 + i32.const 0 + local.set $$ret_0 + local.get $$t7 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + local.get $$t9 + local.set $$ret_3 + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;&t0.ptr [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + + ;;*t10 + local.get $$t10.1 + i32.load offset=0 align=4 + local.set $$t11 + + ;;convert u32 <- uint (t11) + local.get $$t11 + local.set $$t12 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + + ;;*t13 + local.get $$t13.1 + i32.load offset=0 align=4 + local.set $$t14 + + ;;convert u32 <- int (t14) + local.get $$t14 + local.set $$t15 + + ;;t12 + t15 + local.get $$t12 + local.get $$t15 + i32.add + local.set $$t16 + + ;;get_u8(t16) + local.get $$t16 + call $runtime.get_u8 + local.set $$t17 + + ;;convert i32 <- u8 (t17) + local.get $$t17 + local.set $$t18 + + ;;t18 & 128:i32 + local.get $$t18 + i32.const 128 + i32.and + local.set $$t19 + + ;;t19 == 0:i32 + local.get $$t19 + i32.const 0 + i32.eq + local.set $$t20 + + ;;if t20 goto 3 else 4 + local.get $$t20 + if + br $$Block_2 + else + br $$Block_3 + end + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + + ;;*t21 + local.get $$t21.1 + i32.load offset=0 align=4 + local.set $$t22 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + + ;;*t23 + local.get $$t23.1 + i32.load offset=0 align=4 + local.set $$t24 + + ;;t24 + 1:int + local.get $$t24 + i32.const 1 + i32.add + local.set $$t25 + + ;;return true:bool, t22, t18, t25 + i32.const 1 + local.set $$ret_0 + local.get $$t22 + local.set $$ret_1 + local.get $$t18 + local.set $$ret_2 + local.get $$t25 + local.set $$ret_3 + br $$BlockFnBody + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;t18 & 224:i32 + local.get $$t18 + i32.const 224 + i32.and + local.set $$t26 + + ;;t26 == 192:i32 + local.get $$t26 + i32.const 192 + i32.eq + local.set $$t27 + + ;;if t27 goto 5 else 6 + local.get $$t27 + if + br $$Block_4 + else + br $$Block_5 + end + + end ;;$Block_4 + i32.const 5 + local.set $$current_block + + ;;t18 & 31:i32 + local.get $$t18 + i32.const 31 + i32.and + local.set $$t28 + + ;;t28 << 6:uint64 + local.get $$t28 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t29 + + ;;&t0.ptr [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + + ;;*t30 + local.get $$t30.1 + i32.load offset=0 align=4 + local.set $$t31 + + ;;convert u32 <- uint (t31) + local.get $$t31 + local.set $$t32 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + + ;;*t33 + local.get $$t33.1 + i32.load offset=0 align=4 + local.set $$t34 + + ;;convert u32 <- int (t34) + local.get $$t34 + local.set $$t35 + + ;;t32 + t35 + local.get $$t32 + local.get $$t35 + i32.add + local.set $$t36 + + ;;t36 + 1:u32 + local.get $$t36 + i32.const 1 + i32.add + local.set $$t37 + + ;;get_u8(t37) + local.get $$t37 + call $runtime.get_u8 + local.set $$t38 + + ;;convert i32 <- u8 (t38) + local.get $$t38 + local.set $$t39 + + ;;t39 & 63:i32 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + + ;;*t41 + local.get $$t41.1 + i32.load offset=0 align=4 + local.set $$t42 + + ;;t29 | t40 + local.get $$t29 + local.get $$t40 + i32.or + local.set $$t43 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + + ;;*t44 + local.get $$t44.1 + i32.load offset=0 align=4 + local.set $$t45 + + ;;t45 + 2:int + local.get $$t45 + i32.const 2 + i32.add + local.set $$t46 + + ;;return true:bool, t42, t43, t46 + i32.const 1 + local.set $$ret_0 + local.get $$t42 + local.set $$ret_1 + local.get $$t43 + local.set $$ret_2 + local.get $$t46 + local.set $$ret_3 + br $$BlockFnBody + + end ;;$Block_5 + i32.const 6 + local.set $$current_block + + ;;t18 & 240:i32 + local.get $$t18 + i32.const 240 + i32.and + local.set $$t47 + + ;;t47 == 224:i32 + local.get $$t47 + i32.const 224 + i32.eq + local.set $$t48 + + ;;if t48 goto 7 else 8 + local.get $$t48 + if + br $$Block_6 + else + br $$Block_7 + end + + end ;;$Block_6 + i32.const 7 + local.set $$current_block + + ;;t18 & 15:i32 + local.get $$t18 + i32.const 15 + i32.and + local.set $$t49 + + ;;t49 << 12:uint64 + local.get $$t49 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t50 + + ;;&t0.ptr [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + + ;;*t51 + local.get $$t51.1 + i32.load offset=0 align=4 + local.set $$t52 + + ;;convert u32 <- uint (t52) + local.get $$t52 + local.set $$t53 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + + ;;*t54 + local.get $$t54.1 + i32.load offset=0 align=4 + local.set $$t55 + + ;;convert u32 <- int (t55) + local.get $$t55 + local.set $$t56 + + ;;t53 + t56 + local.get $$t53 + local.get $$t56 + i32.add + local.set $$t57 + + ;;t57 + 1:u32 + local.get $$t57 + i32.const 1 + i32.add + local.set $$t58 + + ;;get_u8(t58) + local.get $$t58 + call $runtime.get_u8 + local.set $$t59 + + ;;convert i32 <- u8 (t59) + local.get $$t59 + local.set $$t60 + + ;;t60 & 63:i32 + local.get $$t60 + i32.const 63 + i32.and + local.set $$t61 + + ;;t61 << 6:uint64 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + + ;;&t0.ptr [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + + ;;*t63 + local.get $$t63.1 + i32.load offset=0 align=4 + local.set $$t64 + + ;;convert u32 <- uint (t64) + local.get $$t64 + local.set $$t65 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + + ;;*t66 + local.get $$t66.1 + i32.load offset=0 align=4 + local.set $$t67 + + ;;convert u32 <- int (t67) + local.get $$t67 + local.set $$t68 + + ;;t65 + t68 + local.get $$t65 + local.get $$t68 + i32.add + local.set $$t69 + + ;;t69 + 2:u32 + local.get $$t69 + i32.const 2 + i32.add + local.set $$t70 + + ;;get_u8(t70) + local.get $$t70 + call $runtime.get_u8 + local.set $$t71 + + ;;convert i32 <- u8 (t71) + local.get $$t71 + local.set $$t72 + + ;;t72 & 63:i32 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + + ;;*t74 + local.get $$t74.1 + i32.load offset=0 align=4 + local.set $$t75 + + ;;t50 | t62 + local.get $$t50 + local.get $$t62 + i32.or + local.set $$t76 + + ;;t76 | t73 + local.get $$t76 + local.get $$t73 + i32.or + local.set $$t77 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + + ;;*t78 + local.get $$t78.1 + i32.load offset=0 align=4 + local.set $$t79 + + ;;t79 + 3:int + local.get $$t79 + i32.const 3 + i32.add + local.set $$t80 + + ;;return true:bool, t75, t77, t80 + i32.const 1 + local.set $$ret_0 + local.get $$t75 + local.set $$ret_1 + local.get $$t77 + local.set $$ret_2 + local.get $$t80 + local.set $$ret_3 + br $$BlockFnBody + + end ;;$Block_7 + i32.const 8 + local.set $$current_block + + ;;t18 & 248:i32 + local.get $$t18 + i32.const 248 + i32.and + local.set $$t81 + + ;;t81 == 240:i32 + local.get $$t81 + i32.const 240 + i32.eq + local.set $$t82 + + ;;if t82 goto 9 else 10 + local.get $$t82 + if + br $$Block_8 + else + br $$Block_9 + end + + end ;;$Block_8 + i32.const 9 + local.set $$current_block + + ;;t18 & 7:i32 + local.get $$t18 + i32.const 7 + i32.and + local.set $$t83 + + ;;t83 << 18:uint64 + local.get $$t83 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t84 + + ;;&t0.ptr [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + + ;;*t85 + local.get $$t85.1 + i32.load offset=0 align=4 + local.set $$t86 + + ;;convert u32 <- uint (t86) + local.get $$t86 + local.set $$t87 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + + ;;*t88 + local.get $$t88.1 + i32.load offset=0 align=4 + local.set $$t89 + + ;;convert u32 <- int (t89) + local.get $$t89 + local.set $$t90 + + ;;t87 + t90 + local.get $$t87 + local.get $$t90 + i32.add + local.set $$t91 + + ;;t91 + 1:u32 + local.get $$t91 + i32.const 1 + i32.add + local.set $$t92 + + ;;get_u8(t92) + local.get $$t92 + call $runtime.get_u8 + local.set $$t93 + + ;;convert i32 <- u8 (t93) + local.get $$t93 + local.set $$t94 + + ;;t94 & 63:i32 + local.get $$t94 + i32.const 63 + i32.and + local.set $$t95 + + ;;t95 << 12:uint64 + local.get $$t95 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t96 + + ;;&t0.ptr [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + + ;;*t97 + local.get $$t97.1 + i32.load offset=0 align=4 + local.set $$t98 + + ;;convert u32 <- uint (t98) + local.get $$t98 + local.set $$t99 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + + ;;*t100 + local.get $$t100.1 + i32.load offset=0 align=4 + local.set $$t101 + + ;;convert u32 <- int (t101) + local.get $$t101 + local.set $$t102 + + ;;t99 + t102 + local.get $$t99 + local.get $$t102 + i32.add + local.set $$t103 + + ;;t103 + 2:u32 + local.get $$t103 + i32.const 2 + i32.add + local.set $$t104 + + ;;get_u8(t104) + local.get $$t104 + call $runtime.get_u8 + local.set $$t105 + + ;;convert i32 <- u8 (t105) + local.get $$t105 + local.set $$t106 + + ;;t106 & 63:i32 + local.get $$t106 + i32.const 63 + i32.and + local.set $$t107 + + ;;t107 << 6:uint64 + local.get $$t107 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t108 + + ;;&t0.ptr [#0] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + + ;;*t109 + local.get $$t109.1 + i32.load offset=0 align=4 + local.set $$t110 + + ;;convert u32 <- uint (t110) + local.get $$t110 + local.set $$t111 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + + ;;*t112 + local.get $$t112.1 + i32.load offset=0 align=4 + local.set $$t113 + + ;;convert u32 <- int (t113) + local.get $$t113 + local.set $$t114 + + ;;t111 + t114 + local.get $$t111 + local.get $$t114 + i32.add + local.set $$t115 + + ;;t115 + 3:u32 + local.get $$t115 + i32.const 3 + i32.add + local.set $$t116 + + ;;get_u8(t116) + local.get $$t116 + call $runtime.get_u8 + local.set $$t117 + + ;;convert i32 <- u8 (t117) + local.get $$t117 + local.set $$t118 + + ;;t118 & 63:i32 + local.get $$t118 + i32.const 63 + i32.and + local.set $$t119 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + + ;;*t120 + local.get $$t120.1 + i32.load offset=0 align=4 + local.set $$t121 + + ;;t84 | t96 + local.get $$t84 + local.get $$t96 + i32.or + local.set $$t122 + + ;;t122 | t108 + local.get $$t122 + local.get $$t108 + i32.or + local.set $$t123 + + ;;t123 | t119 + local.get $$t123 + local.get $$t119 + i32.or + local.set $$t124 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + + ;;*t125 + local.get $$t125.1 + i32.load offset=0 align=4 + local.set $$t126 + + ;;t126 + 4:int + local.get $$t126 + i32.const 4 + i32.add + local.set $$t127 + + ;;return true:bool, t121, t124, t127 + i32.const 1 + local.set $$ret_0 + local.get $$t121 + local.set $$ret_1 + local.get $$t124 + local.set $$ret_2 + local.get $$t127 + local.set $$ret_3 + br $$BlockFnBody + + end ;;$Block_9 + i32.const 10 + local.set $$current_block + + ;;return false:bool, 0:int, 0:rune, 0:int + i32.const 0 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + i32.const 0 + local.set $$ret_3 + br $$BlockFnBody + + end ;;$Block_10 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$ret_1 + local.get $$ret_2 + local.get $$ret_3 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release +) ;;runtime.next_rune + +(func $$runtime.panic_ (param $msg_ptr i32) (param $msg_len i32) (param $pos_msg_ptr i32) (param $pos_msg_len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;waPrintString("panic: ":string) + i32.const 0 + i32.const 8282 + i32.const 7 + call $$runtime.waPrintString + + ;;waPuts(msg_ptr, msg_len) + local.get $msg_ptr + local.get $msg_len + call $$runtime.waPuts + + ;;waPrintString(" (":string) + i32.const 0 + i32.const 8246 + i32.const 2 + call $$runtime.waPrintString + + ;;waPuts(pos_msg_ptr, pos_msg_len) + local.get $pos_msg_ptr + local.get $pos_msg_len + call $$runtime.waPuts + + ;;waPrintRune(41:i32) + i32.const 41 + call $$runtime.waPrintRune + + ;;waPrintRune(10:i32) + i32.const 10 + call $$runtime.waPrintRune + + ;;procExit(1:i32) + i32.const 1 + call $$runtime.procExit + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.panic_ + +(func $runtime.printBool (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;if v goto 1 else 3 + local.get $v + if + br $$Block_0 + else + br $$Block_2 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;printString("true":string) + i32.const 0 + i32.const 8289 + i32.const 4 + call $runtime.printString + + ;;jump 2 + br $$Block_1 + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;printString("false":string) + i32.const 0 + i32.const 8293 + i32.const 5 + call $runtime.printString + + ;;jump 2 + i32.const 2 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_3 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;runtime.printBool + +(func $runtime.printBytes (param $b.0 i32) (param $b.1 i32) (param $b.2 i32) (param $b.3 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;len(b) + local.get $b.2 + local.set $$t0 + + ;;t0 > 0:int + local.get $$t0 + i32.const 0 + i32.gt_s + local.set $$t1 + + ;;if t1 goto 1 else 2 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;refToPtr_byteSlice(b) + local.get $b.0 + local.get $b.1 + local.get $b.2 + local.get $b.3 + call $runtime.refToPtr_byteSlice + local.set $$t2 + + ;;convert i32 <- int (t0) + local.get $$t0 + local.set $$t3 + + ;;waPuts(t2, t3) + local.get $$t2 + local.get $$t3 + call $$runtime.waPuts + + ;;return + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;runtime.printBytes + +(func $runtime.printF64 (param $v f64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 f64) + (local $$t2 i32) + (local $$t3 f64) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 f64) + (local $$t13 i32) + (local $$t14 f64) + (local $$t15 f64) + (local $$t16 f64) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 f64) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 f64) + (local $$t27 f64) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 f64) + (local $$t31 f64) + (local $$t32 i32) + (local $$t33 f64) + (local $$t34 f64) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 f64) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 f64) + (local $$t47 f64) + (local $$t48 f64) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65.0 i32) + (local $$t65.1 i32) + (local $$t66 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t74.2 i32) + (local $$t74.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;v != v + local.get $v + local.get $v + f64.eq + i32.eqz + local.set $$t0 + + ;;if t0 goto 1 else 3 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;printString("NaN":string) + i32.const 0 + i32.const 8298 + i32.const 3 + call $runtime.printString + + ;;return + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;printString("+Inf":string) + i32.const 0 + i32.const 8301 + i32.const 4 + call $runtime.printString + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;v + v + local.get $v + local.get $v + f64.add + local.set $$t1 + + ;;t3 == v + local.get $$t1 + local.get $v + f64.eq + local.set $$t2 + + ;;if t4 goto 6 else 7 + local.get $$t2 + if + br $$Block_5 + else + br $$Block_6 + end + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;printString("-Inf":string) + i32.const 0 + i32.const 8305 + i32.const 4 + call $runtime.printString + + ;;return + br $$BlockFnBody + + end ;;$Block_4 + i32.const 5 + local.set $$current_block + + ;;v + v + local.get $v + local.get $v + f64.add + local.set $$t3 + + ;;t6 == v + local.get $$t3 + local.get $v + f64.eq + local.set $$t4 + + ;;if t7 goto 9 else 10 + local.get $$t4 + if + br $$Block_8 + else + br $$Block_9 + end + + end ;;$Block_5 + i32.const 6 + local.set $$current_block + + ;;v > 0:f64 + local.get $v + f64.const 0 + f64.gt + local.set $$t5 + + ;;jump 7 + br $$Block_6 + + end ;;$Block_6 + ;;phi [3: false:bool, 6: t8] #&& + local.get $$current_block + i32.const 3 + i32.eq + if (result i32) + i32.const 0 + else + local.get $$t5 + end + local.set $$t6 + + i32.const 7 + local.set $$current_block + + ;;if t9 goto 2 else 5 + local.get $$t6 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_7 + i32.const 8 + local.set $$current_block + + ;;new [14]byte (buf) + i32.const 30 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 14 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + + ;;&t10[0:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + + ;;*t11 = 43:byte + local.get $$t8.1 + i32.const 43 + i32.store8 offset=0 align=1 + + ;;v == 0:f64 + local.get $v + f64.const 0 + f64.eq + local.set $$t9 + + ;;if t12 goto 11 else 13 + local.get $$t9 + if + br $$Block_10 + else + br $$Block_12 + end + + end ;;$Block_8 + i32.const 9 + local.set $$current_block + + ;;v < 0:f64 + local.get $v + f64.const 0 + f64.lt + local.set $$t10 + + ;;jump 10 + br $$Block_9 + + end ;;$Block_9 + ;;phi [5: false:bool, 9: t13] #&& + local.get $$current_block + i32.const 5 + i32.eq + if (result i32) + i32.const 0 + else + local.get $$t10 + end + local.set $$t11 + + i32.const 10 + local.set $$current_block + + ;;if t14 goto 4 else 8 + local.get $$t11 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_10 + i32.const 11 + local.set $$current_block + + ;;1:f64 / v + f64.const 1 + local.get $v + f64.div + local.set $$t12 + + ;;t15 < 0:f64 + local.get $$t12 + f64.const 0 + f64.lt + local.set $$t13 + + ;;if t16 goto 14 else 12 + local.get $$t13 + if + br $$Block_13 + else + br $$Block_11 + end + + end ;;$Block_11 + ;;phi [11: v, 22: t35, 14: v, 24: t41] #v + local.get $$current_block + i32.const 11 + i32.eq + if (result f64) + local.get $v + else + local.get $$current_block + i32.const 22 + i32.eq + if (result f64) + local.get $$t14 + else + local.get $$current_block + i32.const 14 + i32.eq + if (result f64) + local.get $v + else + local.get $$t15 + end + end + end + local.set $$t16 + + ;;phi [11: 0:int, 22: t31, 14: 0:int, 24: t40] #e + local.get $$current_block + i32.const 11 + i32.eq + if (result i32) + i32.const 0 + else + local.get $$current_block + i32.const 22 + i32.eq + if (result i32) + local.get $$t17 + else + local.get $$current_block + i32.const 14 + i32.eq + if (result i32) + i32.const 0 + else + local.get $$t18 + end + end + end + local.set $$t19 + + i32.const 12 + local.set $$current_block + + ;;jump 27 + br $$Block_26 + + end ;;$Block_12 + i32.const 13 + local.set $$current_block + + ;;v < 0:f64 + local.get $v + f64.const 0 + f64.lt + local.set $$t20 + + ;;if t19 goto 15 else 17 + local.get $$t20 + if + br $$Block_14 + else + br $$Block_16 + end + + end ;;$Block_13 + i32.const 14 + local.set $$current_block + + ;;&t10[0:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + + ;;*t20 = 45:byte + local.get $$t21.1 + i32.const 45 + i32.store8 offset=0 align=1 + + ;;jump 12 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_14 + i32.const 15 + local.set $$current_block + + ;;-v + f64.const 0 + local.get $v + f64.sub + local.set $$t22 + + ;;&t10[0:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + + ;;*t22 = 45:byte + local.get $$t23.1 + i32.const 45 + i32.store8 offset=0 align=1 + + ;;jump 17 + br $$Block_16 + + end ;;$Block_15 + i32.const 16 + local.set $$current_block + + ;;t26 + 1:int + local.get $$t24 + i32.const 1 + i32.add + local.set $$t25 + + ;;t25 / 10:f64 + local.get $$t26 + f64.const 10 + f64.div + local.set $$t27 + + ;;jump 17 + br $$Block_16 + + end ;;$Block_16 + ;;phi [13: v, 16: t24, 15: t21] #v + local.get $$current_block + i32.const 13 + i32.eq + if (result f64) + local.get $v + else + local.get $$current_block + i32.const 16 + i32.eq + if (result f64) + local.get $$t27 + else + local.get $$t22 + end + end + local.set $$t26 + + ;;phi [13: 0:int, 16: t23, 15: 0:int] #e + local.get $$current_block + i32.const 13 + i32.eq + if (result i32) + i32.const 0 + else + local.get $$current_block + i32.const 16 + i32.eq + if (result i32) + local.get $$t25 + else + i32.const 0 + end + end + local.set $$t24 + + i32.const 17 + local.set $$current_block + + ;;t25 >= 10:f64 + local.get $$t26 + f64.const 10 + f64.ge + local.set $$t28 + + ;;if t27 goto 16 else 20 + local.get $$t28 + if + i32.const 16 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_19 + end + + end ;;$Block_17 + i32.const 18 + local.set $$current_block + + ;;t31 - 1:int + local.get $$t17 + i32.const 1 + i32.sub + local.set $$t29 + + ;;t30 * 10:f64 + local.get $$t30 + f64.const 10 + f64.mul + local.set $$t31 + + ;;jump 20 + br $$Block_19 + + end ;;$Block_18 + i32.const 19 + local.set $$current_block + + ;;jump 23 + br $$Block_22 + + end ;;$Block_19 + ;;phi [17: t25, 18: t29] #v + local.get $$current_block + i32.const 17 + i32.eq + if (result f64) + local.get $$t26 + else + local.get $$t31 + end + local.set $$t30 + + ;;phi [17: t26, 18: t28] #e + local.get $$current_block + i32.const 17 + i32.eq + if (result i32) + local.get $$t24 + else + local.get $$t29 + end + local.set $$t17 + + i32.const 20 + local.set $$current_block + + ;;t30 < 1:f64 + local.get $$t30 + f64.const 1 + f64.lt + local.set $$t32 + + ;;if t32 goto 18 else 19 + local.get $$t32 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + i32.const 19 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_20 + i32.const 21 + local.set $$current_block + + ;;t37 / 10:float64 + local.get $$t33 + f64.const 10 + f64.div + local.set $$t34 + + ;;t38 + 1:int + local.get $$t35 + i32.const 1 + i32.add + local.set $$t36 + + ;;jump 23 + br $$Block_22 + + end ;;$Block_21 + i32.const 22 + local.set $$current_block + + ;;t30 + t37 + local.get $$t30 + local.get $$t33 + f64.add + local.set $$t14 + + ;;t35 >= 10:f64 + local.get $$t14 + f64.const 10 + f64.ge + local.set $$t37 + + ;;if t36 goto 24 else 12 + local.get $$t37 + if + br $$Block_23 + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_22 + ;;phi [19: 5:float64, 21: t33] #h + local.get $$current_block + i32.const 19 + i32.eq + if (result f64) + f64.const 5 + else + local.get $$t34 + end + local.set $$t33 + + ;;phi [19: 0:int, 21: t34] #i + local.get $$current_block + i32.const 19 + i32.eq + if (result i32) + i32.const 0 + else + local.get $$t36 + end + local.set $$t35 + + i32.const 23 + local.set $$current_block + + ;;t38 < 7:int + local.get $$t35 + i32.const 7 + i32.lt_s + local.set $$t38 + + ;;if t39 goto 21 else 22 + local.get $$t38 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + i32.const 22 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_23 + i32.const 24 + local.set $$current_block + + ;;t31 + 1:int + local.get $$t17 + i32.const 1 + i32.add + local.set $$t18 + + ;;t35 / 10:f64 + local.get $$t14 + f64.const 10 + f64.div + local.set $$t15 + + ;;jump 12 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_24 + i32.const 25 + local.set $$current_block + + ;;convert int <- f64 (t58) + local.get $$t39 + i32.trunc_f64_s + local.set $$t40 + + ;;t59 + 2:int + local.get $$t41 + i32.const 2 + i32.add + local.set $$t42 + + ;;&t10[t43] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + local.get $$t42 + i32.mul + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + + ;;t42 + 48:int + local.get $$t40 + i32.const 48 + i32.add + local.set $$t44 + + ;;convert byte <- int (t45) + local.get $$t44 + i32.const 255 + i32.and + local.set $$t45 + + ;;*t44 = t46 + local.get $$t43.1 + local.get $$t45 + i32.store8 offset=0 align=1 + + ;;convert float64 <- int (t42) + local.get $$t40 + f64.convert_i32_s + local.set $$t46 + + ;;t58 - t47 + local.get $$t39 + local.get $$t46 + f64.sub + local.set $$t47 + + ;;t48 * 10:f64 + local.get $$t47 + f64.const 10 + f64.mul + local.set $$t48 + + ;;t59 + 1:int + local.get $$t41 + i32.const 1 + i32.add + local.set $$t49 + + ;;jump 27 + br $$Block_26 + + end ;;$Block_25 + i32.const 26 + local.set $$current_block + + ;;&t10[1:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + + ;;&t10[2:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + + ;;*t52 + local.get $$t51.1 + i32.load8_u offset=0 align=1 + local.set $$t52 + + ;;*t51 = t53 + local.get $$t50.1 + local.get $$t52 + i32.store8 offset=0 align=1 + + ;;&t10[2:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + + ;;*t54 = 46:byte + local.get $$t53.1 + i32.const 46 + i32.store8 offset=0 align=1 + + ;;&t10[9:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 9 + i32.mul + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + + ;;*t55 = 101:byte + local.get $$t54.1 + i32.const 101 + i32.store8 offset=0 align=1 + + ;;&t10[10:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 10 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + + ;;*t56 = 43:byte + local.get $$t55.1 + i32.const 43 + i32.store8 offset=0 align=1 + + ;;t18 < 0:int + local.get $$t19 + i32.const 0 + i32.lt_s + local.set $$t56 + + ;;if t57 goto 28 else 29 + local.get $$t56 + if + br $$Block_27 + else + br $$Block_28 + end + + end ;;$Block_26 + ;;phi [12: t17, 25: t49] #v + local.get $$current_block + i32.const 12 + i32.eq + if (result f64) + local.get $$t16 + else + local.get $$t48 + end + local.set $$t39 + + ;;phi [12: 0:int, 25: t50] #i + local.get $$current_block + i32.const 12 + i32.eq + if (result i32) + i32.const 0 + else + local.get $$t49 + end + local.set $$t41 + + i32.const 27 + local.set $$current_block + + ;;t59 < 7:int + local.get $$t41 + i32.const 7 + i32.lt_s + local.set $$t57 + + ;;if t60 goto 25 else 26 + local.get $$t57 + if + i32.const 25 + local.set $$block_selector + br $$BlockDisp + else + i32.const 26 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_27 + i32.const 28 + local.set $$current_block + + ;;-t18 + i32.const 0 + local.get $$t19 + i32.sub + local.set $$t58 + + ;;&t10[10:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 10 + i32.mul + i32.add + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + + ;;*t62 = 45:byte + local.get $$t59.1 + i32.const 45 + i32.store8 offset=0 align=1 + + ;;jump 29 + br $$Block_28 + + end ;;$Block_28 + ;;phi [26: t18, 28: t61] #e + local.get $$current_block + i32.const 26 + i32.eq + if (result i32) + local.get $$t19 + else + local.get $$t58 + end + local.set $$t60 + + i32.const 29 + local.set $$current_block + + ;;&t10[11:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 11 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + + ;;t63 / 100:int + local.get $$t60 + i32.const 100 + i32.div_s + local.set $$t62 + + ;;convert byte <- int (t65) + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + + ;;t66 + 48:byte + local.get $$t63 + i32.const 48 + i32.add + i32.const 255 + i32.and + local.set $$t64 + + ;;*t64 = t67 + local.get $$t61.1 + local.get $$t64 + i32.store8 offset=0 align=1 + + ;;&t10[12:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 12 + i32.mul + i32.add + local.set $$t65.1 + local.get $$t65.0 + call $runtime.Block.Release + local.set $$t65.0 + + ;;t63 / 10:int + local.get $$t60 + i32.const 10 + i32.div_s + local.set $$t66 + + ;;convert byte <- int (t69) + local.get $$t66 + i32.const 255 + i32.and + local.set $$t67 + + ;;t70 % 10:byte + local.get $$t67 + i32.const 10 + i32.rem_u + local.set $$t68 + + ;;t71 + 48:byte + local.get $$t68 + i32.const 48 + i32.add + i32.const 255 + i32.and + local.set $$t69 + + ;;*t68 = t72 + local.get $$t65.1 + local.get $$t69 + i32.store8 offset=0 align=1 + + ;;&t10[13:int] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 13 + i32.mul + i32.add + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + + ;;t63 % 10:int + local.get $$t60 + i32.const 10 + i32.rem_s + local.set $$t71 + + ;;convert byte <- int (t74) + local.get $$t71 + i32.const 255 + i32.and + local.set $$t72 + + ;;t75 + 48:byte + local.get $$t72 + i32.const 48 + i32.add + i32.const 255 + i32.and + local.set $$t73 + + ;;*t73 = t76 + local.get $$t70.1 + local.get $$t73 + i32.store8 offset=0 align=1 + + ;;slice t10[:] + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 14 + i32.const 0 + i32.sub + i32.const 14 + i32.const 0 + i32.sub + local.set $$t74.3 + local.set $$t74.2 + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + + ;;printBytes(t77) + local.get $$t74.0 + local.get $$t74.1 + local.get $$t74.2 + local.get $$t74.3 + call $runtime.printBytes + + ;;return + br $$BlockFnBody + + end ;;$Block_29 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t65.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release +) ;;runtime.printF64 + +(func $runtime.printHex (param $v i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i64) + (local $$t5 i64) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i64) + (local $$t14 i32) + (local $$t15 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;new [64]byte (buf) + i32.const 80 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 64 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;64:int - 1:int + i32.const 64 + i32.const 1 + i32.sub + local.set $$t1 + + ;;jump 3 + br $$Block_2 + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;&t0[t13] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + local.get $$t2 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + + ;;t12 % 16:u64 + local.get $$t4 + i64.const 16 + i64.rem_u + local.set $$t5 + + ;;"0123456789abcdef":untyped string[t3] + i32.const 8309 + local.get $$t5 + i32.wrap_i64 + i32.add + i32.load8_u offset=0 align=1 + local.set $$t6 + + ;;*t2 = t4 + local.get $$t3.1 + local.get $$t6 + i32.store8 offset=0 align=1 + + ;;t12 < 16:u64 + local.get $$t4 + i64.const 16 + i64.lt_u + local.set $$t7 + + ;;if t5 goto 2 else 4 + local.get $$t7 + if + br $$Block_1 + else + br $$Block_3 + end + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;t13 - 1:int + local.get $$t2 + i32.const 1 + i32.sub + local.set $$t8 + + ;;&t0[t6] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + local.get $$t8 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + + ;;*t7 = 120:byte + local.get $$t9.1 + i32.const 120 + i32.store8 offset=0 align=1 + + ;;t6 - 1:int + local.get $$t8 + i32.const 1 + i32.sub + local.set $$t10 + + ;;&t0[t8] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + local.get $$t10 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + + ;;*t9 = 48:byte + local.get $$t11.1 + i32.const 48 + i32.store8 offset=0 align=1 + + ;;slice t0[t8:] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + local.get $$t10 + i32.mul + i32.add + i32.const 64 + local.get $$t10 + i32.sub + i32.const 64 + local.get $$t10 + i32.sub + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + + ;;printBytes(t10) + local.get $$t12.0 + local.get $$t12.1 + local.get $$t12.2 + local.get $$t12.3 + call $runtime.printBytes + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + ;;phi [0: v, 4: t15] #v + local.get $$current_block + i32.const 0 + i32.eq + if (result i64) + local.get $v + else + local.get $$t13 + end + local.set $$t4 + + ;;phi [0: t1, 4: t16] #i + local.get $$current_block + i32.const 0 + i32.eq + if (result i32) + local.get $$t1 + else + local.get $$t14 + end + local.set $$t2 + + i32.const 3 + local.set $$current_block + + ;;t13 > 0:int + local.get $$t2 + i32.const 0 + i32.gt_s + local.set $$t15 + + ;;if t14 goto 1 else 2 + local.get $$t15 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;t12 / 16:u64 + local.get $$t4 + i64.const 16 + i64.div_u + local.set $$t13 + + ;;t13 - 1:int + local.get $$t2 + i32.const 1 + i32.sub + local.set $$t14 + + ;;jump 3 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_4 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release +) ;;runtime.printHex + +(func $runtime.printI64 (param $v i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i64) + (local $$t2 i64) + (local $$t3 i64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;v < 0:i64 + local.get $v + i64.const 0 + i64.lt_s + local.set $$t0 + + ;;if t0 goto 1 else 2 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;printString("-":string) + i32.const 0 + i32.const 8305 + i32.const 1 + call $runtime.printString + + ;;-v + i64.const 0 + local.get $v + i64.sub + local.set $$t1 + + ;;jump 2 + br $$Block_1 + + end ;;$Block_1 + ;;phi [0: v, 1: t2] #v + local.get $$current_block + i32.const 0 + i32.eq + if (result i64) + local.get $v + else + local.get $$t1 + end + local.set $$t2 + + i32.const 2 + local.set $$current_block + + ;;convert u64 <- i64 (t3) + local.get $$t2 + local.set $$t3 + + ;;printU64(t4) + local.get $$t3 + call $runtime.printU64 + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;runtime.printI64 + +(func $runtime.printNewline + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;printString("\n":string) + i32.const 0 + i32.const 8325 + i32.const 1 + call $runtime.printString + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;runtime.printNewline + +(func $runtime.printSlice (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $s.3 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;len(s) + local.get $s.2 + local.set $$t0 + + ;;cap(s) + local.get $s.3 + local.set $$t1 + + ;;print("[":string, t0, "/":string, t1, "]":string) + i32.const 8326 + i32.const 1 + call $$runtime.waPuts + i32.const 32 + call $$runtime.waPrintRune + local.get $$t0 + call $$runtime.waPrintI32 + i32.const 32 + call $$runtime.waPrintRune + i32.const 8327 + i32.const 1 + call $$runtime.waPuts + i32.const 32 + call $$runtime.waPrintRune + local.get $$t1 + call $$runtime.waPrintI32 + i32.const 32 + call $$runtime.waPrintRune + i32.const 8328 + i32.const 1 + call $$runtime.waPuts + + ;;refToPtr_byteSlice(s) + local.get $s.0 + local.get $s.1 + local.get $s.2 + local.get $s.3 + call $runtime.refToPtr_byteSlice + local.set $$t2 + + ;;convert u64 <- i32 (t3) + local.get $$t2 + i64.extend_i32_u + local.set $$t3 + + ;;printHex(t4) + local.get $$t3 + call $runtime.printHex + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;runtime.printSlice + +(func $runtime.printSpace + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;printString(" ":string) + i32.const 0 + i32.const 8239 + i32.const 1 + call $runtime.printString + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;runtime.printSpace + +(func $runtime.printString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;len(s) + local.get $s.2 + local.set $$t0 + + ;;t0 > 0:int + local.get $$t0 + i32.const 0 + i32.gt_s + local.set $$t1 + + ;;if t1 goto 1 else 2 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;refToPtr_string(s) + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.refToPtr_string + local.set $$t2 + + ;;convert i32 <- int (t0) + local.get $$t0 + local.set $$t3 + + ;;waPuts(t2, t3) + local.get $$t2 + local.get $$t3 + call $$runtime.waPuts + + ;;return + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;runtime.printString + +(func $runtime.printU64 (param $v i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i64) + (local $$t5 i64) + (local $$t6 i64) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t9.3 i32) + (local $$t10 i64) + (local $$t11 i32) + (local $$t12 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;new [64]byte (buf) + i32.const 80 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 64 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;64:int - 1:int + i32.const 64 + i32.const 1 + i32.sub + local.set $$t1 + + ;;jump 3 + br $$Block_2 + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;&t0[t10] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + local.get $$t2 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + + ;;t9 % 10:u64 + local.get $$t4 + i64.const 10 + i64.rem_u + local.set $$t5 + + ;;t3 + 48:u64 + local.get $$t5 + i64.const 48 + i64.add + local.set $$t6 + + ;;convert byte <- u64 (t4) + local.get $$t6 + i32.wrap_i64 + i32.const 255 + i32.and + local.set $$t7 + + ;;*t2 = t5 + local.get $$t3.1 + local.get $$t7 + i32.store8 offset=0 align=1 + + ;;t9 < 10:u64 + local.get $$t4 + i64.const 10 + i64.lt_u + local.set $$t8 + + ;;if t6 goto 2 else 4 + local.get $$t8 + if + br $$Block_1 + else + br $$Block_3 + end + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;slice t0[t10:] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + local.get $$t2 + i32.mul + i32.add + i32.const 64 + local.get $$t2 + i32.sub + i32.const 64 + local.get $$t2 + i32.sub + local.set $$t9.3 + local.set $$t9.2 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + + ;;printBytes(t7) + local.get $$t9.0 + local.get $$t9.1 + local.get $$t9.2 + local.get $$t9.3 + call $runtime.printBytes + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + ;;phi [0: v, 4: t12] #v + local.get $$current_block + i32.const 0 + i32.eq + if (result i64) + local.get $v + else + local.get $$t10 + end + local.set $$t4 + + ;;phi [0: t1, 4: t13] #i + local.get $$current_block + i32.const 0 + i32.eq + if (result i32) + local.get $$t1 + else + local.get $$t11 + end + local.set $$t2 + + i32.const 3 + local.set $$current_block + + ;;t10 > 0:int + local.get $$t2 + i32.const 0 + i32.gt_s + local.set $$t12 + + ;;if t11 goto 1 else 2 + local.get $$t12 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;t9 / 10:u64 + local.get $$t4 + i64.const 10 + i64.div_u + local.set $$t10 + + ;;t10 - 1:int + local.get $$t2 + i32.const 1 + i32.sub + local.set $$t11 + + ;;jump 3 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_4 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release +) ;;runtime.printU64 + +(func $$runtime.procExit (param $code i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.ProcExit(code) + local.get $code + call $syscall$js.ProcExit + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.procExit + +(func $runtime.refToPtr_byteSlice (param $t.0 i32) (param $t.1 i32) (param $t.2 i32) (param $t.3 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;U8_slice_to_ptr(t) + local.get $t.0 + local.get $t.1 + local.get $t.2 + local.get $t.3 + call $$wa.runtime.slice_to_ptr + local.set $$t0 + + ;;return t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;runtime.refToPtr_byteSlice + +(func $runtime.refToPtr_i32 (param $p.0 i32) (param $p.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;I32_ref_to_ptr(p) + local.get $p.0 + local.get $p.1 + call $$wa.runtime.i32_ref_to_ptr + local.set $$t0 + + ;;return t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;runtime.refToPtr_i32 + +(func $runtime.refToPtr_string (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;U8_string_to_ptr(s) + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$wa.runtime.string_to_ptr + local.set $$t0 + + ;;return t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;runtime.refToPtr_string + +(func $$rune.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if (result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 4 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + else + end + local.get $src + i32.load offset=0 align=4 + local.set $item + local.get $dest + local.get $item + i32.store offset=0 align=4 + local.get $src + i32.const 4 + i32.add + local.set $src + local.get $dest + i32.const 4 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end ;;loop1 + end ;;block1 + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 4 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + else + end + local.get $src + i32.load offset=0 align=4 + local.set $item + local.get $dest + local.get $item + i32.store offset=0 align=4 + local.get $src + i32.const 4 + i32.add + local.set $src + local.get $dest + i32.const 4 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end ;;loop2 + end ;;block2 + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + else + end + local.get $src + i32.load offset=0 align=4 + local.set $item + local.get $dest + local.get $item + i32.store offset=0 align=4 + local.get $src + i32.const 4 + i32.add + local.set $src + local.get $dest + i32.const 4 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end ;;loop3 + end ;;block3 + end +) ;;$rune.$slice.append + +(func $runtime.runeSliceFromString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;range s + local.get $s.1 + local.get $s.2 + i32.const 0 + local.set $$t0.2 + local.set $$t0.1 + local.set $$t0.0 + + ;;jump 1 + br $$Block_0 + + end ;;$Block_0 + ;;phi [0: nil:[]rune, 2: t8] #rs + local.get $$current_block + i32.const 0 + i32.eq + if (result i32 i32 i32 i32) + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + else + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + end + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + i32.const 1 + local.set $$current_block + + ;;next t0 + local.get $$t0.0 + local.get $$t0.1 + local.get $$t0.2 + call $runtime.next_rune + local.set $$t0.2 + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + + ;;extract t2 #0 + local.get $$t3.0 + local.set $$t4 + + ;;if t3 goto 2 else 3 + local.get $$t4 + if + br $$Block_1 + else + br $$Block_2 + end + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;extract t2 #2 + local.get $$t3.2 + local.set $$t5 + + ;;new [1]rune (varargs) + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + + ;;&t5[0:int] + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + + ;;*t6 = t4 + local.get $$t7.1 + local.get $$t5 + i32.store offset=0 align=4 + + ;;slice t5[:] + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + + ;;append(t1, t7...) + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + local.get $$t2.3 + local.get $$t8.0 + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + call $$rune.$slice.append + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;jump 1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;return t1 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + local.get $$t2.2 + local.get $$t2.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + + end ;;$Block_3 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release +) ;;runtime.runeSliceFromString + +(func $runtime.set_u8 (param $addr i32) (param $data i32) + local.get $addr + local.get $data + i32.store8 offset=0 align=1 +) ;;runtime.set_u8 + +(func $runtime.stringFromRune (param $r i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;new [4]byte (makeslice) + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;slice t0[:0:int] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;convert uint32 <- rune (r) + local.get $r + local.set $$t2 + + ;;t2 <= 127:uint32 + local.get $$t2 + i32.const 127 + i32.le_u + local.set $$t3 + + ;;if t3 goto 2 else 4 + local.get $$t3 + if + br $$Block_1 + else + br $$Block_3 + end + + end ;;$Block_0 + ;;phi [2: 1:i32, 3: 2:i32, 5: 3:i32, 7: 3:i32, 12: 4:i32] #n + local.get $$current_block + i32.const 2 + i32.eq + if (result i32) + i32.const 1 + else + local.get $$current_block + i32.const 3 + i32.eq + if (result i32) + i32.const 2 + else + local.get $$current_block + i32.const 5 + i32.eq + if (result i32) + i32.const 3 + else + local.get $$current_block + i32.const 7 + i32.eq + if (result i32) + i32.const 3 + else + i32.const 4 + end + end + end + end + local.set $$t4 + + i32.const 1 + local.set $$current_block + + ;;slice t1[:t4] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.get $$t4 + i32.const 0 + i32.sub + local.get $$t1.3 + i32.const 0 + i32.sub + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + + ;;convert string <- []byte (t5) + i32.const 0 + i32.const 8224 + i32.const 0 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + call $$string.appendstr + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + + ;;return t6 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;&t1[0:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + + ;;convert byte <- rune (r) + local.get $r + i32.const 255 + i32.and + local.set $$t8 + + ;;*t7 = t8 + local.get $$t7.1 + local.get $$t8 + i32.store8 offset=0 align=1 + + ;;jump 1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;&t1[1:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + + ;;*t9 + local.get $$t9.1 + i32.load8_u offset=0 align=1 + local.set $$t10 + + ;;&t1[0:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + + ;;r >> 6:uint64 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t12 + + ;;convert byte <- rune (t12) + local.get $$t12 + i32.const 255 + i32.and + local.set $$t13 + + ;;192:byte | t13 + i32.const 192 + local.get $$t13 + i32.or + local.set $$t14 + + ;;*t11 = t14 + local.get $$t11.1 + local.get $$t14 + i32.store8 offset=0 align=1 + + ;;&t1[1:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + + ;;convert byte <- rune (r) + local.get $r + i32.const 255 + i32.and + local.set $$t16 + + ;;t16 & 63:byte + local.get $$t16 + i32.const 63 + i32.and + local.set $$t17 + + ;;128:byte | t17 + i32.const 128 + local.get $$t17 + i32.or + local.set $$t18 + + ;;*t15 = t18 + local.get $$t15.1 + local.get $$t18 + i32.store8 offset=0 align=1 + + ;;jump 1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;t2 <= 2047:uint32 + local.get $$t2 + i32.const 2047 + i32.le_u + local.set $$t19 + + ;;if t19 goto 3 else 6 + local.get $$t19 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + + end ;;$Block_4 + i32.const 5 + local.set $$current_block + + ;;&t1[2:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + + ;;*t20 + local.get $$t20.1 + i32.load8_u offset=0 align=1 + local.set $$t21 + + ;;&t1[0:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + + ;;65533:rune >> 12:uint64 + i32.const 65533 + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t23 + + ;;convert byte <- rune (t23) + local.get $$t23 + i32.const 255 + i32.and + local.set $$t24 + + ;;224:byte | t24 + i32.const 224 + local.get $$t24 + i32.or + local.set $$t25 + + ;;*t22 = t25 + local.get $$t22.1 + local.get $$t25 + i32.store8 offset=0 align=1 + + ;;&t1[1:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + + ;;65533:rune >> 6:uint64 + i32.const 65533 + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t27 + + ;;convert byte <- rune (t27) + local.get $$t27 + i32.const 255 + i32.and + local.set $$t28 + + ;;t28 & 63:byte + local.get $$t28 + i32.const 63 + i32.and + local.set $$t29 + + ;;128:byte | t29 + i32.const 128 + local.get $$t29 + i32.or + local.set $$t30 + + ;;*t26 = t30 + local.get $$t26.1 + local.get $$t30 + i32.store8 offset=0 align=1 + + ;;&t1[2:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + + ;;convert byte <- rune (65533:rune) + i32.const 65533 + i32.const 255 + i32.and + local.set $$t32 + + ;;t32 & 63:byte + local.get $$t32 + i32.const 63 + i32.and + local.set $$t33 + + ;;128:byte | t33 + i32.const 128 + local.get $$t33 + i32.or + local.set $$t34 + + ;;*t31 = t34 + local.get $$t31.1 + local.get $$t34 + i32.store8 offset=0 align=1 + + ;;jump 1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_5 + i32.const 6 + local.set $$current_block + + ;;t2 > 1114111:uint32 + local.get $$t2 + i32.const 1114111 + i32.gt_u + local.set $$t35 + + ;;if t35 goto 5 else 8 + local.get $$t35 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + + end ;;$Block_6 + i32.const 7 + local.set $$current_block + + ;;&t1[2:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + + ;;*t36 + local.get $$t36.1 + i32.load8_u offset=0 align=1 + local.set $$t37 + + ;;&t1[0:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + + ;;r >> 12:uint64 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t39 + + ;;convert byte <- rune (t39) + local.get $$t39 + i32.const 255 + i32.and + local.set $$t40 + + ;;224:byte | t40 + i32.const 224 + local.get $$t40 + i32.or + local.set $$t41 + + ;;*t38 = t41 + local.get $$t38.1 + local.get $$t41 + i32.store8 offset=0 align=1 + + ;;&t1[1:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + + ;;r >> 6:uint64 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t43 + + ;;convert byte <- rune (t43) + local.get $$t43 + i32.const 255 + i32.and + local.set $$t44 + + ;;t44 & 63:byte + local.get $$t44 + i32.const 63 + i32.and + local.set $$t45 + + ;;128:byte | t45 + i32.const 128 + local.get $$t45 + i32.or + local.set $$t46 + + ;;*t42 = t46 + local.get $$t42.1 + local.get $$t46 + i32.store8 offset=0 align=1 + + ;;&t1[2:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + + ;;convert byte <- rune (r) + local.get $r + i32.const 255 + i32.and + local.set $$t48 + + ;;t48 & 63:byte + local.get $$t48 + i32.const 63 + i32.and + local.set $$t49 + + ;;128:byte | t49 + i32.const 128 + local.get $$t49 + i32.or + local.set $$t50 + + ;;*t47 = t50 + local.get $$t47.1 + local.get $$t50 + i32.store8 offset=0 align=1 + + ;;jump 1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_7 + i32.const 8 + local.set $$current_block + + ;;55296:uint32 <= t2 + i32.const 55296 + local.get $$t2 + i32.le_u + local.set $$t51 + + ;;if t51 goto 10 else 11 + local.get $$t51 + if + br $$Block_9 + else + br $$Block_10 + end + + end ;;$Block_8 + i32.const 9 + local.set $$current_block + + ;;t2 <= 65535:uint32 + local.get $$t2 + i32.const 65535 + i32.le_u + local.set $$t52 + + ;;if t52 goto 7 else 12 + local.get $$t52 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + + end ;;$Block_9 + i32.const 10 + local.set $$current_block + + ;;t2 <= 57343:uint32 + local.get $$t2 + i32.const 57343 + i32.le_u + local.set $$t53 + + ;;jump 11 + br $$Block_10 + + end ;;$Block_10 + ;;phi [8: false:bool, 10: t53] #&& + local.get $$current_block + i32.const 8 + i32.eq + if (result i32) + i32.const 0 + else + local.get $$t53 + end + local.set $$t54 + + i32.const 11 + local.set $$current_block + + ;;if t54 goto 5 else 9 + local.get $$t54 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_11 + i32.const 12 + local.set $$current_block + + ;;&t1[3:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + + ;;*t55 + local.get $$t55.1 + i32.load8_u offset=0 align=1 + local.set $$t56 + + ;;&t1[0:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + + ;;r >> 18:uint64 + local.get $r + i64.const 18 + i32.wrap_i64 + i32.shr_s + local.set $$t58 + + ;;convert byte <- rune (t58) + local.get $$t58 + i32.const 255 + i32.and + local.set $$t59 + + ;;240:byte | t59 + i32.const 240 + local.get $$t59 + i32.or + local.set $$t60 + + ;;*t57 = t60 + local.get $$t57.1 + local.get $$t60 + i32.store8 offset=0 align=1 + + ;;&t1[1:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + + ;;r >> 12:uint64 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t62 + + ;;convert byte <- rune (t62) + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + + ;;t63 & 63:byte + local.get $$t63 + i32.const 63 + i32.and + local.set $$t64 + + ;;128:byte | t64 + i32.const 128 + local.get $$t64 + i32.or + local.set $$t65 + + ;;*t61 = t65 + local.get $$t61.1 + local.get $$t65 + i32.store8 offset=0 align=1 + + ;;&t1[2:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + + ;;r >> 6:uint64 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t67 + + ;;convert byte <- rune (t67) + local.get $$t67 + i32.const 255 + i32.and + local.set $$t68 + + ;;t68 & 63:byte + local.get $$t68 + i32.const 63 + i32.and + local.set $$t69 + + ;;128:byte | t69 + i32.const 128 + local.get $$t69 + i32.or + local.set $$t70 + + ;;*t66 = t70 + local.get $$t66.1 + local.get $$t70 + i32.store8 offset=0 align=1 + + ;;&t1[3:int] + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + + ;;convert byte <- rune (r) + local.get $r + i32.const 255 + i32.and + local.set $$t72 + + ;;t72 & 63:byte + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + + ;;128:byte | t73 + i32.const 128 + local.get $$t73 + i32.or + local.set $$t74 + + ;;*t71 = t74 + local.get $$t71.1 + local.get $$t74 + i32.store8 offset=0 align=1 + + ;;jump 1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_12 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release +) ;;runtime.stringFromRune + +(func $runtime.stringFromRuneSlice (param $rs.0 i32) (param $rs.1 i32) (param $rs.2 i32) (param $rs.3 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;len(rs) + local.get $rs.2 + local.set $$t0 + + ;;jump 1 + br $$Block_0 + + end ;;$Block_0 + ;;phi [0: "":string, 2: t8] #s + local.get $$current_block + i32.const 0 + i32.eq + if (result i32 i32 i32) + i32.const 0 + i32.const 8224 + i32.const 0 + else + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + end + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;phi [0: -1:int, 2: t3] + local.get $$current_block + i32.const 0 + i32.eq + if (result i32) + i32.const -1 + else + local.get $$t3 + end + local.set $$t4 + + i32.const 1 + local.set $$current_block + + ;;t2 + 1:int + local.get $$t4 + i32.const 1 + i32.add + local.set $$t3 + + ;;t3 < t0 + local.get $$t3 + local.get $$t0 + i32.lt_s + local.set $$t5 + + ;;if t4 goto 2 else 3 + local.get $$t5 + if + br $$Block_1 + else + br $$Block_2 + end + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;&rs[t3] + local.get $rs.0 + call $runtime.Block.Retain + local.get $rs.1 + i32.const 4 + local.get $$t3 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + + ;;*t5 + local.get $$t6.1 + i32.load offset=0 align=4 + local.set $$t7 + + ;;stringFromRune(t6) + local.get $$t7 + call $runtime.stringFromRune + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + + ;;t1 + t7 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + local.get $$t8.0 + local.get $$t8.1 + local.get $$t8.2 + call $$string.appendstr + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;jump 1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;return t1 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + local.get $$t2.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + + end ;;$Block_3 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release +) ;;runtime.stringFromRuneSlice + +(func $$wa.runtime.string_Comp (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;local stringIter (i1) + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;stringToIter(x) + local.get $x.0 + local.get $x.1 + local.get $x.2 + call $$wa.runtime.string_to_iter + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0 + + ;;*t0 = t1 + local.get $$t0.1 + local.get $$t1.0 + i32.store offset=0 align=4 + local.get $$t0.1 + local.get $$t1.1 + i32.store offset=4 align=4 + local.get $$t0.1 + local.get $$t1.2 + i32.store offset=8 align=4 + + ;;local stringIter (i2) + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;stringToIter(y) + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_to_iter + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + + ;;*t2 = t3 + local.get $$t2.1 + local.get $$t3.0 + i32.store offset=0 align=4 + local.get $$t2.1 + local.get $$t3.1 + i32.store offset=4 align=4 + local.get $$t2.1 + local.get $$t3.2 + i32.store offset=8 align=4 + + ;;jump 1 + br $$Block_0 + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;*t0 + local.get $$t0.1 + i32.load offset=0 align=4 + local.get $$t0.1 + i32.load offset=4 align=4 + local.get $$t0.1 + i32.load offset=8 align=4 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + + ;;next_rune(t4) + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $runtime.next_rune + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0 + + ;;extract t5 #0 + local.get $$t5.0 + local.set $$t6 + + ;;extract t5 #1 + local.get $$t5.1 + local.set $$t7 + + ;;extract t5 #2 + local.get $$t5.2 + local.set $$t8 + + ;;extract t5 #3 + local.get $$t5.3 + local.set $$t9 + + ;;&t0.pos [#2] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + + ;;*t10 = t9 + local.get $$t10.1 + local.get $$t9 + i32.store offset=0 align=4 + + ;;*t2 + local.get $$t2.1 + i32.load offset=0 align=4 + local.get $$t2.1 + i32.load offset=4 align=4 + local.get $$t2.1 + i32.load offset=8 align=4 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + + ;;next_rune(t11) + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + call $runtime.next_rune + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.set $$t12.0 + + ;;extract t12 #0 + local.get $$t12.0 + local.set $$t13 + + ;;extract t12 #1 + local.get $$t12.1 + local.set $$t14 + + ;;extract t12 #2 + local.get $$t12.2 + local.set $$t15 + + ;;extract t12 #3 + local.get $$t12.3 + local.set $$t16 + + ;;&t2.pos [#2] + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 8 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + + ;;*t17 = t16 + local.get $$t17.1 + local.get $$t16 + i32.store offset=0 align=4 + + ;;if t6 goto 4 else 5 + local.get $$t6 + if + br $$Block_3 + else + br $$Block_4 + end + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;len(x) + local.get $x.2 + local.set $$t18 + + ;;len(y) + local.get $y.2 + local.set $$t19 + + ;;t18 < t19 + local.get $$t18 + local.get $$t19 + i32.lt_s + local.set $$t20 + + ;;if t20 goto 9 else 10 + local.get $$t20 + if + br $$Block_8 + else + br $$Block_9 + end + + end ;;$Block_2 + i32.const 3 + local.set $$current_block + + ;;t8 < t15 + local.get $$t8 + local.get $$t15 + i32.lt_s + local.set $$t21 + + ;;if t21 goto 6 else 7 + local.get $$t21 + if + br $$Block_5 + else + br $$Block_6 + end + + end ;;$Block_3 + i32.const 4 + local.set $$current_block + + ;;jump 5 + br $$Block_4 + + end ;;$Block_4 + ;;phi [1: false:bool, 4: t13] #&& + local.get $$current_block + i32.const 1 + i32.eq + if (result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t22 + + i32.const 5 + local.set $$current_block + + ;;t22 != true:bool + local.get $$t22 + i32.const 1 + i32.eq + i32.eqz + local.set $$t23 + + ;;if t23 goto 2 else 3 + local.get $$t23 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_5 + i32.const 6 + local.set $$current_block + + ;;return -1:i32 + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_6 + i32.const 7 + local.set $$current_block + + ;;t8 > t15 + local.get $$t8 + local.get $$t15 + i32.gt_s + local.set $$t24 + + ;;if t24 goto 8 else 1 + local.get $$t24 + if + br $$Block_7 + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_7 + i32.const 8 + local.set $$current_block + + ;;return 1:i32 + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_8 + i32.const 9 + local.set $$current_block + + ;;return -1:i32 + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_9 + i32.const 10 + local.set $$current_block + + ;;t18 > t19 + local.get $$t18 + local.get $$t19 + i32.gt_s + local.set $$t25 + + ;;if t25 goto 11 else 12 + local.get $$t25 + if + br $$Block_10 + else + br $$Block_11 + end + + end ;;$Block_10 + i32.const 11 + local.set $$current_block + + ;;return 1:i32 + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_11 + i32.const 12 + local.set $$current_block + + ;;return 0:i32 + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_12 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release +) ;;$wa.runtime.string_Comp + +(func $$wa.runtime.string_GEQ (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;string_Comp(x, y) + local.get $x.0 + local.get $x.1 + local.get $x.2 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_Comp + local.set $$t0 + + ;;t0 != -1:i32 + local.get $$t0 + i32.const -1 + i32.eq + i32.eqz + local.set $$t1 + + ;;return t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$wa.runtime.string_GEQ + +(func $$wa.runtime.string_GTR (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;string_Comp(x, y) + local.get $x.0 + local.get $x.1 + local.get $x.2 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_Comp + local.set $$t0 + + ;;t0 == 1:i32 + local.get $$t0 + i32.const 1 + i32.eq + local.set $$t1 + + ;;return t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$wa.runtime.string_GTR + +(func $$wa.runtime.string_LEQ (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;string_Comp(x, y) + local.get $x.0 + local.get $x.1 + local.get $x.2 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_Comp + local.set $$t0 + + ;;t0 != 1:i32 + local.get $$t0 + i32.const 1 + i32.eq + i32.eqz + local.set $$t1 + + ;;return t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$wa.runtime.string_LEQ + +(func $$wa.runtime.string_LSS (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;string_Comp(x, y) + local.get $x.0 + local.get $x.1 + local.get $x.2 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_Comp + local.set $$t0 + + ;;t0 == -1:i32 + local.get $$t0 + i32.const -1 + i32.eq + local.set $$t1 + + ;;return t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0 +) ;;$wa.runtime.string_LSS + +(func $$runtime.waPrintBool (param $i i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.PrintBool(i) + local.get $i + call $syscall$js.PrintBool + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintBool + +(func $$runtime.waPrintChar (param $ch i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;waPrintRune(ch) + local.get $ch + call $$runtime.waPrintRune + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintChar + +(func $$runtime.waPrintF32 (param $i f32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.PrintF32(i) + local.get $i + call $syscall$js.PrintF32 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintF32 + +(func $$runtime.waPrintF64 (param $i f64) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.PrintF64(i) + local.get $i + call $syscall$js.PrintF64 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintF64 + +(func $$runtime.waPrintI32 (param $i i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.PrintI32(i) + local.get $i + call $syscall$js.PrintI32 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintI32 + +(func $$runtime.waPrintI64 (param $i i64) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.PrintI64(i) + local.get $i + call $syscall$js.PrintI64 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintI64 + +(func $$runtime.waPrintRune (param $ch i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.PrintRune(ch) + local.get $ch + call $syscall$js.PrintRune + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintRune + +(func $$runtime.waPrintString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;printString(s) + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.printString + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintString + +(func $$runtime.waPrintU32 (param $i i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.PrintU32(i) + local.get $i + call $syscall$js.PrintU32 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintU32 + +(func $$runtime.waPrintU32Ptr (param $i i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.PrintU32Ptr(i) + local.get $i + call $syscall$js.PrintU32Ptr + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintU32Ptr + +(func $$runtime.waPrintU64 (param $i i64) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.PrintU64(i) + local.get $i + call $syscall$js.PrintU64 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPrintU64 + +(func $$runtime.waPuts (param $ptr i32) (param $len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;syscall/js.Puts(ptr, len) + local.get $ptr + local.get $len + call $syscall$js.Puts + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;$runtime.waPuts + +(func $$brainfuck$bfpkg.BrainFuck.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 30000 + i32.add + i32.const 3 + call_indirect (type $$onFree) +) ;;$brainfuck$bfpkg.BrainFuck.$$onFree + +(func $brainfuck$bfpkg.NewBrainFuck (param $code.0 i32) (param $code.1 i32) (param $code.2 i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;new BrainFuck (complit) + i32.const 30036 + call $runtime.HeapAlloc + i32.const 1 + i32.const 15 + i32.const 30020 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;&t0.code [#1] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 30000 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;*t1 = code + local.get $$t1.1 + local.get $code.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=0 align=1 + call $runtime.Block.Release + i32.store offset=0 align=1 + local.get $$t1.1 + local.get $code.1 + i32.store offset=4 align=4 + local.get $$t1.1 + local.get $code.2 + i32.store offset=8 align=4 + + ;;return t0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release +) ;;brainfuck$bfpkg.NewBrainFuck + +(func $brainfuck$bfpkg.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;*init$guard + global.get $brainfuck$bfpkg.init$guard + local.set $$t0 + + ;;if t0 goto 2 else 1 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;*init$guard = true:bool + i32.const 1 + global.set $brainfuck$bfpkg.init$guard + + ;;jump 2 + br $$Block_1 + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;brainfuck$bfpkg.init + +(func $brainfuck.Run (export "brainfuck.Run") (param $code.0 i32) (param $code.1 i32) (param $code.2 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;brainfuck/bfpkg.NewBrainFuck(code) + local.get $code.0 + local.get $code.1 + local.get $code.2 + call $brainfuck$bfpkg.NewBrainFuck + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;(*brainfuck/bfpkg.BrainFuck).Run(t0) + local.get $$t0.0 + local.get $$t0.1 + call $brainfuck$bfpkg.BrainFuck.Run + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;convert string <- []byte (t1) + i32.const 0 + i32.const 8224 + i32.const 0 + local.get $$t1.0 + local.get $$t1.1 + local.get $$t1.2 + call $$string.appendstr + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;return t2 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + local.get $$t2.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release +) ;;brainfuck.Run + +(func $brainfuck.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;*init$guard + global.get $brainfuck.init$guard + local.set $$t0 + + ;;if t0 goto 2 else 1 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;*init$guard = true:bool + i32.const 1 + global.set $brainfuck.init$guard + + ;;runtime.init() + call $runtime.init + + ;;brainfuck/bfpkg.init() + call $brainfuck$bfpkg.init + + ;;jump 2 + br $$Block_1 + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;brainfuck.init + +(func $brainfuck.main (export "brainfuck.main") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;brainfuck/bfpkg.NewBrainFuck("++++++++++[>+++++...":string) + i32.const 0 + i32.const 8329 + i32.const 33 + call $brainfuck$bfpkg.NewBrainFuck + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;(*brainfuck/bfpkg.BrainFuck).Run(t0) + local.get $$t0.0 + local.get $$t0.1 + call $brainfuck$bfpkg.BrainFuck.Run + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;convert string <- []byte (t1) + i32.const 0 + i32.const 8224 + i32.const 0 + local.get $$t1.0 + local.get $$t1.1 + local.get $$t1.2 + call $$string.appendstr + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;println(t2) + local.get $$t2.1 + local.get $$t2.2 + call $$runtime.waPuts + i32.const 10 + call $$runtime.waPrintChar + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release +) ;;brainfuck.main + +(func $syscall$js.PrintBool (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_bool(v) + local.get $v + call $syscall$js.__import__print_bool + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintBool + +(func $syscall$js.PrintF32 (param $v f32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_f32(v) + local.get $v + call $syscall$js.__import__print_f32 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintF32 + +(func $syscall$js.PrintF64 (param $v f64) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_f64(v) + local.get $v + call $syscall$js.__import__print_f64 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintF64 + +(func $syscall$js.PrintI32 (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_i32(v) + local.get $v + call $syscall$js.__import__print_i32 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintI32 + +(func $syscall$js.PrintI64 (param $v i64) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_i64(v) + local.get $v + call $syscall$js.__import__print_i64 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintI64 + +(func $syscall$js.PrintRune (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_rune(v) + local.get $v + call $syscall$js.__import__print_rune + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintRune + +(func $syscall$js.PrintString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__linkname__string_to_ptr(s) + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$syscall/js.__linkname__string_to_ptr + local.set $$t0 + + ;;len(s) + local.get $s.2 + local.set $$t1 + + ;;convert i32 <- int (t1) + local.get $$t1 + local.set $$t2 + + ;;__import__print_str(t0, t2) + local.get $$t0 + local.get $$t2 + call $syscall$js.__import__print_str + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintString + +(func $syscall$js.PrintU32 (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_u32(v) + local.get $v + call $syscall$js.__import__print_u32 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintU32 + +(func $syscall$js.PrintU32Ptr (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_ptr(v) + local.get $v + call $syscall$js.__import__print_ptr + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintU32Ptr + +(func $syscall$js.PrintU64 (param $v i64) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_u64(v) + local.get $v + call $syscall$js.__import__print_u64 + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.PrintU64 + +(func $syscall$js.ProcExit (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__proc_exit(v) + local.get $v + call $syscall$js.__import__proc_exit + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.ProcExit + +(func $syscall$js.Puts (param $ptr i32) (param $len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;__import__print_str(ptr, len) + local.get $ptr + local.get $len + call $syscall$js.__import__print_str + + ;;return + br $$BlockFnBody + + end ;;$Block_0 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.Puts + +(func $syscall$js.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;*init$guard + global.get $syscall$js.init$guard + local.set $$t0 + + ;;if t0 goto 2 else 1 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;*init$guard = true:bool + i32.const 1 + global.set $syscall$js.init$guard + + ;;jump 2 + br $$Block_1 + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + end ;;$BlockDisp + end ;;$BlockFnBody +) ;;syscall$js.init + +(func $$u8.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if (result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 1 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + else + end + local.get $src + i32.load8_u offset=0 align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 offset=0 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end ;;loop1 + end ;;block1 + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + else + end + local.get $src + i32.load8_u offset=0 align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 offset=0 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end ;;loop2 + end ;;block2 + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + else + end + local.get $src + i32.load8_u offset=0 align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 offset=0 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end ;;loop3 + end ;;block3 + end +) ;;$u8.$slice.append + +(func $brainfuck$bfpkg.BrainFuck.Run (param $this.0 i32) (param $this.1 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t9.3 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t16.2 i32) + (local $$t16.3 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t59 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62.0 i32) + (local $$t62.1 i32) + (local $$t62.2 i32) + (local $$t62.3 i32) + (local $$t63 i32) + (local $$t64 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;new [64]byte (makeslice) + i32.const 80 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 64 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;slice t0[:0:int] + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 64 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;jump 3 + br $$Block_2 + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;&this.code [#1] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30000 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;*t2 + local.get $$t2.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t2.1 + i32.load offset=4 align=4 + local.get $$t2.1 + i32.load offset=8 align=4 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + + ;;&this.pc [#3] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30016 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + + ;;*t4 + local.get $$t4.1 + i32.load offset=0 align=4 + local.set $$t5 + + ;;t3[t5] + local.get $$t3.1 + local.get $$t5 + i32.add + i32.load8_u offset=0 align=1 + local.set $$t6 + + ;;t6 == 62:byte + local.get $$t6 + i32.const 62 + i32.eq + local.set $$t7 + + ;;if t7 goto 5 else 7 + local.get $$t7 + if + br $$Block_4 + else + br $$Block_6 + end + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return t8 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + + end ;;$Block_2 + ;;phi [0: t1, 4: t15] #output + local.get $$current_block + i32.const 0 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + else + local.get $$t9.0 + call $runtime.Block.Retain + local.get $$t9.1 + local.get $$t9.2 + local.get $$t9.3 + end + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + + i32.const 3 + local.set $$current_block + + ;;&this.pc [#3] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30016 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + + ;;*t9 + local.get $$t10.1 + i32.load offset=0 align=4 + local.set $$t11 + + ;;&this.code [#1] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30000 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + + ;;*t11 + local.get $$t12.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t12.1 + i32.load offset=4 align=4 + local.get $$t12.1 + i32.load offset=8 align=4 + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + + ;;len(t12) + local.get $$t13.2 + local.set $$t14 + + ;;t10 != t13 + local.get $$t11 + local.get $$t14 + i32.eq + i32.eqz + local.set $$t15 + + ;;if t14 goto 1 else 2 + local.get $$t15 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_3 + ;;phi [5: t8, 6: t8, 8: t8, 10: t8, 12: t8, 14: t8, 17: t63, 20: t8, 16: t8, 19: t8] #output + local.get $$current_block + i32.const 5 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + else + local.get $$current_block + i32.const 6 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + else + local.get $$current_block + i32.const 8 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + else + local.get $$current_block + i32.const 10 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + else + local.get $$current_block + i32.const 12 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + else + local.get $$current_block + i32.const 14 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + else + local.get $$current_block + i32.const 17 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + local.get $$t16.2 + local.get $$t16.3 + else + local.get $$current_block + i32.const 20 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + else + local.get $$current_block + i32.const 16 + i32.eq + if (result i32 i32 i32 i32) + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + else + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + end + end + end + end + end + end + end + end + end + local.set $$t9.3 + local.set $$t9.2 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + + i32.const 4 + local.set $$current_block + + ;;&this.pc [#3] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30016 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + + ;;*t16 + local.get $$t17.1 + i32.load offset=0 align=4 + local.set $$t18 + + ;;t17 + 1:int + local.get $$t18 + i32.const 1 + i32.add + local.set $$t19 + + ;;*t16 = t18 + local.get $$t17.1 + local.get $$t19 + i32.store offset=0 align=4 + + ;;jump 3 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_4 + i32.const 5 + local.set $$current_block + + ;;&this.pos [#2] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30012 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + + ;;*t19 + local.get $$t20.1 + i32.load offset=0 align=4 + local.set $$t21 + + ;;t20 + 1:int + local.get $$t21 + i32.const 1 + i32.add + local.set $$t22 + + ;;*t19 = t21 + local.get $$t20.1 + local.get $$t22 + i32.store offset=0 align=4 + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_5 + i32.const 6 + local.set $$current_block + + ;;&this.pos [#2] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30012 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + + ;;*t22 + local.get $$t23.1 + i32.load offset=0 align=4 + local.set $$t24 + + ;;t23 - 1:int + local.get $$t24 + i32.const 1 + i32.sub + local.set $$t25 + + ;;*t22 = t24 + local.get $$t23.1 + local.get $$t25 + i32.store offset=0 align=4 + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_6 + i32.const 7 + local.set $$current_block + + ;;t6 == 60:byte + local.get $$t6 + i32.const 60 + i32.eq + local.set $$t26 + + ;;if t25 goto 6 else 9 + local.get $$t26 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_8 + end + + end ;;$Block_7 + i32.const 8 + local.set $$current_block + + ;;&this.mem [#0] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + + ;;&this.pos [#2] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30012 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + + ;;*t27 + local.get $$t28.1 + i32.load offset=0 align=4 + local.set $$t29 + + ;;&t26[t28] + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + i32.const 1 + local.get $$t29 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + + ;;*t29 + local.get $$t30.1 + i32.load8_u offset=0 align=1 + local.set $$t31 + + ;;t30 + 1:byte + local.get $$t31 + i32.const 1 + i32.add + i32.const 255 + i32.and + local.set $$t32 + + ;;*t29 = t31 + local.get $$t30.1 + local.get $$t32 + i32.store8 offset=0 align=1 + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_8 + i32.const 9 + local.set $$current_block + + ;;t6 == 43:byte + local.get $$t6 + i32.const 43 + i32.eq + local.set $$t33 + + ;;if t32 goto 8 else 11 + local.get $$t33 + if + i32.const 8 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_10 + end + + end ;;$Block_9 + i32.const 10 + local.set $$current_block + + ;;&this.mem [#0] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + + ;;&this.pos [#2] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30012 + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + + ;;*t34 + local.get $$t35.1 + i32.load offset=0 align=4 + local.set $$t36 + + ;;&t33[t35] + local.get $$t34.0 + call $runtime.Block.Retain + local.get $$t34.1 + i32.const 1 + local.get $$t36 + i32.mul + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + + ;;*t36 + local.get $$t37.1 + i32.load8_u offset=0 align=1 + local.set $$t38 + + ;;t37 - 1:byte + local.get $$t38 + i32.const 1 + i32.sub + i32.const 255 + i32.and + local.set $$t39 + + ;;*t36 = t38 + local.get $$t37.1 + local.get $$t39 + i32.store8 offset=0 align=1 + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_10 + i32.const 11 + local.set $$current_block + + ;;t6 == 45:byte + local.get $$t6 + i32.const 45 + i32.eq + local.set $$t40 + + ;;if t39 goto 10 else 13 + local.get $$t40 + if + i32.const 10 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_12 + end + + end ;;$Block_11 + i32.const 12 + local.set $$current_block + + ;;&this.mem [#0] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + + ;;&this.pos [#2] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30012 + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + + ;;*t41 + local.get $$t42.1 + i32.load offset=0 align=4 + local.set $$t43 + + ;;&t40[t42] + local.get $$t41.0 + call $runtime.Block.Retain + local.get $$t41.1 + i32.const 1 + local.get $$t43 + i32.mul + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + + ;;*t43 + local.get $$t44.1 + i32.load8_u offset=0 align=1 + local.set $$t45 + + ;;t44 == 0:byte + local.get $$t45 + i32.const 0 + i32.eq + local.set $$t46 + + ;;if t45 goto 16 else 4 + local.get $$t46 + if + br $$Block_15 + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_12 + i32.const 13 + local.set $$current_block + + ;;t6 == 91:byte + local.get $$t6 + i32.const 91 + i32.eq + local.set $$t47 + + ;;if t46 goto 12 else 15 + local.get $$t47 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_14 + end + + end ;;$Block_13 + i32.const 14 + local.set $$current_block + + ;;&this.mem [#0] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t48.1 + local.get $$t48.0 + call $runtime.Block.Release + local.set $$t48.0 + + ;;&this.pos [#2] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30012 + i32.add + local.set $$t49.1 + local.get $$t49.0 + call $runtime.Block.Release + local.set $$t49.0 + + ;;*t48 + local.get $$t49.1 + i32.load offset=0 align=4 + local.set $$t50 + + ;;&t47[t49] + local.get $$t48.0 + call $runtime.Block.Retain + local.get $$t48.1 + i32.const 1 + local.get $$t50 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + + ;;*t50 + local.get $$t51.1 + i32.load8_u offset=0 align=1 + local.set $$t52 + + ;;t51 != 0:byte + local.get $$t52 + i32.const 0 + i32.eq + i32.eqz + local.set $$t53 + + ;;if t52 goto 19 else 4 + local.get $$t53 + if + br $$Block_18 + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_14 + i32.const 15 + local.set $$current_block + + ;;t6 == 93:byte + local.get $$t6 + i32.const 93 + i32.eq + local.set $$t54 + + ;;if t53 goto 14 else 18 + local.get $$t54 + if + i32.const 14 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_17 + end + + end ;;$Block_15 + i32.const 16 + local.set $$current_block + + ;;(*BrainFuck).loop(this, 1:int) + local.get $this.0 + local.get $this.1 + i32.const 1 + call $brainfuck$bfpkg.BrainFuck.loop + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_16 + i32.const 17 + local.set $$current_block + + ;;&this.mem [#0] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + + ;;&this.pos [#2] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30012 + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + + ;;*t56 + local.get $$t56.1 + i32.load offset=0 align=4 + local.set $$t57 + + ;;&t55[t57] + local.get $$t55.0 + call $runtime.Block.Retain + local.get $$t55.1 + i32.const 1 + local.get $$t57 + i32.mul + i32.add + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + + ;;*t58 + local.get $$t58.1 + i32.load8_u offset=0 align=1 + local.set $$t59 + + ;;new [1]byte (varargs) + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + + ;;&t60[0:int] + local.get $$t60.0 + call $runtime.Block.Retain + local.get $$t60.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + + ;;*t61 = t59 + local.get $$t61.1 + local.get $$t59 + i32.store8 offset=0 align=1 + + ;;slice t60[:] + local.get $$t60.0 + call $runtime.Block.Retain + local.get $$t60.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t62.3 + local.set $$t62.2 + local.set $$t62.1 + local.get $$t62.0 + call $runtime.Block.Release + local.set $$t62.0 + + ;;append(t8, t62...) + local.get $$t8.0 + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + local.get $$t62.0 + local.get $$t62.1 + local.get $$t62.2 + local.get $$t62.3 + call $$u8.$slice.append + local.set $$t16.3 + local.set $$t16.2 + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_17 + i32.const 18 + local.set $$current_block + + ;;t6 == 46:byte + local.get $$t6 + i32.const 46 + i32.eq + local.set $$t63 + + ;;if t64 goto 17 else 20 + local.get $$t63 + if + i32.const 17 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_19 + end + + end ;;$Block_18 + i32.const 19 + local.set $$current_block + + ;;(*BrainFuck).loop(this, -1:int) + local.get $this.0 + local.get $this.1 + i32.const -1 + call $brainfuck$bfpkg.BrainFuck.loop + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_19 + i32.const 20 + local.set $$current_block + + ;;t6 == 44:byte + local.get $$t6 + i32.const 44 + i32.eq + local.set $$t64 + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_20 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t48.0 + call $runtime.Block.Release + local.get $$t49.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t62.0 + call $runtime.Block.Release +) ;;brainfuck$bfpkg.BrainFuck.Run + +(func $brainfuck$bfpkg.BrainFuck.loop (param $this.0 i32) (param $this.1 i32) (param $inc i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 0 + end ;;$BlockSel + i32.const 0 + local.set $$current_block + + ;;jump 3 + br $$Block_2 + + end ;;$Block_0 + i32.const 1 + local.set $$current_block + + ;;&this.code [#1] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30000 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + + ;;*t0 + local.get $$t0.1 + i32.load offset=0 align=4 + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 align=4 + local.get $$t0.1 + i32.load offset=8 align=4 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + + ;;&this.pc [#3] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30016 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + + ;;*t2 + local.get $$t2.1 + i32.load offset=0 align=4 + local.set $$t3 + + ;;t3 + inc + local.get $$t3 + local.get $inc + i32.add + local.set $$t4 + + ;;t1[t4] + local.get $$t1.1 + local.get $$t4 + i32.add + i32.load8_u offset=0 align=1 + local.set $$t5 + + ;;t5 == 91:byte + local.get $$t5 + i32.const 91 + i32.eq + local.set $$t6 + + ;;if t6 goto 5 else 7 + local.get $$t6 + if + br $$Block_4 + else + br $$Block_6 + end + + end ;;$Block_1 + i32.const 2 + local.set $$current_block + + ;;return + br $$BlockFnBody + + end ;;$Block_2 + ;;phi [0: inc, 4: t9] #i + local.get $$current_block + i32.const 0 + i32.eq + if (result i32) + local.get $inc + else + local.get $$t7 + end + local.set $$t8 + + i32.const 3 + local.set $$current_block + + ;;t7 != 0:int + local.get $$t8 + i32.const 0 + i32.eq + i32.eqz + local.set $$t9 + + ;;if t8 goto 1 else 2 + local.get $$t9 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_3 + ;;phi [5: t13, 6: t14, 7: t7] #i + local.get $$current_block + i32.const 5 + i32.eq + if (result i32) + local.get $$t10 + else + local.get $$current_block + i32.const 6 + i32.eq + if (result i32) + local.get $$t11 + else + local.get $$t8 + end + end + local.set $$t7 + + i32.const 4 + local.set $$current_block + + ;;&this.pc [#3] + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 30016 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + + ;;*t10 + local.get $$t12.1 + i32.load offset=0 align=4 + local.set $$t13 + + ;;t11 + inc + local.get $$t13 + local.get $inc + i32.add + local.set $$t14 + + ;;*t10 = t12 + local.get $$t12.1 + local.get $$t14 + i32.store offset=0 align=4 + + ;;jump 3 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_4 + i32.const 5 + local.set $$current_block + + ;;t7 + 1:int + local.get $$t8 + i32.const 1 + i32.add + local.set $$t10 + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_5 + i32.const 6 + local.set $$current_block + + ;;t7 - 1:int + local.get $$t8 + i32.const 1 + i32.sub + local.set $$t11 + + ;;jump 4 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + + end ;;$Block_6 + i32.const 7 + local.set $$current_block + + ;;t5 == 93:byte + local.get $$t5 + i32.const 93 + i32.eq + local.set $$t15 + + ;;if t15 goto 6 else 4 + local.get $$t15 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + + end ;;$Block_7 + end ;;$BlockDisp + end ;;$BlockFnBody + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release +) ;;brainfuck$bfpkg.BrainFuck.loop + +(func $_start (export "_start") + call $brainfuck.init +) ;;_start + +(func $_main (export "_main") + call $brainfuck.main +) ;;_main +) ;;module \ No newline at end of file diff --git a/brainfuck/index.html b/brainfuck/index.html new file mode 100644 index 00000000..6649515f --- /dev/null +++ b/brainfuck/index.html @@ -0,0 +1,33 @@ + + + + + + 凹语言/Wa-lang Brainfuck Webassembly + + +

凹语言/Wa-lang Brainfuck Webassembly

+

Blog post / tutorial is at: https://wa-lang.org/smalltalk/st0013.html.

+ +
+ +
+ +
+

Output

+

+
+	
+
+	
+
+
diff --git a/codestyle.md b/codestyle.md
new file mode 100644
index 00000000..ade34e39
--- /dev/null
+++ b/codestyle.md
@@ -0,0 +1,12 @@
+# 代码风格(仅参考)
+
+为了便于调试,不同的模块可以在 config 包增加 Trace 开关,然后针对每个返回 err 的地方输出日志。
+比如 `config.EnableTrace_loader` 标注 loader 模块:
+
+```go
+	logger.Trace(&config.EnableTrace_loader, "import "+manifest.MainPkg)
+	if _, err := p.Import(manifest.MainPkg); err != nil {
+		logger.Tracef(&config.EnableTrace_loader, "err: %v", err)
+		return nil, err
+	}
+```
diff --git a/goals.md b/goals.md
new file mode 100644
index 00000000..a36573c8
--- /dev/null
+++ b/goals.md
@@ -0,0 +1,79 @@
+# 凹语言™项目目标
+
+本项目的发起人(柴树杉、丁尔男、史斌)均是Gopher,在开发实践中,因为不同的原因,先后萌生了发展一门新语言的想法,Go 语言克制的风格是我们对于编程语言审美的最大公约数,因此选择它作为初始的蓝本。不必讳言:本项目启动时大量借鉴了 Go 的设计思想和具体实现——这是在有限投入下不得不作出的折衷,我们希望随着项目的发展,积累更多原创的设计,为自主创新的大潮贡献一点力量。
+
+纵观编程界,没有哪门被广泛使用的通用语言诞生于KPI制度之下。本项目作为个人业余项目,不存在明确的指标,从成果分类的角度,我们希望在第一阶段完成以下目标:
+
+- 确定凹语言™语法规则
+- 实现可用的凹语言™编译器
+- 使用凹语言™创建一个网页应用
+
+---
+
+## 凹语言™特性——预期
+
+凹语言™包含两套相互等价的语法:凹语法与 WaGo 语法,这里“等价”的含义是:二者可生成相同的AST并无损的互相转换。使用凹语法编写的源文件后缀为 `.wa`,使用 WaGo 语法编写的源文件后缀为 `.wa.go`。WaGo 语法是 Go 语法的真子集,换句话说:一个合法的 WaGo 包必然是合法的 Go 包。
+
+网页应用是我们很重视的目标场景,这与 Go 语言把服务端作为主战场截然不同,WaGo 裁减掉的部分多半与此相关:
+
+* WaGo 没有 `go` 关键字,不支持goroutine/并发
+* WaGo 没有 `chan` 关键字,不支持与之相关的管道操作
+* WaGo 没有全局GC——但**可能**会提供自动RC以尽可能简化内存管理
+* WaGo 没有内置标准库——即使有,规模也极其有限
+
+WaGo 的数据类型如下表:
+
+|字符串(string)|数组(array)|切片(slice)|复数(complex)|哈希表(map)|结构体(struct)|
+|:-:|:-:|:-:|:-:|:-:|:-:|
+|有|有|有|可能有|可能有|有|
+
+WaGo 的其他特性如下表:
+
+|多返回值|方法|方法值|接口|闭包|反射|
+|:-:|:-:|:-:|:-:|:-:|:-:|
+|有|有|可能无|有|可能有|可能有|
+
+> 各特性的实现可能性从高到底排列为:有 > 可能无 > 可能有 > 无
+
+通过以上描述,大致可以勾勒出 WaGo 的轮廓。凹语法在AST层面与 WaGo 等价的同时,最显著的变化是增加了中文关键字。对于凹语法将来的发展,我们持开放态度。
+
+---
+
+## 凹编译器实现——路线
+
+凹编译器的工作过程如下图所示:
+
+```mermaid
+graph LR
+    wa_ext(.wa);
+    wago_ext(.wa.go);
+
+    wa_ast(Wa AST);
+
+    c_cpp(C/C++);
+    wasm(WASM);
+
+    wa_ext   --> wa_ast;
+    wago_ext --> wa_ast;
+
+    wa_ast --> c_cpp;
+    wa_ast --> wasm;
+```
+
+凹编译器支持 C/C++、WASM 等多种输出以满足不同的目标场景。当前阶段的主要任务:
+- 创建编译器框架
+- 确定前中后端模块间的接口
+- 设计能满足语法特性基线的运行时模型
+
+每种后端的进度互相独立,但显然目标代码越底层,需要考虑的细节也越多,因此在落地语法特性时,采用先高级目标后低级目标的顺序有利于问题的逐步降解。
+
+各后端可能的应用场景:
+
+- C/C++:凹语言™与 C/C++ 混合开发
+- WASM:直接编译为WebAssembly模块
+
+当任一后端模块覆盖“可用最小集”,我们将尝试开发一些简单的网页示例,待选的方向有交互式图形图像、在线编译等。
+
+---
+
+2022.7.23
\ No newline at end of file
diff --git a/images/2048-w4-01.jpg b/images/2048-w4-01.jpg
new file mode 100644
index 00000000..f494ab0a
Binary files /dev/null and b/images/2048-w4-01.jpg differ
diff --git a/images/arduino-nano33-01.png b/images/arduino-nano33-01.png
new file mode 100644
index 00000000..3651b3eb
Binary files /dev/null and b/images/arduino-nano33-01.png differ
diff --git a/images/logo/logo-2019.png b/images/logo/logo-2019.png
new file mode 100644
index 00000000..1e346429
Binary files /dev/null and b/images/logo/logo-2019.png differ
diff --git a/images/logo/logo-2019.svg b/images/logo/logo-2019.svg
new file mode 100644
index 00000000..de8030cb
--- /dev/null
+++ b/images/logo/logo-2019.svg
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/images/logo/logo-animate1-blue.svg b/images/logo/logo-animate1-blue.svg
new file mode 100644
index 00000000..74cd41c0
--- /dev/null
+++ b/images/logo/logo-animate1-blue.svg
@@ -0,0 +1,22 @@
+
+
+
+
+  
+
+  
+    
+  
+
+  
+    
+  
+
+  
+    
+  
+
+
\ No newline at end of file
diff --git a/images/logo/logo-animate1.svg b/images/logo/logo-animate1.svg
new file mode 100644
index 00000000..a362d983
--- /dev/null
+++ b/images/logo/logo-animate1.svg
@@ -0,0 +1,22 @@
+
+
+
+
+  
+
+  
+    
+  
+
+  
+    
+  
+
+  
+    
+  
+
+
\ No newline at end of file
diff --git a/images/logo/logo-animate2.svg b/images/logo/logo-animate2.svg
new file mode 100644
index 00000000..1d82228f
--- /dev/null
+++ b/images/logo/logo-animate2.svg
@@ -0,0 +1,24 @@
+
+
+
+
+  
+    
+  
+
+  
+    
+  
+
+  
+    
+  
+
+  
+    
+  
+
+
diff --git a/images/logo/logo-black.png b/images/logo/logo-black.png
new file mode 100644
index 00000000..68da850d
Binary files /dev/null and b/images/logo/logo-black.png differ
diff --git a/images/logo/logo-black.svg b/images/logo/logo-black.svg
new file mode 100644
index 00000000..333a8336
--- /dev/null
+++ b/images/logo/logo-black.svg
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/images/logo/logo-round-color-LightSeaGreen.png b/images/logo/logo-round-color-LightSeaGreen.png
new file mode 100644
index 00000000..52ef6b0f
Binary files /dev/null and b/images/logo/logo-round-color-LightSeaGreen.png differ
diff --git a/images/logo/logo-round-color-LightSeaGreen.svg b/images/logo/logo-round-color-LightSeaGreen.svg
new file mode 100644
index 00000000..3029bca2
--- /dev/null
+++ b/images/logo/logo-round-color-LightSeaGreen.svg
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/images/logo/logo-round.svg b/images/logo/logo-round.svg
new file mode 100644
index 00000000..e400e92b
--- /dev/null
+++ b/images/logo/logo-round.svg
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/images/logo/logo-white.png b/images/logo/logo-white.png
new file mode 100644
index 00000000..91d25d63
Binary files /dev/null and b/images/logo/logo-white.png differ
diff --git a/images/logo/logo-white.svg b/images/logo/logo-white.svg
new file mode 100644
index 00000000..4d761928
--- /dev/null
+++ b/images/logo/logo-white.svg
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/images/logo/logo.png b/images/logo/logo.png
new file mode 100644
index 00000000..0bf1caf0
Binary files /dev/null and b/images/logo/logo.png differ
diff --git a/images/logo/logo.svg b/images/logo/logo.svg
new file mode 100644
index 00000000..cf660bc8
--- /dev/null
+++ b/images/logo/logo.svg
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/images/logo/logo.txt b/images/logo/logo.txt
new file mode 100644
index 00000000..75825899
--- /dev/null
+++ b/images/logo/logo.txt
@@ -0,0 +1,7 @@
++---+    +---+
+| o |    | o |
+|   +----+   |
+|            |
+|    \/\/    |
+|            |
++------------+
diff --git a/images/logo/logo1024.txt b/images/logo/logo1024.txt
new file mode 100644
index 00000000..27d39c7d
--- /dev/null
+++ b/images/logo/logo1024.txt
@@ -0,0 +1,7 @@
++---+    +---+
+| o |    | o |
+|   +----+   |
+|            |
+|    1024    |
+|            |
++------------+
diff --git a/images/nes-01.png b/images/nes-01.png
new file mode 100644
index 00000000..c4d04cc7
Binary files /dev/null and b/images/nes-01.png differ
diff --git a/images/p5wa-01.png b/images/p5wa-01.png
new file mode 100644
index 00000000..5cf66253
Binary files /dev/null and b/images/p5wa-01.png differ
diff --git a/images/playground-01.png b/images/playground-01.png
new file mode 100644
index 00000000..5042db42
Binary files /dev/null and b/images/playground-01.png differ
diff --git a/images/proc.png b/images/proc.png
new file mode 100644
index 00000000..8467547d
Binary files /dev/null and b/images/proc.png differ
diff --git a/images/snake-01.jpg b/images/snake-01.jpg
new file mode 100644
index 00000000..bbfd426a
Binary files /dev/null and b/images/snake-01.jpg differ
diff --git a/images/snake-w4-01.png b/images/snake-w4-01.png
new file mode 100644
index 00000000..574982f7
Binary files /dev/null and b/images/snake-w4-01.png differ
diff --git a/images/tetris-w4-01.jpg b/images/tetris-w4-01.jpg
new file mode 100644
index 00000000..d494014b
Binary files /dev/null and b/images/tetris-w4-01.jpg differ
diff --git a/images/wasm4-game-snake-2048.png b/images/wasm4-game-snake-2048.png
new file mode 100644
index 00000000..a84183d5
Binary files /dev/null and b/images/wasm4-game-snake-2048.png differ
diff --git a/images/webgpu-01.png b/images/webgpu-01.png
new file mode 100644
index 00000000..c3608435
Binary files /dev/null and b/images/webgpu-01.png differ
diff --git a/index.html b/index.html
new file mode 100644
index 00000000..0765b74b
--- /dev/null
+++ b/index.html
@@ -0,0 +1,14 @@
+
+
+
+	wa-lang/wa
+
+	
+	
+	
+
+
+
+

wa-lang/wa

+

hello https://github.com/wa-lang/wa

+
diff --git a/snake/RocherColorGX.woff2 b/snake/RocherColorGX.woff2 new file mode 100644 index 00000000..8a40b64a Binary files /dev/null and b/snake/RocherColorGX.woff2 differ diff --git a/snake/index.css b/snake/index.css new file mode 100644 index 00000000..6b1d5cb6 --- /dev/null +++ b/snake/index.css @@ -0,0 +1,410 @@ +* { + margin: 0; + padding: 0; +} + +@font-face { + font-family: 'Rocher'; + src: url('./RocherColorGX.woff2') format('woff2'); +} + +@font-palette-values --pink { + font-family: Rocher; + base-palette: 1; +} + +@font-palette-values --mint { + font-family: Rocher; + base-palette: 7; +} + +:root { + --wa-color: #00A39A; + --wa-bg: #2e2e2e; + --wa-bg2: #202020; + --wa-trans: translate(-50%, -50%); + --wa-handle-dir: calc(50% - 30px); + --wa-shadow: + rgb(45 35 66 / 40%) 0 2px 4px, + rgb(45 35 66 / 30%) 0 7px 13px -3px; +} + +.tips { + position: absolute; + top: calc(50% - 355px); + left: calc(50% - 392px); + color: var(--wa-bg); + font-family: Rocher; + font-size: 2em; + font-palette: --mint; +} + +#box { + background: var(--wa-color); + border-radius: 1em; + box-shadow: 0.2em 0.2em 2em rgba(46, 46, 46, 0.5); + padding: 0.5em; + position: absolute; + top: 50%; + left: 50%; + transform: var(--wa-trans) +} + +#game { + background: var(--wa-color); + border-radius: 1em; + display: flex; + flex-direction: column; + position: relative; +} + +#game::before { + content: ''; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + box-shadow: + 10px 10px 30px #006E67, + -10px -10px 40px #006E67, + inset -10px -10px 10px #008880, + inset 10px 10px 10px #008880, + inset 10px 10px 10px var(--wa-color); + filter: blur(3px); +} + +.game__title { + font-size: 1.2em; + text-align: left; + padding: 0 0.6em; + margin: 0.2em 0; + display: block; + font-family: 'Rocher'; + position: relative; + z-index: 1; +} + +.game__title sup { + font-size: 0.6em; + color: #fff; +} + +#game__screen { + background: var(--wa-bg); + box-shadow: var(--wa-shadow), var(--wa-bg2) 0 -3px 0 inset; + border-radius: 1em; + margin: 0 0.3em 0.3em; + padding: 0.6em; + display: flex; + justify-content: center; + align-items: center; + position: relative; + z-index: 1; +} + +#game__screen-content { + width: 320px; + height: 320px; + border-radius: 0.5em; + overflow: hidden; + aspect-ratio: 1; + place-content: center; + background: #8C957B; +} + +#game__operate { + flex: 1; + padding: 0.3em; + display: flex; +} + +#game__operate-direction, +.game__operate-ghost { + margin: 0.5em; + width: 180px; + height: 180px; + position: relative; +} + +#game__operate-direction .direction__item { + align-items: center; + appearance: none; + background: var(--wa-bg); + border-radius: 50%; + border-width: 0; + box-shadow: var(--wa-shadow), var(--wa-bg2) 0 -3px 0 inset; + height: 60px; + width: 60px; + position: absolute; + user-select: none; + -webkit-user-select: none; + touch-action: manipulation; + white-space: nowrap; + will-change: box-shadow, transform; +} + +#game__operate-direction .direction__item::after { + content: ''; + position: absolute; + top: -10px; + left: -10px; + right: -10px; + bottom: -10px; +} + +#game__operate-direction .direction__item::before { + content: ''; + display: block; + width: 0; + height: 0; + border-style: solid; + border-width: 0 0.5em 0.866em 0.5em; + border-color: transparent transparent #fff transparent; + position: absolute; + top: 50%; + left: 50%; +} + +#game__operate-direction--up { + top: 0; + left: var(--wa-handle-dir); +} + +#game__operate-direction--up::before { + transform: var(--wa-trans) +} + +#game__operate-direction--right { + top: var(--wa-handle-dir); + right: 0; +} + +#game__operate-direction--right::before { + transform: var(--wa-trans) rotate(90deg); +} + +#game__operate-direction--down { + bottom: 0; + left: var(--wa-handle-dir); +} + +#game__operate-direction--down::before { + transform: var(--wa-trans) rotate(180deg); +} + +#game__operate-direction--left { + top: var(--wa-handle-dir); + left: 0; +} + +#game__operate-direction--left::before { + transform: var(--wa-trans) rotate(270deg); +} + +.game__operate-ghost { + border-radius: 50%; + background: rgba(46, 46, 46, 0.8); + box-shadow: var(--wa-shadow), var(--wa-bg2) 0 -3px 0 inset; +} + +.game__operate-ghost::before { + content: ''; + display: block; + width: 55px; + height: 55px; + background: var(--wa-bg); + position: absolute; + top: 50%; + left: 50%; + transform: var(--wa-trans); + z-index: 1; +} + +.game__operate-ghost span { + background: var(--wa-bg); + height: 55px; + width: 55px; + position: absolute; +} + +.game__operate-ghost span:nth-child(1) { + top: 10px; + left: 50%; + transform: translateX(-50%); + border-radius: 10px 10px 0 0; + box-shadow: var(--wa-shadow), var(--wa-bg2) -3px 0px 0 inset; +} + +.game__operate-ghost span::before { + content: ''; + display: block; + width: 0; + height: 0; + border-style: solid; + border-width: 0 10px 16px 10px; + border-color: transparent transparent var(--wa-bg2) transparent; + position: absolute; + top: 50%; + left: 50%; +} + +.game__operate-ghost span:nth-child(1)::before { + transform: var(--wa-trans); +} + +.game__operate-ghost span:nth-child(2) { + top: 50%; + left: 10px; + transform: translateY(-50%); + border-radius: 10px 0 0 10px; + box-shadow: var(--wa-shadow), var(--wa-bg2) 0px -3px 0 inset; +} + +.game__operate-ghost span:nth-child(2)::before { + transform: var(--wa-trans) rotate(270deg); +} + +.game__operate-ghost span:nth-child(3) { + top: 50%; + right: 10px; + transform: translateY(-50%); + border-radius: 0 10px 10px 0; + box-shadow: var(--wa-shadow), var(--wa-bg2) -3px 0px 0 inset; +} + +.game__operate-ghost span:nth-child(3)::before { + transform: var(--wa-trans) rotate(90deg); +} + +.game__operate-ghost span:nth-child(4) { + bottom: 10px; + left: 50%; + transform: translateX(-50%); + border-radius: 0 0 10px 10px; + box-shadow: var(--wa-shadow), var(--wa-bg2) -3px -3px 0 inset; +} + +.game__operate-ghost span:nth-child(4)::before { + transform: var(--wa-trans) rotate(180deg); +} + +.game__operate-assist { + flex: 1; + display: flex; + position: relative; +} + +.game__operate-assist--btns { + position: absolute; + top: 0; + width: 8em; + height: 2em; +} + +.game__operate-assist--btns span:nth-child(1)::before, +.game__operate-assist--btns span:nth-child(1)::after { + content: ""; + position: absolute; + top: 0; + width: 3em; + height: 2em; + align-items: center; + appearance: none; + background: var(--wa-bg); + border-width: 0; + box-shadow: var(--wa-shadow), var(--wa-bg2) 0 -3px 0 inset;; + box-sizing: border-box; + height: 1em; + width: 3em; + border-radius: 0.5em; +} + +.game__operate-assist--btns span:nth-child(1)::before { + left: 0.6em; +} + +.game__operate-assist--btns span:nth-child(1)::after { + left: 4.6em; +} + +.game__operate-assist--btns span:nth-child(2)::before, +.game__operate-assist--btns span:nth-child(2)::after { + position: absolute; + width: 3em; + height: 2em; + color: var(--wa-bg2); + font-size: 0.6em; + font-family: 'Rocher'; + font-palette: --pink; +} + +.game__operate-assist--btns span:nth-child(2)::before { + content: "SELECT"; + top: 2em; + left: 1.4em; +} + +.game__operate-assist--btns span:nth-child(2)::after { + content: "START"; + top: 2em; + left: 8.4em; +} + +.game__operate-assist--audio { + position: absolute; + bottom: 0; + width: 5em; + height: 3em; + margin: 0 0 0.6em 0.6em; +} + +.game__operate-assist--audio::before { + --s: 6px; + content: ""; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background:radial-gradient(var(--wa-bg) 24%,#0000 15%); + background-size: var(--s) var(--s); +} + +@media screen and (min-width: 768px) { + #box { + width: 768px; + max-width: 768px; + } + + .game__title { + margin: 0.8em 0.2em; + } + + .game__operate-assist { + flex-direction: column; + justify-content: space-between; + align-items: center; + } +} + +@media screen and (max-width: 768px) { + .tips { + display: none; + } + + #box { + width: 100%; + max-width: fit-content; + } + + .game__operate-ghost { + display: none; + } + + #game__operate-direction .direction__item:active { + box-shadow: var(--wa-bg2) 0 3px 7px inset; + transform: translateY(2px); + } + +} \ No newline at end of file diff --git a/snake/index.html b/snake/index.html new file mode 100644 index 00000000..18bd966f --- /dev/null +++ b/snake/index.html @@ -0,0 +1,42 @@ + + + + + + + + Wa: Snack Game + + + + + Please use the keyboard to control +
+
+ + Wa Snack Game + 2022 + +
+
+
+
+
+
+ + +
+
+ + + + +
+
+
+
+ + + + + \ No newline at end of file diff --git a/snake/index.js b/snake/index.js new file mode 100644 index 00000000..9bf944ad --- /dev/null +++ b/snake/index.js @@ -0,0 +1,23 @@ +(() => { + document.documentElement.addEventListener('touchstart', (event) => { + if (event.touches.length > 1) { event.preventDefault(); } + }, { passive: false }); + + let lastTouchEnd = 0; + document.documentElement.addEventListener('touchend', (event) => { + let now = Date.now(); + if (now - lastTouchEnd <= 500) { event.preventDefault() } + lastTouchEnd = now; + }, { passive: false }); + +})() + +const IS_MOBILE = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent); + +const DIR_ID_PREFIX = 'game__operate-direction--'; +const MOBILE_DIR_MAP = [ + { id: `${DIR_ID_PREFIX}up`, keyCode: 38 }, + { id: `${DIR_ID_PREFIX}down`, keyCode: 40 }, + { id: `${DIR_ID_PREFIX}left`, keyCode: 37 }, + { id: `${DIR_ID_PREFIX}right`, keyCode: 39 }, +]; \ No newline at end of file diff --git a/snake/snake.jpg b/snake/snake.jpg new file mode 100644 index 00000000..4cf1ba8c Binary files /dev/null and b/snake/snake.jpg differ diff --git a/snake/snake.wasm b/snake/snake.wasm new file mode 100644 index 00000000..c29dee7b Binary files /dev/null and b/snake/snake.wasm differ diff --git a/snake/wa_app.js b/snake/wa_app.js new file mode 100644 index 00000000..34839789 --- /dev/null +++ b/snake/wa_app.js @@ -0,0 +1,139 @@ +(() => { + class WaApp { + constructor() { + this._inst = null; + } + + init(url) { + let app = this; + let importsObject = { + syscall_js: new function () { + this.print_bool = (b) => { console.log(b) }, + this.print_u32 = (i) => { console.log(i) }, + this.print_i32 = (i) => { console.log(i) }, + this.print_u64 = (i) => { console.log(i) }, + this.print_u64 = (i) => { console.log(i) }, + this.print_i64 = (i) => { console.log(i) }, + this.print_f32 = (f) => { console.log(f) }, + this.print_f64 = (f) => { console.log(f) }, + this.print_ptr = (p) => { console.log(p) }, + this.print_str = (d, l) => { + const mem = app._inst.exports.memory; + const mem_view = new DataView(mem.buffer, d, l); + const s = new TextDecoder("utf-8").decode(mem_view); + console.log(s); + } + this.proc_exit = (code) => { alert(code) }, + this.print_rune = (c) => { + let ch = String.fromCodePoint(c); + console.log(ch) + } + }, + snake_game: new function () { + this.rand = (m) => { + return parseInt(Math.random() * m) + } + + this.newCanvas = (w, h) => { + let canvas = document.createElement('canvas'); + canvas.width = w; + canvas.height = h; + canvas.id = 0; //!!!!! + + const waContent = document.getElementById('game__screen-content'); + waContent.appendChild(canvas); + + function getPointOnCanvas(x, y) { + var bbox = canvas.getBoundingClientRect(); + return { + x: parseInt((x - bbox.left) * (canvas.width / bbox.width)), + y: parseInt((y - bbox.top) * (canvas.height / bbox.height)) + }; + } + + function onMouseDown(ev) { + let pt = getPointOnCanvas(ev.clientX, ev.clientY); + app._inst.exports['snake.Canvas_OnMouseDown'](canvas.id, pt.x, pt.y); + } + + function onMouseUp(ev) { + let pt = getPointOnCanvas(ev.clientX, ev.clientY); + app._inst.exports['snake.Canvas_OnMouseUp'](canvas.id, pt.x, pt.y); + } + + function onKeyDown(ev) { + app._inst.exports['snake.Canvas_OnKeyDown'](canvas.id, ev.keyCode); + } + + function onKeyUp(ev) { + app._inst.exports['snake.Canvas_OnKeyUp'](canvas.id, ev.keyCode); + } + + if (IS_MOBILE) { + MOBILE_DIR_MAP.forEach((dir) => { + const el = document.getElementById(dir.id); + el.addEventListener('touchstart', (ev) => onKeyDown({ keyCode: dir.keyCode })); + el.addEventListener('touchend', (ev) => onKeyUp({ keyCode: dir.keyCode })); + }); + } + + canvas.addEventListener('mousedown', onMouseDown, true); + canvas.addEventListener('mouseup', onMouseUp, true); + canvas.addEventListener('keydown', onKeyDown, true); + canvas.addEventListener('keyup', onKeyUp, true); + canvas.tabIndex = -1; //tabindex + canvas.focus(); + + this._ctx = canvas.getContext('2d'); + this._canvas = canvas; + return canvas.id; + } + this.updateCanvas = (id, block, data) => { + let img = this._ctx.createImageData(this._canvas.width, this._canvas.height); + let buf_len = this._canvas.width * this._canvas.height * 4 + let buf = app.memUint8Array(data, buf_len); + for (var i = 0; i < buf_len; i++) { + img.data[i] = buf[i]; + } + this._ctx.putImageData(img, 0, 0); + } + } + } + WebAssembly.instantiateStreaming(fetch(url), importsObject).then(res => { + this._inst = res.instance; + this._inst.exports._start(); + this._inst.exports['snake.main'](); + const timer = setInterval(gameLoop, 150); + }) + } + + mem() { + return this._inst.exports.memory; + } + + memView(addr, len) { + return new DataView(this._inst.exports.memory.buffer, addr, len); + } + + memUint8Array(addr, len) { + return new Uint8Array(this.mem().buffer, addr, len) + } + + getString(addr, len) { + return new TextDecoder("utf-8").decode(this.memView(addr, len)); + } + + setString(addr, len, s) { + const bytes = new TextEncoder("utf-8").encode(s); + if (len > bytes.length) { len = bytes.length; } + this.MemUint8Array(addr, len).set(bytes); + } + } + + function gameLoop() { + window['waApp']._inst.exports['snake.Step'](); + } + + window['waApp'] = new WaApp(); + window['waApp'].init("./snake.wasm") +})() \ No newline at end of file diff --git a/w4-2048/cart.wasm b/w4-2048/cart.wasm new file mode 100644 index 00000000..0dcbe6d4 Binary files /dev/null and b/w4-2048/cart.wasm differ diff --git a/w4-2048/favicon.ico b/w4-2048/favicon.ico new file mode 100644 index 00000000..1e3dcdc7 Binary files /dev/null and b/w4-2048/favicon.ico differ diff --git a/w4-2048/index.html b/w4-2048/index.html new file mode 100644 index 00000000..889693a0 --- /dev/null +++ b/w4-2048/index.html @@ -0,0 +1,14 @@ + + + + + + + Wa-lang/WASM-4 Game + + + + + + + diff --git a/w4-2048/w42048.wat b/w4-2048/w42048.wat new file mode 100644 index 00000000..e86131ea --- /dev/null +++ b/w4-2048/w42048.wat @@ -0,0 +1,31765 @@ +(module $__walang__ + (import "env" "traceUtf8" (func $runtime.traceUtf8 (param i32) (param i32))) + (import "env" "line" (func $syscall$wasm4.__import__line (param i32) (param i32) (param i32) (param i32))) + (import "env" "rect" (func $syscall$wasm4.__import__rect (param i32) (param i32) (param i32) (param i32))) + (import "env" "textUtf8" (func $syscall$wasm4.__import__textUtf8 (param i32) (param i32) (param i32) (param i32))) + (import "env" "tone" (func $syscall$wasm4.__import__tone (param i32) (param i32) (param i32) (param i32))) + (import "env" "traceUtf8" (func $syscall$wasm4.__import__traceUtf8 (param i32) (param i32))) + (import "env" "memory" (memory 1)) + (table 41 funcref) + (type $$onFree (func (param i32))) + (type $$wa.runtime.comp (func (param i32) (param i32) (result i32))) + (type $$$fnSig1 (func (param i32) (param i32) (result i32 i32 i32))) + (type $$$fnSig2 (func (param i32) (param i32))) + (type $$$fnSig3 (func (param i32) (param i32) (param i32) (param i32) (result i32))) + (type $$$fnSig4 (func (param i32) (param i32) (param i32))) + (type $$$fnSig5 (func (param i32) (param i32) (result i32))) + (type $$$fnSig6 (func (param i32) (param i32) (result i32))) + (type $$$fnSig7 (func (result i32))) + (global $__stack_ptr (mut i32) (i32.const 14656)) + (global $__heap_max i32 (i32.const 65536)) + (global $$wa.runtime.closure_data (mut i32) (i32.const 0)) + (global $$wa.runtime._concretTypeCount (mut i32) (i32.const 4)) + (global $$wa.runtime._interfaceCount (mut i32) (i32.const 3)) + (global $$wa.runtime._itabsPtr (mut i32) (i32.const 46264)) + (global $runtime.init$guard (mut i32) (i32.const 0)) + (global $$knr_basep (mut i32) (i32.const 0)) + (global $$knr_freep (mut i32) (i32.const 0)) + (global $math._cos.0 i32 (i32.const 0)) + (global $math._cos.1 i32 (i32.const 14792)) + (global $math._sin.0 i32 (i32.const 0)) + (global $math._sin.1 i32 (i32.const 14840)) + (global $math.init$guard (mut i32) (i32.const 0)) + (global $math$bits.deBruijn32tab.0 i32 (i32.const 0)) + (global $math$bits.deBruijn32tab.1 i32 (i32.const 14888)) + (global $math$bits.deBruijn64tab.0 i32 (i32.const 0)) + (global $math$bits.deBruijn64tab.1 i32 (i32.const 14920)) + (global $math$bits.init$guard (mut i32) (i32.const 0)) + (global $errors.init$guard (mut i32) (i32.const 0)) + (global $strconv.ErrRange.0 i32 (i32.const 0)) + (global $strconv.ErrRange.1 i32 (i32.const 14984)) + (global $strconv.ErrSyntax.0 i32 (i32.const 0)) + (global $strconv.ErrSyntax.1 i32 (i32.const 15000)) + (global $strconv.detailedPowersOfTen.0 i32 (i32.const 0)) + (global $strconv.detailedPowersOfTen.1 i32 (i32.const 15016)) + (global $strconv.f64info.0 i32 (i32.const 0)) + (global $strconv.f64info.1 i32 (i32.const 26152)) + (global $strconv.float32info.0 i32 (i32.const 0)) + (global $strconv.float32info.1 i32 (i32.const 26164)) + (global $strconv.float32pow10.0 i32 (i32.const 0)) + (global $strconv.float32pow10.1 i32 (i32.const 26176)) + (global $strconv.float64pow10.0 i32 (i32.const 0)) + (global $strconv.float64pow10.1 i32 (i32.const 26224)) + (global $strconv.init$guard (mut i32) (i32.const 0)) + (global $strconv.isGraphic.0 i32 (i32.const 0)) + (global $strconv.isGraphic.1 i32 (i32.const 26408)) + (global $strconv.isNotPrint16.0 i32 (i32.const 0)) + (global $strconv.isNotPrint16.1 i32 (i32.const 26440)) + (global $strconv.isNotPrint32.0 i32 (i32.const 0)) + (global $strconv.isNotPrint32.1 i32 (i32.const 26704)) + (global $strconv.isPrint16.0 i32 (i32.const 0)) + (global $strconv.isPrint16.1 i32 (i32.const 26894)) + (global $strconv.isPrint32.0 i32 (i32.const 0)) + (global $strconv.isPrint32.1 i32 (i32.const 27764)) + (global $strconv.leftcheats.0 i32 (i32.const 0)) + (global $strconv.leftcheats.1 i32 (i32.const 29636)) + (global $strconv.optimize.0 i32 (i32.const 0)) + (global $strconv.optimize.1 i32 (i32.const 30612)) + (global $strconv.powtab.0 i32 (i32.const 0)) + (global $strconv.powtab.1 i32 (i32.const 30616)) + (global $strconv.u64pow10.0 i32 (i32.const 0)) + (global $strconv.u64pow10.1 i32 (i32.const 30656)) + (global $syscall$wasm4.init$guard (mut i32) (i32.const 0)) + (global $unicode$utf8.acceptRanges.0 i32 (i32.const 0)) + (global $unicode$utf8.acceptRanges.1 i32 (i32.const 30816)) + (global $unicode$utf8.first.0 i32 (i32.const 0)) + (global $unicode$utf8.first.1 i32 (i32.const 30848)) + (global $unicode$utf8.init$guard (mut i32) (i32.const 0)) + (global $w42048.init$guard (mut i32) (i32.const 0)) + (global $w42048.sfxDown.0 i32 (i32.const 0)) + (global $w42048.sfxDown.1 i32 (i32.const 31104)) + (global $w42048.sfxLeft.0 i32 (i32.const 0)) + (global $w42048.sfxLeft.1 i32 (i32.const 31140)) + (global $w42048.sfxRight.0 i32 (i32.const 0)) + (global $w42048.sfxRight.1 i32 (i32.const 31176)) + (global $w42048.sfxUp.0 i32 (i32.const 0)) + (global $w42048.sfxUp.1 i32 (i32.const 31212)) + (global $w42048.ui.0 i32 (i32.const 0)) + (global $w42048.ui.1 i32 (i32.const 31248)) + (global $w42048$game.init$guard (mut i32) (i32.const 0)) + (global $w42048$palettes.All.0 i32 (i32.const 0)) + (global $w42048$palettes.All.1 i32 (i32.const 31256)) + (global $w42048$palettes.BluesGB.0 i32 (i32.const 0)) + (global $w42048$palettes.BluesGB.1 i32 (i32.const 31272)) + (global $w42048$palettes.EN4.0 i32 (i32.const 0)) + (global $w42048$palettes.EN4.1 i32 (i32.const 31288)) + (global $w42048$palettes.GBChocolate.0 i32 (i32.const 0)) + (global $w42048$palettes.GBChocolate.1 i32 (i32.const 31304)) + (global $w42048$palettes.Grapefruit.0 i32 (i32.const 0)) + (global $w42048$palettes.Grapefruit.1 i32 (i32.const 31320)) + (global $w42048$palettes.GreyMist.0 i32 (i32.const 0)) + (global $w42048$palettes.GreyMist.1 i32 (i32.const 31336)) + (global $w42048$palettes.IceCreamGB.0 i32 (i32.const 0)) + (global $w42048$palettes.IceCreamGB.1 i32 (i32.const 31352)) + (global $w42048$palettes.Keeby.0 i32 (i32.const 0)) + (global $w42048$palettes.Keeby.1 i32 (i32.const 31368)) + (global $w42048$palettes.Lightgreen.0 i32 (i32.const 0)) + (global $w42048$palettes.Lightgreen.1 i32 (i32.const 31384)) + (global $w42048$palettes.Platinum.0 i32 (i32.const 0)) + (global $w42048$palettes.Platinum.1 i32 (i32.const 31400)) + (global $w42048$palettes.Warmlight.0 i32 (i32.const 0)) + (global $w42048$palettes.Warmlight.1 i32 (i32.const 31416)) + (global $w42048$palettes.init$guard (mut i32) (i32.const 0)) + (global $runtime.zptr (mut i32) (i32.const 35032)) + (global $__heap_base i32 (i32.const 46336)) + (func $runtime.throw + unreachable + ) + (func $runtime.heapBase (result i32) + global.get $__heap_base + ) + (func $runtime.heapMax (result i32) + global.get $__heap_max + ) + (func $runtime.HeapAlloc (export "runtime.HeapAlloc") (param $nbytes i32) (result i32) + (local $ptr i32) + local.get $nbytes + i32.eqz + if + i32.const 0 + return + end + local.get $nbytes + i32.const 7 + i32.add + i32.const 8 + i32.div_u + i32.const 8 + i32.mul + local.set $nbytes + local.get $nbytes + call $runtime.malloc + local.set $ptr + loop $zero + local.get $nbytes + i32.const 8 + i32.sub + local.tee $nbytes + local.get $ptr + i32.add + i64.const 0 + i64.store align=8 + local.get $nbytes + if + br $zero + end + end + local.get $ptr + ) + (func $runtime.HeapFree (export "runtime.HeapFree") (param $ptr i32) + local.get $ptr + call $runtime.free + ) + (func $runtime.Block.Init (param $ptr i32) (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + i32.const 1 + i32.store align=1 + local.get $ptr + local.get $item_count + i32.store offset=4 align=1 + local.get $ptr + local.get $release_func + i32.store offset=8 align=1 + local.get $ptr + local.get $item_size + i32.store offset=12 align=1 + end + ) + (func $runtime.Block.HeapAlloc (export "runtime.Block.HeapAlloc") (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $item_count + local.get $item_size + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $item_count + local.get $release_func + local.get $item_size + call $runtime.Block.Init + ) + (func $runtime.DupI32 (param $a i32) (result i32 i32) + local.get $a + local.get $a + ) + (func $runtime.Block.Retain (export "runtime.Block.Retain") (param $ptr i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + local.get $ptr + i32.load align=1 + i32.const 1 + i32.add + i32.store align=1 + end + ) + (func $runtime.Block.Release (export "runtime.Block.Release") (param $ptr i32) + (local $ref_count i32) + (local $item_count i32) + (local $free_func i32) + (local $item_size i32) + (local $data_ptr i32) + local.get $ptr + i32.const 0 + i32.eq + if + return + end + local.get $ptr + i32.load align=1 + i32.const 1 + i32.sub + local.set $ref_count + local.get $ref_count + if + local.get $ptr + local.get $ref_count + i32.store align=1 + else + local.get $ptr + i32.load offset=8 align=1 + local.set $free_func + local.get $free_func + if + local.get $ptr + i32.load offset=4 align=1 + local.set $item_count + local.get $item_count + if + local.get $ptr + i32.load offset=12 align=1 + local.set $item_size + local.get $ptr + i32.const 16 + i32.add + local.set $data_ptr + loop $free_next + local.get $data_ptr + local.get $free_func + call_indirect 0 (type $$onFree) + local.get $item_count + i32.const 1 + i32.sub + local.set $item_count + local.get $item_count + if + local.get $data_ptr + local.get $item_size + i32.add + local.set $data_ptr + br $free_next + end + end + end + end + local.get $ptr + call $runtime.HeapFree + end + ) + (func $$wa.runtime.string_to_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) + local.get $d + ) + (func $$wa.runtime.string_to_iter (param $b i32) (param $d i32) (param $l i32) (result i32 i32 i32) + local.get $d + local.get $l + i32.const 0 + ) + (func $$syscall/wasm4.__linkname__string_data_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) + local.get $d + ) + (func $$syscall/wasm4.__linkname__make_slice (param $blk i32) (param $ptr i32) (param $len i32) (param $cap i32) (result i32 i32 i32 i32) + local.get $blk + local.get $ptr + local.get $len + local.get $cap + return + ) + (func $$string.appendstr (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32 i32 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $item i32) + (local $src i32) + (local $dest i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_len + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + ) + (func $$string.$$compAddr (param $p0 i32) (param $p1 i32) (result i32) + (local $v0.0 i32) + (local $v0.1 i32) + (local $v0.2 i32) + (local $v1.0 i32) + (local $v1.1 i32) + (local $v1.2 i32) + local.get $p0 + if + local.get $p0 + i32.load + call $runtime.Block.Retain + local.get $p0 + i32.load offset=4 + local.get $p0 + i32.load offset=8 + local.set $v0.2 + local.set $v0.1 + local.get $v0.0 + call $runtime.Block.Release + local.set $v0.0 + end + local.get $p1 + if + local.get $p1 + i32.load + call $runtime.Block.Retain + local.get $p1 + i32.load offset=4 + local.get $p1 + i32.load offset=8 + local.set $v1.2 + local.set $v1.1 + local.get $v1.0 + call $runtime.Block.Release + local.set $v1.0 + end + local.get $v0.0 + local.get $v0.1 + local.get $v0.2 + local.get $v1.0 + local.get $v1.1 + local.get $v1.2 + call $$wa.runtime.string_Comp + local.get $v0.0 + call $runtime.Block.Release + local.get $v1.0 + call $runtime.Block.Release + ) + (func $$u8.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$string.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $runtime.free (param $ap i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 + end + i32.const 0 + local.set $$current_block + local.get $ap + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ap + i32.const 8 + i32.sub + local.set $$t1 + i32.const 0 + local.set $$t2.0 + i32.const 0 + local.set $$t2.1 + local.get $$t1 + call $runtime.knr_getBlockHeader + local.set $$t3.1 + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.set $$t2.1 + local.set $$t2.0 + local.get $$t2.1 + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.le_u + local.set $$t5 + local.get $$t5 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $ap + i32.const 8 + i32.rem_u + local.set $$t6 + local.get $$t6 + i32.const 0 + i32.eq + i32.eqz + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + global.get $$knr_freep + local.set $$t8 + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + local.get $$t8 + call $runtime.knr_getBlockHeader + local.set $$t10.1 + local.set $$t10.0 + local.get $$t10.0 + local.get $$t10.1 + local.set $$t9.1 + local.set $$t9.0 + br $$Block_7 + end + i32.const 6 + local.set $$current_block + local.get $$t9.0 + local.set $$t11 + local.get $$t12 + local.get $$t11 + i32.ge_u + local.set $$t13 + local.get $$t13 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $$t2.1 + local.set $$t14 + local.get $$t14 + i32.const 8 + i32.mul + local.set $$t15 + local.get $$t1 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t9.0 + local.set $$t17 + local.get $$t16 + local.get $$t17 + i32.eq + local.set $$t18 + local.get $$t18 + if + br $$Block_12 + else + br $$Block_14 + end + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t19 + end + local.set $$t12 + i32.const 8 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t9.0 + local.set $$t21 + local.get $$t1 + local.get $$t21 + i32.lt_u + local.set $$t22 + local.get $$t22 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t9.0 + local.set $$t19 + local.get $$t19 + call $runtime.knr_getBlockHeader + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t9.1 + local.set $$t9.0 + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t24 + local.get $$t24 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 12 + local.set $$current_block + local.get $$t9.0 + local.set $$t25 + local.get $$t1 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 0 + local.set $$t27.0 + i32.const 0 + local.set $$t27.1 + local.get $$t9.0 + local.set $$t28 + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t29.1 + local.set $$t29.0 + local.get $$t29.0 + local.get $$t29.1 + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.1 + local.set $$t30 + local.get $$t2.1 + local.set $$t31 + local.get $$t31 + local.get $$t30 + i32.add + local.set $$t32 + local.get $$t32 + local.set $$t2.1 + local.get $$t27.0 + local.set $$t33 + local.get $$t33 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t34.1 + local.set $$t34.0 + local.get $$t1 + local.get $$t34.0 + local.get $$t34.1 + call $runtime.knr_setBlockHeader + br $$Block_13 + end + i32.const 14 + local.set $$current_block + local.get $$t9.1 + local.set $$t35 + local.get $$t35 + i32.const 8 + i32.mul + local.set $$t36 + local.get $$t12 + local.get $$t36 + i32.add + local.set $$t37 + local.get $$t37 + local.get $$t1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_15 + else + br $$Block_17 + end + end + i32.const 15 + local.set $$current_block + local.get $$t9.0 + local.set $$t39 + local.get $$t39 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t40.1 + local.set $$t40.0 + local.get $$t1 + local.get $$t40.0 + local.get $$t40.1 + call $runtime.knr_setBlockHeader + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $$t2.1 + local.set $$t41 + local.get $$t9.1 + local.set $$t42 + local.get $$t42 + local.get $$t41 + i32.add + local.set $$t43 + local.get $$t43 + local.set $$t9.1 + local.get $$t2.0 + local.set $$t44 + local.get $$t44 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t45.1 + local.set $$t45.0 + local.get $$t12 + local.get $$t45.0 + local.get $$t45.1 + call $runtime.knr_setBlockHeader + br $$Block_16 + end + i32.const 17 + local.set $$current_block + local.get $$t12 + global.set $$knr_freep + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t1 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t46.1 + local.set $$t46.0 + local.get $$t12 + local.get $$t46.0 + local.get $$t46.1 + call $runtime.knr_setBlockHeader + i32.const 17 + local.set $$block_selector + br $$BlockDisp + end + end + end + ) + (func $runtime.getItab (param $dhash i32) (param $ihash i32) (param $commanok i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + global.get $$wa.runtime._itabsPtr + local.set $$t0 + local.get $dhash + i32.const 1 + i32.sub + local.set $$t1 + global.get $$wa.runtime._interfaceCount + local.set $$t2 + local.get $$t1 + local.get $$t2 + i32.mul + local.set $$t3 + local.get $$t3 + local.get $ihash + i32.sub + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.sub + local.set $$t5 + local.get $$t5 + i32.const 4 + i32.mul + local.set $$t6 + local.get $$t0 + local.get $$t6 + i32.add + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + call $runtime.getU32 + local.set $$t9 + local.get $$t9 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $runtime.getU32 (param $addr i32) (result i32) + local.get $addr + i32.load + ) + (func $runtime.get_u8 (param $addr i32) (result i32) + local.get $addr + i32.load8_u align=1 + ) + (func $runtime.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $runtime.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $runtime.init$guard + call $syscall$wasm4.init + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $runtime.knr_getBlockHeader (param $addr i32) (result i32 i32) + local.get $addr + i32.load + local.get $addr + i32.load offset=4 + ) + (func $runtime.knr_setBlockHeader (param $addr i32) (param $data.0 i32) (param $data.1 i32) + local.get $addr + local.get $data.0 + i32.store + local.get $addr + local.get $data.1 + i32.store offset=4 + ) + (func $runtime.malloc (param $nbytes i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 + end + i32.const 0 + local.set $$current_block + local.get $nbytes + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + global.get $$knr_basep + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + call $runtime.heapMax + local.set $$t3 + global.get $$knr_basep + local.set $$t4 + local.get $$t3 + local.get $$t4 + i32.sub + local.set $$t5 + local.get $nbytes + local.get $$t5 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + call $runtime.heapBase + local.set $$t7 + local.get $$t7 + global.set $$knr_basep + global.get $$knr_basep + local.set $$t8 + local.get $$t8 + global.set $$knr_freep + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t10 + call $runtime.heapMax + local.set $$t11 + global.get $$knr_basep + local.set $$t12 + local.get $$t11 + local.get $$t12 + i32.sub + local.set $$t13 + local.get $$t13 + i32.const 8 + i32.div_u + local.set $$t14 + local.get $$t14 + i32.const 1 + i32.sub + local.set $$t15 + local.get $$t10 + local.set $$t9.0 + local.get $$t15 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t16 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t17.1 + local.set $$t17.0 + local.get $$t16 + local.get $$t17.0 + local.get $$t17.1 + call $runtime.knr_setBlockHeader + br $$Block_4 + end + i32.const 5 + local.set $$current_block + local.get $nbytes + i32.const 8 + i32.add + local.set $$t18 + local.get $$t18 + i32.const 1 + i32.sub + local.set $$t19 + local.get $$t19 + i32.const 8 + i32.div_u + local.set $$t20 + local.get $$t20 + i32.const 1 + i32.add + local.set $$t21 + global.get $$knr_freep + local.set $$t22 + i32.const 0 + local.set $$t23.0 + i32.const 0 + local.set $$t23.1 + local.get $$t22 + call $runtime.knr_getBlockHeader + local.set $$t24.1 + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.set $$t25 + i32.const 0 + local.set $$t26.0 + i32.const 0 + local.set $$t26.1 + local.get $$t25 + call $runtime.knr_getBlockHeader + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.0 + local.get $$t27.1 + local.set $$t26.1 + local.set $$t26.0 + br $$Block_5 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t22 + else + local.get $$t28 + end + local.set $$t29 + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t25 + else + local.get $$t30 + end + local.set $$t28 + i32.const 6 + local.set $$current_block + local.get $$t26.1 + local.set $$t31 + local.get $$t31 + local.get $$t21 + i32.ge_u + local.set $$t32 + local.get $$t32 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t26.1 + local.set $$t33 + local.get $$t33 + local.get $$t21 + i32.eq + local.set $$t34 + local.get $$t34 + if + br $$Block_8 + else + br $$Block_10 + end + end + i32.const 8 + local.set $$current_block + global.get $$knr_freep + local.set $$t35 + local.get $$t28 + local.get $$t35 + i32.eq + local.set $$t36 + local.get $$t36 + if + br $$Block_11 + else + br $$Block_12 + end + end + i32.const 9 + local.set $$current_block + local.get $$t26.0 + local.set $$t37 + local.get $$t37 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t38.1 + local.set $$t38.0 + local.get $$t29 + local.get $$t38.0 + local.get $$t38.1 + call $runtime.knr_setBlockHeader + br $$Block_9 + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t28 + else + local.get $$t39 + end + local.set $$t40 + i32.const 10 + local.set $$current_block + local.get $$t29 + global.set $$knr_freep + local.get $$t40 + i32.const 8 + i32.add + local.set $$t41 + local.get $$t41 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $$t26.1 + local.set $$t42 + local.get $$t42 + local.get $$t21 + i32.sub + local.set $$t43 + local.get $$t43 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t44.1 + local.set $$t44.0 + local.get $$t28 + local.get $$t44.0 + local.get $$t44.1 + call $runtime.knr_setBlockHeader + local.get $$t26.1 + local.set $$t45 + local.get $$t45 + i32.const 8 + i32.mul + local.set $$t46 + local.get $$t28 + local.get $$t46 + i32.add + local.set $$t39 + local.get $$t39 + call $runtime.knr_getBlockHeader + local.set $$t47.1 + local.set $$t47.0 + local.get $$t47.0 + local.get $$t47.1 + local.set $$t26.1 + local.set $$t26.0 + local.get $$t21 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t48.1 + local.set $$t48.0 + local.get $$t39 + local.get $$t48.0 + local.get $$t48.1 + call $runtime.knr_setBlockHeader + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t49.1 + local.set $$t49.0 + local.get $$t49.0 + local.get $$t49.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t26.0 + local.set $$t30 + local.get $$t30 + call $runtime.knr_getBlockHeader + local.set $$t50.1 + local.set $$t50.0 + local.get $$t50.0 + local.get $$t50.1 + local.set $$t26.1 + local.set $$t26.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + ) + (func $$void.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$void.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + call_indirect 0 (type $$onFree) + ) + (func $$i`0`.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapNode.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 9 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapImp.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 11 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapIter.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 12 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$array1.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $runtime.next_rune (param $iter.0 i32) (param $iter.1 i32) (param $iter.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$ret_2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101 i32) + (local $$t102 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106 i32) + (local $$t107 i32) + (local $$t108 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110 i32) + (local $$t111 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116 i32) + (local $$t117 i32) + (local $$t118 i32) + (local $$t119 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121 i32) + (local $$t122 i32) + (local $$t123 i32) + (local $$t124 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126 i32) + (local $$t127 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $iter.0 + i32.store + local.get $$t0.1 + local.get $iter.1 + i32.store offset=4 + local.get $$t0.1 + local.get $iter.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.ge_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + i32.const 0 + local.set $$ret_0 + local.get $$t7 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + local.get $$t9 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + local.set $$t12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t14 + local.set $$t15 + local.get $$t12 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t16 + call $runtime.get_u8 + local.set $$t17 + local.get $$t17 + local.set $$t18 + local.get $$t18 + i32.const 128 + i32.and + local.set $$t19 + local.get $$t19 + i32.const 0 + i32.eq + local.set $$t20 + local.get $$t20 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.load + local.set $$t22 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t24 + i32.const 1 + i32.add + local.set $$t25 + i32.const 1 + local.set $$ret_0 + local.get $$t22 + local.set $$ret_1 + local.get $$t18 + local.set $$ret_2 + local.get $$t25 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t18 + i32.const 224 + i32.and + local.set $$t26 + local.get $$t26 + i32.const 192 + i32.eq + local.set $$t27 + local.get $$t27 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t18 + i32.const 31 + i32.and + local.set $$t28 + local.get $$t28 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t29 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t32 + local.get $$t35 + i32.add + local.set $$t36 + local.get $$t36 + i32.const 1 + i32.add + local.set $$t37 + local.get $$t37 + call $runtime.get_u8 + local.set $$t38 + local.get $$t38 + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t29 + local.get $$t40 + i32.or + local.set $$t43 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.add + local.set $$t46 + i32.const 1 + local.set $$ret_0 + local.get $$t42 + local.set $$ret_1 + local.get $$t43 + local.set $$ret_2 + local.get $$t46 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $$t18 + i32.const 240 + i32.and + local.set $$t47 + local.get $$t47 + i32.const 224 + i32.eq + local.set $$t48 + local.get $$t48 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t18 + i32.const 15 + i32.and + local.set $$t49 + local.get $$t49 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t50 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.set $$t52 + local.get $$t52 + local.set $$t53 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.1 + i32.load + local.set $$t55 + local.get $$t55 + local.set $$t56 + local.get $$t53 + local.get $$t56 + i32.add + local.set $$t57 + local.get $$t57 + i32.const 1 + i32.add + local.set $$t58 + local.get $$t58 + call $runtime.get_u8 + local.set $$t59 + local.get $$t59 + local.set $$t60 + local.get $$t60 + i32.const 63 + i32.and + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t63.1 + i32.load + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.load + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t65 + local.get $$t68 + i32.add + local.set $$t69 + local.get $$t69 + i32.const 2 + i32.add + local.set $$t70 + local.get $$t70 + call $runtime.get_u8 + local.set $$t71 + local.get $$t71 + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + local.get $$t74.1 + i32.load + local.set $$t75 + local.get $$t50 + local.get $$t62 + i32.or + local.set $$t76 + local.get $$t76 + local.get $$t73 + i32.or + local.set $$t77 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + local.get $$t78.1 + i32.load + local.set $$t79 + local.get $$t79 + i32.const 3 + i32.add + local.set $$t80 + i32.const 1 + local.set $$ret_0 + local.get $$t75 + local.set $$ret_1 + local.get $$t77 + local.set $$ret_2 + local.get $$t80 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t18 + i32.const 248 + i32.and + local.set $$t81 + local.get $$t81 + i32.const 240 + i32.eq + local.set $$t82 + local.get $$t82 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t18 + i32.const 7 + i32.and + local.set $$t83 + local.get $$t83 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t84 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.1 + i32.load + local.set $$t86 + local.get $$t86 + local.set $$t87 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.load + local.set $$t89 + local.get $$t89 + local.set $$t90 + local.get $$t87 + local.get $$t90 + i32.add + local.set $$t91 + local.get $$t91 + i32.const 1 + i32.add + local.set $$t92 + local.get $$t92 + call $runtime.get_u8 + local.set $$t93 + local.get $$t93 + local.set $$t94 + local.get $$t94 + i32.const 63 + i32.and + local.set $$t95 + local.get $$t95 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t96 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t97.1 + i32.load + local.set $$t98 + local.get $$t98 + local.set $$t99 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $$t100.1 + i32.load + local.set $$t101 + local.get $$t101 + local.set $$t102 + local.get $$t99 + local.get $$t102 + i32.add + local.set $$t103 + local.get $$t103 + i32.const 2 + i32.add + local.set $$t104 + local.get $$t104 + call $runtime.get_u8 + local.set $$t105 + local.get $$t105 + local.set $$t106 + local.get $$t106 + i32.const 63 + i32.and + local.set $$t107 + local.get $$t107 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t108 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.1 + i32.load + local.set $$t110 + local.get $$t110 + local.set $$t111 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.1 + i32.load + local.set $$t113 + local.get $$t113 + local.set $$t114 + local.get $$t111 + local.get $$t114 + i32.add + local.set $$t115 + local.get $$t115 + i32.const 3 + i32.add + local.set $$t116 + local.get $$t116 + call $runtime.get_u8 + local.set $$t117 + local.get $$t117 + local.set $$t118 + local.get $$t118 + i32.const 63 + i32.and + local.set $$t119 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + local.get $$t120.1 + i32.load + local.set $$t121 + local.get $$t84 + local.get $$t96 + i32.or + local.set $$t122 + local.get $$t122 + local.get $$t108 + i32.or + local.set $$t123 + local.get $$t123 + local.get $$t119 + i32.or + local.set $$t124 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.load + local.set $$t126 + local.get $$t126 + i32.const 4 + i32.add + local.set $$t127 + i32.const 1 + local.set $$ret_0 + local.get $$t121 + local.set $$ret_1 + local.get $$t124 + local.set $$ret_2 + local.get $$t127 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + i32.const 0 + local.set $$ret_3 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$ret_2 + local.get $$ret_3 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + ) + (func $$runtime.panic_ (param $msg_ptr i32) (param $msg_len i32) (param $pos_msg_ptr i32) (param $pos_msg_len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 31482 + i32.const 7 + call $$runtime.waPrintString + local.get $msg_ptr + local.get $msg_len + call $$runtime.waPuts + i32.const 0 + i32.const 31446 + i32.const 2 + call $$runtime.waPrintString + local.get $pos_msg_ptr + local.get $pos_msg_len + call $$runtime.waPuts + i32.const 41 + call $$runtime.waPrintRune + i32.const 10 + call $$runtime.waPrintRune + i32.const 1 + call $$runtime.procExit + br $$BlockFnBody + end + end + end + ) + (func $runtime.printString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + local.get $$t0 + i32.const 0 + i32.gt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.refToPtr_string + local.set $$t2 + local.get $$t0 + local.set $$t3 + local.get $$t2 + local.get $$t3 + call $$runtime.waPuts + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$runtime.procExit (param $code i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + call $runtime.throw + br $$BlockFnBody + end + end + end + ) + (func $runtime.refToPtr_string (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$wa.runtime.string_to_ptr + local.set $$t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $runtime.stringFromRune (param $r i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $r + local.set $$t2 + local.get $$t2 + i32.const 127 + i32.le_u + local.set $$t3 + local.get $$t3 + if + br $$Block_1 + else + br $$Block_3 + end + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const 2 + else + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + i32.const 3 + else + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 3 + else + i32.const 4 + end + end + end + end + local.set $$t4 + i32.const 1 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.get $$t4 + i32.const 0 + i32.sub + local.get $$t1.3 + i32.const 0 + i32.sub + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + call $$string.appendstr + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $r + i32.const 255 + i32.and + local.set $$t8 + local.get $$t7.1 + local.get $$t8 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load8_u align=1 + local.set $$t10 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t12 + local.get $$t12 + i32.const 255 + i32.and + local.set $$t13 + i32.const 192 + local.get $$t13 + i32.or + local.set $$t14 + local.get $$t11.1 + local.get $$t14 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $r + i32.const 255 + i32.and + local.set $$t16 + local.get $$t16 + i32.const 63 + i32.and + local.set $$t17 + i32.const 128 + local.get $$t17 + i32.or + local.set $$t18 + local.get $$t15.1 + local.get $$t18 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $$t2 + i32.const 2047 + i32.le_u + local.set $$t19 + local.get $$t19 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load8_u align=1 + local.set $$t21 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + i32.const 65533 + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t23 + local.get $$t23 + i32.const 255 + i32.and + local.set $$t24 + i32.const 224 + local.get $$t24 + i32.or + local.set $$t25 + local.get $$t22.1 + local.get $$t25 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + i32.const 65533 + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t27 + local.get $$t27 + i32.const 255 + i32.and + local.set $$t28 + local.get $$t28 + i32.const 63 + i32.and + local.set $$t29 + i32.const 128 + local.get $$t29 + i32.or + local.set $$t30 + local.get $$t26.1 + local.get $$t30 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 65533 + i32.const 255 + i32.and + local.set $$t32 + local.get $$t32 + i32.const 63 + i32.and + local.set $$t33 + i32.const 128 + local.get $$t33 + i32.or + local.set $$t34 + local.get $$t31.1 + local.get $$t34 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $$t2 + i32.const 1114111 + i32.gt_u + local.set $$t35 + local.get $$t35 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.1 + i32.load8_u align=1 + local.set $$t37 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t39 + local.get $$t39 + i32.const 255 + i32.and + local.set $$t40 + i32.const 224 + local.get $$t40 + i32.or + local.set $$t41 + local.get $$t38.1 + local.get $$t41 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t43 + local.get $$t43 + i32.const 255 + i32.and + local.set $$t44 + local.get $$t44 + i32.const 63 + i32.and + local.set $$t45 + i32.const 128 + local.get $$t45 + i32.or + local.set $$t46 + local.get $$t42.1 + local.get $$t46 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $r + i32.const 255 + i32.and + local.set $$t48 + local.get $$t48 + i32.const 63 + i32.and + local.set $$t49 + i32.const 128 + local.get $$t49 + i32.or + local.set $$t50 + local.get $$t47.1 + local.get $$t50 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + i32.const 55296 + local.get $$t2 + i32.le_u + local.set $$t51 + local.get $$t51 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t2 + i32.const 65535 + i32.le_u + local.set $$t52 + local.get $$t52 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 10 + local.set $$current_block + local.get $$t2 + i32.const 57343 + i32.le_u + local.set $$t53 + br $$Block_10 + end + local.get $$current_block + i32.const 8 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t53 + end + local.set $$t54 + i32.const 11 + local.set $$current_block + local.get $$t54 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.1 + i32.load8_u align=1 + local.set $$t56 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $r + i64.const 18 + i32.wrap_i64 + i32.shr_s + local.set $$t58 + local.get $$t58 + i32.const 255 + i32.and + local.set $$t59 + i32.const 240 + local.get $$t59 + i32.or + local.set $$t60 + local.get $$t57.1 + local.get $$t60 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t62 + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + local.get $$t63 + i32.const 63 + i32.and + local.set $$t64 + i32.const 128 + local.get $$t64 + i32.or + local.set $$t65 + local.get $$t61.1 + local.get $$t65 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t67 + local.get $$t67 + i32.const 255 + i32.and + local.set $$t68 + local.get $$t68 + i32.const 63 + i32.and + local.set $$t69 + i32.const 128 + local.get $$t69 + i32.or + local.set $$t70 + local.get $$t66.1 + local.get $$t70 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $r + i32.const 255 + i32.and + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + i32.const 128 + local.get $$t73 + i32.or + local.set $$t74 + local.get $$t71.1 + local.get $$t74 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + ) + (func $$wa.runtime.string_Comp (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $x.0 + local.get $x.1 + local.get $x.2 + call $$wa.runtime.string_to_iter + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0 + local.get $$t0.1 + local.get $$t1.0 + i32.store + local.get $$t0.1 + local.get $$t1.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t1.2 + i32.store offset=8 + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_to_iter + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + local.get $$t2.1 + local.get $$t3.0 + i32.store + local.get $$t2.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t3.2 + i32.store offset=8 + br $$Block_0 + end + i32.const 1 + local.set $$current_block + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $runtime.next_rune + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0 + local.get $$t5.0 + local.set $$t6 + local.get $$t5.1 + local.set $$t7 + local.get $$t5.2 + local.set $$t8 + local.get $$t5.3 + local.set $$t9 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + local.get $$t9 + i32.store + local.get $$t2.1 + i32.load + local.get $$t2.1 + i32.load offset=4 + local.get $$t2.1 + i32.load offset=8 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + call $runtime.next_rune + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.set $$t12.0 + local.get $$t12.0 + local.set $$t13 + local.get $$t12.1 + local.set $$t14 + local.get $$t12.2 + local.set $$t15 + local.get $$t12.3 + local.set $$t16 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 8 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + local.get $$t16 + i32.store + local.get $$t6 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $x.2 + local.set $$t18 + local.get $y.2 + local.set $$t19 + local.get $$t18 + local.get $$t19 + i32.lt_s + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.lt_s + local.set $$t21 + local.get $$t21 + if + br $$Block_5 + else + br $$Block_6 + end + end + i32.const 4 + local.set $$current_block + br $$Block_4 + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t22 + i32.const 5 + local.set $$current_block + local.get $$t22 + i32.const 1 + i32.eq + i32.eqz + local.set $$t23 + local.get $$t23 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.gt_s + local.set $$t24 + local.get $$t24 + if + br $$Block_7 + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 9 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $$t18 + local.get $$t19 + i32.gt_s + local.set $$t25 + local.get $$t25 + if + br $$Block_10 + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + ) + (func $$runtime.waPrintRune (param $ch i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ch + call $runtime.stringFromRune + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + local.get $$t0.1 + local.get $$t0.2 + call $runtime.printString + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $$runtime.waPrintString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.printString + br $$BlockFnBody + end + end + end + ) + (func $$runtime.waPuts (param $ptr i32) (param $len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ptr + local.get $len + call $runtime.traceUtf8 + br $$BlockFnBody + end + end + end + ) + (func $math.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $math$bits.TrailingZeros (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i64) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $x + local.set $$t0 + local.get $$t0 + call $math$bits.TrailingZeros32 + local.set $$t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $x + i64.extend_i32_u + local.set $$t2 + local.get $$t2 + call $math$bits.TrailingZeros64 + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $math$bits.TrailingZeros32 (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 32 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i32.const 0 + local.get $x + i32.sub + local.set $$t1 + local.get $x + local.get $$t1 + i32.and + local.set $$t2 + local.get $$t2 + i32.const 125613361 + i32.mul + local.set $$t3 + local.get $$t3 + i64.const 27 + i32.wrap_i64 + i32.shr_u + local.set $$t4 + local.get $$t4 + local.set $$t5 + i32.const 0 + i32.const 14888 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load8_u align=1 + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $math$bits.TrailingZeros64 (param $x i64) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i64) + (local $$t2 i64) + (local $$t3 i64) + (local $$t4 i64) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i64.const 0 + i64.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 64 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i64.const 0 + local.get $x + i64.sub + local.set $$t1 + local.get $x + local.get $$t1 + i64.and + local.set $$t2 + local.get $$t2 + i64.const 285870213051353865 + i64.mul + local.set $$t3 + local.get $$t3 + i64.const 58 + i64.shr_u + local.set $$t4 + local.get $$t4 + i32.wrap_i64 + local.set $$t5 + i32.const 0 + i32.const 14920 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load8_u align=1 + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $math$bits.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math$bits.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math$bits.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$errors.errorString.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 3 + call_indirect 0 (type $$onFree) + ) + (func $errors.New (param $text.0 i32) (param $text.1 i32) (param $text.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0.0 i32) + (local $$ret_0.0.1 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0.0 i32) + (local $$t2.0.1 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 15 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + local.get $text.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t1.1 + local.get $text.1 + i32.store offset=4 + local.get $$t1.1 + local.get $text.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const -2 + i32.const 0 + call $runtime.getItab + i32.const 0 + local.set $$t2.2 + local.set $$t2.1 + local.set $$t2.0.1 + local.get $$t2.0.0 + call $runtime.Block.Release + local.set $$t2.0.0 + local.get $$t2.0.0 + call $runtime.Block.Retain + local.get $$t2.0.1 + local.get $$t2.1 + local.get $$t2.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.set $$ret_0.0.1 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.set $$ret_0.0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0.0 + call $runtime.Block.Retain + local.get $$ret_0.0.1 + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0.0 + call $runtime.Block.Release + ) + (func $errors.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $errors.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $errors.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$u8.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if(result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 1 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end + end + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + end + ) + (func $$.error.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$strconv.NumError.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 3 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 12 + i32.add + i32.const 3 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 24 + i32.add + i32.const 16 + call_indirect 0 (type $$onFree) + ) + (func $strconv.FormatInt (param $i i64) (param $base i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2 i64) + (local $$t3 i32) + (local $$t4.0.0 i32) + (local $$t4.0.1 i32) + (local $$t4.0.2 i32) + (local $$t4.0.3 i32) + (local $$t4.1.0 i32) + (local $$t4.1.1 i32) + (local $$t4.1.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + if + br $$Block_4 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $i + i32.wrap_i64 + local.set $$t0 + local.get $$t0 + call $strconv.small + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $i + local.set $$t2 + local.get $i + i64.const 0 + i64.lt_s + local.set $$t3 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.get $$t2 + local.get $base + local.get $$t3 + i32.const 0 + call $strconv.formatBits + local.set $$t4.1.2 + local.set $$t4.1.1 + local.get $$t4.1.0 + call $runtime.Block.Release + local.set $$t4.1.0 + local.set $$t4.0.3 + local.set $$t4.0.2 + local.set $$t4.0.1 + local.get $$t4.0.0 + call $runtime.Block.Release + local.set $$t4.0.0 + local.get $$t4.0.0 + call $runtime.Block.Retain + local.get $$t4.0.1 + local.get $$t4.0.2 + local.get $$t4.0.3 + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t4.1.0 + call $runtime.Block.Retain + local.get $$t4.1.1 + local.get $$t4.1.2 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + local.get $base + i32.const 10 + i32.eq + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $i + i64.const 100 + i64.lt_s + local.set $$t8 + local.get $$t8 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + i64.const 0 + local.get $i + i64.le_s + local.set $$t9 + local.get $$t9 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t4.1.0 + call $runtime.Block.Release + local.get $$t4.0.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $strconv.IsPrint (param $r i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t10.2 i32) + (local $$t10.3 i32) + (local $$t10.4 i32) + (local $$t10.5 i32) + (local $$t10.6 i32) + (local $$t10.7 i32) + (local $$t10.8 i32) + (local $$t10.9 i32) + (local $$t10.10 i32) + (local $$t10.11 i32) + (local $$t10.12 i32) + (local $$t10.13 i32) + (local $$t10.14 i32) + (local $$t10.15 i32) + (local $$t10.16 i32) + (local $$t10.17 i32) + (local $$t10.18 i32) + (local $$t10.19 i32) + (local $$t10.20 i32) + (local $$t10.21 i32) + (local $$t10.22 i32) + (local $$t10.23 i32) + (local $$t10.24 i32) + (local $$t10.25 i32) + (local $$t10.26 i32) + (local $$t10.27 i32) + (local $$t10.28 i32) + (local $$t10.29 i32) + (local $$t10.30 i32) + (local $$t10.31 i32) + (local $$t10.32 i32) + (local $$t10.33 i32) + (local $$t10.34 i32) + (local $$t10.35 i32) + (local $$t10.36 i32) + (local $$t10.37 i32) + (local $$t10.38 i32) + (local $$t10.39 i32) + (local $$t10.40 i32) + (local $$t10.41 i32) + (local $$t10.42 i32) + (local $$t10.43 i32) + (local $$t10.44 i32) + (local $$t10.45 i32) + (local $$t10.46 i32) + (local $$t10.47 i32) + (local $$t10.48 i32) + (local $$t10.49 i32) + (local $$t10.50 i32) + (local $$t10.51 i32) + (local $$t10.52 i32) + (local $$t10.53 i32) + (local $$t10.54 i32) + (local $$t10.55 i32) + (local $$t10.56 i32) + (local $$t10.57 i32) + (local $$t10.58 i32) + (local $$t10.59 i32) + (local $$t10.60 i32) + (local $$t10.61 i32) + (local $$t10.62 i32) + (local $$t10.63 i32) + (local $$t10.64 i32) + (local $$t10.65 i32) + (local $$t10.66 i32) + (local $$t10.67 i32) + (local $$t10.68 i32) + (local $$t10.69 i32) + (local $$t10.70 i32) + (local $$t10.71 i32) + (local $$t10.72 i32) + (local $$t10.73 i32) + (local $$t10.74 i32) + (local $$t10.75 i32) + (local $$t10.76 i32) + (local $$t10.77 i32) + (local $$t10.78 i32) + (local $$t10.79 i32) + (local $$t10.80 i32) + (local $$t10.81 i32) + (local $$t10.82 i32) + (local $$t10.83 i32) + (local $$t10.84 i32) + (local $$t10.85 i32) + (local $$t10.86 i32) + (local $$t10.87 i32) + (local $$t10.88 i32) + (local $$t10.89 i32) + (local $$t10.90 i32) + (local $$t10.91 i32) + (local $$t10.92 i32) + (local $$t10.93 i32) + (local $$t10.94 i32) + (local $$t10.95 i32) + (local $$t10.96 i32) + (local $$t10.97 i32) + (local $$t10.98 i32) + (local $$t10.99 i32) + (local $$t10.100 i32) + (local $$t10.101 i32) + (local $$t10.102 i32) + (local $$t10.103 i32) + (local $$t10.104 i32) + (local $$t10.105 i32) + (local $$t10.106 i32) + (local $$t10.107 i32) + (local $$t10.108 i32) + (local $$t10.109 i32) + (local $$t10.110 i32) + (local $$t10.111 i32) + (local $$t10.112 i32) + (local $$t10.113 i32) + (local $$t10.114 i32) + (local $$t10.115 i32) + (local $$t10.116 i32) + (local $$t10.117 i32) + (local $$t10.118 i32) + (local $$t10.119 i32) + (local $$t10.120 i32) + (local $$t10.121 i32) + (local $$t10.122 i32) + (local $$t10.123 i32) + (local $$t10.124 i32) + (local $$t10.125 i32) + (local $$t10.126 i32) + (local $$t10.127 i32) + (local $$t10.128 i32) + (local $$t10.129 i32) + (local $$t10.130 i32) + (local $$t10.131 i32) + (local $$t10.132 i32) + (local $$t10.133 i32) + (local $$t10.134 i32) + (local $$t10.135 i32) + (local $$t10.136 i32) + (local $$t10.137 i32) + (local $$t10.138 i32) + (local $$t10.139 i32) + (local $$t10.140 i32) + (local $$t10.141 i32) + (local $$t10.142 i32) + (local $$t10.143 i32) + (local $$t10.144 i32) + (local $$t10.145 i32) + (local $$t10.146 i32) + (local $$t10.147 i32) + (local $$t10.148 i32) + (local $$t10.149 i32) + (local $$t10.150 i32) + (local $$t10.151 i32) + (local $$t10.152 i32) + (local $$t10.153 i32) + (local $$t10.154 i32) + (local $$t10.155 i32) + (local $$t10.156 i32) + (local $$t10.157 i32) + (local $$t10.158 i32) + (local $$t10.159 i32) + (local $$t10.160 i32) + (local $$t10.161 i32) + (local $$t10.162 i32) + (local $$t10.163 i32) + (local $$t10.164 i32) + (local $$t10.165 i32) + (local $$t10.166 i32) + (local $$t10.167 i32) + (local $$t10.168 i32) + (local $$t10.169 i32) + (local $$t10.170 i32) + (local $$t10.171 i32) + (local $$t10.172 i32) + (local $$t10.173 i32) + (local $$t10.174 i32) + (local $$t10.175 i32) + (local $$t10.176 i32) + (local $$t10.177 i32) + (local $$t10.178 i32) + (local $$t10.179 i32) + (local $$t10.180 i32) + (local $$t10.181 i32) + (local $$t10.182 i32) + (local $$t10.183 i32) + (local $$t10.184 i32) + (local $$t10.185 i32) + (local $$t10.186 i32) + (local $$t10.187 i32) + (local $$t10.188 i32) + (local $$t10.189 i32) + (local $$t10.190 i32) + (local $$t10.191 i32) + (local $$t10.192 i32) + (local $$t10.193 i32) + (local $$t10.194 i32) + (local $$t10.195 i32) + (local $$t10.196 i32) + (local $$t10.197 i32) + (local $$t10.198 i32) + (local $$t10.199 i32) + (local $$t10.200 i32) + (local $$t10.201 i32) + (local $$t10.202 i32) + (local $$t10.203 i32) + (local $$t10.204 i32) + (local $$t10.205 i32) + (local $$t10.206 i32) + (local $$t10.207 i32) + (local $$t10.208 i32) + (local $$t10.209 i32) + (local $$t10.210 i32) + (local $$t10.211 i32) + (local $$t10.212 i32) + (local $$t10.213 i32) + (local $$t10.214 i32) + (local $$t10.215 i32) + (local $$t10.216 i32) + (local $$t10.217 i32) + (local $$t10.218 i32) + (local $$t10.219 i32) + (local $$t10.220 i32) + (local $$t10.221 i32) + (local $$t10.222 i32) + (local $$t10.223 i32) + (local $$t10.224 i32) + (local $$t10.225 i32) + (local $$t10.226 i32) + (local $$t10.227 i32) + (local $$t10.228 i32) + (local $$t10.229 i32) + (local $$t10.230 i32) + (local $$t10.231 i32) + (local $$t10.232 i32) + (local $$t10.233 i32) + (local $$t10.234 i32) + (local $$t10.235 i32) + (local $$t10.236 i32) + (local $$t10.237 i32) + (local $$t10.238 i32) + (local $$t10.239 i32) + (local $$t10.240 i32) + (local $$t10.241 i32) + (local $$t10.242 i32) + (local $$t10.243 i32) + (local $$t10.244 i32) + (local $$t10.245 i32) + (local $$t10.246 i32) + (local $$t10.247 i32) + (local $$t10.248 i32) + (local $$t10.249 i32) + (local $$t10.250 i32) + (local $$t10.251 i32) + (local $$t10.252 i32) + (local $$t10.253 i32) + (local $$t10.254 i32) + (local $$t10.255 i32) + (local $$t10.256 i32) + (local $$t10.257 i32) + (local $$t10.258 i32) + (local $$t10.259 i32) + (local $$t10.260 i32) + (local $$t10.261 i32) + (local $$t10.262 i32) + (local $$t10.263 i32) + (local $$t10.264 i32) + (local $$t10.265 i32) + (local $$t10.266 i32) + (local $$t10.267 i32) + (local $$t10.268 i32) + (local $$t10.269 i32) + (local $$t10.270 i32) + (local $$t10.271 i32) + (local $$t10.272 i32) + (local $$t10.273 i32) + (local $$t10.274 i32) + (local $$t10.275 i32) + (local $$t10.276 i32) + (local $$t10.277 i32) + (local $$t10.278 i32) + (local $$t10.279 i32) + (local $$t10.280 i32) + (local $$t10.281 i32) + (local $$t10.282 i32) + (local $$t10.283 i32) + (local $$t10.284 i32) + (local $$t10.285 i32) + (local $$t10.286 i32) + (local $$t10.287 i32) + (local $$t10.288 i32) + (local $$t10.289 i32) + (local $$t10.290 i32) + (local $$t10.291 i32) + (local $$t10.292 i32) + (local $$t10.293 i32) + (local $$t10.294 i32) + (local $$t10.295 i32) + (local $$t10.296 i32) + (local $$t10.297 i32) + (local $$t10.298 i32) + (local $$t10.299 i32) + (local $$t10.300 i32) + (local $$t10.301 i32) + (local $$t10.302 i32) + (local $$t10.303 i32) + (local $$t10.304 i32) + (local $$t10.305 i32) + (local $$t10.306 i32) + (local $$t10.307 i32) + (local $$t10.308 i32) + (local $$t10.309 i32) + (local $$t10.310 i32) + (local $$t10.311 i32) + (local $$t10.312 i32) + (local $$t10.313 i32) + (local $$t10.314 i32) + (local $$t10.315 i32) + (local $$t10.316 i32) + (local $$t10.317 i32) + (local $$t10.318 i32) + (local $$t10.319 i32) + (local $$t10.320 i32) + (local $$t10.321 i32) + (local $$t10.322 i32) + (local $$t10.323 i32) + (local $$t10.324 i32) + (local $$t10.325 i32) + (local $$t10.326 i32) + (local $$t10.327 i32) + (local $$t10.328 i32) + (local $$t10.329 i32) + (local $$t10.330 i32) + (local $$t10.331 i32) + (local $$t10.332 i32) + (local $$t10.333 i32) + (local $$t10.334 i32) + (local $$t10.335 i32) + (local $$t10.336 i32) + (local $$t10.337 i32) + (local $$t10.338 i32) + (local $$t10.339 i32) + (local $$t10.340 i32) + (local $$t10.341 i32) + (local $$t10.342 i32) + (local $$t10.343 i32) + (local $$t10.344 i32) + (local $$t10.345 i32) + (local $$t10.346 i32) + (local $$t10.347 i32) + (local $$t10.348 i32) + (local $$t10.349 i32) + (local $$t10.350 i32) + (local $$t10.351 i32) + (local $$t10.352 i32) + (local $$t10.353 i32) + (local $$t10.354 i32) + (local $$t10.355 i32) + (local $$t10.356 i32) + (local $$t10.357 i32) + (local $$t10.358 i32) + (local $$t10.359 i32) + (local $$t10.360 i32) + (local $$t10.361 i32) + (local $$t10.362 i32) + (local $$t10.363 i32) + (local $$t10.364 i32) + (local $$t10.365 i32) + (local $$t10.366 i32) + (local $$t10.367 i32) + (local $$t10.368 i32) + (local $$t10.369 i32) + (local $$t10.370 i32) + (local $$t10.371 i32) + (local $$t10.372 i32) + (local $$t10.373 i32) + (local $$t10.374 i32) + (local $$t10.375 i32) + (local $$t10.376 i32) + (local $$t10.377 i32) + (local $$t10.378 i32) + (local $$t10.379 i32) + (local $$t10.380 i32) + (local $$t10.381 i32) + (local $$t10.382 i32) + (local $$t10.383 i32) + (local $$t10.384 i32) + (local $$t10.385 i32) + (local $$t10.386 i32) + (local $$t10.387 i32) + (local $$t10.388 i32) + (local $$t10.389 i32) + (local $$t10.390 i32) + (local $$t10.391 i32) + (local $$t10.392 i32) + (local $$t10.393 i32) + (local $$t10.394 i32) + (local $$t10.395 i32) + (local $$t10.396 i32) + (local $$t10.397 i32) + (local $$t10.398 i32) + (local $$t10.399 i32) + (local $$t10.400 i32) + (local $$t10.401 i32) + (local $$t10.402 i32) + (local $$t10.403 i32) + (local $$t10.404 i32) + (local $$t10.405 i32) + (local $$t10.406 i32) + (local $$t10.407 i32) + (local $$t10.408 i32) + (local $$t10.409 i32) + (local $$t10.410 i32) + (local $$t10.411 i32) + (local $$t10.412 i32) + (local $$t10.413 i32) + (local $$t10.414 i32) + (local $$t10.415 i32) + (local $$t10.416 i32) + (local $$t10.417 i32) + (local $$t10.418 i32) + (local $$t10.419 i32) + (local $$t10.420 i32) + (local $$t10.421 i32) + (local $$t10.422 i32) + (local $$t10.423 i32) + (local $$t10.424 i32) + (local $$t10.425 i32) + (local $$t10.426 i32) + (local $$t10.427 i32) + (local $$t10.428 i32) + (local $$t10.429 i32) + (local $$t10.430 i32) + (local $$t10.431 i32) + (local $$t10.432 i32) + (local $$t10.433 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t11.4 i32) + (local $$t11.5 i32) + (local $$t11.6 i32) + (local $$t11.7 i32) + (local $$t11.8 i32) + (local $$t11.9 i32) + (local $$t11.10 i32) + (local $$t11.11 i32) + (local $$t11.12 i32) + (local $$t11.13 i32) + (local $$t11.14 i32) + (local $$t11.15 i32) + (local $$t11.16 i32) + (local $$t11.17 i32) + (local $$t11.18 i32) + (local $$t11.19 i32) + (local $$t11.20 i32) + (local $$t11.21 i32) + (local $$t11.22 i32) + (local $$t11.23 i32) + (local $$t11.24 i32) + (local $$t11.25 i32) + (local $$t11.26 i32) + (local $$t11.27 i32) + (local $$t11.28 i32) + (local $$t11.29 i32) + (local $$t11.30 i32) + (local $$t11.31 i32) + (local $$t11.32 i32) + (local $$t11.33 i32) + (local $$t11.34 i32) + (local $$t11.35 i32) + (local $$t11.36 i32) + (local $$t11.37 i32) + (local $$t11.38 i32) + (local $$t11.39 i32) + (local $$t11.40 i32) + (local $$t11.41 i32) + (local $$t11.42 i32) + (local $$t11.43 i32) + (local $$t11.44 i32) + (local $$t11.45 i32) + (local $$t11.46 i32) + (local $$t11.47 i32) + (local $$t11.48 i32) + (local $$t11.49 i32) + (local $$t11.50 i32) + (local $$t11.51 i32) + (local $$t11.52 i32) + (local $$t11.53 i32) + (local $$t11.54 i32) + (local $$t11.55 i32) + (local $$t11.56 i32) + (local $$t11.57 i32) + (local $$t11.58 i32) + (local $$t11.59 i32) + (local $$t11.60 i32) + (local $$t11.61 i32) + (local $$t11.62 i32) + (local $$t11.63 i32) + (local $$t11.64 i32) + (local $$t11.65 i32) + (local $$t11.66 i32) + (local $$t11.67 i32) + (local $$t11.68 i32) + (local $$t11.69 i32) + (local $$t11.70 i32) + (local $$t11.71 i32) + (local $$t11.72 i32) + (local $$t11.73 i32) + (local $$t11.74 i32) + (local $$t11.75 i32) + (local $$t11.76 i32) + (local $$t11.77 i32) + (local $$t11.78 i32) + (local $$t11.79 i32) + (local $$t11.80 i32) + (local $$t11.81 i32) + (local $$t11.82 i32) + (local $$t11.83 i32) + (local $$t11.84 i32) + (local $$t11.85 i32) + (local $$t11.86 i32) + (local $$t11.87 i32) + (local $$t11.88 i32) + (local $$t11.89 i32) + (local $$t11.90 i32) + (local $$t11.91 i32) + (local $$t11.92 i32) + (local $$t11.93 i32) + (local $$t11.94 i32) + (local $$t11.95 i32) + (local $$t11.96 i32) + (local $$t11.97 i32) + (local $$t11.98 i32) + (local $$t11.99 i32) + (local $$t11.100 i32) + (local $$t11.101 i32) + (local $$t11.102 i32) + (local $$t11.103 i32) + (local $$t11.104 i32) + (local $$t11.105 i32) + (local $$t11.106 i32) + (local $$t11.107 i32) + (local $$t11.108 i32) + (local $$t11.109 i32) + (local $$t11.110 i32) + (local $$t11.111 i32) + (local $$t11.112 i32) + (local $$t11.113 i32) + (local $$t11.114 i32) + (local $$t11.115 i32) + (local $$t11.116 i32) + (local $$t11.117 i32) + (local $$t11.118 i32) + (local $$t11.119 i32) + (local $$t11.120 i32) + (local $$t11.121 i32) + (local $$t11.122 i32) + (local $$t11.123 i32) + (local $$t11.124 i32) + (local $$t11.125 i32) + (local $$t11.126 i32) + (local $$t11.127 i32) + (local $$t11.128 i32) + (local $$t11.129 i32) + (local $$t11.130 i32) + (local $$t11.131 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t18.2 i32) + (local $$t18.3 i32) + (local $$t18.4 i32) + (local $$t18.5 i32) + (local $$t18.6 i32) + (local $$t18.7 i32) + (local $$t18.8 i32) + (local $$t18.9 i32) + (local $$t18.10 i32) + (local $$t18.11 i32) + (local $$t18.12 i32) + (local $$t18.13 i32) + (local $$t18.14 i32) + (local $$t18.15 i32) + (local $$t18.16 i32) + (local $$t18.17 i32) + (local $$t18.18 i32) + (local $$t18.19 i32) + (local $$t18.20 i32) + (local $$t18.21 i32) + (local $$t18.22 i32) + (local $$t18.23 i32) + (local $$t18.24 i32) + (local $$t18.25 i32) + (local $$t18.26 i32) + (local $$t18.27 i32) + (local $$t18.28 i32) + (local $$t18.29 i32) + (local $$t18.30 i32) + (local $$t18.31 i32) + (local $$t18.32 i32) + (local $$t18.33 i32) + (local $$t18.34 i32) + (local $$t18.35 i32) + (local $$t18.36 i32) + (local $$t18.37 i32) + (local $$t18.38 i32) + (local $$t18.39 i32) + (local $$t18.40 i32) + (local $$t18.41 i32) + (local $$t18.42 i32) + (local $$t18.43 i32) + (local $$t18.44 i32) + (local $$t18.45 i32) + (local $$t18.46 i32) + (local $$t18.47 i32) + (local $$t18.48 i32) + (local $$t18.49 i32) + (local $$t18.50 i32) + (local $$t18.51 i32) + (local $$t18.52 i32) + (local $$t18.53 i32) + (local $$t18.54 i32) + (local $$t18.55 i32) + (local $$t18.56 i32) + (local $$t18.57 i32) + (local $$t18.58 i32) + (local $$t18.59 i32) + (local $$t18.60 i32) + (local $$t18.61 i32) + (local $$t18.62 i32) + (local $$t18.63 i32) + (local $$t18.64 i32) + (local $$t18.65 i32) + (local $$t18.66 i32) + (local $$t18.67 i32) + (local $$t18.68 i32) + (local $$t18.69 i32) + (local $$t18.70 i32) + (local $$t18.71 i32) + (local $$t18.72 i32) + (local $$t18.73 i32) + (local $$t18.74 i32) + (local $$t18.75 i32) + (local $$t18.76 i32) + (local $$t18.77 i32) + (local $$t18.78 i32) + (local $$t18.79 i32) + (local $$t18.80 i32) + (local $$t18.81 i32) + (local $$t18.82 i32) + (local $$t18.83 i32) + (local $$t18.84 i32) + (local $$t18.85 i32) + (local $$t18.86 i32) + (local $$t18.87 i32) + (local $$t18.88 i32) + (local $$t18.89 i32) + (local $$t18.90 i32) + (local $$t18.91 i32) + (local $$t18.92 i32) + (local $$t18.93 i32) + (local $$t18.94 i32) + (local $$t18.95 i32) + (local $$t18.96 i32) + (local $$t18.97 i32) + (local $$t18.98 i32) + (local $$t18.99 i32) + (local $$t18.100 i32) + (local $$t18.101 i32) + (local $$t18.102 i32) + (local $$t18.103 i32) + (local $$t18.104 i32) + (local $$t18.105 i32) + (local $$t18.106 i32) + (local $$t18.107 i32) + (local $$t18.108 i32) + (local $$t18.109 i32) + (local $$t18.110 i32) + (local $$t18.111 i32) + (local $$t18.112 i32) + (local $$t18.113 i32) + (local $$t18.114 i32) + (local $$t18.115 i32) + (local $$t18.116 i32) + (local $$t18.117 i32) + (local $$t18.118 i32) + (local $$t18.119 i32) + (local $$t18.120 i32) + (local $$t18.121 i32) + (local $$t18.122 i32) + (local $$t18.123 i32) + (local $$t18.124 i32) + (local $$t18.125 i32) + (local $$t18.126 i32) + (local $$t18.127 i32) + (local $$t18.128 i32) + (local $$t18.129 i32) + (local $$t18.130 i32) + (local $$t18.131 i32) + (local $$t18.132 i32) + (local $$t18.133 i32) + (local $$t18.134 i32) + (local $$t18.135 i32) + (local $$t18.136 i32) + (local $$t18.137 i32) + (local $$t18.138 i32) + (local $$t18.139 i32) + (local $$t18.140 i32) + (local $$t18.141 i32) + (local $$t18.142 i32) + (local $$t18.143 i32) + (local $$t18.144 i32) + (local $$t18.145 i32) + (local $$t18.146 i32) + (local $$t18.147 i32) + (local $$t18.148 i32) + (local $$t18.149 i32) + (local $$t18.150 i32) + (local $$t18.151 i32) + (local $$t18.152 i32) + (local $$t18.153 i32) + (local $$t18.154 i32) + (local $$t18.155 i32) + (local $$t18.156 i32) + (local $$t18.157 i32) + (local $$t18.158 i32) + (local $$t18.159 i32) + (local $$t18.160 i32) + (local $$t18.161 i32) + (local $$t18.162 i32) + (local $$t18.163 i32) + (local $$t18.164 i32) + (local $$t18.165 i32) + (local $$t18.166 i32) + (local $$t18.167 i32) + (local $$t18.168 i32) + (local $$t18.169 i32) + (local $$t18.170 i32) + (local $$t18.171 i32) + (local $$t18.172 i32) + (local $$t18.173 i32) + (local $$t18.174 i32) + (local $$t18.175 i32) + (local $$t18.176 i32) + (local $$t18.177 i32) + (local $$t18.178 i32) + (local $$t18.179 i32) + (local $$t18.180 i32) + (local $$t18.181 i32) + (local $$t18.182 i32) + (local $$t18.183 i32) + (local $$t18.184 i32) + (local $$t18.185 i32) + (local $$t18.186 i32) + (local $$t18.187 i32) + (local $$t18.188 i32) + (local $$t18.189 i32) + (local $$t18.190 i32) + (local $$t18.191 i32) + (local $$t18.192 i32) + (local $$t18.193 i32) + (local $$t18.194 i32) + (local $$t18.195 i32) + (local $$t18.196 i32) + (local $$t18.197 i32) + (local $$t18.198 i32) + (local $$t18.199 i32) + (local $$t18.200 i32) + (local $$t18.201 i32) + (local $$t18.202 i32) + (local $$t18.203 i32) + (local $$t18.204 i32) + (local $$t18.205 i32) + (local $$t18.206 i32) + (local $$t18.207 i32) + (local $$t18.208 i32) + (local $$t18.209 i32) + (local $$t18.210 i32) + (local $$t18.211 i32) + (local $$t18.212 i32) + (local $$t18.213 i32) + (local $$t18.214 i32) + (local $$t18.215 i32) + (local $$t18.216 i32) + (local $$t18.217 i32) + (local $$t18.218 i32) + (local $$t18.219 i32) + (local $$t18.220 i32) + (local $$t18.221 i32) + (local $$t18.222 i32) + (local $$t18.223 i32) + (local $$t18.224 i32) + (local $$t18.225 i32) + (local $$t18.226 i32) + (local $$t18.227 i32) + (local $$t18.228 i32) + (local $$t18.229 i32) + (local $$t18.230 i32) + (local $$t18.231 i32) + (local $$t18.232 i32) + (local $$t18.233 i32) + (local $$t18.234 i32) + (local $$t18.235 i32) + (local $$t18.236 i32) + (local $$t18.237 i32) + (local $$t18.238 i32) + (local $$t18.239 i32) + (local $$t18.240 i32) + (local $$t18.241 i32) + (local $$t18.242 i32) + (local $$t18.243 i32) + (local $$t18.244 i32) + (local $$t18.245 i32) + (local $$t18.246 i32) + (local $$t18.247 i32) + (local $$t18.248 i32) + (local $$t18.249 i32) + (local $$t18.250 i32) + (local $$t18.251 i32) + (local $$t18.252 i32) + (local $$t18.253 i32) + (local $$t18.254 i32) + (local $$t18.255 i32) + (local $$t18.256 i32) + (local $$t18.257 i32) + (local $$t18.258 i32) + (local $$t18.259 i32) + (local $$t18.260 i32) + (local $$t18.261 i32) + (local $$t18.262 i32) + (local $$t18.263 i32) + (local $$t18.264 i32) + (local $$t18.265 i32) + (local $$t18.266 i32) + (local $$t18.267 i32) + (local $$t18.268 i32) + (local $$t18.269 i32) + (local $$t18.270 i32) + (local $$t18.271 i32) + (local $$t18.272 i32) + (local $$t18.273 i32) + (local $$t18.274 i32) + (local $$t18.275 i32) + (local $$t18.276 i32) + (local $$t18.277 i32) + (local $$t18.278 i32) + (local $$t18.279 i32) + (local $$t18.280 i32) + (local $$t18.281 i32) + (local $$t18.282 i32) + (local $$t18.283 i32) + (local $$t18.284 i32) + (local $$t18.285 i32) + (local $$t18.286 i32) + (local $$t18.287 i32) + (local $$t18.288 i32) + (local $$t18.289 i32) + (local $$t18.290 i32) + (local $$t18.291 i32) + (local $$t18.292 i32) + (local $$t18.293 i32) + (local $$t18.294 i32) + (local $$t18.295 i32) + (local $$t18.296 i32) + (local $$t18.297 i32) + (local $$t18.298 i32) + (local $$t18.299 i32) + (local $$t18.300 i32) + (local $$t18.301 i32) + (local $$t18.302 i32) + (local $$t18.303 i32) + (local $$t18.304 i32) + (local $$t18.305 i32) + (local $$t18.306 i32) + (local $$t18.307 i32) + (local $$t18.308 i32) + (local $$t18.309 i32) + (local $$t18.310 i32) + (local $$t18.311 i32) + (local $$t18.312 i32) + (local $$t18.313 i32) + (local $$t18.314 i32) + (local $$t18.315 i32) + (local $$t18.316 i32) + (local $$t18.317 i32) + (local $$t18.318 i32) + (local $$t18.319 i32) + (local $$t18.320 i32) + (local $$t18.321 i32) + (local $$t18.322 i32) + (local $$t18.323 i32) + (local $$t18.324 i32) + (local $$t18.325 i32) + (local $$t18.326 i32) + (local $$t18.327 i32) + (local $$t18.328 i32) + (local $$t18.329 i32) + (local $$t18.330 i32) + (local $$t18.331 i32) + (local $$t18.332 i32) + (local $$t18.333 i32) + (local $$t18.334 i32) + (local $$t18.335 i32) + (local $$t18.336 i32) + (local $$t18.337 i32) + (local $$t18.338 i32) + (local $$t18.339 i32) + (local $$t18.340 i32) + (local $$t18.341 i32) + (local $$t18.342 i32) + (local $$t18.343 i32) + (local $$t18.344 i32) + (local $$t18.345 i32) + (local $$t18.346 i32) + (local $$t18.347 i32) + (local $$t18.348 i32) + (local $$t18.349 i32) + (local $$t18.350 i32) + (local $$t18.351 i32) + (local $$t18.352 i32) + (local $$t18.353 i32) + (local $$t18.354 i32) + (local $$t18.355 i32) + (local $$t18.356 i32) + (local $$t18.357 i32) + (local $$t18.358 i32) + (local $$t18.359 i32) + (local $$t18.360 i32) + (local $$t18.361 i32) + (local $$t18.362 i32) + (local $$t18.363 i32) + (local $$t18.364 i32) + (local $$t18.365 i32) + (local $$t18.366 i32) + (local $$t18.367 i32) + (local $$t18.368 i32) + (local $$t18.369 i32) + (local $$t18.370 i32) + (local $$t18.371 i32) + (local $$t18.372 i32) + (local $$t18.373 i32) + (local $$t18.374 i32) + (local $$t18.375 i32) + (local $$t18.376 i32) + (local $$t18.377 i32) + (local $$t18.378 i32) + (local $$t18.379 i32) + (local $$t18.380 i32) + (local $$t18.381 i32) + (local $$t18.382 i32) + (local $$t18.383 i32) + (local $$t18.384 i32) + (local $$t18.385 i32) + (local $$t18.386 i32) + (local $$t18.387 i32) + (local $$t18.388 i32) + (local $$t18.389 i32) + (local $$t18.390 i32) + (local $$t18.391 i32) + (local $$t18.392 i32) + (local $$t18.393 i32) + (local $$t18.394 i32) + (local $$t18.395 i32) + (local $$t18.396 i32) + (local $$t18.397 i32) + (local $$t18.398 i32) + (local $$t18.399 i32) + (local $$t18.400 i32) + (local $$t18.401 i32) + (local $$t18.402 i32) + (local $$t18.403 i32) + (local $$t18.404 i32) + (local $$t18.405 i32) + (local $$t18.406 i32) + (local $$t18.407 i32) + (local $$t18.408 i32) + (local $$t18.409 i32) + (local $$t18.410 i32) + (local $$t18.411 i32) + (local $$t18.412 i32) + (local $$t18.413 i32) + (local $$t18.414 i32) + (local $$t18.415 i32) + (local $$t18.416 i32) + (local $$t18.417 i32) + (local $$t18.418 i32) + (local $$t18.419 i32) + (local $$t18.420 i32) + (local $$t18.421 i32) + (local $$t18.422 i32) + (local $$t18.423 i32) + (local $$t18.424 i32) + (local $$t18.425 i32) + (local $$t18.426 i32) + (local $$t18.427 i32) + (local $$t18.428 i32) + (local $$t18.429 i32) + (local $$t18.430 i32) + (local $$t18.431 i32) + (local $$t18.432 i32) + (local $$t18.433 i32) + (local $$t18.434 i32) + (local $$t18.435 i32) + (local $$t18.436 i32) + (local $$t18.437 i32) + (local $$t18.438 i32) + (local $$t18.439 i32) + (local $$t18.440 i32) + (local $$t18.441 i32) + (local $$t18.442 i32) + (local $$t18.443 i32) + (local $$t18.444 i32) + (local $$t18.445 i32) + (local $$t18.446 i32) + (local $$t18.447 i32) + (local $$t18.448 i32) + (local $$t18.449 i32) + (local $$t18.450 i32) + (local $$t18.451 i32) + (local $$t18.452 i32) + (local $$t18.453 i32) + (local $$t18.454 i32) + (local $$t18.455 i32) + (local $$t18.456 i32) + (local $$t18.457 i32) + (local $$t18.458 i32) + (local $$t18.459 i32) + (local $$t18.460 i32) + (local $$t18.461 i32) + (local $$t18.462 i32) + (local $$t18.463 i32) + (local $$t18.464 i32) + (local $$t18.465 i32) + (local $$t18.466 i32) + (local $$t18.467 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t19.2 i32) + (local $$t19.3 i32) + (local $$t19.4 i32) + (local $$t19.5 i32) + (local $$t19.6 i32) + (local $$t19.7 i32) + (local $$t19.8 i32) + (local $$t19.9 i32) + (local $$t19.10 i32) + (local $$t19.11 i32) + (local $$t19.12 i32) + (local $$t19.13 i32) + (local $$t19.14 i32) + (local $$t19.15 i32) + (local $$t19.16 i32) + (local $$t19.17 i32) + (local $$t19.18 i32) + (local $$t19.19 i32) + (local $$t19.20 i32) + (local $$t19.21 i32) + (local $$t19.22 i32) + (local $$t19.23 i32) + (local $$t19.24 i32) + (local $$t19.25 i32) + (local $$t19.26 i32) + (local $$t19.27 i32) + (local $$t19.28 i32) + (local $$t19.29 i32) + (local $$t19.30 i32) + (local $$t19.31 i32) + (local $$t19.32 i32) + (local $$t19.33 i32) + (local $$t19.34 i32) + (local $$t19.35 i32) + (local $$t19.36 i32) + (local $$t19.37 i32) + (local $$t19.38 i32) + (local $$t19.39 i32) + (local $$t19.40 i32) + (local $$t19.41 i32) + (local $$t19.42 i32) + (local $$t19.43 i32) + (local $$t19.44 i32) + (local $$t19.45 i32) + (local $$t19.46 i32) + (local $$t19.47 i32) + (local $$t19.48 i32) + (local $$t19.49 i32) + (local $$t19.50 i32) + (local $$t19.51 i32) + (local $$t19.52 i32) + (local $$t19.53 i32) + (local $$t19.54 i32) + (local $$t19.55 i32) + (local $$t19.56 i32) + (local $$t19.57 i32) + (local $$t19.58 i32) + (local $$t19.59 i32) + (local $$t19.60 i32) + (local $$t19.61 i32) + (local $$t19.62 i32) + (local $$t19.63 i32) + (local $$t19.64 i32) + (local $$t19.65 i32) + (local $$t19.66 i32) + (local $$t19.67 i32) + (local $$t19.68 i32) + (local $$t19.69 i32) + (local $$t19.70 i32) + (local $$t19.71 i32) + (local $$t19.72 i32) + (local $$t19.73 i32) + (local $$t19.74 i32) + (local $$t19.75 i32) + (local $$t19.76 i32) + (local $$t19.77 i32) + (local $$t19.78 i32) + (local $$t19.79 i32) + (local $$t19.80 i32) + (local $$t19.81 i32) + (local $$t19.82 i32) + (local $$t19.83 i32) + (local $$t19.84 i32) + (local $$t19.85 i32) + (local $$t19.86 i32) + (local $$t19.87 i32) + (local $$t19.88 i32) + (local $$t19.89 i32) + (local $$t19.90 i32) + (local $$t19.91 i32) + (local $$t19.92 i32) + (local $$t19.93 i32) + (local $$t19.94 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t20.2 i32) + (local $$t20.3 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t49.2 i32) + (local $$t49.3 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 0 + end + i32.const 0 + local.set $$current_block + local.get $r + i32.const 255 + i32.le_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 32 + local.get $r + i32.le_s + local.set $$t1 + local.get $$t1 + if + br $$Block_4 + else + br $$Block_3 + end + end + i32.const 2 + local.set $$current_block + i32.const 0 + local.get $r + i32.le_s + local.set $$t2 + local.get $$t2 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + i32.const 161 + local.get $r + i32.le_s + local.set $$t3 + local.get $$t3 + if + br $$Block_7 + else + br $$Block_6 + end + end + i32.const 5 + local.set $$current_block + local.get $r + i32.const 126 + i32.le_s + local.set $$t4 + local.get $$t4 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + local.get $r + i32.const 173 + i32.eq + i32.eqz + local.set $$t5 + local.get $$t5 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $r + i32.const 255 + i32.le_s + local.set $$t6 + local.get $$t6 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + i32.const 884 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 868 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + i32.const 280 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 264 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $r + i32.const 65535 + i32.and + local.set $$t9 + i32.const 26894 + i32.load16_u + i32.const 26894 + i32.load16_u offset=2 + i32.const 26894 + i32.load16_u offset=4 + i32.const 26894 + i32.load16_u offset=6 + i32.const 26894 + i32.load16_u offset=8 + i32.const 26894 + i32.load16_u offset=10 + i32.const 26894 + i32.load16_u offset=12 + i32.const 26894 + i32.load16_u offset=14 + i32.const 26894 + i32.load16_u offset=16 + i32.const 26894 + i32.load16_u offset=18 + i32.const 26894 + i32.load16_u offset=20 + i32.const 26894 + i32.load16_u offset=22 + i32.const 26894 + i32.load16_u offset=24 + i32.const 26894 + i32.load16_u offset=26 + i32.const 26894 + i32.load16_u offset=28 + i32.const 26894 + i32.load16_u offset=30 + i32.const 26894 + i32.load16_u offset=32 + i32.const 26894 + i32.load16_u offset=34 + i32.const 26894 + i32.load16_u offset=36 + i32.const 26894 + i32.load16_u offset=38 + i32.const 26894 + i32.load16_u offset=40 + i32.const 26894 + i32.load16_u offset=42 + i32.const 26894 + i32.load16_u offset=44 + i32.const 26894 + i32.load16_u offset=46 + i32.const 26894 + i32.load16_u offset=48 + i32.const 26894 + i32.load16_u offset=50 + i32.const 26894 + i32.load16_u offset=52 + i32.const 26894 + i32.load16_u offset=54 + i32.const 26894 + i32.load16_u offset=56 + i32.const 26894 + i32.load16_u offset=58 + i32.const 26894 + i32.load16_u offset=60 + i32.const 26894 + i32.load16_u offset=62 + i32.const 26894 + i32.load16_u offset=64 + i32.const 26894 + i32.load16_u offset=66 + i32.const 26894 + i32.load16_u offset=68 + i32.const 26894 + i32.load16_u offset=70 + i32.const 26894 + i32.load16_u offset=72 + i32.const 26894 + i32.load16_u offset=74 + i32.const 26894 + i32.load16_u offset=76 + i32.const 26894 + i32.load16_u offset=78 + i32.const 26894 + i32.load16_u offset=80 + i32.const 26894 + i32.load16_u offset=82 + i32.const 26894 + i32.load16_u offset=84 + i32.const 26894 + i32.load16_u offset=86 + i32.const 26894 + i32.load16_u offset=88 + i32.const 26894 + i32.load16_u offset=90 + i32.const 26894 + i32.load16_u offset=92 + i32.const 26894 + i32.load16_u offset=94 + i32.const 26894 + i32.load16_u offset=96 + i32.const 26894 + i32.load16_u offset=98 + i32.const 26894 + i32.load16_u offset=100 + i32.const 26894 + i32.load16_u offset=102 + i32.const 26894 + i32.load16_u offset=104 + i32.const 26894 + i32.load16_u offset=106 + i32.const 26894 + i32.load16_u offset=108 + i32.const 26894 + i32.load16_u offset=110 + i32.const 26894 + i32.load16_u offset=112 + i32.const 26894 + i32.load16_u offset=114 + i32.const 26894 + i32.load16_u offset=116 + i32.const 26894 + i32.load16_u offset=118 + i32.const 26894 + i32.load16_u offset=120 + i32.const 26894 + i32.load16_u offset=122 + i32.const 26894 + i32.load16_u offset=124 + i32.const 26894 + i32.load16_u offset=126 + i32.const 26894 + i32.load16_u offset=128 + i32.const 26894 + i32.load16_u offset=130 + i32.const 26894 + i32.load16_u offset=132 + i32.const 26894 + i32.load16_u offset=134 + i32.const 26894 + i32.load16_u offset=136 + i32.const 26894 + i32.load16_u offset=138 + i32.const 26894 + i32.load16_u offset=140 + i32.const 26894 + i32.load16_u offset=142 + i32.const 26894 + i32.load16_u offset=144 + i32.const 26894 + i32.load16_u offset=146 + i32.const 26894 + i32.load16_u offset=148 + i32.const 26894 + i32.load16_u offset=150 + i32.const 26894 + i32.load16_u offset=152 + i32.const 26894 + i32.load16_u offset=154 + i32.const 26894 + i32.load16_u offset=156 + i32.const 26894 + i32.load16_u offset=158 + i32.const 26894 + i32.load16_u offset=160 + i32.const 26894 + i32.load16_u offset=162 + i32.const 26894 + i32.load16_u offset=164 + i32.const 26894 + i32.load16_u offset=166 + i32.const 26894 + i32.load16_u offset=168 + i32.const 26894 + i32.load16_u offset=170 + i32.const 26894 + i32.load16_u offset=172 + i32.const 26894 + i32.load16_u offset=174 + i32.const 26894 + i32.load16_u offset=176 + i32.const 26894 + i32.load16_u offset=178 + i32.const 26894 + i32.load16_u offset=180 + i32.const 26894 + i32.load16_u offset=182 + i32.const 26894 + i32.load16_u offset=184 + i32.const 26894 + i32.load16_u offset=186 + i32.const 26894 + i32.load16_u offset=188 + i32.const 26894 + i32.load16_u offset=190 + i32.const 26894 + i32.load16_u offset=192 + i32.const 26894 + i32.load16_u offset=194 + i32.const 26894 + i32.load16_u offset=196 + i32.const 26894 + i32.load16_u offset=198 + i32.const 26894 + i32.load16_u offset=200 + i32.const 26894 + i32.load16_u offset=202 + i32.const 26894 + i32.load16_u offset=204 + i32.const 26894 + i32.load16_u offset=206 + i32.const 26894 + i32.load16_u offset=208 + i32.const 26894 + i32.load16_u offset=210 + i32.const 26894 + i32.load16_u offset=212 + i32.const 26894 + i32.load16_u offset=214 + i32.const 26894 + i32.load16_u offset=216 + i32.const 26894 + i32.load16_u offset=218 + i32.const 26894 + i32.load16_u offset=220 + i32.const 26894 + i32.load16_u offset=222 + i32.const 26894 + i32.load16_u offset=224 + i32.const 26894 + i32.load16_u offset=226 + i32.const 26894 + i32.load16_u offset=228 + i32.const 26894 + i32.load16_u offset=230 + i32.const 26894 + i32.load16_u offset=232 + i32.const 26894 + i32.load16_u offset=234 + i32.const 26894 + i32.load16_u offset=236 + i32.const 26894 + i32.load16_u offset=238 + i32.const 26894 + i32.load16_u offset=240 + i32.const 26894 + i32.load16_u offset=242 + i32.const 26894 + i32.load16_u offset=244 + i32.const 26894 + i32.load16_u offset=246 + i32.const 26894 + i32.load16_u offset=248 + i32.const 26894 + i32.load16_u offset=250 + i32.const 26894 + i32.load16_u offset=252 + i32.const 26894 + i32.load16_u offset=254 + i32.const 26894 + i32.load16_u offset=256 + i32.const 26894 + i32.load16_u offset=258 + i32.const 26894 + i32.load16_u offset=260 + i32.const 26894 + i32.load16_u offset=262 + i32.const 26894 + i32.load16_u offset=264 + i32.const 26894 + i32.load16_u offset=266 + i32.const 26894 + i32.load16_u offset=268 + i32.const 26894 + i32.load16_u offset=270 + i32.const 26894 + i32.load16_u offset=272 + i32.const 26894 + i32.load16_u offset=274 + i32.const 26894 + i32.load16_u offset=276 + i32.const 26894 + i32.load16_u offset=278 + i32.const 26894 + i32.load16_u offset=280 + i32.const 26894 + i32.load16_u offset=282 + i32.const 26894 + i32.load16_u offset=284 + i32.const 26894 + i32.load16_u offset=286 + i32.const 26894 + i32.load16_u offset=288 + i32.const 26894 + i32.load16_u offset=290 + i32.const 26894 + i32.load16_u offset=292 + i32.const 26894 + i32.load16_u offset=294 + i32.const 26894 + i32.load16_u offset=296 + i32.const 26894 + i32.load16_u offset=298 + i32.const 26894 + i32.load16_u offset=300 + i32.const 26894 + i32.load16_u offset=302 + i32.const 26894 + i32.load16_u offset=304 + i32.const 26894 + i32.load16_u offset=306 + i32.const 26894 + i32.load16_u offset=308 + i32.const 26894 + i32.load16_u offset=310 + i32.const 26894 + i32.load16_u offset=312 + i32.const 26894 + i32.load16_u offset=314 + i32.const 26894 + i32.load16_u offset=316 + i32.const 26894 + i32.load16_u offset=318 + i32.const 26894 + i32.load16_u offset=320 + i32.const 26894 + i32.load16_u offset=322 + i32.const 26894 + i32.load16_u offset=324 + i32.const 26894 + i32.load16_u offset=326 + i32.const 26894 + i32.load16_u offset=328 + i32.const 26894 + i32.load16_u offset=330 + i32.const 26894 + i32.load16_u offset=332 + i32.const 26894 + i32.load16_u offset=334 + i32.const 26894 + i32.load16_u offset=336 + i32.const 26894 + i32.load16_u offset=338 + i32.const 26894 + i32.load16_u offset=340 + i32.const 26894 + i32.load16_u offset=342 + i32.const 26894 + i32.load16_u offset=344 + i32.const 26894 + i32.load16_u offset=346 + i32.const 26894 + i32.load16_u offset=348 + i32.const 26894 + i32.load16_u offset=350 + i32.const 26894 + i32.load16_u offset=352 + i32.const 26894 + i32.load16_u offset=354 + i32.const 26894 + i32.load16_u offset=356 + i32.const 26894 + i32.load16_u offset=358 + i32.const 26894 + i32.load16_u offset=360 + i32.const 26894 + i32.load16_u offset=362 + i32.const 26894 + i32.load16_u offset=364 + i32.const 26894 + i32.load16_u offset=366 + i32.const 26894 + i32.load16_u offset=368 + i32.const 26894 + i32.load16_u offset=370 + i32.const 26894 + i32.load16_u offset=372 + i32.const 26894 + i32.load16_u offset=374 + i32.const 26894 + i32.load16_u offset=376 + i32.const 26894 + i32.load16_u offset=378 + i32.const 26894 + i32.load16_u offset=380 + i32.const 26894 + i32.load16_u offset=382 + i32.const 26894 + i32.load16_u offset=384 + i32.const 26894 + i32.load16_u offset=386 + i32.const 26894 + i32.load16_u offset=388 + i32.const 26894 + i32.load16_u offset=390 + i32.const 26894 + i32.load16_u offset=392 + i32.const 26894 + i32.load16_u offset=394 + i32.const 26894 + i32.load16_u offset=396 + i32.const 26894 + i32.load16_u offset=398 + i32.const 26894 + i32.load16_u offset=400 + i32.const 26894 + i32.load16_u offset=402 + i32.const 26894 + i32.load16_u offset=404 + i32.const 26894 + i32.load16_u offset=406 + i32.const 26894 + i32.load16_u offset=408 + i32.const 26894 + i32.load16_u offset=410 + i32.const 26894 + i32.load16_u offset=412 + i32.const 26894 + i32.load16_u offset=414 + i32.const 26894 + i32.load16_u offset=416 + i32.const 26894 + i32.load16_u offset=418 + i32.const 26894 + i32.load16_u offset=420 + i32.const 26894 + i32.load16_u offset=422 + i32.const 26894 + i32.load16_u offset=424 + i32.const 26894 + i32.load16_u offset=426 + i32.const 26894 + i32.load16_u offset=428 + i32.const 26894 + i32.load16_u offset=430 + i32.const 26894 + i32.load16_u offset=432 + i32.const 26894 + i32.load16_u offset=434 + i32.const 26894 + i32.load16_u offset=436 + i32.const 26894 + i32.load16_u offset=438 + i32.const 26894 + i32.load16_u offset=440 + i32.const 26894 + i32.load16_u offset=442 + i32.const 26894 + i32.load16_u offset=444 + i32.const 26894 + i32.load16_u offset=446 + i32.const 26894 + i32.load16_u offset=448 + i32.const 26894 + i32.load16_u offset=450 + i32.const 26894 + i32.load16_u offset=452 + i32.const 26894 + i32.load16_u offset=454 + i32.const 26894 + i32.load16_u offset=456 + i32.const 26894 + i32.load16_u offset=458 + i32.const 26894 + i32.load16_u offset=460 + i32.const 26894 + i32.load16_u offset=462 + i32.const 26894 + i32.load16_u offset=464 + i32.const 26894 + i32.load16_u offset=466 + i32.const 26894 + i32.load16_u offset=468 + i32.const 26894 + i32.load16_u offset=470 + i32.const 26894 + i32.load16_u offset=472 + i32.const 26894 + i32.load16_u offset=474 + i32.const 26894 + i32.load16_u offset=476 + i32.const 26894 + i32.load16_u offset=478 + i32.const 26894 + i32.load16_u offset=480 + i32.const 26894 + i32.load16_u offset=482 + i32.const 26894 + i32.load16_u offset=484 + i32.const 26894 + i32.load16_u offset=486 + i32.const 26894 + i32.load16_u offset=488 + i32.const 26894 + i32.load16_u offset=490 + i32.const 26894 + i32.load16_u offset=492 + i32.const 26894 + i32.load16_u offset=494 + i32.const 26894 + i32.load16_u offset=496 + i32.const 26894 + i32.load16_u offset=498 + i32.const 26894 + i32.load16_u offset=500 + i32.const 26894 + i32.load16_u offset=502 + i32.const 26894 + i32.load16_u offset=504 + i32.const 26894 + i32.load16_u offset=506 + i32.const 26894 + i32.load16_u offset=508 + i32.const 26894 + i32.load16_u offset=510 + i32.const 26894 + i32.load16_u offset=512 + i32.const 26894 + i32.load16_u offset=514 + i32.const 26894 + i32.load16_u offset=516 + i32.const 26894 + i32.load16_u offset=518 + i32.const 26894 + i32.load16_u offset=520 + i32.const 26894 + i32.load16_u offset=522 + i32.const 26894 + i32.load16_u offset=524 + i32.const 26894 + i32.load16_u offset=526 + i32.const 26894 + i32.load16_u offset=528 + i32.const 26894 + i32.load16_u offset=530 + i32.const 26894 + i32.load16_u offset=532 + i32.const 26894 + i32.load16_u offset=534 + i32.const 26894 + i32.load16_u offset=536 + i32.const 26894 + i32.load16_u offset=538 + i32.const 26894 + i32.load16_u offset=540 + i32.const 26894 + i32.load16_u offset=542 + i32.const 26894 + i32.load16_u offset=544 + i32.const 26894 + i32.load16_u offset=546 + i32.const 26894 + i32.load16_u offset=548 + i32.const 26894 + i32.load16_u offset=550 + i32.const 26894 + i32.load16_u offset=552 + i32.const 26894 + i32.load16_u offset=554 + i32.const 26894 + i32.load16_u offset=556 + i32.const 26894 + i32.load16_u offset=558 + i32.const 26894 + i32.load16_u offset=560 + i32.const 26894 + i32.load16_u offset=562 + i32.const 26894 + i32.load16_u offset=564 + i32.const 26894 + i32.load16_u offset=566 + i32.const 26894 + i32.load16_u offset=568 + i32.const 26894 + i32.load16_u offset=570 + i32.const 26894 + i32.load16_u offset=572 + i32.const 26894 + i32.load16_u offset=574 + i32.const 26894 + i32.load16_u offset=576 + i32.const 26894 + i32.load16_u offset=578 + i32.const 26894 + i32.load16_u offset=580 + i32.const 26894 + i32.load16_u offset=582 + i32.const 26894 + i32.load16_u offset=584 + i32.const 26894 + i32.load16_u offset=586 + i32.const 26894 + i32.load16_u offset=588 + i32.const 26894 + i32.load16_u offset=590 + i32.const 26894 + i32.load16_u offset=592 + i32.const 26894 + i32.load16_u offset=594 + i32.const 26894 + i32.load16_u offset=596 + i32.const 26894 + i32.load16_u offset=598 + i32.const 26894 + i32.load16_u offset=600 + i32.const 26894 + i32.load16_u offset=602 + i32.const 26894 + i32.load16_u offset=604 + i32.const 26894 + i32.load16_u offset=606 + i32.const 26894 + i32.load16_u offset=608 + i32.const 26894 + i32.load16_u offset=610 + i32.const 26894 + i32.load16_u offset=612 + i32.const 26894 + i32.load16_u offset=614 + i32.const 26894 + i32.load16_u offset=616 + i32.const 26894 + i32.load16_u offset=618 + i32.const 26894 + i32.load16_u offset=620 + i32.const 26894 + i32.load16_u offset=622 + i32.const 26894 + i32.load16_u offset=624 + i32.const 26894 + i32.load16_u offset=626 + i32.const 26894 + i32.load16_u offset=628 + i32.const 26894 + i32.load16_u offset=630 + i32.const 26894 + i32.load16_u offset=632 + i32.const 26894 + i32.load16_u offset=634 + i32.const 26894 + i32.load16_u offset=636 + i32.const 26894 + i32.load16_u offset=638 + i32.const 26894 + i32.load16_u offset=640 + i32.const 26894 + i32.load16_u offset=642 + i32.const 26894 + i32.load16_u offset=644 + i32.const 26894 + i32.load16_u offset=646 + i32.const 26894 + i32.load16_u offset=648 + i32.const 26894 + i32.load16_u offset=650 + i32.const 26894 + i32.load16_u offset=652 + i32.const 26894 + i32.load16_u offset=654 + i32.const 26894 + i32.load16_u offset=656 + i32.const 26894 + i32.load16_u offset=658 + i32.const 26894 + i32.load16_u offset=660 + i32.const 26894 + i32.load16_u offset=662 + i32.const 26894 + i32.load16_u offset=664 + i32.const 26894 + i32.load16_u offset=666 + i32.const 26894 + i32.load16_u offset=668 + i32.const 26894 + i32.load16_u offset=670 + i32.const 26894 + i32.load16_u offset=672 + i32.const 26894 + i32.load16_u offset=674 + i32.const 26894 + i32.load16_u offset=676 + i32.const 26894 + i32.load16_u offset=678 + i32.const 26894 + i32.load16_u offset=680 + i32.const 26894 + i32.load16_u offset=682 + i32.const 26894 + i32.load16_u offset=684 + i32.const 26894 + i32.load16_u offset=686 + i32.const 26894 + i32.load16_u offset=688 + i32.const 26894 + i32.load16_u offset=690 + i32.const 26894 + i32.load16_u offset=692 + i32.const 26894 + i32.load16_u offset=694 + i32.const 26894 + i32.load16_u offset=696 + i32.const 26894 + i32.load16_u offset=698 + i32.const 26894 + i32.load16_u offset=700 + i32.const 26894 + i32.load16_u offset=702 + i32.const 26894 + i32.load16_u offset=704 + i32.const 26894 + i32.load16_u offset=706 + i32.const 26894 + i32.load16_u offset=708 + i32.const 26894 + i32.load16_u offset=710 + i32.const 26894 + i32.load16_u offset=712 + i32.const 26894 + i32.load16_u offset=714 + i32.const 26894 + i32.load16_u offset=716 + i32.const 26894 + i32.load16_u offset=718 + i32.const 26894 + i32.load16_u offset=720 + i32.const 26894 + i32.load16_u offset=722 + i32.const 26894 + i32.load16_u offset=724 + i32.const 26894 + i32.load16_u offset=726 + i32.const 26894 + i32.load16_u offset=728 + i32.const 26894 + i32.load16_u offset=730 + i32.const 26894 + i32.load16_u offset=732 + i32.const 26894 + i32.load16_u offset=734 + i32.const 26894 + i32.load16_u offset=736 + i32.const 26894 + i32.load16_u offset=738 + i32.const 26894 + i32.load16_u offset=740 + i32.const 26894 + i32.load16_u offset=742 + i32.const 26894 + i32.load16_u offset=744 + i32.const 26894 + i32.load16_u offset=746 + i32.const 26894 + i32.load16_u offset=748 + i32.const 26894 + i32.load16_u offset=750 + i32.const 26894 + i32.load16_u offset=752 + i32.const 26894 + i32.load16_u offset=754 + i32.const 26894 + i32.load16_u offset=756 + i32.const 26894 + i32.load16_u offset=758 + i32.const 26894 + i32.load16_u offset=760 + i32.const 26894 + i32.load16_u offset=762 + i32.const 26894 + i32.load16_u offset=764 + i32.const 26894 + i32.load16_u offset=766 + i32.const 26894 + i32.load16_u offset=768 + i32.const 26894 + i32.load16_u offset=770 + i32.const 26894 + i32.load16_u offset=772 + i32.const 26894 + i32.load16_u offset=774 + i32.const 26894 + i32.load16_u offset=776 + i32.const 26894 + i32.load16_u offset=778 + i32.const 26894 + i32.load16_u offset=780 + i32.const 26894 + i32.load16_u offset=782 + i32.const 26894 + i32.load16_u offset=784 + i32.const 26894 + i32.load16_u offset=786 + i32.const 26894 + i32.load16_u offset=788 + i32.const 26894 + i32.load16_u offset=790 + i32.const 26894 + i32.load16_u offset=792 + i32.const 26894 + i32.load16_u offset=794 + i32.const 26894 + i32.load16_u offset=796 + i32.const 26894 + i32.load16_u offset=798 + i32.const 26894 + i32.load16_u offset=800 + i32.const 26894 + i32.load16_u offset=802 + i32.const 26894 + i32.load16_u offset=804 + i32.const 26894 + i32.load16_u offset=806 + i32.const 26894 + i32.load16_u offset=808 + i32.const 26894 + i32.load16_u offset=810 + i32.const 26894 + i32.load16_u offset=812 + i32.const 26894 + i32.load16_u offset=814 + i32.const 26894 + i32.load16_u offset=816 + i32.const 26894 + i32.load16_u offset=818 + i32.const 26894 + i32.load16_u offset=820 + i32.const 26894 + i32.load16_u offset=822 + i32.const 26894 + i32.load16_u offset=824 + i32.const 26894 + i32.load16_u offset=826 + i32.const 26894 + i32.load16_u offset=828 + i32.const 26894 + i32.load16_u offset=830 + i32.const 26894 + i32.load16_u offset=832 + i32.const 26894 + i32.load16_u offset=834 + i32.const 26894 + i32.load16_u offset=836 + i32.const 26894 + i32.load16_u offset=838 + i32.const 26894 + i32.load16_u offset=840 + i32.const 26894 + i32.load16_u offset=842 + i32.const 26894 + i32.load16_u offset=844 + i32.const 26894 + i32.load16_u offset=846 + i32.const 26894 + i32.load16_u offset=848 + i32.const 26894 + i32.load16_u offset=850 + i32.const 26894 + i32.load16_u offset=852 + i32.const 26894 + i32.load16_u offset=854 + i32.const 26894 + i32.load16_u offset=856 + i32.const 26894 + i32.load16_u offset=858 + i32.const 26894 + i32.load16_u offset=860 + i32.const 26894 + i32.load16_u offset=862 + i32.const 26894 + i32.load16_u offset=864 + i32.const 26894 + i32.load16_u offset=866 + local.set $$t10.433 + local.set $$t10.432 + local.set $$t10.431 + local.set $$t10.430 + local.set $$t10.429 + local.set $$t10.428 + local.set $$t10.427 + local.set $$t10.426 + local.set $$t10.425 + local.set $$t10.424 + local.set $$t10.423 + local.set $$t10.422 + local.set $$t10.421 + local.set $$t10.420 + local.set $$t10.419 + local.set $$t10.418 + local.set $$t10.417 + local.set $$t10.416 + local.set $$t10.415 + local.set $$t10.414 + local.set $$t10.413 + local.set $$t10.412 + local.set $$t10.411 + local.set $$t10.410 + local.set $$t10.409 + local.set $$t10.408 + local.set $$t10.407 + local.set $$t10.406 + local.set $$t10.405 + local.set $$t10.404 + local.set $$t10.403 + local.set $$t10.402 + local.set $$t10.401 + local.set $$t10.400 + local.set $$t10.399 + local.set $$t10.398 + local.set $$t10.397 + local.set $$t10.396 + local.set $$t10.395 + local.set $$t10.394 + local.set $$t10.393 + local.set $$t10.392 + local.set $$t10.391 + local.set $$t10.390 + local.set $$t10.389 + local.set $$t10.388 + local.set $$t10.387 + local.set $$t10.386 + local.set $$t10.385 + local.set $$t10.384 + local.set $$t10.383 + local.set $$t10.382 + local.set $$t10.381 + local.set $$t10.380 + local.set $$t10.379 + local.set $$t10.378 + local.set $$t10.377 + local.set $$t10.376 + local.set $$t10.375 + local.set $$t10.374 + local.set $$t10.373 + local.set $$t10.372 + local.set $$t10.371 + local.set $$t10.370 + local.set $$t10.369 + local.set $$t10.368 + local.set $$t10.367 + local.set $$t10.366 + local.set $$t10.365 + local.set $$t10.364 + local.set $$t10.363 + local.set $$t10.362 + local.set $$t10.361 + local.set $$t10.360 + local.set $$t10.359 + local.set $$t10.358 + local.set $$t10.357 + local.set $$t10.356 + local.set $$t10.355 + local.set $$t10.354 + local.set $$t10.353 + local.set $$t10.352 + local.set $$t10.351 + local.set $$t10.350 + local.set $$t10.349 + local.set $$t10.348 + local.set $$t10.347 + local.set $$t10.346 + local.set $$t10.345 + local.set $$t10.344 + local.set $$t10.343 + local.set $$t10.342 + local.set $$t10.341 + local.set $$t10.340 + local.set $$t10.339 + local.set $$t10.338 + local.set $$t10.337 + local.set $$t10.336 + local.set $$t10.335 + local.set $$t10.334 + local.set $$t10.333 + local.set $$t10.332 + local.set $$t10.331 + local.set $$t10.330 + local.set $$t10.329 + local.set $$t10.328 + local.set $$t10.327 + local.set $$t10.326 + local.set $$t10.325 + local.set $$t10.324 + local.set $$t10.323 + local.set $$t10.322 + local.set $$t10.321 + local.set $$t10.320 + local.set $$t10.319 + local.set $$t10.318 + local.set $$t10.317 + local.set $$t10.316 + local.set $$t10.315 + local.set $$t10.314 + local.set $$t10.313 + local.set $$t10.312 + local.set $$t10.311 + local.set $$t10.310 + local.set $$t10.309 + local.set $$t10.308 + local.set $$t10.307 + local.set $$t10.306 + local.set $$t10.305 + local.set $$t10.304 + local.set $$t10.303 + local.set $$t10.302 + local.set $$t10.301 + local.set $$t10.300 + local.set $$t10.299 + local.set $$t10.298 + local.set $$t10.297 + local.set $$t10.296 + local.set $$t10.295 + local.set $$t10.294 + local.set $$t10.293 + local.set $$t10.292 + local.set $$t10.291 + local.set $$t10.290 + local.set $$t10.289 + local.set $$t10.288 + local.set $$t10.287 + local.set $$t10.286 + local.set $$t10.285 + local.set $$t10.284 + local.set $$t10.283 + local.set $$t10.282 + local.set $$t10.281 + local.set $$t10.280 + local.set $$t10.279 + local.set $$t10.278 + local.set $$t10.277 + local.set $$t10.276 + local.set $$t10.275 + local.set $$t10.274 + local.set $$t10.273 + local.set $$t10.272 + local.set $$t10.271 + local.set $$t10.270 + local.set $$t10.269 + local.set $$t10.268 + local.set $$t10.267 + local.set $$t10.266 + local.set $$t10.265 + local.set $$t10.264 + local.set $$t10.263 + local.set $$t10.262 + local.set $$t10.261 + local.set $$t10.260 + local.set $$t10.259 + local.set $$t10.258 + local.set $$t10.257 + local.set $$t10.256 + local.set $$t10.255 + local.set $$t10.254 + local.set $$t10.253 + local.set $$t10.252 + local.set $$t10.251 + local.set $$t10.250 + local.set $$t10.249 + local.set $$t10.248 + local.set $$t10.247 + local.set $$t10.246 + local.set $$t10.245 + local.set $$t10.244 + local.set $$t10.243 + local.set $$t10.242 + local.set $$t10.241 + local.set $$t10.240 + local.set $$t10.239 + local.set $$t10.238 + local.set $$t10.237 + local.set $$t10.236 + local.set $$t10.235 + local.set $$t10.234 + local.set $$t10.233 + local.set $$t10.232 + local.set $$t10.231 + local.set $$t10.230 + local.set $$t10.229 + local.set $$t10.228 + local.set $$t10.227 + local.set $$t10.226 + local.set $$t10.225 + local.set $$t10.224 + local.set $$t10.223 + local.set $$t10.222 + local.set $$t10.221 + local.set $$t10.220 + local.set $$t10.219 + local.set $$t10.218 + local.set $$t10.217 + local.set $$t10.216 + local.set $$t10.215 + local.set $$t10.214 + local.set $$t10.213 + local.set $$t10.212 + local.set $$t10.211 + local.set $$t10.210 + local.set $$t10.209 + local.set $$t10.208 + local.set $$t10.207 + local.set $$t10.206 + local.set $$t10.205 + local.set $$t10.204 + local.set $$t10.203 + local.set $$t10.202 + local.set $$t10.201 + local.set $$t10.200 + local.set $$t10.199 + local.set $$t10.198 + local.set $$t10.197 + local.set $$t10.196 + local.set $$t10.195 + local.set $$t10.194 + local.set $$t10.193 + local.set $$t10.192 + local.set $$t10.191 + local.set $$t10.190 + local.set $$t10.189 + local.set $$t10.188 + local.set $$t10.187 + local.set $$t10.186 + local.set $$t10.185 + local.set $$t10.184 + local.set $$t10.183 + local.set $$t10.182 + local.set $$t10.181 + local.set $$t10.180 + local.set $$t10.179 + local.set $$t10.178 + local.set $$t10.177 + local.set $$t10.176 + local.set $$t10.175 + local.set $$t10.174 + local.set $$t10.173 + local.set $$t10.172 + local.set $$t10.171 + local.set $$t10.170 + local.set $$t10.169 + local.set $$t10.168 + local.set $$t10.167 + local.set $$t10.166 + local.set $$t10.165 + local.set $$t10.164 + local.set $$t10.163 + local.set $$t10.162 + local.set $$t10.161 + local.set $$t10.160 + local.set $$t10.159 + local.set $$t10.158 + local.set $$t10.157 + local.set $$t10.156 + local.set $$t10.155 + local.set $$t10.154 + local.set $$t10.153 + local.set $$t10.152 + local.set $$t10.151 + local.set $$t10.150 + local.set $$t10.149 + local.set $$t10.148 + local.set $$t10.147 + local.set $$t10.146 + local.set $$t10.145 + local.set $$t10.144 + local.set $$t10.143 + local.set $$t10.142 + local.set $$t10.141 + local.set $$t10.140 + local.set $$t10.139 + local.set $$t10.138 + local.set $$t10.137 + local.set $$t10.136 + local.set $$t10.135 + local.set $$t10.134 + local.set $$t10.133 + local.set $$t10.132 + local.set $$t10.131 + local.set $$t10.130 + local.set $$t10.129 + local.set $$t10.128 + local.set $$t10.127 + local.set $$t10.126 + local.set $$t10.125 + local.set $$t10.124 + local.set $$t10.123 + local.set $$t10.122 + local.set $$t10.121 + local.set $$t10.120 + local.set $$t10.119 + local.set $$t10.118 + local.set $$t10.117 + local.set $$t10.116 + local.set $$t10.115 + local.set $$t10.114 + local.set $$t10.113 + local.set $$t10.112 + local.set $$t10.111 + local.set $$t10.110 + local.set $$t10.109 + local.set $$t10.108 + local.set $$t10.107 + local.set $$t10.106 + local.set $$t10.105 + local.set $$t10.104 + local.set $$t10.103 + local.set $$t10.102 + local.set $$t10.101 + local.set $$t10.100 + local.set $$t10.99 + local.set $$t10.98 + local.set $$t10.97 + local.set $$t10.96 + local.set $$t10.95 + local.set $$t10.94 + local.set $$t10.93 + local.set $$t10.92 + local.set $$t10.91 + local.set $$t10.90 + local.set $$t10.89 + local.set $$t10.88 + local.set $$t10.87 + local.set $$t10.86 + local.set $$t10.85 + local.set $$t10.84 + local.set $$t10.83 + local.set $$t10.82 + local.set $$t10.81 + local.set $$t10.80 + local.set $$t10.79 + local.set $$t10.78 + local.set $$t10.77 + local.set $$t10.76 + local.set $$t10.75 + local.set $$t10.74 + local.set $$t10.73 + local.set $$t10.72 + local.set $$t10.71 + local.set $$t10.70 + local.set $$t10.69 + local.set $$t10.68 + local.set $$t10.67 + local.set $$t10.66 + local.set $$t10.65 + local.set $$t10.64 + local.set $$t10.63 + local.set $$t10.62 + local.set $$t10.61 + local.set $$t10.60 + local.set $$t10.59 + local.set $$t10.58 + local.set $$t10.57 + local.set $$t10.56 + local.set $$t10.55 + local.set $$t10.54 + local.set $$t10.53 + local.set $$t10.52 + local.set $$t10.51 + local.set $$t10.50 + local.set $$t10.49 + local.set $$t10.48 + local.set $$t10.47 + local.set $$t10.46 + local.set $$t10.45 + local.set $$t10.44 + local.set $$t10.43 + local.set $$t10.42 + local.set $$t10.41 + local.set $$t10.40 + local.set $$t10.39 + local.set $$t10.38 + local.set $$t10.37 + local.set $$t10.36 + local.set $$t10.35 + local.set $$t10.34 + local.set $$t10.33 + local.set $$t10.32 + local.set $$t10.31 + local.set $$t10.30 + local.set $$t10.29 + local.set $$t10.28 + local.set $$t10.27 + local.set $$t10.26 + local.set $$t10.25 + local.set $$t10.24 + local.set $$t10.23 + local.set $$t10.22 + local.set $$t10.21 + local.set $$t10.20 + local.set $$t10.19 + local.set $$t10.18 + local.set $$t10.17 + local.set $$t10.16 + local.set $$t10.15 + local.set $$t10.14 + local.set $$t10.13 + local.set $$t10.12 + local.set $$t10.11 + local.set $$t10.10 + local.set $$t10.9 + local.set $$t10.8 + local.set $$t10.7 + local.set $$t10.6 + local.set $$t10.5 + local.set $$t10.4 + local.set $$t10.3 + local.set $$t10.2 + local.set $$t10.1 + local.set $$t10.0 + i32.const 26440 + i32.load16_u + i32.const 26440 + i32.load16_u offset=2 + i32.const 26440 + i32.load16_u offset=4 + i32.const 26440 + i32.load16_u offset=6 + i32.const 26440 + i32.load16_u offset=8 + i32.const 26440 + i32.load16_u offset=10 + i32.const 26440 + i32.load16_u offset=12 + i32.const 26440 + i32.load16_u offset=14 + i32.const 26440 + i32.load16_u offset=16 + i32.const 26440 + i32.load16_u offset=18 + i32.const 26440 + i32.load16_u offset=20 + i32.const 26440 + i32.load16_u offset=22 + i32.const 26440 + i32.load16_u offset=24 + i32.const 26440 + i32.load16_u offset=26 + i32.const 26440 + i32.load16_u offset=28 + i32.const 26440 + i32.load16_u offset=30 + i32.const 26440 + i32.load16_u offset=32 + i32.const 26440 + i32.load16_u offset=34 + i32.const 26440 + i32.load16_u offset=36 + i32.const 26440 + i32.load16_u offset=38 + i32.const 26440 + i32.load16_u offset=40 + i32.const 26440 + i32.load16_u offset=42 + i32.const 26440 + i32.load16_u offset=44 + i32.const 26440 + i32.load16_u offset=46 + i32.const 26440 + i32.load16_u offset=48 + i32.const 26440 + i32.load16_u offset=50 + i32.const 26440 + i32.load16_u offset=52 + i32.const 26440 + i32.load16_u offset=54 + i32.const 26440 + i32.load16_u offset=56 + i32.const 26440 + i32.load16_u offset=58 + i32.const 26440 + i32.load16_u offset=60 + i32.const 26440 + i32.load16_u offset=62 + i32.const 26440 + i32.load16_u offset=64 + i32.const 26440 + i32.load16_u offset=66 + i32.const 26440 + i32.load16_u offset=68 + i32.const 26440 + i32.load16_u offset=70 + i32.const 26440 + i32.load16_u offset=72 + i32.const 26440 + i32.load16_u offset=74 + i32.const 26440 + i32.load16_u offset=76 + i32.const 26440 + i32.load16_u offset=78 + i32.const 26440 + i32.load16_u offset=80 + i32.const 26440 + i32.load16_u offset=82 + i32.const 26440 + i32.load16_u offset=84 + i32.const 26440 + i32.load16_u offset=86 + i32.const 26440 + i32.load16_u offset=88 + i32.const 26440 + i32.load16_u offset=90 + i32.const 26440 + i32.load16_u offset=92 + i32.const 26440 + i32.load16_u offset=94 + i32.const 26440 + i32.load16_u offset=96 + i32.const 26440 + i32.load16_u offset=98 + i32.const 26440 + i32.load16_u offset=100 + i32.const 26440 + i32.load16_u offset=102 + i32.const 26440 + i32.load16_u offset=104 + i32.const 26440 + i32.load16_u offset=106 + i32.const 26440 + i32.load16_u offset=108 + i32.const 26440 + i32.load16_u offset=110 + i32.const 26440 + i32.load16_u offset=112 + i32.const 26440 + i32.load16_u offset=114 + i32.const 26440 + i32.load16_u offset=116 + i32.const 26440 + i32.load16_u offset=118 + i32.const 26440 + i32.load16_u offset=120 + i32.const 26440 + i32.load16_u offset=122 + i32.const 26440 + i32.load16_u offset=124 + i32.const 26440 + i32.load16_u offset=126 + i32.const 26440 + i32.load16_u offset=128 + i32.const 26440 + i32.load16_u offset=130 + i32.const 26440 + i32.load16_u offset=132 + i32.const 26440 + i32.load16_u offset=134 + i32.const 26440 + i32.load16_u offset=136 + i32.const 26440 + i32.load16_u offset=138 + i32.const 26440 + i32.load16_u offset=140 + i32.const 26440 + i32.load16_u offset=142 + i32.const 26440 + i32.load16_u offset=144 + i32.const 26440 + i32.load16_u offset=146 + i32.const 26440 + i32.load16_u offset=148 + i32.const 26440 + i32.load16_u offset=150 + i32.const 26440 + i32.load16_u offset=152 + i32.const 26440 + i32.load16_u offset=154 + i32.const 26440 + i32.load16_u offset=156 + i32.const 26440 + i32.load16_u offset=158 + i32.const 26440 + i32.load16_u offset=160 + i32.const 26440 + i32.load16_u offset=162 + i32.const 26440 + i32.load16_u offset=164 + i32.const 26440 + i32.load16_u offset=166 + i32.const 26440 + i32.load16_u offset=168 + i32.const 26440 + i32.load16_u offset=170 + i32.const 26440 + i32.load16_u offset=172 + i32.const 26440 + i32.load16_u offset=174 + i32.const 26440 + i32.load16_u offset=176 + i32.const 26440 + i32.load16_u offset=178 + i32.const 26440 + i32.load16_u offset=180 + i32.const 26440 + i32.load16_u offset=182 + i32.const 26440 + i32.load16_u offset=184 + i32.const 26440 + i32.load16_u offset=186 + i32.const 26440 + i32.load16_u offset=188 + i32.const 26440 + i32.load16_u offset=190 + i32.const 26440 + i32.load16_u offset=192 + i32.const 26440 + i32.load16_u offset=194 + i32.const 26440 + i32.load16_u offset=196 + i32.const 26440 + i32.load16_u offset=198 + i32.const 26440 + i32.load16_u offset=200 + i32.const 26440 + i32.load16_u offset=202 + i32.const 26440 + i32.load16_u offset=204 + i32.const 26440 + i32.load16_u offset=206 + i32.const 26440 + i32.load16_u offset=208 + i32.const 26440 + i32.load16_u offset=210 + i32.const 26440 + i32.load16_u offset=212 + i32.const 26440 + i32.load16_u offset=214 + i32.const 26440 + i32.load16_u offset=216 + i32.const 26440 + i32.load16_u offset=218 + i32.const 26440 + i32.load16_u offset=220 + i32.const 26440 + i32.load16_u offset=222 + i32.const 26440 + i32.load16_u offset=224 + i32.const 26440 + i32.load16_u offset=226 + i32.const 26440 + i32.load16_u offset=228 + i32.const 26440 + i32.load16_u offset=230 + i32.const 26440 + i32.load16_u offset=232 + i32.const 26440 + i32.load16_u offset=234 + i32.const 26440 + i32.load16_u offset=236 + i32.const 26440 + i32.load16_u offset=238 + i32.const 26440 + i32.load16_u offset=240 + i32.const 26440 + i32.load16_u offset=242 + i32.const 26440 + i32.load16_u offset=244 + i32.const 26440 + i32.load16_u offset=246 + i32.const 26440 + i32.load16_u offset=248 + i32.const 26440 + i32.load16_u offset=250 + i32.const 26440 + i32.load16_u offset=252 + i32.const 26440 + i32.load16_u offset=254 + i32.const 26440 + i32.load16_u offset=256 + i32.const 26440 + i32.load16_u offset=258 + i32.const 26440 + i32.load16_u offset=260 + i32.const 26440 + i32.load16_u offset=262 + local.set $$t11.131 + local.set $$t11.130 + local.set $$t11.129 + local.set $$t11.128 + local.set $$t11.127 + local.set $$t11.126 + local.set $$t11.125 + local.set $$t11.124 + local.set $$t11.123 + local.set $$t11.122 + local.set $$t11.121 + local.set $$t11.120 + local.set $$t11.119 + local.set $$t11.118 + local.set $$t11.117 + local.set $$t11.116 + local.set $$t11.115 + local.set $$t11.114 + local.set $$t11.113 + local.set $$t11.112 + local.set $$t11.111 + local.set $$t11.110 + local.set $$t11.109 + local.set $$t11.108 + local.set $$t11.107 + local.set $$t11.106 + local.set $$t11.105 + local.set $$t11.104 + local.set $$t11.103 + local.set $$t11.102 + local.set $$t11.101 + local.set $$t11.100 + local.set $$t11.99 + local.set $$t11.98 + local.set $$t11.97 + local.set $$t11.96 + local.set $$t11.95 + local.set $$t11.94 + local.set $$t11.93 + local.set $$t11.92 + local.set $$t11.91 + local.set $$t11.90 + local.set $$t11.89 + local.set $$t11.88 + local.set $$t11.87 + local.set $$t11.86 + local.set $$t11.85 + local.set $$t11.84 + local.set $$t11.83 + local.set $$t11.82 + local.set $$t11.81 + local.set $$t11.80 + local.set $$t11.79 + local.set $$t11.78 + local.set $$t11.77 + local.set $$t11.76 + local.set $$t11.75 + local.set $$t11.74 + local.set $$t11.73 + local.set $$t11.72 + local.set $$t11.71 + local.set $$t11.70 + local.set $$t11.69 + local.set $$t11.68 + local.set $$t11.67 + local.set $$t11.66 + local.set $$t11.65 + local.set $$t11.64 + local.set $$t11.63 + local.set $$t11.62 + local.set $$t11.61 + local.set $$t11.60 + local.set $$t11.59 + local.set $$t11.58 + local.set $$t11.57 + local.set $$t11.56 + local.set $$t11.55 + local.set $$t11.54 + local.set $$t11.53 + local.set $$t11.52 + local.set $$t11.51 + local.set $$t11.50 + local.set $$t11.49 + local.set $$t11.48 + local.set $$t11.47 + local.set $$t11.46 + local.set $$t11.45 + local.set $$t11.44 + local.set $$t11.43 + local.set $$t11.42 + local.set $$t11.41 + local.set $$t11.40 + local.set $$t11.39 + local.set $$t11.38 + local.set $$t11.37 + local.set $$t11.36 + local.set $$t11.35 + local.set $$t11.34 + local.set $$t11.33 + local.set $$t11.32 + local.set $$t11.31 + local.set $$t11.30 + local.set $$t11.29 + local.set $$t11.28 + local.set $$t11.27 + local.set $$t11.26 + local.set $$t11.25 + local.set $$t11.24 + local.set $$t11.23 + local.set $$t11.22 + local.set $$t11.21 + local.set $$t11.20 + local.set $$t11.19 + local.set $$t11.18 + local.set $$t11.17 + local.set $$t11.16 + local.set $$t11.15 + local.set $$t11.14 + local.set $$t11.13 + local.set $$t11.12 + local.set $$t11.11 + local.set $$t11.10 + local.set $$t11.9 + local.set $$t11.8 + local.set $$t11.7 + local.set $$t11.6 + local.set $$t11.5 + local.set $$t11.4 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t7.1 + local.get $$t10.0 + i32.store16 + local.get $$t7.1 + local.get $$t10.1 + i32.store16 offset=2 + local.get $$t7.1 + local.get $$t10.2 + i32.store16 offset=4 + local.get $$t7.1 + local.get $$t10.3 + i32.store16 offset=6 + local.get $$t7.1 + local.get $$t10.4 + i32.store16 offset=8 + local.get $$t7.1 + local.get $$t10.5 + i32.store16 offset=10 + local.get $$t7.1 + local.get $$t10.6 + i32.store16 offset=12 + local.get $$t7.1 + local.get $$t10.7 + i32.store16 offset=14 + local.get $$t7.1 + local.get $$t10.8 + i32.store16 offset=16 + local.get $$t7.1 + local.get $$t10.9 + i32.store16 offset=18 + local.get $$t7.1 + local.get $$t10.10 + i32.store16 offset=20 + local.get $$t7.1 + local.get $$t10.11 + i32.store16 offset=22 + local.get $$t7.1 + local.get $$t10.12 + i32.store16 offset=24 + local.get $$t7.1 + local.get $$t10.13 + i32.store16 offset=26 + local.get $$t7.1 + local.get $$t10.14 + i32.store16 offset=28 + local.get $$t7.1 + local.get $$t10.15 + i32.store16 offset=30 + local.get $$t7.1 + local.get $$t10.16 + i32.store16 offset=32 + local.get $$t7.1 + local.get $$t10.17 + i32.store16 offset=34 + local.get $$t7.1 + local.get $$t10.18 + i32.store16 offset=36 + local.get $$t7.1 + local.get $$t10.19 + i32.store16 offset=38 + local.get $$t7.1 + local.get $$t10.20 + i32.store16 offset=40 + local.get $$t7.1 + local.get $$t10.21 + i32.store16 offset=42 + local.get $$t7.1 + local.get $$t10.22 + i32.store16 offset=44 + local.get $$t7.1 + local.get $$t10.23 + i32.store16 offset=46 + local.get $$t7.1 + local.get $$t10.24 + i32.store16 offset=48 + local.get $$t7.1 + local.get $$t10.25 + i32.store16 offset=50 + local.get $$t7.1 + local.get $$t10.26 + i32.store16 offset=52 + local.get $$t7.1 + local.get $$t10.27 + i32.store16 offset=54 + local.get $$t7.1 + local.get $$t10.28 + i32.store16 offset=56 + local.get $$t7.1 + local.get $$t10.29 + i32.store16 offset=58 + local.get $$t7.1 + local.get $$t10.30 + i32.store16 offset=60 + local.get $$t7.1 + local.get $$t10.31 + i32.store16 offset=62 + local.get $$t7.1 + local.get $$t10.32 + i32.store16 offset=64 + local.get $$t7.1 + local.get $$t10.33 + i32.store16 offset=66 + local.get $$t7.1 + local.get $$t10.34 + i32.store16 offset=68 + local.get $$t7.1 + local.get $$t10.35 + i32.store16 offset=70 + local.get $$t7.1 + local.get $$t10.36 + i32.store16 offset=72 + local.get $$t7.1 + local.get $$t10.37 + i32.store16 offset=74 + local.get $$t7.1 + local.get $$t10.38 + i32.store16 offset=76 + local.get $$t7.1 + local.get $$t10.39 + i32.store16 offset=78 + local.get $$t7.1 + local.get $$t10.40 + i32.store16 offset=80 + local.get $$t7.1 + local.get $$t10.41 + i32.store16 offset=82 + local.get $$t7.1 + local.get $$t10.42 + i32.store16 offset=84 + local.get $$t7.1 + local.get $$t10.43 + i32.store16 offset=86 + local.get $$t7.1 + local.get $$t10.44 + i32.store16 offset=88 + local.get $$t7.1 + local.get $$t10.45 + i32.store16 offset=90 + local.get $$t7.1 + local.get $$t10.46 + i32.store16 offset=92 + local.get $$t7.1 + local.get $$t10.47 + i32.store16 offset=94 + local.get $$t7.1 + local.get $$t10.48 + i32.store16 offset=96 + local.get $$t7.1 + local.get $$t10.49 + i32.store16 offset=98 + local.get $$t7.1 + local.get $$t10.50 + i32.store16 offset=100 + local.get $$t7.1 + local.get $$t10.51 + i32.store16 offset=102 + local.get $$t7.1 + local.get $$t10.52 + i32.store16 offset=104 + local.get $$t7.1 + local.get $$t10.53 + i32.store16 offset=106 + local.get $$t7.1 + local.get $$t10.54 + i32.store16 offset=108 + local.get $$t7.1 + local.get $$t10.55 + i32.store16 offset=110 + local.get $$t7.1 + local.get $$t10.56 + i32.store16 offset=112 + local.get $$t7.1 + local.get $$t10.57 + i32.store16 offset=114 + local.get $$t7.1 + local.get $$t10.58 + i32.store16 offset=116 + local.get $$t7.1 + local.get $$t10.59 + i32.store16 offset=118 + local.get $$t7.1 + local.get $$t10.60 + i32.store16 offset=120 + local.get $$t7.1 + local.get $$t10.61 + i32.store16 offset=122 + local.get $$t7.1 + local.get $$t10.62 + i32.store16 offset=124 + local.get $$t7.1 + local.get $$t10.63 + i32.store16 offset=126 + local.get $$t7.1 + local.get $$t10.64 + i32.store16 offset=128 + local.get $$t7.1 + local.get $$t10.65 + i32.store16 offset=130 + local.get $$t7.1 + local.get $$t10.66 + i32.store16 offset=132 + local.get $$t7.1 + local.get $$t10.67 + i32.store16 offset=134 + local.get $$t7.1 + local.get $$t10.68 + i32.store16 offset=136 + local.get $$t7.1 + local.get $$t10.69 + i32.store16 offset=138 + local.get $$t7.1 + local.get $$t10.70 + i32.store16 offset=140 + local.get $$t7.1 + local.get $$t10.71 + i32.store16 offset=142 + local.get $$t7.1 + local.get $$t10.72 + i32.store16 offset=144 + local.get $$t7.1 + local.get $$t10.73 + i32.store16 offset=146 + local.get $$t7.1 + local.get $$t10.74 + i32.store16 offset=148 + local.get $$t7.1 + local.get $$t10.75 + i32.store16 offset=150 + local.get $$t7.1 + local.get $$t10.76 + i32.store16 offset=152 + local.get $$t7.1 + local.get $$t10.77 + i32.store16 offset=154 + local.get $$t7.1 + local.get $$t10.78 + i32.store16 offset=156 + local.get $$t7.1 + local.get $$t10.79 + i32.store16 offset=158 + local.get $$t7.1 + local.get $$t10.80 + i32.store16 offset=160 + local.get $$t7.1 + local.get $$t10.81 + i32.store16 offset=162 + local.get $$t7.1 + local.get $$t10.82 + i32.store16 offset=164 + local.get $$t7.1 + local.get $$t10.83 + i32.store16 offset=166 + local.get $$t7.1 + local.get $$t10.84 + i32.store16 offset=168 + local.get $$t7.1 + local.get $$t10.85 + i32.store16 offset=170 + local.get $$t7.1 + local.get $$t10.86 + i32.store16 offset=172 + local.get $$t7.1 + local.get $$t10.87 + i32.store16 offset=174 + local.get $$t7.1 + local.get $$t10.88 + i32.store16 offset=176 + local.get $$t7.1 + local.get $$t10.89 + i32.store16 offset=178 + local.get $$t7.1 + local.get $$t10.90 + i32.store16 offset=180 + local.get $$t7.1 + local.get $$t10.91 + i32.store16 offset=182 + local.get $$t7.1 + local.get $$t10.92 + i32.store16 offset=184 + local.get $$t7.1 + local.get $$t10.93 + i32.store16 offset=186 + local.get $$t7.1 + local.get $$t10.94 + i32.store16 offset=188 + local.get $$t7.1 + local.get $$t10.95 + i32.store16 offset=190 + local.get $$t7.1 + local.get $$t10.96 + i32.store16 offset=192 + local.get $$t7.1 + local.get $$t10.97 + i32.store16 offset=194 + local.get $$t7.1 + local.get $$t10.98 + i32.store16 offset=196 + local.get $$t7.1 + local.get $$t10.99 + i32.store16 offset=198 + local.get $$t7.1 + local.get $$t10.100 + i32.store16 offset=200 + local.get $$t7.1 + local.get $$t10.101 + i32.store16 offset=202 + local.get $$t7.1 + local.get $$t10.102 + i32.store16 offset=204 + local.get $$t7.1 + local.get $$t10.103 + i32.store16 offset=206 + local.get $$t7.1 + local.get $$t10.104 + i32.store16 offset=208 + local.get $$t7.1 + local.get $$t10.105 + i32.store16 offset=210 + local.get $$t7.1 + local.get $$t10.106 + i32.store16 offset=212 + local.get $$t7.1 + local.get $$t10.107 + i32.store16 offset=214 + local.get $$t7.1 + local.get $$t10.108 + i32.store16 offset=216 + local.get $$t7.1 + local.get $$t10.109 + i32.store16 offset=218 + local.get $$t7.1 + local.get $$t10.110 + i32.store16 offset=220 + local.get $$t7.1 + local.get $$t10.111 + i32.store16 offset=222 + local.get $$t7.1 + local.get $$t10.112 + i32.store16 offset=224 + local.get $$t7.1 + local.get $$t10.113 + i32.store16 offset=226 + local.get $$t7.1 + local.get $$t10.114 + i32.store16 offset=228 + local.get $$t7.1 + local.get $$t10.115 + i32.store16 offset=230 + local.get $$t7.1 + local.get $$t10.116 + i32.store16 offset=232 + local.get $$t7.1 + local.get $$t10.117 + i32.store16 offset=234 + local.get $$t7.1 + local.get $$t10.118 + i32.store16 offset=236 + local.get $$t7.1 + local.get $$t10.119 + i32.store16 offset=238 + local.get $$t7.1 + local.get $$t10.120 + i32.store16 offset=240 + local.get $$t7.1 + local.get $$t10.121 + i32.store16 offset=242 + local.get $$t7.1 + local.get $$t10.122 + i32.store16 offset=244 + local.get $$t7.1 + local.get $$t10.123 + i32.store16 offset=246 + local.get $$t7.1 + local.get $$t10.124 + i32.store16 offset=248 + local.get $$t7.1 + local.get $$t10.125 + i32.store16 offset=250 + local.get $$t7.1 + local.get $$t10.126 + i32.store16 offset=252 + local.get $$t7.1 + local.get $$t10.127 + i32.store16 offset=254 + local.get $$t7.1 + local.get $$t10.128 + i32.store16 offset=256 + local.get $$t7.1 + local.get $$t10.129 + i32.store16 offset=258 + local.get $$t7.1 + local.get $$t10.130 + i32.store16 offset=260 + local.get $$t7.1 + local.get $$t10.131 + i32.store16 offset=262 + local.get $$t7.1 + local.get $$t10.132 + i32.store16 offset=264 + local.get $$t7.1 + local.get $$t10.133 + i32.store16 offset=266 + local.get $$t7.1 + local.get $$t10.134 + i32.store16 offset=268 + local.get $$t7.1 + local.get $$t10.135 + i32.store16 offset=270 + local.get $$t7.1 + local.get $$t10.136 + i32.store16 offset=272 + local.get $$t7.1 + local.get $$t10.137 + i32.store16 offset=274 + local.get $$t7.1 + local.get $$t10.138 + i32.store16 offset=276 + local.get $$t7.1 + local.get $$t10.139 + i32.store16 offset=278 + local.get $$t7.1 + local.get $$t10.140 + i32.store16 offset=280 + local.get $$t7.1 + local.get $$t10.141 + i32.store16 offset=282 + local.get $$t7.1 + local.get $$t10.142 + i32.store16 offset=284 + local.get $$t7.1 + local.get $$t10.143 + i32.store16 offset=286 + local.get $$t7.1 + local.get $$t10.144 + i32.store16 offset=288 + local.get $$t7.1 + local.get $$t10.145 + i32.store16 offset=290 + local.get $$t7.1 + local.get $$t10.146 + i32.store16 offset=292 + local.get $$t7.1 + local.get $$t10.147 + i32.store16 offset=294 + local.get $$t7.1 + local.get $$t10.148 + i32.store16 offset=296 + local.get $$t7.1 + local.get $$t10.149 + i32.store16 offset=298 + local.get $$t7.1 + local.get $$t10.150 + i32.store16 offset=300 + local.get $$t7.1 + local.get $$t10.151 + i32.store16 offset=302 + local.get $$t7.1 + local.get $$t10.152 + i32.store16 offset=304 + local.get $$t7.1 + local.get $$t10.153 + i32.store16 offset=306 + local.get $$t7.1 + local.get $$t10.154 + i32.store16 offset=308 + local.get $$t7.1 + local.get $$t10.155 + i32.store16 offset=310 + local.get $$t7.1 + local.get $$t10.156 + i32.store16 offset=312 + local.get $$t7.1 + local.get $$t10.157 + i32.store16 offset=314 + local.get $$t7.1 + local.get $$t10.158 + i32.store16 offset=316 + local.get $$t7.1 + local.get $$t10.159 + i32.store16 offset=318 + local.get $$t7.1 + local.get $$t10.160 + i32.store16 offset=320 + local.get $$t7.1 + local.get $$t10.161 + i32.store16 offset=322 + local.get $$t7.1 + local.get $$t10.162 + i32.store16 offset=324 + local.get $$t7.1 + local.get $$t10.163 + i32.store16 offset=326 + local.get $$t7.1 + local.get $$t10.164 + i32.store16 offset=328 + local.get $$t7.1 + local.get $$t10.165 + i32.store16 offset=330 + local.get $$t7.1 + local.get $$t10.166 + i32.store16 offset=332 + local.get $$t7.1 + local.get $$t10.167 + i32.store16 offset=334 + local.get $$t7.1 + local.get $$t10.168 + i32.store16 offset=336 + local.get $$t7.1 + local.get $$t10.169 + i32.store16 offset=338 + local.get $$t7.1 + local.get $$t10.170 + i32.store16 offset=340 + local.get $$t7.1 + local.get $$t10.171 + i32.store16 offset=342 + local.get $$t7.1 + local.get $$t10.172 + i32.store16 offset=344 + local.get $$t7.1 + local.get $$t10.173 + i32.store16 offset=346 + local.get $$t7.1 + local.get $$t10.174 + i32.store16 offset=348 + local.get $$t7.1 + local.get $$t10.175 + i32.store16 offset=350 + local.get $$t7.1 + local.get $$t10.176 + i32.store16 offset=352 + local.get $$t7.1 + local.get $$t10.177 + i32.store16 offset=354 + local.get $$t7.1 + local.get $$t10.178 + i32.store16 offset=356 + local.get $$t7.1 + local.get $$t10.179 + i32.store16 offset=358 + local.get $$t7.1 + local.get $$t10.180 + i32.store16 offset=360 + local.get $$t7.1 + local.get $$t10.181 + i32.store16 offset=362 + local.get $$t7.1 + local.get $$t10.182 + i32.store16 offset=364 + local.get $$t7.1 + local.get $$t10.183 + i32.store16 offset=366 + local.get $$t7.1 + local.get $$t10.184 + i32.store16 offset=368 + local.get $$t7.1 + local.get $$t10.185 + i32.store16 offset=370 + local.get $$t7.1 + local.get $$t10.186 + i32.store16 offset=372 + local.get $$t7.1 + local.get $$t10.187 + i32.store16 offset=374 + local.get $$t7.1 + local.get $$t10.188 + i32.store16 offset=376 + local.get $$t7.1 + local.get $$t10.189 + i32.store16 offset=378 + local.get $$t7.1 + local.get $$t10.190 + i32.store16 offset=380 + local.get $$t7.1 + local.get $$t10.191 + i32.store16 offset=382 + local.get $$t7.1 + local.get $$t10.192 + i32.store16 offset=384 + local.get $$t7.1 + local.get $$t10.193 + i32.store16 offset=386 + local.get $$t7.1 + local.get $$t10.194 + i32.store16 offset=388 + local.get $$t7.1 + local.get $$t10.195 + i32.store16 offset=390 + local.get $$t7.1 + local.get $$t10.196 + i32.store16 offset=392 + local.get $$t7.1 + local.get $$t10.197 + i32.store16 offset=394 + local.get $$t7.1 + local.get $$t10.198 + i32.store16 offset=396 + local.get $$t7.1 + local.get $$t10.199 + i32.store16 offset=398 + local.get $$t7.1 + local.get $$t10.200 + i32.store16 offset=400 + local.get $$t7.1 + local.get $$t10.201 + i32.store16 offset=402 + local.get $$t7.1 + local.get $$t10.202 + i32.store16 offset=404 + local.get $$t7.1 + local.get $$t10.203 + i32.store16 offset=406 + local.get $$t7.1 + local.get $$t10.204 + i32.store16 offset=408 + local.get $$t7.1 + local.get $$t10.205 + i32.store16 offset=410 + local.get $$t7.1 + local.get $$t10.206 + i32.store16 offset=412 + local.get $$t7.1 + local.get $$t10.207 + i32.store16 offset=414 + local.get $$t7.1 + local.get $$t10.208 + i32.store16 offset=416 + local.get $$t7.1 + local.get $$t10.209 + i32.store16 offset=418 + local.get $$t7.1 + local.get $$t10.210 + i32.store16 offset=420 + local.get $$t7.1 + local.get $$t10.211 + i32.store16 offset=422 + local.get $$t7.1 + local.get $$t10.212 + i32.store16 offset=424 + local.get $$t7.1 + local.get $$t10.213 + i32.store16 offset=426 + local.get $$t7.1 + local.get $$t10.214 + i32.store16 offset=428 + local.get $$t7.1 + local.get $$t10.215 + i32.store16 offset=430 + local.get $$t7.1 + local.get $$t10.216 + i32.store16 offset=432 + local.get $$t7.1 + local.get $$t10.217 + i32.store16 offset=434 + local.get $$t7.1 + local.get $$t10.218 + i32.store16 offset=436 + local.get $$t7.1 + local.get $$t10.219 + i32.store16 offset=438 + local.get $$t7.1 + local.get $$t10.220 + i32.store16 offset=440 + local.get $$t7.1 + local.get $$t10.221 + i32.store16 offset=442 + local.get $$t7.1 + local.get $$t10.222 + i32.store16 offset=444 + local.get $$t7.1 + local.get $$t10.223 + i32.store16 offset=446 + local.get $$t7.1 + local.get $$t10.224 + i32.store16 offset=448 + local.get $$t7.1 + local.get $$t10.225 + i32.store16 offset=450 + local.get $$t7.1 + local.get $$t10.226 + i32.store16 offset=452 + local.get $$t7.1 + local.get $$t10.227 + i32.store16 offset=454 + local.get $$t7.1 + local.get $$t10.228 + i32.store16 offset=456 + local.get $$t7.1 + local.get $$t10.229 + i32.store16 offset=458 + local.get $$t7.1 + local.get $$t10.230 + i32.store16 offset=460 + local.get $$t7.1 + local.get $$t10.231 + i32.store16 offset=462 + local.get $$t7.1 + local.get $$t10.232 + i32.store16 offset=464 + local.get $$t7.1 + local.get $$t10.233 + i32.store16 offset=466 + local.get $$t7.1 + local.get $$t10.234 + i32.store16 offset=468 + local.get $$t7.1 + local.get $$t10.235 + i32.store16 offset=470 + local.get $$t7.1 + local.get $$t10.236 + i32.store16 offset=472 + local.get $$t7.1 + local.get $$t10.237 + i32.store16 offset=474 + local.get $$t7.1 + local.get $$t10.238 + i32.store16 offset=476 + local.get $$t7.1 + local.get $$t10.239 + i32.store16 offset=478 + local.get $$t7.1 + local.get $$t10.240 + i32.store16 offset=480 + local.get $$t7.1 + local.get $$t10.241 + i32.store16 offset=482 + local.get $$t7.1 + local.get $$t10.242 + i32.store16 offset=484 + local.get $$t7.1 + local.get $$t10.243 + i32.store16 offset=486 + local.get $$t7.1 + local.get $$t10.244 + i32.store16 offset=488 + local.get $$t7.1 + local.get $$t10.245 + i32.store16 offset=490 + local.get $$t7.1 + local.get $$t10.246 + i32.store16 offset=492 + local.get $$t7.1 + local.get $$t10.247 + i32.store16 offset=494 + local.get $$t7.1 + local.get $$t10.248 + i32.store16 offset=496 + local.get $$t7.1 + local.get $$t10.249 + i32.store16 offset=498 + local.get $$t7.1 + local.get $$t10.250 + i32.store16 offset=500 + local.get $$t7.1 + local.get $$t10.251 + i32.store16 offset=502 + local.get $$t7.1 + local.get $$t10.252 + i32.store16 offset=504 + local.get $$t7.1 + local.get $$t10.253 + i32.store16 offset=506 + local.get $$t7.1 + local.get $$t10.254 + i32.store16 offset=508 + local.get $$t7.1 + local.get $$t10.255 + i32.store16 offset=510 + local.get $$t7.1 + local.get $$t10.256 + i32.store16 offset=512 + local.get $$t7.1 + local.get $$t10.257 + i32.store16 offset=514 + local.get $$t7.1 + local.get $$t10.258 + i32.store16 offset=516 + local.get $$t7.1 + local.get $$t10.259 + i32.store16 offset=518 + local.get $$t7.1 + local.get $$t10.260 + i32.store16 offset=520 + local.get $$t7.1 + local.get $$t10.261 + i32.store16 offset=522 + local.get $$t7.1 + local.get $$t10.262 + i32.store16 offset=524 + local.get $$t7.1 + local.get $$t10.263 + i32.store16 offset=526 + local.get $$t7.1 + local.get $$t10.264 + i32.store16 offset=528 + local.get $$t7.1 + local.get $$t10.265 + i32.store16 offset=530 + local.get $$t7.1 + local.get $$t10.266 + i32.store16 offset=532 + local.get $$t7.1 + local.get $$t10.267 + i32.store16 offset=534 + local.get $$t7.1 + local.get $$t10.268 + i32.store16 offset=536 + local.get $$t7.1 + local.get $$t10.269 + i32.store16 offset=538 + local.get $$t7.1 + local.get $$t10.270 + i32.store16 offset=540 + local.get $$t7.1 + local.get $$t10.271 + i32.store16 offset=542 + local.get $$t7.1 + local.get $$t10.272 + i32.store16 offset=544 + local.get $$t7.1 + local.get $$t10.273 + i32.store16 offset=546 + local.get $$t7.1 + local.get $$t10.274 + i32.store16 offset=548 + local.get $$t7.1 + local.get $$t10.275 + i32.store16 offset=550 + local.get $$t7.1 + local.get $$t10.276 + i32.store16 offset=552 + local.get $$t7.1 + local.get $$t10.277 + i32.store16 offset=554 + local.get $$t7.1 + local.get $$t10.278 + i32.store16 offset=556 + local.get $$t7.1 + local.get $$t10.279 + i32.store16 offset=558 + local.get $$t7.1 + local.get $$t10.280 + i32.store16 offset=560 + local.get $$t7.1 + local.get $$t10.281 + i32.store16 offset=562 + local.get $$t7.1 + local.get $$t10.282 + i32.store16 offset=564 + local.get $$t7.1 + local.get $$t10.283 + i32.store16 offset=566 + local.get $$t7.1 + local.get $$t10.284 + i32.store16 offset=568 + local.get $$t7.1 + local.get $$t10.285 + i32.store16 offset=570 + local.get $$t7.1 + local.get $$t10.286 + i32.store16 offset=572 + local.get $$t7.1 + local.get $$t10.287 + i32.store16 offset=574 + local.get $$t7.1 + local.get $$t10.288 + i32.store16 offset=576 + local.get $$t7.1 + local.get $$t10.289 + i32.store16 offset=578 + local.get $$t7.1 + local.get $$t10.290 + i32.store16 offset=580 + local.get $$t7.1 + local.get $$t10.291 + i32.store16 offset=582 + local.get $$t7.1 + local.get $$t10.292 + i32.store16 offset=584 + local.get $$t7.1 + local.get $$t10.293 + i32.store16 offset=586 + local.get $$t7.1 + local.get $$t10.294 + i32.store16 offset=588 + local.get $$t7.1 + local.get $$t10.295 + i32.store16 offset=590 + local.get $$t7.1 + local.get $$t10.296 + i32.store16 offset=592 + local.get $$t7.1 + local.get $$t10.297 + i32.store16 offset=594 + local.get $$t7.1 + local.get $$t10.298 + i32.store16 offset=596 + local.get $$t7.1 + local.get $$t10.299 + i32.store16 offset=598 + local.get $$t7.1 + local.get $$t10.300 + i32.store16 offset=600 + local.get $$t7.1 + local.get $$t10.301 + i32.store16 offset=602 + local.get $$t7.1 + local.get $$t10.302 + i32.store16 offset=604 + local.get $$t7.1 + local.get $$t10.303 + i32.store16 offset=606 + local.get $$t7.1 + local.get $$t10.304 + i32.store16 offset=608 + local.get $$t7.1 + local.get $$t10.305 + i32.store16 offset=610 + local.get $$t7.1 + local.get $$t10.306 + i32.store16 offset=612 + local.get $$t7.1 + local.get $$t10.307 + i32.store16 offset=614 + local.get $$t7.1 + local.get $$t10.308 + i32.store16 offset=616 + local.get $$t7.1 + local.get $$t10.309 + i32.store16 offset=618 + local.get $$t7.1 + local.get $$t10.310 + i32.store16 offset=620 + local.get $$t7.1 + local.get $$t10.311 + i32.store16 offset=622 + local.get $$t7.1 + local.get $$t10.312 + i32.store16 offset=624 + local.get $$t7.1 + local.get $$t10.313 + i32.store16 offset=626 + local.get $$t7.1 + local.get $$t10.314 + i32.store16 offset=628 + local.get $$t7.1 + local.get $$t10.315 + i32.store16 offset=630 + local.get $$t7.1 + local.get $$t10.316 + i32.store16 offset=632 + local.get $$t7.1 + local.get $$t10.317 + i32.store16 offset=634 + local.get $$t7.1 + local.get $$t10.318 + i32.store16 offset=636 + local.get $$t7.1 + local.get $$t10.319 + i32.store16 offset=638 + local.get $$t7.1 + local.get $$t10.320 + i32.store16 offset=640 + local.get $$t7.1 + local.get $$t10.321 + i32.store16 offset=642 + local.get $$t7.1 + local.get $$t10.322 + i32.store16 offset=644 + local.get $$t7.1 + local.get $$t10.323 + i32.store16 offset=646 + local.get $$t7.1 + local.get $$t10.324 + i32.store16 offset=648 + local.get $$t7.1 + local.get $$t10.325 + i32.store16 offset=650 + local.get $$t7.1 + local.get $$t10.326 + i32.store16 offset=652 + local.get $$t7.1 + local.get $$t10.327 + i32.store16 offset=654 + local.get $$t7.1 + local.get $$t10.328 + i32.store16 offset=656 + local.get $$t7.1 + local.get $$t10.329 + i32.store16 offset=658 + local.get $$t7.1 + local.get $$t10.330 + i32.store16 offset=660 + local.get $$t7.1 + local.get $$t10.331 + i32.store16 offset=662 + local.get $$t7.1 + local.get $$t10.332 + i32.store16 offset=664 + local.get $$t7.1 + local.get $$t10.333 + i32.store16 offset=666 + local.get $$t7.1 + local.get $$t10.334 + i32.store16 offset=668 + local.get $$t7.1 + local.get $$t10.335 + i32.store16 offset=670 + local.get $$t7.1 + local.get $$t10.336 + i32.store16 offset=672 + local.get $$t7.1 + local.get $$t10.337 + i32.store16 offset=674 + local.get $$t7.1 + local.get $$t10.338 + i32.store16 offset=676 + local.get $$t7.1 + local.get $$t10.339 + i32.store16 offset=678 + local.get $$t7.1 + local.get $$t10.340 + i32.store16 offset=680 + local.get $$t7.1 + local.get $$t10.341 + i32.store16 offset=682 + local.get $$t7.1 + local.get $$t10.342 + i32.store16 offset=684 + local.get $$t7.1 + local.get $$t10.343 + i32.store16 offset=686 + local.get $$t7.1 + local.get $$t10.344 + i32.store16 offset=688 + local.get $$t7.1 + local.get $$t10.345 + i32.store16 offset=690 + local.get $$t7.1 + local.get $$t10.346 + i32.store16 offset=692 + local.get $$t7.1 + local.get $$t10.347 + i32.store16 offset=694 + local.get $$t7.1 + local.get $$t10.348 + i32.store16 offset=696 + local.get $$t7.1 + local.get $$t10.349 + i32.store16 offset=698 + local.get $$t7.1 + local.get $$t10.350 + i32.store16 offset=700 + local.get $$t7.1 + local.get $$t10.351 + i32.store16 offset=702 + local.get $$t7.1 + local.get $$t10.352 + i32.store16 offset=704 + local.get $$t7.1 + local.get $$t10.353 + i32.store16 offset=706 + local.get $$t7.1 + local.get $$t10.354 + i32.store16 offset=708 + local.get $$t7.1 + local.get $$t10.355 + i32.store16 offset=710 + local.get $$t7.1 + local.get $$t10.356 + i32.store16 offset=712 + local.get $$t7.1 + local.get $$t10.357 + i32.store16 offset=714 + local.get $$t7.1 + local.get $$t10.358 + i32.store16 offset=716 + local.get $$t7.1 + local.get $$t10.359 + i32.store16 offset=718 + local.get $$t7.1 + local.get $$t10.360 + i32.store16 offset=720 + local.get $$t7.1 + local.get $$t10.361 + i32.store16 offset=722 + local.get $$t7.1 + local.get $$t10.362 + i32.store16 offset=724 + local.get $$t7.1 + local.get $$t10.363 + i32.store16 offset=726 + local.get $$t7.1 + local.get $$t10.364 + i32.store16 offset=728 + local.get $$t7.1 + local.get $$t10.365 + i32.store16 offset=730 + local.get $$t7.1 + local.get $$t10.366 + i32.store16 offset=732 + local.get $$t7.1 + local.get $$t10.367 + i32.store16 offset=734 + local.get $$t7.1 + local.get $$t10.368 + i32.store16 offset=736 + local.get $$t7.1 + local.get $$t10.369 + i32.store16 offset=738 + local.get $$t7.1 + local.get $$t10.370 + i32.store16 offset=740 + local.get $$t7.1 + local.get $$t10.371 + i32.store16 offset=742 + local.get $$t7.1 + local.get $$t10.372 + i32.store16 offset=744 + local.get $$t7.1 + local.get $$t10.373 + i32.store16 offset=746 + local.get $$t7.1 + local.get $$t10.374 + i32.store16 offset=748 + local.get $$t7.1 + local.get $$t10.375 + i32.store16 offset=750 + local.get $$t7.1 + local.get $$t10.376 + i32.store16 offset=752 + local.get $$t7.1 + local.get $$t10.377 + i32.store16 offset=754 + local.get $$t7.1 + local.get $$t10.378 + i32.store16 offset=756 + local.get $$t7.1 + local.get $$t10.379 + i32.store16 offset=758 + local.get $$t7.1 + local.get $$t10.380 + i32.store16 offset=760 + local.get $$t7.1 + local.get $$t10.381 + i32.store16 offset=762 + local.get $$t7.1 + local.get $$t10.382 + i32.store16 offset=764 + local.get $$t7.1 + local.get $$t10.383 + i32.store16 offset=766 + local.get $$t7.1 + local.get $$t10.384 + i32.store16 offset=768 + local.get $$t7.1 + local.get $$t10.385 + i32.store16 offset=770 + local.get $$t7.1 + local.get $$t10.386 + i32.store16 offset=772 + local.get $$t7.1 + local.get $$t10.387 + i32.store16 offset=774 + local.get $$t7.1 + local.get $$t10.388 + i32.store16 offset=776 + local.get $$t7.1 + local.get $$t10.389 + i32.store16 offset=778 + local.get $$t7.1 + local.get $$t10.390 + i32.store16 offset=780 + local.get $$t7.1 + local.get $$t10.391 + i32.store16 offset=782 + local.get $$t7.1 + local.get $$t10.392 + i32.store16 offset=784 + local.get $$t7.1 + local.get $$t10.393 + i32.store16 offset=786 + local.get $$t7.1 + local.get $$t10.394 + i32.store16 offset=788 + local.get $$t7.1 + local.get $$t10.395 + i32.store16 offset=790 + local.get $$t7.1 + local.get $$t10.396 + i32.store16 offset=792 + local.get $$t7.1 + local.get $$t10.397 + i32.store16 offset=794 + local.get $$t7.1 + local.get $$t10.398 + i32.store16 offset=796 + local.get $$t7.1 + local.get $$t10.399 + i32.store16 offset=798 + local.get $$t7.1 + local.get $$t10.400 + i32.store16 offset=800 + local.get $$t7.1 + local.get $$t10.401 + i32.store16 offset=802 + local.get $$t7.1 + local.get $$t10.402 + i32.store16 offset=804 + local.get $$t7.1 + local.get $$t10.403 + i32.store16 offset=806 + local.get $$t7.1 + local.get $$t10.404 + i32.store16 offset=808 + local.get $$t7.1 + local.get $$t10.405 + i32.store16 offset=810 + local.get $$t7.1 + local.get $$t10.406 + i32.store16 offset=812 + local.get $$t7.1 + local.get $$t10.407 + i32.store16 offset=814 + local.get $$t7.1 + local.get $$t10.408 + i32.store16 offset=816 + local.get $$t7.1 + local.get $$t10.409 + i32.store16 offset=818 + local.get $$t7.1 + local.get $$t10.410 + i32.store16 offset=820 + local.get $$t7.1 + local.get $$t10.411 + i32.store16 offset=822 + local.get $$t7.1 + local.get $$t10.412 + i32.store16 offset=824 + local.get $$t7.1 + local.get $$t10.413 + i32.store16 offset=826 + local.get $$t7.1 + local.get $$t10.414 + i32.store16 offset=828 + local.get $$t7.1 + local.get $$t10.415 + i32.store16 offset=830 + local.get $$t7.1 + local.get $$t10.416 + i32.store16 offset=832 + local.get $$t7.1 + local.get $$t10.417 + i32.store16 offset=834 + local.get $$t7.1 + local.get $$t10.418 + i32.store16 offset=836 + local.get $$t7.1 + local.get $$t10.419 + i32.store16 offset=838 + local.get $$t7.1 + local.get $$t10.420 + i32.store16 offset=840 + local.get $$t7.1 + local.get $$t10.421 + i32.store16 offset=842 + local.get $$t7.1 + local.get $$t10.422 + i32.store16 offset=844 + local.get $$t7.1 + local.get $$t10.423 + i32.store16 offset=846 + local.get $$t7.1 + local.get $$t10.424 + i32.store16 offset=848 + local.get $$t7.1 + local.get $$t10.425 + i32.store16 offset=850 + local.get $$t7.1 + local.get $$t10.426 + i32.store16 offset=852 + local.get $$t7.1 + local.get $$t10.427 + i32.store16 offset=854 + local.get $$t7.1 + local.get $$t10.428 + i32.store16 offset=856 + local.get $$t7.1 + local.get $$t10.429 + i32.store16 offset=858 + local.get $$t7.1 + local.get $$t10.430 + i32.store16 offset=860 + local.get $$t7.1 + local.get $$t10.431 + i32.store16 offset=862 + local.get $$t7.1 + local.get $$t10.432 + i32.store16 offset=864 + local.get $$t7.1 + local.get $$t10.433 + i32.store16 offset=866 + local.get $$t8.1 + local.get $$t11.0 + i32.store16 + local.get $$t8.1 + local.get $$t11.1 + i32.store16 offset=2 + local.get $$t8.1 + local.get $$t11.2 + i32.store16 offset=4 + local.get $$t8.1 + local.get $$t11.3 + i32.store16 offset=6 + local.get $$t8.1 + local.get $$t11.4 + i32.store16 offset=8 + local.get $$t8.1 + local.get $$t11.5 + i32.store16 offset=10 + local.get $$t8.1 + local.get $$t11.6 + i32.store16 offset=12 + local.get $$t8.1 + local.get $$t11.7 + i32.store16 offset=14 + local.get $$t8.1 + local.get $$t11.8 + i32.store16 offset=16 + local.get $$t8.1 + local.get $$t11.9 + i32.store16 offset=18 + local.get $$t8.1 + local.get $$t11.10 + i32.store16 offset=20 + local.get $$t8.1 + local.get $$t11.11 + i32.store16 offset=22 + local.get $$t8.1 + local.get $$t11.12 + i32.store16 offset=24 + local.get $$t8.1 + local.get $$t11.13 + i32.store16 offset=26 + local.get $$t8.1 + local.get $$t11.14 + i32.store16 offset=28 + local.get $$t8.1 + local.get $$t11.15 + i32.store16 offset=30 + local.get $$t8.1 + local.get $$t11.16 + i32.store16 offset=32 + local.get $$t8.1 + local.get $$t11.17 + i32.store16 offset=34 + local.get $$t8.1 + local.get $$t11.18 + i32.store16 offset=36 + local.get $$t8.1 + local.get $$t11.19 + i32.store16 offset=38 + local.get $$t8.1 + local.get $$t11.20 + i32.store16 offset=40 + local.get $$t8.1 + local.get $$t11.21 + i32.store16 offset=42 + local.get $$t8.1 + local.get $$t11.22 + i32.store16 offset=44 + local.get $$t8.1 + local.get $$t11.23 + i32.store16 offset=46 + local.get $$t8.1 + local.get $$t11.24 + i32.store16 offset=48 + local.get $$t8.1 + local.get $$t11.25 + i32.store16 offset=50 + local.get $$t8.1 + local.get $$t11.26 + i32.store16 offset=52 + local.get $$t8.1 + local.get $$t11.27 + i32.store16 offset=54 + local.get $$t8.1 + local.get $$t11.28 + i32.store16 offset=56 + local.get $$t8.1 + local.get $$t11.29 + i32.store16 offset=58 + local.get $$t8.1 + local.get $$t11.30 + i32.store16 offset=60 + local.get $$t8.1 + local.get $$t11.31 + i32.store16 offset=62 + local.get $$t8.1 + local.get $$t11.32 + i32.store16 offset=64 + local.get $$t8.1 + local.get $$t11.33 + i32.store16 offset=66 + local.get $$t8.1 + local.get $$t11.34 + i32.store16 offset=68 + local.get $$t8.1 + local.get $$t11.35 + i32.store16 offset=70 + local.get $$t8.1 + local.get $$t11.36 + i32.store16 offset=72 + local.get $$t8.1 + local.get $$t11.37 + i32.store16 offset=74 + local.get $$t8.1 + local.get $$t11.38 + i32.store16 offset=76 + local.get $$t8.1 + local.get $$t11.39 + i32.store16 offset=78 + local.get $$t8.1 + local.get $$t11.40 + i32.store16 offset=80 + local.get $$t8.1 + local.get $$t11.41 + i32.store16 offset=82 + local.get $$t8.1 + local.get $$t11.42 + i32.store16 offset=84 + local.get $$t8.1 + local.get $$t11.43 + i32.store16 offset=86 + local.get $$t8.1 + local.get $$t11.44 + i32.store16 offset=88 + local.get $$t8.1 + local.get $$t11.45 + i32.store16 offset=90 + local.get $$t8.1 + local.get $$t11.46 + i32.store16 offset=92 + local.get $$t8.1 + local.get $$t11.47 + i32.store16 offset=94 + local.get $$t8.1 + local.get $$t11.48 + i32.store16 offset=96 + local.get $$t8.1 + local.get $$t11.49 + i32.store16 offset=98 + local.get $$t8.1 + local.get $$t11.50 + i32.store16 offset=100 + local.get $$t8.1 + local.get $$t11.51 + i32.store16 offset=102 + local.get $$t8.1 + local.get $$t11.52 + i32.store16 offset=104 + local.get $$t8.1 + local.get $$t11.53 + i32.store16 offset=106 + local.get $$t8.1 + local.get $$t11.54 + i32.store16 offset=108 + local.get $$t8.1 + local.get $$t11.55 + i32.store16 offset=110 + local.get $$t8.1 + local.get $$t11.56 + i32.store16 offset=112 + local.get $$t8.1 + local.get $$t11.57 + i32.store16 offset=114 + local.get $$t8.1 + local.get $$t11.58 + i32.store16 offset=116 + local.get $$t8.1 + local.get $$t11.59 + i32.store16 offset=118 + local.get $$t8.1 + local.get $$t11.60 + i32.store16 offset=120 + local.get $$t8.1 + local.get $$t11.61 + i32.store16 offset=122 + local.get $$t8.1 + local.get $$t11.62 + i32.store16 offset=124 + local.get $$t8.1 + local.get $$t11.63 + i32.store16 offset=126 + local.get $$t8.1 + local.get $$t11.64 + i32.store16 offset=128 + local.get $$t8.1 + local.get $$t11.65 + i32.store16 offset=130 + local.get $$t8.1 + local.get $$t11.66 + i32.store16 offset=132 + local.get $$t8.1 + local.get $$t11.67 + i32.store16 offset=134 + local.get $$t8.1 + local.get $$t11.68 + i32.store16 offset=136 + local.get $$t8.1 + local.get $$t11.69 + i32.store16 offset=138 + local.get $$t8.1 + local.get $$t11.70 + i32.store16 offset=140 + local.get $$t8.1 + local.get $$t11.71 + i32.store16 offset=142 + local.get $$t8.1 + local.get $$t11.72 + i32.store16 offset=144 + local.get $$t8.1 + local.get $$t11.73 + i32.store16 offset=146 + local.get $$t8.1 + local.get $$t11.74 + i32.store16 offset=148 + local.get $$t8.1 + local.get $$t11.75 + i32.store16 offset=150 + local.get $$t8.1 + local.get $$t11.76 + i32.store16 offset=152 + local.get $$t8.1 + local.get $$t11.77 + i32.store16 offset=154 + local.get $$t8.1 + local.get $$t11.78 + i32.store16 offset=156 + local.get $$t8.1 + local.get $$t11.79 + i32.store16 offset=158 + local.get $$t8.1 + local.get $$t11.80 + i32.store16 offset=160 + local.get $$t8.1 + local.get $$t11.81 + i32.store16 offset=162 + local.get $$t8.1 + local.get $$t11.82 + i32.store16 offset=164 + local.get $$t8.1 + local.get $$t11.83 + i32.store16 offset=166 + local.get $$t8.1 + local.get $$t11.84 + i32.store16 offset=168 + local.get $$t8.1 + local.get $$t11.85 + i32.store16 offset=170 + local.get $$t8.1 + local.get $$t11.86 + i32.store16 offset=172 + local.get $$t8.1 + local.get $$t11.87 + i32.store16 offset=174 + local.get $$t8.1 + local.get $$t11.88 + i32.store16 offset=176 + local.get $$t8.1 + local.get $$t11.89 + i32.store16 offset=178 + local.get $$t8.1 + local.get $$t11.90 + i32.store16 offset=180 + local.get $$t8.1 + local.get $$t11.91 + i32.store16 offset=182 + local.get $$t8.1 + local.get $$t11.92 + i32.store16 offset=184 + local.get $$t8.1 + local.get $$t11.93 + i32.store16 offset=186 + local.get $$t8.1 + local.get $$t11.94 + i32.store16 offset=188 + local.get $$t8.1 + local.get $$t11.95 + i32.store16 offset=190 + local.get $$t8.1 + local.get $$t11.96 + i32.store16 offset=192 + local.get $$t8.1 + local.get $$t11.97 + i32.store16 offset=194 + local.get $$t8.1 + local.get $$t11.98 + i32.store16 offset=196 + local.get $$t8.1 + local.get $$t11.99 + i32.store16 offset=198 + local.get $$t8.1 + local.get $$t11.100 + i32.store16 offset=200 + local.get $$t8.1 + local.get $$t11.101 + i32.store16 offset=202 + local.get $$t8.1 + local.get $$t11.102 + i32.store16 offset=204 + local.get $$t8.1 + local.get $$t11.103 + i32.store16 offset=206 + local.get $$t8.1 + local.get $$t11.104 + i32.store16 offset=208 + local.get $$t8.1 + local.get $$t11.105 + i32.store16 offset=210 + local.get $$t8.1 + local.get $$t11.106 + i32.store16 offset=212 + local.get $$t8.1 + local.get $$t11.107 + i32.store16 offset=214 + local.get $$t8.1 + local.get $$t11.108 + i32.store16 offset=216 + local.get $$t8.1 + local.get $$t11.109 + i32.store16 offset=218 + local.get $$t8.1 + local.get $$t11.110 + i32.store16 offset=220 + local.get $$t8.1 + local.get $$t11.111 + i32.store16 offset=222 + local.get $$t8.1 + local.get $$t11.112 + i32.store16 offset=224 + local.get $$t8.1 + local.get $$t11.113 + i32.store16 offset=226 + local.get $$t8.1 + local.get $$t11.114 + i32.store16 offset=228 + local.get $$t8.1 + local.get $$t11.115 + i32.store16 offset=230 + local.get $$t8.1 + local.get $$t11.116 + i32.store16 offset=232 + local.get $$t8.1 + local.get $$t11.117 + i32.store16 offset=234 + local.get $$t8.1 + local.get $$t11.118 + i32.store16 offset=236 + local.get $$t8.1 + local.get $$t11.119 + i32.store16 offset=238 + local.get $$t8.1 + local.get $$t11.120 + i32.store16 offset=240 + local.get $$t8.1 + local.get $$t11.121 + i32.store16 offset=242 + local.get $$t8.1 + local.get $$t11.122 + i32.store16 offset=244 + local.get $$t8.1 + local.get $$t11.123 + i32.store16 offset=246 + local.get $$t8.1 + local.get $$t11.124 + i32.store16 offset=248 + local.get $$t8.1 + local.get $$t11.125 + i32.store16 offset=250 + local.get $$t8.1 + local.get $$t11.126 + i32.store16 offset=252 + local.get $$t8.1 + local.get $$t11.127 + i32.store16 offset=254 + local.get $$t8.1 + local.get $$t11.128 + i32.store16 offset=256 + local.get $$t8.1 + local.get $$t11.129 + i32.store16 offset=258 + local.get $$t8.1 + local.get $$t11.130 + i32.store16 offset=260 + local.get $$t8.1 + local.get $$t11.131 + i32.store16 offset=262 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 434 + i32.const 0 + i32.sub + i32.const 434 + i32.const 0 + i32.sub + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.0 + local.get $$t12.1 + local.get $$t12.2 + local.get $$t12.3 + local.get $$t9 + call $strconv.bsearch16 + local.set $$t13 + local.get $$t13 + i32.const 434 + i32.ge_s + local.set $$t14 + local.get $$t14 + if + br $$Block_11 + else + br $$Block_14 + end + end + i32.const 10 + local.set $$current_block + i32.const 1888 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1872 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + i32.const 206 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 190 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $r + local.set $$t17 + i32.const 27764 + i32.load + i32.const 27764 + i32.load offset=4 + i32.const 27764 + i32.load offset=8 + i32.const 27764 + i32.load offset=12 + i32.const 27764 + i32.load offset=16 + i32.const 27764 + i32.load offset=20 + i32.const 27764 + i32.load offset=24 + i32.const 27764 + i32.load offset=28 + i32.const 27764 + i32.load offset=32 + i32.const 27764 + i32.load offset=36 + i32.const 27764 + i32.load offset=40 + i32.const 27764 + i32.load offset=44 + i32.const 27764 + i32.load offset=48 + i32.const 27764 + i32.load offset=52 + i32.const 27764 + i32.load offset=56 + i32.const 27764 + i32.load offset=60 + i32.const 27764 + i32.load offset=64 + i32.const 27764 + i32.load offset=68 + i32.const 27764 + i32.load offset=72 + i32.const 27764 + i32.load offset=76 + i32.const 27764 + i32.load offset=80 + i32.const 27764 + i32.load offset=84 + i32.const 27764 + i32.load offset=88 + i32.const 27764 + i32.load offset=92 + i32.const 27764 + i32.load offset=96 + i32.const 27764 + i32.load offset=100 + i32.const 27764 + i32.load offset=104 + i32.const 27764 + i32.load offset=108 + i32.const 27764 + i32.load offset=112 + i32.const 27764 + i32.load offset=116 + i32.const 27764 + i32.load offset=120 + i32.const 27764 + i32.load offset=124 + i32.const 27764 + i32.load offset=128 + i32.const 27764 + i32.load offset=132 + i32.const 27764 + i32.load offset=136 + i32.const 27764 + i32.load offset=140 + i32.const 27764 + i32.load offset=144 + i32.const 27764 + i32.load offset=148 + i32.const 27764 + i32.load offset=152 + i32.const 27764 + i32.load offset=156 + i32.const 27764 + i32.load offset=160 + i32.const 27764 + i32.load offset=164 + i32.const 27764 + i32.load offset=168 + i32.const 27764 + i32.load offset=172 + i32.const 27764 + i32.load offset=176 + i32.const 27764 + i32.load offset=180 + i32.const 27764 + i32.load offset=184 + i32.const 27764 + i32.load offset=188 + i32.const 27764 + i32.load offset=192 + i32.const 27764 + i32.load offset=196 + i32.const 27764 + i32.load offset=200 + i32.const 27764 + i32.load offset=204 + i32.const 27764 + i32.load offset=208 + i32.const 27764 + i32.load offset=212 + i32.const 27764 + i32.load offset=216 + i32.const 27764 + i32.load offset=220 + i32.const 27764 + i32.load offset=224 + i32.const 27764 + i32.load offset=228 + i32.const 27764 + i32.load offset=232 + i32.const 27764 + i32.load offset=236 + i32.const 27764 + i32.load offset=240 + i32.const 27764 + i32.load offset=244 + i32.const 27764 + i32.load offset=248 + i32.const 27764 + i32.load offset=252 + i32.const 27764 + i32.load offset=256 + i32.const 27764 + i32.load offset=260 + i32.const 27764 + i32.load offset=264 + i32.const 27764 + i32.load offset=268 + i32.const 27764 + i32.load offset=272 + i32.const 27764 + i32.load offset=276 + i32.const 27764 + i32.load offset=280 + i32.const 27764 + i32.load offset=284 + i32.const 27764 + i32.load offset=288 + i32.const 27764 + i32.load offset=292 + i32.const 27764 + i32.load offset=296 + i32.const 27764 + i32.load offset=300 + i32.const 27764 + i32.load offset=304 + i32.const 27764 + i32.load offset=308 + i32.const 27764 + i32.load offset=312 + i32.const 27764 + i32.load offset=316 + i32.const 27764 + i32.load offset=320 + i32.const 27764 + i32.load offset=324 + i32.const 27764 + i32.load offset=328 + i32.const 27764 + i32.load offset=332 + i32.const 27764 + i32.load offset=336 + i32.const 27764 + i32.load offset=340 + i32.const 27764 + i32.load offset=344 + i32.const 27764 + i32.load offset=348 + i32.const 27764 + i32.load offset=352 + i32.const 27764 + i32.load offset=356 + i32.const 27764 + i32.load offset=360 + i32.const 27764 + i32.load offset=364 + i32.const 27764 + i32.load offset=368 + i32.const 27764 + i32.load offset=372 + i32.const 27764 + i32.load offset=376 + i32.const 27764 + i32.load offset=380 + i32.const 27764 + i32.load offset=384 + i32.const 27764 + i32.load offset=388 + i32.const 27764 + i32.load offset=392 + i32.const 27764 + i32.load offset=396 + i32.const 27764 + i32.load offset=400 + i32.const 27764 + i32.load offset=404 + i32.const 27764 + i32.load offset=408 + i32.const 27764 + i32.load offset=412 + i32.const 27764 + i32.load offset=416 + i32.const 27764 + i32.load offset=420 + i32.const 27764 + i32.load offset=424 + i32.const 27764 + i32.load offset=428 + i32.const 27764 + i32.load offset=432 + i32.const 27764 + i32.load offset=436 + i32.const 27764 + i32.load offset=440 + i32.const 27764 + i32.load offset=444 + i32.const 27764 + i32.load offset=448 + i32.const 27764 + i32.load offset=452 + i32.const 27764 + i32.load offset=456 + i32.const 27764 + i32.load offset=460 + i32.const 27764 + i32.load offset=464 + i32.const 27764 + i32.load offset=468 + i32.const 27764 + i32.load offset=472 + i32.const 27764 + i32.load offset=476 + i32.const 27764 + i32.load offset=480 + i32.const 27764 + i32.load offset=484 + i32.const 27764 + i32.load offset=488 + i32.const 27764 + i32.load offset=492 + i32.const 27764 + i32.load offset=496 + i32.const 27764 + i32.load offset=500 + i32.const 27764 + i32.load offset=504 + i32.const 27764 + i32.load offset=508 + i32.const 27764 + i32.load offset=512 + i32.const 27764 + i32.load offset=516 + i32.const 27764 + i32.load offset=520 + i32.const 27764 + i32.load offset=524 + i32.const 27764 + i32.load offset=528 + i32.const 27764 + i32.load offset=532 + i32.const 27764 + i32.load offset=536 + i32.const 27764 + i32.load offset=540 + i32.const 27764 + i32.load offset=544 + i32.const 27764 + i32.load offset=548 + i32.const 27764 + i32.load offset=552 + i32.const 27764 + i32.load offset=556 + i32.const 27764 + i32.load offset=560 + i32.const 27764 + i32.load offset=564 + i32.const 27764 + i32.load offset=568 + i32.const 27764 + i32.load offset=572 + i32.const 27764 + i32.load offset=576 + i32.const 27764 + i32.load offset=580 + i32.const 27764 + i32.load offset=584 + i32.const 27764 + i32.load offset=588 + i32.const 27764 + i32.load offset=592 + i32.const 27764 + i32.load offset=596 + i32.const 27764 + i32.load offset=600 + i32.const 27764 + i32.load offset=604 + i32.const 27764 + i32.load offset=608 + i32.const 27764 + i32.load offset=612 + i32.const 27764 + i32.load offset=616 + i32.const 27764 + i32.load offset=620 + i32.const 27764 + i32.load offset=624 + i32.const 27764 + i32.load offset=628 + i32.const 27764 + i32.load offset=632 + i32.const 27764 + i32.load offset=636 + i32.const 27764 + i32.load offset=640 + i32.const 27764 + i32.load offset=644 + i32.const 27764 + i32.load offset=648 + i32.const 27764 + i32.load offset=652 + i32.const 27764 + i32.load offset=656 + i32.const 27764 + i32.load offset=660 + i32.const 27764 + i32.load offset=664 + i32.const 27764 + i32.load offset=668 + i32.const 27764 + i32.load offset=672 + i32.const 27764 + i32.load offset=676 + i32.const 27764 + i32.load offset=680 + i32.const 27764 + i32.load offset=684 + i32.const 27764 + i32.load offset=688 + i32.const 27764 + i32.load offset=692 + i32.const 27764 + i32.load offset=696 + i32.const 27764 + i32.load offset=700 + i32.const 27764 + i32.load offset=704 + i32.const 27764 + i32.load offset=708 + i32.const 27764 + i32.load offset=712 + i32.const 27764 + i32.load offset=716 + i32.const 27764 + i32.load offset=720 + i32.const 27764 + i32.load offset=724 + i32.const 27764 + i32.load offset=728 + i32.const 27764 + i32.load offset=732 + i32.const 27764 + i32.load offset=736 + i32.const 27764 + i32.load offset=740 + i32.const 27764 + i32.load offset=744 + i32.const 27764 + i32.load offset=748 + i32.const 27764 + i32.load offset=752 + i32.const 27764 + i32.load offset=756 + i32.const 27764 + i32.load offset=760 + i32.const 27764 + i32.load offset=764 + i32.const 27764 + i32.load offset=768 + i32.const 27764 + i32.load offset=772 + i32.const 27764 + i32.load offset=776 + i32.const 27764 + i32.load offset=780 + i32.const 27764 + i32.load offset=784 + i32.const 27764 + i32.load offset=788 + i32.const 27764 + i32.load offset=792 + i32.const 27764 + i32.load offset=796 + i32.const 27764 + i32.load offset=800 + i32.const 27764 + i32.load offset=804 + i32.const 27764 + i32.load offset=808 + i32.const 27764 + i32.load offset=812 + i32.const 27764 + i32.load offset=816 + i32.const 27764 + i32.load offset=820 + i32.const 27764 + i32.load offset=824 + i32.const 27764 + i32.load offset=828 + i32.const 27764 + i32.load offset=832 + i32.const 27764 + i32.load offset=836 + i32.const 27764 + i32.load offset=840 + i32.const 27764 + i32.load offset=844 + i32.const 27764 + i32.load offset=848 + i32.const 27764 + i32.load offset=852 + i32.const 27764 + i32.load offset=856 + i32.const 27764 + i32.load offset=860 + i32.const 27764 + i32.load offset=864 + i32.const 27764 + i32.load offset=868 + i32.const 27764 + i32.load offset=872 + i32.const 27764 + i32.load offset=876 + i32.const 27764 + i32.load offset=880 + i32.const 27764 + i32.load offset=884 + i32.const 27764 + i32.load offset=888 + i32.const 27764 + i32.load offset=892 + i32.const 27764 + i32.load offset=896 + i32.const 27764 + i32.load offset=900 + i32.const 27764 + i32.load offset=904 + i32.const 27764 + i32.load offset=908 + i32.const 27764 + i32.load offset=912 + i32.const 27764 + i32.load offset=916 + i32.const 27764 + i32.load offset=920 + i32.const 27764 + i32.load offset=924 + i32.const 27764 + i32.load offset=928 + i32.const 27764 + i32.load offset=932 + i32.const 27764 + i32.load offset=936 + i32.const 27764 + i32.load offset=940 + i32.const 27764 + i32.load offset=944 + i32.const 27764 + i32.load offset=948 + i32.const 27764 + i32.load offset=952 + i32.const 27764 + i32.load offset=956 + i32.const 27764 + i32.load offset=960 + i32.const 27764 + i32.load offset=964 + i32.const 27764 + i32.load offset=968 + i32.const 27764 + i32.load offset=972 + i32.const 27764 + i32.load offset=976 + i32.const 27764 + i32.load offset=980 + i32.const 27764 + i32.load offset=984 + i32.const 27764 + i32.load offset=988 + i32.const 27764 + i32.load offset=992 + i32.const 27764 + i32.load offset=996 + i32.const 27764 + i32.load offset=1000 + i32.const 27764 + i32.load offset=1004 + i32.const 27764 + i32.load offset=1008 + i32.const 27764 + i32.load offset=1012 + i32.const 27764 + i32.load offset=1016 + i32.const 27764 + i32.load offset=1020 + i32.const 27764 + i32.load offset=1024 + i32.const 27764 + i32.load offset=1028 + i32.const 27764 + i32.load offset=1032 + i32.const 27764 + i32.load offset=1036 + i32.const 27764 + i32.load offset=1040 + i32.const 27764 + i32.load offset=1044 + i32.const 27764 + i32.load offset=1048 + i32.const 27764 + i32.load offset=1052 + i32.const 27764 + i32.load offset=1056 + i32.const 27764 + i32.load offset=1060 + i32.const 27764 + i32.load offset=1064 + i32.const 27764 + i32.load offset=1068 + i32.const 27764 + i32.load offset=1072 + i32.const 27764 + i32.load offset=1076 + i32.const 27764 + i32.load offset=1080 + i32.const 27764 + i32.load offset=1084 + i32.const 27764 + i32.load offset=1088 + i32.const 27764 + i32.load offset=1092 + i32.const 27764 + i32.load offset=1096 + i32.const 27764 + i32.load offset=1100 + i32.const 27764 + i32.load offset=1104 + i32.const 27764 + i32.load offset=1108 + i32.const 27764 + i32.load offset=1112 + i32.const 27764 + i32.load offset=1116 + i32.const 27764 + i32.load offset=1120 + i32.const 27764 + i32.load offset=1124 + i32.const 27764 + i32.load offset=1128 + i32.const 27764 + i32.load offset=1132 + i32.const 27764 + i32.load offset=1136 + i32.const 27764 + i32.load offset=1140 + i32.const 27764 + i32.load offset=1144 + i32.const 27764 + i32.load offset=1148 + i32.const 27764 + i32.load offset=1152 + i32.const 27764 + i32.load offset=1156 + i32.const 27764 + i32.load offset=1160 + i32.const 27764 + i32.load offset=1164 + i32.const 27764 + i32.load offset=1168 + i32.const 27764 + i32.load offset=1172 + i32.const 27764 + i32.load offset=1176 + i32.const 27764 + i32.load offset=1180 + i32.const 27764 + i32.load offset=1184 + i32.const 27764 + i32.load offset=1188 + i32.const 27764 + i32.load offset=1192 + i32.const 27764 + i32.load offset=1196 + i32.const 27764 + i32.load offset=1200 + i32.const 27764 + i32.load offset=1204 + i32.const 27764 + i32.load offset=1208 + i32.const 27764 + i32.load offset=1212 + i32.const 27764 + i32.load offset=1216 + i32.const 27764 + i32.load offset=1220 + i32.const 27764 + i32.load offset=1224 + i32.const 27764 + i32.load offset=1228 + i32.const 27764 + i32.load offset=1232 + i32.const 27764 + i32.load offset=1236 + i32.const 27764 + i32.load offset=1240 + i32.const 27764 + i32.load offset=1244 + i32.const 27764 + i32.load offset=1248 + i32.const 27764 + i32.load offset=1252 + i32.const 27764 + i32.load offset=1256 + i32.const 27764 + i32.load offset=1260 + i32.const 27764 + i32.load offset=1264 + i32.const 27764 + i32.load offset=1268 + i32.const 27764 + i32.load offset=1272 + i32.const 27764 + i32.load offset=1276 + i32.const 27764 + i32.load offset=1280 + i32.const 27764 + i32.load offset=1284 + i32.const 27764 + i32.load offset=1288 + i32.const 27764 + i32.load offset=1292 + i32.const 27764 + i32.load offset=1296 + i32.const 27764 + i32.load offset=1300 + i32.const 27764 + i32.load offset=1304 + i32.const 27764 + i32.load offset=1308 + i32.const 27764 + i32.load offset=1312 + i32.const 27764 + i32.load offset=1316 + i32.const 27764 + i32.load offset=1320 + i32.const 27764 + i32.load offset=1324 + i32.const 27764 + i32.load offset=1328 + i32.const 27764 + i32.load offset=1332 + i32.const 27764 + i32.load offset=1336 + i32.const 27764 + i32.load offset=1340 + i32.const 27764 + i32.load offset=1344 + i32.const 27764 + i32.load offset=1348 + i32.const 27764 + i32.load offset=1352 + i32.const 27764 + i32.load offset=1356 + i32.const 27764 + i32.load offset=1360 + i32.const 27764 + i32.load offset=1364 + i32.const 27764 + i32.load offset=1368 + i32.const 27764 + i32.load offset=1372 + i32.const 27764 + i32.load offset=1376 + i32.const 27764 + i32.load offset=1380 + i32.const 27764 + i32.load offset=1384 + i32.const 27764 + i32.load offset=1388 + i32.const 27764 + i32.load offset=1392 + i32.const 27764 + i32.load offset=1396 + i32.const 27764 + i32.load offset=1400 + i32.const 27764 + i32.load offset=1404 + i32.const 27764 + i32.load offset=1408 + i32.const 27764 + i32.load offset=1412 + i32.const 27764 + i32.load offset=1416 + i32.const 27764 + i32.load offset=1420 + i32.const 27764 + i32.load offset=1424 + i32.const 27764 + i32.load offset=1428 + i32.const 27764 + i32.load offset=1432 + i32.const 27764 + i32.load offset=1436 + i32.const 27764 + i32.load offset=1440 + i32.const 27764 + i32.load offset=1444 + i32.const 27764 + i32.load offset=1448 + i32.const 27764 + i32.load offset=1452 + i32.const 27764 + i32.load offset=1456 + i32.const 27764 + i32.load offset=1460 + i32.const 27764 + i32.load offset=1464 + i32.const 27764 + i32.load offset=1468 + i32.const 27764 + i32.load offset=1472 + i32.const 27764 + i32.load offset=1476 + i32.const 27764 + i32.load offset=1480 + i32.const 27764 + i32.load offset=1484 + i32.const 27764 + i32.load offset=1488 + i32.const 27764 + i32.load offset=1492 + i32.const 27764 + i32.load offset=1496 + i32.const 27764 + i32.load offset=1500 + i32.const 27764 + i32.load offset=1504 + i32.const 27764 + i32.load offset=1508 + i32.const 27764 + i32.load offset=1512 + i32.const 27764 + i32.load offset=1516 + i32.const 27764 + i32.load offset=1520 + i32.const 27764 + i32.load offset=1524 + i32.const 27764 + i32.load offset=1528 + i32.const 27764 + i32.load offset=1532 + i32.const 27764 + i32.load offset=1536 + i32.const 27764 + i32.load offset=1540 + i32.const 27764 + i32.load offset=1544 + i32.const 27764 + i32.load offset=1548 + i32.const 27764 + i32.load offset=1552 + i32.const 27764 + i32.load offset=1556 + i32.const 27764 + i32.load offset=1560 + i32.const 27764 + i32.load offset=1564 + i32.const 27764 + i32.load offset=1568 + i32.const 27764 + i32.load offset=1572 + i32.const 27764 + i32.load offset=1576 + i32.const 27764 + i32.load offset=1580 + i32.const 27764 + i32.load offset=1584 + i32.const 27764 + i32.load offset=1588 + i32.const 27764 + i32.load offset=1592 + i32.const 27764 + i32.load offset=1596 + i32.const 27764 + i32.load offset=1600 + i32.const 27764 + i32.load offset=1604 + i32.const 27764 + i32.load offset=1608 + i32.const 27764 + i32.load offset=1612 + i32.const 27764 + i32.load offset=1616 + i32.const 27764 + i32.load offset=1620 + i32.const 27764 + i32.load offset=1624 + i32.const 27764 + i32.load offset=1628 + i32.const 27764 + i32.load offset=1632 + i32.const 27764 + i32.load offset=1636 + i32.const 27764 + i32.load offset=1640 + i32.const 27764 + i32.load offset=1644 + i32.const 27764 + i32.load offset=1648 + i32.const 27764 + i32.load offset=1652 + i32.const 27764 + i32.load offset=1656 + i32.const 27764 + i32.load offset=1660 + i32.const 27764 + i32.load offset=1664 + i32.const 27764 + i32.load offset=1668 + i32.const 27764 + i32.load offset=1672 + i32.const 27764 + i32.load offset=1676 + i32.const 27764 + i32.load offset=1680 + i32.const 27764 + i32.load offset=1684 + i32.const 27764 + i32.load offset=1688 + i32.const 27764 + i32.load offset=1692 + i32.const 27764 + i32.load offset=1696 + i32.const 27764 + i32.load offset=1700 + i32.const 27764 + i32.load offset=1704 + i32.const 27764 + i32.load offset=1708 + i32.const 27764 + i32.load offset=1712 + i32.const 27764 + i32.load offset=1716 + i32.const 27764 + i32.load offset=1720 + i32.const 27764 + i32.load offset=1724 + i32.const 27764 + i32.load offset=1728 + i32.const 27764 + i32.load offset=1732 + i32.const 27764 + i32.load offset=1736 + i32.const 27764 + i32.load offset=1740 + i32.const 27764 + i32.load offset=1744 + i32.const 27764 + i32.load offset=1748 + i32.const 27764 + i32.load offset=1752 + i32.const 27764 + i32.load offset=1756 + i32.const 27764 + i32.load offset=1760 + i32.const 27764 + i32.load offset=1764 + i32.const 27764 + i32.load offset=1768 + i32.const 27764 + i32.load offset=1772 + i32.const 27764 + i32.load offset=1776 + i32.const 27764 + i32.load offset=1780 + i32.const 27764 + i32.load offset=1784 + i32.const 27764 + i32.load offset=1788 + i32.const 27764 + i32.load offset=1792 + i32.const 27764 + i32.load offset=1796 + i32.const 27764 + i32.load offset=1800 + i32.const 27764 + i32.load offset=1804 + i32.const 27764 + i32.load offset=1808 + i32.const 27764 + i32.load offset=1812 + i32.const 27764 + i32.load offset=1816 + i32.const 27764 + i32.load offset=1820 + i32.const 27764 + i32.load offset=1824 + i32.const 27764 + i32.load offset=1828 + i32.const 27764 + i32.load offset=1832 + i32.const 27764 + i32.load offset=1836 + i32.const 27764 + i32.load offset=1840 + i32.const 27764 + i32.load offset=1844 + i32.const 27764 + i32.load offset=1848 + i32.const 27764 + i32.load offset=1852 + i32.const 27764 + i32.load offset=1856 + i32.const 27764 + i32.load offset=1860 + i32.const 27764 + i32.load offset=1864 + i32.const 27764 + i32.load offset=1868 + local.set $$t18.467 + local.set $$t18.466 + local.set $$t18.465 + local.set $$t18.464 + local.set $$t18.463 + local.set $$t18.462 + local.set $$t18.461 + local.set $$t18.460 + local.set $$t18.459 + local.set $$t18.458 + local.set $$t18.457 + local.set $$t18.456 + local.set $$t18.455 + local.set $$t18.454 + local.set $$t18.453 + local.set $$t18.452 + local.set $$t18.451 + local.set $$t18.450 + local.set $$t18.449 + local.set $$t18.448 + local.set $$t18.447 + local.set $$t18.446 + local.set $$t18.445 + local.set $$t18.444 + local.set $$t18.443 + local.set $$t18.442 + local.set $$t18.441 + local.set $$t18.440 + local.set $$t18.439 + local.set $$t18.438 + local.set $$t18.437 + local.set $$t18.436 + local.set $$t18.435 + local.set $$t18.434 + local.set $$t18.433 + local.set $$t18.432 + local.set $$t18.431 + local.set $$t18.430 + local.set $$t18.429 + local.set $$t18.428 + local.set $$t18.427 + local.set $$t18.426 + local.set $$t18.425 + local.set $$t18.424 + local.set $$t18.423 + local.set $$t18.422 + local.set $$t18.421 + local.set $$t18.420 + local.set $$t18.419 + local.set $$t18.418 + local.set $$t18.417 + local.set $$t18.416 + local.set $$t18.415 + local.set $$t18.414 + local.set $$t18.413 + local.set $$t18.412 + local.set $$t18.411 + local.set $$t18.410 + local.set $$t18.409 + local.set $$t18.408 + local.set $$t18.407 + local.set $$t18.406 + local.set $$t18.405 + local.set $$t18.404 + local.set $$t18.403 + local.set $$t18.402 + local.set $$t18.401 + local.set $$t18.400 + local.set $$t18.399 + local.set $$t18.398 + local.set $$t18.397 + local.set $$t18.396 + local.set $$t18.395 + local.set $$t18.394 + local.set $$t18.393 + local.set $$t18.392 + local.set $$t18.391 + local.set $$t18.390 + local.set $$t18.389 + local.set $$t18.388 + local.set $$t18.387 + local.set $$t18.386 + local.set $$t18.385 + local.set $$t18.384 + local.set $$t18.383 + local.set $$t18.382 + local.set $$t18.381 + local.set $$t18.380 + local.set $$t18.379 + local.set $$t18.378 + local.set $$t18.377 + local.set $$t18.376 + local.set $$t18.375 + local.set $$t18.374 + local.set $$t18.373 + local.set $$t18.372 + local.set $$t18.371 + local.set $$t18.370 + local.set $$t18.369 + local.set $$t18.368 + local.set $$t18.367 + local.set $$t18.366 + local.set $$t18.365 + local.set $$t18.364 + local.set $$t18.363 + local.set $$t18.362 + local.set $$t18.361 + local.set $$t18.360 + local.set $$t18.359 + local.set $$t18.358 + local.set $$t18.357 + local.set $$t18.356 + local.set $$t18.355 + local.set $$t18.354 + local.set $$t18.353 + local.set $$t18.352 + local.set $$t18.351 + local.set $$t18.350 + local.set $$t18.349 + local.set $$t18.348 + local.set $$t18.347 + local.set $$t18.346 + local.set $$t18.345 + local.set $$t18.344 + local.set $$t18.343 + local.set $$t18.342 + local.set $$t18.341 + local.set $$t18.340 + local.set $$t18.339 + local.set $$t18.338 + local.set $$t18.337 + local.set $$t18.336 + local.set $$t18.335 + local.set $$t18.334 + local.set $$t18.333 + local.set $$t18.332 + local.set $$t18.331 + local.set $$t18.330 + local.set $$t18.329 + local.set $$t18.328 + local.set $$t18.327 + local.set $$t18.326 + local.set $$t18.325 + local.set $$t18.324 + local.set $$t18.323 + local.set $$t18.322 + local.set $$t18.321 + local.set $$t18.320 + local.set $$t18.319 + local.set $$t18.318 + local.set $$t18.317 + local.set $$t18.316 + local.set $$t18.315 + local.set $$t18.314 + local.set $$t18.313 + local.set $$t18.312 + local.set $$t18.311 + local.set $$t18.310 + local.set $$t18.309 + local.set $$t18.308 + local.set $$t18.307 + local.set $$t18.306 + local.set $$t18.305 + local.set $$t18.304 + local.set $$t18.303 + local.set $$t18.302 + local.set $$t18.301 + local.set $$t18.300 + local.set $$t18.299 + local.set $$t18.298 + local.set $$t18.297 + local.set $$t18.296 + local.set $$t18.295 + local.set $$t18.294 + local.set $$t18.293 + local.set $$t18.292 + local.set $$t18.291 + local.set $$t18.290 + local.set $$t18.289 + local.set $$t18.288 + local.set $$t18.287 + local.set $$t18.286 + local.set $$t18.285 + local.set $$t18.284 + local.set $$t18.283 + local.set $$t18.282 + local.set $$t18.281 + local.set $$t18.280 + local.set $$t18.279 + local.set $$t18.278 + local.set $$t18.277 + local.set $$t18.276 + local.set $$t18.275 + local.set $$t18.274 + local.set $$t18.273 + local.set $$t18.272 + local.set $$t18.271 + local.set $$t18.270 + local.set $$t18.269 + local.set $$t18.268 + local.set $$t18.267 + local.set $$t18.266 + local.set $$t18.265 + local.set $$t18.264 + local.set $$t18.263 + local.set $$t18.262 + local.set $$t18.261 + local.set $$t18.260 + local.set $$t18.259 + local.set $$t18.258 + local.set $$t18.257 + local.set $$t18.256 + local.set $$t18.255 + local.set $$t18.254 + local.set $$t18.253 + local.set $$t18.252 + local.set $$t18.251 + local.set $$t18.250 + local.set $$t18.249 + local.set $$t18.248 + local.set $$t18.247 + local.set $$t18.246 + local.set $$t18.245 + local.set $$t18.244 + local.set $$t18.243 + local.set $$t18.242 + local.set $$t18.241 + local.set $$t18.240 + local.set $$t18.239 + local.set $$t18.238 + local.set $$t18.237 + local.set $$t18.236 + local.set $$t18.235 + local.set $$t18.234 + local.set $$t18.233 + local.set $$t18.232 + local.set $$t18.231 + local.set $$t18.230 + local.set $$t18.229 + local.set $$t18.228 + local.set $$t18.227 + local.set $$t18.226 + local.set $$t18.225 + local.set $$t18.224 + local.set $$t18.223 + local.set $$t18.222 + local.set $$t18.221 + local.set $$t18.220 + local.set $$t18.219 + local.set $$t18.218 + local.set $$t18.217 + local.set $$t18.216 + local.set $$t18.215 + local.set $$t18.214 + local.set $$t18.213 + local.set $$t18.212 + local.set $$t18.211 + local.set $$t18.210 + local.set $$t18.209 + local.set $$t18.208 + local.set $$t18.207 + local.set $$t18.206 + local.set $$t18.205 + local.set $$t18.204 + local.set $$t18.203 + local.set $$t18.202 + local.set $$t18.201 + local.set $$t18.200 + local.set $$t18.199 + local.set $$t18.198 + local.set $$t18.197 + local.set $$t18.196 + local.set $$t18.195 + local.set $$t18.194 + local.set $$t18.193 + local.set $$t18.192 + local.set $$t18.191 + local.set $$t18.190 + local.set $$t18.189 + local.set $$t18.188 + local.set $$t18.187 + local.set $$t18.186 + local.set $$t18.185 + local.set $$t18.184 + local.set $$t18.183 + local.set $$t18.182 + local.set $$t18.181 + local.set $$t18.180 + local.set $$t18.179 + local.set $$t18.178 + local.set $$t18.177 + local.set $$t18.176 + local.set $$t18.175 + local.set $$t18.174 + local.set $$t18.173 + local.set $$t18.172 + local.set $$t18.171 + local.set $$t18.170 + local.set $$t18.169 + local.set $$t18.168 + local.set $$t18.167 + local.set $$t18.166 + local.set $$t18.165 + local.set $$t18.164 + local.set $$t18.163 + local.set $$t18.162 + local.set $$t18.161 + local.set $$t18.160 + local.set $$t18.159 + local.set $$t18.158 + local.set $$t18.157 + local.set $$t18.156 + local.set $$t18.155 + local.set $$t18.154 + local.set $$t18.153 + local.set $$t18.152 + local.set $$t18.151 + local.set $$t18.150 + local.set $$t18.149 + local.set $$t18.148 + local.set $$t18.147 + local.set $$t18.146 + local.set $$t18.145 + local.set $$t18.144 + local.set $$t18.143 + local.set $$t18.142 + local.set $$t18.141 + local.set $$t18.140 + local.set $$t18.139 + local.set $$t18.138 + local.set $$t18.137 + local.set $$t18.136 + local.set $$t18.135 + local.set $$t18.134 + local.set $$t18.133 + local.set $$t18.132 + local.set $$t18.131 + local.set $$t18.130 + local.set $$t18.129 + local.set $$t18.128 + local.set $$t18.127 + local.set $$t18.126 + local.set $$t18.125 + local.set $$t18.124 + local.set $$t18.123 + local.set $$t18.122 + local.set $$t18.121 + local.set $$t18.120 + local.set $$t18.119 + local.set $$t18.118 + local.set $$t18.117 + local.set $$t18.116 + local.set $$t18.115 + local.set $$t18.114 + local.set $$t18.113 + local.set $$t18.112 + local.set $$t18.111 + local.set $$t18.110 + local.set $$t18.109 + local.set $$t18.108 + local.set $$t18.107 + local.set $$t18.106 + local.set $$t18.105 + local.set $$t18.104 + local.set $$t18.103 + local.set $$t18.102 + local.set $$t18.101 + local.set $$t18.100 + local.set $$t18.99 + local.set $$t18.98 + local.set $$t18.97 + local.set $$t18.96 + local.set $$t18.95 + local.set $$t18.94 + local.set $$t18.93 + local.set $$t18.92 + local.set $$t18.91 + local.set $$t18.90 + local.set $$t18.89 + local.set $$t18.88 + local.set $$t18.87 + local.set $$t18.86 + local.set $$t18.85 + local.set $$t18.84 + local.set $$t18.83 + local.set $$t18.82 + local.set $$t18.81 + local.set $$t18.80 + local.set $$t18.79 + local.set $$t18.78 + local.set $$t18.77 + local.set $$t18.76 + local.set $$t18.75 + local.set $$t18.74 + local.set $$t18.73 + local.set $$t18.72 + local.set $$t18.71 + local.set $$t18.70 + local.set $$t18.69 + local.set $$t18.68 + local.set $$t18.67 + local.set $$t18.66 + local.set $$t18.65 + local.set $$t18.64 + local.set $$t18.63 + local.set $$t18.62 + local.set $$t18.61 + local.set $$t18.60 + local.set $$t18.59 + local.set $$t18.58 + local.set $$t18.57 + local.set $$t18.56 + local.set $$t18.55 + local.set $$t18.54 + local.set $$t18.53 + local.set $$t18.52 + local.set $$t18.51 + local.set $$t18.50 + local.set $$t18.49 + local.set $$t18.48 + local.set $$t18.47 + local.set $$t18.46 + local.set $$t18.45 + local.set $$t18.44 + local.set $$t18.43 + local.set $$t18.42 + local.set $$t18.41 + local.set $$t18.40 + local.set $$t18.39 + local.set $$t18.38 + local.set $$t18.37 + local.set $$t18.36 + local.set $$t18.35 + local.set $$t18.34 + local.set $$t18.33 + local.set $$t18.32 + local.set $$t18.31 + local.set $$t18.30 + local.set $$t18.29 + local.set $$t18.28 + local.set $$t18.27 + local.set $$t18.26 + local.set $$t18.25 + local.set $$t18.24 + local.set $$t18.23 + local.set $$t18.22 + local.set $$t18.21 + local.set $$t18.20 + local.set $$t18.19 + local.set $$t18.18 + local.set $$t18.17 + local.set $$t18.16 + local.set $$t18.15 + local.set $$t18.14 + local.set $$t18.13 + local.set $$t18.12 + local.set $$t18.11 + local.set $$t18.10 + local.set $$t18.9 + local.set $$t18.8 + local.set $$t18.7 + local.set $$t18.6 + local.set $$t18.5 + local.set $$t18.4 + local.set $$t18.3 + local.set $$t18.2 + local.set $$t18.1 + local.set $$t18.0 + i32.const 26704 + i32.load16_u + i32.const 26704 + i32.load16_u offset=2 + i32.const 26704 + i32.load16_u offset=4 + i32.const 26704 + i32.load16_u offset=6 + i32.const 26704 + i32.load16_u offset=8 + i32.const 26704 + i32.load16_u offset=10 + i32.const 26704 + i32.load16_u offset=12 + i32.const 26704 + i32.load16_u offset=14 + i32.const 26704 + i32.load16_u offset=16 + i32.const 26704 + i32.load16_u offset=18 + i32.const 26704 + i32.load16_u offset=20 + i32.const 26704 + i32.load16_u offset=22 + i32.const 26704 + i32.load16_u offset=24 + i32.const 26704 + i32.load16_u offset=26 + i32.const 26704 + i32.load16_u offset=28 + i32.const 26704 + i32.load16_u offset=30 + i32.const 26704 + i32.load16_u offset=32 + i32.const 26704 + i32.load16_u offset=34 + i32.const 26704 + i32.load16_u offset=36 + i32.const 26704 + i32.load16_u offset=38 + i32.const 26704 + i32.load16_u offset=40 + i32.const 26704 + i32.load16_u offset=42 + i32.const 26704 + i32.load16_u offset=44 + i32.const 26704 + i32.load16_u offset=46 + i32.const 26704 + i32.load16_u offset=48 + i32.const 26704 + i32.load16_u offset=50 + i32.const 26704 + i32.load16_u offset=52 + i32.const 26704 + i32.load16_u offset=54 + i32.const 26704 + i32.load16_u offset=56 + i32.const 26704 + i32.load16_u offset=58 + i32.const 26704 + i32.load16_u offset=60 + i32.const 26704 + i32.load16_u offset=62 + i32.const 26704 + i32.load16_u offset=64 + i32.const 26704 + i32.load16_u offset=66 + i32.const 26704 + i32.load16_u offset=68 + i32.const 26704 + i32.load16_u offset=70 + i32.const 26704 + i32.load16_u offset=72 + i32.const 26704 + i32.load16_u offset=74 + i32.const 26704 + i32.load16_u offset=76 + i32.const 26704 + i32.load16_u offset=78 + i32.const 26704 + i32.load16_u offset=80 + i32.const 26704 + i32.load16_u offset=82 + i32.const 26704 + i32.load16_u offset=84 + i32.const 26704 + i32.load16_u offset=86 + i32.const 26704 + i32.load16_u offset=88 + i32.const 26704 + i32.load16_u offset=90 + i32.const 26704 + i32.load16_u offset=92 + i32.const 26704 + i32.load16_u offset=94 + i32.const 26704 + i32.load16_u offset=96 + i32.const 26704 + i32.load16_u offset=98 + i32.const 26704 + i32.load16_u offset=100 + i32.const 26704 + i32.load16_u offset=102 + i32.const 26704 + i32.load16_u offset=104 + i32.const 26704 + i32.load16_u offset=106 + i32.const 26704 + i32.load16_u offset=108 + i32.const 26704 + i32.load16_u offset=110 + i32.const 26704 + i32.load16_u offset=112 + i32.const 26704 + i32.load16_u offset=114 + i32.const 26704 + i32.load16_u offset=116 + i32.const 26704 + i32.load16_u offset=118 + i32.const 26704 + i32.load16_u offset=120 + i32.const 26704 + i32.load16_u offset=122 + i32.const 26704 + i32.load16_u offset=124 + i32.const 26704 + i32.load16_u offset=126 + i32.const 26704 + i32.load16_u offset=128 + i32.const 26704 + i32.load16_u offset=130 + i32.const 26704 + i32.load16_u offset=132 + i32.const 26704 + i32.load16_u offset=134 + i32.const 26704 + i32.load16_u offset=136 + i32.const 26704 + i32.load16_u offset=138 + i32.const 26704 + i32.load16_u offset=140 + i32.const 26704 + i32.load16_u offset=142 + i32.const 26704 + i32.load16_u offset=144 + i32.const 26704 + i32.load16_u offset=146 + i32.const 26704 + i32.load16_u offset=148 + i32.const 26704 + i32.load16_u offset=150 + i32.const 26704 + i32.load16_u offset=152 + i32.const 26704 + i32.load16_u offset=154 + i32.const 26704 + i32.load16_u offset=156 + i32.const 26704 + i32.load16_u offset=158 + i32.const 26704 + i32.load16_u offset=160 + i32.const 26704 + i32.load16_u offset=162 + i32.const 26704 + i32.load16_u offset=164 + i32.const 26704 + i32.load16_u offset=166 + i32.const 26704 + i32.load16_u offset=168 + i32.const 26704 + i32.load16_u offset=170 + i32.const 26704 + i32.load16_u offset=172 + i32.const 26704 + i32.load16_u offset=174 + i32.const 26704 + i32.load16_u offset=176 + i32.const 26704 + i32.load16_u offset=178 + i32.const 26704 + i32.load16_u offset=180 + i32.const 26704 + i32.load16_u offset=182 + i32.const 26704 + i32.load16_u offset=184 + i32.const 26704 + i32.load16_u offset=186 + i32.const 26704 + i32.load16_u offset=188 + local.set $$t19.94 + local.set $$t19.93 + local.set $$t19.92 + local.set $$t19.91 + local.set $$t19.90 + local.set $$t19.89 + local.set $$t19.88 + local.set $$t19.87 + local.set $$t19.86 + local.set $$t19.85 + local.set $$t19.84 + local.set $$t19.83 + local.set $$t19.82 + local.set $$t19.81 + local.set $$t19.80 + local.set $$t19.79 + local.set $$t19.78 + local.set $$t19.77 + local.set $$t19.76 + local.set $$t19.75 + local.set $$t19.74 + local.set $$t19.73 + local.set $$t19.72 + local.set $$t19.71 + local.set $$t19.70 + local.set $$t19.69 + local.set $$t19.68 + local.set $$t19.67 + local.set $$t19.66 + local.set $$t19.65 + local.set $$t19.64 + local.set $$t19.63 + local.set $$t19.62 + local.set $$t19.61 + local.set $$t19.60 + local.set $$t19.59 + local.set $$t19.58 + local.set $$t19.57 + local.set $$t19.56 + local.set $$t19.55 + local.set $$t19.54 + local.set $$t19.53 + local.set $$t19.52 + local.set $$t19.51 + local.set $$t19.50 + local.set $$t19.49 + local.set $$t19.48 + local.set $$t19.47 + local.set $$t19.46 + local.set $$t19.45 + local.set $$t19.44 + local.set $$t19.43 + local.set $$t19.42 + local.set $$t19.41 + local.set $$t19.40 + local.set $$t19.39 + local.set $$t19.38 + local.set $$t19.37 + local.set $$t19.36 + local.set $$t19.35 + local.set $$t19.34 + local.set $$t19.33 + local.set $$t19.32 + local.set $$t19.31 + local.set $$t19.30 + local.set $$t19.29 + local.set $$t19.28 + local.set $$t19.27 + local.set $$t19.26 + local.set $$t19.25 + local.set $$t19.24 + local.set $$t19.23 + local.set $$t19.22 + local.set $$t19.21 + local.set $$t19.20 + local.set $$t19.19 + local.set $$t19.18 + local.set $$t19.17 + local.set $$t19.16 + local.set $$t19.15 + local.set $$t19.14 + local.set $$t19.13 + local.set $$t19.12 + local.set $$t19.11 + local.set $$t19.10 + local.set $$t19.9 + local.set $$t19.8 + local.set $$t19.7 + local.set $$t19.6 + local.set $$t19.5 + local.set $$t19.4 + local.set $$t19.3 + local.set $$t19.2 + local.set $$t19.1 + local.set $$t19.0 + local.get $$t15.1 + local.get $$t18.0 + i32.store + local.get $$t15.1 + local.get $$t18.1 + i32.store offset=4 + local.get $$t15.1 + local.get $$t18.2 + i32.store offset=8 + local.get $$t15.1 + local.get $$t18.3 + i32.store offset=12 + local.get $$t15.1 + local.get $$t18.4 + i32.store offset=16 + local.get $$t15.1 + local.get $$t18.5 + i32.store offset=20 + local.get $$t15.1 + local.get $$t18.6 + i32.store offset=24 + local.get $$t15.1 + local.get $$t18.7 + i32.store offset=28 + local.get $$t15.1 + local.get $$t18.8 + i32.store offset=32 + local.get $$t15.1 + local.get $$t18.9 + i32.store offset=36 + local.get $$t15.1 + local.get $$t18.10 + i32.store offset=40 + local.get $$t15.1 + local.get $$t18.11 + i32.store offset=44 + local.get $$t15.1 + local.get $$t18.12 + i32.store offset=48 + local.get $$t15.1 + local.get $$t18.13 + i32.store offset=52 + local.get $$t15.1 + local.get $$t18.14 + i32.store offset=56 + local.get $$t15.1 + local.get $$t18.15 + i32.store offset=60 + local.get $$t15.1 + local.get $$t18.16 + i32.store offset=64 + local.get $$t15.1 + local.get $$t18.17 + i32.store offset=68 + local.get $$t15.1 + local.get $$t18.18 + i32.store offset=72 + local.get $$t15.1 + local.get $$t18.19 + i32.store offset=76 + local.get $$t15.1 + local.get $$t18.20 + i32.store offset=80 + local.get $$t15.1 + local.get $$t18.21 + i32.store offset=84 + local.get $$t15.1 + local.get $$t18.22 + i32.store offset=88 + local.get $$t15.1 + local.get $$t18.23 + i32.store offset=92 + local.get $$t15.1 + local.get $$t18.24 + i32.store offset=96 + local.get $$t15.1 + local.get $$t18.25 + i32.store offset=100 + local.get $$t15.1 + local.get $$t18.26 + i32.store offset=104 + local.get $$t15.1 + local.get $$t18.27 + i32.store offset=108 + local.get $$t15.1 + local.get $$t18.28 + i32.store offset=112 + local.get $$t15.1 + local.get $$t18.29 + i32.store offset=116 + local.get $$t15.1 + local.get $$t18.30 + i32.store offset=120 + local.get $$t15.1 + local.get $$t18.31 + i32.store offset=124 + local.get $$t15.1 + local.get $$t18.32 + i32.store offset=128 + local.get $$t15.1 + local.get $$t18.33 + i32.store offset=132 + local.get $$t15.1 + local.get $$t18.34 + i32.store offset=136 + local.get $$t15.1 + local.get $$t18.35 + i32.store offset=140 + local.get $$t15.1 + local.get $$t18.36 + i32.store offset=144 + local.get $$t15.1 + local.get $$t18.37 + i32.store offset=148 + local.get $$t15.1 + local.get $$t18.38 + i32.store offset=152 + local.get $$t15.1 + local.get $$t18.39 + i32.store offset=156 + local.get $$t15.1 + local.get $$t18.40 + i32.store offset=160 + local.get $$t15.1 + local.get $$t18.41 + i32.store offset=164 + local.get $$t15.1 + local.get $$t18.42 + i32.store offset=168 + local.get $$t15.1 + local.get $$t18.43 + i32.store offset=172 + local.get $$t15.1 + local.get $$t18.44 + i32.store offset=176 + local.get $$t15.1 + local.get $$t18.45 + i32.store offset=180 + local.get $$t15.1 + local.get $$t18.46 + i32.store offset=184 + local.get $$t15.1 + local.get $$t18.47 + i32.store offset=188 + local.get $$t15.1 + local.get $$t18.48 + i32.store offset=192 + local.get $$t15.1 + local.get $$t18.49 + i32.store offset=196 + local.get $$t15.1 + local.get $$t18.50 + i32.store offset=200 + local.get $$t15.1 + local.get $$t18.51 + i32.store offset=204 + local.get $$t15.1 + local.get $$t18.52 + i32.store offset=208 + local.get $$t15.1 + local.get $$t18.53 + i32.store offset=212 + local.get $$t15.1 + local.get $$t18.54 + i32.store offset=216 + local.get $$t15.1 + local.get $$t18.55 + i32.store offset=220 + local.get $$t15.1 + local.get $$t18.56 + i32.store offset=224 + local.get $$t15.1 + local.get $$t18.57 + i32.store offset=228 + local.get $$t15.1 + local.get $$t18.58 + i32.store offset=232 + local.get $$t15.1 + local.get $$t18.59 + i32.store offset=236 + local.get $$t15.1 + local.get $$t18.60 + i32.store offset=240 + local.get $$t15.1 + local.get $$t18.61 + i32.store offset=244 + local.get $$t15.1 + local.get $$t18.62 + i32.store offset=248 + local.get $$t15.1 + local.get $$t18.63 + i32.store offset=252 + local.get $$t15.1 + local.get $$t18.64 + i32.store offset=256 + local.get $$t15.1 + local.get $$t18.65 + i32.store offset=260 + local.get $$t15.1 + local.get $$t18.66 + i32.store offset=264 + local.get $$t15.1 + local.get $$t18.67 + i32.store offset=268 + local.get $$t15.1 + local.get $$t18.68 + i32.store offset=272 + local.get $$t15.1 + local.get $$t18.69 + i32.store offset=276 + local.get $$t15.1 + local.get $$t18.70 + i32.store offset=280 + local.get $$t15.1 + local.get $$t18.71 + i32.store offset=284 + local.get $$t15.1 + local.get $$t18.72 + i32.store offset=288 + local.get $$t15.1 + local.get $$t18.73 + i32.store offset=292 + local.get $$t15.1 + local.get $$t18.74 + i32.store offset=296 + local.get $$t15.1 + local.get $$t18.75 + i32.store offset=300 + local.get $$t15.1 + local.get $$t18.76 + i32.store offset=304 + local.get $$t15.1 + local.get $$t18.77 + i32.store offset=308 + local.get $$t15.1 + local.get $$t18.78 + i32.store offset=312 + local.get $$t15.1 + local.get $$t18.79 + i32.store offset=316 + local.get $$t15.1 + local.get $$t18.80 + i32.store offset=320 + local.get $$t15.1 + local.get $$t18.81 + i32.store offset=324 + local.get $$t15.1 + local.get $$t18.82 + i32.store offset=328 + local.get $$t15.1 + local.get $$t18.83 + i32.store offset=332 + local.get $$t15.1 + local.get $$t18.84 + i32.store offset=336 + local.get $$t15.1 + local.get $$t18.85 + i32.store offset=340 + local.get $$t15.1 + local.get $$t18.86 + i32.store offset=344 + local.get $$t15.1 + local.get $$t18.87 + i32.store offset=348 + local.get $$t15.1 + local.get $$t18.88 + i32.store offset=352 + local.get $$t15.1 + local.get $$t18.89 + i32.store offset=356 + local.get $$t15.1 + local.get $$t18.90 + i32.store offset=360 + local.get $$t15.1 + local.get $$t18.91 + i32.store offset=364 + local.get $$t15.1 + local.get $$t18.92 + i32.store offset=368 + local.get $$t15.1 + local.get $$t18.93 + i32.store offset=372 + local.get $$t15.1 + local.get $$t18.94 + i32.store offset=376 + local.get $$t15.1 + local.get $$t18.95 + i32.store offset=380 + local.get $$t15.1 + local.get $$t18.96 + i32.store offset=384 + local.get $$t15.1 + local.get $$t18.97 + i32.store offset=388 + local.get $$t15.1 + local.get $$t18.98 + i32.store offset=392 + local.get $$t15.1 + local.get $$t18.99 + i32.store offset=396 + local.get $$t15.1 + local.get $$t18.100 + i32.store offset=400 + local.get $$t15.1 + local.get $$t18.101 + i32.store offset=404 + local.get $$t15.1 + local.get $$t18.102 + i32.store offset=408 + local.get $$t15.1 + local.get $$t18.103 + i32.store offset=412 + local.get $$t15.1 + local.get $$t18.104 + i32.store offset=416 + local.get $$t15.1 + local.get $$t18.105 + i32.store offset=420 + local.get $$t15.1 + local.get $$t18.106 + i32.store offset=424 + local.get $$t15.1 + local.get $$t18.107 + i32.store offset=428 + local.get $$t15.1 + local.get $$t18.108 + i32.store offset=432 + local.get $$t15.1 + local.get $$t18.109 + i32.store offset=436 + local.get $$t15.1 + local.get $$t18.110 + i32.store offset=440 + local.get $$t15.1 + local.get $$t18.111 + i32.store offset=444 + local.get $$t15.1 + local.get $$t18.112 + i32.store offset=448 + local.get $$t15.1 + local.get $$t18.113 + i32.store offset=452 + local.get $$t15.1 + local.get $$t18.114 + i32.store offset=456 + local.get $$t15.1 + local.get $$t18.115 + i32.store offset=460 + local.get $$t15.1 + local.get $$t18.116 + i32.store offset=464 + local.get $$t15.1 + local.get $$t18.117 + i32.store offset=468 + local.get $$t15.1 + local.get $$t18.118 + i32.store offset=472 + local.get $$t15.1 + local.get $$t18.119 + i32.store offset=476 + local.get $$t15.1 + local.get $$t18.120 + i32.store offset=480 + local.get $$t15.1 + local.get $$t18.121 + i32.store offset=484 + local.get $$t15.1 + local.get $$t18.122 + i32.store offset=488 + local.get $$t15.1 + local.get $$t18.123 + i32.store offset=492 + local.get $$t15.1 + local.get $$t18.124 + i32.store offset=496 + local.get $$t15.1 + local.get $$t18.125 + i32.store offset=500 + local.get $$t15.1 + local.get $$t18.126 + i32.store offset=504 + local.get $$t15.1 + local.get $$t18.127 + i32.store offset=508 + local.get $$t15.1 + local.get $$t18.128 + i32.store offset=512 + local.get $$t15.1 + local.get $$t18.129 + i32.store offset=516 + local.get $$t15.1 + local.get $$t18.130 + i32.store offset=520 + local.get $$t15.1 + local.get $$t18.131 + i32.store offset=524 + local.get $$t15.1 + local.get $$t18.132 + i32.store offset=528 + local.get $$t15.1 + local.get $$t18.133 + i32.store offset=532 + local.get $$t15.1 + local.get $$t18.134 + i32.store offset=536 + local.get $$t15.1 + local.get $$t18.135 + i32.store offset=540 + local.get $$t15.1 + local.get $$t18.136 + i32.store offset=544 + local.get $$t15.1 + local.get $$t18.137 + i32.store offset=548 + local.get $$t15.1 + local.get $$t18.138 + i32.store offset=552 + local.get $$t15.1 + local.get $$t18.139 + i32.store offset=556 + local.get $$t15.1 + local.get $$t18.140 + i32.store offset=560 + local.get $$t15.1 + local.get $$t18.141 + i32.store offset=564 + local.get $$t15.1 + local.get $$t18.142 + i32.store offset=568 + local.get $$t15.1 + local.get $$t18.143 + i32.store offset=572 + local.get $$t15.1 + local.get $$t18.144 + i32.store offset=576 + local.get $$t15.1 + local.get $$t18.145 + i32.store offset=580 + local.get $$t15.1 + local.get $$t18.146 + i32.store offset=584 + local.get $$t15.1 + local.get $$t18.147 + i32.store offset=588 + local.get $$t15.1 + local.get $$t18.148 + i32.store offset=592 + local.get $$t15.1 + local.get $$t18.149 + i32.store offset=596 + local.get $$t15.1 + local.get $$t18.150 + i32.store offset=600 + local.get $$t15.1 + local.get $$t18.151 + i32.store offset=604 + local.get $$t15.1 + local.get $$t18.152 + i32.store offset=608 + local.get $$t15.1 + local.get $$t18.153 + i32.store offset=612 + local.get $$t15.1 + local.get $$t18.154 + i32.store offset=616 + local.get $$t15.1 + local.get $$t18.155 + i32.store offset=620 + local.get $$t15.1 + local.get $$t18.156 + i32.store offset=624 + local.get $$t15.1 + local.get $$t18.157 + i32.store offset=628 + local.get $$t15.1 + local.get $$t18.158 + i32.store offset=632 + local.get $$t15.1 + local.get $$t18.159 + i32.store offset=636 + local.get $$t15.1 + local.get $$t18.160 + i32.store offset=640 + local.get $$t15.1 + local.get $$t18.161 + i32.store offset=644 + local.get $$t15.1 + local.get $$t18.162 + i32.store offset=648 + local.get $$t15.1 + local.get $$t18.163 + i32.store offset=652 + local.get $$t15.1 + local.get $$t18.164 + i32.store offset=656 + local.get $$t15.1 + local.get $$t18.165 + i32.store offset=660 + local.get $$t15.1 + local.get $$t18.166 + i32.store offset=664 + local.get $$t15.1 + local.get $$t18.167 + i32.store offset=668 + local.get $$t15.1 + local.get $$t18.168 + i32.store offset=672 + local.get $$t15.1 + local.get $$t18.169 + i32.store offset=676 + local.get $$t15.1 + local.get $$t18.170 + i32.store offset=680 + local.get $$t15.1 + local.get $$t18.171 + i32.store offset=684 + local.get $$t15.1 + local.get $$t18.172 + i32.store offset=688 + local.get $$t15.1 + local.get $$t18.173 + i32.store offset=692 + local.get $$t15.1 + local.get $$t18.174 + i32.store offset=696 + local.get $$t15.1 + local.get $$t18.175 + i32.store offset=700 + local.get $$t15.1 + local.get $$t18.176 + i32.store offset=704 + local.get $$t15.1 + local.get $$t18.177 + i32.store offset=708 + local.get $$t15.1 + local.get $$t18.178 + i32.store offset=712 + local.get $$t15.1 + local.get $$t18.179 + i32.store offset=716 + local.get $$t15.1 + local.get $$t18.180 + i32.store offset=720 + local.get $$t15.1 + local.get $$t18.181 + i32.store offset=724 + local.get $$t15.1 + local.get $$t18.182 + i32.store offset=728 + local.get $$t15.1 + local.get $$t18.183 + i32.store offset=732 + local.get $$t15.1 + local.get $$t18.184 + i32.store offset=736 + local.get $$t15.1 + local.get $$t18.185 + i32.store offset=740 + local.get $$t15.1 + local.get $$t18.186 + i32.store offset=744 + local.get $$t15.1 + local.get $$t18.187 + i32.store offset=748 + local.get $$t15.1 + local.get $$t18.188 + i32.store offset=752 + local.get $$t15.1 + local.get $$t18.189 + i32.store offset=756 + local.get $$t15.1 + local.get $$t18.190 + i32.store offset=760 + local.get $$t15.1 + local.get $$t18.191 + i32.store offset=764 + local.get $$t15.1 + local.get $$t18.192 + i32.store offset=768 + local.get $$t15.1 + local.get $$t18.193 + i32.store offset=772 + local.get $$t15.1 + local.get $$t18.194 + i32.store offset=776 + local.get $$t15.1 + local.get $$t18.195 + i32.store offset=780 + local.get $$t15.1 + local.get $$t18.196 + i32.store offset=784 + local.get $$t15.1 + local.get $$t18.197 + i32.store offset=788 + local.get $$t15.1 + local.get $$t18.198 + i32.store offset=792 + local.get $$t15.1 + local.get $$t18.199 + i32.store offset=796 + local.get $$t15.1 + local.get $$t18.200 + i32.store offset=800 + local.get $$t15.1 + local.get $$t18.201 + i32.store offset=804 + local.get $$t15.1 + local.get $$t18.202 + i32.store offset=808 + local.get $$t15.1 + local.get $$t18.203 + i32.store offset=812 + local.get $$t15.1 + local.get $$t18.204 + i32.store offset=816 + local.get $$t15.1 + local.get $$t18.205 + i32.store offset=820 + local.get $$t15.1 + local.get $$t18.206 + i32.store offset=824 + local.get $$t15.1 + local.get $$t18.207 + i32.store offset=828 + local.get $$t15.1 + local.get $$t18.208 + i32.store offset=832 + local.get $$t15.1 + local.get $$t18.209 + i32.store offset=836 + local.get $$t15.1 + local.get $$t18.210 + i32.store offset=840 + local.get $$t15.1 + local.get $$t18.211 + i32.store offset=844 + local.get $$t15.1 + local.get $$t18.212 + i32.store offset=848 + local.get $$t15.1 + local.get $$t18.213 + i32.store offset=852 + local.get $$t15.1 + local.get $$t18.214 + i32.store offset=856 + local.get $$t15.1 + local.get $$t18.215 + i32.store offset=860 + local.get $$t15.1 + local.get $$t18.216 + i32.store offset=864 + local.get $$t15.1 + local.get $$t18.217 + i32.store offset=868 + local.get $$t15.1 + local.get $$t18.218 + i32.store offset=872 + local.get $$t15.1 + local.get $$t18.219 + i32.store offset=876 + local.get $$t15.1 + local.get $$t18.220 + i32.store offset=880 + local.get $$t15.1 + local.get $$t18.221 + i32.store offset=884 + local.get $$t15.1 + local.get $$t18.222 + i32.store offset=888 + local.get $$t15.1 + local.get $$t18.223 + i32.store offset=892 + local.get $$t15.1 + local.get $$t18.224 + i32.store offset=896 + local.get $$t15.1 + local.get $$t18.225 + i32.store offset=900 + local.get $$t15.1 + local.get $$t18.226 + i32.store offset=904 + local.get $$t15.1 + local.get $$t18.227 + i32.store offset=908 + local.get $$t15.1 + local.get $$t18.228 + i32.store offset=912 + local.get $$t15.1 + local.get $$t18.229 + i32.store offset=916 + local.get $$t15.1 + local.get $$t18.230 + i32.store offset=920 + local.get $$t15.1 + local.get $$t18.231 + i32.store offset=924 + local.get $$t15.1 + local.get $$t18.232 + i32.store offset=928 + local.get $$t15.1 + local.get $$t18.233 + i32.store offset=932 + local.get $$t15.1 + local.get $$t18.234 + i32.store offset=936 + local.get $$t15.1 + local.get $$t18.235 + i32.store offset=940 + local.get $$t15.1 + local.get $$t18.236 + i32.store offset=944 + local.get $$t15.1 + local.get $$t18.237 + i32.store offset=948 + local.get $$t15.1 + local.get $$t18.238 + i32.store offset=952 + local.get $$t15.1 + local.get $$t18.239 + i32.store offset=956 + local.get $$t15.1 + local.get $$t18.240 + i32.store offset=960 + local.get $$t15.1 + local.get $$t18.241 + i32.store offset=964 + local.get $$t15.1 + local.get $$t18.242 + i32.store offset=968 + local.get $$t15.1 + local.get $$t18.243 + i32.store offset=972 + local.get $$t15.1 + local.get $$t18.244 + i32.store offset=976 + local.get $$t15.1 + local.get $$t18.245 + i32.store offset=980 + local.get $$t15.1 + local.get $$t18.246 + i32.store offset=984 + local.get $$t15.1 + local.get $$t18.247 + i32.store offset=988 + local.get $$t15.1 + local.get $$t18.248 + i32.store offset=992 + local.get $$t15.1 + local.get $$t18.249 + i32.store offset=996 + local.get $$t15.1 + local.get $$t18.250 + i32.store offset=1000 + local.get $$t15.1 + local.get $$t18.251 + i32.store offset=1004 + local.get $$t15.1 + local.get $$t18.252 + i32.store offset=1008 + local.get $$t15.1 + local.get $$t18.253 + i32.store offset=1012 + local.get $$t15.1 + local.get $$t18.254 + i32.store offset=1016 + local.get $$t15.1 + local.get $$t18.255 + i32.store offset=1020 + local.get $$t15.1 + local.get $$t18.256 + i32.store offset=1024 + local.get $$t15.1 + local.get $$t18.257 + i32.store offset=1028 + local.get $$t15.1 + local.get $$t18.258 + i32.store offset=1032 + local.get $$t15.1 + local.get $$t18.259 + i32.store offset=1036 + local.get $$t15.1 + local.get $$t18.260 + i32.store offset=1040 + local.get $$t15.1 + local.get $$t18.261 + i32.store offset=1044 + local.get $$t15.1 + local.get $$t18.262 + i32.store offset=1048 + local.get $$t15.1 + local.get $$t18.263 + i32.store offset=1052 + local.get $$t15.1 + local.get $$t18.264 + i32.store offset=1056 + local.get $$t15.1 + local.get $$t18.265 + i32.store offset=1060 + local.get $$t15.1 + local.get $$t18.266 + i32.store offset=1064 + local.get $$t15.1 + local.get $$t18.267 + i32.store offset=1068 + local.get $$t15.1 + local.get $$t18.268 + i32.store offset=1072 + local.get $$t15.1 + local.get $$t18.269 + i32.store offset=1076 + local.get $$t15.1 + local.get $$t18.270 + i32.store offset=1080 + local.get $$t15.1 + local.get $$t18.271 + i32.store offset=1084 + local.get $$t15.1 + local.get $$t18.272 + i32.store offset=1088 + local.get $$t15.1 + local.get $$t18.273 + i32.store offset=1092 + local.get $$t15.1 + local.get $$t18.274 + i32.store offset=1096 + local.get $$t15.1 + local.get $$t18.275 + i32.store offset=1100 + local.get $$t15.1 + local.get $$t18.276 + i32.store offset=1104 + local.get $$t15.1 + local.get $$t18.277 + i32.store offset=1108 + local.get $$t15.1 + local.get $$t18.278 + i32.store offset=1112 + local.get $$t15.1 + local.get $$t18.279 + i32.store offset=1116 + local.get $$t15.1 + local.get $$t18.280 + i32.store offset=1120 + local.get $$t15.1 + local.get $$t18.281 + i32.store offset=1124 + local.get $$t15.1 + local.get $$t18.282 + i32.store offset=1128 + local.get $$t15.1 + local.get $$t18.283 + i32.store offset=1132 + local.get $$t15.1 + local.get $$t18.284 + i32.store offset=1136 + local.get $$t15.1 + local.get $$t18.285 + i32.store offset=1140 + local.get $$t15.1 + local.get $$t18.286 + i32.store offset=1144 + local.get $$t15.1 + local.get $$t18.287 + i32.store offset=1148 + local.get $$t15.1 + local.get $$t18.288 + i32.store offset=1152 + local.get $$t15.1 + local.get $$t18.289 + i32.store offset=1156 + local.get $$t15.1 + local.get $$t18.290 + i32.store offset=1160 + local.get $$t15.1 + local.get $$t18.291 + i32.store offset=1164 + local.get $$t15.1 + local.get $$t18.292 + i32.store offset=1168 + local.get $$t15.1 + local.get $$t18.293 + i32.store offset=1172 + local.get $$t15.1 + local.get $$t18.294 + i32.store offset=1176 + local.get $$t15.1 + local.get $$t18.295 + i32.store offset=1180 + local.get $$t15.1 + local.get $$t18.296 + i32.store offset=1184 + local.get $$t15.1 + local.get $$t18.297 + i32.store offset=1188 + local.get $$t15.1 + local.get $$t18.298 + i32.store offset=1192 + local.get $$t15.1 + local.get $$t18.299 + i32.store offset=1196 + local.get $$t15.1 + local.get $$t18.300 + i32.store offset=1200 + local.get $$t15.1 + local.get $$t18.301 + i32.store offset=1204 + local.get $$t15.1 + local.get $$t18.302 + i32.store offset=1208 + local.get $$t15.1 + local.get $$t18.303 + i32.store offset=1212 + local.get $$t15.1 + local.get $$t18.304 + i32.store offset=1216 + local.get $$t15.1 + local.get $$t18.305 + i32.store offset=1220 + local.get $$t15.1 + local.get $$t18.306 + i32.store offset=1224 + local.get $$t15.1 + local.get $$t18.307 + i32.store offset=1228 + local.get $$t15.1 + local.get $$t18.308 + i32.store offset=1232 + local.get $$t15.1 + local.get $$t18.309 + i32.store offset=1236 + local.get $$t15.1 + local.get $$t18.310 + i32.store offset=1240 + local.get $$t15.1 + local.get $$t18.311 + i32.store offset=1244 + local.get $$t15.1 + local.get $$t18.312 + i32.store offset=1248 + local.get $$t15.1 + local.get $$t18.313 + i32.store offset=1252 + local.get $$t15.1 + local.get $$t18.314 + i32.store offset=1256 + local.get $$t15.1 + local.get $$t18.315 + i32.store offset=1260 + local.get $$t15.1 + local.get $$t18.316 + i32.store offset=1264 + local.get $$t15.1 + local.get $$t18.317 + i32.store offset=1268 + local.get $$t15.1 + local.get $$t18.318 + i32.store offset=1272 + local.get $$t15.1 + local.get $$t18.319 + i32.store offset=1276 + local.get $$t15.1 + local.get $$t18.320 + i32.store offset=1280 + local.get $$t15.1 + local.get $$t18.321 + i32.store offset=1284 + local.get $$t15.1 + local.get $$t18.322 + i32.store offset=1288 + local.get $$t15.1 + local.get $$t18.323 + i32.store offset=1292 + local.get $$t15.1 + local.get $$t18.324 + i32.store offset=1296 + local.get $$t15.1 + local.get $$t18.325 + i32.store offset=1300 + local.get $$t15.1 + local.get $$t18.326 + i32.store offset=1304 + local.get $$t15.1 + local.get $$t18.327 + i32.store offset=1308 + local.get $$t15.1 + local.get $$t18.328 + i32.store offset=1312 + local.get $$t15.1 + local.get $$t18.329 + i32.store offset=1316 + local.get $$t15.1 + local.get $$t18.330 + i32.store offset=1320 + local.get $$t15.1 + local.get $$t18.331 + i32.store offset=1324 + local.get $$t15.1 + local.get $$t18.332 + i32.store offset=1328 + local.get $$t15.1 + local.get $$t18.333 + i32.store offset=1332 + local.get $$t15.1 + local.get $$t18.334 + i32.store offset=1336 + local.get $$t15.1 + local.get $$t18.335 + i32.store offset=1340 + local.get $$t15.1 + local.get $$t18.336 + i32.store offset=1344 + local.get $$t15.1 + local.get $$t18.337 + i32.store offset=1348 + local.get $$t15.1 + local.get $$t18.338 + i32.store offset=1352 + local.get $$t15.1 + local.get $$t18.339 + i32.store offset=1356 + local.get $$t15.1 + local.get $$t18.340 + i32.store offset=1360 + local.get $$t15.1 + local.get $$t18.341 + i32.store offset=1364 + local.get $$t15.1 + local.get $$t18.342 + i32.store offset=1368 + local.get $$t15.1 + local.get $$t18.343 + i32.store offset=1372 + local.get $$t15.1 + local.get $$t18.344 + i32.store offset=1376 + local.get $$t15.1 + local.get $$t18.345 + i32.store offset=1380 + local.get $$t15.1 + local.get $$t18.346 + i32.store offset=1384 + local.get $$t15.1 + local.get $$t18.347 + i32.store offset=1388 + local.get $$t15.1 + local.get $$t18.348 + i32.store offset=1392 + local.get $$t15.1 + local.get $$t18.349 + i32.store offset=1396 + local.get $$t15.1 + local.get $$t18.350 + i32.store offset=1400 + local.get $$t15.1 + local.get $$t18.351 + i32.store offset=1404 + local.get $$t15.1 + local.get $$t18.352 + i32.store offset=1408 + local.get $$t15.1 + local.get $$t18.353 + i32.store offset=1412 + local.get $$t15.1 + local.get $$t18.354 + i32.store offset=1416 + local.get $$t15.1 + local.get $$t18.355 + i32.store offset=1420 + local.get $$t15.1 + local.get $$t18.356 + i32.store offset=1424 + local.get $$t15.1 + local.get $$t18.357 + i32.store offset=1428 + local.get $$t15.1 + local.get $$t18.358 + i32.store offset=1432 + local.get $$t15.1 + local.get $$t18.359 + i32.store offset=1436 + local.get $$t15.1 + local.get $$t18.360 + i32.store offset=1440 + local.get $$t15.1 + local.get $$t18.361 + i32.store offset=1444 + local.get $$t15.1 + local.get $$t18.362 + i32.store offset=1448 + local.get $$t15.1 + local.get $$t18.363 + i32.store offset=1452 + local.get $$t15.1 + local.get $$t18.364 + i32.store offset=1456 + local.get $$t15.1 + local.get $$t18.365 + i32.store offset=1460 + local.get $$t15.1 + local.get $$t18.366 + i32.store offset=1464 + local.get $$t15.1 + local.get $$t18.367 + i32.store offset=1468 + local.get $$t15.1 + local.get $$t18.368 + i32.store offset=1472 + local.get $$t15.1 + local.get $$t18.369 + i32.store offset=1476 + local.get $$t15.1 + local.get $$t18.370 + i32.store offset=1480 + local.get $$t15.1 + local.get $$t18.371 + i32.store offset=1484 + local.get $$t15.1 + local.get $$t18.372 + i32.store offset=1488 + local.get $$t15.1 + local.get $$t18.373 + i32.store offset=1492 + local.get $$t15.1 + local.get $$t18.374 + i32.store offset=1496 + local.get $$t15.1 + local.get $$t18.375 + i32.store offset=1500 + local.get $$t15.1 + local.get $$t18.376 + i32.store offset=1504 + local.get $$t15.1 + local.get $$t18.377 + i32.store offset=1508 + local.get $$t15.1 + local.get $$t18.378 + i32.store offset=1512 + local.get $$t15.1 + local.get $$t18.379 + i32.store offset=1516 + local.get $$t15.1 + local.get $$t18.380 + i32.store offset=1520 + local.get $$t15.1 + local.get $$t18.381 + i32.store offset=1524 + local.get $$t15.1 + local.get $$t18.382 + i32.store offset=1528 + local.get $$t15.1 + local.get $$t18.383 + i32.store offset=1532 + local.get $$t15.1 + local.get $$t18.384 + i32.store offset=1536 + local.get $$t15.1 + local.get $$t18.385 + i32.store offset=1540 + local.get $$t15.1 + local.get $$t18.386 + i32.store offset=1544 + local.get $$t15.1 + local.get $$t18.387 + i32.store offset=1548 + local.get $$t15.1 + local.get $$t18.388 + i32.store offset=1552 + local.get $$t15.1 + local.get $$t18.389 + i32.store offset=1556 + local.get $$t15.1 + local.get $$t18.390 + i32.store offset=1560 + local.get $$t15.1 + local.get $$t18.391 + i32.store offset=1564 + local.get $$t15.1 + local.get $$t18.392 + i32.store offset=1568 + local.get $$t15.1 + local.get $$t18.393 + i32.store offset=1572 + local.get $$t15.1 + local.get $$t18.394 + i32.store offset=1576 + local.get $$t15.1 + local.get $$t18.395 + i32.store offset=1580 + local.get $$t15.1 + local.get $$t18.396 + i32.store offset=1584 + local.get $$t15.1 + local.get $$t18.397 + i32.store offset=1588 + local.get $$t15.1 + local.get $$t18.398 + i32.store offset=1592 + local.get $$t15.1 + local.get $$t18.399 + i32.store offset=1596 + local.get $$t15.1 + local.get $$t18.400 + i32.store offset=1600 + local.get $$t15.1 + local.get $$t18.401 + i32.store offset=1604 + local.get $$t15.1 + local.get $$t18.402 + i32.store offset=1608 + local.get $$t15.1 + local.get $$t18.403 + i32.store offset=1612 + local.get $$t15.1 + local.get $$t18.404 + i32.store offset=1616 + local.get $$t15.1 + local.get $$t18.405 + i32.store offset=1620 + local.get $$t15.1 + local.get $$t18.406 + i32.store offset=1624 + local.get $$t15.1 + local.get $$t18.407 + i32.store offset=1628 + local.get $$t15.1 + local.get $$t18.408 + i32.store offset=1632 + local.get $$t15.1 + local.get $$t18.409 + i32.store offset=1636 + local.get $$t15.1 + local.get $$t18.410 + i32.store offset=1640 + local.get $$t15.1 + local.get $$t18.411 + i32.store offset=1644 + local.get $$t15.1 + local.get $$t18.412 + i32.store offset=1648 + local.get $$t15.1 + local.get $$t18.413 + i32.store offset=1652 + local.get $$t15.1 + local.get $$t18.414 + i32.store offset=1656 + local.get $$t15.1 + local.get $$t18.415 + i32.store offset=1660 + local.get $$t15.1 + local.get $$t18.416 + i32.store offset=1664 + local.get $$t15.1 + local.get $$t18.417 + i32.store offset=1668 + local.get $$t15.1 + local.get $$t18.418 + i32.store offset=1672 + local.get $$t15.1 + local.get $$t18.419 + i32.store offset=1676 + local.get $$t15.1 + local.get $$t18.420 + i32.store offset=1680 + local.get $$t15.1 + local.get $$t18.421 + i32.store offset=1684 + local.get $$t15.1 + local.get $$t18.422 + i32.store offset=1688 + local.get $$t15.1 + local.get $$t18.423 + i32.store offset=1692 + local.get $$t15.1 + local.get $$t18.424 + i32.store offset=1696 + local.get $$t15.1 + local.get $$t18.425 + i32.store offset=1700 + local.get $$t15.1 + local.get $$t18.426 + i32.store offset=1704 + local.get $$t15.1 + local.get $$t18.427 + i32.store offset=1708 + local.get $$t15.1 + local.get $$t18.428 + i32.store offset=1712 + local.get $$t15.1 + local.get $$t18.429 + i32.store offset=1716 + local.get $$t15.1 + local.get $$t18.430 + i32.store offset=1720 + local.get $$t15.1 + local.get $$t18.431 + i32.store offset=1724 + local.get $$t15.1 + local.get $$t18.432 + i32.store offset=1728 + local.get $$t15.1 + local.get $$t18.433 + i32.store offset=1732 + local.get $$t15.1 + local.get $$t18.434 + i32.store offset=1736 + local.get $$t15.1 + local.get $$t18.435 + i32.store offset=1740 + local.get $$t15.1 + local.get $$t18.436 + i32.store offset=1744 + local.get $$t15.1 + local.get $$t18.437 + i32.store offset=1748 + local.get $$t15.1 + local.get $$t18.438 + i32.store offset=1752 + local.get $$t15.1 + local.get $$t18.439 + i32.store offset=1756 + local.get $$t15.1 + local.get $$t18.440 + i32.store offset=1760 + local.get $$t15.1 + local.get $$t18.441 + i32.store offset=1764 + local.get $$t15.1 + local.get $$t18.442 + i32.store offset=1768 + local.get $$t15.1 + local.get $$t18.443 + i32.store offset=1772 + local.get $$t15.1 + local.get $$t18.444 + i32.store offset=1776 + local.get $$t15.1 + local.get $$t18.445 + i32.store offset=1780 + local.get $$t15.1 + local.get $$t18.446 + i32.store offset=1784 + local.get $$t15.1 + local.get $$t18.447 + i32.store offset=1788 + local.get $$t15.1 + local.get $$t18.448 + i32.store offset=1792 + local.get $$t15.1 + local.get $$t18.449 + i32.store offset=1796 + local.get $$t15.1 + local.get $$t18.450 + i32.store offset=1800 + local.get $$t15.1 + local.get $$t18.451 + i32.store offset=1804 + local.get $$t15.1 + local.get $$t18.452 + i32.store offset=1808 + local.get $$t15.1 + local.get $$t18.453 + i32.store offset=1812 + local.get $$t15.1 + local.get $$t18.454 + i32.store offset=1816 + local.get $$t15.1 + local.get $$t18.455 + i32.store offset=1820 + local.get $$t15.1 + local.get $$t18.456 + i32.store offset=1824 + local.get $$t15.1 + local.get $$t18.457 + i32.store offset=1828 + local.get $$t15.1 + local.get $$t18.458 + i32.store offset=1832 + local.get $$t15.1 + local.get $$t18.459 + i32.store offset=1836 + local.get $$t15.1 + local.get $$t18.460 + i32.store offset=1840 + local.get $$t15.1 + local.get $$t18.461 + i32.store offset=1844 + local.get $$t15.1 + local.get $$t18.462 + i32.store offset=1848 + local.get $$t15.1 + local.get $$t18.463 + i32.store offset=1852 + local.get $$t15.1 + local.get $$t18.464 + i32.store offset=1856 + local.get $$t15.1 + local.get $$t18.465 + i32.store offset=1860 + local.get $$t15.1 + local.get $$t18.466 + i32.store offset=1864 + local.get $$t15.1 + local.get $$t18.467 + i32.store offset=1868 + local.get $$t16.1 + local.get $$t19.0 + i32.store16 + local.get $$t16.1 + local.get $$t19.1 + i32.store16 offset=2 + local.get $$t16.1 + local.get $$t19.2 + i32.store16 offset=4 + local.get $$t16.1 + local.get $$t19.3 + i32.store16 offset=6 + local.get $$t16.1 + local.get $$t19.4 + i32.store16 offset=8 + local.get $$t16.1 + local.get $$t19.5 + i32.store16 offset=10 + local.get $$t16.1 + local.get $$t19.6 + i32.store16 offset=12 + local.get $$t16.1 + local.get $$t19.7 + i32.store16 offset=14 + local.get $$t16.1 + local.get $$t19.8 + i32.store16 offset=16 + local.get $$t16.1 + local.get $$t19.9 + i32.store16 offset=18 + local.get $$t16.1 + local.get $$t19.10 + i32.store16 offset=20 + local.get $$t16.1 + local.get $$t19.11 + i32.store16 offset=22 + local.get $$t16.1 + local.get $$t19.12 + i32.store16 offset=24 + local.get $$t16.1 + local.get $$t19.13 + i32.store16 offset=26 + local.get $$t16.1 + local.get $$t19.14 + i32.store16 offset=28 + local.get $$t16.1 + local.get $$t19.15 + i32.store16 offset=30 + local.get $$t16.1 + local.get $$t19.16 + i32.store16 offset=32 + local.get $$t16.1 + local.get $$t19.17 + i32.store16 offset=34 + local.get $$t16.1 + local.get $$t19.18 + i32.store16 offset=36 + local.get $$t16.1 + local.get $$t19.19 + i32.store16 offset=38 + local.get $$t16.1 + local.get $$t19.20 + i32.store16 offset=40 + local.get $$t16.1 + local.get $$t19.21 + i32.store16 offset=42 + local.get $$t16.1 + local.get $$t19.22 + i32.store16 offset=44 + local.get $$t16.1 + local.get $$t19.23 + i32.store16 offset=46 + local.get $$t16.1 + local.get $$t19.24 + i32.store16 offset=48 + local.get $$t16.1 + local.get $$t19.25 + i32.store16 offset=50 + local.get $$t16.1 + local.get $$t19.26 + i32.store16 offset=52 + local.get $$t16.1 + local.get $$t19.27 + i32.store16 offset=54 + local.get $$t16.1 + local.get $$t19.28 + i32.store16 offset=56 + local.get $$t16.1 + local.get $$t19.29 + i32.store16 offset=58 + local.get $$t16.1 + local.get $$t19.30 + i32.store16 offset=60 + local.get $$t16.1 + local.get $$t19.31 + i32.store16 offset=62 + local.get $$t16.1 + local.get $$t19.32 + i32.store16 offset=64 + local.get $$t16.1 + local.get $$t19.33 + i32.store16 offset=66 + local.get $$t16.1 + local.get $$t19.34 + i32.store16 offset=68 + local.get $$t16.1 + local.get $$t19.35 + i32.store16 offset=70 + local.get $$t16.1 + local.get $$t19.36 + i32.store16 offset=72 + local.get $$t16.1 + local.get $$t19.37 + i32.store16 offset=74 + local.get $$t16.1 + local.get $$t19.38 + i32.store16 offset=76 + local.get $$t16.1 + local.get $$t19.39 + i32.store16 offset=78 + local.get $$t16.1 + local.get $$t19.40 + i32.store16 offset=80 + local.get $$t16.1 + local.get $$t19.41 + i32.store16 offset=82 + local.get $$t16.1 + local.get $$t19.42 + i32.store16 offset=84 + local.get $$t16.1 + local.get $$t19.43 + i32.store16 offset=86 + local.get $$t16.1 + local.get $$t19.44 + i32.store16 offset=88 + local.get $$t16.1 + local.get $$t19.45 + i32.store16 offset=90 + local.get $$t16.1 + local.get $$t19.46 + i32.store16 offset=92 + local.get $$t16.1 + local.get $$t19.47 + i32.store16 offset=94 + local.get $$t16.1 + local.get $$t19.48 + i32.store16 offset=96 + local.get $$t16.1 + local.get $$t19.49 + i32.store16 offset=98 + local.get $$t16.1 + local.get $$t19.50 + i32.store16 offset=100 + local.get $$t16.1 + local.get $$t19.51 + i32.store16 offset=102 + local.get $$t16.1 + local.get $$t19.52 + i32.store16 offset=104 + local.get $$t16.1 + local.get $$t19.53 + i32.store16 offset=106 + local.get $$t16.1 + local.get $$t19.54 + i32.store16 offset=108 + local.get $$t16.1 + local.get $$t19.55 + i32.store16 offset=110 + local.get $$t16.1 + local.get $$t19.56 + i32.store16 offset=112 + local.get $$t16.1 + local.get $$t19.57 + i32.store16 offset=114 + local.get $$t16.1 + local.get $$t19.58 + i32.store16 offset=116 + local.get $$t16.1 + local.get $$t19.59 + i32.store16 offset=118 + local.get $$t16.1 + local.get $$t19.60 + i32.store16 offset=120 + local.get $$t16.1 + local.get $$t19.61 + i32.store16 offset=122 + local.get $$t16.1 + local.get $$t19.62 + i32.store16 offset=124 + local.get $$t16.1 + local.get $$t19.63 + i32.store16 offset=126 + local.get $$t16.1 + local.get $$t19.64 + i32.store16 offset=128 + local.get $$t16.1 + local.get $$t19.65 + i32.store16 offset=130 + local.get $$t16.1 + local.get $$t19.66 + i32.store16 offset=132 + local.get $$t16.1 + local.get $$t19.67 + i32.store16 offset=134 + local.get $$t16.1 + local.get $$t19.68 + i32.store16 offset=136 + local.get $$t16.1 + local.get $$t19.69 + i32.store16 offset=138 + local.get $$t16.1 + local.get $$t19.70 + i32.store16 offset=140 + local.get $$t16.1 + local.get $$t19.71 + i32.store16 offset=142 + local.get $$t16.1 + local.get $$t19.72 + i32.store16 offset=144 + local.get $$t16.1 + local.get $$t19.73 + i32.store16 offset=146 + local.get $$t16.1 + local.get $$t19.74 + i32.store16 offset=148 + local.get $$t16.1 + local.get $$t19.75 + i32.store16 offset=150 + local.get $$t16.1 + local.get $$t19.76 + i32.store16 offset=152 + local.get $$t16.1 + local.get $$t19.77 + i32.store16 offset=154 + local.get $$t16.1 + local.get $$t19.78 + i32.store16 offset=156 + local.get $$t16.1 + local.get $$t19.79 + i32.store16 offset=158 + local.get $$t16.1 + local.get $$t19.80 + i32.store16 offset=160 + local.get $$t16.1 + local.get $$t19.81 + i32.store16 offset=162 + local.get $$t16.1 + local.get $$t19.82 + i32.store16 offset=164 + local.get $$t16.1 + local.get $$t19.83 + i32.store16 offset=166 + local.get $$t16.1 + local.get $$t19.84 + i32.store16 offset=168 + local.get $$t16.1 + local.get $$t19.85 + i32.store16 offset=170 + local.get $$t16.1 + local.get $$t19.86 + i32.store16 offset=172 + local.get $$t16.1 + local.get $$t19.87 + i32.store16 offset=174 + local.get $$t16.1 + local.get $$t19.88 + i32.store16 offset=176 + local.get $$t16.1 + local.get $$t19.89 + i32.store16 offset=178 + local.get $$t16.1 + local.get $$t19.90 + i32.store16 offset=180 + local.get $$t16.1 + local.get $$t19.91 + i32.store16 offset=182 + local.get $$t16.1 + local.get $$t19.92 + i32.store16 offset=184 + local.get $$t16.1 + local.get $$t19.93 + i32.store16 offset=186 + local.get $$t16.1 + local.get $$t19.94 + i32.store16 offset=188 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 468 + i32.const 0 + i32.sub + i32.const 468 + i32.const 0 + i32.sub + local.set $$t20.3 + local.set $$t20.2 + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.0 + local.get $$t20.1 + local.get $$t20.2 + local.get $$t20.3 + local.get $$t17 + call $strconv.bsearch32 + local.set $$t21 + local.get $$t21 + i32.const 468 + i32.ge_s + local.set $$t22 + local.get $$t22 + if + br $$Block_17 + else + br $$Block_20 + end + end + i32.const 11 + local.set $$current_block + local.get $r + i32.const 65536 + i32.lt_s + local.set $$t23 + local.get $$t23 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 132 + i32.const 0 + i32.sub + i32.const 132 + i32.const 0 + i32.sub + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t24.2 + local.get $$t24.3 + local.get $$t9 + call $strconv.bsearch16 + local.set $$t25 + local.get $$t25 + i32.const 132 + i32.ge_s + local.set $$t26 + local.get $$t26 + if + br $$Block_16 + else + br $$Block_15 + end + end + i32.const 14 + local.set $$current_block + local.get $$t13 + i32.const 1 + i32.or + local.set $$t27 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + local.get $$t27 + i32.mul + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load16_u + local.set $$t29 + local.get $$t29 + local.get $$t9 + i32.lt_u + local.set $$t30 + local.get $$t30 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t13 + i32.const 1 + i32.const -1 + i32.xor + i32.and + local.set $$t31 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + local.get $$t31 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + i32.load16_u + local.set $$t33 + local.get $$t9 + local.get $$t33 + i32.lt_u + local.set $$t34 + local.get $$t34 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 16 + local.set $$current_block + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 2 + local.get $$t25 + i32.mul + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t35.1 + i32.load16_u + local.set $$t36 + local.get $$t36 + local.get $$t9 + i32.eq + i32.eqz + local.set $$t37 + br $$Block_16 + end + local.get $$current_block + i32.const 13 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t37 + end + local.set $$t38 + i32.const 17 + local.set $$current_block + local.get $$t38 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 19 + local.set $$current_block + local.get $r + i32.const 131072 + i32.ge_s + local.set $$t39 + local.get $$t39 + if + br $$Block_21 + else + br $$Block_22 + end + end + i32.const 20 + local.set $$current_block + local.get $$t21 + i32.const 1 + i32.or + local.set $$t40 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + local.get $$t40 + i32.mul + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t42 + local.get $$t17 + i32.lt_u + local.set $$t43 + local.get $$t43 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + i32.const 19 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 21 + local.set $$current_block + local.get $$t21 + i32.const 1 + i32.const -1 + i32.xor + i32.and + local.set $$t44 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + local.get $$t44 + i32.mul + i32.add + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t45.1 + i32.load + local.set $$t46 + local.get $$t17 + local.get $$t46 + i32.lt_u + local.set $$t47 + local.get $$t47 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + i32.const 20 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 22 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 23 + local.set $$current_block + local.get $r + i32.const 65536 + i32.sub + local.set $$t48 + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 95 + i32.const 0 + i32.sub + i32.const 95 + i32.const 0 + i32.sub + local.set $$t49.3 + local.set $$t49.2 + local.set $$t49.1 + local.get $$t49.0 + call $runtime.Block.Release + local.set $$t49.0 + local.get $$t48 + i32.const 65535 + i32.and + local.set $$t50 + local.get $$t49.0 + local.get $$t49.1 + local.get $$t49.2 + local.get $$t49.3 + local.get $$t50 + call $strconv.bsearch16 + local.set $$t51 + local.get $$t51 + i32.const 95 + i32.ge_s + local.set $$t52 + local.get $$t52 + if + br $$Block_24 + else + br $$Block_23 + end + end + i32.const 24 + local.set $$current_block + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.const 2 + local.get $$t51 + i32.mul + i32.add + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $$t53.1 + i32.load16_u + local.set $$t54 + local.get $$t48 + i32.const 65535 + i32.and + local.set $$t55 + local.get $$t54 + local.get $$t55 + i32.eq + i32.eqz + local.set $$t56 + br $$Block_24 + end + local.get $$current_block + i32.const 23 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t56 + end + local.set $$t57 + i32.const 25 + local.set $$current_block + local.get $$t57 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t49.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + ) + (func $strconv.Itoa (param $i i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i64) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $i + i64.extend_i32_s + local.set $$t0 + local.get $$t0 + i32.const 10 + call $strconv.FormatInt + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $strconv.Quote (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + i32.const 34 + i32.const 0 + i32.const 0 + call $strconv.quoteWith + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.get $$t0.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $strconv.appendEscapedRune (param $buf.0 i32) (param $buf.1 i32) (param $buf.2 i32) (param $buf.3 i32) (param $r i32) (param $quote i32) (param $ASCIIonly i32) (param $graphicOnly i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t10.2 i32) + (local $$t10.3 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t19.2 i32) + (local $$t19.3 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t20.2 i32) + (local $$t20.3 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t22.2 i32) + (local $$t22.3 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t27.2 i32) + (local $$t27.3 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t28.2 i32) + (local $$t28.3 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t29.2 i32) + (local $$t29.3 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t30.2 i32) + (local $$t30.3 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t31.2 i32) + (local $$t31.3 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t32.2 i32) + (local $$t32.3 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t33.2 i32) + (local $$t33.3 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t34.2 i32) + (local $$t34.3 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t35.2 i32) + (local $$t35.3 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t36.2 i32) + (local $$t36.3 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t37.2 i32) + (local $$t37.3 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t38.2 i32) + (local $$t38.3 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t46.2 i32) + (local $$t46.3 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t52.2 i32) + (local $$t52.3 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t53.2 i32) + (local $$t53.3 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t59.2 i32) + (local $$t59.3 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t60.2 i32) + (local $$t60.3 i32) + (local $$t61 i32) + (local $$t62.0 i32) + (local $$t62.1 i32) + (local $$t62.2 i32) + (local $$t62.3 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69.0 i32) + (local $$t69.1 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t71.2 i32) + (local $$t71.3 i32) + (local $$t72.0 i32) + (local $$t72.1 i32) + (local $$t72.2 i32) + (local $$t72.3 i32) + (local $$t73 i32) + (local $$t74 i32) + (local $$t75.0 i32) + (local $$t75.1 i32) + (local $$t75.2 i32) + (local $$t75.3 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81.0 i32) + (local $$t81.1 i32) + (local $$t82.0 i32) + (local $$t82.1 i32) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t83.2 i32) + (local $$t83.3 i32) + (local $$t84.0 i32) + (local $$t84.1 i32) + (local $$t84.2 i32) + (local $$t84.3 i32) + (local $$t85 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92.0 i32) + (local $$t92.1 i32) + (local $$t93.0 i32) + (local $$t93.1 i32) + (local $$t94.0 i32) + (local $$t94.1 i32) + (local $$t94.2 i32) + (local $$t94.3 i32) + (local $$t95.0 i32) + (local $$t95.1 i32) + (local $$t95.2 i32) + (local $$t95.3 i32) + (local $$t96 i32) + (local $$t97 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_38 + block $$Block_37 + block $$Block_36 + block $$Block_35 + block $$Block_34 + block $$Block_33 + block $$Block_32 + block $$Block_31 + block $$Block_30 + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $quote + local.set $$t1 + local.get $r + local.get $$t1 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.const 92 + i32.store8 align=1 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + local.get $$t5.3 + call $$u8.$slice.append + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $r + i32.const 255 + i32.and + local.set $$t7 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + local.get $$t7 + i32.store8 align=1 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t10.3 + local.set $$t10.2 + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + local.get $$t10.0 + local.get $$t10.1 + local.get $$t10.2 + local.get $$t10.3 + call $$u8.$slice.append + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ASCIIonly + if + br $$Block_3 + else + br $$Block_5 + end + end + i32.const 3 + local.set $$current_block + local.get $r + i32.const 92 + i32.eq + local.set $$t12 + local.get $$t12 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $r + i32.const 128 + i32.lt_s + local.set $$t13 + local.get $$t13 + if + br $$Block_7 + else + br $$Block_4 + end + end + i32.const 5 + local.set $$current_block + local.get $r + i32.const 7 + i32.eq + local.set $$t14 + local.get $$t14 + if + br $$Block_12 + else + br $$Block_14 + end + end + i32.const 6 + local.set $$current_block + local.get $r + call $strconv.IsPrint + local.set $$t15 + local.get $$t15 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $r + i32.const 255 + i32.and + local.set $$t16 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + local.get $$t16 + i32.store8 align=1 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t19.3 + local.set $$t19.2 + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + local.get $$t19.0 + local.get $$t19.1 + local.get $$t19.2 + local.get $$t19.3 + call $$u8.$slice.append + local.set $$t20.3 + local.set $$t20.2 + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + local.get $$t20.2 + local.get $$t20.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $r + call $strconv.IsPrint + local.set $$t21 + local.get $$t21 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t22.3 + local.set $$t22.2 + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.0 + local.get $$t22.1 + local.get $$t22.2 + local.get $$t22.3 + local.get $r + call $unicode$utf8.EncodeRune + local.set $$t23 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.get $$t23 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t24.2 + local.get $$t24.3 + call $$u8.$slice.append + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.0 + call $runtime.Block.Retain + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $graphicOnly + if + br $$Block_10 + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 11 + local.set $$current_block + local.get $r + call $strconv.isInGraphicList + local.set $$t26 + local.get $$t26 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 13 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + local.get $$t27.2 + local.get $$t27.3 + else + local.get $$current_block + i32.const 14 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + local.get $$t28.2 + local.get $$t28.3 + else + local.get $$current_block + i32.const 16 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + local.get $$t29.2 + local.get $$t29.3 + else + local.get $$current_block + i32.const 18 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + local.get $$t30.2 + local.get $$t30.3 + else + local.get $$current_block + i32.const 20 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t31.0 + call $runtime.Block.Retain + local.get $$t31.1 + local.get $$t31.2 + local.get $$t31.3 + else + local.get $$current_block + i32.const 22 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t32.0 + call $runtime.Block.Retain + local.get $$t32.1 + local.get $$t32.2 + local.get $$t32.3 + else + local.get $$current_block + i32.const 24 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t33.0 + call $runtime.Block.Retain + local.get $$t33.1 + local.get $$t33.2 + local.get $$t33.3 + else + local.get $$current_block + i32.const 27 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t34.0 + call $runtime.Block.Retain + local.get $$t34.1 + local.get $$t34.2 + local.get $$t34.3 + else + local.get $$current_block + i32.const 33 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t35.0 + call $runtime.Block.Retain + local.get $$t35.1 + local.get $$t35.2 + local.get $$t35.3 + else + local.get $$current_block + i32.const 36 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t36.0 + call $runtime.Block.Retain + local.get $$t36.1 + local.get $$t36.2 + local.get $$t36.3 + else + local.get $$t37.0 + call $runtime.Block.Retain + local.get $$t37.1 + local.get $$t37.2 + local.get $$t37.3 + end + end + end + end + end + end + end + end + end + end + local.set $$t38.3 + local.set $$t38.2 + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + i32.const 12 + local.set $$current_block + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + local.get $$t38.2 + local.get $$t38.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32701 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t27.3 + local.set $$t27.2 + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 14 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32703 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t28.3 + local.set $$t28.2 + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 15 + local.set $$current_block + local.get $r + i32.const 8 + i32.eq + local.set $$t39 + local.get $$t39 + if + i32.const 14 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_16 + end + end + i32.const 16 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32705 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t29.3 + local.set $$t29.2 + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 17 + local.set $$current_block + local.get $r + i32.const 12 + i32.eq + local.set $$t40 + local.get $$t40 + if + i32.const 16 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_18 + end + end + i32.const 18 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32707 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t30.3 + local.set $$t30.2 + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + local.get $r + i32.const 10 + i32.eq + local.set $$t41 + local.get $$t41 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_20 + end + end + i32.const 20 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32709 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t31.3 + local.set $$t31.2 + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 21 + local.set $$current_block + local.get $r + i32.const 13 + i32.eq + local.set $$t42 + local.get $$t42 + if + i32.const 20 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_22 + end + end + i32.const 22 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32711 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t32.3 + local.set $$t32.2 + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 23 + local.set $$current_block + local.get $r + i32.const 9 + i32.eq + local.set $$t43 + local.get $$t43 + if + i32.const 22 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_24 + end + end + i32.const 24 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32713 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t33.3 + local.set $$t33.2 + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 25 + local.set $$current_block + local.get $r + i32.const 11 + i32.eq + local.set $$t44 + local.get $$t44 + if + i32.const 24 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_25 + end + end + i32.const 26 + local.set $$current_block + local.get $r + i32.const 32 + i32.lt_s + local.set $$t45 + local.get $$t45 + if + br $$Block_26 + else + br $$Block_28 + end + end + i32.const 27 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32715 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t46.3 + local.set $$t46.2 + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $r + i32.const 255 + i32.and + local.set $$t47 + local.get $$t47 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t48 + i32.const 31509 + local.get $$t48 + i32.add + i32.load8_u align=1 + local.set $$t49 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + local.get $$t49 + i32.store8 align=1 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t52.3 + local.set $$t52.2 + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t46.0 + local.get $$t46.1 + local.get $$t46.2 + local.get $$t46.3 + local.get $$t52.0 + local.get $$t52.1 + local.get $$t52.2 + local.get $$t52.3 + call $$u8.$slice.append + local.set $$t53.3 + local.set $$t53.2 + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $r + i32.const 255 + i32.and + local.set $$t54 + local.get $$t54 + i32.const 15 + i32.and + local.set $$t55 + i32.const 31509 + local.get $$t55 + i32.add + i32.load8_u align=1 + local.set $$t56 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $$t57.0 + call $runtime.Block.Retain + local.get $$t57.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + local.get $$t58.1 + local.get $$t56 + i32.store8 align=1 + local.get $$t57.0 + call $runtime.Block.Retain + local.get $$t57.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t59.3 + local.set $$t59.2 + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t53.0 + local.get $$t53.1 + local.get $$t53.2 + local.get $$t53.3 + local.get $$t59.0 + local.get $$t59.1 + local.get $$t59.2 + local.get $$t59.3 + call $$u8.$slice.append + local.set $$t34.3 + local.set $$t34.2 + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 28 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32717 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t60.3 + local.set $$t60.2 + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + br $$Block_32 + end + i32.const 29 + local.set $$current_block + local.get $r + i32.const 1114111 + i32.gt_s + local.set $$t61 + local.get $$t61 + if + i32.const 28 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_30 + end + end + i32.const 30 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32717 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t62.3 + local.set $$t62.2 + local.set $$t62.1 + local.get $$t62.0 + call $runtime.Block.Release + local.set $$t62.0 + br $$Block_35 + end + i32.const 31 + local.set $$current_block + local.get $r + i32.const 65536 + i32.lt_s + local.set $$t63 + local.get $$t63 + if + i32.const 30 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_33 + end + end + i32.const 32 + local.set $$current_block + local.get $$t64 + local.set $$t65 + i32.const 65533 + local.get $$t65 + i32.shr_s + local.set $$t66 + local.get $$t66 + i32.const 15 + i32.and + local.set $$t67 + i32.const 31509 + local.get $$t67 + i32.add + i32.load8_u align=1 + local.set $$t68 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t69.1 + local.get $$t69.0 + call $runtime.Block.Release + local.set $$t69.0 + local.get $$t69.0 + call $runtime.Block.Retain + local.get $$t69.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + local.get $$t70.1 + local.get $$t68 + i32.store8 align=1 + local.get $$t69.0 + call $runtime.Block.Retain + local.get $$t69.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t71.3 + local.set $$t71.2 + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $$t35.0 + local.get $$t35.1 + local.get $$t35.2 + local.get $$t35.3 + local.get $$t71.0 + local.get $$t71.1 + local.get $$t71.2 + local.get $$t71.3 + call $$u8.$slice.append + local.set $$t72.3 + local.set $$t72.2 + local.set $$t72.1 + local.get $$t72.0 + call $runtime.Block.Release + local.set $$t72.0 + local.get $$t64 + i32.const 4 + i32.sub + local.set $$t73 + br $$Block_32 + end + local.get $$current_block + i32.const 28 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t60.0 + call $runtime.Block.Retain + local.get $$t60.1 + local.get $$t60.2 + local.get $$t60.3 + else + local.get $$t72.0 + call $runtime.Block.Retain + local.get $$t72.1 + local.get $$t72.2 + local.get $$t72.3 + end + local.set $$t35.3 + local.set $$t35.2 + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$current_block + i32.const 28 + i32.eq + if(result i32) + i32.const 12 + else + local.get $$t73 + end + local.set $$t64 + i32.const 33 + local.set $$current_block + local.get $$t64 + i32.const 0 + i32.ge_s + local.set $$t74 + local.get $$t74 + if + i32.const 32 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 34 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32719 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t75.3 + local.set $$t75.2 + local.set $$t75.1 + local.get $$t75.0 + call $runtime.Block.Release + local.set $$t75.0 + br $$Block_37 + end + i32.const 35 + local.set $$current_block + local.get $$t76 + local.set $$t77 + local.get $r + local.get $$t77 + i32.shr_s + local.set $$t78 + local.get $$t78 + i32.const 15 + i32.and + local.set $$t79 + i32.const 31509 + local.get $$t79 + i32.add + i32.load8_u align=1 + local.set $$t80 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t81.1 + local.get $$t81.0 + call $runtime.Block.Release + local.set $$t81.0 + local.get $$t81.0 + call $runtime.Block.Retain + local.get $$t81.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t82.1 + local.get $$t82.0 + call $runtime.Block.Release + local.set $$t82.0 + local.get $$t82.1 + local.get $$t80 + i32.store8 align=1 + local.get $$t81.0 + call $runtime.Block.Retain + local.get $$t81.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t83.3 + local.set $$t83.2 + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t36.0 + local.get $$t36.1 + local.get $$t36.2 + local.get $$t36.3 + local.get $$t83.0 + local.get $$t83.1 + local.get $$t83.2 + local.get $$t83.3 + call $$u8.$slice.append + local.set $$t84.3 + local.set $$t84.2 + local.set $$t84.1 + local.get $$t84.0 + call $runtime.Block.Release + local.set $$t84.0 + local.get $$t76 + i32.const 4 + i32.sub + local.set $$t85 + br $$Block_35 + end + local.get $$current_block + i32.const 30 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t62.0 + call $runtime.Block.Retain + local.get $$t62.1 + local.get $$t62.2 + local.get $$t62.3 + else + local.get $$t84.0 + call $runtime.Block.Retain + local.get $$t84.1 + local.get $$t84.2 + local.get $$t84.3 + end + local.set $$t36.3 + local.set $$t36.2 + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$current_block + i32.const 30 + i32.eq + if(result i32) + i32.const 12 + else + local.get $$t85 + end + local.set $$t76 + i32.const 36 + local.set $$current_block + local.get $$t76 + i32.const 0 + i32.ge_s + local.set $$t86 + local.get $$t86 + if + i32.const 35 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 37 + local.set $$current_block + local.get $$t87 + local.set $$t88 + local.get $r + local.get $$t88 + i32.shr_s + local.set $$t89 + local.get $$t89 + i32.const 15 + i32.and + local.set $$t90 + i32.const 31509 + local.get $$t90 + i32.add + i32.load8_u align=1 + local.set $$t91 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t92.1 + local.get $$t92.0 + call $runtime.Block.Release + local.set $$t92.0 + local.get $$t92.0 + call $runtime.Block.Retain + local.get $$t92.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t93.1 + local.get $$t93.0 + call $runtime.Block.Release + local.set $$t93.0 + local.get $$t93.1 + local.get $$t91 + i32.store8 align=1 + local.get $$t92.0 + call $runtime.Block.Retain + local.get $$t92.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t94.3 + local.set $$t94.2 + local.set $$t94.1 + local.get $$t94.0 + call $runtime.Block.Release + local.set $$t94.0 + local.get $$t37.0 + local.get $$t37.1 + local.get $$t37.2 + local.get $$t37.3 + local.get $$t94.0 + local.get $$t94.1 + local.get $$t94.2 + local.get $$t94.3 + call $$u8.$slice.append + local.set $$t95.3 + local.set $$t95.2 + local.set $$t95.1 + local.get $$t95.0 + call $runtime.Block.Release + local.set $$t95.0 + local.get $$t87 + i32.const 4 + i32.sub + local.set $$t96 + br $$Block_37 + end + local.get $$current_block + i32.const 34 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + local.get $$t75.2 + local.get $$t75.3 + else + local.get $$t95.0 + call $runtime.Block.Retain + local.get $$t95.1 + local.get $$t95.2 + local.get $$t95.3 + end + local.set $$t37.3 + local.set $$t37.2 + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$current_block + i32.const 34 + i32.eq + if(result i32) + i32.const 28 + else + local.get $$t96 + end + local.set $$t87 + i32.const 38 + local.set $$current_block + local.get $$t87 + i32.const 0 + i32.ge_s + local.set $$t97 + local.get $$t97 + if + i32.const 37 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t62.0 + call $runtime.Block.Release + local.get $$t69.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + local.get $$t72.0 + call $runtime.Block.Release + local.get $$t75.0 + call $runtime.Block.Release + local.get $$t81.0 + call $runtime.Block.Release + local.get $$t82.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + local.get $$t84.0 + call $runtime.Block.Release + local.get $$t92.0 + call $runtime.Block.Release + local.get $$t93.0 + call $runtime.Block.Release + local.get $$t94.0 + call $runtime.Block.Release + local.get $$t95.0 + call $runtime.Block.Release + ) + (func $$u8.$slice.copy (param $d.0 i32) (param $d.1 i32) (param $d.2 i32) (param $d.3 i32) (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $s.3 i32) (result i32) + (local $item i32) + (local $count i32) + (local $dp i32) + (local $sp i32) + (local $item_size i32) + local.get $d.2 + local.get $s.2 + i32.gt_u + if + local.get $s.2 + local.set $count + else + local.get $d.2 + local.set $count + end + local.get $count + local.get $d.1 + local.get $s.1 + i32.lt_u + if + local.get $d.1 + local.set $dp + local.get $s.1 + local.set $sp + i32.const 1 + local.set $item_size + else + local.get $count + i32.const 1 + i32.sub + i32.const 1 + i32.mul + local.set $item_size + local.get $d.1 + local.get $item_size + i32.add + local.set $dp + local.get $s.1 + local.get $item_size + i32.add + local.set $sp + i32.const 0 + i32.const 1 + i32.sub + local.set $item_size + end + block $b0 + loop $l0 + local.get $count + i32.eqz + if + br $b0 + else + local.get $sp + i32.load8_u align=1 + local.set $item + local.get $dp + local.get $item + i32.store8 align=1 + local.get $sp + local.get $item_size + i32.add + local.set $sp + local.get $dp + local.get $item_size + i32.add + local.set $dp + local.get $count + i32.const 1 + i32.sub + local.set $count + br $l0 + end + end + end + ) + (func $strconv.appendQuotedWith (param $buf.0 i32) (param $buf.1 i32) (param $buf.2 i32) (param $buf.3 i32) (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $quote i32) (param $ASCIIonly i32) (param $graphicOnly i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + (local $$t13.3 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t16.2 i32) + (local $$t16.3 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t18.2 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t26.2 i32) + (local $$t26.3 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t27.2 i32) + (local $$t27.3 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t28.2 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t31.2 i32) + (local $$t31.3 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t32.2 i32) + (local $$t32.3 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t39.2 i32) + (local $$t39.3 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t45.2 i32) + (local $$t45.3 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t46.2 i32) + (local $$t46.3 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t52.2 i32) + (local $$t52.3 i32) + (local $$t53 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 0 + end + i32.const 0 + local.set $$current_block + local.get $buf.3 + local.set $$t0 + local.get $buf.2 + local.set $$t1 + local.get $$t0 + local.get $$t1 + i32.sub + local.set $$t2 + local.get $s.2 + local.set $$t3 + local.get $$t2 + local.get $$t3 + i32.lt_s + local.set $$t4 + local.get $$t4 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $buf.2 + local.set $$t5 + local.get $buf.2 + local.set $$t6 + local.get $$t6 + i32.const 1 + i32.add + local.set $$t7 + local.get $s.2 + local.set $$t8 + local.get $$t7 + local.get $$t8 + i32.add + local.set $$t9 + local.get $$t9 + i32.const 1 + i32.add + local.set $$t10 + local.get $$t10 + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t10 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.get $$t5 + local.get $$t10 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + call $$u8.$slice.copy + local.set $$t12 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32 i32 i32 i32) + local.get $buf.0 + call $runtime.Block.Retain + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + else + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + end + local.set $$t13.3 + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + i32.const 2 + local.set $$current_block + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + local.get $quote + i32.store8 align=1 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t16.3 + local.set $$t16.2 + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t13.0 + local.get $$t13.1 + local.get $$t13.2 + local.get $$t13.3 + local.get $$t16.0 + local.get $$t16.1 + local.get $$t16.2 + local.get $$t16.3 + call $$u8.$slice.append + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + br $$Block_4 + end + i32.const 3 + local.set $$current_block + local.get $$t18.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t19 + local.get $$t19 + local.set $$t20 + local.get $$t20 + i32.const 128 + i32.ge_s + local.set $$t21 + local.get $$t21 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 4 + local.set $$current_block + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + local.get $quote + i32.store8 align=1 + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t24.2 + local.get $$t24.3 + call $$u8.$slice.append + local.set $$t26.3 + local.set $$t26.2 + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + local.get $$t26.2 + local.get $$t26.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + local.get $$t17.2 + local.get $$t17.3 + else + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + local.get $$t27.2 + local.get $$t27.3 + end + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$current_block + i32.const 2 + i32.eq + if(result i32 i32 i32) + local.get $s.0 + call $runtime.Block.Retain + local.get $s.1 + local.get $s.2 + else + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + local.get $$t28.2 + end + local.set $$t18.2 + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + i32.const 5 + local.set $$current_block + local.get $$t18.2 + local.set $$t29 + local.get $$t29 + i32.const 0 + i32.gt_s + local.set $$t30 + local.get $$t30 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t31.0 + call $runtime.Block.Retain + local.get $$t31.1 + local.get $$t31.2 + local.get $$t31.3 + else + local.get $$t32.0 + call $runtime.Block.Retain + local.get $$t32.1 + local.get $$t32.2 + local.get $$t32.3 + end + local.set $$t27.3 + local.set $$t27.2 + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + i32.const 6 + local.set $$current_block + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + local.get $$t33 + i32.add + local.get $$t18.2 + local.get $$t33 + i32.sub + local.set $$t28.2 + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + i32.const 7 + local.set $$current_block + local.get $$t18.0 + local.get $$t18.1 + local.get $$t18.2 + call $unicode$utf8.DecodeRuneInString + local.set $$t34.1 + local.set $$t34.0 + local.get $$t34.0 + local.set $$t35 + local.get $$t34.1 + local.set $$t36 + br $$Block_7 + end + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t36 + end + local.set $$t33 + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + local.get $$t20 + else + local.get $$t35 + end + local.set $$t37 + i32.const 8 + local.set $$current_block + local.get $$t33 + i32.const 1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + i32.const 0 + i32.const 32715 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t39.3 + local.set $$t39.2 + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t18.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t40 + local.get $$t40 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t41 + i32.const 31509 + local.get $$t41 + i32.add + i32.load8_u align=1 + local.set $$t42 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + local.get $$t42 + i32.store8 align=1 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t45.3 + local.set $$t45.2 + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t39.0 + local.get $$t39.1 + local.get $$t39.2 + local.get $$t39.3 + local.get $$t45.0 + local.get $$t45.1 + local.get $$t45.2 + local.get $$t45.3 + call $$u8.$slice.append + local.set $$t46.3 + local.set $$t46.2 + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t18.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t47 + local.get $$t47 + i32.const 15 + i32.and + local.set $$t48 + i32.const 31509 + local.get $$t48 + i32.add + i32.load8_u align=1 + local.set $$t49 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + local.get $$t49 + i32.store8 align=1 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t52.3 + local.set $$t52.2 + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t46.0 + local.get $$t46.1 + local.get $$t46.2 + local.get $$t46.3 + local.get $$t52.0 + local.get $$t52.1 + local.get $$t52.2 + local.get $$t52.3 + call $$u8.$slice.append + local.set $$t31.3 + local.set $$t31.2 + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.get $$t37 + local.get $quote + local.get $ASCIIonly + local.get $graphicOnly + call $strconv.appendEscapedRune + local.set $$t32.3 + local.set $$t32.2 + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t37 + i32.const 65533 + i32.eq + local.set $$t53 + local.get $$t53 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + ) + (func $$u8.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $$strconv.decimalSlice.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 18 + call_indirect 0 (type $$onFree) + ) + (func $strconv.bsearch16 (param $a.0 i32) (param $a.1 i32) (param $a.2 i32) (param $a.3 i32) (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + local.get $a.2 + local.set $$t0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $$t1 + local.get $$t2 + i32.sub + local.set $$t3 + local.get $$t3 + i64.const 1 + i32.wrap_i64 + i32.shr_s + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.add + local.set $$t5 + local.get $a.0 + call $runtime.Block.Retain + local.get $a.1 + i32.const 2 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load16_u + local.set $$t7 + local.get $$t7 + local.get $x + i32.lt_u + local.set $$t8 + local.get $$t8 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t9 + else + local.get $$t2 + end + end + local.set $$t2 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $$t0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t1 + else + local.get $$t5 + end + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t2 + local.get $$t1 + i32.lt_s + local.set $$t10 + local.get $$t10 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t9 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 5 + local.set $$current_block + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $strconv.bsearch32 (param $a.0 i32) (param $a.1 i32) (param $a.2 i32) (param $a.3 i32) (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + local.get $a.2 + local.set $$t0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $$t1 + local.get $$t2 + i32.sub + local.set $$t3 + local.get $$t3 + i64.const 1 + i32.wrap_i64 + i32.shr_s + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.add + local.set $$t5 + local.get $a.0 + call $runtime.Block.Retain + local.get $a.1 + i32.const 4 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t7 + local.get $x + i32.lt_u + local.set $$t8 + local.get $$t8 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t9 + else + local.get $$t2 + end + end + local.set $$t2 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $$t0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t1 + else + local.get $$t5 + end + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t2 + local.get $$t1 + i32.lt_s + local.set $$t10 + local.get $$t10 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t9 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 5 + local.set $$current_block + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $strconv.formatBits (param $dst.0 i32) (param $dst.1 i32) (param $dst.2 i32) (param $dst.3 i32) (param $u i64) (param $base i32) (param $neg i32) (param $append_ i32) (result i32 i32 i32 i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$ret_1.0 i32) + (local $$ret_1.1 i32) + (local $$ret_1.2 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i64) + (local $$t4 i64) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i64) + (local $$t13 i64) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i64) + (local $$t18 i64) + (local $$t19 i64) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64.0 i32) + (local $$t64.1 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i64) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i64) + (local $$t74 i32) + (local $$t75 i32) + (local $$t76.0 i32) + (local $$t76.1 i32) + (local $$t77 i64) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i64) + (local $$t82 i64) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t84 i32) + (local $$t85 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88 i32) + (local $$t89 i64) + (local $$t90 i64) + (local $$t91.0 i32) + (local $$t91.1 i32) + (local $$t92 i64) + (local $$t93 i64) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96.0 i32) + (local $$t96.1 i32) + (local $$t97 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100 i32) + (local $$t101.0 i32) + (local $$t101.1 i32) + (local $$t102 i32) + (local $$t103.0 i32) + (local $$t103.1 i32) + (local $$t103.2 i32) + (local $$t103.3 i32) + (local $$t104.0 i32) + (local $$t104.1 i32) + (local $$t104.2 i32) + (local $$t104.3 i32) + (local $$t105.0 i32) + (local $$t105.1 i32) + (local $$t105.2 i32) + (local $$t105.3 i32) + (local $$t106.0 i32) + (local $$t106.1 i32) + (local $$t106.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_30 + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 0 + end + i32.const 0 + local.set $$current_block + local.get $base + i32.const 2 + i32.lt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 32767 + i32.const 41 + i32.const 32808 + i32.const 12 + call $$runtime.panic_ + end + i32.const 2 + local.set $$current_block + i32.const 81 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 65 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $neg + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $base + i32.const 36 + i32.gt_s + local.set $$t2 + local.get $$t2 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + i64.const 0 + local.get $u + i64.sub + local.set $$t3 + br $$Block_4 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i64) + local.get $u + else + local.get $$t3 + end + local.set $$t4 + i32.const 5 + local.set $$current_block + local.get $base + i32.const 10 + i32.eq + local.set $$t5 + local.get $$t5 + if + br $$Block_5 + else + br $$Block_7 + end + end + i32.const 6 + local.set $$current_block + i32.const 1 + if + br $$Block_10 + else + br $$Block_8 + end + end + local.get $$current_block + i32.const 16 + i32.eq + if(result i32) + local.get $$t6 + else + local.get $$current_block + i32.const 22 + i32.eq + if(result i32) + local.get $$t7 + else + local.get $$current_block + i32.const 18 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t9 + end + end + end + local.set $$t10 + i32.const 7 + local.set $$current_block + local.get $neg + if + br $$Block_26 + else + br $$Block_27 + end + end + i32.const 8 + local.set $$current_block + local.get $base + call $strconv.isPowerOfTwo + local.set $$t11 + local.get $$t11 + if + br $$Block_18 + else + br $$Block_19 + end + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t12 + end + local.set $$t13 + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t14 + end + local.set $$t15 + i32.const 9 + local.set $$current_block + local.get $$t13 + i32.wrap_i64 + local.set $$t16 + br $$Block_16 + end + i32.const 10 + local.set $$current_block + local.get $$t12 + i64.const 1000000000 + i64.div_u + local.set $$t17 + local.get $$t17 + i64.const 1000000000 + i64.mul + local.set $$t18 + local.get $$t12 + local.get $$t18 + i64.sub + local.set $$t19 + local.get $$t19 + i32.wrap_i64 + local.set $$t20 + br $$Block_13 + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t17 + end + local.set $$t12 + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t21 + end + local.set $$t14 + i32.const 11 + local.set $$current_block + local.get $$t12 + i64.const 1000000000 + i64.ge_u + local.set $$t22 + local.get $$t22 + if + i32.const 10 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + local.get $$t23 + i32.const 100 + i32.rem_u + local.set $$t24 + local.get $$t24 + i32.const 2 + i32.mul + local.set $$t25 + local.get $$t23 + i32.const 100 + i32.div_u + local.set $$t26 + local.get $$t27 + i32.const 2 + i32.sub + local.set $$t28 + local.get $$t28 + i32.const 1 + i32.add + local.set $$t29 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t29 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t25 + i32.const 1 + i32.add + local.set $$t31 + i32.const 32820 + local.get $$t31 + i32.add + i32.load8_u align=1 + local.set $$t32 + local.get $$t30.1 + local.get $$t32 + i32.store8 align=1 + local.get $$t28 + i32.const 0 + i32.add + local.set $$t33 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t33 + i32.mul + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t25 + i32.const 0 + i32.add + local.set $$t35 + i32.const 32820 + local.get $$t35 + i32.add + i32.load8_u align=1 + local.set $$t36 + local.get $$t34.1 + local.get $$t36 + i32.store8 align=1 + local.get $$t37 + i32.const 1 + i32.sub + local.set $$t38 + br $$Block_13 + end + i32.const 13 + local.set $$current_block + local.get $$t27 + i32.const 1 + i32.sub + local.set $$t21 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t21 + i32.mul + i32.add + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t23 + i32.const 2 + i32.mul + local.set $$t40 + local.get $$t40 + i32.const 1 + i32.add + local.set $$t41 + i32.const 32820 + local.get $$t41 + i32.add + i32.load8_u align=1 + local.set $$t42 + local.get $$t39.1 + local.get $$t42 + i32.store8 align=1 + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + local.get $$t14 + else + local.get $$t28 + end + local.set $$t27 + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + local.get $$t20 + else + local.get $$t26 + end + local.set $$t23 + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + i32.const 4 + else + local.get $$t38 + end + local.set $$t37 + i32.const 14 + local.set $$current_block + local.get $$t37 + i32.const 0 + i32.gt_s + local.set $$t43 + local.get $$t43 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t44 + i32.const 100 + i32.rem_u + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.mul + local.set $$t46 + local.get $$t44 + i32.const 100 + i32.div_u + local.set $$t47 + local.get $$t48 + i32.const 2 + i32.sub + local.set $$t49 + local.get $$t49 + i32.const 1 + i32.add + local.set $$t50 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t50 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t46 + i32.const 1 + i32.add + local.set $$t52 + i32.const 32820 + local.get $$t52 + i32.add + i32.load8_u align=1 + local.set $$t53 + local.get $$t51.1 + local.get $$t53 + i32.store8 align=1 + local.get $$t49 + i32.const 0 + i32.add + local.set $$t54 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t54 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t46 + i32.const 0 + i32.add + local.set $$t56 + i32.const 32820 + local.get $$t56 + i32.add + i32.load8_u align=1 + local.set $$t57 + local.get $$t55.1 + local.get $$t57 + i32.store8 align=1 + br $$Block_16 + end + i32.const 16 + local.set $$current_block + local.get $$t44 + i32.const 2 + i32.mul + local.set $$t58 + local.get $$t48 + i32.const 1 + i32.sub + local.set $$t6 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t6 + i32.mul + i32.add + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t58 + i32.const 1 + i32.add + local.set $$t60 + i32.const 32820 + local.get $$t60 + i32.add + i32.load8_u align=1 + local.set $$t61 + local.get $$t59.1 + local.get $$t61 + i32.store8 align=1 + local.get $$t44 + i32.const 10 + i32.ge_u + local.set $$t62 + local.get $$t62 + if + br $$Block_17 + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t15 + else + local.get $$t49 + end + local.set $$t48 + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t16 + else + local.get $$t47 + end + local.set $$t44 + i32.const 17 + local.set $$current_block + local.get $$t44 + i32.const 100 + i32.ge_u + local.set $$t63 + local.get $$t63 + if + i32.const 15 + local.set $$block_selector + br $$BlockDisp + else + i32.const 16 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 18 + local.set $$current_block + local.get $$t6 + i32.const 1 + i32.sub + local.set $$t8 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t8 + i32.mul + i32.add + local.set $$t64.1 + local.get $$t64.0 + call $runtime.Block.Release + local.set $$t64.0 + i32.const 32820 + local.get $$t58 + i32.add + i32.load8_u align=1 + local.set $$t65 + local.get $$t64.1 + local.get $$t65 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + local.get $base + local.set $$t66 + local.get $$t66 + call $math$bits.TrailingZeros + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t68 + i32.const 7 + i32.and + local.set $$t69 + local.get $base + i64.extend_i32_u + local.set $$t70 + local.get $base + local.set $$t71 + local.get $$t71 + i32.const 1 + i32.sub + local.set $$t72 + br $$Block_22 + end + i32.const 20 + local.set $$current_block + local.get $base + i64.extend_i32_u + local.set $$t73 + br $$Block_25 + end + i32.const 21 + local.set $$current_block + local.get $$t74 + i32.const 1 + i32.sub + local.set $$t75 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t75 + i32.mul + i32.add + local.set $$t76.1 + local.get $$t76.0 + call $runtime.Block.Release + local.set $$t76.0 + local.get $$t77 + i32.wrap_i64 + local.set $$t78 + local.get $$t78 + local.get $$t72 + i32.and + local.set $$t79 + i32.const 33020 + local.get $$t79 + i32.add + i32.load8_u align=1 + local.set $$t80 + local.get $$t76.1 + local.get $$t80 + i32.store8 align=1 + local.get $$t69 + i64.extend_i32_u + local.set $$t81 + local.get $$t77 + local.get $$t81 + i64.shr_u + local.set $$t82 + br $$Block_22 + end + i32.const 22 + local.set $$current_block + local.get $$t74 + i32.const 1 + i32.sub + local.set $$t7 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t7 + i32.mul + i32.add + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t77 + i32.wrap_i64 + local.set $$t84 + i32.const 33020 + local.get $$t84 + i32.add + i32.load8_u align=1 + local.set $$t85 + local.get $$t83.1 + local.get $$t85 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 19 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t82 + end + local.set $$t77 + local.get $$current_block + i32.const 19 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t75 + end + local.set $$t74 + i32.const 23 + local.set $$current_block + local.get $$t77 + local.get $$t70 + i64.ge_u + local.set $$t86 + local.get $$t86 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + i32.const 22 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 24 + local.set $$current_block + local.get $$t87 + i32.const 1 + i32.sub + local.set $$t88 + local.get $$t89 + local.get $$t73 + i64.div_u + local.set $$t90 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t88 + i32.mul + i32.add + local.set $$t91.1 + local.get $$t91.0 + call $runtime.Block.Release + local.set $$t91.0 + local.get $$t90 + local.get $$t73 + i64.mul + local.set $$t92 + local.get $$t89 + local.get $$t92 + i64.sub + local.set $$t93 + local.get $$t93 + i32.wrap_i64 + local.set $$t94 + i32.const 33020 + local.get $$t94 + i32.add + i32.load8_u align=1 + local.set $$t95 + local.get $$t91.1 + local.get $$t95 + i32.store8 align=1 + br $$Block_25 + end + i32.const 25 + local.set $$current_block + local.get $$t87 + i32.const 1 + i32.sub + local.set $$t9 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t9 + i32.mul + i32.add + local.set $$t96.1 + local.get $$t96.0 + call $runtime.Block.Release + local.set $$t96.0 + local.get $$t89 + i32.wrap_i64 + local.set $$t97 + i32.const 33020 + local.get $$t97 + i32.add + i32.load8_u align=1 + local.set $$t98 + local.get $$t96.1 + local.get $$t98 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 20 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t90 + end + local.set $$t89 + local.get $$current_block + i32.const 20 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t88 + end + local.set $$t87 + i32.const 26 + local.set $$current_block + local.get $$t89 + local.get $$t73 + i64.ge_u + local.set $$t99 + local.get $$t99 + if + i32.const 24 + local.set $$block_selector + br $$BlockDisp + else + i32.const 25 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 27 + local.set $$current_block + local.get $$t10 + i32.const 1 + i32.sub + local.set $$t100 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t100 + i32.mul + i32.add + local.set $$t101.1 + local.get $$t101.0 + call $runtime.Block.Release + local.set $$t101.0 + local.get $$t101.1 + i32.const 45 + i32.store8 align=1 + br $$Block_27 + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + local.get $$t10 + else + local.get $$t100 + end + local.set $$t102 + i32.const 28 + local.set $$current_block + local.get $append_ + if + br $$Block_28 + else + br $$Block_29 + end + end + i32.const 29 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t102 + i32.mul + i32.add + i32.const 65 + local.get $$t102 + i32.sub + i32.const 65 + local.get $$t102 + i32.sub + local.set $$t103.3 + local.set $$t103.2 + local.set $$t103.1 + local.get $$t103.0 + call $runtime.Block.Release + local.set $$t103.0 + local.get $dst.0 + local.get $dst.1 + local.get $dst.2 + local.get $dst.3 + local.get $$t103.0 + local.get $$t103.1 + local.get $$t103.2 + local.get $$t103.3 + call $$u8.$slice.append + local.set $$t104.3 + local.set $$t104.2 + local.set $$t104.1 + local.get $$t104.0 + call $runtime.Block.Release + local.set $$t104.0 + local.get $$t104.0 + call $runtime.Block.Retain + local.get $$t104.1 + local.get $$t104.2 + local.get $$t104.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.set $$ret_1.2 + local.set $$ret_1.1 + local.get $$ret_1.0 + call $runtime.Block.Release + local.set $$ret_1.0 + br $$BlockFnBody + end + i32.const 30 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t102 + i32.mul + i32.add + i32.const 65 + local.get $$t102 + i32.sub + i32.const 65 + local.get $$t102 + i32.sub + local.set $$t105.3 + local.set $$t105.2 + local.set $$t105.1 + local.get $$t105.0 + call $runtime.Block.Release + local.set $$t105.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t105.0 + local.get $$t105.1 + local.get $$t105.2 + call $$string.appendstr + local.set $$t106.2 + local.set $$t106.1 + local.get $$t106.0 + call $runtime.Block.Release + local.set $$t106.0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + local.get $$t106.0 + call $runtime.Block.Retain + local.get $$t106.1 + local.get $$t106.2 + local.set $$ret_1.2 + local.set $$ret_1.1 + local.get $$ret_1.0 + call $runtime.Block.Release + local.set $$ret_1.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_1.0 + call $runtime.Block.Retain + local.get $$ret_1.1 + local.get $$ret_1.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$ret_1.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t64.0 + call $runtime.Block.Release + local.get $$t76.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + local.get $$t91.0 + call $runtime.Block.Release + local.get $$t96.0 + call $runtime.Block.Release + local.get $$t101.0 + call $runtime.Block.Release + local.get $$t103.0 + call $runtime.Block.Release + local.get $$t104.0 + call $runtime.Block.Release + local.get $$t105.0 + call $runtime.Block.Release + local.get $$t106.0 + call $runtime.Block.Release + ) + (func $strconv.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0.0 i32) + (local $$t1.0.1 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0.0 i32) + (local $$t2.0.1 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $strconv.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $strconv.init$guard + call $math.init + call $errors.init + call $math$bits.init + call $unicode$utf8.init + i32.const 0 + i32.const 33116 + i32.const 18 + call $errors.New + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0.1 + local.get $$t1.0.0 + call $runtime.Block.Release + local.set $$t1.0.0 + i32.const 14984 + local.get $$t1.0.0 + call $runtime.Block.Retain + i32.const 14984 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14984 + local.get $$t1.0.1 + i32.store offset=4 + i32.const 14984 + local.get $$t1.1 + i32.store offset=8 + i32.const 14984 + local.get $$t1.2 + i32.store offset=12 + i32.const 0 + i32.const 33134 + i32.const 14 + call $errors.New + local.set $$t2.2 + local.set $$t2.1 + local.set $$t2.0.1 + local.get $$t2.0.0 + call $runtime.Block.Release + local.set $$t2.0.0 + i32.const 15000 + local.get $$t2.0.0 + call $runtime.Block.Retain + i32.const 15000 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 15000 + local.get $$t2.0.1 + i32.store offset=4 + i32.const 15000 + local.get $$t2.1 + i32.store offset=8 + i32.const 15000 + local.get $$t2.2 + i32.store offset=12 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0.0 + call $runtime.Block.Release + local.get $$t2.0.0 + call $runtime.Block.Release + ) + (func $strconv.isInGraphicList (param $r i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $r + i32.const 65535 + i32.gt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $r + i32.const 65535 + i32.and + local.set $$t1 + i32.const 0 + i32.const 26408 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 16 + i32.const 0 + i32.sub + i32.const 16 + i32.const 0 + i32.sub + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + local.get $$t2.3 + local.get $$t1 + call $strconv.bsearch16 + local.set $$t3 + local.get $$t3 + i32.const 16 + i32.lt_s + local.set $$t4 + local.get $$t4 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + i32.const 0 + i32.const 26408 + i32.const 2 + local.get $$t3 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load16_u + local.set $$t6 + local.get $$t1 + local.get $$t6 + i32.eq + local.set $$t7 + br $$Block_3 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t7 + end + local.set $$t8 + i32.const 4 + local.set $$current_block + local.get $$t8 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + ) + (func $strconv.isPowerOfTwo (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 1 + i32.sub + local.set $$t0 + local.get $x + local.get $$t0 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $strconv.quoteWith (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $quote i32) (param $ASCIIonly i32) (param $graphicOnly i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t4.3 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + i32.const 3 + local.get $$t0 + i32.mul + local.set $$t1 + local.get $$t1 + i32.const 2 + i32.div_s + local.set $$t2 + local.get $$t2 + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t2 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + i32.const 0 + local.get $$t2 + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.get $$t3.2 + local.get $$t3.3 + local.get $s.0 + local.get $s.1 + local.get $s.2 + local.get $quote + local.get $ASCIIonly + local.get $graphicOnly + call $strconv.appendQuotedWith + local.set $$t4.3 + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $$string.appendstr + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + local.get $$t5.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + ) + (func $strconv.small (param $i i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $i + i32.const 10 + i32.lt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $i + i32.const 1 + i32.add + local.set $$t1 + i32.const 0 + i32.const 33020 + local.get $i + i32.add + local.get $$t1 + local.get $i + i32.sub + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + local.get $$t2.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $i + i32.const 2 + i32.mul + local.set $$t3 + local.get $$t3 + i32.const 2 + i32.add + local.set $$t4 + local.get $i + i32.const 2 + i32.mul + local.set $$t5 + i32.const 0 + i32.const 32820 + local.get $$t5 + i32.add + local.get $$t4 + local.get $$t5 + i32.sub + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetGamePad1 (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 22 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.LineI32 (param $x1 i32) (param $y1 i32) (param $x2 i32) (param $y2 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x1 + local.get $y1 + local.get $x2 + local.get $y2 + call $syscall$wasm4.__import__line + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.RectI32 (param $x i32) (param $y i32) (param $width i32) (param $height i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + local.get $y + local.get $width + local.get $height + call $syscall$wasm4.__import__rect + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.SetDrawColorsU16 (param $x i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 20 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + local.get $x + i32.store16 + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.SetPalette (param $a0 i32) (param $a1 i32) (param $a2 i32) (param $a3 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 4 + i32.const 4 + i32.const 4 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 3 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t1.1 + local.get $a0 + i32.store + local.get $$t2.1 + local.get $a1 + i32.store + local.get $$t3.1 + local.get $a2 + i32.store + local.get $$t4.1 + local.get $a3 + i32.store + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.Text (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $x i32) (param $y i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$syscall/wasm4.__linkname__string_data_ptr + local.set $$t0 + local.get $s.2 + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $$t0 + local.get $$t2 + local.get $x + local.get $y + call $syscall$wasm4.__import__textUtf8 + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.Tone (param $frequency i32) (param $duration i32) (param $volume i32) (param $flags i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $frequency + local.set $$t0 + local.get $duration + local.set $$t1 + local.get $volume + local.set $$t2 + local.get $flags + local.set $$t3 + local.get $$t0 + local.get $$t1 + local.get $$t2 + local.get $$t3 + call $syscall$wasm4.__import__tone + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.Trace (param $msg.0 i32) (param $msg.1 i32) (param $msg.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $msg.0 + local.get $msg.1 + local.get $msg.2 + call $$syscall/wasm4.__linkname__string_data_ptr + local.set $$t0 + local.get $msg.2 + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $$t0 + local.get $$t2 + call $syscall$wasm4.__import__traceUtf8 + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $syscall$wasm4.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $syscall$wasm4.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $unicode$utf8.DecodeRuneInString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + local.get $$t0 + i32.const 1 + i32.lt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $s.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$t3 + i32.const 0 + i32.const 30848 + i32.const 1 + local.get $$t3 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load8_u align=1 + local.set $$t5 + local.get $$t5 + i32.const 240 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t5 + local.set $$t7 + local.get $$t7 + i64.const 31 + i32.wrap_i64 + i32.shl + local.set $$t8 + local.get $$t8 + i64.const 31 + i32.wrap_i64 + i32.shr_s + local.set $$t9 + local.get $s.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t10 + local.get $$t10 + local.set $$t11 + local.get $$t11 + local.get $$t9 + i32.const -1 + i32.xor + i32.and + local.set $$t12 + i32.const 65533 + local.get $$t9 + i32.and + local.set $$t13 + local.get $$t12 + local.get $$t13 + i32.or + local.set $$t14 + local.get $$t14 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t5 + i32.const 7 + i32.and + local.set $$t15 + local.get $$t15 + local.set $$t16 + i32.const 18 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 2 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t5 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t18 + local.get $$t18 + local.set $$t19 + i32.const 0 + i32.const 30816 + i32.const 2 + local.get $$t19 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load8_u align=1 + local.get $$t20.1 + i32.load8_u offset=1 align=1 + local.set $$t21.1 + local.set $$t21.0 + local.get $$t17.1 + local.get $$t21.0 + i32.store8 align=1 + local.get $$t17.1 + local.get $$t21.1 + i32.store8 offset=1 align=1 + local.get $$t0 + local.get $$t16 + i32.lt_s + local.set $$t22 + local.get $$t22 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $s.1 + i32.const 1 + i32.add + i32.load8_u align=1 + local.set $$t23 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 0 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load8_u align=1 + local.set $$t25 + local.get $$t23 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + br $$Block_6 + else + br $$Block_8 + end + end + i32.const 7 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t16 + i32.const 2 + i32.le_s + local.set $$t27 + local.get $$t27 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load8_u align=1 + local.set $$t29 + local.get $$t29 + local.get $$t23 + i32.lt_u + local.set $$t30 + local.get $$t30 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t2 + i32.const 31 + i32.and + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t32 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t33 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t33 + local.get $$t35 + i32.or + local.set $$t36 + local.get $$t36 + local.set $$ret_0 + i32.const 2 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $s.1 + i32.const 2 + i32.add + i32.load8_u align=1 + local.set $$t37 + local.get $$t37 + i32.const 128 + i32.lt_u + local.set $$t38 + local.get $$t38 + if + br $$Block_11 + else + br $$Block_13 + end + end + i32.const 12 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t16 + i32.const 3 + i32.le_s + local.set $$t39 + local.get $$t39 + if + br $$Block_14 + else + br $$Block_15 + end + end + i32.const 14 + local.set $$current_block + i32.const 191 + local.get $$t37 + i32.lt_u + local.set $$t40 + local.get $$t40 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t2 + i32.const 15 + i32.and + local.set $$t41 + local.get $$t41 + local.set $$t42 + local.get $$t42 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t43 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t44 + local.get $$t44 + local.set $$t45 + local.get $$t45 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t46 + local.get $$t43 + local.get $$t46 + i32.or + local.set $$t47 + local.get $$t37 + i32.const 63 + i32.and + local.set $$t48 + local.get $$t48 + local.set $$t49 + local.get $$t47 + local.get $$t49 + i32.or + local.set $$t50 + local.get $$t50 + local.set $$ret_0 + i32.const 3 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 16 + local.set $$current_block + local.get $s.1 + i32.const 3 + i32.add + i32.load8_u align=1 + local.set $$t51 + local.get $$t51 + i32.const 128 + i32.lt_u + local.set $$t52 + local.get $$t52 + if + br $$Block_16 + else + br $$Block_18 + end + end + i32.const 17 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t2 + i32.const 7 + i32.and + local.set $$t53 + local.get $$t53 + local.set $$t54 + local.get $$t54 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t55 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t56 + local.get $$t56 + local.set $$t57 + local.get $$t57 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t58 + local.get $$t55 + local.get $$t58 + i32.or + local.set $$t59 + local.get $$t37 + i32.const 63 + i32.and + local.set $$t60 + local.get $$t60 + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t59 + local.get $$t62 + i32.or + local.set $$t63 + local.get $$t51 + i32.const 63 + i32.and + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t63 + local.get $$t65 + i32.or + local.set $$t66 + local.get $$t66 + local.set $$ret_0 + i32.const 4 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 19 + local.set $$current_block + i32.const 191 + local.get $$t51 + i32.lt_u + local.set $$t67 + local.get $$t67 + if + i32.const 17 + local.set $$block_selector + br $$BlockDisp + else + i32.const 18 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + ) + (func $unicode$utf8.EncodeRune (param $p.0 i32) (param $p.1 i32) (param $p.2 i32) (param $p.3 i32) (param $r i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 0 + end + i32.const 0 + local.set $$current_block + local.get $r + local.set $$t0 + local.get $$t0 + i32.const 127 + i32.le_u + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $r + i32.const 255 + i32.and + local.set $$t3 + local.get $$t2.1 + local.get $$t3 + i32.store8 align=1 + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load8_u align=1 + local.set $$t5 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t7 + local.get $$t7 + i32.const 255 + i32.and + local.set $$t8 + i32.const 192 + local.get $$t8 + i32.or + local.set $$t9 + local.get $$t6.1 + local.get $$t9 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $r + i32.const 255 + i32.and + local.set $$t11 + local.get $$t11 + i32.const 63 + i32.and + local.set $$t12 + i32.const 128 + local.get $$t12 + i32.or + local.set $$t13 + local.get $$t10.1 + local.get $$t13 + i32.store8 align=1 + i32.const 2 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + local.get $$t0 + i32.const 2047 + i32.le_u + local.set $$t14 + local.get $$t14 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_4 + end + end + i32.const 4 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load8_u align=1 + local.set $$t16 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + i32.const 65533 + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t18 + local.get $$t18 + i32.const 255 + i32.and + local.set $$t19 + i32.const 224 + local.get $$t19 + i32.or + local.set $$t20 + local.get $$t17.1 + local.get $$t20 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + i32.const 65533 + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t22 + local.get $$t22 + i32.const 255 + i32.and + local.set $$t23 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t24 + i32.const 128 + local.get $$t24 + i32.or + local.set $$t25 + local.get $$t21.1 + local.get $$t25 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + i32.const 65533 + i32.const 255 + i32.and + local.set $$t27 + local.get $$t27 + i32.const 63 + i32.and + local.set $$t28 + i32.const 128 + local.get $$t28 + i32.or + local.set $$t29 + local.get $$t26.1 + local.get $$t29 + i32.store8 align=1 + i32.const 3 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + local.get $$t0 + i32.const 1114111 + i32.gt_u + local.set $$t30 + local.get $$t30 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_6 + end + end + i32.const 6 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t31.1 + i32.load8_u align=1 + local.set $$t32 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t34 + local.get $$t34 + i32.const 255 + i32.and + local.set $$t35 + i32.const 224 + local.get $$t35 + i32.or + local.set $$t36 + local.get $$t33.1 + local.get $$t36 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t38 + local.get $$t38 + i32.const 255 + i32.and + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + i32.const 128 + local.get $$t40 + i32.or + local.set $$t41 + local.get $$t37.1 + local.get $$t41 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $r + i32.const 255 + i32.and + local.set $$t43 + local.get $$t43 + i32.const 63 + i32.and + local.set $$t44 + i32.const 128 + local.get $$t44 + i32.or + local.set $$t45 + local.get $$t42.1 + local.get $$t45 + i32.store8 align=1 + i32.const 3 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + i32.const 55296 + local.get $$t0 + i32.le_u + local.set $$t46 + local.get $$t46 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 8 + local.set $$current_block + local.get $$t0 + i32.const 65535 + i32.le_u + local.set $$t47 + local.get $$t47 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t0 + i32.const 57343 + i32.le_u + local.set $$t48 + br $$Block_9 + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t48 + end + local.set $$t49 + i32.const 10 + local.set $$current_block + local.get $$t49 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 11 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.1 + i32.load8_u align=1 + local.set $$t51 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $r + i64.const 18 + i32.wrap_i64 + i32.shr_s + local.set $$t53 + local.get $$t53 + i32.const 255 + i32.and + local.set $$t54 + i32.const 240 + local.get $$t54 + i32.or + local.set $$t55 + local.get $$t52.1 + local.get $$t55 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t57 + local.get $$t57 + i32.const 255 + i32.and + local.set $$t58 + local.get $$t58 + i32.const 63 + i32.and + local.set $$t59 + i32.const 128 + local.get $$t59 + i32.or + local.set $$t60 + local.get $$t56.1 + local.get $$t60 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t62 + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + local.get $$t63 + i32.const 63 + i32.and + local.set $$t64 + i32.const 128 + local.get $$t64 + i32.or + local.set $$t65 + local.get $$t61.1 + local.get $$t65 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $r + i32.const 255 + i32.and + local.set $$t67 + local.get $$t67 + i32.const 63 + i32.and + local.set $$t68 + i32.const 128 + local.get $$t68 + i32.or + local.set $$t69 + local.get $$t66.1 + local.get $$t69 + i32.store8 align=1 + i32.const 4 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + ) + (func $unicode$utf8.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $unicode$utf8.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $unicode$utf8.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$w42048$game.Board.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$w42048.UI.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 20 + call_indirect 0 (type $$onFree) + ) + (func $w42048.NewUI (export "w42048.NewUI") (param $board.0.0 i32) (param $board.0.1 i32) (param $board.1 i32) (param $board.2 i32) (param $pal.0 i32) (param $pal.1 i32) (param $pal.2 i32) (param $pal.3 i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t4.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $pal.0 + i32.store + local.get $$t0.1 + local.get $pal.1 + i32.store offset=4 + local.get $$t0.1 + local.get $pal.2 + i32.store offset=8 + local.get $$t0.1 + local.get $pal.3 + i32.store offset=12 + i32.const 56 + call $runtime.HeapAlloc + i32.const 1 + i32.const 21 + i32.const 40 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 0 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 24 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.set $$t4.3 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + local.get $$t2.1 + local.get $board.0.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t2.1 + local.get $board.0.1 + i32.store offset=4 + local.get $$t2.1 + local.get $board.1 + i32.store offset=8 + local.get $$t2.1 + local.get $board.2 + i32.store offset=12 + local.get $$t3.1 + local.get $$t4.0 + i32.store + local.get $$t3.1 + local.get $$t4.1 + i32.store offset=4 + local.get $$t3.1 + local.get $$t4.2 + i32.store offset=8 + local.get $$t3.1 + local.get $$t4.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w42048.Start (export "start") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0.0 i32) + (local $$t0.0.1 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 478194671 + call $w42048$game.New + local.set $$t0.2 + local.set $$t0.1 + local.set $$t0.0.1 + local.get $$t0.0.0 + call $runtime.Block.Release + local.set $$t0.0.0 + i32.const 31352 + i32.load + i32.const 31352 + i32.load offset=4 + i32.const 31352 + i32.load offset=8 + i32.const 31352 + i32.load offset=12 + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0 + local.get $$t1.0 + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.set $$t2.0 + local.get $$t0.0.0 + local.get $$t0.0.1 + local.get $$t0.1 + local.get $$t0.2 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + local.get $$t2.3 + call $w42048.NewUI + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + i32.const 31248 + local.get $$t3.0 + call $runtime.Block.Retain + i32.const 31248 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 31248 + local.get $$t3.1 + i32.store offset=4 + br $$BlockFnBody + end + end + end + local.get $$t0.0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w42048.Update (export "update") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 31248 + i32.load + call $runtime.Block.Retain + i32.const 31248 + i32.load offset=4 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $$t2 + i32.const 1 + i32.add + local.set $$t3 + local.get $$t1.1 + local.get $$t3 + i32.store + i32.const 31248 + i32.load + call $runtime.Block.Retain + i32.const 31248 + i32.load offset=4 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.0 + local.get $$t4.1 + call $w42048.UI.show + i32.const 31248 + i32.load + call $runtime.Block.Retain + i32.const 31248 + i32.load offset=4 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.0 + local.get $$t5.1 + call $w42048.UI.sound + i32.const 31248 + i32.load + call $runtime.Block.Retain + i32.const 31248 + i32.load offset=4 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + local.get $$t6.1 + call $w42048.UI.music + i32.const 31248 + i32.load + call $runtime.Block.Retain + i32.const 31248 + i32.load offset=4 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.0 + local.get $$t7.1 + call $w42048.UI.input + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + ) + (func $w42048.dotbg (param $x1 i32) (param $y1 i32) (param $w i32) (param $h i32) (param $s i32) (param $dc i32) (param $bg i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $x1 + else + local.get $$t0 + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t1 + local.get $w + i32.lt_s + local.set $$t2 + local.get $$t2 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t1 + local.get $s + i32.rem_s + local.set $$t3 + local.get $$t3 + i32.const 0 + i32.eq + local.set $$t4 + local.get $$t4 + if + br $$Block_9 + else + br $$Block_8 + end + end + i32.const 5 + local.set $$current_block + local.get $$t1 + i32.const 1 + i32.add + local.set $$t0 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + local.get $y1 + else + local.get $$t5 + end + local.set $$t6 + i32.const 6 + local.set $$current_block + local.get $$t6 + local.get $h + i32.lt_s + local.set $$t7 + local.get $$t7 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + local.get $$t1 + local.get $$t6 + local.get $dc + call $w42048.set + br $$Block_7 + end + i32.const 8 + local.set $$current_block + local.get $$t6 + i32.const 1 + i32.add + local.set $$t5 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 9 + local.set $$current_block + local.get $$t1 + local.get $$t6 + local.get $bg + call $w42048.set + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $$t6 + local.get $s + i32.rem_s + local.set $$t8 + local.get $$t8 + i32.const 0 + i32.eq + local.set $$t9 + local.get $$t9 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + ) + (func $w42048.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $w42048.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $w42048.init$guard + call $runtime.init + call $strconv.init + call $syscall$wasm4.init + call $w42048$game.init + call $w42048$palettes.init + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $w42048.leftpad (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $c.0 i32) (param $c.1 i32) (param $c.2 i32) (param $w i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + local.get $w + local.get $$t0 + i32.sub + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.le_s + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $s.0 + call $runtime.Block.Retain + local.get $s.1 + local.get $s.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + br $$Block_4 + end + i32.const 3 + local.set $$current_block + local.get $$t3.0 + local.get $$t3.1 + local.get $$t3.2 + local.get $c.0 + local.get $c.1 + local.get $c.2 + call $$string.appendstr + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t5 + i32.const 1 + i32.add + local.set $$t6 + br $$Block_4 + end + i32.const 4 + local.set $$current_block + local.get $$t3.0 + local.get $$t3.1 + local.get $$t3.2 + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$string.appendstr + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + local.get $$t7.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32 i32 i32) + i32.const 0 + i32.const 14784 + i32.const 0 + else + local.get $$t4.0 + call $runtime.Block.Retain + local.get $$t4.1 + local.get $$t4.2 + end + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t6 + end + local.set $$t5 + i32.const 5 + local.set $$current_block + local.get $$t5 + local.get $$t1 + i32.lt_s + local.set $$t8 + local.get $$t8 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + ) + (func $w42048.log (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $syscall$wasm4.Trace + br $$BlockFnBody + end + end + end + ) + (func $w42048.play (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $s.3 i32) (param $s.4 i32) (param $s.5 i32) (param $s.6 i32) (param $s.7 i32) (param $s.8 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 52 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 36 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $s.0 + i32.store + local.get $$t0.1 + local.get $s.1 + i32.store offset=4 + local.get $$t0.1 + local.get $s.2 + i32.store offset=8 + local.get $$t0.1 + local.get $s.3 + i32.store offset=12 + local.get $$t0.1 + local.get $s.4 + i32.store offset=16 + local.get $$t0.1 + local.get $s.5 + i32.store offset=20 + local.get $$t0.1 + local.get $s.6 + i32.store offset=24 + local.get $$t0.1 + local.get $s.7 + i32.store offset=28 + local.get $$t0.1 + local.get $s.8 + i32.store offset=32 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i64.const 16 + i32.wrap_i64 + i32.shl + local.set $$t5 + local.get $$t2 + local.get $$t5 + i32.or + local.set $$t6 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load + local.set $$t8 + local.get $$t8 + i64.const 24 + i32.wrap_i64 + i32.shl + local.set $$t9 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 12 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + i64.const 16 + i32.wrap_i64 + i32.shl + local.set $$t12 + local.get $$t9 + local.get $$t12 + i32.or + local.set $$t13 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 16 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.1 + i32.load + local.set $$t15 + local.get $$t13 + local.get $$t15 + i32.or + local.set $$t16 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 20 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + i32.load + local.set $$t18 + local.get $$t18 + i64.const 8 + i32.wrap_i64 + i32.shl + local.set $$t19 + local.get $$t16 + local.get $$t19 + i32.or + local.set $$t20 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 28 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.load + local.set $$t22 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 32 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t24 + i64.const 2 + i32.wrap_i64 + i32.shl + local.set $$t25 + local.get $$t22 + local.get $$t25 + i32.or + local.set $$t26 + local.get $$t6 + local.set $$t27 + local.get $$t20 + local.set $$t28 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 24 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.1 + i32.load + local.set $$t30 + local.get $$t30 + local.set $$t31 + local.get $$t26 + local.set $$t32 + local.get $$t27 + local.get $$t28 + local.get $$t31 + local.get $$t32 + call $syscall$wasm4.Tone + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + ) + (func $w42048.set (param $x i32) (param $y i32) (param $c i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $c + call $syscall$wasm4.SetDrawColorsU16 + local.get $x + local.get $y + local.get $x + local.get $y + call $syscall$wasm4.LineI32 + br $$BlockFnBody + end + end + end + ) + (func $w42048.showTile (param $col i32) (param $row i32) (param $val i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t26.2 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t27.2 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $col + i32.const 41 + i32.mul + local.set $$t0 + i32.const 2 + local.get $$t0 + i32.add + local.set $$t1 + local.get $row + i32.const 32 + i32.mul + local.set $$t2 + i32.const 32 + local.get $$t2 + i32.add + local.set $$t3 + local.get $val + call $w42048.tileShadow + local.get $$t1 + i32.const 1 + i32.sub + local.set $$t4 + local.get $$t3 + i32.const 1 + i32.sub + local.set $$t5 + local.get $$t4 + local.get $$t5 + i32.const 35 + i32.const 27 + call $syscall$wasm4.RectI32 + local.get $$t1 + local.get $$t3 + i32.const 67 + call $w42048.set + i32.const 1 + call $syscall$wasm4.SetDrawColorsU16 + local.get $$t1 + i32.const 1 + i32.sub + local.set $$t6 + local.get $$t3 + i32.const 1 + i32.sub + local.set $$t7 + local.get $$t6 + local.get $$t3 + local.get $$t1 + local.get $$t7 + call $syscall$wasm4.LineI32 + i32.const 35 + i32.const 3 + i32.sub + local.set $$t8 + local.get $$t1 + local.get $$t8 + i32.add + local.set $$t9 + local.get $$t3 + i32.const 1 + i32.sub + local.set $$t10 + i32.const 35 + i32.const 2 + i32.sub + local.set $$t11 + local.get $$t1 + local.get $$t11 + i32.add + local.set $$t12 + local.get $$t9 + local.get $$t10 + local.get $$t12 + local.get $$t3 + call $syscall$wasm4.LineI32 + local.get $$t1 + i32.const 1 + i32.sub + local.set $$t13 + local.get $$t3 + i32.const 1 + i32.sub + local.set $$t14 + local.get $$t13 + local.get $$t14 + i32.const 1 + call $w42048.set + i32.const 35 + i32.const 2 + i32.sub + local.set $$t15 + local.get $$t1 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t3 + i32.const 1 + i32.sub + local.set $$t17 + local.get $$t16 + local.get $$t17 + i32.const 1 + call $w42048.set + local.get $$t1 + i32.const 1 + i32.sub + local.set $$t18 + local.get $$t3 + i32.const 27 + i32.add + local.set $$t19 + local.get $$t19 + i32.const 2 + i32.sub + local.set $$t20 + local.get $$t18 + local.get $$t20 + i32.const 1 + call $w42048.set + i32.const 35 + i32.const 2 + i32.sub + local.set $$t21 + local.get $$t1 + local.get $$t21 + i32.add + local.set $$t22 + local.get $$t3 + i32.const 27 + i32.add + local.set $$t23 + local.get $$t23 + i32.const 2 + i32.sub + local.set $$t24 + local.get $$t22 + local.get $$t24 + i32.const 1 + call $w42048.set + local.get $val + call $w42048.tileColor + i32.const 0 + i32.const 34883 + i32.const 4 + local.get $$t1 + local.get $$t3 + call $syscall$wasm4.Text + local.get $val + local.set $$t25 + local.get $$t25 + call $strconv.Itoa + local.set $$t26.2 + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + local.get $$t26.1 + local.get $$t26.2 + i32.const 0 + i32.const 14965 + i32.const 1 + i32.const 4 + call $w42048.leftpad + local.set $$t27.2 + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t3 + i32.const 8 + i32.add + local.set $$t28 + local.get $$t27.0 + local.get $$t27.1 + local.get $$t27.2 + local.get $$t1 + local.get $$t28 + call $syscall$wasm4.Text + i32.const 8 + i32.const 2 + i32.mul + local.set $$t29 + local.get $$t3 + local.get $$t29 + i32.add + local.set $$t30 + i32.const 0 + i32.const 34883 + i32.const 4 + local.get $$t1 + local.get $$t30 + call $syscall$wasm4.Text + br $$BlockFnBody + end + end + end + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + ) + (func $w42048.tileColor (param $val i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 + end + i32.const 0 + local.set $$current_block + local.get $val + i32.const 2 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_3 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i32.const 33 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + i32.const 50 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $val + i32.const 4 + i32.eq + local.set $$t1 + local.get $$t1 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + i32.const 36 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $val + i32.const 8 + i32.eq + local.set $$t2 + local.get $$t2 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + i32.const 50 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + local.get $val + i32.const 16 + i32.eq + local.set $$t3 + local.get $$t3 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + i32.const 52 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $val + i32.const 32 + i32.eq + local.set $$t4 + local.get $$t4 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 50 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + local.get $val + i32.const 64 + i32.eq + local.set $$t5 + local.get $$t5 + if + i32.const 11 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_13 + end + end + i32.const 13 + local.set $$current_block + i32.const 64 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 14 + local.set $$current_block + local.get $val + i32.const 128 + i32.eq + local.set $$t6 + local.get $$t6 + if + i32.const 13 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_15 + end + end + i32.const 15 + local.set $$current_block + i32.const 66 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $val + i32.const 256 + i32.eq + local.set $$t7 + local.get $$t7 + if + i32.const 15 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_17 + end + end + i32.const 17 + local.set $$current_block + i32.const 67 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 18 + local.set $$current_block + local.get $val + i32.const 512 + i32.eq + local.set $$t8 + local.get $$t8 + if + i32.const 17 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_19 + end + end + i32.const 19 + local.set $$current_block + i32.const 52 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 20 + local.set $$current_block + local.get $val + i32.const 1024 + i32.eq + local.set $$t9 + local.get $$t9 + if + i32.const 19 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_21 + end + end + i32.const 21 + local.set $$current_block + i32.const 36 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 22 + local.set $$current_block + local.get $val + i32.const 2048 + i32.eq + local.set $$t10 + local.get $$t10 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + ) + (func $w42048.tileShadow (param $val i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 0 + end + i32.const 0 + local.set $$current_block + local.get $val + i32.const 2 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_3 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i32.const 67 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + i32.const 67 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $val + i32.const 4 + i32.eq + local.set $$t1 + local.get $$t1 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + i32.const 66 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $val + i32.const 8 + i32.eq + local.set $$t2 + local.get $$t2 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + i32.const 50 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + local.get $val + i32.const 16 + i32.eq + local.set $$t3 + local.get $$t3 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + i32.const 52 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $val + i32.const 32 + i32.eq + local.set $$t4 + local.get $$t4 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 50 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + local.get $val + i32.const 64 + i32.eq + local.set $$t5 + local.get $$t5 + if + i32.const 11 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_13 + end + end + i32.const 13 + local.set $$current_block + i32.const 67 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 14 + local.set $$current_block + local.get $val + i32.const 128 + i32.eq + local.set $$t6 + local.get $$t6 + if + i32.const 13 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_15 + end + end + i32.const 15 + local.set $$current_block + i32.const 66 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $val + i32.const 256 + i32.eq + local.set $$t7 + local.get $$t7 + if + i32.const 15 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_17 + end + end + i32.const 17 + local.set $$current_block + i32.const 36 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 18 + local.set $$current_block + local.get $val + i32.const 512 + i32.eq + local.set $$t8 + local.get $$t8 + if + i32.const 17 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_19 + end + end + i32.const 19 + local.set $$current_block + i32.const 68 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 20 + local.set $$current_block + local.get $val + i32.const 1024 + i32.eq + local.set $$t9 + local.get $$t9 + if + i32.const 19 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_21 + end + end + i32.const 21 + local.set $$current_block + i32.const 68 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 22 + local.set $$current_block + local.get $val + i32.const 2048 + i32.eq + local.set $$t10 + local.get $$t10 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + ) + (func $$$$$u32$$.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + i32.add + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$i32.$slice.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$i32.$slice.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 23 + call_indirect 0 (type $$onFree) + ) + (func $$w42048$game.board.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 22 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 12 + i32.add + i32.const 24 + call_indirect 0 (type $$onFree) + ) + (func $w42048$game.New (param $seed i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0.0 i32) + (local $$ret_0.0.1 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1.0 i32) + (local $$t4.1.1 i32) + (local $$t5.0.0 i32) + (local $$t5.0.1 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 56 + call $runtime.HeapAlloc + i32.const 1 + i32.const 25 + i32.const 40 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 12 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + call $w42048$game.newMatrix + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + i32.const 1103515245 + i32.const 12345 + i32.const -2147483648 + local.get $seed + call $w42048$game.lcg + local.set $$t4.1.1 + local.get $$t4.1.0 + call $runtime.Block.Release + local.set $$t4.1.0 + local.set $$t4.0 + local.get $$t1.1 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t1.1 + local.get $$t2.1 + i32.store offset=4 + local.get $$t1.1 + local.get $$t2.2 + i32.store offset=8 + local.get $$t1.1 + local.get $$t2.3 + i32.store offset=12 + local.get $$t3.1 + local.get $$t4.0 + i32.store + local.get $$t3.1 + local.get $$t4.1.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.load offset=4 align=1 + call $runtime.Block.Release + i32.store offset=4 align=1 + local.get $$t3.1 + local.get $$t4.1.1 + i32.store offset=8 + local.get $$t0.0 + local.get $$t0.1 + call $w42048$game.board.Add + local.get $$t0.0 + local.get $$t0.1 + call $w42048$game.board.Add + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const -3 + i32.const 0 + call $runtime.getItab + i32.const 0 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0.1 + local.get $$t5.0.0 + call $runtime.Block.Release + local.set $$t5.0.0 + local.get $$t5.0.0 + call $runtime.Block.Retain + local.get $$t5.0.1 + local.get $$t5.1 + local.get $$t5.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.set $$ret_0.0.1 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.set $$ret_0.0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0.0 + call $runtime.Block.Retain + local.get $$ret_0.0.1 + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.1.0 + call $runtime.Block.Release + local.get $$t5.0.0 + call $runtime.Block.Release + ) + (func $w42048$game.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $w42048$game.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $w42048$game.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $w42048$game.lcg$1 (param $r.0 i32) (param $r.1 i32) (param $a.0 i32) (param $a.1 i32) (param $c.0 i32) (param $c.1 i32) (param $m.0 i32) (param $m.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $a.1 + i32.load + local.set $$t0 + local.get $r.1 + i32.load + local.set $$t1 + local.get $$t0 + local.get $$t1 + i32.mul + local.set $$t2 + local.get $c.1 + i32.load + local.set $$t3 + local.get $$t2 + local.get $$t3 + i32.add + local.set $$t4 + local.get $m.1 + i32.load + local.set $$t5 + local.get $$t4 + local.get $$t5 + i32.rem_u + local.set $$t6 + local.get $r.1 + local.get $$t6 + i32.store + local.get $r.1 + i32.load + local.set $$t7 + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w42048$game.lcg$1.$warpfn (result i32) + global.get $$wa.runtime.closure_data + i32.load + global.get $$wa.runtime.closure_data + i32.load offset=4 + global.get $$wa.runtime.closure_data + i32.load offset=8 + global.get $$wa.runtime.closure_data + i32.load offset=12 + global.get $$wa.runtime.closure_data + i32.load offset=16 + global.get $$wa.runtime.closure_data + i32.load offset=20 + global.get $$wa.runtime.closure_data + i32.load offset=24 + global.get $$wa.runtime.closure_data + i32.load offset=28 + i32.const 0 + global.set $$wa.runtime.closure_data + call $w42048$game.lcg$1 + ) + (func $$u32.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$u32.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 27 + call_indirect 0 (type $$onFree) + ) + (func $$w42048$game.lcg$1.$warpdata.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 28 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 8 + i32.add + i32.const 28 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 28 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 24 + i32.add + i32.const 28 + call_indirect 0 (type $$onFree) + ) + (func $w42048$game.lcg (param $a i32) (param $c i32) (param $m i32) (param $seed i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1.0 i32) + (local $$ret_0.1.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1.0 i32) + (local $$t4.1.1 i32) + (local $$t5.0.0 i32) + (local $$t5.0.1 i32) + (local $$t5.1.0 i32) + (local $$t5.1.1 i32) + (local $$t5.2.0 i32) + (local $$t5.2.1 i32) + (local $$t5.3.0 i32) + (local $$t5.3.1 i32) + (local $$t6.0 i32) + (local $$t6.1.0 i32) + (local $$t6.1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $a + i32.store + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + local.get $c + i32.store + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.1 + local.get $m + i32.store + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + local.get $seed + i32.store + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + local.set $$t5.0.1 + local.get $$t5.0.0 + call $runtime.Block.Release + local.set $$t5.0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$t5.1.1 + local.get $$t5.1.0 + call $runtime.Block.Release + local.set $$t5.1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.set $$t5.2.1 + local.get $$t5.2.0 + call $runtime.Block.Release + local.set $$t5.2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + local.set $$t5.3.1 + local.get $$t5.3.0 + call $runtime.Block.Release + local.set $$t5.3.0 + i32.const 26 + local.set $$t4.0 + i32.const 48 + call $runtime.HeapAlloc + i32.const 1 + i32.const 29 + i32.const 32 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t4.1.1 + local.get $$t4.1.0 + call $runtime.Block.Release + local.set $$t4.1.0 + local.get $$t4.1.1 + local.get $$t5.0.0 + call $runtime.Block.Retain + local.get $$t4.1.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t4.1.1 + local.get $$t5.0.1 + i32.store offset=4 + local.get $$t4.1.1 + local.get $$t5.1.0 + call $runtime.Block.Retain + local.get $$t4.1.1 + i32.load offset=8 align=1 + call $runtime.Block.Release + i32.store offset=8 align=1 + local.get $$t4.1.1 + local.get $$t5.1.1 + i32.store offset=12 + local.get $$t4.1.1 + local.get $$t5.2.0 + call $runtime.Block.Retain + local.get $$t4.1.1 + i32.load offset=16 align=1 + call $runtime.Block.Release + i32.store offset=16 align=1 + local.get $$t4.1.1 + local.get $$t5.2.1 + i32.store offset=20 + local.get $$t4.1.1 + local.get $$t5.3.0 + call $runtime.Block.Retain + local.get $$t4.1.1 + i32.load offset=24 align=1 + call $runtime.Block.Release + i32.store offset=24 align=1 + local.get $$t4.1.1 + local.get $$t5.3.1 + i32.store offset=28 + local.get $$t5.3.0 + call $runtime.Block.Release + local.get $$t5.2.0 + call $runtime.Block.Release + local.get $$t5.1.0 + call $runtime.Block.Release + local.get $$t5.0.0 + call $runtime.Block.Release + i32.const 0 + local.set $$t5.0.0 + i32.const 0 + local.set $$t5.0.1 + i32.const 0 + local.set $$t5.1.0 + i32.const 0 + local.set $$t5.1.1 + i32.const 0 + local.set $$t5.2.0 + i32.const 0 + local.set $$t5.2.1 + i32.const 0 + local.set $$t5.3.0 + i32.const 0 + local.set $$t5.3.1 + local.get $$t4.0 + local.get $$t4.1.0 + call $runtime.Block.Retain + local.get $$t4.1.1 + local.set $$t6.1.1 + local.get $$t6.1.0 + call $runtime.Block.Release + local.set $$t6.1.0 + local.set $$t6.0 + local.get $$t6.0 + local.get $$t6.1.0 + call $runtime.Block.Retain + local.get $$t6.1.1 + local.set $$ret_0.1.1 + local.get $$ret_0.1.0 + call $runtime.Block.Release + local.set $$ret_0.1.0 + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + local.get $$ret_0.1.0 + call $runtime.Block.Retain + local.get $$ret_0.1.1 + local.get $$ret_0.1.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.1.0 + call $runtime.Block.Release + local.get $$t5.3.0 + call $runtime.Block.Release + local.get $$t5.2.0 + call $runtime.Block.Release + local.get $$t5.1.0 + call $runtime.Block.Release + local.get $$t5.0.0 + call $runtime.Block.Release + local.get $$t6.1.0 + call $runtime.Block.Release + ) + (func $w42048$game.mergeElements (param $old.0 i32) (param $old.1 i32) (param $old.2 i32) (param $old.3 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 0 + end + i32.const 0 + local.set $$current_block + local.get $old.2 + local.set $$t0 + local.get $$t0 + i32.const 4 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t0 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.get $$t0 + local.get $$t0 + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $old.0 + call $runtime.Block.Retain + local.get $old.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t2.1 + local.get $$t4 + i32.store + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $old.0 + call $runtime.Block.Retain + local.get $old.1 + i32.const 4 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 4 + local.get $$t8 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load + local.set $$t10 + local.get $$t7 + local.get $$t10 + i32.eq + local.set $$t11 + local.get $$t11 + if + br $$Block_3 + else + br $$Block_5 + end + end + i32.const 2 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t12 + end + local.set $$t8 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t13 + end + local.set $$t5 + i32.const 3 + local.set $$current_block + local.get $old.2 + local.set $$t14 + local.get $$t5 + local.get $$t14 + i32.lt_s + local.set $$t15 + local.get $$t15 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 4 + local.get $$t8 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $old.0 + call $runtime.Block.Retain + local.get $old.1 + i32.const 4 + local.get $$t5 + i32.mul + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + i32.load + local.set $$t18 + local.get $$t16.1 + i32.load + local.set $$t19 + local.get $$t19 + local.get $$t18 + i32.add + local.set $$t20 + local.get $$t16.1 + local.get $$t20 + i32.store + br $$Block_4 + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t21 + end + local.set $$t12 + i32.const 5 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t13 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $$t8 + i32.const 1 + i32.add + local.set $$t21 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 4 + local.get $$t21 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $old.0 + call $runtime.Block.Retain + local.get $old.1 + i32.const 4 + local.get $$t5 + i32.mul + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t22.1 + local.get $$t24 + i32.store + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + ) + (func $$i32.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if(result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 4 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + end + local.get $src + i32.load + local.set $item + local.get $dest + local.get $item + i32.store + local.get $src + i32.const 4 + i32.add + local.set $src + local.get $dest + i32.const 4 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end + end + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 4 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load + local.set $item + local.get $dest + local.get $item + i32.store + local.get $src + i32.const 4 + i32.add + local.set $src + local.get $dest + i32.const 4 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load + local.set $item + local.get $dest + local.get $item + i32.store + local.get $src + i32.const 4 + i32.add + local.set $src + local.get $dest + i32.const 4 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + end + ) + (func $w42048$game.movedRow (param $elems.0 i32) (param $elems.1 i32) (param $elems.2 i32) (param $elems.3 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t9.3 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t16.2 i32) + (local $$t16.3 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t20.2 i32) + (local $$t20.3 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t21.2 i32) + (local $$t21.3 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t22.2 i32) + (local $$t22.3 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 0 + end + i32.const 0 + local.set $$current_block + i32.const 16 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 0 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 0 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $elems.0 + call $runtime.Block.Retain + local.get $elems.1 + i32.const 4 + local.get $$t2 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.eq + i32.eqz + local.set $$t5 + local.get $$t5 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $$t6.2 + local.set $$t7 + i32.const 4 + local.get $$t7 + i32.sub + local.set $$t8 + br $$Block_7 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + else + local.get $$t9.0 + call $runtime.Block.Retain + local.get $$t9.1 + local.get $$t9.2 + local.get $$t9.3 + end + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t10 + end + local.set $$t2 + i32.const 3 + local.set $$current_block + local.get $$t2 + i32.const 4 + i32.lt_s + local.set $$t11 + local.get $$t11 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $elems.0 + call $runtime.Block.Retain + local.get $elems.1 + i32.const 4 + local.get $$t2 + i32.mul + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load + local.set $$t13 + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + local.get $$t13 + i32.store + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t16.3 + local.set $$t16.2 + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + local.get $$t16.0 + local.get $$t16.1 + local.get $$t16.2 + local.get $$t16.3 + call $$i32.$slice.append + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + br $$Block_4 + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + else + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + local.get $$t17.2 + local.get $$t17.3 + end + local.set $$t9.3 + local.set $$t9.2 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + i32.const 5 + local.set $$current_block + local.get $$t2 + i32.const 1 + i32.add + local.set $$t10 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.1 + i32.const 0 + i32.store + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t20.3 + local.set $$t20.2 + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t21.0 + local.get $$t21.1 + local.get $$t21.2 + local.get $$t21.3 + local.get $$t20.0 + local.get $$t20.1 + local.get $$t20.2 + local.get $$t20.3 + call $$i32.$slice.append + local.set $$t22.3 + local.set $$t22.2 + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t23 + i32.const 1 + i32.add + local.set $$t24 + br $$Block_7 + end + i32.const 7 + local.set $$current_block + local.get $$t21.0 + local.get $$t21.1 + local.get $$t21.2 + local.get $$t21.3 + call $w42048$game.mergeElements + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.0 + call $runtime.Block.Retain + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + else + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + local.get $$t22.2 + local.get $$t22.3 + end + local.set $$t21.3 + local.set $$t21.2 + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t24 + end + local.set $$t23 + i32.const 8 + local.set $$current_block + local.get $$t23 + local.get $$t8 + i32.lt_s + local.set $$t26 + local.get $$t26 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + ) + (func $$i32.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$i32.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 30 + call_indirect 0 (type $$onFree) + ) + (func $$i32.$slice.$array1.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 31 + call_indirect 0 (type $$onFree) + ) + (func $$i32.$slice.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item.0 i32) + (local $item.1 i32) + (local $item.2 i32) + (local $item.3 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if(result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 16 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + end + local.get $src + i32.load + call $runtime.Block.Retain + local.get $src + i32.load offset=4 + local.get $src + i32.load offset=8 + local.get $src + i32.load offset=12 + local.set $item.3 + local.set $item.2 + local.set $item.1 + local.get $item.0 + call $runtime.Block.Release + local.set $item.0 + local.get $dest + local.get $item.0 + call $runtime.Block.Retain + local.get $dest + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $dest + local.get $item.1 + i32.store offset=4 + local.get $dest + local.get $item.2 + i32.store offset=8 + local.get $dest + local.get $item.3 + i32.store offset=12 + local.get $src + i32.const 16 + i32.add + local.set $src + local.get $dest + i32.const 16 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end + end + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 16 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 31 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load + call $runtime.Block.Retain + local.get $src + i32.load offset=4 + local.get $src + i32.load offset=8 + local.get $src + i32.load offset=12 + local.set $item.3 + local.set $item.2 + local.set $item.1 + local.get $item.0 + call $runtime.Block.Release + local.set $item.0 + local.get $dest + local.get $item.0 + call $runtime.Block.Retain + local.get $dest + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $dest + local.get $item.1 + i32.store offset=4 + local.get $dest + local.get $item.2 + i32.store offset=8 + local.get $dest + local.get $item.3 + i32.store offset=12 + local.get $src + i32.const 16 + i32.add + local.set $src + local.get $dest + i32.const 16 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load + call $runtime.Block.Retain + local.get $src + i32.load offset=4 + local.get $src + i32.load offset=8 + local.get $src + i32.load offset=12 + local.set $item.3 + local.set $item.2 + local.set $item.1 + local.get $item.0 + call $runtime.Block.Release + local.set $item.0 + local.get $dest + local.get $item.0 + call $runtime.Block.Retain + local.get $dest + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $dest + local.get $item.1 + i32.store offset=4 + local.get $dest + local.get $item.2 + i32.store offset=8 + local.get $dest + local.get $item.3 + i32.store offset=12 + local.get $src + i32.const 16 + i32.add + local.set $src + local.get $dest + i32.const 16 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + end + local.get $item.0 + call $runtime.Block.Release + ) + (func $w42048$game.newMatrix (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t7.3 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + i32.const 16 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 0 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 0 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 32 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t5.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t5.1 + local.get $$t3.2 + i32.store offset=8 + local.get $$t5.1 + local.get $$t3.3 + i32.store offset=12 + local.get $$t4.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t7.0 + local.get $$t7.1 + local.get $$t7.2 + local.get $$t7.3 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + call $$i32.$slice.$slice.append + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t9 + i32.const 1 + i32.add + local.set $$t10 + br $$Block_2 + end + i32.const 2 + local.set $$current_block + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + local.get $$t7.2 + local.get $$t7.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + else + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + end + local.set $$t7.3 + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t10 + end + local.set $$t9 + i32.const 3 + local.set $$current_block + local.get $$t9 + i32.const 4 + i32.lt_s + local.set $$t11 + local.get $$t11 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + ) + (func $w42048$game.reverseRow (param $arr.0 i32) (param $arr.1 i32) (param $arr.2 i32) (param $arr.3 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t9.3 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t10.2 i32) + (local $$t10.3 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12 i32) + (local $$t13 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + i32.const 16 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 0 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 0 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $arr.2 + local.set $$t2 + local.get $$t2 + i32.const 1 + i32.sub + local.set $$t3 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $arr.0 + call $runtime.Block.Retain + local.get $arr.1 + i32.const 4 + local.get $$t4 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + local.set $$t6 + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + local.get $$t6 + i32.store + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t9.3 + local.set $$t9.2 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t10.0 + local.get $$t10.1 + local.get $$t10.2 + local.get $$t10.3 + local.get $$t9.0 + local.get $$t9.1 + local.get $$t9.2 + local.get $$t9.3 + call $$i32.$slice.append + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t4 + i32.const 1 + i32.sub + local.set $$t12 + br $$Block_2 + end + i32.const 2 + local.set $$current_block + local.get $$t10.0 + call $runtime.Block.Retain + local.get $$t10.1 + local.get $$t10.2 + local.get $$t10.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + else + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + end + local.set $$t10.3 + local.set $$t10.2 + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $$t3 + else + local.get $$t12 + end + local.set $$t4 + i32.const 3 + local.set $$current_block + local.get $$t4 + i32.const 0 + i32.ge_s + local.set $$t13 + local.get $$t13 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + ) + (func $w42048$palettes.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t7.3 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t9.3 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + (local $$t13.3 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t15.2 i32) + (local $$t15.3 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t19.2 i32) + (local $$t19.3 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t21.2 i32) + (local $$t21.3 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t22.2 i32) + (local $$t22.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $w42048$palettes.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $w42048$palettes.init$guard + i32.const 176 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 160 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + i32.const 31272 + i32.load + i32.const 31272 + i32.load offset=4 + i32.const 31272 + i32.load offset=8 + i32.const 31272 + i32.load offset=12 + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + local.get $$t2.1 + local.get $$t3.0 + i32.store + local.get $$t2.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t3.2 + i32.store offset=8 + local.get $$t2.1 + local.get $$t3.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 1 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + i32.const 31288 + i32.load + i32.const 31288 + i32.load offset=4 + i32.const 31288 + i32.load offset=8 + i32.const 31288 + i32.load offset=12 + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0 + local.get $$t4.1 + local.get $$t5.0 + i32.store + local.get $$t4.1 + local.get $$t5.1 + i32.store offset=4 + local.get $$t4.1 + local.get $$t5.2 + i32.store offset=8 + local.get $$t4.1 + local.get $$t5.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 2 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + i32.const 31304 + i32.load + i32.const 31304 + i32.load offset=4 + i32.const 31304 + i32.load offset=8 + i32.const 31304 + i32.load offset=12 + local.set $$t7.3 + local.set $$t7.2 + local.set $$t7.1 + local.set $$t7.0 + local.get $$t6.1 + local.get $$t7.0 + i32.store + local.get $$t6.1 + local.get $$t7.1 + i32.store offset=4 + local.get $$t6.1 + local.get $$t7.2 + i32.store offset=8 + local.get $$t6.1 + local.get $$t7.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 3 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + i32.const 31320 + i32.load + i32.const 31320 + i32.load offset=4 + i32.const 31320 + i32.load offset=8 + i32.const 31320 + i32.load offset=12 + local.set $$t9.3 + local.set $$t9.2 + local.set $$t9.1 + local.set $$t9.0 + local.get $$t8.1 + local.get $$t9.0 + i32.store + local.get $$t8.1 + local.get $$t9.1 + i32.store offset=4 + local.get $$t8.1 + local.get $$t9.2 + i32.store offset=8 + local.get $$t8.1 + local.get $$t9.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 4 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + i32.const 31336 + i32.load + i32.const 31336 + i32.load offset=4 + i32.const 31336 + i32.load offset=8 + i32.const 31336 + i32.load offset=12 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t10.1 + local.get $$t11.0 + i32.store + local.get $$t10.1 + local.get $$t11.1 + i32.store offset=4 + local.get $$t10.1 + local.get $$t11.2 + i32.store offset=8 + local.get $$t10.1 + local.get $$t11.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 5 + i32.mul + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + i32.const 31352 + i32.load + i32.const 31352 + i32.load offset=4 + i32.const 31352 + i32.load offset=8 + i32.const 31352 + i32.load offset=12 + local.set $$t13.3 + local.set $$t13.2 + local.set $$t13.1 + local.set $$t13.0 + local.get $$t12.1 + local.get $$t13.0 + i32.store + local.get $$t12.1 + local.get $$t13.1 + i32.store offset=4 + local.get $$t12.1 + local.get $$t13.2 + i32.store offset=8 + local.get $$t12.1 + local.get $$t13.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 6 + i32.mul + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + i32.const 31368 + i32.load + i32.const 31368 + i32.load offset=4 + i32.const 31368 + i32.load offset=8 + i32.const 31368 + i32.load offset=12 + local.set $$t15.3 + local.set $$t15.2 + local.set $$t15.1 + local.set $$t15.0 + local.get $$t14.1 + local.get $$t15.0 + i32.store + local.get $$t14.1 + local.get $$t15.1 + i32.store offset=4 + local.get $$t14.1 + local.get $$t15.2 + i32.store offset=8 + local.get $$t14.1 + local.get $$t15.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 7 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + i32.const 31384 + i32.load + i32.const 31384 + i32.load offset=4 + i32.const 31384 + i32.load offset=8 + i32.const 31384 + i32.load offset=12 + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.set $$t17.0 + local.get $$t16.1 + local.get $$t17.0 + i32.store + local.get $$t16.1 + local.get $$t17.1 + i32.store offset=4 + local.get $$t16.1 + local.get $$t17.2 + i32.store offset=8 + local.get $$t16.1 + local.get $$t17.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 8 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + i32.const 31400 + i32.load + i32.const 31400 + i32.load offset=4 + i32.const 31400 + i32.load offset=8 + i32.const 31400 + i32.load offset=12 + local.set $$t19.3 + local.set $$t19.2 + local.set $$t19.1 + local.set $$t19.0 + local.get $$t18.1 + local.get $$t19.0 + i32.store + local.get $$t18.1 + local.get $$t19.1 + i32.store offset=4 + local.get $$t18.1 + local.get $$t19.2 + i32.store offset=8 + local.get $$t18.1 + local.get $$t19.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 9 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + i32.const 31416 + i32.load + i32.const 31416 + i32.load offset=4 + i32.const 31416 + i32.load offset=8 + i32.const 31416 + i32.load offset=12 + local.set $$t21.3 + local.set $$t21.2 + local.set $$t21.1 + local.set $$t21.0 + local.get $$t20.1 + local.get $$t21.0 + i32.store + local.get $$t20.1 + local.get $$t21.1 + i32.store offset=4 + local.get $$t20.1 + local.get $$t21.2 + i32.store offset=8 + local.get $$t20.1 + local.get $$t21.3 + i32.store offset=12 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + i32.const 10 + i32.const 0 + i32.sub + i32.const 10 + i32.const 0 + i32.sub + local.set $$t22.3 + local.set $$t22.2 + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + i32.const 31256 + local.get $$t22.0 + call $runtime.Block.Retain + i32.const 31256 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 31256 + local.get $$t22.1 + i32.store offset=4 + i32.const 31256 + local.get $$t22.2 + i32.store offset=8 + i32.const 31256 + local.get $$t22.3 + i32.store offset=12 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + ) + (func $w42048.UI.GetPad (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + call $syscall$wasm4.GetGamePad1 + local.set $$t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w42048.UI.beat (param $this.0 i32) (param $this.1 i32) (param $n i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $$t1 + local.get $n + i32.rem_u + local.set $$t2 + local.get $$t2 + i32.const 0 + i32.eq + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $w42048.UI.btn1 (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.GetPad + local.set $$t0 + local.get $$t0 + i32.const 1 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load8_u align=1 + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.and + local.set $$t5 + local.get $$t5 + i32.const 0 + i32.eq + local.set $$t6 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t6 + end + local.set $$t7 + i32.const 2 + local.set $$current_block + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w42048.UI.btn2 (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.GetPad + local.set $$t0 + local.get $$t0 + i32.const 2 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load8_u align=1 + local.set $$t4 + local.get $$t4 + i32.const 2 + i32.and + local.set $$t5 + local.get $$t5 + i32.const 0 + i32.eq + local.set $$t6 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t6 + end + local.set $$t7 + i32.const 2 + local.set $$current_block + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w42048.UI.down (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.GetPad + local.set $$t0 + local.get $$t0 + i32.const 128 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load8_u align=1 + local.set $$t4 + local.get $$t4 + i32.const 128 + i32.and + local.set $$t5 + local.get $$t5 + i32.const 0 + i32.eq + local.set $$t6 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t6 + end + local.set $$t7 + i32.const 2 + local.set $$current_block + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w42048.UI.input (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0.0 i32) + (local $$t4.0.1 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0.0 i32) + (local $$t6.0.1 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0.0 i32) + (local $$t9.0.1 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0.0 i32) + (local $$t12.0.1 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t13 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0.0 i32) + (local $$t15.0.1 i32) + (local $$t15.1 i32) + (local $$t15.2 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0.0 i32) + (local $$t18.0.1 i32) + (local $$t18.1 i32) + (local $$t18.2 i32) + (local $$t19 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.btn1 + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_3 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + call $syscall$wasm4.GetGamePad1 + local.set $$t2 + local.get $$t1.1 + local.get $$t2 + i32.store8 align=1 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i32.const 0 + i32.const 34887 + i32.const 4 + call $w42048.log + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + call $runtime.Block.Retain + local.get $$t3.1 + i32.load offset=4 + local.get $$t3.1 + i32.load offset=8 + local.get $$t3.1 + i32.load offset=12 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0.1 + local.get $$t4.0.0 + call $runtime.Block.Release + local.set $$t4.0.0 + local.get $$t4.0.0 + local.get $$t4.0.1 + i32.const 4 + local.get $$t4.1 + i32.load offset=16 + call_indirect 0 (type $$$fnSig4) + local.get $this.0 + local.get $this.1 + call $w42048.UI.randomPalette + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + i32.const 0 + i32.const 34891 + i32.const 4 + call $w42048.log + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + call $runtime.Block.Retain + local.get $$t5.1 + i32.load offset=4 + local.get $$t5.1 + i32.load offset=8 + local.get $$t5.1 + i32.load offset=12 + local.set $$t6.2 + local.set $$t6.1 + local.set $$t6.0.1 + local.get $$t6.0.0 + call $runtime.Block.Release + local.set $$t6.0.0 + local.get $$t6.0.0 + local.get $$t6.0.1 + i32.const 5 + local.get $$t6.1 + i32.load offset=16 + call_indirect 0 (type $$$fnSig4) + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.btn2 + local.set $$t7 + local.get $$t7 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + i32.const 0 + i32.const 34895 + i32.const 4 + call $w42048.log + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + call $runtime.Block.Retain + local.get $$t8.1 + i32.load offset=4 + local.get $$t8.1 + i32.load offset=8 + local.get $$t8.1 + i32.load offset=12 + local.set $$t9.2 + local.set $$t9.1 + local.set $$t9.0.1 + local.get $$t9.0.0 + call $runtime.Block.Release + local.set $$t9.0.0 + local.get $$t9.0.0 + local.get $$t9.0.1 + i32.const 0 + local.get $$t9.1 + i32.load offset=16 + call_indirect 0 (type $$$fnSig4) + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.up + local.set $$t10 + local.get $$t10 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + i32.const 0 + i32.const 34899 + i32.const 4 + call $w42048.log + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.load + call $runtime.Block.Retain + local.get $$t11.1 + i32.load offset=4 + local.get $$t11.1 + i32.load offset=8 + local.get $$t11.1 + i32.load offset=12 + local.set $$t12.2 + local.set $$t12.1 + local.set $$t12.0.1 + local.get $$t12.0.0 + call $runtime.Block.Release + local.set $$t12.0.0 + local.get $$t12.0.0 + local.get $$t12.0.1 + i32.const 1 + local.get $$t12.1 + i32.load offset=16 + call_indirect 0 (type $$$fnSig4) + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.down + local.set $$t13 + local.get $$t13 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + i32.const 0 + i32.const 34903 + i32.const 4 + call $w42048.log + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.1 + i32.load + call $runtime.Block.Retain + local.get $$t14.1 + i32.load offset=4 + local.get $$t14.1 + i32.load offset=8 + local.get $$t14.1 + i32.load offset=12 + local.set $$t15.2 + local.set $$t15.1 + local.set $$t15.0.1 + local.get $$t15.0.0 + call $runtime.Block.Release + local.set $$t15.0.0 + local.get $$t15.0.0 + local.get $$t15.0.1 + i32.const 2 + local.get $$t15.1 + i32.load offset=16 + call_indirect 0 (type $$$fnSig4) + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.right + local.set $$t16 + local.get $$t16 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 0 + i32.const 34907 + i32.const 4 + call $w42048.log + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + i32.load + call $runtime.Block.Retain + local.get $$t17.1 + i32.load offset=4 + local.get $$t17.1 + i32.load offset=8 + local.get $$t17.1 + i32.load offset=12 + local.set $$t18.2 + local.set $$t18.1 + local.set $$t18.0.1 + local.get $$t18.0.0 + call $runtime.Block.Release + local.set $$t18.0.0 + local.get $$t18.0.0 + local.get $$t18.0.1 + i32.const 3 + local.get $$t18.1 + i32.load offset=16 + call_indirect 0 (type $$$fnSig4) + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.left + local.set $$t19 + local.get $$t19 + if + i32.const 11 + local.set $$block_selector + br $$BlockDisp + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0.0 + call $runtime.Block.Release + ) + (func $w42048.UI.left (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.GetPad + local.set $$t0 + local.get $$t0 + i32.const 16 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load8_u align=1 + local.set $$t4 + local.get $$t4 + i32.const 16 + i32.and + local.set $$t5 + local.get $$t5 + i32.const 0 + i32.eq + local.set $$t6 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t6 + end + local.set $$t7 + i32.const 2 + local.set $$current_block + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w42048.UI.music (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t11.4 i32) + (local $$t11.5 i32) + (local $$t11.6 i32) + (local $$t11.7 i32) + (local $$t11.8 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t22.2 i32) + (local $$t22.3 i32) + (local $$t22.4 i32) + (local $$t22.5 i32) + (local $$t22.6 i32) + (local $$t22.7 i32) + (local $$t22.8 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t34.2 i32) + (local $$t34.3 i32) + (local $$t34.4 i32) + (local $$t34.5 i32) + (local $$t34.6 i32) + (local $$t34.7 i32) + (local $$t34.8 i32) + (local $$t35 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + local.get $this.1 + i32.const 24 + call $w42048.UI.beat + local.set $$t0 + local.get $$t0 + if + br $$Block_3 + else + br $$Block_5 + end + end + i32.const 3 + local.set $$current_block + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + i32.const 52 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 36 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 0 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 8 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 12 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 20 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 24 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 28 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 32 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t2.1 + i32.const 40 + i32.store + local.get $$t3.1 + i32.const 0 + i32.store + local.get $$t4.1 + i32.const 0 + i32.store + local.get $$t5.1 + i32.const 8 + i32.store + local.get $$t6.1 + i32.const 0 + i32.store + local.get $$t7.1 + i32.const 0 + i32.store + local.get $$t8.1 + i32.const 0 + i32.store + local.get $$t9.1 + i32.const 2 + i32.store + local.get $$t10.1 + i32.const 0 + i32.store + local.get $$t1.1 + i32.load + local.get $$t1.1 + i32.load offset=4 + local.get $$t1.1 + i32.load offset=8 + local.get $$t1.1 + i32.load offset=12 + local.get $$t1.1 + i32.load offset=16 + local.get $$t1.1 + i32.load offset=20 + local.get $$t1.1 + i32.load offset=24 + local.get $$t1.1 + i32.load offset=28 + local.get $$t1.1 + i32.load offset=32 + local.set $$t11.8 + local.set $$t11.7 + local.set $$t11.6 + local.set $$t11.5 + local.set $$t11.4 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + local.get $$t11.4 + local.get $$t11.5 + local.get $$t11.6 + local.get $$t11.7 + local.get $$t11.8 + call $w42048.play + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 5 + local.set $$current_block + i32.const 52 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 36 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 0 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 4 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 8 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 12 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 16 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 20 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 24 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 28 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 32 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t13.1 + i32.const 80 + i32.store + local.get $$t14.1 + i32.const 0 + i32.store + local.get $$t15.1 + i32.const 0 + i32.store + local.get $$t16.1 + i32.const 8 + i32.store + local.get $$t17.1 + i32.const 0 + i32.store + local.get $$t18.1 + i32.const 0 + i32.store + local.get $$t19.1 + i32.const 0 + i32.store + local.get $$t20.1 + i32.const 2 + i32.store + local.get $$t21.1 + i32.const 0 + i32.store + local.get $$t12.1 + i32.load + local.get $$t12.1 + i32.load offset=4 + local.get $$t12.1 + i32.load offset=8 + local.get $$t12.1 + i32.load offset=12 + local.get $$t12.1 + i32.load offset=16 + local.get $$t12.1 + i32.load offset=20 + local.get $$t12.1 + i32.load offset=24 + local.get $$t12.1 + i32.load offset=28 + local.get $$t12.1 + i32.load offset=32 + local.set $$t22.8 + local.set $$t22.7 + local.set $$t22.6 + local.set $$t22.5 + local.set $$t22.4 + local.set $$t22.3 + local.set $$t22.2 + local.set $$t22.1 + local.set $$t22.0 + local.get $$t22.0 + local.get $$t22.1 + local.get $$t22.2 + local.get $$t22.3 + local.get $$t22.4 + local.get $$t22.5 + local.get $$t22.6 + local.get $$t22.7 + local.get $$t22.8 + call $w42048.play + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $this.0 + local.get $this.1 + i32.const 32 + call $w42048.UI.beat + local.set $$t23 + local.get $$t23 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + i32.const 52 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 36 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t24.1 + i32.const 0 + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t24.1 + i32.const 4 + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t24.1 + i32.const 8 + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t24.1 + i32.const 12 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t24.1 + i32.const 16 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t24.1 + i32.const 20 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t24.1 + i32.const 24 + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t24.1 + i32.const 28 + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t24.0 + call $runtime.Block.Retain + local.get $$t24.1 + i32.const 32 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t25.1 + i32.const 160 + i32.store + local.get $$t26.1 + i32.const 0 + i32.store + local.get $$t27.1 + i32.const 0 + i32.store + local.get $$t28.1 + i32.const 8 + i32.store + local.get $$t29.1 + i32.const 0 + i32.store + local.get $$t30.1 + i32.const 0 + i32.store + local.get $$t31.1 + i32.const 0 + i32.store + local.get $$t32.1 + i32.const 2 + i32.store + local.get $$t33.1 + i32.const 0 + i32.store + local.get $$t24.1 + i32.load + local.get $$t24.1 + i32.load offset=4 + local.get $$t24.1 + i32.load offset=8 + local.get $$t24.1 + i32.load offset=12 + local.get $$t24.1 + i32.load offset=16 + local.get $$t24.1 + i32.load offset=20 + local.get $$t24.1 + i32.load offset=24 + local.get $$t24.1 + i32.load offset=28 + local.get $$t24.1 + i32.load offset=32 + local.set $$t34.8 + local.set $$t34.7 + local.set $$t34.6 + local.set $$t34.5 + local.set $$t34.4 + local.set $$t34.3 + local.set $$t34.2 + local.set $$t34.1 + local.set $$t34.0 + local.get $$t34.0 + local.get $$t34.1 + local.get $$t34.2 + local.get $$t34.3 + local.get $$t34.4 + local.get $$t34.5 + local.get $$t34.6 + local.get $$t34.7 + local.get $$t34.8 + call $w42048.play + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + local.get $this.0 + local.get $this.1 + i32.const 96 + call $w42048.UI.beat + local.set $$t35 + local.get $$t35 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + ) + (func $w42048.UI.randomPalette (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t9.3 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t10.2 i32) + (local $$t10.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + i32.const 31256 + i32.load + call $runtime.Block.Retain + i32.const 31256 + i32.load offset=4 + i32.const 31256 + i32.load offset=8 + i32.const 31256 + i32.load offset=12 + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.1 + i32.load + local.set $$t3 + local.get $$t3 + local.set $$t4 + i32.const 31256 + i32.load + call $runtime.Block.Retain + i32.const 31256 + i32.load offset=4 + i32.const 31256 + i32.load offset=8 + i32.const 31256 + i32.load offset=12 + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.2 + local.set $$t6 + local.get $$t4 + local.get $$t6 + i32.rem_s + local.set $$t7 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + local.get $$t7 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.get $$t8.1 + i32.load offset=4 + local.get $$t8.1 + i32.load offset=8 + local.get $$t8.1 + i32.load offset=12 + local.set $$t9.3 + local.set $$t9.2 + local.set $$t9.1 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.get $$t9.2 + local.get $$t9.3 + local.set $$t10.3 + local.set $$t10.2 + local.set $$t10.1 + local.set $$t10.0 + local.get $$t0.1 + local.get $$t10.0 + i32.store + local.get $$t0.1 + local.get $$t10.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t10.2 + i32.store offset=8 + local.get $$t0.1 + local.get $$t10.3 + i32.store offset=12 + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + ) + (func $w42048.UI.right (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.GetPad + local.set $$t0 + local.get $$t0 + i32.const 32 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load8_u align=1 + local.set $$t4 + local.get $$t4 + i32.const 32 + i32.and + local.set $$t5 + local.get $$t5 + i32.const 0 + i32.eq + local.set $$t6 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t6 + end + local.set $$t7 + i32.const 2 + local.set $$current_block + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w42048.UI.show (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0.0 i32) + (local $$t13.0.1 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t15.2 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t16.2 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25.0.0 i32) + (local $$t25.0.1 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t37.2 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64.0 i32) + (local $$t64.1 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67.0 i32) + (local $$t67.1 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load + local.set $$t5 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load + local.set $$t8 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.0 + call $runtime.Block.Retain + local.get $$t9.1 + i32.const 4 + i32.const 3 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t2 + local.get $$t5 + local.get $$t8 + local.get $$t11 + call $syscall$wasm4.SetPalette + i32.const 0 + i32.const 0 + i32.const 160 + i32.const 27 + i32.const 3 + i32.const 3 + i32.const 4 + call $w42048.dotbg + i32.const 50 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 6 + i32.const 84 + i32.const 12 + call $syscall$wasm4.RectI32 + i32.const 4 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 157 + i32.const 160 + i32.const 3 + call $syscall$wasm4.RectI32 + i32.const 36 + call $syscall$wasm4.SetDrawColorsU16 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load + call $runtime.Block.Retain + local.get $$t12.1 + i32.load offset=4 + local.get $$t12.1 + i32.load offset=8 + local.get $$t12.1 + i32.load offset=12 + local.set $$t13.2 + local.set $$t13.1 + local.set $$t13.0.1 + local.get $$t13.0.0 + call $runtime.Block.Release + local.set $$t13.0.0 + local.get $$t13.0.0 + local.get $$t13.0.1 + local.get $$t13.1 + i32.load offset=28 + call_indirect 0 (type $$$fnSig6) + local.set $$t14 + local.get $$t14 + call $strconv.Itoa + local.set $$t15.2 + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.0 + local.get $$t15.1 + local.get $$t15.2 + i32.const 0 + i32.const 14965 + i32.const 1 + i32.const 5 + call $w42048.leftpad + local.set $$t16.2 + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + i32.const 0 + i32.const 34914 + i32.const 5 + local.get $$t16.0 + local.get $$t16.1 + local.get $$t16.2 + call $$string.appendstr + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.0 + local.get $$t17.1 + local.get $$t17.2 + i32.const 2 + i32.const 8 + call $syscall$wasm4.Text + i32.const 67 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 34919 + i32.const 11 + i32.const 0 + i32.const 19 + call $syscall$wasm4.Text + i32.const 65 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 34930 + i32.const 9 + i32.const 88 + i32.const 0 + call $syscall$wasm4.Text + i32.const 66 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 34939 + i32.const 9 + i32.const 88 + i32.const 8 + call $syscall$wasm4.Text + i32.const 67 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 34930 + i32.const 9 + i32.const 88 + i32.const 16 + call $syscall$wasm4.Text + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + i32.const 3 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 28 + i32.const 160 + i32.const 28 + call $syscall$wasm4.LineI32 + i32.const 0 + i32.const 60 + i32.const 160 + i32.const 60 + call $syscall$wasm4.LineI32 + i32.const 0 + i32.const 92 + i32.const 160 + i32.const 92 + call $syscall$wasm4.LineI32 + i32.const 0 + i32.const 124 + i32.const 160 + i32.const 124 + call $syscall$wasm4.LineI32 + i32.const 0 + i32.const 156 + i32.const 160 + i32.const 156 + call $syscall$wasm4.LineI32 + i32.const 2 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 27 + i32.const 160 + i32.const 27 + call $syscall$wasm4.LineI32 + i32.const 0 + i32.const 59 + i32.const 160 + i32.const 59 + call $syscall$wasm4.LineI32 + i32.const 0 + i32.const 91 + i32.const 160 + i32.const 91 + call $syscall$wasm4.LineI32 + i32.const 0 + i32.const 123 + i32.const 160 + i32.const 123 + call $syscall$wasm4.LineI32 + i32.const 0 + i32.const 155 + i32.const 160 + i32.const 155 + call $syscall$wasm4.LineI32 + i32.const 39 + i32.const 28 + i32.const 39 + i32.const 155 + call $syscall$wasm4.LineI32 + i32.const 80 + i32.const 28 + i32.const 80 + i32.const 155 + call $syscall$wasm4.LineI32 + i32.const 120 + i32.const 28 + i32.const 120 + i32.const 155 + call $syscall$wasm4.LineI32 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + i32.load + local.set $$t19 + local.get $$t19 + i32.const 124 + i32.lt_u + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + br $$Block_9 + end + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t21 + end + local.set $$t22 + i32.const 3 + local.set $$current_block + local.get $$t22 + i32.const 4 + i32.lt_s + local.set $$t23 + local.get $$t23 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load + call $runtime.Block.Retain + local.get $$t24.1 + i32.load offset=4 + local.get $$t24.1 + i32.load offset=8 + local.get $$t24.1 + i32.load offset=12 + local.set $$t25.2 + local.set $$t25.1 + local.set $$t25.0.1 + local.get $$t25.0.0 + call $runtime.Block.Release + local.set $$t25.0.0 + local.get $$t22 + local.set $$t26 + local.get $$t27 + local.set $$t28 + local.get $$t25.0.0 + local.get $$t25.0.1 + local.get $$t26 + local.get $$t28 + local.get $$t25.1 + i32.load offset=12 + call_indirect 0 (type $$$fnSig3) + local.set $$t29 + local.get $$t29 + i32.const 0 + i32.gt_s + local.set $$t30 + local.get $$t30 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 5 + local.set $$current_block + local.get $$t22 + i32.const 1 + i32.add + local.set $$t21 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t31 + end + local.set $$t27 + i32.const 6 + local.set $$current_block + local.get $$t27 + i32.const 4 + i32.lt_s + local.set $$t32 + local.get $$t32 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + local.get $$t29 + local.set $$t33 + local.get $$t22 + local.get $$t27 + local.get $$t33 + call $w42048.showTile + br $$Block_7 + end + i32.const 8 + local.set $$current_block + local.get $$t27 + i32.const 1 + i32.add + local.set $$t31 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 9 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t34.1 + i32.load + local.set $$t35 + local.get $$t35 + i32.const 6 + i32.lt_u + local.set $$t36 + local.get $$t36 + if + br $$Block_15 + else + br $$Block_14 + end + end + i32.const 10 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 12 + i32.eq + if(result i32 i32 i32) + i32.const 0 + i32.const 34948 + i32.const 25 + else + local.get $$current_block + i32.const 13 + i32.eq + if(result i32 i32 i32) + i32.const 0 + i32.const 34973 + i32.const 19 + else + local.get $$current_block + i32.const 17 + i32.eq + if(result i32 i32 i32) + i32.const 0 + i32.const 34992 + i32.const 13 + else + local.get $$current_block + i32.const 21 + i32.eq + if(result i32 i32 i32) + i32.const 0 + i32.const 35005 + i32.const 8 + else + i32.const 0 + i32.const 35005 + i32.const 8 + end + end + end + end + local.set $$t37.2 + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$current_block + i32.const 12 + i32.eq + if(result i32) + i32.const 2 + else + local.get $$current_block + i32.const 13 + i32.eq + if(result i32) + i32.const 3 + else + local.get $$current_block + i32.const 17 + i32.eq + if(result i32) + i32.const 3 + else + local.get $$current_block + i32.const 21 + i32.eq + if(result i32) + i32.const 4 + else + i32.const 1 + end + end + end + end + local.set $$t38 + local.get $$current_block + i32.const 12 + i32.eq + if(result i32) + i32.const 33 + else + local.get $$current_block + i32.const 13 + i32.eq + if(result i32) + i32.const 33 + else + local.get $$current_block + i32.const 17 + i32.eq + if(result i32) + i32.const 50 + else + local.get $$current_block + i32.const 21 + i32.eq + if(result i32) + i32.const 35 + else + i32.const 52 + end + end + end + end + local.set $$t39 + local.get $$current_block + i32.const 12 + i32.eq + if(result i32) + i32.const 120 + else + local.get $$current_block + i32.const 13 + i32.eq + if(result i32) + i32.const 115 + else + local.get $$current_block + i32.const 17 + i32.eq + if(result i32) + i32.const 110 + else + local.get $$current_block + i32.const 21 + i32.eq + if(result i32) + i32.const 105 + else + i32.const 100 + end + end + end + end + local.set $$t40 + local.get $$current_block + i32.const 12 + i32.eq + if(result i32) + i32.const 10 + else + local.get $$current_block + i32.const 13 + i32.eq + if(result i32) + i32.const 15 + else + local.get $$current_block + i32.const 17 + i32.eq + if(result i32) + i32.const 20 + else + local.get $$current_block + i32.const 21 + i32.eq + if(result i32) + i32.const 25 + else + i32.const 30 + end + end + end + end + local.set $$t41 + i32.const 11 + local.set $$current_block + local.get $$t39 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 8 + local.get $$t40 + i32.const 144 + local.get $$t41 + call $syscall$wasm4.RectI32 + local.get $$t38 + call $syscall$wasm4.SetDrawColorsU16 + local.get $$t37.2 + local.set $$t42 + local.get $$t42 + local.set $$t43 + local.get $$t43 + i32.const 8 + i32.mul + local.set $$t44 + local.get $$t44 + i32.const 2 + i32.div_s + local.set $$t45 + i32.const 80 + local.get $$t45 + i32.sub + local.set $$t46 + local.get $$t41 + i32.const 2 + i32.div_s + local.set $$t47 + local.get $$t40 + local.get $$t47 + i32.add + local.set $$t48 + local.get $$t48 + i32.const 5 + i32.sub + local.set $$t49 + local.get $$t37.0 + local.get $$t37.1 + local.get $$t37.2 + local.get $$t46 + local.get $$t49 + call $syscall$wasm4.Text + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + i32.const 13 + local.set $$current_block + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + i32.const 14 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.1 + i32.load + local.set $$t51 + local.get $$t51 + i32.const 12 + i32.lt_u + local.set $$t52 + local.get $$t52 + if + br $$Block_19 + else + br $$Block_18 + end + end + i32.const 15 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $$t53.1 + i32.load + local.set $$t54 + local.get $$t54 + i32.const 118 + i32.gt_u + local.set $$t55 + br $$Block_15 + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t55 + end + local.set $$t56 + i32.const 16 + local.set $$current_block + local.get $$t56 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 17 + local.set $$current_block + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + i32.const 18 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $$t57.1 + i32.load + local.set $$t58 + local.get $$t58 + i32.const 18 + i32.lt_u + local.set $$t59 + local.get $$t59 + if + br $$Block_23 + else + br $$Block_22 + end + end + i32.const 19 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + local.get $$t60.1 + i32.load + local.set $$t61 + local.get $$t61 + i32.const 112 + i32.gt_u + local.set $$t62 + br $$Block_19 + end + local.get $$current_block + i32.const 14 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t62 + end + local.set $$t63 + i32.const 20 + local.set $$current_block + local.get $$t63 + if + i32.const 13 + local.set $$block_selector + br $$BlockDisp + else + i32.const 18 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 21 + local.set $$current_block + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + i32.const 22 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t64.1 + local.get $$t64.0 + call $runtime.Block.Release + local.set $$t64.0 + local.get $$t64.1 + i32.load + local.set $$t65 + local.get $$t65 + i32.const 24 + i32.lt_u + local.set $$t66 + local.get $$t66 + if + br $$Block_26 + else + br $$Block_25 + end + end + i32.const 23 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t67.1 + local.get $$t67.0 + call $runtime.Block.Release + local.set $$t67.0 + local.get $$t67.1 + i32.load + local.set $$t68 + local.get $$t68 + i32.const 106 + i32.gt_u + local.set $$t69 + br $$Block_23 + end + local.get $$current_block + i32.const 18 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t69 + end + local.set $$t70 + i32.const 24 + local.set $$current_block + local.get $$t70 + if + i32.const 17 + local.set $$block_selector + br $$BlockDisp + else + i32.const 22 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 25 + local.set $$current_block + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + i32.const 26 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $$t71.1 + i32.load + local.set $$t72 + local.get $$t72 + i32.const 100 + i32.gt_u + local.set $$t73 + br $$Block_26 + end + local.get $$current_block + i32.const 22 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t73 + end + local.set $$t74 + i32.const 27 + local.set $$current_block + local.get $$t74 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + i32.const 25 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t64.0 + call $runtime.Block.Release + local.get $$t67.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + ) + (func $w42048.UI.sound (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t2.4 i32) + (local $$t2.5 i32) + (local $$t2.6 i32) + (local $$t2.7 i32) + (local $$t2.8 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t4.3 i32) + (local $$t4.4 i32) + (local $$t4.5 i32) + (local $$t4.6 i32) + (local $$t4.7 i32) + (local $$t4.8 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t6.4 i32) + (local $$t6.5 i32) + (local $$t6.6 i32) + (local $$t6.7 i32) + (local $$t6.8 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t8.4 i32) + (local $$t8.5 i32) + (local $$t8.6 i32) + (local $$t8.7 i32) + (local $$t8.8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.btn1 + local.set $$t0 + local.get $$t0 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.btn2 + local.set $$t1 + local.get $$t1 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + i32.const 31212 + i32.load + i32.const 31212 + i32.load offset=4 + i32.const 31212 + i32.load offset=8 + i32.const 31212 + i32.load offset=12 + i32.const 31212 + i32.load offset=16 + i32.const 31212 + i32.load offset=20 + i32.const 31212 + i32.load offset=24 + i32.const 31212 + i32.load offset=28 + i32.const 31212 + i32.load offset=32 + local.set $$t2.8 + local.set $$t2.7 + local.set $$t2.6 + local.set $$t2.5 + local.set $$t2.4 + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + local.get $$t2.3 + local.get $$t2.4 + local.get $$t2.5 + local.get $$t2.6 + local.get $$t2.7 + local.get $$t2.8 + call $w42048.play + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.up + local.set $$t3 + local.get $$t3 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + i32.const 31104 + i32.load + i32.const 31104 + i32.load offset=4 + i32.const 31104 + i32.load offset=8 + i32.const 31104 + i32.load offset=12 + i32.const 31104 + i32.load offset=16 + i32.const 31104 + i32.load offset=20 + i32.const 31104 + i32.load offset=24 + i32.const 31104 + i32.load offset=28 + i32.const 31104 + i32.load offset=32 + local.set $$t4.8 + local.set $$t4.7 + local.set $$t4.6 + local.set $$t4.5 + local.set $$t4.4 + local.set $$t4.3 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + local.get $$t4.3 + local.get $$t4.4 + local.get $$t4.5 + local.get $$t4.6 + local.get $$t4.7 + local.get $$t4.8 + call $w42048.play + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.down + local.set $$t5 + local.get $$t5 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + i32.const 31176 + i32.load + i32.const 31176 + i32.load offset=4 + i32.const 31176 + i32.load offset=8 + i32.const 31176 + i32.load offset=12 + i32.const 31176 + i32.load offset=16 + i32.const 31176 + i32.load offset=20 + i32.const 31176 + i32.load offset=24 + i32.const 31176 + i32.load offset=28 + i32.const 31176 + i32.load offset=32 + local.set $$t6.8 + local.set $$t6.7 + local.set $$t6.6 + local.set $$t6.5 + local.set $$t6.4 + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.set $$t6.0 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + local.get $$t6.4 + local.get $$t6.5 + local.get $$t6.6 + local.get $$t6.7 + local.get $$t6.8 + call $w42048.play + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.right + local.set $$t7 + local.get $$t7 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 31140 + i32.load + i32.const 31140 + i32.load offset=4 + i32.const 31140 + i32.load offset=8 + i32.const 31140 + i32.load offset=12 + i32.const 31140 + i32.load offset=16 + i32.const 31140 + i32.load offset=20 + i32.const 31140 + i32.load offset=24 + i32.const 31140 + i32.load offset=28 + i32.const 31140 + i32.load offset=32 + local.set $$t8.8 + local.set $$t8.7 + local.set $$t8.6 + local.set $$t8.5 + local.set $$t8.4 + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.set $$t8.0 + local.get $$t8.0 + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + local.get $$t8.4 + local.get $$t8.5 + local.get $$t8.6 + local.get $$t8.7 + local.get $$t8.8 + call $w42048.play + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.left + local.set $$t9 + local.get $$t9 + if + i32.const 11 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + ) + (func $w42048.UI.up (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048.UI.GetPad + local.set $$t0 + local.get $$t0 + i32.const 64 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load8_u align=1 + local.set $$t4 + local.get $$t4 + i32.const 64 + i32.and + local.set $$t5 + local.get $$t5 + i32.const 0 + i32.eq + local.set $$t6 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t6 + end + local.set $$t7 + i32.const 2 + local.set $$current_block + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $errors.errorString.Error (param $this.0 i32) (param $this.1 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $strconv.NumError.Error (param $this.0 i32) (param $this.1 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0.0 i32) + (local $$t11.0.1 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + i32.const 0 + i32.const 35013 + i32.const 8 + local.get $$t1.0 + local.get $$t1.1 + local.get $$t1.2 + call $$string.appendstr + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + i32.const 0 + i32.const 31461 + i32.const 2 + call $$string.appendstr + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.get $$t3.2 + i32.const 0 + i32.const 35021 + i32.const 8 + call $$string.appendstr + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + call $runtime.Block.Retain + local.get $$t5.1 + i32.load offset=4 + local.get $$t5.1 + i32.load offset=8 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + call $strconv.Quote + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + local.get $$t7.0 + local.get $$t7.1 + local.get $$t7.2 + call $$string.appendstr + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + local.get $$t8.1 + local.get $$t8.2 + i32.const 0 + i32.const 31461 + i32.const 2 + call $$string.appendstr + local.set $$t9.2 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + call $runtime.Block.Retain + local.get $$t10.1 + i32.load offset=4 + local.get $$t10.1 + i32.load offset=8 + local.get $$t10.1 + i32.load offset=12 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0.1 + local.get $$t11.0.0 + call $runtime.Block.Release + local.set $$t11.0.0 + local.get $$t11.0.0 + local.get $$t11.0.1 + local.get $$t11.1 + i32.load offset=8 + call_indirect 0 (type $$$fnSig1) + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t9.0 + local.get $$t9.1 + local.get $$t9.2 + local.get $$t12.0 + local.get $$t12.1 + local.get $$t12.2 + call $$string.appendstr + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.0 + call $runtime.Block.Retain + local.get $$t13.1 + local.get $$t13.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.Add (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + (local $$t13.3 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t28.2 i32) + (local $$t28.3 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t30.2 i32) + (local $$t30.3 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t43.2 i32) + (local $$t43.3 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t45.2 i32) + (local $$t45.3 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + i32.const 10 + call $w42048$game.board.intn + local.set $$t0 + local.get $$t0 + i32.const 8 + i32.gt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 2 + else + i32.const 4 + end + local.set $$t2 + i32.const 2 + local.set $$current_block + br $$Block_4 + end + i32.const 3 + local.set $$current_block + br $$Block_7 + end + i32.const 4 + local.set $$current_block + local.get $this.0 + local.get $this.1 + local.get $$t3 + call $w42048$game.board.intn + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.add + local.set $$t5 + br $$Block_12 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t6 + end + local.set $$t3 + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t7 + end + local.set $$t8 + i32.const 5 + local.set $$current_block + local.get $$t8 + i32.const 4 + i32.lt_s + local.set $$t9 + local.get $$t9 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + call $runtime.Block.Retain + local.get $$t10.1 + i32.load offset=4 + local.get $$t10.1 + i32.load offset=8 + local.get $$t10.1 + i32.load offset=12 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 16 + local.get $$t8 + i32.mul + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load + call $runtime.Block.Retain + local.get $$t12.1 + i32.load offset=4 + local.get $$t12.1 + i32.load offset=8 + local.get $$t12.1 + i32.load offset=12 + local.set $$t13.3 + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.0 + call $runtime.Block.Retain + local.get $$t13.1 + i32.const 4 + local.get $$t14 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load + local.set $$t16 + local.get $$t16 + i32.const 0 + i32.eq + local.set $$t17 + local.get $$t17 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $$t8 + i32.const 1 + i32.add + local.set $$t7 + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + local.get $$t3 + else + local.get $$t18 + end + local.set $$t6 + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t19 + end + local.set $$t14 + i32.const 8 + local.set $$current_block + local.get $$t14 + i32.const 4 + i32.lt_s + local.set $$t20 + local.get $$t20 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t6 + i32.const 1 + i32.add + local.set $$t21 + br $$Block_9 + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + local.get $$t6 + else + local.get $$t21 + end + local.set $$t18 + i32.const 10 + local.set $$current_block + local.get $$t14 + i32.const 1 + i32.add + local.set $$t19 + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + br $$Block_15 + end + i32.const 12 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t22 + end + local.set $$t23 + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t24 + end + local.set $$t25 + i32.const 13 + local.set $$current_block + local.get $$t25 + i32.const 4 + i32.lt_s + local.set $$t26 + local.get $$t26 + if + i32.const 11 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 14 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t27.1 + i32.load + call $runtime.Block.Retain + local.get $$t27.1 + i32.load offset=4 + local.get $$t27.1 + i32.load offset=8 + local.get $$t27.1 + i32.load offset=12 + local.set $$t28.3 + local.set $$t28.2 + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + i32.const 16 + local.get $$t25 + i32.mul + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.1 + i32.load + call $runtime.Block.Retain + local.get $$t29.1 + i32.load offset=4 + local.get $$t29.1 + i32.load offset=8 + local.get $$t29.1 + i32.load offset=12 + local.set $$t30.3 + local.set $$t30.2 + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + i32.const 4 + local.get $$t31 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + i32.load + local.set $$t33 + local.get $$t33 + i32.const 0 + i32.eq + local.set $$t34 + local.get $$t34 + if + br $$Block_16 + else + br $$Block_17 + end + end + i32.const 15 + local.set $$current_block + local.get $$t25 + i32.const 1 + i32.add + local.set $$t24 + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 11 + i32.eq + if(result i32) + local.get $$t23 + else + local.get $$t35 + end + local.set $$t22 + local.get $$current_block + i32.const 11 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t36 + end + local.set $$t31 + i32.const 16 + local.set $$current_block + local.get $$t31 + i32.const 4 + i32.lt_s + local.set $$t37 + local.get $$t37 + if + i32.const 14 + local.set $$block_selector + br $$BlockDisp + else + i32.const 15 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 17 + local.set $$current_block + local.get $$t22 + i32.const 1 + i32.add + local.set $$t38 + local.get $$t38 + local.get $$t5 + i32.eq + local.set $$t39 + local.get $$t39 + if + br $$Block_18 + else + br $$Block_17 + end + end + local.get $$current_block + i32.const 14 + i32.eq + if(result i32) + local.get $$t22 + else + local.get $$t38 + end + local.set $$t35 + i32.const 18 + local.set $$current_block + local.get $$t31 + i32.const 1 + i32.add + local.set $$t36 + i32.const 16 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 32 + i32.add + local.set $$t40.1 + local.get $$t40.0 + call $runtime.Block.Release + local.set $$t40.0 + local.get $$t40.1 + local.get $$t25 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 36 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + local.get $$t31 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t42.1 + i32.load + call $runtime.Block.Retain + local.get $$t42.1 + i32.load offset=4 + local.get $$t42.1 + i32.load offset=8 + local.get $$t42.1 + i32.load offset=12 + local.set $$t43.3 + local.set $$t43.2 + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 16 + local.get $$t25 + i32.mul + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + call $runtime.Block.Retain + local.get $$t44.1 + i32.load offset=4 + local.get $$t44.1 + i32.load offset=8 + local.get $$t44.1 + i32.load offset=12 + local.set $$t45.3 + local.set $$t45.2 + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t45.0 + call $runtime.Block.Retain + local.get $$t45.1 + i32.const 4 + local.get $$t31 + i32.mul + i32.add + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t46.1 + local.get $$t2 + i32.store + br $$BlockFnBody + end + end + end + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t40.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.Get (param $this.0 i32) (param $this.1 i32) (param $col i32) (param $row i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + local.get $row + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.1 + i32.load + call $runtime.Block.Retain + local.get $$t2.1 + i32.load offset=4 + local.get $$t2.1 + i32.load offset=8 + local.get $$t2.1 + i32.load offset=12 + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 4 + local.get $col + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load + local.set $$t5 + local.get $$t5 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.Input (param $this.0 i32) (param $this.1 i32) (param $key i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 0 + end + i32.const 0 + local.set $$current_block + local.get $key + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_3 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048$game.board.up + local.get $this.0 + local.get $this.1 + call $w42048$game.board.Add + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048$game.board.down + local.get $this.0 + local.get $this.1 + call $w42048$game.board.Add + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $key + i32.const 1 + i32.eq + local.set $$t1 + local.get $$t1 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048$game.board.right + local.get $this.0 + local.get $this.1 + call $w42048$game.board.Add + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $key + i32.const 2 + i32.eq + local.set $$t2 + local.get $$t2 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048$game.board.left + local.get $this.0 + local.get $this.1 + call $w42048$game.board.Add + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + local.get $key + i32.const 3 + i32.eq + local.set $$t3 + local.get $$t3 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_8 + end + end + i32.const 9 + local.set $$current_block + local.get $key + i32.const 4 + i32.eq + local.set $$t4 + local.get $$t4 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_10 + end + end + i32.const 10 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048$game.board.Restart + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $key + i32.const 5 + i32.eq + local.set $$t5 + local.get $$t5 + if + i32.const 10 + local.set $$block_selector + br $$BlockDisp + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + ) + (func $w42048$game.board.IsOver (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t7.3 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t9.3 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19 i32) + (local $$t20 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + local.get $$t0 + i32.const 0 + i32.eq + local.set $$t1 + local.get $$t1 + if + br $$Block_9 + else + br $$Block_8 + end + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t2 + end + local.set $$t0 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t3 + end + local.set $$t4 + i32.const 3 + local.set $$current_block + local.get $$t4 + i32.const 4 + i32.lt_s + local.set $$t5 + local.get $$t5 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + call $runtime.Block.Retain + local.get $$t6.1 + i32.load offset=4 + local.get $$t6.1 + i32.load offset=8 + local.get $$t6.1 + i32.load offset=12 + local.set $$t7.3 + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 16 + local.get $$t4 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + call $runtime.Block.Retain + local.get $$t8.1 + i32.load offset=4 + local.get $$t8.1 + i32.load offset=8 + local.get $$t8.1 + i32.load offset=12 + local.set $$t9.3 + local.set $$t9.2 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.0 + call $runtime.Block.Retain + local.get $$t9.1 + i32.const 4 + local.get $$t10 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.load + local.set $$t12 + local.get $$t12 + i32.const 0 + i32.eq + local.set $$t13 + local.get $$t13 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 5 + local.set $$current_block + local.get $$t4 + i32.const 1 + i32.add + local.set $$t3 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + local.get $$t0 + else + local.get $$t14 + end + local.set $$t2 + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t15 + end + local.set $$t10 + i32.const 6 + local.set $$current_block + local.get $$t10 + i32.const 4 + i32.lt_s + local.set $$t16 + local.get $$t16 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + local.get $$t2 + i32.const 1 + i32.add + local.set $$t17 + br $$Block_7 + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t2 + else + local.get $$t17 + end + local.set $$t14 + i32.const 8 + local.set $$current_block + local.get $$t10 + i32.const 1 + i32.add + local.set $$t15 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 9 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 28 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + i32.load8_u align=1 + local.set $$t19 + br $$Block_9 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t19 + end + local.set $$t20 + i32.const 10 + local.set $$current_block + local.get $$t20 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.Restart (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + call $w42048$game.newMatrix + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t0.1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t0.1 + local.get $$t1.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t1.2 + i32.store offset=8 + local.get $$t0.1 + local.get $$t1.3 + i32.store offset=12 + local.get $this.0 + local.get $this.1 + call $w42048$game.board.Add + local.get $this.0 + local.get $this.1 + call $w42048$game.board.Add + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.Total (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t1 + end + local.set $$t0 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t2 + end + local.set $$t3 + i32.const 3 + local.set $$current_block + local.get $$t3 + i32.const 4 + i32.lt_s + local.set $$t4 + local.get $$t4 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + call $runtime.Block.Retain + local.get $$t5.1 + i32.load offset=4 + local.get $$t5.1 + i32.load offset=8 + local.get $$t5.1 + i32.load offset=12 + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 16 + local.get $$t3 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load + call $runtime.Block.Retain + local.get $$t7.1 + i32.load offset=4 + local.get $$t7.1 + i32.load offset=8 + local.get $$t7.1 + i32.load offset=12 + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 4 + local.get $$t9 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t1 + local.get $$t11 + i32.add + local.set $$t12 + local.get $$t9 + i32.const 1 + i32.add + local.set $$t13 + br $$Block_5 + end + i32.const 5 + local.set $$current_block + local.get $$t3 + i32.const 1 + i32.add + local.set $$t2 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + local.get $$t0 + else + local.get $$t12 + end + local.set $$t1 + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t9 + i32.const 6 + local.set $$current_block + local.get $$t9 + i32.const 4 + i32.lt_s + local.set $$t14 + local.get $$t14 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0 + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.down (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048$game.board.transpose + local.get $this.0 + local.get $this.1 + call $w42048$game.board.left + local.get $this.0 + local.get $this.1 + call $w42048$game.board.transpose + local.get $this.0 + local.get $this.1 + call $w42048$game.board.transpose + local.get $this.0 + local.get $this.1 + call $w42048$game.board.transpose + br $$BlockFnBody + end + end + end + ) + (func $w42048$game.board.intn (param $this.0 i32) (param $this.1 i32) (param $n i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1.0 i32) + (local $$t2.1.1 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $n + i32.const 0 + i32.le_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.get $$t1.1 + i32.load offset=4 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=8 + local.set $$t2.1.1 + local.get $$t2.1.0 + call $runtime.Block.Release + local.set $$t2.1.0 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig7) + local.set $$t3 + local.get $$t3 + local.set $$t4 + local.get $$t4 + local.get $n + i32.rem_s + local.set $$t5 + local.get $$t5 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.1.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.left (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t4.3 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + local.get $$t2 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + call $runtime.Block.Retain + local.get $$t3.1 + i32.load offset=4 + local.get $$t3.1 + i32.load offset=8 + local.get $$t3.1 + i32.load offset=12 + local.set $$t4.3 + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + call $runtime.Block.Retain + local.get $$t5.1 + i32.load offset=4 + local.get $$t5.1 + i32.load offset=8 + local.get $$t5.1 + i32.load offset=12 + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 16 + local.get $$t2 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + local.get $$t4.3 + call $w42048$game.movedRow + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t7.1 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t7.1 + local.get $$t8.1 + i32.store offset=4 + local.get $$t7.1 + local.get $$t8.2 + i32.store offset=8 + local.get $$t7.1 + local.get $$t8.3 + i32.store offset=12 + local.get $$t2 + i32.const 1 + i32.add + local.set $$t9 + br $$Block_2 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t9 + end + local.set $$t2 + i32.const 3 + local.set $$current_block + local.get $$t2 + i32.const 4 + i32.lt_s + local.set $$t10 + local.get $$t10 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.reverse (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t7.3 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + local.get $$t2 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load + call $runtime.Block.Retain + local.get $$t4.1 + i32.load offset=4 + local.get $$t4.1 + i32.load offset=8 + local.get $$t4.1 + i32.load offset=12 + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.const 16 + local.get $$t2 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + call $runtime.Block.Retain + local.get $$t6.1 + i32.load offset=4 + local.get $$t6.1 + i32.load offset=8 + local.get $$t6.1 + i32.load offset=12 + local.set $$t7.3 + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.0 + local.get $$t7.1 + local.get $$t7.2 + local.get $$t7.3 + call $w42048$game.reverseRow + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t3.1 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t3.1 + local.get $$t8.1 + i32.store offset=4 + local.get $$t3.1 + local.get $$t8.2 + i32.store offset=8 + local.get $$t3.1 + local.get $$t8.3 + i32.store offset=12 + local.get $$t2 + i32.const 1 + i32.add + local.set $$t9 + br $$Block_2 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t9 + end + local.set $$t2 + i32.const 3 + local.set $$current_block + local.get $$t2 + i32.const 4 + i32.lt_s + local.set $$t10 + local.get $$t10 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.reverseRows (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t7.3 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t19.2 i32) + (local $$t19.3 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t23.2 i32) + (local $$t23.3 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 0 + end + i32.const 0 + local.set $$current_block + i32.const 16 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 0 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 0 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 32 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t5.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t5.1 + local.get $$t3.2 + i32.store offset=8 + local.get $$t5.1 + local.get $$t3.3 + i32.store offset=12 + local.get $$t4.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t7.0 + local.get $$t7.1 + local.get $$t7.2 + local.get $$t7.3 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + call $$i32.$slice.$slice.append + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t9 + i32.const 1 + i32.add + local.set $$t10 + br $$Block_2 + end + i32.const 2 + local.set $$current_block + br $$Block_5 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + else + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + end + local.set $$t7.3 + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t10 + end + local.set $$t9 + i32.const 3 + local.set $$current_block + local.get $$t9 + i32.const 4 + i32.lt_s + local.set $$t11 + local.get $$t11 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$Block_8 + end + i32.const 5 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t12.1 + local.get $$t7.1 + i32.store offset=4 + local.get $$t12.1 + local.get $$t7.2 + i32.store offset=8 + local.get $$t12.1 + local.get $$t7.3 + i32.store offset=12 + br $$BlockFnBody + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t14 + i32.const 6 + local.set $$current_block + local.get $$t14 + i32.const 4 + i32.lt_s + local.set $$t15 + local.get $$t15 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + i32.const 4 + local.get $$t14 + i32.sub + local.set $$t16 + local.get $$t16 + i32.const 1 + i32.sub + local.set $$t17 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 16 + local.get $$t17 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + i32.load + call $runtime.Block.Retain + local.get $$t18.1 + i32.load offset=4 + local.get $$t18.1 + i32.load offset=8 + local.get $$t18.1 + i32.load offset=12 + local.set $$t19.3 + local.set $$t19.2 + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.0 + call $runtime.Block.Retain + local.get $$t19.1 + i32.const 4 + local.get $$t20 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.1 + i32.load + call $runtime.Block.Retain + local.get $$t22.1 + i32.load offset=4 + local.get $$t22.1 + i32.load offset=8 + local.get $$t22.1 + i32.load offset=12 + local.set $$t23.3 + local.set $$t23.2 + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.0 + call $runtime.Block.Retain + local.get $$t23.1 + i32.const 16 + local.get $$t14 + i32.mul + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load + call $runtime.Block.Retain + local.get $$t24.1 + i32.load offset=4 + local.get $$t24.1 + i32.load offset=8 + local.get $$t24.1 + i32.load offset=12 + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.0 + call $runtime.Block.Retain + local.get $$t25.1 + i32.const 4 + local.get $$t20 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i32.load + local.set $$t27 + local.get $$t21.1 + local.get $$t27 + i32.store + local.get $$t20 + i32.const 1 + i32.add + local.set $$t28 + br $$Block_8 + end + i32.const 8 + local.set $$current_block + local.get $$t14 + i32.const 1 + i32.add + local.set $$t13 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t28 + end + local.set $$t20 + i32.const 9 + local.set $$current_block + local.get $$t20 + i32.const 4 + i32.lt_s + local.set $$t29 + local.get $$t29 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.right (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048$game.board.reverse + local.get $this.0 + local.get $this.1 + call $w42048$game.board.left + local.get $this.0 + local.get $this.1 + call $w42048$game.board.reverse + br $$BlockFnBody + end + end + end + ) + (func $w42048$game.board.transpose (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t7.3 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t21.2 i32) + (local $$t21.3 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 0 + end + i32.const 0 + local.set $$current_block + i32.const 16 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 0 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 0 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 32 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t5.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t5.1 + local.get $$t3.2 + i32.store offset=8 + local.get $$t5.1 + local.get $$t3.3 + i32.store offset=12 + local.get $$t4.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t7.0 + local.get $$t7.1 + local.get $$t7.2 + local.get $$t7.3 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + call $$i32.$slice.$slice.append + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t9 + i32.const 1 + i32.add + local.set $$t10 + br $$Block_2 + end + i32.const 2 + local.set $$current_block + br $$Block_5 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + else + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + local.get $$t8.2 + local.get $$t8.3 + end + local.set $$t7.3 + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t10 + end + local.set $$t9 + i32.const 3 + local.set $$current_block + local.get $$t9 + i32.const 4 + i32.lt_s + local.set $$t11 + local.get $$t11 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$Block_8 + end + i32.const 5 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t12.1 + local.get $$t7.1 + i32.store offset=4 + local.get $$t12.1 + local.get $$t7.2 + i32.store offset=8 + local.get $$t12.1 + local.get $$t7.3 + i32.store offset=12 + br $$BlockFnBody + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t14 + i32.const 6 + local.set $$current_block + local.get $$t14 + i32.const 4 + i32.lt_s + local.set $$t15 + local.get $$t15 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 16 + local.get $$t14 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + call $runtime.Block.Retain + local.get $$t16.1 + i32.load offset=4 + local.get $$t16.1 + i32.load offset=8 + local.get $$t16.1 + i32.load offset=12 + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 4 + local.get $$t18 + i32.mul + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load + call $runtime.Block.Retain + local.get $$t20.1 + i32.load offset=4 + local.get $$t20.1 + i32.load offset=8 + local.get $$t20.1 + i32.load offset=12 + local.set $$t21.3 + local.set $$t21.2 + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + i32.const 4 + local.get $$t18 + i32.sub + local.set $$t22 + local.get $$t22 + i32.const 1 + i32.sub + local.set $$t23 + local.get $$t21.0 + call $runtime.Block.Retain + local.get $$t21.1 + i32.const 16 + local.get $$t23 + i32.mul + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load + call $runtime.Block.Retain + local.get $$t24.1 + i32.load offset=4 + local.get $$t24.1 + i32.load offset=8 + local.get $$t24.1 + i32.load offset=12 + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.0 + call $runtime.Block.Retain + local.get $$t25.1 + i32.const 4 + local.get $$t14 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i32.load + local.set $$t27 + local.get $$t19.1 + local.get $$t27 + i32.store + local.get $$t18 + i32.const 1 + i32.add + local.set $$t28 + br $$Block_8 + end + i32.const 8 + local.set $$current_block + local.get $$t14 + i32.const 1 + i32.add + local.set $$t13 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t28 + end + local.set $$t18 + i32.const 9 + local.set $$current_block + local.get $$t18 + i32.const 4 + i32.lt_s + local.set $$t29 + local.get $$t29 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + ) + (func $w42048$game.board.up (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w42048$game.board.reverseRows + local.get $this.0 + local.get $this.1 + call $w42048$game.board.down + local.get $this.0 + local.get $this.1 + call $w42048$game.board.reverseRows + br $$BlockFnBody + end + end + end + ) + (func $_start (export "_start") + call $w42048.init + ) + (func $_main (export "_main")) + (data (i32.const 14784) "\24\24\77\61\64\73\24\24\9b\1a\86\a0\49\fa\a8\bd\05\3f\4e\7b\9d\ee\21\3e\c6\4b\ac\7e\4f\7e\92\be\f5\44\c8\19\a0\01\fa\3e\91\4f\c1\16\6c\c1\56\bf\4b\55\55\55\55\55\a5\3f\cd\9c\d1\1f\fd\d8\e5\3d\5d\1f\29\a9\e5\e5\5a\be\a1\48\7d\56\e3\1d\c7\3e\03\df\bf\19\a0\01\2a\bf\d0\f7\10\11\11\11\81\3f\48\55\55\55\55\55\c5\bf\00\01\1c\02\1d\0e\18\03\1e\16\14\0f\19\11\04\08\1f\1b\0d\17\15\13\10\07\1a\0c\12\06\0b\05\0a\09\00\01\38\02\39\31\1c\03\3d\3a\2a\32\26\1d\11\04\3e\2f\3b\24\2d\2b\33\16\35\27\21\1e\18\12\0c\05\3f\37\30\1b\3c\29\25\10\2e\23\2c\15\34\20\17\0b\36\1a\28\0f\22\14\1f\0a\19\0e\13\09\0d\08\07\06\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\00\00\00\00\00\00\00\53\e4\60\cd\69\c8\32\17\00\00\00\00\00\00\00\00\b4\8e\5c\20\42\bd\7f\0e\00\00\00\00\00\00\00\00\61\b2\73\a8\92\ac\1f\52\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\33\fc\80\38\87\ee\32\74\00\00\00\00\00\00\00\00\3f\3b\a1\06\29\aa\3f\11\00\00\00\00\00\00\00\00\07\c5\24\a4\59\ca\c7\4a\00\00\00\00\00\00\00\00\49\f6\2d\0d\f0\bc\79\5d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\69\e8\4b\8a\9b\1b\07\79\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\31\cc\af\21\50\cb\3b\4c\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\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\00\00\00\00\00\00\c2\18\1f\51\af\fd\0e\68\00\00\00\00\00\00\00\00\f2\de\66\25\1b\bd\12\02\00\00\00\00\00\00\00\00\57\4b\60\f7\30\b6\4b\01\00\00\00\00\00\00\00\00\2d\5e\38\35\bd\a3\9e\41\00\00\00\00\00\00\00\00\b9\75\86\82\ac\4c\06\52\00\00\00\00\00\00\00\00\93\09\94\d1\eb\ef\43\73\00\00\00\00\00\00\00\00\f8\0b\f9\c5\e6\eb\14\10\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b0\35\55\5d\5f\6e\b4\55\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\6e\36\25\21\c9\33\b2\47\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\28\57\5e\6a\92\06\04\38\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1d\21\e0\fb\6a\ee\b3\7a\00\00\00\00\00\00\00\00\64\29\d8\ba\05\ea\60\59\00\00\00\00\00\00\00\00\bd\33\8e\29\87\24\b9\6f\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\87\de\94\fe\ab\cd\1a\33\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d9\4d\e4\5e\ae\f0\ec\07\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\06\f4\aa\48\0a\63\bd\6d\00\00\00\00\00\00\00\00\08\b1\d5\da\cc\bb\2c\09\00\00\00\00\00\00\00\00\a5\8e\c5\08\60\f5\bb\25\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\e1\ae\b4\0d\66\af\f5\1a\00\00\00\00\00\00\00\00\4d\ed\90\c8\9f\8d\d9\50\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c8\72\62\a9\49\ed\53\1e\00\00\00\00\00\00\00\00\7a\0f\bb\13\9c\e8\e8\25\00\00\00\00\00\00\00\00\ac\e9\54\8c\61\91\b1\77\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1d\ad\44\6b\28\73\05\4b\00\00\00\00\00\00\00\00\32\ec\0a\43\f9\67\e3\4e\00\00\00\00\00\00\00\00\3f\a7\cd\93\f7\41\9c\22\00\00\00\00\00\00\00\00\0f\11\c1\78\75\52\43\6b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\d5\56\c6\6b\98\cc\23\00\00\00\00\00\00\00\00\a8\8a\ec\b7\86\be\bf\2c\00\00\00\00\00\00\00\00\a9\d6\f3\32\14\d7\f7\7b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a1\1f\c2\b9\09\08\10\23\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\6c\51\3f\32\8f\0c\c9\16\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\83\d5\11\d7\43\56\40\40\00\00\00\00\00\00\00\00\72\25\6b\66\ea\35\28\48\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\91\a2\04\e8\a6\44\77\5a\00\00\00\00\00\00\00\00\36\cb\05\a2\d0\15\15\71\00\00\00\00\00\00\00\00\03\3e\87\ca\44\5b\5a\0d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\72\a8\39\be\4d\97\6e\62\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\99\0b\9d\bc\34\66\e6\7c\00\00\00\00\00\00\00\00\80\4e\c4\eb\c1\ff\1f\1c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a8\ba\62\00\9f\ff\f1\4b\00\00\00\00\00\00\00\00\a9\b4\3d\60\c3\3f\77\6f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\48\6a\60\46\a1\53\2a\7e\00\00\00\00\00\00\00\00\6d\42\fc\cb\44\74\da\2e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ca\27\ba\7e\ab\55\35\79\00\00\00\00\00\00\00\00\de\58\34\2f\8b\55\c1\4b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\dc\ca\c1\79\a9\15\5e\46\00\00\00\00\00\00\00\00\c9\1e\19\ec\89\cd\fa\0b\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\9a\d4\e1\93\e0\91\a7\67\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\18\6e\88\73\f7\e9\fa\58\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\03\96\42\52\c9\06\84\6d\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\7f\06\55\9a\a0\ee\f2\5c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\58\08\b7\d6\08\3d\c5\76\00\00\00\00\00\00\00\00\6e\ca\64\0c\4b\8c\76\54\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\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\00\00\00\00\00\00\1b\09\a1\9c\41\b6\9a\35\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1d\cf\5d\42\63\de\e0\79\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\9d\93\b2\17\7b\5b\6f\3e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\83\83\2a\78\ff\c6\50\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\3f\6e\84\59\7b\55\e2\28\00\00\00\00\00\00\00\00\cf\89\e5\2f\da\ea\1a\33\00\00\00\00\00\00\00\00\21\76\ef\5d\c8\d2\f0\3f\00\00\00\00\00\00\00\00\a9\53\6b\75\7a\07\ed\0f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5c\d9\bb\ab\d7\2d\71\64\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\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\00\00\00\00\00\00\d5\ce\22\c5\75\28\1c\31\00\00\00\00\00\00\00\00\8b\82\6b\36\93\32\63\7d\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\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\00\00\00\00\00\00\6d\1e\f7\59\9e\cb\47\42\00\00\00\00\00\00\00\00\08\e6\74\f0\85\be\d9\52\00\00\00\00\00\00\00\00\8b\1f\92\6c\27\2e\90\67\00\00\00\00\00\00\00\00\b6\53\db\a3\d8\1c\ba\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\cd\b2\06\80\12\cd\22\61\00\00\00\00\00\00\00\00\81\5f\08\20\57\80\6b\79\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\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\00\00\00\00\00\00\4a\1c\4d\2d\15\dd\1b\75\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4b\c9\3f\70\38\a4\d1\2b\00\00\00\00\00\00\00\00\cf\dd\27\46\a3\06\63\7b\00\00\00\00\00\00\00\00\42\d5\b1\17\4c\c8\3b\1a\00\00\00\00\00\00\00\00\93\4a\9e\1d\5f\ba\ca\20\00\00\00\00\00\00\00\00\9c\ee\82\72\7b\b4\7e\54\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d4\94\ec\e2\00\fa\05\64\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\57\09\9b\dd\24\d6\ad\3b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4c\1f\21\cd\4c\cf\9f\5e\00\00\00\00\00\00\00\00\1f\67\69\00\20\c3\47\76\00\00\00\00\00\00\00\00\73\e0\41\00\f4\d9\ec\29\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\ee\66\40\8d\14\82\71\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\fd\29\3f\85\e1\f1\ef\40\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b9\c0\f8\5e\3a\10\ab\29\00\00\00\00\00\00\00\00\e7\f0\b6\f6\48\d4\15\74\00\00\00\00\00\00\00\00\21\ad\64\34\5b\49\1b\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\42\a7\ee\40\4f\51\5d\3d\00\00\00\00\00\00\00\00\12\51\2a\11\a3\a5\b4\0c\00\00\00\00\00\00\00\00\ab\72\ba\ea\85\e7\f0\47\00\00\00\00\00\00\00\00\56\0f\69\65\67\21\ed\59\00\00\00\00\00\00\00\00\2c\53\c3\3e\c1\69\68\30\00\00\00\00\00\00\00\00\fb\13\3a\c7\18\42\41\1e\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\83\b7\8e\32\8c\ba\8b\6b\00\00\00\00\00\00\00\00\64\65\32\3f\2f\a9\6e\06\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\37\b7\23\38\11\48\2c\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\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\00\00\00\00\00\00\a8\26\99\07\05\f9\8d\31\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\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\00\00\00\00\00\00\b0\73\c6\a3\7a\ce\fd\3d\00\00\00\00\00\00\00\00\4e\08\5c\a6\0c\a1\be\06\00\00\00\00\00\00\00\00\62\0a\f3\cf\4f\49\6e\48\00\00\00\00\00\00\00\00\fa\cc\ef\c3\a3\db\89\5a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2c\2e\58\ed\7d\a0\6a\74\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\17\1d\c8\f9\ba\20\b0\77\00\00\00\00\00\00\00\00\2e\12\1d\dc\74\14\ce\0a\00\00\00\00\00\00\00\00\ba\56\24\13\92\99\81\0d\00\00\00\00\00\00\00\00\69\6c\ed\97\f6\ff\e1\10\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\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\00\00\00\00\00\00\6b\a9\3a\42\7a\f0\cd\6b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\72\49\ad\64\d7\1c\47\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c3\c2\4e\8d\10\1d\ff\4a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\32\ea\fe\29\62\22\3d\73\00\00\00\00\00\00\00\00\5f\52\3f\5a\7d\35\06\08\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\11\df\d4\65\5e\79\9e\0a\00\00\00\00\00\00\00\00\d5\16\4a\ff\b5\17\46\4d\00\00\00\00\00\00\00\00\45\4e\8e\bf\d1\ce\4b\50\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4c\5a\4e\bb\27\73\76\5d\00\00\00\00\00\00\00\00\6f\f8\10\d5\f8\07\6a\3a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2e\84\ea\cc\74\ac\45\2b\00\00\00\00\00\00\00\00\9d\92\12\00\c9\8b\0b\3b\00\00\00\00\00\00\00\00\44\37\17\40\bb\6e\ce\09\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f9\ab\96\dc\22\98\93\47\00\00\00\00\00\00\00\00\f7\56\bc\93\2b\7e\78\59\00\00\00\00\00\00\00\00\5a\b6\55\3c\db\4e\eb\57\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\14\b4\eb\18\02\cb\db\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5f\49\f0\46\33\6d\e7\4b\00\00\00\00\00\00\00\00\db\2d\56\0c\40\a4\70\6f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a7\a7\46\13\a4\00\20\7e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\fa\32\0f\2f\80\00\89\72\00\00\00\00\00\00\00\00\b9\ff\d2\3a\a0\40\2b\4f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c9\d7\f4\2d\7d\ca\d9\0d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2a\91\ce\97\63\4c\a4\75\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\20\c9\c1\bb\87\e9\00\54\00\00\00\00\00\00\00\00\68\3b\b2\aa\e9\23\01\29\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f3\1a\0b\36\b6\ae\38\1e\00\00\00\00\00\00\00\00\b0\e1\8d\c3\63\da\c6\25\00\00\00\00\00\00\00\00\0e\ad\38\5a\7e\48\9c\57\00\00\00\00\00\00\00\00\51\d8\c6\f0\9d\5a\83\2d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ff\58\1b\64\cb\9e\8e\1b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0f\bb\6a\cc\1d\d8\0e\5b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\24\62\b3\47\d7\98\23\3f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ac\24\04\30\68\cf\53\19\00\00\00\00\00\00\00\00\d7\2d\05\3c\42\c3\a8\5f\00\00\00\00\00\00\00\00\4d\79\06\cb\12\f4\92\37\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c4\0e\9d\ae\ae\ce\6a\5b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\6b\60\85\96\d6\4d\46\55\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\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\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\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\00\00\00\00\52\5d\0d\58\18\c0\60\55\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\22\0d\fd\c5\97\7b\60\3d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\42\b2\ad\92\8e\60\f3\77\00\00\00\00\00\00\00\00\d3\1e\59\37\b2\38\f0\55\00\00\00\00\00\00\00\00\88\66\2f\c5\de\46\6c\6b\00\00\00\00\00\00\00\00\15\a0\3d\3b\4b\ac\23\23\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\54\2e\da\77\41\d6\50\7e\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f2\4a\81\a5\ed\18\de\67\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\30\43\a0\13\58\e4\6e\09\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\7d\34\55\cf\64\a2\5e\77\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\22\f5\83\bd\dd\83\3a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\93\82\17\0f\3c\05\b7\75\00\00\00\00\00\00\00\00\38\63\dd\12\8b\c6\24\53\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\e5\32\6c\d0\e3\e9\31\2b\00\00\00\00\00\00\00\00\cf\9f\43\62\2e\32\ff\3a\00\00\00\00\00\00\00\00\c2\87\d4\fa\b9\fe\be\09\00\00\00\00\00\00\00\00\b3\a9\89\79\68\be\2e\4c\00\00\00\00\00\00\00\00\10\0a\f6\4b\01\37\9d\0f\00\00\00\00\00\00\00\00\94\8c\f3\9e\c1\84\84\53\00\00\00\00\00\00\00\00\b9\6f\b0\06\f2\a5\65\28\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\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\00\00\00\00\00\00\30\30\95\f8\88\0a\68\31\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4c\1b\69\04\76\90\32\3d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\1d\72\33\dc\80\cf\0f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\e9\26\31\08\ac\1c\5a\64\00\00\00\00\00\00\00\00\a3\70\3d\0a\d7\a3\70\3d\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\40\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\50\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\00\00\00\00\00\00\4d\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\00\00\00\00\00\28\6c\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\00\00\00\00\40\7f\3c\00\00\00\00\00\00\00\00\00\00\00\00\00\10\9f\4b\00\00\00\00\00\00\00\00\00\00\00\00\00\d4\86\1e\00\00\00\00\00\00\00\00\00\00\00\00\80\44\14\13\00\00\00\00\00\00\00\00\00\00\00\00\a0\55\d9\17\00\00\00\00\00\00\00\00\00\00\00\00\08\ab\cf\5d\00\00\00\00\00\00\00\00\00\00\00\00\e5\ca\a1\5a\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\00\00\d0\05\cd\9c\6d\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\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\00\00\00\00\00\00\00\00\34\cc\22\f4\26\45\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\40\11\5f\76\dd\0c\3c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\80\d8\d6\98\45\90\a4\72\00\00\00\00\00\00\00\00\50\47\86\7f\2b\da\a6\47\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\d5\53\47\d0\36\f2\02\00\00\00\00\00\00\00\00\90\65\94\2c\42\62\d7\01\00\00\00\00\00\00\00\00\f5\7e\b9\b7\d2\3a\4d\42\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2f\eb\88\9f\f4\55\cc\63\00\00\00\00\00\00\00\00\fb\25\6b\c7\71\6b\bf\3c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\17\a3\be\1c\ed\ee\52\3d\00\00\00\00\00\00\00\00\dd\4b\ee\63\a8\aa\a7\4c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\16\b6\96\71\a8\bc\db\60\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\41\be\bd\98\63\ab\ab\6b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\cb\4b\29\43\5f\a5\25\3b\00\00\00\00\00\00\00\00\be\9e\f3\13\b7\0e\ef\49\00\00\00\00\00\00\00\00\37\43\78\6c\32\69\35\6e\00\00\00\00\00\00\00\00\04\54\96\07\7f\c3\c2\49\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a3\71\ed\3d\bb\28\a0\69\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\fa\e0\79\da\c6\67\26\79\00\00\00\00\00\00\00\00\38\59\18\91\b8\01\70\57\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\05\5b\31\58\81\4f\54\00\00\00\00\00\00\00\00\21\c7\b1\3d\ae\61\63\69\00\00\00\00\00\00\00\00\e9\38\1e\cd\19\3a\bc\03\00\00\00\00\00\00\00\00\23\c7\65\40\a0\48\ab\04\00\00\00\00\00\00\00\00\76\9c\3f\28\64\0d\eb\62\00\00\00\00\00\00\00\00\94\83\4f\32\bd\d0\a5\3b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\cb\1e\4e\cf\13\8b\99\7e\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\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\00\00\00\00\00\00\97\dc\8e\ae\45\6e\8a\2a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\56\9c\5f\70\26\26\3c\59\00\00\00\00\00\00\00\00\6c\83\77\0c\b0\2f\8b\6f\00\00\00\00\00\00\00\00\47\64\95\0f\9c\fb\6d\0b\00\00\00\00\00\00\00\00\ac\5e\bd\89\41\bd\24\47\00\00\00\00\00\00\00\00\57\b6\2c\ec\91\ec\ed\58\00\00\00\00\00\00\00\00\ed\e3\37\67\b6\67\29\2f\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\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\00\00\00\00\00\00\dd\dc\7f\14\8d\05\09\31\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1a\c9\07\70\ac\18\9e\6c\00\00\00\00\00\00\00\00\b0\dd\04\c6\6b\cf\e2\03\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\7e\c0\60\3f\8f\7e\cb\4f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c5\2c\07\d3\bf\f5\ad\5c\00\00\00\00\00\00\00\00\f6\f7\c8\c7\2f\73\d9\73\00\00\00\00\00\00\00\00\fa\9a\dd\dc\fd\e7\67\28\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\26\42\1a\a9\7c\5a\22\1f\00\00\00\00\00\00\00\00\58\69\b0\e9\8d\78\75\33\00\00\00\00\00\00\00\00\ae\83\1c\64\b1\d6\52\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\fb\11\c3\98\45\be\ba\29\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0c\66\58\5f\a6\e4\99\18\00\00\00\00\00\00\00\00\8f\7f\2e\f7\cf\5d\c0\5e\00\00\00\00\00\00\00\00\73\1f\fa\f4\43\75\70\76\00\00\00\00\00\00\00\00\a8\53\1c\79\4a\49\06\6a\00\00\00\00\00\00\00\00\92\68\63\17\9d\db\87\04\00\00\00\00\00\00\00\00\b6\42\3c\5d\84\d2\a9\45\00\00\00\00\00\00\00\00\b2\a9\45\ba\92\23\8a\0b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\26\d9\0c\43\95\d7\07\32\00\00\00\00\00\00\00\00\b8\07\e8\49\bd\e6\44\7f\00\00\00\00\00\00\00\00\a6\09\62\9c\6c\20\16\5f\00\00\00\00\00\00\00\00\0f\8c\7a\c3\87\a8\db\36\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c7\ac\e5\94\94\82\92\6f\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\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\00\00\00\00\00\00\69\5d\c2\5f\66\58\b2\7e\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\5d\b8\aa\01\56\cd\37\7a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\09\60\4d\31\6b\98\7b\57\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\07\73\84\be\13\8f\58\14\00\00\00\00\00\00\00\00\c8\8f\25\ae\d8\b2\6e\59\00\00\00\00\00\00\00\00\bb\f3\ae\d9\8e\5f\ca\6f\00\00\00\00\00\00\00\00\54\58\0d\48\b9\7b\de\25\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\da\94\80\51\a1\2b\1b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\4a\74\ac\07\16\3a\35\00\00\00\00\00\00\00\00\e8\5c\91\97\89\9b\88\42\00\00\00\00\00\00\00\00\11\da\ba\fe\35\61\95\69\00\00\00\00\00\00\00\00\95\90\69\7e\83\b9\fa\43\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f5\78\c2\ba\ee\e0\1b\1d\00\00\00\00\00\00\00\00\32\17\73\69\2a\d9\62\64\00\00\00\00\00\00\00\00\fe\dc\cf\03\75\8f\7b\7d\00\00\00\00\00\00\00\00\3e\d4\c3\44\52\73\da\5c\00\00\00\00\00\00\00\00\a7\64\fa\6a\13\88\08\3a\00\00\00\00\00\00\00\00\d0\fd\b8\45\18\aa\8a\08\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4b\86\78\f6\e2\54\ac\36\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d5\51\1c\a1\a2\44\6d\65\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\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\00\00\00\00\00\00\f2\88\d5\42\24\f1\a7\09\00\00\00\00\00\00\00\00\2f\eb\8a\53\6d\ed\11\0c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ac\a9\95\c3\dc\81\c9\37\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b2\27\00\97\d1\c8\7a\38\00\00\00\00\00\00\00\00\9e\31\c0\fc\05\7b\99\06\00\00\00\00\00\00\00\00\03\1f\f8\bd\e3\ec\1f\44\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\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\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\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\00\00\00\00\90\01\5d\f9\d7\02\f0\27\00\00\00\00\00\00\00\00\f4\41\b4\f7\8d\03\ec\31\00\00\00\00\00\00\00\00\71\52\a1\75\71\04\67\7e\00\00\00\00\00\00\00\00\86\d3\84\e9\c6\62\00\0f\00\00\00\00\00\00\00\00\68\08\e6\a3\78\7b\c0\52\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\35\a4\0e\d0\93\f8\cf\6a\00\00\00\00\00\00\00\00\43\4d\12\c4\b8\f6\83\05\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5c\4c\2e\59\c0\18\4f\74\00\00\00\00\00\00\00\00\73\df\79\6f\f0\de\62\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\92\36\17\d7\2b\3e\95\6d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a2\22\0a\40\92\98\9c\1d\00\00\00\00\00\00\00\00\4b\ab\0c\d0\b6\be\03\25\00\00\00\00\00\00\00\00\1d\d6\0f\84\64\ae\44\2e\00\00\00\00\00\00\00\00\d2\e5\89\d2\fe\ec\ea\5c\00\00\00\00\00\00\00\00\47\5f\2c\87\3e\a8\25\74\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0b\55\01\10\4d\c6\6c\63\00\00\00\00\00\00\00\00\4e\aa\01\54\e0\f7\47\3c\00\00\00\00\00\00\00\00\71\0a\81\34\ec\fa\ac\65\00\00\00\00\00\00\00\00\0d\4d\a1\41\a7\39\18\7f\00\00\00\00\00\00\00\00\50\a0\09\12\11\48\de\1e\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\8e\66\9d\ab\60\12\25\36\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\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\00\00\00\00\00\00\b1\a3\7d\01\ef\40\98\16\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f3\2a\d3\58\0a\09\fd\17\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\8e\f9\64\15\10\af\bd\4a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\9b\e4\b4\f5\3c\fd\32\00\00\00\00\00\00\00\00\a1\c2\1d\22\33\8c\bc\3f\00\00\00\00\00\00\00\00\4a\33\a5\ea\3f\af\ab\0f\00\00\00\00\00\00\00\00\0e\40\a7\f2\87\4d\cb\29\00\00\00\00\00\00\00\00\12\10\51\ef\e9\20\3e\74\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\8e\54\f7\c2\b6\89\d0\1a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\92\88\65\7a\7c\a6\2f\7e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\65\a5\3e\7f\22\74\2a\55\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\85\2d\43\b0\69\75\2b\2d\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\73\9a\21\36\a9\70\1c\24\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\18\4e\a7\d8\44\86\2d\4b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\43\62\93\3b\1f\75\6a\3d\00\00\00\00\00\00\00\00\d4\3a\78\0a\67\12\c5\0c\00\00\00\00\00\00\00\00\c5\24\8b\66\80\2b\fb\27\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\73\69\39\a0\f8\73\78\5e\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\fb\10\78\cc\40\a1\41\76\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\44\cd\bd\9f\fa\45\63\54\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5d\48\cc\cc\ab\8e\ed\49\00\00\00\00\00\00\00\00\74\5a\ff\bf\56\f2\68\5c\00\00\00\00\00\00\00\00\11\31\ff\6f\ec\2e\83\73\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\eb\35\5f\e5\d2\1b\ce\28\00\00\00\00\00\00\00\00\b3\81\5b\cf\63\d1\80\79\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\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\00\00\00\00\00\00\d3\33\9f\56\9a\bf\d1\6e\00\00\00\00\00\00\00\00\c8\00\47\ec\80\2f\86\0a\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\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\00\00\00\00\00\00\74\ac\6c\e0\fc\cc\58\18\00\00\00\00\00\00\00\00\c8\eb\43\0c\1e\80\37\0f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\69\20\2a\f3\2e\b8\c6\47\00\00\00\00\00\00\00\00\41\54\fa\57\1d\33\dc\4c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a6\23\77\d9\dd\0f\18\58\00\00\00\00\00\00\00\00\48\76\ea\a7\ea\09\0f\57\00\00\00\00\00\00\00\00\da\13\e5\51\65\cc\d2\2c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\63\b5\f9\f1\9a\db\c5\79\00\00\00\00\00\00\00\00\bc\22\78\ae\81\52\37\18\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\eb\51\61\a4\92\06\a6\5f\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\08\6c\90\22\b5\b9\12\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d0\7f\09\c1\e3\5a\49\60\00\00\00\00\00\00\00\00\c4\df\4b\b1\9c\b1\5b\38\00\00\00\00\00\00\00\00\b5\d7\9e\dd\03\9e\72\46\00\00\00\00\00\00\00\00\d1\46\83\6a\c2\a2\07\6c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\28\33\04\dc\f1\74\7f\73\00\00\00\00\00\00\00\00\f2\3f\05\53\2e\52\5f\50\00\00\00\00\00\00\00\00\ef\8f\c6\e7\b9\26\77\64\00\00\00\00\00\00\00\00\f5\19\dc\30\34\78\ca\5e\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\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\00\00\00\00\00\00\b0\ad\a4\b5\bb\27\36\72\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b1\a7\e8\a5\0a\4f\3a\21\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\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\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\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\00\00\00\00\b0\59\89\94\6b\4f\0a\6a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\95\21\0e\0f\8f\11\8e\6f\00\00\00\00\00\00\00\00\fb\a9\d1\d2\f2\95\71\4b\00\00\00\00\00\00\00\00\34\00\00\00\0b\00\00\00\01\fc\ff\ff\17\00\00\00\08\00\00\00\81\ff\ff\ff\00\00\80\3f\00\00\20\41\00\00\c8\42\00\00\7a\44\00\40\1c\46\00\50\c3\47\00\24\74\49\80\96\18\4b\20\bc\be\4c\28\6b\6e\4e\f9\02\15\50\00\00\00\00\00\00\00\00\00\00\f0\3f\00\00\00\00\00\00\24\40\00\00\00\00\00\00\59\40\00\00\00\00\00\40\8f\40\00\00\00\00\00\88\c3\40\00\00\00\00\00\6a\f8\40\00\00\00\00\80\84\2e\41\00\00\00\00\d0\12\63\41\00\00\00\00\84\d7\97\41\00\00\00\00\65\cd\cd\41\00\00\00\20\5f\a0\02\42\00\00\00\e8\76\48\37\42\00\00\00\a2\94\1a\6d\42\00\00\40\e5\9c\30\a2\42\00\00\90\1e\c4\bc\d6\42\00\00\34\26\f5\6b\0c\43\00\80\e0\37\79\c3\41\43\00\a0\d8\85\57\34\76\43\00\c8\4e\67\6d\c1\ab\43\00\3d\91\60\e4\58\e1\43\40\8c\b5\78\1d\af\15\44\50\ef\e2\d6\e4\1a\4b\44\92\d5\4d\06\cf\f0\80\44\a0\00\80\16\00\20\01\20\02\20\03\20\04\20\05\20\06\20\07\20\08\20\09\20\0a\20\2f\20\5f\20\00\30\ad\00\8b\03\8d\03\a2\03\30\05\90\05\dd\06\3f\08\5f\08\b5\08\e2\08\84\09\a9\09\b1\09\de\09\04\0a\29\0a\31\0a\34\0a\37\0a\3d\0a\5d\0a\84\0a\8e\0a\92\0a\a9\0a\b1\0a\b4\0a\c6\0a\ca\0a\00\0b\04\0b\29\0b\31\0b\34\0b\5e\0b\84\0b\91\0b\9b\0b\9d\0b\c9\0b\0d\0c\11\0c\29\0c\45\0c\49\0c\57\0c\8d\0c\91\0c\a9\0c\b4\0c\c5\0c\c9\0c\df\0c\f0\0c\0d\0d\11\0d\45\0d\49\0d\80\0d\84\0d\b2\0d\bc\0d\d5\0d\d7\0d\83\0e\85\0e\8b\0e\a4\0e\a6\0e\c5\0e\c7\0e\48\0f\98\0f\bd\0f\cd\0f\c6\10\49\12\57\12\59\12\89\12\b1\12\bf\12\c1\12\d7\12\11\13\80\16\0d\17\6d\17\71\17\1f\19\5f\1a\fa\1d\58\1f\5a\1f\5c\1f\5e\1f\b5\1f\c5\1f\dc\1f\f5\1f\8f\20\96\2b\2f\2c\5f\2c\26\2d\a7\2d\af\2d\b7\2d\bf\2d\c7\2d\cf\2d\d7\2d\df\2d\9a\2e\40\30\30\31\8f\31\1f\32\ce\a9\ff\a9\27\ab\2f\ab\37\fb\3d\fb\3f\fb\42\fb\45\fb\53\fe\67\fe\75\fe\e7\ff\0c\00\27\00\3b\00\3e\00\8f\01\9e\03\09\08\36\08\56\08\f3\08\04\0a\14\0a\18\0a\7f\0e\aa\0e\bd\10\35\11\e0\11\12\12\87\12\89\12\8e\12\9e\12\04\13\29\13\31\13\34\13\3a\13\5c\14\14\19\17\19\36\19\09\1c\37\1c\a8\1c\07\1d\0a\1d\3b\1d\3e\1d\66\1d\69\1d\8f\1d\92\1d\6f\24\5f\6a\5a\6b\62\6b\55\d4\9d\d4\ad\d4\ba\d4\bc\d4\c4\d4\06\d5\15\d5\1d\d5\3a\d5\3f\d5\45\d5\51\d5\a0\da\07\e0\22\e0\25\e0\04\ee\20\ee\23\ee\28\ee\33\ee\38\ee\3a\ee\48\ee\4a\ee\4c\ee\50\ee\53\ee\58\ee\5a\ee\5c\ee\5e\ee\60\ee\63\ee\6b\ee\73\ee\78\ee\7d\ee\7f\ee\8a\ee\a4\ee\aa\ee\c0\f0\d0\f0\79\f9\cc\f9\93\fb\20\00\7e\00\a1\00\77\03\7a\03\7f\03\84\03\56\05\59\05\8a\05\8d\05\c7\05\d0\05\ea\05\ef\05\f4\05\06\06\1b\06\1e\06\0d\07\10\07\4a\07\4d\07\b1\07\c0\07\fa\07\fd\07\2d\08\30\08\5b\08\5e\08\6a\08\a0\08\c7\08\d3\08\8c\09\8f\09\90\09\93\09\b2\09\b6\09\b9\09\bc\09\c4\09\c7\09\c8\09\cb\09\ce\09\d7\09\d7\09\dc\09\e3\09\e6\09\fe\09\01\0a\0a\0a\0f\0a\10\0a\13\0a\39\0a\3c\0a\42\0a\47\0a\48\0a\4b\0a\4d\0a\51\0a\51\0a\59\0a\5e\0a\66\0a\76\0a\81\0a\b9\0a\bc\0a\cd\0a\d0\0a\d0\0a\e0\0a\e3\0a\e6\0a\f1\0a\f9\0a\0c\0b\0f\0b\10\0b\13\0b\39\0b\3c\0b\44\0b\47\0b\48\0b\4b\0b\4d\0b\55\0b\57\0b\5c\0b\63\0b\66\0b\77\0b\82\0b\8a\0b\8e\0b\95\0b\99\0b\9f\0b\a3\0b\a4\0b\a8\0b\aa\0b\ae\0b\b9\0b\be\0b\c2\0b\c6\0b\cd\0b\d0\0b\d0\0b\d7\0b\d7\0b\e6\0b\fa\0b\00\0c\39\0c\3d\0c\4d\0c\55\0c\5a\0c\60\0c\63\0c\66\0c\6f\0c\77\0c\b9\0c\bc\0c\cd\0c\d5\0c\d6\0c\de\0c\e3\0c\e6\0c\f2\0c\00\0d\4f\0d\54\0d\63\0d\66\0d\96\0d\9a\0d\bd\0d\c0\0d\c6\0d\ca\0d\ca\0d\cf\0d\df\0d\e6\0d\ef\0d\f2\0d\f4\0d\01\0e\3a\0e\3f\0e\5b\0e\81\0e\bd\0e\c0\0e\cd\0e\d0\0e\d9\0e\dc\0e\df\0e\00\0f\6c\0f\71\0f\da\0f\00\10\c7\10\cd\10\cd\10\d0\10\4d\12\50\12\5d\12\60\12\8d\12\90\12\b5\12\b8\12\c5\12\c8\12\15\13\18\13\5a\13\5d\13\7c\13\80\13\99\13\a0\13\f5\13\f8\13\fd\13\00\14\9c\16\a0\16\f8\16\00\17\14\17\20\17\36\17\40\17\53\17\60\17\73\17\80\17\dd\17\e0\17\e9\17\f0\17\f9\17\00\18\0d\18\10\18\19\18\20\18\78\18\80\18\aa\18\b0\18\f5\18\00\19\2b\19\30\19\3b\19\40\19\40\19\44\19\6d\19\70\19\74\19\80\19\ab\19\b0\19\c9\19\d0\19\da\19\de\19\1b\1a\1e\1a\7c\1a\7f\1a\89\1a\90\1a\99\1a\a0\1a\ad\1a\b0\1a\c0\1a\00\1b\4b\1b\50\1b\7c\1b\80\1b\f3\1b\fc\1b\37\1c\3b\1c\49\1c\4d\1c\88\1c\90\1c\ba\1c\bd\1c\c7\1c\d0\1c\fa\1c\00\1d\15\1f\18\1f\1d\1f\20\1f\45\1f\48\1f\4d\1f\50\1f\7d\1f\80\1f\d3\1f\d6\1f\ef\1f\f2\1f\fe\1f\10\20\27\20\30\20\5e\20\70\20\71\20\74\20\9c\20\a0\20\bf\20\d0\20\f0\20\00\21\8b\21\90\21\26\24\40\24\4a\24\60\24\73\2b\76\2b\f3\2c\f9\2c\27\2d\2d\2d\2d\2d\30\2d\67\2d\6f\2d\70\2d\7f\2d\96\2d\a0\2d\52\2e\80\2e\f3\2e\00\2f\d5\2f\f0\2f\fb\2f\01\30\96\30\99\30\ff\30\05\31\e3\31\f0\31\fc\9f\00\a0\8c\a4\90\a4\c6\a4\d0\a4\2b\a6\40\a6\f7\a6\00\a7\bf\a7\c2\a7\ca\a7\f5\a7\2c\a8\30\a8\39\a8\40\a8\77\a8\80\a8\c5\a8\ce\a8\d9\a8\e0\a8\53\a9\5f\a9\7c\a9\80\a9\d9\a9\de\a9\36\aa\40\aa\4d\aa\50\aa\59\aa\5c\aa\c2\aa\db\aa\f6\aa\01\ab\06\ab\09\ab\0e\ab\11\ab\16\ab\20\ab\6b\ab\70\ab\ed\ab\f0\ab\f9\ab\00\ac\a3\d7\b0\d7\c6\d7\cb\d7\fb\d7\00\f9\6d\fa\70\fa\d9\fa\00\fb\06\fb\13\fb\17\fb\1d\fb\c1\fb\d3\fb\3f\fd\50\fd\8f\fd\92\fd\c7\fd\f0\fd\fd\fd\00\fe\19\fe\20\fe\6b\fe\70\fe\fc\fe\01\ff\be\ff\c2\ff\c7\ff\ca\ff\cf\ff\d2\ff\d7\ff\da\ff\dc\ff\e0\ff\ee\ff\fc\ff\fd\ff\00\00\00\00\01\00\4d\00\01\00\50\00\01\00\5d\00\01\00\80\00\01\00\fa\00\01\00\00\01\01\00\02\01\01\00\07\01\01\00\33\01\01\00\37\01\01\00\9c\01\01\00\a0\01\01\00\a0\01\01\00\d0\01\01\00\fd\01\01\00\80\02\01\00\9c\02\01\00\a0\02\01\00\d0\02\01\00\e0\02\01\00\fb\02\01\00\00\03\01\00\23\03\01\00\2d\03\01\00\4a\03\01\00\50\03\01\00\7a\03\01\00\80\03\01\00\c3\03\01\00\c8\03\01\00\d5\03\01\00\00\04\01\00\9d\04\01\00\a0\04\01\00\a9\04\01\00\b0\04\01\00\d3\04\01\00\d8\04\01\00\fb\04\01\00\00\05\01\00\27\05\01\00\30\05\01\00\63\05\01\00\6f\05\01\00\6f\05\01\00\00\06\01\00\36\07\01\00\40\07\01\00\55\07\01\00\60\07\01\00\67\07\01\00\00\08\01\00\05\08\01\00\08\08\01\00\38\08\01\00\3c\08\01\00\3c\08\01\00\3f\08\01\00\9e\08\01\00\a7\08\01\00\af\08\01\00\e0\08\01\00\f5\08\01\00\fb\08\01\00\1b\09\01\00\1f\09\01\00\39\09\01\00\3f\09\01\00\3f\09\01\00\80\09\01\00\b7\09\01\00\bc\09\01\00\cf\09\01\00\d2\09\01\00\06\0a\01\00\0c\0a\01\00\35\0a\01\00\38\0a\01\00\3a\0a\01\00\3f\0a\01\00\48\0a\01\00\50\0a\01\00\58\0a\01\00\60\0a\01\00\9f\0a\01\00\c0\0a\01\00\e6\0a\01\00\eb\0a\01\00\f6\0a\01\00\00\0b\01\00\35\0b\01\00\39\0b\01\00\55\0b\01\00\58\0b\01\00\72\0b\01\00\78\0b\01\00\91\0b\01\00\99\0b\01\00\9c\0b\01\00\a9\0b\01\00\af\0b\01\00\00\0c\01\00\48\0c\01\00\80\0c\01\00\b2\0c\01\00\c0\0c\01\00\f2\0c\01\00\fa\0c\01\00\27\0d\01\00\30\0d\01\00\39\0d\01\00\60\0e\01\00\ad\0e\01\00\b0\0e\01\00\b1\0e\01\00\00\0f\01\00\27\0f\01\00\30\0f\01\00\59\0f\01\00\b0\0f\01\00\cb\0f\01\00\e0\0f\01\00\f6\0f\01\00\00\10\01\00\4d\10\01\00\52\10\01\00\6f\10\01\00\7f\10\01\00\c1\10\01\00\d0\10\01\00\e8\10\01\00\f0\10\01\00\f9\10\01\00\00\11\01\00\47\11\01\00\50\11\01\00\76\11\01\00\80\11\01\00\f4\11\01\00\00\12\01\00\3e\12\01\00\80\12\01\00\a9\12\01\00\b0\12\01\00\ea\12\01\00\f0\12\01\00\f9\12\01\00\00\13\01\00\0c\13\01\00\0f\13\01\00\10\13\01\00\13\13\01\00\44\13\01\00\47\13\01\00\48\13\01\00\4b\13\01\00\4d\13\01\00\50\13\01\00\50\13\01\00\57\13\01\00\57\13\01\00\5d\13\01\00\63\13\01\00\66\13\01\00\6c\13\01\00\70\13\01\00\74\13\01\00\00\14\01\00\61\14\01\00\80\14\01\00\c7\14\01\00\d0\14\01\00\d9\14\01\00\80\15\01\00\b5\15\01\00\b8\15\01\00\dd\15\01\00\00\16\01\00\44\16\01\00\50\16\01\00\59\16\01\00\60\16\01\00\6c\16\01\00\80\16\01\00\b8\16\01\00\c0\16\01\00\c9\16\01\00\00\17\01\00\1a\17\01\00\1d\17\01\00\2b\17\01\00\30\17\01\00\3f\17\01\00\00\18\01\00\3b\18\01\00\a0\18\01\00\f2\18\01\00\ff\18\01\00\06\19\01\00\09\19\01\00\09\19\01\00\0c\19\01\00\38\19\01\00\3b\19\01\00\46\19\01\00\50\19\01\00\59\19\01\00\a0\19\01\00\a7\19\01\00\aa\19\01\00\d7\19\01\00\da\19\01\00\e4\19\01\00\00\1a\01\00\47\1a\01\00\50\1a\01\00\a2\1a\01\00\c0\1a\01\00\f8\1a\01\00\00\1c\01\00\45\1c\01\00\50\1c\01\00\6c\1c\01\00\70\1c\01\00\8f\1c\01\00\92\1c\01\00\b6\1c\01\00\00\1d\01\00\36\1d\01\00\3a\1d\01\00\47\1d\01\00\50\1d\01\00\59\1d\01\00\60\1d\01\00\98\1d\01\00\a0\1d\01\00\a9\1d\01\00\e0\1e\01\00\f8\1e\01\00\b0\1f\01\00\b0\1f\01\00\c0\1f\01\00\f1\1f\01\00\ff\1f\01\00\99\23\01\00\00\24\01\00\74\24\01\00\80\24\01\00\43\25\01\00\00\30\01\00\2e\34\01\00\00\44\01\00\46\46\01\00\00\68\01\00\38\6a\01\00\40\6a\01\00\69\6a\01\00\6e\6a\01\00\6f\6a\01\00\d0\6a\01\00\ed\6a\01\00\f0\6a\01\00\f5\6a\01\00\00\6b\01\00\45\6b\01\00\50\6b\01\00\77\6b\01\00\7d\6b\01\00\8f\6b\01\00\40\6e\01\00\9a\6e\01\00\00\6f\01\00\4a\6f\01\00\4f\6f\01\00\87\6f\01\00\8f\6f\01\00\9f\6f\01\00\e0\6f\01\00\e4\6f\01\00\f0\6f\01\00\f1\6f\01\00\00\70\01\00\f7\87\01\00\00\88\01\00\d5\8c\01\00\00\8d\01\00\08\8d\01\00\00\b0\01\00\1e\b1\01\00\50\b1\01\00\52\b1\01\00\64\b1\01\00\67\b1\01\00\70\b1\01\00\fb\b2\01\00\00\bc\01\00\6a\bc\01\00\70\bc\01\00\7c\bc\01\00\80\bc\01\00\88\bc\01\00\90\bc\01\00\99\bc\01\00\9c\bc\01\00\9f\bc\01\00\00\d0\01\00\f5\d0\01\00\00\d1\01\00\26\d1\01\00\29\d1\01\00\72\d1\01\00\7b\d1\01\00\e8\d1\01\00\00\d2\01\00\45\d2\01\00\e0\d2\01\00\f3\d2\01\00\00\d3\01\00\56\d3\01\00\60\d3\01\00\78\d3\01\00\00\d4\01\00\9f\d4\01\00\a2\d4\01\00\a2\d4\01\00\a5\d4\01\00\a6\d4\01\00\a9\d4\01\00\0a\d5\01\00\0d\d5\01\00\46\d5\01\00\4a\d5\01\00\a5\d6\01\00\a8\d6\01\00\cb\d7\01\00\ce\d7\01\00\8b\da\01\00\9b\da\01\00\af\da\01\00\00\e0\01\00\18\e0\01\00\1b\e0\01\00\2a\e0\01\00\00\e1\01\00\2c\e1\01\00\30\e1\01\00\3d\e1\01\00\40\e1\01\00\49\e1\01\00\4e\e1\01\00\4f\e1\01\00\c0\e2\01\00\f9\e2\01\00\ff\e2\01\00\ff\e2\01\00\00\e8\01\00\c4\e8\01\00\c7\e8\01\00\d6\e8\01\00\00\e9\01\00\4b\e9\01\00\50\e9\01\00\59\e9\01\00\5e\e9\01\00\5f\e9\01\00\71\ec\01\00\b4\ec\01\00\01\ed\01\00\3d\ed\01\00\00\ee\01\00\24\ee\01\00\27\ee\01\00\3b\ee\01\00\42\ee\01\00\42\ee\01\00\47\ee\01\00\54\ee\01\00\57\ee\01\00\64\ee\01\00\67\ee\01\00\9b\ee\01\00\a1\ee\01\00\bb\ee\01\00\f0\ee\01\00\f1\ee\01\00\00\f0\01\00\2b\f0\01\00\30\f0\01\00\93\f0\01\00\a0\f0\01\00\ae\f0\01\00\b1\f0\01\00\f5\f0\01\00\00\f1\01\00\ad\f1\01\00\e6\f1\01\00\02\f2\01\00\10\f2\01\00\3b\f2\01\00\40\f2\01\00\48\f2\01\00\50\f2\01\00\51\f2\01\00\60\f2\01\00\65\f2\01\00\00\f3\01\00\d7\f6\01\00\e0\f6\01\00\ec\f6\01\00\f0\f6\01\00\fc\f6\01\00\00\f7\01\00\73\f7\01\00\80\f7\01\00\d8\f7\01\00\e0\f7\01\00\eb\f7\01\00\00\f8\01\00\0b\f8\01\00\10\f8\01\00\47\f8\01\00\50\f8\01\00\59\f8\01\00\60\f8\01\00\87\f8\01\00\90\f8\01\00\ad\f8\01\00\b0\f8\01\00\b1\f8\01\00\00\f9\01\00\53\fa\01\00\60\fa\01\00\6d\fa\01\00\70\fa\01\00\74\fa\01\00\78\fa\01\00\7a\fa\01\00\80\fa\01\00\86\fa\01\00\90\fa\01\00\a8\fa\01\00\b0\fa\01\00\b6\fa\01\00\c0\fa\01\00\c2\fa\01\00\d0\fa\01\00\d6\fa\01\00\00\fb\01\00\ca\fb\01\00\f0\fb\01\00\f9\fb\01\00\00\00\02\00\dd\a6\02\00\00\a7\02\00\34\b7\02\00\40\b7\02\00\1d\b8\02\00\20\b8\02\00\a1\ce\02\00\b0\ce\02\00\e0\eb\02\00\00\f8\02\00\1d\fa\02\00\00\00\03\00\4a\13\03\00\00\01\0e\00\ef\01\0e\00\00\00\00\00\00\00\00\00\c0\39\00\00\00\00\00\00\01\00\00\00\00\00\00\00\60\3a\00\00\01\00\00\00\01\00\00\00\00\00\00\00\7f\7b\00\00\02\00\00\00\01\00\00\00\00\00\00\00\7c\81\00\00\03\00\00\00\02\00\00\00\00\00\00\00\7f\81\00\00\03\00\00\00\02\00\00\00\00\00\00\00\82\81\00\00\04\00\00\00\02\00\00\00\00\00\00\00\86\81\00\00\05\00\00\00\03\00\00\00\00\00\00\00\8b\81\00\00\05\00\00\00\03\00\00\00\00\00\00\00\90\81\00\00\06\00\00\00\03\00\00\00\00\00\00\00\96\81\00\00\07\00\00\00\04\00\00\00\00\00\00\00\9d\81\00\00\07\00\00\00\04\00\00\00\00\00\00\00\a4\81\00\00\08\00\00\00\04\00\00\00\00\00\00\00\ac\81\00\00\09\00\00\00\04\00\00\00\00\00\00\00\b5\81\00\00\0a\00\00\00\05\00\00\00\00\00\00\00\bf\81\00\00\0a\00\00\00\05\00\00\00\00\00\00\00\c9\81\00\00\0b\00\00\00\05\00\00\00\00\00\00\00\d4\81\00\00\0c\00\00\00\06\00\00\00\00\00\00\00\e0\81\00\00\0c\00\00\00\06\00\00\00\00\00\00\00\ec\81\00\00\0d\00\00\00\06\00\00\00\00\00\00\00\f9\81\00\00\0e\00\00\00\07\00\00\00\00\00\00\00\07\82\00\00\0e\00\00\00\07\00\00\00\00\00\00\00\15\82\00\00\0f\00\00\00\07\00\00\00\00\00\00\00\24\82\00\00\10\00\00\00\07\00\00\00\00\00\00\00\34\82\00\00\11\00\00\00\08\00\00\00\00\00\00\00\45\82\00\00\11\00\00\00\08\00\00\00\00\00\00\00\56\82\00\00\12\00\00\00\08\00\00\00\00\00\00\00\68\82\00\00\13\00\00\00\09\00\00\00\00\00\00\00\7b\82\00\00\13\00\00\00\09\00\00\00\00\00\00\00\8e\82\00\00\14\00\00\00\09\00\00\00\00\00\00\00\a2\82\00\00\15\00\00\00\0a\00\00\00\00\00\00\00\b7\82\00\00\15\00\00\00\0a\00\00\00\00\00\00\00\cc\82\00\00\16\00\00\00\0a\00\00\00\00\00\00\00\e2\82\00\00\17\00\00\00\0a\00\00\00\00\00\00\00\f9\82\00\00\18\00\00\00\0b\00\00\00\00\00\00\00\11\83\00\00\18\00\00\00\0b\00\00\00\00\00\00\00\29\83\00\00\19\00\00\00\0b\00\00\00\00\00\00\00\42\83\00\00\1a\00\00\00\0c\00\00\00\00\00\00\00\5c\83\00\00\1a\00\00\00\0c\00\00\00\00\00\00\00\76\83\00\00\1b\00\00\00\0c\00\00\00\00\00\00\00\91\83\00\00\1c\00\00\00\0d\00\00\00\00\00\00\00\ad\83\00\00\1c\00\00\00\0d\00\00\00\00\00\00\00\c9\83\00\00\1d\00\00\00\0d\00\00\00\00\00\00\00\e6\83\00\00\1e\00\00\00\0d\00\00\00\00\00\00\00\04\84\00\00\1f\00\00\00\0e\00\00\00\00\00\00\00\23\84\00\00\1f\00\00\00\0e\00\00\00\00\00\00\00\42\84\00\00\20\00\00\00\0e\00\00\00\00\00\00\00\62\84\00\00\21\00\00\00\0f\00\00\00\00\00\00\00\83\84\00\00\21\00\00\00\0f\00\00\00\00\00\00\00\a4\84\00\00\22\00\00\00\0f\00\00\00\00\00\00\00\c6\84\00\00\23\00\00\00\10\00\00\00\00\00\00\00\e9\84\00\00\23\00\00\00\10\00\00\00\00\00\00\00\0c\85\00\00\24\00\00\00\10\00\00\00\00\00\00\00\30\85\00\00\25\00\00\00\10\00\00\00\00\00\00\00\55\85\00\00\26\00\00\00\11\00\00\00\00\00\00\00\7b\85\00\00\26\00\00\00\11\00\00\00\00\00\00\00\a1\85\00\00\27\00\00\00\11\00\00\00\00\00\00\00\c8\85\00\00\28\00\00\00\12\00\00\00\00\00\00\00\f0\85\00\00\28\00\00\00\12\00\00\00\00\00\00\00\18\86\00\00\29\00\00\00\12\00\00\00\00\00\00\00\41\86\00\00\2a\00\00\00\13\00\00\00\00\00\00\00\6b\86\00\00\2a\00\00\00\00\00\00\00\01\00\00\00\03\00\00\00\06\00\00\00\09\00\00\00\0d\00\00\00\10\00\00\00\13\00\00\00\17\00\00\00\1a\00\00\00\00\00\00\00\01\00\00\00\00\00\00\00\0a\00\00\00\00\00\00\00\64\00\00\00\00\00\00\00\e8\03\00\00\00\00\00\00\10\27\00\00\00\00\00\00\a0\86\01\00\00\00\00\00\40\42\0f\00\00\00\00\00\80\96\98\00\00\00\00\00\00\e1\f5\05\00\00\00\00\00\ca\9a\3b\00\00\00\00\00\e4\0b\54\02\00\00\00\00\e8\76\48\17\00\00\00\00\10\a5\d4\e8\00\00\00\00\a0\72\4e\18\09\00\00\00\40\7a\10\f3\5a\00\00\00\80\c6\a4\7e\8d\03\00\00\00\c1\6f\f2\86\23\00\00\00\8a\5d\78\45\63\01\00\00\64\a7\b3\b6\e0\0d\00\00\00\00\00\00\00\00\80\bf\a0\bf\80\9f\90\bf\80\8f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\13\03\03\03\03\03\03\03\03\03\03\03\03\23\03\03\34\04\04\04\44\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\8c\00\00\00\14\00\00\00\04\00\00\00\0a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00\8c\00\00\00\14\00\00\00\04\00\00\00\0a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00\8c\00\00\00\14\00\00\00\04\00\00\00\0a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00\8c\00\00\00\14\00\00\00\04\00\00\00\0a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\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\00\00\f3\f1\e5\00\b8\a8\7b\00\7b\61\30\00\3b\26\08\00\f3\f7\fb\00\83\b0\e5\00\5d\6e\42\00\3d\28\20\00\c2\e4\ff\00\56\a4\dc\00\4c\60\a9\00\36\29\42\00\dd\f5\ff\00\6b\b2\f4\00\91\65\b7\00\6c\29\65\00\e0\ff\f1\00\71\81\98\00\34\35\46\00\21\17\1e\00\d3\f6\ff\00\75\a8\f9\00\6f\6b\eb\00\58\3f\7c\00\b8\cc\c5\00\98\9b\89\00\72\68\5d\00\43\33\33\00\d0\fb\f4\00\68\cf\68\00\78\91\1e\00\1f\24\05\00\e8\f0\e0\00\b0\c0\a8\00\68\78\50\00\30\30\18\00\91\d1\ff\00\4f\92\ff\00\5c\60\66\00\20\1e\21\00\30\61\73\73\65\72\74\20\66\61\69\6c\65\64\20\28\61\73\73\65\72\74\20\66\61\69\6c\65\64\3a\20\6e\69\6c\20\6d\61\70\2e\6d\61\70\2e\77\61\3a\32\30\3a\38\70\61\6e\69\63\3a\20\74\72\75\65\66\61\6c\73\65\4e\61\4e\2b\49\6e\66\2d\49\6e\66\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\0a\5b\2f\5d\69\6e\74\65\67\65\72\20\6f\76\65\72\66\6c\6f\77\62\69\74\73\2e\77\61\3a\35\30\32\3a\38\69\6e\74\65\67\65\72\20\64\69\76\69\64\65\20\62\79\20\7a\65\72\6f\62\69\74\73\2e\77\61\3a\35\30\35\3a\38\62\69\74\73\2e\77\61\3a\35\32\32\3a\38\62\69\74\73\2e\77\61\3a\35\32\35\3a\38\00\01\02\02\03\03\03\03\04\04\04\04\04\04\04\04\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\00\01\01\02\01\02\02\03\01\02\02\03\02\03\03\04\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\04\05\05\06\05\06\06\07\05\06\06\07\06\07\07\08\00\80\40\c0\20\a0\60\e0\10\90\50\d0\30\b0\70\f0\08\88\48\c8\28\a8\68\e8\18\98\58\d8\38\b8\78\f8\04\84\44\c4\24\a4\64\e4\14\94\54\d4\34\b4\74\f4\0c\8c\4c\cc\2c\ac\6c\ec\1c\9c\5c\dc\3c\bc\7c\fc\02\82\42\c2\22\a2\62\e2\12\92\52\d2\32\b2\72\f2\0a\8a\4a\ca\2a\aa\6a\ea\1a\9a\5a\da\3a\ba\7a\fa\06\86\46\c6\26\a6\66\e6\16\96\56\d6\36\b6\76\f6\0e\8e\4e\ce\2e\ae\6e\ee\1e\9e\5e\de\3e\be\7e\fe\01\81\41\c1\21\a1\61\e1\11\91\51\d1\31\b1\71\f1\09\89\49\c9\29\a9\69\e9\19\99\59\d9\39\b9\79\f9\05\85\45\c5\25\a5\65\e5\15\95\55\d5\35\b5\75\f5\0d\8d\4d\cd\2d\ad\6d\ed\1d\9d\5d\dd\3d\bd\7d\fd\03\83\43\c3\23\a3\63\e3\13\93\53\d3\33\b3\73\f3\0b\8b\4b\cb\2b\ab\6b\eb\1b\9b\5b\db\3b\bb\7b\fb\07\87\47\c7\27\a7\67\e7\17\97\57\d7\37\b7\77\f7\0f\8f\4f\cf\2f\af\6f\ef\1f\9f\5f\df\3f\bf\7f\ff\08\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\06\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\07\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\06\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\41\74\6f\69\54\52\55\45\54\72\75\65\46\41\4c\53\45\46\61\6c\73\65\50\61\72\73\65\42\6f\6f\6c\50\61\72\73\65\46\6c\6f\61\74\50\61\72\73\65\49\6e\74\50\61\72\73\65\55\69\6e\74\5c\61\5c\62\5c\66\5c\6e\5c\72\5c\74\5c\76\5c\78\5c\75\5c\55\69\6e\76\61\6c\69\64\20\62\61\73\65\20\69\6e\76\61\6c\69\64\20\62\69\74\20\73\69\7a\65\20\30\31\32\33\34\35\36\37\38\39\41\42\43\44\45\46\73\74\72\63\6f\6e\76\3a\20\69\6c\6c\65\67\61\6c\20\41\70\70\65\6e\64\49\6e\74\2f\46\6f\72\6d\61\74\49\6e\74\20\62\61\73\65\69\74\6f\61\2e\77\61\3a\38\37\3a\38\30\30\30\31\30\32\30\33\30\34\30\35\30\36\30\37\30\38\30\39\31\30\31\31\31\32\31\33\31\34\31\35\31\36\31\37\31\38\31\39\32\30\32\31\32\32\32\33\32\34\32\35\32\36\32\37\32\38\32\39\33\30\33\31\33\32\33\33\33\34\33\35\33\36\33\37\33\38\33\39\34\30\34\31\34\32\34\33\34\34\34\35\34\36\34\37\34\38\34\39\35\30\35\31\35\32\35\33\35\34\35\35\35\36\35\37\35\38\35\39\36\30\36\31\36\32\36\33\36\34\36\35\36\36\36\37\36\38\36\39\37\30\37\31\37\32\37\33\37\34\37\35\37\36\37\37\37\38\37\39\38\30\38\31\38\32\38\33\38\34\38\35\38\36\38\37\38\38\38\39\39\30\39\31\39\32\39\33\39\34\39\35\39\36\39\37\39\38\39\39\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\67\68\69\6a\6b\6c\6d\6e\6f\70\71\72\73\74\75\76\77\78\79\7a\73\74\72\63\6f\6e\76\3a\20\69\6c\6c\65\67\61\6c\20\41\70\70\65\6e\64\46\6c\6f\61\74\2f\46\6f\72\6d\61\74\46\6c\6f\61\74\20\62\69\74\53\69\7a\65\66\74\6f\61\2e\77\61\3a\36\34\3a\38\76\61\6c\75\65\20\6f\75\74\20\6f\66\20\72\61\6e\67\65\69\6e\76\61\6c\69\64\20\73\79\6e\74\61\78\31\32\35\36\32\35\33\31\32\35\31\35\36\32\35\37\38\31\32\35\33\39\30\36\32\35\31\39\35\33\31\32\35\39\37\36\35\36\32\35\34\38\38\32\38\31\32\35\32\34\34\31\34\30\36\32\35\31\32\32\30\37\30\33\31\32\35\36\31\30\33\35\31\35\36\32\35\33\30\35\31\37\35\37\38\31\32\35\31\35\32\35\38\37\38\39\30\36\32\35\37\36\32\39\33\39\34\35\33\31\32\35\33\38\31\34\36\39\37\32\36\35\36\32\35\31\39\30\37\33\34\38\36\33\32\38\31\32\35\39\35\33\36\37\34\33\31\36\34\30\36\32\35\34\37\36\38\33\37\31\35\38\32\30\33\31\32\35\32\33\38\34\31\38\35\37\39\31\30\31\35\36\32\35\31\31\39\32\30\39\32\38\39\35\35\30\37\38\31\32\35\35\39\36\30\34\36\34\34\37\37\35\33\39\30\36\32\35\32\39\38\30\32\33\32\32\33\38\37\36\39\35\33\31\32\35\31\34\39\30\31\31\36\31\31\39\33\38\34\37\36\35\36\32\35\37\34\35\30\35\38\30\35\39\36\39\32\33\38\32\38\31\32\35\33\37\32\35\32\39\30\32\39\38\34\36\31\39\31\34\30\36\32\35\31\38\36\32\36\34\35\31\34\39\32\33\30\39\35\37\30\33\31\32\35\39\33\31\33\32\32\35\37\34\36\31\35\34\37\38\35\31\35\36\32\35\34\36\35\36\36\31\32\38\37\33\30\37\37\33\39\32\35\37\38\31\32\35\32\33\32\38\33\30\36\34\33\36\35\33\38\36\39\36\32\38\39\30\36\32\35\31\31\36\34\31\35\33\32\31\38\32\36\39\33\34\38\31\34\34\35\33\31\32\35\35\38\32\30\37\36\36\30\39\31\33\34\36\37\34\30\37\32\32\36\35\36\32\35\32\39\31\30\33\38\33\30\34\35\36\37\33\33\37\30\33\36\31\33\32\38\31\32\35\31\34\35\35\31\39\31\35\32\32\38\33\36\36\38\35\31\38\30\36\36\34\30\36\32\35\37\32\37\35\39\35\37\36\31\34\31\38\33\34\32\35\39\30\33\33\32\30\33\31\32\35\33\36\33\37\39\37\38\38\30\37\30\39\31\37\31\32\39\35\31\36\36\30\31\35\36\32\35\31\38\31\38\39\38\39\34\30\33\35\34\35\38\35\36\34\37\35\38\33\30\30\37\38\31\32\35\39\30\39\34\39\34\37\30\31\37\37\32\39\32\38\32\33\37\39\31\35\30\33\39\30\36\32\35\34\35\34\37\34\37\33\35\30\38\38\36\34\36\34\31\31\38\39\35\37\35\31\39\35\33\31\32\35\32\32\37\33\37\33\36\37\35\34\34\33\32\33\32\30\35\39\34\37\38\37\35\39\37\36\35\36\32\35\31\31\33\36\38\36\38\33\37\37\32\31\36\31\36\30\32\39\37\33\39\33\37\39\38\38\32\38\31\32\35\35\36\38\34\33\34\31\38\38\36\30\38\30\38\30\31\34\38\36\39\36\38\39\39\34\31\34\30\36\32\35\32\38\34\32\31\37\30\39\34\33\30\34\30\34\30\30\37\34\33\34\38\34\34\39\37\30\37\30\33\31\32\35\31\34\32\31\30\38\35\34\37\31\35\32\30\32\30\30\33\37\31\37\34\32\32\34\38\35\33\35\31\35\36\32\35\37\31\30\35\34\32\37\33\35\37\36\30\31\30\30\31\38\35\38\37\31\31\32\34\32\36\37\35\37\38\31\32\35\33\35\35\32\37\31\33\36\37\38\38\30\30\35\30\30\39\32\39\33\35\35\36\32\31\33\33\37\38\39\30\36\32\35\31\37\37\36\33\35\36\38\33\39\34\30\30\32\35\30\34\36\34\36\37\37\38\31\30\36\36\38\39\34\35\33\31\32\35\38\38\38\31\37\38\34\31\39\37\30\30\31\32\35\32\33\32\33\33\38\39\30\35\33\33\34\34\37\32\36\35\36\32\35\34\34\34\30\38\39\32\30\39\38\35\30\30\36\32\36\31\36\31\36\39\34\35\32\36\36\37\32\33\36\33\32\38\31\32\35\32\32\32\30\34\34\36\30\34\39\32\35\30\33\31\33\30\38\30\38\34\37\32\36\33\33\33\36\31\38\31\36\34\30\36\32\35\31\31\31\30\32\32\33\30\32\34\36\32\35\31\35\36\35\34\30\34\32\33\36\33\31\36\36\38\30\39\30\38\32\30\33\31\32\35\35\35\35\31\31\31\35\31\32\33\31\32\35\37\38\32\37\30\32\31\31\38\31\35\38\33\34\30\34\35\34\31\30\31\35\36\32\35\32\37\37\35\35\35\37\35\36\31\35\36\32\38\39\31\33\35\31\30\35\39\30\37\39\31\37\30\32\32\37\30\35\30\37\38\31\32\35\31\33\38\37\37\37\38\37\38\30\37\38\31\34\34\35\36\37\35\35\32\39\35\33\39\35\38\35\31\31\33\35\32\35\33\39\30\36\32\35\36\39\33\38\38\39\33\39\30\33\39\30\37\32\32\38\33\37\37\36\34\37\36\39\37\39\32\35\35\36\37\36\32\36\39\35\33\31\32\35\33\34\36\39\34\34\36\39\35\31\39\35\33\36\31\34\31\38\38\38\32\33\38\34\38\39\36\32\37\38\33\38\31\33\34\37\36\35\36\32\35\31\37\33\34\37\32\33\34\37\35\39\37\36\38\30\37\30\39\34\34\31\31\39\32\34\34\38\31\33\39\31\39\30\36\37\33\38\32\38\31\32\35\38\36\37\33\36\31\37\33\37\39\38\38\34\30\33\35\34\37\32\30\35\39\36\32\32\34\30\36\39\35\39\35\33\33\36\39\31\34\30\36\32\35\6d\75\6c\74\31\32\38\62\69\74\50\6f\77\31\30\3a\20\70\6f\77\65\72\20\6f\66\20\31\30\20\69\73\20\6f\75\74\20\6f\66\20\72\61\6e\67\65\66\74\6f\61\72\79\75\2e\77\61\3a\35\32\33\3a\38\6d\75\6c\74\36\34\62\69\74\50\6f\77\31\30\3a\20\70\6f\77\65\72\20\6f\66\20\31\30\20\69\73\20\6f\75\74\20\6f\66\20\72\61\6e\67\65\66\74\6f\61\72\79\75\2e\77\61\3a\34\39\35\3a\38\72\79\75\46\74\6f\61\46\69\78\65\64\33\32\20\63\61\6c\6c\65\64\20\77\69\74\68\20\6e\65\67\61\74\69\76\65\20\70\72\65\63\66\74\6f\61\72\79\75\2e\77\61\3a\31\38\3a\38\72\79\75\46\74\6f\61\46\69\78\65\64\33\32\20\63\61\6c\6c\65\64\20\77\69\74\68\20\70\72\65\63\20\3e\20\39\66\74\6f\61\72\79\75\2e\77\61\3a\32\31\3a\38\6e\6f\74\20\65\6e\6f\75\67\68\20\73\69\67\6e\69\66\69\63\61\6e\74\20\62\69\74\73\20\61\66\74\65\72\20\6d\75\6c\74\36\34\62\69\74\50\6f\77\31\30\66\74\6f\61\72\79\75\2e\77\61\3a\34\39\3a\38\72\79\75\46\74\6f\61\46\69\78\65\64\36\34\20\63\61\6c\6c\65\64\20\77\69\74\68\20\70\72\65\63\20\3e\20\31\38\66\74\6f\61\72\79\75\2e\77\61\3a\38\38\3a\38\6e\6f\74\20\65\6e\6f\75\67\68\20\73\69\67\6e\69\66\69\63\61\6e\74\20\62\69\74\73\20\61\66\74\65\72\20\6d\75\6c\74\31\32\38\62\69\74\50\6f\77\31\30\66\74\6f\61\72\79\75\2e\77\61\3a\31\31\39\3a\38\66\74\6f\61\72\79\75\2e\77\61\3a\32\35\39\3a\38\69\6e\66\69\6e\69\74\79\6e\61\6e\20\20\20\20\42\54\4e\31\42\54\4e\32\f0\9f\a1\b1\f0\9f\a1\b3\f0\9f\a1\b2\f0\9f\a1\b0\20\2d\20\54\6f\74\61\6c\77\61\2d\6c\61\6e\67\2e\6f\72\67\20\2d\2b\2d\2b\2d\2b\2d\20\20\32\7c\30\7c\34\7c\38\20\4c\20\20\20\45\20\20\20\54\20\20\20\53\20\20\20\20\20\20\47\20\20\20\4f\2e\4c\20\20\45\20\20\54\20\20\53\20\20\20\20\47\20\20\4f\21\4c\20\45\20\54\20\53\20\20\47\20\4f\21\4c\45\54\53\20\47\4f\21\73\74\72\63\6f\6e\76\2e\70\61\72\73\69\6e\67\20\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\01\00\00\00\ff\ff\ff\ff\02\00\00\00\ff\ff\ff\ff\02\00\00\00\fe\ff\ff\ff\21\00\00\00\00\00\00\00\03\00\00\00\ff\ff\ff\ff\03\00\00\00\fe\ff\ff\ff\22\00\00\00\00\00\00\00\04\00\00\00\ff\ff\ff\ff\04\00\00\00\fd\ff\ff\ff\23\00\00\00\24\00\00\00\25\00\00\00\26\00\00\00\27\00\00\00\28\00\00\00\58\b4\00\00\00\00\00\00\00\00\00\00\60\b4\00\00\68\b4\00\00\00\00\00\00\78\b4\00\00\80\b4\00\00\00\00\00\00\90\b4\00\00\00\00\00\00\98\b4\00\00") + (elem (i32.const 1) $$string.$$compAddr) + (elem (i32.const 2) $$u8.$$block.$$onFree) + (elem (i32.const 3) $$string.underlying.$$onFree) + (elem (i32.const 4) $$void.$$block.$$onFree) + (elem (i32.const 5) $$void.$ref.underlying.$$onFree) + (elem (i32.const 6) $$i`0`.underlying.$$onFree) + (elem (i32.const 7) $$runtime.mapNode.$$onFree) + (elem (i32.const 8) $$runtime.mapNode.$$block.$$onFree) + (elem (i32.const 9) $$runtime.mapNode.$slice.underlying.$$onFree) + (elem (i32.const 10) $$runtime.mapImp.$$onFree) + (elem (i32.const 11) $$runtime.mapImp.$$block.$$onFree) + (elem (i32.const 12) $$runtime.mapImp.$ref.underlying.$$onFree) + (elem (i32.const 13) $$runtime.mapIter.$$onFree) + (elem (i32.const 14) $$runtime.mapNode.$array1.underlying.$$onFree) + (elem (i32.const 15) $$errors.errorString.$$onFree) + (elem (i32.const 16) $$.error.underlying.$$onFree) + (elem (i32.const 17) $$strconv.NumError.$$onFree) + (elem (i32.const 18) $$u8.$slice.underlying.$$onFree) + (elem (i32.const 19) $$strconv.decimalSlice.$$onFree) + (elem (i32.const 20) $$w42048$game.Board.underlying.$$onFree) + (elem (i32.const 21) $$w42048.UI.$$onFree) + (elem (i32.const 22) $$$$$u32$$.underlying.$$onFree) + (elem (i32.const 23) $$i32.$slice.$$block.$$onFree) + (elem (i32.const 24) $$i32.$slice.$slice.underlying.$$onFree) + (elem (i32.const 25) $$w42048$game.board.$$onFree) + (elem (i32.const 26) $w42048$game.lcg$1.$warpfn) + (elem (i32.const 27) $$u32.$$block.$$onFree) + (elem (i32.const 28) $$u32.$ref.underlying.$$onFree) + (elem (i32.const 29) $$w42048$game.lcg$1.$warpdata.$$onFree) + (elem (i32.const 30) $$i32.$$block.$$onFree) + (elem (i32.const 31) $$i32.$slice.underlying.$$onFree) + (elem (i32.const 32) $$i32.$slice.$array1.underlying.$$onFree) + (elem (i32.const 33) $errors.errorString.Error) + (elem (i32.const 34) $strconv.NumError.Error) + (elem (i32.const 35) $w42048$game.board.Add) + (elem (i32.const 36) $w42048$game.board.Get) + (elem (i32.const 37) $w42048$game.board.Input) + (elem (i32.const 38) $w42048$game.board.IsOver) + (elem (i32.const 39) $w42048$game.board.Restart) + (elem (i32.const 40) $w42048$game.board.Total) +) diff --git a/w4-2048/wasm4.css b/w4-2048/wasm4.css new file mode 100644 index 00000000..7c7e0155 --- /dev/null +++ b/w4-2048/wasm4.css @@ -0,0 +1 @@ +html,body{height:100%;margin:0}@font-face{font-family:wasm4-font;src:url(data:font/woff2;base64,d09GMgABAAAAAAegAA0AAAAAKHwAAAdOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYGYAA0CAQRCArGHLlRC4FCAAE2AiQDgUIEIAWDJgcgG4ggUVRQhkQRbBylAWCR/eGAmzBgcbVSEQV1MFRs8Ts/TVirjdcmzZum+foZqYGq4TdA2FbzSDx8f5+ee7Ns74fim/BWoE4AP1Wwc6lakA20VO54RMrR2gpfsF97s/P3xKMD8UIkBZNFk2ondPz/n9v9G4ROvGcJ9ejaJw8RK4kYUOt8zO4KgUDgofBQGDwMCjsf2FAHKMuSxfQKGICKTqpw8TAYfHywFNs02zbbJDAgUAD+z7l4byADjcSJjXhAkX+V15z5PA0HfmEHdHqW5OfXT1PsVLlV5AkPgm14EPW/1ds0nWuhRkHhmb/7JBfdZazTpbTGMrxynHPs9XO634fF7LHGGYvKrld7xSsgpTyfJqABJJGiNEP0JXXyPy/gUd+Oq0QckHKAEocXne/KDv7oOwSG0MMrDDRgQ0HCAFZ0Ar7LFhgi+t39/2Lzv/+fFLDLD/G/EugBH+CBbj+wXA/giv6ofkm3ZAqiNhrXlgkd4AIQwJg18/ES0QEKIZXedNDpbH9FmDzLD3D97q2rzT3TRXdngPKMRazVYXWiUtlpVnZTprWt4J6wbQiLK7o/u+vhZr91OWHc2/gH+Qyq505NGWB7ui1DWkl94VWLPsznaf1Socl++32X0B1fLASbyLYi6TAO6LlJoPwXg5YAIDQZ2GxXd7yaLzKdTNrAjkIbD1Sca4fUrWmNr+IUViUJVbuuu66KDZXmnH4fMCQ5ukPCRJDdgit52b4Et5RuCK2ZjuBXWu6K6zJkW4qAxA6Y0BWJpS9UgZPLQ3iSuQWAodKrD1VK44bhgApzKGely9pyBS45qWsGAx7ELrGRNkqZX2rpG1no3KgrF9zv29HXdcAmEYpTeqXQunmcM1KNLri1l3ETKhr/jkuZpYQWCtMUkAOA+G31Ezc8TlQCcX0AFiJM8A/Ja5ANNF3s+Aj1HaR91PPZwCslbEBH81Bta7KBGjhAdpteqxIHxKrVrglxhbYG0qRrxPwYd+RA3LtpvfDZhqQKKExdOI4SSCr8hboPCCdUxuYcsLQ2TWw8XO+W8S8kg28tTsGhGLgAGRwq7qpSd5XiJn8+0m7km8BBpAhQ5rqdtpQ58nsk6UVIA1DbFmX+klm8NFI+mk+Ll5BXDAY1ZsGRNeDGIUiLnIISx8u1n++kPlx5KbJLJOSiIDP1dfY4drhKlPE7oTwc9gEI5vBFDpQ2ih/QCB4V+GrFeAMbdFltBSpSqZm9jTuVVM1CVTyG+Haj1uZhNOXIU0xda+WccPIV0vAyy13AXHS7odKqX6lPnNQW29uptFF7hjud+bei1obGQ3mmpvE7YI+21Nlt7iq+tVb3XTcUFG5q31u2uVI1qvk971yZ+/NvzpZV1dNa7Wrems+vXZ7G0bjYrBMdM44xvrdfytxyouoAmPMIUnc0H1njzFfrgVdARZ2VnWXVw+0qv/fX8iYj698zzrSTOlorbpYF7dsMJFE7yW5kV/NV/wwJ/6VW+S3vk6u7s/frQR4kpi7JSQUksyJhl0BSNPS65eUmD+i8UGEYHhd5zmQA0oU5xN+qs8fdwfJZAQaqNDFTgSowOASAVTi4nNRD5CwJVyFK13cHxDEeWVQDvZU3CfsgXuwhIGxxAGE3sxM1QNCL5oTRpAtVec0/pJXNfeLQLO+973quQzeYBhK7GMFx18+4DtE1AX90lFeaawcfPwKbh9CZncWGRig514Ca6r5aIcMk1u7R7OyRfIjVldpkv/8QTig8xMfDoNqXMmPq6rWqoKMWvmXNIhNcLI1TokIhQLNwOGTfZxXWtBtNJFOwSQNl+3DGVwiBVU4+Oq0FeJi5E8VTE1ABD05R60ZWTc49DS4M1nMCCzmZSm7M8UWDSoiGvZPrWrGYd4bKvbh8oXu1Pnv2vrfKud0bz5t2kT7Ti8FNP4L9IJy/PdAULtKZAlxz2FahwUZvcI6aZm61UI4qEJ3XUpHb3NZcIBs7HYrbHf7GgFYvCv4JTMlVK5o9e10zmwVpEoUbhD8pWxVbCX6xdKM4RGTiZ/2PaYEZMh7uAHi1vTTwNaeeqsmWeoX+fERAY8Dlq8IlZUVTrzi35D7ANkN8liq6UConAkh2mBUCA+jNZ4cnuXvJDuFGvEUlaWfzT5MjGonslkNYRjXtmwJEQgbrm1xCr4/AZMWbVPGZ3SvOH9q/AaXqXNGRhP+VuL2mvmu8/zv9BnB5l14cMu1MBSJ04++6QDnTv1bPp6oZnRul1ORTFVkMUlS1LsSh2h2L41VW44wWXcvRhJYwoLfn7pCnX7rB3Zs4otOwC568tbQs/egw8kfbjvhpM06nOc/rWqbg7EicnAydmY7O4nomxNHJws4WxYXFJFGl55716GhGRqqjKI9kp3x0+aiPQqzthaSFKiR6LmZAzFysLXdGb3rZfIi6TEU7jgcy2geINtNWQpaBCnYWTmxqWDw0wzgfrJvzphPhoIstcvGIzuZO4UN1requPbF1HWhqLtgPf3YiwnTA/xIgKAA=)} diff --git a/w4-2048/wasm4.js b/w4-2048/wasm4.js new file mode 100644 index 00000000..e13db97d --- /dev/null +++ b/w4-2048/wasm4.js @@ -0,0 +1,360 @@ +var wasm4=function(A){"use strict";/** + * @license + * Copyright 2019 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */var ve;const pt=globalThis,_t=pt.ShadowRoot&&(pt.ShadyCSS===void 0||pt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,St=Symbol(),Dt=new WeakMap;let Nt=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==St)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(_t&&t===void 0){const s=e!==void 0&&e.length===1;s&&(t=Dt.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&Dt.set(e,t))}return t}toString(){return this.cssText}};const _e=o=>new Nt(typeof o=="string"?o:o+"",void 0,St),ft=(o,...t)=>{const e=o.length===1?o[0]:t.reduce((s,i,n)=>s+(r=>{if(r._$cssResult$===!0)return r.cssText;if(typeof r=="number")return r;throw Error("Value passed to 'css' function must be a 'css' function result: "+r+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+o[n+1],o[0]);return new Nt(e,o,St)},Se=(o,t)=>{if(_t)o.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(const e of t){const s=document.createElement("style"),i=pt.litNonce;i!==void 0&&s.setAttribute("nonce",i),s.textContent=e.cssText,o.appendChild(s)}},Bt=_t?o=>o:o=>o instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return _e(e)})(o):o;/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const{is:xe,defineProperty:ke,getOwnPropertyDescriptor:Ce,getOwnPropertyNames:Te,getOwnPropertySymbols:Pe,getPrototypeOf:$e}=Object,U=globalThis,Ft=U.trustedTypes,Ie=Ft?Ft.emptyScript:"",xt=U.reactiveElementPolyfillSupport,tt=(o,t)=>o,mt={toAttribute(o,t){switch(t){case Boolean:o=o?Ie:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,t){let e=o;switch(t){case Boolean:e=o!==null;break;case Number:e=o===null?null:Number(o);break;case Object:case Array:try{e=JSON.parse(o)}catch{e=null}}return e}},kt=(o,t)=>!xe(o,t),Ht={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),U.litPropertyMetadata??(U.litPropertyMetadata=new WeakMap);class Y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=Ht){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){const s=Symbol(),i=this.getPropertyDescriptor(t,s,e);i!==void 0&&ke(this.prototype,t,i)}}static getPropertyDescriptor(t,e,s){const{get:i,set:n}=Ce(this.prototype,t)??{get(){return this[e]},set(r){this[e]=r}};return{get(){return i==null?void 0:i.call(this)},set(r){const c=i==null?void 0:i.call(this);n.call(this,r),this.requestUpdate(t,c,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Ht}static _$Ei(){if(this.hasOwnProperty(tt("elementProperties")))return;const t=$e(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(tt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(tt("properties"))){const e=this.properties,s=[...Te(e),...Pe(e)];for(const i of s)this.createProperty(i,e[i])}const t=this[Symbol.metadata];if(t!==null){const e=litPropertyMetadata.get(t);if(e!==void 0)for(const[s,i]of e)this.elementProperties.set(s,i)}this._$Eh=new Map;for(const[e,s]of this.elementProperties){const i=this._$Eu(e,s);i!==void 0&&this._$Eh.set(i,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const i of s)e.unshift(Bt(i))}else t!==void 0&&e.push(Bt(t));return e}static _$Eu(t,e){const s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var t;this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),(t=this.constructor.l)==null||t.forEach(e=>e(this))}addController(t){var e;(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&((e=t.hostConnected)==null||e.call(t))}removeController(t){var e;(e=this._$EO)==null||e.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Se(t,this.constructor.elementStyles),t}connectedCallback(){var t;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostConnected)==null?void 0:s.call(e)})}enableUpdating(t){}disconnectedCallback(){var t;(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostDisconnected)==null?void 0:s.call(e)})}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$EC(t,e){var n;const s=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,s);if(i!==void 0&&s.reflect===!0){const r=(((n=s.converter)==null?void 0:n.toAttribute)!==void 0?s.converter:mt).toAttribute(e,s.type);this._$Em=t,r==null?this.removeAttribute(i):this.setAttribute(i,r),this._$Em=null}}_$AK(t,e){var n;const s=this.constructor,i=s._$Eh.get(t);if(i!==void 0&&this._$Em!==i){const r=s.getPropertyOptions(i),c=typeof r.converter=="function"?{fromAttribute:r.converter}:((n=r.converter)==null?void 0:n.fromAttribute)!==void 0?r.converter:mt;this._$Em=i,this[i]=c.fromAttribute(e,r.type),this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){if(s??(s=this.constructor.getPropertyOptions(t)),!(s.hasChanged??kt)(this[t],e))return;this.P(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,e,s){this._$AL.has(t)||this._$AL.set(t,e),s.reflect===!0&&this._$Em!==t&&(this._$Ej??(this._$Ej=new Set)).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var s;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[n,r]of this._$Ep)this[n]=r;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[n,r]of i)r.wrapped!==!0||this._$AL.has(n)||this[n]===void 0||this.P(n,this[n],r)}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),(s=this._$EO)==null||s.forEach(i=>{var n;return(n=i.hostUpdate)==null?void 0:n.call(i)}),this.update(e)):this._$EU()}catch(i){throw t=!1,this._$EU(),i}t&&this._$AE(e)}willUpdate(t){}_$AE(t){var e;(e=this._$EO)==null||e.forEach(s=>{var i;return(i=s.hostUpdated)==null?void 0:i.call(s)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&(this._$Ej=this._$Ej.forEach(e=>this._$EC(e,this[e]))),this._$EU()}updated(t){}firstUpdated(t){}}Y.elementStyles=[],Y.shadowRootOptions={mode:"open"},Y[tt("elementProperties")]=new Map,Y[tt("finalized")]=new Map,xt==null||xt({ReactiveElement:Y}),(U.reactiveElementVersions??(U.reactiveElementVersions=[])).push("2.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const et=globalThis,yt=et.trustedTypes,Gt=yt?yt.createPolicy("lit-html",{createHTML:o=>o}):void 0,Wt="$lit$",O=`lit$${(Math.random()+"").slice(9)}$`,zt="?"+O,Ue=`<${zt}>`,D=document,st=()=>D.createComment(""),it=o=>o===null||typeof o!="object"&&typeof o!="function",Vt=Array.isArray,Oe=o=>Vt(o)||typeof(o==null?void 0:o[Symbol.iterator])=="function",Ct=`[ +\f\r]`,nt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,jt=/-->/g,Yt=/>/g,N=RegExp(`>|${Ct}(?:([^\\s"'>=/]+)(${Ct}*=${Ct}*(?:[^ +\f\r"'\`<>=]|("|')|))|$)`,"g"),Kt=/'/g,qt=/"/g,Xt=/^(?:script|style|textarea|title)$/i,Me=o=>(t,...e)=>({_$litType$:o,strings:t,values:e}),C=Me(1),K=Symbol.for("lit-noChange"),S=Symbol.for("lit-nothing"),Jt=new WeakMap,B=D.createTreeWalker(D,129);function Zt(o,t){if(!Array.isArray(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return Gt!==void 0?Gt.createHTML(t):t}const Le=(o,t)=>{const e=o.length-1,s=[];let i,n=t===2?"":"",r=nt;for(let c=0;c"?(r=i??nt,d=-1):l[1]===void 0?d=-2:(d=r.lastIndex-l[2].length,h=l[1],r=l[3]===void 0?N:l[3]==='"'?qt:Kt):r===qt||r===Kt?r=N:r===jt||r===Yt?r=nt:(r=N,i=void 0);const w=r===N&&o[c+1].startsWith("/>")?" ":"";n+=r===nt?a+Ue:d>=0?(s.push(h),a.slice(0,d)+Wt+a.slice(d)+O+w):a+O+(d===-2?c:w)}return[Zt(o,n+(o[e]||"")+(t===2?"":"")),s]};class rt{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let n=0,r=0;const c=t.length-1,a=this.parts,[h,l]=Le(t,e);if(this.el=rt.createElement(h,s),B.currentNode=this.el.content,e===2){const d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(i=B.nextNode())!==null&&a.length0){i.textContent=yt?yt.emptyScript:"";for(let w=0;w2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=S}_$AI(t,e=this,s,i){const n=this.strings;let r=!1;if(n===void 0)t=q(this,t,e,0),r=!it(t)||t!==this._$AH&&t!==K,r&&(this._$AH=t);else{const c=t;let a,h;for(t=n[0],a=0;a{const s=(e==null?void 0:e.renderBefore)??t;let i=s._$litPart$;if(i===void 0){const n=(e==null?void 0:e.renderBefore)??null;s._$litPart$=i=new ot(t.insertBefore(st(),n),n,void 0,e??{})}return i._$AI(o),i};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */class M extends Y{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;const t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=He(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Do)==null||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Do)==null||t.setConnected(!1)}render(){return K}}M._$litElement$=!0,M.finalized=!0,(ve=globalThis.litElementHydrateSupport)==null||ve.call(globalThis,{LitElement:M});const Pt=globalThis.litElementPolyfillSupport;Pt==null||Pt({LitElement:M}),(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const bt=o=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(o,t)}):customElements.define(o,t)};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Ge={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt},We=(o=Ge,t,e)=>{const{kind:s,metadata:i}=e;let n=globalThis.litPropertyMetadata.get(i);if(n===void 0&&globalThis.litPropertyMetadata.set(i,n=new Map),n.set(e.name,o),s==="accessor"){const{name:r}=e;return{set(c){const a=t.get.call(this);t.set.call(this,c),this.requestUpdate(r,a,o)},init(c){return c!==void 0&&this.P(r,void 0,o),c}}}if(s==="setter"){const{name:r}=e;return function(c){const a=this[r];t.call(this,c),this.requestUpdate(r,a,o)}}throw Error("Unsupported decorator location: "+s)};function ze(o){return(t,e)=>typeof e=="object"?We(o,t,e):((s,i,n)=>{const r=i.hasOwnProperty(n);return i.constructor.createProperty(n,r?{...s,wrapped:!0}:s),r?Object.getOwnPropertyDescriptor(i,n):void 0})(o,t,e)}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function at(o){return ze({...o,state:!0,attribute:!1})}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Qt=(o,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(o,t,e),e);/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function ct(o,t){return(e,s,i)=>{const n=r=>{var c;return((c=r.renderRoot)==null?void 0:c.querySelector(o))??null};if(t){const{get:r,set:c}=typeof s=="object"?e:i??(()=>{const a=Symbol();return{get(){return this[a]},set(h){this[a]=h}}})();return Qt(e,s,{get(){let a=r.call(this);return a===void 0&&(a=n(this),(a!==null||this.hasUpdated)&&c.call(this,a)),a}})}return Qt(e,s,{get(){return n(this)}})}}const E=160,x=160,X=1024,Ve="WASM-4",je=[14743759,8831084,3172432,464929],$t=4,lt=20,Ye=22,te=26,ee=28,Ke=30,qe=31,Xe=32,Je=160,L=1,F=2,J=16,Z=32,H=64,G=128,Ze=1,Qe=2,se=1,ie=2,ts=Uint8Array.of(255,255,255,255,255,255,255,255,199,199,199,207,207,255,207,255,147,147,147,255,255,255,255,255,147,1,147,147,147,1,147,255,239,131,47,131,233,3,239,255,157,91,55,239,217,181,115,255,143,39,39,143,37,51,129,255,207,207,207,255,255,255,255,255,243,231,207,207,207,231,243,255,159,207,231,231,231,207,159,255,255,147,199,1,199,147,255,255,255,231,231,129,231,231,255,255,255,255,255,255,255,207,207,159,255,255,255,129,255,255,255,255,255,255,255,255,255,207,207,255,253,251,247,239,223,191,127,255,199,179,57,57,57,155,199,255,231,199,231,231,231,231,129,255,131,57,241,195,135,31,1,255,129,243,231,195,249,57,131,255,227,195,147,51,1,243,243,255,3,63,3,249,249,57,131,255,195,159,63,3,57,57,131,255,1,57,243,231,207,207,207,255,135,59,27,135,97,121,131,255,131,57,57,129,249,243,135,255,255,207,207,255,207,207,255,255,255,207,207,255,207,207,159,255,243,231,207,159,207,231,243,255,255,255,1,255,1,255,255,255,159,207,231,243,231,207,159,255,131,1,57,243,199,255,199,255,131,125,69,85,65,127,131,255,199,147,57,57,1,57,57,255,3,57,57,3,57,57,3,255,195,153,63,63,63,153,195,255,7,51,57,57,57,51,7,255,1,63,63,3,63,63,1,255,1,63,63,3,63,63,63,255,193,159,63,49,57,153,193,255,57,57,57,1,57,57,57,255,129,231,231,231,231,231,129,255,249,249,249,249,249,57,131,255,57,51,39,15,7,35,49,255,159,159,159,159,159,159,129,255,57,17,1,1,41,57,57,255,57,25,9,1,33,49,57,255,131,57,57,57,57,57,131,255,3,57,57,57,3,63,63,255,131,57,57,57,33,51,133,255,3,57,57,49,7,35,49,255,135,51,63,131,249,57,131,255,129,231,231,231,231,231,231,255,57,57,57,57,57,57,131,255,57,57,57,17,131,199,239,255,57,57,41,1,1,17,57,255,57,17,131,199,131,17,57,255,153,153,153,195,231,231,231,255,1,241,227,199,143,31,1,255,195,207,207,207,207,207,195,255,127,191,223,239,247,251,253,255,135,231,231,231,231,231,135,255,199,147,255,255,255,255,255,255,255,255,255,255,255,255,255,1,239,247,255,255,255,255,255,255,255,255,131,249,129,57,129,255,63,63,3,57,57,57,131,255,255,255,129,63,63,63,129,255,249,249,129,57,57,57,129,255,255,255,131,57,1,63,131,255,241,231,129,231,231,231,231,255,255,255,129,57,57,129,249,131,63,63,3,57,57,57,57,255,231,255,199,231,231,231,129,255,243,255,227,243,243,243,243,135,63,63,49,3,7,35,49,255,199,231,231,231,231,231,129,255,255,255,3,73,73,73,73,255,255,255,3,57,57,57,57,255,255,255,131,57,57,57,131,255,255,255,3,57,57,3,63,63,255,255,129,57,57,129,249,249,255,255,145,143,159,159,159,255,255,255,131,63,131,249,3,255,231,231,129,231,231,231,231,255,255,255,57,57,57,57,129,255,255,255,153,153,153,195,231,255,255,255,73,73,73,73,129,255,255,255,57,1,199,1,57,255,255,255,57,57,57,129,249,131,255,255,1,227,199,143,1,255,243,231,231,207,231,231,243,255,231,231,231,231,231,231,231,255,159,207,207,231,207,207,159,255,255,255,143,69,227,255,255,255,255,255,255,255,255,147,147,255,131,41,41,17,41,41,131,255,131,57,9,17,33,57,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,131,17,33,125,33,17,131,255,131,17,9,125,9,17,131,255,131,17,57,85,17,17,131,255,131,17,17,85,57,17,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,231,255,231,231,199,199,199,255,239,131,41,47,41,131,239,255,195,153,159,3,159,159,1,255,255,165,219,219,219,165,255,255,153,153,195,129,231,129,231,255,231,231,231,255,231,231,231,255,195,153,135,219,225,153,195,255,147,255,255,255,255,255,255,255,195,189,102,94,94,102,189,195,135,195,147,195,255,255,255,255,255,201,147,39,147,201,255,255,255,255,129,249,249,255,255,255,255,255,255,255,255,255,255,255,195,189,70,90,70,90,189,195,131,255,255,255,255,255,255,255,239,215,239,255,255,255,255,255,231,231,129,231,231,255,129,255,199,243,231,195,255,255,255,255,195,231,243,199,255,255,255,255,247,239,255,255,255,255,255,255,255,255,51,51,51,51,9,63,193,149,181,149,193,245,245,255,255,255,255,207,207,255,255,255,255,255,255,255,255,255,247,207,231,199,231,195,255,255,255,255,199,147,147,199,255,255,255,255,255,39,147,201,147,39,255,255,189,59,183,173,217,177,125,255,189,59,183,169,221,187,113,255,29,187,215,45,217,177,125,255,199,255,199,159,57,1,131,255,223,239,199,147,57,1,57,255,247,239,199,147,57,1,57,255,199,147,199,147,57,1,57,255,203,167,199,147,57,1,57,255,147,255,199,147,57,1,57,255,239,215,199,147,57,1,57,255,193,135,39,33,7,39,33,255,195,153,63,63,153,195,247,207,223,239,1,63,3,63,1,255,247,239,1,63,3,63,1,255,199,147,1,63,3,63,1,255,147,255,1,63,3,63,1,255,239,247,129,231,231,231,129,255,247,239,129,231,231,231,129,255,231,195,129,231,231,231,129,255,153,255,129,231,231,231,129,255,135,147,153,9,153,147,135,255,203,167,25,9,1,33,49,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,187,215,239,215,187,255,255,131,57,49,41,25,57,131,255,223,239,57,57,57,57,131,255,247,239,57,57,57,57,131,255,199,147,255,57,57,57,131,255,147,255,57,57,57,57,131,255,247,239,153,153,195,231,231,255,63,3,57,57,57,3,63,255,195,153,153,147,153,137,147,255,223,239,131,249,129,57,129,255,247,239,131,249,129,57,129,255,199,147,131,249,129,57,129,255,203,167,131,249,129,57,129,255,147,255,131,249,129,57,129,255,239,215,131,249,129,57,129,255,255,255,131,233,129,47,131,255,255,255,129,63,63,129,247,207,223,239,131,57,1,63,131,255,247,239,131,57,1,63,131,255,199,147,131,57,1,63,131,255,147,255,131,57,1,63,131,255,223,239,255,199,231,231,129,255,247,239,255,199,231,231,129,255,199,147,255,199,231,231,129,255,147,255,199,231,231,231,129,255,155,135,103,131,57,57,131,255,203,167,3,57,57,57,57,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,231,255,129,255,231,255,255,255,255,131,49,41,25,131,255,223,239,57,57,57,57,129,255,247,239,57,57,57,57,129,255,199,147,255,57,57,57,129,255,147,255,57,57,57,57,129,255,247,239,57,57,57,129,249,131,63,63,3,57,57,3,63,63,147,255,57,57,57,129,249,131);function It(o){const t=new URL(location.href),e=t.searchParams.get(o);return e??new URL(t.hash.substring(1),"https://x").searchParams.get(o)}function ne(){if(document.fullscreenElement==null){let o=function(){const e=window.frameElement;e&&(e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.zIndex="99999",e.style.width="100%",e.style.height="100%")};const t=document.body.requestFullscreen&&document.body.requestFullscreen({navigationUI:"hide"});t?t.catch(o):o()}}async function es(o){try{await navigator.clipboard.writeText(o)}catch{let t=document.createElement("dialog");t.title="Netplay URL",t.textContent=o,document.body.append(t);let e=document.createElement("button");e.textContent="Copy",e.style.marginLeft="1em",e.onclick=()=>navigator.clipboard.writeText(o),t.appendChild(e);let s=document.createElement("button");s.textContent="Close",s.style.marginLeft="1em",s.onclick=()=>{document.body.removeChild(t)},t.appendChild(s),t.showModal()}}const ss="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#".split(""),re=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0];function oe(o){const t=o.length,e=t%4,s=e?t+4-e:t;let i="",n=0,r=0;for(;n=1;){const h=Math.floor(r/a)%85;i+=ss[h],a/=85}r=0}}return i}function ae(o,t){let e=0,s=0,i=0;const n=o.length,r=t.length;if(o.length%5==0)for(;s=re.length)return e;if(i=i*85+re[c],s%5==0){let a=16777216;for(;a>=1;){if(e>=r)return e;t[e++]=i/a%256,a/=256}i=0}}return e}class ht{constructor(){this.memory=new ArrayBuffer(65536),this.globals={},this.diskBuffer=new ArrayBuffer(X),this.diskSize=0}read(t){new Uint8Array(this.memory).set(new Uint8Array(t.memory.buffer)),this.globals={};for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&(this.globals[e]=s.value.toString())}this.diskSize=t.diskSize,new Uint8Array(this.diskBuffer).set(new Uint8Array(t.diskBuffer,0,t.diskSize))}write(t){new Uint8Array(t.memory.buffer).set(new Uint8Array(this.memory));for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&e in this.globals&&(s.value=this.globals[e])}t.diskSize=this.diskSize,new Uint8Array(t.diskBuffer).set(new Uint8Array(this.diskBuffer,0,this.diskSize))}toBytes(){const t=new TextEncoder().encode(JSON.stringify(this.globals)),e=new Uint8Array(65544+t.byteLength+this.diskSize),s=new DataView(e.buffer,e.byteOffset,e.byteLength);e.set(new Uint8Array(this.memory),0);let i=65536;return s.setUint32(i,t.byteLength),e.set(t,i+4),i+=4+t.byteLength,s.setUint32(i,this.diskSize),e.set(new Uint8Array(this.diskBuffer,0,this.diskSize),i+4),e}fromBytes(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength);new Uint8Array(this.memory).set(t.subarray(0,65536));let s=65536;const i=e.getUint32(s),n=t.slice(s+4,s+4+i);this.globals=JSON.parse(new TextDecoder().decode(n)),s+=4+i,this.diskSize=e.getUint32(s),new Uint8Array(this.diskBuffer).set(t.subarray(s+4,s+4+this.diskSize))}}const I=20,R=4;class is{constructor(){this.frame=-1,this.state=new ht,this.inputs=new Array(R),this.predicted=new Array(R);for(let t=0;t=this.currentFrame)i.futureInputs.has(e)||i.futureInputs.set(e,n);else for(let r=0,c=I;r{this.send("",{type:"KEEPALIVE"},!1)},15e3)}async connect(){const t=["wss://webrtc-signal-server.wasm4.org","wss://ywc2h85cv1.execute-api.us-east-1.amazonaws.com/production","wss://webrtc-signal-server.wasm4.jwq.moe","wss://iyuavuru2h.execute-api.eu-central-1.amazonaws.com/production"];for(const e of t)try{this.socket=await new Promise((s,i)=>{const n=new WebSocket(e);n.addEventListener("open",()=>{s(n)}),n.addEventListener("error",()=>{i()})});break}catch(s){console.error(s)}if(!this.socket)throw new Error("Unable to connect to signal server");this.socket.addEventListener("message",e=>{const{source:s,message:i}=JSON.parse(e.data);this.onMessage(s,i)});for(const e of this.bufferedOutput)this.socket.send(e);this.bufferedOutput.length=0}send(t,e,s=!0){var n;const i=JSON.stringify({target:t,message:e});((n=this.socket)==null?void 0:n.readyState)==1?this.socket.send(i):s&&this.bufferedOutput.push(i)}close(){var t;(t=this.socket)==null||t.close(),window.clearInterval(this.keepaliveInterval)}}class os{constructor(t){this.connections=new Map;let e;this.localPeerId=new Promise(s=>{e=s}),this.signalClient=new rs(async(s,i)=>{switch(i.type){case"WHOAMI_REPLY":this.iceServers=i.iceServers,e(i.yourPeerId);break;case"OFFER":{if(this.connections.has(s))throw new Error("Received offer for a connection we already initiated");{const n=this.createConnection(s);await n.setRemoteDescription(i.description),await n.setLocalDescription(await n.createAnswer()),t(n,s),this.signalClient.send(s,{type:"ANSWER",description:n.localDescription.toJSON()})}}break;case"ANSWER":{const n=this.connections.get(s);n&&await n.setRemoteDescription(i.description)}break;case"CANDIDATE":{const n=this.connections.get(s);n&&await n.addIceCandidate(new RTCIceCandidate(i.candidate))}break;case"ABORT":{const n=this.connections.get(s);n&&n.close()}break}}),this.signalClient.send("",{type:"WHOAMI_REQUEST"})}createConnection(t){const e=new RTCPeerConnection({iceServers:this.iceServers});return this.connections.set(t,e),e.addEventListener("negotiationneeded",async()=>{await e.setLocalDescription(await e.createOffer()),this.signalClient.send(t,{type:"OFFER",description:e.localDescription.toJSON()})}),e.addEventListener("icecandidate",({candidate:s})=>{s&&this.signalClient.send(t,{type:"CANDIDATE",candidate:s.toJSON()})}),e.addEventListener("connectionstatechange",()=>{const s=e.connectionState;(s=="connected"||s=="failed")&&this.connections.delete(t)}),e}connect(t){return this.connections.get(t)||this.createConnection(t)}close(){this.signalClient.close();for(const[t,e]of this.connections)e.close()}}const gt=16384;class as{constructor(t){this.chunks=[],this.size=0,t.addEventListener("message",e=>{if(e.data instanceof ArrayBuffer){const s=new Uint8Array(e.data);this.size+=s.byteLength,this.chunks.push(s)}})}read(){const t=new Uint8Array(this.size);let e=0;for(const s of this.chunks)t.set(s,e),e+=s.byteLength;return this.chunks.length=0,this.size=0,t}}class cs{constructor(t){this.channel=t,this.size=0}write(t){this.buffer||(this.buffer=new Uint8Array(gt));let e=this.size,s=0;for(;s=gt&&(e-=gt,this.channel.send(this.buffer))}this.size=e}flush(){this.buffer&&this.size>0&&this.channel.send(this.buffer.subarray(0,this.size)),this.buffer=void 0}}class ls{constructor(t,e=0){this.buffer=t,this.position=e}readBit(){const t=!!(this.buffer[this.position/8>>>0]&1<<(this.position&7));return++this.position,t}readBits(t){let e=0;for(let s=0;s>>0]|=1<<(this.position&7),++this.position}write0(){this.buffer[this.position/8>>>0]&=~(1<<(this.position&7)),++this.position}writeBits(t,e){for(let s=0;s0;--s)this.outboundInputs.unshift(e);this.outboundFrame=t}else{const s=t-this.outboundFrame;if(s>=this.outboundInputs.length){for(let i=this.outboundInputs.length;i0?this.outboundInputs[i-1]:0;this.outboundInputs[s]=e}}}sendMessage(t){this.reliableChannel.send(JSON.stringify(t))}sendUnreliableBuffer(t){this.unreliableChannel.send(t)}sendPingRequest(){const t=new DataView(W);t.setUint8(0,2),t.setUint32(1,performance.now()>>>0),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendPingReply(t){const e=new DataView(W);e.setUint8(0,3),e.setUint32(1,t),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendTick(t){const e=new DataView(W);e.setUint8(0,1),e.setUint32(1,t),e.setInt8(5,this.nextNeededFrame==0?-127:this.nextNeededFrame-t),e.setInt8(6,this.outboundFrame-t),e.setUint8(7,this.outboundInputs.length);const s=new hs(new Uint8Array(W,8));let i=0;for(const r of this.outboundInputs){const c=i^r;i=r;for(let a=0;a<8;++a)c&1<{const i=Array.from(this.remotePlayers.keys()),n=await this.createRemotePlayer(e,s);n.sendMessage({type:"WELCOME",otherPeers:i}),this.localPlayerIdx>=0&&n.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})})}host(){this.runtime.setNetplay(0),this.rollbackMgr=new ce(1,this.runtime),this.localPlayerIdx=0}join(t){const e=this.peerMgr.connect(t);this.createRemotePlayer(e,t).then(s=>{s.sendMessage({type:"JOIN_REQUEST"})},s=>{this.runtime.blueScreen(`Failed to connect +to peer. They may +be offline?`)})}async getInviteLink(){const t=await this.peerMgr.localPeerId,e=window.location;if(e.protocol=="file:"||e.hostname=="localhost"||e.hostname=="127.0.0.1"||e.hostname=="wasm4.org")return`https://wasm4.org/netplay/#${t}`;const s=new URL(e.href);return s.searchParams.set("netplay",t),s.href}close(){for(const t of this.remotePlayers.values())t.close();this.peerMgr.close()}async createRemotePlayer(t,e){function s(a){return new Promise((h,l)=>{const d=t.createDataChannel("WASM-4",a);d.binaryType="arraybuffer",d.onopen=()=>{h(d)},d.onerror=l})}const[i,n]=await Promise.all([s({negotiated:!0,id:0}),s({negotiated:!0,id:1,ordered:!1,maxRetransmits:0})]),r=new us(e,t,i,n);this.remotePlayers.set(e,r);const c=()=>{this.remotePlayers.has(e)&&(this.remotePlayers.delete(e),this.onleave&&r.playerIdx>=0&&this.onleave(r.playerIdx))};return t.addEventListener("connectionstatechange",()=>{t.connectionState=="disconnected"&&c()}),i.addEventListener("close",c),n.addEventListener("close",c),i.addEventListener("message",async a=>{if(typeof a.data!="string")return;const h=JSON.parse(a.data);switch(h.type){case"WELCOME":for(const l of h.otherPeers)if(!this.remotePlayers.has(l)){const d=this.peerMgr.connect(l),u=await this.createRemotePlayer(d,l);this.localPlayerIdx>=0&&u.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})}break;case"JOIN_REQUEST":{const l=this.nextPlayerIdx();if(l>=4)r.sendMessage({type:"JOIN_REJECT"}),r.close();else{r.playerIdx=l,r.chunkWriter.write(this.runtime.wasmBuffer);const d=new ht;d.read(this.runtime),r.chunkWriter.write(d.toBytes()),r.chunkWriter.flush(),r.sendMessage({type:"JOIN_REPLY",yourPlayerIdx:r.playerIdx,frame:this.rollbackMgr.currentFrame,stateOffset:this.runtime.wasmBuffer.byteLength}),this.onjoin&&this.onjoin(r.playerIdx)}}break;case"JOIN_REPLY":{this.localPlayerIdx=h.yourPlayerIdx;for(const b of this.remotePlayers.values())b!=r&&b.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx});const l=r.chunkReader.read(),d=l.subarray(0,h.stateOffset),u=l.subarray(h.stateOffset);await this.runtime.load(d,!1);const w=new ht;w.fromBytes(u),w.write(this.runtime),this.runtime.setNetplay(this.localPlayerIdx),this.rollbackMgr=new ce(h.frame,this.runtime),this.onstart&&this.onstart(this.localPlayerIdx)}break;case"JOIN_REJECT":this.runtime.blueScreen(`Connected, but the +game is already +full!`),this.close();break;case"PLAYER_INFO":r.playerIdx==-1&&(r.playerIdx=h.playerIdx,this.onjoin&&this.onjoin(r.playerIdx));break}}),n.addEventListener("message",async a=>{const h=a.data,l=new DataView(h);switch(l.getUint8(0)){case 1:if(this.rollbackMgr&&r.playerIdx>=0){const u=l.getUint32(1);if(u>r.frame){const w=l.getInt8(5)+u,b=l.getInt8(6)+u,p=l.getUint8(7),f=new ls(new Uint8Array(h,8)),m=new Array(p);let y=0;for(let v=0;vr.outboundFrame){const v=w-r.outboundFrame;r.outboundFrame=w,r.outboundInputs.splice(0,v)}const g=u+.5*r.ping.average*60/1e3,_=this.rollbackMgr.currentFrame-g;r.drift.update(_),this.rollbackMgr.addInputs(r.playerIdx,b,m)}}break;case 2:{const u=l.getUint32(1);r.sendPingReply(u)}break;case 3:{const u=l.getUint32(1),w=(performance.now()>>>0)-u;r.ping.update(w)}break}}),r}nextPlayerIdx(){t:for(let t=0;t<4;++t)if(this.localPlayerIdx!=t){for(const e of this.remotePlayers.values())if(e.playerIdx==t)continue t;return t}return-1}update(t){if(!this.rollbackMgr)return!1;const e=(this.updateCount&7)==0,s=(this.updateCount&31)==0;++this.updateCount;const i=this.rollbackMgr.currentFrame,r=i+2;this.rollbackMgr.addInputs(this.localPlayerIdx,r,[t]);let c=!1;for(const a of this.remotePlayers.values())a.addOutboundInput(r,t),a.sendTick(i),(a.nextNeededFrame=he)&&(c=!0),s&&a.sendPingRequest();if(e){let a=0;for(const h of this.remotePlayers.values())a=Math.max(h.drift.average,a);a>=1&&(c=!0)}return c||this.rollbackMgr.update(),!c}getSummary(){const t=[{playerIdx:this.localPlayerIdx,ping:-1}];for(const e of this.remotePlayers.values())t.push({playerIdx:e.playerIdx,ping:e.ping.average});return t.sort((e,s)=>e.playerIdx-s.playerIdx),t}}const de=`"use strict";(()=>{var M=Math.floor(44.1),b=class{constructor(){this.freq1=0;this.freq2=0;this.startTime=0;this.attackTime=0;this.decayTime=0;this.sustainTime=0;this.releaseTime=0;this.endTick=0;this.sustainVolume=0;this.peakVolume=0;this.phase=0;this.pan=0;this.pulseDutyCycle=0;this.noiseSeed=1;this.noiseLastRandom=0}};function L(m,e,s){return m+s*(e-m)}function V(m,e){if(m1-e){let s=(m-(1-e))/e;return 1-(s+s-s*s)}else return 1}function x(m,e){return Math.pow(2,(m-69+e/256)/12)*440}var y=class extends AudioWorkletProcessor{constructor(){super(),this.time=0,this.ticks=0,this.channels=new Array(4);for(let e=0;e<4;++e)this.channels[e]=new b;this.port!=null&&(this.port.onmessage=e=>{e.data==="tick"?this.tick():this.tone(...e.data)})}ramp(e,s,f,u){if(this.time>=u)return s;let a=(this.time-f)/(u-f);return L(e,s,a)}getCurrentFrequency(e){return e.freq2>0?this.ramp(e.freq1,e.freq2,e.startTime,e.releaseTime):e.freq1}getCurrentVolume(e){let s=this.time;return s>=e.sustainTime&&e.releaseTime-e.sustainTime>M?this.ramp(e.sustainVolume,0,e.sustainTime,e.releaseTime):s>=e.decayTime?e.sustainVolume:s>=e.attackTime?this.ramp(e.peakVolume,e.sustainVolume,e.attackTime,e.decayTime):this.ramp(0,e.peakVolume,e.startTime,e.attackTime)}tick(){this.ticks++}tone(e,s,f,u){let a=e&65535,p=e>>16&65535,A=s&255,h=s>>8&255,o=s>>16&255,i=s>>24&255,E=Math.min(f&255,100),l=Math.min(f>>8&255,100),n=u&3,r=u>>2&3,c=u>>4&3,d=u&64,t=this.channels[n];this.time>t.releaseTime&&this.ticks!=t.endTick&&(t.phase=n==2?.25:0),d?(t.freq1=x(a&255,a>>8),t.freq2=p==0?0:x(p&255,p>>8)):(t.freq1=a,t.freq2=p),t.startTime=this.time,t.attackTime=t.startTime+(44100*i/60>>>0),t.decayTime=t.attackTime+(44100*o/60>>>0),t.sustainTime=t.decayTime+(44100*A/60>>>0),t.releaseTime=t.sustainTime+(44100*h/60>>>0),t.endTick=this.ticks+i+o+A+h,t.pan=c;let T=n==2?.25:.15;if(t.sustainVolume=T*E/100,t.peakVolume=l?T*l/100:T,n==0||n==1)switch(r){case 0:t.pulseDutyCycle=.125;break;case 1:case 3:default:t.pulseDutyCycle=.25;break;case 2:t.pulseDutyCycle=.5;break}else n==2&&h==0&&(t.releaseTime+=M)}process(e,[[s,f]],u){for(let a=0,p=s.length;a0;){i.phase--;let r=i.noiseSeed;r^=r>>7,r^=r<<9,r^=r>>13,i.noiseSeed=r,i.noiseLastRandom=((r&1)<<1)-1}n=l*i.noiseLastRandom}else{let r=E/44100,c=i.phase+r;if(c>=1&&c--,i.phase=c,o==2)n=l*(2*Math.abs(2*i.phase-1)-1);else{let d,t,T,k=i.pulseDutyCycle;c{n=new l};new Function("registerProcessor","AudioWorkletProcessor",de)(r,class{}),this.processor=n;const a=t.createScriptProcessor(1024,0,2);a.onaudioprocess=h=>{const l=h.outputBuffer.getChannelData(0),d=h.outputBuffer.getChannelData(1);n.process(null,[[l,d]],null)},a.connect(t.destination)}}tick(){this.processorPort!=null?this.processorPort.postMessage("tick"):this.processor.tick()}tone(t,e,s,i){this.processorPort!=null?this.processorPort.postMessage([t,e,s,i]):this.processor.tone(t,e,s,i)}unlockAudio(){const t=this.audioCtx;t.state=="suspended"&&t.resume()}pauseAudio(){const t=this.audioCtx;t.state=="running"&&t.suspend()}}class ms{constructor(t){this.bytes=new Uint8Array(t,Je,E*x>>>2),this.drawColors=new Uint16Array(t,lt,1)}clear(){this.bytes.fill(0)}drawPoint(t,e,s){const i=E*s+e>>>2,n=(e&3)<<1,r=3<=0&&e=0&&s3){for(let l=e;l>>2,a=E*s+n>>>2,h=t*85;this.bytes.fill(h,c,a),e=n}for(let c=e;c=0&&sE&&(i=E),e=E)return;const i=this.drawColors[0]&15;if(i==0)return;const n=Math.max(0,e),r=Math.min(x,e+s),c=i-1&3;for(let a=n;a>>4&15;if(u!==0){const b=u-1&3;for(let p=r;p=0&&t0&&c<=E)for(let p=r;p=0&&e0&&a<=x&&this.drawHLineFast(b,n,a-1,h)}}drawOval(t,e,s,i){const n=this.drawColors[0],r=n&15,c=n>>>4&15;if(c===15)return;const a=c-1&3,h=r-1&3;let l=s-1;const d=i-1;let u=d%2,w=e+Math.floor(i/2),b=t,p=t+s-1,f=w-u;const m=l*l,y=d*d;let g=4*(1-l)*y,_=4*(u+1)*m,v=g+_+u*m;l=8*m,u=8*y;do{this.drawPointUnclipped(a,p,w),this.drawPointUnclipped(a,b,w),this.drawPointUnclipped(a,b,f),this.drawPointUnclipped(a,p,f);const k=b+1,T=p-k;r!==0&&T>0&&(this.drawHLineUnclipped(h,k,w,p),this.drawHLineUnclipped(h,k,f,p));const P=2*v;P<=_&&(w+=1,f-=1,_+=l,v+=_),(P>=g||P>_)&&(b+=1,p-=1,g+=u,v+=g)}while(b<=p);for(;w-fi){let w=t;t=s,s=w,w=e,e=i,i=w}const a=Math.abs(s-t),h=tl?a:-l)/2,u;for(;this.drawPointUnclipped(c,t,e),!(t===s&&e===i);)u=d,u>-a&&(d-=l,t+=h),u=32&&c<=255&&this.blit(ts,i,s,8,8,0,c-32<<3,8),i+=8)}}blit(t,e,s,i,n,r,c,a,h=!1,l=!1,d=!1,u=!1){const w=this.drawColors[0];let b,p,f,m;u?(l=!l,b=Math.max(0,s)-s,p=Math.max(0,e)-e,f=Math.min(i,x-s),m=Math.min(n,E-e)):(b=Math.max(0,e)-e,p=Math.max(0,s)-s,f=Math.min(i,E-e),m=Math.min(n,x-s));for(let y=p;y>>2],Rt=6-(($&3)<<1);P=Lt>>>Rt&3}else{const Lt=t[$>>>3],Rt=7-($&7);P=Lt>>>Rt&1}const Ee=w>>>(P<<2)&15;Ee!==0&&this.drawPoint(Ee-1&3,_,v)}}}const ys=4,ws=35044,ue=34962,pe=5121,bs=5126,At=6409,gs=35632,As=35633,vs=35713,Es=35714,fe=9728,_s=10240,Ss=10241,xs=10242,ks=10243,z=3553,Cs=33984,me=33071,V=4;class Ts{constructor(t){this.gl=t,this.colorBuffer=new Uint32Array(E*x>>2),this.paletteBuffer=new Float32Array(3*V),this.lastPalette=Array(V),this.paletteLocation=null;const e=new Uint32Array(256);for(let i=0;i<256;++i){const n=i>>6&3,r=i>>4&3,c=i>>2&3,a=i&3;e[i]=n<<30|r<<22|c<<14|a<<6}this.table=e;const s=t.canvas;s.addEventListener("webglcontextlost",i=>{i.preventDefault()}),s.addEventListener("webglcontextrestored",()=>{this.initGL()}),this.initGL()}initGL(){const t=this.gl;this.lastPalette=Array(V);function e(d,u){const w=t.createShader(d);if(t.shaderSource(w,u),t.compileShader(w),!t.getShaderParameter(w,vs))throw new Error(t.getShaderInfoLog(w)+"");return w}function s(d){const u=t.createTexture();t.activeTexture(d),t.bindTexture(z,u),t.texParameteri(z,xs,me),t.texParameteri(z,ks,me),t.texParameteri(z,_s,fe),t.texParameteri(z,Ss,fe)}const i=e(As,` + attribute vec2 pos; + varying vec2 framebufferCoord; + + void main () { + framebufferCoord = pos*vec2(0.5, -0.5) + 0.5; + gl_Position = vec4(pos, 0, 1); + } + `),n=Array.from({length:V-1},(d,u)=>`p = mix(p, palette[${u+1}], step(${((u+1)/V).toFixed(2)}, index));`).join(` +`),r=e(gs,` + precision mediump float; + uniform vec3 palette[${V}]; + uniform sampler2D framebuffer; + varying vec2 framebufferCoord; + + vec3 lookup(float index) { + vec3 p = palette[0]; + ${n} + return p; + } + + void main () { + gl_FragColor = vec4(lookup(texture2D(framebuffer, framebufferCoord).r), 1.); + } + `),c=t.createProgram();if(t.attachShader(c,i),t.attachShader(c,r),t.linkProgram(c),!t.getProgramParameter(c,Es))throw new Error(t.getProgramInfoLog(c)+"");t.useProgram(c),this.paletteLocation=t.getUniformLocation(c,"palette"),t.uniform1i(t.getUniformLocation(c,"framebuffer"),0),t.detachShader(c,i),t.deleteShader(i),t.detachShader(c,r),t.deleteShader(r),s(Cs),t.texImage2D(z,0,At,E,x,0,At,pe,null);const a=t.getAttribLocation(c,"pos"),h=t.createBuffer(),l=new Float32Array([-1,-1,-1,1,1,1,1,1,1,-1,-1,-1]);t.bindBuffer(ue,h),t.bufferData(ue,l,ws),t.enableVertexAttribArray(a),t.vertexAttribPointer(a,2,bs,!1,0,0)}composite(t,e){const s=this.gl,i=e.bytes,n=this.colorBuffer,r=this.table,c=this.lastPalette,a=this.paletteBuffer;let h=!1;for(let l=0,d=0;l>16&255)/255,a[d++]=(u>>8&255)/255,a[d++]=(u&255)/255,c[l]=u}h&&s.uniform3fv(this.paletteLocation,this.paletteBuffer);for(let l=0;l>2;++l)n[l]=r[i[l]];s.texImage2D(z,0,At,E,x,0,At,pe,new Uint8Array(n.buffer)),s.drawArrays(ys,0,6)}}const Ps=6,ye=7,we=3;function $s(o){const t=new DataView(o.buffer),e=t.getUint32(0),s=t.getUint32(4,!0);if(e!==6386541||s!==1)throw new Error("Invalid WASM binary");let i=8;const n=[];let r=0,c=0,a;for(;in+(r[0]===0?r[2]-r[1]:r[1].length),0),s=new Uint8Array(e);let i=0;for(const n of t)n[0]===0?(s.set(o.slice(n[1],n[2]),i),i+=n[2]-n[1]):(s.set(n[1],i),i+=n[1].length);return s}function vt(o){const t=[];do{const e=o&127;o>>=7,t.push(o?e|128:e)}while(o);return new Uint8Array(t)}function dt(o,t=0){let e=0,s=0,i=0;do e=o[t++],s|=(e&127)<>2),this.data.setUint16(lt,4611,!0),this.data.setInt16(te,32767,!0),this.data.setInt16(ee,32767,!0)}async load(t,e=!0){if(this.wasmBuffer=t,this.wasmBufferByteLen=t.byteLength,this.wasm=null,t.byteLength>1048576&&e)throw new Error("Cart too big!");const i={memory:this.memory,rect:this.framebuffer.drawRect.bind(this.framebuffer),oval:this.framebuffer.drawOval.bind(this.framebuffer),line:this.framebuffer.drawLine.bind(this.framebuffer),hline:this.framebuffer.drawHLine.bind(this.framebuffer),vline:this.framebuffer.drawVLine.bind(this.framebuffer),text:this.text.bind(this),textUtf8:this.textUtf8.bind(this),textUtf16:this.textUtf16.bind(this),blit:this.blit.bind(this),blitSub:this.blitSub.bind(this),tone:this.apu.tone.bind(this.apu),diskr:this.diskr.bind(this),diskw:this.diskw.bind(this),trace:this.trace.bind(this),traceUtf8:this.traceUtf8.bind(this),traceUtf16:this.traceUtf16.bind(this),tracef:this.tracef.bind(this)};await this.bluescreenOnError(async()=>{const n=$s(t),r=await WebAssembly.instantiate(n,{env:i});this.wasm=r.instance,typeof this.wasm.exports._start=="function"&&this.wasm.exports._start(),typeof this.wasm.exports._initialize=="function"&&this.wasm.exports._initialize()})}async bluescreenOnError(t){try{await t()}catch(e){if(e instanceof Error){const s=Us(e);this.blueScreen(s),this.printToServer(e.stack??"")}throw e}}text(t,e,s){const i=new Uint8Array(this.memory.buffer,t);this.framebuffer.drawText(i,e,s)}textUtf8(t,e,s,i){const n=new Uint8Array(this.memory.buffer,t,e);this.framebuffer.drawText(n,s,i)}textUtf16(t,e,s,i){const n=new Uint16Array(this.memory.buffer,t,e>>1);this.framebuffer.drawText(n,s,i)}blit(t,e,s,i,n,r){this.blitSub(t,e,s,i,n,0,0,i,r)}blitSub(t,e,s,i,n,r,c,a,h){const l=new Uint8Array(this.memory.buffer,t),d=h&1,u=h&2,w=h&4,b=h&8;this.framebuffer.blit(l,e,s,i,n,r,c,a,d,u,w,b)}diskr(t,e){const s=Math.min(e,this.diskSize),i=new Uint8Array(this.diskBuffer,0,s);return new Uint8Array(this.memory.buffer,t).set(i),s}diskw(t,e){const s=Math.min(e,X),i=new Uint8Array(this.memory.buffer,t,s),n=new Uint8Array(this.diskBuffer),r=oe(i);try{localStorage.setItem(this.diskName,r)}catch(c){console.error("Error writing disk",c)}return n.set(i),this.diskSize=s,s}getCString(t){let e="";for(;;){const s=this.data.getUint8(t++);if(s==0)break;e+=String.fromCharCode(s)}return e}print(t){console.log(t),this.printToServer(t)}printToServer(t){}trace(t){this.print(this.getCString(t))}traceUtf8(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder().decode(s);this.print(i)}traceUtf16(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder("utf-16").decode(s);this.print(i)}tracef(t,e){let s="",i;for(;i=this.data.getUint8(t++);)if(i==37)switch(i=this.data.getUint8(t++)){case 37:s+="%";break;case 99:s+=String.fromCharCode(this.data.getInt32(e,!0)),e+=4;break;case 100:case 120:s+=this.data.getInt32(e,!0).toString(i==100?10:16),e+=4;break;case 115:s+=this.getCString(this.data.getUint32(e,!0)),e+=4;break;case 102:s+=this.data.getFloat64(e,!0),e+=8;break;default:s+="%"+String.fromCharCode(i);break}else s+=String.fromCharCode(i);this.print(s)}start(){let t=this.wasm.exports.start;typeof t=="function"&&this.bluescreenOnError(t)}update(){if(this.pauseState!=0)return;this.getSystemFlag(Ze)||this.framebuffer.clear();let t=this.wasm.exports.update;typeof t=="function"&&this.bluescreenOnError(t),this.apu.tick()}blueScreen(t){this.pauseState|=se;const e=[1118702,8831084,11184810,16777215],s=u=>[...u].map(w=>w.charCodeAt(0)),i=` ${Ve} `,n=i,r=8*i.length,c=(160-8*i.length)/2,a=20,h=9,l=60;new Uint32Array(this.memory.buffer).set(e,$t>>2),this.data.setUint16(lt,4611,!0),this.framebuffer.clear(),this.framebuffer.drawHLine(c,a-1,r),this.data.setUint16(lt,4401,!0),this.framebuffer.drawText(s(n),c,a),this.data.setUint16(lt,4611,!0),this.framebuffer.drawText(s(t),h,l),this.composite()}composite(){const t=new Uint32Array(this.memory.buffer,$t,4);this.compositor.composite(t,this.framebuffer)}}function Us(o){if(o instanceof WebAssembly.RuntimeError){let t;return o.message.match(/unreachable/)?t=`The cartridge has +reached a code +segment marked as +unreachable.`:o.message.match(/out of bounds/)&&(t=`The cartridge has +attempted a memory +access that is +out of bounds.`),t+` + + + + +Hit R to reboot.`}else{if(o instanceof WebAssembly.LinkError)return`The cartridge has +tried to import +a missing function. + + + +See console for +more details.`;if(o instanceof WebAssembly.CompileError)return`The cartridge is +corrupted. + + + +See console for +more details.`;if(o instanceof Os)return o.wasm4Message}return`Unknown error. + + + +See console for +more details.`}class Os extends Error{constructor(t){super(t.replace(` +`," ")),this.name="Wasm4Error",this.wasm4Message=t}}var Ms=Object.defineProperty,Ls=Object.getOwnPropertyDescriptor,ut=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ls(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Ms(t,e,i),i};class ge{constructor(){this.gamepad=[0,0,0,0],this.mouseX=0,this.mouseY=0,this.mouseButtons=0}}A.App=class extends M{constructor(){var t;super(),this.hideGamepadOverlay=!1,this.showMenu=!1,this.inputState=new ge,this.gamepadUnavailableWarned=new Set,this.onPointerUp=e=>{e.pointerType=="touch"&&ne(),this.runtime.unlockAudio()},this.diskPrefix=((t=document.getElementById("wasm4-disk-prefix"))==null?void 0:t.textContent)??It("disk-prefix"),this.runtime=new Is(`${this.diskPrefix}-disk`),this.init()}async init(){async function t(){const p=document.getElementById("wasm4-cart-json");if(p){const{WASM4_CART:f,WASM4_CART_SIZE:m}=JSON.parse(p.textContent??""),y=new Uint8Array(m);return ae(f,y),y}else{const f=It("url")??"cart.wasm",m=await fetch(f);if(m.ok)return new Uint8Array(await m.arrayBuffer());throw new Error(`Could not load cart at url: ${f}`)}}const e=this.runtime;await e.init();const s=e.canvas,i=It("netplay");i?(this.netplay=this.createNetplay(),this.netplay.join(i)):await e.load(await t());let n={toggleDevtools(){},updateCompleted(...p){}};this.netplay||e.start();function r(){e.composite(),s.toBlob(p=>{const f=URL.createObjectURL(p),m=document.createElement("a");m.href=f,m.download="wasm4-screenshot.png",m.click(),URL.revokeObjectURL(f)})}let c=null;function a(){if(c!=null)return;const p="video/webm",f=s.captureStream();c=new MediaRecorder(f,{mimeType:p,videoBitsPerSecond:25e6});const m=[];c.ondataavailable=y=>{m.push(y.data)},c.onstop=()=>{const y=new Blob(m,{type:p}),g=URL.createObjectURL(y),_=document.createElement("a");_.href=g,_.download="wasm4-animation.webm",_.click(),URL.revokeObjectURL(g)},c.start(),setTimeout(()=>{c&&(c.requestData(),c.stop(),c=null)},4e3)}const h=p=>{if(document.body.style.cursor="",p.isPrimary){const f=s.getBoundingClientRect(),m=this.inputState;m.mouseX=Math.fround(E*(p.clientX-f.left)/f.width),m.mouseY=Math.fround(x*(p.clientY-f.top)/f.height),m.mouseButtons=p.buttons&7}};window.addEventListener("pointerdown",h),window.addEventListener("pointerup",h),window.addEventListener("pointermove",h),s.addEventListener("contextmenu",p=>{p.preventDefault()});const l={2:this.saveGameState.bind(this),4:this.loadGameState.bind(this),r:this.resetCart.bind(this),R:this.resetCart.bind(this),F8:n.toggleDevtools,F9:r,F10:a,F11:ne,Enter:this.onMenuButtonPressed.bind(this)},d=p=>{if(p.ctrlKey||p.altKey||p.srcElement instanceof HTMLElement&&p.srcElement.tagName=="INPUT")return;const f=p.type=="keydown";if(e.unlockAudio(),document.body.style.cursor="none",f){const g=l[p.key];if(g){g(),p.preventDefault();return}}let m=0,y=0;switch(p.code){case"KeyX":case"KeyV":case"Space":case"Period":y=L;break;case"KeyZ":case"KeyC":case"Comma":y=F;break;case"ArrowUp":y=H;break;case"ArrowDown":y=G;break;case"ArrowLeft":y=J;break;case"ArrowRight":y=Z;break;case"KeyA":case"KeyQ":m=1,y=L;break;case"ShiftLeft":case"Tab":m=1,y=F;break;case"KeyE":m=1,y=H;break;case"KeyD":m=1,y=G;break;case"KeyS":m=1,y=J;break;case"KeyF":m=1,y=Z;break;case"NumpadMultiply":case"NumpadDecimal":m=2,y=L;break;case"NumpadSubtract":case"NumpadEnter":m=2,y=F;break;case"Numpad8":m=2,y=H;break;case"Numpad5":m=2,y=G;break;case"Numpad4":m=2,y=J;break;case"Numpad6":m=2,y=Z;break}if(y!=0){p.preventDefault();const g=this.inputState.gamepad;f?g[m]|=y:g[m]&=~y}};if(window.addEventListener("keydown",d),window.addEventListener("keyup",d),top&&top!=window)try{top.addEventListener("keydown",d),top.addEventListener("keyup",d)}catch{}const u=()=>{if(navigator.getGamepads)for(const p of navigator.getGamepads()){if(p==null)continue;if(p.mapping!="standard"){this.gamepadUnavailableWarned.has(p.id)||(this.gamepadUnavailableWarned.add(p.id),this.notifications.show("Unsupported gamepad: "+p.id));continue}const f=p.buttons,m=p.axes;let y=0;(f[12].pressed||m[1]<-.5)&&(y|=H),(f[13].pressed||m[1]>.5)&&(y|=G),(f[14].pressed||m[0]<-.5)&&(y|=J),(f[15].pressed||m[0]>.5)&&(y|=Z),(f[0].pressed||f[3].pressed||f[5].pressed||f[7].pressed)&&(y|=L),(f[1].pressed||f[2].pressed||f[4].pressed||f[6].pressed)&&(y|=F),f[9].pressed&&(this.showMenu=!0),this.inputState.gamepad[p.index%4]=y}};let w=performance.now();const b=p=>{requestAnimationFrame(b),u();let f=this.inputState;if(this.menuOverlay!=null)if(this.menuOverlay.applyInput(),this.netplay)f=new ge;else return;let m=!1;for(p-w>=200&&(w=p);p>=w;)if(w+=1e3/60,this.netplay)this.netplay.update(f.gamepad[0])&&(m=!0);else{for(let y=0;y<4;++y)e.setGamepad(y,f.gamepad[y]);e.setMouse(f.mouseX,f.mouseY,f.mouseButtons),e.update(),m=!0}m&&(this.hideGamepadOverlay=!!e.getSystemFlag(Qe),e.composite())};requestAnimationFrame(b)}onMenuButtonPressed(){this.showMenu?this.inputState.gamepad[0]|=L:this.showMenu=!0}closeMenu(){if(this.showMenu){this.showMenu=!1;for(let t=0;t<4;++t)this.inputState.gamepad[t]=0}}saveGameState(){let t=this.savedGameState;t==null&&(t=this.savedGameState=new ht),t.read(this.runtime),this.notifications.show("State saved")}loadGameState(){if(this.netplay){this.notifications.show("State loading disabled during netplay");return}const t=this.savedGameState;t!=null?(t.write(this.runtime),this.notifications.show("State loaded")):this.notifications.show("Need to save a state first")}exportGameDisk(){if(this.runtime.diskSize<=0){this.notifications.show("Disk is empty");return}const t=new Uint8Array(this.runtime.diskBuffer).slice(0,this.runtime.diskSize),e=new Blob([t],{type:"application/octet-stream"}),s=document.createElement("a");s.style.display="none",s.href=URL.createObjectURL(e),s.download=`${this.diskPrefix}.disk`,document.body.appendChild(s),s.click(),document.body.removeChild(s)}importGameDisk(){if(this.netplay){this.notifications.show("Disk importing disabled during netplay");return}const t=this,e=document.createElement("input");e.style.display="none",e.type="file",e.accept=".disk",e.multiple=!1,e.addEventListener("change",()=>{const s=e.files;let i=new FileReader;i.addEventListener("load",()=>{let n=new Uint8Array(i.result).slice(0,X),r=new Uint8Array(X);r.set(n),t.runtime.diskBuffer=r.buffer,this.runtime.diskSize=n.length;const c=oe(n);try{localStorage.setItem(this.runtime.diskName,c),t.notifications.show("Disk imported")}catch(a){t.notifications.show("Error importing disk"),console.error("Error importing disk",a)}t.closeMenu()}),i.readAsArrayBuffer(s[0])}),document.body.appendChild(e),e.click(),document.body.removeChild(e)}clearGameDisk(){if(this.netplay){this.notifications.show("Disk clearing disabled during netplay");return}this.runtime.diskBuffer=new ArrayBuffer(X),this.runtime.diskSize=0;try{localStorage.removeItem(this.runtime.diskName)}catch(t){this.notifications.show("Error clearing disk"),console.error("Error clearing disk",t)}this.notifications.show("Disk cleared")}async copyNetplayLink(){this.netplay||(this.netplay=this.createNetplay(),this.netplay.host()),es(await this.netplay.getInviteLink()),this.notifications.show("Netplay link copied to clipboard")}async resetCart(t,e=!1){if(this.netplay){this.notifications.show("Reset disabled during netplay");return}t||(t=this.runtime.wasmBuffer);let s;e&&(s=new ht,s.read(this.runtime)),this.runtime.reset(!0),this.runtime.pauseState|=ie,await this.runtime.load(t),this.runtime.pauseState&=~ie,s?s.write(this.runtime):this.runtime.start()}createNetplay(){const t=new ps(this.runtime);return t.onstart=e=>this.notifications.show(`Joined as player ${e+1}`),t.onjoin=e=>this.notifications.show(`Player ${e+1} joined`),t.onleave=e=>this.notifications.show(`Player ${e+1} left`),t}getNetplaySummary(){return this.netplay?this.netplay.getSummary():[]}connectedCallback(){super.connectedCallback(),window.addEventListener("pointerup",this.onPointerUp)}disconnectedCallback(){window.removeEventListener("pointerup",this.onPointerUp),super.disconnectedCallback()}render(){return C` +
+ ${this.showMenu?C``:""} + + ${this.runtime.canvas} +
+ ${this.hideGamepadOverlay?"":C``} + `}},A.App.styles=ft` + :host { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + + touch-action: none; + user-select: none; + -webkit-user-select: none; + -webkit-tap-highlight-color: transparent; + + background: #202020; + } + + .content { + width: 100vmin; + height: 100vmin; + overflow: hidden; + } + + /** Nudge the game upwards a bit in portrait to make space for the virtual gamepad. */ + @media (pointer: coarse) and (max-aspect-ratio: 2/3) { + .content { + position: absolute; + top: calc((100% - 220px - 100vmin)/2) + } + } + + .content canvas { + width: 100%; + height: 100%; + image-rendering: pixelated; + image-rendering: crisp-edges; + } + `,ut([at()],A.App.prototype,"hideGamepadOverlay",2),ut([at()],A.App.prototype,"showMenu",2),ut([ct("wasm4-menu-overlay")],A.App.prototype,"menuOverlay",2),ut([ct("wasm4-notifications")],A.App.prototype,"notifications",2),A.App=ut([bt("wasm4-app")],A.App);/** + * @license + * Copyright 2021 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function*Ut(o,t){if(o!==void 0){let e=0;for(const s of o)yield t(s,e++)}}var Rs=Object.defineProperty,Ds=Object.getOwnPropertyDescriptor,Ot=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ds(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Rs(t,e,i),i};const j={DEFAULT:0,DISK:1},Ns=[{CONTINUE:0,SAVE_STATE:1,LOAD_STATE:2,DISK_OPTIONS:3,COPY_NETPLAY_LINK:4,RESET_CART:5},{BACK:0,EXPORT_DISK:1,IMPORT_DISK:2,CLEAR_DISK:3}],Mt=[["CONTINUE","SAVE STATE","LOAD STATE","DISK OPTIONS","COPY NETPLAY URL","RESET CART"],["BACK","EXPORT DISK","IMPORT DISK","CLEAR DISK"]];A.MenuOverlay=class extends M{constructor(){super(),this.lastGamepad=0,this.selectedIdx=0,this.netplaySummary=[],this.optionContext=0,this.optionContextHistory=[]}get optionIndex(){return Ns[this.optionContext]}get options(){return Mt[this.optionContext]}previousContext(){if(this.optionContextHistory.length>0){const t=this.optionContextHistory.pop();this.resetInput(),this.optionContext=t.context,this.selectedIdx=t.index}}switchContext(t,e=0){this.optionContextHistory.push({context:this.optionContext,index:this.selectedIdx}),this.resetInput(),this.optionContext=t,this.selectedIdx=e}resetInput(){this.app.inputState.gamepad[0]=0}applyInput(){let t=0;for(const s of this.app.inputState.gamepad)t|=s;const e=t&(t^this.lastGamepad);if(this.lastGamepad=t,e&(L|F)){if(this.optionContext===j.DEFAULT)switch(this.selectedIdx){case this.optionIndex.CONTINUE:this.app.closeMenu();break;case this.optionIndex.SAVE_STATE:this.app.saveGameState(),this.app.closeMenu();break;case this.optionIndex.LOAD_STATE:this.app.loadGameState(),this.app.closeMenu();break;case this.optionIndex.DISK_OPTIONS:this.switchContext(j.DISK);break;case this.optionIndex.COPY_NETPLAY_LINK:this.app.copyNetplayLink(),this.app.closeMenu();break;case this.optionIndex.RESET_CART:this.app.resetCart(),this.app.closeMenu();break}else if(this.optionContext===j.DISK)switch(this.selectedIdx){case this.optionIndex.BACK:this.previousContext();break;case this.optionIndex.EXPORT_DISK:this.app.exportGameDisk(),this.app.closeMenu();break;case this.optionIndex.IMPORT_DISK:this.resetInput(),this.app.importGameDisk();break;case this.optionIndex.CLEAR_DISK:this.app.clearGameDisk(),this.app.closeMenu();break}}e&G&&this.selectedIdx++,e&H&&this.selectedIdx--,this.selectedIdx=(this.selectedIdx+this.options.length)%this.options.length}connectedCallback(){super.connectedCallback();const t=()=>{this.netplaySummary=this.app.getNetplaySummary()};t(),this.netplayPollInterval=window.setInterval(t,1e3)}disconnectedCallback(){window.clearInterval(this.netplayPollInterval),super.disconnectedCallback()}render(){return C` +
+ WASM-4 v${"2.7.0"} +
+ +
+ ${Ut(this.netplaySummary,t=>{const e=t.ping<100?"good":t.ping<200?"ok":"bad",s=t.ping<0?C`YOU`:C`${Math.ceil(t.ping)}ms`;return C`
PLAYER ${t.playerIdx>=0?t.playerIdx+1:"?"} ${s}
`})} +
+ `}},A.MenuOverlay.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + + color: #a0a0a0; + font: 16px wasm4-font; + + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + + background: rgba(0, 0, 0, 0.85); + } + + .version { + color: #fff; + padding-bottom: 1em; + } + + .menu { + border: 2px solid #f0f0f0; + padding: 0 1em 0 1em; + line-height: 2em; + } + + .netplay-summary { + margin-top: 2em; + line-height: 1.5em; + } + + .ping-you { + color: #f0f0f0; + } + + .ping-good { + color: green; + } + + .ping-ok { + color: yellow; + } + + .ping-bad { + color: red; + } + + ul { + list-style: none; + padding-left: 0; + padding-right: 1em; + } + + li::before { + content: "\\00a0\\00a0"; + } + li.selected::before { + content: "> "; + } + li.selected { + color: #fff; + } + `,Ot([at()],A.MenuOverlay.prototype,"selectedIdx",2),Ot([at()],A.MenuOverlay.prototype,"netplaySummary",2),A.MenuOverlay=Ot([bt("wasm4-menu-overlay")],A.MenuOverlay);var Bs=Object.defineProperty,Fs=Object.getOwnPropertyDescriptor,Et=(o,t,e,s)=>{for(var i=s>1?void 0:s?Fs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Bs(t,e,i),i};function Q(o,t,e){o&&(e?o.classList.add(t):o.classList.remove(t))}A.VirtualGamepad=class extends M{constructor(){super(...arguments),this.touchEvents=new Map,this.onPointerEvent=t=>{if(t.pointerType!="touch")return;switch(t.preventDefault(),t.type){case"pointerdown":case"pointermove":this.touchEvents.set(t.pointerId,t);break;default:this.touchEvents.delete(t.pointerId);break}let e=0;if(this.touchEvents.size){const c=this.dpad.getBoundingClientRect(),a=c.x+c.width/2,h=c.y+c.height/2,l=this.action1.getBoundingClientRect(),d=l.x+l.width/2,u=l.y+l.height/2,w=this.action2.getBoundingClientRect(),b=w.x+w.width/2,p=w.y+w.height/2;let f,m,y,g,_;for(const v of this.touchEvents.values())f=v.clientX-a,m=v.clientY-h,y=Math.sqrt(f*f+m*m),y<100&&y>10&&(g=f/y,_=m/y,-g>.6?e|=J:g>.6&&(e|=Z),-_>.6?e|=H:_>.6&&(e|=G)),f=v.clientX-d,m=v.clientY-u,f*f+m*m<2500&&(e|=L),f=v.clientX-b,m=v.clientY-p,f*f+m*m<2500&&(e|=F)}Q(this.action1,"pressed",e&L),Q(this.action2,"pressed",e&F),Q(this.dpad,"pressed-left",e&J),Q(this.dpad,"pressed-right",e&Z),Q(this.dpad,"pressed-up",e&H),Q(this.dpad,"pressed-down",e&G),this.app.inputState.gamepad[0]=e}}connectedCallback(){super.connectedCallback(),window.addEventListener("pointercancel",this.onPointerEvent),window.addEventListener("pointerdown",this.onPointerEvent),window.addEventListener("pointermove",this.onPointerEvent),window.addEventListener("pointerup",this.onPointerEvent)}disconnectedCallback(){window.removeEventListener("pointercancel",this.onPointerEvent),window.removeEventListener("pointerdown",this.onPointerEvent),window.removeEventListener("pointermove",this.onPointerEvent),window.removeEventListener("pointerup",this.onPointerEvent),super.disconnectedCallback()}onMenuButtonPressed(t){this.app.onMenuButtonPressed(),t.stopImmediatePropagation()}render(){return C` + +
+
X
+
Z
+ `}},A.VirtualGamepad.styles=ft` + :host { + display: none; + } + @media (hover: none) or (pointer: coarse) { + :host { + display: inherit; + } + } + + .dpad { + pointer-events: none; + position: absolute; + width: 39px; + height: 120px; + left: 69px; + bottom: 30px; + background: #444; + border-radius: 9px; + } + .dpad:before { + position: absolute; + width: 120px; + height: 39px; + top: 39px; + left: -39px; + background: #444; + border-radius: 9px; + content: ""; + } + .dpad:after { + position: absolute; + height: 39px; + width: 39px; + top: 39px; + border-radius: 100%; + background: #333; + content: ""; + } + .dpad.pressed-left:before { + border-left: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-right:before { + border-right: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-up { + border-top: 4px solid #A93671; + } + .dpad.pressed-down { + border-bottom: 4px solid #A93671; + height: 116px; + } + + .action1 { + right: 80px; + bottom: 30px; + } + .action2 { + right: 30px; + bottom: 90px; + } + .action1, .action2 { + pointer-events: none; + position: absolute; + width: 60px; + height: 60px; + border: 4px solid #A93671; + border-radius: 50px; + + /** TODO(2022-03-14): Button text should be centered but is off slightly. */ + color: #A93671; + font: 24px wasm4-font; + text-align: center; + line-height: 60px; + } + .action1.pressed, .action2.pressed { + background: #A93671; + } + + .menu { + position: absolute; + background: #444; + width: 60px; + height: 20px; + bottom: 200px; + right: 35px; + border-radius: 10px; + } + `,Et([ct(".dpad")],A.VirtualGamepad.prototype,"dpad",2),Et([ct(".action1")],A.VirtualGamepad.prototype,"action1",2),Et([ct(".action2")],A.VirtualGamepad.prototype,"action2",2),A.VirtualGamepad=Et([bt("wasm4-virtual-gamepad")],A.VirtualGamepad);var Hs=Object.defineProperty,Gs=Object.getOwnPropertyDescriptor,Ae=(o,t,e,s)=>{for(var i=s>1?void 0:s?Gs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Hs(t,e,i),i};return A.Notifications=class extends M{constructor(){super(...arguments),this.notifications=[]}show(t){this.notifications=this.notifications.concat([t]),setTimeout(()=>{this.notifications=this.notifications.slice(1)},5e3)}render(){return this.notifications.map(t=>C`
${t}
`)}},A.Notifications.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + pointer-events: none; + + color: #fff; + font: 24px wasm4-font; + + display: flex; + flex-direction: column; + } + + .notification { + background: rgba(0, 0, 0, 0.85); + padding: 0.5em; + /* animation: appear 0.5s ease-out, disappear 0.5s 4.5s ease-in; */ + /* animation-fill-mode: forwards; */ + animation: appear 0.5s ease-out; + } + + @keyframes appear { + from { + padding-left: 2em; + opacity: 0; + } + to { + opacity: 1; + padding-left: 0.5em; + } + } + + /*@keyframes disappear { + from { + opacity: 1; + } + to { + opacity: 0; + } + }*/ + `,Ae([at()],A.Notifications.prototype,"notifications",2),A.Notifications=Ae([bt("wasm4-notifications")],A.Notifications),Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),A}({}); diff --git a/w4-life/cart.wasm b/w4-life/cart.wasm new file mode 100644 index 00000000..2046b11a Binary files /dev/null and b/w4-life/cart.wasm differ diff --git a/w4-life/favicon.ico b/w4-life/favicon.ico new file mode 100644 index 00000000..1e3dcdc7 Binary files /dev/null and b/w4-life/favicon.ico differ diff --git a/w4-life/index.html b/w4-life/index.html new file mode 100644 index 00000000..889693a0 --- /dev/null +++ b/w4-life/index.html @@ -0,0 +1,14 @@ + + + + + + + Wa-lang/WASM-4 Game + + + + + + + diff --git a/w4-life/w4life.wat b/w4-life/w4life.wat new file mode 100644 index 00000000..ccda4471 --- /dev/null +++ b/w4-life/w4life.wat @@ -0,0 +1,7176 @@ +(module $__walang__ + (import "env" "traceUtf8" (func $runtime.traceUtf8 (param i32) (param i32))) + (import "env" "rect" (func $syscall$wasm4.__import__rect (param i32) (param i32) (param i32) (param i32))) + (import "env" "memory" (memory 1)) + (table 18 funcref) + (type $$onFree (func (param i32))) + (type $$wa.runtime.comp (func (param i32) (param i32) (result i32))) + (global $__stack_ptr (mut i32) (i32.const 14656)) + (global $__heap_max i32 (i32.const 65536)) + (global $$wa.runtime.closure_data (mut i32) (i32.const 0)) + (global $$wa.runtime._concretTypeCount (mut i32) (i32.const 1)) + (global $$wa.runtime._interfaceCount (mut i32) (i32.const 1)) + (global $$wa.runtime._itabsPtr (mut i32) (i32.const 15080)) + (global $runtime.init$guard (mut i32) (i32.const 0)) + (global $$knr_basep (mut i32) (i32.const 0)) + (global $$knr_freep (mut i32) (i32.const 0)) + (global $syscall$wasm4.init$guard (mut i32) (i32.const 0)) + (global $w4life.cellFrame.0 i32 (i32.const 0)) + (global $w4life.cellFrame.1 i32 (i32.const 14792)) + (global $w4life.cells0.0 i32 (i32.const 0)) + (global $w4life.cells0.1 i32 (i32.const 14800)) + (global $w4life.cells1.0 i32 (i32.const 0)) + (global $w4life.cells1.1 i32 (i32.const 14808)) + (global $w4life.dirs.0 i32 (i32.const 0)) + (global $w4life.dirs.1 i32 (i32.const 14816)) + (global $w4life.init$guard (mut i32) (i32.const 0)) + (global $w4life.pausing.0 i32 (i32.const 0)) + (global $w4life.pausing.1 i32 (i32.const 14880)) + (global $w4life.seed.0 i32 (i32.const 0)) + (global $w4life.seed.1 i32 (i32.const 14888)) + (global $runtime.zptr (mut i32) (i32.const 15016)) + (global $__heap_base i32 (i32.const 15104)) + (func $runtime.heapBase (result i32) + global.get $__heap_base + ) + (func $runtime.heapMax (result i32) + global.get $__heap_max + ) + (func $runtime.HeapAlloc (export "runtime.HeapAlloc") (param $nbytes i32) (result i32) + (local $ptr i32) + local.get $nbytes + i32.eqz + if + i32.const 0 + return + end + local.get $nbytes + i32.const 7 + i32.add + i32.const 8 + i32.div_u + i32.const 8 + i32.mul + local.set $nbytes + local.get $nbytes + call $runtime.malloc + local.set $ptr + loop $zero + local.get $nbytes + i32.const 8 + i32.sub + local.tee $nbytes + local.get $ptr + i32.add + i64.const 0 + i64.store align=8 + local.get $nbytes + if + br $zero + end + end + local.get $ptr + ) + (func $runtime.HeapFree (export "runtime.HeapFree") (param $ptr i32) + local.get $ptr + call $runtime.free + ) + (func $runtime.Block.Init (param $ptr i32) (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + i32.const 1 + i32.store align=1 + local.get $ptr + local.get $item_count + i32.store offset=4 align=1 + local.get $ptr + local.get $release_func + i32.store offset=8 align=1 + local.get $ptr + local.get $item_size + i32.store offset=12 align=1 + end + ) + (func $runtime.Block.HeapAlloc (export "runtime.Block.HeapAlloc") (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $item_count + local.get $item_size + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $item_count + local.get $release_func + local.get $item_size + call $runtime.Block.Init + ) + (func $runtime.DupI32 (param $a i32) (result i32 i32) + local.get $a + local.get $a + ) + (func $runtime.Block.Retain (export "runtime.Block.Retain") (param $ptr i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + local.get $ptr + i32.load align=1 + i32.const 1 + i32.add + i32.store align=1 + end + ) + (func $runtime.Block.Release (export "runtime.Block.Release") (param $ptr i32) + (local $ref_count i32) + (local $item_count i32) + (local $free_func i32) + (local $item_size i32) + (local $data_ptr i32) + local.get $ptr + i32.const 0 + i32.eq + if + return + end + local.get $ptr + i32.load align=1 + i32.const 1 + i32.sub + local.set $ref_count + local.get $ref_count + if + local.get $ptr + local.get $ref_count + i32.store align=1 + else + local.get $ptr + i32.load offset=8 align=1 + local.set $free_func + local.get $free_func + if + local.get $ptr + i32.load offset=4 align=1 + local.set $item_count + local.get $item_count + if + local.get $ptr + i32.load offset=12 align=1 + local.set $item_size + local.get $ptr + i32.const 16 + i32.add + local.set $data_ptr + loop $free_next + local.get $data_ptr + local.get $free_func + call_indirect 0 (type $$onFree) + local.get $item_count + i32.const 1 + i32.sub + local.set $item_count + local.get $item_count + if + local.get $data_ptr + local.get $item_size + i32.add + local.set $data_ptr + br $free_next + end + end + end + end + local.get $ptr + call $runtime.HeapFree + end + ) + (func $$wa.runtime.string_to_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) + local.get $d + ) + (func $$wa.runtime.string_to_iter (param $b i32) (param $d i32) (param $l i32) (result i32 i32 i32) + local.get $d + local.get $l + i32.const 0 + ) + (func $$syscall/wasm4.__linkname__make_slice (param $blk i32) (param $ptr i32) (param $len i32) (param $cap i32) (result i32 i32 i32 i32) + local.get $blk + local.get $ptr + local.get $len + local.get $cap + return + ) + (func $$string.appendstr (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32 i32 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $item i32) + (local $src i32) + (local $dest i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_len + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + ) + (func $$string.$$compAddr (param $p0 i32) (param $p1 i32) (result i32) + (local $v0.0 i32) + (local $v0.1 i32) + (local $v0.2 i32) + (local $v1.0 i32) + (local $v1.1 i32) + (local $v1.2 i32) + local.get $p0 + if + local.get $p0 + i32.load + call $runtime.Block.Retain + local.get $p0 + i32.load offset=4 + local.get $p0 + i32.load offset=8 + local.set $v0.2 + local.set $v0.1 + local.get $v0.0 + call $runtime.Block.Release + local.set $v0.0 + end + local.get $p1 + if + local.get $p1 + i32.load + call $runtime.Block.Retain + local.get $p1 + i32.load offset=4 + local.get $p1 + i32.load offset=8 + local.set $v1.2 + local.set $v1.1 + local.get $v1.0 + call $runtime.Block.Release + local.set $v1.0 + end + local.get $v0.0 + local.get $v0.1 + local.get $v0.2 + local.get $v1.0 + local.get $v1.1 + local.get $v1.2 + call $$wa.runtime.string_Comp + local.get $v0.0 + call $runtime.Block.Release + local.get $v1.0 + call $runtime.Block.Release + ) + (func $$u8.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$string.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $runtime.free (param $ap i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 + end + i32.const 0 + local.set $$current_block + local.get $ap + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ap + i32.const 8 + i32.sub + local.set $$t1 + i32.const 0 + local.set $$t2.0 + i32.const 0 + local.set $$t2.1 + local.get $$t1 + call $runtime.knr_getBlockHeader + local.set $$t3.1 + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.set $$t2.1 + local.set $$t2.0 + local.get $$t2.1 + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.le_u + local.set $$t5 + local.get $$t5 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $ap + i32.const 8 + i32.rem_u + local.set $$t6 + local.get $$t6 + i32.const 0 + i32.eq + i32.eqz + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + global.get $$knr_freep + local.set $$t8 + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + local.get $$t8 + call $runtime.knr_getBlockHeader + local.set $$t10.1 + local.set $$t10.0 + local.get $$t10.0 + local.get $$t10.1 + local.set $$t9.1 + local.set $$t9.0 + br $$Block_7 + end + i32.const 6 + local.set $$current_block + local.get $$t9.0 + local.set $$t11 + local.get $$t12 + local.get $$t11 + i32.ge_u + local.set $$t13 + local.get $$t13 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $$t2.1 + local.set $$t14 + local.get $$t14 + i32.const 8 + i32.mul + local.set $$t15 + local.get $$t1 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t9.0 + local.set $$t17 + local.get $$t16 + local.get $$t17 + i32.eq + local.set $$t18 + local.get $$t18 + if + br $$Block_12 + else + br $$Block_14 + end + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t19 + end + local.set $$t12 + i32.const 8 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t9.0 + local.set $$t21 + local.get $$t1 + local.get $$t21 + i32.lt_u + local.set $$t22 + local.get $$t22 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t9.0 + local.set $$t19 + local.get $$t19 + call $runtime.knr_getBlockHeader + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t9.1 + local.set $$t9.0 + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t24 + local.get $$t24 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 12 + local.set $$current_block + local.get $$t9.0 + local.set $$t25 + local.get $$t1 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 0 + local.set $$t27.0 + i32.const 0 + local.set $$t27.1 + local.get $$t9.0 + local.set $$t28 + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t29.1 + local.set $$t29.0 + local.get $$t29.0 + local.get $$t29.1 + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.1 + local.set $$t30 + local.get $$t2.1 + local.set $$t31 + local.get $$t31 + local.get $$t30 + i32.add + local.set $$t32 + local.get $$t32 + local.set $$t2.1 + local.get $$t27.0 + local.set $$t33 + local.get $$t33 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t34.1 + local.set $$t34.0 + local.get $$t1 + local.get $$t34.0 + local.get $$t34.1 + call $runtime.knr_setBlockHeader + br $$Block_13 + end + i32.const 14 + local.set $$current_block + local.get $$t9.1 + local.set $$t35 + local.get $$t35 + i32.const 8 + i32.mul + local.set $$t36 + local.get $$t12 + local.get $$t36 + i32.add + local.set $$t37 + local.get $$t37 + local.get $$t1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_15 + else + br $$Block_17 + end + end + i32.const 15 + local.set $$current_block + local.get $$t9.0 + local.set $$t39 + local.get $$t39 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t40.1 + local.set $$t40.0 + local.get $$t1 + local.get $$t40.0 + local.get $$t40.1 + call $runtime.knr_setBlockHeader + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $$t2.1 + local.set $$t41 + local.get $$t9.1 + local.set $$t42 + local.get $$t42 + local.get $$t41 + i32.add + local.set $$t43 + local.get $$t43 + local.set $$t9.1 + local.get $$t2.0 + local.set $$t44 + local.get $$t44 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t45.1 + local.set $$t45.0 + local.get $$t12 + local.get $$t45.0 + local.get $$t45.1 + call $runtime.knr_setBlockHeader + br $$Block_16 + end + i32.const 17 + local.set $$current_block + local.get $$t12 + global.set $$knr_freep + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t1 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t46.1 + local.set $$t46.0 + local.get $$t12 + local.get $$t46.0 + local.get $$t46.1 + call $runtime.knr_setBlockHeader + i32.const 17 + local.set $$block_selector + br $$BlockDisp + end + end + end + ) + (func $runtime.get_u8 (param $addr i32) (result i32) + local.get $addr + i32.load8_u align=1 + ) + (func $runtime.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $runtime.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $runtime.init$guard + call $syscall$wasm4.init + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $runtime.knr_getBlockHeader (param $addr i32) (result i32 i32) + local.get $addr + i32.load + local.get $addr + i32.load offset=4 + ) + (func $runtime.knr_setBlockHeader (param $addr i32) (param $data.0 i32) (param $data.1 i32) + local.get $addr + local.get $data.0 + i32.store + local.get $addr + local.get $data.1 + i32.store offset=4 + ) + (func $runtime.malloc (param $nbytes i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 + end + i32.const 0 + local.set $$current_block + local.get $nbytes + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + global.get $$knr_basep + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + call $runtime.heapMax + local.set $$t3 + global.get $$knr_basep + local.set $$t4 + local.get $$t3 + local.get $$t4 + i32.sub + local.set $$t5 + local.get $nbytes + local.get $$t5 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + call $runtime.heapBase + local.set $$t7 + local.get $$t7 + global.set $$knr_basep + global.get $$knr_basep + local.set $$t8 + local.get $$t8 + global.set $$knr_freep + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t10 + call $runtime.heapMax + local.set $$t11 + global.get $$knr_basep + local.set $$t12 + local.get $$t11 + local.get $$t12 + i32.sub + local.set $$t13 + local.get $$t13 + i32.const 8 + i32.div_u + local.set $$t14 + local.get $$t14 + i32.const 1 + i32.sub + local.set $$t15 + local.get $$t10 + local.set $$t9.0 + local.get $$t15 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t16 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t17.1 + local.set $$t17.0 + local.get $$t16 + local.get $$t17.0 + local.get $$t17.1 + call $runtime.knr_setBlockHeader + br $$Block_4 + end + i32.const 5 + local.set $$current_block + local.get $nbytes + i32.const 8 + i32.add + local.set $$t18 + local.get $$t18 + i32.const 1 + i32.sub + local.set $$t19 + local.get $$t19 + i32.const 8 + i32.div_u + local.set $$t20 + local.get $$t20 + i32.const 1 + i32.add + local.set $$t21 + global.get $$knr_freep + local.set $$t22 + i32.const 0 + local.set $$t23.0 + i32.const 0 + local.set $$t23.1 + local.get $$t22 + call $runtime.knr_getBlockHeader + local.set $$t24.1 + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.set $$t25 + i32.const 0 + local.set $$t26.0 + i32.const 0 + local.set $$t26.1 + local.get $$t25 + call $runtime.knr_getBlockHeader + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.0 + local.get $$t27.1 + local.set $$t26.1 + local.set $$t26.0 + br $$Block_5 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t22 + else + local.get $$t28 + end + local.set $$t29 + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t25 + else + local.get $$t30 + end + local.set $$t28 + i32.const 6 + local.set $$current_block + local.get $$t26.1 + local.set $$t31 + local.get $$t31 + local.get $$t21 + i32.ge_u + local.set $$t32 + local.get $$t32 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t26.1 + local.set $$t33 + local.get $$t33 + local.get $$t21 + i32.eq + local.set $$t34 + local.get $$t34 + if + br $$Block_8 + else + br $$Block_10 + end + end + i32.const 8 + local.set $$current_block + global.get $$knr_freep + local.set $$t35 + local.get $$t28 + local.get $$t35 + i32.eq + local.set $$t36 + local.get $$t36 + if + br $$Block_11 + else + br $$Block_12 + end + end + i32.const 9 + local.set $$current_block + local.get $$t26.0 + local.set $$t37 + local.get $$t37 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t38.1 + local.set $$t38.0 + local.get $$t29 + local.get $$t38.0 + local.get $$t38.1 + call $runtime.knr_setBlockHeader + br $$Block_9 + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t28 + else + local.get $$t39 + end + local.set $$t40 + i32.const 10 + local.set $$current_block + local.get $$t29 + global.set $$knr_freep + local.get $$t40 + i32.const 8 + i32.add + local.set $$t41 + local.get $$t41 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $$t26.1 + local.set $$t42 + local.get $$t42 + local.get $$t21 + i32.sub + local.set $$t43 + local.get $$t43 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t44.1 + local.set $$t44.0 + local.get $$t28 + local.get $$t44.0 + local.get $$t44.1 + call $runtime.knr_setBlockHeader + local.get $$t26.1 + local.set $$t45 + local.get $$t45 + i32.const 8 + i32.mul + local.set $$t46 + local.get $$t28 + local.get $$t46 + i32.add + local.set $$t39 + local.get $$t39 + call $runtime.knr_getBlockHeader + local.set $$t47.1 + local.set $$t47.0 + local.get $$t47.0 + local.get $$t47.1 + local.set $$t26.1 + local.set $$t26.0 + local.get $$t21 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t48.1 + local.set $$t48.0 + local.get $$t39 + local.get $$t48.0 + local.get $$t48.1 + call $runtime.knr_setBlockHeader + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t49.1 + local.set $$t49.0 + local.get $$t49.0 + local.get $$t49.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t26.0 + local.set $$t30 + local.get $$t30 + call $runtime.knr_getBlockHeader + local.set $$t50.1 + local.set $$t50.0 + local.get $$t50.0 + local.get $$t50.1 + local.set $$t26.1 + local.set $$t26.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + ) + (func $$void.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$void.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + call_indirect 0 (type $$onFree) + ) + (func $$i`0`.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapNode.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 9 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapImp.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 11 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapIter.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 12 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$array1.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $runtime.next_rune (param $iter.0 i32) (param $iter.1 i32) (param $iter.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$ret_2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101 i32) + (local $$t102 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106 i32) + (local $$t107 i32) + (local $$t108 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110 i32) + (local $$t111 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116 i32) + (local $$t117 i32) + (local $$t118 i32) + (local $$t119 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121 i32) + (local $$t122 i32) + (local $$t123 i32) + (local $$t124 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126 i32) + (local $$t127 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $iter.0 + i32.store + local.get $$t0.1 + local.get $iter.1 + i32.store offset=4 + local.get $$t0.1 + local.get $iter.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.ge_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + i32.const 0 + local.set $$ret_0 + local.get $$t7 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + local.get $$t9 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + local.set $$t12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t14 + local.set $$t15 + local.get $$t12 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t16 + call $runtime.get_u8 + local.set $$t17 + local.get $$t17 + local.set $$t18 + local.get $$t18 + i32.const 128 + i32.and + local.set $$t19 + local.get $$t19 + i32.const 0 + i32.eq + local.set $$t20 + local.get $$t20 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.load + local.set $$t22 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t24 + i32.const 1 + i32.add + local.set $$t25 + i32.const 1 + local.set $$ret_0 + local.get $$t22 + local.set $$ret_1 + local.get $$t18 + local.set $$ret_2 + local.get $$t25 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t18 + i32.const 224 + i32.and + local.set $$t26 + local.get $$t26 + i32.const 192 + i32.eq + local.set $$t27 + local.get $$t27 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t18 + i32.const 31 + i32.and + local.set $$t28 + local.get $$t28 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t29 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t32 + local.get $$t35 + i32.add + local.set $$t36 + local.get $$t36 + i32.const 1 + i32.add + local.set $$t37 + local.get $$t37 + call $runtime.get_u8 + local.set $$t38 + local.get $$t38 + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t29 + local.get $$t40 + i32.or + local.set $$t43 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.add + local.set $$t46 + i32.const 1 + local.set $$ret_0 + local.get $$t42 + local.set $$ret_1 + local.get $$t43 + local.set $$ret_2 + local.get $$t46 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $$t18 + i32.const 240 + i32.and + local.set $$t47 + local.get $$t47 + i32.const 224 + i32.eq + local.set $$t48 + local.get $$t48 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t18 + i32.const 15 + i32.and + local.set $$t49 + local.get $$t49 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t50 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.set $$t52 + local.get $$t52 + local.set $$t53 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.1 + i32.load + local.set $$t55 + local.get $$t55 + local.set $$t56 + local.get $$t53 + local.get $$t56 + i32.add + local.set $$t57 + local.get $$t57 + i32.const 1 + i32.add + local.set $$t58 + local.get $$t58 + call $runtime.get_u8 + local.set $$t59 + local.get $$t59 + local.set $$t60 + local.get $$t60 + i32.const 63 + i32.and + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t63.1 + i32.load + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.load + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t65 + local.get $$t68 + i32.add + local.set $$t69 + local.get $$t69 + i32.const 2 + i32.add + local.set $$t70 + local.get $$t70 + call $runtime.get_u8 + local.set $$t71 + local.get $$t71 + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + local.get $$t74.1 + i32.load + local.set $$t75 + local.get $$t50 + local.get $$t62 + i32.or + local.set $$t76 + local.get $$t76 + local.get $$t73 + i32.or + local.set $$t77 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + local.get $$t78.1 + i32.load + local.set $$t79 + local.get $$t79 + i32.const 3 + i32.add + local.set $$t80 + i32.const 1 + local.set $$ret_0 + local.get $$t75 + local.set $$ret_1 + local.get $$t77 + local.set $$ret_2 + local.get $$t80 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t18 + i32.const 248 + i32.and + local.set $$t81 + local.get $$t81 + i32.const 240 + i32.eq + local.set $$t82 + local.get $$t82 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t18 + i32.const 7 + i32.and + local.set $$t83 + local.get $$t83 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t84 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.1 + i32.load + local.set $$t86 + local.get $$t86 + local.set $$t87 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.load + local.set $$t89 + local.get $$t89 + local.set $$t90 + local.get $$t87 + local.get $$t90 + i32.add + local.set $$t91 + local.get $$t91 + i32.const 1 + i32.add + local.set $$t92 + local.get $$t92 + call $runtime.get_u8 + local.set $$t93 + local.get $$t93 + local.set $$t94 + local.get $$t94 + i32.const 63 + i32.and + local.set $$t95 + local.get $$t95 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t96 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t97.1 + i32.load + local.set $$t98 + local.get $$t98 + local.set $$t99 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $$t100.1 + i32.load + local.set $$t101 + local.get $$t101 + local.set $$t102 + local.get $$t99 + local.get $$t102 + i32.add + local.set $$t103 + local.get $$t103 + i32.const 2 + i32.add + local.set $$t104 + local.get $$t104 + call $runtime.get_u8 + local.set $$t105 + local.get $$t105 + local.set $$t106 + local.get $$t106 + i32.const 63 + i32.and + local.set $$t107 + local.get $$t107 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t108 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.1 + i32.load + local.set $$t110 + local.get $$t110 + local.set $$t111 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.1 + i32.load + local.set $$t113 + local.get $$t113 + local.set $$t114 + local.get $$t111 + local.get $$t114 + i32.add + local.set $$t115 + local.get $$t115 + i32.const 3 + i32.add + local.set $$t116 + local.get $$t116 + call $runtime.get_u8 + local.set $$t117 + local.get $$t117 + local.set $$t118 + local.get $$t118 + i32.const 63 + i32.and + local.set $$t119 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + local.get $$t120.1 + i32.load + local.set $$t121 + local.get $$t84 + local.get $$t96 + i32.or + local.set $$t122 + local.get $$t122 + local.get $$t108 + i32.or + local.set $$t123 + local.get $$t123 + local.get $$t119 + i32.or + local.set $$t124 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.load + local.set $$t126 + local.get $$t126 + i32.const 4 + i32.add + local.set $$t127 + i32.const 1 + local.set $$ret_0 + local.get $$t121 + local.set $$ret_1 + local.get $$t124 + local.set $$ret_2 + local.get $$t127 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + i32.const 0 + local.set $$ret_3 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$ret_2 + local.get $$ret_3 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + ) + (func $runtime.printBool (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + local.get $v + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + i32.const 14953 + i32.const 4 + call $runtime.printString + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + i32.const 0 + i32.const 14957 + i32.const 5 + call $runtime.printString + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + ) + (func $runtime.printString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + local.get $$t0 + i32.const 0 + i32.gt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.refToPtr_string + local.set $$t2 + local.get $$t0 + local.set $$t3 + local.get $$t2 + local.get $$t3 + call $$runtime.waPuts + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $runtime.refToPtr_string (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$wa.runtime.string_to_ptr + local.set $$t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $runtime.stringFromRune (param $r i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $r + local.set $$t2 + local.get $$t2 + i32.const 127 + i32.le_u + local.set $$t3 + local.get $$t3 + if + br $$Block_1 + else + br $$Block_3 + end + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const 2 + else + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + i32.const 3 + else + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 3 + else + i32.const 4 + end + end + end + end + local.set $$t4 + i32.const 1 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.get $$t4 + i32.const 0 + i32.sub + local.get $$t1.3 + i32.const 0 + i32.sub + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + call $$string.appendstr + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $r + i32.const 255 + i32.and + local.set $$t8 + local.get $$t7.1 + local.get $$t8 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load8_u align=1 + local.set $$t10 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t12 + local.get $$t12 + i32.const 255 + i32.and + local.set $$t13 + i32.const 192 + local.get $$t13 + i32.or + local.set $$t14 + local.get $$t11.1 + local.get $$t14 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $r + i32.const 255 + i32.and + local.set $$t16 + local.get $$t16 + i32.const 63 + i32.and + local.set $$t17 + i32.const 128 + local.get $$t17 + i32.or + local.set $$t18 + local.get $$t15.1 + local.get $$t18 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $$t2 + i32.const 2047 + i32.le_u + local.set $$t19 + local.get $$t19 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load8_u align=1 + local.set $$t21 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + i32.const 65533 + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t23 + local.get $$t23 + i32.const 255 + i32.and + local.set $$t24 + i32.const 224 + local.get $$t24 + i32.or + local.set $$t25 + local.get $$t22.1 + local.get $$t25 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + i32.const 65533 + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t27 + local.get $$t27 + i32.const 255 + i32.and + local.set $$t28 + local.get $$t28 + i32.const 63 + i32.and + local.set $$t29 + i32.const 128 + local.get $$t29 + i32.or + local.set $$t30 + local.get $$t26.1 + local.get $$t30 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 65533 + i32.const 255 + i32.and + local.set $$t32 + local.get $$t32 + i32.const 63 + i32.and + local.set $$t33 + i32.const 128 + local.get $$t33 + i32.or + local.set $$t34 + local.get $$t31.1 + local.get $$t34 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $$t2 + i32.const 1114111 + i32.gt_u + local.set $$t35 + local.get $$t35 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.1 + i32.load8_u align=1 + local.set $$t37 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t39 + local.get $$t39 + i32.const 255 + i32.and + local.set $$t40 + i32.const 224 + local.get $$t40 + i32.or + local.set $$t41 + local.get $$t38.1 + local.get $$t41 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t43 + local.get $$t43 + i32.const 255 + i32.and + local.set $$t44 + local.get $$t44 + i32.const 63 + i32.and + local.set $$t45 + i32.const 128 + local.get $$t45 + i32.or + local.set $$t46 + local.get $$t42.1 + local.get $$t46 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $r + i32.const 255 + i32.and + local.set $$t48 + local.get $$t48 + i32.const 63 + i32.and + local.set $$t49 + i32.const 128 + local.get $$t49 + i32.or + local.set $$t50 + local.get $$t47.1 + local.get $$t50 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + i32.const 55296 + local.get $$t2 + i32.le_u + local.set $$t51 + local.get $$t51 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t2 + i32.const 65535 + i32.le_u + local.set $$t52 + local.get $$t52 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 10 + local.set $$current_block + local.get $$t2 + i32.const 57343 + i32.le_u + local.set $$t53 + br $$Block_10 + end + local.get $$current_block + i32.const 8 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t53 + end + local.set $$t54 + i32.const 11 + local.set $$current_block + local.get $$t54 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.1 + i32.load8_u align=1 + local.set $$t56 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $r + i64.const 18 + i32.wrap_i64 + i32.shr_s + local.set $$t58 + local.get $$t58 + i32.const 255 + i32.and + local.set $$t59 + i32.const 240 + local.get $$t59 + i32.or + local.set $$t60 + local.get $$t57.1 + local.get $$t60 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t62 + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + local.get $$t63 + i32.const 63 + i32.and + local.set $$t64 + i32.const 128 + local.get $$t64 + i32.or + local.set $$t65 + local.get $$t61.1 + local.get $$t65 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t67 + local.get $$t67 + i32.const 255 + i32.and + local.set $$t68 + local.get $$t68 + i32.const 63 + i32.and + local.set $$t69 + i32.const 128 + local.get $$t69 + i32.or + local.set $$t70 + local.get $$t66.1 + local.get $$t70 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $r + i32.const 255 + i32.and + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + i32.const 128 + local.get $$t73 + i32.or + local.set $$t74 + local.get $$t71.1 + local.get $$t74 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + ) + (func $$wa.runtime.string_Comp (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $x.0 + local.get $x.1 + local.get $x.2 + call $$wa.runtime.string_to_iter + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0 + local.get $$t0.1 + local.get $$t1.0 + i32.store + local.get $$t0.1 + local.get $$t1.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t1.2 + i32.store offset=8 + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_to_iter + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + local.get $$t2.1 + local.get $$t3.0 + i32.store + local.get $$t2.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t3.2 + i32.store offset=8 + br $$Block_0 + end + i32.const 1 + local.set $$current_block + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $runtime.next_rune + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0 + local.get $$t5.0 + local.set $$t6 + local.get $$t5.1 + local.set $$t7 + local.get $$t5.2 + local.set $$t8 + local.get $$t5.3 + local.set $$t9 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + local.get $$t9 + i32.store + local.get $$t2.1 + i32.load + local.get $$t2.1 + i32.load offset=4 + local.get $$t2.1 + i32.load offset=8 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + call $runtime.next_rune + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.set $$t12.0 + local.get $$t12.0 + local.set $$t13 + local.get $$t12.1 + local.set $$t14 + local.get $$t12.2 + local.set $$t15 + local.get $$t12.3 + local.set $$t16 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 8 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + local.get $$t16 + i32.store + local.get $$t6 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $x.2 + local.set $$t18 + local.get $y.2 + local.set $$t19 + local.get $$t18 + local.get $$t19 + i32.lt_s + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.lt_s + local.set $$t21 + local.get $$t21 + if + br $$Block_5 + else + br $$Block_6 + end + end + i32.const 4 + local.set $$current_block + br $$Block_4 + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t22 + i32.const 5 + local.set $$current_block + local.get $$t22 + i32.const 1 + i32.eq + i32.eqz + local.set $$t23 + local.get $$t23 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.gt_s + local.set $$t24 + local.get $$t24 + if + br $$Block_7 + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 9 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $$t18 + local.get $$t19 + i32.gt_s + local.set $$t25 + local.get $$t25 + if + br $$Block_10 + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + ) + (func $$runtime.waPrintBool (param $i i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $i + call $runtime.printBool + br $$BlockFnBody + end + end + end + ) + (func $$runtime.waPrintChar (param $ch i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ch + call $$runtime.waPrintRune + br $$BlockFnBody + end + end + end + ) + (func $$runtime.waPrintRune (param $ch i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ch + call $runtime.stringFromRune + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + local.get $$t0.1 + local.get $$t0.2 + call $runtime.printString + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $$runtime.waPuts (param $ptr i32) (param $len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ptr + local.get $len + call $runtime.traceUtf8 + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.GetFramebuffer (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 160 + i32.const 6400 + i32.const 6400 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.get $$t0.2 + local.get $$t0.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetGamePad1 (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 22 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetMouseButtons (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 30 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetMouseX (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 26 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load16_u + local.set $$t2 + local.get $$t2 + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetMouseY (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 28 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load16_u + local.set $$t2 + local.get $$t2 + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.Rect (param $x i32) (param $y i32) (param $width i32) (param $height i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + local.set $$t0 + local.get $y + local.set $$t1 + local.get $width + local.set $$t2 + local.get $height + local.set $$t3 + local.get $$t0 + local.get $$t1 + local.get $$t2 + local.get $$t3 + call $syscall$wasm4.__import__rect + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.SetDrawColorsU16 (param $x i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 20 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + local.get $x + i32.store16 + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $syscall$wasm4.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $syscall$wasm4.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$u8.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $$w4life.Framebuffer.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 15 + call_indirect 0 (type $$onFree) + ) + (func $w4life.FramebufferInstance (export "w4life.FramebufferInstance") (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 16 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + call $syscall$wasm4.GetFramebuffer + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t1.1 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t1.1 + local.get $$t2.1 + i32.store offset=4 + local.get $$t1.1 + local.get $$t2.2 + i32.store offset=8 + local.get $$t1.1 + local.get $$t2.3 + i32.store offset=12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + ) + (func $w4life.LifeInit (export "w4life.LifeInit") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t9.3 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + (local $$t13.3 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t20.2 i32) + (local $$t20.3 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i64) + (local $$t25 i64) + (local $$t26 i64) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 + end + i32.const 0 + local.set $$current_block + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=4 + local.get $$t1.1 + i32.load offset=8 + local.get $$t1.1 + i32.load offset=12 + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.2 + local.set $$t3 + br $$Block_0 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$t4 + end + local.set $$t5 + i32.const 1 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t4 + local.get $$t4 + local.get $$t3 + i32.lt_s + local.set $$t6 + local.get $$t6 + if + br $$Block_1 + else + br $$Block_2 + end + end + i32.const 2 + local.set $$current_block + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + call $runtime.Block.Retain + local.get $$t8.1 + i32.load offset=4 + local.get $$t8.1 + i32.load offset=8 + local.get $$t8.1 + i32.load offset=12 + local.set $$t9.3 + local.set $$t9.2 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.0 + call $runtime.Block.Retain + local.get $$t9.1 + i32.const 1 + local.get $$t4 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.const 0 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + i32.const 14808 + i32.load + call $runtime.Block.Retain + i32.const 14808 + i32.load offset=4 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 8 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load + call $runtime.Block.Retain + local.get $$t12.1 + i32.load offset=4 + local.get $$t12.1 + i32.load offset=8 + local.get $$t12.1 + i32.load offset=12 + local.set $$t13.3 + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.2 + local.set $$t14 + br $$Block_3 + end + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$t15 + end + local.set $$t16 + i32.const 4 + local.set $$current_block + local.get $$t16 + i32.const 1 + i32.add + local.set $$t15 + local.get $$t15 + local.get $$t14 + i32.lt_s + local.set $$t17 + local.get $$t17 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + i32.const 14808 + i32.load + call $runtime.Block.Retain + i32.const 14808 + i32.load offset=4 + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + i32.const 8 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.1 + i32.load + call $runtime.Block.Retain + local.get $$t19.1 + i32.load offset=4 + local.get $$t19.1 + i32.load offset=8 + local.get $$t19.1 + i32.load offset=12 + local.set $$t20.3 + local.set $$t20.2 + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 1 + local.get $$t15 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.const 0 + i32.store8 align=1 + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + call $syscall$wasm4.GetMouseX + local.set $$t22 + local.get $$t22 + i32.const 1 + i32.add + local.set $$t23 + local.get $$t23 + i64.extend_i32_u + local.set $$t24 + i32.const 14888 + i64.load + local.set $$t25 + local.get $$t25 + local.get $$t24 + i64.add + local.set $$t26 + i32.const 14888 + local.get $$t26 + i64.store align=8 + br $$Block_8 + end + i32.const 7 + local.set $$current_block + br $$Block_11 + end + i32.const 8 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t27 + end + local.set $$t28 + i32.const 9 + local.set $$current_block + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t28 + local.get $$t31 + i32.lt_s + local.set $$t32 + local.get $$t32 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + call $w4life.rand + local.set $$t33 + local.get $$t33 + i32.const 3 + i32.rem_s + local.set $$t34 + local.get $$t34 + i32.const 0 + i32.eq + i32.eqz + local.set $$t35 + local.get $$t35 + if + br $$Block_12 + else + br $$Block_14 + end + end + i32.const 11 + local.set $$current_block + local.get $$t28 + i32.const 1 + i32.add + local.set $$t27 + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t36 + end + local.set $$t37 + i32.const 12 + local.set $$current_block + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 4 + i32.add + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t39.1 + i32.load + local.set $$t40 + local.get $$t37 + local.get $$t40 + i32.lt_s + local.set $$t41 + local.get $$t41 + if + i32.const 10 + local.set $$block_selector + br $$BlockDisp + else + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t42.0 + local.get $$t42.1 + local.get $$t28 + local.get $$t37 + i32.const 1 + call $w4life.BitImage.Set + br $$Block_13 + end + i32.const 14 + local.set $$current_block + local.get $$t37 + i32.const 1 + i32.add + local.set $$t36 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 15 + local.set $$current_block + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.0 + local.get $$t43.1 + local.get $$t28 + local.get $$t37 + i32.const 0 + call $w4life.BitImage.Set + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + ) + (func $w4life.LifeSetRect (export "w4life.LifeSetRect") (param $x0 i32) (param $y0 i32) (param $x1 i32) (param $y1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $x0 + else + local.get $$t0 + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t1 + local.get $x1 + i32.lt_s + local.set $$t2 + local.get $$t2 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.get $$t1 + local.get $$t4 + i32.const 1 + call $w4life.BitImage.Set + local.get $$t4 + i32.const 1 + i32.add + local.set $$t5 + br $$Block_5 + end + i32.const 5 + local.set $$current_block + local.get $$t1 + i32.const 1 + i32.add + local.set $$t0 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + local.get $y0 + else + local.get $$t5 + end + local.set $$t4 + i32.const 6 + local.set $$current_block + local.get $$t4 + local.get $y1 + i32.lt_s + local.set $$t6 + local.get $$t6 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w4life.LifeStart (export "w4life.LifeStart") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 14880 + i32.load8_u align=1 + local.set $$t0 + i32.const 14993 + i32.const 8 + call $$runtime.waPuts + i32.const 32 + call $$runtime.waPrintRune + local.get $$t0 + call $$runtime.waPrintBool + i32.const 10 + call $$runtime.waPrintChar + i32.const 14880 + i32.const 0 + i32.store8 align=1 + br $$BlockFnBody + end + end + end + ) + (func $w4life.LifeStep (export "w4life.LifeStep") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + i32.const 14880 + i32.load8_u align=1 + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + call $w4life.lifeEvolve + br $$Block_1 + end + i32.const 2 + local.set $$current_block + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + local.get $$t1.1 + call $w4life.drawFrambuffer + br $$BlockFnBody + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $w4life.LifeStop (export "w4life.LifeStop") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 14880 + i32.load8_u align=1 + local.set $$t0 + i32.const 14993 + i32.const 8 + call $$runtime.waPuts + i32.const 32 + call $$runtime.waPrintRune + local.get $$t0 + call $$runtime.waPrintBool + i32.const 10 + call $$runtime.waPrintChar + i32.const 14880 + i32.const 1 + i32.store8 align=1 + br $$BlockFnBody + end + end + end + ) + (func $$w4life.BitImage.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + i32.add + i32.const 15 + call_indirect 0 (type $$onFree) + ) + (func $w4life.NewBitImage (export "w4life.NewBitImage") (param $w i32) (param $h i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 40 + call $runtime.HeapAlloc + i32.const 1 + i32.const 17 + i32.const 24 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $w + local.get $h + i32.mul + local.set $$t4 + local.get $$t4 + i32.const 8 + i32.div_s + local.set $$t5 + local.get $$t5 + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t5 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.get $$t5 + local.get $$t5 + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t1.1 + local.get $w + i32.store + local.get $$t2.1 + local.get $h + i32.store + local.get $$t3.1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t3.1 + local.get $$t6.1 + i32.store offset=4 + local.get $$t3.1 + local.get $$t6.2 + i32.store offset=8 + local.get $$t3.1 + local.get $$t6.3 + i32.store offset=12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $w4life.Start (export "start") + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 15001 + i32.const 10 + call $$runtime.waPuts + i32.const 10 + call $$runtime.waPrintChar + call $w4life.LifeInit + br $$BlockFnBody + end + end + end + ) + (func $w4life.Update (export "update") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 0 + end + i32.const 0 + local.set $$current_block + call $syscall$wasm4.GetGamePad1 + local.set $$t0 + local.get $$t0 + i32.const 1 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + call $w4life.LifeStop + br $$Block_1 + end + i32.const 2 + local.set $$current_block + local.get $$t0 + i32.const 2 + i32.and + local.set $$t3 + local.get $$t3 + i32.const 0 + i32.eq + i32.eqz + local.set $$t4 + local.get $$t4 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + call $w4life.LifeStart + br $$Block_3 + end + i32.const 4 + local.set $$current_block + call $syscall$wasm4.GetMouseX + local.set $$t5 + call $syscall$wasm4.GetMouseY + local.set $$t6 + call $syscall$wasm4.GetMouseButtons + local.set $$t7 + local.get $$t7 + i32.const 1 + i32.eq + local.set $$t8 + local.get $$t8 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t5 + i32.const 2 + i32.sub + local.set $$t9 + local.get $$t6 + i32.const 2 + i32.sub + local.set $$t10 + local.get $$t5 + i32.const 2 + i32.add + local.set $$t11 + local.get $$t6 + i32.const 2 + i32.add + local.set $$t12 + local.get $$t9 + local.get $$t10 + local.get $$t11 + local.get $$t12 + call $w4life.LifeSetRect + br $$Block_5 + end + i32.const 6 + local.set $$current_block + call $w4life.LifeStep + local.get $$t5 + local.get $$t6 + call $w4life.drawMouse + br $$BlockFnBody + end + end + end + ) + (func $w4life.clearBit (param $n i32) (param $pos i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + local.get $pos + i32.shl + local.set $$t0 + i32.const -1 + local.get $$t0 + i32.xor + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $n + local.get $$t2 + i32.and + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4life.drawFrambuffer (param $m.0 i32) (param $m.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t0 + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t1 + i32.const 160 + i32.lt_s + local.set $$t2 + local.get $$t2 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $m.0 + local.get $m.1 + local.get $$t1 + local.get $$t3 + call $w4life.BitImage.At + local.set $$t4 + local.get $$t4 + if + br $$Block_6 + else + br $$Block_8 + end + end + i32.const 5 + local.set $$current_block + local.get $$t1 + i32.const 1 + i32.add + local.set $$t0 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t5 + end + local.set $$t3 + i32.const 6 + local.set $$current_block + local.get $$t3 + i32.const 160 + i32.lt_s + local.set $$t6 + local.get $$t6 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + i32.const 14792 + i32.load + call $runtime.Block.Retain + i32.const 14792 + i32.load offset=4 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.0 + local.get $$t7.1 + local.get $$t1 + local.get $$t3 + i32.const 4 + call $w4life.Framebuffer.Set + br $$Block_7 + end + i32.const 8 + local.set $$current_block + local.get $$t3 + i32.const 1 + i32.add + local.set $$t5 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 9 + local.set $$current_block + i32.const 14792 + i32.load + call $runtime.Block.Retain + i32.const 14792 + i32.load offset=4 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + local.get $$t8.1 + local.get $$t1 + local.get $$t3 + i32.const 2 + call $w4life.Framebuffer.Set + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + ) + (func $w4life.drawMouse (param $mouseX i32) (param $mouseY i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + local.get $mouseX + i32.const 0 + i32.lt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_4 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i32.const 2 + call $syscall$wasm4.SetDrawColorsU16 + local.get $mouseX + i32.const 1 + i32.sub + local.set $$t1 + local.get $mouseY + i32.const 1 + i32.sub + local.set $$t2 + local.get $$t1 + local.get $$t2 + i32.const 3 + i32.const 3 + call $syscall$wasm4.Rect + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + local.get $mouseY + i32.const 160 + i32.ge_s + local.set $$t3 + local.get $$t3 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $mouseX + i32.const 160 + i32.ge_s + local.set $$t4 + local.get $$t4 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + local.get $mouseY + i32.const 0 + i32.lt_s + local.set $$t5 + local.get $$t5 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + ) + (func $w4life.hasBit (param $n i32) (param $pos i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + local.get $pos + i32.shl + local.set $$t0 + local.get $n + local.get $$t0 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4life.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $w4life.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $w4life.init$guard + call $runtime.init + call $syscall$wasm4.init + i32.const 160 + i32.const 160 + call $w4life.NewBitImage + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + i32.const 14800 + local.get $$t1.0 + call $runtime.Block.Retain + i32.const 14800 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14800 + local.get $$t1.1 + i32.store offset=4 + i32.const 160 + i32.const 160 + call $w4life.NewBitImage + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + i32.const 14808 + local.get $$t2.0 + call $runtime.Block.Retain + i32.const 14808 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14808 + local.get $$t2.1 + i32.store offset=4 + call $w4life.FramebufferInstance + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + i32.const 14792 + local.get $$t3.0 + call $runtime.Block.Retain + i32.const 14792 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14792 + local.get $$t3.1 + i32.store offset=4 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w4life.lifeEvolve + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + i32.const 14808 + i32.load + call $runtime.Block.Retain + i32.const 14808 + i32.load offset=4 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + i32.const 14800 + local.get $$t0.0 + call $runtime.Block.Retain + i32.const 14800 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14800 + local.get $$t0.1 + i32.store offset=4 + i32.const 14808 + local.get $$t1.0 + call $runtime.Block.Retain + i32.const 14808 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14808 + local.get $$t1.1 + i32.store offset=4 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t2 + end + local.set $$t3 + i32.const 3 + local.set $$current_block + local.get $$t3 + i32.const 160 + i32.lt_s + local.set $$t4 + local.get $$t4 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$Block_8 + end + i32.const 5 + local.set $$current_block + local.get $$t3 + i32.const 1 + i32.add + local.set $$t2 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t5 + end + local.set $$t6 + i32.const 6 + local.set $$current_block + local.get $$t6 + i32.const 160 + i32.lt_s + local.set $$t7 + local.get $$t7 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + i32.const 0 + i32.const 14816 + i32.const 8 + local.get $$t8 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.0 + call $runtime.Block.Retain + local.get $$t9.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t6 + local.get $$t11 + i32.add + local.set $$t12 + local.get $$t12 + i32.const 160 + i32.add + local.set $$t13 + local.get $$t13 + i32.const 160 + i32.rem_s + local.set $$t14 + i32.const 0 + i32.const 14816 + i32.const 8 + local.get $$t8 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + local.set $$t17 + local.get $$t3 + local.get $$t17 + i32.add + local.set $$t18 + local.get $$t18 + i32.const 160 + i32.add + local.set $$t19 + local.get $$t19 + i32.const 160 + i32.rem_s + local.set $$t20 + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.0 + local.get $$t21.1 + local.get $$t14 + local.get $$t20 + call $w4life.BitImage.At + local.set $$t22 + local.get $$t22 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 8 + local.set $$current_block + i32.const 14800 + i32.load + call $runtime.Block.Retain + i32.const 14800 + i32.load offset=4 + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.get $$t6 + local.get $$t3 + call $w4life.BitImage.At + local.set $$t24 + local.get $$t24 + if + br $$Block_11 + else + br $$Block_13 + end + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t25 + end + local.set $$t26 + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t27 + end + local.set $$t8 + i32.const 9 + local.set $$current_block + local.get $$t8 + i32.const 8 + i32.lt_s + local.set $$t28 + local.get $$t28 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t26 + i32.const 1 + i32.add + local.set $$t29 + br $$Block_10 + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + local.get $$t26 + else + local.get $$t29 + end + local.set $$t25 + i32.const 11 + local.set $$current_block + local.get $$t8 + i32.const 1 + i32.add + local.set $$t27 + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + local.get $$t26 + i32.const 2 + i32.eq + local.set $$t30 + local.get $$t30 + if + br $$Block_14 + else + br $$Block_15 + end + end + i32.const 13 + local.set $$current_block + local.get $$t6 + i32.const 1 + i32.add + local.set $$t5 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 14 + local.set $$current_block + local.get $$t26 + i32.const 3 + i32.eq + local.set $$t31 + local.get $$t31 + if + br $$Block_17 + else + br $$Block_18 + end + end + i32.const 15 + local.set $$current_block + i32.const 14808 + i32.load + call $runtime.Block.Retain + i32.const 14808 + i32.load offset=4 + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.0 + local.get $$t32.1 + local.get $$t6 + local.get $$t3 + i32.const 1 + call $w4life.BitImage.Set + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $$t26 + i32.const 3 + i32.eq + local.set $$t33 + local.get $$t33 + if + i32.const 15 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_16 + end + end + i32.const 17 + local.set $$current_block + i32.const 14808 + i32.load + call $runtime.Block.Retain + i32.const 14808 + i32.load offset=4 + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t34.0 + local.get $$t34.1 + local.get $$t6 + local.get $$t3 + i32.const 0 + call $w4life.BitImage.Set + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + i32.const 18 + local.set $$current_block + i32.const 14808 + i32.load + call $runtime.Block.Retain + i32.const 14808 + i32.load offset=4 + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t35.0 + local.get $$t35.1 + local.get $$t6 + local.get $$t3 + i32.const 1 + call $w4life.BitImage.Set + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + i32.const 14808 + i32.load + call $runtime.Block.Retain + i32.const 14808 + i32.load offset=4 + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.0 + local.get $$t36.1 + local.get $$t6 + local.get $$t3 + i32.const 0 + call $w4life.BitImage.Set + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + ) + (func $w4life.rand (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i64) + (local $$t1 i64) + (local $$t2 i64) + (local $$t3 i64) + (local $$t4 i64) + (local $$t5 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 14888 + i64.load + local.set $$t0 + i64.const 6364136223846793005 + local.get $$t0 + i64.mul + local.set $$t1 + local.get $$t1 + i64.const 1 + i64.add + local.set $$t2 + i32.const 14888 + local.get $$t2 + i64.store align=8 + i32.const 14888 + i64.load + local.set $$t3 + local.get $$t3 + i64.const 33 + i64.shr_u + local.set $$t4 + local.get $$t4 + i32.wrap_i64 + local.set $$t5 + local.get $$t5 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4life.setBit (param $n i32) (param $pos i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + local.get $pos + i32.shl + local.set $$t0 + local.get $n + local.get $$t0 + i32.or + local.set $$t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4life.Framebuffer.Set (param $this.0 i32) (param $this.1 i32) (param $x i32) (param $y i32) (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $y + i32.const 160 + i32.mul + local.set $$t0 + local.get $$t0 + local.get $x + i32.add + local.set $$t1 + local.get $$t1 + i32.const 4 + i32.div_s + local.set $$t2 + local.get $x + i32.const 4 + i32.rem_s + local.set $$t3 + local.get $$t3 + i32.const 2 + i32.mul + local.set $$t4 + local.get $$t4 + i32.const 255 + i32.and + local.set $$t5 + i32.const 3 + local.get $$t5 + i32.shl + i32.const 255 + i32.and + local.set $$t6 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load + call $runtime.Block.Retain + local.get $$t7.1 + i32.load offset=4 + local.get $$t7.1 + i32.load offset=8 + local.get $$t7.1 + i32.load offset=12 + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 1 + local.get $$t2 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $v + local.get $$t5 + i32.shl + i32.const 255 + i32.and + local.set $$t10 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.load + call $runtime.Block.Retain + local.get $$t11.1 + i32.load offset=4 + local.get $$t11.1 + i32.load offset=8 + local.get $$t11.1 + i32.load offset=12 + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 1 + local.get $$t2 + i32.mul + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load8_u align=1 + local.set $$t14 + i32.const -1 + local.get $$t6 + i32.xor + i32.const 255 + i32.and + local.set $$t15 + local.get $$t14 + local.get $$t15 + i32.and + local.set $$t16 + local.get $$t10 + local.get $$t16 + i32.or + local.set $$t17 + local.get $$t9.1 + local.get $$t17 + i32.store8 align=1 + br $$BlockFnBody + end + end + end + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + ) + (func $w4life.BitImage.At (param $this.0 i32) (param $this.1 i32) (param $x i32) (param $y i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $y + local.get $$t1 + i32.mul + local.set $$t2 + local.get $$t2 + local.get $x + i32.add + local.set $$t3 + local.get $$t3 + i32.const 8 + i32.div_s + local.set $$t4 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + call $runtime.Block.Retain + local.get $$t5.1 + i32.load offset=4 + local.get $$t5.1 + i32.load offset=8 + local.get $$t5.1 + i32.load offset=12 + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + local.get $$t4 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load8_u align=1 + local.set $$t8 + local.get $$t8 + local.set $$t9 + local.get $x + i32.const 8 + i32.rem_s + local.set $$t10 + local.get $$t10 + local.set $$t11 + local.get $$t9 + local.get $$t11 + call $w4life.hasBit + local.set $$t12 + local.get $$t12 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + ) + (func $w4life.BitImage.Set (param $this.0 i32) (param $this.1 i32) (param $x i32) (param $y i32) (param $c i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t14.2 i32) + (local $$t14.3 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t26.2 i32) + (local $$t26.3 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t29.2 i32) + (local $$t29.3 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 0 + i32.lt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_4 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $y + local.get $$t2 + i32.mul + local.set $$t3 + local.get $$t3 + local.get $x + i32.add + local.set $$t4 + local.get $$t4 + i32.const 8 + i32.div_s + local.set $$t5 + local.get $c + if + br $$Block_5 + else + br $$Block_7 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $y + local.get $$t7 + i32.ge_s + local.set $$t8 + local.get $$t8 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $y + i32.const 0 + i32.lt_s + local.set $$t9 + local.get $$t9 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $x + local.get $$t11 + i32.ge_s + local.set $$t12 + local.get $$t12 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + call $runtime.Block.Retain + local.get $$t13.1 + i32.load offset=4 + local.get $$t13.1 + i32.load offset=8 + local.get $$t13.1 + i32.load offset=12 + local.set $$t14.3 + local.set $$t14.2 + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + call $runtime.Block.Retain + local.get $$t16.1 + i32.load offset=4 + local.get $$t16.1 + i32.load offset=8 + local.get $$t16.1 + i32.load offset=12 + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + i32.load8_u align=1 + local.set $$t19 + local.get $$t19 + local.set $$t20 + local.get $x + i32.const 8 + i32.rem_s + local.set $$t21 + local.get $$t21 + local.set $$t22 + local.get $$t20 + local.get $$t22 + call $w4life.setBit + local.set $$t23 + local.get $$t23 + i32.const 255 + i32.and + local.set $$t24 + local.get $$t15.1 + local.get $$t24 + i32.store8 align=1 + br $$Block_6 + end + i32.const 7 + local.set $$current_block + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.1 + i32.load + call $runtime.Block.Retain + local.get $$t25.1 + i32.load offset=4 + local.get $$t25.1 + i32.load offset=8 + local.get $$t25.1 + i32.load offset=12 + local.set $$t26.3 + local.set $$t26.2 + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load + call $runtime.Block.Retain + local.get $$t28.1 + i32.load offset=4 + local.get $$t28.1 + i32.load offset=8 + local.get $$t28.1 + i32.load offset=12 + local.set $$t29.3 + local.set $$t29.2 + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load8_u align=1 + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $x + i32.const 8 + i32.rem_s + local.set $$t33 + local.get $$t33 + local.set $$t34 + local.get $$t32 + local.get $$t34 + call $w4life.clearBit + local.set $$t35 + local.get $$t35 + i32.const 255 + i32.and + local.set $$t36 + local.get $$t27.1 + local.get $$t36 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + ) + (func $_start (export "_start") + call $w4life.init + ) + (func $_main (export "_main")) + (data (i32.const 14784) "\24\24\77\61\64\73\24\24\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\ff\ff\ff\ff\01\00\00\00\ff\ff\ff\ff\ff\ff\ff\ff\00\00\00\00\01\00\00\00\00\00\00\00\ff\ff\ff\ff\01\00\00\00\00\00\00\00\01\00\00\00\01\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\7b\00\00\00\00\00\00\00\30\61\73\73\65\72\74\20\66\61\69\6c\65\64\20\28\61\73\73\65\72\74\20\66\61\69\6c\65\64\3a\20\6e\69\6c\20\6d\61\70\2e\6d\61\70\2e\77\61\3a\32\30\3a\38\70\61\6e\69\63\3a\20\74\72\75\65\66\61\6c\73\65\4e\61\4e\2b\49\6e\66\2d\49\6e\66\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\0a\5b\2f\5d\70\61\75\73\69\6e\67\3a\6c\69\66\65\20\73\74\61\72\74\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0\39\00\00") + (elem (i32.const 1) $$string.$$compAddr) + (elem (i32.const 2) $$u8.$$block.$$onFree) + (elem (i32.const 3) $$string.underlying.$$onFree) + (elem (i32.const 4) $$void.$$block.$$onFree) + (elem (i32.const 5) $$void.$ref.underlying.$$onFree) + (elem (i32.const 6) $$i`0`.underlying.$$onFree) + (elem (i32.const 7) $$runtime.mapNode.$$onFree) + (elem (i32.const 8) $$runtime.mapNode.$$block.$$onFree) + (elem (i32.const 9) $$runtime.mapNode.$slice.underlying.$$onFree) + (elem (i32.const 10) $$runtime.mapImp.$$onFree) + (elem (i32.const 11) $$runtime.mapImp.$$block.$$onFree) + (elem (i32.const 12) $$runtime.mapImp.$ref.underlying.$$onFree) + (elem (i32.const 13) $$runtime.mapIter.$$onFree) + (elem (i32.const 14) $$runtime.mapNode.$array1.underlying.$$onFree) + (elem (i32.const 15) $$u8.$slice.underlying.$$onFree) + (elem (i32.const 16) $$w4life.Framebuffer.$$onFree) + (elem (i32.const 17) $$w4life.BitImage.$$onFree) +) diff --git a/w4-life/wasm4.css b/w4-life/wasm4.css new file mode 100644 index 00000000..7c7e0155 --- /dev/null +++ b/w4-life/wasm4.css @@ -0,0 +1 @@ +html,body{height:100%;margin:0}@font-face{font-family:wasm4-font;src:url(data:font/woff2;base64,d09GMgABAAAAAAegAA0AAAAAKHwAAAdOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYGYAA0CAQRCArGHLlRC4FCAAE2AiQDgUIEIAWDJgcgG4ggUVRQhkQRbBylAWCR/eGAmzBgcbVSEQV1MFRs8Ts/TVirjdcmzZum+foZqYGq4TdA2FbzSDx8f5+ee7Ns74fim/BWoE4AP1Wwc6lakA20VO54RMrR2gpfsF97s/P3xKMD8UIkBZNFk2ondPz/n9v9G4ROvGcJ9ejaJw8RK4kYUOt8zO4KgUDgofBQGDwMCjsf2FAHKMuSxfQKGICKTqpw8TAYfHywFNs02zbbJDAgUAD+z7l4byADjcSJjXhAkX+V15z5PA0HfmEHdHqW5OfXT1PsVLlV5AkPgm14EPW/1ds0nWuhRkHhmb/7JBfdZazTpbTGMrxynHPs9XO634fF7LHGGYvKrld7xSsgpTyfJqABJJGiNEP0JXXyPy/gUd+Oq0QckHKAEocXne/KDv7oOwSG0MMrDDRgQ0HCAFZ0Ar7LFhgi+t39/2Lzv/+fFLDLD/G/EugBH+CBbj+wXA/giv6ofkm3ZAqiNhrXlgkd4AIQwJg18/ES0QEKIZXedNDpbH9FmDzLD3D97q2rzT3TRXdngPKMRazVYXWiUtlpVnZTprWt4J6wbQiLK7o/u+vhZr91OWHc2/gH+Qyq505NGWB7ui1DWkl94VWLPsznaf1Socl++32X0B1fLASbyLYi6TAO6LlJoPwXg5YAIDQZ2GxXd7yaLzKdTNrAjkIbD1Sca4fUrWmNr+IUViUJVbuuu66KDZXmnH4fMCQ5ukPCRJDdgit52b4Et5RuCK2ZjuBXWu6K6zJkW4qAxA6Y0BWJpS9UgZPLQ3iSuQWAodKrD1VK44bhgApzKGely9pyBS45qWsGAx7ELrGRNkqZX2rpG1no3KgrF9zv29HXdcAmEYpTeqXQunmcM1KNLri1l3ETKhr/jkuZpYQWCtMUkAOA+G31Ezc8TlQCcX0AFiJM8A/Ja5ANNF3s+Aj1HaR91PPZwCslbEBH81Bta7KBGjhAdpteqxIHxKrVrglxhbYG0qRrxPwYd+RA3LtpvfDZhqQKKExdOI4SSCr8hboPCCdUxuYcsLQ2TWw8XO+W8S8kg28tTsGhGLgAGRwq7qpSd5XiJn8+0m7km8BBpAhQ5rqdtpQ58nsk6UVIA1DbFmX+klm8NFI+mk+Ll5BXDAY1ZsGRNeDGIUiLnIISx8u1n++kPlx5KbJLJOSiIDP1dfY4drhKlPE7oTwc9gEI5vBFDpQ2ih/QCB4V+GrFeAMbdFltBSpSqZm9jTuVVM1CVTyG+Haj1uZhNOXIU0xda+WccPIV0vAyy13AXHS7odKqX6lPnNQW29uptFF7hjud+bei1obGQ3mmpvE7YI+21Nlt7iq+tVb3XTcUFG5q31u2uVI1qvk971yZ+/NvzpZV1dNa7Wrems+vXZ7G0bjYrBMdM44xvrdfytxyouoAmPMIUnc0H1njzFfrgVdARZ2VnWXVw+0qv/fX8iYj698zzrSTOlorbpYF7dsMJFE7yW5kV/NV/wwJ/6VW+S3vk6u7s/frQR4kpi7JSQUksyJhl0BSNPS65eUmD+i8UGEYHhd5zmQA0oU5xN+qs8fdwfJZAQaqNDFTgSowOASAVTi4nNRD5CwJVyFK13cHxDEeWVQDvZU3CfsgXuwhIGxxAGE3sxM1QNCL5oTRpAtVec0/pJXNfeLQLO+973quQzeYBhK7GMFx18+4DtE1AX90lFeaawcfPwKbh9CZncWGRig514Ca6r5aIcMk1u7R7OyRfIjVldpkv/8QTig8xMfDoNqXMmPq6rWqoKMWvmXNIhNcLI1TokIhQLNwOGTfZxXWtBtNJFOwSQNl+3DGVwiBVU4+Oq0FeJi5E8VTE1ABD05R60ZWTc49DS4M1nMCCzmZSm7M8UWDSoiGvZPrWrGYd4bKvbh8oXu1Pnv2vrfKud0bz5t2kT7Ti8FNP4L9IJy/PdAULtKZAlxz2FahwUZvcI6aZm61UI4qEJ3XUpHb3NZcIBs7HYrbHf7GgFYvCv4JTMlVK5o9e10zmwVpEoUbhD8pWxVbCX6xdKM4RGTiZ/2PaYEZMh7uAHi1vTTwNaeeqsmWeoX+fERAY8Dlq8IlZUVTrzi35D7ANkN8liq6UConAkh2mBUCA+jNZ4cnuXvJDuFGvEUlaWfzT5MjGonslkNYRjXtmwJEQgbrm1xCr4/AZMWbVPGZ3SvOH9q/AaXqXNGRhP+VuL2mvmu8/zv9BnB5l14cMu1MBSJ04++6QDnTv1bPp6oZnRul1ORTFVkMUlS1LsSh2h2L41VW44wWXcvRhJYwoLfn7pCnX7rB3Zs4otOwC568tbQs/egw8kfbjvhpM06nOc/rWqbg7EicnAydmY7O4nomxNHJws4WxYXFJFGl55716GhGRqqjKI9kp3x0+aiPQqzthaSFKiR6LmZAzFysLXdGb3rZfIi6TEU7jgcy2geINtNWQpaBCnYWTmxqWDw0wzgfrJvzphPhoIstcvGIzuZO4UN1requPbF1HWhqLtgPf3YiwnTA/xIgKAA=)} diff --git a/w4-life/wasm4.js b/w4-life/wasm4.js new file mode 100644 index 00000000..e13db97d --- /dev/null +++ b/w4-life/wasm4.js @@ -0,0 +1,360 @@ +var wasm4=function(A){"use strict";/** + * @license + * Copyright 2019 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */var ve;const pt=globalThis,_t=pt.ShadowRoot&&(pt.ShadyCSS===void 0||pt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,St=Symbol(),Dt=new WeakMap;let Nt=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==St)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(_t&&t===void 0){const s=e!==void 0&&e.length===1;s&&(t=Dt.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&Dt.set(e,t))}return t}toString(){return this.cssText}};const _e=o=>new Nt(typeof o=="string"?o:o+"",void 0,St),ft=(o,...t)=>{const e=o.length===1?o[0]:t.reduce((s,i,n)=>s+(r=>{if(r._$cssResult$===!0)return r.cssText;if(typeof r=="number")return r;throw Error("Value passed to 'css' function must be a 'css' function result: "+r+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+o[n+1],o[0]);return new Nt(e,o,St)},Se=(o,t)=>{if(_t)o.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(const e of t){const s=document.createElement("style"),i=pt.litNonce;i!==void 0&&s.setAttribute("nonce",i),s.textContent=e.cssText,o.appendChild(s)}},Bt=_t?o=>o:o=>o instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return _e(e)})(o):o;/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const{is:xe,defineProperty:ke,getOwnPropertyDescriptor:Ce,getOwnPropertyNames:Te,getOwnPropertySymbols:Pe,getPrototypeOf:$e}=Object,U=globalThis,Ft=U.trustedTypes,Ie=Ft?Ft.emptyScript:"",xt=U.reactiveElementPolyfillSupport,tt=(o,t)=>o,mt={toAttribute(o,t){switch(t){case Boolean:o=o?Ie:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,t){let e=o;switch(t){case Boolean:e=o!==null;break;case Number:e=o===null?null:Number(o);break;case Object:case Array:try{e=JSON.parse(o)}catch{e=null}}return e}},kt=(o,t)=>!xe(o,t),Ht={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),U.litPropertyMetadata??(U.litPropertyMetadata=new WeakMap);class Y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=Ht){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){const s=Symbol(),i=this.getPropertyDescriptor(t,s,e);i!==void 0&&ke(this.prototype,t,i)}}static getPropertyDescriptor(t,e,s){const{get:i,set:n}=Ce(this.prototype,t)??{get(){return this[e]},set(r){this[e]=r}};return{get(){return i==null?void 0:i.call(this)},set(r){const c=i==null?void 0:i.call(this);n.call(this,r),this.requestUpdate(t,c,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Ht}static _$Ei(){if(this.hasOwnProperty(tt("elementProperties")))return;const t=$e(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(tt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(tt("properties"))){const e=this.properties,s=[...Te(e),...Pe(e)];for(const i of s)this.createProperty(i,e[i])}const t=this[Symbol.metadata];if(t!==null){const e=litPropertyMetadata.get(t);if(e!==void 0)for(const[s,i]of e)this.elementProperties.set(s,i)}this._$Eh=new Map;for(const[e,s]of this.elementProperties){const i=this._$Eu(e,s);i!==void 0&&this._$Eh.set(i,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const i of s)e.unshift(Bt(i))}else t!==void 0&&e.push(Bt(t));return e}static _$Eu(t,e){const s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var t;this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),(t=this.constructor.l)==null||t.forEach(e=>e(this))}addController(t){var e;(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&((e=t.hostConnected)==null||e.call(t))}removeController(t){var e;(e=this._$EO)==null||e.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Se(t,this.constructor.elementStyles),t}connectedCallback(){var t;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostConnected)==null?void 0:s.call(e)})}enableUpdating(t){}disconnectedCallback(){var t;(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostDisconnected)==null?void 0:s.call(e)})}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$EC(t,e){var n;const s=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,s);if(i!==void 0&&s.reflect===!0){const r=(((n=s.converter)==null?void 0:n.toAttribute)!==void 0?s.converter:mt).toAttribute(e,s.type);this._$Em=t,r==null?this.removeAttribute(i):this.setAttribute(i,r),this._$Em=null}}_$AK(t,e){var n;const s=this.constructor,i=s._$Eh.get(t);if(i!==void 0&&this._$Em!==i){const r=s.getPropertyOptions(i),c=typeof r.converter=="function"?{fromAttribute:r.converter}:((n=r.converter)==null?void 0:n.fromAttribute)!==void 0?r.converter:mt;this._$Em=i,this[i]=c.fromAttribute(e,r.type),this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){if(s??(s=this.constructor.getPropertyOptions(t)),!(s.hasChanged??kt)(this[t],e))return;this.P(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,e,s){this._$AL.has(t)||this._$AL.set(t,e),s.reflect===!0&&this._$Em!==t&&(this._$Ej??(this._$Ej=new Set)).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var s;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[n,r]of this._$Ep)this[n]=r;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[n,r]of i)r.wrapped!==!0||this._$AL.has(n)||this[n]===void 0||this.P(n,this[n],r)}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),(s=this._$EO)==null||s.forEach(i=>{var n;return(n=i.hostUpdate)==null?void 0:n.call(i)}),this.update(e)):this._$EU()}catch(i){throw t=!1,this._$EU(),i}t&&this._$AE(e)}willUpdate(t){}_$AE(t){var e;(e=this._$EO)==null||e.forEach(s=>{var i;return(i=s.hostUpdated)==null?void 0:i.call(s)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&(this._$Ej=this._$Ej.forEach(e=>this._$EC(e,this[e]))),this._$EU()}updated(t){}firstUpdated(t){}}Y.elementStyles=[],Y.shadowRootOptions={mode:"open"},Y[tt("elementProperties")]=new Map,Y[tt("finalized")]=new Map,xt==null||xt({ReactiveElement:Y}),(U.reactiveElementVersions??(U.reactiveElementVersions=[])).push("2.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const et=globalThis,yt=et.trustedTypes,Gt=yt?yt.createPolicy("lit-html",{createHTML:o=>o}):void 0,Wt="$lit$",O=`lit$${(Math.random()+"").slice(9)}$`,zt="?"+O,Ue=`<${zt}>`,D=document,st=()=>D.createComment(""),it=o=>o===null||typeof o!="object"&&typeof o!="function",Vt=Array.isArray,Oe=o=>Vt(o)||typeof(o==null?void 0:o[Symbol.iterator])=="function",Ct=`[ +\f\r]`,nt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,jt=/-->/g,Yt=/>/g,N=RegExp(`>|${Ct}(?:([^\\s"'>=/]+)(${Ct}*=${Ct}*(?:[^ +\f\r"'\`<>=]|("|')|))|$)`,"g"),Kt=/'/g,qt=/"/g,Xt=/^(?:script|style|textarea|title)$/i,Me=o=>(t,...e)=>({_$litType$:o,strings:t,values:e}),C=Me(1),K=Symbol.for("lit-noChange"),S=Symbol.for("lit-nothing"),Jt=new WeakMap,B=D.createTreeWalker(D,129);function Zt(o,t){if(!Array.isArray(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return Gt!==void 0?Gt.createHTML(t):t}const Le=(o,t)=>{const e=o.length-1,s=[];let i,n=t===2?"":"",r=nt;for(let c=0;c"?(r=i??nt,d=-1):l[1]===void 0?d=-2:(d=r.lastIndex-l[2].length,h=l[1],r=l[3]===void 0?N:l[3]==='"'?qt:Kt):r===qt||r===Kt?r=N:r===jt||r===Yt?r=nt:(r=N,i=void 0);const w=r===N&&o[c+1].startsWith("/>")?" ":"";n+=r===nt?a+Ue:d>=0?(s.push(h),a.slice(0,d)+Wt+a.slice(d)+O+w):a+O+(d===-2?c:w)}return[Zt(o,n+(o[e]||"")+(t===2?"":"")),s]};class rt{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let n=0,r=0;const c=t.length-1,a=this.parts,[h,l]=Le(t,e);if(this.el=rt.createElement(h,s),B.currentNode=this.el.content,e===2){const d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(i=B.nextNode())!==null&&a.length0){i.textContent=yt?yt.emptyScript:"";for(let w=0;w2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=S}_$AI(t,e=this,s,i){const n=this.strings;let r=!1;if(n===void 0)t=q(this,t,e,0),r=!it(t)||t!==this._$AH&&t!==K,r&&(this._$AH=t);else{const c=t;let a,h;for(t=n[0],a=0;a{const s=(e==null?void 0:e.renderBefore)??t;let i=s._$litPart$;if(i===void 0){const n=(e==null?void 0:e.renderBefore)??null;s._$litPart$=i=new ot(t.insertBefore(st(),n),n,void 0,e??{})}return i._$AI(o),i};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */class M extends Y{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;const t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=He(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Do)==null||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Do)==null||t.setConnected(!1)}render(){return K}}M._$litElement$=!0,M.finalized=!0,(ve=globalThis.litElementHydrateSupport)==null||ve.call(globalThis,{LitElement:M});const Pt=globalThis.litElementPolyfillSupport;Pt==null||Pt({LitElement:M}),(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const bt=o=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(o,t)}):customElements.define(o,t)};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Ge={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt},We=(o=Ge,t,e)=>{const{kind:s,metadata:i}=e;let n=globalThis.litPropertyMetadata.get(i);if(n===void 0&&globalThis.litPropertyMetadata.set(i,n=new Map),n.set(e.name,o),s==="accessor"){const{name:r}=e;return{set(c){const a=t.get.call(this);t.set.call(this,c),this.requestUpdate(r,a,o)},init(c){return c!==void 0&&this.P(r,void 0,o),c}}}if(s==="setter"){const{name:r}=e;return function(c){const a=this[r];t.call(this,c),this.requestUpdate(r,a,o)}}throw Error("Unsupported decorator location: "+s)};function ze(o){return(t,e)=>typeof e=="object"?We(o,t,e):((s,i,n)=>{const r=i.hasOwnProperty(n);return i.constructor.createProperty(n,r?{...s,wrapped:!0}:s),r?Object.getOwnPropertyDescriptor(i,n):void 0})(o,t,e)}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function at(o){return ze({...o,state:!0,attribute:!1})}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Qt=(o,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(o,t,e),e);/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function ct(o,t){return(e,s,i)=>{const n=r=>{var c;return((c=r.renderRoot)==null?void 0:c.querySelector(o))??null};if(t){const{get:r,set:c}=typeof s=="object"?e:i??(()=>{const a=Symbol();return{get(){return this[a]},set(h){this[a]=h}}})();return Qt(e,s,{get(){let a=r.call(this);return a===void 0&&(a=n(this),(a!==null||this.hasUpdated)&&c.call(this,a)),a}})}return Qt(e,s,{get(){return n(this)}})}}const E=160,x=160,X=1024,Ve="WASM-4",je=[14743759,8831084,3172432,464929],$t=4,lt=20,Ye=22,te=26,ee=28,Ke=30,qe=31,Xe=32,Je=160,L=1,F=2,J=16,Z=32,H=64,G=128,Ze=1,Qe=2,se=1,ie=2,ts=Uint8Array.of(255,255,255,255,255,255,255,255,199,199,199,207,207,255,207,255,147,147,147,255,255,255,255,255,147,1,147,147,147,1,147,255,239,131,47,131,233,3,239,255,157,91,55,239,217,181,115,255,143,39,39,143,37,51,129,255,207,207,207,255,255,255,255,255,243,231,207,207,207,231,243,255,159,207,231,231,231,207,159,255,255,147,199,1,199,147,255,255,255,231,231,129,231,231,255,255,255,255,255,255,255,207,207,159,255,255,255,129,255,255,255,255,255,255,255,255,255,207,207,255,253,251,247,239,223,191,127,255,199,179,57,57,57,155,199,255,231,199,231,231,231,231,129,255,131,57,241,195,135,31,1,255,129,243,231,195,249,57,131,255,227,195,147,51,1,243,243,255,3,63,3,249,249,57,131,255,195,159,63,3,57,57,131,255,1,57,243,231,207,207,207,255,135,59,27,135,97,121,131,255,131,57,57,129,249,243,135,255,255,207,207,255,207,207,255,255,255,207,207,255,207,207,159,255,243,231,207,159,207,231,243,255,255,255,1,255,1,255,255,255,159,207,231,243,231,207,159,255,131,1,57,243,199,255,199,255,131,125,69,85,65,127,131,255,199,147,57,57,1,57,57,255,3,57,57,3,57,57,3,255,195,153,63,63,63,153,195,255,7,51,57,57,57,51,7,255,1,63,63,3,63,63,1,255,1,63,63,3,63,63,63,255,193,159,63,49,57,153,193,255,57,57,57,1,57,57,57,255,129,231,231,231,231,231,129,255,249,249,249,249,249,57,131,255,57,51,39,15,7,35,49,255,159,159,159,159,159,159,129,255,57,17,1,1,41,57,57,255,57,25,9,1,33,49,57,255,131,57,57,57,57,57,131,255,3,57,57,57,3,63,63,255,131,57,57,57,33,51,133,255,3,57,57,49,7,35,49,255,135,51,63,131,249,57,131,255,129,231,231,231,231,231,231,255,57,57,57,57,57,57,131,255,57,57,57,17,131,199,239,255,57,57,41,1,1,17,57,255,57,17,131,199,131,17,57,255,153,153,153,195,231,231,231,255,1,241,227,199,143,31,1,255,195,207,207,207,207,207,195,255,127,191,223,239,247,251,253,255,135,231,231,231,231,231,135,255,199,147,255,255,255,255,255,255,255,255,255,255,255,255,255,1,239,247,255,255,255,255,255,255,255,255,131,249,129,57,129,255,63,63,3,57,57,57,131,255,255,255,129,63,63,63,129,255,249,249,129,57,57,57,129,255,255,255,131,57,1,63,131,255,241,231,129,231,231,231,231,255,255,255,129,57,57,129,249,131,63,63,3,57,57,57,57,255,231,255,199,231,231,231,129,255,243,255,227,243,243,243,243,135,63,63,49,3,7,35,49,255,199,231,231,231,231,231,129,255,255,255,3,73,73,73,73,255,255,255,3,57,57,57,57,255,255,255,131,57,57,57,131,255,255,255,3,57,57,3,63,63,255,255,129,57,57,129,249,249,255,255,145,143,159,159,159,255,255,255,131,63,131,249,3,255,231,231,129,231,231,231,231,255,255,255,57,57,57,57,129,255,255,255,153,153,153,195,231,255,255,255,73,73,73,73,129,255,255,255,57,1,199,1,57,255,255,255,57,57,57,129,249,131,255,255,1,227,199,143,1,255,243,231,231,207,231,231,243,255,231,231,231,231,231,231,231,255,159,207,207,231,207,207,159,255,255,255,143,69,227,255,255,255,255,255,255,255,255,147,147,255,131,41,41,17,41,41,131,255,131,57,9,17,33,57,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,131,17,33,125,33,17,131,255,131,17,9,125,9,17,131,255,131,17,57,85,17,17,131,255,131,17,17,85,57,17,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,231,255,231,231,199,199,199,255,239,131,41,47,41,131,239,255,195,153,159,3,159,159,1,255,255,165,219,219,219,165,255,255,153,153,195,129,231,129,231,255,231,231,231,255,231,231,231,255,195,153,135,219,225,153,195,255,147,255,255,255,255,255,255,255,195,189,102,94,94,102,189,195,135,195,147,195,255,255,255,255,255,201,147,39,147,201,255,255,255,255,129,249,249,255,255,255,255,255,255,255,255,255,255,255,195,189,70,90,70,90,189,195,131,255,255,255,255,255,255,255,239,215,239,255,255,255,255,255,231,231,129,231,231,255,129,255,199,243,231,195,255,255,255,255,195,231,243,199,255,255,255,255,247,239,255,255,255,255,255,255,255,255,51,51,51,51,9,63,193,149,181,149,193,245,245,255,255,255,255,207,207,255,255,255,255,255,255,255,255,255,247,207,231,199,231,195,255,255,255,255,199,147,147,199,255,255,255,255,255,39,147,201,147,39,255,255,189,59,183,173,217,177,125,255,189,59,183,169,221,187,113,255,29,187,215,45,217,177,125,255,199,255,199,159,57,1,131,255,223,239,199,147,57,1,57,255,247,239,199,147,57,1,57,255,199,147,199,147,57,1,57,255,203,167,199,147,57,1,57,255,147,255,199,147,57,1,57,255,239,215,199,147,57,1,57,255,193,135,39,33,7,39,33,255,195,153,63,63,153,195,247,207,223,239,1,63,3,63,1,255,247,239,1,63,3,63,1,255,199,147,1,63,3,63,1,255,147,255,1,63,3,63,1,255,239,247,129,231,231,231,129,255,247,239,129,231,231,231,129,255,231,195,129,231,231,231,129,255,153,255,129,231,231,231,129,255,135,147,153,9,153,147,135,255,203,167,25,9,1,33,49,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,187,215,239,215,187,255,255,131,57,49,41,25,57,131,255,223,239,57,57,57,57,131,255,247,239,57,57,57,57,131,255,199,147,255,57,57,57,131,255,147,255,57,57,57,57,131,255,247,239,153,153,195,231,231,255,63,3,57,57,57,3,63,255,195,153,153,147,153,137,147,255,223,239,131,249,129,57,129,255,247,239,131,249,129,57,129,255,199,147,131,249,129,57,129,255,203,167,131,249,129,57,129,255,147,255,131,249,129,57,129,255,239,215,131,249,129,57,129,255,255,255,131,233,129,47,131,255,255,255,129,63,63,129,247,207,223,239,131,57,1,63,131,255,247,239,131,57,1,63,131,255,199,147,131,57,1,63,131,255,147,255,131,57,1,63,131,255,223,239,255,199,231,231,129,255,247,239,255,199,231,231,129,255,199,147,255,199,231,231,129,255,147,255,199,231,231,231,129,255,155,135,103,131,57,57,131,255,203,167,3,57,57,57,57,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,231,255,129,255,231,255,255,255,255,131,49,41,25,131,255,223,239,57,57,57,57,129,255,247,239,57,57,57,57,129,255,199,147,255,57,57,57,129,255,147,255,57,57,57,57,129,255,247,239,57,57,57,129,249,131,63,63,3,57,57,3,63,63,147,255,57,57,57,129,249,131);function It(o){const t=new URL(location.href),e=t.searchParams.get(o);return e??new URL(t.hash.substring(1),"https://x").searchParams.get(o)}function ne(){if(document.fullscreenElement==null){let o=function(){const e=window.frameElement;e&&(e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.zIndex="99999",e.style.width="100%",e.style.height="100%")};const t=document.body.requestFullscreen&&document.body.requestFullscreen({navigationUI:"hide"});t?t.catch(o):o()}}async function es(o){try{await navigator.clipboard.writeText(o)}catch{let t=document.createElement("dialog");t.title="Netplay URL",t.textContent=o,document.body.append(t);let e=document.createElement("button");e.textContent="Copy",e.style.marginLeft="1em",e.onclick=()=>navigator.clipboard.writeText(o),t.appendChild(e);let s=document.createElement("button");s.textContent="Close",s.style.marginLeft="1em",s.onclick=()=>{document.body.removeChild(t)},t.appendChild(s),t.showModal()}}const ss="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#".split(""),re=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0];function oe(o){const t=o.length,e=t%4,s=e?t+4-e:t;let i="",n=0,r=0;for(;n=1;){const h=Math.floor(r/a)%85;i+=ss[h],a/=85}r=0}}return i}function ae(o,t){let e=0,s=0,i=0;const n=o.length,r=t.length;if(o.length%5==0)for(;s=re.length)return e;if(i=i*85+re[c],s%5==0){let a=16777216;for(;a>=1;){if(e>=r)return e;t[e++]=i/a%256,a/=256}i=0}}return e}class ht{constructor(){this.memory=new ArrayBuffer(65536),this.globals={},this.diskBuffer=new ArrayBuffer(X),this.diskSize=0}read(t){new Uint8Array(this.memory).set(new Uint8Array(t.memory.buffer)),this.globals={};for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&(this.globals[e]=s.value.toString())}this.diskSize=t.diskSize,new Uint8Array(this.diskBuffer).set(new Uint8Array(t.diskBuffer,0,t.diskSize))}write(t){new Uint8Array(t.memory.buffer).set(new Uint8Array(this.memory));for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&e in this.globals&&(s.value=this.globals[e])}t.diskSize=this.diskSize,new Uint8Array(t.diskBuffer).set(new Uint8Array(this.diskBuffer,0,this.diskSize))}toBytes(){const t=new TextEncoder().encode(JSON.stringify(this.globals)),e=new Uint8Array(65544+t.byteLength+this.diskSize),s=new DataView(e.buffer,e.byteOffset,e.byteLength);e.set(new Uint8Array(this.memory),0);let i=65536;return s.setUint32(i,t.byteLength),e.set(t,i+4),i+=4+t.byteLength,s.setUint32(i,this.diskSize),e.set(new Uint8Array(this.diskBuffer,0,this.diskSize),i+4),e}fromBytes(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength);new Uint8Array(this.memory).set(t.subarray(0,65536));let s=65536;const i=e.getUint32(s),n=t.slice(s+4,s+4+i);this.globals=JSON.parse(new TextDecoder().decode(n)),s+=4+i,this.diskSize=e.getUint32(s),new Uint8Array(this.diskBuffer).set(t.subarray(s+4,s+4+this.diskSize))}}const I=20,R=4;class is{constructor(){this.frame=-1,this.state=new ht,this.inputs=new Array(R),this.predicted=new Array(R);for(let t=0;t=this.currentFrame)i.futureInputs.has(e)||i.futureInputs.set(e,n);else for(let r=0,c=I;r{this.send("",{type:"KEEPALIVE"},!1)},15e3)}async connect(){const t=["wss://webrtc-signal-server.wasm4.org","wss://ywc2h85cv1.execute-api.us-east-1.amazonaws.com/production","wss://webrtc-signal-server.wasm4.jwq.moe","wss://iyuavuru2h.execute-api.eu-central-1.amazonaws.com/production"];for(const e of t)try{this.socket=await new Promise((s,i)=>{const n=new WebSocket(e);n.addEventListener("open",()=>{s(n)}),n.addEventListener("error",()=>{i()})});break}catch(s){console.error(s)}if(!this.socket)throw new Error("Unable to connect to signal server");this.socket.addEventListener("message",e=>{const{source:s,message:i}=JSON.parse(e.data);this.onMessage(s,i)});for(const e of this.bufferedOutput)this.socket.send(e);this.bufferedOutput.length=0}send(t,e,s=!0){var n;const i=JSON.stringify({target:t,message:e});((n=this.socket)==null?void 0:n.readyState)==1?this.socket.send(i):s&&this.bufferedOutput.push(i)}close(){var t;(t=this.socket)==null||t.close(),window.clearInterval(this.keepaliveInterval)}}class os{constructor(t){this.connections=new Map;let e;this.localPeerId=new Promise(s=>{e=s}),this.signalClient=new rs(async(s,i)=>{switch(i.type){case"WHOAMI_REPLY":this.iceServers=i.iceServers,e(i.yourPeerId);break;case"OFFER":{if(this.connections.has(s))throw new Error("Received offer for a connection we already initiated");{const n=this.createConnection(s);await n.setRemoteDescription(i.description),await n.setLocalDescription(await n.createAnswer()),t(n,s),this.signalClient.send(s,{type:"ANSWER",description:n.localDescription.toJSON()})}}break;case"ANSWER":{const n=this.connections.get(s);n&&await n.setRemoteDescription(i.description)}break;case"CANDIDATE":{const n=this.connections.get(s);n&&await n.addIceCandidate(new RTCIceCandidate(i.candidate))}break;case"ABORT":{const n=this.connections.get(s);n&&n.close()}break}}),this.signalClient.send("",{type:"WHOAMI_REQUEST"})}createConnection(t){const e=new RTCPeerConnection({iceServers:this.iceServers});return this.connections.set(t,e),e.addEventListener("negotiationneeded",async()=>{await e.setLocalDescription(await e.createOffer()),this.signalClient.send(t,{type:"OFFER",description:e.localDescription.toJSON()})}),e.addEventListener("icecandidate",({candidate:s})=>{s&&this.signalClient.send(t,{type:"CANDIDATE",candidate:s.toJSON()})}),e.addEventListener("connectionstatechange",()=>{const s=e.connectionState;(s=="connected"||s=="failed")&&this.connections.delete(t)}),e}connect(t){return this.connections.get(t)||this.createConnection(t)}close(){this.signalClient.close();for(const[t,e]of this.connections)e.close()}}const gt=16384;class as{constructor(t){this.chunks=[],this.size=0,t.addEventListener("message",e=>{if(e.data instanceof ArrayBuffer){const s=new Uint8Array(e.data);this.size+=s.byteLength,this.chunks.push(s)}})}read(){const t=new Uint8Array(this.size);let e=0;for(const s of this.chunks)t.set(s,e),e+=s.byteLength;return this.chunks.length=0,this.size=0,t}}class cs{constructor(t){this.channel=t,this.size=0}write(t){this.buffer||(this.buffer=new Uint8Array(gt));let e=this.size,s=0;for(;s=gt&&(e-=gt,this.channel.send(this.buffer))}this.size=e}flush(){this.buffer&&this.size>0&&this.channel.send(this.buffer.subarray(0,this.size)),this.buffer=void 0}}class ls{constructor(t,e=0){this.buffer=t,this.position=e}readBit(){const t=!!(this.buffer[this.position/8>>>0]&1<<(this.position&7));return++this.position,t}readBits(t){let e=0;for(let s=0;s>>0]|=1<<(this.position&7),++this.position}write0(){this.buffer[this.position/8>>>0]&=~(1<<(this.position&7)),++this.position}writeBits(t,e){for(let s=0;s0;--s)this.outboundInputs.unshift(e);this.outboundFrame=t}else{const s=t-this.outboundFrame;if(s>=this.outboundInputs.length){for(let i=this.outboundInputs.length;i0?this.outboundInputs[i-1]:0;this.outboundInputs[s]=e}}}sendMessage(t){this.reliableChannel.send(JSON.stringify(t))}sendUnreliableBuffer(t){this.unreliableChannel.send(t)}sendPingRequest(){const t=new DataView(W);t.setUint8(0,2),t.setUint32(1,performance.now()>>>0),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendPingReply(t){const e=new DataView(W);e.setUint8(0,3),e.setUint32(1,t),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendTick(t){const e=new DataView(W);e.setUint8(0,1),e.setUint32(1,t),e.setInt8(5,this.nextNeededFrame==0?-127:this.nextNeededFrame-t),e.setInt8(6,this.outboundFrame-t),e.setUint8(7,this.outboundInputs.length);const s=new hs(new Uint8Array(W,8));let i=0;for(const r of this.outboundInputs){const c=i^r;i=r;for(let a=0;a<8;++a)c&1<{const i=Array.from(this.remotePlayers.keys()),n=await this.createRemotePlayer(e,s);n.sendMessage({type:"WELCOME",otherPeers:i}),this.localPlayerIdx>=0&&n.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})})}host(){this.runtime.setNetplay(0),this.rollbackMgr=new ce(1,this.runtime),this.localPlayerIdx=0}join(t){const e=this.peerMgr.connect(t);this.createRemotePlayer(e,t).then(s=>{s.sendMessage({type:"JOIN_REQUEST"})},s=>{this.runtime.blueScreen(`Failed to connect +to peer. They may +be offline?`)})}async getInviteLink(){const t=await this.peerMgr.localPeerId,e=window.location;if(e.protocol=="file:"||e.hostname=="localhost"||e.hostname=="127.0.0.1"||e.hostname=="wasm4.org")return`https://wasm4.org/netplay/#${t}`;const s=new URL(e.href);return s.searchParams.set("netplay",t),s.href}close(){for(const t of this.remotePlayers.values())t.close();this.peerMgr.close()}async createRemotePlayer(t,e){function s(a){return new Promise((h,l)=>{const d=t.createDataChannel("WASM-4",a);d.binaryType="arraybuffer",d.onopen=()=>{h(d)},d.onerror=l})}const[i,n]=await Promise.all([s({negotiated:!0,id:0}),s({negotiated:!0,id:1,ordered:!1,maxRetransmits:0})]),r=new us(e,t,i,n);this.remotePlayers.set(e,r);const c=()=>{this.remotePlayers.has(e)&&(this.remotePlayers.delete(e),this.onleave&&r.playerIdx>=0&&this.onleave(r.playerIdx))};return t.addEventListener("connectionstatechange",()=>{t.connectionState=="disconnected"&&c()}),i.addEventListener("close",c),n.addEventListener("close",c),i.addEventListener("message",async a=>{if(typeof a.data!="string")return;const h=JSON.parse(a.data);switch(h.type){case"WELCOME":for(const l of h.otherPeers)if(!this.remotePlayers.has(l)){const d=this.peerMgr.connect(l),u=await this.createRemotePlayer(d,l);this.localPlayerIdx>=0&&u.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})}break;case"JOIN_REQUEST":{const l=this.nextPlayerIdx();if(l>=4)r.sendMessage({type:"JOIN_REJECT"}),r.close();else{r.playerIdx=l,r.chunkWriter.write(this.runtime.wasmBuffer);const d=new ht;d.read(this.runtime),r.chunkWriter.write(d.toBytes()),r.chunkWriter.flush(),r.sendMessage({type:"JOIN_REPLY",yourPlayerIdx:r.playerIdx,frame:this.rollbackMgr.currentFrame,stateOffset:this.runtime.wasmBuffer.byteLength}),this.onjoin&&this.onjoin(r.playerIdx)}}break;case"JOIN_REPLY":{this.localPlayerIdx=h.yourPlayerIdx;for(const b of this.remotePlayers.values())b!=r&&b.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx});const l=r.chunkReader.read(),d=l.subarray(0,h.stateOffset),u=l.subarray(h.stateOffset);await this.runtime.load(d,!1);const w=new ht;w.fromBytes(u),w.write(this.runtime),this.runtime.setNetplay(this.localPlayerIdx),this.rollbackMgr=new ce(h.frame,this.runtime),this.onstart&&this.onstart(this.localPlayerIdx)}break;case"JOIN_REJECT":this.runtime.blueScreen(`Connected, but the +game is already +full!`),this.close();break;case"PLAYER_INFO":r.playerIdx==-1&&(r.playerIdx=h.playerIdx,this.onjoin&&this.onjoin(r.playerIdx));break}}),n.addEventListener("message",async a=>{const h=a.data,l=new DataView(h);switch(l.getUint8(0)){case 1:if(this.rollbackMgr&&r.playerIdx>=0){const u=l.getUint32(1);if(u>r.frame){const w=l.getInt8(5)+u,b=l.getInt8(6)+u,p=l.getUint8(7),f=new ls(new Uint8Array(h,8)),m=new Array(p);let y=0;for(let v=0;vr.outboundFrame){const v=w-r.outboundFrame;r.outboundFrame=w,r.outboundInputs.splice(0,v)}const g=u+.5*r.ping.average*60/1e3,_=this.rollbackMgr.currentFrame-g;r.drift.update(_),this.rollbackMgr.addInputs(r.playerIdx,b,m)}}break;case 2:{const u=l.getUint32(1);r.sendPingReply(u)}break;case 3:{const u=l.getUint32(1),w=(performance.now()>>>0)-u;r.ping.update(w)}break}}),r}nextPlayerIdx(){t:for(let t=0;t<4;++t)if(this.localPlayerIdx!=t){for(const e of this.remotePlayers.values())if(e.playerIdx==t)continue t;return t}return-1}update(t){if(!this.rollbackMgr)return!1;const e=(this.updateCount&7)==0,s=(this.updateCount&31)==0;++this.updateCount;const i=this.rollbackMgr.currentFrame,r=i+2;this.rollbackMgr.addInputs(this.localPlayerIdx,r,[t]);let c=!1;for(const a of this.remotePlayers.values())a.addOutboundInput(r,t),a.sendTick(i),(a.nextNeededFrame=he)&&(c=!0),s&&a.sendPingRequest();if(e){let a=0;for(const h of this.remotePlayers.values())a=Math.max(h.drift.average,a);a>=1&&(c=!0)}return c||this.rollbackMgr.update(),!c}getSummary(){const t=[{playerIdx:this.localPlayerIdx,ping:-1}];for(const e of this.remotePlayers.values())t.push({playerIdx:e.playerIdx,ping:e.ping.average});return t.sort((e,s)=>e.playerIdx-s.playerIdx),t}}const de=`"use strict";(()=>{var M=Math.floor(44.1),b=class{constructor(){this.freq1=0;this.freq2=0;this.startTime=0;this.attackTime=0;this.decayTime=0;this.sustainTime=0;this.releaseTime=0;this.endTick=0;this.sustainVolume=0;this.peakVolume=0;this.phase=0;this.pan=0;this.pulseDutyCycle=0;this.noiseSeed=1;this.noiseLastRandom=0}};function L(m,e,s){return m+s*(e-m)}function V(m,e){if(m1-e){let s=(m-(1-e))/e;return 1-(s+s-s*s)}else return 1}function x(m,e){return Math.pow(2,(m-69+e/256)/12)*440}var y=class extends AudioWorkletProcessor{constructor(){super(),this.time=0,this.ticks=0,this.channels=new Array(4);for(let e=0;e<4;++e)this.channels[e]=new b;this.port!=null&&(this.port.onmessage=e=>{e.data==="tick"?this.tick():this.tone(...e.data)})}ramp(e,s,f,u){if(this.time>=u)return s;let a=(this.time-f)/(u-f);return L(e,s,a)}getCurrentFrequency(e){return e.freq2>0?this.ramp(e.freq1,e.freq2,e.startTime,e.releaseTime):e.freq1}getCurrentVolume(e){let s=this.time;return s>=e.sustainTime&&e.releaseTime-e.sustainTime>M?this.ramp(e.sustainVolume,0,e.sustainTime,e.releaseTime):s>=e.decayTime?e.sustainVolume:s>=e.attackTime?this.ramp(e.peakVolume,e.sustainVolume,e.attackTime,e.decayTime):this.ramp(0,e.peakVolume,e.startTime,e.attackTime)}tick(){this.ticks++}tone(e,s,f,u){let a=e&65535,p=e>>16&65535,A=s&255,h=s>>8&255,o=s>>16&255,i=s>>24&255,E=Math.min(f&255,100),l=Math.min(f>>8&255,100),n=u&3,r=u>>2&3,c=u>>4&3,d=u&64,t=this.channels[n];this.time>t.releaseTime&&this.ticks!=t.endTick&&(t.phase=n==2?.25:0),d?(t.freq1=x(a&255,a>>8),t.freq2=p==0?0:x(p&255,p>>8)):(t.freq1=a,t.freq2=p),t.startTime=this.time,t.attackTime=t.startTime+(44100*i/60>>>0),t.decayTime=t.attackTime+(44100*o/60>>>0),t.sustainTime=t.decayTime+(44100*A/60>>>0),t.releaseTime=t.sustainTime+(44100*h/60>>>0),t.endTick=this.ticks+i+o+A+h,t.pan=c;let T=n==2?.25:.15;if(t.sustainVolume=T*E/100,t.peakVolume=l?T*l/100:T,n==0||n==1)switch(r){case 0:t.pulseDutyCycle=.125;break;case 1:case 3:default:t.pulseDutyCycle=.25;break;case 2:t.pulseDutyCycle=.5;break}else n==2&&h==0&&(t.releaseTime+=M)}process(e,[[s,f]],u){for(let a=0,p=s.length;a0;){i.phase--;let r=i.noiseSeed;r^=r>>7,r^=r<<9,r^=r>>13,i.noiseSeed=r,i.noiseLastRandom=((r&1)<<1)-1}n=l*i.noiseLastRandom}else{let r=E/44100,c=i.phase+r;if(c>=1&&c--,i.phase=c,o==2)n=l*(2*Math.abs(2*i.phase-1)-1);else{let d,t,T,k=i.pulseDutyCycle;c{n=new l};new Function("registerProcessor","AudioWorkletProcessor",de)(r,class{}),this.processor=n;const a=t.createScriptProcessor(1024,0,2);a.onaudioprocess=h=>{const l=h.outputBuffer.getChannelData(0),d=h.outputBuffer.getChannelData(1);n.process(null,[[l,d]],null)},a.connect(t.destination)}}tick(){this.processorPort!=null?this.processorPort.postMessage("tick"):this.processor.tick()}tone(t,e,s,i){this.processorPort!=null?this.processorPort.postMessage([t,e,s,i]):this.processor.tone(t,e,s,i)}unlockAudio(){const t=this.audioCtx;t.state=="suspended"&&t.resume()}pauseAudio(){const t=this.audioCtx;t.state=="running"&&t.suspend()}}class ms{constructor(t){this.bytes=new Uint8Array(t,Je,E*x>>>2),this.drawColors=new Uint16Array(t,lt,1)}clear(){this.bytes.fill(0)}drawPoint(t,e,s){const i=E*s+e>>>2,n=(e&3)<<1,r=3<=0&&e=0&&s3){for(let l=e;l>>2,a=E*s+n>>>2,h=t*85;this.bytes.fill(h,c,a),e=n}for(let c=e;c=0&&sE&&(i=E),e=E)return;const i=this.drawColors[0]&15;if(i==0)return;const n=Math.max(0,e),r=Math.min(x,e+s),c=i-1&3;for(let a=n;a>>4&15;if(u!==0){const b=u-1&3;for(let p=r;p=0&&t0&&c<=E)for(let p=r;p=0&&e0&&a<=x&&this.drawHLineFast(b,n,a-1,h)}}drawOval(t,e,s,i){const n=this.drawColors[0],r=n&15,c=n>>>4&15;if(c===15)return;const a=c-1&3,h=r-1&3;let l=s-1;const d=i-1;let u=d%2,w=e+Math.floor(i/2),b=t,p=t+s-1,f=w-u;const m=l*l,y=d*d;let g=4*(1-l)*y,_=4*(u+1)*m,v=g+_+u*m;l=8*m,u=8*y;do{this.drawPointUnclipped(a,p,w),this.drawPointUnclipped(a,b,w),this.drawPointUnclipped(a,b,f),this.drawPointUnclipped(a,p,f);const k=b+1,T=p-k;r!==0&&T>0&&(this.drawHLineUnclipped(h,k,w,p),this.drawHLineUnclipped(h,k,f,p));const P=2*v;P<=_&&(w+=1,f-=1,_+=l,v+=_),(P>=g||P>_)&&(b+=1,p-=1,g+=u,v+=g)}while(b<=p);for(;w-fi){let w=t;t=s,s=w,w=e,e=i,i=w}const a=Math.abs(s-t),h=tl?a:-l)/2,u;for(;this.drawPointUnclipped(c,t,e),!(t===s&&e===i);)u=d,u>-a&&(d-=l,t+=h),u=32&&c<=255&&this.blit(ts,i,s,8,8,0,c-32<<3,8),i+=8)}}blit(t,e,s,i,n,r,c,a,h=!1,l=!1,d=!1,u=!1){const w=this.drawColors[0];let b,p,f,m;u?(l=!l,b=Math.max(0,s)-s,p=Math.max(0,e)-e,f=Math.min(i,x-s),m=Math.min(n,E-e)):(b=Math.max(0,e)-e,p=Math.max(0,s)-s,f=Math.min(i,E-e),m=Math.min(n,x-s));for(let y=p;y>>2],Rt=6-(($&3)<<1);P=Lt>>>Rt&3}else{const Lt=t[$>>>3],Rt=7-($&7);P=Lt>>>Rt&1}const Ee=w>>>(P<<2)&15;Ee!==0&&this.drawPoint(Ee-1&3,_,v)}}}const ys=4,ws=35044,ue=34962,pe=5121,bs=5126,At=6409,gs=35632,As=35633,vs=35713,Es=35714,fe=9728,_s=10240,Ss=10241,xs=10242,ks=10243,z=3553,Cs=33984,me=33071,V=4;class Ts{constructor(t){this.gl=t,this.colorBuffer=new Uint32Array(E*x>>2),this.paletteBuffer=new Float32Array(3*V),this.lastPalette=Array(V),this.paletteLocation=null;const e=new Uint32Array(256);for(let i=0;i<256;++i){const n=i>>6&3,r=i>>4&3,c=i>>2&3,a=i&3;e[i]=n<<30|r<<22|c<<14|a<<6}this.table=e;const s=t.canvas;s.addEventListener("webglcontextlost",i=>{i.preventDefault()}),s.addEventListener("webglcontextrestored",()=>{this.initGL()}),this.initGL()}initGL(){const t=this.gl;this.lastPalette=Array(V);function e(d,u){const w=t.createShader(d);if(t.shaderSource(w,u),t.compileShader(w),!t.getShaderParameter(w,vs))throw new Error(t.getShaderInfoLog(w)+"");return w}function s(d){const u=t.createTexture();t.activeTexture(d),t.bindTexture(z,u),t.texParameteri(z,xs,me),t.texParameteri(z,ks,me),t.texParameteri(z,_s,fe),t.texParameteri(z,Ss,fe)}const i=e(As,` + attribute vec2 pos; + varying vec2 framebufferCoord; + + void main () { + framebufferCoord = pos*vec2(0.5, -0.5) + 0.5; + gl_Position = vec4(pos, 0, 1); + } + `),n=Array.from({length:V-1},(d,u)=>`p = mix(p, palette[${u+1}], step(${((u+1)/V).toFixed(2)}, index));`).join(` +`),r=e(gs,` + precision mediump float; + uniform vec3 palette[${V}]; + uniform sampler2D framebuffer; + varying vec2 framebufferCoord; + + vec3 lookup(float index) { + vec3 p = palette[0]; + ${n} + return p; + } + + void main () { + gl_FragColor = vec4(lookup(texture2D(framebuffer, framebufferCoord).r), 1.); + } + `),c=t.createProgram();if(t.attachShader(c,i),t.attachShader(c,r),t.linkProgram(c),!t.getProgramParameter(c,Es))throw new Error(t.getProgramInfoLog(c)+"");t.useProgram(c),this.paletteLocation=t.getUniformLocation(c,"palette"),t.uniform1i(t.getUniformLocation(c,"framebuffer"),0),t.detachShader(c,i),t.deleteShader(i),t.detachShader(c,r),t.deleteShader(r),s(Cs),t.texImage2D(z,0,At,E,x,0,At,pe,null);const a=t.getAttribLocation(c,"pos"),h=t.createBuffer(),l=new Float32Array([-1,-1,-1,1,1,1,1,1,1,-1,-1,-1]);t.bindBuffer(ue,h),t.bufferData(ue,l,ws),t.enableVertexAttribArray(a),t.vertexAttribPointer(a,2,bs,!1,0,0)}composite(t,e){const s=this.gl,i=e.bytes,n=this.colorBuffer,r=this.table,c=this.lastPalette,a=this.paletteBuffer;let h=!1;for(let l=0,d=0;l>16&255)/255,a[d++]=(u>>8&255)/255,a[d++]=(u&255)/255,c[l]=u}h&&s.uniform3fv(this.paletteLocation,this.paletteBuffer);for(let l=0;l>2;++l)n[l]=r[i[l]];s.texImage2D(z,0,At,E,x,0,At,pe,new Uint8Array(n.buffer)),s.drawArrays(ys,0,6)}}const Ps=6,ye=7,we=3;function $s(o){const t=new DataView(o.buffer),e=t.getUint32(0),s=t.getUint32(4,!0);if(e!==6386541||s!==1)throw new Error("Invalid WASM binary");let i=8;const n=[];let r=0,c=0,a;for(;in+(r[0]===0?r[2]-r[1]:r[1].length),0),s=new Uint8Array(e);let i=0;for(const n of t)n[0]===0?(s.set(o.slice(n[1],n[2]),i),i+=n[2]-n[1]):(s.set(n[1],i),i+=n[1].length);return s}function vt(o){const t=[];do{const e=o&127;o>>=7,t.push(o?e|128:e)}while(o);return new Uint8Array(t)}function dt(o,t=0){let e=0,s=0,i=0;do e=o[t++],s|=(e&127)<>2),this.data.setUint16(lt,4611,!0),this.data.setInt16(te,32767,!0),this.data.setInt16(ee,32767,!0)}async load(t,e=!0){if(this.wasmBuffer=t,this.wasmBufferByteLen=t.byteLength,this.wasm=null,t.byteLength>1048576&&e)throw new Error("Cart too big!");const i={memory:this.memory,rect:this.framebuffer.drawRect.bind(this.framebuffer),oval:this.framebuffer.drawOval.bind(this.framebuffer),line:this.framebuffer.drawLine.bind(this.framebuffer),hline:this.framebuffer.drawHLine.bind(this.framebuffer),vline:this.framebuffer.drawVLine.bind(this.framebuffer),text:this.text.bind(this),textUtf8:this.textUtf8.bind(this),textUtf16:this.textUtf16.bind(this),blit:this.blit.bind(this),blitSub:this.blitSub.bind(this),tone:this.apu.tone.bind(this.apu),diskr:this.diskr.bind(this),diskw:this.diskw.bind(this),trace:this.trace.bind(this),traceUtf8:this.traceUtf8.bind(this),traceUtf16:this.traceUtf16.bind(this),tracef:this.tracef.bind(this)};await this.bluescreenOnError(async()=>{const n=$s(t),r=await WebAssembly.instantiate(n,{env:i});this.wasm=r.instance,typeof this.wasm.exports._start=="function"&&this.wasm.exports._start(),typeof this.wasm.exports._initialize=="function"&&this.wasm.exports._initialize()})}async bluescreenOnError(t){try{await t()}catch(e){if(e instanceof Error){const s=Us(e);this.blueScreen(s),this.printToServer(e.stack??"")}throw e}}text(t,e,s){const i=new Uint8Array(this.memory.buffer,t);this.framebuffer.drawText(i,e,s)}textUtf8(t,e,s,i){const n=new Uint8Array(this.memory.buffer,t,e);this.framebuffer.drawText(n,s,i)}textUtf16(t,e,s,i){const n=new Uint16Array(this.memory.buffer,t,e>>1);this.framebuffer.drawText(n,s,i)}blit(t,e,s,i,n,r){this.blitSub(t,e,s,i,n,0,0,i,r)}blitSub(t,e,s,i,n,r,c,a,h){const l=new Uint8Array(this.memory.buffer,t),d=h&1,u=h&2,w=h&4,b=h&8;this.framebuffer.blit(l,e,s,i,n,r,c,a,d,u,w,b)}diskr(t,e){const s=Math.min(e,this.diskSize),i=new Uint8Array(this.diskBuffer,0,s);return new Uint8Array(this.memory.buffer,t).set(i),s}diskw(t,e){const s=Math.min(e,X),i=new Uint8Array(this.memory.buffer,t,s),n=new Uint8Array(this.diskBuffer),r=oe(i);try{localStorage.setItem(this.diskName,r)}catch(c){console.error("Error writing disk",c)}return n.set(i),this.diskSize=s,s}getCString(t){let e="";for(;;){const s=this.data.getUint8(t++);if(s==0)break;e+=String.fromCharCode(s)}return e}print(t){console.log(t),this.printToServer(t)}printToServer(t){}trace(t){this.print(this.getCString(t))}traceUtf8(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder().decode(s);this.print(i)}traceUtf16(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder("utf-16").decode(s);this.print(i)}tracef(t,e){let s="",i;for(;i=this.data.getUint8(t++);)if(i==37)switch(i=this.data.getUint8(t++)){case 37:s+="%";break;case 99:s+=String.fromCharCode(this.data.getInt32(e,!0)),e+=4;break;case 100:case 120:s+=this.data.getInt32(e,!0).toString(i==100?10:16),e+=4;break;case 115:s+=this.getCString(this.data.getUint32(e,!0)),e+=4;break;case 102:s+=this.data.getFloat64(e,!0),e+=8;break;default:s+="%"+String.fromCharCode(i);break}else s+=String.fromCharCode(i);this.print(s)}start(){let t=this.wasm.exports.start;typeof t=="function"&&this.bluescreenOnError(t)}update(){if(this.pauseState!=0)return;this.getSystemFlag(Ze)||this.framebuffer.clear();let t=this.wasm.exports.update;typeof t=="function"&&this.bluescreenOnError(t),this.apu.tick()}blueScreen(t){this.pauseState|=se;const e=[1118702,8831084,11184810,16777215],s=u=>[...u].map(w=>w.charCodeAt(0)),i=` ${Ve} `,n=i,r=8*i.length,c=(160-8*i.length)/2,a=20,h=9,l=60;new Uint32Array(this.memory.buffer).set(e,$t>>2),this.data.setUint16(lt,4611,!0),this.framebuffer.clear(),this.framebuffer.drawHLine(c,a-1,r),this.data.setUint16(lt,4401,!0),this.framebuffer.drawText(s(n),c,a),this.data.setUint16(lt,4611,!0),this.framebuffer.drawText(s(t),h,l),this.composite()}composite(){const t=new Uint32Array(this.memory.buffer,$t,4);this.compositor.composite(t,this.framebuffer)}}function Us(o){if(o instanceof WebAssembly.RuntimeError){let t;return o.message.match(/unreachable/)?t=`The cartridge has +reached a code +segment marked as +unreachable.`:o.message.match(/out of bounds/)&&(t=`The cartridge has +attempted a memory +access that is +out of bounds.`),t+` + + + + +Hit R to reboot.`}else{if(o instanceof WebAssembly.LinkError)return`The cartridge has +tried to import +a missing function. + + + +See console for +more details.`;if(o instanceof WebAssembly.CompileError)return`The cartridge is +corrupted. + + + +See console for +more details.`;if(o instanceof Os)return o.wasm4Message}return`Unknown error. + + + +See console for +more details.`}class Os extends Error{constructor(t){super(t.replace(` +`," ")),this.name="Wasm4Error",this.wasm4Message=t}}var Ms=Object.defineProperty,Ls=Object.getOwnPropertyDescriptor,ut=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ls(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Ms(t,e,i),i};class ge{constructor(){this.gamepad=[0,0,0,0],this.mouseX=0,this.mouseY=0,this.mouseButtons=0}}A.App=class extends M{constructor(){var t;super(),this.hideGamepadOverlay=!1,this.showMenu=!1,this.inputState=new ge,this.gamepadUnavailableWarned=new Set,this.onPointerUp=e=>{e.pointerType=="touch"&&ne(),this.runtime.unlockAudio()},this.diskPrefix=((t=document.getElementById("wasm4-disk-prefix"))==null?void 0:t.textContent)??It("disk-prefix"),this.runtime=new Is(`${this.diskPrefix}-disk`),this.init()}async init(){async function t(){const p=document.getElementById("wasm4-cart-json");if(p){const{WASM4_CART:f,WASM4_CART_SIZE:m}=JSON.parse(p.textContent??""),y=new Uint8Array(m);return ae(f,y),y}else{const f=It("url")??"cart.wasm",m=await fetch(f);if(m.ok)return new Uint8Array(await m.arrayBuffer());throw new Error(`Could not load cart at url: ${f}`)}}const e=this.runtime;await e.init();const s=e.canvas,i=It("netplay");i?(this.netplay=this.createNetplay(),this.netplay.join(i)):await e.load(await t());let n={toggleDevtools(){},updateCompleted(...p){}};this.netplay||e.start();function r(){e.composite(),s.toBlob(p=>{const f=URL.createObjectURL(p),m=document.createElement("a");m.href=f,m.download="wasm4-screenshot.png",m.click(),URL.revokeObjectURL(f)})}let c=null;function a(){if(c!=null)return;const p="video/webm",f=s.captureStream();c=new MediaRecorder(f,{mimeType:p,videoBitsPerSecond:25e6});const m=[];c.ondataavailable=y=>{m.push(y.data)},c.onstop=()=>{const y=new Blob(m,{type:p}),g=URL.createObjectURL(y),_=document.createElement("a");_.href=g,_.download="wasm4-animation.webm",_.click(),URL.revokeObjectURL(g)},c.start(),setTimeout(()=>{c&&(c.requestData(),c.stop(),c=null)},4e3)}const h=p=>{if(document.body.style.cursor="",p.isPrimary){const f=s.getBoundingClientRect(),m=this.inputState;m.mouseX=Math.fround(E*(p.clientX-f.left)/f.width),m.mouseY=Math.fround(x*(p.clientY-f.top)/f.height),m.mouseButtons=p.buttons&7}};window.addEventListener("pointerdown",h),window.addEventListener("pointerup",h),window.addEventListener("pointermove",h),s.addEventListener("contextmenu",p=>{p.preventDefault()});const l={2:this.saveGameState.bind(this),4:this.loadGameState.bind(this),r:this.resetCart.bind(this),R:this.resetCart.bind(this),F8:n.toggleDevtools,F9:r,F10:a,F11:ne,Enter:this.onMenuButtonPressed.bind(this)},d=p=>{if(p.ctrlKey||p.altKey||p.srcElement instanceof HTMLElement&&p.srcElement.tagName=="INPUT")return;const f=p.type=="keydown";if(e.unlockAudio(),document.body.style.cursor="none",f){const g=l[p.key];if(g){g(),p.preventDefault();return}}let m=0,y=0;switch(p.code){case"KeyX":case"KeyV":case"Space":case"Period":y=L;break;case"KeyZ":case"KeyC":case"Comma":y=F;break;case"ArrowUp":y=H;break;case"ArrowDown":y=G;break;case"ArrowLeft":y=J;break;case"ArrowRight":y=Z;break;case"KeyA":case"KeyQ":m=1,y=L;break;case"ShiftLeft":case"Tab":m=1,y=F;break;case"KeyE":m=1,y=H;break;case"KeyD":m=1,y=G;break;case"KeyS":m=1,y=J;break;case"KeyF":m=1,y=Z;break;case"NumpadMultiply":case"NumpadDecimal":m=2,y=L;break;case"NumpadSubtract":case"NumpadEnter":m=2,y=F;break;case"Numpad8":m=2,y=H;break;case"Numpad5":m=2,y=G;break;case"Numpad4":m=2,y=J;break;case"Numpad6":m=2,y=Z;break}if(y!=0){p.preventDefault();const g=this.inputState.gamepad;f?g[m]|=y:g[m]&=~y}};if(window.addEventListener("keydown",d),window.addEventListener("keyup",d),top&&top!=window)try{top.addEventListener("keydown",d),top.addEventListener("keyup",d)}catch{}const u=()=>{if(navigator.getGamepads)for(const p of navigator.getGamepads()){if(p==null)continue;if(p.mapping!="standard"){this.gamepadUnavailableWarned.has(p.id)||(this.gamepadUnavailableWarned.add(p.id),this.notifications.show("Unsupported gamepad: "+p.id));continue}const f=p.buttons,m=p.axes;let y=0;(f[12].pressed||m[1]<-.5)&&(y|=H),(f[13].pressed||m[1]>.5)&&(y|=G),(f[14].pressed||m[0]<-.5)&&(y|=J),(f[15].pressed||m[0]>.5)&&(y|=Z),(f[0].pressed||f[3].pressed||f[5].pressed||f[7].pressed)&&(y|=L),(f[1].pressed||f[2].pressed||f[4].pressed||f[6].pressed)&&(y|=F),f[9].pressed&&(this.showMenu=!0),this.inputState.gamepad[p.index%4]=y}};let w=performance.now();const b=p=>{requestAnimationFrame(b),u();let f=this.inputState;if(this.menuOverlay!=null)if(this.menuOverlay.applyInput(),this.netplay)f=new ge;else return;let m=!1;for(p-w>=200&&(w=p);p>=w;)if(w+=1e3/60,this.netplay)this.netplay.update(f.gamepad[0])&&(m=!0);else{for(let y=0;y<4;++y)e.setGamepad(y,f.gamepad[y]);e.setMouse(f.mouseX,f.mouseY,f.mouseButtons),e.update(),m=!0}m&&(this.hideGamepadOverlay=!!e.getSystemFlag(Qe),e.composite())};requestAnimationFrame(b)}onMenuButtonPressed(){this.showMenu?this.inputState.gamepad[0]|=L:this.showMenu=!0}closeMenu(){if(this.showMenu){this.showMenu=!1;for(let t=0;t<4;++t)this.inputState.gamepad[t]=0}}saveGameState(){let t=this.savedGameState;t==null&&(t=this.savedGameState=new ht),t.read(this.runtime),this.notifications.show("State saved")}loadGameState(){if(this.netplay){this.notifications.show("State loading disabled during netplay");return}const t=this.savedGameState;t!=null?(t.write(this.runtime),this.notifications.show("State loaded")):this.notifications.show("Need to save a state first")}exportGameDisk(){if(this.runtime.diskSize<=0){this.notifications.show("Disk is empty");return}const t=new Uint8Array(this.runtime.diskBuffer).slice(0,this.runtime.diskSize),e=new Blob([t],{type:"application/octet-stream"}),s=document.createElement("a");s.style.display="none",s.href=URL.createObjectURL(e),s.download=`${this.diskPrefix}.disk`,document.body.appendChild(s),s.click(),document.body.removeChild(s)}importGameDisk(){if(this.netplay){this.notifications.show("Disk importing disabled during netplay");return}const t=this,e=document.createElement("input");e.style.display="none",e.type="file",e.accept=".disk",e.multiple=!1,e.addEventListener("change",()=>{const s=e.files;let i=new FileReader;i.addEventListener("load",()=>{let n=new Uint8Array(i.result).slice(0,X),r=new Uint8Array(X);r.set(n),t.runtime.diskBuffer=r.buffer,this.runtime.diskSize=n.length;const c=oe(n);try{localStorage.setItem(this.runtime.diskName,c),t.notifications.show("Disk imported")}catch(a){t.notifications.show("Error importing disk"),console.error("Error importing disk",a)}t.closeMenu()}),i.readAsArrayBuffer(s[0])}),document.body.appendChild(e),e.click(),document.body.removeChild(e)}clearGameDisk(){if(this.netplay){this.notifications.show("Disk clearing disabled during netplay");return}this.runtime.diskBuffer=new ArrayBuffer(X),this.runtime.diskSize=0;try{localStorage.removeItem(this.runtime.diskName)}catch(t){this.notifications.show("Error clearing disk"),console.error("Error clearing disk",t)}this.notifications.show("Disk cleared")}async copyNetplayLink(){this.netplay||(this.netplay=this.createNetplay(),this.netplay.host()),es(await this.netplay.getInviteLink()),this.notifications.show("Netplay link copied to clipboard")}async resetCart(t,e=!1){if(this.netplay){this.notifications.show("Reset disabled during netplay");return}t||(t=this.runtime.wasmBuffer);let s;e&&(s=new ht,s.read(this.runtime)),this.runtime.reset(!0),this.runtime.pauseState|=ie,await this.runtime.load(t),this.runtime.pauseState&=~ie,s?s.write(this.runtime):this.runtime.start()}createNetplay(){const t=new ps(this.runtime);return t.onstart=e=>this.notifications.show(`Joined as player ${e+1}`),t.onjoin=e=>this.notifications.show(`Player ${e+1} joined`),t.onleave=e=>this.notifications.show(`Player ${e+1} left`),t}getNetplaySummary(){return this.netplay?this.netplay.getSummary():[]}connectedCallback(){super.connectedCallback(),window.addEventListener("pointerup",this.onPointerUp)}disconnectedCallback(){window.removeEventListener("pointerup",this.onPointerUp),super.disconnectedCallback()}render(){return C` +
+ ${this.showMenu?C``:""} + + ${this.runtime.canvas} +
+ ${this.hideGamepadOverlay?"":C``} + `}},A.App.styles=ft` + :host { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + + touch-action: none; + user-select: none; + -webkit-user-select: none; + -webkit-tap-highlight-color: transparent; + + background: #202020; + } + + .content { + width: 100vmin; + height: 100vmin; + overflow: hidden; + } + + /** Nudge the game upwards a bit in portrait to make space for the virtual gamepad. */ + @media (pointer: coarse) and (max-aspect-ratio: 2/3) { + .content { + position: absolute; + top: calc((100% - 220px - 100vmin)/2) + } + } + + .content canvas { + width: 100%; + height: 100%; + image-rendering: pixelated; + image-rendering: crisp-edges; + } + `,ut([at()],A.App.prototype,"hideGamepadOverlay",2),ut([at()],A.App.prototype,"showMenu",2),ut([ct("wasm4-menu-overlay")],A.App.prototype,"menuOverlay",2),ut([ct("wasm4-notifications")],A.App.prototype,"notifications",2),A.App=ut([bt("wasm4-app")],A.App);/** + * @license + * Copyright 2021 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function*Ut(o,t){if(o!==void 0){let e=0;for(const s of o)yield t(s,e++)}}var Rs=Object.defineProperty,Ds=Object.getOwnPropertyDescriptor,Ot=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ds(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Rs(t,e,i),i};const j={DEFAULT:0,DISK:1},Ns=[{CONTINUE:0,SAVE_STATE:1,LOAD_STATE:2,DISK_OPTIONS:3,COPY_NETPLAY_LINK:4,RESET_CART:5},{BACK:0,EXPORT_DISK:1,IMPORT_DISK:2,CLEAR_DISK:3}],Mt=[["CONTINUE","SAVE STATE","LOAD STATE","DISK OPTIONS","COPY NETPLAY URL","RESET CART"],["BACK","EXPORT DISK","IMPORT DISK","CLEAR DISK"]];A.MenuOverlay=class extends M{constructor(){super(),this.lastGamepad=0,this.selectedIdx=0,this.netplaySummary=[],this.optionContext=0,this.optionContextHistory=[]}get optionIndex(){return Ns[this.optionContext]}get options(){return Mt[this.optionContext]}previousContext(){if(this.optionContextHistory.length>0){const t=this.optionContextHistory.pop();this.resetInput(),this.optionContext=t.context,this.selectedIdx=t.index}}switchContext(t,e=0){this.optionContextHistory.push({context:this.optionContext,index:this.selectedIdx}),this.resetInput(),this.optionContext=t,this.selectedIdx=e}resetInput(){this.app.inputState.gamepad[0]=0}applyInput(){let t=0;for(const s of this.app.inputState.gamepad)t|=s;const e=t&(t^this.lastGamepad);if(this.lastGamepad=t,e&(L|F)){if(this.optionContext===j.DEFAULT)switch(this.selectedIdx){case this.optionIndex.CONTINUE:this.app.closeMenu();break;case this.optionIndex.SAVE_STATE:this.app.saveGameState(),this.app.closeMenu();break;case this.optionIndex.LOAD_STATE:this.app.loadGameState(),this.app.closeMenu();break;case this.optionIndex.DISK_OPTIONS:this.switchContext(j.DISK);break;case this.optionIndex.COPY_NETPLAY_LINK:this.app.copyNetplayLink(),this.app.closeMenu();break;case this.optionIndex.RESET_CART:this.app.resetCart(),this.app.closeMenu();break}else if(this.optionContext===j.DISK)switch(this.selectedIdx){case this.optionIndex.BACK:this.previousContext();break;case this.optionIndex.EXPORT_DISK:this.app.exportGameDisk(),this.app.closeMenu();break;case this.optionIndex.IMPORT_DISK:this.resetInput(),this.app.importGameDisk();break;case this.optionIndex.CLEAR_DISK:this.app.clearGameDisk(),this.app.closeMenu();break}}e&G&&this.selectedIdx++,e&H&&this.selectedIdx--,this.selectedIdx=(this.selectedIdx+this.options.length)%this.options.length}connectedCallback(){super.connectedCallback();const t=()=>{this.netplaySummary=this.app.getNetplaySummary()};t(),this.netplayPollInterval=window.setInterval(t,1e3)}disconnectedCallback(){window.clearInterval(this.netplayPollInterval),super.disconnectedCallback()}render(){return C` +
+ WASM-4 v${"2.7.0"} +
+ +
+ ${Ut(this.netplaySummary,t=>{const e=t.ping<100?"good":t.ping<200?"ok":"bad",s=t.ping<0?C`YOU`:C`${Math.ceil(t.ping)}ms`;return C`
PLAYER ${t.playerIdx>=0?t.playerIdx+1:"?"} ${s}
`})} +
+ `}},A.MenuOverlay.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + + color: #a0a0a0; + font: 16px wasm4-font; + + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + + background: rgba(0, 0, 0, 0.85); + } + + .version { + color: #fff; + padding-bottom: 1em; + } + + .menu { + border: 2px solid #f0f0f0; + padding: 0 1em 0 1em; + line-height: 2em; + } + + .netplay-summary { + margin-top: 2em; + line-height: 1.5em; + } + + .ping-you { + color: #f0f0f0; + } + + .ping-good { + color: green; + } + + .ping-ok { + color: yellow; + } + + .ping-bad { + color: red; + } + + ul { + list-style: none; + padding-left: 0; + padding-right: 1em; + } + + li::before { + content: "\\00a0\\00a0"; + } + li.selected::before { + content: "> "; + } + li.selected { + color: #fff; + } + `,Ot([at()],A.MenuOverlay.prototype,"selectedIdx",2),Ot([at()],A.MenuOverlay.prototype,"netplaySummary",2),A.MenuOverlay=Ot([bt("wasm4-menu-overlay")],A.MenuOverlay);var Bs=Object.defineProperty,Fs=Object.getOwnPropertyDescriptor,Et=(o,t,e,s)=>{for(var i=s>1?void 0:s?Fs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Bs(t,e,i),i};function Q(o,t,e){o&&(e?o.classList.add(t):o.classList.remove(t))}A.VirtualGamepad=class extends M{constructor(){super(...arguments),this.touchEvents=new Map,this.onPointerEvent=t=>{if(t.pointerType!="touch")return;switch(t.preventDefault(),t.type){case"pointerdown":case"pointermove":this.touchEvents.set(t.pointerId,t);break;default:this.touchEvents.delete(t.pointerId);break}let e=0;if(this.touchEvents.size){const c=this.dpad.getBoundingClientRect(),a=c.x+c.width/2,h=c.y+c.height/2,l=this.action1.getBoundingClientRect(),d=l.x+l.width/2,u=l.y+l.height/2,w=this.action2.getBoundingClientRect(),b=w.x+w.width/2,p=w.y+w.height/2;let f,m,y,g,_;for(const v of this.touchEvents.values())f=v.clientX-a,m=v.clientY-h,y=Math.sqrt(f*f+m*m),y<100&&y>10&&(g=f/y,_=m/y,-g>.6?e|=J:g>.6&&(e|=Z),-_>.6?e|=H:_>.6&&(e|=G)),f=v.clientX-d,m=v.clientY-u,f*f+m*m<2500&&(e|=L),f=v.clientX-b,m=v.clientY-p,f*f+m*m<2500&&(e|=F)}Q(this.action1,"pressed",e&L),Q(this.action2,"pressed",e&F),Q(this.dpad,"pressed-left",e&J),Q(this.dpad,"pressed-right",e&Z),Q(this.dpad,"pressed-up",e&H),Q(this.dpad,"pressed-down",e&G),this.app.inputState.gamepad[0]=e}}connectedCallback(){super.connectedCallback(),window.addEventListener("pointercancel",this.onPointerEvent),window.addEventListener("pointerdown",this.onPointerEvent),window.addEventListener("pointermove",this.onPointerEvent),window.addEventListener("pointerup",this.onPointerEvent)}disconnectedCallback(){window.removeEventListener("pointercancel",this.onPointerEvent),window.removeEventListener("pointerdown",this.onPointerEvent),window.removeEventListener("pointermove",this.onPointerEvent),window.removeEventListener("pointerup",this.onPointerEvent),super.disconnectedCallback()}onMenuButtonPressed(t){this.app.onMenuButtonPressed(),t.stopImmediatePropagation()}render(){return C` + +
+
X
+
Z
+ `}},A.VirtualGamepad.styles=ft` + :host { + display: none; + } + @media (hover: none) or (pointer: coarse) { + :host { + display: inherit; + } + } + + .dpad { + pointer-events: none; + position: absolute; + width: 39px; + height: 120px; + left: 69px; + bottom: 30px; + background: #444; + border-radius: 9px; + } + .dpad:before { + position: absolute; + width: 120px; + height: 39px; + top: 39px; + left: -39px; + background: #444; + border-radius: 9px; + content: ""; + } + .dpad:after { + position: absolute; + height: 39px; + width: 39px; + top: 39px; + border-radius: 100%; + background: #333; + content: ""; + } + .dpad.pressed-left:before { + border-left: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-right:before { + border-right: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-up { + border-top: 4px solid #A93671; + } + .dpad.pressed-down { + border-bottom: 4px solid #A93671; + height: 116px; + } + + .action1 { + right: 80px; + bottom: 30px; + } + .action2 { + right: 30px; + bottom: 90px; + } + .action1, .action2 { + pointer-events: none; + position: absolute; + width: 60px; + height: 60px; + border: 4px solid #A93671; + border-radius: 50px; + + /** TODO(2022-03-14): Button text should be centered but is off slightly. */ + color: #A93671; + font: 24px wasm4-font; + text-align: center; + line-height: 60px; + } + .action1.pressed, .action2.pressed { + background: #A93671; + } + + .menu { + position: absolute; + background: #444; + width: 60px; + height: 20px; + bottom: 200px; + right: 35px; + border-radius: 10px; + } + `,Et([ct(".dpad")],A.VirtualGamepad.prototype,"dpad",2),Et([ct(".action1")],A.VirtualGamepad.prototype,"action1",2),Et([ct(".action2")],A.VirtualGamepad.prototype,"action2",2),A.VirtualGamepad=Et([bt("wasm4-virtual-gamepad")],A.VirtualGamepad);var Hs=Object.defineProperty,Gs=Object.getOwnPropertyDescriptor,Ae=(o,t,e,s)=>{for(var i=s>1?void 0:s?Gs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Hs(t,e,i),i};return A.Notifications=class extends M{constructor(){super(...arguments),this.notifications=[]}show(t){this.notifications=this.notifications.concat([t]),setTimeout(()=>{this.notifications=this.notifications.slice(1)},5e3)}render(){return this.notifications.map(t=>C`
${t}
`)}},A.Notifications.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + pointer-events: none; + + color: #fff; + font: 24px wasm4-font; + + display: flex; + flex-direction: column; + } + + .notification { + background: rgba(0, 0, 0, 0.85); + padding: 0.5em; + /* animation: appear 0.5s ease-out, disappear 0.5s 4.5s ease-in; */ + /* animation-fill-mode: forwards; */ + animation: appear 0.5s ease-out; + } + + @keyframes appear { + from { + padding-left: 2em; + opacity: 0; + } + to { + opacity: 1; + padding-left: 0.5em; + } + } + + /*@keyframes disappear { + from { + opacity: 1; + } + to { + opacity: 0; + } + }*/ + `,Ae([at()],A.Notifications.prototype,"notifications",2),A.Notifications=Ae([bt("wasm4-notifications")],A.Notifications),Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),A}({}); diff --git a/w4-magnifying-glass/cart.wasm b/w4-magnifying-glass/cart.wasm new file mode 100644 index 00000000..d181602e Binary files /dev/null and b/w4-magnifying-glass/cart.wasm differ diff --git a/w4-magnifying-glass/favicon.ico b/w4-magnifying-glass/favicon.ico new file mode 100644 index 00000000..1e3dcdc7 Binary files /dev/null and b/w4-magnifying-glass/favicon.ico differ diff --git a/w4-magnifying-glass/index.html b/w4-magnifying-glass/index.html new file mode 100644 index 00000000..889693a0 --- /dev/null +++ b/w4-magnifying-glass/index.html @@ -0,0 +1,14 @@ + + + + + + + Wa-lang/WASM-4 Game + + + + + + + diff --git a/w4-magnifying-glass/w4app.wat b/w4-magnifying-glass/w4app.wat new file mode 100644 index 00000000..dd7577e3 --- /dev/null +++ b/w4-magnifying-glass/w4app.wat @@ -0,0 +1,4918 @@ +(module $__walang__ + (import "env" "memory" (memory 1)) + (table 18 funcref) + (type $$onFree (func (param i32))) + (type $$wa.runtime.comp (func (param i32) (param i32) (result i32))) + (global $__stack_ptr (mut i32) (i32.const 14656)) + (global $__heap_max i32 (i32.const 65536)) + (global $$wa.runtime.closure_data (mut i32) (i32.const 0)) + (global $$wa.runtime._concretTypeCount (mut i32) (i32.const 1)) + (global $$wa.runtime._interfaceCount (mut i32) (i32.const 1)) + (global $$wa.runtime._itabsPtr (mut i32) (i32.const 15096)) + (global $runtime.init$guard (mut i32) (i32.const 0)) + (global $$knr_basep (mut i32) (i32.const 0)) + (global $$knr_freep (mut i32) (i32.const 0)) + (global $math._cos.0 i32 (i32.const 0)) + (global $math._cos.1 i32 (i32.const 14792)) + (global $math._sin.0 i32 (i32.const 0)) + (global $math._sin.1 i32 (i32.const 14840)) + (global $math.init$guard (mut i32) (i32.const 0)) + (global $syscall$wasm4.init$guard (mut i32) (i32.const 0)) + (global $w4app.cells.0 i32 (i32.const 0)) + (global $w4app.cells.1 i32 (i32.const 14888)) + (global $w4app.cellsFrame.0 i32 (i32.const 0)) + (global $w4app.cellsFrame.1 i32 (i32.const 14896)) + (global $w4app.center_x.0 i32 (i32.const 0)) + (global $w4app.center_x.1 i32 (i32.const 14904)) + (global $w4app.center_y.0 i32 (i32.const 0)) + (global $w4app.center_y.1 i32 (i32.const 14908)) + (global $w4app.height.0 i32 (i32.const 0)) + (global $w4app.height.1 i32 (i32.const 14912)) + (global $w4app.init$guard (mut i32) (i32.const 0)) + (global $w4app.width.0 i32 (i32.const 0)) + (global $w4app.width.1 i32 (i32.const 14916)) + (global $runtime.zptr (mut i32) (i32.const 15024)) + (global $__heap_base i32 (i32.const 15120)) + (func $$math.waSqrtF64 (param $x f64) (result f64) + local.get $x + f64.sqrt + ) + (func $runtime.heapBase (result i32) + global.get $__heap_base + ) + (func $runtime.heapMax (result i32) + global.get $__heap_max + ) + (func $runtime.HeapAlloc (export "runtime.HeapAlloc") (param $nbytes i32) (result i32) + (local $ptr i32) + local.get $nbytes + i32.eqz + if + i32.const 0 + return + end + local.get $nbytes + i32.const 7 + i32.add + i32.const 8 + i32.div_u + i32.const 8 + i32.mul + local.set $nbytes + local.get $nbytes + call $runtime.malloc + local.set $ptr + loop $zero + local.get $nbytes + i32.const 8 + i32.sub + local.tee $nbytes + local.get $ptr + i32.add + i64.const 0 + i64.store align=8 + local.get $nbytes + if + br $zero + end + end + local.get $ptr + ) + (func $runtime.HeapFree (export "runtime.HeapFree") (param $ptr i32) + local.get $ptr + call $runtime.free + ) + (func $runtime.Block.Init (param $ptr i32) (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + i32.const 1 + i32.store align=1 + local.get $ptr + local.get $item_count + i32.store offset=4 align=1 + local.get $ptr + local.get $release_func + i32.store offset=8 align=1 + local.get $ptr + local.get $item_size + i32.store offset=12 align=1 + end + ) + (func $runtime.Block.HeapAlloc (export "runtime.Block.HeapAlloc") (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $item_count + local.get $item_size + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $item_count + local.get $release_func + local.get $item_size + call $runtime.Block.Init + ) + (func $runtime.DupI32 (param $a i32) (result i32 i32) + local.get $a + local.get $a + ) + (func $runtime.Block.Retain (export "runtime.Block.Retain") (param $ptr i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + local.get $ptr + i32.load align=1 + i32.const 1 + i32.add + i32.store align=1 + end + ) + (func $runtime.Block.Release (export "runtime.Block.Release") (param $ptr i32) + (local $ref_count i32) + (local $item_count i32) + (local $free_func i32) + (local $item_size i32) + (local $data_ptr i32) + local.get $ptr + i32.const 0 + i32.eq + if + return + end + local.get $ptr + i32.load align=1 + i32.const 1 + i32.sub + local.set $ref_count + local.get $ref_count + if + local.get $ptr + local.get $ref_count + i32.store align=1 + else + local.get $ptr + i32.load offset=8 align=1 + local.set $free_func + local.get $free_func + if + local.get $ptr + i32.load offset=4 align=1 + local.set $item_count + local.get $item_count + if + local.get $ptr + i32.load offset=12 align=1 + local.set $item_size + local.get $ptr + i32.const 16 + i32.add + local.set $data_ptr + loop $free_next + local.get $data_ptr + local.get $free_func + call_indirect 0 (type $$onFree) + local.get $item_count + i32.const 1 + i32.sub + local.set $item_count + local.get $item_count + if + local.get $data_ptr + local.get $item_size + i32.add + local.set $data_ptr + br $free_next + end + end + end + end + local.get $ptr + call $runtime.HeapFree + end + ) + (func $$wa.runtime.string_to_iter (param $b i32) (param $d i32) (param $l i32) (result i32 i32 i32) + local.get $d + local.get $l + i32.const 0 + ) + (func $$syscall/wasm4.__linkname__make_slice (param $blk i32) (param $ptr i32) (param $len i32) (param $cap i32) (result i32 i32 i32 i32) + local.get $blk + local.get $ptr + local.get $len + local.get $cap + return + ) + (func $$string.$$compAddr (param $p0 i32) (param $p1 i32) (result i32) + (local $v0.0 i32) + (local $v0.1 i32) + (local $v0.2 i32) + (local $v1.0 i32) + (local $v1.1 i32) + (local $v1.2 i32) + local.get $p0 + if + local.get $p0 + i32.load + call $runtime.Block.Retain + local.get $p0 + i32.load offset=4 + local.get $p0 + i32.load offset=8 + local.set $v0.2 + local.set $v0.1 + local.get $v0.0 + call $runtime.Block.Release + local.set $v0.0 + end + local.get $p1 + if + local.get $p1 + i32.load + call $runtime.Block.Retain + local.get $p1 + i32.load offset=4 + local.get $p1 + i32.load offset=8 + local.set $v1.2 + local.set $v1.1 + local.get $v1.0 + call $runtime.Block.Release + local.set $v1.0 + end + local.get $v0.0 + local.get $v0.1 + local.get $v0.2 + local.get $v1.0 + local.get $v1.1 + local.get $v1.2 + call $$wa.runtime.string_Comp + local.get $v0.0 + call $runtime.Block.Release + local.get $v1.0 + call $runtime.Block.Release + ) + (func $$u8.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$string.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $runtime.free (param $ap i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 + end + i32.const 0 + local.set $$current_block + local.get $ap + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ap + i32.const 8 + i32.sub + local.set $$t1 + i32.const 0 + local.set $$t2.0 + i32.const 0 + local.set $$t2.1 + local.get $$t1 + call $runtime.knr_getBlockHeader + local.set $$t3.1 + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.set $$t2.1 + local.set $$t2.0 + local.get $$t2.1 + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.le_u + local.set $$t5 + local.get $$t5 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $ap + i32.const 8 + i32.rem_u + local.set $$t6 + local.get $$t6 + i32.const 0 + i32.eq + i32.eqz + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + global.get $$knr_freep + local.set $$t8 + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + local.get $$t8 + call $runtime.knr_getBlockHeader + local.set $$t10.1 + local.set $$t10.0 + local.get $$t10.0 + local.get $$t10.1 + local.set $$t9.1 + local.set $$t9.0 + br $$Block_7 + end + i32.const 6 + local.set $$current_block + local.get $$t9.0 + local.set $$t11 + local.get $$t12 + local.get $$t11 + i32.ge_u + local.set $$t13 + local.get $$t13 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $$t2.1 + local.set $$t14 + local.get $$t14 + i32.const 8 + i32.mul + local.set $$t15 + local.get $$t1 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t9.0 + local.set $$t17 + local.get $$t16 + local.get $$t17 + i32.eq + local.set $$t18 + local.get $$t18 + if + br $$Block_12 + else + br $$Block_14 + end + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t19 + end + local.set $$t12 + i32.const 8 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t9.0 + local.set $$t21 + local.get $$t1 + local.get $$t21 + i32.lt_u + local.set $$t22 + local.get $$t22 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t9.0 + local.set $$t19 + local.get $$t19 + call $runtime.knr_getBlockHeader + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t9.1 + local.set $$t9.0 + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t24 + local.get $$t24 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 12 + local.set $$current_block + local.get $$t9.0 + local.set $$t25 + local.get $$t1 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 0 + local.set $$t27.0 + i32.const 0 + local.set $$t27.1 + local.get $$t9.0 + local.set $$t28 + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t29.1 + local.set $$t29.0 + local.get $$t29.0 + local.get $$t29.1 + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.1 + local.set $$t30 + local.get $$t2.1 + local.set $$t31 + local.get $$t31 + local.get $$t30 + i32.add + local.set $$t32 + local.get $$t32 + local.set $$t2.1 + local.get $$t27.0 + local.set $$t33 + local.get $$t33 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t34.1 + local.set $$t34.0 + local.get $$t1 + local.get $$t34.0 + local.get $$t34.1 + call $runtime.knr_setBlockHeader + br $$Block_13 + end + i32.const 14 + local.set $$current_block + local.get $$t9.1 + local.set $$t35 + local.get $$t35 + i32.const 8 + i32.mul + local.set $$t36 + local.get $$t12 + local.get $$t36 + i32.add + local.set $$t37 + local.get $$t37 + local.get $$t1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_15 + else + br $$Block_17 + end + end + i32.const 15 + local.set $$current_block + local.get $$t9.0 + local.set $$t39 + local.get $$t39 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t40.1 + local.set $$t40.0 + local.get $$t1 + local.get $$t40.0 + local.get $$t40.1 + call $runtime.knr_setBlockHeader + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $$t2.1 + local.set $$t41 + local.get $$t9.1 + local.set $$t42 + local.get $$t42 + local.get $$t41 + i32.add + local.set $$t43 + local.get $$t43 + local.set $$t9.1 + local.get $$t2.0 + local.set $$t44 + local.get $$t44 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t45.1 + local.set $$t45.0 + local.get $$t12 + local.get $$t45.0 + local.get $$t45.1 + call $runtime.knr_setBlockHeader + br $$Block_16 + end + i32.const 17 + local.set $$current_block + local.get $$t12 + global.set $$knr_freep + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t1 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t46.1 + local.set $$t46.0 + local.get $$t12 + local.get $$t46.0 + local.get $$t46.1 + call $runtime.knr_setBlockHeader + i32.const 17 + local.set $$block_selector + br $$BlockDisp + end + end + end + ) + (func $runtime.get_u8 (param $addr i32) (result i32) + local.get $addr + i32.load8_u align=1 + ) + (func $runtime.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $runtime.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $runtime.init$guard + call $syscall$wasm4.init + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $runtime.knr_getBlockHeader (param $addr i32) (result i32 i32) + local.get $addr + i32.load + local.get $addr + i32.load offset=4 + ) + (func $runtime.knr_setBlockHeader (param $addr i32) (param $data.0 i32) (param $data.1 i32) + local.get $addr + local.get $data.0 + i32.store + local.get $addr + local.get $data.1 + i32.store offset=4 + ) + (func $runtime.malloc (param $nbytes i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 + end + i32.const 0 + local.set $$current_block + local.get $nbytes + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + global.get $$knr_basep + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + call $runtime.heapMax + local.set $$t3 + global.get $$knr_basep + local.set $$t4 + local.get $$t3 + local.get $$t4 + i32.sub + local.set $$t5 + local.get $nbytes + local.get $$t5 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + call $runtime.heapBase + local.set $$t7 + local.get $$t7 + global.set $$knr_basep + global.get $$knr_basep + local.set $$t8 + local.get $$t8 + global.set $$knr_freep + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t10 + call $runtime.heapMax + local.set $$t11 + global.get $$knr_basep + local.set $$t12 + local.get $$t11 + local.get $$t12 + i32.sub + local.set $$t13 + local.get $$t13 + i32.const 8 + i32.div_u + local.set $$t14 + local.get $$t14 + i32.const 1 + i32.sub + local.set $$t15 + local.get $$t10 + local.set $$t9.0 + local.get $$t15 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t16 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t17.1 + local.set $$t17.0 + local.get $$t16 + local.get $$t17.0 + local.get $$t17.1 + call $runtime.knr_setBlockHeader + br $$Block_4 + end + i32.const 5 + local.set $$current_block + local.get $nbytes + i32.const 8 + i32.add + local.set $$t18 + local.get $$t18 + i32.const 1 + i32.sub + local.set $$t19 + local.get $$t19 + i32.const 8 + i32.div_u + local.set $$t20 + local.get $$t20 + i32.const 1 + i32.add + local.set $$t21 + global.get $$knr_freep + local.set $$t22 + i32.const 0 + local.set $$t23.0 + i32.const 0 + local.set $$t23.1 + local.get $$t22 + call $runtime.knr_getBlockHeader + local.set $$t24.1 + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.set $$t25 + i32.const 0 + local.set $$t26.0 + i32.const 0 + local.set $$t26.1 + local.get $$t25 + call $runtime.knr_getBlockHeader + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.0 + local.get $$t27.1 + local.set $$t26.1 + local.set $$t26.0 + br $$Block_5 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t22 + else + local.get $$t28 + end + local.set $$t29 + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t25 + else + local.get $$t30 + end + local.set $$t28 + i32.const 6 + local.set $$current_block + local.get $$t26.1 + local.set $$t31 + local.get $$t31 + local.get $$t21 + i32.ge_u + local.set $$t32 + local.get $$t32 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t26.1 + local.set $$t33 + local.get $$t33 + local.get $$t21 + i32.eq + local.set $$t34 + local.get $$t34 + if + br $$Block_8 + else + br $$Block_10 + end + end + i32.const 8 + local.set $$current_block + global.get $$knr_freep + local.set $$t35 + local.get $$t28 + local.get $$t35 + i32.eq + local.set $$t36 + local.get $$t36 + if + br $$Block_11 + else + br $$Block_12 + end + end + i32.const 9 + local.set $$current_block + local.get $$t26.0 + local.set $$t37 + local.get $$t37 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t38.1 + local.set $$t38.0 + local.get $$t29 + local.get $$t38.0 + local.get $$t38.1 + call $runtime.knr_setBlockHeader + br $$Block_9 + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t28 + else + local.get $$t39 + end + local.set $$t40 + i32.const 10 + local.set $$current_block + local.get $$t29 + global.set $$knr_freep + local.get $$t40 + i32.const 8 + i32.add + local.set $$t41 + local.get $$t41 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $$t26.1 + local.set $$t42 + local.get $$t42 + local.get $$t21 + i32.sub + local.set $$t43 + local.get $$t43 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t44.1 + local.set $$t44.0 + local.get $$t28 + local.get $$t44.0 + local.get $$t44.1 + call $runtime.knr_setBlockHeader + local.get $$t26.1 + local.set $$t45 + local.get $$t45 + i32.const 8 + i32.mul + local.set $$t46 + local.get $$t28 + local.get $$t46 + i32.add + local.set $$t39 + local.get $$t39 + call $runtime.knr_getBlockHeader + local.set $$t47.1 + local.set $$t47.0 + local.get $$t47.0 + local.get $$t47.1 + local.set $$t26.1 + local.set $$t26.0 + local.get $$t21 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t48.1 + local.set $$t48.0 + local.get $$t39 + local.get $$t48.0 + local.get $$t48.1 + call $runtime.knr_setBlockHeader + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t49.1 + local.set $$t49.0 + local.get $$t49.0 + local.get $$t49.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t26.0 + local.set $$t30 + local.get $$t30 + call $runtime.knr_getBlockHeader + local.set $$t50.1 + local.set $$t50.0 + local.get $$t50.0 + local.get $$t50.1 + local.set $$t26.1 + local.set $$t26.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + ) + (func $$void.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$void.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + call_indirect 0 (type $$onFree) + ) + (func $$i`0`.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapNode.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 9 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapImp.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 11 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapIter.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 12 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$array1.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $runtime.next_rune (param $iter.0 i32) (param $iter.1 i32) (param $iter.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$ret_2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101 i32) + (local $$t102 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106 i32) + (local $$t107 i32) + (local $$t108 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110 i32) + (local $$t111 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116 i32) + (local $$t117 i32) + (local $$t118 i32) + (local $$t119 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121 i32) + (local $$t122 i32) + (local $$t123 i32) + (local $$t124 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126 i32) + (local $$t127 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $iter.0 + i32.store + local.get $$t0.1 + local.get $iter.1 + i32.store offset=4 + local.get $$t0.1 + local.get $iter.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.ge_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + i32.const 0 + local.set $$ret_0 + local.get $$t7 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + local.get $$t9 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + local.set $$t12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t14 + local.set $$t15 + local.get $$t12 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t16 + call $runtime.get_u8 + local.set $$t17 + local.get $$t17 + local.set $$t18 + local.get $$t18 + i32.const 128 + i32.and + local.set $$t19 + local.get $$t19 + i32.const 0 + i32.eq + local.set $$t20 + local.get $$t20 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.load + local.set $$t22 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t24 + i32.const 1 + i32.add + local.set $$t25 + i32.const 1 + local.set $$ret_0 + local.get $$t22 + local.set $$ret_1 + local.get $$t18 + local.set $$ret_2 + local.get $$t25 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t18 + i32.const 224 + i32.and + local.set $$t26 + local.get $$t26 + i32.const 192 + i32.eq + local.set $$t27 + local.get $$t27 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t18 + i32.const 31 + i32.and + local.set $$t28 + local.get $$t28 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t29 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t32 + local.get $$t35 + i32.add + local.set $$t36 + local.get $$t36 + i32.const 1 + i32.add + local.set $$t37 + local.get $$t37 + call $runtime.get_u8 + local.set $$t38 + local.get $$t38 + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t29 + local.get $$t40 + i32.or + local.set $$t43 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.add + local.set $$t46 + i32.const 1 + local.set $$ret_0 + local.get $$t42 + local.set $$ret_1 + local.get $$t43 + local.set $$ret_2 + local.get $$t46 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $$t18 + i32.const 240 + i32.and + local.set $$t47 + local.get $$t47 + i32.const 224 + i32.eq + local.set $$t48 + local.get $$t48 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t18 + i32.const 15 + i32.and + local.set $$t49 + local.get $$t49 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t50 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.set $$t52 + local.get $$t52 + local.set $$t53 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.1 + i32.load + local.set $$t55 + local.get $$t55 + local.set $$t56 + local.get $$t53 + local.get $$t56 + i32.add + local.set $$t57 + local.get $$t57 + i32.const 1 + i32.add + local.set $$t58 + local.get $$t58 + call $runtime.get_u8 + local.set $$t59 + local.get $$t59 + local.set $$t60 + local.get $$t60 + i32.const 63 + i32.and + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t63.1 + i32.load + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.load + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t65 + local.get $$t68 + i32.add + local.set $$t69 + local.get $$t69 + i32.const 2 + i32.add + local.set $$t70 + local.get $$t70 + call $runtime.get_u8 + local.set $$t71 + local.get $$t71 + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + local.get $$t74.1 + i32.load + local.set $$t75 + local.get $$t50 + local.get $$t62 + i32.or + local.set $$t76 + local.get $$t76 + local.get $$t73 + i32.or + local.set $$t77 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + local.get $$t78.1 + i32.load + local.set $$t79 + local.get $$t79 + i32.const 3 + i32.add + local.set $$t80 + i32.const 1 + local.set $$ret_0 + local.get $$t75 + local.set $$ret_1 + local.get $$t77 + local.set $$ret_2 + local.get $$t80 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t18 + i32.const 248 + i32.and + local.set $$t81 + local.get $$t81 + i32.const 240 + i32.eq + local.set $$t82 + local.get $$t82 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t18 + i32.const 7 + i32.and + local.set $$t83 + local.get $$t83 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t84 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.1 + i32.load + local.set $$t86 + local.get $$t86 + local.set $$t87 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.load + local.set $$t89 + local.get $$t89 + local.set $$t90 + local.get $$t87 + local.get $$t90 + i32.add + local.set $$t91 + local.get $$t91 + i32.const 1 + i32.add + local.set $$t92 + local.get $$t92 + call $runtime.get_u8 + local.set $$t93 + local.get $$t93 + local.set $$t94 + local.get $$t94 + i32.const 63 + i32.and + local.set $$t95 + local.get $$t95 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t96 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t97.1 + i32.load + local.set $$t98 + local.get $$t98 + local.set $$t99 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $$t100.1 + i32.load + local.set $$t101 + local.get $$t101 + local.set $$t102 + local.get $$t99 + local.get $$t102 + i32.add + local.set $$t103 + local.get $$t103 + i32.const 2 + i32.add + local.set $$t104 + local.get $$t104 + call $runtime.get_u8 + local.set $$t105 + local.get $$t105 + local.set $$t106 + local.get $$t106 + i32.const 63 + i32.and + local.set $$t107 + local.get $$t107 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t108 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.1 + i32.load + local.set $$t110 + local.get $$t110 + local.set $$t111 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.1 + i32.load + local.set $$t113 + local.get $$t113 + local.set $$t114 + local.get $$t111 + local.get $$t114 + i32.add + local.set $$t115 + local.get $$t115 + i32.const 3 + i32.add + local.set $$t116 + local.get $$t116 + call $runtime.get_u8 + local.set $$t117 + local.get $$t117 + local.set $$t118 + local.get $$t118 + i32.const 63 + i32.and + local.set $$t119 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + local.get $$t120.1 + i32.load + local.set $$t121 + local.get $$t84 + local.get $$t96 + i32.or + local.set $$t122 + local.get $$t122 + local.get $$t108 + i32.or + local.set $$t123 + local.get $$t123 + local.get $$t119 + i32.or + local.set $$t124 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.load + local.set $$t126 + local.get $$t126 + i32.const 4 + i32.add + local.set $$t127 + i32.const 1 + local.set $$ret_0 + local.get $$t121 + local.set $$ret_1 + local.get $$t124 + local.set $$ret_2 + local.get $$t127 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + i32.const 0 + local.set $$ret_3 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$ret_2 + local.get $$ret_3 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + ) + (func $$wa.runtime.string_Comp (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $x.0 + local.get $x.1 + local.get $x.2 + call $$wa.runtime.string_to_iter + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0 + local.get $$t0.1 + local.get $$t1.0 + i32.store + local.get $$t0.1 + local.get $$t1.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t1.2 + i32.store offset=8 + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_to_iter + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + local.get $$t2.1 + local.get $$t3.0 + i32.store + local.get $$t2.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t3.2 + i32.store offset=8 + br $$Block_0 + end + i32.const 1 + local.set $$current_block + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $runtime.next_rune + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0 + local.get $$t5.0 + local.set $$t6 + local.get $$t5.1 + local.set $$t7 + local.get $$t5.2 + local.set $$t8 + local.get $$t5.3 + local.set $$t9 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + local.get $$t9 + i32.store + local.get $$t2.1 + i32.load + local.get $$t2.1 + i32.load offset=4 + local.get $$t2.1 + i32.load offset=8 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + call $runtime.next_rune + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.set $$t12.0 + local.get $$t12.0 + local.set $$t13 + local.get $$t12.1 + local.set $$t14 + local.get $$t12.2 + local.set $$t15 + local.get $$t12.3 + local.set $$t16 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 8 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + local.get $$t16 + i32.store + local.get $$t6 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $x.2 + local.set $$t18 + local.get $y.2 + local.set $$t19 + local.get $$t18 + local.get $$t19 + i32.lt_s + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.lt_s + local.set $$t21 + local.get $$t21 + if + br $$Block_5 + else + br $$Block_6 + end + end + i32.const 4 + local.set $$current_block + br $$Block_4 + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t22 + i32.const 5 + local.set $$current_block + local.get $$t22 + i32.const 1 + i32.eq + i32.eqz + local.set $$t23 + local.get $$t23 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.gt_s + local.set $$t24 + local.get $$t24 + if + br $$Block_7 + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 9 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $$t18 + local.get $$t19 + i32.gt_s + local.set $$t25 + local.get $$t25 + if + br $$Block_10 + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + ) + (func $math.Sqrt (param $x f64) (result f64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f64) + (local $$t0 f64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + call $$math.waSqrtF64 + local.set $$t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $math.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.GetFramebuffer (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 160 + i32.const 6400 + i32.const 6400 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.get $$t0.2 + local.get $$t0.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetMouseX (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 26 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load16_u + local.set $$t2 + local.get $$t2 + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetMouseY (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 28 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load16_u + local.set $$t2 + local.get $$t2 + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $syscall$wasm4.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $syscall$wasm4.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$u8.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $$w4app.Framebuffer.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 15 + call_indirect 0 (type $$onFree) + ) + (func $w4app.FramebufferInstance (export "w4app.FramebufferInstance") (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 16 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + call $syscall$wasm4.GetFramebuffer + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t1.1 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t1.1 + local.get $$t2.1 + i32.store offset=4 + local.get $$t1.1 + local.get $$t2.2 + i32.store offset=8 + local.get $$t1.1 + local.get $$t2.3 + i32.store offset=12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + ) + (func $$w4app.BitImage.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + i32.add + i32.const 15 + call_indirect 0 (type $$onFree) + ) + (func $w4app.NewBitImage (export "w4app.NewBitImage") (param $w i32) (param $h i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 40 + call $runtime.HeapAlloc + i32.const 1 + i32.const 17 + i32.const 24 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $w + local.get $h + i32.mul + local.set $$t4 + local.get $$t4 + i32.const 8 + i32.div_s + local.set $$t5 + local.get $$t5 + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t5 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.get $$t5 + local.get $$t5 + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t1.1 + local.get $w + i32.store + local.get $$t2.1 + local.get $h + i32.store + local.get $$t3.1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t3.1 + local.get $$t6.1 + i32.store offset=4 + local.get $$t3.1 + local.get $$t6.2 + i32.store offset=8 + local.get $$t3.1 + local.get $$t6.3 + i32.store offset=12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $w4app.StepGame (export "w4app.StepGame") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 + end + i32.const 0 + local.set $$current_block + call $syscall$wasm4.GetMouseX + local.set $$t0 + local.get $$t0 + i32.const 0 + i32.gt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_2 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 14904 + local.get $$t0 + i32.store + br $$Block_1 + end + i32.const 2 + local.set $$current_block + call $syscall$wasm4.GetMouseY + local.set $$t2 + local.get $$t2 + i32.const 0 + i32.gt_s + local.set $$t3 + local.get $$t3 + if + br $$Block_5 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + i32.const 14916 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.sub + local.set $$t5 + local.get $$t0 + local.get $$t5 + i32.lt_s + local.set $$t6 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + i32.const 14908 + local.get $$t2 + i32.store + br $$Block_4 + end + i32.const 5 + local.set $$current_block + br $$Block_8 + end + i32.const 6 + local.set $$current_block + i32.const 14912 + i32.load + local.set $$t7 + local.get $$t7 + i32.const 1 + i32.sub + local.set $$t8 + local.get $$t2 + local.get $$t8 + i32.lt_s + local.set $$t9 + local.get $$t9 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + br $$Block_11 + end + i32.const 8 + local.set $$current_block + i32.const 14888 + i32.load + call $runtime.Block.Retain + i32.const 14888 + i32.load offset=4 + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.0 + local.get $$t10.1 + call $w4app.drawFrambuffer + br $$BlockFnBody + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t11 + end + local.set $$t12 + i32.const 9 + local.set $$current_block + i32.const 14916 + i32.load + local.set $$t13 + local.get $$t12 + local.get $$t13 + i32.lt_s + local.set $$t14 + local.get $$t14 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + i32.const 14904 + i32.load + local.set $$t15 + i32.const 14908 + i32.load + local.set $$t16 + local.get $$t12 + local.get $$t17 + local.get $$t15 + local.get $$t16 + call $w4app.genColorGray + local.set $$t18 + local.get $$t18 + i32.const 0 + i32.eq + i32.eqz + local.set $$t19 + local.get $$t19 + if + br $$Block_12 + else + br $$Block_14 + end + end + i32.const 11 + local.set $$current_block + local.get $$t12 + i32.const 1 + i32.add + local.set $$t11 + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t20 + end + local.set $$t17 + i32.const 12 + local.set $$current_block + i32.const 14912 + i32.load + local.set $$t21 + local.get $$t17 + local.get $$t21 + i32.lt_s + local.set $$t22 + local.get $$t22 + if + i32.const 10 + local.set $$block_selector + br $$BlockDisp + else + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 14888 + i32.load + call $runtime.Block.Retain + i32.const 14888 + i32.load offset=4 + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.get $$t12 + local.get $$t17 + i32.const 1 + call $w4app.BitImage.Set + br $$Block_13 + end + i32.const 14 + local.set $$current_block + local.get $$t17 + i32.const 1 + i32.add + local.set $$t20 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 15 + local.set $$current_block + i32.const 14888 + i32.load + call $runtime.Block.Retain + i32.const 14888 + i32.load offset=4 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t12 + local.get $$t17 + i32.const 0 + call $w4app.BitImage.Set + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + ) + (func $w4app.Update (export "update") + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + call $w4app.StepGame + br $$BlockFnBody + end + end + end + ) + (func $w4app._sq (param $x f32) (result f32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f32) + (local $$t0 f32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + local.get $x + f32.mul + local.set $$t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4app._sqrt (param $x f32) (result f32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 f32) + (local $$t0 f64) + (local $$t1 f64) + (local $$t2 f32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + f64.promote_f32 + local.set $$t0 + local.get $$t0 + call $math.Sqrt + local.set $$t1 + local.get $$t1 + f32.demote_f64 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4app.clearBit (param $n i32) (param $pos i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + local.get $pos + i32.shl + local.set $$t0 + i32.const -1 + local.get $$t0 + i32.xor + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $n + local.get $$t2 + i32.and + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4app.drawFrambuffer (param $m.0 i32) (param $m.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t0 + end + local.set $$t1 + i32.const 3 + local.set $$current_block + i32.const 14916 + i32.load + local.set $$t2 + local.get $$t1 + local.get $$t2 + i32.lt_s + local.set $$t3 + local.get $$t3 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $m.0 + local.get $m.1 + local.get $$t1 + local.get $$t4 + call $w4app.BitImage.At + local.set $$t5 + local.get $$t5 + if + br $$Block_6 + else + br $$Block_8 + end + end + i32.const 5 + local.set $$current_block + local.get $$t1 + i32.const 1 + i32.add + local.set $$t0 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t6 + end + local.set $$t4 + i32.const 6 + local.set $$current_block + i32.const 14912 + i32.load + local.set $$t7 + local.get $$t4 + local.get $$t7 + i32.lt_s + local.set $$t8 + local.get $$t8 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + i32.const 14896 + i32.load + call $runtime.Block.Retain + i32.const 14896 + i32.load offset=4 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.get $$t1 + local.get $$t4 + i32.const 4 + call $w4app.Framebuffer.Set + br $$Block_7 + end + i32.const 8 + local.set $$current_block + local.get $$t4 + i32.const 1 + i32.add + local.set $$t6 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 9 + local.set $$current_block + i32.const 14896 + i32.load + call $runtime.Block.Retain + i32.const 14896 + i32.load offset=4 + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.0 + local.get $$t10.1 + local.get $$t1 + local.get $$t4 + i32.const 2 + call $w4app.Framebuffer.Set + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + ) + (func $w4app.genColorGray (param $i i32) (param $j i32) (param $center_x i32) (param $center_y i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 f32) + (local $$t2 f32) + (local $$t3 f32) + (local $$t4 f32) + (local $$t5 f32) + (local $$t6 f32) + (local $$t7 f32) + (local $$t8 f32) + (local $$t9 f32) + (local $$t10 f32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 f32) + (local $$t14 f32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 f32) + (local $$t19 f32) + (local $$t20 f32) + (local $$t21 f32) + (local $$t22 f32) + (local $$t23 f32) + (local $$t24 f32) + (local $$t25 f32) + (local $$t26 f32) + (local $$t27 f32) + (local $$t28 f32) + (local $$t29 f32) + (local $$t30 f32) + (local $$t31 f32) + (local $$t32 f32) + (local $$t33 f32) + (local $$t34 f32) + (local $$t35 f32) + (local $$t36 f32) + (local $$t37 i32) + (local $$t38 f32) + (local $$t39 f32) + (local $$t40 f32) + (local $$t41 f32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + i32.const 14916 + i32.load + local.set $$t0 + local.get $i + f32.convert_i32_s + local.set $$t1 + local.get $center_x + f32.convert_i32_s + local.set $$t2 + local.get $$t1 + local.get $$t2 + f32.sub + local.set $$t3 + local.get $$t3 + call $w4app._sq + local.set $$t4 + local.get $j + f32.convert_i32_s + local.set $$t5 + local.get $center_y + f32.convert_i32_s + local.set $$t6 + local.get $$t5 + local.get $$t6 + f32.sub + local.set $$t7 + local.get $$t7 + call $w4app._sq + local.set $$t8 + local.get $$t4 + local.get $$t8 + f32.add + local.set $$t9 + local.get $$t9 + call $w4app._sqrt + local.set $$t10 + local.get $$t0 + i32.const 2 + i32.div_s + local.set $$t11 + local.get $$t11 + i32.const 2 + i32.div_s + local.set $$t12 + local.get $$t12 + f32.convert_i32_s + local.set $$t13 + local.get $$t10 + local.get $$t13 + f32.div + local.set $$t14 + local.get $$t14 + f32.const 1 + f32.lt + local.set $$t15 + local.get $$t15 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $i + local.get $center_x + i32.sub + local.set $$t16 + local.get $j + local.get $center_y + i32.sub + local.set $$t17 + local.get $$t14 + call $w4app._sq + local.set $$t18 + f32.const 1 + local.get $$t18 + f32.sub + local.set $$t19 + local.get $$t19 + call $w4app._sqrt + local.set $$t20 + i32.const 3 + f32.convert_i32_s + local.set $$t21 + local.get $$t14 + local.get $$t21 + f32.div + local.set $$t22 + local.get $$t22 + call $w4app._sq + local.set $$t23 + f32.const 1 + local.get $$t23 + f32.sub + local.set $$t24 + local.get $$t24 + call $w4app._sqrt + local.set $$t25 + local.get $$t20 + local.get $$t25 + f32.mul + local.set $$t26 + local.get $$t14 + call $w4app._sq + local.set $$t27 + i32.const 3 + f32.convert_i32_s + local.set $$t28 + local.get $$t27 + local.get $$t28 + f32.div + local.set $$t29 + local.get $$t26 + local.get $$t29 + f32.add + local.set $$t30 + i32.const 3 + f32.convert_i32_s + local.set $$t31 + local.get $$t30 + local.get $$t31 + f32.mul + local.set $$t32 + local.get $$t16 + f32.convert_i32_s + local.set $$t33 + local.get $$t33 + local.get $$t32 + f32.div + local.set $$t34 + local.get $center_x + f32.convert_i32_s + local.set $$t35 + local.get $$t34 + local.get $$t35 + f32.add + local.set $$t36 + local.get $$t36 + i32.trunc_f32_s + local.set $$t37 + local.get $$t17 + f32.convert_i32_s + local.set $$t38 + local.get $$t38 + local.get $$t32 + f32.div + local.set $$t39 + local.get $center_y + f32.convert_i32_s + local.set $$t40 + local.get $$t39 + local.get $$t40 + f32.add + local.set $$t41 + local.get $$t41 + i32.trunc_f32_s + local.set $$t42 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $i + else + local.get $$t37 + end + local.set $$t43 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $j + else + local.get $$t42 + end + local.set $$t44 + i32.const 2 + local.set $$current_block + local.get $$t0 + i32.const 2 + i32.div_s + local.set $$t45 + local.get $$t45 + i32.const 8 + i32.div_s + local.set $$t46 + local.get $$t43 + local.get $$t46 + i32.div_s + local.set $$t47 + local.get $$t0 + i32.const 2 + i32.div_s + local.set $$t48 + local.get $$t48 + i32.const 8 + i32.div_s + local.set $$t49 + local.get $$t44 + local.get $$t49 + i32.div_s + local.set $$t50 + local.get $$t47 + local.get $$t50 + i32.add + local.set $$t51 + local.get $$t51 + i32.const 2 + i32.rem_s + local.set $$t52 + local.get $$t52 + i32.const 255 + i32.mul + local.set $$t53 + local.get $$t53 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4app.hasBit (param $n i32) (param $pos i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + local.get $pos + i32.shl + local.set $$t0 + local.get $n + local.get $$t0 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4app.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $w4app.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $w4app.init$guard + call $runtime.init + call $math.init + call $syscall$wasm4.init + i32.const 14916 + i32.load + local.set $$t1 + i32.const 14912 + i32.load + local.set $$t2 + local.get $$t1 + local.get $$t2 + call $w4app.NewBitImage + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + i32.const 14888 + local.get $$t3.0 + call $runtime.Block.Retain + i32.const 14888 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14888 + local.get $$t3.1 + i32.store offset=4 + call $w4app.FramebufferInstance + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + i32.const 14896 + local.get $$t4.0 + call $runtime.Block.Retain + i32.const 14896 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14896 + local.get $$t4.1 + i32.store offset=4 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + ) + (func $w4app.setBit (param $n i32) (param $pos i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + local.get $pos + i32.shl + local.set $$t0 + local.get $n + local.get $$t0 + i32.or + local.set $$t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4app.BitImage.At (param $this.0 i32) (param $this.1 i32) (param $x i32) (param $y i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $y + local.get $$t1 + i32.mul + local.set $$t2 + local.get $$t2 + local.get $x + i32.add + local.set $$t3 + local.get $$t3 + i32.const 8 + i32.div_s + local.set $$t4 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + call $runtime.Block.Retain + local.get $$t5.1 + i32.load offset=4 + local.get $$t5.1 + i32.load offset=8 + local.get $$t5.1 + i32.load offset=12 + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + local.get $$t4 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load8_u align=1 + local.set $$t8 + local.get $$t8 + local.set $$t9 + local.get $x + i32.const 8 + i32.rem_s + local.set $$t10 + local.get $$t10 + local.set $$t11 + local.get $$t9 + local.get $$t11 + call $w4app.hasBit + local.set $$t12 + local.get $$t12 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + ) + (func $w4app.BitImage.Set (param $this.0 i32) (param $this.1 i32) (param $x i32) (param $y i32) (param $c i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t14.2 i32) + (local $$t14.3 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t26.2 i32) + (local $$t26.3 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t29.2 i32) + (local $$t29.3 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 0 + i32.lt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_4 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $y + local.get $$t2 + i32.mul + local.set $$t3 + local.get $$t3 + local.get $x + i32.add + local.set $$t4 + local.get $$t4 + i32.const 8 + i32.div_s + local.set $$t5 + local.get $c + if + br $$Block_5 + else + br $$Block_7 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $y + local.get $$t7 + i32.ge_s + local.set $$t8 + local.get $$t8 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $y + i32.const 0 + i32.lt_s + local.set $$t9 + local.get $$t9 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $x + local.get $$t11 + i32.ge_s + local.set $$t12 + local.get $$t12 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + call $runtime.Block.Retain + local.get $$t13.1 + i32.load offset=4 + local.get $$t13.1 + i32.load offset=8 + local.get $$t13.1 + i32.load offset=12 + local.set $$t14.3 + local.set $$t14.2 + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + call $runtime.Block.Retain + local.get $$t16.1 + i32.load offset=4 + local.get $$t16.1 + i32.load offset=8 + local.get $$t16.1 + i32.load offset=12 + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + i32.load8_u align=1 + local.set $$t19 + local.get $$t19 + local.set $$t20 + local.get $x + i32.const 8 + i32.rem_s + local.set $$t21 + local.get $$t21 + local.set $$t22 + local.get $$t20 + local.get $$t22 + call $w4app.setBit + local.set $$t23 + local.get $$t23 + i32.const 255 + i32.and + local.set $$t24 + local.get $$t15.1 + local.get $$t24 + i32.store8 align=1 + br $$Block_6 + end + i32.const 7 + local.set $$current_block + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.1 + i32.load + call $runtime.Block.Retain + local.get $$t25.1 + i32.load offset=4 + local.get $$t25.1 + i32.load offset=8 + local.get $$t25.1 + i32.load offset=12 + local.set $$t26.3 + local.set $$t26.2 + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load + call $runtime.Block.Retain + local.get $$t28.1 + i32.load offset=4 + local.get $$t28.1 + i32.load offset=8 + local.get $$t28.1 + i32.load offset=12 + local.set $$t29.3 + local.set $$t29.2 + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load8_u align=1 + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $x + i32.const 8 + i32.rem_s + local.set $$t33 + local.get $$t33 + local.set $$t34 + local.get $$t32 + local.get $$t34 + call $w4app.clearBit + local.set $$t35 + local.get $$t35 + i32.const 255 + i32.and + local.set $$t36 + local.get $$t27.1 + local.get $$t36 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + ) + (func $w4app.Framebuffer.Set (param $this.0 i32) (param $this.1 i32) (param $x i32) (param $y i32) (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $y + i32.const 160 + i32.mul + local.set $$t0 + local.get $$t0 + local.get $x + i32.add + local.set $$t1 + local.get $$t1 + i32.const 4 + i32.div_s + local.set $$t2 + local.get $x + i32.const 4 + i32.rem_s + local.set $$t3 + local.get $$t3 + i32.const 2 + i32.mul + local.set $$t4 + local.get $$t4 + i32.const 255 + i32.and + local.set $$t5 + i32.const 3 + local.get $$t5 + i32.shl + i32.const 255 + i32.and + local.set $$t6 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load + call $runtime.Block.Retain + local.get $$t7.1 + i32.load offset=4 + local.get $$t7.1 + i32.load offset=8 + local.get $$t7.1 + i32.load offset=12 + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 1 + local.get $$t2 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $v + local.get $$t5 + i32.shl + i32.const 255 + i32.and + local.set $$t10 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.load + call $runtime.Block.Retain + local.get $$t11.1 + i32.load offset=4 + local.get $$t11.1 + i32.load offset=8 + local.get $$t11.1 + i32.load offset=12 + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 1 + local.get $$t2 + i32.mul + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load8_u align=1 + local.set $$t14 + i32.const -1 + local.get $$t6 + i32.xor + i32.const 255 + i32.and + local.set $$t15 + local.get $$t14 + local.get $$t15 + i32.and + local.set $$t16 + local.get $$t10 + local.get $$t16 + i32.or + local.set $$t17 + local.get $$t9.1 + local.get $$t17 + i32.store8 align=1 + br $$BlockFnBody + end + end + end + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + ) + (func $_start (export "_start") + call $w4app.init + ) + (func $_main (export "_main")) + (data (i32.const 14784) "\24\24\77\61\64\73\24\24\9b\1a\86\a0\49\fa\a8\bd\05\3f\4e\7b\9d\ee\21\3e\c6\4b\ac\7e\4f\7e\92\be\f5\44\c8\19\a0\01\fa\3e\91\4f\c1\16\6c\c1\56\bf\4b\55\55\55\55\55\a5\3f\cd\9c\d1\1f\fd\d8\e5\3d\5d\1f\29\a9\e5\e5\5a\be\a1\48\7d\56\e3\1d\c7\3e\03\df\bf\19\a0\01\2a\bf\d0\f7\10\11\11\11\81\3f\48\55\55\55\55\55\c5\bf\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\50\00\00\00\50\00\00\00\a0\00\00\00\a0\00\00\00\30\61\73\73\65\72\74\20\66\61\69\6c\65\64\20\28\61\73\73\65\72\74\20\66\61\69\6c\65\64\3a\20\6e\69\6c\20\6d\61\70\2e\6d\61\70\2e\77\61\3a\32\30\3a\38\70\61\6e\69\63\3a\20\74\72\75\65\66\61\6c\73\65\4e\61\4e\2b\49\6e\66\2d\49\6e\66\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\0a\5b\2f\5d\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\01\00\00\00\ff\ff\ff\ff\f0\3a\00\00") + (elem (i32.const 1) $$string.$$compAddr) + (elem (i32.const 2) $$u8.$$block.$$onFree) + (elem (i32.const 3) $$string.underlying.$$onFree) + (elem (i32.const 4) $$void.$$block.$$onFree) + (elem (i32.const 5) $$void.$ref.underlying.$$onFree) + (elem (i32.const 6) $$i`0`.underlying.$$onFree) + (elem (i32.const 7) $$runtime.mapNode.$$onFree) + (elem (i32.const 8) $$runtime.mapNode.$$block.$$onFree) + (elem (i32.const 9) $$runtime.mapNode.$slice.underlying.$$onFree) + (elem (i32.const 10) $$runtime.mapImp.$$onFree) + (elem (i32.const 11) $$runtime.mapImp.$$block.$$onFree) + (elem (i32.const 12) $$runtime.mapImp.$ref.underlying.$$onFree) + (elem (i32.const 13) $$runtime.mapIter.$$onFree) + (elem (i32.const 14) $$runtime.mapNode.$array1.underlying.$$onFree) + (elem (i32.const 15) $$u8.$slice.underlying.$$onFree) + (elem (i32.const 16) $$w4app.Framebuffer.$$onFree) + (elem (i32.const 17) $$w4app.BitImage.$$onFree) +) diff --git a/w4-magnifying-glass/wasm4.css b/w4-magnifying-glass/wasm4.css new file mode 100644 index 00000000..7c7e0155 --- /dev/null +++ b/w4-magnifying-glass/wasm4.css @@ -0,0 +1 @@ +html,body{height:100%;margin:0}@font-face{font-family:wasm4-font;src:url(data:font/woff2;base64,d09GMgABAAAAAAegAA0AAAAAKHwAAAdOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYGYAA0CAQRCArGHLlRC4FCAAE2AiQDgUIEIAWDJgcgG4ggUVRQhkQRbBylAWCR/eGAmzBgcbVSEQV1MFRs8Ts/TVirjdcmzZum+foZqYGq4TdA2FbzSDx8f5+ee7Ns74fim/BWoE4AP1Wwc6lakA20VO54RMrR2gpfsF97s/P3xKMD8UIkBZNFk2ondPz/n9v9G4ROvGcJ9ejaJw8RK4kYUOt8zO4KgUDgofBQGDwMCjsf2FAHKMuSxfQKGICKTqpw8TAYfHywFNs02zbbJDAgUAD+z7l4byADjcSJjXhAkX+V15z5PA0HfmEHdHqW5OfXT1PsVLlV5AkPgm14EPW/1ds0nWuhRkHhmb/7JBfdZazTpbTGMrxynHPs9XO634fF7LHGGYvKrld7xSsgpTyfJqABJJGiNEP0JXXyPy/gUd+Oq0QckHKAEocXne/KDv7oOwSG0MMrDDRgQ0HCAFZ0Ar7LFhgi+t39/2Lzv/+fFLDLD/G/EugBH+CBbj+wXA/giv6ofkm3ZAqiNhrXlgkd4AIQwJg18/ES0QEKIZXedNDpbH9FmDzLD3D97q2rzT3TRXdngPKMRazVYXWiUtlpVnZTprWt4J6wbQiLK7o/u+vhZr91OWHc2/gH+Qyq505NGWB7ui1DWkl94VWLPsznaf1Socl++32X0B1fLASbyLYi6TAO6LlJoPwXg5YAIDQZ2GxXd7yaLzKdTNrAjkIbD1Sca4fUrWmNr+IUViUJVbuuu66KDZXmnH4fMCQ5ukPCRJDdgit52b4Et5RuCK2ZjuBXWu6K6zJkW4qAxA6Y0BWJpS9UgZPLQ3iSuQWAodKrD1VK44bhgApzKGely9pyBS45qWsGAx7ELrGRNkqZX2rpG1no3KgrF9zv29HXdcAmEYpTeqXQunmcM1KNLri1l3ETKhr/jkuZpYQWCtMUkAOA+G31Ezc8TlQCcX0AFiJM8A/Ja5ANNF3s+Aj1HaR91PPZwCslbEBH81Bta7KBGjhAdpteqxIHxKrVrglxhbYG0qRrxPwYd+RA3LtpvfDZhqQKKExdOI4SSCr8hboPCCdUxuYcsLQ2TWw8XO+W8S8kg28tTsGhGLgAGRwq7qpSd5XiJn8+0m7km8BBpAhQ5rqdtpQ58nsk6UVIA1DbFmX+klm8NFI+mk+Ll5BXDAY1ZsGRNeDGIUiLnIISx8u1n++kPlx5KbJLJOSiIDP1dfY4drhKlPE7oTwc9gEI5vBFDpQ2ih/QCB4V+GrFeAMbdFltBSpSqZm9jTuVVM1CVTyG+Haj1uZhNOXIU0xda+WccPIV0vAyy13AXHS7odKqX6lPnNQW29uptFF7hjud+bei1obGQ3mmpvE7YI+21Nlt7iq+tVb3XTcUFG5q31u2uVI1qvk971yZ+/NvzpZV1dNa7Wrems+vXZ7G0bjYrBMdM44xvrdfytxyouoAmPMIUnc0H1njzFfrgVdARZ2VnWXVw+0qv/fX8iYj698zzrSTOlorbpYF7dsMJFE7yW5kV/NV/wwJ/6VW+S3vk6u7s/frQR4kpi7JSQUksyJhl0BSNPS65eUmD+i8UGEYHhd5zmQA0oU5xN+qs8fdwfJZAQaqNDFTgSowOASAVTi4nNRD5CwJVyFK13cHxDEeWVQDvZU3CfsgXuwhIGxxAGE3sxM1QNCL5oTRpAtVec0/pJXNfeLQLO+973quQzeYBhK7GMFx18+4DtE1AX90lFeaawcfPwKbh9CZncWGRig514Ca6r5aIcMk1u7R7OyRfIjVldpkv/8QTig8xMfDoNqXMmPq6rWqoKMWvmXNIhNcLI1TokIhQLNwOGTfZxXWtBtNJFOwSQNl+3DGVwiBVU4+Oq0FeJi5E8VTE1ABD05R60ZWTc49DS4M1nMCCzmZSm7M8UWDSoiGvZPrWrGYd4bKvbh8oXu1Pnv2vrfKud0bz5t2kT7Ti8FNP4L9IJy/PdAULtKZAlxz2FahwUZvcI6aZm61UI4qEJ3XUpHb3NZcIBs7HYrbHf7GgFYvCv4JTMlVK5o9e10zmwVpEoUbhD8pWxVbCX6xdKM4RGTiZ/2PaYEZMh7uAHi1vTTwNaeeqsmWeoX+fERAY8Dlq8IlZUVTrzi35D7ANkN8liq6UConAkh2mBUCA+jNZ4cnuXvJDuFGvEUlaWfzT5MjGonslkNYRjXtmwJEQgbrm1xCr4/AZMWbVPGZ3SvOH9q/AaXqXNGRhP+VuL2mvmu8/zv9BnB5l14cMu1MBSJ04++6QDnTv1bPp6oZnRul1ORTFVkMUlS1LsSh2h2L41VW44wWXcvRhJYwoLfn7pCnX7rB3Zs4otOwC568tbQs/egw8kfbjvhpM06nOc/rWqbg7EicnAydmY7O4nomxNHJws4WxYXFJFGl55716GhGRqqjKI9kp3x0+aiPQqzthaSFKiR6LmZAzFysLXdGb3rZfIi6TEU7jgcy2geINtNWQpaBCnYWTmxqWDw0wzgfrJvzphPhoIstcvGIzuZO4UN1requPbF1HWhqLtgPf3YiwnTA/xIgKAA=)} diff --git a/w4-magnifying-glass/wasm4.js b/w4-magnifying-glass/wasm4.js new file mode 100644 index 00000000..e13db97d --- /dev/null +++ b/w4-magnifying-glass/wasm4.js @@ -0,0 +1,360 @@ +var wasm4=function(A){"use strict";/** + * @license + * Copyright 2019 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */var ve;const pt=globalThis,_t=pt.ShadowRoot&&(pt.ShadyCSS===void 0||pt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,St=Symbol(),Dt=new WeakMap;let Nt=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==St)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(_t&&t===void 0){const s=e!==void 0&&e.length===1;s&&(t=Dt.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&Dt.set(e,t))}return t}toString(){return this.cssText}};const _e=o=>new Nt(typeof o=="string"?o:o+"",void 0,St),ft=(o,...t)=>{const e=o.length===1?o[0]:t.reduce((s,i,n)=>s+(r=>{if(r._$cssResult$===!0)return r.cssText;if(typeof r=="number")return r;throw Error("Value passed to 'css' function must be a 'css' function result: "+r+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+o[n+1],o[0]);return new Nt(e,o,St)},Se=(o,t)=>{if(_t)o.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(const e of t){const s=document.createElement("style"),i=pt.litNonce;i!==void 0&&s.setAttribute("nonce",i),s.textContent=e.cssText,o.appendChild(s)}},Bt=_t?o=>o:o=>o instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return _e(e)})(o):o;/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const{is:xe,defineProperty:ke,getOwnPropertyDescriptor:Ce,getOwnPropertyNames:Te,getOwnPropertySymbols:Pe,getPrototypeOf:$e}=Object,U=globalThis,Ft=U.trustedTypes,Ie=Ft?Ft.emptyScript:"",xt=U.reactiveElementPolyfillSupport,tt=(o,t)=>o,mt={toAttribute(o,t){switch(t){case Boolean:o=o?Ie:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,t){let e=o;switch(t){case Boolean:e=o!==null;break;case Number:e=o===null?null:Number(o);break;case Object:case Array:try{e=JSON.parse(o)}catch{e=null}}return e}},kt=(o,t)=>!xe(o,t),Ht={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),U.litPropertyMetadata??(U.litPropertyMetadata=new WeakMap);class Y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=Ht){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){const s=Symbol(),i=this.getPropertyDescriptor(t,s,e);i!==void 0&&ke(this.prototype,t,i)}}static getPropertyDescriptor(t,e,s){const{get:i,set:n}=Ce(this.prototype,t)??{get(){return this[e]},set(r){this[e]=r}};return{get(){return i==null?void 0:i.call(this)},set(r){const c=i==null?void 0:i.call(this);n.call(this,r),this.requestUpdate(t,c,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Ht}static _$Ei(){if(this.hasOwnProperty(tt("elementProperties")))return;const t=$e(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(tt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(tt("properties"))){const e=this.properties,s=[...Te(e),...Pe(e)];for(const i of s)this.createProperty(i,e[i])}const t=this[Symbol.metadata];if(t!==null){const e=litPropertyMetadata.get(t);if(e!==void 0)for(const[s,i]of e)this.elementProperties.set(s,i)}this._$Eh=new Map;for(const[e,s]of this.elementProperties){const i=this._$Eu(e,s);i!==void 0&&this._$Eh.set(i,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const i of s)e.unshift(Bt(i))}else t!==void 0&&e.push(Bt(t));return e}static _$Eu(t,e){const s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var t;this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),(t=this.constructor.l)==null||t.forEach(e=>e(this))}addController(t){var e;(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&((e=t.hostConnected)==null||e.call(t))}removeController(t){var e;(e=this._$EO)==null||e.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Se(t,this.constructor.elementStyles),t}connectedCallback(){var t;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostConnected)==null?void 0:s.call(e)})}enableUpdating(t){}disconnectedCallback(){var t;(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostDisconnected)==null?void 0:s.call(e)})}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$EC(t,e){var n;const s=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,s);if(i!==void 0&&s.reflect===!0){const r=(((n=s.converter)==null?void 0:n.toAttribute)!==void 0?s.converter:mt).toAttribute(e,s.type);this._$Em=t,r==null?this.removeAttribute(i):this.setAttribute(i,r),this._$Em=null}}_$AK(t,e){var n;const s=this.constructor,i=s._$Eh.get(t);if(i!==void 0&&this._$Em!==i){const r=s.getPropertyOptions(i),c=typeof r.converter=="function"?{fromAttribute:r.converter}:((n=r.converter)==null?void 0:n.fromAttribute)!==void 0?r.converter:mt;this._$Em=i,this[i]=c.fromAttribute(e,r.type),this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){if(s??(s=this.constructor.getPropertyOptions(t)),!(s.hasChanged??kt)(this[t],e))return;this.P(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,e,s){this._$AL.has(t)||this._$AL.set(t,e),s.reflect===!0&&this._$Em!==t&&(this._$Ej??(this._$Ej=new Set)).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var s;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[n,r]of this._$Ep)this[n]=r;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[n,r]of i)r.wrapped!==!0||this._$AL.has(n)||this[n]===void 0||this.P(n,this[n],r)}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),(s=this._$EO)==null||s.forEach(i=>{var n;return(n=i.hostUpdate)==null?void 0:n.call(i)}),this.update(e)):this._$EU()}catch(i){throw t=!1,this._$EU(),i}t&&this._$AE(e)}willUpdate(t){}_$AE(t){var e;(e=this._$EO)==null||e.forEach(s=>{var i;return(i=s.hostUpdated)==null?void 0:i.call(s)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&(this._$Ej=this._$Ej.forEach(e=>this._$EC(e,this[e]))),this._$EU()}updated(t){}firstUpdated(t){}}Y.elementStyles=[],Y.shadowRootOptions={mode:"open"},Y[tt("elementProperties")]=new Map,Y[tt("finalized")]=new Map,xt==null||xt({ReactiveElement:Y}),(U.reactiveElementVersions??(U.reactiveElementVersions=[])).push("2.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const et=globalThis,yt=et.trustedTypes,Gt=yt?yt.createPolicy("lit-html",{createHTML:o=>o}):void 0,Wt="$lit$",O=`lit$${(Math.random()+"").slice(9)}$`,zt="?"+O,Ue=`<${zt}>`,D=document,st=()=>D.createComment(""),it=o=>o===null||typeof o!="object"&&typeof o!="function",Vt=Array.isArray,Oe=o=>Vt(o)||typeof(o==null?void 0:o[Symbol.iterator])=="function",Ct=`[ +\f\r]`,nt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,jt=/-->/g,Yt=/>/g,N=RegExp(`>|${Ct}(?:([^\\s"'>=/]+)(${Ct}*=${Ct}*(?:[^ +\f\r"'\`<>=]|("|')|))|$)`,"g"),Kt=/'/g,qt=/"/g,Xt=/^(?:script|style|textarea|title)$/i,Me=o=>(t,...e)=>({_$litType$:o,strings:t,values:e}),C=Me(1),K=Symbol.for("lit-noChange"),S=Symbol.for("lit-nothing"),Jt=new WeakMap,B=D.createTreeWalker(D,129);function Zt(o,t){if(!Array.isArray(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return Gt!==void 0?Gt.createHTML(t):t}const Le=(o,t)=>{const e=o.length-1,s=[];let i,n=t===2?"":"",r=nt;for(let c=0;c"?(r=i??nt,d=-1):l[1]===void 0?d=-2:(d=r.lastIndex-l[2].length,h=l[1],r=l[3]===void 0?N:l[3]==='"'?qt:Kt):r===qt||r===Kt?r=N:r===jt||r===Yt?r=nt:(r=N,i=void 0);const w=r===N&&o[c+1].startsWith("/>")?" ":"";n+=r===nt?a+Ue:d>=0?(s.push(h),a.slice(0,d)+Wt+a.slice(d)+O+w):a+O+(d===-2?c:w)}return[Zt(o,n+(o[e]||"")+(t===2?"":"")),s]};class rt{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let n=0,r=0;const c=t.length-1,a=this.parts,[h,l]=Le(t,e);if(this.el=rt.createElement(h,s),B.currentNode=this.el.content,e===2){const d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(i=B.nextNode())!==null&&a.length0){i.textContent=yt?yt.emptyScript:"";for(let w=0;w2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=S}_$AI(t,e=this,s,i){const n=this.strings;let r=!1;if(n===void 0)t=q(this,t,e,0),r=!it(t)||t!==this._$AH&&t!==K,r&&(this._$AH=t);else{const c=t;let a,h;for(t=n[0],a=0;a{const s=(e==null?void 0:e.renderBefore)??t;let i=s._$litPart$;if(i===void 0){const n=(e==null?void 0:e.renderBefore)??null;s._$litPart$=i=new ot(t.insertBefore(st(),n),n,void 0,e??{})}return i._$AI(o),i};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */class M extends Y{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;const t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=He(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Do)==null||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Do)==null||t.setConnected(!1)}render(){return K}}M._$litElement$=!0,M.finalized=!0,(ve=globalThis.litElementHydrateSupport)==null||ve.call(globalThis,{LitElement:M});const Pt=globalThis.litElementPolyfillSupport;Pt==null||Pt({LitElement:M}),(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const bt=o=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(o,t)}):customElements.define(o,t)};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Ge={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt},We=(o=Ge,t,e)=>{const{kind:s,metadata:i}=e;let n=globalThis.litPropertyMetadata.get(i);if(n===void 0&&globalThis.litPropertyMetadata.set(i,n=new Map),n.set(e.name,o),s==="accessor"){const{name:r}=e;return{set(c){const a=t.get.call(this);t.set.call(this,c),this.requestUpdate(r,a,o)},init(c){return c!==void 0&&this.P(r,void 0,o),c}}}if(s==="setter"){const{name:r}=e;return function(c){const a=this[r];t.call(this,c),this.requestUpdate(r,a,o)}}throw Error("Unsupported decorator location: "+s)};function ze(o){return(t,e)=>typeof e=="object"?We(o,t,e):((s,i,n)=>{const r=i.hasOwnProperty(n);return i.constructor.createProperty(n,r?{...s,wrapped:!0}:s),r?Object.getOwnPropertyDescriptor(i,n):void 0})(o,t,e)}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function at(o){return ze({...o,state:!0,attribute:!1})}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Qt=(o,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(o,t,e),e);/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function ct(o,t){return(e,s,i)=>{const n=r=>{var c;return((c=r.renderRoot)==null?void 0:c.querySelector(o))??null};if(t){const{get:r,set:c}=typeof s=="object"?e:i??(()=>{const a=Symbol();return{get(){return this[a]},set(h){this[a]=h}}})();return Qt(e,s,{get(){let a=r.call(this);return a===void 0&&(a=n(this),(a!==null||this.hasUpdated)&&c.call(this,a)),a}})}return Qt(e,s,{get(){return n(this)}})}}const E=160,x=160,X=1024,Ve="WASM-4",je=[14743759,8831084,3172432,464929],$t=4,lt=20,Ye=22,te=26,ee=28,Ke=30,qe=31,Xe=32,Je=160,L=1,F=2,J=16,Z=32,H=64,G=128,Ze=1,Qe=2,se=1,ie=2,ts=Uint8Array.of(255,255,255,255,255,255,255,255,199,199,199,207,207,255,207,255,147,147,147,255,255,255,255,255,147,1,147,147,147,1,147,255,239,131,47,131,233,3,239,255,157,91,55,239,217,181,115,255,143,39,39,143,37,51,129,255,207,207,207,255,255,255,255,255,243,231,207,207,207,231,243,255,159,207,231,231,231,207,159,255,255,147,199,1,199,147,255,255,255,231,231,129,231,231,255,255,255,255,255,255,255,207,207,159,255,255,255,129,255,255,255,255,255,255,255,255,255,207,207,255,253,251,247,239,223,191,127,255,199,179,57,57,57,155,199,255,231,199,231,231,231,231,129,255,131,57,241,195,135,31,1,255,129,243,231,195,249,57,131,255,227,195,147,51,1,243,243,255,3,63,3,249,249,57,131,255,195,159,63,3,57,57,131,255,1,57,243,231,207,207,207,255,135,59,27,135,97,121,131,255,131,57,57,129,249,243,135,255,255,207,207,255,207,207,255,255,255,207,207,255,207,207,159,255,243,231,207,159,207,231,243,255,255,255,1,255,1,255,255,255,159,207,231,243,231,207,159,255,131,1,57,243,199,255,199,255,131,125,69,85,65,127,131,255,199,147,57,57,1,57,57,255,3,57,57,3,57,57,3,255,195,153,63,63,63,153,195,255,7,51,57,57,57,51,7,255,1,63,63,3,63,63,1,255,1,63,63,3,63,63,63,255,193,159,63,49,57,153,193,255,57,57,57,1,57,57,57,255,129,231,231,231,231,231,129,255,249,249,249,249,249,57,131,255,57,51,39,15,7,35,49,255,159,159,159,159,159,159,129,255,57,17,1,1,41,57,57,255,57,25,9,1,33,49,57,255,131,57,57,57,57,57,131,255,3,57,57,57,3,63,63,255,131,57,57,57,33,51,133,255,3,57,57,49,7,35,49,255,135,51,63,131,249,57,131,255,129,231,231,231,231,231,231,255,57,57,57,57,57,57,131,255,57,57,57,17,131,199,239,255,57,57,41,1,1,17,57,255,57,17,131,199,131,17,57,255,153,153,153,195,231,231,231,255,1,241,227,199,143,31,1,255,195,207,207,207,207,207,195,255,127,191,223,239,247,251,253,255,135,231,231,231,231,231,135,255,199,147,255,255,255,255,255,255,255,255,255,255,255,255,255,1,239,247,255,255,255,255,255,255,255,255,131,249,129,57,129,255,63,63,3,57,57,57,131,255,255,255,129,63,63,63,129,255,249,249,129,57,57,57,129,255,255,255,131,57,1,63,131,255,241,231,129,231,231,231,231,255,255,255,129,57,57,129,249,131,63,63,3,57,57,57,57,255,231,255,199,231,231,231,129,255,243,255,227,243,243,243,243,135,63,63,49,3,7,35,49,255,199,231,231,231,231,231,129,255,255,255,3,73,73,73,73,255,255,255,3,57,57,57,57,255,255,255,131,57,57,57,131,255,255,255,3,57,57,3,63,63,255,255,129,57,57,129,249,249,255,255,145,143,159,159,159,255,255,255,131,63,131,249,3,255,231,231,129,231,231,231,231,255,255,255,57,57,57,57,129,255,255,255,153,153,153,195,231,255,255,255,73,73,73,73,129,255,255,255,57,1,199,1,57,255,255,255,57,57,57,129,249,131,255,255,1,227,199,143,1,255,243,231,231,207,231,231,243,255,231,231,231,231,231,231,231,255,159,207,207,231,207,207,159,255,255,255,143,69,227,255,255,255,255,255,255,255,255,147,147,255,131,41,41,17,41,41,131,255,131,57,9,17,33,57,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,131,17,33,125,33,17,131,255,131,17,9,125,9,17,131,255,131,17,57,85,17,17,131,255,131,17,17,85,57,17,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,231,255,231,231,199,199,199,255,239,131,41,47,41,131,239,255,195,153,159,3,159,159,1,255,255,165,219,219,219,165,255,255,153,153,195,129,231,129,231,255,231,231,231,255,231,231,231,255,195,153,135,219,225,153,195,255,147,255,255,255,255,255,255,255,195,189,102,94,94,102,189,195,135,195,147,195,255,255,255,255,255,201,147,39,147,201,255,255,255,255,129,249,249,255,255,255,255,255,255,255,255,255,255,255,195,189,70,90,70,90,189,195,131,255,255,255,255,255,255,255,239,215,239,255,255,255,255,255,231,231,129,231,231,255,129,255,199,243,231,195,255,255,255,255,195,231,243,199,255,255,255,255,247,239,255,255,255,255,255,255,255,255,51,51,51,51,9,63,193,149,181,149,193,245,245,255,255,255,255,207,207,255,255,255,255,255,255,255,255,255,247,207,231,199,231,195,255,255,255,255,199,147,147,199,255,255,255,255,255,39,147,201,147,39,255,255,189,59,183,173,217,177,125,255,189,59,183,169,221,187,113,255,29,187,215,45,217,177,125,255,199,255,199,159,57,1,131,255,223,239,199,147,57,1,57,255,247,239,199,147,57,1,57,255,199,147,199,147,57,1,57,255,203,167,199,147,57,1,57,255,147,255,199,147,57,1,57,255,239,215,199,147,57,1,57,255,193,135,39,33,7,39,33,255,195,153,63,63,153,195,247,207,223,239,1,63,3,63,1,255,247,239,1,63,3,63,1,255,199,147,1,63,3,63,1,255,147,255,1,63,3,63,1,255,239,247,129,231,231,231,129,255,247,239,129,231,231,231,129,255,231,195,129,231,231,231,129,255,153,255,129,231,231,231,129,255,135,147,153,9,153,147,135,255,203,167,25,9,1,33,49,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,187,215,239,215,187,255,255,131,57,49,41,25,57,131,255,223,239,57,57,57,57,131,255,247,239,57,57,57,57,131,255,199,147,255,57,57,57,131,255,147,255,57,57,57,57,131,255,247,239,153,153,195,231,231,255,63,3,57,57,57,3,63,255,195,153,153,147,153,137,147,255,223,239,131,249,129,57,129,255,247,239,131,249,129,57,129,255,199,147,131,249,129,57,129,255,203,167,131,249,129,57,129,255,147,255,131,249,129,57,129,255,239,215,131,249,129,57,129,255,255,255,131,233,129,47,131,255,255,255,129,63,63,129,247,207,223,239,131,57,1,63,131,255,247,239,131,57,1,63,131,255,199,147,131,57,1,63,131,255,147,255,131,57,1,63,131,255,223,239,255,199,231,231,129,255,247,239,255,199,231,231,129,255,199,147,255,199,231,231,129,255,147,255,199,231,231,231,129,255,155,135,103,131,57,57,131,255,203,167,3,57,57,57,57,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,231,255,129,255,231,255,255,255,255,131,49,41,25,131,255,223,239,57,57,57,57,129,255,247,239,57,57,57,57,129,255,199,147,255,57,57,57,129,255,147,255,57,57,57,57,129,255,247,239,57,57,57,129,249,131,63,63,3,57,57,3,63,63,147,255,57,57,57,129,249,131);function It(o){const t=new URL(location.href),e=t.searchParams.get(o);return e??new URL(t.hash.substring(1),"https://x").searchParams.get(o)}function ne(){if(document.fullscreenElement==null){let o=function(){const e=window.frameElement;e&&(e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.zIndex="99999",e.style.width="100%",e.style.height="100%")};const t=document.body.requestFullscreen&&document.body.requestFullscreen({navigationUI:"hide"});t?t.catch(o):o()}}async function es(o){try{await navigator.clipboard.writeText(o)}catch{let t=document.createElement("dialog");t.title="Netplay URL",t.textContent=o,document.body.append(t);let e=document.createElement("button");e.textContent="Copy",e.style.marginLeft="1em",e.onclick=()=>navigator.clipboard.writeText(o),t.appendChild(e);let s=document.createElement("button");s.textContent="Close",s.style.marginLeft="1em",s.onclick=()=>{document.body.removeChild(t)},t.appendChild(s),t.showModal()}}const ss="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#".split(""),re=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0];function oe(o){const t=o.length,e=t%4,s=e?t+4-e:t;let i="",n=0,r=0;for(;n=1;){const h=Math.floor(r/a)%85;i+=ss[h],a/=85}r=0}}return i}function ae(o,t){let e=0,s=0,i=0;const n=o.length,r=t.length;if(o.length%5==0)for(;s=re.length)return e;if(i=i*85+re[c],s%5==0){let a=16777216;for(;a>=1;){if(e>=r)return e;t[e++]=i/a%256,a/=256}i=0}}return e}class ht{constructor(){this.memory=new ArrayBuffer(65536),this.globals={},this.diskBuffer=new ArrayBuffer(X),this.diskSize=0}read(t){new Uint8Array(this.memory).set(new Uint8Array(t.memory.buffer)),this.globals={};for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&(this.globals[e]=s.value.toString())}this.diskSize=t.diskSize,new Uint8Array(this.diskBuffer).set(new Uint8Array(t.diskBuffer,0,t.diskSize))}write(t){new Uint8Array(t.memory.buffer).set(new Uint8Array(this.memory));for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&e in this.globals&&(s.value=this.globals[e])}t.diskSize=this.diskSize,new Uint8Array(t.diskBuffer).set(new Uint8Array(this.diskBuffer,0,this.diskSize))}toBytes(){const t=new TextEncoder().encode(JSON.stringify(this.globals)),e=new Uint8Array(65544+t.byteLength+this.diskSize),s=new DataView(e.buffer,e.byteOffset,e.byteLength);e.set(new Uint8Array(this.memory),0);let i=65536;return s.setUint32(i,t.byteLength),e.set(t,i+4),i+=4+t.byteLength,s.setUint32(i,this.diskSize),e.set(new Uint8Array(this.diskBuffer,0,this.diskSize),i+4),e}fromBytes(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength);new Uint8Array(this.memory).set(t.subarray(0,65536));let s=65536;const i=e.getUint32(s),n=t.slice(s+4,s+4+i);this.globals=JSON.parse(new TextDecoder().decode(n)),s+=4+i,this.diskSize=e.getUint32(s),new Uint8Array(this.diskBuffer).set(t.subarray(s+4,s+4+this.diskSize))}}const I=20,R=4;class is{constructor(){this.frame=-1,this.state=new ht,this.inputs=new Array(R),this.predicted=new Array(R);for(let t=0;t=this.currentFrame)i.futureInputs.has(e)||i.futureInputs.set(e,n);else for(let r=0,c=I;r{this.send("",{type:"KEEPALIVE"},!1)},15e3)}async connect(){const t=["wss://webrtc-signal-server.wasm4.org","wss://ywc2h85cv1.execute-api.us-east-1.amazonaws.com/production","wss://webrtc-signal-server.wasm4.jwq.moe","wss://iyuavuru2h.execute-api.eu-central-1.amazonaws.com/production"];for(const e of t)try{this.socket=await new Promise((s,i)=>{const n=new WebSocket(e);n.addEventListener("open",()=>{s(n)}),n.addEventListener("error",()=>{i()})});break}catch(s){console.error(s)}if(!this.socket)throw new Error("Unable to connect to signal server");this.socket.addEventListener("message",e=>{const{source:s,message:i}=JSON.parse(e.data);this.onMessage(s,i)});for(const e of this.bufferedOutput)this.socket.send(e);this.bufferedOutput.length=0}send(t,e,s=!0){var n;const i=JSON.stringify({target:t,message:e});((n=this.socket)==null?void 0:n.readyState)==1?this.socket.send(i):s&&this.bufferedOutput.push(i)}close(){var t;(t=this.socket)==null||t.close(),window.clearInterval(this.keepaliveInterval)}}class os{constructor(t){this.connections=new Map;let e;this.localPeerId=new Promise(s=>{e=s}),this.signalClient=new rs(async(s,i)=>{switch(i.type){case"WHOAMI_REPLY":this.iceServers=i.iceServers,e(i.yourPeerId);break;case"OFFER":{if(this.connections.has(s))throw new Error("Received offer for a connection we already initiated");{const n=this.createConnection(s);await n.setRemoteDescription(i.description),await n.setLocalDescription(await n.createAnswer()),t(n,s),this.signalClient.send(s,{type:"ANSWER",description:n.localDescription.toJSON()})}}break;case"ANSWER":{const n=this.connections.get(s);n&&await n.setRemoteDescription(i.description)}break;case"CANDIDATE":{const n=this.connections.get(s);n&&await n.addIceCandidate(new RTCIceCandidate(i.candidate))}break;case"ABORT":{const n=this.connections.get(s);n&&n.close()}break}}),this.signalClient.send("",{type:"WHOAMI_REQUEST"})}createConnection(t){const e=new RTCPeerConnection({iceServers:this.iceServers});return this.connections.set(t,e),e.addEventListener("negotiationneeded",async()=>{await e.setLocalDescription(await e.createOffer()),this.signalClient.send(t,{type:"OFFER",description:e.localDescription.toJSON()})}),e.addEventListener("icecandidate",({candidate:s})=>{s&&this.signalClient.send(t,{type:"CANDIDATE",candidate:s.toJSON()})}),e.addEventListener("connectionstatechange",()=>{const s=e.connectionState;(s=="connected"||s=="failed")&&this.connections.delete(t)}),e}connect(t){return this.connections.get(t)||this.createConnection(t)}close(){this.signalClient.close();for(const[t,e]of this.connections)e.close()}}const gt=16384;class as{constructor(t){this.chunks=[],this.size=0,t.addEventListener("message",e=>{if(e.data instanceof ArrayBuffer){const s=new Uint8Array(e.data);this.size+=s.byteLength,this.chunks.push(s)}})}read(){const t=new Uint8Array(this.size);let e=0;for(const s of this.chunks)t.set(s,e),e+=s.byteLength;return this.chunks.length=0,this.size=0,t}}class cs{constructor(t){this.channel=t,this.size=0}write(t){this.buffer||(this.buffer=new Uint8Array(gt));let e=this.size,s=0;for(;s=gt&&(e-=gt,this.channel.send(this.buffer))}this.size=e}flush(){this.buffer&&this.size>0&&this.channel.send(this.buffer.subarray(0,this.size)),this.buffer=void 0}}class ls{constructor(t,e=0){this.buffer=t,this.position=e}readBit(){const t=!!(this.buffer[this.position/8>>>0]&1<<(this.position&7));return++this.position,t}readBits(t){let e=0;for(let s=0;s>>0]|=1<<(this.position&7),++this.position}write0(){this.buffer[this.position/8>>>0]&=~(1<<(this.position&7)),++this.position}writeBits(t,e){for(let s=0;s0;--s)this.outboundInputs.unshift(e);this.outboundFrame=t}else{const s=t-this.outboundFrame;if(s>=this.outboundInputs.length){for(let i=this.outboundInputs.length;i0?this.outboundInputs[i-1]:0;this.outboundInputs[s]=e}}}sendMessage(t){this.reliableChannel.send(JSON.stringify(t))}sendUnreliableBuffer(t){this.unreliableChannel.send(t)}sendPingRequest(){const t=new DataView(W);t.setUint8(0,2),t.setUint32(1,performance.now()>>>0),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendPingReply(t){const e=new DataView(W);e.setUint8(0,3),e.setUint32(1,t),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendTick(t){const e=new DataView(W);e.setUint8(0,1),e.setUint32(1,t),e.setInt8(5,this.nextNeededFrame==0?-127:this.nextNeededFrame-t),e.setInt8(6,this.outboundFrame-t),e.setUint8(7,this.outboundInputs.length);const s=new hs(new Uint8Array(W,8));let i=0;for(const r of this.outboundInputs){const c=i^r;i=r;for(let a=0;a<8;++a)c&1<{const i=Array.from(this.remotePlayers.keys()),n=await this.createRemotePlayer(e,s);n.sendMessage({type:"WELCOME",otherPeers:i}),this.localPlayerIdx>=0&&n.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})})}host(){this.runtime.setNetplay(0),this.rollbackMgr=new ce(1,this.runtime),this.localPlayerIdx=0}join(t){const e=this.peerMgr.connect(t);this.createRemotePlayer(e,t).then(s=>{s.sendMessage({type:"JOIN_REQUEST"})},s=>{this.runtime.blueScreen(`Failed to connect +to peer. They may +be offline?`)})}async getInviteLink(){const t=await this.peerMgr.localPeerId,e=window.location;if(e.protocol=="file:"||e.hostname=="localhost"||e.hostname=="127.0.0.1"||e.hostname=="wasm4.org")return`https://wasm4.org/netplay/#${t}`;const s=new URL(e.href);return s.searchParams.set("netplay",t),s.href}close(){for(const t of this.remotePlayers.values())t.close();this.peerMgr.close()}async createRemotePlayer(t,e){function s(a){return new Promise((h,l)=>{const d=t.createDataChannel("WASM-4",a);d.binaryType="arraybuffer",d.onopen=()=>{h(d)},d.onerror=l})}const[i,n]=await Promise.all([s({negotiated:!0,id:0}),s({negotiated:!0,id:1,ordered:!1,maxRetransmits:0})]),r=new us(e,t,i,n);this.remotePlayers.set(e,r);const c=()=>{this.remotePlayers.has(e)&&(this.remotePlayers.delete(e),this.onleave&&r.playerIdx>=0&&this.onleave(r.playerIdx))};return t.addEventListener("connectionstatechange",()=>{t.connectionState=="disconnected"&&c()}),i.addEventListener("close",c),n.addEventListener("close",c),i.addEventListener("message",async a=>{if(typeof a.data!="string")return;const h=JSON.parse(a.data);switch(h.type){case"WELCOME":for(const l of h.otherPeers)if(!this.remotePlayers.has(l)){const d=this.peerMgr.connect(l),u=await this.createRemotePlayer(d,l);this.localPlayerIdx>=0&&u.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})}break;case"JOIN_REQUEST":{const l=this.nextPlayerIdx();if(l>=4)r.sendMessage({type:"JOIN_REJECT"}),r.close();else{r.playerIdx=l,r.chunkWriter.write(this.runtime.wasmBuffer);const d=new ht;d.read(this.runtime),r.chunkWriter.write(d.toBytes()),r.chunkWriter.flush(),r.sendMessage({type:"JOIN_REPLY",yourPlayerIdx:r.playerIdx,frame:this.rollbackMgr.currentFrame,stateOffset:this.runtime.wasmBuffer.byteLength}),this.onjoin&&this.onjoin(r.playerIdx)}}break;case"JOIN_REPLY":{this.localPlayerIdx=h.yourPlayerIdx;for(const b of this.remotePlayers.values())b!=r&&b.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx});const l=r.chunkReader.read(),d=l.subarray(0,h.stateOffset),u=l.subarray(h.stateOffset);await this.runtime.load(d,!1);const w=new ht;w.fromBytes(u),w.write(this.runtime),this.runtime.setNetplay(this.localPlayerIdx),this.rollbackMgr=new ce(h.frame,this.runtime),this.onstart&&this.onstart(this.localPlayerIdx)}break;case"JOIN_REJECT":this.runtime.blueScreen(`Connected, but the +game is already +full!`),this.close();break;case"PLAYER_INFO":r.playerIdx==-1&&(r.playerIdx=h.playerIdx,this.onjoin&&this.onjoin(r.playerIdx));break}}),n.addEventListener("message",async a=>{const h=a.data,l=new DataView(h);switch(l.getUint8(0)){case 1:if(this.rollbackMgr&&r.playerIdx>=0){const u=l.getUint32(1);if(u>r.frame){const w=l.getInt8(5)+u,b=l.getInt8(6)+u,p=l.getUint8(7),f=new ls(new Uint8Array(h,8)),m=new Array(p);let y=0;for(let v=0;vr.outboundFrame){const v=w-r.outboundFrame;r.outboundFrame=w,r.outboundInputs.splice(0,v)}const g=u+.5*r.ping.average*60/1e3,_=this.rollbackMgr.currentFrame-g;r.drift.update(_),this.rollbackMgr.addInputs(r.playerIdx,b,m)}}break;case 2:{const u=l.getUint32(1);r.sendPingReply(u)}break;case 3:{const u=l.getUint32(1),w=(performance.now()>>>0)-u;r.ping.update(w)}break}}),r}nextPlayerIdx(){t:for(let t=0;t<4;++t)if(this.localPlayerIdx!=t){for(const e of this.remotePlayers.values())if(e.playerIdx==t)continue t;return t}return-1}update(t){if(!this.rollbackMgr)return!1;const e=(this.updateCount&7)==0,s=(this.updateCount&31)==0;++this.updateCount;const i=this.rollbackMgr.currentFrame,r=i+2;this.rollbackMgr.addInputs(this.localPlayerIdx,r,[t]);let c=!1;for(const a of this.remotePlayers.values())a.addOutboundInput(r,t),a.sendTick(i),(a.nextNeededFrame=he)&&(c=!0),s&&a.sendPingRequest();if(e){let a=0;for(const h of this.remotePlayers.values())a=Math.max(h.drift.average,a);a>=1&&(c=!0)}return c||this.rollbackMgr.update(),!c}getSummary(){const t=[{playerIdx:this.localPlayerIdx,ping:-1}];for(const e of this.remotePlayers.values())t.push({playerIdx:e.playerIdx,ping:e.ping.average});return t.sort((e,s)=>e.playerIdx-s.playerIdx),t}}const de=`"use strict";(()=>{var M=Math.floor(44.1),b=class{constructor(){this.freq1=0;this.freq2=0;this.startTime=0;this.attackTime=0;this.decayTime=0;this.sustainTime=0;this.releaseTime=0;this.endTick=0;this.sustainVolume=0;this.peakVolume=0;this.phase=0;this.pan=0;this.pulseDutyCycle=0;this.noiseSeed=1;this.noiseLastRandom=0}};function L(m,e,s){return m+s*(e-m)}function V(m,e){if(m1-e){let s=(m-(1-e))/e;return 1-(s+s-s*s)}else return 1}function x(m,e){return Math.pow(2,(m-69+e/256)/12)*440}var y=class extends AudioWorkletProcessor{constructor(){super(),this.time=0,this.ticks=0,this.channels=new Array(4);for(let e=0;e<4;++e)this.channels[e]=new b;this.port!=null&&(this.port.onmessage=e=>{e.data==="tick"?this.tick():this.tone(...e.data)})}ramp(e,s,f,u){if(this.time>=u)return s;let a=(this.time-f)/(u-f);return L(e,s,a)}getCurrentFrequency(e){return e.freq2>0?this.ramp(e.freq1,e.freq2,e.startTime,e.releaseTime):e.freq1}getCurrentVolume(e){let s=this.time;return s>=e.sustainTime&&e.releaseTime-e.sustainTime>M?this.ramp(e.sustainVolume,0,e.sustainTime,e.releaseTime):s>=e.decayTime?e.sustainVolume:s>=e.attackTime?this.ramp(e.peakVolume,e.sustainVolume,e.attackTime,e.decayTime):this.ramp(0,e.peakVolume,e.startTime,e.attackTime)}tick(){this.ticks++}tone(e,s,f,u){let a=e&65535,p=e>>16&65535,A=s&255,h=s>>8&255,o=s>>16&255,i=s>>24&255,E=Math.min(f&255,100),l=Math.min(f>>8&255,100),n=u&3,r=u>>2&3,c=u>>4&3,d=u&64,t=this.channels[n];this.time>t.releaseTime&&this.ticks!=t.endTick&&(t.phase=n==2?.25:0),d?(t.freq1=x(a&255,a>>8),t.freq2=p==0?0:x(p&255,p>>8)):(t.freq1=a,t.freq2=p),t.startTime=this.time,t.attackTime=t.startTime+(44100*i/60>>>0),t.decayTime=t.attackTime+(44100*o/60>>>0),t.sustainTime=t.decayTime+(44100*A/60>>>0),t.releaseTime=t.sustainTime+(44100*h/60>>>0),t.endTick=this.ticks+i+o+A+h,t.pan=c;let T=n==2?.25:.15;if(t.sustainVolume=T*E/100,t.peakVolume=l?T*l/100:T,n==0||n==1)switch(r){case 0:t.pulseDutyCycle=.125;break;case 1:case 3:default:t.pulseDutyCycle=.25;break;case 2:t.pulseDutyCycle=.5;break}else n==2&&h==0&&(t.releaseTime+=M)}process(e,[[s,f]],u){for(let a=0,p=s.length;a0;){i.phase--;let r=i.noiseSeed;r^=r>>7,r^=r<<9,r^=r>>13,i.noiseSeed=r,i.noiseLastRandom=((r&1)<<1)-1}n=l*i.noiseLastRandom}else{let r=E/44100,c=i.phase+r;if(c>=1&&c--,i.phase=c,o==2)n=l*(2*Math.abs(2*i.phase-1)-1);else{let d,t,T,k=i.pulseDutyCycle;c{n=new l};new Function("registerProcessor","AudioWorkletProcessor",de)(r,class{}),this.processor=n;const a=t.createScriptProcessor(1024,0,2);a.onaudioprocess=h=>{const l=h.outputBuffer.getChannelData(0),d=h.outputBuffer.getChannelData(1);n.process(null,[[l,d]],null)},a.connect(t.destination)}}tick(){this.processorPort!=null?this.processorPort.postMessage("tick"):this.processor.tick()}tone(t,e,s,i){this.processorPort!=null?this.processorPort.postMessage([t,e,s,i]):this.processor.tone(t,e,s,i)}unlockAudio(){const t=this.audioCtx;t.state=="suspended"&&t.resume()}pauseAudio(){const t=this.audioCtx;t.state=="running"&&t.suspend()}}class ms{constructor(t){this.bytes=new Uint8Array(t,Je,E*x>>>2),this.drawColors=new Uint16Array(t,lt,1)}clear(){this.bytes.fill(0)}drawPoint(t,e,s){const i=E*s+e>>>2,n=(e&3)<<1,r=3<=0&&e=0&&s3){for(let l=e;l>>2,a=E*s+n>>>2,h=t*85;this.bytes.fill(h,c,a),e=n}for(let c=e;c=0&&sE&&(i=E),e=E)return;const i=this.drawColors[0]&15;if(i==0)return;const n=Math.max(0,e),r=Math.min(x,e+s),c=i-1&3;for(let a=n;a>>4&15;if(u!==0){const b=u-1&3;for(let p=r;p=0&&t0&&c<=E)for(let p=r;p=0&&e0&&a<=x&&this.drawHLineFast(b,n,a-1,h)}}drawOval(t,e,s,i){const n=this.drawColors[0],r=n&15,c=n>>>4&15;if(c===15)return;const a=c-1&3,h=r-1&3;let l=s-1;const d=i-1;let u=d%2,w=e+Math.floor(i/2),b=t,p=t+s-1,f=w-u;const m=l*l,y=d*d;let g=4*(1-l)*y,_=4*(u+1)*m,v=g+_+u*m;l=8*m,u=8*y;do{this.drawPointUnclipped(a,p,w),this.drawPointUnclipped(a,b,w),this.drawPointUnclipped(a,b,f),this.drawPointUnclipped(a,p,f);const k=b+1,T=p-k;r!==0&&T>0&&(this.drawHLineUnclipped(h,k,w,p),this.drawHLineUnclipped(h,k,f,p));const P=2*v;P<=_&&(w+=1,f-=1,_+=l,v+=_),(P>=g||P>_)&&(b+=1,p-=1,g+=u,v+=g)}while(b<=p);for(;w-fi){let w=t;t=s,s=w,w=e,e=i,i=w}const a=Math.abs(s-t),h=tl?a:-l)/2,u;for(;this.drawPointUnclipped(c,t,e),!(t===s&&e===i);)u=d,u>-a&&(d-=l,t+=h),u=32&&c<=255&&this.blit(ts,i,s,8,8,0,c-32<<3,8),i+=8)}}blit(t,e,s,i,n,r,c,a,h=!1,l=!1,d=!1,u=!1){const w=this.drawColors[0];let b,p,f,m;u?(l=!l,b=Math.max(0,s)-s,p=Math.max(0,e)-e,f=Math.min(i,x-s),m=Math.min(n,E-e)):(b=Math.max(0,e)-e,p=Math.max(0,s)-s,f=Math.min(i,E-e),m=Math.min(n,x-s));for(let y=p;y>>2],Rt=6-(($&3)<<1);P=Lt>>>Rt&3}else{const Lt=t[$>>>3],Rt=7-($&7);P=Lt>>>Rt&1}const Ee=w>>>(P<<2)&15;Ee!==0&&this.drawPoint(Ee-1&3,_,v)}}}const ys=4,ws=35044,ue=34962,pe=5121,bs=5126,At=6409,gs=35632,As=35633,vs=35713,Es=35714,fe=9728,_s=10240,Ss=10241,xs=10242,ks=10243,z=3553,Cs=33984,me=33071,V=4;class Ts{constructor(t){this.gl=t,this.colorBuffer=new Uint32Array(E*x>>2),this.paletteBuffer=new Float32Array(3*V),this.lastPalette=Array(V),this.paletteLocation=null;const e=new Uint32Array(256);for(let i=0;i<256;++i){const n=i>>6&3,r=i>>4&3,c=i>>2&3,a=i&3;e[i]=n<<30|r<<22|c<<14|a<<6}this.table=e;const s=t.canvas;s.addEventListener("webglcontextlost",i=>{i.preventDefault()}),s.addEventListener("webglcontextrestored",()=>{this.initGL()}),this.initGL()}initGL(){const t=this.gl;this.lastPalette=Array(V);function e(d,u){const w=t.createShader(d);if(t.shaderSource(w,u),t.compileShader(w),!t.getShaderParameter(w,vs))throw new Error(t.getShaderInfoLog(w)+"");return w}function s(d){const u=t.createTexture();t.activeTexture(d),t.bindTexture(z,u),t.texParameteri(z,xs,me),t.texParameteri(z,ks,me),t.texParameteri(z,_s,fe),t.texParameteri(z,Ss,fe)}const i=e(As,` + attribute vec2 pos; + varying vec2 framebufferCoord; + + void main () { + framebufferCoord = pos*vec2(0.5, -0.5) + 0.5; + gl_Position = vec4(pos, 0, 1); + } + `),n=Array.from({length:V-1},(d,u)=>`p = mix(p, palette[${u+1}], step(${((u+1)/V).toFixed(2)}, index));`).join(` +`),r=e(gs,` + precision mediump float; + uniform vec3 palette[${V}]; + uniform sampler2D framebuffer; + varying vec2 framebufferCoord; + + vec3 lookup(float index) { + vec3 p = palette[0]; + ${n} + return p; + } + + void main () { + gl_FragColor = vec4(lookup(texture2D(framebuffer, framebufferCoord).r), 1.); + } + `),c=t.createProgram();if(t.attachShader(c,i),t.attachShader(c,r),t.linkProgram(c),!t.getProgramParameter(c,Es))throw new Error(t.getProgramInfoLog(c)+"");t.useProgram(c),this.paletteLocation=t.getUniformLocation(c,"palette"),t.uniform1i(t.getUniformLocation(c,"framebuffer"),0),t.detachShader(c,i),t.deleteShader(i),t.detachShader(c,r),t.deleteShader(r),s(Cs),t.texImage2D(z,0,At,E,x,0,At,pe,null);const a=t.getAttribLocation(c,"pos"),h=t.createBuffer(),l=new Float32Array([-1,-1,-1,1,1,1,1,1,1,-1,-1,-1]);t.bindBuffer(ue,h),t.bufferData(ue,l,ws),t.enableVertexAttribArray(a),t.vertexAttribPointer(a,2,bs,!1,0,0)}composite(t,e){const s=this.gl,i=e.bytes,n=this.colorBuffer,r=this.table,c=this.lastPalette,a=this.paletteBuffer;let h=!1;for(let l=0,d=0;l>16&255)/255,a[d++]=(u>>8&255)/255,a[d++]=(u&255)/255,c[l]=u}h&&s.uniform3fv(this.paletteLocation,this.paletteBuffer);for(let l=0;l>2;++l)n[l]=r[i[l]];s.texImage2D(z,0,At,E,x,0,At,pe,new Uint8Array(n.buffer)),s.drawArrays(ys,0,6)}}const Ps=6,ye=7,we=3;function $s(o){const t=new DataView(o.buffer),e=t.getUint32(0),s=t.getUint32(4,!0);if(e!==6386541||s!==1)throw new Error("Invalid WASM binary");let i=8;const n=[];let r=0,c=0,a;for(;in+(r[0]===0?r[2]-r[1]:r[1].length),0),s=new Uint8Array(e);let i=0;for(const n of t)n[0]===0?(s.set(o.slice(n[1],n[2]),i),i+=n[2]-n[1]):(s.set(n[1],i),i+=n[1].length);return s}function vt(o){const t=[];do{const e=o&127;o>>=7,t.push(o?e|128:e)}while(o);return new Uint8Array(t)}function dt(o,t=0){let e=0,s=0,i=0;do e=o[t++],s|=(e&127)<>2),this.data.setUint16(lt,4611,!0),this.data.setInt16(te,32767,!0),this.data.setInt16(ee,32767,!0)}async load(t,e=!0){if(this.wasmBuffer=t,this.wasmBufferByteLen=t.byteLength,this.wasm=null,t.byteLength>1048576&&e)throw new Error("Cart too big!");const i={memory:this.memory,rect:this.framebuffer.drawRect.bind(this.framebuffer),oval:this.framebuffer.drawOval.bind(this.framebuffer),line:this.framebuffer.drawLine.bind(this.framebuffer),hline:this.framebuffer.drawHLine.bind(this.framebuffer),vline:this.framebuffer.drawVLine.bind(this.framebuffer),text:this.text.bind(this),textUtf8:this.textUtf8.bind(this),textUtf16:this.textUtf16.bind(this),blit:this.blit.bind(this),blitSub:this.blitSub.bind(this),tone:this.apu.tone.bind(this.apu),diskr:this.diskr.bind(this),diskw:this.diskw.bind(this),trace:this.trace.bind(this),traceUtf8:this.traceUtf8.bind(this),traceUtf16:this.traceUtf16.bind(this),tracef:this.tracef.bind(this)};await this.bluescreenOnError(async()=>{const n=$s(t),r=await WebAssembly.instantiate(n,{env:i});this.wasm=r.instance,typeof this.wasm.exports._start=="function"&&this.wasm.exports._start(),typeof this.wasm.exports._initialize=="function"&&this.wasm.exports._initialize()})}async bluescreenOnError(t){try{await t()}catch(e){if(e instanceof Error){const s=Us(e);this.blueScreen(s),this.printToServer(e.stack??"")}throw e}}text(t,e,s){const i=new Uint8Array(this.memory.buffer,t);this.framebuffer.drawText(i,e,s)}textUtf8(t,e,s,i){const n=new Uint8Array(this.memory.buffer,t,e);this.framebuffer.drawText(n,s,i)}textUtf16(t,e,s,i){const n=new Uint16Array(this.memory.buffer,t,e>>1);this.framebuffer.drawText(n,s,i)}blit(t,e,s,i,n,r){this.blitSub(t,e,s,i,n,0,0,i,r)}blitSub(t,e,s,i,n,r,c,a,h){const l=new Uint8Array(this.memory.buffer,t),d=h&1,u=h&2,w=h&4,b=h&8;this.framebuffer.blit(l,e,s,i,n,r,c,a,d,u,w,b)}diskr(t,e){const s=Math.min(e,this.diskSize),i=new Uint8Array(this.diskBuffer,0,s);return new Uint8Array(this.memory.buffer,t).set(i),s}diskw(t,e){const s=Math.min(e,X),i=new Uint8Array(this.memory.buffer,t,s),n=new Uint8Array(this.diskBuffer),r=oe(i);try{localStorage.setItem(this.diskName,r)}catch(c){console.error("Error writing disk",c)}return n.set(i),this.diskSize=s,s}getCString(t){let e="";for(;;){const s=this.data.getUint8(t++);if(s==0)break;e+=String.fromCharCode(s)}return e}print(t){console.log(t),this.printToServer(t)}printToServer(t){}trace(t){this.print(this.getCString(t))}traceUtf8(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder().decode(s);this.print(i)}traceUtf16(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder("utf-16").decode(s);this.print(i)}tracef(t,e){let s="",i;for(;i=this.data.getUint8(t++);)if(i==37)switch(i=this.data.getUint8(t++)){case 37:s+="%";break;case 99:s+=String.fromCharCode(this.data.getInt32(e,!0)),e+=4;break;case 100:case 120:s+=this.data.getInt32(e,!0).toString(i==100?10:16),e+=4;break;case 115:s+=this.getCString(this.data.getUint32(e,!0)),e+=4;break;case 102:s+=this.data.getFloat64(e,!0),e+=8;break;default:s+="%"+String.fromCharCode(i);break}else s+=String.fromCharCode(i);this.print(s)}start(){let t=this.wasm.exports.start;typeof t=="function"&&this.bluescreenOnError(t)}update(){if(this.pauseState!=0)return;this.getSystemFlag(Ze)||this.framebuffer.clear();let t=this.wasm.exports.update;typeof t=="function"&&this.bluescreenOnError(t),this.apu.tick()}blueScreen(t){this.pauseState|=se;const e=[1118702,8831084,11184810,16777215],s=u=>[...u].map(w=>w.charCodeAt(0)),i=` ${Ve} `,n=i,r=8*i.length,c=(160-8*i.length)/2,a=20,h=9,l=60;new Uint32Array(this.memory.buffer).set(e,$t>>2),this.data.setUint16(lt,4611,!0),this.framebuffer.clear(),this.framebuffer.drawHLine(c,a-1,r),this.data.setUint16(lt,4401,!0),this.framebuffer.drawText(s(n),c,a),this.data.setUint16(lt,4611,!0),this.framebuffer.drawText(s(t),h,l),this.composite()}composite(){const t=new Uint32Array(this.memory.buffer,$t,4);this.compositor.composite(t,this.framebuffer)}}function Us(o){if(o instanceof WebAssembly.RuntimeError){let t;return o.message.match(/unreachable/)?t=`The cartridge has +reached a code +segment marked as +unreachable.`:o.message.match(/out of bounds/)&&(t=`The cartridge has +attempted a memory +access that is +out of bounds.`),t+` + + + + +Hit R to reboot.`}else{if(o instanceof WebAssembly.LinkError)return`The cartridge has +tried to import +a missing function. + + + +See console for +more details.`;if(o instanceof WebAssembly.CompileError)return`The cartridge is +corrupted. + + + +See console for +more details.`;if(o instanceof Os)return o.wasm4Message}return`Unknown error. + + + +See console for +more details.`}class Os extends Error{constructor(t){super(t.replace(` +`," ")),this.name="Wasm4Error",this.wasm4Message=t}}var Ms=Object.defineProperty,Ls=Object.getOwnPropertyDescriptor,ut=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ls(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Ms(t,e,i),i};class ge{constructor(){this.gamepad=[0,0,0,0],this.mouseX=0,this.mouseY=0,this.mouseButtons=0}}A.App=class extends M{constructor(){var t;super(),this.hideGamepadOverlay=!1,this.showMenu=!1,this.inputState=new ge,this.gamepadUnavailableWarned=new Set,this.onPointerUp=e=>{e.pointerType=="touch"&&ne(),this.runtime.unlockAudio()},this.diskPrefix=((t=document.getElementById("wasm4-disk-prefix"))==null?void 0:t.textContent)??It("disk-prefix"),this.runtime=new Is(`${this.diskPrefix}-disk`),this.init()}async init(){async function t(){const p=document.getElementById("wasm4-cart-json");if(p){const{WASM4_CART:f,WASM4_CART_SIZE:m}=JSON.parse(p.textContent??""),y=new Uint8Array(m);return ae(f,y),y}else{const f=It("url")??"cart.wasm",m=await fetch(f);if(m.ok)return new Uint8Array(await m.arrayBuffer());throw new Error(`Could not load cart at url: ${f}`)}}const e=this.runtime;await e.init();const s=e.canvas,i=It("netplay");i?(this.netplay=this.createNetplay(),this.netplay.join(i)):await e.load(await t());let n={toggleDevtools(){},updateCompleted(...p){}};this.netplay||e.start();function r(){e.composite(),s.toBlob(p=>{const f=URL.createObjectURL(p),m=document.createElement("a");m.href=f,m.download="wasm4-screenshot.png",m.click(),URL.revokeObjectURL(f)})}let c=null;function a(){if(c!=null)return;const p="video/webm",f=s.captureStream();c=new MediaRecorder(f,{mimeType:p,videoBitsPerSecond:25e6});const m=[];c.ondataavailable=y=>{m.push(y.data)},c.onstop=()=>{const y=new Blob(m,{type:p}),g=URL.createObjectURL(y),_=document.createElement("a");_.href=g,_.download="wasm4-animation.webm",_.click(),URL.revokeObjectURL(g)},c.start(),setTimeout(()=>{c&&(c.requestData(),c.stop(),c=null)},4e3)}const h=p=>{if(document.body.style.cursor="",p.isPrimary){const f=s.getBoundingClientRect(),m=this.inputState;m.mouseX=Math.fround(E*(p.clientX-f.left)/f.width),m.mouseY=Math.fround(x*(p.clientY-f.top)/f.height),m.mouseButtons=p.buttons&7}};window.addEventListener("pointerdown",h),window.addEventListener("pointerup",h),window.addEventListener("pointermove",h),s.addEventListener("contextmenu",p=>{p.preventDefault()});const l={2:this.saveGameState.bind(this),4:this.loadGameState.bind(this),r:this.resetCart.bind(this),R:this.resetCart.bind(this),F8:n.toggleDevtools,F9:r,F10:a,F11:ne,Enter:this.onMenuButtonPressed.bind(this)},d=p=>{if(p.ctrlKey||p.altKey||p.srcElement instanceof HTMLElement&&p.srcElement.tagName=="INPUT")return;const f=p.type=="keydown";if(e.unlockAudio(),document.body.style.cursor="none",f){const g=l[p.key];if(g){g(),p.preventDefault();return}}let m=0,y=0;switch(p.code){case"KeyX":case"KeyV":case"Space":case"Period":y=L;break;case"KeyZ":case"KeyC":case"Comma":y=F;break;case"ArrowUp":y=H;break;case"ArrowDown":y=G;break;case"ArrowLeft":y=J;break;case"ArrowRight":y=Z;break;case"KeyA":case"KeyQ":m=1,y=L;break;case"ShiftLeft":case"Tab":m=1,y=F;break;case"KeyE":m=1,y=H;break;case"KeyD":m=1,y=G;break;case"KeyS":m=1,y=J;break;case"KeyF":m=1,y=Z;break;case"NumpadMultiply":case"NumpadDecimal":m=2,y=L;break;case"NumpadSubtract":case"NumpadEnter":m=2,y=F;break;case"Numpad8":m=2,y=H;break;case"Numpad5":m=2,y=G;break;case"Numpad4":m=2,y=J;break;case"Numpad6":m=2,y=Z;break}if(y!=0){p.preventDefault();const g=this.inputState.gamepad;f?g[m]|=y:g[m]&=~y}};if(window.addEventListener("keydown",d),window.addEventListener("keyup",d),top&&top!=window)try{top.addEventListener("keydown",d),top.addEventListener("keyup",d)}catch{}const u=()=>{if(navigator.getGamepads)for(const p of navigator.getGamepads()){if(p==null)continue;if(p.mapping!="standard"){this.gamepadUnavailableWarned.has(p.id)||(this.gamepadUnavailableWarned.add(p.id),this.notifications.show("Unsupported gamepad: "+p.id));continue}const f=p.buttons,m=p.axes;let y=0;(f[12].pressed||m[1]<-.5)&&(y|=H),(f[13].pressed||m[1]>.5)&&(y|=G),(f[14].pressed||m[0]<-.5)&&(y|=J),(f[15].pressed||m[0]>.5)&&(y|=Z),(f[0].pressed||f[3].pressed||f[5].pressed||f[7].pressed)&&(y|=L),(f[1].pressed||f[2].pressed||f[4].pressed||f[6].pressed)&&(y|=F),f[9].pressed&&(this.showMenu=!0),this.inputState.gamepad[p.index%4]=y}};let w=performance.now();const b=p=>{requestAnimationFrame(b),u();let f=this.inputState;if(this.menuOverlay!=null)if(this.menuOverlay.applyInput(),this.netplay)f=new ge;else return;let m=!1;for(p-w>=200&&(w=p);p>=w;)if(w+=1e3/60,this.netplay)this.netplay.update(f.gamepad[0])&&(m=!0);else{for(let y=0;y<4;++y)e.setGamepad(y,f.gamepad[y]);e.setMouse(f.mouseX,f.mouseY,f.mouseButtons),e.update(),m=!0}m&&(this.hideGamepadOverlay=!!e.getSystemFlag(Qe),e.composite())};requestAnimationFrame(b)}onMenuButtonPressed(){this.showMenu?this.inputState.gamepad[0]|=L:this.showMenu=!0}closeMenu(){if(this.showMenu){this.showMenu=!1;for(let t=0;t<4;++t)this.inputState.gamepad[t]=0}}saveGameState(){let t=this.savedGameState;t==null&&(t=this.savedGameState=new ht),t.read(this.runtime),this.notifications.show("State saved")}loadGameState(){if(this.netplay){this.notifications.show("State loading disabled during netplay");return}const t=this.savedGameState;t!=null?(t.write(this.runtime),this.notifications.show("State loaded")):this.notifications.show("Need to save a state first")}exportGameDisk(){if(this.runtime.diskSize<=0){this.notifications.show("Disk is empty");return}const t=new Uint8Array(this.runtime.diskBuffer).slice(0,this.runtime.diskSize),e=new Blob([t],{type:"application/octet-stream"}),s=document.createElement("a");s.style.display="none",s.href=URL.createObjectURL(e),s.download=`${this.diskPrefix}.disk`,document.body.appendChild(s),s.click(),document.body.removeChild(s)}importGameDisk(){if(this.netplay){this.notifications.show("Disk importing disabled during netplay");return}const t=this,e=document.createElement("input");e.style.display="none",e.type="file",e.accept=".disk",e.multiple=!1,e.addEventListener("change",()=>{const s=e.files;let i=new FileReader;i.addEventListener("load",()=>{let n=new Uint8Array(i.result).slice(0,X),r=new Uint8Array(X);r.set(n),t.runtime.diskBuffer=r.buffer,this.runtime.diskSize=n.length;const c=oe(n);try{localStorage.setItem(this.runtime.diskName,c),t.notifications.show("Disk imported")}catch(a){t.notifications.show("Error importing disk"),console.error("Error importing disk",a)}t.closeMenu()}),i.readAsArrayBuffer(s[0])}),document.body.appendChild(e),e.click(),document.body.removeChild(e)}clearGameDisk(){if(this.netplay){this.notifications.show("Disk clearing disabled during netplay");return}this.runtime.diskBuffer=new ArrayBuffer(X),this.runtime.diskSize=0;try{localStorage.removeItem(this.runtime.diskName)}catch(t){this.notifications.show("Error clearing disk"),console.error("Error clearing disk",t)}this.notifications.show("Disk cleared")}async copyNetplayLink(){this.netplay||(this.netplay=this.createNetplay(),this.netplay.host()),es(await this.netplay.getInviteLink()),this.notifications.show("Netplay link copied to clipboard")}async resetCart(t,e=!1){if(this.netplay){this.notifications.show("Reset disabled during netplay");return}t||(t=this.runtime.wasmBuffer);let s;e&&(s=new ht,s.read(this.runtime)),this.runtime.reset(!0),this.runtime.pauseState|=ie,await this.runtime.load(t),this.runtime.pauseState&=~ie,s?s.write(this.runtime):this.runtime.start()}createNetplay(){const t=new ps(this.runtime);return t.onstart=e=>this.notifications.show(`Joined as player ${e+1}`),t.onjoin=e=>this.notifications.show(`Player ${e+1} joined`),t.onleave=e=>this.notifications.show(`Player ${e+1} left`),t}getNetplaySummary(){return this.netplay?this.netplay.getSummary():[]}connectedCallback(){super.connectedCallback(),window.addEventListener("pointerup",this.onPointerUp)}disconnectedCallback(){window.removeEventListener("pointerup",this.onPointerUp),super.disconnectedCallback()}render(){return C` +
+ ${this.showMenu?C``:""} + + ${this.runtime.canvas} +
+ ${this.hideGamepadOverlay?"":C``} + `}},A.App.styles=ft` + :host { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + + touch-action: none; + user-select: none; + -webkit-user-select: none; + -webkit-tap-highlight-color: transparent; + + background: #202020; + } + + .content { + width: 100vmin; + height: 100vmin; + overflow: hidden; + } + + /** Nudge the game upwards a bit in portrait to make space for the virtual gamepad. */ + @media (pointer: coarse) and (max-aspect-ratio: 2/3) { + .content { + position: absolute; + top: calc((100% - 220px - 100vmin)/2) + } + } + + .content canvas { + width: 100%; + height: 100%; + image-rendering: pixelated; + image-rendering: crisp-edges; + } + `,ut([at()],A.App.prototype,"hideGamepadOverlay",2),ut([at()],A.App.prototype,"showMenu",2),ut([ct("wasm4-menu-overlay")],A.App.prototype,"menuOverlay",2),ut([ct("wasm4-notifications")],A.App.prototype,"notifications",2),A.App=ut([bt("wasm4-app")],A.App);/** + * @license + * Copyright 2021 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function*Ut(o,t){if(o!==void 0){let e=0;for(const s of o)yield t(s,e++)}}var Rs=Object.defineProperty,Ds=Object.getOwnPropertyDescriptor,Ot=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ds(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Rs(t,e,i),i};const j={DEFAULT:0,DISK:1},Ns=[{CONTINUE:0,SAVE_STATE:1,LOAD_STATE:2,DISK_OPTIONS:3,COPY_NETPLAY_LINK:4,RESET_CART:5},{BACK:0,EXPORT_DISK:1,IMPORT_DISK:2,CLEAR_DISK:3}],Mt=[["CONTINUE","SAVE STATE","LOAD STATE","DISK OPTIONS","COPY NETPLAY URL","RESET CART"],["BACK","EXPORT DISK","IMPORT DISK","CLEAR DISK"]];A.MenuOverlay=class extends M{constructor(){super(),this.lastGamepad=0,this.selectedIdx=0,this.netplaySummary=[],this.optionContext=0,this.optionContextHistory=[]}get optionIndex(){return Ns[this.optionContext]}get options(){return Mt[this.optionContext]}previousContext(){if(this.optionContextHistory.length>0){const t=this.optionContextHistory.pop();this.resetInput(),this.optionContext=t.context,this.selectedIdx=t.index}}switchContext(t,e=0){this.optionContextHistory.push({context:this.optionContext,index:this.selectedIdx}),this.resetInput(),this.optionContext=t,this.selectedIdx=e}resetInput(){this.app.inputState.gamepad[0]=0}applyInput(){let t=0;for(const s of this.app.inputState.gamepad)t|=s;const e=t&(t^this.lastGamepad);if(this.lastGamepad=t,e&(L|F)){if(this.optionContext===j.DEFAULT)switch(this.selectedIdx){case this.optionIndex.CONTINUE:this.app.closeMenu();break;case this.optionIndex.SAVE_STATE:this.app.saveGameState(),this.app.closeMenu();break;case this.optionIndex.LOAD_STATE:this.app.loadGameState(),this.app.closeMenu();break;case this.optionIndex.DISK_OPTIONS:this.switchContext(j.DISK);break;case this.optionIndex.COPY_NETPLAY_LINK:this.app.copyNetplayLink(),this.app.closeMenu();break;case this.optionIndex.RESET_CART:this.app.resetCart(),this.app.closeMenu();break}else if(this.optionContext===j.DISK)switch(this.selectedIdx){case this.optionIndex.BACK:this.previousContext();break;case this.optionIndex.EXPORT_DISK:this.app.exportGameDisk(),this.app.closeMenu();break;case this.optionIndex.IMPORT_DISK:this.resetInput(),this.app.importGameDisk();break;case this.optionIndex.CLEAR_DISK:this.app.clearGameDisk(),this.app.closeMenu();break}}e&G&&this.selectedIdx++,e&H&&this.selectedIdx--,this.selectedIdx=(this.selectedIdx+this.options.length)%this.options.length}connectedCallback(){super.connectedCallback();const t=()=>{this.netplaySummary=this.app.getNetplaySummary()};t(),this.netplayPollInterval=window.setInterval(t,1e3)}disconnectedCallback(){window.clearInterval(this.netplayPollInterval),super.disconnectedCallback()}render(){return C` +
+ WASM-4 v${"2.7.0"} +
+ +
+ ${Ut(this.netplaySummary,t=>{const e=t.ping<100?"good":t.ping<200?"ok":"bad",s=t.ping<0?C`YOU`:C`${Math.ceil(t.ping)}ms`;return C`
PLAYER ${t.playerIdx>=0?t.playerIdx+1:"?"} ${s}
`})} +
+ `}},A.MenuOverlay.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + + color: #a0a0a0; + font: 16px wasm4-font; + + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + + background: rgba(0, 0, 0, 0.85); + } + + .version { + color: #fff; + padding-bottom: 1em; + } + + .menu { + border: 2px solid #f0f0f0; + padding: 0 1em 0 1em; + line-height: 2em; + } + + .netplay-summary { + margin-top: 2em; + line-height: 1.5em; + } + + .ping-you { + color: #f0f0f0; + } + + .ping-good { + color: green; + } + + .ping-ok { + color: yellow; + } + + .ping-bad { + color: red; + } + + ul { + list-style: none; + padding-left: 0; + padding-right: 1em; + } + + li::before { + content: "\\00a0\\00a0"; + } + li.selected::before { + content: "> "; + } + li.selected { + color: #fff; + } + `,Ot([at()],A.MenuOverlay.prototype,"selectedIdx",2),Ot([at()],A.MenuOverlay.prototype,"netplaySummary",2),A.MenuOverlay=Ot([bt("wasm4-menu-overlay")],A.MenuOverlay);var Bs=Object.defineProperty,Fs=Object.getOwnPropertyDescriptor,Et=(o,t,e,s)=>{for(var i=s>1?void 0:s?Fs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Bs(t,e,i),i};function Q(o,t,e){o&&(e?o.classList.add(t):o.classList.remove(t))}A.VirtualGamepad=class extends M{constructor(){super(...arguments),this.touchEvents=new Map,this.onPointerEvent=t=>{if(t.pointerType!="touch")return;switch(t.preventDefault(),t.type){case"pointerdown":case"pointermove":this.touchEvents.set(t.pointerId,t);break;default:this.touchEvents.delete(t.pointerId);break}let e=0;if(this.touchEvents.size){const c=this.dpad.getBoundingClientRect(),a=c.x+c.width/2,h=c.y+c.height/2,l=this.action1.getBoundingClientRect(),d=l.x+l.width/2,u=l.y+l.height/2,w=this.action2.getBoundingClientRect(),b=w.x+w.width/2,p=w.y+w.height/2;let f,m,y,g,_;for(const v of this.touchEvents.values())f=v.clientX-a,m=v.clientY-h,y=Math.sqrt(f*f+m*m),y<100&&y>10&&(g=f/y,_=m/y,-g>.6?e|=J:g>.6&&(e|=Z),-_>.6?e|=H:_>.6&&(e|=G)),f=v.clientX-d,m=v.clientY-u,f*f+m*m<2500&&(e|=L),f=v.clientX-b,m=v.clientY-p,f*f+m*m<2500&&(e|=F)}Q(this.action1,"pressed",e&L),Q(this.action2,"pressed",e&F),Q(this.dpad,"pressed-left",e&J),Q(this.dpad,"pressed-right",e&Z),Q(this.dpad,"pressed-up",e&H),Q(this.dpad,"pressed-down",e&G),this.app.inputState.gamepad[0]=e}}connectedCallback(){super.connectedCallback(),window.addEventListener("pointercancel",this.onPointerEvent),window.addEventListener("pointerdown",this.onPointerEvent),window.addEventListener("pointermove",this.onPointerEvent),window.addEventListener("pointerup",this.onPointerEvent)}disconnectedCallback(){window.removeEventListener("pointercancel",this.onPointerEvent),window.removeEventListener("pointerdown",this.onPointerEvent),window.removeEventListener("pointermove",this.onPointerEvent),window.removeEventListener("pointerup",this.onPointerEvent),super.disconnectedCallback()}onMenuButtonPressed(t){this.app.onMenuButtonPressed(),t.stopImmediatePropagation()}render(){return C` + +
+
X
+
Z
+ `}},A.VirtualGamepad.styles=ft` + :host { + display: none; + } + @media (hover: none) or (pointer: coarse) { + :host { + display: inherit; + } + } + + .dpad { + pointer-events: none; + position: absolute; + width: 39px; + height: 120px; + left: 69px; + bottom: 30px; + background: #444; + border-radius: 9px; + } + .dpad:before { + position: absolute; + width: 120px; + height: 39px; + top: 39px; + left: -39px; + background: #444; + border-radius: 9px; + content: ""; + } + .dpad:after { + position: absolute; + height: 39px; + width: 39px; + top: 39px; + border-radius: 100%; + background: #333; + content: ""; + } + .dpad.pressed-left:before { + border-left: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-right:before { + border-right: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-up { + border-top: 4px solid #A93671; + } + .dpad.pressed-down { + border-bottom: 4px solid #A93671; + height: 116px; + } + + .action1 { + right: 80px; + bottom: 30px; + } + .action2 { + right: 30px; + bottom: 90px; + } + .action1, .action2 { + pointer-events: none; + position: absolute; + width: 60px; + height: 60px; + border: 4px solid #A93671; + border-radius: 50px; + + /** TODO(2022-03-14): Button text should be centered but is off slightly. */ + color: #A93671; + font: 24px wasm4-font; + text-align: center; + line-height: 60px; + } + .action1.pressed, .action2.pressed { + background: #A93671; + } + + .menu { + position: absolute; + background: #444; + width: 60px; + height: 20px; + bottom: 200px; + right: 35px; + border-radius: 10px; + } + `,Et([ct(".dpad")],A.VirtualGamepad.prototype,"dpad",2),Et([ct(".action1")],A.VirtualGamepad.prototype,"action1",2),Et([ct(".action2")],A.VirtualGamepad.prototype,"action2",2),A.VirtualGamepad=Et([bt("wasm4-virtual-gamepad")],A.VirtualGamepad);var Hs=Object.defineProperty,Gs=Object.getOwnPropertyDescriptor,Ae=(o,t,e,s)=>{for(var i=s>1?void 0:s?Gs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Hs(t,e,i),i};return A.Notifications=class extends M{constructor(){super(...arguments),this.notifications=[]}show(t){this.notifications=this.notifications.concat([t]),setTimeout(()=>{this.notifications=this.notifications.slice(1)},5e3)}render(){return this.notifications.map(t=>C`
${t}
`)}},A.Notifications.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + pointer-events: none; + + color: #fff; + font: 24px wasm4-font; + + display: flex; + flex-direction: column; + } + + .notification { + background: rgba(0, 0, 0, 0.85); + padding: 0.5em; + /* animation: appear 0.5s ease-out, disappear 0.5s 4.5s ease-in; */ + /* animation-fill-mode: forwards; */ + animation: appear 0.5s ease-out; + } + + @keyframes appear { + from { + padding-left: 2em; + opacity: 0; + } + to { + opacity: 1; + padding-left: 0.5em; + } + } + + /*@keyframes disappear { + from { + opacity: 1; + } + to { + opacity: 0; + } + }*/ + `,Ae([at()],A.Notifications.prototype,"notifications",2),A.Notifications=Ae([bt("wasm4-notifications")],A.Notifications),Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),A}({}); diff --git a/w4-pong/cart.wasm b/w4-pong/cart.wasm new file mode 100644 index 00000000..422d185a Binary files /dev/null and b/w4-pong/cart.wasm differ diff --git a/w4-pong/favicon.ico b/w4-pong/favicon.ico new file mode 100644 index 00000000..1e3dcdc7 Binary files /dev/null and b/w4-pong/favicon.ico differ diff --git a/w4-pong/index.html b/w4-pong/index.html new file mode 100644 index 00000000..889693a0 --- /dev/null +++ b/w4-pong/index.html @@ -0,0 +1,14 @@ + + + + + + + Wa-lang/WASM-4 Game + + + + + + + diff --git a/w4-pong/w4pong.wat b/w4-pong/w4pong.wat new file mode 100644 index 00000000..bfcdec7e --- /dev/null +++ b/w4-pong/w4pong.wat @@ -0,0 +1,23738 @@ +(module $__walang__ + (import "env" "traceUtf8" (func $runtime.traceUtf8 (param i32) (param i32))) + (import "env" "oval" (func $syscall$wasm4.__import__oval (param i32) (param i32) (param i32) (param i32))) + (import "env" "rect" (func $syscall$wasm4.__import__rect (param i32) (param i32) (param i32) (param i32))) + (import "env" "textUtf8" (func $syscall$wasm4.__import__textUtf8 (param i32) (param i32) (param i32) (param i32))) + (import "env" "tone" (func $syscall$wasm4.__import__tone (param i32) (param i32) (param i32) (param i32))) + (import "env" "memory" (memory 1)) + (table 28 funcref) + (type $$onFree (func (param i32))) + (type $$wa.runtime.comp (func (param i32) (param i32) (result i32))) + (type $$$fnSig1 (func (param i32) (param i32) (result i64))) + (type $$$fnSig2 (func (param i32) (param i32) (param i64))) + (type $$$fnSig3 (func (param i32) (param i32) (result i64))) + (type $$$fnSig4 (func (param i32) (param i32) (result i32 i32 i32))) + (type $$$fnSig5 (func (param i32) (param i32))) + (global $__stack_ptr (mut i32) (i32.const 14656)) + (global $__heap_max i32 (i32.const 65536)) + (global $$wa.runtime.closure_data (mut i32) (i32.const 0)) + (global $$wa.runtime._concretTypeCount (mut i32) (i32.const 4)) + (global $$wa.runtime._interfaceCount (mut i32) (i32.const 4)) + (global $$wa.runtime._itabsPtr (mut i32) (i32.const 55480)) + (global $runtime.init$guard (mut i32) (i32.const 0)) + (global $$knr_basep (mut i32) (i32.const 0)) + (global $$knr_freep (mut i32) (i32.const 0)) + (global $math._cos.0 i32 (i32.const 0)) + (global $math._cos.1 i32 (i32.const 14792)) + (global $math._sin.0 i32 (i32.const 0)) + (global $math._sin.1 i32 (i32.const 14840)) + (global $math.init$guard (mut i32) (i32.const 0)) + (global $math$bits.deBruijn32tab.0 i32 (i32.const 0)) + (global $math$bits.deBruijn32tab.1 i32 (i32.const 14888)) + (global $math$bits.deBruijn64tab.0 i32 (i32.const 0)) + (global $math$bits.deBruijn64tab.1 i32 (i32.const 14920)) + (global $math$bits.init$guard (mut i32) (i32.const 0)) + (global $math$rand.fe.0 i32 (i32.const 0)) + (global $math$rand.fe.1 i32 (i32.const 14984)) + (global $math$rand.fn.0 i32 (i32.const 0)) + (global $math$rand.fn.1 i32 (i32.const 16008)) + (global $math$rand.globalRand.0 i32 (i32.const 0)) + (global $math$rand.globalRand.1 i32 (i32.const 16520)) + (global $math$rand.init$guard (mut i32) (i32.const 0)) + (global $math$rand.ke.0 i32 (i32.const 0)) + (global $math$rand.ke.1 i32 (i32.const 16528)) + (global $math$rand.kn.0 i32 (i32.const 0)) + (global $math$rand.kn.1 i32 (i32.const 17552)) + (global $math$rand.rngCooked.0 i32 (i32.const 0)) + (global $math$rand.rngCooked.1 i32 (i32.const 18064)) + (global $math$rand.we.0 i32 (i32.const 0)) + (global $math$rand.we.1 i32 (i32.const 22920)) + (global $math$rand.wn.0 i32 (i32.const 0)) + (global $math$rand.wn.1 i32 (i32.const 23944)) + (global $errors.init$guard (mut i32) (i32.const 0)) + (global $strconv.ErrRange.0 i32 (i32.const 0)) + (global $strconv.ErrRange.1 i32 (i32.const 24456)) + (global $strconv.ErrSyntax.0 i32 (i32.const 0)) + (global $strconv.ErrSyntax.1 i32 (i32.const 24472)) + (global $strconv.detailedPowersOfTen.0 i32 (i32.const 0)) + (global $strconv.detailedPowersOfTen.1 i32 (i32.const 24488)) + (global $strconv.f64info.0 i32 (i32.const 0)) + (global $strconv.f64info.1 i32 (i32.const 35624)) + (global $strconv.float32info.0 i32 (i32.const 0)) + (global $strconv.float32info.1 i32 (i32.const 35636)) + (global $strconv.float32pow10.0 i32 (i32.const 0)) + (global $strconv.float32pow10.1 i32 (i32.const 35648)) + (global $strconv.float64pow10.0 i32 (i32.const 0)) + (global $strconv.float64pow10.1 i32 (i32.const 35696)) + (global $strconv.init$guard (mut i32) (i32.const 0)) + (global $strconv.isGraphic.0 i32 (i32.const 0)) + (global $strconv.isGraphic.1 i32 (i32.const 35880)) + (global $strconv.isNotPrint16.0 i32 (i32.const 0)) + (global $strconv.isNotPrint16.1 i32 (i32.const 35912)) + (global $strconv.isNotPrint32.0 i32 (i32.const 0)) + (global $strconv.isNotPrint32.1 i32 (i32.const 36176)) + (global $strconv.isPrint16.0 i32 (i32.const 0)) + (global $strconv.isPrint16.1 i32 (i32.const 36366)) + (global $strconv.isPrint32.0 i32 (i32.const 0)) + (global $strconv.isPrint32.1 i32 (i32.const 37236)) + (global $strconv.leftcheats.0 i32 (i32.const 0)) + (global $strconv.leftcheats.1 i32 (i32.const 39108)) + (global $strconv.optimize.0 i32 (i32.const 0)) + (global $strconv.optimize.1 i32 (i32.const 40084)) + (global $strconv.powtab.0 i32 (i32.const 0)) + (global $strconv.powtab.1 i32 (i32.const 40088)) + (global $strconv.u64pow10.0 i32 (i32.const 0)) + (global $strconv.u64pow10.1 i32 (i32.const 40128)) + (global $syscall$wasm4.init$guard (mut i32) (i32.const 0)) + (global $unicode$utf8.acceptRanges.0 i32 (i32.const 0)) + (global $unicode$utf8.acceptRanges.1 i32 (i32.const 40288)) + (global $unicode$utf8.first.0 i32 (i32.const 0)) + (global $unicode$utf8.first.1 i32 (i32.const 40320)) + (global $unicode$utf8.init$guard (mut i32) (i32.const 0)) + (global $w4pong.game.0 i32 (i32.const 0)) + (global $w4pong.game.1 i32 (i32.const 40576)) + (global $w4pong.init$guard (mut i32) (i32.const 0)) + (global $runtime.zptr (mut i32) (i32.const 44240)) + (global $__heap_base i32 (i32.const 55568)) + (func $runtime.throw + unreachable + ) + (func $runtime.heapBase (result i32) + global.get $__heap_base + ) + (func $runtime.heapMax (result i32) + global.get $__heap_max + ) + (func $runtime.HeapAlloc (export "runtime.HeapAlloc") (param $nbytes i32) (result i32) + (local $ptr i32) + local.get $nbytes + i32.eqz + if + i32.const 0 + return + end + local.get $nbytes + i32.const 7 + i32.add + i32.const 8 + i32.div_u + i32.const 8 + i32.mul + local.set $nbytes + local.get $nbytes + call $runtime.malloc + local.set $ptr + loop $zero + local.get $nbytes + i32.const 8 + i32.sub + local.tee $nbytes + local.get $ptr + i32.add + i64.const 0 + i64.store align=8 + local.get $nbytes + if + br $zero + end + end + local.get $ptr + ) + (func $runtime.HeapFree (export "runtime.HeapFree") (param $ptr i32) + local.get $ptr + call $runtime.free + ) + (func $runtime.Block.Init (param $ptr i32) (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + i32.const 1 + i32.store align=1 + local.get $ptr + local.get $item_count + i32.store offset=4 align=1 + local.get $ptr + local.get $release_func + i32.store offset=8 align=1 + local.get $ptr + local.get $item_size + i32.store offset=12 align=1 + end + ) + (func $runtime.Block.HeapAlloc (export "runtime.Block.HeapAlloc") (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $item_count + local.get $item_size + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $item_count + local.get $release_func + local.get $item_size + call $runtime.Block.Init + ) + (func $runtime.DupI32 (param $a i32) (result i32 i32) + local.get $a + local.get $a + ) + (func $runtime.Block.Retain (export "runtime.Block.Retain") (param $ptr i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + local.get $ptr + i32.load align=1 + i32.const 1 + i32.add + i32.store align=1 + end + ) + (func $runtime.Block.Release (export "runtime.Block.Release") (param $ptr i32) + (local $ref_count i32) + (local $item_count i32) + (local $free_func i32) + (local $item_size i32) + (local $data_ptr i32) + local.get $ptr + i32.const 0 + i32.eq + if + return + end + local.get $ptr + i32.load align=1 + i32.const 1 + i32.sub + local.set $ref_count + local.get $ref_count + if + local.get $ptr + local.get $ref_count + i32.store align=1 + else + local.get $ptr + i32.load offset=8 align=1 + local.set $free_func + local.get $free_func + if + local.get $ptr + i32.load offset=4 align=1 + local.set $item_count + local.get $item_count + if + local.get $ptr + i32.load offset=12 align=1 + local.set $item_size + local.get $ptr + i32.const 16 + i32.add + local.set $data_ptr + loop $free_next + local.get $data_ptr + local.get $free_func + call_indirect 0 (type $$onFree) + local.get $item_count + i32.const 1 + i32.sub + local.set $item_count + local.get $item_count + if + local.get $data_ptr + local.get $item_size + i32.add + local.set $data_ptr + br $free_next + end + end + end + end + local.get $ptr + call $runtime.HeapFree + end + ) + (func $$wa.runtime.string_to_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) + local.get $d + ) + (func $$wa.runtime.string_to_iter (param $b i32) (param $d i32) (param $l i32) (result i32 i32 i32) + local.get $d + local.get $l + i32.const 0 + ) + (func $$syscall/wasm4.__linkname__string_data_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) + local.get $d + ) + (func $$syscall/wasm4.__linkname__make_slice (param $blk i32) (param $ptr i32) (param $len i32) (param $cap i32) (result i32 i32 i32 i32) + local.get $blk + local.get $ptr + local.get $len + local.get $cap + return + ) + (func $$string.appendstr (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32 i32 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $item i32) + (local $src i32) + (local $dest i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_len + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + ) + (func $$string.$$compAddr (param $p0 i32) (param $p1 i32) (result i32) + (local $v0.0 i32) + (local $v0.1 i32) + (local $v0.2 i32) + (local $v1.0 i32) + (local $v1.1 i32) + (local $v1.2 i32) + local.get $p0 + if + local.get $p0 + i32.load + call $runtime.Block.Retain + local.get $p0 + i32.load offset=4 + local.get $p0 + i32.load offset=8 + local.set $v0.2 + local.set $v0.1 + local.get $v0.0 + call $runtime.Block.Release + local.set $v0.0 + end + local.get $p1 + if + local.get $p1 + i32.load + call $runtime.Block.Retain + local.get $p1 + i32.load offset=4 + local.get $p1 + i32.load offset=8 + local.set $v1.2 + local.set $v1.1 + local.get $v1.0 + call $runtime.Block.Release + local.set $v1.0 + end + local.get $v0.0 + local.get $v0.1 + local.get $v0.2 + local.get $v1.0 + local.get $v1.1 + local.get $v1.2 + call $$wa.runtime.string_Comp + local.get $v0.0 + call $runtime.Block.Release + local.get $v1.0 + call $runtime.Block.Release + ) + (func $$u8.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$string.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $runtime.free (param $ap i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 + end + i32.const 0 + local.set $$current_block + local.get $ap + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ap + i32.const 8 + i32.sub + local.set $$t1 + i32.const 0 + local.set $$t2.0 + i32.const 0 + local.set $$t2.1 + local.get $$t1 + call $runtime.knr_getBlockHeader + local.set $$t3.1 + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.set $$t2.1 + local.set $$t2.0 + local.get $$t2.1 + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.le_u + local.set $$t5 + local.get $$t5 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $ap + i32.const 8 + i32.rem_u + local.set $$t6 + local.get $$t6 + i32.const 0 + i32.eq + i32.eqz + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + global.get $$knr_freep + local.set $$t8 + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + local.get $$t8 + call $runtime.knr_getBlockHeader + local.set $$t10.1 + local.set $$t10.0 + local.get $$t10.0 + local.get $$t10.1 + local.set $$t9.1 + local.set $$t9.0 + br $$Block_7 + end + i32.const 6 + local.set $$current_block + local.get $$t9.0 + local.set $$t11 + local.get $$t12 + local.get $$t11 + i32.ge_u + local.set $$t13 + local.get $$t13 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $$t2.1 + local.set $$t14 + local.get $$t14 + i32.const 8 + i32.mul + local.set $$t15 + local.get $$t1 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t9.0 + local.set $$t17 + local.get $$t16 + local.get $$t17 + i32.eq + local.set $$t18 + local.get $$t18 + if + br $$Block_12 + else + br $$Block_14 + end + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t19 + end + local.set $$t12 + i32.const 8 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t9.0 + local.set $$t21 + local.get $$t1 + local.get $$t21 + i32.lt_u + local.set $$t22 + local.get $$t22 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t9.0 + local.set $$t19 + local.get $$t19 + call $runtime.knr_getBlockHeader + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t9.1 + local.set $$t9.0 + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t24 + local.get $$t24 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 12 + local.set $$current_block + local.get $$t9.0 + local.set $$t25 + local.get $$t1 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 0 + local.set $$t27.0 + i32.const 0 + local.set $$t27.1 + local.get $$t9.0 + local.set $$t28 + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t29.1 + local.set $$t29.0 + local.get $$t29.0 + local.get $$t29.1 + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.1 + local.set $$t30 + local.get $$t2.1 + local.set $$t31 + local.get $$t31 + local.get $$t30 + i32.add + local.set $$t32 + local.get $$t32 + local.set $$t2.1 + local.get $$t27.0 + local.set $$t33 + local.get $$t33 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t34.1 + local.set $$t34.0 + local.get $$t1 + local.get $$t34.0 + local.get $$t34.1 + call $runtime.knr_setBlockHeader + br $$Block_13 + end + i32.const 14 + local.set $$current_block + local.get $$t9.1 + local.set $$t35 + local.get $$t35 + i32.const 8 + i32.mul + local.set $$t36 + local.get $$t12 + local.get $$t36 + i32.add + local.set $$t37 + local.get $$t37 + local.get $$t1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_15 + else + br $$Block_17 + end + end + i32.const 15 + local.set $$current_block + local.get $$t9.0 + local.set $$t39 + local.get $$t39 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t40.1 + local.set $$t40.0 + local.get $$t1 + local.get $$t40.0 + local.get $$t40.1 + call $runtime.knr_setBlockHeader + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $$t2.1 + local.set $$t41 + local.get $$t9.1 + local.set $$t42 + local.get $$t42 + local.get $$t41 + i32.add + local.set $$t43 + local.get $$t43 + local.set $$t9.1 + local.get $$t2.0 + local.set $$t44 + local.get $$t44 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t45.1 + local.set $$t45.0 + local.get $$t12 + local.get $$t45.0 + local.get $$t45.1 + call $runtime.knr_setBlockHeader + br $$Block_16 + end + i32.const 17 + local.set $$current_block + local.get $$t12 + global.set $$knr_freep + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t1 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t46.1 + local.set $$t46.0 + local.get $$t12 + local.get $$t46.0 + local.get $$t46.1 + call $runtime.knr_setBlockHeader + i32.const 17 + local.set $$block_selector + br $$BlockDisp + end + end + end + ) + (func $runtime.getItab (param $dhash i32) (param $ihash i32) (param $commanok i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + global.get $$wa.runtime._itabsPtr + local.set $$t0 + local.get $dhash + i32.const 1 + i32.sub + local.set $$t1 + global.get $$wa.runtime._interfaceCount + local.set $$t2 + local.get $$t1 + local.get $$t2 + i32.mul + local.set $$t3 + local.get $$t3 + local.get $ihash + i32.sub + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.sub + local.set $$t5 + local.get $$t5 + i32.const 4 + i32.mul + local.set $$t6 + local.get $$t0 + local.get $$t6 + i32.add + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + call $runtime.getU32 + local.set $$t9 + local.get $$t9 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $runtime.getU32 (param $addr i32) (result i32) + local.get $addr + i32.load + ) + (func $runtime.get_u8 (param $addr i32) (result i32) + local.get $addr + i32.load8_u align=1 + ) + (func $runtime.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $runtime.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $runtime.init$guard + call $syscall$wasm4.init + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $runtime.knr_getBlockHeader (param $addr i32) (result i32 i32) + local.get $addr + i32.load + local.get $addr + i32.load offset=4 + ) + (func $runtime.knr_setBlockHeader (param $addr i32) (param $data.0 i32) (param $data.1 i32) + local.get $addr + local.get $data.0 + i32.store + local.get $addr + local.get $data.1 + i32.store offset=4 + ) + (func $runtime.malloc (param $nbytes i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 + end + i32.const 0 + local.set $$current_block + local.get $nbytes + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + global.get $$knr_basep + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + call $runtime.heapMax + local.set $$t3 + global.get $$knr_basep + local.set $$t4 + local.get $$t3 + local.get $$t4 + i32.sub + local.set $$t5 + local.get $nbytes + local.get $$t5 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + call $runtime.heapBase + local.set $$t7 + local.get $$t7 + global.set $$knr_basep + global.get $$knr_basep + local.set $$t8 + local.get $$t8 + global.set $$knr_freep + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t10 + call $runtime.heapMax + local.set $$t11 + global.get $$knr_basep + local.set $$t12 + local.get $$t11 + local.get $$t12 + i32.sub + local.set $$t13 + local.get $$t13 + i32.const 8 + i32.div_u + local.set $$t14 + local.get $$t14 + i32.const 1 + i32.sub + local.set $$t15 + local.get $$t10 + local.set $$t9.0 + local.get $$t15 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t16 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t17.1 + local.set $$t17.0 + local.get $$t16 + local.get $$t17.0 + local.get $$t17.1 + call $runtime.knr_setBlockHeader + br $$Block_4 + end + i32.const 5 + local.set $$current_block + local.get $nbytes + i32.const 8 + i32.add + local.set $$t18 + local.get $$t18 + i32.const 1 + i32.sub + local.set $$t19 + local.get $$t19 + i32.const 8 + i32.div_u + local.set $$t20 + local.get $$t20 + i32.const 1 + i32.add + local.set $$t21 + global.get $$knr_freep + local.set $$t22 + i32.const 0 + local.set $$t23.0 + i32.const 0 + local.set $$t23.1 + local.get $$t22 + call $runtime.knr_getBlockHeader + local.set $$t24.1 + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.set $$t25 + i32.const 0 + local.set $$t26.0 + i32.const 0 + local.set $$t26.1 + local.get $$t25 + call $runtime.knr_getBlockHeader + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.0 + local.get $$t27.1 + local.set $$t26.1 + local.set $$t26.0 + br $$Block_5 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t22 + else + local.get $$t28 + end + local.set $$t29 + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t25 + else + local.get $$t30 + end + local.set $$t28 + i32.const 6 + local.set $$current_block + local.get $$t26.1 + local.set $$t31 + local.get $$t31 + local.get $$t21 + i32.ge_u + local.set $$t32 + local.get $$t32 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t26.1 + local.set $$t33 + local.get $$t33 + local.get $$t21 + i32.eq + local.set $$t34 + local.get $$t34 + if + br $$Block_8 + else + br $$Block_10 + end + end + i32.const 8 + local.set $$current_block + global.get $$knr_freep + local.set $$t35 + local.get $$t28 + local.get $$t35 + i32.eq + local.set $$t36 + local.get $$t36 + if + br $$Block_11 + else + br $$Block_12 + end + end + i32.const 9 + local.set $$current_block + local.get $$t26.0 + local.set $$t37 + local.get $$t37 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t38.1 + local.set $$t38.0 + local.get $$t29 + local.get $$t38.0 + local.get $$t38.1 + call $runtime.knr_setBlockHeader + br $$Block_9 + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t28 + else + local.get $$t39 + end + local.set $$t40 + i32.const 10 + local.set $$current_block + local.get $$t29 + global.set $$knr_freep + local.get $$t40 + i32.const 8 + i32.add + local.set $$t41 + local.get $$t41 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $$t26.1 + local.set $$t42 + local.get $$t42 + local.get $$t21 + i32.sub + local.set $$t43 + local.get $$t43 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t44.1 + local.set $$t44.0 + local.get $$t28 + local.get $$t44.0 + local.get $$t44.1 + call $runtime.knr_setBlockHeader + local.get $$t26.1 + local.set $$t45 + local.get $$t45 + i32.const 8 + i32.mul + local.set $$t46 + local.get $$t28 + local.get $$t46 + i32.add + local.set $$t39 + local.get $$t39 + call $runtime.knr_getBlockHeader + local.set $$t47.1 + local.set $$t47.0 + local.get $$t47.0 + local.get $$t47.1 + local.set $$t26.1 + local.set $$t26.0 + local.get $$t21 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t48.1 + local.set $$t48.0 + local.get $$t39 + local.get $$t48.0 + local.get $$t48.1 + call $runtime.knr_setBlockHeader + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t49.1 + local.set $$t49.0 + local.get $$t49.0 + local.get $$t49.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t26.0 + local.set $$t30 + local.get $$t30 + call $runtime.knr_getBlockHeader + local.set $$t50.1 + local.set $$t50.0 + local.get $$t50.0 + local.get $$t50.1 + local.set $$t26.1 + local.set $$t26.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + ) + (func $$void.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$void.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + call_indirect 0 (type $$onFree) + ) + (func $$i`0`.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapNode.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 9 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapImp.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 11 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapIter.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 12 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$array1.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $runtime.next_rune (param $iter.0 i32) (param $iter.1 i32) (param $iter.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$ret_2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101 i32) + (local $$t102 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106 i32) + (local $$t107 i32) + (local $$t108 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110 i32) + (local $$t111 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116 i32) + (local $$t117 i32) + (local $$t118 i32) + (local $$t119 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121 i32) + (local $$t122 i32) + (local $$t123 i32) + (local $$t124 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126 i32) + (local $$t127 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $iter.0 + i32.store + local.get $$t0.1 + local.get $iter.1 + i32.store offset=4 + local.get $$t0.1 + local.get $iter.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.ge_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + i32.const 0 + local.set $$ret_0 + local.get $$t7 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + local.get $$t9 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + local.set $$t12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t14 + local.set $$t15 + local.get $$t12 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t16 + call $runtime.get_u8 + local.set $$t17 + local.get $$t17 + local.set $$t18 + local.get $$t18 + i32.const 128 + i32.and + local.set $$t19 + local.get $$t19 + i32.const 0 + i32.eq + local.set $$t20 + local.get $$t20 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.load + local.set $$t22 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t24 + i32.const 1 + i32.add + local.set $$t25 + i32.const 1 + local.set $$ret_0 + local.get $$t22 + local.set $$ret_1 + local.get $$t18 + local.set $$ret_2 + local.get $$t25 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t18 + i32.const 224 + i32.and + local.set $$t26 + local.get $$t26 + i32.const 192 + i32.eq + local.set $$t27 + local.get $$t27 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t18 + i32.const 31 + i32.and + local.set $$t28 + local.get $$t28 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t29 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t32 + local.get $$t35 + i32.add + local.set $$t36 + local.get $$t36 + i32.const 1 + i32.add + local.set $$t37 + local.get $$t37 + call $runtime.get_u8 + local.set $$t38 + local.get $$t38 + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t29 + local.get $$t40 + i32.or + local.set $$t43 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.add + local.set $$t46 + i32.const 1 + local.set $$ret_0 + local.get $$t42 + local.set $$ret_1 + local.get $$t43 + local.set $$ret_2 + local.get $$t46 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $$t18 + i32.const 240 + i32.and + local.set $$t47 + local.get $$t47 + i32.const 224 + i32.eq + local.set $$t48 + local.get $$t48 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t18 + i32.const 15 + i32.and + local.set $$t49 + local.get $$t49 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t50 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.set $$t52 + local.get $$t52 + local.set $$t53 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.1 + i32.load + local.set $$t55 + local.get $$t55 + local.set $$t56 + local.get $$t53 + local.get $$t56 + i32.add + local.set $$t57 + local.get $$t57 + i32.const 1 + i32.add + local.set $$t58 + local.get $$t58 + call $runtime.get_u8 + local.set $$t59 + local.get $$t59 + local.set $$t60 + local.get $$t60 + i32.const 63 + i32.and + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t63.1 + i32.load + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.load + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t65 + local.get $$t68 + i32.add + local.set $$t69 + local.get $$t69 + i32.const 2 + i32.add + local.set $$t70 + local.get $$t70 + call $runtime.get_u8 + local.set $$t71 + local.get $$t71 + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + local.get $$t74.1 + i32.load + local.set $$t75 + local.get $$t50 + local.get $$t62 + i32.or + local.set $$t76 + local.get $$t76 + local.get $$t73 + i32.or + local.set $$t77 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + local.get $$t78.1 + i32.load + local.set $$t79 + local.get $$t79 + i32.const 3 + i32.add + local.set $$t80 + i32.const 1 + local.set $$ret_0 + local.get $$t75 + local.set $$ret_1 + local.get $$t77 + local.set $$ret_2 + local.get $$t80 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t18 + i32.const 248 + i32.and + local.set $$t81 + local.get $$t81 + i32.const 240 + i32.eq + local.set $$t82 + local.get $$t82 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t18 + i32.const 7 + i32.and + local.set $$t83 + local.get $$t83 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t84 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.1 + i32.load + local.set $$t86 + local.get $$t86 + local.set $$t87 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.load + local.set $$t89 + local.get $$t89 + local.set $$t90 + local.get $$t87 + local.get $$t90 + i32.add + local.set $$t91 + local.get $$t91 + i32.const 1 + i32.add + local.set $$t92 + local.get $$t92 + call $runtime.get_u8 + local.set $$t93 + local.get $$t93 + local.set $$t94 + local.get $$t94 + i32.const 63 + i32.and + local.set $$t95 + local.get $$t95 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t96 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t97.1 + i32.load + local.set $$t98 + local.get $$t98 + local.set $$t99 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $$t100.1 + i32.load + local.set $$t101 + local.get $$t101 + local.set $$t102 + local.get $$t99 + local.get $$t102 + i32.add + local.set $$t103 + local.get $$t103 + i32.const 2 + i32.add + local.set $$t104 + local.get $$t104 + call $runtime.get_u8 + local.set $$t105 + local.get $$t105 + local.set $$t106 + local.get $$t106 + i32.const 63 + i32.and + local.set $$t107 + local.get $$t107 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t108 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.1 + i32.load + local.set $$t110 + local.get $$t110 + local.set $$t111 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.1 + i32.load + local.set $$t113 + local.get $$t113 + local.set $$t114 + local.get $$t111 + local.get $$t114 + i32.add + local.set $$t115 + local.get $$t115 + i32.const 3 + i32.add + local.set $$t116 + local.get $$t116 + call $runtime.get_u8 + local.set $$t117 + local.get $$t117 + local.set $$t118 + local.get $$t118 + i32.const 63 + i32.and + local.set $$t119 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + local.get $$t120.1 + i32.load + local.set $$t121 + local.get $$t84 + local.get $$t96 + i32.or + local.set $$t122 + local.get $$t122 + local.get $$t108 + i32.or + local.set $$t123 + local.get $$t123 + local.get $$t119 + i32.or + local.set $$t124 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.load + local.set $$t126 + local.get $$t126 + i32.const 4 + i32.add + local.set $$t127 + i32.const 1 + local.set $$ret_0 + local.get $$t121 + local.set $$ret_1 + local.get $$t124 + local.set $$ret_2 + local.get $$t127 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + i32.const 0 + local.set $$ret_3 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$ret_2 + local.get $$ret_3 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + ) + (func $$runtime.panic_ (param $msg_ptr i32) (param $msg_len i32) (param $pos_msg_ptr i32) (param $pos_msg_len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 40634 + i32.const 7 + call $$runtime.waPrintString + local.get $msg_ptr + local.get $msg_len + call $$runtime.waPuts + i32.const 0 + i32.const 40598 + i32.const 2 + call $$runtime.waPrintString + local.get $pos_msg_ptr + local.get $pos_msg_len + call $$runtime.waPuts + i32.const 41 + call $$runtime.waPrintRune + i32.const 10 + call $$runtime.waPrintRune + i32.const 1 + call $$runtime.procExit + br $$BlockFnBody + end + end + end + ) + (func $runtime.printString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + local.get $$t0 + i32.const 0 + i32.gt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.refToPtr_string + local.set $$t2 + local.get $$t0 + local.set $$t3 + local.get $$t2 + local.get $$t3 + call $$runtime.waPuts + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$runtime.procExit (param $code i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + call $runtime.throw + br $$BlockFnBody + end + end + end + ) + (func $runtime.refToPtr_string (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$wa.runtime.string_to_ptr + local.set $$t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $runtime.stringFromRune (param $r i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $r + local.set $$t2 + local.get $$t2 + i32.const 127 + i32.le_u + local.set $$t3 + local.get $$t3 + if + br $$Block_1 + else + br $$Block_3 + end + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const 2 + else + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + i32.const 3 + else + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 3 + else + i32.const 4 + end + end + end + end + local.set $$t4 + i32.const 1 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.get $$t4 + i32.const 0 + i32.sub + local.get $$t1.3 + i32.const 0 + i32.sub + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + call $$string.appendstr + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $r + i32.const 255 + i32.and + local.set $$t8 + local.get $$t7.1 + local.get $$t8 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load8_u align=1 + local.set $$t10 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t12 + local.get $$t12 + i32.const 255 + i32.and + local.set $$t13 + i32.const 192 + local.get $$t13 + i32.or + local.set $$t14 + local.get $$t11.1 + local.get $$t14 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $r + i32.const 255 + i32.and + local.set $$t16 + local.get $$t16 + i32.const 63 + i32.and + local.set $$t17 + i32.const 128 + local.get $$t17 + i32.or + local.set $$t18 + local.get $$t15.1 + local.get $$t18 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $$t2 + i32.const 2047 + i32.le_u + local.set $$t19 + local.get $$t19 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load8_u align=1 + local.set $$t21 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + i32.const 65533 + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t23 + local.get $$t23 + i32.const 255 + i32.and + local.set $$t24 + i32.const 224 + local.get $$t24 + i32.or + local.set $$t25 + local.get $$t22.1 + local.get $$t25 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + i32.const 65533 + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t27 + local.get $$t27 + i32.const 255 + i32.and + local.set $$t28 + local.get $$t28 + i32.const 63 + i32.and + local.set $$t29 + i32.const 128 + local.get $$t29 + i32.or + local.set $$t30 + local.get $$t26.1 + local.get $$t30 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 65533 + i32.const 255 + i32.and + local.set $$t32 + local.get $$t32 + i32.const 63 + i32.and + local.set $$t33 + i32.const 128 + local.get $$t33 + i32.or + local.set $$t34 + local.get $$t31.1 + local.get $$t34 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $$t2 + i32.const 1114111 + i32.gt_u + local.set $$t35 + local.get $$t35 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.1 + i32.load8_u align=1 + local.set $$t37 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t39 + local.get $$t39 + i32.const 255 + i32.and + local.set $$t40 + i32.const 224 + local.get $$t40 + i32.or + local.set $$t41 + local.get $$t38.1 + local.get $$t41 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t43 + local.get $$t43 + i32.const 255 + i32.and + local.set $$t44 + local.get $$t44 + i32.const 63 + i32.and + local.set $$t45 + i32.const 128 + local.get $$t45 + i32.or + local.set $$t46 + local.get $$t42.1 + local.get $$t46 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $r + i32.const 255 + i32.and + local.set $$t48 + local.get $$t48 + i32.const 63 + i32.and + local.set $$t49 + i32.const 128 + local.get $$t49 + i32.or + local.set $$t50 + local.get $$t47.1 + local.get $$t50 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + i32.const 55296 + local.get $$t2 + i32.le_u + local.set $$t51 + local.get $$t51 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t2 + i32.const 65535 + i32.le_u + local.set $$t52 + local.get $$t52 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 10 + local.set $$current_block + local.get $$t2 + i32.const 57343 + i32.le_u + local.set $$t53 + br $$Block_10 + end + local.get $$current_block + i32.const 8 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t53 + end + local.set $$t54 + i32.const 11 + local.set $$current_block + local.get $$t54 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.1 + i32.load8_u align=1 + local.set $$t56 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $r + i64.const 18 + i32.wrap_i64 + i32.shr_s + local.set $$t58 + local.get $$t58 + i32.const 255 + i32.and + local.set $$t59 + i32.const 240 + local.get $$t59 + i32.or + local.set $$t60 + local.get $$t57.1 + local.get $$t60 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t62 + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + local.get $$t63 + i32.const 63 + i32.and + local.set $$t64 + i32.const 128 + local.get $$t64 + i32.or + local.set $$t65 + local.get $$t61.1 + local.get $$t65 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t67 + local.get $$t67 + i32.const 255 + i32.and + local.set $$t68 + local.get $$t68 + i32.const 63 + i32.and + local.set $$t69 + i32.const 128 + local.get $$t69 + i32.or + local.set $$t70 + local.get $$t66.1 + local.get $$t70 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $r + i32.const 255 + i32.and + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + i32.const 128 + local.get $$t73 + i32.or + local.set $$t74 + local.get $$t71.1 + local.get $$t74 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + ) + (func $$wa.runtime.string_Comp (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $x.0 + local.get $x.1 + local.get $x.2 + call $$wa.runtime.string_to_iter + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0 + local.get $$t0.1 + local.get $$t1.0 + i32.store + local.get $$t0.1 + local.get $$t1.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t1.2 + i32.store offset=8 + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_to_iter + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + local.get $$t2.1 + local.get $$t3.0 + i32.store + local.get $$t2.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t3.2 + i32.store offset=8 + br $$Block_0 + end + i32.const 1 + local.set $$current_block + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $runtime.next_rune + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0 + local.get $$t5.0 + local.set $$t6 + local.get $$t5.1 + local.set $$t7 + local.get $$t5.2 + local.set $$t8 + local.get $$t5.3 + local.set $$t9 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + local.get $$t9 + i32.store + local.get $$t2.1 + i32.load + local.get $$t2.1 + i32.load offset=4 + local.get $$t2.1 + i32.load offset=8 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + call $runtime.next_rune + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.set $$t12.0 + local.get $$t12.0 + local.set $$t13 + local.get $$t12.1 + local.set $$t14 + local.get $$t12.2 + local.set $$t15 + local.get $$t12.3 + local.set $$t16 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 8 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + local.get $$t16 + i32.store + local.get $$t6 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $x.2 + local.set $$t18 + local.get $y.2 + local.set $$t19 + local.get $$t18 + local.get $$t19 + i32.lt_s + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.lt_s + local.set $$t21 + local.get $$t21 + if + br $$Block_5 + else + br $$Block_6 + end + end + i32.const 4 + local.set $$current_block + br $$Block_4 + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t22 + i32.const 5 + local.set $$current_block + local.get $$t22 + i32.const 1 + i32.eq + i32.eqz + local.set $$t23 + local.get $$t23 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.gt_s + local.set $$t24 + local.get $$t24 + if + br $$Block_7 + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 9 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $$t18 + local.get $$t19 + i32.gt_s + local.set $$t25 + local.get $$t25 + if + br $$Block_10 + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + ) + (func $$runtime.waPrintRune (param $ch i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ch + call $runtime.stringFromRune + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + local.get $$t0.1 + local.get $$t0.2 + call $runtime.printString + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $$runtime.waPrintString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.printString + br $$BlockFnBody + end + end + end + ) + (func $$runtime.waPuts (param $ptr i32) (param $len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ptr + local.get $len + call $runtime.traceUtf8 + br $$BlockFnBody + end + end + end + ) + (func $math.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $math$bits.TrailingZeros (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i64) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $x + local.set $$t0 + local.get $$t0 + call $math$bits.TrailingZeros32 + local.set $$t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $x + i64.extend_i32_u + local.set $$t2 + local.get $$t2 + call $math$bits.TrailingZeros64 + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $math$bits.TrailingZeros32 (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 32 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i32.const 0 + local.get $x + i32.sub + local.set $$t1 + local.get $x + local.get $$t1 + i32.and + local.set $$t2 + local.get $$t2 + i32.const 125613361 + i32.mul + local.set $$t3 + local.get $$t3 + i64.const 27 + i32.wrap_i64 + i32.shr_u + local.set $$t4 + local.get $$t4 + local.set $$t5 + i32.const 0 + i32.const 14888 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load8_u align=1 + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $math$bits.TrailingZeros64 (param $x i64) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i64) + (local $$t2 i64) + (local $$t3 i64) + (local $$t4 i64) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i64.const 0 + i64.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 64 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i64.const 0 + local.get $x + i64.sub + local.set $$t1 + local.get $x + local.get $$t1 + i64.and + local.set $$t2 + local.get $$t2 + i64.const 285870213051353865 + i64.mul + local.set $$t3 + local.get $$t3 + i64.const 58 + i64.shr_u + local.set $$t4 + local.get $$t4 + i32.wrap_i64 + local.set $$t5 + i32.const 0 + i32.const 14920 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load8_u align=1 + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $math$bits.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math$bits.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math$bits.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $math$rand.Int (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 16520 + i32.load + call $runtime.Block.Retain + i32.const 16520 + i32.load offset=4 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + local.get $$t0.1 + call $math$rand.Rand.Int + local.set $$t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $$math$rand.Source.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$math$rand.Source64.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$math$rand.Rand.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 15 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 16 + call_indirect 0 (type $$onFree) + ) + (func $math$rand.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0.0 i32) + (local $$t6.0.1 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0.0 i32) + (local $$t7.0.1 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math$rand.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math$rand.init$guard + call $math.init + call $errors.init + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 17 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 0 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + i32.const 4880 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4864 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + i32.const 4880 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4864 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 2 + i32.const -2 + i32.const 0 + call $runtime.getItab + i32.const 0 + local.set $$t6.2 + local.set $$t6.1 + local.set $$t6.0.1 + local.get $$t6.0.0 + call $runtime.Block.Release + local.set $$t6.0.0 + local.get $$t2.1 + local.get $$t6.0.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t2.1 + local.get $$t6.0.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t6.1 + i32.store offset=8 + local.get $$t2.1 + local.get $$t6.2 + i32.store offset=12 + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.const 2 + i32.const -3 + i32.const 0 + call $runtime.getItab + i32.const 0 + local.set $$t7.2 + local.set $$t7.1 + local.set $$t7.0.1 + local.get $$t7.0.0 + call $runtime.Block.Release + local.set $$t7.0.0 + local.get $$t4.1 + local.get $$t7.0.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t4.1 + local.get $$t7.0.1 + i32.store offset=4 + local.get $$t4.1 + local.get $$t7.1 + i32.store offset=8 + local.get $$t4.1 + local.get $$t7.2 + i32.store offset=12 + i32.const 16520 + local.get $$t1.0 + call $runtime.Block.Retain + i32.const 16520 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 16520 + local.get $$t1.1 + i32.store offset=4 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0.0 + call $runtime.Block.Release + local.get $$t7.0.0 + call $runtime.Block.Release + ) + (func $math$rand.seedrand (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 44488 + i32.div_s + local.set $$t0 + local.get $x + i32.const 44488 + i32.rem_s + local.set $$t1 + i32.const 48271 + local.get $$t1 + i32.mul + local.set $$t2 + i32.const 3399 + local.get $$t0 + i32.mul + local.set $$t3 + local.get $$t2 + local.get $$t3 + i32.sub + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.lt_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t4 + i32.const 2147483647 + i32.add + local.set $$t6 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $$t4 + else + local.get $$t6 + end + local.set $$t7 + i32.const 2 + local.set $$current_block + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $$errors.errorString.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 3 + call_indirect 0 (type $$onFree) + ) + (func $errors.New (param $text.0 i32) (param $text.1 i32) (param $text.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0.0 i32) + (local $$ret_0.0.1 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0.0 i32) + (local $$t2.0.1 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 18 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + local.get $text.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t1.1 + local.get $text.1 + i32.store offset=4 + local.get $$t1.1 + local.get $text.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 3 + i32.const -4 + i32.const 0 + call $runtime.getItab + i32.const 0 + local.set $$t2.2 + local.set $$t2.1 + local.set $$t2.0.1 + local.get $$t2.0.0 + call $runtime.Block.Release + local.set $$t2.0.0 + local.get $$t2.0.0 + call $runtime.Block.Retain + local.get $$t2.0.1 + local.get $$t2.1 + local.get $$t2.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.set $$ret_0.0.1 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.set $$ret_0.0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0.0 + call $runtime.Block.Retain + local.get $$ret_0.0.1 + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0.0 + call $runtime.Block.Release + ) + (func $errors.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $errors.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $errors.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$u8.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if(result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 1 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end + end + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + end + ) + (func $$.error.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$strconv.NumError.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 3 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 12 + i32.add + i32.const 3 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 24 + i32.add + i32.const 19 + call_indirect 0 (type $$onFree) + ) + (func $strconv.FormatInt (param $i i64) (param $base i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2 i64) + (local $$t3 i32) + (local $$t4.0.0 i32) + (local $$t4.0.1 i32) + (local $$t4.0.2 i32) + (local $$t4.0.3 i32) + (local $$t4.1.0 i32) + (local $$t4.1.1 i32) + (local $$t4.1.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + if + br $$Block_4 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $i + i32.wrap_i64 + local.set $$t0 + local.get $$t0 + call $strconv.small + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $i + local.set $$t2 + local.get $i + i64.const 0 + i64.lt_s + local.set $$t3 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.get $$t2 + local.get $base + local.get $$t3 + i32.const 0 + call $strconv.formatBits + local.set $$t4.1.2 + local.set $$t4.1.1 + local.get $$t4.1.0 + call $runtime.Block.Release + local.set $$t4.1.0 + local.set $$t4.0.3 + local.set $$t4.0.2 + local.set $$t4.0.1 + local.get $$t4.0.0 + call $runtime.Block.Release + local.set $$t4.0.0 + local.get $$t4.0.0 + call $runtime.Block.Retain + local.get $$t4.0.1 + local.get $$t4.0.2 + local.get $$t4.0.3 + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t4.1.0 + call $runtime.Block.Retain + local.get $$t4.1.1 + local.get $$t4.1.2 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + local.get $base + i32.const 10 + i32.eq + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $i + i64.const 100 + i64.lt_s + local.set $$t8 + local.get $$t8 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + i64.const 0 + local.get $i + i64.le_s + local.set $$t9 + local.get $$t9 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t4.1.0 + call $runtime.Block.Release + local.get $$t4.0.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $strconv.IsPrint (param $r i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t10.2 i32) + (local $$t10.3 i32) + (local $$t10.4 i32) + (local $$t10.5 i32) + (local $$t10.6 i32) + (local $$t10.7 i32) + (local $$t10.8 i32) + (local $$t10.9 i32) + (local $$t10.10 i32) + (local $$t10.11 i32) + (local $$t10.12 i32) + (local $$t10.13 i32) + (local $$t10.14 i32) + (local $$t10.15 i32) + (local $$t10.16 i32) + (local $$t10.17 i32) + (local $$t10.18 i32) + (local $$t10.19 i32) + (local $$t10.20 i32) + (local $$t10.21 i32) + (local $$t10.22 i32) + (local $$t10.23 i32) + (local $$t10.24 i32) + (local $$t10.25 i32) + (local $$t10.26 i32) + (local $$t10.27 i32) + (local $$t10.28 i32) + (local $$t10.29 i32) + (local $$t10.30 i32) + (local $$t10.31 i32) + (local $$t10.32 i32) + (local $$t10.33 i32) + (local $$t10.34 i32) + (local $$t10.35 i32) + (local $$t10.36 i32) + (local $$t10.37 i32) + (local $$t10.38 i32) + (local $$t10.39 i32) + (local $$t10.40 i32) + (local $$t10.41 i32) + (local $$t10.42 i32) + (local $$t10.43 i32) + (local $$t10.44 i32) + (local $$t10.45 i32) + (local $$t10.46 i32) + (local $$t10.47 i32) + (local $$t10.48 i32) + (local $$t10.49 i32) + (local $$t10.50 i32) + (local $$t10.51 i32) + (local $$t10.52 i32) + (local $$t10.53 i32) + (local $$t10.54 i32) + (local $$t10.55 i32) + (local $$t10.56 i32) + (local $$t10.57 i32) + (local $$t10.58 i32) + (local $$t10.59 i32) + (local $$t10.60 i32) + (local $$t10.61 i32) + (local $$t10.62 i32) + (local $$t10.63 i32) + (local $$t10.64 i32) + (local $$t10.65 i32) + (local $$t10.66 i32) + (local $$t10.67 i32) + (local $$t10.68 i32) + (local $$t10.69 i32) + (local $$t10.70 i32) + (local $$t10.71 i32) + (local $$t10.72 i32) + (local $$t10.73 i32) + (local $$t10.74 i32) + (local $$t10.75 i32) + (local $$t10.76 i32) + (local $$t10.77 i32) + (local $$t10.78 i32) + (local $$t10.79 i32) + (local $$t10.80 i32) + (local $$t10.81 i32) + (local $$t10.82 i32) + (local $$t10.83 i32) + (local $$t10.84 i32) + (local $$t10.85 i32) + (local $$t10.86 i32) + (local $$t10.87 i32) + (local $$t10.88 i32) + (local $$t10.89 i32) + (local $$t10.90 i32) + (local $$t10.91 i32) + (local $$t10.92 i32) + (local $$t10.93 i32) + (local $$t10.94 i32) + (local $$t10.95 i32) + (local $$t10.96 i32) + (local $$t10.97 i32) + (local $$t10.98 i32) + (local $$t10.99 i32) + (local $$t10.100 i32) + (local $$t10.101 i32) + (local $$t10.102 i32) + (local $$t10.103 i32) + (local $$t10.104 i32) + (local $$t10.105 i32) + (local $$t10.106 i32) + (local $$t10.107 i32) + (local $$t10.108 i32) + (local $$t10.109 i32) + (local $$t10.110 i32) + (local $$t10.111 i32) + (local $$t10.112 i32) + (local $$t10.113 i32) + (local $$t10.114 i32) + (local $$t10.115 i32) + (local $$t10.116 i32) + (local $$t10.117 i32) + (local $$t10.118 i32) + (local $$t10.119 i32) + (local $$t10.120 i32) + (local $$t10.121 i32) + (local $$t10.122 i32) + (local $$t10.123 i32) + (local $$t10.124 i32) + (local $$t10.125 i32) + (local $$t10.126 i32) + (local $$t10.127 i32) + (local $$t10.128 i32) + (local $$t10.129 i32) + (local $$t10.130 i32) + (local $$t10.131 i32) + (local $$t10.132 i32) + (local $$t10.133 i32) + (local $$t10.134 i32) + (local $$t10.135 i32) + (local $$t10.136 i32) + (local $$t10.137 i32) + (local $$t10.138 i32) + (local $$t10.139 i32) + (local $$t10.140 i32) + (local $$t10.141 i32) + (local $$t10.142 i32) + (local $$t10.143 i32) + (local $$t10.144 i32) + (local $$t10.145 i32) + (local $$t10.146 i32) + (local $$t10.147 i32) + (local $$t10.148 i32) + (local $$t10.149 i32) + (local $$t10.150 i32) + (local $$t10.151 i32) + (local $$t10.152 i32) + (local $$t10.153 i32) + (local $$t10.154 i32) + (local $$t10.155 i32) + (local $$t10.156 i32) + (local $$t10.157 i32) + (local $$t10.158 i32) + (local $$t10.159 i32) + (local $$t10.160 i32) + (local $$t10.161 i32) + (local $$t10.162 i32) + (local $$t10.163 i32) + (local $$t10.164 i32) + (local $$t10.165 i32) + (local $$t10.166 i32) + (local $$t10.167 i32) + (local $$t10.168 i32) + (local $$t10.169 i32) + (local $$t10.170 i32) + (local $$t10.171 i32) + (local $$t10.172 i32) + (local $$t10.173 i32) + (local $$t10.174 i32) + (local $$t10.175 i32) + (local $$t10.176 i32) + (local $$t10.177 i32) + (local $$t10.178 i32) + (local $$t10.179 i32) + (local $$t10.180 i32) + (local $$t10.181 i32) + (local $$t10.182 i32) + (local $$t10.183 i32) + (local $$t10.184 i32) + (local $$t10.185 i32) + (local $$t10.186 i32) + (local $$t10.187 i32) + (local $$t10.188 i32) + (local $$t10.189 i32) + (local $$t10.190 i32) + (local $$t10.191 i32) + (local $$t10.192 i32) + (local $$t10.193 i32) + (local $$t10.194 i32) + (local $$t10.195 i32) + (local $$t10.196 i32) + (local $$t10.197 i32) + (local $$t10.198 i32) + (local $$t10.199 i32) + (local $$t10.200 i32) + (local $$t10.201 i32) + (local $$t10.202 i32) + (local $$t10.203 i32) + (local $$t10.204 i32) + (local $$t10.205 i32) + (local $$t10.206 i32) + (local $$t10.207 i32) + (local $$t10.208 i32) + (local $$t10.209 i32) + (local $$t10.210 i32) + (local $$t10.211 i32) + (local $$t10.212 i32) + (local $$t10.213 i32) + (local $$t10.214 i32) + (local $$t10.215 i32) + (local $$t10.216 i32) + (local $$t10.217 i32) + (local $$t10.218 i32) + (local $$t10.219 i32) + (local $$t10.220 i32) + (local $$t10.221 i32) + (local $$t10.222 i32) + (local $$t10.223 i32) + (local $$t10.224 i32) + (local $$t10.225 i32) + (local $$t10.226 i32) + (local $$t10.227 i32) + (local $$t10.228 i32) + (local $$t10.229 i32) + (local $$t10.230 i32) + (local $$t10.231 i32) + (local $$t10.232 i32) + (local $$t10.233 i32) + (local $$t10.234 i32) + (local $$t10.235 i32) + (local $$t10.236 i32) + (local $$t10.237 i32) + (local $$t10.238 i32) + (local $$t10.239 i32) + (local $$t10.240 i32) + (local $$t10.241 i32) + (local $$t10.242 i32) + (local $$t10.243 i32) + (local $$t10.244 i32) + (local $$t10.245 i32) + (local $$t10.246 i32) + (local $$t10.247 i32) + (local $$t10.248 i32) + (local $$t10.249 i32) + (local $$t10.250 i32) + (local $$t10.251 i32) + (local $$t10.252 i32) + (local $$t10.253 i32) + (local $$t10.254 i32) + (local $$t10.255 i32) + (local $$t10.256 i32) + (local $$t10.257 i32) + (local $$t10.258 i32) + (local $$t10.259 i32) + (local $$t10.260 i32) + (local $$t10.261 i32) + (local $$t10.262 i32) + (local $$t10.263 i32) + (local $$t10.264 i32) + (local $$t10.265 i32) + (local $$t10.266 i32) + (local $$t10.267 i32) + (local $$t10.268 i32) + (local $$t10.269 i32) + (local $$t10.270 i32) + (local $$t10.271 i32) + (local $$t10.272 i32) + (local $$t10.273 i32) + (local $$t10.274 i32) + (local $$t10.275 i32) + (local $$t10.276 i32) + (local $$t10.277 i32) + (local $$t10.278 i32) + (local $$t10.279 i32) + (local $$t10.280 i32) + (local $$t10.281 i32) + (local $$t10.282 i32) + (local $$t10.283 i32) + (local $$t10.284 i32) + (local $$t10.285 i32) + (local $$t10.286 i32) + (local $$t10.287 i32) + (local $$t10.288 i32) + (local $$t10.289 i32) + (local $$t10.290 i32) + (local $$t10.291 i32) + (local $$t10.292 i32) + (local $$t10.293 i32) + (local $$t10.294 i32) + (local $$t10.295 i32) + (local $$t10.296 i32) + (local $$t10.297 i32) + (local $$t10.298 i32) + (local $$t10.299 i32) + (local $$t10.300 i32) + (local $$t10.301 i32) + (local $$t10.302 i32) + (local $$t10.303 i32) + (local $$t10.304 i32) + (local $$t10.305 i32) + (local $$t10.306 i32) + (local $$t10.307 i32) + (local $$t10.308 i32) + (local $$t10.309 i32) + (local $$t10.310 i32) + (local $$t10.311 i32) + (local $$t10.312 i32) + (local $$t10.313 i32) + (local $$t10.314 i32) + (local $$t10.315 i32) + (local $$t10.316 i32) + (local $$t10.317 i32) + (local $$t10.318 i32) + (local $$t10.319 i32) + (local $$t10.320 i32) + (local $$t10.321 i32) + (local $$t10.322 i32) + (local $$t10.323 i32) + (local $$t10.324 i32) + (local $$t10.325 i32) + (local $$t10.326 i32) + (local $$t10.327 i32) + (local $$t10.328 i32) + (local $$t10.329 i32) + (local $$t10.330 i32) + (local $$t10.331 i32) + (local $$t10.332 i32) + (local $$t10.333 i32) + (local $$t10.334 i32) + (local $$t10.335 i32) + (local $$t10.336 i32) + (local $$t10.337 i32) + (local $$t10.338 i32) + (local $$t10.339 i32) + (local $$t10.340 i32) + (local $$t10.341 i32) + (local $$t10.342 i32) + (local $$t10.343 i32) + (local $$t10.344 i32) + (local $$t10.345 i32) + (local $$t10.346 i32) + (local $$t10.347 i32) + (local $$t10.348 i32) + (local $$t10.349 i32) + (local $$t10.350 i32) + (local $$t10.351 i32) + (local $$t10.352 i32) + (local $$t10.353 i32) + (local $$t10.354 i32) + (local $$t10.355 i32) + (local $$t10.356 i32) + (local $$t10.357 i32) + (local $$t10.358 i32) + (local $$t10.359 i32) + (local $$t10.360 i32) + (local $$t10.361 i32) + (local $$t10.362 i32) + (local $$t10.363 i32) + (local $$t10.364 i32) + (local $$t10.365 i32) + (local $$t10.366 i32) + (local $$t10.367 i32) + (local $$t10.368 i32) + (local $$t10.369 i32) + (local $$t10.370 i32) + (local $$t10.371 i32) + (local $$t10.372 i32) + (local $$t10.373 i32) + (local $$t10.374 i32) + (local $$t10.375 i32) + (local $$t10.376 i32) + (local $$t10.377 i32) + (local $$t10.378 i32) + (local $$t10.379 i32) + (local $$t10.380 i32) + (local $$t10.381 i32) + (local $$t10.382 i32) + (local $$t10.383 i32) + (local $$t10.384 i32) + (local $$t10.385 i32) + (local $$t10.386 i32) + (local $$t10.387 i32) + (local $$t10.388 i32) + (local $$t10.389 i32) + (local $$t10.390 i32) + (local $$t10.391 i32) + (local $$t10.392 i32) + (local $$t10.393 i32) + (local $$t10.394 i32) + (local $$t10.395 i32) + (local $$t10.396 i32) + (local $$t10.397 i32) + (local $$t10.398 i32) + (local $$t10.399 i32) + (local $$t10.400 i32) + (local $$t10.401 i32) + (local $$t10.402 i32) + (local $$t10.403 i32) + (local $$t10.404 i32) + (local $$t10.405 i32) + (local $$t10.406 i32) + (local $$t10.407 i32) + (local $$t10.408 i32) + (local $$t10.409 i32) + (local $$t10.410 i32) + (local $$t10.411 i32) + (local $$t10.412 i32) + (local $$t10.413 i32) + (local $$t10.414 i32) + (local $$t10.415 i32) + (local $$t10.416 i32) + (local $$t10.417 i32) + (local $$t10.418 i32) + (local $$t10.419 i32) + (local $$t10.420 i32) + (local $$t10.421 i32) + (local $$t10.422 i32) + (local $$t10.423 i32) + (local $$t10.424 i32) + (local $$t10.425 i32) + (local $$t10.426 i32) + (local $$t10.427 i32) + (local $$t10.428 i32) + (local $$t10.429 i32) + (local $$t10.430 i32) + (local $$t10.431 i32) + (local $$t10.432 i32) + (local $$t10.433 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t11.4 i32) + (local $$t11.5 i32) + (local $$t11.6 i32) + (local $$t11.7 i32) + (local $$t11.8 i32) + (local $$t11.9 i32) + (local $$t11.10 i32) + (local $$t11.11 i32) + (local $$t11.12 i32) + (local $$t11.13 i32) + (local $$t11.14 i32) + (local $$t11.15 i32) + (local $$t11.16 i32) + (local $$t11.17 i32) + (local $$t11.18 i32) + (local $$t11.19 i32) + (local $$t11.20 i32) + (local $$t11.21 i32) + (local $$t11.22 i32) + (local $$t11.23 i32) + (local $$t11.24 i32) + (local $$t11.25 i32) + (local $$t11.26 i32) + (local $$t11.27 i32) + (local $$t11.28 i32) + (local $$t11.29 i32) + (local $$t11.30 i32) + (local $$t11.31 i32) + (local $$t11.32 i32) + (local $$t11.33 i32) + (local $$t11.34 i32) + (local $$t11.35 i32) + (local $$t11.36 i32) + (local $$t11.37 i32) + (local $$t11.38 i32) + (local $$t11.39 i32) + (local $$t11.40 i32) + (local $$t11.41 i32) + (local $$t11.42 i32) + (local $$t11.43 i32) + (local $$t11.44 i32) + (local $$t11.45 i32) + (local $$t11.46 i32) + (local $$t11.47 i32) + (local $$t11.48 i32) + (local $$t11.49 i32) + (local $$t11.50 i32) + (local $$t11.51 i32) + (local $$t11.52 i32) + (local $$t11.53 i32) + (local $$t11.54 i32) + (local $$t11.55 i32) + (local $$t11.56 i32) + (local $$t11.57 i32) + (local $$t11.58 i32) + (local $$t11.59 i32) + (local $$t11.60 i32) + (local $$t11.61 i32) + (local $$t11.62 i32) + (local $$t11.63 i32) + (local $$t11.64 i32) + (local $$t11.65 i32) + (local $$t11.66 i32) + (local $$t11.67 i32) + (local $$t11.68 i32) + (local $$t11.69 i32) + (local $$t11.70 i32) + (local $$t11.71 i32) + (local $$t11.72 i32) + (local $$t11.73 i32) + (local $$t11.74 i32) + (local $$t11.75 i32) + (local $$t11.76 i32) + (local $$t11.77 i32) + (local $$t11.78 i32) + (local $$t11.79 i32) + (local $$t11.80 i32) + (local $$t11.81 i32) + (local $$t11.82 i32) + (local $$t11.83 i32) + (local $$t11.84 i32) + (local $$t11.85 i32) + (local $$t11.86 i32) + (local $$t11.87 i32) + (local $$t11.88 i32) + (local $$t11.89 i32) + (local $$t11.90 i32) + (local $$t11.91 i32) + (local $$t11.92 i32) + (local $$t11.93 i32) + (local $$t11.94 i32) + (local $$t11.95 i32) + (local $$t11.96 i32) + (local $$t11.97 i32) + (local $$t11.98 i32) + (local $$t11.99 i32) + (local $$t11.100 i32) + (local $$t11.101 i32) + (local $$t11.102 i32) + (local $$t11.103 i32) + (local $$t11.104 i32) + (local $$t11.105 i32) + (local $$t11.106 i32) + (local $$t11.107 i32) + (local $$t11.108 i32) + (local $$t11.109 i32) + (local $$t11.110 i32) + (local $$t11.111 i32) + (local $$t11.112 i32) + (local $$t11.113 i32) + (local $$t11.114 i32) + (local $$t11.115 i32) + (local $$t11.116 i32) + (local $$t11.117 i32) + (local $$t11.118 i32) + (local $$t11.119 i32) + (local $$t11.120 i32) + (local $$t11.121 i32) + (local $$t11.122 i32) + (local $$t11.123 i32) + (local $$t11.124 i32) + (local $$t11.125 i32) + (local $$t11.126 i32) + (local $$t11.127 i32) + (local $$t11.128 i32) + (local $$t11.129 i32) + (local $$t11.130 i32) + (local $$t11.131 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t18.2 i32) + (local $$t18.3 i32) + (local $$t18.4 i32) + (local $$t18.5 i32) + (local $$t18.6 i32) + (local $$t18.7 i32) + (local $$t18.8 i32) + (local $$t18.9 i32) + (local $$t18.10 i32) + (local $$t18.11 i32) + (local $$t18.12 i32) + (local $$t18.13 i32) + (local $$t18.14 i32) + (local $$t18.15 i32) + (local $$t18.16 i32) + (local $$t18.17 i32) + (local $$t18.18 i32) + (local $$t18.19 i32) + (local $$t18.20 i32) + (local $$t18.21 i32) + (local $$t18.22 i32) + (local $$t18.23 i32) + (local $$t18.24 i32) + (local $$t18.25 i32) + (local $$t18.26 i32) + (local $$t18.27 i32) + (local $$t18.28 i32) + (local $$t18.29 i32) + (local $$t18.30 i32) + (local $$t18.31 i32) + (local $$t18.32 i32) + (local $$t18.33 i32) + (local $$t18.34 i32) + (local $$t18.35 i32) + (local $$t18.36 i32) + (local $$t18.37 i32) + (local $$t18.38 i32) + (local $$t18.39 i32) + (local $$t18.40 i32) + (local $$t18.41 i32) + (local $$t18.42 i32) + (local $$t18.43 i32) + (local $$t18.44 i32) + (local $$t18.45 i32) + (local $$t18.46 i32) + (local $$t18.47 i32) + (local $$t18.48 i32) + (local $$t18.49 i32) + (local $$t18.50 i32) + (local $$t18.51 i32) + (local $$t18.52 i32) + (local $$t18.53 i32) + (local $$t18.54 i32) + (local $$t18.55 i32) + (local $$t18.56 i32) + (local $$t18.57 i32) + (local $$t18.58 i32) + (local $$t18.59 i32) + (local $$t18.60 i32) + (local $$t18.61 i32) + (local $$t18.62 i32) + (local $$t18.63 i32) + (local $$t18.64 i32) + (local $$t18.65 i32) + (local $$t18.66 i32) + (local $$t18.67 i32) + (local $$t18.68 i32) + (local $$t18.69 i32) + (local $$t18.70 i32) + (local $$t18.71 i32) + (local $$t18.72 i32) + (local $$t18.73 i32) + (local $$t18.74 i32) + (local $$t18.75 i32) + (local $$t18.76 i32) + (local $$t18.77 i32) + (local $$t18.78 i32) + (local $$t18.79 i32) + (local $$t18.80 i32) + (local $$t18.81 i32) + (local $$t18.82 i32) + (local $$t18.83 i32) + (local $$t18.84 i32) + (local $$t18.85 i32) + (local $$t18.86 i32) + (local $$t18.87 i32) + (local $$t18.88 i32) + (local $$t18.89 i32) + (local $$t18.90 i32) + (local $$t18.91 i32) + (local $$t18.92 i32) + (local $$t18.93 i32) + (local $$t18.94 i32) + (local $$t18.95 i32) + (local $$t18.96 i32) + (local $$t18.97 i32) + (local $$t18.98 i32) + (local $$t18.99 i32) + (local $$t18.100 i32) + (local $$t18.101 i32) + (local $$t18.102 i32) + (local $$t18.103 i32) + (local $$t18.104 i32) + (local $$t18.105 i32) + (local $$t18.106 i32) + (local $$t18.107 i32) + (local $$t18.108 i32) + (local $$t18.109 i32) + (local $$t18.110 i32) + (local $$t18.111 i32) + (local $$t18.112 i32) + (local $$t18.113 i32) + (local $$t18.114 i32) + (local $$t18.115 i32) + (local $$t18.116 i32) + (local $$t18.117 i32) + (local $$t18.118 i32) + (local $$t18.119 i32) + (local $$t18.120 i32) + (local $$t18.121 i32) + (local $$t18.122 i32) + (local $$t18.123 i32) + (local $$t18.124 i32) + (local $$t18.125 i32) + (local $$t18.126 i32) + (local $$t18.127 i32) + (local $$t18.128 i32) + (local $$t18.129 i32) + (local $$t18.130 i32) + (local $$t18.131 i32) + (local $$t18.132 i32) + (local $$t18.133 i32) + (local $$t18.134 i32) + (local $$t18.135 i32) + (local $$t18.136 i32) + (local $$t18.137 i32) + (local $$t18.138 i32) + (local $$t18.139 i32) + (local $$t18.140 i32) + (local $$t18.141 i32) + (local $$t18.142 i32) + (local $$t18.143 i32) + (local $$t18.144 i32) + (local $$t18.145 i32) + (local $$t18.146 i32) + (local $$t18.147 i32) + (local $$t18.148 i32) + (local $$t18.149 i32) + (local $$t18.150 i32) + (local $$t18.151 i32) + (local $$t18.152 i32) + (local $$t18.153 i32) + (local $$t18.154 i32) + (local $$t18.155 i32) + (local $$t18.156 i32) + (local $$t18.157 i32) + (local $$t18.158 i32) + (local $$t18.159 i32) + (local $$t18.160 i32) + (local $$t18.161 i32) + (local $$t18.162 i32) + (local $$t18.163 i32) + (local $$t18.164 i32) + (local $$t18.165 i32) + (local $$t18.166 i32) + (local $$t18.167 i32) + (local $$t18.168 i32) + (local $$t18.169 i32) + (local $$t18.170 i32) + (local $$t18.171 i32) + (local $$t18.172 i32) + (local $$t18.173 i32) + (local $$t18.174 i32) + (local $$t18.175 i32) + (local $$t18.176 i32) + (local $$t18.177 i32) + (local $$t18.178 i32) + (local $$t18.179 i32) + (local $$t18.180 i32) + (local $$t18.181 i32) + (local $$t18.182 i32) + (local $$t18.183 i32) + (local $$t18.184 i32) + (local $$t18.185 i32) + (local $$t18.186 i32) + (local $$t18.187 i32) + (local $$t18.188 i32) + (local $$t18.189 i32) + (local $$t18.190 i32) + (local $$t18.191 i32) + (local $$t18.192 i32) + (local $$t18.193 i32) + (local $$t18.194 i32) + (local $$t18.195 i32) + (local $$t18.196 i32) + (local $$t18.197 i32) + (local $$t18.198 i32) + (local $$t18.199 i32) + (local $$t18.200 i32) + (local $$t18.201 i32) + (local $$t18.202 i32) + (local $$t18.203 i32) + (local $$t18.204 i32) + (local $$t18.205 i32) + (local $$t18.206 i32) + (local $$t18.207 i32) + (local $$t18.208 i32) + (local $$t18.209 i32) + (local $$t18.210 i32) + (local $$t18.211 i32) + (local $$t18.212 i32) + (local $$t18.213 i32) + (local $$t18.214 i32) + (local $$t18.215 i32) + (local $$t18.216 i32) + (local $$t18.217 i32) + (local $$t18.218 i32) + (local $$t18.219 i32) + (local $$t18.220 i32) + (local $$t18.221 i32) + (local $$t18.222 i32) + (local $$t18.223 i32) + (local $$t18.224 i32) + (local $$t18.225 i32) + (local $$t18.226 i32) + (local $$t18.227 i32) + (local $$t18.228 i32) + (local $$t18.229 i32) + (local $$t18.230 i32) + (local $$t18.231 i32) + (local $$t18.232 i32) + (local $$t18.233 i32) + (local $$t18.234 i32) + (local $$t18.235 i32) + (local $$t18.236 i32) + (local $$t18.237 i32) + (local $$t18.238 i32) + (local $$t18.239 i32) + (local $$t18.240 i32) + (local $$t18.241 i32) + (local $$t18.242 i32) + (local $$t18.243 i32) + (local $$t18.244 i32) + (local $$t18.245 i32) + (local $$t18.246 i32) + (local $$t18.247 i32) + (local $$t18.248 i32) + (local $$t18.249 i32) + (local $$t18.250 i32) + (local $$t18.251 i32) + (local $$t18.252 i32) + (local $$t18.253 i32) + (local $$t18.254 i32) + (local $$t18.255 i32) + (local $$t18.256 i32) + (local $$t18.257 i32) + (local $$t18.258 i32) + (local $$t18.259 i32) + (local $$t18.260 i32) + (local $$t18.261 i32) + (local $$t18.262 i32) + (local $$t18.263 i32) + (local $$t18.264 i32) + (local $$t18.265 i32) + (local $$t18.266 i32) + (local $$t18.267 i32) + (local $$t18.268 i32) + (local $$t18.269 i32) + (local $$t18.270 i32) + (local $$t18.271 i32) + (local $$t18.272 i32) + (local $$t18.273 i32) + (local $$t18.274 i32) + (local $$t18.275 i32) + (local $$t18.276 i32) + (local $$t18.277 i32) + (local $$t18.278 i32) + (local $$t18.279 i32) + (local $$t18.280 i32) + (local $$t18.281 i32) + (local $$t18.282 i32) + (local $$t18.283 i32) + (local $$t18.284 i32) + (local $$t18.285 i32) + (local $$t18.286 i32) + (local $$t18.287 i32) + (local $$t18.288 i32) + (local $$t18.289 i32) + (local $$t18.290 i32) + (local $$t18.291 i32) + (local $$t18.292 i32) + (local $$t18.293 i32) + (local $$t18.294 i32) + (local $$t18.295 i32) + (local $$t18.296 i32) + (local $$t18.297 i32) + (local $$t18.298 i32) + (local $$t18.299 i32) + (local $$t18.300 i32) + (local $$t18.301 i32) + (local $$t18.302 i32) + (local $$t18.303 i32) + (local $$t18.304 i32) + (local $$t18.305 i32) + (local $$t18.306 i32) + (local $$t18.307 i32) + (local $$t18.308 i32) + (local $$t18.309 i32) + (local $$t18.310 i32) + (local $$t18.311 i32) + (local $$t18.312 i32) + (local $$t18.313 i32) + (local $$t18.314 i32) + (local $$t18.315 i32) + (local $$t18.316 i32) + (local $$t18.317 i32) + (local $$t18.318 i32) + (local $$t18.319 i32) + (local $$t18.320 i32) + (local $$t18.321 i32) + (local $$t18.322 i32) + (local $$t18.323 i32) + (local $$t18.324 i32) + (local $$t18.325 i32) + (local $$t18.326 i32) + (local $$t18.327 i32) + (local $$t18.328 i32) + (local $$t18.329 i32) + (local $$t18.330 i32) + (local $$t18.331 i32) + (local $$t18.332 i32) + (local $$t18.333 i32) + (local $$t18.334 i32) + (local $$t18.335 i32) + (local $$t18.336 i32) + (local $$t18.337 i32) + (local $$t18.338 i32) + (local $$t18.339 i32) + (local $$t18.340 i32) + (local $$t18.341 i32) + (local $$t18.342 i32) + (local $$t18.343 i32) + (local $$t18.344 i32) + (local $$t18.345 i32) + (local $$t18.346 i32) + (local $$t18.347 i32) + (local $$t18.348 i32) + (local $$t18.349 i32) + (local $$t18.350 i32) + (local $$t18.351 i32) + (local $$t18.352 i32) + (local $$t18.353 i32) + (local $$t18.354 i32) + (local $$t18.355 i32) + (local $$t18.356 i32) + (local $$t18.357 i32) + (local $$t18.358 i32) + (local $$t18.359 i32) + (local $$t18.360 i32) + (local $$t18.361 i32) + (local $$t18.362 i32) + (local $$t18.363 i32) + (local $$t18.364 i32) + (local $$t18.365 i32) + (local $$t18.366 i32) + (local $$t18.367 i32) + (local $$t18.368 i32) + (local $$t18.369 i32) + (local $$t18.370 i32) + (local $$t18.371 i32) + (local $$t18.372 i32) + (local $$t18.373 i32) + (local $$t18.374 i32) + (local $$t18.375 i32) + (local $$t18.376 i32) + (local $$t18.377 i32) + (local $$t18.378 i32) + (local $$t18.379 i32) + (local $$t18.380 i32) + (local $$t18.381 i32) + (local $$t18.382 i32) + (local $$t18.383 i32) + (local $$t18.384 i32) + (local $$t18.385 i32) + (local $$t18.386 i32) + (local $$t18.387 i32) + (local $$t18.388 i32) + (local $$t18.389 i32) + (local $$t18.390 i32) + (local $$t18.391 i32) + (local $$t18.392 i32) + (local $$t18.393 i32) + (local $$t18.394 i32) + (local $$t18.395 i32) + (local $$t18.396 i32) + (local $$t18.397 i32) + (local $$t18.398 i32) + (local $$t18.399 i32) + (local $$t18.400 i32) + (local $$t18.401 i32) + (local $$t18.402 i32) + (local $$t18.403 i32) + (local $$t18.404 i32) + (local $$t18.405 i32) + (local $$t18.406 i32) + (local $$t18.407 i32) + (local $$t18.408 i32) + (local $$t18.409 i32) + (local $$t18.410 i32) + (local $$t18.411 i32) + (local $$t18.412 i32) + (local $$t18.413 i32) + (local $$t18.414 i32) + (local $$t18.415 i32) + (local $$t18.416 i32) + (local $$t18.417 i32) + (local $$t18.418 i32) + (local $$t18.419 i32) + (local $$t18.420 i32) + (local $$t18.421 i32) + (local $$t18.422 i32) + (local $$t18.423 i32) + (local $$t18.424 i32) + (local $$t18.425 i32) + (local $$t18.426 i32) + (local $$t18.427 i32) + (local $$t18.428 i32) + (local $$t18.429 i32) + (local $$t18.430 i32) + (local $$t18.431 i32) + (local $$t18.432 i32) + (local $$t18.433 i32) + (local $$t18.434 i32) + (local $$t18.435 i32) + (local $$t18.436 i32) + (local $$t18.437 i32) + (local $$t18.438 i32) + (local $$t18.439 i32) + (local $$t18.440 i32) + (local $$t18.441 i32) + (local $$t18.442 i32) + (local $$t18.443 i32) + (local $$t18.444 i32) + (local $$t18.445 i32) + (local $$t18.446 i32) + (local $$t18.447 i32) + (local $$t18.448 i32) + (local $$t18.449 i32) + (local $$t18.450 i32) + (local $$t18.451 i32) + (local $$t18.452 i32) + (local $$t18.453 i32) + (local $$t18.454 i32) + (local $$t18.455 i32) + (local $$t18.456 i32) + (local $$t18.457 i32) + (local $$t18.458 i32) + (local $$t18.459 i32) + (local $$t18.460 i32) + (local $$t18.461 i32) + (local $$t18.462 i32) + (local $$t18.463 i32) + (local $$t18.464 i32) + (local $$t18.465 i32) + (local $$t18.466 i32) + (local $$t18.467 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t19.2 i32) + (local $$t19.3 i32) + (local $$t19.4 i32) + (local $$t19.5 i32) + (local $$t19.6 i32) + (local $$t19.7 i32) + (local $$t19.8 i32) + (local $$t19.9 i32) + (local $$t19.10 i32) + (local $$t19.11 i32) + (local $$t19.12 i32) + (local $$t19.13 i32) + (local $$t19.14 i32) + (local $$t19.15 i32) + (local $$t19.16 i32) + (local $$t19.17 i32) + (local $$t19.18 i32) + (local $$t19.19 i32) + (local $$t19.20 i32) + (local $$t19.21 i32) + (local $$t19.22 i32) + (local $$t19.23 i32) + (local $$t19.24 i32) + (local $$t19.25 i32) + (local $$t19.26 i32) + (local $$t19.27 i32) + (local $$t19.28 i32) + (local $$t19.29 i32) + (local $$t19.30 i32) + (local $$t19.31 i32) + (local $$t19.32 i32) + (local $$t19.33 i32) + (local $$t19.34 i32) + (local $$t19.35 i32) + (local $$t19.36 i32) + (local $$t19.37 i32) + (local $$t19.38 i32) + (local $$t19.39 i32) + (local $$t19.40 i32) + (local $$t19.41 i32) + (local $$t19.42 i32) + (local $$t19.43 i32) + (local $$t19.44 i32) + (local $$t19.45 i32) + (local $$t19.46 i32) + (local $$t19.47 i32) + (local $$t19.48 i32) + (local $$t19.49 i32) + (local $$t19.50 i32) + (local $$t19.51 i32) + (local $$t19.52 i32) + (local $$t19.53 i32) + (local $$t19.54 i32) + (local $$t19.55 i32) + (local $$t19.56 i32) + (local $$t19.57 i32) + (local $$t19.58 i32) + (local $$t19.59 i32) + (local $$t19.60 i32) + (local $$t19.61 i32) + (local $$t19.62 i32) + (local $$t19.63 i32) + (local $$t19.64 i32) + (local $$t19.65 i32) + (local $$t19.66 i32) + (local $$t19.67 i32) + (local $$t19.68 i32) + (local $$t19.69 i32) + (local $$t19.70 i32) + (local $$t19.71 i32) + (local $$t19.72 i32) + (local $$t19.73 i32) + (local $$t19.74 i32) + (local $$t19.75 i32) + (local $$t19.76 i32) + (local $$t19.77 i32) + (local $$t19.78 i32) + (local $$t19.79 i32) + (local $$t19.80 i32) + (local $$t19.81 i32) + (local $$t19.82 i32) + (local $$t19.83 i32) + (local $$t19.84 i32) + (local $$t19.85 i32) + (local $$t19.86 i32) + (local $$t19.87 i32) + (local $$t19.88 i32) + (local $$t19.89 i32) + (local $$t19.90 i32) + (local $$t19.91 i32) + (local $$t19.92 i32) + (local $$t19.93 i32) + (local $$t19.94 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t20.2 i32) + (local $$t20.3 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t49.2 i32) + (local $$t49.3 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 0 + end + i32.const 0 + local.set $$current_block + local.get $r + i32.const 255 + i32.le_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 32 + local.get $r + i32.le_s + local.set $$t1 + local.get $$t1 + if + br $$Block_4 + else + br $$Block_3 + end + end + i32.const 2 + local.set $$current_block + i32.const 0 + local.get $r + i32.le_s + local.set $$t2 + local.get $$t2 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + i32.const 161 + local.get $r + i32.le_s + local.set $$t3 + local.get $$t3 + if + br $$Block_7 + else + br $$Block_6 + end + end + i32.const 5 + local.set $$current_block + local.get $r + i32.const 126 + i32.le_s + local.set $$t4 + local.get $$t4 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + local.get $r + i32.const 173 + i32.eq + i32.eqz + local.set $$t5 + local.get $$t5 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $r + i32.const 255 + i32.le_s + local.set $$t6 + local.get $$t6 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + i32.const 884 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 868 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + i32.const 280 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 264 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $r + i32.const 65535 + i32.and + local.set $$t9 + i32.const 36366 + i32.load16_u + i32.const 36366 + i32.load16_u offset=2 + i32.const 36366 + i32.load16_u offset=4 + i32.const 36366 + i32.load16_u offset=6 + i32.const 36366 + i32.load16_u offset=8 + i32.const 36366 + i32.load16_u offset=10 + i32.const 36366 + i32.load16_u offset=12 + i32.const 36366 + i32.load16_u offset=14 + i32.const 36366 + i32.load16_u offset=16 + i32.const 36366 + i32.load16_u offset=18 + i32.const 36366 + i32.load16_u offset=20 + i32.const 36366 + i32.load16_u offset=22 + i32.const 36366 + i32.load16_u offset=24 + i32.const 36366 + i32.load16_u offset=26 + i32.const 36366 + i32.load16_u offset=28 + i32.const 36366 + i32.load16_u offset=30 + i32.const 36366 + i32.load16_u offset=32 + i32.const 36366 + i32.load16_u offset=34 + i32.const 36366 + i32.load16_u offset=36 + i32.const 36366 + i32.load16_u offset=38 + i32.const 36366 + i32.load16_u offset=40 + i32.const 36366 + i32.load16_u offset=42 + i32.const 36366 + i32.load16_u offset=44 + i32.const 36366 + i32.load16_u offset=46 + i32.const 36366 + i32.load16_u offset=48 + i32.const 36366 + i32.load16_u offset=50 + i32.const 36366 + i32.load16_u offset=52 + i32.const 36366 + i32.load16_u offset=54 + i32.const 36366 + i32.load16_u offset=56 + i32.const 36366 + i32.load16_u offset=58 + i32.const 36366 + i32.load16_u offset=60 + i32.const 36366 + i32.load16_u offset=62 + i32.const 36366 + i32.load16_u offset=64 + i32.const 36366 + i32.load16_u offset=66 + i32.const 36366 + i32.load16_u offset=68 + i32.const 36366 + i32.load16_u offset=70 + i32.const 36366 + i32.load16_u offset=72 + i32.const 36366 + i32.load16_u offset=74 + i32.const 36366 + i32.load16_u offset=76 + i32.const 36366 + i32.load16_u offset=78 + i32.const 36366 + i32.load16_u offset=80 + i32.const 36366 + i32.load16_u offset=82 + i32.const 36366 + i32.load16_u offset=84 + i32.const 36366 + i32.load16_u offset=86 + i32.const 36366 + i32.load16_u offset=88 + i32.const 36366 + i32.load16_u offset=90 + i32.const 36366 + i32.load16_u offset=92 + i32.const 36366 + i32.load16_u offset=94 + i32.const 36366 + i32.load16_u offset=96 + i32.const 36366 + i32.load16_u offset=98 + i32.const 36366 + i32.load16_u offset=100 + i32.const 36366 + i32.load16_u offset=102 + i32.const 36366 + i32.load16_u offset=104 + i32.const 36366 + i32.load16_u offset=106 + i32.const 36366 + i32.load16_u offset=108 + i32.const 36366 + i32.load16_u offset=110 + i32.const 36366 + i32.load16_u offset=112 + i32.const 36366 + i32.load16_u offset=114 + i32.const 36366 + i32.load16_u offset=116 + i32.const 36366 + i32.load16_u offset=118 + i32.const 36366 + i32.load16_u offset=120 + i32.const 36366 + i32.load16_u offset=122 + i32.const 36366 + i32.load16_u offset=124 + i32.const 36366 + i32.load16_u offset=126 + i32.const 36366 + i32.load16_u offset=128 + i32.const 36366 + i32.load16_u offset=130 + i32.const 36366 + i32.load16_u offset=132 + i32.const 36366 + i32.load16_u offset=134 + i32.const 36366 + i32.load16_u offset=136 + i32.const 36366 + i32.load16_u offset=138 + i32.const 36366 + i32.load16_u offset=140 + i32.const 36366 + i32.load16_u offset=142 + i32.const 36366 + i32.load16_u offset=144 + i32.const 36366 + i32.load16_u offset=146 + i32.const 36366 + i32.load16_u offset=148 + i32.const 36366 + i32.load16_u offset=150 + i32.const 36366 + i32.load16_u offset=152 + i32.const 36366 + i32.load16_u offset=154 + i32.const 36366 + i32.load16_u offset=156 + i32.const 36366 + i32.load16_u offset=158 + i32.const 36366 + i32.load16_u offset=160 + i32.const 36366 + i32.load16_u offset=162 + i32.const 36366 + i32.load16_u offset=164 + i32.const 36366 + i32.load16_u offset=166 + i32.const 36366 + i32.load16_u offset=168 + i32.const 36366 + i32.load16_u offset=170 + i32.const 36366 + i32.load16_u offset=172 + i32.const 36366 + i32.load16_u offset=174 + i32.const 36366 + i32.load16_u offset=176 + i32.const 36366 + i32.load16_u offset=178 + i32.const 36366 + i32.load16_u offset=180 + i32.const 36366 + i32.load16_u offset=182 + i32.const 36366 + i32.load16_u offset=184 + i32.const 36366 + i32.load16_u offset=186 + i32.const 36366 + i32.load16_u offset=188 + i32.const 36366 + i32.load16_u offset=190 + i32.const 36366 + i32.load16_u offset=192 + i32.const 36366 + i32.load16_u offset=194 + i32.const 36366 + i32.load16_u offset=196 + i32.const 36366 + i32.load16_u offset=198 + i32.const 36366 + i32.load16_u offset=200 + i32.const 36366 + i32.load16_u offset=202 + i32.const 36366 + i32.load16_u offset=204 + i32.const 36366 + i32.load16_u offset=206 + i32.const 36366 + i32.load16_u offset=208 + i32.const 36366 + i32.load16_u offset=210 + i32.const 36366 + i32.load16_u offset=212 + i32.const 36366 + i32.load16_u offset=214 + i32.const 36366 + i32.load16_u offset=216 + i32.const 36366 + i32.load16_u offset=218 + i32.const 36366 + i32.load16_u offset=220 + i32.const 36366 + i32.load16_u offset=222 + i32.const 36366 + i32.load16_u offset=224 + i32.const 36366 + i32.load16_u offset=226 + i32.const 36366 + i32.load16_u offset=228 + i32.const 36366 + i32.load16_u offset=230 + i32.const 36366 + i32.load16_u offset=232 + i32.const 36366 + i32.load16_u offset=234 + i32.const 36366 + i32.load16_u offset=236 + i32.const 36366 + i32.load16_u offset=238 + i32.const 36366 + i32.load16_u offset=240 + i32.const 36366 + i32.load16_u offset=242 + i32.const 36366 + i32.load16_u offset=244 + i32.const 36366 + i32.load16_u offset=246 + i32.const 36366 + i32.load16_u offset=248 + i32.const 36366 + i32.load16_u offset=250 + i32.const 36366 + i32.load16_u offset=252 + i32.const 36366 + i32.load16_u offset=254 + i32.const 36366 + i32.load16_u offset=256 + i32.const 36366 + i32.load16_u offset=258 + i32.const 36366 + i32.load16_u offset=260 + i32.const 36366 + i32.load16_u offset=262 + i32.const 36366 + i32.load16_u offset=264 + i32.const 36366 + i32.load16_u offset=266 + i32.const 36366 + i32.load16_u offset=268 + i32.const 36366 + i32.load16_u offset=270 + i32.const 36366 + i32.load16_u offset=272 + i32.const 36366 + i32.load16_u offset=274 + i32.const 36366 + i32.load16_u offset=276 + i32.const 36366 + i32.load16_u offset=278 + i32.const 36366 + i32.load16_u offset=280 + i32.const 36366 + i32.load16_u offset=282 + i32.const 36366 + i32.load16_u offset=284 + i32.const 36366 + i32.load16_u offset=286 + i32.const 36366 + i32.load16_u offset=288 + i32.const 36366 + i32.load16_u offset=290 + i32.const 36366 + i32.load16_u offset=292 + i32.const 36366 + i32.load16_u offset=294 + i32.const 36366 + i32.load16_u offset=296 + i32.const 36366 + i32.load16_u offset=298 + i32.const 36366 + i32.load16_u offset=300 + i32.const 36366 + i32.load16_u offset=302 + i32.const 36366 + i32.load16_u offset=304 + i32.const 36366 + i32.load16_u offset=306 + i32.const 36366 + i32.load16_u offset=308 + i32.const 36366 + i32.load16_u offset=310 + i32.const 36366 + i32.load16_u offset=312 + i32.const 36366 + i32.load16_u offset=314 + i32.const 36366 + i32.load16_u offset=316 + i32.const 36366 + i32.load16_u offset=318 + i32.const 36366 + i32.load16_u offset=320 + i32.const 36366 + i32.load16_u offset=322 + i32.const 36366 + i32.load16_u offset=324 + i32.const 36366 + i32.load16_u offset=326 + i32.const 36366 + i32.load16_u offset=328 + i32.const 36366 + i32.load16_u offset=330 + i32.const 36366 + i32.load16_u offset=332 + i32.const 36366 + i32.load16_u offset=334 + i32.const 36366 + i32.load16_u offset=336 + i32.const 36366 + i32.load16_u offset=338 + i32.const 36366 + i32.load16_u offset=340 + i32.const 36366 + i32.load16_u offset=342 + i32.const 36366 + i32.load16_u offset=344 + i32.const 36366 + i32.load16_u offset=346 + i32.const 36366 + i32.load16_u offset=348 + i32.const 36366 + i32.load16_u offset=350 + i32.const 36366 + i32.load16_u offset=352 + i32.const 36366 + i32.load16_u offset=354 + i32.const 36366 + i32.load16_u offset=356 + i32.const 36366 + i32.load16_u offset=358 + i32.const 36366 + i32.load16_u offset=360 + i32.const 36366 + i32.load16_u offset=362 + i32.const 36366 + i32.load16_u offset=364 + i32.const 36366 + i32.load16_u offset=366 + i32.const 36366 + i32.load16_u offset=368 + i32.const 36366 + i32.load16_u offset=370 + i32.const 36366 + i32.load16_u offset=372 + i32.const 36366 + i32.load16_u offset=374 + i32.const 36366 + i32.load16_u offset=376 + i32.const 36366 + i32.load16_u offset=378 + i32.const 36366 + i32.load16_u offset=380 + i32.const 36366 + i32.load16_u offset=382 + i32.const 36366 + i32.load16_u offset=384 + i32.const 36366 + i32.load16_u offset=386 + i32.const 36366 + i32.load16_u offset=388 + i32.const 36366 + i32.load16_u offset=390 + i32.const 36366 + i32.load16_u offset=392 + i32.const 36366 + i32.load16_u offset=394 + i32.const 36366 + i32.load16_u offset=396 + i32.const 36366 + i32.load16_u offset=398 + i32.const 36366 + i32.load16_u offset=400 + i32.const 36366 + i32.load16_u offset=402 + i32.const 36366 + i32.load16_u offset=404 + i32.const 36366 + i32.load16_u offset=406 + i32.const 36366 + i32.load16_u offset=408 + i32.const 36366 + i32.load16_u offset=410 + i32.const 36366 + i32.load16_u offset=412 + i32.const 36366 + i32.load16_u offset=414 + i32.const 36366 + i32.load16_u offset=416 + i32.const 36366 + i32.load16_u offset=418 + i32.const 36366 + i32.load16_u offset=420 + i32.const 36366 + i32.load16_u offset=422 + i32.const 36366 + i32.load16_u offset=424 + i32.const 36366 + i32.load16_u offset=426 + i32.const 36366 + i32.load16_u offset=428 + i32.const 36366 + i32.load16_u offset=430 + i32.const 36366 + i32.load16_u offset=432 + i32.const 36366 + i32.load16_u offset=434 + i32.const 36366 + i32.load16_u offset=436 + i32.const 36366 + i32.load16_u offset=438 + i32.const 36366 + i32.load16_u offset=440 + i32.const 36366 + i32.load16_u offset=442 + i32.const 36366 + i32.load16_u offset=444 + i32.const 36366 + i32.load16_u offset=446 + i32.const 36366 + i32.load16_u offset=448 + i32.const 36366 + i32.load16_u offset=450 + i32.const 36366 + i32.load16_u offset=452 + i32.const 36366 + i32.load16_u offset=454 + i32.const 36366 + i32.load16_u offset=456 + i32.const 36366 + i32.load16_u offset=458 + i32.const 36366 + i32.load16_u offset=460 + i32.const 36366 + i32.load16_u offset=462 + i32.const 36366 + i32.load16_u offset=464 + i32.const 36366 + i32.load16_u offset=466 + i32.const 36366 + i32.load16_u offset=468 + i32.const 36366 + i32.load16_u offset=470 + i32.const 36366 + i32.load16_u offset=472 + i32.const 36366 + i32.load16_u offset=474 + i32.const 36366 + i32.load16_u offset=476 + i32.const 36366 + i32.load16_u offset=478 + i32.const 36366 + i32.load16_u offset=480 + i32.const 36366 + i32.load16_u offset=482 + i32.const 36366 + i32.load16_u offset=484 + i32.const 36366 + i32.load16_u offset=486 + i32.const 36366 + i32.load16_u offset=488 + i32.const 36366 + i32.load16_u offset=490 + i32.const 36366 + i32.load16_u offset=492 + i32.const 36366 + i32.load16_u offset=494 + i32.const 36366 + i32.load16_u offset=496 + i32.const 36366 + i32.load16_u offset=498 + i32.const 36366 + i32.load16_u offset=500 + i32.const 36366 + i32.load16_u offset=502 + i32.const 36366 + i32.load16_u offset=504 + i32.const 36366 + i32.load16_u offset=506 + i32.const 36366 + i32.load16_u offset=508 + i32.const 36366 + i32.load16_u offset=510 + i32.const 36366 + i32.load16_u offset=512 + i32.const 36366 + i32.load16_u offset=514 + i32.const 36366 + i32.load16_u offset=516 + i32.const 36366 + i32.load16_u offset=518 + i32.const 36366 + i32.load16_u offset=520 + i32.const 36366 + i32.load16_u offset=522 + i32.const 36366 + i32.load16_u offset=524 + i32.const 36366 + i32.load16_u offset=526 + i32.const 36366 + i32.load16_u offset=528 + i32.const 36366 + i32.load16_u offset=530 + i32.const 36366 + i32.load16_u offset=532 + i32.const 36366 + i32.load16_u offset=534 + i32.const 36366 + i32.load16_u offset=536 + i32.const 36366 + i32.load16_u offset=538 + i32.const 36366 + i32.load16_u offset=540 + i32.const 36366 + i32.load16_u offset=542 + i32.const 36366 + i32.load16_u offset=544 + i32.const 36366 + i32.load16_u offset=546 + i32.const 36366 + i32.load16_u offset=548 + i32.const 36366 + i32.load16_u offset=550 + i32.const 36366 + i32.load16_u offset=552 + i32.const 36366 + i32.load16_u offset=554 + i32.const 36366 + i32.load16_u offset=556 + i32.const 36366 + i32.load16_u offset=558 + i32.const 36366 + i32.load16_u offset=560 + i32.const 36366 + i32.load16_u offset=562 + i32.const 36366 + i32.load16_u offset=564 + i32.const 36366 + i32.load16_u offset=566 + i32.const 36366 + i32.load16_u offset=568 + i32.const 36366 + i32.load16_u offset=570 + i32.const 36366 + i32.load16_u offset=572 + i32.const 36366 + i32.load16_u offset=574 + i32.const 36366 + i32.load16_u offset=576 + i32.const 36366 + i32.load16_u offset=578 + i32.const 36366 + i32.load16_u offset=580 + i32.const 36366 + i32.load16_u offset=582 + i32.const 36366 + i32.load16_u offset=584 + i32.const 36366 + i32.load16_u offset=586 + i32.const 36366 + i32.load16_u offset=588 + i32.const 36366 + i32.load16_u offset=590 + i32.const 36366 + i32.load16_u offset=592 + i32.const 36366 + i32.load16_u offset=594 + i32.const 36366 + i32.load16_u offset=596 + i32.const 36366 + i32.load16_u offset=598 + i32.const 36366 + i32.load16_u offset=600 + i32.const 36366 + i32.load16_u offset=602 + i32.const 36366 + i32.load16_u offset=604 + i32.const 36366 + i32.load16_u offset=606 + i32.const 36366 + i32.load16_u offset=608 + i32.const 36366 + i32.load16_u offset=610 + i32.const 36366 + i32.load16_u offset=612 + i32.const 36366 + i32.load16_u offset=614 + i32.const 36366 + i32.load16_u offset=616 + i32.const 36366 + i32.load16_u offset=618 + i32.const 36366 + i32.load16_u offset=620 + i32.const 36366 + i32.load16_u offset=622 + i32.const 36366 + i32.load16_u offset=624 + i32.const 36366 + i32.load16_u offset=626 + i32.const 36366 + i32.load16_u offset=628 + i32.const 36366 + i32.load16_u offset=630 + i32.const 36366 + i32.load16_u offset=632 + i32.const 36366 + i32.load16_u offset=634 + i32.const 36366 + i32.load16_u offset=636 + i32.const 36366 + i32.load16_u offset=638 + i32.const 36366 + i32.load16_u offset=640 + i32.const 36366 + i32.load16_u offset=642 + i32.const 36366 + i32.load16_u offset=644 + i32.const 36366 + i32.load16_u offset=646 + i32.const 36366 + i32.load16_u offset=648 + i32.const 36366 + i32.load16_u offset=650 + i32.const 36366 + i32.load16_u offset=652 + i32.const 36366 + i32.load16_u offset=654 + i32.const 36366 + i32.load16_u offset=656 + i32.const 36366 + i32.load16_u offset=658 + i32.const 36366 + i32.load16_u offset=660 + i32.const 36366 + i32.load16_u offset=662 + i32.const 36366 + i32.load16_u offset=664 + i32.const 36366 + i32.load16_u offset=666 + i32.const 36366 + i32.load16_u offset=668 + i32.const 36366 + i32.load16_u offset=670 + i32.const 36366 + i32.load16_u offset=672 + i32.const 36366 + i32.load16_u offset=674 + i32.const 36366 + i32.load16_u offset=676 + i32.const 36366 + i32.load16_u offset=678 + i32.const 36366 + i32.load16_u offset=680 + i32.const 36366 + i32.load16_u offset=682 + i32.const 36366 + i32.load16_u offset=684 + i32.const 36366 + i32.load16_u offset=686 + i32.const 36366 + i32.load16_u offset=688 + i32.const 36366 + i32.load16_u offset=690 + i32.const 36366 + i32.load16_u offset=692 + i32.const 36366 + i32.load16_u offset=694 + i32.const 36366 + i32.load16_u offset=696 + i32.const 36366 + i32.load16_u offset=698 + i32.const 36366 + i32.load16_u offset=700 + i32.const 36366 + i32.load16_u offset=702 + i32.const 36366 + i32.load16_u offset=704 + i32.const 36366 + i32.load16_u offset=706 + i32.const 36366 + i32.load16_u offset=708 + i32.const 36366 + i32.load16_u offset=710 + i32.const 36366 + i32.load16_u offset=712 + i32.const 36366 + i32.load16_u offset=714 + i32.const 36366 + i32.load16_u offset=716 + i32.const 36366 + i32.load16_u offset=718 + i32.const 36366 + i32.load16_u offset=720 + i32.const 36366 + i32.load16_u offset=722 + i32.const 36366 + i32.load16_u offset=724 + i32.const 36366 + i32.load16_u offset=726 + i32.const 36366 + i32.load16_u offset=728 + i32.const 36366 + i32.load16_u offset=730 + i32.const 36366 + i32.load16_u offset=732 + i32.const 36366 + i32.load16_u offset=734 + i32.const 36366 + i32.load16_u offset=736 + i32.const 36366 + i32.load16_u offset=738 + i32.const 36366 + i32.load16_u offset=740 + i32.const 36366 + i32.load16_u offset=742 + i32.const 36366 + i32.load16_u offset=744 + i32.const 36366 + i32.load16_u offset=746 + i32.const 36366 + i32.load16_u offset=748 + i32.const 36366 + i32.load16_u offset=750 + i32.const 36366 + i32.load16_u offset=752 + i32.const 36366 + i32.load16_u offset=754 + i32.const 36366 + i32.load16_u offset=756 + i32.const 36366 + i32.load16_u offset=758 + i32.const 36366 + i32.load16_u offset=760 + i32.const 36366 + i32.load16_u offset=762 + i32.const 36366 + i32.load16_u offset=764 + i32.const 36366 + i32.load16_u offset=766 + i32.const 36366 + i32.load16_u offset=768 + i32.const 36366 + i32.load16_u offset=770 + i32.const 36366 + i32.load16_u offset=772 + i32.const 36366 + i32.load16_u offset=774 + i32.const 36366 + i32.load16_u offset=776 + i32.const 36366 + i32.load16_u offset=778 + i32.const 36366 + i32.load16_u offset=780 + i32.const 36366 + i32.load16_u offset=782 + i32.const 36366 + i32.load16_u offset=784 + i32.const 36366 + i32.load16_u offset=786 + i32.const 36366 + i32.load16_u offset=788 + i32.const 36366 + i32.load16_u offset=790 + i32.const 36366 + i32.load16_u offset=792 + i32.const 36366 + i32.load16_u offset=794 + i32.const 36366 + i32.load16_u offset=796 + i32.const 36366 + i32.load16_u offset=798 + i32.const 36366 + i32.load16_u offset=800 + i32.const 36366 + i32.load16_u offset=802 + i32.const 36366 + i32.load16_u offset=804 + i32.const 36366 + i32.load16_u offset=806 + i32.const 36366 + i32.load16_u offset=808 + i32.const 36366 + i32.load16_u offset=810 + i32.const 36366 + i32.load16_u offset=812 + i32.const 36366 + i32.load16_u offset=814 + i32.const 36366 + i32.load16_u offset=816 + i32.const 36366 + i32.load16_u offset=818 + i32.const 36366 + i32.load16_u offset=820 + i32.const 36366 + i32.load16_u offset=822 + i32.const 36366 + i32.load16_u offset=824 + i32.const 36366 + i32.load16_u offset=826 + i32.const 36366 + i32.load16_u offset=828 + i32.const 36366 + i32.load16_u offset=830 + i32.const 36366 + i32.load16_u offset=832 + i32.const 36366 + i32.load16_u offset=834 + i32.const 36366 + i32.load16_u offset=836 + i32.const 36366 + i32.load16_u offset=838 + i32.const 36366 + i32.load16_u offset=840 + i32.const 36366 + i32.load16_u offset=842 + i32.const 36366 + i32.load16_u offset=844 + i32.const 36366 + i32.load16_u offset=846 + i32.const 36366 + i32.load16_u offset=848 + i32.const 36366 + i32.load16_u offset=850 + i32.const 36366 + i32.load16_u offset=852 + i32.const 36366 + i32.load16_u offset=854 + i32.const 36366 + i32.load16_u offset=856 + i32.const 36366 + i32.load16_u offset=858 + i32.const 36366 + i32.load16_u offset=860 + i32.const 36366 + i32.load16_u offset=862 + i32.const 36366 + i32.load16_u offset=864 + i32.const 36366 + i32.load16_u offset=866 + local.set $$t10.433 + local.set $$t10.432 + local.set $$t10.431 + local.set $$t10.430 + local.set $$t10.429 + local.set $$t10.428 + local.set $$t10.427 + local.set $$t10.426 + local.set $$t10.425 + local.set $$t10.424 + local.set $$t10.423 + local.set $$t10.422 + local.set $$t10.421 + local.set $$t10.420 + local.set $$t10.419 + local.set $$t10.418 + local.set $$t10.417 + local.set $$t10.416 + local.set $$t10.415 + local.set $$t10.414 + local.set $$t10.413 + local.set $$t10.412 + local.set $$t10.411 + local.set $$t10.410 + local.set $$t10.409 + local.set $$t10.408 + local.set $$t10.407 + local.set $$t10.406 + local.set $$t10.405 + local.set $$t10.404 + local.set $$t10.403 + local.set $$t10.402 + local.set $$t10.401 + local.set $$t10.400 + local.set $$t10.399 + local.set $$t10.398 + local.set $$t10.397 + local.set $$t10.396 + local.set $$t10.395 + local.set $$t10.394 + local.set $$t10.393 + local.set $$t10.392 + local.set $$t10.391 + local.set $$t10.390 + local.set $$t10.389 + local.set $$t10.388 + local.set $$t10.387 + local.set $$t10.386 + local.set $$t10.385 + local.set $$t10.384 + local.set $$t10.383 + local.set $$t10.382 + local.set $$t10.381 + local.set $$t10.380 + local.set $$t10.379 + local.set $$t10.378 + local.set $$t10.377 + local.set $$t10.376 + local.set $$t10.375 + local.set $$t10.374 + local.set $$t10.373 + local.set $$t10.372 + local.set $$t10.371 + local.set $$t10.370 + local.set $$t10.369 + local.set $$t10.368 + local.set $$t10.367 + local.set $$t10.366 + local.set $$t10.365 + local.set $$t10.364 + local.set $$t10.363 + local.set $$t10.362 + local.set $$t10.361 + local.set $$t10.360 + local.set $$t10.359 + local.set $$t10.358 + local.set $$t10.357 + local.set $$t10.356 + local.set $$t10.355 + local.set $$t10.354 + local.set $$t10.353 + local.set $$t10.352 + local.set $$t10.351 + local.set $$t10.350 + local.set $$t10.349 + local.set $$t10.348 + local.set $$t10.347 + local.set $$t10.346 + local.set $$t10.345 + local.set $$t10.344 + local.set $$t10.343 + local.set $$t10.342 + local.set $$t10.341 + local.set $$t10.340 + local.set $$t10.339 + local.set $$t10.338 + local.set $$t10.337 + local.set $$t10.336 + local.set $$t10.335 + local.set $$t10.334 + local.set $$t10.333 + local.set $$t10.332 + local.set $$t10.331 + local.set $$t10.330 + local.set $$t10.329 + local.set $$t10.328 + local.set $$t10.327 + local.set $$t10.326 + local.set $$t10.325 + local.set $$t10.324 + local.set $$t10.323 + local.set $$t10.322 + local.set $$t10.321 + local.set $$t10.320 + local.set $$t10.319 + local.set $$t10.318 + local.set $$t10.317 + local.set $$t10.316 + local.set $$t10.315 + local.set $$t10.314 + local.set $$t10.313 + local.set $$t10.312 + local.set $$t10.311 + local.set $$t10.310 + local.set $$t10.309 + local.set $$t10.308 + local.set $$t10.307 + local.set $$t10.306 + local.set $$t10.305 + local.set $$t10.304 + local.set $$t10.303 + local.set $$t10.302 + local.set $$t10.301 + local.set $$t10.300 + local.set $$t10.299 + local.set $$t10.298 + local.set $$t10.297 + local.set $$t10.296 + local.set $$t10.295 + local.set $$t10.294 + local.set $$t10.293 + local.set $$t10.292 + local.set $$t10.291 + local.set $$t10.290 + local.set $$t10.289 + local.set $$t10.288 + local.set $$t10.287 + local.set $$t10.286 + local.set $$t10.285 + local.set $$t10.284 + local.set $$t10.283 + local.set $$t10.282 + local.set $$t10.281 + local.set $$t10.280 + local.set $$t10.279 + local.set $$t10.278 + local.set $$t10.277 + local.set $$t10.276 + local.set $$t10.275 + local.set $$t10.274 + local.set $$t10.273 + local.set $$t10.272 + local.set $$t10.271 + local.set $$t10.270 + local.set $$t10.269 + local.set $$t10.268 + local.set $$t10.267 + local.set $$t10.266 + local.set $$t10.265 + local.set $$t10.264 + local.set $$t10.263 + local.set $$t10.262 + local.set $$t10.261 + local.set $$t10.260 + local.set $$t10.259 + local.set $$t10.258 + local.set $$t10.257 + local.set $$t10.256 + local.set $$t10.255 + local.set $$t10.254 + local.set $$t10.253 + local.set $$t10.252 + local.set $$t10.251 + local.set $$t10.250 + local.set $$t10.249 + local.set $$t10.248 + local.set $$t10.247 + local.set $$t10.246 + local.set $$t10.245 + local.set $$t10.244 + local.set $$t10.243 + local.set $$t10.242 + local.set $$t10.241 + local.set $$t10.240 + local.set $$t10.239 + local.set $$t10.238 + local.set $$t10.237 + local.set $$t10.236 + local.set $$t10.235 + local.set $$t10.234 + local.set $$t10.233 + local.set $$t10.232 + local.set $$t10.231 + local.set $$t10.230 + local.set $$t10.229 + local.set $$t10.228 + local.set $$t10.227 + local.set $$t10.226 + local.set $$t10.225 + local.set $$t10.224 + local.set $$t10.223 + local.set $$t10.222 + local.set $$t10.221 + local.set $$t10.220 + local.set $$t10.219 + local.set $$t10.218 + local.set $$t10.217 + local.set $$t10.216 + local.set $$t10.215 + local.set $$t10.214 + local.set $$t10.213 + local.set $$t10.212 + local.set $$t10.211 + local.set $$t10.210 + local.set $$t10.209 + local.set $$t10.208 + local.set $$t10.207 + local.set $$t10.206 + local.set $$t10.205 + local.set $$t10.204 + local.set $$t10.203 + local.set $$t10.202 + local.set $$t10.201 + local.set $$t10.200 + local.set $$t10.199 + local.set $$t10.198 + local.set $$t10.197 + local.set $$t10.196 + local.set $$t10.195 + local.set $$t10.194 + local.set $$t10.193 + local.set $$t10.192 + local.set $$t10.191 + local.set $$t10.190 + local.set $$t10.189 + local.set $$t10.188 + local.set $$t10.187 + local.set $$t10.186 + local.set $$t10.185 + local.set $$t10.184 + local.set $$t10.183 + local.set $$t10.182 + local.set $$t10.181 + local.set $$t10.180 + local.set $$t10.179 + local.set $$t10.178 + local.set $$t10.177 + local.set $$t10.176 + local.set $$t10.175 + local.set $$t10.174 + local.set $$t10.173 + local.set $$t10.172 + local.set $$t10.171 + local.set $$t10.170 + local.set $$t10.169 + local.set $$t10.168 + local.set $$t10.167 + local.set $$t10.166 + local.set $$t10.165 + local.set $$t10.164 + local.set $$t10.163 + local.set $$t10.162 + local.set $$t10.161 + local.set $$t10.160 + local.set $$t10.159 + local.set $$t10.158 + local.set $$t10.157 + local.set $$t10.156 + local.set $$t10.155 + local.set $$t10.154 + local.set $$t10.153 + local.set $$t10.152 + local.set $$t10.151 + local.set $$t10.150 + local.set $$t10.149 + local.set $$t10.148 + local.set $$t10.147 + local.set $$t10.146 + local.set $$t10.145 + local.set $$t10.144 + local.set $$t10.143 + local.set $$t10.142 + local.set $$t10.141 + local.set $$t10.140 + local.set $$t10.139 + local.set $$t10.138 + local.set $$t10.137 + local.set $$t10.136 + local.set $$t10.135 + local.set $$t10.134 + local.set $$t10.133 + local.set $$t10.132 + local.set $$t10.131 + local.set $$t10.130 + local.set $$t10.129 + local.set $$t10.128 + local.set $$t10.127 + local.set $$t10.126 + local.set $$t10.125 + local.set $$t10.124 + local.set $$t10.123 + local.set $$t10.122 + local.set $$t10.121 + local.set $$t10.120 + local.set $$t10.119 + local.set $$t10.118 + local.set $$t10.117 + local.set $$t10.116 + local.set $$t10.115 + local.set $$t10.114 + local.set $$t10.113 + local.set $$t10.112 + local.set $$t10.111 + local.set $$t10.110 + local.set $$t10.109 + local.set $$t10.108 + local.set $$t10.107 + local.set $$t10.106 + local.set $$t10.105 + local.set $$t10.104 + local.set $$t10.103 + local.set $$t10.102 + local.set $$t10.101 + local.set $$t10.100 + local.set $$t10.99 + local.set $$t10.98 + local.set $$t10.97 + local.set $$t10.96 + local.set $$t10.95 + local.set $$t10.94 + local.set $$t10.93 + local.set $$t10.92 + local.set $$t10.91 + local.set $$t10.90 + local.set $$t10.89 + local.set $$t10.88 + local.set $$t10.87 + local.set $$t10.86 + local.set $$t10.85 + local.set $$t10.84 + local.set $$t10.83 + local.set $$t10.82 + local.set $$t10.81 + local.set $$t10.80 + local.set $$t10.79 + local.set $$t10.78 + local.set $$t10.77 + local.set $$t10.76 + local.set $$t10.75 + local.set $$t10.74 + local.set $$t10.73 + local.set $$t10.72 + local.set $$t10.71 + local.set $$t10.70 + local.set $$t10.69 + local.set $$t10.68 + local.set $$t10.67 + local.set $$t10.66 + local.set $$t10.65 + local.set $$t10.64 + local.set $$t10.63 + local.set $$t10.62 + local.set $$t10.61 + local.set $$t10.60 + local.set $$t10.59 + local.set $$t10.58 + local.set $$t10.57 + local.set $$t10.56 + local.set $$t10.55 + local.set $$t10.54 + local.set $$t10.53 + local.set $$t10.52 + local.set $$t10.51 + local.set $$t10.50 + local.set $$t10.49 + local.set $$t10.48 + local.set $$t10.47 + local.set $$t10.46 + local.set $$t10.45 + local.set $$t10.44 + local.set $$t10.43 + local.set $$t10.42 + local.set $$t10.41 + local.set $$t10.40 + local.set $$t10.39 + local.set $$t10.38 + local.set $$t10.37 + local.set $$t10.36 + local.set $$t10.35 + local.set $$t10.34 + local.set $$t10.33 + local.set $$t10.32 + local.set $$t10.31 + local.set $$t10.30 + local.set $$t10.29 + local.set $$t10.28 + local.set $$t10.27 + local.set $$t10.26 + local.set $$t10.25 + local.set $$t10.24 + local.set $$t10.23 + local.set $$t10.22 + local.set $$t10.21 + local.set $$t10.20 + local.set $$t10.19 + local.set $$t10.18 + local.set $$t10.17 + local.set $$t10.16 + local.set $$t10.15 + local.set $$t10.14 + local.set $$t10.13 + local.set $$t10.12 + local.set $$t10.11 + local.set $$t10.10 + local.set $$t10.9 + local.set $$t10.8 + local.set $$t10.7 + local.set $$t10.6 + local.set $$t10.5 + local.set $$t10.4 + local.set $$t10.3 + local.set $$t10.2 + local.set $$t10.1 + local.set $$t10.0 + i32.const 35912 + i32.load16_u + i32.const 35912 + i32.load16_u offset=2 + i32.const 35912 + i32.load16_u offset=4 + i32.const 35912 + i32.load16_u offset=6 + i32.const 35912 + i32.load16_u offset=8 + i32.const 35912 + i32.load16_u offset=10 + i32.const 35912 + i32.load16_u offset=12 + i32.const 35912 + i32.load16_u offset=14 + i32.const 35912 + i32.load16_u offset=16 + i32.const 35912 + i32.load16_u offset=18 + i32.const 35912 + i32.load16_u offset=20 + i32.const 35912 + i32.load16_u offset=22 + i32.const 35912 + i32.load16_u offset=24 + i32.const 35912 + i32.load16_u offset=26 + i32.const 35912 + i32.load16_u offset=28 + i32.const 35912 + i32.load16_u offset=30 + i32.const 35912 + i32.load16_u offset=32 + i32.const 35912 + i32.load16_u offset=34 + i32.const 35912 + i32.load16_u offset=36 + i32.const 35912 + i32.load16_u offset=38 + i32.const 35912 + i32.load16_u offset=40 + i32.const 35912 + i32.load16_u offset=42 + i32.const 35912 + i32.load16_u offset=44 + i32.const 35912 + i32.load16_u offset=46 + i32.const 35912 + i32.load16_u offset=48 + i32.const 35912 + i32.load16_u offset=50 + i32.const 35912 + i32.load16_u offset=52 + i32.const 35912 + i32.load16_u offset=54 + i32.const 35912 + i32.load16_u offset=56 + i32.const 35912 + i32.load16_u offset=58 + i32.const 35912 + i32.load16_u offset=60 + i32.const 35912 + i32.load16_u offset=62 + i32.const 35912 + i32.load16_u offset=64 + i32.const 35912 + i32.load16_u offset=66 + i32.const 35912 + i32.load16_u offset=68 + i32.const 35912 + i32.load16_u offset=70 + i32.const 35912 + i32.load16_u offset=72 + i32.const 35912 + i32.load16_u offset=74 + i32.const 35912 + i32.load16_u offset=76 + i32.const 35912 + i32.load16_u offset=78 + i32.const 35912 + i32.load16_u offset=80 + i32.const 35912 + i32.load16_u offset=82 + i32.const 35912 + i32.load16_u offset=84 + i32.const 35912 + i32.load16_u offset=86 + i32.const 35912 + i32.load16_u offset=88 + i32.const 35912 + i32.load16_u offset=90 + i32.const 35912 + i32.load16_u offset=92 + i32.const 35912 + i32.load16_u offset=94 + i32.const 35912 + i32.load16_u offset=96 + i32.const 35912 + i32.load16_u offset=98 + i32.const 35912 + i32.load16_u offset=100 + i32.const 35912 + i32.load16_u offset=102 + i32.const 35912 + i32.load16_u offset=104 + i32.const 35912 + i32.load16_u offset=106 + i32.const 35912 + i32.load16_u offset=108 + i32.const 35912 + i32.load16_u offset=110 + i32.const 35912 + i32.load16_u offset=112 + i32.const 35912 + i32.load16_u offset=114 + i32.const 35912 + i32.load16_u offset=116 + i32.const 35912 + i32.load16_u offset=118 + i32.const 35912 + i32.load16_u offset=120 + i32.const 35912 + i32.load16_u offset=122 + i32.const 35912 + i32.load16_u offset=124 + i32.const 35912 + i32.load16_u offset=126 + i32.const 35912 + i32.load16_u offset=128 + i32.const 35912 + i32.load16_u offset=130 + i32.const 35912 + i32.load16_u offset=132 + i32.const 35912 + i32.load16_u offset=134 + i32.const 35912 + i32.load16_u offset=136 + i32.const 35912 + i32.load16_u offset=138 + i32.const 35912 + i32.load16_u offset=140 + i32.const 35912 + i32.load16_u offset=142 + i32.const 35912 + i32.load16_u offset=144 + i32.const 35912 + i32.load16_u offset=146 + i32.const 35912 + i32.load16_u offset=148 + i32.const 35912 + i32.load16_u offset=150 + i32.const 35912 + i32.load16_u offset=152 + i32.const 35912 + i32.load16_u offset=154 + i32.const 35912 + i32.load16_u offset=156 + i32.const 35912 + i32.load16_u offset=158 + i32.const 35912 + i32.load16_u offset=160 + i32.const 35912 + i32.load16_u offset=162 + i32.const 35912 + i32.load16_u offset=164 + i32.const 35912 + i32.load16_u offset=166 + i32.const 35912 + i32.load16_u offset=168 + i32.const 35912 + i32.load16_u offset=170 + i32.const 35912 + i32.load16_u offset=172 + i32.const 35912 + i32.load16_u offset=174 + i32.const 35912 + i32.load16_u offset=176 + i32.const 35912 + i32.load16_u offset=178 + i32.const 35912 + i32.load16_u offset=180 + i32.const 35912 + i32.load16_u offset=182 + i32.const 35912 + i32.load16_u offset=184 + i32.const 35912 + i32.load16_u offset=186 + i32.const 35912 + i32.load16_u offset=188 + i32.const 35912 + i32.load16_u offset=190 + i32.const 35912 + i32.load16_u offset=192 + i32.const 35912 + i32.load16_u offset=194 + i32.const 35912 + i32.load16_u offset=196 + i32.const 35912 + i32.load16_u offset=198 + i32.const 35912 + i32.load16_u offset=200 + i32.const 35912 + i32.load16_u offset=202 + i32.const 35912 + i32.load16_u offset=204 + i32.const 35912 + i32.load16_u offset=206 + i32.const 35912 + i32.load16_u offset=208 + i32.const 35912 + i32.load16_u offset=210 + i32.const 35912 + i32.load16_u offset=212 + i32.const 35912 + i32.load16_u offset=214 + i32.const 35912 + i32.load16_u offset=216 + i32.const 35912 + i32.load16_u offset=218 + i32.const 35912 + i32.load16_u offset=220 + i32.const 35912 + i32.load16_u offset=222 + i32.const 35912 + i32.load16_u offset=224 + i32.const 35912 + i32.load16_u offset=226 + i32.const 35912 + i32.load16_u offset=228 + i32.const 35912 + i32.load16_u offset=230 + i32.const 35912 + i32.load16_u offset=232 + i32.const 35912 + i32.load16_u offset=234 + i32.const 35912 + i32.load16_u offset=236 + i32.const 35912 + i32.load16_u offset=238 + i32.const 35912 + i32.load16_u offset=240 + i32.const 35912 + i32.load16_u offset=242 + i32.const 35912 + i32.load16_u offset=244 + i32.const 35912 + i32.load16_u offset=246 + i32.const 35912 + i32.load16_u offset=248 + i32.const 35912 + i32.load16_u offset=250 + i32.const 35912 + i32.load16_u offset=252 + i32.const 35912 + i32.load16_u offset=254 + i32.const 35912 + i32.load16_u offset=256 + i32.const 35912 + i32.load16_u offset=258 + i32.const 35912 + i32.load16_u offset=260 + i32.const 35912 + i32.load16_u offset=262 + local.set $$t11.131 + local.set $$t11.130 + local.set $$t11.129 + local.set $$t11.128 + local.set $$t11.127 + local.set $$t11.126 + local.set $$t11.125 + local.set $$t11.124 + local.set $$t11.123 + local.set $$t11.122 + local.set $$t11.121 + local.set $$t11.120 + local.set $$t11.119 + local.set $$t11.118 + local.set $$t11.117 + local.set $$t11.116 + local.set $$t11.115 + local.set $$t11.114 + local.set $$t11.113 + local.set $$t11.112 + local.set $$t11.111 + local.set $$t11.110 + local.set $$t11.109 + local.set $$t11.108 + local.set $$t11.107 + local.set $$t11.106 + local.set $$t11.105 + local.set $$t11.104 + local.set $$t11.103 + local.set $$t11.102 + local.set $$t11.101 + local.set $$t11.100 + local.set $$t11.99 + local.set $$t11.98 + local.set $$t11.97 + local.set $$t11.96 + local.set $$t11.95 + local.set $$t11.94 + local.set $$t11.93 + local.set $$t11.92 + local.set $$t11.91 + local.set $$t11.90 + local.set $$t11.89 + local.set $$t11.88 + local.set $$t11.87 + local.set $$t11.86 + local.set $$t11.85 + local.set $$t11.84 + local.set $$t11.83 + local.set $$t11.82 + local.set $$t11.81 + local.set $$t11.80 + local.set $$t11.79 + local.set $$t11.78 + local.set $$t11.77 + local.set $$t11.76 + local.set $$t11.75 + local.set $$t11.74 + local.set $$t11.73 + local.set $$t11.72 + local.set $$t11.71 + local.set $$t11.70 + local.set $$t11.69 + local.set $$t11.68 + local.set $$t11.67 + local.set $$t11.66 + local.set $$t11.65 + local.set $$t11.64 + local.set $$t11.63 + local.set $$t11.62 + local.set $$t11.61 + local.set $$t11.60 + local.set $$t11.59 + local.set $$t11.58 + local.set $$t11.57 + local.set $$t11.56 + local.set $$t11.55 + local.set $$t11.54 + local.set $$t11.53 + local.set $$t11.52 + local.set $$t11.51 + local.set $$t11.50 + local.set $$t11.49 + local.set $$t11.48 + local.set $$t11.47 + local.set $$t11.46 + local.set $$t11.45 + local.set $$t11.44 + local.set $$t11.43 + local.set $$t11.42 + local.set $$t11.41 + local.set $$t11.40 + local.set $$t11.39 + local.set $$t11.38 + local.set $$t11.37 + local.set $$t11.36 + local.set $$t11.35 + local.set $$t11.34 + local.set $$t11.33 + local.set $$t11.32 + local.set $$t11.31 + local.set $$t11.30 + local.set $$t11.29 + local.set $$t11.28 + local.set $$t11.27 + local.set $$t11.26 + local.set $$t11.25 + local.set $$t11.24 + local.set $$t11.23 + local.set $$t11.22 + local.set $$t11.21 + local.set $$t11.20 + local.set $$t11.19 + local.set $$t11.18 + local.set $$t11.17 + local.set $$t11.16 + local.set $$t11.15 + local.set $$t11.14 + local.set $$t11.13 + local.set $$t11.12 + local.set $$t11.11 + local.set $$t11.10 + local.set $$t11.9 + local.set $$t11.8 + local.set $$t11.7 + local.set $$t11.6 + local.set $$t11.5 + local.set $$t11.4 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t7.1 + local.get $$t10.0 + i32.store16 + local.get $$t7.1 + local.get $$t10.1 + i32.store16 offset=2 + local.get $$t7.1 + local.get $$t10.2 + i32.store16 offset=4 + local.get $$t7.1 + local.get $$t10.3 + i32.store16 offset=6 + local.get $$t7.1 + local.get $$t10.4 + i32.store16 offset=8 + local.get $$t7.1 + local.get $$t10.5 + i32.store16 offset=10 + local.get $$t7.1 + local.get $$t10.6 + i32.store16 offset=12 + local.get $$t7.1 + local.get $$t10.7 + i32.store16 offset=14 + local.get $$t7.1 + local.get $$t10.8 + i32.store16 offset=16 + local.get $$t7.1 + local.get $$t10.9 + i32.store16 offset=18 + local.get $$t7.1 + local.get $$t10.10 + i32.store16 offset=20 + local.get $$t7.1 + local.get $$t10.11 + i32.store16 offset=22 + local.get $$t7.1 + local.get $$t10.12 + i32.store16 offset=24 + local.get $$t7.1 + local.get $$t10.13 + i32.store16 offset=26 + local.get $$t7.1 + local.get $$t10.14 + i32.store16 offset=28 + local.get $$t7.1 + local.get $$t10.15 + i32.store16 offset=30 + local.get $$t7.1 + local.get $$t10.16 + i32.store16 offset=32 + local.get $$t7.1 + local.get $$t10.17 + i32.store16 offset=34 + local.get $$t7.1 + local.get $$t10.18 + i32.store16 offset=36 + local.get $$t7.1 + local.get $$t10.19 + i32.store16 offset=38 + local.get $$t7.1 + local.get $$t10.20 + i32.store16 offset=40 + local.get $$t7.1 + local.get $$t10.21 + i32.store16 offset=42 + local.get $$t7.1 + local.get $$t10.22 + i32.store16 offset=44 + local.get $$t7.1 + local.get $$t10.23 + i32.store16 offset=46 + local.get $$t7.1 + local.get $$t10.24 + i32.store16 offset=48 + local.get $$t7.1 + local.get $$t10.25 + i32.store16 offset=50 + local.get $$t7.1 + local.get $$t10.26 + i32.store16 offset=52 + local.get $$t7.1 + local.get $$t10.27 + i32.store16 offset=54 + local.get $$t7.1 + local.get $$t10.28 + i32.store16 offset=56 + local.get $$t7.1 + local.get $$t10.29 + i32.store16 offset=58 + local.get $$t7.1 + local.get $$t10.30 + i32.store16 offset=60 + local.get $$t7.1 + local.get $$t10.31 + i32.store16 offset=62 + local.get $$t7.1 + local.get $$t10.32 + i32.store16 offset=64 + local.get $$t7.1 + local.get $$t10.33 + i32.store16 offset=66 + local.get $$t7.1 + local.get $$t10.34 + i32.store16 offset=68 + local.get $$t7.1 + local.get $$t10.35 + i32.store16 offset=70 + local.get $$t7.1 + local.get $$t10.36 + i32.store16 offset=72 + local.get $$t7.1 + local.get $$t10.37 + i32.store16 offset=74 + local.get $$t7.1 + local.get $$t10.38 + i32.store16 offset=76 + local.get $$t7.1 + local.get $$t10.39 + i32.store16 offset=78 + local.get $$t7.1 + local.get $$t10.40 + i32.store16 offset=80 + local.get $$t7.1 + local.get $$t10.41 + i32.store16 offset=82 + local.get $$t7.1 + local.get $$t10.42 + i32.store16 offset=84 + local.get $$t7.1 + local.get $$t10.43 + i32.store16 offset=86 + local.get $$t7.1 + local.get $$t10.44 + i32.store16 offset=88 + local.get $$t7.1 + local.get $$t10.45 + i32.store16 offset=90 + local.get $$t7.1 + local.get $$t10.46 + i32.store16 offset=92 + local.get $$t7.1 + local.get $$t10.47 + i32.store16 offset=94 + local.get $$t7.1 + local.get $$t10.48 + i32.store16 offset=96 + local.get $$t7.1 + local.get $$t10.49 + i32.store16 offset=98 + local.get $$t7.1 + local.get $$t10.50 + i32.store16 offset=100 + local.get $$t7.1 + local.get $$t10.51 + i32.store16 offset=102 + local.get $$t7.1 + local.get $$t10.52 + i32.store16 offset=104 + local.get $$t7.1 + local.get $$t10.53 + i32.store16 offset=106 + local.get $$t7.1 + local.get $$t10.54 + i32.store16 offset=108 + local.get $$t7.1 + local.get $$t10.55 + i32.store16 offset=110 + local.get $$t7.1 + local.get $$t10.56 + i32.store16 offset=112 + local.get $$t7.1 + local.get $$t10.57 + i32.store16 offset=114 + local.get $$t7.1 + local.get $$t10.58 + i32.store16 offset=116 + local.get $$t7.1 + local.get $$t10.59 + i32.store16 offset=118 + local.get $$t7.1 + local.get $$t10.60 + i32.store16 offset=120 + local.get $$t7.1 + local.get $$t10.61 + i32.store16 offset=122 + local.get $$t7.1 + local.get $$t10.62 + i32.store16 offset=124 + local.get $$t7.1 + local.get $$t10.63 + i32.store16 offset=126 + local.get $$t7.1 + local.get $$t10.64 + i32.store16 offset=128 + local.get $$t7.1 + local.get $$t10.65 + i32.store16 offset=130 + local.get $$t7.1 + local.get $$t10.66 + i32.store16 offset=132 + local.get $$t7.1 + local.get $$t10.67 + i32.store16 offset=134 + local.get $$t7.1 + local.get $$t10.68 + i32.store16 offset=136 + local.get $$t7.1 + local.get $$t10.69 + i32.store16 offset=138 + local.get $$t7.1 + local.get $$t10.70 + i32.store16 offset=140 + local.get $$t7.1 + local.get $$t10.71 + i32.store16 offset=142 + local.get $$t7.1 + local.get $$t10.72 + i32.store16 offset=144 + local.get $$t7.1 + local.get $$t10.73 + i32.store16 offset=146 + local.get $$t7.1 + local.get $$t10.74 + i32.store16 offset=148 + local.get $$t7.1 + local.get $$t10.75 + i32.store16 offset=150 + local.get $$t7.1 + local.get $$t10.76 + i32.store16 offset=152 + local.get $$t7.1 + local.get $$t10.77 + i32.store16 offset=154 + local.get $$t7.1 + local.get $$t10.78 + i32.store16 offset=156 + local.get $$t7.1 + local.get $$t10.79 + i32.store16 offset=158 + local.get $$t7.1 + local.get $$t10.80 + i32.store16 offset=160 + local.get $$t7.1 + local.get $$t10.81 + i32.store16 offset=162 + local.get $$t7.1 + local.get $$t10.82 + i32.store16 offset=164 + local.get $$t7.1 + local.get $$t10.83 + i32.store16 offset=166 + local.get $$t7.1 + local.get $$t10.84 + i32.store16 offset=168 + local.get $$t7.1 + local.get $$t10.85 + i32.store16 offset=170 + local.get $$t7.1 + local.get $$t10.86 + i32.store16 offset=172 + local.get $$t7.1 + local.get $$t10.87 + i32.store16 offset=174 + local.get $$t7.1 + local.get $$t10.88 + i32.store16 offset=176 + local.get $$t7.1 + local.get $$t10.89 + i32.store16 offset=178 + local.get $$t7.1 + local.get $$t10.90 + i32.store16 offset=180 + local.get $$t7.1 + local.get $$t10.91 + i32.store16 offset=182 + local.get $$t7.1 + local.get $$t10.92 + i32.store16 offset=184 + local.get $$t7.1 + local.get $$t10.93 + i32.store16 offset=186 + local.get $$t7.1 + local.get $$t10.94 + i32.store16 offset=188 + local.get $$t7.1 + local.get $$t10.95 + i32.store16 offset=190 + local.get $$t7.1 + local.get $$t10.96 + i32.store16 offset=192 + local.get $$t7.1 + local.get $$t10.97 + i32.store16 offset=194 + local.get $$t7.1 + local.get $$t10.98 + i32.store16 offset=196 + local.get $$t7.1 + local.get $$t10.99 + i32.store16 offset=198 + local.get $$t7.1 + local.get $$t10.100 + i32.store16 offset=200 + local.get $$t7.1 + local.get $$t10.101 + i32.store16 offset=202 + local.get $$t7.1 + local.get $$t10.102 + i32.store16 offset=204 + local.get $$t7.1 + local.get $$t10.103 + i32.store16 offset=206 + local.get $$t7.1 + local.get $$t10.104 + i32.store16 offset=208 + local.get $$t7.1 + local.get $$t10.105 + i32.store16 offset=210 + local.get $$t7.1 + local.get $$t10.106 + i32.store16 offset=212 + local.get $$t7.1 + local.get $$t10.107 + i32.store16 offset=214 + local.get $$t7.1 + local.get $$t10.108 + i32.store16 offset=216 + local.get $$t7.1 + local.get $$t10.109 + i32.store16 offset=218 + local.get $$t7.1 + local.get $$t10.110 + i32.store16 offset=220 + local.get $$t7.1 + local.get $$t10.111 + i32.store16 offset=222 + local.get $$t7.1 + local.get $$t10.112 + i32.store16 offset=224 + local.get $$t7.1 + local.get $$t10.113 + i32.store16 offset=226 + local.get $$t7.1 + local.get $$t10.114 + i32.store16 offset=228 + local.get $$t7.1 + local.get $$t10.115 + i32.store16 offset=230 + local.get $$t7.1 + local.get $$t10.116 + i32.store16 offset=232 + local.get $$t7.1 + local.get $$t10.117 + i32.store16 offset=234 + local.get $$t7.1 + local.get $$t10.118 + i32.store16 offset=236 + local.get $$t7.1 + local.get $$t10.119 + i32.store16 offset=238 + local.get $$t7.1 + local.get $$t10.120 + i32.store16 offset=240 + local.get $$t7.1 + local.get $$t10.121 + i32.store16 offset=242 + local.get $$t7.1 + local.get $$t10.122 + i32.store16 offset=244 + local.get $$t7.1 + local.get $$t10.123 + i32.store16 offset=246 + local.get $$t7.1 + local.get $$t10.124 + i32.store16 offset=248 + local.get $$t7.1 + local.get $$t10.125 + i32.store16 offset=250 + local.get $$t7.1 + local.get $$t10.126 + i32.store16 offset=252 + local.get $$t7.1 + local.get $$t10.127 + i32.store16 offset=254 + local.get $$t7.1 + local.get $$t10.128 + i32.store16 offset=256 + local.get $$t7.1 + local.get $$t10.129 + i32.store16 offset=258 + local.get $$t7.1 + local.get $$t10.130 + i32.store16 offset=260 + local.get $$t7.1 + local.get $$t10.131 + i32.store16 offset=262 + local.get $$t7.1 + local.get $$t10.132 + i32.store16 offset=264 + local.get $$t7.1 + local.get $$t10.133 + i32.store16 offset=266 + local.get $$t7.1 + local.get $$t10.134 + i32.store16 offset=268 + local.get $$t7.1 + local.get $$t10.135 + i32.store16 offset=270 + local.get $$t7.1 + local.get $$t10.136 + i32.store16 offset=272 + local.get $$t7.1 + local.get $$t10.137 + i32.store16 offset=274 + local.get $$t7.1 + local.get $$t10.138 + i32.store16 offset=276 + local.get $$t7.1 + local.get $$t10.139 + i32.store16 offset=278 + local.get $$t7.1 + local.get $$t10.140 + i32.store16 offset=280 + local.get $$t7.1 + local.get $$t10.141 + i32.store16 offset=282 + local.get $$t7.1 + local.get $$t10.142 + i32.store16 offset=284 + local.get $$t7.1 + local.get $$t10.143 + i32.store16 offset=286 + local.get $$t7.1 + local.get $$t10.144 + i32.store16 offset=288 + local.get $$t7.1 + local.get $$t10.145 + i32.store16 offset=290 + local.get $$t7.1 + local.get $$t10.146 + i32.store16 offset=292 + local.get $$t7.1 + local.get $$t10.147 + i32.store16 offset=294 + local.get $$t7.1 + local.get $$t10.148 + i32.store16 offset=296 + local.get $$t7.1 + local.get $$t10.149 + i32.store16 offset=298 + local.get $$t7.1 + local.get $$t10.150 + i32.store16 offset=300 + local.get $$t7.1 + local.get $$t10.151 + i32.store16 offset=302 + local.get $$t7.1 + local.get $$t10.152 + i32.store16 offset=304 + local.get $$t7.1 + local.get $$t10.153 + i32.store16 offset=306 + local.get $$t7.1 + local.get $$t10.154 + i32.store16 offset=308 + local.get $$t7.1 + local.get $$t10.155 + i32.store16 offset=310 + local.get $$t7.1 + local.get $$t10.156 + i32.store16 offset=312 + local.get $$t7.1 + local.get $$t10.157 + i32.store16 offset=314 + local.get $$t7.1 + local.get $$t10.158 + i32.store16 offset=316 + local.get $$t7.1 + local.get $$t10.159 + i32.store16 offset=318 + local.get $$t7.1 + local.get $$t10.160 + i32.store16 offset=320 + local.get $$t7.1 + local.get $$t10.161 + i32.store16 offset=322 + local.get $$t7.1 + local.get $$t10.162 + i32.store16 offset=324 + local.get $$t7.1 + local.get $$t10.163 + i32.store16 offset=326 + local.get $$t7.1 + local.get $$t10.164 + i32.store16 offset=328 + local.get $$t7.1 + local.get $$t10.165 + i32.store16 offset=330 + local.get $$t7.1 + local.get $$t10.166 + i32.store16 offset=332 + local.get $$t7.1 + local.get $$t10.167 + i32.store16 offset=334 + local.get $$t7.1 + local.get $$t10.168 + i32.store16 offset=336 + local.get $$t7.1 + local.get $$t10.169 + i32.store16 offset=338 + local.get $$t7.1 + local.get $$t10.170 + i32.store16 offset=340 + local.get $$t7.1 + local.get $$t10.171 + i32.store16 offset=342 + local.get $$t7.1 + local.get $$t10.172 + i32.store16 offset=344 + local.get $$t7.1 + local.get $$t10.173 + i32.store16 offset=346 + local.get $$t7.1 + local.get $$t10.174 + i32.store16 offset=348 + local.get $$t7.1 + local.get $$t10.175 + i32.store16 offset=350 + local.get $$t7.1 + local.get $$t10.176 + i32.store16 offset=352 + local.get $$t7.1 + local.get $$t10.177 + i32.store16 offset=354 + local.get $$t7.1 + local.get $$t10.178 + i32.store16 offset=356 + local.get $$t7.1 + local.get $$t10.179 + i32.store16 offset=358 + local.get $$t7.1 + local.get $$t10.180 + i32.store16 offset=360 + local.get $$t7.1 + local.get $$t10.181 + i32.store16 offset=362 + local.get $$t7.1 + local.get $$t10.182 + i32.store16 offset=364 + local.get $$t7.1 + local.get $$t10.183 + i32.store16 offset=366 + local.get $$t7.1 + local.get $$t10.184 + i32.store16 offset=368 + local.get $$t7.1 + local.get $$t10.185 + i32.store16 offset=370 + local.get $$t7.1 + local.get $$t10.186 + i32.store16 offset=372 + local.get $$t7.1 + local.get $$t10.187 + i32.store16 offset=374 + local.get $$t7.1 + local.get $$t10.188 + i32.store16 offset=376 + local.get $$t7.1 + local.get $$t10.189 + i32.store16 offset=378 + local.get $$t7.1 + local.get $$t10.190 + i32.store16 offset=380 + local.get $$t7.1 + local.get $$t10.191 + i32.store16 offset=382 + local.get $$t7.1 + local.get $$t10.192 + i32.store16 offset=384 + local.get $$t7.1 + local.get $$t10.193 + i32.store16 offset=386 + local.get $$t7.1 + local.get $$t10.194 + i32.store16 offset=388 + local.get $$t7.1 + local.get $$t10.195 + i32.store16 offset=390 + local.get $$t7.1 + local.get $$t10.196 + i32.store16 offset=392 + local.get $$t7.1 + local.get $$t10.197 + i32.store16 offset=394 + local.get $$t7.1 + local.get $$t10.198 + i32.store16 offset=396 + local.get $$t7.1 + local.get $$t10.199 + i32.store16 offset=398 + local.get $$t7.1 + local.get $$t10.200 + i32.store16 offset=400 + local.get $$t7.1 + local.get $$t10.201 + i32.store16 offset=402 + local.get $$t7.1 + local.get $$t10.202 + i32.store16 offset=404 + local.get $$t7.1 + local.get $$t10.203 + i32.store16 offset=406 + local.get $$t7.1 + local.get $$t10.204 + i32.store16 offset=408 + local.get $$t7.1 + local.get $$t10.205 + i32.store16 offset=410 + local.get $$t7.1 + local.get $$t10.206 + i32.store16 offset=412 + local.get $$t7.1 + local.get $$t10.207 + i32.store16 offset=414 + local.get $$t7.1 + local.get $$t10.208 + i32.store16 offset=416 + local.get $$t7.1 + local.get $$t10.209 + i32.store16 offset=418 + local.get $$t7.1 + local.get $$t10.210 + i32.store16 offset=420 + local.get $$t7.1 + local.get $$t10.211 + i32.store16 offset=422 + local.get $$t7.1 + local.get $$t10.212 + i32.store16 offset=424 + local.get $$t7.1 + local.get $$t10.213 + i32.store16 offset=426 + local.get $$t7.1 + local.get $$t10.214 + i32.store16 offset=428 + local.get $$t7.1 + local.get $$t10.215 + i32.store16 offset=430 + local.get $$t7.1 + local.get $$t10.216 + i32.store16 offset=432 + local.get $$t7.1 + local.get $$t10.217 + i32.store16 offset=434 + local.get $$t7.1 + local.get $$t10.218 + i32.store16 offset=436 + local.get $$t7.1 + local.get $$t10.219 + i32.store16 offset=438 + local.get $$t7.1 + local.get $$t10.220 + i32.store16 offset=440 + local.get $$t7.1 + local.get $$t10.221 + i32.store16 offset=442 + local.get $$t7.1 + local.get $$t10.222 + i32.store16 offset=444 + local.get $$t7.1 + local.get $$t10.223 + i32.store16 offset=446 + local.get $$t7.1 + local.get $$t10.224 + i32.store16 offset=448 + local.get $$t7.1 + local.get $$t10.225 + i32.store16 offset=450 + local.get $$t7.1 + local.get $$t10.226 + i32.store16 offset=452 + local.get $$t7.1 + local.get $$t10.227 + i32.store16 offset=454 + local.get $$t7.1 + local.get $$t10.228 + i32.store16 offset=456 + local.get $$t7.1 + local.get $$t10.229 + i32.store16 offset=458 + local.get $$t7.1 + local.get $$t10.230 + i32.store16 offset=460 + local.get $$t7.1 + local.get $$t10.231 + i32.store16 offset=462 + local.get $$t7.1 + local.get $$t10.232 + i32.store16 offset=464 + local.get $$t7.1 + local.get $$t10.233 + i32.store16 offset=466 + local.get $$t7.1 + local.get $$t10.234 + i32.store16 offset=468 + local.get $$t7.1 + local.get $$t10.235 + i32.store16 offset=470 + local.get $$t7.1 + local.get $$t10.236 + i32.store16 offset=472 + local.get $$t7.1 + local.get $$t10.237 + i32.store16 offset=474 + local.get $$t7.1 + local.get $$t10.238 + i32.store16 offset=476 + local.get $$t7.1 + local.get $$t10.239 + i32.store16 offset=478 + local.get $$t7.1 + local.get $$t10.240 + i32.store16 offset=480 + local.get $$t7.1 + local.get $$t10.241 + i32.store16 offset=482 + local.get $$t7.1 + local.get $$t10.242 + i32.store16 offset=484 + local.get $$t7.1 + local.get $$t10.243 + i32.store16 offset=486 + local.get $$t7.1 + local.get $$t10.244 + i32.store16 offset=488 + local.get $$t7.1 + local.get $$t10.245 + i32.store16 offset=490 + local.get $$t7.1 + local.get $$t10.246 + i32.store16 offset=492 + local.get $$t7.1 + local.get $$t10.247 + i32.store16 offset=494 + local.get $$t7.1 + local.get $$t10.248 + i32.store16 offset=496 + local.get $$t7.1 + local.get $$t10.249 + i32.store16 offset=498 + local.get $$t7.1 + local.get $$t10.250 + i32.store16 offset=500 + local.get $$t7.1 + local.get $$t10.251 + i32.store16 offset=502 + local.get $$t7.1 + local.get $$t10.252 + i32.store16 offset=504 + local.get $$t7.1 + local.get $$t10.253 + i32.store16 offset=506 + local.get $$t7.1 + local.get $$t10.254 + i32.store16 offset=508 + local.get $$t7.1 + local.get $$t10.255 + i32.store16 offset=510 + local.get $$t7.1 + local.get $$t10.256 + i32.store16 offset=512 + local.get $$t7.1 + local.get $$t10.257 + i32.store16 offset=514 + local.get $$t7.1 + local.get $$t10.258 + i32.store16 offset=516 + local.get $$t7.1 + local.get $$t10.259 + i32.store16 offset=518 + local.get $$t7.1 + local.get $$t10.260 + i32.store16 offset=520 + local.get $$t7.1 + local.get $$t10.261 + i32.store16 offset=522 + local.get $$t7.1 + local.get $$t10.262 + i32.store16 offset=524 + local.get $$t7.1 + local.get $$t10.263 + i32.store16 offset=526 + local.get $$t7.1 + local.get $$t10.264 + i32.store16 offset=528 + local.get $$t7.1 + local.get $$t10.265 + i32.store16 offset=530 + local.get $$t7.1 + local.get $$t10.266 + i32.store16 offset=532 + local.get $$t7.1 + local.get $$t10.267 + i32.store16 offset=534 + local.get $$t7.1 + local.get $$t10.268 + i32.store16 offset=536 + local.get $$t7.1 + local.get $$t10.269 + i32.store16 offset=538 + local.get $$t7.1 + local.get $$t10.270 + i32.store16 offset=540 + local.get $$t7.1 + local.get $$t10.271 + i32.store16 offset=542 + local.get $$t7.1 + local.get $$t10.272 + i32.store16 offset=544 + local.get $$t7.1 + local.get $$t10.273 + i32.store16 offset=546 + local.get $$t7.1 + local.get $$t10.274 + i32.store16 offset=548 + local.get $$t7.1 + local.get $$t10.275 + i32.store16 offset=550 + local.get $$t7.1 + local.get $$t10.276 + i32.store16 offset=552 + local.get $$t7.1 + local.get $$t10.277 + i32.store16 offset=554 + local.get $$t7.1 + local.get $$t10.278 + i32.store16 offset=556 + local.get $$t7.1 + local.get $$t10.279 + i32.store16 offset=558 + local.get $$t7.1 + local.get $$t10.280 + i32.store16 offset=560 + local.get $$t7.1 + local.get $$t10.281 + i32.store16 offset=562 + local.get $$t7.1 + local.get $$t10.282 + i32.store16 offset=564 + local.get $$t7.1 + local.get $$t10.283 + i32.store16 offset=566 + local.get $$t7.1 + local.get $$t10.284 + i32.store16 offset=568 + local.get $$t7.1 + local.get $$t10.285 + i32.store16 offset=570 + local.get $$t7.1 + local.get $$t10.286 + i32.store16 offset=572 + local.get $$t7.1 + local.get $$t10.287 + i32.store16 offset=574 + local.get $$t7.1 + local.get $$t10.288 + i32.store16 offset=576 + local.get $$t7.1 + local.get $$t10.289 + i32.store16 offset=578 + local.get $$t7.1 + local.get $$t10.290 + i32.store16 offset=580 + local.get $$t7.1 + local.get $$t10.291 + i32.store16 offset=582 + local.get $$t7.1 + local.get $$t10.292 + i32.store16 offset=584 + local.get $$t7.1 + local.get $$t10.293 + i32.store16 offset=586 + local.get $$t7.1 + local.get $$t10.294 + i32.store16 offset=588 + local.get $$t7.1 + local.get $$t10.295 + i32.store16 offset=590 + local.get $$t7.1 + local.get $$t10.296 + i32.store16 offset=592 + local.get $$t7.1 + local.get $$t10.297 + i32.store16 offset=594 + local.get $$t7.1 + local.get $$t10.298 + i32.store16 offset=596 + local.get $$t7.1 + local.get $$t10.299 + i32.store16 offset=598 + local.get $$t7.1 + local.get $$t10.300 + i32.store16 offset=600 + local.get $$t7.1 + local.get $$t10.301 + i32.store16 offset=602 + local.get $$t7.1 + local.get $$t10.302 + i32.store16 offset=604 + local.get $$t7.1 + local.get $$t10.303 + i32.store16 offset=606 + local.get $$t7.1 + local.get $$t10.304 + i32.store16 offset=608 + local.get $$t7.1 + local.get $$t10.305 + i32.store16 offset=610 + local.get $$t7.1 + local.get $$t10.306 + i32.store16 offset=612 + local.get $$t7.1 + local.get $$t10.307 + i32.store16 offset=614 + local.get $$t7.1 + local.get $$t10.308 + i32.store16 offset=616 + local.get $$t7.1 + local.get $$t10.309 + i32.store16 offset=618 + local.get $$t7.1 + local.get $$t10.310 + i32.store16 offset=620 + local.get $$t7.1 + local.get $$t10.311 + i32.store16 offset=622 + local.get $$t7.1 + local.get $$t10.312 + i32.store16 offset=624 + local.get $$t7.1 + local.get $$t10.313 + i32.store16 offset=626 + local.get $$t7.1 + local.get $$t10.314 + i32.store16 offset=628 + local.get $$t7.1 + local.get $$t10.315 + i32.store16 offset=630 + local.get $$t7.1 + local.get $$t10.316 + i32.store16 offset=632 + local.get $$t7.1 + local.get $$t10.317 + i32.store16 offset=634 + local.get $$t7.1 + local.get $$t10.318 + i32.store16 offset=636 + local.get $$t7.1 + local.get $$t10.319 + i32.store16 offset=638 + local.get $$t7.1 + local.get $$t10.320 + i32.store16 offset=640 + local.get $$t7.1 + local.get $$t10.321 + i32.store16 offset=642 + local.get $$t7.1 + local.get $$t10.322 + i32.store16 offset=644 + local.get $$t7.1 + local.get $$t10.323 + i32.store16 offset=646 + local.get $$t7.1 + local.get $$t10.324 + i32.store16 offset=648 + local.get $$t7.1 + local.get $$t10.325 + i32.store16 offset=650 + local.get $$t7.1 + local.get $$t10.326 + i32.store16 offset=652 + local.get $$t7.1 + local.get $$t10.327 + i32.store16 offset=654 + local.get $$t7.1 + local.get $$t10.328 + i32.store16 offset=656 + local.get $$t7.1 + local.get $$t10.329 + i32.store16 offset=658 + local.get $$t7.1 + local.get $$t10.330 + i32.store16 offset=660 + local.get $$t7.1 + local.get $$t10.331 + i32.store16 offset=662 + local.get $$t7.1 + local.get $$t10.332 + i32.store16 offset=664 + local.get $$t7.1 + local.get $$t10.333 + i32.store16 offset=666 + local.get $$t7.1 + local.get $$t10.334 + i32.store16 offset=668 + local.get $$t7.1 + local.get $$t10.335 + i32.store16 offset=670 + local.get $$t7.1 + local.get $$t10.336 + i32.store16 offset=672 + local.get $$t7.1 + local.get $$t10.337 + i32.store16 offset=674 + local.get $$t7.1 + local.get $$t10.338 + i32.store16 offset=676 + local.get $$t7.1 + local.get $$t10.339 + i32.store16 offset=678 + local.get $$t7.1 + local.get $$t10.340 + i32.store16 offset=680 + local.get $$t7.1 + local.get $$t10.341 + i32.store16 offset=682 + local.get $$t7.1 + local.get $$t10.342 + i32.store16 offset=684 + local.get $$t7.1 + local.get $$t10.343 + i32.store16 offset=686 + local.get $$t7.1 + local.get $$t10.344 + i32.store16 offset=688 + local.get $$t7.1 + local.get $$t10.345 + i32.store16 offset=690 + local.get $$t7.1 + local.get $$t10.346 + i32.store16 offset=692 + local.get $$t7.1 + local.get $$t10.347 + i32.store16 offset=694 + local.get $$t7.1 + local.get $$t10.348 + i32.store16 offset=696 + local.get $$t7.1 + local.get $$t10.349 + i32.store16 offset=698 + local.get $$t7.1 + local.get $$t10.350 + i32.store16 offset=700 + local.get $$t7.1 + local.get $$t10.351 + i32.store16 offset=702 + local.get $$t7.1 + local.get $$t10.352 + i32.store16 offset=704 + local.get $$t7.1 + local.get $$t10.353 + i32.store16 offset=706 + local.get $$t7.1 + local.get $$t10.354 + i32.store16 offset=708 + local.get $$t7.1 + local.get $$t10.355 + i32.store16 offset=710 + local.get $$t7.1 + local.get $$t10.356 + i32.store16 offset=712 + local.get $$t7.1 + local.get $$t10.357 + i32.store16 offset=714 + local.get $$t7.1 + local.get $$t10.358 + i32.store16 offset=716 + local.get $$t7.1 + local.get $$t10.359 + i32.store16 offset=718 + local.get $$t7.1 + local.get $$t10.360 + i32.store16 offset=720 + local.get $$t7.1 + local.get $$t10.361 + i32.store16 offset=722 + local.get $$t7.1 + local.get $$t10.362 + i32.store16 offset=724 + local.get $$t7.1 + local.get $$t10.363 + i32.store16 offset=726 + local.get $$t7.1 + local.get $$t10.364 + i32.store16 offset=728 + local.get $$t7.1 + local.get $$t10.365 + i32.store16 offset=730 + local.get $$t7.1 + local.get $$t10.366 + i32.store16 offset=732 + local.get $$t7.1 + local.get $$t10.367 + i32.store16 offset=734 + local.get $$t7.1 + local.get $$t10.368 + i32.store16 offset=736 + local.get $$t7.1 + local.get $$t10.369 + i32.store16 offset=738 + local.get $$t7.1 + local.get $$t10.370 + i32.store16 offset=740 + local.get $$t7.1 + local.get $$t10.371 + i32.store16 offset=742 + local.get $$t7.1 + local.get $$t10.372 + i32.store16 offset=744 + local.get $$t7.1 + local.get $$t10.373 + i32.store16 offset=746 + local.get $$t7.1 + local.get $$t10.374 + i32.store16 offset=748 + local.get $$t7.1 + local.get $$t10.375 + i32.store16 offset=750 + local.get $$t7.1 + local.get $$t10.376 + i32.store16 offset=752 + local.get $$t7.1 + local.get $$t10.377 + i32.store16 offset=754 + local.get $$t7.1 + local.get $$t10.378 + i32.store16 offset=756 + local.get $$t7.1 + local.get $$t10.379 + i32.store16 offset=758 + local.get $$t7.1 + local.get $$t10.380 + i32.store16 offset=760 + local.get $$t7.1 + local.get $$t10.381 + i32.store16 offset=762 + local.get $$t7.1 + local.get $$t10.382 + i32.store16 offset=764 + local.get $$t7.1 + local.get $$t10.383 + i32.store16 offset=766 + local.get $$t7.1 + local.get $$t10.384 + i32.store16 offset=768 + local.get $$t7.1 + local.get $$t10.385 + i32.store16 offset=770 + local.get $$t7.1 + local.get $$t10.386 + i32.store16 offset=772 + local.get $$t7.1 + local.get $$t10.387 + i32.store16 offset=774 + local.get $$t7.1 + local.get $$t10.388 + i32.store16 offset=776 + local.get $$t7.1 + local.get $$t10.389 + i32.store16 offset=778 + local.get $$t7.1 + local.get $$t10.390 + i32.store16 offset=780 + local.get $$t7.1 + local.get $$t10.391 + i32.store16 offset=782 + local.get $$t7.1 + local.get $$t10.392 + i32.store16 offset=784 + local.get $$t7.1 + local.get $$t10.393 + i32.store16 offset=786 + local.get $$t7.1 + local.get $$t10.394 + i32.store16 offset=788 + local.get $$t7.1 + local.get $$t10.395 + i32.store16 offset=790 + local.get $$t7.1 + local.get $$t10.396 + i32.store16 offset=792 + local.get $$t7.1 + local.get $$t10.397 + i32.store16 offset=794 + local.get $$t7.1 + local.get $$t10.398 + i32.store16 offset=796 + local.get $$t7.1 + local.get $$t10.399 + i32.store16 offset=798 + local.get $$t7.1 + local.get $$t10.400 + i32.store16 offset=800 + local.get $$t7.1 + local.get $$t10.401 + i32.store16 offset=802 + local.get $$t7.1 + local.get $$t10.402 + i32.store16 offset=804 + local.get $$t7.1 + local.get $$t10.403 + i32.store16 offset=806 + local.get $$t7.1 + local.get $$t10.404 + i32.store16 offset=808 + local.get $$t7.1 + local.get $$t10.405 + i32.store16 offset=810 + local.get $$t7.1 + local.get $$t10.406 + i32.store16 offset=812 + local.get $$t7.1 + local.get $$t10.407 + i32.store16 offset=814 + local.get $$t7.1 + local.get $$t10.408 + i32.store16 offset=816 + local.get $$t7.1 + local.get $$t10.409 + i32.store16 offset=818 + local.get $$t7.1 + local.get $$t10.410 + i32.store16 offset=820 + local.get $$t7.1 + local.get $$t10.411 + i32.store16 offset=822 + local.get $$t7.1 + local.get $$t10.412 + i32.store16 offset=824 + local.get $$t7.1 + local.get $$t10.413 + i32.store16 offset=826 + local.get $$t7.1 + local.get $$t10.414 + i32.store16 offset=828 + local.get $$t7.1 + local.get $$t10.415 + i32.store16 offset=830 + local.get $$t7.1 + local.get $$t10.416 + i32.store16 offset=832 + local.get $$t7.1 + local.get $$t10.417 + i32.store16 offset=834 + local.get $$t7.1 + local.get $$t10.418 + i32.store16 offset=836 + local.get $$t7.1 + local.get $$t10.419 + i32.store16 offset=838 + local.get $$t7.1 + local.get $$t10.420 + i32.store16 offset=840 + local.get $$t7.1 + local.get $$t10.421 + i32.store16 offset=842 + local.get $$t7.1 + local.get $$t10.422 + i32.store16 offset=844 + local.get $$t7.1 + local.get $$t10.423 + i32.store16 offset=846 + local.get $$t7.1 + local.get $$t10.424 + i32.store16 offset=848 + local.get $$t7.1 + local.get $$t10.425 + i32.store16 offset=850 + local.get $$t7.1 + local.get $$t10.426 + i32.store16 offset=852 + local.get $$t7.1 + local.get $$t10.427 + i32.store16 offset=854 + local.get $$t7.1 + local.get $$t10.428 + i32.store16 offset=856 + local.get $$t7.1 + local.get $$t10.429 + i32.store16 offset=858 + local.get $$t7.1 + local.get $$t10.430 + i32.store16 offset=860 + local.get $$t7.1 + local.get $$t10.431 + i32.store16 offset=862 + local.get $$t7.1 + local.get $$t10.432 + i32.store16 offset=864 + local.get $$t7.1 + local.get $$t10.433 + i32.store16 offset=866 + local.get $$t8.1 + local.get $$t11.0 + i32.store16 + local.get $$t8.1 + local.get $$t11.1 + i32.store16 offset=2 + local.get $$t8.1 + local.get $$t11.2 + i32.store16 offset=4 + local.get $$t8.1 + local.get $$t11.3 + i32.store16 offset=6 + local.get $$t8.1 + local.get $$t11.4 + i32.store16 offset=8 + local.get $$t8.1 + local.get $$t11.5 + i32.store16 offset=10 + local.get $$t8.1 + local.get $$t11.6 + i32.store16 offset=12 + local.get $$t8.1 + local.get $$t11.7 + i32.store16 offset=14 + local.get $$t8.1 + local.get $$t11.8 + i32.store16 offset=16 + local.get $$t8.1 + local.get $$t11.9 + i32.store16 offset=18 + local.get $$t8.1 + local.get $$t11.10 + i32.store16 offset=20 + local.get $$t8.1 + local.get $$t11.11 + i32.store16 offset=22 + local.get $$t8.1 + local.get $$t11.12 + i32.store16 offset=24 + local.get $$t8.1 + local.get $$t11.13 + i32.store16 offset=26 + local.get $$t8.1 + local.get $$t11.14 + i32.store16 offset=28 + local.get $$t8.1 + local.get $$t11.15 + i32.store16 offset=30 + local.get $$t8.1 + local.get $$t11.16 + i32.store16 offset=32 + local.get $$t8.1 + local.get $$t11.17 + i32.store16 offset=34 + local.get $$t8.1 + local.get $$t11.18 + i32.store16 offset=36 + local.get $$t8.1 + local.get $$t11.19 + i32.store16 offset=38 + local.get $$t8.1 + local.get $$t11.20 + i32.store16 offset=40 + local.get $$t8.1 + local.get $$t11.21 + i32.store16 offset=42 + local.get $$t8.1 + local.get $$t11.22 + i32.store16 offset=44 + local.get $$t8.1 + local.get $$t11.23 + i32.store16 offset=46 + local.get $$t8.1 + local.get $$t11.24 + i32.store16 offset=48 + local.get $$t8.1 + local.get $$t11.25 + i32.store16 offset=50 + local.get $$t8.1 + local.get $$t11.26 + i32.store16 offset=52 + local.get $$t8.1 + local.get $$t11.27 + i32.store16 offset=54 + local.get $$t8.1 + local.get $$t11.28 + i32.store16 offset=56 + local.get $$t8.1 + local.get $$t11.29 + i32.store16 offset=58 + local.get $$t8.1 + local.get $$t11.30 + i32.store16 offset=60 + local.get $$t8.1 + local.get $$t11.31 + i32.store16 offset=62 + local.get $$t8.1 + local.get $$t11.32 + i32.store16 offset=64 + local.get $$t8.1 + local.get $$t11.33 + i32.store16 offset=66 + local.get $$t8.1 + local.get $$t11.34 + i32.store16 offset=68 + local.get $$t8.1 + local.get $$t11.35 + i32.store16 offset=70 + local.get $$t8.1 + local.get $$t11.36 + i32.store16 offset=72 + local.get $$t8.1 + local.get $$t11.37 + i32.store16 offset=74 + local.get $$t8.1 + local.get $$t11.38 + i32.store16 offset=76 + local.get $$t8.1 + local.get $$t11.39 + i32.store16 offset=78 + local.get $$t8.1 + local.get $$t11.40 + i32.store16 offset=80 + local.get $$t8.1 + local.get $$t11.41 + i32.store16 offset=82 + local.get $$t8.1 + local.get $$t11.42 + i32.store16 offset=84 + local.get $$t8.1 + local.get $$t11.43 + i32.store16 offset=86 + local.get $$t8.1 + local.get $$t11.44 + i32.store16 offset=88 + local.get $$t8.1 + local.get $$t11.45 + i32.store16 offset=90 + local.get $$t8.1 + local.get $$t11.46 + i32.store16 offset=92 + local.get $$t8.1 + local.get $$t11.47 + i32.store16 offset=94 + local.get $$t8.1 + local.get $$t11.48 + i32.store16 offset=96 + local.get $$t8.1 + local.get $$t11.49 + i32.store16 offset=98 + local.get $$t8.1 + local.get $$t11.50 + i32.store16 offset=100 + local.get $$t8.1 + local.get $$t11.51 + i32.store16 offset=102 + local.get $$t8.1 + local.get $$t11.52 + i32.store16 offset=104 + local.get $$t8.1 + local.get $$t11.53 + i32.store16 offset=106 + local.get $$t8.1 + local.get $$t11.54 + i32.store16 offset=108 + local.get $$t8.1 + local.get $$t11.55 + i32.store16 offset=110 + local.get $$t8.1 + local.get $$t11.56 + i32.store16 offset=112 + local.get $$t8.1 + local.get $$t11.57 + i32.store16 offset=114 + local.get $$t8.1 + local.get $$t11.58 + i32.store16 offset=116 + local.get $$t8.1 + local.get $$t11.59 + i32.store16 offset=118 + local.get $$t8.1 + local.get $$t11.60 + i32.store16 offset=120 + local.get $$t8.1 + local.get $$t11.61 + i32.store16 offset=122 + local.get $$t8.1 + local.get $$t11.62 + i32.store16 offset=124 + local.get $$t8.1 + local.get $$t11.63 + i32.store16 offset=126 + local.get $$t8.1 + local.get $$t11.64 + i32.store16 offset=128 + local.get $$t8.1 + local.get $$t11.65 + i32.store16 offset=130 + local.get $$t8.1 + local.get $$t11.66 + i32.store16 offset=132 + local.get $$t8.1 + local.get $$t11.67 + i32.store16 offset=134 + local.get $$t8.1 + local.get $$t11.68 + i32.store16 offset=136 + local.get $$t8.1 + local.get $$t11.69 + i32.store16 offset=138 + local.get $$t8.1 + local.get $$t11.70 + i32.store16 offset=140 + local.get $$t8.1 + local.get $$t11.71 + i32.store16 offset=142 + local.get $$t8.1 + local.get $$t11.72 + i32.store16 offset=144 + local.get $$t8.1 + local.get $$t11.73 + i32.store16 offset=146 + local.get $$t8.1 + local.get $$t11.74 + i32.store16 offset=148 + local.get $$t8.1 + local.get $$t11.75 + i32.store16 offset=150 + local.get $$t8.1 + local.get $$t11.76 + i32.store16 offset=152 + local.get $$t8.1 + local.get $$t11.77 + i32.store16 offset=154 + local.get $$t8.1 + local.get $$t11.78 + i32.store16 offset=156 + local.get $$t8.1 + local.get $$t11.79 + i32.store16 offset=158 + local.get $$t8.1 + local.get $$t11.80 + i32.store16 offset=160 + local.get $$t8.1 + local.get $$t11.81 + i32.store16 offset=162 + local.get $$t8.1 + local.get $$t11.82 + i32.store16 offset=164 + local.get $$t8.1 + local.get $$t11.83 + i32.store16 offset=166 + local.get $$t8.1 + local.get $$t11.84 + i32.store16 offset=168 + local.get $$t8.1 + local.get $$t11.85 + i32.store16 offset=170 + local.get $$t8.1 + local.get $$t11.86 + i32.store16 offset=172 + local.get $$t8.1 + local.get $$t11.87 + i32.store16 offset=174 + local.get $$t8.1 + local.get $$t11.88 + i32.store16 offset=176 + local.get $$t8.1 + local.get $$t11.89 + i32.store16 offset=178 + local.get $$t8.1 + local.get $$t11.90 + i32.store16 offset=180 + local.get $$t8.1 + local.get $$t11.91 + i32.store16 offset=182 + local.get $$t8.1 + local.get $$t11.92 + i32.store16 offset=184 + local.get $$t8.1 + local.get $$t11.93 + i32.store16 offset=186 + local.get $$t8.1 + local.get $$t11.94 + i32.store16 offset=188 + local.get $$t8.1 + local.get $$t11.95 + i32.store16 offset=190 + local.get $$t8.1 + local.get $$t11.96 + i32.store16 offset=192 + local.get $$t8.1 + local.get $$t11.97 + i32.store16 offset=194 + local.get $$t8.1 + local.get $$t11.98 + i32.store16 offset=196 + local.get $$t8.1 + local.get $$t11.99 + i32.store16 offset=198 + local.get $$t8.1 + local.get $$t11.100 + i32.store16 offset=200 + local.get $$t8.1 + local.get $$t11.101 + i32.store16 offset=202 + local.get $$t8.1 + local.get $$t11.102 + i32.store16 offset=204 + local.get $$t8.1 + local.get $$t11.103 + i32.store16 offset=206 + local.get $$t8.1 + local.get $$t11.104 + i32.store16 offset=208 + local.get $$t8.1 + local.get $$t11.105 + i32.store16 offset=210 + local.get $$t8.1 + local.get $$t11.106 + i32.store16 offset=212 + local.get $$t8.1 + local.get $$t11.107 + i32.store16 offset=214 + local.get $$t8.1 + local.get $$t11.108 + i32.store16 offset=216 + local.get $$t8.1 + local.get $$t11.109 + i32.store16 offset=218 + local.get $$t8.1 + local.get $$t11.110 + i32.store16 offset=220 + local.get $$t8.1 + local.get $$t11.111 + i32.store16 offset=222 + local.get $$t8.1 + local.get $$t11.112 + i32.store16 offset=224 + local.get $$t8.1 + local.get $$t11.113 + i32.store16 offset=226 + local.get $$t8.1 + local.get $$t11.114 + i32.store16 offset=228 + local.get $$t8.1 + local.get $$t11.115 + i32.store16 offset=230 + local.get $$t8.1 + local.get $$t11.116 + i32.store16 offset=232 + local.get $$t8.1 + local.get $$t11.117 + i32.store16 offset=234 + local.get $$t8.1 + local.get $$t11.118 + i32.store16 offset=236 + local.get $$t8.1 + local.get $$t11.119 + i32.store16 offset=238 + local.get $$t8.1 + local.get $$t11.120 + i32.store16 offset=240 + local.get $$t8.1 + local.get $$t11.121 + i32.store16 offset=242 + local.get $$t8.1 + local.get $$t11.122 + i32.store16 offset=244 + local.get $$t8.1 + local.get $$t11.123 + i32.store16 offset=246 + local.get $$t8.1 + local.get $$t11.124 + i32.store16 offset=248 + local.get $$t8.1 + local.get $$t11.125 + i32.store16 offset=250 + local.get $$t8.1 + local.get $$t11.126 + i32.store16 offset=252 + local.get $$t8.1 + local.get $$t11.127 + i32.store16 offset=254 + local.get $$t8.1 + local.get $$t11.128 + i32.store16 offset=256 + local.get $$t8.1 + local.get $$t11.129 + i32.store16 offset=258 + local.get $$t8.1 + local.get $$t11.130 + i32.store16 offset=260 + local.get $$t8.1 + local.get $$t11.131 + i32.store16 offset=262 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 434 + i32.const 0 + i32.sub + i32.const 434 + i32.const 0 + i32.sub + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.0 + local.get $$t12.1 + local.get $$t12.2 + local.get $$t12.3 + local.get $$t9 + call $strconv.bsearch16 + local.set $$t13 + local.get $$t13 + i32.const 434 + i32.ge_s + local.set $$t14 + local.get $$t14 + if + br $$Block_11 + else + br $$Block_14 + end + end + i32.const 10 + local.set $$current_block + i32.const 1888 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1872 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + i32.const 206 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 190 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $r + local.set $$t17 + i32.const 37236 + i32.load + i32.const 37236 + i32.load offset=4 + i32.const 37236 + i32.load offset=8 + i32.const 37236 + i32.load offset=12 + i32.const 37236 + i32.load offset=16 + i32.const 37236 + i32.load offset=20 + i32.const 37236 + i32.load offset=24 + i32.const 37236 + i32.load offset=28 + i32.const 37236 + i32.load offset=32 + i32.const 37236 + i32.load offset=36 + i32.const 37236 + i32.load offset=40 + i32.const 37236 + i32.load offset=44 + i32.const 37236 + i32.load offset=48 + i32.const 37236 + i32.load offset=52 + i32.const 37236 + i32.load offset=56 + i32.const 37236 + i32.load offset=60 + i32.const 37236 + i32.load offset=64 + i32.const 37236 + i32.load offset=68 + i32.const 37236 + i32.load offset=72 + i32.const 37236 + i32.load offset=76 + i32.const 37236 + i32.load offset=80 + i32.const 37236 + i32.load offset=84 + i32.const 37236 + i32.load offset=88 + i32.const 37236 + i32.load offset=92 + i32.const 37236 + i32.load offset=96 + i32.const 37236 + i32.load offset=100 + i32.const 37236 + i32.load offset=104 + i32.const 37236 + i32.load offset=108 + i32.const 37236 + i32.load offset=112 + i32.const 37236 + i32.load offset=116 + i32.const 37236 + i32.load offset=120 + i32.const 37236 + i32.load offset=124 + i32.const 37236 + i32.load offset=128 + i32.const 37236 + i32.load offset=132 + i32.const 37236 + i32.load offset=136 + i32.const 37236 + i32.load offset=140 + i32.const 37236 + i32.load offset=144 + i32.const 37236 + i32.load offset=148 + i32.const 37236 + i32.load offset=152 + i32.const 37236 + i32.load offset=156 + i32.const 37236 + i32.load offset=160 + i32.const 37236 + i32.load offset=164 + i32.const 37236 + i32.load offset=168 + i32.const 37236 + i32.load offset=172 + i32.const 37236 + i32.load offset=176 + i32.const 37236 + i32.load offset=180 + i32.const 37236 + i32.load offset=184 + i32.const 37236 + i32.load offset=188 + i32.const 37236 + i32.load offset=192 + i32.const 37236 + i32.load offset=196 + i32.const 37236 + i32.load offset=200 + i32.const 37236 + i32.load offset=204 + i32.const 37236 + i32.load offset=208 + i32.const 37236 + i32.load offset=212 + i32.const 37236 + i32.load offset=216 + i32.const 37236 + i32.load offset=220 + i32.const 37236 + i32.load offset=224 + i32.const 37236 + i32.load offset=228 + i32.const 37236 + i32.load offset=232 + i32.const 37236 + i32.load offset=236 + i32.const 37236 + i32.load offset=240 + i32.const 37236 + i32.load offset=244 + i32.const 37236 + i32.load offset=248 + i32.const 37236 + i32.load offset=252 + i32.const 37236 + i32.load offset=256 + i32.const 37236 + i32.load offset=260 + i32.const 37236 + i32.load offset=264 + i32.const 37236 + i32.load offset=268 + i32.const 37236 + i32.load offset=272 + i32.const 37236 + i32.load offset=276 + i32.const 37236 + i32.load offset=280 + i32.const 37236 + i32.load offset=284 + i32.const 37236 + i32.load offset=288 + i32.const 37236 + i32.load offset=292 + i32.const 37236 + i32.load offset=296 + i32.const 37236 + i32.load offset=300 + i32.const 37236 + i32.load offset=304 + i32.const 37236 + i32.load offset=308 + i32.const 37236 + i32.load offset=312 + i32.const 37236 + i32.load offset=316 + i32.const 37236 + i32.load offset=320 + i32.const 37236 + i32.load offset=324 + i32.const 37236 + i32.load offset=328 + i32.const 37236 + i32.load offset=332 + i32.const 37236 + i32.load offset=336 + i32.const 37236 + i32.load offset=340 + i32.const 37236 + i32.load offset=344 + i32.const 37236 + i32.load offset=348 + i32.const 37236 + i32.load offset=352 + i32.const 37236 + i32.load offset=356 + i32.const 37236 + i32.load offset=360 + i32.const 37236 + i32.load offset=364 + i32.const 37236 + i32.load offset=368 + i32.const 37236 + i32.load offset=372 + i32.const 37236 + i32.load offset=376 + i32.const 37236 + i32.load offset=380 + i32.const 37236 + i32.load offset=384 + i32.const 37236 + i32.load offset=388 + i32.const 37236 + i32.load offset=392 + i32.const 37236 + i32.load offset=396 + i32.const 37236 + i32.load offset=400 + i32.const 37236 + i32.load offset=404 + i32.const 37236 + i32.load offset=408 + i32.const 37236 + i32.load offset=412 + i32.const 37236 + i32.load offset=416 + i32.const 37236 + i32.load offset=420 + i32.const 37236 + i32.load offset=424 + i32.const 37236 + i32.load offset=428 + i32.const 37236 + i32.load offset=432 + i32.const 37236 + i32.load offset=436 + i32.const 37236 + i32.load offset=440 + i32.const 37236 + i32.load offset=444 + i32.const 37236 + i32.load offset=448 + i32.const 37236 + i32.load offset=452 + i32.const 37236 + i32.load offset=456 + i32.const 37236 + i32.load offset=460 + i32.const 37236 + i32.load offset=464 + i32.const 37236 + i32.load offset=468 + i32.const 37236 + i32.load offset=472 + i32.const 37236 + i32.load offset=476 + i32.const 37236 + i32.load offset=480 + i32.const 37236 + i32.load offset=484 + i32.const 37236 + i32.load offset=488 + i32.const 37236 + i32.load offset=492 + i32.const 37236 + i32.load offset=496 + i32.const 37236 + i32.load offset=500 + i32.const 37236 + i32.load offset=504 + i32.const 37236 + i32.load offset=508 + i32.const 37236 + i32.load offset=512 + i32.const 37236 + i32.load offset=516 + i32.const 37236 + i32.load offset=520 + i32.const 37236 + i32.load offset=524 + i32.const 37236 + i32.load offset=528 + i32.const 37236 + i32.load offset=532 + i32.const 37236 + i32.load offset=536 + i32.const 37236 + i32.load offset=540 + i32.const 37236 + i32.load offset=544 + i32.const 37236 + i32.load offset=548 + i32.const 37236 + i32.load offset=552 + i32.const 37236 + i32.load offset=556 + i32.const 37236 + i32.load offset=560 + i32.const 37236 + i32.load offset=564 + i32.const 37236 + i32.load offset=568 + i32.const 37236 + i32.load offset=572 + i32.const 37236 + i32.load offset=576 + i32.const 37236 + i32.load offset=580 + i32.const 37236 + i32.load offset=584 + i32.const 37236 + i32.load offset=588 + i32.const 37236 + i32.load offset=592 + i32.const 37236 + i32.load offset=596 + i32.const 37236 + i32.load offset=600 + i32.const 37236 + i32.load offset=604 + i32.const 37236 + i32.load offset=608 + i32.const 37236 + i32.load offset=612 + i32.const 37236 + i32.load offset=616 + i32.const 37236 + i32.load offset=620 + i32.const 37236 + i32.load offset=624 + i32.const 37236 + i32.load offset=628 + i32.const 37236 + i32.load offset=632 + i32.const 37236 + i32.load offset=636 + i32.const 37236 + i32.load offset=640 + i32.const 37236 + i32.load offset=644 + i32.const 37236 + i32.load offset=648 + i32.const 37236 + i32.load offset=652 + i32.const 37236 + i32.load offset=656 + i32.const 37236 + i32.load offset=660 + i32.const 37236 + i32.load offset=664 + i32.const 37236 + i32.load offset=668 + i32.const 37236 + i32.load offset=672 + i32.const 37236 + i32.load offset=676 + i32.const 37236 + i32.load offset=680 + i32.const 37236 + i32.load offset=684 + i32.const 37236 + i32.load offset=688 + i32.const 37236 + i32.load offset=692 + i32.const 37236 + i32.load offset=696 + i32.const 37236 + i32.load offset=700 + i32.const 37236 + i32.load offset=704 + i32.const 37236 + i32.load offset=708 + i32.const 37236 + i32.load offset=712 + i32.const 37236 + i32.load offset=716 + i32.const 37236 + i32.load offset=720 + i32.const 37236 + i32.load offset=724 + i32.const 37236 + i32.load offset=728 + i32.const 37236 + i32.load offset=732 + i32.const 37236 + i32.load offset=736 + i32.const 37236 + i32.load offset=740 + i32.const 37236 + i32.load offset=744 + i32.const 37236 + i32.load offset=748 + i32.const 37236 + i32.load offset=752 + i32.const 37236 + i32.load offset=756 + i32.const 37236 + i32.load offset=760 + i32.const 37236 + i32.load offset=764 + i32.const 37236 + i32.load offset=768 + i32.const 37236 + i32.load offset=772 + i32.const 37236 + i32.load offset=776 + i32.const 37236 + i32.load offset=780 + i32.const 37236 + i32.load offset=784 + i32.const 37236 + i32.load offset=788 + i32.const 37236 + i32.load offset=792 + i32.const 37236 + i32.load offset=796 + i32.const 37236 + i32.load offset=800 + i32.const 37236 + i32.load offset=804 + i32.const 37236 + i32.load offset=808 + i32.const 37236 + i32.load offset=812 + i32.const 37236 + i32.load offset=816 + i32.const 37236 + i32.load offset=820 + i32.const 37236 + i32.load offset=824 + i32.const 37236 + i32.load offset=828 + i32.const 37236 + i32.load offset=832 + i32.const 37236 + i32.load offset=836 + i32.const 37236 + i32.load offset=840 + i32.const 37236 + i32.load offset=844 + i32.const 37236 + i32.load offset=848 + i32.const 37236 + i32.load offset=852 + i32.const 37236 + i32.load offset=856 + i32.const 37236 + i32.load offset=860 + i32.const 37236 + i32.load offset=864 + i32.const 37236 + i32.load offset=868 + i32.const 37236 + i32.load offset=872 + i32.const 37236 + i32.load offset=876 + i32.const 37236 + i32.load offset=880 + i32.const 37236 + i32.load offset=884 + i32.const 37236 + i32.load offset=888 + i32.const 37236 + i32.load offset=892 + i32.const 37236 + i32.load offset=896 + i32.const 37236 + i32.load offset=900 + i32.const 37236 + i32.load offset=904 + i32.const 37236 + i32.load offset=908 + i32.const 37236 + i32.load offset=912 + i32.const 37236 + i32.load offset=916 + i32.const 37236 + i32.load offset=920 + i32.const 37236 + i32.load offset=924 + i32.const 37236 + i32.load offset=928 + i32.const 37236 + i32.load offset=932 + i32.const 37236 + i32.load offset=936 + i32.const 37236 + i32.load offset=940 + i32.const 37236 + i32.load offset=944 + i32.const 37236 + i32.load offset=948 + i32.const 37236 + i32.load offset=952 + i32.const 37236 + i32.load offset=956 + i32.const 37236 + i32.load offset=960 + i32.const 37236 + i32.load offset=964 + i32.const 37236 + i32.load offset=968 + i32.const 37236 + i32.load offset=972 + i32.const 37236 + i32.load offset=976 + i32.const 37236 + i32.load offset=980 + i32.const 37236 + i32.load offset=984 + i32.const 37236 + i32.load offset=988 + i32.const 37236 + i32.load offset=992 + i32.const 37236 + i32.load offset=996 + i32.const 37236 + i32.load offset=1000 + i32.const 37236 + i32.load offset=1004 + i32.const 37236 + i32.load offset=1008 + i32.const 37236 + i32.load offset=1012 + i32.const 37236 + i32.load offset=1016 + i32.const 37236 + i32.load offset=1020 + i32.const 37236 + i32.load offset=1024 + i32.const 37236 + i32.load offset=1028 + i32.const 37236 + i32.load offset=1032 + i32.const 37236 + i32.load offset=1036 + i32.const 37236 + i32.load offset=1040 + i32.const 37236 + i32.load offset=1044 + i32.const 37236 + i32.load offset=1048 + i32.const 37236 + i32.load offset=1052 + i32.const 37236 + i32.load offset=1056 + i32.const 37236 + i32.load offset=1060 + i32.const 37236 + i32.load offset=1064 + i32.const 37236 + i32.load offset=1068 + i32.const 37236 + i32.load offset=1072 + i32.const 37236 + i32.load offset=1076 + i32.const 37236 + i32.load offset=1080 + i32.const 37236 + i32.load offset=1084 + i32.const 37236 + i32.load offset=1088 + i32.const 37236 + i32.load offset=1092 + i32.const 37236 + i32.load offset=1096 + i32.const 37236 + i32.load offset=1100 + i32.const 37236 + i32.load offset=1104 + i32.const 37236 + i32.load offset=1108 + i32.const 37236 + i32.load offset=1112 + i32.const 37236 + i32.load offset=1116 + i32.const 37236 + i32.load offset=1120 + i32.const 37236 + i32.load offset=1124 + i32.const 37236 + i32.load offset=1128 + i32.const 37236 + i32.load offset=1132 + i32.const 37236 + i32.load offset=1136 + i32.const 37236 + i32.load offset=1140 + i32.const 37236 + i32.load offset=1144 + i32.const 37236 + i32.load offset=1148 + i32.const 37236 + i32.load offset=1152 + i32.const 37236 + i32.load offset=1156 + i32.const 37236 + i32.load offset=1160 + i32.const 37236 + i32.load offset=1164 + i32.const 37236 + i32.load offset=1168 + i32.const 37236 + i32.load offset=1172 + i32.const 37236 + i32.load offset=1176 + i32.const 37236 + i32.load offset=1180 + i32.const 37236 + i32.load offset=1184 + i32.const 37236 + i32.load offset=1188 + i32.const 37236 + i32.load offset=1192 + i32.const 37236 + i32.load offset=1196 + i32.const 37236 + i32.load offset=1200 + i32.const 37236 + i32.load offset=1204 + i32.const 37236 + i32.load offset=1208 + i32.const 37236 + i32.load offset=1212 + i32.const 37236 + i32.load offset=1216 + i32.const 37236 + i32.load offset=1220 + i32.const 37236 + i32.load offset=1224 + i32.const 37236 + i32.load offset=1228 + i32.const 37236 + i32.load offset=1232 + i32.const 37236 + i32.load offset=1236 + i32.const 37236 + i32.load offset=1240 + i32.const 37236 + i32.load offset=1244 + i32.const 37236 + i32.load offset=1248 + i32.const 37236 + i32.load offset=1252 + i32.const 37236 + i32.load offset=1256 + i32.const 37236 + i32.load offset=1260 + i32.const 37236 + i32.load offset=1264 + i32.const 37236 + i32.load offset=1268 + i32.const 37236 + i32.load offset=1272 + i32.const 37236 + i32.load offset=1276 + i32.const 37236 + i32.load offset=1280 + i32.const 37236 + i32.load offset=1284 + i32.const 37236 + i32.load offset=1288 + i32.const 37236 + i32.load offset=1292 + i32.const 37236 + i32.load offset=1296 + i32.const 37236 + i32.load offset=1300 + i32.const 37236 + i32.load offset=1304 + i32.const 37236 + i32.load offset=1308 + i32.const 37236 + i32.load offset=1312 + i32.const 37236 + i32.load offset=1316 + i32.const 37236 + i32.load offset=1320 + i32.const 37236 + i32.load offset=1324 + i32.const 37236 + i32.load offset=1328 + i32.const 37236 + i32.load offset=1332 + i32.const 37236 + i32.load offset=1336 + i32.const 37236 + i32.load offset=1340 + i32.const 37236 + i32.load offset=1344 + i32.const 37236 + i32.load offset=1348 + i32.const 37236 + i32.load offset=1352 + i32.const 37236 + i32.load offset=1356 + i32.const 37236 + i32.load offset=1360 + i32.const 37236 + i32.load offset=1364 + i32.const 37236 + i32.load offset=1368 + i32.const 37236 + i32.load offset=1372 + i32.const 37236 + i32.load offset=1376 + i32.const 37236 + i32.load offset=1380 + i32.const 37236 + i32.load offset=1384 + i32.const 37236 + i32.load offset=1388 + i32.const 37236 + i32.load offset=1392 + i32.const 37236 + i32.load offset=1396 + i32.const 37236 + i32.load offset=1400 + i32.const 37236 + i32.load offset=1404 + i32.const 37236 + i32.load offset=1408 + i32.const 37236 + i32.load offset=1412 + i32.const 37236 + i32.load offset=1416 + i32.const 37236 + i32.load offset=1420 + i32.const 37236 + i32.load offset=1424 + i32.const 37236 + i32.load offset=1428 + i32.const 37236 + i32.load offset=1432 + i32.const 37236 + i32.load offset=1436 + i32.const 37236 + i32.load offset=1440 + i32.const 37236 + i32.load offset=1444 + i32.const 37236 + i32.load offset=1448 + i32.const 37236 + i32.load offset=1452 + i32.const 37236 + i32.load offset=1456 + i32.const 37236 + i32.load offset=1460 + i32.const 37236 + i32.load offset=1464 + i32.const 37236 + i32.load offset=1468 + i32.const 37236 + i32.load offset=1472 + i32.const 37236 + i32.load offset=1476 + i32.const 37236 + i32.load offset=1480 + i32.const 37236 + i32.load offset=1484 + i32.const 37236 + i32.load offset=1488 + i32.const 37236 + i32.load offset=1492 + i32.const 37236 + i32.load offset=1496 + i32.const 37236 + i32.load offset=1500 + i32.const 37236 + i32.load offset=1504 + i32.const 37236 + i32.load offset=1508 + i32.const 37236 + i32.load offset=1512 + i32.const 37236 + i32.load offset=1516 + i32.const 37236 + i32.load offset=1520 + i32.const 37236 + i32.load offset=1524 + i32.const 37236 + i32.load offset=1528 + i32.const 37236 + i32.load offset=1532 + i32.const 37236 + i32.load offset=1536 + i32.const 37236 + i32.load offset=1540 + i32.const 37236 + i32.load offset=1544 + i32.const 37236 + i32.load offset=1548 + i32.const 37236 + i32.load offset=1552 + i32.const 37236 + i32.load offset=1556 + i32.const 37236 + i32.load offset=1560 + i32.const 37236 + i32.load offset=1564 + i32.const 37236 + i32.load offset=1568 + i32.const 37236 + i32.load offset=1572 + i32.const 37236 + i32.load offset=1576 + i32.const 37236 + i32.load offset=1580 + i32.const 37236 + i32.load offset=1584 + i32.const 37236 + i32.load offset=1588 + i32.const 37236 + i32.load offset=1592 + i32.const 37236 + i32.load offset=1596 + i32.const 37236 + i32.load offset=1600 + i32.const 37236 + i32.load offset=1604 + i32.const 37236 + i32.load offset=1608 + i32.const 37236 + i32.load offset=1612 + i32.const 37236 + i32.load offset=1616 + i32.const 37236 + i32.load offset=1620 + i32.const 37236 + i32.load offset=1624 + i32.const 37236 + i32.load offset=1628 + i32.const 37236 + i32.load offset=1632 + i32.const 37236 + i32.load offset=1636 + i32.const 37236 + i32.load offset=1640 + i32.const 37236 + i32.load offset=1644 + i32.const 37236 + i32.load offset=1648 + i32.const 37236 + i32.load offset=1652 + i32.const 37236 + i32.load offset=1656 + i32.const 37236 + i32.load offset=1660 + i32.const 37236 + i32.load offset=1664 + i32.const 37236 + i32.load offset=1668 + i32.const 37236 + i32.load offset=1672 + i32.const 37236 + i32.load offset=1676 + i32.const 37236 + i32.load offset=1680 + i32.const 37236 + i32.load offset=1684 + i32.const 37236 + i32.load offset=1688 + i32.const 37236 + i32.load offset=1692 + i32.const 37236 + i32.load offset=1696 + i32.const 37236 + i32.load offset=1700 + i32.const 37236 + i32.load offset=1704 + i32.const 37236 + i32.load offset=1708 + i32.const 37236 + i32.load offset=1712 + i32.const 37236 + i32.load offset=1716 + i32.const 37236 + i32.load offset=1720 + i32.const 37236 + i32.load offset=1724 + i32.const 37236 + i32.load offset=1728 + i32.const 37236 + i32.load offset=1732 + i32.const 37236 + i32.load offset=1736 + i32.const 37236 + i32.load offset=1740 + i32.const 37236 + i32.load offset=1744 + i32.const 37236 + i32.load offset=1748 + i32.const 37236 + i32.load offset=1752 + i32.const 37236 + i32.load offset=1756 + i32.const 37236 + i32.load offset=1760 + i32.const 37236 + i32.load offset=1764 + i32.const 37236 + i32.load offset=1768 + i32.const 37236 + i32.load offset=1772 + i32.const 37236 + i32.load offset=1776 + i32.const 37236 + i32.load offset=1780 + i32.const 37236 + i32.load offset=1784 + i32.const 37236 + i32.load offset=1788 + i32.const 37236 + i32.load offset=1792 + i32.const 37236 + i32.load offset=1796 + i32.const 37236 + i32.load offset=1800 + i32.const 37236 + i32.load offset=1804 + i32.const 37236 + i32.load offset=1808 + i32.const 37236 + i32.load offset=1812 + i32.const 37236 + i32.load offset=1816 + i32.const 37236 + i32.load offset=1820 + i32.const 37236 + i32.load offset=1824 + i32.const 37236 + i32.load offset=1828 + i32.const 37236 + i32.load offset=1832 + i32.const 37236 + i32.load offset=1836 + i32.const 37236 + i32.load offset=1840 + i32.const 37236 + i32.load offset=1844 + i32.const 37236 + i32.load offset=1848 + i32.const 37236 + i32.load offset=1852 + i32.const 37236 + i32.load offset=1856 + i32.const 37236 + i32.load offset=1860 + i32.const 37236 + i32.load offset=1864 + i32.const 37236 + i32.load offset=1868 + local.set $$t18.467 + local.set $$t18.466 + local.set $$t18.465 + local.set $$t18.464 + local.set $$t18.463 + local.set $$t18.462 + local.set $$t18.461 + local.set $$t18.460 + local.set $$t18.459 + local.set $$t18.458 + local.set $$t18.457 + local.set $$t18.456 + local.set $$t18.455 + local.set $$t18.454 + local.set $$t18.453 + local.set $$t18.452 + local.set $$t18.451 + local.set $$t18.450 + local.set $$t18.449 + local.set $$t18.448 + local.set $$t18.447 + local.set $$t18.446 + local.set $$t18.445 + local.set $$t18.444 + local.set $$t18.443 + local.set $$t18.442 + local.set $$t18.441 + local.set $$t18.440 + local.set $$t18.439 + local.set $$t18.438 + local.set $$t18.437 + local.set $$t18.436 + local.set $$t18.435 + local.set $$t18.434 + local.set $$t18.433 + local.set $$t18.432 + local.set $$t18.431 + local.set $$t18.430 + local.set $$t18.429 + local.set $$t18.428 + local.set $$t18.427 + local.set $$t18.426 + local.set $$t18.425 + local.set $$t18.424 + local.set $$t18.423 + local.set $$t18.422 + local.set $$t18.421 + local.set $$t18.420 + local.set $$t18.419 + local.set $$t18.418 + local.set $$t18.417 + local.set $$t18.416 + local.set $$t18.415 + local.set $$t18.414 + local.set $$t18.413 + local.set $$t18.412 + local.set $$t18.411 + local.set $$t18.410 + local.set $$t18.409 + local.set $$t18.408 + local.set $$t18.407 + local.set $$t18.406 + local.set $$t18.405 + local.set $$t18.404 + local.set $$t18.403 + local.set $$t18.402 + local.set $$t18.401 + local.set $$t18.400 + local.set $$t18.399 + local.set $$t18.398 + local.set $$t18.397 + local.set $$t18.396 + local.set $$t18.395 + local.set $$t18.394 + local.set $$t18.393 + local.set $$t18.392 + local.set $$t18.391 + local.set $$t18.390 + local.set $$t18.389 + local.set $$t18.388 + local.set $$t18.387 + local.set $$t18.386 + local.set $$t18.385 + local.set $$t18.384 + local.set $$t18.383 + local.set $$t18.382 + local.set $$t18.381 + local.set $$t18.380 + local.set $$t18.379 + local.set $$t18.378 + local.set $$t18.377 + local.set $$t18.376 + local.set $$t18.375 + local.set $$t18.374 + local.set $$t18.373 + local.set $$t18.372 + local.set $$t18.371 + local.set $$t18.370 + local.set $$t18.369 + local.set $$t18.368 + local.set $$t18.367 + local.set $$t18.366 + local.set $$t18.365 + local.set $$t18.364 + local.set $$t18.363 + local.set $$t18.362 + local.set $$t18.361 + local.set $$t18.360 + local.set $$t18.359 + local.set $$t18.358 + local.set $$t18.357 + local.set $$t18.356 + local.set $$t18.355 + local.set $$t18.354 + local.set $$t18.353 + local.set $$t18.352 + local.set $$t18.351 + local.set $$t18.350 + local.set $$t18.349 + local.set $$t18.348 + local.set $$t18.347 + local.set $$t18.346 + local.set $$t18.345 + local.set $$t18.344 + local.set $$t18.343 + local.set $$t18.342 + local.set $$t18.341 + local.set $$t18.340 + local.set $$t18.339 + local.set $$t18.338 + local.set $$t18.337 + local.set $$t18.336 + local.set $$t18.335 + local.set $$t18.334 + local.set $$t18.333 + local.set $$t18.332 + local.set $$t18.331 + local.set $$t18.330 + local.set $$t18.329 + local.set $$t18.328 + local.set $$t18.327 + local.set $$t18.326 + local.set $$t18.325 + local.set $$t18.324 + local.set $$t18.323 + local.set $$t18.322 + local.set $$t18.321 + local.set $$t18.320 + local.set $$t18.319 + local.set $$t18.318 + local.set $$t18.317 + local.set $$t18.316 + local.set $$t18.315 + local.set $$t18.314 + local.set $$t18.313 + local.set $$t18.312 + local.set $$t18.311 + local.set $$t18.310 + local.set $$t18.309 + local.set $$t18.308 + local.set $$t18.307 + local.set $$t18.306 + local.set $$t18.305 + local.set $$t18.304 + local.set $$t18.303 + local.set $$t18.302 + local.set $$t18.301 + local.set $$t18.300 + local.set $$t18.299 + local.set $$t18.298 + local.set $$t18.297 + local.set $$t18.296 + local.set $$t18.295 + local.set $$t18.294 + local.set $$t18.293 + local.set $$t18.292 + local.set $$t18.291 + local.set $$t18.290 + local.set $$t18.289 + local.set $$t18.288 + local.set $$t18.287 + local.set $$t18.286 + local.set $$t18.285 + local.set $$t18.284 + local.set $$t18.283 + local.set $$t18.282 + local.set $$t18.281 + local.set $$t18.280 + local.set $$t18.279 + local.set $$t18.278 + local.set $$t18.277 + local.set $$t18.276 + local.set $$t18.275 + local.set $$t18.274 + local.set $$t18.273 + local.set $$t18.272 + local.set $$t18.271 + local.set $$t18.270 + local.set $$t18.269 + local.set $$t18.268 + local.set $$t18.267 + local.set $$t18.266 + local.set $$t18.265 + local.set $$t18.264 + local.set $$t18.263 + local.set $$t18.262 + local.set $$t18.261 + local.set $$t18.260 + local.set $$t18.259 + local.set $$t18.258 + local.set $$t18.257 + local.set $$t18.256 + local.set $$t18.255 + local.set $$t18.254 + local.set $$t18.253 + local.set $$t18.252 + local.set $$t18.251 + local.set $$t18.250 + local.set $$t18.249 + local.set $$t18.248 + local.set $$t18.247 + local.set $$t18.246 + local.set $$t18.245 + local.set $$t18.244 + local.set $$t18.243 + local.set $$t18.242 + local.set $$t18.241 + local.set $$t18.240 + local.set $$t18.239 + local.set $$t18.238 + local.set $$t18.237 + local.set $$t18.236 + local.set $$t18.235 + local.set $$t18.234 + local.set $$t18.233 + local.set $$t18.232 + local.set $$t18.231 + local.set $$t18.230 + local.set $$t18.229 + local.set $$t18.228 + local.set $$t18.227 + local.set $$t18.226 + local.set $$t18.225 + local.set $$t18.224 + local.set $$t18.223 + local.set $$t18.222 + local.set $$t18.221 + local.set $$t18.220 + local.set $$t18.219 + local.set $$t18.218 + local.set $$t18.217 + local.set $$t18.216 + local.set $$t18.215 + local.set $$t18.214 + local.set $$t18.213 + local.set $$t18.212 + local.set $$t18.211 + local.set $$t18.210 + local.set $$t18.209 + local.set $$t18.208 + local.set $$t18.207 + local.set $$t18.206 + local.set $$t18.205 + local.set $$t18.204 + local.set $$t18.203 + local.set $$t18.202 + local.set $$t18.201 + local.set $$t18.200 + local.set $$t18.199 + local.set $$t18.198 + local.set $$t18.197 + local.set $$t18.196 + local.set $$t18.195 + local.set $$t18.194 + local.set $$t18.193 + local.set $$t18.192 + local.set $$t18.191 + local.set $$t18.190 + local.set $$t18.189 + local.set $$t18.188 + local.set $$t18.187 + local.set $$t18.186 + local.set $$t18.185 + local.set $$t18.184 + local.set $$t18.183 + local.set $$t18.182 + local.set $$t18.181 + local.set $$t18.180 + local.set $$t18.179 + local.set $$t18.178 + local.set $$t18.177 + local.set $$t18.176 + local.set $$t18.175 + local.set $$t18.174 + local.set $$t18.173 + local.set $$t18.172 + local.set $$t18.171 + local.set $$t18.170 + local.set $$t18.169 + local.set $$t18.168 + local.set $$t18.167 + local.set $$t18.166 + local.set $$t18.165 + local.set $$t18.164 + local.set $$t18.163 + local.set $$t18.162 + local.set $$t18.161 + local.set $$t18.160 + local.set $$t18.159 + local.set $$t18.158 + local.set $$t18.157 + local.set $$t18.156 + local.set $$t18.155 + local.set $$t18.154 + local.set $$t18.153 + local.set $$t18.152 + local.set $$t18.151 + local.set $$t18.150 + local.set $$t18.149 + local.set $$t18.148 + local.set $$t18.147 + local.set $$t18.146 + local.set $$t18.145 + local.set $$t18.144 + local.set $$t18.143 + local.set $$t18.142 + local.set $$t18.141 + local.set $$t18.140 + local.set $$t18.139 + local.set $$t18.138 + local.set $$t18.137 + local.set $$t18.136 + local.set $$t18.135 + local.set $$t18.134 + local.set $$t18.133 + local.set $$t18.132 + local.set $$t18.131 + local.set $$t18.130 + local.set $$t18.129 + local.set $$t18.128 + local.set $$t18.127 + local.set $$t18.126 + local.set $$t18.125 + local.set $$t18.124 + local.set $$t18.123 + local.set $$t18.122 + local.set $$t18.121 + local.set $$t18.120 + local.set $$t18.119 + local.set $$t18.118 + local.set $$t18.117 + local.set $$t18.116 + local.set $$t18.115 + local.set $$t18.114 + local.set $$t18.113 + local.set $$t18.112 + local.set $$t18.111 + local.set $$t18.110 + local.set $$t18.109 + local.set $$t18.108 + local.set $$t18.107 + local.set $$t18.106 + local.set $$t18.105 + local.set $$t18.104 + local.set $$t18.103 + local.set $$t18.102 + local.set $$t18.101 + local.set $$t18.100 + local.set $$t18.99 + local.set $$t18.98 + local.set $$t18.97 + local.set $$t18.96 + local.set $$t18.95 + local.set $$t18.94 + local.set $$t18.93 + local.set $$t18.92 + local.set $$t18.91 + local.set $$t18.90 + local.set $$t18.89 + local.set $$t18.88 + local.set $$t18.87 + local.set $$t18.86 + local.set $$t18.85 + local.set $$t18.84 + local.set $$t18.83 + local.set $$t18.82 + local.set $$t18.81 + local.set $$t18.80 + local.set $$t18.79 + local.set $$t18.78 + local.set $$t18.77 + local.set $$t18.76 + local.set $$t18.75 + local.set $$t18.74 + local.set $$t18.73 + local.set $$t18.72 + local.set $$t18.71 + local.set $$t18.70 + local.set $$t18.69 + local.set $$t18.68 + local.set $$t18.67 + local.set $$t18.66 + local.set $$t18.65 + local.set $$t18.64 + local.set $$t18.63 + local.set $$t18.62 + local.set $$t18.61 + local.set $$t18.60 + local.set $$t18.59 + local.set $$t18.58 + local.set $$t18.57 + local.set $$t18.56 + local.set $$t18.55 + local.set $$t18.54 + local.set $$t18.53 + local.set $$t18.52 + local.set $$t18.51 + local.set $$t18.50 + local.set $$t18.49 + local.set $$t18.48 + local.set $$t18.47 + local.set $$t18.46 + local.set $$t18.45 + local.set $$t18.44 + local.set $$t18.43 + local.set $$t18.42 + local.set $$t18.41 + local.set $$t18.40 + local.set $$t18.39 + local.set $$t18.38 + local.set $$t18.37 + local.set $$t18.36 + local.set $$t18.35 + local.set $$t18.34 + local.set $$t18.33 + local.set $$t18.32 + local.set $$t18.31 + local.set $$t18.30 + local.set $$t18.29 + local.set $$t18.28 + local.set $$t18.27 + local.set $$t18.26 + local.set $$t18.25 + local.set $$t18.24 + local.set $$t18.23 + local.set $$t18.22 + local.set $$t18.21 + local.set $$t18.20 + local.set $$t18.19 + local.set $$t18.18 + local.set $$t18.17 + local.set $$t18.16 + local.set $$t18.15 + local.set $$t18.14 + local.set $$t18.13 + local.set $$t18.12 + local.set $$t18.11 + local.set $$t18.10 + local.set $$t18.9 + local.set $$t18.8 + local.set $$t18.7 + local.set $$t18.6 + local.set $$t18.5 + local.set $$t18.4 + local.set $$t18.3 + local.set $$t18.2 + local.set $$t18.1 + local.set $$t18.0 + i32.const 36176 + i32.load16_u + i32.const 36176 + i32.load16_u offset=2 + i32.const 36176 + i32.load16_u offset=4 + i32.const 36176 + i32.load16_u offset=6 + i32.const 36176 + i32.load16_u offset=8 + i32.const 36176 + i32.load16_u offset=10 + i32.const 36176 + i32.load16_u offset=12 + i32.const 36176 + i32.load16_u offset=14 + i32.const 36176 + i32.load16_u offset=16 + i32.const 36176 + i32.load16_u offset=18 + i32.const 36176 + i32.load16_u offset=20 + i32.const 36176 + i32.load16_u offset=22 + i32.const 36176 + i32.load16_u offset=24 + i32.const 36176 + i32.load16_u offset=26 + i32.const 36176 + i32.load16_u offset=28 + i32.const 36176 + i32.load16_u offset=30 + i32.const 36176 + i32.load16_u offset=32 + i32.const 36176 + i32.load16_u offset=34 + i32.const 36176 + i32.load16_u offset=36 + i32.const 36176 + i32.load16_u offset=38 + i32.const 36176 + i32.load16_u offset=40 + i32.const 36176 + i32.load16_u offset=42 + i32.const 36176 + i32.load16_u offset=44 + i32.const 36176 + i32.load16_u offset=46 + i32.const 36176 + i32.load16_u offset=48 + i32.const 36176 + i32.load16_u offset=50 + i32.const 36176 + i32.load16_u offset=52 + i32.const 36176 + i32.load16_u offset=54 + i32.const 36176 + i32.load16_u offset=56 + i32.const 36176 + i32.load16_u offset=58 + i32.const 36176 + i32.load16_u offset=60 + i32.const 36176 + i32.load16_u offset=62 + i32.const 36176 + i32.load16_u offset=64 + i32.const 36176 + i32.load16_u offset=66 + i32.const 36176 + i32.load16_u offset=68 + i32.const 36176 + i32.load16_u offset=70 + i32.const 36176 + i32.load16_u offset=72 + i32.const 36176 + i32.load16_u offset=74 + i32.const 36176 + i32.load16_u offset=76 + i32.const 36176 + i32.load16_u offset=78 + i32.const 36176 + i32.load16_u offset=80 + i32.const 36176 + i32.load16_u offset=82 + i32.const 36176 + i32.load16_u offset=84 + i32.const 36176 + i32.load16_u offset=86 + i32.const 36176 + i32.load16_u offset=88 + i32.const 36176 + i32.load16_u offset=90 + i32.const 36176 + i32.load16_u offset=92 + i32.const 36176 + i32.load16_u offset=94 + i32.const 36176 + i32.load16_u offset=96 + i32.const 36176 + i32.load16_u offset=98 + i32.const 36176 + i32.load16_u offset=100 + i32.const 36176 + i32.load16_u offset=102 + i32.const 36176 + i32.load16_u offset=104 + i32.const 36176 + i32.load16_u offset=106 + i32.const 36176 + i32.load16_u offset=108 + i32.const 36176 + i32.load16_u offset=110 + i32.const 36176 + i32.load16_u offset=112 + i32.const 36176 + i32.load16_u offset=114 + i32.const 36176 + i32.load16_u offset=116 + i32.const 36176 + i32.load16_u offset=118 + i32.const 36176 + i32.load16_u offset=120 + i32.const 36176 + i32.load16_u offset=122 + i32.const 36176 + i32.load16_u offset=124 + i32.const 36176 + i32.load16_u offset=126 + i32.const 36176 + i32.load16_u offset=128 + i32.const 36176 + i32.load16_u offset=130 + i32.const 36176 + i32.load16_u offset=132 + i32.const 36176 + i32.load16_u offset=134 + i32.const 36176 + i32.load16_u offset=136 + i32.const 36176 + i32.load16_u offset=138 + i32.const 36176 + i32.load16_u offset=140 + i32.const 36176 + i32.load16_u offset=142 + i32.const 36176 + i32.load16_u offset=144 + i32.const 36176 + i32.load16_u offset=146 + i32.const 36176 + i32.load16_u offset=148 + i32.const 36176 + i32.load16_u offset=150 + i32.const 36176 + i32.load16_u offset=152 + i32.const 36176 + i32.load16_u offset=154 + i32.const 36176 + i32.load16_u offset=156 + i32.const 36176 + i32.load16_u offset=158 + i32.const 36176 + i32.load16_u offset=160 + i32.const 36176 + i32.load16_u offset=162 + i32.const 36176 + i32.load16_u offset=164 + i32.const 36176 + i32.load16_u offset=166 + i32.const 36176 + i32.load16_u offset=168 + i32.const 36176 + i32.load16_u offset=170 + i32.const 36176 + i32.load16_u offset=172 + i32.const 36176 + i32.load16_u offset=174 + i32.const 36176 + i32.load16_u offset=176 + i32.const 36176 + i32.load16_u offset=178 + i32.const 36176 + i32.load16_u offset=180 + i32.const 36176 + i32.load16_u offset=182 + i32.const 36176 + i32.load16_u offset=184 + i32.const 36176 + i32.load16_u offset=186 + i32.const 36176 + i32.load16_u offset=188 + local.set $$t19.94 + local.set $$t19.93 + local.set $$t19.92 + local.set $$t19.91 + local.set $$t19.90 + local.set $$t19.89 + local.set $$t19.88 + local.set $$t19.87 + local.set $$t19.86 + local.set $$t19.85 + local.set $$t19.84 + local.set $$t19.83 + local.set $$t19.82 + local.set $$t19.81 + local.set $$t19.80 + local.set $$t19.79 + local.set $$t19.78 + local.set $$t19.77 + local.set $$t19.76 + local.set $$t19.75 + local.set $$t19.74 + local.set $$t19.73 + local.set $$t19.72 + local.set $$t19.71 + local.set $$t19.70 + local.set $$t19.69 + local.set $$t19.68 + local.set $$t19.67 + local.set $$t19.66 + local.set $$t19.65 + local.set $$t19.64 + local.set $$t19.63 + local.set $$t19.62 + local.set $$t19.61 + local.set $$t19.60 + local.set $$t19.59 + local.set $$t19.58 + local.set $$t19.57 + local.set $$t19.56 + local.set $$t19.55 + local.set $$t19.54 + local.set $$t19.53 + local.set $$t19.52 + local.set $$t19.51 + local.set $$t19.50 + local.set $$t19.49 + local.set $$t19.48 + local.set $$t19.47 + local.set $$t19.46 + local.set $$t19.45 + local.set $$t19.44 + local.set $$t19.43 + local.set $$t19.42 + local.set $$t19.41 + local.set $$t19.40 + local.set $$t19.39 + local.set $$t19.38 + local.set $$t19.37 + local.set $$t19.36 + local.set $$t19.35 + local.set $$t19.34 + local.set $$t19.33 + local.set $$t19.32 + local.set $$t19.31 + local.set $$t19.30 + local.set $$t19.29 + local.set $$t19.28 + local.set $$t19.27 + local.set $$t19.26 + local.set $$t19.25 + local.set $$t19.24 + local.set $$t19.23 + local.set $$t19.22 + local.set $$t19.21 + local.set $$t19.20 + local.set $$t19.19 + local.set $$t19.18 + local.set $$t19.17 + local.set $$t19.16 + local.set $$t19.15 + local.set $$t19.14 + local.set $$t19.13 + local.set $$t19.12 + local.set $$t19.11 + local.set $$t19.10 + local.set $$t19.9 + local.set $$t19.8 + local.set $$t19.7 + local.set $$t19.6 + local.set $$t19.5 + local.set $$t19.4 + local.set $$t19.3 + local.set $$t19.2 + local.set $$t19.1 + local.set $$t19.0 + local.get $$t15.1 + local.get $$t18.0 + i32.store + local.get $$t15.1 + local.get $$t18.1 + i32.store offset=4 + local.get $$t15.1 + local.get $$t18.2 + i32.store offset=8 + local.get $$t15.1 + local.get $$t18.3 + i32.store offset=12 + local.get $$t15.1 + local.get $$t18.4 + i32.store offset=16 + local.get $$t15.1 + local.get $$t18.5 + i32.store offset=20 + local.get $$t15.1 + local.get $$t18.6 + i32.store offset=24 + local.get $$t15.1 + local.get $$t18.7 + i32.store offset=28 + local.get $$t15.1 + local.get $$t18.8 + i32.store offset=32 + local.get $$t15.1 + local.get $$t18.9 + i32.store offset=36 + local.get $$t15.1 + local.get $$t18.10 + i32.store offset=40 + local.get $$t15.1 + local.get $$t18.11 + i32.store offset=44 + local.get $$t15.1 + local.get $$t18.12 + i32.store offset=48 + local.get $$t15.1 + local.get $$t18.13 + i32.store offset=52 + local.get $$t15.1 + local.get $$t18.14 + i32.store offset=56 + local.get $$t15.1 + local.get $$t18.15 + i32.store offset=60 + local.get $$t15.1 + local.get $$t18.16 + i32.store offset=64 + local.get $$t15.1 + local.get $$t18.17 + i32.store offset=68 + local.get $$t15.1 + local.get $$t18.18 + i32.store offset=72 + local.get $$t15.1 + local.get $$t18.19 + i32.store offset=76 + local.get $$t15.1 + local.get $$t18.20 + i32.store offset=80 + local.get $$t15.1 + local.get $$t18.21 + i32.store offset=84 + local.get $$t15.1 + local.get $$t18.22 + i32.store offset=88 + local.get $$t15.1 + local.get $$t18.23 + i32.store offset=92 + local.get $$t15.1 + local.get $$t18.24 + i32.store offset=96 + local.get $$t15.1 + local.get $$t18.25 + i32.store offset=100 + local.get $$t15.1 + local.get $$t18.26 + i32.store offset=104 + local.get $$t15.1 + local.get $$t18.27 + i32.store offset=108 + local.get $$t15.1 + local.get $$t18.28 + i32.store offset=112 + local.get $$t15.1 + local.get $$t18.29 + i32.store offset=116 + local.get $$t15.1 + local.get $$t18.30 + i32.store offset=120 + local.get $$t15.1 + local.get $$t18.31 + i32.store offset=124 + local.get $$t15.1 + local.get $$t18.32 + i32.store offset=128 + local.get $$t15.1 + local.get $$t18.33 + i32.store offset=132 + local.get $$t15.1 + local.get $$t18.34 + i32.store offset=136 + local.get $$t15.1 + local.get $$t18.35 + i32.store offset=140 + local.get $$t15.1 + local.get $$t18.36 + i32.store offset=144 + local.get $$t15.1 + local.get $$t18.37 + i32.store offset=148 + local.get $$t15.1 + local.get $$t18.38 + i32.store offset=152 + local.get $$t15.1 + local.get $$t18.39 + i32.store offset=156 + local.get $$t15.1 + local.get $$t18.40 + i32.store offset=160 + local.get $$t15.1 + local.get $$t18.41 + i32.store offset=164 + local.get $$t15.1 + local.get $$t18.42 + i32.store offset=168 + local.get $$t15.1 + local.get $$t18.43 + i32.store offset=172 + local.get $$t15.1 + local.get $$t18.44 + i32.store offset=176 + local.get $$t15.1 + local.get $$t18.45 + i32.store offset=180 + local.get $$t15.1 + local.get $$t18.46 + i32.store offset=184 + local.get $$t15.1 + local.get $$t18.47 + i32.store offset=188 + local.get $$t15.1 + local.get $$t18.48 + i32.store offset=192 + local.get $$t15.1 + local.get $$t18.49 + i32.store offset=196 + local.get $$t15.1 + local.get $$t18.50 + i32.store offset=200 + local.get $$t15.1 + local.get $$t18.51 + i32.store offset=204 + local.get $$t15.1 + local.get $$t18.52 + i32.store offset=208 + local.get $$t15.1 + local.get $$t18.53 + i32.store offset=212 + local.get $$t15.1 + local.get $$t18.54 + i32.store offset=216 + local.get $$t15.1 + local.get $$t18.55 + i32.store offset=220 + local.get $$t15.1 + local.get $$t18.56 + i32.store offset=224 + local.get $$t15.1 + local.get $$t18.57 + i32.store offset=228 + local.get $$t15.1 + local.get $$t18.58 + i32.store offset=232 + local.get $$t15.1 + local.get $$t18.59 + i32.store offset=236 + local.get $$t15.1 + local.get $$t18.60 + i32.store offset=240 + local.get $$t15.1 + local.get $$t18.61 + i32.store offset=244 + local.get $$t15.1 + local.get $$t18.62 + i32.store offset=248 + local.get $$t15.1 + local.get $$t18.63 + i32.store offset=252 + local.get $$t15.1 + local.get $$t18.64 + i32.store offset=256 + local.get $$t15.1 + local.get $$t18.65 + i32.store offset=260 + local.get $$t15.1 + local.get $$t18.66 + i32.store offset=264 + local.get $$t15.1 + local.get $$t18.67 + i32.store offset=268 + local.get $$t15.1 + local.get $$t18.68 + i32.store offset=272 + local.get $$t15.1 + local.get $$t18.69 + i32.store offset=276 + local.get $$t15.1 + local.get $$t18.70 + i32.store offset=280 + local.get $$t15.1 + local.get $$t18.71 + i32.store offset=284 + local.get $$t15.1 + local.get $$t18.72 + i32.store offset=288 + local.get $$t15.1 + local.get $$t18.73 + i32.store offset=292 + local.get $$t15.1 + local.get $$t18.74 + i32.store offset=296 + local.get $$t15.1 + local.get $$t18.75 + i32.store offset=300 + local.get $$t15.1 + local.get $$t18.76 + i32.store offset=304 + local.get $$t15.1 + local.get $$t18.77 + i32.store offset=308 + local.get $$t15.1 + local.get $$t18.78 + i32.store offset=312 + local.get $$t15.1 + local.get $$t18.79 + i32.store offset=316 + local.get $$t15.1 + local.get $$t18.80 + i32.store offset=320 + local.get $$t15.1 + local.get $$t18.81 + i32.store offset=324 + local.get $$t15.1 + local.get $$t18.82 + i32.store offset=328 + local.get $$t15.1 + local.get $$t18.83 + i32.store offset=332 + local.get $$t15.1 + local.get $$t18.84 + i32.store offset=336 + local.get $$t15.1 + local.get $$t18.85 + i32.store offset=340 + local.get $$t15.1 + local.get $$t18.86 + i32.store offset=344 + local.get $$t15.1 + local.get $$t18.87 + i32.store offset=348 + local.get $$t15.1 + local.get $$t18.88 + i32.store offset=352 + local.get $$t15.1 + local.get $$t18.89 + i32.store offset=356 + local.get $$t15.1 + local.get $$t18.90 + i32.store offset=360 + local.get $$t15.1 + local.get $$t18.91 + i32.store offset=364 + local.get $$t15.1 + local.get $$t18.92 + i32.store offset=368 + local.get $$t15.1 + local.get $$t18.93 + i32.store offset=372 + local.get $$t15.1 + local.get $$t18.94 + i32.store offset=376 + local.get $$t15.1 + local.get $$t18.95 + i32.store offset=380 + local.get $$t15.1 + local.get $$t18.96 + i32.store offset=384 + local.get $$t15.1 + local.get $$t18.97 + i32.store offset=388 + local.get $$t15.1 + local.get $$t18.98 + i32.store offset=392 + local.get $$t15.1 + local.get $$t18.99 + i32.store offset=396 + local.get $$t15.1 + local.get $$t18.100 + i32.store offset=400 + local.get $$t15.1 + local.get $$t18.101 + i32.store offset=404 + local.get $$t15.1 + local.get $$t18.102 + i32.store offset=408 + local.get $$t15.1 + local.get $$t18.103 + i32.store offset=412 + local.get $$t15.1 + local.get $$t18.104 + i32.store offset=416 + local.get $$t15.1 + local.get $$t18.105 + i32.store offset=420 + local.get $$t15.1 + local.get $$t18.106 + i32.store offset=424 + local.get $$t15.1 + local.get $$t18.107 + i32.store offset=428 + local.get $$t15.1 + local.get $$t18.108 + i32.store offset=432 + local.get $$t15.1 + local.get $$t18.109 + i32.store offset=436 + local.get $$t15.1 + local.get $$t18.110 + i32.store offset=440 + local.get $$t15.1 + local.get $$t18.111 + i32.store offset=444 + local.get $$t15.1 + local.get $$t18.112 + i32.store offset=448 + local.get $$t15.1 + local.get $$t18.113 + i32.store offset=452 + local.get $$t15.1 + local.get $$t18.114 + i32.store offset=456 + local.get $$t15.1 + local.get $$t18.115 + i32.store offset=460 + local.get $$t15.1 + local.get $$t18.116 + i32.store offset=464 + local.get $$t15.1 + local.get $$t18.117 + i32.store offset=468 + local.get $$t15.1 + local.get $$t18.118 + i32.store offset=472 + local.get $$t15.1 + local.get $$t18.119 + i32.store offset=476 + local.get $$t15.1 + local.get $$t18.120 + i32.store offset=480 + local.get $$t15.1 + local.get $$t18.121 + i32.store offset=484 + local.get $$t15.1 + local.get $$t18.122 + i32.store offset=488 + local.get $$t15.1 + local.get $$t18.123 + i32.store offset=492 + local.get $$t15.1 + local.get $$t18.124 + i32.store offset=496 + local.get $$t15.1 + local.get $$t18.125 + i32.store offset=500 + local.get $$t15.1 + local.get $$t18.126 + i32.store offset=504 + local.get $$t15.1 + local.get $$t18.127 + i32.store offset=508 + local.get $$t15.1 + local.get $$t18.128 + i32.store offset=512 + local.get $$t15.1 + local.get $$t18.129 + i32.store offset=516 + local.get $$t15.1 + local.get $$t18.130 + i32.store offset=520 + local.get $$t15.1 + local.get $$t18.131 + i32.store offset=524 + local.get $$t15.1 + local.get $$t18.132 + i32.store offset=528 + local.get $$t15.1 + local.get $$t18.133 + i32.store offset=532 + local.get $$t15.1 + local.get $$t18.134 + i32.store offset=536 + local.get $$t15.1 + local.get $$t18.135 + i32.store offset=540 + local.get $$t15.1 + local.get $$t18.136 + i32.store offset=544 + local.get $$t15.1 + local.get $$t18.137 + i32.store offset=548 + local.get $$t15.1 + local.get $$t18.138 + i32.store offset=552 + local.get $$t15.1 + local.get $$t18.139 + i32.store offset=556 + local.get $$t15.1 + local.get $$t18.140 + i32.store offset=560 + local.get $$t15.1 + local.get $$t18.141 + i32.store offset=564 + local.get $$t15.1 + local.get $$t18.142 + i32.store offset=568 + local.get $$t15.1 + local.get $$t18.143 + i32.store offset=572 + local.get $$t15.1 + local.get $$t18.144 + i32.store offset=576 + local.get $$t15.1 + local.get $$t18.145 + i32.store offset=580 + local.get $$t15.1 + local.get $$t18.146 + i32.store offset=584 + local.get $$t15.1 + local.get $$t18.147 + i32.store offset=588 + local.get $$t15.1 + local.get $$t18.148 + i32.store offset=592 + local.get $$t15.1 + local.get $$t18.149 + i32.store offset=596 + local.get $$t15.1 + local.get $$t18.150 + i32.store offset=600 + local.get $$t15.1 + local.get $$t18.151 + i32.store offset=604 + local.get $$t15.1 + local.get $$t18.152 + i32.store offset=608 + local.get $$t15.1 + local.get $$t18.153 + i32.store offset=612 + local.get $$t15.1 + local.get $$t18.154 + i32.store offset=616 + local.get $$t15.1 + local.get $$t18.155 + i32.store offset=620 + local.get $$t15.1 + local.get $$t18.156 + i32.store offset=624 + local.get $$t15.1 + local.get $$t18.157 + i32.store offset=628 + local.get $$t15.1 + local.get $$t18.158 + i32.store offset=632 + local.get $$t15.1 + local.get $$t18.159 + i32.store offset=636 + local.get $$t15.1 + local.get $$t18.160 + i32.store offset=640 + local.get $$t15.1 + local.get $$t18.161 + i32.store offset=644 + local.get $$t15.1 + local.get $$t18.162 + i32.store offset=648 + local.get $$t15.1 + local.get $$t18.163 + i32.store offset=652 + local.get $$t15.1 + local.get $$t18.164 + i32.store offset=656 + local.get $$t15.1 + local.get $$t18.165 + i32.store offset=660 + local.get $$t15.1 + local.get $$t18.166 + i32.store offset=664 + local.get $$t15.1 + local.get $$t18.167 + i32.store offset=668 + local.get $$t15.1 + local.get $$t18.168 + i32.store offset=672 + local.get $$t15.1 + local.get $$t18.169 + i32.store offset=676 + local.get $$t15.1 + local.get $$t18.170 + i32.store offset=680 + local.get $$t15.1 + local.get $$t18.171 + i32.store offset=684 + local.get $$t15.1 + local.get $$t18.172 + i32.store offset=688 + local.get $$t15.1 + local.get $$t18.173 + i32.store offset=692 + local.get $$t15.1 + local.get $$t18.174 + i32.store offset=696 + local.get $$t15.1 + local.get $$t18.175 + i32.store offset=700 + local.get $$t15.1 + local.get $$t18.176 + i32.store offset=704 + local.get $$t15.1 + local.get $$t18.177 + i32.store offset=708 + local.get $$t15.1 + local.get $$t18.178 + i32.store offset=712 + local.get $$t15.1 + local.get $$t18.179 + i32.store offset=716 + local.get $$t15.1 + local.get $$t18.180 + i32.store offset=720 + local.get $$t15.1 + local.get $$t18.181 + i32.store offset=724 + local.get $$t15.1 + local.get $$t18.182 + i32.store offset=728 + local.get $$t15.1 + local.get $$t18.183 + i32.store offset=732 + local.get $$t15.1 + local.get $$t18.184 + i32.store offset=736 + local.get $$t15.1 + local.get $$t18.185 + i32.store offset=740 + local.get $$t15.1 + local.get $$t18.186 + i32.store offset=744 + local.get $$t15.1 + local.get $$t18.187 + i32.store offset=748 + local.get $$t15.1 + local.get $$t18.188 + i32.store offset=752 + local.get $$t15.1 + local.get $$t18.189 + i32.store offset=756 + local.get $$t15.1 + local.get $$t18.190 + i32.store offset=760 + local.get $$t15.1 + local.get $$t18.191 + i32.store offset=764 + local.get $$t15.1 + local.get $$t18.192 + i32.store offset=768 + local.get $$t15.1 + local.get $$t18.193 + i32.store offset=772 + local.get $$t15.1 + local.get $$t18.194 + i32.store offset=776 + local.get $$t15.1 + local.get $$t18.195 + i32.store offset=780 + local.get $$t15.1 + local.get $$t18.196 + i32.store offset=784 + local.get $$t15.1 + local.get $$t18.197 + i32.store offset=788 + local.get $$t15.1 + local.get $$t18.198 + i32.store offset=792 + local.get $$t15.1 + local.get $$t18.199 + i32.store offset=796 + local.get $$t15.1 + local.get $$t18.200 + i32.store offset=800 + local.get $$t15.1 + local.get $$t18.201 + i32.store offset=804 + local.get $$t15.1 + local.get $$t18.202 + i32.store offset=808 + local.get $$t15.1 + local.get $$t18.203 + i32.store offset=812 + local.get $$t15.1 + local.get $$t18.204 + i32.store offset=816 + local.get $$t15.1 + local.get $$t18.205 + i32.store offset=820 + local.get $$t15.1 + local.get $$t18.206 + i32.store offset=824 + local.get $$t15.1 + local.get $$t18.207 + i32.store offset=828 + local.get $$t15.1 + local.get $$t18.208 + i32.store offset=832 + local.get $$t15.1 + local.get $$t18.209 + i32.store offset=836 + local.get $$t15.1 + local.get $$t18.210 + i32.store offset=840 + local.get $$t15.1 + local.get $$t18.211 + i32.store offset=844 + local.get $$t15.1 + local.get $$t18.212 + i32.store offset=848 + local.get $$t15.1 + local.get $$t18.213 + i32.store offset=852 + local.get $$t15.1 + local.get $$t18.214 + i32.store offset=856 + local.get $$t15.1 + local.get $$t18.215 + i32.store offset=860 + local.get $$t15.1 + local.get $$t18.216 + i32.store offset=864 + local.get $$t15.1 + local.get $$t18.217 + i32.store offset=868 + local.get $$t15.1 + local.get $$t18.218 + i32.store offset=872 + local.get $$t15.1 + local.get $$t18.219 + i32.store offset=876 + local.get $$t15.1 + local.get $$t18.220 + i32.store offset=880 + local.get $$t15.1 + local.get $$t18.221 + i32.store offset=884 + local.get $$t15.1 + local.get $$t18.222 + i32.store offset=888 + local.get $$t15.1 + local.get $$t18.223 + i32.store offset=892 + local.get $$t15.1 + local.get $$t18.224 + i32.store offset=896 + local.get $$t15.1 + local.get $$t18.225 + i32.store offset=900 + local.get $$t15.1 + local.get $$t18.226 + i32.store offset=904 + local.get $$t15.1 + local.get $$t18.227 + i32.store offset=908 + local.get $$t15.1 + local.get $$t18.228 + i32.store offset=912 + local.get $$t15.1 + local.get $$t18.229 + i32.store offset=916 + local.get $$t15.1 + local.get $$t18.230 + i32.store offset=920 + local.get $$t15.1 + local.get $$t18.231 + i32.store offset=924 + local.get $$t15.1 + local.get $$t18.232 + i32.store offset=928 + local.get $$t15.1 + local.get $$t18.233 + i32.store offset=932 + local.get $$t15.1 + local.get $$t18.234 + i32.store offset=936 + local.get $$t15.1 + local.get $$t18.235 + i32.store offset=940 + local.get $$t15.1 + local.get $$t18.236 + i32.store offset=944 + local.get $$t15.1 + local.get $$t18.237 + i32.store offset=948 + local.get $$t15.1 + local.get $$t18.238 + i32.store offset=952 + local.get $$t15.1 + local.get $$t18.239 + i32.store offset=956 + local.get $$t15.1 + local.get $$t18.240 + i32.store offset=960 + local.get $$t15.1 + local.get $$t18.241 + i32.store offset=964 + local.get $$t15.1 + local.get $$t18.242 + i32.store offset=968 + local.get $$t15.1 + local.get $$t18.243 + i32.store offset=972 + local.get $$t15.1 + local.get $$t18.244 + i32.store offset=976 + local.get $$t15.1 + local.get $$t18.245 + i32.store offset=980 + local.get $$t15.1 + local.get $$t18.246 + i32.store offset=984 + local.get $$t15.1 + local.get $$t18.247 + i32.store offset=988 + local.get $$t15.1 + local.get $$t18.248 + i32.store offset=992 + local.get $$t15.1 + local.get $$t18.249 + i32.store offset=996 + local.get $$t15.1 + local.get $$t18.250 + i32.store offset=1000 + local.get $$t15.1 + local.get $$t18.251 + i32.store offset=1004 + local.get $$t15.1 + local.get $$t18.252 + i32.store offset=1008 + local.get $$t15.1 + local.get $$t18.253 + i32.store offset=1012 + local.get $$t15.1 + local.get $$t18.254 + i32.store offset=1016 + local.get $$t15.1 + local.get $$t18.255 + i32.store offset=1020 + local.get $$t15.1 + local.get $$t18.256 + i32.store offset=1024 + local.get $$t15.1 + local.get $$t18.257 + i32.store offset=1028 + local.get $$t15.1 + local.get $$t18.258 + i32.store offset=1032 + local.get $$t15.1 + local.get $$t18.259 + i32.store offset=1036 + local.get $$t15.1 + local.get $$t18.260 + i32.store offset=1040 + local.get $$t15.1 + local.get $$t18.261 + i32.store offset=1044 + local.get $$t15.1 + local.get $$t18.262 + i32.store offset=1048 + local.get $$t15.1 + local.get $$t18.263 + i32.store offset=1052 + local.get $$t15.1 + local.get $$t18.264 + i32.store offset=1056 + local.get $$t15.1 + local.get $$t18.265 + i32.store offset=1060 + local.get $$t15.1 + local.get $$t18.266 + i32.store offset=1064 + local.get $$t15.1 + local.get $$t18.267 + i32.store offset=1068 + local.get $$t15.1 + local.get $$t18.268 + i32.store offset=1072 + local.get $$t15.1 + local.get $$t18.269 + i32.store offset=1076 + local.get $$t15.1 + local.get $$t18.270 + i32.store offset=1080 + local.get $$t15.1 + local.get $$t18.271 + i32.store offset=1084 + local.get $$t15.1 + local.get $$t18.272 + i32.store offset=1088 + local.get $$t15.1 + local.get $$t18.273 + i32.store offset=1092 + local.get $$t15.1 + local.get $$t18.274 + i32.store offset=1096 + local.get $$t15.1 + local.get $$t18.275 + i32.store offset=1100 + local.get $$t15.1 + local.get $$t18.276 + i32.store offset=1104 + local.get $$t15.1 + local.get $$t18.277 + i32.store offset=1108 + local.get $$t15.1 + local.get $$t18.278 + i32.store offset=1112 + local.get $$t15.1 + local.get $$t18.279 + i32.store offset=1116 + local.get $$t15.1 + local.get $$t18.280 + i32.store offset=1120 + local.get $$t15.1 + local.get $$t18.281 + i32.store offset=1124 + local.get $$t15.1 + local.get $$t18.282 + i32.store offset=1128 + local.get $$t15.1 + local.get $$t18.283 + i32.store offset=1132 + local.get $$t15.1 + local.get $$t18.284 + i32.store offset=1136 + local.get $$t15.1 + local.get $$t18.285 + i32.store offset=1140 + local.get $$t15.1 + local.get $$t18.286 + i32.store offset=1144 + local.get $$t15.1 + local.get $$t18.287 + i32.store offset=1148 + local.get $$t15.1 + local.get $$t18.288 + i32.store offset=1152 + local.get $$t15.1 + local.get $$t18.289 + i32.store offset=1156 + local.get $$t15.1 + local.get $$t18.290 + i32.store offset=1160 + local.get $$t15.1 + local.get $$t18.291 + i32.store offset=1164 + local.get $$t15.1 + local.get $$t18.292 + i32.store offset=1168 + local.get $$t15.1 + local.get $$t18.293 + i32.store offset=1172 + local.get $$t15.1 + local.get $$t18.294 + i32.store offset=1176 + local.get $$t15.1 + local.get $$t18.295 + i32.store offset=1180 + local.get $$t15.1 + local.get $$t18.296 + i32.store offset=1184 + local.get $$t15.1 + local.get $$t18.297 + i32.store offset=1188 + local.get $$t15.1 + local.get $$t18.298 + i32.store offset=1192 + local.get $$t15.1 + local.get $$t18.299 + i32.store offset=1196 + local.get $$t15.1 + local.get $$t18.300 + i32.store offset=1200 + local.get $$t15.1 + local.get $$t18.301 + i32.store offset=1204 + local.get $$t15.1 + local.get $$t18.302 + i32.store offset=1208 + local.get $$t15.1 + local.get $$t18.303 + i32.store offset=1212 + local.get $$t15.1 + local.get $$t18.304 + i32.store offset=1216 + local.get $$t15.1 + local.get $$t18.305 + i32.store offset=1220 + local.get $$t15.1 + local.get $$t18.306 + i32.store offset=1224 + local.get $$t15.1 + local.get $$t18.307 + i32.store offset=1228 + local.get $$t15.1 + local.get $$t18.308 + i32.store offset=1232 + local.get $$t15.1 + local.get $$t18.309 + i32.store offset=1236 + local.get $$t15.1 + local.get $$t18.310 + i32.store offset=1240 + local.get $$t15.1 + local.get $$t18.311 + i32.store offset=1244 + local.get $$t15.1 + local.get $$t18.312 + i32.store offset=1248 + local.get $$t15.1 + local.get $$t18.313 + i32.store offset=1252 + local.get $$t15.1 + local.get $$t18.314 + i32.store offset=1256 + local.get $$t15.1 + local.get $$t18.315 + i32.store offset=1260 + local.get $$t15.1 + local.get $$t18.316 + i32.store offset=1264 + local.get $$t15.1 + local.get $$t18.317 + i32.store offset=1268 + local.get $$t15.1 + local.get $$t18.318 + i32.store offset=1272 + local.get $$t15.1 + local.get $$t18.319 + i32.store offset=1276 + local.get $$t15.1 + local.get $$t18.320 + i32.store offset=1280 + local.get $$t15.1 + local.get $$t18.321 + i32.store offset=1284 + local.get $$t15.1 + local.get $$t18.322 + i32.store offset=1288 + local.get $$t15.1 + local.get $$t18.323 + i32.store offset=1292 + local.get $$t15.1 + local.get $$t18.324 + i32.store offset=1296 + local.get $$t15.1 + local.get $$t18.325 + i32.store offset=1300 + local.get $$t15.1 + local.get $$t18.326 + i32.store offset=1304 + local.get $$t15.1 + local.get $$t18.327 + i32.store offset=1308 + local.get $$t15.1 + local.get $$t18.328 + i32.store offset=1312 + local.get $$t15.1 + local.get $$t18.329 + i32.store offset=1316 + local.get $$t15.1 + local.get $$t18.330 + i32.store offset=1320 + local.get $$t15.1 + local.get $$t18.331 + i32.store offset=1324 + local.get $$t15.1 + local.get $$t18.332 + i32.store offset=1328 + local.get $$t15.1 + local.get $$t18.333 + i32.store offset=1332 + local.get $$t15.1 + local.get $$t18.334 + i32.store offset=1336 + local.get $$t15.1 + local.get $$t18.335 + i32.store offset=1340 + local.get $$t15.1 + local.get $$t18.336 + i32.store offset=1344 + local.get $$t15.1 + local.get $$t18.337 + i32.store offset=1348 + local.get $$t15.1 + local.get $$t18.338 + i32.store offset=1352 + local.get $$t15.1 + local.get $$t18.339 + i32.store offset=1356 + local.get $$t15.1 + local.get $$t18.340 + i32.store offset=1360 + local.get $$t15.1 + local.get $$t18.341 + i32.store offset=1364 + local.get $$t15.1 + local.get $$t18.342 + i32.store offset=1368 + local.get $$t15.1 + local.get $$t18.343 + i32.store offset=1372 + local.get $$t15.1 + local.get $$t18.344 + i32.store offset=1376 + local.get $$t15.1 + local.get $$t18.345 + i32.store offset=1380 + local.get $$t15.1 + local.get $$t18.346 + i32.store offset=1384 + local.get $$t15.1 + local.get $$t18.347 + i32.store offset=1388 + local.get $$t15.1 + local.get $$t18.348 + i32.store offset=1392 + local.get $$t15.1 + local.get $$t18.349 + i32.store offset=1396 + local.get $$t15.1 + local.get $$t18.350 + i32.store offset=1400 + local.get $$t15.1 + local.get $$t18.351 + i32.store offset=1404 + local.get $$t15.1 + local.get $$t18.352 + i32.store offset=1408 + local.get $$t15.1 + local.get $$t18.353 + i32.store offset=1412 + local.get $$t15.1 + local.get $$t18.354 + i32.store offset=1416 + local.get $$t15.1 + local.get $$t18.355 + i32.store offset=1420 + local.get $$t15.1 + local.get $$t18.356 + i32.store offset=1424 + local.get $$t15.1 + local.get $$t18.357 + i32.store offset=1428 + local.get $$t15.1 + local.get $$t18.358 + i32.store offset=1432 + local.get $$t15.1 + local.get $$t18.359 + i32.store offset=1436 + local.get $$t15.1 + local.get $$t18.360 + i32.store offset=1440 + local.get $$t15.1 + local.get $$t18.361 + i32.store offset=1444 + local.get $$t15.1 + local.get $$t18.362 + i32.store offset=1448 + local.get $$t15.1 + local.get $$t18.363 + i32.store offset=1452 + local.get $$t15.1 + local.get $$t18.364 + i32.store offset=1456 + local.get $$t15.1 + local.get $$t18.365 + i32.store offset=1460 + local.get $$t15.1 + local.get $$t18.366 + i32.store offset=1464 + local.get $$t15.1 + local.get $$t18.367 + i32.store offset=1468 + local.get $$t15.1 + local.get $$t18.368 + i32.store offset=1472 + local.get $$t15.1 + local.get $$t18.369 + i32.store offset=1476 + local.get $$t15.1 + local.get $$t18.370 + i32.store offset=1480 + local.get $$t15.1 + local.get $$t18.371 + i32.store offset=1484 + local.get $$t15.1 + local.get $$t18.372 + i32.store offset=1488 + local.get $$t15.1 + local.get $$t18.373 + i32.store offset=1492 + local.get $$t15.1 + local.get $$t18.374 + i32.store offset=1496 + local.get $$t15.1 + local.get $$t18.375 + i32.store offset=1500 + local.get $$t15.1 + local.get $$t18.376 + i32.store offset=1504 + local.get $$t15.1 + local.get $$t18.377 + i32.store offset=1508 + local.get $$t15.1 + local.get $$t18.378 + i32.store offset=1512 + local.get $$t15.1 + local.get $$t18.379 + i32.store offset=1516 + local.get $$t15.1 + local.get $$t18.380 + i32.store offset=1520 + local.get $$t15.1 + local.get $$t18.381 + i32.store offset=1524 + local.get $$t15.1 + local.get $$t18.382 + i32.store offset=1528 + local.get $$t15.1 + local.get $$t18.383 + i32.store offset=1532 + local.get $$t15.1 + local.get $$t18.384 + i32.store offset=1536 + local.get $$t15.1 + local.get $$t18.385 + i32.store offset=1540 + local.get $$t15.1 + local.get $$t18.386 + i32.store offset=1544 + local.get $$t15.1 + local.get $$t18.387 + i32.store offset=1548 + local.get $$t15.1 + local.get $$t18.388 + i32.store offset=1552 + local.get $$t15.1 + local.get $$t18.389 + i32.store offset=1556 + local.get $$t15.1 + local.get $$t18.390 + i32.store offset=1560 + local.get $$t15.1 + local.get $$t18.391 + i32.store offset=1564 + local.get $$t15.1 + local.get $$t18.392 + i32.store offset=1568 + local.get $$t15.1 + local.get $$t18.393 + i32.store offset=1572 + local.get $$t15.1 + local.get $$t18.394 + i32.store offset=1576 + local.get $$t15.1 + local.get $$t18.395 + i32.store offset=1580 + local.get $$t15.1 + local.get $$t18.396 + i32.store offset=1584 + local.get $$t15.1 + local.get $$t18.397 + i32.store offset=1588 + local.get $$t15.1 + local.get $$t18.398 + i32.store offset=1592 + local.get $$t15.1 + local.get $$t18.399 + i32.store offset=1596 + local.get $$t15.1 + local.get $$t18.400 + i32.store offset=1600 + local.get $$t15.1 + local.get $$t18.401 + i32.store offset=1604 + local.get $$t15.1 + local.get $$t18.402 + i32.store offset=1608 + local.get $$t15.1 + local.get $$t18.403 + i32.store offset=1612 + local.get $$t15.1 + local.get $$t18.404 + i32.store offset=1616 + local.get $$t15.1 + local.get $$t18.405 + i32.store offset=1620 + local.get $$t15.1 + local.get $$t18.406 + i32.store offset=1624 + local.get $$t15.1 + local.get $$t18.407 + i32.store offset=1628 + local.get $$t15.1 + local.get $$t18.408 + i32.store offset=1632 + local.get $$t15.1 + local.get $$t18.409 + i32.store offset=1636 + local.get $$t15.1 + local.get $$t18.410 + i32.store offset=1640 + local.get $$t15.1 + local.get $$t18.411 + i32.store offset=1644 + local.get $$t15.1 + local.get $$t18.412 + i32.store offset=1648 + local.get $$t15.1 + local.get $$t18.413 + i32.store offset=1652 + local.get $$t15.1 + local.get $$t18.414 + i32.store offset=1656 + local.get $$t15.1 + local.get $$t18.415 + i32.store offset=1660 + local.get $$t15.1 + local.get $$t18.416 + i32.store offset=1664 + local.get $$t15.1 + local.get $$t18.417 + i32.store offset=1668 + local.get $$t15.1 + local.get $$t18.418 + i32.store offset=1672 + local.get $$t15.1 + local.get $$t18.419 + i32.store offset=1676 + local.get $$t15.1 + local.get $$t18.420 + i32.store offset=1680 + local.get $$t15.1 + local.get $$t18.421 + i32.store offset=1684 + local.get $$t15.1 + local.get $$t18.422 + i32.store offset=1688 + local.get $$t15.1 + local.get $$t18.423 + i32.store offset=1692 + local.get $$t15.1 + local.get $$t18.424 + i32.store offset=1696 + local.get $$t15.1 + local.get $$t18.425 + i32.store offset=1700 + local.get $$t15.1 + local.get $$t18.426 + i32.store offset=1704 + local.get $$t15.1 + local.get $$t18.427 + i32.store offset=1708 + local.get $$t15.1 + local.get $$t18.428 + i32.store offset=1712 + local.get $$t15.1 + local.get $$t18.429 + i32.store offset=1716 + local.get $$t15.1 + local.get $$t18.430 + i32.store offset=1720 + local.get $$t15.1 + local.get $$t18.431 + i32.store offset=1724 + local.get $$t15.1 + local.get $$t18.432 + i32.store offset=1728 + local.get $$t15.1 + local.get $$t18.433 + i32.store offset=1732 + local.get $$t15.1 + local.get $$t18.434 + i32.store offset=1736 + local.get $$t15.1 + local.get $$t18.435 + i32.store offset=1740 + local.get $$t15.1 + local.get $$t18.436 + i32.store offset=1744 + local.get $$t15.1 + local.get $$t18.437 + i32.store offset=1748 + local.get $$t15.1 + local.get $$t18.438 + i32.store offset=1752 + local.get $$t15.1 + local.get $$t18.439 + i32.store offset=1756 + local.get $$t15.1 + local.get $$t18.440 + i32.store offset=1760 + local.get $$t15.1 + local.get $$t18.441 + i32.store offset=1764 + local.get $$t15.1 + local.get $$t18.442 + i32.store offset=1768 + local.get $$t15.1 + local.get $$t18.443 + i32.store offset=1772 + local.get $$t15.1 + local.get $$t18.444 + i32.store offset=1776 + local.get $$t15.1 + local.get $$t18.445 + i32.store offset=1780 + local.get $$t15.1 + local.get $$t18.446 + i32.store offset=1784 + local.get $$t15.1 + local.get $$t18.447 + i32.store offset=1788 + local.get $$t15.1 + local.get $$t18.448 + i32.store offset=1792 + local.get $$t15.1 + local.get $$t18.449 + i32.store offset=1796 + local.get $$t15.1 + local.get $$t18.450 + i32.store offset=1800 + local.get $$t15.1 + local.get $$t18.451 + i32.store offset=1804 + local.get $$t15.1 + local.get $$t18.452 + i32.store offset=1808 + local.get $$t15.1 + local.get $$t18.453 + i32.store offset=1812 + local.get $$t15.1 + local.get $$t18.454 + i32.store offset=1816 + local.get $$t15.1 + local.get $$t18.455 + i32.store offset=1820 + local.get $$t15.1 + local.get $$t18.456 + i32.store offset=1824 + local.get $$t15.1 + local.get $$t18.457 + i32.store offset=1828 + local.get $$t15.1 + local.get $$t18.458 + i32.store offset=1832 + local.get $$t15.1 + local.get $$t18.459 + i32.store offset=1836 + local.get $$t15.1 + local.get $$t18.460 + i32.store offset=1840 + local.get $$t15.1 + local.get $$t18.461 + i32.store offset=1844 + local.get $$t15.1 + local.get $$t18.462 + i32.store offset=1848 + local.get $$t15.1 + local.get $$t18.463 + i32.store offset=1852 + local.get $$t15.1 + local.get $$t18.464 + i32.store offset=1856 + local.get $$t15.1 + local.get $$t18.465 + i32.store offset=1860 + local.get $$t15.1 + local.get $$t18.466 + i32.store offset=1864 + local.get $$t15.1 + local.get $$t18.467 + i32.store offset=1868 + local.get $$t16.1 + local.get $$t19.0 + i32.store16 + local.get $$t16.1 + local.get $$t19.1 + i32.store16 offset=2 + local.get $$t16.1 + local.get $$t19.2 + i32.store16 offset=4 + local.get $$t16.1 + local.get $$t19.3 + i32.store16 offset=6 + local.get $$t16.1 + local.get $$t19.4 + i32.store16 offset=8 + local.get $$t16.1 + local.get $$t19.5 + i32.store16 offset=10 + local.get $$t16.1 + local.get $$t19.6 + i32.store16 offset=12 + local.get $$t16.1 + local.get $$t19.7 + i32.store16 offset=14 + local.get $$t16.1 + local.get $$t19.8 + i32.store16 offset=16 + local.get $$t16.1 + local.get $$t19.9 + i32.store16 offset=18 + local.get $$t16.1 + local.get $$t19.10 + i32.store16 offset=20 + local.get $$t16.1 + local.get $$t19.11 + i32.store16 offset=22 + local.get $$t16.1 + local.get $$t19.12 + i32.store16 offset=24 + local.get $$t16.1 + local.get $$t19.13 + i32.store16 offset=26 + local.get $$t16.1 + local.get $$t19.14 + i32.store16 offset=28 + local.get $$t16.1 + local.get $$t19.15 + i32.store16 offset=30 + local.get $$t16.1 + local.get $$t19.16 + i32.store16 offset=32 + local.get $$t16.1 + local.get $$t19.17 + i32.store16 offset=34 + local.get $$t16.1 + local.get $$t19.18 + i32.store16 offset=36 + local.get $$t16.1 + local.get $$t19.19 + i32.store16 offset=38 + local.get $$t16.1 + local.get $$t19.20 + i32.store16 offset=40 + local.get $$t16.1 + local.get $$t19.21 + i32.store16 offset=42 + local.get $$t16.1 + local.get $$t19.22 + i32.store16 offset=44 + local.get $$t16.1 + local.get $$t19.23 + i32.store16 offset=46 + local.get $$t16.1 + local.get $$t19.24 + i32.store16 offset=48 + local.get $$t16.1 + local.get $$t19.25 + i32.store16 offset=50 + local.get $$t16.1 + local.get $$t19.26 + i32.store16 offset=52 + local.get $$t16.1 + local.get $$t19.27 + i32.store16 offset=54 + local.get $$t16.1 + local.get $$t19.28 + i32.store16 offset=56 + local.get $$t16.1 + local.get $$t19.29 + i32.store16 offset=58 + local.get $$t16.1 + local.get $$t19.30 + i32.store16 offset=60 + local.get $$t16.1 + local.get $$t19.31 + i32.store16 offset=62 + local.get $$t16.1 + local.get $$t19.32 + i32.store16 offset=64 + local.get $$t16.1 + local.get $$t19.33 + i32.store16 offset=66 + local.get $$t16.1 + local.get $$t19.34 + i32.store16 offset=68 + local.get $$t16.1 + local.get $$t19.35 + i32.store16 offset=70 + local.get $$t16.1 + local.get $$t19.36 + i32.store16 offset=72 + local.get $$t16.1 + local.get $$t19.37 + i32.store16 offset=74 + local.get $$t16.1 + local.get $$t19.38 + i32.store16 offset=76 + local.get $$t16.1 + local.get $$t19.39 + i32.store16 offset=78 + local.get $$t16.1 + local.get $$t19.40 + i32.store16 offset=80 + local.get $$t16.1 + local.get $$t19.41 + i32.store16 offset=82 + local.get $$t16.1 + local.get $$t19.42 + i32.store16 offset=84 + local.get $$t16.1 + local.get $$t19.43 + i32.store16 offset=86 + local.get $$t16.1 + local.get $$t19.44 + i32.store16 offset=88 + local.get $$t16.1 + local.get $$t19.45 + i32.store16 offset=90 + local.get $$t16.1 + local.get $$t19.46 + i32.store16 offset=92 + local.get $$t16.1 + local.get $$t19.47 + i32.store16 offset=94 + local.get $$t16.1 + local.get $$t19.48 + i32.store16 offset=96 + local.get $$t16.1 + local.get $$t19.49 + i32.store16 offset=98 + local.get $$t16.1 + local.get $$t19.50 + i32.store16 offset=100 + local.get $$t16.1 + local.get $$t19.51 + i32.store16 offset=102 + local.get $$t16.1 + local.get $$t19.52 + i32.store16 offset=104 + local.get $$t16.1 + local.get $$t19.53 + i32.store16 offset=106 + local.get $$t16.1 + local.get $$t19.54 + i32.store16 offset=108 + local.get $$t16.1 + local.get $$t19.55 + i32.store16 offset=110 + local.get $$t16.1 + local.get $$t19.56 + i32.store16 offset=112 + local.get $$t16.1 + local.get $$t19.57 + i32.store16 offset=114 + local.get $$t16.1 + local.get $$t19.58 + i32.store16 offset=116 + local.get $$t16.1 + local.get $$t19.59 + i32.store16 offset=118 + local.get $$t16.1 + local.get $$t19.60 + i32.store16 offset=120 + local.get $$t16.1 + local.get $$t19.61 + i32.store16 offset=122 + local.get $$t16.1 + local.get $$t19.62 + i32.store16 offset=124 + local.get $$t16.1 + local.get $$t19.63 + i32.store16 offset=126 + local.get $$t16.1 + local.get $$t19.64 + i32.store16 offset=128 + local.get $$t16.1 + local.get $$t19.65 + i32.store16 offset=130 + local.get $$t16.1 + local.get $$t19.66 + i32.store16 offset=132 + local.get $$t16.1 + local.get $$t19.67 + i32.store16 offset=134 + local.get $$t16.1 + local.get $$t19.68 + i32.store16 offset=136 + local.get $$t16.1 + local.get $$t19.69 + i32.store16 offset=138 + local.get $$t16.1 + local.get $$t19.70 + i32.store16 offset=140 + local.get $$t16.1 + local.get $$t19.71 + i32.store16 offset=142 + local.get $$t16.1 + local.get $$t19.72 + i32.store16 offset=144 + local.get $$t16.1 + local.get $$t19.73 + i32.store16 offset=146 + local.get $$t16.1 + local.get $$t19.74 + i32.store16 offset=148 + local.get $$t16.1 + local.get $$t19.75 + i32.store16 offset=150 + local.get $$t16.1 + local.get $$t19.76 + i32.store16 offset=152 + local.get $$t16.1 + local.get $$t19.77 + i32.store16 offset=154 + local.get $$t16.1 + local.get $$t19.78 + i32.store16 offset=156 + local.get $$t16.1 + local.get $$t19.79 + i32.store16 offset=158 + local.get $$t16.1 + local.get $$t19.80 + i32.store16 offset=160 + local.get $$t16.1 + local.get $$t19.81 + i32.store16 offset=162 + local.get $$t16.1 + local.get $$t19.82 + i32.store16 offset=164 + local.get $$t16.1 + local.get $$t19.83 + i32.store16 offset=166 + local.get $$t16.1 + local.get $$t19.84 + i32.store16 offset=168 + local.get $$t16.1 + local.get $$t19.85 + i32.store16 offset=170 + local.get $$t16.1 + local.get $$t19.86 + i32.store16 offset=172 + local.get $$t16.1 + local.get $$t19.87 + i32.store16 offset=174 + local.get $$t16.1 + local.get $$t19.88 + i32.store16 offset=176 + local.get $$t16.1 + local.get $$t19.89 + i32.store16 offset=178 + local.get $$t16.1 + local.get $$t19.90 + i32.store16 offset=180 + local.get $$t16.1 + local.get $$t19.91 + i32.store16 offset=182 + local.get $$t16.1 + local.get $$t19.92 + i32.store16 offset=184 + local.get $$t16.1 + local.get $$t19.93 + i32.store16 offset=186 + local.get $$t16.1 + local.get $$t19.94 + i32.store16 offset=188 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 468 + i32.const 0 + i32.sub + i32.const 468 + i32.const 0 + i32.sub + local.set $$t20.3 + local.set $$t20.2 + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.0 + local.get $$t20.1 + local.get $$t20.2 + local.get $$t20.3 + local.get $$t17 + call $strconv.bsearch32 + local.set $$t21 + local.get $$t21 + i32.const 468 + i32.ge_s + local.set $$t22 + local.get $$t22 + if + br $$Block_17 + else + br $$Block_20 + end + end + i32.const 11 + local.set $$current_block + local.get $r + i32.const 65536 + i32.lt_s + local.set $$t23 + local.get $$t23 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 132 + i32.const 0 + i32.sub + i32.const 132 + i32.const 0 + i32.sub + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t24.2 + local.get $$t24.3 + local.get $$t9 + call $strconv.bsearch16 + local.set $$t25 + local.get $$t25 + i32.const 132 + i32.ge_s + local.set $$t26 + local.get $$t26 + if + br $$Block_16 + else + br $$Block_15 + end + end + i32.const 14 + local.set $$current_block + local.get $$t13 + i32.const 1 + i32.or + local.set $$t27 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + local.get $$t27 + i32.mul + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load16_u + local.set $$t29 + local.get $$t29 + local.get $$t9 + i32.lt_u + local.set $$t30 + local.get $$t30 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t13 + i32.const 1 + i32.const -1 + i32.xor + i32.and + local.set $$t31 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + local.get $$t31 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + i32.load16_u + local.set $$t33 + local.get $$t9 + local.get $$t33 + i32.lt_u + local.set $$t34 + local.get $$t34 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 16 + local.set $$current_block + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 2 + local.get $$t25 + i32.mul + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t35.1 + i32.load16_u + local.set $$t36 + local.get $$t36 + local.get $$t9 + i32.eq + i32.eqz + local.set $$t37 + br $$Block_16 + end + local.get $$current_block + i32.const 13 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t37 + end + local.set $$t38 + i32.const 17 + local.set $$current_block + local.get $$t38 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 19 + local.set $$current_block + local.get $r + i32.const 131072 + i32.ge_s + local.set $$t39 + local.get $$t39 + if + br $$Block_21 + else + br $$Block_22 + end + end + i32.const 20 + local.set $$current_block + local.get $$t21 + i32.const 1 + i32.or + local.set $$t40 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + local.get $$t40 + i32.mul + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t42 + local.get $$t17 + i32.lt_u + local.set $$t43 + local.get $$t43 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + i32.const 19 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 21 + local.set $$current_block + local.get $$t21 + i32.const 1 + i32.const -1 + i32.xor + i32.and + local.set $$t44 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + local.get $$t44 + i32.mul + i32.add + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t45.1 + i32.load + local.set $$t46 + local.get $$t17 + local.get $$t46 + i32.lt_u + local.set $$t47 + local.get $$t47 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + i32.const 20 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 22 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 23 + local.set $$current_block + local.get $r + i32.const 65536 + i32.sub + local.set $$t48 + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 95 + i32.const 0 + i32.sub + i32.const 95 + i32.const 0 + i32.sub + local.set $$t49.3 + local.set $$t49.2 + local.set $$t49.1 + local.get $$t49.0 + call $runtime.Block.Release + local.set $$t49.0 + local.get $$t48 + i32.const 65535 + i32.and + local.set $$t50 + local.get $$t49.0 + local.get $$t49.1 + local.get $$t49.2 + local.get $$t49.3 + local.get $$t50 + call $strconv.bsearch16 + local.set $$t51 + local.get $$t51 + i32.const 95 + i32.ge_s + local.set $$t52 + local.get $$t52 + if + br $$Block_24 + else + br $$Block_23 + end + end + i32.const 24 + local.set $$current_block + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.const 2 + local.get $$t51 + i32.mul + i32.add + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $$t53.1 + i32.load16_u + local.set $$t54 + local.get $$t48 + i32.const 65535 + i32.and + local.set $$t55 + local.get $$t54 + local.get $$t55 + i32.eq + i32.eqz + local.set $$t56 + br $$Block_24 + end + local.get $$current_block + i32.const 23 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t56 + end + local.set $$t57 + i32.const 25 + local.set $$current_block + local.get $$t57 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t49.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + ) + (func $strconv.Itoa (param $i i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i64) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $i + i64.extend_i32_s + local.set $$t0 + local.get $$t0 + i32.const 10 + call $strconv.FormatInt + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $strconv.Quote (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + i32.const 34 + i32.const 0 + i32.const 0 + call $strconv.quoteWith + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.get $$t0.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $strconv.appendEscapedRune (param $buf.0 i32) (param $buf.1 i32) (param $buf.2 i32) (param $buf.3 i32) (param $r i32) (param $quote i32) (param $ASCIIonly i32) (param $graphicOnly i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t10.2 i32) + (local $$t10.3 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t19.2 i32) + (local $$t19.3 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t20.2 i32) + (local $$t20.3 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t22.2 i32) + (local $$t22.3 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t27.2 i32) + (local $$t27.3 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t28.2 i32) + (local $$t28.3 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t29.2 i32) + (local $$t29.3 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t30.2 i32) + (local $$t30.3 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t31.2 i32) + (local $$t31.3 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t32.2 i32) + (local $$t32.3 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t33.2 i32) + (local $$t33.3 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t34.2 i32) + (local $$t34.3 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t35.2 i32) + (local $$t35.3 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t36.2 i32) + (local $$t36.3 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t37.2 i32) + (local $$t37.3 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t38.2 i32) + (local $$t38.3 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t46.2 i32) + (local $$t46.3 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t52.2 i32) + (local $$t52.3 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t53.2 i32) + (local $$t53.3 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t59.2 i32) + (local $$t59.3 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t60.2 i32) + (local $$t60.3 i32) + (local $$t61 i32) + (local $$t62.0 i32) + (local $$t62.1 i32) + (local $$t62.2 i32) + (local $$t62.3 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69.0 i32) + (local $$t69.1 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t71.2 i32) + (local $$t71.3 i32) + (local $$t72.0 i32) + (local $$t72.1 i32) + (local $$t72.2 i32) + (local $$t72.3 i32) + (local $$t73 i32) + (local $$t74 i32) + (local $$t75.0 i32) + (local $$t75.1 i32) + (local $$t75.2 i32) + (local $$t75.3 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81.0 i32) + (local $$t81.1 i32) + (local $$t82.0 i32) + (local $$t82.1 i32) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t83.2 i32) + (local $$t83.3 i32) + (local $$t84.0 i32) + (local $$t84.1 i32) + (local $$t84.2 i32) + (local $$t84.3 i32) + (local $$t85 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92.0 i32) + (local $$t92.1 i32) + (local $$t93.0 i32) + (local $$t93.1 i32) + (local $$t94.0 i32) + (local $$t94.1 i32) + (local $$t94.2 i32) + (local $$t94.3 i32) + (local $$t95.0 i32) + (local $$t95.1 i32) + (local $$t95.2 i32) + (local $$t95.3 i32) + (local $$t96 i32) + (local $$t97 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_38 + block $$Block_37 + block $$Block_36 + block $$Block_35 + block $$Block_34 + block $$Block_33 + block $$Block_32 + block $$Block_31 + block $$Block_30 + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $quote + local.set $$t1 + local.get $r + local.get $$t1 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.const 92 + i32.store8 align=1 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + local.get $$t5.3 + call $$u8.$slice.append + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $r + i32.const 255 + i32.and + local.set $$t7 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + local.get $$t7 + i32.store8 align=1 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t10.3 + local.set $$t10.2 + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + local.get $$t10.0 + local.get $$t10.1 + local.get $$t10.2 + local.get $$t10.3 + call $$u8.$slice.append + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ASCIIonly + if + br $$Block_3 + else + br $$Block_5 + end + end + i32.const 3 + local.set $$current_block + local.get $r + i32.const 92 + i32.eq + local.set $$t12 + local.get $$t12 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $r + i32.const 128 + i32.lt_s + local.set $$t13 + local.get $$t13 + if + br $$Block_7 + else + br $$Block_4 + end + end + i32.const 5 + local.set $$current_block + local.get $r + i32.const 7 + i32.eq + local.set $$t14 + local.get $$t14 + if + br $$Block_12 + else + br $$Block_14 + end + end + i32.const 6 + local.set $$current_block + local.get $r + call $strconv.IsPrint + local.set $$t15 + local.get $$t15 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $r + i32.const 255 + i32.and + local.set $$t16 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + local.get $$t16 + i32.store8 align=1 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t19.3 + local.set $$t19.2 + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + local.get $$t19.0 + local.get $$t19.1 + local.get $$t19.2 + local.get $$t19.3 + call $$u8.$slice.append + local.set $$t20.3 + local.set $$t20.2 + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + local.get $$t20.2 + local.get $$t20.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $r + call $strconv.IsPrint + local.set $$t21 + local.get $$t21 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t22.3 + local.set $$t22.2 + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.0 + local.get $$t22.1 + local.get $$t22.2 + local.get $$t22.3 + local.get $r + call $unicode$utf8.EncodeRune + local.set $$t23 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.get $$t23 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t24.2 + local.get $$t24.3 + call $$u8.$slice.append + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.0 + call $runtime.Block.Retain + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $graphicOnly + if + br $$Block_10 + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 11 + local.set $$current_block + local.get $r + call $strconv.isInGraphicList + local.set $$t26 + local.get $$t26 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 13 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + local.get $$t27.2 + local.get $$t27.3 + else + local.get $$current_block + i32.const 14 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + local.get $$t28.2 + local.get $$t28.3 + else + local.get $$current_block + i32.const 16 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + local.get $$t29.2 + local.get $$t29.3 + else + local.get $$current_block + i32.const 18 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + local.get $$t30.2 + local.get $$t30.3 + else + local.get $$current_block + i32.const 20 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t31.0 + call $runtime.Block.Retain + local.get $$t31.1 + local.get $$t31.2 + local.get $$t31.3 + else + local.get $$current_block + i32.const 22 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t32.0 + call $runtime.Block.Retain + local.get $$t32.1 + local.get $$t32.2 + local.get $$t32.3 + else + local.get $$current_block + i32.const 24 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t33.0 + call $runtime.Block.Retain + local.get $$t33.1 + local.get $$t33.2 + local.get $$t33.3 + else + local.get $$current_block + i32.const 27 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t34.0 + call $runtime.Block.Retain + local.get $$t34.1 + local.get $$t34.2 + local.get $$t34.3 + else + local.get $$current_block + i32.const 33 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t35.0 + call $runtime.Block.Retain + local.get $$t35.1 + local.get $$t35.2 + local.get $$t35.3 + else + local.get $$current_block + i32.const 36 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t36.0 + call $runtime.Block.Retain + local.get $$t36.1 + local.get $$t36.2 + local.get $$t36.3 + else + local.get $$t37.0 + call $runtime.Block.Retain + local.get $$t37.1 + local.get $$t37.2 + local.get $$t37.3 + end + end + end + end + end + end + end + end + end + end + local.set $$t38.3 + local.set $$t38.2 + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + i32.const 12 + local.set $$current_block + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + local.get $$t38.2 + local.get $$t38.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41882 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t27.3 + local.set $$t27.2 + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 14 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41884 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t28.3 + local.set $$t28.2 + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 15 + local.set $$current_block + local.get $r + i32.const 8 + i32.eq + local.set $$t39 + local.get $$t39 + if + i32.const 14 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_16 + end + end + i32.const 16 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41886 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t29.3 + local.set $$t29.2 + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 17 + local.set $$current_block + local.get $r + i32.const 12 + i32.eq + local.set $$t40 + local.get $$t40 + if + i32.const 16 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_18 + end + end + i32.const 18 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41888 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t30.3 + local.set $$t30.2 + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + local.get $r + i32.const 10 + i32.eq + local.set $$t41 + local.get $$t41 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_20 + end + end + i32.const 20 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41890 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t31.3 + local.set $$t31.2 + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 21 + local.set $$current_block + local.get $r + i32.const 13 + i32.eq + local.set $$t42 + local.get $$t42 + if + i32.const 20 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_22 + end + end + i32.const 22 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41892 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t32.3 + local.set $$t32.2 + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 23 + local.set $$current_block + local.get $r + i32.const 9 + i32.eq + local.set $$t43 + local.get $$t43 + if + i32.const 22 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_24 + end + end + i32.const 24 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41894 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t33.3 + local.set $$t33.2 + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 25 + local.set $$current_block + local.get $r + i32.const 11 + i32.eq + local.set $$t44 + local.get $$t44 + if + i32.const 24 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_25 + end + end + i32.const 26 + local.set $$current_block + local.get $r + i32.const 32 + i32.lt_s + local.set $$t45 + local.get $$t45 + if + br $$Block_26 + else + br $$Block_28 + end + end + i32.const 27 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41896 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t46.3 + local.set $$t46.2 + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $r + i32.const 255 + i32.and + local.set $$t47 + local.get $$t47 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t48 + i32.const 40661 + local.get $$t48 + i32.add + i32.load8_u align=1 + local.set $$t49 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + local.get $$t49 + i32.store8 align=1 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t52.3 + local.set $$t52.2 + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t46.0 + local.get $$t46.1 + local.get $$t46.2 + local.get $$t46.3 + local.get $$t52.0 + local.get $$t52.1 + local.get $$t52.2 + local.get $$t52.3 + call $$u8.$slice.append + local.set $$t53.3 + local.set $$t53.2 + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $r + i32.const 255 + i32.and + local.set $$t54 + local.get $$t54 + i32.const 15 + i32.and + local.set $$t55 + i32.const 40661 + local.get $$t55 + i32.add + i32.load8_u align=1 + local.set $$t56 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $$t57.0 + call $runtime.Block.Retain + local.get $$t57.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + local.get $$t58.1 + local.get $$t56 + i32.store8 align=1 + local.get $$t57.0 + call $runtime.Block.Retain + local.get $$t57.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t59.3 + local.set $$t59.2 + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t53.0 + local.get $$t53.1 + local.get $$t53.2 + local.get $$t53.3 + local.get $$t59.0 + local.get $$t59.1 + local.get $$t59.2 + local.get $$t59.3 + call $$u8.$slice.append + local.set $$t34.3 + local.set $$t34.2 + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 28 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41898 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t60.3 + local.set $$t60.2 + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + br $$Block_32 + end + i32.const 29 + local.set $$current_block + local.get $r + i32.const 1114111 + i32.gt_s + local.set $$t61 + local.get $$t61 + if + i32.const 28 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_30 + end + end + i32.const 30 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41898 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t62.3 + local.set $$t62.2 + local.set $$t62.1 + local.get $$t62.0 + call $runtime.Block.Release + local.set $$t62.0 + br $$Block_35 + end + i32.const 31 + local.set $$current_block + local.get $r + i32.const 65536 + i32.lt_s + local.set $$t63 + local.get $$t63 + if + i32.const 30 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_33 + end + end + i32.const 32 + local.set $$current_block + local.get $$t64 + local.set $$t65 + i32.const 65533 + local.get $$t65 + i32.shr_s + local.set $$t66 + local.get $$t66 + i32.const 15 + i32.and + local.set $$t67 + i32.const 40661 + local.get $$t67 + i32.add + i32.load8_u align=1 + local.set $$t68 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t69.1 + local.get $$t69.0 + call $runtime.Block.Release + local.set $$t69.0 + local.get $$t69.0 + call $runtime.Block.Retain + local.get $$t69.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + local.get $$t70.1 + local.get $$t68 + i32.store8 align=1 + local.get $$t69.0 + call $runtime.Block.Retain + local.get $$t69.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t71.3 + local.set $$t71.2 + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $$t35.0 + local.get $$t35.1 + local.get $$t35.2 + local.get $$t35.3 + local.get $$t71.0 + local.get $$t71.1 + local.get $$t71.2 + local.get $$t71.3 + call $$u8.$slice.append + local.set $$t72.3 + local.set $$t72.2 + local.set $$t72.1 + local.get $$t72.0 + call $runtime.Block.Release + local.set $$t72.0 + local.get $$t64 + i32.const 4 + i32.sub + local.set $$t73 + br $$Block_32 + end + local.get $$current_block + i32.const 28 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t60.0 + call $runtime.Block.Retain + local.get $$t60.1 + local.get $$t60.2 + local.get $$t60.3 + else + local.get $$t72.0 + call $runtime.Block.Retain + local.get $$t72.1 + local.get $$t72.2 + local.get $$t72.3 + end + local.set $$t35.3 + local.set $$t35.2 + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$current_block + i32.const 28 + i32.eq + if(result i32) + i32.const 12 + else + local.get $$t73 + end + local.set $$t64 + i32.const 33 + local.set $$current_block + local.get $$t64 + i32.const 0 + i32.ge_s + local.set $$t74 + local.get $$t74 + if + i32.const 32 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 34 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 41900 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t75.3 + local.set $$t75.2 + local.set $$t75.1 + local.get $$t75.0 + call $runtime.Block.Release + local.set $$t75.0 + br $$Block_37 + end + i32.const 35 + local.set $$current_block + local.get $$t76 + local.set $$t77 + local.get $r + local.get $$t77 + i32.shr_s + local.set $$t78 + local.get $$t78 + i32.const 15 + i32.and + local.set $$t79 + i32.const 40661 + local.get $$t79 + i32.add + i32.load8_u align=1 + local.set $$t80 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t81.1 + local.get $$t81.0 + call $runtime.Block.Release + local.set $$t81.0 + local.get $$t81.0 + call $runtime.Block.Retain + local.get $$t81.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t82.1 + local.get $$t82.0 + call $runtime.Block.Release + local.set $$t82.0 + local.get $$t82.1 + local.get $$t80 + i32.store8 align=1 + local.get $$t81.0 + call $runtime.Block.Retain + local.get $$t81.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t83.3 + local.set $$t83.2 + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t36.0 + local.get $$t36.1 + local.get $$t36.2 + local.get $$t36.3 + local.get $$t83.0 + local.get $$t83.1 + local.get $$t83.2 + local.get $$t83.3 + call $$u8.$slice.append + local.set $$t84.3 + local.set $$t84.2 + local.set $$t84.1 + local.get $$t84.0 + call $runtime.Block.Release + local.set $$t84.0 + local.get $$t76 + i32.const 4 + i32.sub + local.set $$t85 + br $$Block_35 + end + local.get $$current_block + i32.const 30 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t62.0 + call $runtime.Block.Retain + local.get $$t62.1 + local.get $$t62.2 + local.get $$t62.3 + else + local.get $$t84.0 + call $runtime.Block.Retain + local.get $$t84.1 + local.get $$t84.2 + local.get $$t84.3 + end + local.set $$t36.3 + local.set $$t36.2 + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$current_block + i32.const 30 + i32.eq + if(result i32) + i32.const 12 + else + local.get $$t85 + end + local.set $$t76 + i32.const 36 + local.set $$current_block + local.get $$t76 + i32.const 0 + i32.ge_s + local.set $$t86 + local.get $$t86 + if + i32.const 35 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 37 + local.set $$current_block + local.get $$t87 + local.set $$t88 + local.get $r + local.get $$t88 + i32.shr_s + local.set $$t89 + local.get $$t89 + i32.const 15 + i32.and + local.set $$t90 + i32.const 40661 + local.get $$t90 + i32.add + i32.load8_u align=1 + local.set $$t91 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t92.1 + local.get $$t92.0 + call $runtime.Block.Release + local.set $$t92.0 + local.get $$t92.0 + call $runtime.Block.Retain + local.get $$t92.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t93.1 + local.get $$t93.0 + call $runtime.Block.Release + local.set $$t93.0 + local.get $$t93.1 + local.get $$t91 + i32.store8 align=1 + local.get $$t92.0 + call $runtime.Block.Retain + local.get $$t92.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t94.3 + local.set $$t94.2 + local.set $$t94.1 + local.get $$t94.0 + call $runtime.Block.Release + local.set $$t94.0 + local.get $$t37.0 + local.get $$t37.1 + local.get $$t37.2 + local.get $$t37.3 + local.get $$t94.0 + local.get $$t94.1 + local.get $$t94.2 + local.get $$t94.3 + call $$u8.$slice.append + local.set $$t95.3 + local.set $$t95.2 + local.set $$t95.1 + local.get $$t95.0 + call $runtime.Block.Release + local.set $$t95.0 + local.get $$t87 + i32.const 4 + i32.sub + local.set $$t96 + br $$Block_37 + end + local.get $$current_block + i32.const 34 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + local.get $$t75.2 + local.get $$t75.3 + else + local.get $$t95.0 + call $runtime.Block.Retain + local.get $$t95.1 + local.get $$t95.2 + local.get $$t95.3 + end + local.set $$t37.3 + local.set $$t37.2 + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$current_block + i32.const 34 + i32.eq + if(result i32) + i32.const 28 + else + local.get $$t96 + end + local.set $$t87 + i32.const 38 + local.set $$current_block + local.get $$t87 + i32.const 0 + i32.ge_s + local.set $$t97 + local.get $$t97 + if + i32.const 37 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t62.0 + call $runtime.Block.Release + local.get $$t69.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + local.get $$t72.0 + call $runtime.Block.Release + local.get $$t75.0 + call $runtime.Block.Release + local.get $$t81.0 + call $runtime.Block.Release + local.get $$t82.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + local.get $$t84.0 + call $runtime.Block.Release + local.get $$t92.0 + call $runtime.Block.Release + local.get $$t93.0 + call $runtime.Block.Release + local.get $$t94.0 + call $runtime.Block.Release + local.get $$t95.0 + call $runtime.Block.Release + ) + (func $$u8.$slice.copy (param $d.0 i32) (param $d.1 i32) (param $d.2 i32) (param $d.3 i32) (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $s.3 i32) (result i32) + (local $item i32) + (local $count i32) + (local $dp i32) + (local $sp i32) + (local $item_size i32) + local.get $d.2 + local.get $s.2 + i32.gt_u + if + local.get $s.2 + local.set $count + else + local.get $d.2 + local.set $count + end + local.get $count + local.get $d.1 + local.get $s.1 + i32.lt_u + if + local.get $d.1 + local.set $dp + local.get $s.1 + local.set $sp + i32.const 1 + local.set $item_size + else + local.get $count + i32.const 1 + i32.sub + i32.const 1 + i32.mul + local.set $item_size + local.get $d.1 + local.get $item_size + i32.add + local.set $dp + local.get $s.1 + local.get $item_size + i32.add + local.set $sp + i32.const 0 + i32.const 1 + i32.sub + local.set $item_size + end + block $b0 + loop $l0 + local.get $count + i32.eqz + if + br $b0 + else + local.get $sp + i32.load8_u align=1 + local.set $item + local.get $dp + local.get $item + i32.store8 align=1 + local.get $sp + local.get $item_size + i32.add + local.set $sp + local.get $dp + local.get $item_size + i32.add + local.set $dp + local.get $count + i32.const 1 + i32.sub + local.set $count + br $l0 + end + end + end + ) + (func $strconv.appendQuotedWith (param $buf.0 i32) (param $buf.1 i32) (param $buf.2 i32) (param $buf.3 i32) (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $quote i32) (param $ASCIIonly i32) (param $graphicOnly i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + (local $$t13.3 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t16.2 i32) + (local $$t16.3 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t18.2 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t26.2 i32) + (local $$t26.3 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t27.2 i32) + (local $$t27.3 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t28.2 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t31.2 i32) + (local $$t31.3 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t32.2 i32) + (local $$t32.3 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t39.2 i32) + (local $$t39.3 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t45.2 i32) + (local $$t45.3 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t46.2 i32) + (local $$t46.3 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t52.2 i32) + (local $$t52.3 i32) + (local $$t53 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 0 + end + i32.const 0 + local.set $$current_block + local.get $buf.3 + local.set $$t0 + local.get $buf.2 + local.set $$t1 + local.get $$t0 + local.get $$t1 + i32.sub + local.set $$t2 + local.get $s.2 + local.set $$t3 + local.get $$t2 + local.get $$t3 + i32.lt_s + local.set $$t4 + local.get $$t4 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $buf.2 + local.set $$t5 + local.get $buf.2 + local.set $$t6 + local.get $$t6 + i32.const 1 + i32.add + local.set $$t7 + local.get $s.2 + local.set $$t8 + local.get $$t7 + local.get $$t8 + i32.add + local.set $$t9 + local.get $$t9 + i32.const 1 + i32.add + local.set $$t10 + local.get $$t10 + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t10 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.get $$t5 + local.get $$t10 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + call $$u8.$slice.copy + local.set $$t12 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32 i32 i32 i32) + local.get $buf.0 + call $runtime.Block.Retain + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + else + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + end + local.set $$t13.3 + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + i32.const 2 + local.set $$current_block + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + local.get $quote + i32.store8 align=1 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t16.3 + local.set $$t16.2 + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t13.0 + local.get $$t13.1 + local.get $$t13.2 + local.get $$t13.3 + local.get $$t16.0 + local.get $$t16.1 + local.get $$t16.2 + local.get $$t16.3 + call $$u8.$slice.append + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + br $$Block_4 + end + i32.const 3 + local.set $$current_block + local.get $$t18.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t19 + local.get $$t19 + local.set $$t20 + local.get $$t20 + i32.const 128 + i32.ge_s + local.set $$t21 + local.get $$t21 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 4 + local.set $$current_block + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + local.get $quote + i32.store8 align=1 + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t24.2 + local.get $$t24.3 + call $$u8.$slice.append + local.set $$t26.3 + local.set $$t26.2 + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + local.get $$t26.2 + local.get $$t26.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + local.get $$t17.2 + local.get $$t17.3 + else + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + local.get $$t27.2 + local.get $$t27.3 + end + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$current_block + i32.const 2 + i32.eq + if(result i32 i32 i32) + local.get $s.0 + call $runtime.Block.Retain + local.get $s.1 + local.get $s.2 + else + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + local.get $$t28.2 + end + local.set $$t18.2 + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + i32.const 5 + local.set $$current_block + local.get $$t18.2 + local.set $$t29 + local.get $$t29 + i32.const 0 + i32.gt_s + local.set $$t30 + local.get $$t30 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t31.0 + call $runtime.Block.Retain + local.get $$t31.1 + local.get $$t31.2 + local.get $$t31.3 + else + local.get $$t32.0 + call $runtime.Block.Retain + local.get $$t32.1 + local.get $$t32.2 + local.get $$t32.3 + end + local.set $$t27.3 + local.set $$t27.2 + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + i32.const 6 + local.set $$current_block + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + local.get $$t33 + i32.add + local.get $$t18.2 + local.get $$t33 + i32.sub + local.set $$t28.2 + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + i32.const 7 + local.set $$current_block + local.get $$t18.0 + local.get $$t18.1 + local.get $$t18.2 + call $unicode$utf8.DecodeRuneInString + local.set $$t34.1 + local.set $$t34.0 + local.get $$t34.0 + local.set $$t35 + local.get $$t34.1 + local.set $$t36 + br $$Block_7 + end + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t36 + end + local.set $$t33 + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + local.get $$t20 + else + local.get $$t35 + end + local.set $$t37 + i32.const 8 + local.set $$current_block + local.get $$t33 + i32.const 1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + i32.const 0 + i32.const 41896 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t39.3 + local.set $$t39.2 + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t18.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t40 + local.get $$t40 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t41 + i32.const 40661 + local.get $$t41 + i32.add + i32.load8_u align=1 + local.set $$t42 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + local.get $$t42 + i32.store8 align=1 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t45.3 + local.set $$t45.2 + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t39.0 + local.get $$t39.1 + local.get $$t39.2 + local.get $$t39.3 + local.get $$t45.0 + local.get $$t45.1 + local.get $$t45.2 + local.get $$t45.3 + call $$u8.$slice.append + local.set $$t46.3 + local.set $$t46.2 + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t18.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t47 + local.get $$t47 + i32.const 15 + i32.and + local.set $$t48 + i32.const 40661 + local.get $$t48 + i32.add + i32.load8_u align=1 + local.set $$t49 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + local.get $$t49 + i32.store8 align=1 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t52.3 + local.set $$t52.2 + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t46.0 + local.get $$t46.1 + local.get $$t46.2 + local.get $$t46.3 + local.get $$t52.0 + local.get $$t52.1 + local.get $$t52.2 + local.get $$t52.3 + call $$u8.$slice.append + local.set $$t31.3 + local.set $$t31.2 + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.get $$t37 + local.get $quote + local.get $ASCIIonly + local.get $graphicOnly + call $strconv.appendEscapedRune + local.set $$t32.3 + local.set $$t32.2 + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t37 + i32.const 65533 + i32.eq + local.set $$t53 + local.get $$t53 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + ) + (func $$u8.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $$strconv.decimalSlice.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 21 + call_indirect 0 (type $$onFree) + ) + (func $strconv.bsearch16 (param $a.0 i32) (param $a.1 i32) (param $a.2 i32) (param $a.3 i32) (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + local.get $a.2 + local.set $$t0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $$t1 + local.get $$t2 + i32.sub + local.set $$t3 + local.get $$t3 + i64.const 1 + i32.wrap_i64 + i32.shr_s + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.add + local.set $$t5 + local.get $a.0 + call $runtime.Block.Retain + local.get $a.1 + i32.const 2 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load16_u + local.set $$t7 + local.get $$t7 + local.get $x + i32.lt_u + local.set $$t8 + local.get $$t8 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t9 + else + local.get $$t2 + end + end + local.set $$t2 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $$t0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t1 + else + local.get $$t5 + end + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t2 + local.get $$t1 + i32.lt_s + local.set $$t10 + local.get $$t10 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t9 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 5 + local.set $$current_block + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $strconv.bsearch32 (param $a.0 i32) (param $a.1 i32) (param $a.2 i32) (param $a.3 i32) (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + local.get $a.2 + local.set $$t0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $$t1 + local.get $$t2 + i32.sub + local.set $$t3 + local.get $$t3 + i64.const 1 + i32.wrap_i64 + i32.shr_s + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.add + local.set $$t5 + local.get $a.0 + call $runtime.Block.Retain + local.get $a.1 + i32.const 4 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t7 + local.get $x + i32.lt_u + local.set $$t8 + local.get $$t8 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t9 + else + local.get $$t2 + end + end + local.set $$t2 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $$t0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t1 + else + local.get $$t5 + end + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t2 + local.get $$t1 + i32.lt_s + local.set $$t10 + local.get $$t10 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t9 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 5 + local.set $$current_block + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $strconv.formatBits (param $dst.0 i32) (param $dst.1 i32) (param $dst.2 i32) (param $dst.3 i32) (param $u i64) (param $base i32) (param $neg i32) (param $append_ i32) (result i32 i32 i32 i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$ret_1.0 i32) + (local $$ret_1.1 i32) + (local $$ret_1.2 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i64) + (local $$t4 i64) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i64) + (local $$t13 i64) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i64) + (local $$t18 i64) + (local $$t19 i64) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64.0 i32) + (local $$t64.1 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i64) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i64) + (local $$t74 i32) + (local $$t75 i32) + (local $$t76.0 i32) + (local $$t76.1 i32) + (local $$t77 i64) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i64) + (local $$t82 i64) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t84 i32) + (local $$t85 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88 i32) + (local $$t89 i64) + (local $$t90 i64) + (local $$t91.0 i32) + (local $$t91.1 i32) + (local $$t92 i64) + (local $$t93 i64) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96.0 i32) + (local $$t96.1 i32) + (local $$t97 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100 i32) + (local $$t101.0 i32) + (local $$t101.1 i32) + (local $$t102 i32) + (local $$t103.0 i32) + (local $$t103.1 i32) + (local $$t103.2 i32) + (local $$t103.3 i32) + (local $$t104.0 i32) + (local $$t104.1 i32) + (local $$t104.2 i32) + (local $$t104.3 i32) + (local $$t105.0 i32) + (local $$t105.1 i32) + (local $$t105.2 i32) + (local $$t105.3 i32) + (local $$t106.0 i32) + (local $$t106.1 i32) + (local $$t106.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_30 + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 0 + end + i32.const 0 + local.set $$current_block + local.get $base + i32.const 2 + i32.lt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 41948 + i32.const 41 + i32.const 41989 + i32.const 12 + call $$runtime.panic_ + end + i32.const 2 + local.set $$current_block + i32.const 81 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 65 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $neg + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $base + i32.const 36 + i32.gt_s + local.set $$t2 + local.get $$t2 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + i64.const 0 + local.get $u + i64.sub + local.set $$t3 + br $$Block_4 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i64) + local.get $u + else + local.get $$t3 + end + local.set $$t4 + i32.const 5 + local.set $$current_block + local.get $base + i32.const 10 + i32.eq + local.set $$t5 + local.get $$t5 + if + br $$Block_5 + else + br $$Block_7 + end + end + i32.const 6 + local.set $$current_block + i32.const 1 + if + br $$Block_10 + else + br $$Block_8 + end + end + local.get $$current_block + i32.const 16 + i32.eq + if(result i32) + local.get $$t6 + else + local.get $$current_block + i32.const 22 + i32.eq + if(result i32) + local.get $$t7 + else + local.get $$current_block + i32.const 18 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t9 + end + end + end + local.set $$t10 + i32.const 7 + local.set $$current_block + local.get $neg + if + br $$Block_26 + else + br $$Block_27 + end + end + i32.const 8 + local.set $$current_block + local.get $base + call $strconv.isPowerOfTwo + local.set $$t11 + local.get $$t11 + if + br $$Block_18 + else + br $$Block_19 + end + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t12 + end + local.set $$t13 + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t14 + end + local.set $$t15 + i32.const 9 + local.set $$current_block + local.get $$t13 + i32.wrap_i64 + local.set $$t16 + br $$Block_16 + end + i32.const 10 + local.set $$current_block + local.get $$t12 + i64.const 1000000000 + i64.div_u + local.set $$t17 + local.get $$t17 + i64.const 1000000000 + i64.mul + local.set $$t18 + local.get $$t12 + local.get $$t18 + i64.sub + local.set $$t19 + local.get $$t19 + i32.wrap_i64 + local.set $$t20 + br $$Block_13 + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t17 + end + local.set $$t12 + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t21 + end + local.set $$t14 + i32.const 11 + local.set $$current_block + local.get $$t12 + i64.const 1000000000 + i64.ge_u + local.set $$t22 + local.get $$t22 + if + i32.const 10 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + local.get $$t23 + i32.const 100 + i32.rem_u + local.set $$t24 + local.get $$t24 + i32.const 2 + i32.mul + local.set $$t25 + local.get $$t23 + i32.const 100 + i32.div_u + local.set $$t26 + local.get $$t27 + i32.const 2 + i32.sub + local.set $$t28 + local.get $$t28 + i32.const 1 + i32.add + local.set $$t29 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t29 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t25 + i32.const 1 + i32.add + local.set $$t31 + i32.const 42001 + local.get $$t31 + i32.add + i32.load8_u align=1 + local.set $$t32 + local.get $$t30.1 + local.get $$t32 + i32.store8 align=1 + local.get $$t28 + i32.const 0 + i32.add + local.set $$t33 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t33 + i32.mul + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t25 + i32.const 0 + i32.add + local.set $$t35 + i32.const 42001 + local.get $$t35 + i32.add + i32.load8_u align=1 + local.set $$t36 + local.get $$t34.1 + local.get $$t36 + i32.store8 align=1 + local.get $$t37 + i32.const 1 + i32.sub + local.set $$t38 + br $$Block_13 + end + i32.const 13 + local.set $$current_block + local.get $$t27 + i32.const 1 + i32.sub + local.set $$t21 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t21 + i32.mul + i32.add + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t23 + i32.const 2 + i32.mul + local.set $$t40 + local.get $$t40 + i32.const 1 + i32.add + local.set $$t41 + i32.const 42001 + local.get $$t41 + i32.add + i32.load8_u align=1 + local.set $$t42 + local.get $$t39.1 + local.get $$t42 + i32.store8 align=1 + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + local.get $$t14 + else + local.get $$t28 + end + local.set $$t27 + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + local.get $$t20 + else + local.get $$t26 + end + local.set $$t23 + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + i32.const 4 + else + local.get $$t38 + end + local.set $$t37 + i32.const 14 + local.set $$current_block + local.get $$t37 + i32.const 0 + i32.gt_s + local.set $$t43 + local.get $$t43 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t44 + i32.const 100 + i32.rem_u + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.mul + local.set $$t46 + local.get $$t44 + i32.const 100 + i32.div_u + local.set $$t47 + local.get $$t48 + i32.const 2 + i32.sub + local.set $$t49 + local.get $$t49 + i32.const 1 + i32.add + local.set $$t50 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t50 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t46 + i32.const 1 + i32.add + local.set $$t52 + i32.const 42001 + local.get $$t52 + i32.add + i32.load8_u align=1 + local.set $$t53 + local.get $$t51.1 + local.get $$t53 + i32.store8 align=1 + local.get $$t49 + i32.const 0 + i32.add + local.set $$t54 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t54 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t46 + i32.const 0 + i32.add + local.set $$t56 + i32.const 42001 + local.get $$t56 + i32.add + i32.load8_u align=1 + local.set $$t57 + local.get $$t55.1 + local.get $$t57 + i32.store8 align=1 + br $$Block_16 + end + i32.const 16 + local.set $$current_block + local.get $$t44 + i32.const 2 + i32.mul + local.set $$t58 + local.get $$t48 + i32.const 1 + i32.sub + local.set $$t6 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t6 + i32.mul + i32.add + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t58 + i32.const 1 + i32.add + local.set $$t60 + i32.const 42001 + local.get $$t60 + i32.add + i32.load8_u align=1 + local.set $$t61 + local.get $$t59.1 + local.get $$t61 + i32.store8 align=1 + local.get $$t44 + i32.const 10 + i32.ge_u + local.set $$t62 + local.get $$t62 + if + br $$Block_17 + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t15 + else + local.get $$t49 + end + local.set $$t48 + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t16 + else + local.get $$t47 + end + local.set $$t44 + i32.const 17 + local.set $$current_block + local.get $$t44 + i32.const 100 + i32.ge_u + local.set $$t63 + local.get $$t63 + if + i32.const 15 + local.set $$block_selector + br $$BlockDisp + else + i32.const 16 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 18 + local.set $$current_block + local.get $$t6 + i32.const 1 + i32.sub + local.set $$t8 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t8 + i32.mul + i32.add + local.set $$t64.1 + local.get $$t64.0 + call $runtime.Block.Release + local.set $$t64.0 + i32.const 42001 + local.get $$t58 + i32.add + i32.load8_u align=1 + local.set $$t65 + local.get $$t64.1 + local.get $$t65 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + local.get $base + local.set $$t66 + local.get $$t66 + call $math$bits.TrailingZeros + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t68 + i32.const 7 + i32.and + local.set $$t69 + local.get $base + i64.extend_i32_u + local.set $$t70 + local.get $base + local.set $$t71 + local.get $$t71 + i32.const 1 + i32.sub + local.set $$t72 + br $$Block_22 + end + i32.const 20 + local.set $$current_block + local.get $base + i64.extend_i32_u + local.set $$t73 + br $$Block_25 + end + i32.const 21 + local.set $$current_block + local.get $$t74 + i32.const 1 + i32.sub + local.set $$t75 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t75 + i32.mul + i32.add + local.set $$t76.1 + local.get $$t76.0 + call $runtime.Block.Release + local.set $$t76.0 + local.get $$t77 + i32.wrap_i64 + local.set $$t78 + local.get $$t78 + local.get $$t72 + i32.and + local.set $$t79 + i32.const 42201 + local.get $$t79 + i32.add + i32.load8_u align=1 + local.set $$t80 + local.get $$t76.1 + local.get $$t80 + i32.store8 align=1 + local.get $$t69 + i64.extend_i32_u + local.set $$t81 + local.get $$t77 + local.get $$t81 + i64.shr_u + local.set $$t82 + br $$Block_22 + end + i32.const 22 + local.set $$current_block + local.get $$t74 + i32.const 1 + i32.sub + local.set $$t7 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t7 + i32.mul + i32.add + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t77 + i32.wrap_i64 + local.set $$t84 + i32.const 42201 + local.get $$t84 + i32.add + i32.load8_u align=1 + local.set $$t85 + local.get $$t83.1 + local.get $$t85 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 19 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t82 + end + local.set $$t77 + local.get $$current_block + i32.const 19 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t75 + end + local.set $$t74 + i32.const 23 + local.set $$current_block + local.get $$t77 + local.get $$t70 + i64.ge_u + local.set $$t86 + local.get $$t86 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + i32.const 22 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 24 + local.set $$current_block + local.get $$t87 + i32.const 1 + i32.sub + local.set $$t88 + local.get $$t89 + local.get $$t73 + i64.div_u + local.set $$t90 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t88 + i32.mul + i32.add + local.set $$t91.1 + local.get $$t91.0 + call $runtime.Block.Release + local.set $$t91.0 + local.get $$t90 + local.get $$t73 + i64.mul + local.set $$t92 + local.get $$t89 + local.get $$t92 + i64.sub + local.set $$t93 + local.get $$t93 + i32.wrap_i64 + local.set $$t94 + i32.const 42201 + local.get $$t94 + i32.add + i32.load8_u align=1 + local.set $$t95 + local.get $$t91.1 + local.get $$t95 + i32.store8 align=1 + br $$Block_25 + end + i32.const 25 + local.set $$current_block + local.get $$t87 + i32.const 1 + i32.sub + local.set $$t9 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t9 + i32.mul + i32.add + local.set $$t96.1 + local.get $$t96.0 + call $runtime.Block.Release + local.set $$t96.0 + local.get $$t89 + i32.wrap_i64 + local.set $$t97 + i32.const 42201 + local.get $$t97 + i32.add + i32.load8_u align=1 + local.set $$t98 + local.get $$t96.1 + local.get $$t98 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 20 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t90 + end + local.set $$t89 + local.get $$current_block + i32.const 20 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t88 + end + local.set $$t87 + i32.const 26 + local.set $$current_block + local.get $$t89 + local.get $$t73 + i64.ge_u + local.set $$t99 + local.get $$t99 + if + i32.const 24 + local.set $$block_selector + br $$BlockDisp + else + i32.const 25 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 27 + local.set $$current_block + local.get $$t10 + i32.const 1 + i32.sub + local.set $$t100 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t100 + i32.mul + i32.add + local.set $$t101.1 + local.get $$t101.0 + call $runtime.Block.Release + local.set $$t101.0 + local.get $$t101.1 + i32.const 45 + i32.store8 align=1 + br $$Block_27 + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + local.get $$t10 + else + local.get $$t100 + end + local.set $$t102 + i32.const 28 + local.set $$current_block + local.get $append_ + if + br $$Block_28 + else + br $$Block_29 + end + end + i32.const 29 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t102 + i32.mul + i32.add + i32.const 65 + local.get $$t102 + i32.sub + i32.const 65 + local.get $$t102 + i32.sub + local.set $$t103.3 + local.set $$t103.2 + local.set $$t103.1 + local.get $$t103.0 + call $runtime.Block.Release + local.set $$t103.0 + local.get $dst.0 + local.get $dst.1 + local.get $dst.2 + local.get $dst.3 + local.get $$t103.0 + local.get $$t103.1 + local.get $$t103.2 + local.get $$t103.3 + call $$u8.$slice.append + local.set $$t104.3 + local.set $$t104.2 + local.set $$t104.1 + local.get $$t104.0 + call $runtime.Block.Release + local.set $$t104.0 + local.get $$t104.0 + call $runtime.Block.Retain + local.get $$t104.1 + local.get $$t104.2 + local.get $$t104.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.set $$ret_1.2 + local.set $$ret_1.1 + local.get $$ret_1.0 + call $runtime.Block.Release + local.set $$ret_1.0 + br $$BlockFnBody + end + i32.const 30 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t102 + i32.mul + i32.add + i32.const 65 + local.get $$t102 + i32.sub + i32.const 65 + local.get $$t102 + i32.sub + local.set $$t105.3 + local.set $$t105.2 + local.set $$t105.1 + local.get $$t105.0 + call $runtime.Block.Release + local.set $$t105.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t105.0 + local.get $$t105.1 + local.get $$t105.2 + call $$string.appendstr + local.set $$t106.2 + local.set $$t106.1 + local.get $$t106.0 + call $runtime.Block.Release + local.set $$t106.0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + local.get $$t106.0 + call $runtime.Block.Retain + local.get $$t106.1 + local.get $$t106.2 + local.set $$ret_1.2 + local.set $$ret_1.1 + local.get $$ret_1.0 + call $runtime.Block.Release + local.set $$ret_1.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_1.0 + call $runtime.Block.Retain + local.get $$ret_1.1 + local.get $$ret_1.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$ret_1.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t64.0 + call $runtime.Block.Release + local.get $$t76.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + local.get $$t91.0 + call $runtime.Block.Release + local.get $$t96.0 + call $runtime.Block.Release + local.get $$t101.0 + call $runtime.Block.Release + local.get $$t103.0 + call $runtime.Block.Release + local.get $$t104.0 + call $runtime.Block.Release + local.get $$t105.0 + call $runtime.Block.Release + local.get $$t106.0 + call $runtime.Block.Release + ) + (func $strconv.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0.0 i32) + (local $$t1.0.1 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0.0 i32) + (local $$t2.0.1 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $strconv.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $strconv.init$guard + call $math.init + call $errors.init + call $math$bits.init + call $unicode$utf8.init + i32.const 0 + i32.const 42297 + i32.const 18 + call $errors.New + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0.1 + local.get $$t1.0.0 + call $runtime.Block.Release + local.set $$t1.0.0 + i32.const 24456 + local.get $$t1.0.0 + call $runtime.Block.Retain + i32.const 24456 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 24456 + local.get $$t1.0.1 + i32.store offset=4 + i32.const 24456 + local.get $$t1.1 + i32.store offset=8 + i32.const 24456 + local.get $$t1.2 + i32.store offset=12 + i32.const 0 + i32.const 42315 + i32.const 14 + call $errors.New + local.set $$t2.2 + local.set $$t2.1 + local.set $$t2.0.1 + local.get $$t2.0.0 + call $runtime.Block.Release + local.set $$t2.0.0 + i32.const 24472 + local.get $$t2.0.0 + call $runtime.Block.Retain + i32.const 24472 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 24472 + local.get $$t2.0.1 + i32.store offset=4 + i32.const 24472 + local.get $$t2.1 + i32.store offset=8 + i32.const 24472 + local.get $$t2.2 + i32.store offset=12 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0.0 + call $runtime.Block.Release + local.get $$t2.0.0 + call $runtime.Block.Release + ) + (func $strconv.isInGraphicList (param $r i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $r + i32.const 65535 + i32.gt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $r + i32.const 65535 + i32.and + local.set $$t1 + i32.const 0 + i32.const 35880 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 16 + i32.const 0 + i32.sub + i32.const 16 + i32.const 0 + i32.sub + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + local.get $$t2.3 + local.get $$t1 + call $strconv.bsearch16 + local.set $$t3 + local.get $$t3 + i32.const 16 + i32.lt_s + local.set $$t4 + local.get $$t4 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + i32.const 0 + i32.const 35880 + i32.const 2 + local.get $$t3 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load16_u + local.set $$t6 + local.get $$t1 + local.get $$t6 + i32.eq + local.set $$t7 + br $$Block_3 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t7 + end + local.set $$t8 + i32.const 4 + local.set $$current_block + local.get $$t8 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + ) + (func $strconv.isPowerOfTwo (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 1 + i32.sub + local.set $$t0 + local.get $x + local.get $$t0 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $strconv.quoteWith (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $quote i32) (param $ASCIIonly i32) (param $graphicOnly i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t4.3 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + i32.const 3 + local.get $$t0 + i32.mul + local.set $$t1 + local.get $$t1 + i32.const 2 + i32.div_s + local.set $$t2 + local.get $$t2 + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t2 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + i32.const 0 + local.get $$t2 + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.get $$t3.2 + local.get $$t3.3 + local.get $s.0 + local.get $s.1 + local.get $s.2 + local.get $quote + local.get $ASCIIonly + local.get $graphicOnly + call $strconv.appendQuotedWith + local.set $$t4.3 + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $$string.appendstr + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + local.get $$t5.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + ) + (func $strconv.small (param $i i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $i + i32.const 10 + i32.lt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $i + i32.const 1 + i32.add + local.set $$t1 + i32.const 0 + i32.const 42201 + local.get $i + i32.add + local.get $$t1 + local.get $i + i32.sub + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + local.get $$t2.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $i + i32.const 2 + i32.mul + local.set $$t3 + local.get $$t3 + i32.const 2 + i32.add + local.set $$t4 + local.get $i + i32.const 2 + i32.mul + local.set $$t5 + i32.const 0 + i32.const 42001 + local.get $$t5 + i32.add + local.get $$t4 + local.get $$t5 + i32.sub + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetDrawColors (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$ret_2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 20 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load16_u + local.set $$t2 + local.get $$t2 + local.set $$t3 + local.get $$t3 + i32.const 15 + i32.and + local.set $$t4 + local.get $$t4 + i32.const 255 + i32.and + local.set $$t5 + local.get $$t2 + local.set $$t6 + local.get $$t6 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t7 + local.get $$t7 + i32.const 15 + i32.and + local.set $$t8 + local.get $$t8 + i32.const 255 + i32.and + local.set $$t9 + local.get $$t2 + local.set $$t10 + local.get $$t10 + i64.const 8 + i32.wrap_i64 + i32.shr_u + local.set $$t11 + local.get $$t11 + i32.const 15 + i32.and + local.set $$t12 + local.get $$t12 + i32.const 255 + i32.and + local.set $$t13 + local.get $$t2 + local.set $$t14 + local.get $$t14 + i64.const 12 + i32.wrap_i64 + i32.shr_u + local.set $$t15 + local.get $$t15 + i32.const 15 + i32.and + local.set $$t16 + local.get $$t16 + i32.const 255 + i32.and + local.set $$t17 + local.get $$t5 + local.set $$ret_0 + local.get $$t9 + local.set $$ret_1 + local.get $$t13 + local.set $$ret_2 + local.get $$t17 + local.set $$ret_3 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$ret_2 + local.get $$ret_3 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetGamePad1 (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 22 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetGamePad2 (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 23 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.Oval (param $x i32) (param $y i32) (param $width i32) (param $height i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + local.set $$t0 + local.get $y + local.set $$t1 + local.get $width + local.set $$t2 + local.get $height + local.set $$t3 + local.get $$t0 + local.get $$t1 + local.get $$t2 + local.get $$t3 + call $syscall$wasm4.__import__oval + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.Rect (param $x i32) (param $y i32) (param $width i32) (param $height i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + local.set $$t0 + local.get $y + local.set $$t1 + local.get $width + local.set $$t2 + local.get $height + local.set $$t3 + local.get $$t0 + local.get $$t1 + local.get $$t2 + local.get $$t3 + call $syscall$wasm4.__import__rect + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.SetDrawColors (param $a i32) (param $b i32) (param $c i32) (param $d i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 20 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $a + local.set $$t1 + local.get $b + local.set $$t2 + local.get $$t2 + i64.const 4 + i32.wrap_i64 + i32.shl + local.set $$t3 + local.get $$t1 + local.get $$t3 + i32.add + local.set $$t4 + local.get $c + local.set $$t5 + local.get $$t5 + i64.const 8 + i32.wrap_i64 + i32.shl + local.set $$t6 + local.get $$t4 + local.get $$t6 + i32.add + local.set $$t7 + local.get $d + local.set $$t8 + local.get $$t8 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t9 + local.get $$t7 + local.get $$t9 + i32.add + local.set $$t10 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t10 + i32.const 65535 + i32.and + local.set $$t12 + local.get $$t11.1 + local.get $$t12 + i32.store16 + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.SetDrawColorsByIndex (param $idx i32) (param $v i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 0 + end + i32.const 0 + local.set $$current_block + call $syscall$wasm4.GetDrawColors + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.set $$t0.0 + local.get $$t0.0 + local.set $$t1 + local.get $$t0.1 + local.set $$t2 + local.get $$t0.2 + local.set $$t3 + local.get $$t0.3 + local.set $$t4 + local.get $idx + i32.const 0 + i32.eq + local.set $$t5 + local.get $$t5 + if + br $$Block_1 + else + br $$Block_3 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $v + local.get $$t2 + local.get $$t3 + local.get $$t4 + call $syscall$wasm4.SetDrawColors + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + local.get $$t1 + local.get $v + local.get $$t3 + local.get $$t4 + call $syscall$wasm4.SetDrawColors + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $idx + i32.const 1 + i32.eq + local.set $$t6 + local.get $$t6 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t1 + local.get $$t2 + local.get $v + local.get $$t4 + call $syscall$wasm4.SetDrawColors + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $idx + i32.const 2 + i32.eq + local.set $$t7 + local.get $$t7 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t1 + local.get $$t2 + local.get $$t3 + local.get $v + call $syscall$wasm4.SetDrawColors + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + local.get $idx + i32.const 3 + i32.eq + local.set $$t8 + local.get $$t8 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + ) + (func $syscall$wasm4.Text (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $x i32) (param $y i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$syscall/wasm4.__linkname__string_data_ptr + local.set $$t0 + local.get $s.2 + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $$t0 + local.get $$t2 + local.get $x + local.get $y + call $syscall$wasm4.__import__textUtf8 + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.Tone (param $frequency i32) (param $duration i32) (param $volume i32) (param $flags i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $frequency + local.set $$t0 + local.get $duration + local.set $$t1 + local.get $volume + local.set $$t2 + local.get $flags + local.set $$t3 + local.get $$t0 + local.get $$t1 + local.get $$t2 + local.get $$t3 + call $syscall$wasm4.__import__tone + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $syscall$wasm4.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $syscall$wasm4.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $unicode$utf8.DecodeRuneInString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + local.get $$t0 + i32.const 1 + i32.lt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $s.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$t3 + i32.const 0 + i32.const 40320 + i32.const 1 + local.get $$t3 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load8_u align=1 + local.set $$t5 + local.get $$t5 + i32.const 240 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t5 + local.set $$t7 + local.get $$t7 + i64.const 31 + i32.wrap_i64 + i32.shl + local.set $$t8 + local.get $$t8 + i64.const 31 + i32.wrap_i64 + i32.shr_s + local.set $$t9 + local.get $s.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t10 + local.get $$t10 + local.set $$t11 + local.get $$t11 + local.get $$t9 + i32.const -1 + i32.xor + i32.and + local.set $$t12 + i32.const 65533 + local.get $$t9 + i32.and + local.set $$t13 + local.get $$t12 + local.get $$t13 + i32.or + local.set $$t14 + local.get $$t14 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t5 + i32.const 7 + i32.and + local.set $$t15 + local.get $$t15 + local.set $$t16 + i32.const 18 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 2 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t5 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t18 + local.get $$t18 + local.set $$t19 + i32.const 0 + i32.const 40288 + i32.const 2 + local.get $$t19 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load8_u align=1 + local.get $$t20.1 + i32.load8_u offset=1 align=1 + local.set $$t21.1 + local.set $$t21.0 + local.get $$t17.1 + local.get $$t21.0 + i32.store8 align=1 + local.get $$t17.1 + local.get $$t21.1 + i32.store8 offset=1 align=1 + local.get $$t0 + local.get $$t16 + i32.lt_s + local.set $$t22 + local.get $$t22 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $s.1 + i32.const 1 + i32.add + i32.load8_u align=1 + local.set $$t23 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 0 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load8_u align=1 + local.set $$t25 + local.get $$t23 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + br $$Block_6 + else + br $$Block_8 + end + end + i32.const 7 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t16 + i32.const 2 + i32.le_s + local.set $$t27 + local.get $$t27 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load8_u align=1 + local.set $$t29 + local.get $$t29 + local.get $$t23 + i32.lt_u + local.set $$t30 + local.get $$t30 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t2 + i32.const 31 + i32.and + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t32 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t33 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t33 + local.get $$t35 + i32.or + local.set $$t36 + local.get $$t36 + local.set $$ret_0 + i32.const 2 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $s.1 + i32.const 2 + i32.add + i32.load8_u align=1 + local.set $$t37 + local.get $$t37 + i32.const 128 + i32.lt_u + local.set $$t38 + local.get $$t38 + if + br $$Block_11 + else + br $$Block_13 + end + end + i32.const 12 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t16 + i32.const 3 + i32.le_s + local.set $$t39 + local.get $$t39 + if + br $$Block_14 + else + br $$Block_15 + end + end + i32.const 14 + local.set $$current_block + i32.const 191 + local.get $$t37 + i32.lt_u + local.set $$t40 + local.get $$t40 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t2 + i32.const 15 + i32.and + local.set $$t41 + local.get $$t41 + local.set $$t42 + local.get $$t42 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t43 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t44 + local.get $$t44 + local.set $$t45 + local.get $$t45 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t46 + local.get $$t43 + local.get $$t46 + i32.or + local.set $$t47 + local.get $$t37 + i32.const 63 + i32.and + local.set $$t48 + local.get $$t48 + local.set $$t49 + local.get $$t47 + local.get $$t49 + i32.or + local.set $$t50 + local.get $$t50 + local.set $$ret_0 + i32.const 3 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 16 + local.set $$current_block + local.get $s.1 + i32.const 3 + i32.add + i32.load8_u align=1 + local.set $$t51 + local.get $$t51 + i32.const 128 + i32.lt_u + local.set $$t52 + local.get $$t52 + if + br $$Block_16 + else + br $$Block_18 + end + end + i32.const 17 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t2 + i32.const 7 + i32.and + local.set $$t53 + local.get $$t53 + local.set $$t54 + local.get $$t54 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t55 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t56 + local.get $$t56 + local.set $$t57 + local.get $$t57 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t58 + local.get $$t55 + local.get $$t58 + i32.or + local.set $$t59 + local.get $$t37 + i32.const 63 + i32.and + local.set $$t60 + local.get $$t60 + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t59 + local.get $$t62 + i32.or + local.set $$t63 + local.get $$t51 + i32.const 63 + i32.and + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t63 + local.get $$t65 + i32.or + local.set $$t66 + local.get $$t66 + local.set $$ret_0 + i32.const 4 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 19 + local.set $$current_block + i32.const 191 + local.get $$t51 + i32.lt_u + local.set $$t67 + local.get $$t67 + if + i32.const 17 + local.set $$block_selector + br $$BlockDisp + else + i32.const 18 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + ) + (func $unicode$utf8.EncodeRune (param $p.0 i32) (param $p.1 i32) (param $p.2 i32) (param $p.3 i32) (param $r i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 0 + end + i32.const 0 + local.set $$current_block + local.get $r + local.set $$t0 + local.get $$t0 + i32.const 127 + i32.le_u + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $r + i32.const 255 + i32.and + local.set $$t3 + local.get $$t2.1 + local.get $$t3 + i32.store8 align=1 + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load8_u align=1 + local.set $$t5 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t7 + local.get $$t7 + i32.const 255 + i32.and + local.set $$t8 + i32.const 192 + local.get $$t8 + i32.or + local.set $$t9 + local.get $$t6.1 + local.get $$t9 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $r + i32.const 255 + i32.and + local.set $$t11 + local.get $$t11 + i32.const 63 + i32.and + local.set $$t12 + i32.const 128 + local.get $$t12 + i32.or + local.set $$t13 + local.get $$t10.1 + local.get $$t13 + i32.store8 align=1 + i32.const 2 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + local.get $$t0 + i32.const 2047 + i32.le_u + local.set $$t14 + local.get $$t14 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_4 + end + end + i32.const 4 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load8_u align=1 + local.set $$t16 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + i32.const 65533 + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t18 + local.get $$t18 + i32.const 255 + i32.and + local.set $$t19 + i32.const 224 + local.get $$t19 + i32.or + local.set $$t20 + local.get $$t17.1 + local.get $$t20 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + i32.const 65533 + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t22 + local.get $$t22 + i32.const 255 + i32.and + local.set $$t23 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t24 + i32.const 128 + local.get $$t24 + i32.or + local.set $$t25 + local.get $$t21.1 + local.get $$t25 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + i32.const 65533 + i32.const 255 + i32.and + local.set $$t27 + local.get $$t27 + i32.const 63 + i32.and + local.set $$t28 + i32.const 128 + local.get $$t28 + i32.or + local.set $$t29 + local.get $$t26.1 + local.get $$t29 + i32.store8 align=1 + i32.const 3 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + local.get $$t0 + i32.const 1114111 + i32.gt_u + local.set $$t30 + local.get $$t30 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_6 + end + end + i32.const 6 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t31.1 + i32.load8_u align=1 + local.set $$t32 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t34 + local.get $$t34 + i32.const 255 + i32.and + local.set $$t35 + i32.const 224 + local.get $$t35 + i32.or + local.set $$t36 + local.get $$t33.1 + local.get $$t36 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t38 + local.get $$t38 + i32.const 255 + i32.and + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + i32.const 128 + local.get $$t40 + i32.or + local.set $$t41 + local.get $$t37.1 + local.get $$t41 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $r + i32.const 255 + i32.and + local.set $$t43 + local.get $$t43 + i32.const 63 + i32.and + local.set $$t44 + i32.const 128 + local.get $$t44 + i32.or + local.set $$t45 + local.get $$t42.1 + local.get $$t45 + i32.store8 align=1 + i32.const 3 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + i32.const 55296 + local.get $$t0 + i32.le_u + local.set $$t46 + local.get $$t46 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 8 + local.set $$current_block + local.get $$t0 + i32.const 65535 + i32.le_u + local.set $$t47 + local.get $$t47 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t0 + i32.const 57343 + i32.le_u + local.set $$t48 + br $$Block_9 + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t48 + end + local.set $$t49 + i32.const 10 + local.set $$current_block + local.get $$t49 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 11 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.1 + i32.load8_u align=1 + local.set $$t51 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $r + i64.const 18 + i32.wrap_i64 + i32.shr_s + local.set $$t53 + local.get $$t53 + i32.const 255 + i32.and + local.set $$t54 + i32.const 240 + local.get $$t54 + i32.or + local.set $$t55 + local.get $$t52.1 + local.get $$t55 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t57 + local.get $$t57 + i32.const 255 + i32.and + local.set $$t58 + local.get $$t58 + i32.const 63 + i32.and + local.set $$t59 + i32.const 128 + local.get $$t59 + i32.or + local.set $$t60 + local.get $$t56.1 + local.get $$t60 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t62 + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + local.get $$t63 + i32.const 63 + i32.and + local.set $$t64 + i32.const 128 + local.get $$t64 + i32.or + local.set $$t65 + local.get $$t61.1 + local.get $$t65 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $r + i32.const 255 + i32.and + local.set $$t67 + local.get $$t67 + i32.const 63 + i32.and + local.set $$t68 + i32.const 128 + local.get $$t68 + i32.or + local.set $$t69 + local.get $$t66.1 + local.get $$t69 + i32.store8 align=1 + i32.const 4 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + ) + (func $unicode$utf8.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $unicode$utf8.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $unicode$utf8.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $w4pong.NewPongGame (export "w4pong.NewPongGame") (param $enableMultiplayer i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 52 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 36 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 12 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 16 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 20 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 24 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 28 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 32 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t1.1 + local.get $enableMultiplayer + i32.store8 align=1 + local.get $$t2.1 + i32.const 80 + i32.store + local.get $$t3.1 + i32.const 80 + i32.store + local.get $$t4.1 + i32.const 1 + i32.store + local.get $$t5.1 + i32.const 1 + i32.store + local.get $$t6.1 + i32.const 80 + i32.store + local.get $$t7.1 + i32.const 80 + i32.store + local.get $$t8.1 + i32.const 0 + i32.store + local.get $$t9.1 + i32.const 0 + i32.store + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + ) + (func $w4pong.Update (export "update") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 40576 + i32.load + call $runtime.Block.Retain + i32.const 40576 + i32.load offset=4 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + local.get $$t0.1 + call $w4pong.PongGame.Input + i32.const 40576 + i32.load + call $runtime.Block.Retain + i32.const 40576 + i32.load offset=4 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + local.get $$t1.1 + call $w4pong.PongGame.Update + i32.const 40576 + i32.load + call $runtime.Block.Retain + i32.const 40576 + i32.load offset=4 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + call $w4pong.PongGame.Draw + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + ) + (func $w4pong.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $w4pong.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $w4pong.init$guard + call $runtime.init + call $math$rand.init + call $strconv.init + call $syscall$wasm4.init + i32.const 1 + call $w4pong.NewPongGame + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + i32.const 40576 + local.get $$t1.0 + call $runtime.Block.Retain + i32.const 40576 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 40576 + local.get $$t1.1 + i32.store offset=4 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $math$rand.Rand.Int (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i64) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $math$rand.Rand.Int63 + local.set $$t0 + local.get $$t0 + i32.wrap_i64 + local.set $$t1 + local.get $$t1 + i64.const 1 + i32.wrap_i64 + i32.shl + local.set $$t2 + local.get $$t2 + i64.const 1 + i32.wrap_i64 + i32.shr_u + local.set $$t3 + local.get $$t3 + local.set $$t4 + local.get $$t4 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $math$rand.Rand.Int63 (param $this.0 i32) (param $this.1 i32) (result i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i64) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0.0 i32) + (local $$t1.0.1 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2 i64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0.1 + local.get $$t1.0.0 + call $runtime.Block.Release + local.set $$t1.0.0 + local.get $$t1.0.0 + local.get $$t1.0.1 + local.get $$t1.1 + i32.load offset=8 + call_indirect 0 (type $$$fnSig1) + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0.0 + call $runtime.Block.Release + ) + (func $w4pong.PongGame.Draw (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 4 + call $syscall$wasm4.SetDrawColorsByIndex + i32.const 1 + i32.const 0 + call $syscall$wasm4.SetDrawColorsByIndex + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 28 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $$t1 + call $strconv.Itoa + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + i32.const 85 + i32.const 0 + call $syscall$wasm4.Text + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 32 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + call $strconv.Itoa + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + i32.const 70 + i32.const 0 + call $syscall$wasm4.Text + i32.const 80 + i32.const 0 + i32.const 2 + i32.const 160 + call $syscall$wasm4.Rect + i32.const 0 + i32.const 2 + call $syscall$wasm4.SetDrawColorsByIndex + i32.const 1 + i32.const 3 + call $syscall$wasm4.SetDrawColorsByIndex + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + local.get $$t7 + local.get $$t9 + i32.const 5 + i32.const 5 + call $syscall$wasm4.Oval + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + i32.const 0 + local.get $$t11 + i32.const 5 + i32.const 15 + call $syscall$wasm4.Rect + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load + local.set $$t13 + i32.const 155 + local.get $$t13 + i32.const 5 + i32.const 15 + call $syscall$wasm4.Rect + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + ) + (func $w4pong.PongGame.Input (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 + end + i32.const 0 + local.set $$current_block + call $syscall$wasm4.GetGamePad1 + local.set $$t0 + local.get $$t0 + i32.const 64 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 2 + i32.sub + local.set $$t5 + local.get $$t3.1 + local.get $$t5 + i32.store + br $$Block_1 + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load8_u align=1 + local.set $$t7 + local.get $$t7 + if + br $$Block_6 + else + br $$Block_8 + end + end + i32.const 3 + local.set $$current_block + local.get $$t0 + i32.const 128 + i32.and + local.set $$t8 + local.get $$t8 + i32.const 0 + i32.eq + i32.eqz + local.set $$t9 + local.get $$t9 + if + br $$Block_5 + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + i32.const 0 + i32.gt_s + local.set $$t12 + local.get $$t12 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t14 + i32.const 2 + i32.add + local.set $$t15 + local.get $$t13.1 + local.get $$t15 + i32.store + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + local.set $$t17 + local.get $$t17 + i32.const 15 + i32.add + local.set $$t18 + local.get $$t18 + i32.const 160 + i32.lt_s + local.set $$t19 + local.get $$t19 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + call $syscall$wasm4.GetGamePad1 + local.set $$t20 + local.get $$t20 + i32.const 16 + i32.and + local.set $$t21 + local.get $$t21 + i32.const 0 + i32.eq + i32.eqz + local.set $$t22 + local.get $$t22 + if + br $$Block_12 + else + br $$Block_11 + end + end + i32.const 8 + local.set $$current_block + br $$BlockFnBody + end + i32.const 9 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load + local.set $$t25 + local.get $$t23.1 + local.get $$t25 + i32.store + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i32.load + local.set $$t27 + local.get $$t27 + i32.const 2 + i32.sub + local.set $$t28 + local.get $$t26.1 + local.get $$t28 + i32.store + br $$Block_10 + end + i32.const 11 + local.set $$current_block + call $syscall$wasm4.GetGamePad2 + local.set $$t29 + local.get $$t29 + i32.const 64 + i32.and + local.set $$t30 + local.get $$t30 + i32.const 0 + i32.eq + i32.eqz + local.set $$t31 + local.get $$t31 + if + br $$Block_17 + else + br $$Block_16 + end + end + i32.const 12 + local.set $$current_block + local.get $$t20 + i32.const 32 + i32.and + local.set $$t32 + local.get $$t32 + i32.const 0 + i32.eq + i32.eqz + local.set $$t33 + local.get $$t33 + if + br $$Block_14 + else + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t34.1 + i32.load + local.set $$t35 + local.get $$t35 + i32.const 0 + i32.gt_s + local.set $$t36 + local.get $$t36 + if + i32.const 10 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 14 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$t37.1 + i32.load + local.set $$t38 + local.get $$t38 + i32.const 2 + i32.add + local.set $$t39 + local.get $$t37.1 + local.get $$t39 + i32.store + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + i32.const 15 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t40.1 + local.get $$t40.0 + call $runtime.Block.Release + local.set $$t40.0 + local.get $$t40.1 + i32.load + local.set $$t41 + local.get $$t41 + i32.const 15 + i32.add + local.set $$t42 + local.get $$t42 + i32.const 160 + i32.lt_s + local.set $$t43 + local.get $$t43 + if + i32.const 14 + local.set $$block_selector + br $$BlockDisp + else + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 16 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.sub + local.set $$t46 + local.get $$t44.1 + local.get $$t46 + i32.store + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 17 + local.set $$current_block + local.get $$t29 + i32.const 128 + i32.and + local.set $$t47 + local.get $$t47 + i32.const 0 + i32.eq + i32.eqz + local.set $$t48 + local.get $$t48 + if + br $$Block_19 + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 18 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t49.1 + local.get $$t49.0 + call $runtime.Block.Release + local.set $$t49.0 + local.get $$t49.1 + i32.load + local.set $$t50 + local.get $$t50 + i32.const 0 + i32.gt_s + local.set $$t51 + local.get $$t51 + if + i32.const 16 + local.set $$block_selector + br $$BlockDisp + else + i32.const 17 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 19 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t52.1 + i32.load + local.set $$t53 + local.get $$t53 + i32.const 2 + i32.add + local.set $$t54 + local.get $$t52.1 + local.get $$t54 + i32.store + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 20 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.1 + i32.load + local.set $$t56 + local.get $$t56 + i32.const 15 + i32.add + local.set $$t57 + local.get $$t57 + i32.const 160 + i32.lt_s + local.set $$t58 + local.get $$t58 + if + i32.const 19 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t40.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t49.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + ) + (func $w4pong.PongGame.Update (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51 i32) + (local $$t52 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w4pong.PongGame.paddleCollision + local.set $$t0 + local.get $$t0 + i32.const 0 + i32.eq + i32.eqz + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 2000 + i32.const 5 + i32.const 100 + i32.const 5 + call $syscall$wasm4.Tone + call $math$rand.Int + local.set $$t2 + local.get $$t2 + i32.const 2 + i32.rem_s + local.set $$t3 + local.get $$t3 + i32.const 0 + i32.eq + i32.eqz + local.set $$t4 + local.get $$t4 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t5.1 + i32.load + local.set $$t8 + local.get $$t8 + local.get $$t7 + i32.add + local.set $$t9 + local.get $$t5.1 + local.get $$t9 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.load + local.set $$t12 + local.get $$t10.1 + i32.load + local.set $$t13 + local.get $$t13 + local.get $$t12 + i32.add + local.set $$t14 + local.get $$t10.1 + local.get $$t14 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load + local.set $$t16 + local.get $$t16 + i32.const 160 + i32.gt_s + local.set $$t17 + local.get $$t17 + if + br $$Block_4 + else + br $$Block_6 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + local.get $$t0 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.1 + i32.const -1 + i32.store + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + local.get $$t0 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.const 1 + i32.store + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + i32.const 5 + local.set $$current_block + i32.const 2000 + i32.const 5 + i32.const 100 + i32.const 5 + call $syscall$wasm4.Tone + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + i32.const 0 + local.get $$t24 + i32.sub + local.set $$t25 + local.get $$t22.1 + local.get $$t25 + i32.store + br $$Block_5 + end + i32.const 6 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i32.load + local.set $$t27 + local.get $$t27 + i32.const 0 + i32.le_s + local.set $$t28 + local.get $$t28 + if + br $$Block_7 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.1 + i32.load + local.set $$t30 + local.get $$t30 + i32.const 0 + i32.lt_s + local.set $$t31 + local.get $$t31 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + i32.const 1000 + i32.const 5 + i32.const 100 + i32.const 5 + call $syscall$wasm4.Tone + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + i32.load + local.set $$t33 + local.get $$t33 + i32.const 0 + i32.le_s + local.set $$t34 + local.get $$t34 + if + br $$Block_10 + else + br $$Block_12 + end + end + i32.const 9 + local.set $$current_block + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t35.1 + i32.load + local.set $$t36 + local.get $$t36 + i32.const 160 + i32.gt_s + local.set $$t37 + local.get $$t37 + if + i32.const 8 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 11 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 32 + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.1 + i32.load + local.set $$t39 + local.get $$t39 + i32.const 1 + i32.add + local.set $$t40 + local.get $$t38.1 + local.get $$t40 + i32.store + br $$Block_11 + end + i32.const 12 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.const 80 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t42.1 + i32.const 80 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.set $$t45 + i32.const 0 + local.get $$t45 + i32.sub + local.set $$t46 + local.get $$t43.1 + local.get $$t46 + i32.store + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + i32.const 13 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $$t47.1 + i32.load + local.set $$t48 + local.get $$t48 + i32.const 160 + i32.gt_s + local.set $$t49 + local.get $$t49 + if + br $$Block_13 + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 14 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 28 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.1 + i32.load + local.set $$t51 + local.get $$t51 + i32.const 1 + i32.add + local.set $$t52 + local.get $$t50.1 + local.get $$t52 + i32.store + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + ) + (func $w4pong.PongGame.paddleCollision (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $$t1 + i32.const 5 + i32.lt_s + local.set $$t2 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 5 + i32.add + local.set $$t5 + local.get $$t5 + i32.const 155 + i32.gt_s + local.set $$t6 + local.get $$t6 + if + br $$Block_7 + else + br $$Block_5 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load + local.set $$t8 + local.get $$t8 + i32.const 5 + i32.add + local.set $$t9 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t9 + local.get $$t11 + i32.gt_s + local.set $$t12 + local.get $$t12 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load + local.set $$t16 + local.get $$t16 + i32.const 15 + i32.add + local.set $$t17 + local.get $$t14 + local.get $$t17 + i32.lt_s + local.set $$t18 + local.get $$t18 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.1 + i32.load + local.set $$t20 + local.get $$t20 + i32.const 5 + i32.add + local.set $$t21 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.1 + i32.load + local.set $$t23 + local.get $$t21 + local.get $$t23 + i32.gt_s + local.set $$t24 + local.get $$t24 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.1 + i32.load + local.set $$t26 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t27.1 + i32.load + local.set $$t28 + local.get $$t28 + i32.const 15 + i32.add + local.set $$t29 + local.get $$t26 + local.get $$t29 + i32.lt_s + local.set $$t30 + local.get $$t30 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + ) + (func $math$rand.rngSource.Int63 (param $this.0 i32) (param $this.1 i32) (result i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i64) + (local $$t0 i64) + (local $$t1 i64) + (local $$t2 i64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $math$rand.rngSource.Uint64 + local.set $$t0 + local.get $$t0 + i64.const 9223372036854775807 + i64.and + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $math$rand.rngSource.Seed (param $this.0 i32) (param $this.1 i32) (param $seed i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i64) + (local $$t3 i32) + (local $$t4 i64) + (local $$t5 i64) + (local $$t6 i32) + (local $$t7 i64) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i64) + (local $$t17 i64) + (local $$t18 i32) + (local $$t19 i64) + (local $$t20 i64) + (local $$t21 i64) + (local $$t22 i32) + (local $$t23 i64) + (local $$t24 i64) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26 i64) + (local $$t27 i64) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.const 0 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.const 334 + i32.store + local.get $seed + i64.const 2147483647 + i64.rem_s + local.set $$t2 + local.get $$t2 + i64.const 0 + i64.lt_s + local.set $$t3 + local.get $$t3 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t2 + i64.const 2147483647 + i64.add + local.set $$t4 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i64) + local.get $$t2 + else + local.get $$t4 + end + local.set $$t5 + i32.const 2 + local.set $$current_block + local.get $$t5 + i64.const 0 + i64.eq + local.set $$t6 + local.get $$t6 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + br $$Block_3 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i64) + local.get $$t5 + else + i64.const 89482311 + end + local.set $$t7 + i32.const 4 + local.set $$current_block + local.get $$t7 + i32.wrap_i64 + local.set $$t8 + br $$Block_6 + end + i32.const 5 + local.set $$current_block + local.get $$t9 + call $math$rand.seedrand + local.set $$t10 + local.get $$t11 + i32.const 0 + i32.ge_s + local.set $$t12 + local.get $$t12 + if + br $$Block_7 + else + br $$Block_8 + end + end + i32.const 6 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t13 + end + local.set $$t9 + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + i32.const -20 + else + local.get $$t14 + end + local.set $$t11 + i32.const 7 + local.set $$current_block + local.get $$t11 + i32.const 607 + i32.lt_s + local.set $$t15 + local.get $$t15 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + local.get $$t10 + i64.extend_i32_s + local.set $$t16 + local.get $$t16 + i64.const 40 + i64.shl + local.set $$t17 + local.get $$t10 + call $math$rand.seedrand + local.set $$t18 + local.get $$t18 + i64.extend_i32_s + local.set $$t19 + local.get $$t19 + i64.const 20 + i64.shl + local.set $$t20 + local.get $$t17 + local.get $$t20 + i64.xor + local.set $$t21 + local.get $$t18 + call $math$rand.seedrand + local.set $$t22 + local.get $$t22 + i64.extend_i32_s + local.set $$t23 + local.get $$t21 + local.get $$t23 + i64.xor + local.set $$t24 + i32.const 0 + i32.const 18064 + i32.const 8 + local.get $$t11 + i32.mul + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.1 + i64.load + local.set $$t26 + local.get $$t24 + local.get $$t26 + i64.xor + local.set $$t27 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + i32.const 8 + local.get $$t11 + i32.mul + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.1 + local.get $$t27 + i64.store align=8 + br $$Block_8 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t10 + else + local.get $$t22 + end + local.set $$t13 + i32.const 9 + local.set $$current_block + local.get $$t11 + i32.const 1 + i32.add + local.set $$t14 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + ) + (func $math$rand.rngSource.Uint64 (param $this.0 i32) (param $this.1 i32) (result i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i64) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i64) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i64) + (local $$t28 i64) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33 i64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $$t1 + i32.const 1 + i32.sub + local.set $$t2 + local.get $$t0.1 + local.get $$t2 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.lt_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t7 + i32.const 607 + i32.add + local.set $$t8 + local.get $$t6.1 + local.get $$t8 + i32.store + br $$Block_1 + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load + local.set $$t10 + local.get $$t10 + i32.const 1 + i32.sub + local.set $$t11 + local.get $$t9.1 + local.get $$t11 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load + local.set $$t13 + local.get $$t13 + i32.const 0 + i32.lt_s + local.set $$t14 + local.get $$t14 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load + local.set $$t16 + local.get $$t16 + i32.const 607 + i32.add + local.set $$t17 + local.get $$t15.1 + local.get $$t17 + i32.store + br $$Block_3 + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.1 + i32.load + local.set $$t20 + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + i32.const 8 + local.get $$t20 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i64.load + local.set $$t22 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load + local.set $$t25 + local.get $$t23.0 + call $runtime.Block.Retain + local.get $$t23.1 + i32.const 8 + local.get $$t25 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i64.load + local.set $$t27 + local.get $$t22 + local.get $$t27 + i64.add + local.set $$t28 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 8 + local.get $$t31 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + local.get $$t28 + i64.store align=8 + local.get $$t28 + local.set $$t33 + local.get $$t33 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + ) + (func $errors.errorString.Error (param $this.0 i32) (param $this.1 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $strconv.NumError.Error (param $this.0 i32) (param $this.1 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0.0 i32) + (local $$t11.0.1 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + i32.const 0 + i32.const 44218 + i32.const 8 + local.get $$t1.0 + local.get $$t1.1 + local.get $$t1.2 + call $$string.appendstr + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + i32.const 0 + i32.const 40613 + i32.const 2 + call $$string.appendstr + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.get $$t3.2 + i32.const 0 + i32.const 44226 + i32.const 8 + call $$string.appendstr + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + call $runtime.Block.Retain + local.get $$t5.1 + i32.load offset=4 + local.get $$t5.1 + i32.load offset=8 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + call $strconv.Quote + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + local.get $$t7.0 + local.get $$t7.1 + local.get $$t7.2 + call $$string.appendstr + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + local.get $$t8.1 + local.get $$t8.2 + i32.const 0 + i32.const 40613 + i32.const 2 + call $$string.appendstr + local.set $$t9.2 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + call $runtime.Block.Retain + local.get $$t10.1 + i32.load offset=4 + local.get $$t10.1 + i32.load offset=8 + local.get $$t10.1 + i32.load offset=12 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0.1 + local.get $$t11.0.0 + call $runtime.Block.Release + local.set $$t11.0.0 + local.get $$t11.0.0 + local.get $$t11.0.1 + local.get $$t11.1 + i32.load offset=8 + call_indirect 0 (type $$$fnSig4) + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t9.0 + local.get $$t9.1 + local.get $$t9.2 + local.get $$t12.0 + local.get $$t12.1 + local.get $$t12.2 + call $$string.appendstr + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.0 + call $runtime.Block.Retain + local.get $$t13.1 + local.get $$t13.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + ) + (func $_start (export "_start") + call $w4pong.init + ) + (func $_main (export "_main")) + (data (i32.const 14784) "\24\24\77\61\64\73\24\24\9b\1a\86\a0\49\fa\a8\bd\05\3f\4e\7b\9d\ee\21\3e\c6\4b\ac\7e\4f\7e\92\be\f5\44\c8\19\a0\01\fa\3e\91\4f\c1\16\6c\c1\56\bf\4b\55\55\55\55\55\a5\3f\cd\9c\d1\1f\fd\d8\e5\3d\5d\1f\29\a9\e5\e5\5a\be\a1\48\7d\56\e3\1d\c7\3e\03\df\bf\19\a0\01\2a\bf\d0\f7\10\11\11\11\81\3f\48\55\55\55\55\55\c5\bf\00\01\1c\02\1d\0e\18\03\1e\16\14\0f\19\11\04\08\1f\1b\0d\17\15\13\10\07\1a\0c\12\06\0b\05\0a\09\00\01\38\02\39\31\1c\03\3d\3a\2a\32\26\1d\11\04\3e\2f\3b\24\2d\2b\33\16\35\27\21\1e\18\12\0c\05\3f\37\30\1b\3c\29\25\10\2e\23\2c\15\34\20\17\0b\36\1a\28\0f\22\14\1f\0a\19\0e\13\09\0d\08\07\06\00\00\80\3f\2f\2a\70\3f\33\85\66\3f\04\28\5f\3f\78\08\59\3f\d5\b5\53\3f\b9\f4\4e\3f\8e\a1\4a\3f\1c\a5\46\3f\44\ef\42\3f\51\74\3f\3f\75\2b\3c\3f\db\0d\39\3f\1a\16\36\3f\d3\3f\33\3f\6e\87\30\3f\eb\e9\2d\3f\c4\64\2b\3f\d1\f5\28\3f\36\9b\26\3f\58\53\24\3f\cd\1c\22\3f\59\f6\1f\3f\e2\de\1d\3f\6d\d5\1b\3f\1a\d9\19\3f\1f\e9\17\3f\c6\04\16\3f\69\2b\14\3f\71\5c\12\3f\56\97\10\3f\99\db\0e\3f\c6\28\0d\3f\73\7e\0b\3f\3e\dc\09\3f\ca\41\08\3f\c4\ae\06\3f\dc\22\05\3f\ca\9d\03\3f\47\1f\02\3f\16\a7\00\3f\f0\69\fe\3e\6c\91\fb\3e\37\c4\f8\3e\ea\01\f6\3e\2a\4a\f3\3e\9c\9c\f0\3e\ec\f8\ed\3e\cc\5e\eb\3e\ef\cd\e8\3e\0f\46\e6\3e\e7\c6\e3\3e\37\50\e1\3e\c1\e1\de\3e\4b\7b\dc\3e\9d\1c\da\3e\82\c5\d7\3e\c7\75\d5\3e\3b\2d\d3\3e\b1\eb\d0\3e\fb\b0\ce\3e\f0\7c\cc\3e\65\4f\ca\3e\34\28\c8\3e\38\07\c6\3e\4c\ec\c3\3e\4e\d7\c1\3e\1b\c8\bf\3e\95\be\bd\3e\9c\ba\bb\3e\12\bc\b9\3e\da\c2\b7\3e\d9\ce\b5\3e\f4\df\b3\3e\12\f6\b1\3e\19\11\b0\3e\f1\30\ae\3e\83\55\ac\3e\b9\7e\aa\3e\7c\ac\a8\3e\b8\de\a6\3e\59\15\a5\3e\49\50\a3\3e\77\8f\a1\3e\d0\d2\9f\3e\42\1a\9e\3e\ba\65\9c\3e\29\b5\9a\3e\7e\08\99\3e\a9\5f\97\3e\9a\ba\95\3e\43\19\94\3e\94\7b\92\3e\80\e1\90\3e\f8\4a\8f\3e\ef\b7\8d\3e\58\28\8c\3e\27\9c\8a\3e\4e\13\89\3e\c3\8d\87\3e\78\0b\86\3e\62\8c\84\3e\78\10\83\3e\ac\97\81\3e\f5\21\80\3e\92\5e\7d\3e\3b\7f\7a\3e\d0\a5\77\3e\40\d2\74\3e\77\04\72\3e\62\3c\6f\3e\f1\79\6c\3e\11\bd\69\3e\b2\05\67\3e\c2\53\64\3e\33\a7\61\3e\f3\ff\5e\3e\f4\5d\5c\3e\26\c1\59\3e\7a\29\57\3e\e2\96\54\3e\50\09\52\3e\b7\80\4f\3e\07\fd\4c\3e\35\7e\4a\3e\33\04\48\3e\f5\8e\45\3e\6e\1e\43\3e\93\b2\40\3e\56\4b\3e\3e\ae\e8\3b\3e\8e\8a\39\3e\eb\30\37\3e\bb\db\34\3e\f3\8a\32\3e\88\3e\30\3e\70\f6\2d\3e\a2\b2\2b\3e\13\73\29\3e\bb\37\27\3e\8f\00\25\3e\86\cd\22\3e\98\9e\20\3e\bc\73\1e\3e\e9\4c\1c\3e\17\2a\1a\3e\3d\0b\18\3e\54\f0\15\3e\54\d9\13\3e\34\c6\11\3e\ed\b6\0f\3e\79\ab\0d\3e\cf\a3\0b\3e\e9\9f\09\3e\bf\9f\07\3e\4c\a3\05\3e\87\aa\03\3e\6c\b5\01\3e\e5\87\ff\3d\2b\ac\fb\3d\9d\d7\f7\3d\30\0a\f4\3d\d8\43\f0\3d\89\84\ec\3d\38\cc\e8\3d\db\1a\e5\3d\68\70\e1\3d\d3\cc\dd\3d\13\30\da\3d\1e\9a\d6\3d\ea\0a\d3\3d\6f\82\cf\3d\a2\00\cc\3d\7c\85\c8\3d\f4\10\c5\3d\01\a3\c1\3d\9c\3b\be\3d\bc\da\ba\3d\5a\80\b7\3d\6f\2c\b4\3d\f3\de\b0\3d\df\97\ad\3d\2e\57\aa\3d\d8\1c\a7\3d\d7\e8\a3\3d\25\bb\a0\3d\bd\93\9d\3d\99\72\9a\3d\b4\57\97\3d\09\43\94\3d\93\34\91\3d\4d\2c\8e\3d\34\2a\8b\3d\44\2e\88\3d\79\38\85\3d\cf\48\82\3d\86\be\7e\3d\a5\f7\78\3d\f5\3c\73\3d\72\8e\6d\3d\18\ec\67\3d\e3\55\62\3d\d1\cb\5c\3d\de\4d\57\3d\0a\dc\51\3d\54\76\4c\3d\bb\1c\47\3d\41\cf\41\3d\e6\8d\3c\3d\ac\58\37\3d\96\2f\32\3d\a9\12\2d\3d\e8\01\28\3d\59\fd\22\3d\02\05\1e\3d\ec\18\19\3d\1e\39\14\3d\a3\65\0f\3d\85\9e\0a\3d\d0\e3\05\3d\93\35\01\3d\b6\27\f9\3c\74\fd\ef\3c\83\ec\e6\3c\0b\f5\dd\3c\37\17\d5\3c\38\53\cc\3c\43\a9\c3\3c\8f\19\bb\3c\5c\a4\b2\3c\ed\49\aa\3c\8e\0a\a2\3c\91\e6\99\3c\4f\de\91\3c\2b\f2\89\3c\90\22\82\3c\ef\df\74\3c\c9\b5\65\3c\d3\c7\56\3c\53\17\48\3c\b7\a5\39\3c\98\74\2b\3c\c6\85\1d\3c\4f\db\0f\3c\91\77\02\3c\90\ba\ea\3b\4f\1f\d1\3b\fa\24\b8\3b\be\d4\9f\3b\eb\39\88\3b\9c\c5\62\3b\48\c4\36\3b\5d\a3\0c\3b\ab\5d\c9\3a\58\90\7d\3a\e2\18\ee\39\00\00\80\3f\78\ae\76\3f\39\b0\6f\3f\3a\bd\69\3f\92\6c\64\3f\db\8c\5f\3f\16\02\5b\3f\86\ba\56\3f\0c\aa\52\3f\f0\c7\4e\3f\a6\0d\4b\3f\1e\76\47\3f\53\fd\43\3f\03\a0\40\3f\7d\5b\3d\3f\82\2d\3a\3f\2b\14\37\3f\d6\0d\34\3f\18\19\31\3f\b7\34\2e\3f\9d\5f\2b\3f\d4\98\28\3f\84\df\25\3f\e7\32\23\3f\4f\92\20\3f\1c\fd\1d\3f\bd\72\1b\3f\b1\f2\18\3f\7d\7c\16\3f\b5\0f\14\3f\f3\ab\11\3f\d9\50\0f\3f\12\fe\0c\3f\4c\b3\0a\3f\3e\70\08\3f\a1\34\06\3f\36\00\04\3f\c0\d2\01\3f\0d\58\ff\3e\a7\17\fb\3e\ec\e3\f6\3e\7d\bc\f2\3e\02\a1\ee\3e\28\91\ea\3e\a0\8c\e6\3e\20\93\e2\3e\60\a4\de\3e\1e\c0\da\3e\1c\e6\d6\3e\1b\16\d3\3e\e5\4f\cf\3e\42\93\cb\3e\fe\df\c7\3e\e9\35\c4\3e\d4\94\c0\3e\92\fc\bc\3e\f8\6c\b9\3e\de\e5\b5\3e\1e\67\b2\3e\92\f0\ae\3e\16\82\ab\3e\8a\1b\a8\3e\cc\bc\a4\3e\bf\65\a1\3e\44\16\9e\3e\41\ce\9a\3e\98\8d\97\3e\32\54\94\3e\f5\21\91\3e\cb\f6\8d\3e\9c\d2\8a\3e\54\b5\87\3e\de\9e\84\3e\27\8f\81\3e\3a\0c\7d\3e\5b\07\77\3e\91\0f\71\3e\bc\24\6b\3e\c0\46\65\3e\7f\75\5f\3e\df\b0\59\3e\c8\f8\53\3e\22\4d\4e\3e\d7\ad\48\3e\d5\1a\43\3e\07\94\3d\3e\5e\19\38\3e\ca\aa\32\3e\3e\48\2d\3e\ad\f1\27\3e\0d\a7\22\3e\55\68\1d\3e\7f\35\18\3e\85\0e\13\3e\64\f3\0d\3e\1b\e4\08\3e\aa\e0\03\3e\26\d2\fd\3d\b7\fa\f3\3d\16\3b\ea\3d\56\93\e0\3d\8f\03\d7\3d\df\8b\cd\3d\6b\2c\c4\3d\5f\e5\ba\3d\eb\b6\b1\3d\4c\a1\a8\3d\c4\a4\9f\3d\a1\c1\96\3d\3b\f8\8d\3d\f8\48\85\3d\9a\68\79\3d\7b\75\68\3d\c6\b9\57\3d\da\36\47\3d\4f\ee\36\3d\fe\e1\26\3d\16\14\17\3d\2a\87\07\3d\a9\7c\f0\3c\bd\7a\d2\3c\fd\11\b5\3c\77\4e\98\3c\42\80\78\3c\5f\fa\41\3c\b6\4d\0d\3c\58\d4\b5\3b\f2\f4\2e\3b\00\00\00\00\00\00\00\00\39\a1\90\e2\00\00\00\00\bc\de\ea\9b\71\ac\77\c3\90\b9\dd\d4\b8\3f\89\de\7c\e8\a8\e4\6a\f1\df\e8\ab\de\f2\eb\e8\a6\49\ee\fd\4e\20\f0\8e\db\9b\f1\bb\58\d4\f2\4b\10\da\f3\78\6d\b8\f4\8a\ad\77\f5\3d\e8\1d\f6\84\b7\af\f6\73\a5\30\f7\51\76\a3\f7\b6\5b\0a\f8\9d\18\67\f8\4f\1b\bb\f8\62\90\07\f9\ca\70\4d\f9\7d\8c\8d\f9\8a\92\c8\f9\5b\17\ff\f9\96\99\31\fa\f8\85\60\fa\62\3a\8c\fa\4e\08\b5\fa\c8\36\db\fa\10\04\ff\fa\ea\a6\20\fb\b4\4f\40\fb\51\29\5e\fb\e9\59\7a\fb\8c\03\95\fb\ba\44\ae\fb\d8\38\c6\fb\92\f8\dc\fb\30\9a\f2\fb\df\31\07\fc\ed\d1\1a\fc\02\8b\2d\fc\4d\6c\3f\fc\ac\83\50\fc\d1\dd\60\fc\62\86\70\fc\10\88\7f\fc\b4\ec\8d\fc\62\bd\9b\fc\7c\02\a9\fc\c3\c3\b5\fc\64\08\c2\fc\0a\d7\cd\fc\e3\35\d9\fc\b0\2a\e4\fc\ce\ba\ee\fc\3b\eb\f8\fc\a0\c0\02\fd\59\3f\0c\fd\7b\6b\15\fd\d6\48\1e\fd\ff\da\26\fd\52\25\2f\fd\f7\2a\37\fd\e5\ee\3e\fd\e7\73\46\fd\9e\bc\4d\fd\85\cb\54\fd\f2\a2\5b\fd\1b\45\62\fd\15\b4\68\fd\da\f1\6e\fd\47\00\75\fd\20\e1\7a\fd\12\96\80\fd\b4\20\86\fd\85\82\8b\fd\f5\bc\90\fd\5e\d1\95\fd\0b\c1\9a\fd\36\8d\9f\fd\08\37\a4\fd\9e\bf\a8\fd\06\28\ad\fd\41\71\b1\fd\46\9c\b5\fd\fd\a9\b9\fd\46\9b\bd\fd\f6\70\c1\fd\d8\2b\c5\fd\ac\cc\c8\fd\2d\54\cc\fd\0b\c3\cf\fd\ef\19\d3\fd\7a\59\d6\fd\45\82\d9\fd\e5\94\dc\fd\e6\91\df\fd\ce\79\e2\fd\1f\4d\e5\fd\52\0c\e8\fd\de\b7\ea\fd\34\50\ed\fd\be\d5\ef\fd\e3\48\f2\fd\06\aa\f4\fd\84\f9\f6\fd\b6\37\f9\fd\f4\64\fb\fd\8d\81\fd\fd\d0\8d\ff\fd\08\8a\01\fe\7a\76\03\fe\6c\53\05\fe\1c\21\07\fe\c9\df\08\fe\ab\8f\0a\fe\fb\30\0c\fe\ec\c3\0d\fe\b1\48\0f\fe\76\bf\10\fe\69\28\12\fe\b4\83\13\fe\7c\d1\14\fe\e7\11\16\fe\16\45\17\fe\2a\6b\18\fe\3e\84\19\fe\70\90\1a\fe\d6\8f\1b\fe\89\82\1c\fe\9b\68\1d\fe\20\42\1e\fe\26\0f\1f\fe\bc\cf\1f\fe\ed\83\20\fe\c3\2b\21\fe\45\c7\21\fe\78\56\22\fe\5f\d9\22\fe\fb\4f\23\fe\4a\ba\23\fe\49\18\24\fe\f2\69\24\fe\3c\af\24\fe\1e\e8\24\fe\8b\14\25\fe\74\34\25\fe\c7\47\25\fe\70\4e\25\fe\5a\48\25\fe\6a\35\25\fe\86\15\25\fe\8f\e8\24\fe\64\ae\24\fe\e1\66\24\fe\df\11\24\fe\34\af\23\fe\b4\3e\23\fe\2c\c0\22\fe\6b\33\22\fe\38\98\21\fe\58\ee\20\fe\8c\35\20\fe\92\6d\1f\fe\21\96\1e\fe\f0\ae\1d\fe\ac\b7\1c\fe\02\b0\1b\fe\98\97\1a\fe\0d\6e\19\fe\fd\32\18\fe\fe\e5\16\fe\9d\86\15\fe\64\14\14\fe\d3\8e\12\fe\65\f5\10\fe\8c\47\0f\fe\b1\84\0d\fe\36\ac\0b\fe\73\bd\09\fe\b5\b7\07\fe\40\9a\05\fe\4c\64\03\fe\04\15\01\fe\88\ab\fe\fd\e9\26\fc\fd\29\86\f9\fd\3b\c8\f6\fd\01\ec\f3\fd\4a\f0\f0\fd\d1\d3\ed\fd\3d\95\ea\fd\1e\33\e7\fd\e9\ab\e3\fd\fb\fd\df\fd\91\27\dc\fd\cd\26\d8\fd\a8\f9\d3\fd\fc\9d\cf\fd\76\11\cb\fd\98\51\c6\fd\b3\5b\c1\fd\e2\2c\bc\fd\06\c2\b6\fd\be\17\b1\fd\63\2a\ab\fd\fd\f5\a4\fd\40\76\9e\fd\7a\a6\97\fd\92\81\90\fd\f2\01\89\fd\82\21\81\fd\8e\d9\78\fd\bb\22\70\fd\ed\f4\66\fd\32\47\5d\fd\9c\0f\53\fd\2b\43\48\fd\9a\d5\3c\fd\36\b9\30\fd\a4\de\23\fd\9e\34\16\fd\a3\a7\07\fd\9b\21\f8\fc\5b\89\e7\fc\20\c2\d5\fc\db\aa\c2\fc\5e\1d\ae\fc\4e\ed\97\fc\d4\e6\7f\fc\f3\cc\65\fc\62\57\49\fc\c8\2f\2a\fc\19\ee\07\fc\c1\13\e2\fb\1a\05\b8\fb\78\00\89\fb\a5\11\54\fb\05\00\18\fb\82\34\d3\fa\76\92\83\fa\32\3b\26\fa\1c\2d\b7\f9\a2\a1\30\f9\23\f0\89\f8\d2\77\b5\f7\0c\65\9c\f6\f0\30\15\f5\3c\0e\cb\f2\5d\b1\ef\ee\cf\6e\da\e6\12\22\ad\76\00\00\00\00\53\1b\0f\60\a6\47\e4\6c\a2\46\5b\72\1d\05\60\75\eb\21\49\77\bd\25\9a\78\c3\45\90\79\5d\ce\4b\7a\9f\62\df\7a\a6\82\56\7b\c6\a8\b8\7b\22\e7\0a\7c\e7\cc\50\7c\5b\ec\8c\7c\d6\2c\c1\7c\d2\fe\ee\7c\0b\7e\17\7d\83\88\3b\7d\6c\ce\5b\7d\64\dd\78\7d\86\28\93\7d\57\0e\ab\7d\30\dd\c0\7d\88\d6\d4\7d\85\31\e7\7d\ea\1c\f8\7d\a3\c0\07\7e\fa\3e\16\7e\87\b5\23\7e\fd\3d\30\7e\c2\ee\3b\7e\77\db\46\7e\5d\15\51\7e\b3\ab\5a\7e\f7\ab\63\7e\2c\22\6c\7e\06\19\74\7e\18\9a\7b\7e\fa\ad\82\7e\63\5c\89\7e\4b\ac\8f\7e\fb\a3\95\7e\24\49\9b\7e\ef\a0\a0\7e\0d\b0\a5\7e\c3\7a\aa\7e\f3\04\af\7e\2a\52\b3\7e\a5\65\b7\7e\59\42\bb\7e\fd\ea\be\7e\0a\62\c2\7e\c4\a9\c5\7e\41\c4\c8\7e\65\b3\cb\7e\ed\78\ce\7e\71\16\d1\7e\62\8d\d3\7e\12\df\d5\7e\b4\0c\d8\7e\5c\17\da\7e\05\00\dc\7e\8e\c7\dd\7e\bf\6e\df\7e\47\f6\e0\7e\be\5e\e2\7e\a9\a8\e3\7e\73\d4\e4\7e\76\e2\e5\7e\f5\d2\e6\7e\20\a6\e7\7e\10\5c\e8\7e\cd\f4\e8\7e\47\70\e9\7e\59\ce\e9\7e\ca\0e\ea\7e\47\31\ea\7e\68\35\ea\7e\ab\1a\ea\7e\71\e0\e9\7e\02\86\e9\7e\88\0a\e9\7e\08\6d\e8\7e\6a\ac\e7\7e\69\c7\e6\7e\9c\bc\e5\7e\67\8a\e4\7e\fc\2e\e3\7e\57\a8\e1\7e\2f\f4\df\7e\fa\0f\de\7e\d9\f8\db\7e\94\ab\d9\7e\8d\24\d7\7e\ae\5f\d4\7e\5c\58\d1\7e\5f\09\ce\7e\cb\6c\ca\7e\e2\7b\c6\7e\ee\2e\c2\7e\1a\7d\bd\7e\35\5c\b8\7e\75\c0\b2\7e\20\9c\ac\7e\27\df\a5\7e\9f\76\9e\7e\16\4c\96\7e\ba\44\8d\7e\33\40\83\7e\28\17\78\7e\33\99\6b\7e\1a\8a\5d\7e\ed\9d\4d\7e\7a\73\3b\7e\2f\8c\26\7e\f5\3f\0e\7e\5d\aa\f1\7d\72\8c\cf\7d\1e\1a\a6\7d\fb\a0\72\7d\97\e0\30\7d\ab\b4\d9\7c\1a\0f\60\7c\dc\0b\a9\7b\76\21\72\7a\e5\64\d6\77\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\65\27\0b\31\ec\c4\82\2d\92\b5\d6\2d\ad\99\0c\2e\37\17\29\2e\88\84\42\2e\8f\c6\59\2e\c6\66\6f\2e\82\df\81\2e\d9\86\8b\2e\15\c0\94\2e\48\9c\9d\2e\ae\28\a6\2e\c5\6f\ae\2e\08\7a\b6\2e\6f\4e\be\2e\cb\f2\c5\2e\03\6c\cd\2e\46\be\d4\2e\2f\ed\db\2e\df\fb\e2\2e\12\ed\e9\2e\34\c3\f0\2e\66\80\f7\2e\93\26\fe\2e\b7\5b\02\2f\42\9a\05\2f\9c\cf\08\2f\67\fc\0b\2f\37\21\0f\2f\93\3e\12\2f\f7\54\15\2f\d5\64\18\2f\97\6e\1b\2f\9f\72\1e\2f\46\71\21\2f\e3\6a\24\2f\c3\5f\27\2f\31\50\2a\2f\72\3c\2d\2f\c6\24\30\2f\6b\09\33\2f\9b\ea\35\2f\8c\c8\38\2f\71\a3\3b\2f\7c\7b\3e\2f\db\50\41\2f\b9\23\44\2f\43\f4\46\2f\9e\c2\49\2f\f2\8e\4c\2f\64\59\4f\2f\16\22\52\2f\2b\e9\54\2f\c2\ae\57\2f\fc\72\5a\2f\f6\35\5d\2f\cd\f7\5f\2f\9d\b8\62\2f\81\78\65\2f\94\37\68\2f\f0\f5\6a\2f\ab\b3\6d\2f\e0\70\70\2f\a4\2d\73\2f\0f\ea\75\2f\37\a6\78\2f\31\62\7b\2f\13\1e\7e\2f\f9\6c\80\2f\f0\ca\81\2f\f9\28\83\2f\1e\87\84\2f\68\e5\85\2f\e1\43\87\2f\92\a2\88\2f\83\01\8a\2f\bf\60\8b\2f\4d\c0\8c\2f\37\20\8e\2f\85\80\8f\2f\3f\e1\90\2f\6e\42\92\2f\1a\a4\93\2f\4c\06\95\2f\0b\69\96\2f\61\cc\97\2f\54\30\99\2f\ed\94\9a\2f\35\fa\9b\2f\32\60\9d\2f\ee\c6\9e\2f\70\2e\a0\2f\bf\96\a1\2f\e5\ff\a2\2f\e8\69\a4\2f\d1\d4\a5\2f\a8\40\a7\2f\74\ad\a8\2f\3e\1b\aa\2f\0e\8a\ab\2f\eb\f9\ac\2f\df\6a\ae\2f\f0\dc\af\2f\27\50\b1\2f\8d\c4\b2\2f\29\3a\b4\2f\04\b1\b5\2f\26\29\b7\2f\99\a2\b8\2f\63\1d\ba\2f\8f\99\bb\2f\24\17\bd\2f\2b\96\be\2f\ae\16\c0\2f\b6\98\c1\2f\4b\1c\c3\2f\76\a1\c4\2f\42\28\c6\2f\b8\b0\c7\2f\e0\3a\c9\2f\c6\c6\ca\2f\72\54\cc\2f\ef\e3\cd\2f\47\75\cf\2f\84\08\d1\2f\b2\9d\d2\2f\da\34\d4\2f\07\ce\d5\2f\45\69\d7\2f\9f\06\d9\2f\20\a6\da\2f\d4\47\dc\2f\c7\eb\dd\2f\05\92\df\2f\9a\3a\e1\2f\94\e5\e2\2f\ff\92\e4\2f\e8\42\e6\2f\5c\f5\e7\2f\6a\aa\e9\2f\1f\62\eb\2f\8b\1c\ed\2f\ba\d9\ee\2f\be\99\f0\2f\a4\5c\f2\2f\7d\22\f4\2f\59\eb\f5\2f\48\b7\f7\2f\5b\86\f9\2f\a5\58\fb\2f\36\2e\fd\2f\20\07\ff\2f\bc\71\00\30\a7\61\01\30\5d\53\02\30\e6\46\03\30\4e\3c\04\30\a0\33\05\30\e5\2c\06\30\2b\28\07\30\7b\25\08\30\e3\24\09\30\6f\26\0a\30\2c\2a\0b\30\27\30\0c\30\6d\38\0d\30\0d\43\0e\30\15\50\0f\30\95\5f\10\30\9b\71\11\30\37\86\12\30\7b\9d\13\30\77\b7\14\30\3e\d4\15\30\e0\f3\16\30\73\16\18\30\08\3c\19\30\b6\64\1a\30\90\90\1b\30\ad\bf\1c\30\24\f2\1d\30\0c\28\1f\30\7f\61\20\30\96\9e\21\30\6c\df\22\30\1d\24\24\30\c5\6c\25\30\84\b9\26\30\78\0a\28\30\c4\5f\29\30\88\b9\2a\30\ea\17\2c\30\10\7b\2d\30\20\e3\2e\30\45\50\30\30\a9\c2\31\30\7b\3a\33\30\ea\b7\34\30\29\3b\36\30\6e\c4\37\30\ee\53\39\30\e7\e9\3a\30\96\86\3c\30\3c\2a\3e\30\1f\d5\3f\30\89\87\41\30\c8\41\43\30\2e\04\45\30\14\cf\46\30\d7\a2\48\30\da\7f\4a\30\88\66\4c\30\52\57\4e\30\b2\52\50\30\2a\59\52\30\46\6b\54\30\9c\89\56\30\ce\b4\58\30\8b\ed\5a\30\8f\34\5d\30\a7\8a\5f\30\b2\f0\61\30\a2\67\64\30\7f\f0\66\30\6b\8c\69\30\a3\3c\6c\30\85\02\6f\30\93\df\71\30\79\d5\74\30\13\e6\77\30\75\13\7b\30\f2\5f\7e\30\16\e7\80\30\8c\b0\82\30\0e\8e\84\30\8c\81\86\30\40\8d\88\30\c3\b3\8a\30\1e\f8\8c\30\e5\5d\8f\30\5e\e9\91\30\ad\9f\94\30\1c\87\97\30\71\a7\9a\30\76\0a\9e\30\bb\bc\a1\30\be\ce\a5\30\c2\56\aa\30\d7\73\af\30\3b\53\b5\30\87\3a\bc\30\ff\9c\c4\30\e0\4e\cf\30\f3\1c\de\30\c9\4e\f6\30\34\a3\ed\30\a4\6d\0b\2f\49\ca\39\2f\7f\64\5a\2f\bb\72\74\2f\b7\49\85\2f\73\06\8f\2f\6b\cc\97\2f\f7\d5\9f\2f\60\4a\a7\2f\7f\45\ae\2f\d9\db\b4\2f\0b\1d\bb\2f\43\15\c1\2f\35\ce\c6\2f\c3\4f\cc\2f\69\a0\d1\2f\93\c5\d6\2f\d4\c3\db\2f\16\9f\e0\2f\b5\5a\e5\2f\a0\f9\e9\2f\66\7e\ee\2f\48\eb\f2\2f\47\42\f7\2f\2c\85\fb\2f\91\b5\ff\2f\74\ea\01\30\3f\f2\03\30\c2\f2\05\30\89\ec\07\30\12\e0\09\30\d4\cd\0b\30\3a\b6\0d\30\aa\99\0f\30\80\78\11\30\14\53\13\30\b8\29\15\30\b8\fc\16\30\5d\cc\18\30\ec\98\1a\30\a4\62\1c\30\c3\29\1e\30\85\ee\1f\30\20\b1\21\30\cc\71\23\30\bb\30\25\30\1f\ee\26\30\28\aa\28\30\06\65\2a\30\e4\1e\2c\30\f1\d7\2d\30\55\90\2f\30\3d\48\31\30\d1\ff\32\30\3b\b7\34\30\a2\6e\36\30\2f\26\38\30\0a\de\39\30\5b\96\3b\30\48\4f\3d\30\fa\08\3f\30\98\c3\40\30\4a\7f\42\30\39\3c\44\30\8e\fa\45\30\71\ba\47\30\0d\7c\49\30\8d\3f\4b\30\1c\05\4d\30\e7\cc\4e\30\1c\97\50\30\ea\63\52\30\82\33\54\30\16\06\56\30\da\db\57\30\04\b5\59\30\cb\91\5b\30\6a\72\5d\30\1e\57\5f\30\27\40\61\30\c6\2d\63\30\42\20\65\30\e6\17\67\30\fd\14\69\30\db\17\6b\30\d5\20\6d\30\4a\30\6f\30\9a\46\71\30\2d\64\73\30\75\89\75\30\e7\b6\77\30\05\ed\79\30\58\2c\7c\30\76\75\7e\30\7f\64\80\30\d1\93\81\30\0f\c9\82\30\a0\04\84\30\f7\46\85\30\8f\90\86\30\f2\e1\87\30\b9\3b\89\30\8b\9e\8a\30\26\0b\8c\30\5c\82\8d\30\1a\05\8f\30\6f\94\90\30\8c\31\92\30\d1\dd\93\30\d5\9a\95\30\70\6a\97\30\cc\4e\99\30\7a\4a\9b\30\8e\60\9d\30\c2\94\9f\30\ae\eb\a1\30\0c\6b\a4\30\2b\1a\a7\30\90\02\aa\30\f7\30\ad\30\00\b7\b0\30\16\ae\b4\30\ef\3c\b9\30\f6\a2\be\30\9f\53\c5\30\06\47\ce\30\e2\53\dc\30\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\00\00\00\00\00\00\00\53\e4\60\cd\69\c8\32\17\00\00\00\00\00\00\00\00\b4\8e\5c\20\42\bd\7f\0e\00\00\00\00\00\00\00\00\61\b2\73\a8\92\ac\1f\52\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\33\fc\80\38\87\ee\32\74\00\00\00\00\00\00\00\00\3f\3b\a1\06\29\aa\3f\11\00\00\00\00\00\00\00\00\07\c5\24\a4\59\ca\c7\4a\00\00\00\00\00\00\00\00\49\f6\2d\0d\f0\bc\79\5d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\69\e8\4b\8a\9b\1b\07\79\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\31\cc\af\21\50\cb\3b\4c\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\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\00\00\00\00\00\00\c2\18\1f\51\af\fd\0e\68\00\00\00\00\00\00\00\00\f2\de\66\25\1b\bd\12\02\00\00\00\00\00\00\00\00\57\4b\60\f7\30\b6\4b\01\00\00\00\00\00\00\00\00\2d\5e\38\35\bd\a3\9e\41\00\00\00\00\00\00\00\00\b9\75\86\82\ac\4c\06\52\00\00\00\00\00\00\00\00\93\09\94\d1\eb\ef\43\73\00\00\00\00\00\00\00\00\f8\0b\f9\c5\e6\eb\14\10\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b0\35\55\5d\5f\6e\b4\55\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\6e\36\25\21\c9\33\b2\47\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\28\57\5e\6a\92\06\04\38\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1d\21\e0\fb\6a\ee\b3\7a\00\00\00\00\00\00\00\00\64\29\d8\ba\05\ea\60\59\00\00\00\00\00\00\00\00\bd\33\8e\29\87\24\b9\6f\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\87\de\94\fe\ab\cd\1a\33\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d9\4d\e4\5e\ae\f0\ec\07\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\06\f4\aa\48\0a\63\bd\6d\00\00\00\00\00\00\00\00\08\b1\d5\da\cc\bb\2c\09\00\00\00\00\00\00\00\00\a5\8e\c5\08\60\f5\bb\25\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\e1\ae\b4\0d\66\af\f5\1a\00\00\00\00\00\00\00\00\4d\ed\90\c8\9f\8d\d9\50\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c8\72\62\a9\49\ed\53\1e\00\00\00\00\00\00\00\00\7a\0f\bb\13\9c\e8\e8\25\00\00\00\00\00\00\00\00\ac\e9\54\8c\61\91\b1\77\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1d\ad\44\6b\28\73\05\4b\00\00\00\00\00\00\00\00\32\ec\0a\43\f9\67\e3\4e\00\00\00\00\00\00\00\00\3f\a7\cd\93\f7\41\9c\22\00\00\00\00\00\00\00\00\0f\11\c1\78\75\52\43\6b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\d5\56\c6\6b\98\cc\23\00\00\00\00\00\00\00\00\a8\8a\ec\b7\86\be\bf\2c\00\00\00\00\00\00\00\00\a9\d6\f3\32\14\d7\f7\7b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a1\1f\c2\b9\09\08\10\23\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\6c\51\3f\32\8f\0c\c9\16\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\83\d5\11\d7\43\56\40\40\00\00\00\00\00\00\00\00\72\25\6b\66\ea\35\28\48\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\91\a2\04\e8\a6\44\77\5a\00\00\00\00\00\00\00\00\36\cb\05\a2\d0\15\15\71\00\00\00\00\00\00\00\00\03\3e\87\ca\44\5b\5a\0d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\72\a8\39\be\4d\97\6e\62\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\99\0b\9d\bc\34\66\e6\7c\00\00\00\00\00\00\00\00\80\4e\c4\eb\c1\ff\1f\1c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a8\ba\62\00\9f\ff\f1\4b\00\00\00\00\00\00\00\00\a9\b4\3d\60\c3\3f\77\6f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\48\6a\60\46\a1\53\2a\7e\00\00\00\00\00\00\00\00\6d\42\fc\cb\44\74\da\2e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ca\27\ba\7e\ab\55\35\79\00\00\00\00\00\00\00\00\de\58\34\2f\8b\55\c1\4b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\dc\ca\c1\79\a9\15\5e\46\00\00\00\00\00\00\00\00\c9\1e\19\ec\89\cd\fa\0b\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\9a\d4\e1\93\e0\91\a7\67\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\18\6e\88\73\f7\e9\fa\58\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\03\96\42\52\c9\06\84\6d\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\7f\06\55\9a\a0\ee\f2\5c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\58\08\b7\d6\08\3d\c5\76\00\00\00\00\00\00\00\00\6e\ca\64\0c\4b\8c\76\54\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\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\00\00\00\00\00\00\1b\09\a1\9c\41\b6\9a\35\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1d\cf\5d\42\63\de\e0\79\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\9d\93\b2\17\7b\5b\6f\3e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\83\83\2a\78\ff\c6\50\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\3f\6e\84\59\7b\55\e2\28\00\00\00\00\00\00\00\00\cf\89\e5\2f\da\ea\1a\33\00\00\00\00\00\00\00\00\21\76\ef\5d\c8\d2\f0\3f\00\00\00\00\00\00\00\00\a9\53\6b\75\7a\07\ed\0f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5c\d9\bb\ab\d7\2d\71\64\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\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\00\00\00\00\00\00\d5\ce\22\c5\75\28\1c\31\00\00\00\00\00\00\00\00\8b\82\6b\36\93\32\63\7d\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\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\00\00\00\00\00\00\6d\1e\f7\59\9e\cb\47\42\00\00\00\00\00\00\00\00\08\e6\74\f0\85\be\d9\52\00\00\00\00\00\00\00\00\8b\1f\92\6c\27\2e\90\67\00\00\00\00\00\00\00\00\b6\53\db\a3\d8\1c\ba\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\cd\b2\06\80\12\cd\22\61\00\00\00\00\00\00\00\00\81\5f\08\20\57\80\6b\79\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\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\00\00\00\00\00\00\4a\1c\4d\2d\15\dd\1b\75\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4b\c9\3f\70\38\a4\d1\2b\00\00\00\00\00\00\00\00\cf\dd\27\46\a3\06\63\7b\00\00\00\00\00\00\00\00\42\d5\b1\17\4c\c8\3b\1a\00\00\00\00\00\00\00\00\93\4a\9e\1d\5f\ba\ca\20\00\00\00\00\00\00\00\00\9c\ee\82\72\7b\b4\7e\54\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d4\94\ec\e2\00\fa\05\64\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\57\09\9b\dd\24\d6\ad\3b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4c\1f\21\cd\4c\cf\9f\5e\00\00\00\00\00\00\00\00\1f\67\69\00\20\c3\47\76\00\00\00\00\00\00\00\00\73\e0\41\00\f4\d9\ec\29\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\ee\66\40\8d\14\82\71\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\fd\29\3f\85\e1\f1\ef\40\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b9\c0\f8\5e\3a\10\ab\29\00\00\00\00\00\00\00\00\e7\f0\b6\f6\48\d4\15\74\00\00\00\00\00\00\00\00\21\ad\64\34\5b\49\1b\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\42\a7\ee\40\4f\51\5d\3d\00\00\00\00\00\00\00\00\12\51\2a\11\a3\a5\b4\0c\00\00\00\00\00\00\00\00\ab\72\ba\ea\85\e7\f0\47\00\00\00\00\00\00\00\00\56\0f\69\65\67\21\ed\59\00\00\00\00\00\00\00\00\2c\53\c3\3e\c1\69\68\30\00\00\00\00\00\00\00\00\fb\13\3a\c7\18\42\41\1e\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\83\b7\8e\32\8c\ba\8b\6b\00\00\00\00\00\00\00\00\64\65\32\3f\2f\a9\6e\06\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\37\b7\23\38\11\48\2c\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\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\00\00\00\00\00\00\a8\26\99\07\05\f9\8d\31\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\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\00\00\00\00\00\00\b0\73\c6\a3\7a\ce\fd\3d\00\00\00\00\00\00\00\00\4e\08\5c\a6\0c\a1\be\06\00\00\00\00\00\00\00\00\62\0a\f3\cf\4f\49\6e\48\00\00\00\00\00\00\00\00\fa\cc\ef\c3\a3\db\89\5a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2c\2e\58\ed\7d\a0\6a\74\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\17\1d\c8\f9\ba\20\b0\77\00\00\00\00\00\00\00\00\2e\12\1d\dc\74\14\ce\0a\00\00\00\00\00\00\00\00\ba\56\24\13\92\99\81\0d\00\00\00\00\00\00\00\00\69\6c\ed\97\f6\ff\e1\10\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\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\00\00\00\00\00\00\6b\a9\3a\42\7a\f0\cd\6b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\72\49\ad\64\d7\1c\47\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c3\c2\4e\8d\10\1d\ff\4a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\32\ea\fe\29\62\22\3d\73\00\00\00\00\00\00\00\00\5f\52\3f\5a\7d\35\06\08\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\11\df\d4\65\5e\79\9e\0a\00\00\00\00\00\00\00\00\d5\16\4a\ff\b5\17\46\4d\00\00\00\00\00\00\00\00\45\4e\8e\bf\d1\ce\4b\50\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4c\5a\4e\bb\27\73\76\5d\00\00\00\00\00\00\00\00\6f\f8\10\d5\f8\07\6a\3a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2e\84\ea\cc\74\ac\45\2b\00\00\00\00\00\00\00\00\9d\92\12\00\c9\8b\0b\3b\00\00\00\00\00\00\00\00\44\37\17\40\bb\6e\ce\09\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f9\ab\96\dc\22\98\93\47\00\00\00\00\00\00\00\00\f7\56\bc\93\2b\7e\78\59\00\00\00\00\00\00\00\00\5a\b6\55\3c\db\4e\eb\57\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\14\b4\eb\18\02\cb\db\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5f\49\f0\46\33\6d\e7\4b\00\00\00\00\00\00\00\00\db\2d\56\0c\40\a4\70\6f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a7\a7\46\13\a4\00\20\7e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\fa\32\0f\2f\80\00\89\72\00\00\00\00\00\00\00\00\b9\ff\d2\3a\a0\40\2b\4f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c9\d7\f4\2d\7d\ca\d9\0d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2a\91\ce\97\63\4c\a4\75\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\20\c9\c1\bb\87\e9\00\54\00\00\00\00\00\00\00\00\68\3b\b2\aa\e9\23\01\29\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f3\1a\0b\36\b6\ae\38\1e\00\00\00\00\00\00\00\00\b0\e1\8d\c3\63\da\c6\25\00\00\00\00\00\00\00\00\0e\ad\38\5a\7e\48\9c\57\00\00\00\00\00\00\00\00\51\d8\c6\f0\9d\5a\83\2d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ff\58\1b\64\cb\9e\8e\1b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0f\bb\6a\cc\1d\d8\0e\5b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\24\62\b3\47\d7\98\23\3f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ac\24\04\30\68\cf\53\19\00\00\00\00\00\00\00\00\d7\2d\05\3c\42\c3\a8\5f\00\00\00\00\00\00\00\00\4d\79\06\cb\12\f4\92\37\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c4\0e\9d\ae\ae\ce\6a\5b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\6b\60\85\96\d6\4d\46\55\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\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\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\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\00\00\00\00\52\5d\0d\58\18\c0\60\55\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\22\0d\fd\c5\97\7b\60\3d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\42\b2\ad\92\8e\60\f3\77\00\00\00\00\00\00\00\00\d3\1e\59\37\b2\38\f0\55\00\00\00\00\00\00\00\00\88\66\2f\c5\de\46\6c\6b\00\00\00\00\00\00\00\00\15\a0\3d\3b\4b\ac\23\23\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\54\2e\da\77\41\d6\50\7e\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f2\4a\81\a5\ed\18\de\67\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\30\43\a0\13\58\e4\6e\09\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\7d\34\55\cf\64\a2\5e\77\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\22\f5\83\bd\dd\83\3a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\93\82\17\0f\3c\05\b7\75\00\00\00\00\00\00\00\00\38\63\dd\12\8b\c6\24\53\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\e5\32\6c\d0\e3\e9\31\2b\00\00\00\00\00\00\00\00\cf\9f\43\62\2e\32\ff\3a\00\00\00\00\00\00\00\00\c2\87\d4\fa\b9\fe\be\09\00\00\00\00\00\00\00\00\b3\a9\89\79\68\be\2e\4c\00\00\00\00\00\00\00\00\10\0a\f6\4b\01\37\9d\0f\00\00\00\00\00\00\00\00\94\8c\f3\9e\c1\84\84\53\00\00\00\00\00\00\00\00\b9\6f\b0\06\f2\a5\65\28\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\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\00\00\00\00\00\00\30\30\95\f8\88\0a\68\31\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4c\1b\69\04\76\90\32\3d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\1d\72\33\dc\80\cf\0f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\e9\26\31\08\ac\1c\5a\64\00\00\00\00\00\00\00\00\a3\70\3d\0a\d7\a3\70\3d\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\40\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\50\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\00\00\00\00\00\00\4d\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\00\00\00\00\00\28\6c\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\00\00\00\00\40\7f\3c\00\00\00\00\00\00\00\00\00\00\00\00\00\10\9f\4b\00\00\00\00\00\00\00\00\00\00\00\00\00\d4\86\1e\00\00\00\00\00\00\00\00\00\00\00\00\80\44\14\13\00\00\00\00\00\00\00\00\00\00\00\00\a0\55\d9\17\00\00\00\00\00\00\00\00\00\00\00\00\08\ab\cf\5d\00\00\00\00\00\00\00\00\00\00\00\00\e5\ca\a1\5a\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\00\00\d0\05\cd\9c\6d\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\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\00\00\00\00\00\00\00\00\34\cc\22\f4\26\45\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\40\11\5f\76\dd\0c\3c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\80\d8\d6\98\45\90\a4\72\00\00\00\00\00\00\00\00\50\47\86\7f\2b\da\a6\47\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\d5\53\47\d0\36\f2\02\00\00\00\00\00\00\00\00\90\65\94\2c\42\62\d7\01\00\00\00\00\00\00\00\00\f5\7e\b9\b7\d2\3a\4d\42\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2f\eb\88\9f\f4\55\cc\63\00\00\00\00\00\00\00\00\fb\25\6b\c7\71\6b\bf\3c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\17\a3\be\1c\ed\ee\52\3d\00\00\00\00\00\00\00\00\dd\4b\ee\63\a8\aa\a7\4c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\16\b6\96\71\a8\bc\db\60\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\41\be\bd\98\63\ab\ab\6b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\cb\4b\29\43\5f\a5\25\3b\00\00\00\00\00\00\00\00\be\9e\f3\13\b7\0e\ef\49\00\00\00\00\00\00\00\00\37\43\78\6c\32\69\35\6e\00\00\00\00\00\00\00\00\04\54\96\07\7f\c3\c2\49\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a3\71\ed\3d\bb\28\a0\69\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\fa\e0\79\da\c6\67\26\79\00\00\00\00\00\00\00\00\38\59\18\91\b8\01\70\57\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\05\5b\31\58\81\4f\54\00\00\00\00\00\00\00\00\21\c7\b1\3d\ae\61\63\69\00\00\00\00\00\00\00\00\e9\38\1e\cd\19\3a\bc\03\00\00\00\00\00\00\00\00\23\c7\65\40\a0\48\ab\04\00\00\00\00\00\00\00\00\76\9c\3f\28\64\0d\eb\62\00\00\00\00\00\00\00\00\94\83\4f\32\bd\d0\a5\3b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\cb\1e\4e\cf\13\8b\99\7e\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\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\00\00\00\00\00\00\97\dc\8e\ae\45\6e\8a\2a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\56\9c\5f\70\26\26\3c\59\00\00\00\00\00\00\00\00\6c\83\77\0c\b0\2f\8b\6f\00\00\00\00\00\00\00\00\47\64\95\0f\9c\fb\6d\0b\00\00\00\00\00\00\00\00\ac\5e\bd\89\41\bd\24\47\00\00\00\00\00\00\00\00\57\b6\2c\ec\91\ec\ed\58\00\00\00\00\00\00\00\00\ed\e3\37\67\b6\67\29\2f\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\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\00\00\00\00\00\00\dd\dc\7f\14\8d\05\09\31\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1a\c9\07\70\ac\18\9e\6c\00\00\00\00\00\00\00\00\b0\dd\04\c6\6b\cf\e2\03\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\7e\c0\60\3f\8f\7e\cb\4f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c5\2c\07\d3\bf\f5\ad\5c\00\00\00\00\00\00\00\00\f6\f7\c8\c7\2f\73\d9\73\00\00\00\00\00\00\00\00\fa\9a\dd\dc\fd\e7\67\28\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\26\42\1a\a9\7c\5a\22\1f\00\00\00\00\00\00\00\00\58\69\b0\e9\8d\78\75\33\00\00\00\00\00\00\00\00\ae\83\1c\64\b1\d6\52\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\fb\11\c3\98\45\be\ba\29\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0c\66\58\5f\a6\e4\99\18\00\00\00\00\00\00\00\00\8f\7f\2e\f7\cf\5d\c0\5e\00\00\00\00\00\00\00\00\73\1f\fa\f4\43\75\70\76\00\00\00\00\00\00\00\00\a8\53\1c\79\4a\49\06\6a\00\00\00\00\00\00\00\00\92\68\63\17\9d\db\87\04\00\00\00\00\00\00\00\00\b6\42\3c\5d\84\d2\a9\45\00\00\00\00\00\00\00\00\b2\a9\45\ba\92\23\8a\0b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\26\d9\0c\43\95\d7\07\32\00\00\00\00\00\00\00\00\b8\07\e8\49\bd\e6\44\7f\00\00\00\00\00\00\00\00\a6\09\62\9c\6c\20\16\5f\00\00\00\00\00\00\00\00\0f\8c\7a\c3\87\a8\db\36\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c7\ac\e5\94\94\82\92\6f\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\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\00\00\00\00\00\00\69\5d\c2\5f\66\58\b2\7e\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\5d\b8\aa\01\56\cd\37\7a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\09\60\4d\31\6b\98\7b\57\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\07\73\84\be\13\8f\58\14\00\00\00\00\00\00\00\00\c8\8f\25\ae\d8\b2\6e\59\00\00\00\00\00\00\00\00\bb\f3\ae\d9\8e\5f\ca\6f\00\00\00\00\00\00\00\00\54\58\0d\48\b9\7b\de\25\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\da\94\80\51\a1\2b\1b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\4a\74\ac\07\16\3a\35\00\00\00\00\00\00\00\00\e8\5c\91\97\89\9b\88\42\00\00\00\00\00\00\00\00\11\da\ba\fe\35\61\95\69\00\00\00\00\00\00\00\00\95\90\69\7e\83\b9\fa\43\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f5\78\c2\ba\ee\e0\1b\1d\00\00\00\00\00\00\00\00\32\17\73\69\2a\d9\62\64\00\00\00\00\00\00\00\00\fe\dc\cf\03\75\8f\7b\7d\00\00\00\00\00\00\00\00\3e\d4\c3\44\52\73\da\5c\00\00\00\00\00\00\00\00\a7\64\fa\6a\13\88\08\3a\00\00\00\00\00\00\00\00\d0\fd\b8\45\18\aa\8a\08\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4b\86\78\f6\e2\54\ac\36\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d5\51\1c\a1\a2\44\6d\65\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\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\00\00\00\00\00\00\f2\88\d5\42\24\f1\a7\09\00\00\00\00\00\00\00\00\2f\eb\8a\53\6d\ed\11\0c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ac\a9\95\c3\dc\81\c9\37\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b2\27\00\97\d1\c8\7a\38\00\00\00\00\00\00\00\00\9e\31\c0\fc\05\7b\99\06\00\00\00\00\00\00\00\00\03\1f\f8\bd\e3\ec\1f\44\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\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\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\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\00\00\00\00\90\01\5d\f9\d7\02\f0\27\00\00\00\00\00\00\00\00\f4\41\b4\f7\8d\03\ec\31\00\00\00\00\00\00\00\00\71\52\a1\75\71\04\67\7e\00\00\00\00\00\00\00\00\86\d3\84\e9\c6\62\00\0f\00\00\00\00\00\00\00\00\68\08\e6\a3\78\7b\c0\52\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\35\a4\0e\d0\93\f8\cf\6a\00\00\00\00\00\00\00\00\43\4d\12\c4\b8\f6\83\05\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5c\4c\2e\59\c0\18\4f\74\00\00\00\00\00\00\00\00\73\df\79\6f\f0\de\62\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\92\36\17\d7\2b\3e\95\6d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a2\22\0a\40\92\98\9c\1d\00\00\00\00\00\00\00\00\4b\ab\0c\d0\b6\be\03\25\00\00\00\00\00\00\00\00\1d\d6\0f\84\64\ae\44\2e\00\00\00\00\00\00\00\00\d2\e5\89\d2\fe\ec\ea\5c\00\00\00\00\00\00\00\00\47\5f\2c\87\3e\a8\25\74\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0b\55\01\10\4d\c6\6c\63\00\00\00\00\00\00\00\00\4e\aa\01\54\e0\f7\47\3c\00\00\00\00\00\00\00\00\71\0a\81\34\ec\fa\ac\65\00\00\00\00\00\00\00\00\0d\4d\a1\41\a7\39\18\7f\00\00\00\00\00\00\00\00\50\a0\09\12\11\48\de\1e\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\8e\66\9d\ab\60\12\25\36\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\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\00\00\00\00\00\00\b1\a3\7d\01\ef\40\98\16\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f3\2a\d3\58\0a\09\fd\17\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\8e\f9\64\15\10\af\bd\4a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\9b\e4\b4\f5\3c\fd\32\00\00\00\00\00\00\00\00\a1\c2\1d\22\33\8c\bc\3f\00\00\00\00\00\00\00\00\4a\33\a5\ea\3f\af\ab\0f\00\00\00\00\00\00\00\00\0e\40\a7\f2\87\4d\cb\29\00\00\00\00\00\00\00\00\12\10\51\ef\e9\20\3e\74\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\8e\54\f7\c2\b6\89\d0\1a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\92\88\65\7a\7c\a6\2f\7e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\65\a5\3e\7f\22\74\2a\55\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\85\2d\43\b0\69\75\2b\2d\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\73\9a\21\36\a9\70\1c\24\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\18\4e\a7\d8\44\86\2d\4b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\43\62\93\3b\1f\75\6a\3d\00\00\00\00\00\00\00\00\d4\3a\78\0a\67\12\c5\0c\00\00\00\00\00\00\00\00\c5\24\8b\66\80\2b\fb\27\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\73\69\39\a0\f8\73\78\5e\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\fb\10\78\cc\40\a1\41\76\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\44\cd\bd\9f\fa\45\63\54\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5d\48\cc\cc\ab\8e\ed\49\00\00\00\00\00\00\00\00\74\5a\ff\bf\56\f2\68\5c\00\00\00\00\00\00\00\00\11\31\ff\6f\ec\2e\83\73\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\eb\35\5f\e5\d2\1b\ce\28\00\00\00\00\00\00\00\00\b3\81\5b\cf\63\d1\80\79\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\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\00\00\00\00\00\00\d3\33\9f\56\9a\bf\d1\6e\00\00\00\00\00\00\00\00\c8\00\47\ec\80\2f\86\0a\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\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\00\00\00\00\00\00\74\ac\6c\e0\fc\cc\58\18\00\00\00\00\00\00\00\00\c8\eb\43\0c\1e\80\37\0f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\69\20\2a\f3\2e\b8\c6\47\00\00\00\00\00\00\00\00\41\54\fa\57\1d\33\dc\4c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a6\23\77\d9\dd\0f\18\58\00\00\00\00\00\00\00\00\48\76\ea\a7\ea\09\0f\57\00\00\00\00\00\00\00\00\da\13\e5\51\65\cc\d2\2c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\63\b5\f9\f1\9a\db\c5\79\00\00\00\00\00\00\00\00\bc\22\78\ae\81\52\37\18\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\eb\51\61\a4\92\06\a6\5f\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\08\6c\90\22\b5\b9\12\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d0\7f\09\c1\e3\5a\49\60\00\00\00\00\00\00\00\00\c4\df\4b\b1\9c\b1\5b\38\00\00\00\00\00\00\00\00\b5\d7\9e\dd\03\9e\72\46\00\00\00\00\00\00\00\00\d1\46\83\6a\c2\a2\07\6c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\28\33\04\dc\f1\74\7f\73\00\00\00\00\00\00\00\00\f2\3f\05\53\2e\52\5f\50\00\00\00\00\00\00\00\00\ef\8f\c6\e7\b9\26\77\64\00\00\00\00\00\00\00\00\f5\19\dc\30\34\78\ca\5e\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\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\00\00\00\00\00\00\b0\ad\a4\b5\bb\27\36\72\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b1\a7\e8\a5\0a\4f\3a\21\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\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\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\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\00\00\00\00\b0\59\89\94\6b\4f\0a\6a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\95\21\0e\0f\8f\11\8e\6f\00\00\00\00\00\00\00\00\fb\a9\d1\d2\f2\95\71\4b\00\00\00\00\00\00\00\00\34\00\00\00\0b\00\00\00\01\fc\ff\ff\17\00\00\00\08\00\00\00\81\ff\ff\ff\00\00\80\3f\00\00\20\41\00\00\c8\42\00\00\7a\44\00\40\1c\46\00\50\c3\47\00\24\74\49\80\96\18\4b\20\bc\be\4c\28\6b\6e\4e\f9\02\15\50\00\00\00\00\00\00\00\00\00\00\f0\3f\00\00\00\00\00\00\24\40\00\00\00\00\00\00\59\40\00\00\00\00\00\40\8f\40\00\00\00\00\00\88\c3\40\00\00\00\00\00\6a\f8\40\00\00\00\00\80\84\2e\41\00\00\00\00\d0\12\63\41\00\00\00\00\84\d7\97\41\00\00\00\00\65\cd\cd\41\00\00\00\20\5f\a0\02\42\00\00\00\e8\76\48\37\42\00\00\00\a2\94\1a\6d\42\00\00\40\e5\9c\30\a2\42\00\00\90\1e\c4\bc\d6\42\00\00\34\26\f5\6b\0c\43\00\80\e0\37\79\c3\41\43\00\a0\d8\85\57\34\76\43\00\c8\4e\67\6d\c1\ab\43\00\3d\91\60\e4\58\e1\43\40\8c\b5\78\1d\af\15\44\50\ef\e2\d6\e4\1a\4b\44\92\d5\4d\06\cf\f0\80\44\a0\00\80\16\00\20\01\20\02\20\03\20\04\20\05\20\06\20\07\20\08\20\09\20\0a\20\2f\20\5f\20\00\30\ad\00\8b\03\8d\03\a2\03\30\05\90\05\dd\06\3f\08\5f\08\b5\08\e2\08\84\09\a9\09\b1\09\de\09\04\0a\29\0a\31\0a\34\0a\37\0a\3d\0a\5d\0a\84\0a\8e\0a\92\0a\a9\0a\b1\0a\b4\0a\c6\0a\ca\0a\00\0b\04\0b\29\0b\31\0b\34\0b\5e\0b\84\0b\91\0b\9b\0b\9d\0b\c9\0b\0d\0c\11\0c\29\0c\45\0c\49\0c\57\0c\8d\0c\91\0c\a9\0c\b4\0c\c5\0c\c9\0c\df\0c\f0\0c\0d\0d\11\0d\45\0d\49\0d\80\0d\84\0d\b2\0d\bc\0d\d5\0d\d7\0d\83\0e\85\0e\8b\0e\a4\0e\a6\0e\c5\0e\c7\0e\48\0f\98\0f\bd\0f\cd\0f\c6\10\49\12\57\12\59\12\89\12\b1\12\bf\12\c1\12\d7\12\11\13\80\16\0d\17\6d\17\71\17\1f\19\5f\1a\fa\1d\58\1f\5a\1f\5c\1f\5e\1f\b5\1f\c5\1f\dc\1f\f5\1f\8f\20\96\2b\2f\2c\5f\2c\26\2d\a7\2d\af\2d\b7\2d\bf\2d\c7\2d\cf\2d\d7\2d\df\2d\9a\2e\40\30\30\31\8f\31\1f\32\ce\a9\ff\a9\27\ab\2f\ab\37\fb\3d\fb\3f\fb\42\fb\45\fb\53\fe\67\fe\75\fe\e7\ff\0c\00\27\00\3b\00\3e\00\8f\01\9e\03\09\08\36\08\56\08\f3\08\04\0a\14\0a\18\0a\7f\0e\aa\0e\bd\10\35\11\e0\11\12\12\87\12\89\12\8e\12\9e\12\04\13\29\13\31\13\34\13\3a\13\5c\14\14\19\17\19\36\19\09\1c\37\1c\a8\1c\07\1d\0a\1d\3b\1d\3e\1d\66\1d\69\1d\8f\1d\92\1d\6f\24\5f\6a\5a\6b\62\6b\55\d4\9d\d4\ad\d4\ba\d4\bc\d4\c4\d4\06\d5\15\d5\1d\d5\3a\d5\3f\d5\45\d5\51\d5\a0\da\07\e0\22\e0\25\e0\04\ee\20\ee\23\ee\28\ee\33\ee\38\ee\3a\ee\48\ee\4a\ee\4c\ee\50\ee\53\ee\58\ee\5a\ee\5c\ee\5e\ee\60\ee\63\ee\6b\ee\73\ee\78\ee\7d\ee\7f\ee\8a\ee\a4\ee\aa\ee\c0\f0\d0\f0\79\f9\cc\f9\93\fb\20\00\7e\00\a1\00\77\03\7a\03\7f\03\84\03\56\05\59\05\8a\05\8d\05\c7\05\d0\05\ea\05\ef\05\f4\05\06\06\1b\06\1e\06\0d\07\10\07\4a\07\4d\07\b1\07\c0\07\fa\07\fd\07\2d\08\30\08\5b\08\5e\08\6a\08\a0\08\c7\08\d3\08\8c\09\8f\09\90\09\93\09\b2\09\b6\09\b9\09\bc\09\c4\09\c7\09\c8\09\cb\09\ce\09\d7\09\d7\09\dc\09\e3\09\e6\09\fe\09\01\0a\0a\0a\0f\0a\10\0a\13\0a\39\0a\3c\0a\42\0a\47\0a\48\0a\4b\0a\4d\0a\51\0a\51\0a\59\0a\5e\0a\66\0a\76\0a\81\0a\b9\0a\bc\0a\cd\0a\d0\0a\d0\0a\e0\0a\e3\0a\e6\0a\f1\0a\f9\0a\0c\0b\0f\0b\10\0b\13\0b\39\0b\3c\0b\44\0b\47\0b\48\0b\4b\0b\4d\0b\55\0b\57\0b\5c\0b\63\0b\66\0b\77\0b\82\0b\8a\0b\8e\0b\95\0b\99\0b\9f\0b\a3\0b\a4\0b\a8\0b\aa\0b\ae\0b\b9\0b\be\0b\c2\0b\c6\0b\cd\0b\d0\0b\d0\0b\d7\0b\d7\0b\e6\0b\fa\0b\00\0c\39\0c\3d\0c\4d\0c\55\0c\5a\0c\60\0c\63\0c\66\0c\6f\0c\77\0c\b9\0c\bc\0c\cd\0c\d5\0c\d6\0c\de\0c\e3\0c\e6\0c\f2\0c\00\0d\4f\0d\54\0d\63\0d\66\0d\96\0d\9a\0d\bd\0d\c0\0d\c6\0d\ca\0d\ca\0d\cf\0d\df\0d\e6\0d\ef\0d\f2\0d\f4\0d\01\0e\3a\0e\3f\0e\5b\0e\81\0e\bd\0e\c0\0e\cd\0e\d0\0e\d9\0e\dc\0e\df\0e\00\0f\6c\0f\71\0f\da\0f\00\10\c7\10\cd\10\cd\10\d0\10\4d\12\50\12\5d\12\60\12\8d\12\90\12\b5\12\b8\12\c5\12\c8\12\15\13\18\13\5a\13\5d\13\7c\13\80\13\99\13\a0\13\f5\13\f8\13\fd\13\00\14\9c\16\a0\16\f8\16\00\17\14\17\20\17\36\17\40\17\53\17\60\17\73\17\80\17\dd\17\e0\17\e9\17\f0\17\f9\17\00\18\0d\18\10\18\19\18\20\18\78\18\80\18\aa\18\b0\18\f5\18\00\19\2b\19\30\19\3b\19\40\19\40\19\44\19\6d\19\70\19\74\19\80\19\ab\19\b0\19\c9\19\d0\19\da\19\de\19\1b\1a\1e\1a\7c\1a\7f\1a\89\1a\90\1a\99\1a\a0\1a\ad\1a\b0\1a\c0\1a\00\1b\4b\1b\50\1b\7c\1b\80\1b\f3\1b\fc\1b\37\1c\3b\1c\49\1c\4d\1c\88\1c\90\1c\ba\1c\bd\1c\c7\1c\d0\1c\fa\1c\00\1d\15\1f\18\1f\1d\1f\20\1f\45\1f\48\1f\4d\1f\50\1f\7d\1f\80\1f\d3\1f\d6\1f\ef\1f\f2\1f\fe\1f\10\20\27\20\30\20\5e\20\70\20\71\20\74\20\9c\20\a0\20\bf\20\d0\20\f0\20\00\21\8b\21\90\21\26\24\40\24\4a\24\60\24\73\2b\76\2b\f3\2c\f9\2c\27\2d\2d\2d\2d\2d\30\2d\67\2d\6f\2d\70\2d\7f\2d\96\2d\a0\2d\52\2e\80\2e\f3\2e\00\2f\d5\2f\f0\2f\fb\2f\01\30\96\30\99\30\ff\30\05\31\e3\31\f0\31\fc\9f\00\a0\8c\a4\90\a4\c6\a4\d0\a4\2b\a6\40\a6\f7\a6\00\a7\bf\a7\c2\a7\ca\a7\f5\a7\2c\a8\30\a8\39\a8\40\a8\77\a8\80\a8\c5\a8\ce\a8\d9\a8\e0\a8\53\a9\5f\a9\7c\a9\80\a9\d9\a9\de\a9\36\aa\40\aa\4d\aa\50\aa\59\aa\5c\aa\c2\aa\db\aa\f6\aa\01\ab\06\ab\09\ab\0e\ab\11\ab\16\ab\20\ab\6b\ab\70\ab\ed\ab\f0\ab\f9\ab\00\ac\a3\d7\b0\d7\c6\d7\cb\d7\fb\d7\00\f9\6d\fa\70\fa\d9\fa\00\fb\06\fb\13\fb\17\fb\1d\fb\c1\fb\d3\fb\3f\fd\50\fd\8f\fd\92\fd\c7\fd\f0\fd\fd\fd\00\fe\19\fe\20\fe\6b\fe\70\fe\fc\fe\01\ff\be\ff\c2\ff\c7\ff\ca\ff\cf\ff\d2\ff\d7\ff\da\ff\dc\ff\e0\ff\ee\ff\fc\ff\fd\ff\00\00\00\00\01\00\4d\00\01\00\50\00\01\00\5d\00\01\00\80\00\01\00\fa\00\01\00\00\01\01\00\02\01\01\00\07\01\01\00\33\01\01\00\37\01\01\00\9c\01\01\00\a0\01\01\00\a0\01\01\00\d0\01\01\00\fd\01\01\00\80\02\01\00\9c\02\01\00\a0\02\01\00\d0\02\01\00\e0\02\01\00\fb\02\01\00\00\03\01\00\23\03\01\00\2d\03\01\00\4a\03\01\00\50\03\01\00\7a\03\01\00\80\03\01\00\c3\03\01\00\c8\03\01\00\d5\03\01\00\00\04\01\00\9d\04\01\00\a0\04\01\00\a9\04\01\00\b0\04\01\00\d3\04\01\00\d8\04\01\00\fb\04\01\00\00\05\01\00\27\05\01\00\30\05\01\00\63\05\01\00\6f\05\01\00\6f\05\01\00\00\06\01\00\36\07\01\00\40\07\01\00\55\07\01\00\60\07\01\00\67\07\01\00\00\08\01\00\05\08\01\00\08\08\01\00\38\08\01\00\3c\08\01\00\3c\08\01\00\3f\08\01\00\9e\08\01\00\a7\08\01\00\af\08\01\00\e0\08\01\00\f5\08\01\00\fb\08\01\00\1b\09\01\00\1f\09\01\00\39\09\01\00\3f\09\01\00\3f\09\01\00\80\09\01\00\b7\09\01\00\bc\09\01\00\cf\09\01\00\d2\09\01\00\06\0a\01\00\0c\0a\01\00\35\0a\01\00\38\0a\01\00\3a\0a\01\00\3f\0a\01\00\48\0a\01\00\50\0a\01\00\58\0a\01\00\60\0a\01\00\9f\0a\01\00\c0\0a\01\00\e6\0a\01\00\eb\0a\01\00\f6\0a\01\00\00\0b\01\00\35\0b\01\00\39\0b\01\00\55\0b\01\00\58\0b\01\00\72\0b\01\00\78\0b\01\00\91\0b\01\00\99\0b\01\00\9c\0b\01\00\a9\0b\01\00\af\0b\01\00\00\0c\01\00\48\0c\01\00\80\0c\01\00\b2\0c\01\00\c0\0c\01\00\f2\0c\01\00\fa\0c\01\00\27\0d\01\00\30\0d\01\00\39\0d\01\00\60\0e\01\00\ad\0e\01\00\b0\0e\01\00\b1\0e\01\00\00\0f\01\00\27\0f\01\00\30\0f\01\00\59\0f\01\00\b0\0f\01\00\cb\0f\01\00\e0\0f\01\00\f6\0f\01\00\00\10\01\00\4d\10\01\00\52\10\01\00\6f\10\01\00\7f\10\01\00\c1\10\01\00\d0\10\01\00\e8\10\01\00\f0\10\01\00\f9\10\01\00\00\11\01\00\47\11\01\00\50\11\01\00\76\11\01\00\80\11\01\00\f4\11\01\00\00\12\01\00\3e\12\01\00\80\12\01\00\a9\12\01\00\b0\12\01\00\ea\12\01\00\f0\12\01\00\f9\12\01\00\00\13\01\00\0c\13\01\00\0f\13\01\00\10\13\01\00\13\13\01\00\44\13\01\00\47\13\01\00\48\13\01\00\4b\13\01\00\4d\13\01\00\50\13\01\00\50\13\01\00\57\13\01\00\57\13\01\00\5d\13\01\00\63\13\01\00\66\13\01\00\6c\13\01\00\70\13\01\00\74\13\01\00\00\14\01\00\61\14\01\00\80\14\01\00\c7\14\01\00\d0\14\01\00\d9\14\01\00\80\15\01\00\b5\15\01\00\b8\15\01\00\dd\15\01\00\00\16\01\00\44\16\01\00\50\16\01\00\59\16\01\00\60\16\01\00\6c\16\01\00\80\16\01\00\b8\16\01\00\c0\16\01\00\c9\16\01\00\00\17\01\00\1a\17\01\00\1d\17\01\00\2b\17\01\00\30\17\01\00\3f\17\01\00\00\18\01\00\3b\18\01\00\a0\18\01\00\f2\18\01\00\ff\18\01\00\06\19\01\00\09\19\01\00\09\19\01\00\0c\19\01\00\38\19\01\00\3b\19\01\00\46\19\01\00\50\19\01\00\59\19\01\00\a0\19\01\00\a7\19\01\00\aa\19\01\00\d7\19\01\00\da\19\01\00\e4\19\01\00\00\1a\01\00\47\1a\01\00\50\1a\01\00\a2\1a\01\00\c0\1a\01\00\f8\1a\01\00\00\1c\01\00\45\1c\01\00\50\1c\01\00\6c\1c\01\00\70\1c\01\00\8f\1c\01\00\92\1c\01\00\b6\1c\01\00\00\1d\01\00\36\1d\01\00\3a\1d\01\00\47\1d\01\00\50\1d\01\00\59\1d\01\00\60\1d\01\00\98\1d\01\00\a0\1d\01\00\a9\1d\01\00\e0\1e\01\00\f8\1e\01\00\b0\1f\01\00\b0\1f\01\00\c0\1f\01\00\f1\1f\01\00\ff\1f\01\00\99\23\01\00\00\24\01\00\74\24\01\00\80\24\01\00\43\25\01\00\00\30\01\00\2e\34\01\00\00\44\01\00\46\46\01\00\00\68\01\00\38\6a\01\00\40\6a\01\00\69\6a\01\00\6e\6a\01\00\6f\6a\01\00\d0\6a\01\00\ed\6a\01\00\f0\6a\01\00\f5\6a\01\00\00\6b\01\00\45\6b\01\00\50\6b\01\00\77\6b\01\00\7d\6b\01\00\8f\6b\01\00\40\6e\01\00\9a\6e\01\00\00\6f\01\00\4a\6f\01\00\4f\6f\01\00\87\6f\01\00\8f\6f\01\00\9f\6f\01\00\e0\6f\01\00\e4\6f\01\00\f0\6f\01\00\f1\6f\01\00\00\70\01\00\f7\87\01\00\00\88\01\00\d5\8c\01\00\00\8d\01\00\08\8d\01\00\00\b0\01\00\1e\b1\01\00\50\b1\01\00\52\b1\01\00\64\b1\01\00\67\b1\01\00\70\b1\01\00\fb\b2\01\00\00\bc\01\00\6a\bc\01\00\70\bc\01\00\7c\bc\01\00\80\bc\01\00\88\bc\01\00\90\bc\01\00\99\bc\01\00\9c\bc\01\00\9f\bc\01\00\00\d0\01\00\f5\d0\01\00\00\d1\01\00\26\d1\01\00\29\d1\01\00\72\d1\01\00\7b\d1\01\00\e8\d1\01\00\00\d2\01\00\45\d2\01\00\e0\d2\01\00\f3\d2\01\00\00\d3\01\00\56\d3\01\00\60\d3\01\00\78\d3\01\00\00\d4\01\00\9f\d4\01\00\a2\d4\01\00\a2\d4\01\00\a5\d4\01\00\a6\d4\01\00\a9\d4\01\00\0a\d5\01\00\0d\d5\01\00\46\d5\01\00\4a\d5\01\00\a5\d6\01\00\a8\d6\01\00\cb\d7\01\00\ce\d7\01\00\8b\da\01\00\9b\da\01\00\af\da\01\00\00\e0\01\00\18\e0\01\00\1b\e0\01\00\2a\e0\01\00\00\e1\01\00\2c\e1\01\00\30\e1\01\00\3d\e1\01\00\40\e1\01\00\49\e1\01\00\4e\e1\01\00\4f\e1\01\00\c0\e2\01\00\f9\e2\01\00\ff\e2\01\00\ff\e2\01\00\00\e8\01\00\c4\e8\01\00\c7\e8\01\00\d6\e8\01\00\00\e9\01\00\4b\e9\01\00\50\e9\01\00\59\e9\01\00\5e\e9\01\00\5f\e9\01\00\71\ec\01\00\b4\ec\01\00\01\ed\01\00\3d\ed\01\00\00\ee\01\00\24\ee\01\00\27\ee\01\00\3b\ee\01\00\42\ee\01\00\42\ee\01\00\47\ee\01\00\54\ee\01\00\57\ee\01\00\64\ee\01\00\67\ee\01\00\9b\ee\01\00\a1\ee\01\00\bb\ee\01\00\f0\ee\01\00\f1\ee\01\00\00\f0\01\00\2b\f0\01\00\30\f0\01\00\93\f0\01\00\a0\f0\01\00\ae\f0\01\00\b1\f0\01\00\f5\f0\01\00\00\f1\01\00\ad\f1\01\00\e6\f1\01\00\02\f2\01\00\10\f2\01\00\3b\f2\01\00\40\f2\01\00\48\f2\01\00\50\f2\01\00\51\f2\01\00\60\f2\01\00\65\f2\01\00\00\f3\01\00\d7\f6\01\00\e0\f6\01\00\ec\f6\01\00\f0\f6\01\00\fc\f6\01\00\00\f7\01\00\73\f7\01\00\80\f7\01\00\d8\f7\01\00\e0\f7\01\00\eb\f7\01\00\00\f8\01\00\0b\f8\01\00\10\f8\01\00\47\f8\01\00\50\f8\01\00\59\f8\01\00\60\f8\01\00\87\f8\01\00\90\f8\01\00\ad\f8\01\00\b0\f8\01\00\b1\f8\01\00\00\f9\01\00\53\fa\01\00\60\fa\01\00\6d\fa\01\00\70\fa\01\00\74\fa\01\00\78\fa\01\00\7a\fa\01\00\80\fa\01\00\86\fa\01\00\90\fa\01\00\a8\fa\01\00\b0\fa\01\00\b6\fa\01\00\c0\fa\01\00\c2\fa\01\00\d0\fa\01\00\d6\fa\01\00\00\fb\01\00\ca\fb\01\00\f0\fb\01\00\f9\fb\01\00\00\00\02\00\dd\a6\02\00\00\a7\02\00\34\b7\02\00\40\b7\02\00\1d\b8\02\00\20\b8\02\00\a1\ce\02\00\b0\ce\02\00\e0\eb\02\00\00\f8\02\00\1d\fa\02\00\00\00\03\00\4a\13\03\00\00\01\0e\00\ef\01\0e\00\00\00\00\00\00\00\00\00\c0\39\00\00\00\00\00\00\01\00\00\00\00\00\00\00\60\3a\00\00\01\00\00\00\01\00\00\00\00\00\00\00\3f\9f\00\00\02\00\00\00\01\00\00\00\00\00\00\00\59\a5\00\00\03\00\00\00\02\00\00\00\00\00\00\00\5c\a5\00\00\03\00\00\00\02\00\00\00\00\00\00\00\5f\a5\00\00\04\00\00\00\02\00\00\00\00\00\00\00\63\a5\00\00\05\00\00\00\03\00\00\00\00\00\00\00\68\a5\00\00\05\00\00\00\03\00\00\00\00\00\00\00\6d\a5\00\00\06\00\00\00\03\00\00\00\00\00\00\00\73\a5\00\00\07\00\00\00\04\00\00\00\00\00\00\00\7a\a5\00\00\07\00\00\00\04\00\00\00\00\00\00\00\81\a5\00\00\08\00\00\00\04\00\00\00\00\00\00\00\89\a5\00\00\09\00\00\00\04\00\00\00\00\00\00\00\92\a5\00\00\0a\00\00\00\05\00\00\00\00\00\00\00\9c\a5\00\00\0a\00\00\00\05\00\00\00\00\00\00\00\a6\a5\00\00\0b\00\00\00\05\00\00\00\00\00\00\00\b1\a5\00\00\0c\00\00\00\06\00\00\00\00\00\00\00\bd\a5\00\00\0c\00\00\00\06\00\00\00\00\00\00\00\c9\a5\00\00\0d\00\00\00\06\00\00\00\00\00\00\00\d6\a5\00\00\0e\00\00\00\07\00\00\00\00\00\00\00\e4\a5\00\00\0e\00\00\00\07\00\00\00\00\00\00\00\f2\a5\00\00\0f\00\00\00\07\00\00\00\00\00\00\00\01\a6\00\00\10\00\00\00\07\00\00\00\00\00\00\00\11\a6\00\00\11\00\00\00\08\00\00\00\00\00\00\00\22\a6\00\00\11\00\00\00\08\00\00\00\00\00\00\00\33\a6\00\00\12\00\00\00\08\00\00\00\00\00\00\00\45\a6\00\00\13\00\00\00\09\00\00\00\00\00\00\00\58\a6\00\00\13\00\00\00\09\00\00\00\00\00\00\00\6b\a6\00\00\14\00\00\00\09\00\00\00\00\00\00\00\7f\a6\00\00\15\00\00\00\0a\00\00\00\00\00\00\00\94\a6\00\00\15\00\00\00\0a\00\00\00\00\00\00\00\a9\a6\00\00\16\00\00\00\0a\00\00\00\00\00\00\00\bf\a6\00\00\17\00\00\00\0a\00\00\00\00\00\00\00\d6\a6\00\00\18\00\00\00\0b\00\00\00\00\00\00\00\ee\a6\00\00\18\00\00\00\0b\00\00\00\00\00\00\00\06\a7\00\00\19\00\00\00\0b\00\00\00\00\00\00\00\1f\a7\00\00\1a\00\00\00\0c\00\00\00\00\00\00\00\39\a7\00\00\1a\00\00\00\0c\00\00\00\00\00\00\00\53\a7\00\00\1b\00\00\00\0c\00\00\00\00\00\00\00\6e\a7\00\00\1c\00\00\00\0d\00\00\00\00\00\00\00\8a\a7\00\00\1c\00\00\00\0d\00\00\00\00\00\00\00\a6\a7\00\00\1d\00\00\00\0d\00\00\00\00\00\00\00\c3\a7\00\00\1e\00\00\00\0d\00\00\00\00\00\00\00\e1\a7\00\00\1f\00\00\00\0e\00\00\00\00\00\00\00\00\a8\00\00\1f\00\00\00\0e\00\00\00\00\00\00\00\1f\a8\00\00\20\00\00\00\0e\00\00\00\00\00\00\00\3f\a8\00\00\21\00\00\00\0f\00\00\00\00\00\00\00\60\a8\00\00\21\00\00\00\0f\00\00\00\00\00\00\00\81\a8\00\00\22\00\00\00\0f\00\00\00\00\00\00\00\a3\a8\00\00\23\00\00\00\10\00\00\00\00\00\00\00\c6\a8\00\00\23\00\00\00\10\00\00\00\00\00\00\00\e9\a8\00\00\24\00\00\00\10\00\00\00\00\00\00\00\0d\a9\00\00\25\00\00\00\10\00\00\00\00\00\00\00\32\a9\00\00\26\00\00\00\11\00\00\00\00\00\00\00\58\a9\00\00\26\00\00\00\11\00\00\00\00\00\00\00\7e\a9\00\00\27\00\00\00\11\00\00\00\00\00\00\00\a5\a9\00\00\28\00\00\00\12\00\00\00\00\00\00\00\cd\a9\00\00\28\00\00\00\12\00\00\00\00\00\00\00\f5\a9\00\00\29\00\00\00\12\00\00\00\00\00\00\00\1e\aa\00\00\2a\00\00\00\13\00\00\00\00\00\00\00\48\aa\00\00\2a\00\00\00\00\00\00\00\01\00\00\00\03\00\00\00\06\00\00\00\09\00\00\00\0d\00\00\00\10\00\00\00\13\00\00\00\17\00\00\00\1a\00\00\00\00\00\00\00\01\00\00\00\00\00\00\00\0a\00\00\00\00\00\00\00\64\00\00\00\00\00\00\00\e8\03\00\00\00\00\00\00\10\27\00\00\00\00\00\00\a0\86\01\00\00\00\00\00\40\42\0f\00\00\00\00\00\80\96\98\00\00\00\00\00\00\e1\f5\05\00\00\00\00\00\ca\9a\3b\00\00\00\00\00\e4\0b\54\02\00\00\00\00\e8\76\48\17\00\00\00\00\10\a5\d4\e8\00\00\00\00\a0\72\4e\18\09\00\00\00\40\7a\10\f3\5a\00\00\00\80\c6\a4\7e\8d\03\00\00\00\c1\6f\f2\86\23\00\00\00\8a\5d\78\45\63\01\00\00\64\a7\b3\b6\e0\0d\00\00\00\00\00\00\00\00\80\bf\a0\bf\80\9f\90\bf\80\8f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\13\03\03\03\03\03\03\03\03\03\03\03\03\23\03\03\34\04\04\04\44\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\00\00\00\00\00\00\00\00\30\61\73\73\65\72\74\20\66\61\69\6c\65\64\20\28\61\73\73\65\72\74\20\66\61\69\6c\65\64\3a\20\6e\69\6c\20\6d\61\70\2e\6d\61\70\2e\77\61\3a\32\30\3a\38\70\61\6e\69\63\3a\20\74\72\75\65\66\61\6c\73\65\4e\61\4e\2b\49\6e\66\2d\49\6e\66\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\0a\5b\2f\5d\69\6e\74\65\67\65\72\20\6f\76\65\72\66\6c\6f\77\62\69\74\73\2e\77\61\3a\35\30\32\3a\38\69\6e\74\65\67\65\72\20\64\69\76\69\64\65\20\62\79\20\7a\65\72\6f\62\69\74\73\2e\77\61\3a\35\30\35\3a\38\62\69\74\73\2e\77\61\3a\35\32\32\3a\38\62\69\74\73\2e\77\61\3a\35\32\35\3a\38\00\01\02\02\03\03\03\03\04\04\04\04\04\04\04\04\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\00\01\01\02\01\02\02\03\01\02\02\03\02\03\03\04\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\04\05\05\06\05\06\06\07\05\06\06\07\06\07\07\08\00\80\40\c0\20\a0\60\e0\10\90\50\d0\30\b0\70\f0\08\88\48\c8\28\a8\68\e8\18\98\58\d8\38\b8\78\f8\04\84\44\c4\24\a4\64\e4\14\94\54\d4\34\b4\74\f4\0c\8c\4c\cc\2c\ac\6c\ec\1c\9c\5c\dc\3c\bc\7c\fc\02\82\42\c2\22\a2\62\e2\12\92\52\d2\32\b2\72\f2\0a\8a\4a\ca\2a\aa\6a\ea\1a\9a\5a\da\3a\ba\7a\fa\06\86\46\c6\26\a6\66\e6\16\96\56\d6\36\b6\76\f6\0e\8e\4e\ce\2e\ae\6e\ee\1e\9e\5e\de\3e\be\7e\fe\01\81\41\c1\21\a1\61\e1\11\91\51\d1\31\b1\71\f1\09\89\49\c9\29\a9\69\e9\19\99\59\d9\39\b9\79\f9\05\85\45\c5\25\a5\65\e5\15\95\55\d5\35\b5\75\f5\0d\8d\4d\cd\2d\ad\6d\ed\1d\9d\5d\dd\3d\bd\7d\fd\03\83\43\c3\23\a3\63\e3\13\93\53\d3\33\b3\73\f3\0b\8b\4b\cb\2b\ab\6b\eb\1b\9b\5b\db\3b\bb\7b\fb\07\87\47\c7\27\a7\67\e7\17\97\57\d7\37\b7\77\f7\0f\8f\4f\cf\2f\af\6f\ef\1f\9f\5f\df\3f\bf\7f\ff\08\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\06\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\07\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\06\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\72\61\6e\64\2e\47\65\74\52\61\6e\64\6f\6d\44\61\74\61\3a\20\75\6e\73\75\70\70\6f\72\74\41\74\6f\69\54\52\55\45\54\72\75\65\46\41\4c\53\45\46\61\6c\73\65\50\61\72\73\65\42\6f\6f\6c\50\61\72\73\65\46\6c\6f\61\74\50\61\72\73\65\49\6e\74\50\61\72\73\65\55\69\6e\74\5c\61\5c\62\5c\66\5c\6e\5c\72\5c\74\5c\76\5c\78\5c\75\5c\55\69\6e\76\61\6c\69\64\20\62\61\73\65\20\69\6e\76\61\6c\69\64\20\62\69\74\20\73\69\7a\65\20\30\31\32\33\34\35\36\37\38\39\41\42\43\44\45\46\73\74\72\63\6f\6e\76\3a\20\69\6c\6c\65\67\61\6c\20\41\70\70\65\6e\64\49\6e\74\2f\46\6f\72\6d\61\74\49\6e\74\20\62\61\73\65\69\74\6f\61\2e\77\61\3a\38\37\3a\38\30\30\30\31\30\32\30\33\30\34\30\35\30\36\30\37\30\38\30\39\31\30\31\31\31\32\31\33\31\34\31\35\31\36\31\37\31\38\31\39\32\30\32\31\32\32\32\33\32\34\32\35\32\36\32\37\32\38\32\39\33\30\33\31\33\32\33\33\33\34\33\35\33\36\33\37\33\38\33\39\34\30\34\31\34\32\34\33\34\34\34\35\34\36\34\37\34\38\34\39\35\30\35\31\35\32\35\33\35\34\35\35\35\36\35\37\35\38\35\39\36\30\36\31\36\32\36\33\36\34\36\35\36\36\36\37\36\38\36\39\37\30\37\31\37\32\37\33\37\34\37\35\37\36\37\37\37\38\37\39\38\30\38\31\38\32\38\33\38\34\38\35\38\36\38\37\38\38\38\39\39\30\39\31\39\32\39\33\39\34\39\35\39\36\39\37\39\38\39\39\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\67\68\69\6a\6b\6c\6d\6e\6f\70\71\72\73\74\75\76\77\78\79\7a\73\74\72\63\6f\6e\76\3a\20\69\6c\6c\65\67\61\6c\20\41\70\70\65\6e\64\46\6c\6f\61\74\2f\46\6f\72\6d\61\74\46\6c\6f\61\74\20\62\69\74\53\69\7a\65\66\74\6f\61\2e\77\61\3a\36\34\3a\38\76\61\6c\75\65\20\6f\75\74\20\6f\66\20\72\61\6e\67\65\69\6e\76\61\6c\69\64\20\73\79\6e\74\61\78\31\32\35\36\32\35\33\31\32\35\31\35\36\32\35\37\38\31\32\35\33\39\30\36\32\35\31\39\35\33\31\32\35\39\37\36\35\36\32\35\34\38\38\32\38\31\32\35\32\34\34\31\34\30\36\32\35\31\32\32\30\37\30\33\31\32\35\36\31\30\33\35\31\35\36\32\35\33\30\35\31\37\35\37\38\31\32\35\31\35\32\35\38\37\38\39\30\36\32\35\37\36\32\39\33\39\34\35\33\31\32\35\33\38\31\34\36\39\37\32\36\35\36\32\35\31\39\30\37\33\34\38\36\33\32\38\31\32\35\39\35\33\36\37\34\33\31\36\34\30\36\32\35\34\37\36\38\33\37\31\35\38\32\30\33\31\32\35\32\33\38\34\31\38\35\37\39\31\30\31\35\36\32\35\31\31\39\32\30\39\32\38\39\35\35\30\37\38\31\32\35\35\39\36\30\34\36\34\34\37\37\35\33\39\30\36\32\35\32\39\38\30\32\33\32\32\33\38\37\36\39\35\33\31\32\35\31\34\39\30\31\31\36\31\31\39\33\38\34\37\36\35\36\32\35\37\34\35\30\35\38\30\35\39\36\39\32\33\38\32\38\31\32\35\33\37\32\35\32\39\30\32\39\38\34\36\31\39\31\34\30\36\32\35\31\38\36\32\36\34\35\31\34\39\32\33\30\39\35\37\30\33\31\32\35\39\33\31\33\32\32\35\37\34\36\31\35\34\37\38\35\31\35\36\32\35\34\36\35\36\36\31\32\38\37\33\30\37\37\33\39\32\35\37\38\31\32\35\32\33\32\38\33\30\36\34\33\36\35\33\38\36\39\36\32\38\39\30\36\32\35\31\31\36\34\31\35\33\32\31\38\32\36\39\33\34\38\31\34\34\35\33\31\32\35\35\38\32\30\37\36\36\30\39\31\33\34\36\37\34\30\37\32\32\36\35\36\32\35\32\39\31\30\33\38\33\30\34\35\36\37\33\33\37\30\33\36\31\33\32\38\31\32\35\31\34\35\35\31\39\31\35\32\32\38\33\36\36\38\35\31\38\30\36\36\34\30\36\32\35\37\32\37\35\39\35\37\36\31\34\31\38\33\34\32\35\39\30\33\33\32\30\33\31\32\35\33\36\33\37\39\37\38\38\30\37\30\39\31\37\31\32\39\35\31\36\36\30\31\35\36\32\35\31\38\31\38\39\38\39\34\30\33\35\34\35\38\35\36\34\37\35\38\33\30\30\37\38\31\32\35\39\30\39\34\39\34\37\30\31\37\37\32\39\32\38\32\33\37\39\31\35\30\33\39\30\36\32\35\34\35\34\37\34\37\33\35\30\38\38\36\34\36\34\31\31\38\39\35\37\35\31\39\35\33\31\32\35\32\32\37\33\37\33\36\37\35\34\34\33\32\33\32\30\35\39\34\37\38\37\35\39\37\36\35\36\32\35\31\31\33\36\38\36\38\33\37\37\32\31\36\31\36\30\32\39\37\33\39\33\37\39\38\38\32\38\31\32\35\35\36\38\34\33\34\31\38\38\36\30\38\30\38\30\31\34\38\36\39\36\38\39\39\34\31\34\30\36\32\35\32\38\34\32\31\37\30\39\34\33\30\34\30\34\30\30\37\34\33\34\38\34\34\39\37\30\37\30\33\31\32\35\31\34\32\31\30\38\35\34\37\31\35\32\30\32\30\30\33\37\31\37\34\32\32\34\38\35\33\35\31\35\36\32\35\37\31\30\35\34\32\37\33\35\37\36\30\31\30\30\31\38\35\38\37\31\31\32\34\32\36\37\35\37\38\31\32\35\33\35\35\32\37\31\33\36\37\38\38\30\30\35\30\30\39\32\39\33\35\35\36\32\31\33\33\37\38\39\30\36\32\35\31\37\37\36\33\35\36\38\33\39\34\30\30\32\35\30\34\36\34\36\37\37\38\31\30\36\36\38\39\34\35\33\31\32\35\38\38\38\31\37\38\34\31\39\37\30\30\31\32\35\32\33\32\33\33\38\39\30\35\33\33\34\34\37\32\36\35\36\32\35\34\34\34\30\38\39\32\30\39\38\35\30\30\36\32\36\31\36\31\36\39\34\35\32\36\36\37\32\33\36\33\32\38\31\32\35\32\32\32\30\34\34\36\30\34\39\32\35\30\33\31\33\30\38\30\38\34\37\32\36\33\33\33\36\31\38\31\36\34\30\36\32\35\31\31\31\30\32\32\33\30\32\34\36\32\35\31\35\36\35\34\30\34\32\33\36\33\31\36\36\38\30\39\30\38\32\30\33\31\32\35\35\35\35\31\31\31\35\31\32\33\31\32\35\37\38\32\37\30\32\31\31\38\31\35\38\33\34\30\34\35\34\31\30\31\35\36\32\35\32\37\37\35\35\35\37\35\36\31\35\36\32\38\39\31\33\35\31\30\35\39\30\37\39\31\37\30\32\32\37\30\35\30\37\38\31\32\35\31\33\38\37\37\37\38\37\38\30\37\38\31\34\34\35\36\37\35\35\32\39\35\33\39\35\38\35\31\31\33\35\32\35\33\39\30\36\32\35\36\39\33\38\38\39\33\39\30\33\39\30\37\32\32\38\33\37\37\36\34\37\36\39\37\39\32\35\35\36\37\36\32\36\39\35\33\31\32\35\33\34\36\39\34\34\36\39\35\31\39\35\33\36\31\34\31\38\38\38\32\33\38\34\38\39\36\32\37\38\33\38\31\33\34\37\36\35\36\32\35\31\37\33\34\37\32\33\34\37\35\39\37\36\38\30\37\30\39\34\34\31\31\39\32\34\34\38\31\33\39\31\39\30\36\37\33\38\32\38\31\32\35\38\36\37\33\36\31\37\33\37\39\38\38\34\30\33\35\34\37\32\30\35\39\36\32\32\34\30\36\39\35\39\35\33\33\36\39\31\34\30\36\32\35\6d\75\6c\74\31\32\38\62\69\74\50\6f\77\31\30\3a\20\70\6f\77\65\72\20\6f\66\20\31\30\20\69\73\20\6f\75\74\20\6f\66\20\72\61\6e\67\65\66\74\6f\61\72\79\75\2e\77\61\3a\35\32\33\3a\38\6d\75\6c\74\36\34\62\69\74\50\6f\77\31\30\3a\20\70\6f\77\65\72\20\6f\66\20\31\30\20\69\73\20\6f\75\74\20\6f\66\20\72\61\6e\67\65\66\74\6f\61\72\79\75\2e\77\61\3a\34\39\35\3a\38\72\79\75\46\74\6f\61\46\69\78\65\64\33\32\20\63\61\6c\6c\65\64\20\77\69\74\68\20\6e\65\67\61\74\69\76\65\20\70\72\65\63\66\74\6f\61\72\79\75\2e\77\61\3a\31\38\3a\38\72\79\75\46\74\6f\61\46\69\78\65\64\33\32\20\63\61\6c\6c\65\64\20\77\69\74\68\20\70\72\65\63\20\3e\20\39\66\74\6f\61\72\79\75\2e\77\61\3a\32\31\3a\38\6e\6f\74\20\65\6e\6f\75\67\68\20\73\69\67\6e\69\66\69\63\61\6e\74\20\62\69\74\73\20\61\66\74\65\72\20\6d\75\6c\74\36\34\62\69\74\50\6f\77\31\30\66\74\6f\61\72\79\75\2e\77\61\3a\34\39\3a\38\72\79\75\46\74\6f\61\46\69\78\65\64\36\34\20\63\61\6c\6c\65\64\20\77\69\74\68\20\70\72\65\63\20\3e\20\31\38\66\74\6f\61\72\79\75\2e\77\61\3a\38\38\3a\38\6e\6f\74\20\65\6e\6f\75\67\68\20\73\69\67\6e\69\66\69\63\61\6e\74\20\62\69\74\73\20\61\66\74\65\72\20\6d\75\6c\74\31\32\38\62\69\74\50\6f\77\31\30\66\74\6f\61\72\79\75\2e\77\61\3a\31\31\39\3a\38\66\74\6f\61\72\79\75\2e\77\61\3a\32\35\39\3a\38\69\6e\66\69\6e\69\74\79\6e\61\6e\69\6e\76\61\6c\69\64\20\61\72\67\75\6d\65\6e\74\20\74\6f\20\49\6e\74\33\31\6e\72\61\6e\64\2e\77\61\3a\31\31\33\3a\38\69\6e\76\61\6c\69\64\20\61\72\67\75\6d\65\6e\74\20\74\6f\20\49\6e\74\36\33\6e\72\61\6e\64\2e\77\61\3a\39\35\3a\38\69\6e\76\61\6c\69\64\20\61\72\67\75\6d\65\6e\74\20\74\6f\20\49\6e\74\6e\72\61\6e\64\2e\77\61\3a\31\35\36\3a\38\69\6e\76\61\6c\69\64\20\61\72\67\75\6d\65\6e\74\20\74\6f\20\53\68\75\66\66\6c\65\72\61\6e\64\2e\77\61\3a\32\33\30\3a\38\73\74\72\63\6f\6e\76\2e\70\61\72\73\69\6e\67\20\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\01\00\00\00\ff\ff\ff\ff\02\00\00\00\ff\ff\ff\ff\02\00\00\00\fe\ff\ff\ff\17\00\00\00\18\00\00\00\02\00\00\00\fd\ff\ff\ff\17\00\00\00\18\00\00\00\19\00\00\00\00\00\00\00\03\00\00\00\ff\ff\ff\ff\03\00\00\00\fc\ff\ff\ff\1a\00\00\00\00\00\00\00\04\00\00\00\ff\ff\ff\ff\04\00\00\00\fc\ff\ff\ff\1b\00\00\00\00\00\00\00\50\d8\00\00\00\00\00\00\00\00\00\00\00\00\00\00\58\d8\00\00\60\d8\00\00\70\d8\00\00\00\00\00\00\88\d8\00\00\00\00\00\00\00\00\00\00\90\d8\00\00\a0\d8\00\00\00\00\00\00\00\00\00\00\a8\d8\00\00") + (elem (i32.const 1) $$string.$$compAddr) + (elem (i32.const 2) $$u8.$$block.$$onFree) + (elem (i32.const 3) $$string.underlying.$$onFree) + (elem (i32.const 4) $$void.$$block.$$onFree) + (elem (i32.const 5) $$void.$ref.underlying.$$onFree) + (elem (i32.const 6) $$i`0`.underlying.$$onFree) + (elem (i32.const 7) $$runtime.mapNode.$$onFree) + (elem (i32.const 8) $$runtime.mapNode.$$block.$$onFree) + (elem (i32.const 9) $$runtime.mapNode.$slice.underlying.$$onFree) + (elem (i32.const 10) $$runtime.mapImp.$$onFree) + (elem (i32.const 11) $$runtime.mapImp.$$block.$$onFree) + (elem (i32.const 12) $$runtime.mapImp.$ref.underlying.$$onFree) + (elem (i32.const 13) $$runtime.mapIter.$$onFree) + (elem (i32.const 14) $$runtime.mapNode.$array1.underlying.$$onFree) + (elem (i32.const 15) $$math$rand.Source.underlying.$$onFree) + (elem (i32.const 16) $$math$rand.Source64.underlying.$$onFree) + (elem (i32.const 17) $$math$rand.Rand.$$onFree) + (elem (i32.const 18) $$errors.errorString.$$onFree) + (elem (i32.const 19) $$.error.underlying.$$onFree) + (elem (i32.const 20) $$strconv.NumError.$$onFree) + (elem (i32.const 21) $$u8.$slice.underlying.$$onFree) + (elem (i32.const 22) $$strconv.decimalSlice.$$onFree) + (elem (i32.const 23) $math$rand.rngSource.Int63) + (elem (i32.const 24) $math$rand.rngSource.Seed) + (elem (i32.const 25) $math$rand.rngSource.Uint64) + (elem (i32.const 26) $errors.errorString.Error) + (elem (i32.const 27) $strconv.NumError.Error) +) diff --git a/w4-pong/wasm4.css b/w4-pong/wasm4.css new file mode 100644 index 00000000..7c7e0155 --- /dev/null +++ b/w4-pong/wasm4.css @@ -0,0 +1 @@ +html,body{height:100%;margin:0}@font-face{font-family:wasm4-font;src:url(data:font/woff2;base64,d09GMgABAAAAAAegAA0AAAAAKHwAAAdOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYGYAA0CAQRCArGHLlRC4FCAAE2AiQDgUIEIAWDJgcgG4ggUVRQhkQRbBylAWCR/eGAmzBgcbVSEQV1MFRs8Ts/TVirjdcmzZum+foZqYGq4TdA2FbzSDx8f5+ee7Ns74fim/BWoE4AP1Wwc6lakA20VO54RMrR2gpfsF97s/P3xKMD8UIkBZNFk2ondPz/n9v9G4ROvGcJ9ejaJw8RK4kYUOt8zO4KgUDgofBQGDwMCjsf2FAHKMuSxfQKGICKTqpw8TAYfHywFNs02zbbJDAgUAD+z7l4byADjcSJjXhAkX+V15z5PA0HfmEHdHqW5OfXT1PsVLlV5AkPgm14EPW/1ds0nWuhRkHhmb/7JBfdZazTpbTGMrxynHPs9XO634fF7LHGGYvKrld7xSsgpTyfJqABJJGiNEP0JXXyPy/gUd+Oq0QckHKAEocXne/KDv7oOwSG0MMrDDRgQ0HCAFZ0Ar7LFhgi+t39/2Lzv/+fFLDLD/G/EugBH+CBbj+wXA/giv6ofkm3ZAqiNhrXlgkd4AIQwJg18/ES0QEKIZXedNDpbH9FmDzLD3D97q2rzT3TRXdngPKMRazVYXWiUtlpVnZTprWt4J6wbQiLK7o/u+vhZr91OWHc2/gH+Qyq505NGWB7ui1DWkl94VWLPsznaf1Socl++32X0B1fLASbyLYi6TAO6LlJoPwXg5YAIDQZ2GxXd7yaLzKdTNrAjkIbD1Sca4fUrWmNr+IUViUJVbuuu66KDZXmnH4fMCQ5ukPCRJDdgit52b4Et5RuCK2ZjuBXWu6K6zJkW4qAxA6Y0BWJpS9UgZPLQ3iSuQWAodKrD1VK44bhgApzKGely9pyBS45qWsGAx7ELrGRNkqZX2rpG1no3KgrF9zv29HXdcAmEYpTeqXQunmcM1KNLri1l3ETKhr/jkuZpYQWCtMUkAOA+G31Ezc8TlQCcX0AFiJM8A/Ja5ANNF3s+Aj1HaR91PPZwCslbEBH81Bta7KBGjhAdpteqxIHxKrVrglxhbYG0qRrxPwYd+RA3LtpvfDZhqQKKExdOI4SSCr8hboPCCdUxuYcsLQ2TWw8XO+W8S8kg28tTsGhGLgAGRwq7qpSd5XiJn8+0m7km8BBpAhQ5rqdtpQ58nsk6UVIA1DbFmX+klm8NFI+mk+Ll5BXDAY1ZsGRNeDGIUiLnIISx8u1n++kPlx5KbJLJOSiIDP1dfY4drhKlPE7oTwc9gEI5vBFDpQ2ih/QCB4V+GrFeAMbdFltBSpSqZm9jTuVVM1CVTyG+Haj1uZhNOXIU0xda+WccPIV0vAyy13AXHS7odKqX6lPnNQW29uptFF7hjud+bei1obGQ3mmpvE7YI+21Nlt7iq+tVb3XTcUFG5q31u2uVI1qvk971yZ+/NvzpZV1dNa7Wrems+vXZ7G0bjYrBMdM44xvrdfytxyouoAmPMIUnc0H1njzFfrgVdARZ2VnWXVw+0qv/fX8iYj698zzrSTOlorbpYF7dsMJFE7yW5kV/NV/wwJ/6VW+S3vk6u7s/frQR4kpi7JSQUksyJhl0BSNPS65eUmD+i8UGEYHhd5zmQA0oU5xN+qs8fdwfJZAQaqNDFTgSowOASAVTi4nNRD5CwJVyFK13cHxDEeWVQDvZU3CfsgXuwhIGxxAGE3sxM1QNCL5oTRpAtVec0/pJXNfeLQLO+973quQzeYBhK7GMFx18+4DtE1AX90lFeaawcfPwKbh9CZncWGRig514Ca6r5aIcMk1u7R7OyRfIjVldpkv/8QTig8xMfDoNqXMmPq6rWqoKMWvmXNIhNcLI1TokIhQLNwOGTfZxXWtBtNJFOwSQNl+3DGVwiBVU4+Oq0FeJi5E8VTE1ABD05R60ZWTc49DS4M1nMCCzmZSm7M8UWDSoiGvZPrWrGYd4bKvbh8oXu1Pnv2vrfKud0bz5t2kT7Ti8FNP4L9IJy/PdAULtKZAlxz2FahwUZvcI6aZm61UI4qEJ3XUpHb3NZcIBs7HYrbHf7GgFYvCv4JTMlVK5o9e10zmwVpEoUbhD8pWxVbCX6xdKM4RGTiZ/2PaYEZMh7uAHi1vTTwNaeeqsmWeoX+fERAY8Dlq8IlZUVTrzi35D7ANkN8liq6UConAkh2mBUCA+jNZ4cnuXvJDuFGvEUlaWfzT5MjGonslkNYRjXtmwJEQgbrm1xCr4/AZMWbVPGZ3SvOH9q/AaXqXNGRhP+VuL2mvmu8/zv9BnB5l14cMu1MBSJ04++6QDnTv1bPp6oZnRul1ORTFVkMUlS1LsSh2h2L41VW44wWXcvRhJYwoLfn7pCnX7rB3Zs4otOwC568tbQs/egw8kfbjvhpM06nOc/rWqbg7EicnAydmY7O4nomxNHJws4WxYXFJFGl55716GhGRqqjKI9kp3x0+aiPQqzthaSFKiR6LmZAzFysLXdGb3rZfIi6TEU7jgcy2geINtNWQpaBCnYWTmxqWDw0wzgfrJvzphPhoIstcvGIzuZO4UN1requPbF1HWhqLtgPf3YiwnTA/xIgKAA=)} diff --git a/w4-pong/wasm4.js b/w4-pong/wasm4.js new file mode 100644 index 00000000..e13db97d --- /dev/null +++ b/w4-pong/wasm4.js @@ -0,0 +1,360 @@ +var wasm4=function(A){"use strict";/** + * @license + * Copyright 2019 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */var ve;const pt=globalThis,_t=pt.ShadowRoot&&(pt.ShadyCSS===void 0||pt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,St=Symbol(),Dt=new WeakMap;let Nt=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==St)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(_t&&t===void 0){const s=e!==void 0&&e.length===1;s&&(t=Dt.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&Dt.set(e,t))}return t}toString(){return this.cssText}};const _e=o=>new Nt(typeof o=="string"?o:o+"",void 0,St),ft=(o,...t)=>{const e=o.length===1?o[0]:t.reduce((s,i,n)=>s+(r=>{if(r._$cssResult$===!0)return r.cssText;if(typeof r=="number")return r;throw Error("Value passed to 'css' function must be a 'css' function result: "+r+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+o[n+1],o[0]);return new Nt(e,o,St)},Se=(o,t)=>{if(_t)o.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(const e of t){const s=document.createElement("style"),i=pt.litNonce;i!==void 0&&s.setAttribute("nonce",i),s.textContent=e.cssText,o.appendChild(s)}},Bt=_t?o=>o:o=>o instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return _e(e)})(o):o;/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const{is:xe,defineProperty:ke,getOwnPropertyDescriptor:Ce,getOwnPropertyNames:Te,getOwnPropertySymbols:Pe,getPrototypeOf:$e}=Object,U=globalThis,Ft=U.trustedTypes,Ie=Ft?Ft.emptyScript:"",xt=U.reactiveElementPolyfillSupport,tt=(o,t)=>o,mt={toAttribute(o,t){switch(t){case Boolean:o=o?Ie:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,t){let e=o;switch(t){case Boolean:e=o!==null;break;case Number:e=o===null?null:Number(o);break;case Object:case Array:try{e=JSON.parse(o)}catch{e=null}}return e}},kt=(o,t)=>!xe(o,t),Ht={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),U.litPropertyMetadata??(U.litPropertyMetadata=new WeakMap);class Y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=Ht){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){const s=Symbol(),i=this.getPropertyDescriptor(t,s,e);i!==void 0&&ke(this.prototype,t,i)}}static getPropertyDescriptor(t,e,s){const{get:i,set:n}=Ce(this.prototype,t)??{get(){return this[e]},set(r){this[e]=r}};return{get(){return i==null?void 0:i.call(this)},set(r){const c=i==null?void 0:i.call(this);n.call(this,r),this.requestUpdate(t,c,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Ht}static _$Ei(){if(this.hasOwnProperty(tt("elementProperties")))return;const t=$e(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(tt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(tt("properties"))){const e=this.properties,s=[...Te(e),...Pe(e)];for(const i of s)this.createProperty(i,e[i])}const t=this[Symbol.metadata];if(t!==null){const e=litPropertyMetadata.get(t);if(e!==void 0)for(const[s,i]of e)this.elementProperties.set(s,i)}this._$Eh=new Map;for(const[e,s]of this.elementProperties){const i=this._$Eu(e,s);i!==void 0&&this._$Eh.set(i,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const i of s)e.unshift(Bt(i))}else t!==void 0&&e.push(Bt(t));return e}static _$Eu(t,e){const s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var t;this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),(t=this.constructor.l)==null||t.forEach(e=>e(this))}addController(t){var e;(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&((e=t.hostConnected)==null||e.call(t))}removeController(t){var e;(e=this._$EO)==null||e.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Se(t,this.constructor.elementStyles),t}connectedCallback(){var t;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostConnected)==null?void 0:s.call(e)})}enableUpdating(t){}disconnectedCallback(){var t;(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostDisconnected)==null?void 0:s.call(e)})}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$EC(t,e){var n;const s=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,s);if(i!==void 0&&s.reflect===!0){const r=(((n=s.converter)==null?void 0:n.toAttribute)!==void 0?s.converter:mt).toAttribute(e,s.type);this._$Em=t,r==null?this.removeAttribute(i):this.setAttribute(i,r),this._$Em=null}}_$AK(t,e){var n;const s=this.constructor,i=s._$Eh.get(t);if(i!==void 0&&this._$Em!==i){const r=s.getPropertyOptions(i),c=typeof r.converter=="function"?{fromAttribute:r.converter}:((n=r.converter)==null?void 0:n.fromAttribute)!==void 0?r.converter:mt;this._$Em=i,this[i]=c.fromAttribute(e,r.type),this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){if(s??(s=this.constructor.getPropertyOptions(t)),!(s.hasChanged??kt)(this[t],e))return;this.P(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,e,s){this._$AL.has(t)||this._$AL.set(t,e),s.reflect===!0&&this._$Em!==t&&(this._$Ej??(this._$Ej=new Set)).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var s;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[n,r]of this._$Ep)this[n]=r;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[n,r]of i)r.wrapped!==!0||this._$AL.has(n)||this[n]===void 0||this.P(n,this[n],r)}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),(s=this._$EO)==null||s.forEach(i=>{var n;return(n=i.hostUpdate)==null?void 0:n.call(i)}),this.update(e)):this._$EU()}catch(i){throw t=!1,this._$EU(),i}t&&this._$AE(e)}willUpdate(t){}_$AE(t){var e;(e=this._$EO)==null||e.forEach(s=>{var i;return(i=s.hostUpdated)==null?void 0:i.call(s)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&(this._$Ej=this._$Ej.forEach(e=>this._$EC(e,this[e]))),this._$EU()}updated(t){}firstUpdated(t){}}Y.elementStyles=[],Y.shadowRootOptions={mode:"open"},Y[tt("elementProperties")]=new Map,Y[tt("finalized")]=new Map,xt==null||xt({ReactiveElement:Y}),(U.reactiveElementVersions??(U.reactiveElementVersions=[])).push("2.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const et=globalThis,yt=et.trustedTypes,Gt=yt?yt.createPolicy("lit-html",{createHTML:o=>o}):void 0,Wt="$lit$",O=`lit$${(Math.random()+"").slice(9)}$`,zt="?"+O,Ue=`<${zt}>`,D=document,st=()=>D.createComment(""),it=o=>o===null||typeof o!="object"&&typeof o!="function",Vt=Array.isArray,Oe=o=>Vt(o)||typeof(o==null?void 0:o[Symbol.iterator])=="function",Ct=`[ +\f\r]`,nt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,jt=/-->/g,Yt=/>/g,N=RegExp(`>|${Ct}(?:([^\\s"'>=/]+)(${Ct}*=${Ct}*(?:[^ +\f\r"'\`<>=]|("|')|))|$)`,"g"),Kt=/'/g,qt=/"/g,Xt=/^(?:script|style|textarea|title)$/i,Me=o=>(t,...e)=>({_$litType$:o,strings:t,values:e}),C=Me(1),K=Symbol.for("lit-noChange"),S=Symbol.for("lit-nothing"),Jt=new WeakMap,B=D.createTreeWalker(D,129);function Zt(o,t){if(!Array.isArray(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return Gt!==void 0?Gt.createHTML(t):t}const Le=(o,t)=>{const e=o.length-1,s=[];let i,n=t===2?"":"",r=nt;for(let c=0;c"?(r=i??nt,d=-1):l[1]===void 0?d=-2:(d=r.lastIndex-l[2].length,h=l[1],r=l[3]===void 0?N:l[3]==='"'?qt:Kt):r===qt||r===Kt?r=N:r===jt||r===Yt?r=nt:(r=N,i=void 0);const w=r===N&&o[c+1].startsWith("/>")?" ":"";n+=r===nt?a+Ue:d>=0?(s.push(h),a.slice(0,d)+Wt+a.slice(d)+O+w):a+O+(d===-2?c:w)}return[Zt(o,n+(o[e]||"")+(t===2?"":"")),s]};class rt{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let n=0,r=0;const c=t.length-1,a=this.parts,[h,l]=Le(t,e);if(this.el=rt.createElement(h,s),B.currentNode=this.el.content,e===2){const d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(i=B.nextNode())!==null&&a.length0){i.textContent=yt?yt.emptyScript:"";for(let w=0;w2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=S}_$AI(t,e=this,s,i){const n=this.strings;let r=!1;if(n===void 0)t=q(this,t,e,0),r=!it(t)||t!==this._$AH&&t!==K,r&&(this._$AH=t);else{const c=t;let a,h;for(t=n[0],a=0;a{const s=(e==null?void 0:e.renderBefore)??t;let i=s._$litPart$;if(i===void 0){const n=(e==null?void 0:e.renderBefore)??null;s._$litPart$=i=new ot(t.insertBefore(st(),n),n,void 0,e??{})}return i._$AI(o),i};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */class M extends Y{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;const t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=He(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Do)==null||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Do)==null||t.setConnected(!1)}render(){return K}}M._$litElement$=!0,M.finalized=!0,(ve=globalThis.litElementHydrateSupport)==null||ve.call(globalThis,{LitElement:M});const Pt=globalThis.litElementPolyfillSupport;Pt==null||Pt({LitElement:M}),(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const bt=o=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(o,t)}):customElements.define(o,t)};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Ge={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt},We=(o=Ge,t,e)=>{const{kind:s,metadata:i}=e;let n=globalThis.litPropertyMetadata.get(i);if(n===void 0&&globalThis.litPropertyMetadata.set(i,n=new Map),n.set(e.name,o),s==="accessor"){const{name:r}=e;return{set(c){const a=t.get.call(this);t.set.call(this,c),this.requestUpdate(r,a,o)},init(c){return c!==void 0&&this.P(r,void 0,o),c}}}if(s==="setter"){const{name:r}=e;return function(c){const a=this[r];t.call(this,c),this.requestUpdate(r,a,o)}}throw Error("Unsupported decorator location: "+s)};function ze(o){return(t,e)=>typeof e=="object"?We(o,t,e):((s,i,n)=>{const r=i.hasOwnProperty(n);return i.constructor.createProperty(n,r?{...s,wrapped:!0}:s),r?Object.getOwnPropertyDescriptor(i,n):void 0})(o,t,e)}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function at(o){return ze({...o,state:!0,attribute:!1})}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Qt=(o,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(o,t,e),e);/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function ct(o,t){return(e,s,i)=>{const n=r=>{var c;return((c=r.renderRoot)==null?void 0:c.querySelector(o))??null};if(t){const{get:r,set:c}=typeof s=="object"?e:i??(()=>{const a=Symbol();return{get(){return this[a]},set(h){this[a]=h}}})();return Qt(e,s,{get(){let a=r.call(this);return a===void 0&&(a=n(this),(a!==null||this.hasUpdated)&&c.call(this,a)),a}})}return Qt(e,s,{get(){return n(this)}})}}const E=160,x=160,X=1024,Ve="WASM-4",je=[14743759,8831084,3172432,464929],$t=4,lt=20,Ye=22,te=26,ee=28,Ke=30,qe=31,Xe=32,Je=160,L=1,F=2,J=16,Z=32,H=64,G=128,Ze=1,Qe=2,se=1,ie=2,ts=Uint8Array.of(255,255,255,255,255,255,255,255,199,199,199,207,207,255,207,255,147,147,147,255,255,255,255,255,147,1,147,147,147,1,147,255,239,131,47,131,233,3,239,255,157,91,55,239,217,181,115,255,143,39,39,143,37,51,129,255,207,207,207,255,255,255,255,255,243,231,207,207,207,231,243,255,159,207,231,231,231,207,159,255,255,147,199,1,199,147,255,255,255,231,231,129,231,231,255,255,255,255,255,255,255,207,207,159,255,255,255,129,255,255,255,255,255,255,255,255,255,207,207,255,253,251,247,239,223,191,127,255,199,179,57,57,57,155,199,255,231,199,231,231,231,231,129,255,131,57,241,195,135,31,1,255,129,243,231,195,249,57,131,255,227,195,147,51,1,243,243,255,3,63,3,249,249,57,131,255,195,159,63,3,57,57,131,255,1,57,243,231,207,207,207,255,135,59,27,135,97,121,131,255,131,57,57,129,249,243,135,255,255,207,207,255,207,207,255,255,255,207,207,255,207,207,159,255,243,231,207,159,207,231,243,255,255,255,1,255,1,255,255,255,159,207,231,243,231,207,159,255,131,1,57,243,199,255,199,255,131,125,69,85,65,127,131,255,199,147,57,57,1,57,57,255,3,57,57,3,57,57,3,255,195,153,63,63,63,153,195,255,7,51,57,57,57,51,7,255,1,63,63,3,63,63,1,255,1,63,63,3,63,63,63,255,193,159,63,49,57,153,193,255,57,57,57,1,57,57,57,255,129,231,231,231,231,231,129,255,249,249,249,249,249,57,131,255,57,51,39,15,7,35,49,255,159,159,159,159,159,159,129,255,57,17,1,1,41,57,57,255,57,25,9,1,33,49,57,255,131,57,57,57,57,57,131,255,3,57,57,57,3,63,63,255,131,57,57,57,33,51,133,255,3,57,57,49,7,35,49,255,135,51,63,131,249,57,131,255,129,231,231,231,231,231,231,255,57,57,57,57,57,57,131,255,57,57,57,17,131,199,239,255,57,57,41,1,1,17,57,255,57,17,131,199,131,17,57,255,153,153,153,195,231,231,231,255,1,241,227,199,143,31,1,255,195,207,207,207,207,207,195,255,127,191,223,239,247,251,253,255,135,231,231,231,231,231,135,255,199,147,255,255,255,255,255,255,255,255,255,255,255,255,255,1,239,247,255,255,255,255,255,255,255,255,131,249,129,57,129,255,63,63,3,57,57,57,131,255,255,255,129,63,63,63,129,255,249,249,129,57,57,57,129,255,255,255,131,57,1,63,131,255,241,231,129,231,231,231,231,255,255,255,129,57,57,129,249,131,63,63,3,57,57,57,57,255,231,255,199,231,231,231,129,255,243,255,227,243,243,243,243,135,63,63,49,3,7,35,49,255,199,231,231,231,231,231,129,255,255,255,3,73,73,73,73,255,255,255,3,57,57,57,57,255,255,255,131,57,57,57,131,255,255,255,3,57,57,3,63,63,255,255,129,57,57,129,249,249,255,255,145,143,159,159,159,255,255,255,131,63,131,249,3,255,231,231,129,231,231,231,231,255,255,255,57,57,57,57,129,255,255,255,153,153,153,195,231,255,255,255,73,73,73,73,129,255,255,255,57,1,199,1,57,255,255,255,57,57,57,129,249,131,255,255,1,227,199,143,1,255,243,231,231,207,231,231,243,255,231,231,231,231,231,231,231,255,159,207,207,231,207,207,159,255,255,255,143,69,227,255,255,255,255,255,255,255,255,147,147,255,131,41,41,17,41,41,131,255,131,57,9,17,33,57,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,131,17,33,125,33,17,131,255,131,17,9,125,9,17,131,255,131,17,57,85,17,17,131,255,131,17,17,85,57,17,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,231,255,231,231,199,199,199,255,239,131,41,47,41,131,239,255,195,153,159,3,159,159,1,255,255,165,219,219,219,165,255,255,153,153,195,129,231,129,231,255,231,231,231,255,231,231,231,255,195,153,135,219,225,153,195,255,147,255,255,255,255,255,255,255,195,189,102,94,94,102,189,195,135,195,147,195,255,255,255,255,255,201,147,39,147,201,255,255,255,255,129,249,249,255,255,255,255,255,255,255,255,255,255,255,195,189,70,90,70,90,189,195,131,255,255,255,255,255,255,255,239,215,239,255,255,255,255,255,231,231,129,231,231,255,129,255,199,243,231,195,255,255,255,255,195,231,243,199,255,255,255,255,247,239,255,255,255,255,255,255,255,255,51,51,51,51,9,63,193,149,181,149,193,245,245,255,255,255,255,207,207,255,255,255,255,255,255,255,255,255,247,207,231,199,231,195,255,255,255,255,199,147,147,199,255,255,255,255,255,39,147,201,147,39,255,255,189,59,183,173,217,177,125,255,189,59,183,169,221,187,113,255,29,187,215,45,217,177,125,255,199,255,199,159,57,1,131,255,223,239,199,147,57,1,57,255,247,239,199,147,57,1,57,255,199,147,199,147,57,1,57,255,203,167,199,147,57,1,57,255,147,255,199,147,57,1,57,255,239,215,199,147,57,1,57,255,193,135,39,33,7,39,33,255,195,153,63,63,153,195,247,207,223,239,1,63,3,63,1,255,247,239,1,63,3,63,1,255,199,147,1,63,3,63,1,255,147,255,1,63,3,63,1,255,239,247,129,231,231,231,129,255,247,239,129,231,231,231,129,255,231,195,129,231,231,231,129,255,153,255,129,231,231,231,129,255,135,147,153,9,153,147,135,255,203,167,25,9,1,33,49,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,187,215,239,215,187,255,255,131,57,49,41,25,57,131,255,223,239,57,57,57,57,131,255,247,239,57,57,57,57,131,255,199,147,255,57,57,57,131,255,147,255,57,57,57,57,131,255,247,239,153,153,195,231,231,255,63,3,57,57,57,3,63,255,195,153,153,147,153,137,147,255,223,239,131,249,129,57,129,255,247,239,131,249,129,57,129,255,199,147,131,249,129,57,129,255,203,167,131,249,129,57,129,255,147,255,131,249,129,57,129,255,239,215,131,249,129,57,129,255,255,255,131,233,129,47,131,255,255,255,129,63,63,129,247,207,223,239,131,57,1,63,131,255,247,239,131,57,1,63,131,255,199,147,131,57,1,63,131,255,147,255,131,57,1,63,131,255,223,239,255,199,231,231,129,255,247,239,255,199,231,231,129,255,199,147,255,199,231,231,129,255,147,255,199,231,231,231,129,255,155,135,103,131,57,57,131,255,203,167,3,57,57,57,57,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,231,255,129,255,231,255,255,255,255,131,49,41,25,131,255,223,239,57,57,57,57,129,255,247,239,57,57,57,57,129,255,199,147,255,57,57,57,129,255,147,255,57,57,57,57,129,255,247,239,57,57,57,129,249,131,63,63,3,57,57,3,63,63,147,255,57,57,57,129,249,131);function It(o){const t=new URL(location.href),e=t.searchParams.get(o);return e??new URL(t.hash.substring(1),"https://x").searchParams.get(o)}function ne(){if(document.fullscreenElement==null){let o=function(){const e=window.frameElement;e&&(e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.zIndex="99999",e.style.width="100%",e.style.height="100%")};const t=document.body.requestFullscreen&&document.body.requestFullscreen({navigationUI:"hide"});t?t.catch(o):o()}}async function es(o){try{await navigator.clipboard.writeText(o)}catch{let t=document.createElement("dialog");t.title="Netplay URL",t.textContent=o,document.body.append(t);let e=document.createElement("button");e.textContent="Copy",e.style.marginLeft="1em",e.onclick=()=>navigator.clipboard.writeText(o),t.appendChild(e);let s=document.createElement("button");s.textContent="Close",s.style.marginLeft="1em",s.onclick=()=>{document.body.removeChild(t)},t.appendChild(s),t.showModal()}}const ss="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#".split(""),re=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0];function oe(o){const t=o.length,e=t%4,s=e?t+4-e:t;let i="",n=0,r=0;for(;n=1;){const h=Math.floor(r/a)%85;i+=ss[h],a/=85}r=0}}return i}function ae(o,t){let e=0,s=0,i=0;const n=o.length,r=t.length;if(o.length%5==0)for(;s=re.length)return e;if(i=i*85+re[c],s%5==0){let a=16777216;for(;a>=1;){if(e>=r)return e;t[e++]=i/a%256,a/=256}i=0}}return e}class ht{constructor(){this.memory=new ArrayBuffer(65536),this.globals={},this.diskBuffer=new ArrayBuffer(X),this.diskSize=0}read(t){new Uint8Array(this.memory).set(new Uint8Array(t.memory.buffer)),this.globals={};for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&(this.globals[e]=s.value.toString())}this.diskSize=t.diskSize,new Uint8Array(this.diskBuffer).set(new Uint8Array(t.diskBuffer,0,t.diskSize))}write(t){new Uint8Array(t.memory.buffer).set(new Uint8Array(this.memory));for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&e in this.globals&&(s.value=this.globals[e])}t.diskSize=this.diskSize,new Uint8Array(t.diskBuffer).set(new Uint8Array(this.diskBuffer,0,this.diskSize))}toBytes(){const t=new TextEncoder().encode(JSON.stringify(this.globals)),e=new Uint8Array(65544+t.byteLength+this.diskSize),s=new DataView(e.buffer,e.byteOffset,e.byteLength);e.set(new Uint8Array(this.memory),0);let i=65536;return s.setUint32(i,t.byteLength),e.set(t,i+4),i+=4+t.byteLength,s.setUint32(i,this.diskSize),e.set(new Uint8Array(this.diskBuffer,0,this.diskSize),i+4),e}fromBytes(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength);new Uint8Array(this.memory).set(t.subarray(0,65536));let s=65536;const i=e.getUint32(s),n=t.slice(s+4,s+4+i);this.globals=JSON.parse(new TextDecoder().decode(n)),s+=4+i,this.diskSize=e.getUint32(s),new Uint8Array(this.diskBuffer).set(t.subarray(s+4,s+4+this.diskSize))}}const I=20,R=4;class is{constructor(){this.frame=-1,this.state=new ht,this.inputs=new Array(R),this.predicted=new Array(R);for(let t=0;t=this.currentFrame)i.futureInputs.has(e)||i.futureInputs.set(e,n);else for(let r=0,c=I;r{this.send("",{type:"KEEPALIVE"},!1)},15e3)}async connect(){const t=["wss://webrtc-signal-server.wasm4.org","wss://ywc2h85cv1.execute-api.us-east-1.amazonaws.com/production","wss://webrtc-signal-server.wasm4.jwq.moe","wss://iyuavuru2h.execute-api.eu-central-1.amazonaws.com/production"];for(const e of t)try{this.socket=await new Promise((s,i)=>{const n=new WebSocket(e);n.addEventListener("open",()=>{s(n)}),n.addEventListener("error",()=>{i()})});break}catch(s){console.error(s)}if(!this.socket)throw new Error("Unable to connect to signal server");this.socket.addEventListener("message",e=>{const{source:s,message:i}=JSON.parse(e.data);this.onMessage(s,i)});for(const e of this.bufferedOutput)this.socket.send(e);this.bufferedOutput.length=0}send(t,e,s=!0){var n;const i=JSON.stringify({target:t,message:e});((n=this.socket)==null?void 0:n.readyState)==1?this.socket.send(i):s&&this.bufferedOutput.push(i)}close(){var t;(t=this.socket)==null||t.close(),window.clearInterval(this.keepaliveInterval)}}class os{constructor(t){this.connections=new Map;let e;this.localPeerId=new Promise(s=>{e=s}),this.signalClient=new rs(async(s,i)=>{switch(i.type){case"WHOAMI_REPLY":this.iceServers=i.iceServers,e(i.yourPeerId);break;case"OFFER":{if(this.connections.has(s))throw new Error("Received offer for a connection we already initiated");{const n=this.createConnection(s);await n.setRemoteDescription(i.description),await n.setLocalDescription(await n.createAnswer()),t(n,s),this.signalClient.send(s,{type:"ANSWER",description:n.localDescription.toJSON()})}}break;case"ANSWER":{const n=this.connections.get(s);n&&await n.setRemoteDescription(i.description)}break;case"CANDIDATE":{const n=this.connections.get(s);n&&await n.addIceCandidate(new RTCIceCandidate(i.candidate))}break;case"ABORT":{const n=this.connections.get(s);n&&n.close()}break}}),this.signalClient.send("",{type:"WHOAMI_REQUEST"})}createConnection(t){const e=new RTCPeerConnection({iceServers:this.iceServers});return this.connections.set(t,e),e.addEventListener("negotiationneeded",async()=>{await e.setLocalDescription(await e.createOffer()),this.signalClient.send(t,{type:"OFFER",description:e.localDescription.toJSON()})}),e.addEventListener("icecandidate",({candidate:s})=>{s&&this.signalClient.send(t,{type:"CANDIDATE",candidate:s.toJSON()})}),e.addEventListener("connectionstatechange",()=>{const s=e.connectionState;(s=="connected"||s=="failed")&&this.connections.delete(t)}),e}connect(t){return this.connections.get(t)||this.createConnection(t)}close(){this.signalClient.close();for(const[t,e]of this.connections)e.close()}}const gt=16384;class as{constructor(t){this.chunks=[],this.size=0,t.addEventListener("message",e=>{if(e.data instanceof ArrayBuffer){const s=new Uint8Array(e.data);this.size+=s.byteLength,this.chunks.push(s)}})}read(){const t=new Uint8Array(this.size);let e=0;for(const s of this.chunks)t.set(s,e),e+=s.byteLength;return this.chunks.length=0,this.size=0,t}}class cs{constructor(t){this.channel=t,this.size=0}write(t){this.buffer||(this.buffer=new Uint8Array(gt));let e=this.size,s=0;for(;s=gt&&(e-=gt,this.channel.send(this.buffer))}this.size=e}flush(){this.buffer&&this.size>0&&this.channel.send(this.buffer.subarray(0,this.size)),this.buffer=void 0}}class ls{constructor(t,e=0){this.buffer=t,this.position=e}readBit(){const t=!!(this.buffer[this.position/8>>>0]&1<<(this.position&7));return++this.position,t}readBits(t){let e=0;for(let s=0;s>>0]|=1<<(this.position&7),++this.position}write0(){this.buffer[this.position/8>>>0]&=~(1<<(this.position&7)),++this.position}writeBits(t,e){for(let s=0;s0;--s)this.outboundInputs.unshift(e);this.outboundFrame=t}else{const s=t-this.outboundFrame;if(s>=this.outboundInputs.length){for(let i=this.outboundInputs.length;i0?this.outboundInputs[i-1]:0;this.outboundInputs[s]=e}}}sendMessage(t){this.reliableChannel.send(JSON.stringify(t))}sendUnreliableBuffer(t){this.unreliableChannel.send(t)}sendPingRequest(){const t=new DataView(W);t.setUint8(0,2),t.setUint32(1,performance.now()>>>0),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendPingReply(t){const e=new DataView(W);e.setUint8(0,3),e.setUint32(1,t),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendTick(t){const e=new DataView(W);e.setUint8(0,1),e.setUint32(1,t),e.setInt8(5,this.nextNeededFrame==0?-127:this.nextNeededFrame-t),e.setInt8(6,this.outboundFrame-t),e.setUint8(7,this.outboundInputs.length);const s=new hs(new Uint8Array(W,8));let i=0;for(const r of this.outboundInputs){const c=i^r;i=r;for(let a=0;a<8;++a)c&1<{const i=Array.from(this.remotePlayers.keys()),n=await this.createRemotePlayer(e,s);n.sendMessage({type:"WELCOME",otherPeers:i}),this.localPlayerIdx>=0&&n.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})})}host(){this.runtime.setNetplay(0),this.rollbackMgr=new ce(1,this.runtime),this.localPlayerIdx=0}join(t){const e=this.peerMgr.connect(t);this.createRemotePlayer(e,t).then(s=>{s.sendMessage({type:"JOIN_REQUEST"})},s=>{this.runtime.blueScreen(`Failed to connect +to peer. They may +be offline?`)})}async getInviteLink(){const t=await this.peerMgr.localPeerId,e=window.location;if(e.protocol=="file:"||e.hostname=="localhost"||e.hostname=="127.0.0.1"||e.hostname=="wasm4.org")return`https://wasm4.org/netplay/#${t}`;const s=new URL(e.href);return s.searchParams.set("netplay",t),s.href}close(){for(const t of this.remotePlayers.values())t.close();this.peerMgr.close()}async createRemotePlayer(t,e){function s(a){return new Promise((h,l)=>{const d=t.createDataChannel("WASM-4",a);d.binaryType="arraybuffer",d.onopen=()=>{h(d)},d.onerror=l})}const[i,n]=await Promise.all([s({negotiated:!0,id:0}),s({negotiated:!0,id:1,ordered:!1,maxRetransmits:0})]),r=new us(e,t,i,n);this.remotePlayers.set(e,r);const c=()=>{this.remotePlayers.has(e)&&(this.remotePlayers.delete(e),this.onleave&&r.playerIdx>=0&&this.onleave(r.playerIdx))};return t.addEventListener("connectionstatechange",()=>{t.connectionState=="disconnected"&&c()}),i.addEventListener("close",c),n.addEventListener("close",c),i.addEventListener("message",async a=>{if(typeof a.data!="string")return;const h=JSON.parse(a.data);switch(h.type){case"WELCOME":for(const l of h.otherPeers)if(!this.remotePlayers.has(l)){const d=this.peerMgr.connect(l),u=await this.createRemotePlayer(d,l);this.localPlayerIdx>=0&&u.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})}break;case"JOIN_REQUEST":{const l=this.nextPlayerIdx();if(l>=4)r.sendMessage({type:"JOIN_REJECT"}),r.close();else{r.playerIdx=l,r.chunkWriter.write(this.runtime.wasmBuffer);const d=new ht;d.read(this.runtime),r.chunkWriter.write(d.toBytes()),r.chunkWriter.flush(),r.sendMessage({type:"JOIN_REPLY",yourPlayerIdx:r.playerIdx,frame:this.rollbackMgr.currentFrame,stateOffset:this.runtime.wasmBuffer.byteLength}),this.onjoin&&this.onjoin(r.playerIdx)}}break;case"JOIN_REPLY":{this.localPlayerIdx=h.yourPlayerIdx;for(const b of this.remotePlayers.values())b!=r&&b.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx});const l=r.chunkReader.read(),d=l.subarray(0,h.stateOffset),u=l.subarray(h.stateOffset);await this.runtime.load(d,!1);const w=new ht;w.fromBytes(u),w.write(this.runtime),this.runtime.setNetplay(this.localPlayerIdx),this.rollbackMgr=new ce(h.frame,this.runtime),this.onstart&&this.onstart(this.localPlayerIdx)}break;case"JOIN_REJECT":this.runtime.blueScreen(`Connected, but the +game is already +full!`),this.close();break;case"PLAYER_INFO":r.playerIdx==-1&&(r.playerIdx=h.playerIdx,this.onjoin&&this.onjoin(r.playerIdx));break}}),n.addEventListener("message",async a=>{const h=a.data,l=new DataView(h);switch(l.getUint8(0)){case 1:if(this.rollbackMgr&&r.playerIdx>=0){const u=l.getUint32(1);if(u>r.frame){const w=l.getInt8(5)+u,b=l.getInt8(6)+u,p=l.getUint8(7),f=new ls(new Uint8Array(h,8)),m=new Array(p);let y=0;for(let v=0;vr.outboundFrame){const v=w-r.outboundFrame;r.outboundFrame=w,r.outboundInputs.splice(0,v)}const g=u+.5*r.ping.average*60/1e3,_=this.rollbackMgr.currentFrame-g;r.drift.update(_),this.rollbackMgr.addInputs(r.playerIdx,b,m)}}break;case 2:{const u=l.getUint32(1);r.sendPingReply(u)}break;case 3:{const u=l.getUint32(1),w=(performance.now()>>>0)-u;r.ping.update(w)}break}}),r}nextPlayerIdx(){t:for(let t=0;t<4;++t)if(this.localPlayerIdx!=t){for(const e of this.remotePlayers.values())if(e.playerIdx==t)continue t;return t}return-1}update(t){if(!this.rollbackMgr)return!1;const e=(this.updateCount&7)==0,s=(this.updateCount&31)==0;++this.updateCount;const i=this.rollbackMgr.currentFrame,r=i+2;this.rollbackMgr.addInputs(this.localPlayerIdx,r,[t]);let c=!1;for(const a of this.remotePlayers.values())a.addOutboundInput(r,t),a.sendTick(i),(a.nextNeededFrame=he)&&(c=!0),s&&a.sendPingRequest();if(e){let a=0;for(const h of this.remotePlayers.values())a=Math.max(h.drift.average,a);a>=1&&(c=!0)}return c||this.rollbackMgr.update(),!c}getSummary(){const t=[{playerIdx:this.localPlayerIdx,ping:-1}];for(const e of this.remotePlayers.values())t.push({playerIdx:e.playerIdx,ping:e.ping.average});return t.sort((e,s)=>e.playerIdx-s.playerIdx),t}}const de=`"use strict";(()=>{var M=Math.floor(44.1),b=class{constructor(){this.freq1=0;this.freq2=0;this.startTime=0;this.attackTime=0;this.decayTime=0;this.sustainTime=0;this.releaseTime=0;this.endTick=0;this.sustainVolume=0;this.peakVolume=0;this.phase=0;this.pan=0;this.pulseDutyCycle=0;this.noiseSeed=1;this.noiseLastRandom=0}};function L(m,e,s){return m+s*(e-m)}function V(m,e){if(m1-e){let s=(m-(1-e))/e;return 1-(s+s-s*s)}else return 1}function x(m,e){return Math.pow(2,(m-69+e/256)/12)*440}var y=class extends AudioWorkletProcessor{constructor(){super(),this.time=0,this.ticks=0,this.channels=new Array(4);for(let e=0;e<4;++e)this.channels[e]=new b;this.port!=null&&(this.port.onmessage=e=>{e.data==="tick"?this.tick():this.tone(...e.data)})}ramp(e,s,f,u){if(this.time>=u)return s;let a=(this.time-f)/(u-f);return L(e,s,a)}getCurrentFrequency(e){return e.freq2>0?this.ramp(e.freq1,e.freq2,e.startTime,e.releaseTime):e.freq1}getCurrentVolume(e){let s=this.time;return s>=e.sustainTime&&e.releaseTime-e.sustainTime>M?this.ramp(e.sustainVolume,0,e.sustainTime,e.releaseTime):s>=e.decayTime?e.sustainVolume:s>=e.attackTime?this.ramp(e.peakVolume,e.sustainVolume,e.attackTime,e.decayTime):this.ramp(0,e.peakVolume,e.startTime,e.attackTime)}tick(){this.ticks++}tone(e,s,f,u){let a=e&65535,p=e>>16&65535,A=s&255,h=s>>8&255,o=s>>16&255,i=s>>24&255,E=Math.min(f&255,100),l=Math.min(f>>8&255,100),n=u&3,r=u>>2&3,c=u>>4&3,d=u&64,t=this.channels[n];this.time>t.releaseTime&&this.ticks!=t.endTick&&(t.phase=n==2?.25:0),d?(t.freq1=x(a&255,a>>8),t.freq2=p==0?0:x(p&255,p>>8)):(t.freq1=a,t.freq2=p),t.startTime=this.time,t.attackTime=t.startTime+(44100*i/60>>>0),t.decayTime=t.attackTime+(44100*o/60>>>0),t.sustainTime=t.decayTime+(44100*A/60>>>0),t.releaseTime=t.sustainTime+(44100*h/60>>>0),t.endTick=this.ticks+i+o+A+h,t.pan=c;let T=n==2?.25:.15;if(t.sustainVolume=T*E/100,t.peakVolume=l?T*l/100:T,n==0||n==1)switch(r){case 0:t.pulseDutyCycle=.125;break;case 1:case 3:default:t.pulseDutyCycle=.25;break;case 2:t.pulseDutyCycle=.5;break}else n==2&&h==0&&(t.releaseTime+=M)}process(e,[[s,f]],u){for(let a=0,p=s.length;a0;){i.phase--;let r=i.noiseSeed;r^=r>>7,r^=r<<9,r^=r>>13,i.noiseSeed=r,i.noiseLastRandom=((r&1)<<1)-1}n=l*i.noiseLastRandom}else{let r=E/44100,c=i.phase+r;if(c>=1&&c--,i.phase=c,o==2)n=l*(2*Math.abs(2*i.phase-1)-1);else{let d,t,T,k=i.pulseDutyCycle;c{n=new l};new Function("registerProcessor","AudioWorkletProcessor",de)(r,class{}),this.processor=n;const a=t.createScriptProcessor(1024,0,2);a.onaudioprocess=h=>{const l=h.outputBuffer.getChannelData(0),d=h.outputBuffer.getChannelData(1);n.process(null,[[l,d]],null)},a.connect(t.destination)}}tick(){this.processorPort!=null?this.processorPort.postMessage("tick"):this.processor.tick()}tone(t,e,s,i){this.processorPort!=null?this.processorPort.postMessage([t,e,s,i]):this.processor.tone(t,e,s,i)}unlockAudio(){const t=this.audioCtx;t.state=="suspended"&&t.resume()}pauseAudio(){const t=this.audioCtx;t.state=="running"&&t.suspend()}}class ms{constructor(t){this.bytes=new Uint8Array(t,Je,E*x>>>2),this.drawColors=new Uint16Array(t,lt,1)}clear(){this.bytes.fill(0)}drawPoint(t,e,s){const i=E*s+e>>>2,n=(e&3)<<1,r=3<=0&&e=0&&s3){for(let l=e;l>>2,a=E*s+n>>>2,h=t*85;this.bytes.fill(h,c,a),e=n}for(let c=e;c=0&&sE&&(i=E),e=E)return;const i=this.drawColors[0]&15;if(i==0)return;const n=Math.max(0,e),r=Math.min(x,e+s),c=i-1&3;for(let a=n;a>>4&15;if(u!==0){const b=u-1&3;for(let p=r;p=0&&t0&&c<=E)for(let p=r;p=0&&e0&&a<=x&&this.drawHLineFast(b,n,a-1,h)}}drawOval(t,e,s,i){const n=this.drawColors[0],r=n&15,c=n>>>4&15;if(c===15)return;const a=c-1&3,h=r-1&3;let l=s-1;const d=i-1;let u=d%2,w=e+Math.floor(i/2),b=t,p=t+s-1,f=w-u;const m=l*l,y=d*d;let g=4*(1-l)*y,_=4*(u+1)*m,v=g+_+u*m;l=8*m,u=8*y;do{this.drawPointUnclipped(a,p,w),this.drawPointUnclipped(a,b,w),this.drawPointUnclipped(a,b,f),this.drawPointUnclipped(a,p,f);const k=b+1,T=p-k;r!==0&&T>0&&(this.drawHLineUnclipped(h,k,w,p),this.drawHLineUnclipped(h,k,f,p));const P=2*v;P<=_&&(w+=1,f-=1,_+=l,v+=_),(P>=g||P>_)&&(b+=1,p-=1,g+=u,v+=g)}while(b<=p);for(;w-fi){let w=t;t=s,s=w,w=e,e=i,i=w}const a=Math.abs(s-t),h=tl?a:-l)/2,u;for(;this.drawPointUnclipped(c,t,e),!(t===s&&e===i);)u=d,u>-a&&(d-=l,t+=h),u=32&&c<=255&&this.blit(ts,i,s,8,8,0,c-32<<3,8),i+=8)}}blit(t,e,s,i,n,r,c,a,h=!1,l=!1,d=!1,u=!1){const w=this.drawColors[0];let b,p,f,m;u?(l=!l,b=Math.max(0,s)-s,p=Math.max(0,e)-e,f=Math.min(i,x-s),m=Math.min(n,E-e)):(b=Math.max(0,e)-e,p=Math.max(0,s)-s,f=Math.min(i,E-e),m=Math.min(n,x-s));for(let y=p;y>>2],Rt=6-(($&3)<<1);P=Lt>>>Rt&3}else{const Lt=t[$>>>3],Rt=7-($&7);P=Lt>>>Rt&1}const Ee=w>>>(P<<2)&15;Ee!==0&&this.drawPoint(Ee-1&3,_,v)}}}const ys=4,ws=35044,ue=34962,pe=5121,bs=5126,At=6409,gs=35632,As=35633,vs=35713,Es=35714,fe=9728,_s=10240,Ss=10241,xs=10242,ks=10243,z=3553,Cs=33984,me=33071,V=4;class Ts{constructor(t){this.gl=t,this.colorBuffer=new Uint32Array(E*x>>2),this.paletteBuffer=new Float32Array(3*V),this.lastPalette=Array(V),this.paletteLocation=null;const e=new Uint32Array(256);for(let i=0;i<256;++i){const n=i>>6&3,r=i>>4&3,c=i>>2&3,a=i&3;e[i]=n<<30|r<<22|c<<14|a<<6}this.table=e;const s=t.canvas;s.addEventListener("webglcontextlost",i=>{i.preventDefault()}),s.addEventListener("webglcontextrestored",()=>{this.initGL()}),this.initGL()}initGL(){const t=this.gl;this.lastPalette=Array(V);function e(d,u){const w=t.createShader(d);if(t.shaderSource(w,u),t.compileShader(w),!t.getShaderParameter(w,vs))throw new Error(t.getShaderInfoLog(w)+"");return w}function s(d){const u=t.createTexture();t.activeTexture(d),t.bindTexture(z,u),t.texParameteri(z,xs,me),t.texParameteri(z,ks,me),t.texParameteri(z,_s,fe),t.texParameteri(z,Ss,fe)}const i=e(As,` + attribute vec2 pos; + varying vec2 framebufferCoord; + + void main () { + framebufferCoord = pos*vec2(0.5, -0.5) + 0.5; + gl_Position = vec4(pos, 0, 1); + } + `),n=Array.from({length:V-1},(d,u)=>`p = mix(p, palette[${u+1}], step(${((u+1)/V).toFixed(2)}, index));`).join(` +`),r=e(gs,` + precision mediump float; + uniform vec3 palette[${V}]; + uniform sampler2D framebuffer; + varying vec2 framebufferCoord; + + vec3 lookup(float index) { + vec3 p = palette[0]; + ${n} + return p; + } + + void main () { + gl_FragColor = vec4(lookup(texture2D(framebuffer, framebufferCoord).r), 1.); + } + `),c=t.createProgram();if(t.attachShader(c,i),t.attachShader(c,r),t.linkProgram(c),!t.getProgramParameter(c,Es))throw new Error(t.getProgramInfoLog(c)+"");t.useProgram(c),this.paletteLocation=t.getUniformLocation(c,"palette"),t.uniform1i(t.getUniformLocation(c,"framebuffer"),0),t.detachShader(c,i),t.deleteShader(i),t.detachShader(c,r),t.deleteShader(r),s(Cs),t.texImage2D(z,0,At,E,x,0,At,pe,null);const a=t.getAttribLocation(c,"pos"),h=t.createBuffer(),l=new Float32Array([-1,-1,-1,1,1,1,1,1,1,-1,-1,-1]);t.bindBuffer(ue,h),t.bufferData(ue,l,ws),t.enableVertexAttribArray(a),t.vertexAttribPointer(a,2,bs,!1,0,0)}composite(t,e){const s=this.gl,i=e.bytes,n=this.colorBuffer,r=this.table,c=this.lastPalette,a=this.paletteBuffer;let h=!1;for(let l=0,d=0;l>16&255)/255,a[d++]=(u>>8&255)/255,a[d++]=(u&255)/255,c[l]=u}h&&s.uniform3fv(this.paletteLocation,this.paletteBuffer);for(let l=0;l>2;++l)n[l]=r[i[l]];s.texImage2D(z,0,At,E,x,0,At,pe,new Uint8Array(n.buffer)),s.drawArrays(ys,0,6)}}const Ps=6,ye=7,we=3;function $s(o){const t=new DataView(o.buffer),e=t.getUint32(0),s=t.getUint32(4,!0);if(e!==6386541||s!==1)throw new Error("Invalid WASM binary");let i=8;const n=[];let r=0,c=0,a;for(;in+(r[0]===0?r[2]-r[1]:r[1].length),0),s=new Uint8Array(e);let i=0;for(const n of t)n[0]===0?(s.set(o.slice(n[1],n[2]),i),i+=n[2]-n[1]):(s.set(n[1],i),i+=n[1].length);return s}function vt(o){const t=[];do{const e=o&127;o>>=7,t.push(o?e|128:e)}while(o);return new Uint8Array(t)}function dt(o,t=0){let e=0,s=0,i=0;do e=o[t++],s|=(e&127)<>2),this.data.setUint16(lt,4611,!0),this.data.setInt16(te,32767,!0),this.data.setInt16(ee,32767,!0)}async load(t,e=!0){if(this.wasmBuffer=t,this.wasmBufferByteLen=t.byteLength,this.wasm=null,t.byteLength>1048576&&e)throw new Error("Cart too big!");const i={memory:this.memory,rect:this.framebuffer.drawRect.bind(this.framebuffer),oval:this.framebuffer.drawOval.bind(this.framebuffer),line:this.framebuffer.drawLine.bind(this.framebuffer),hline:this.framebuffer.drawHLine.bind(this.framebuffer),vline:this.framebuffer.drawVLine.bind(this.framebuffer),text:this.text.bind(this),textUtf8:this.textUtf8.bind(this),textUtf16:this.textUtf16.bind(this),blit:this.blit.bind(this),blitSub:this.blitSub.bind(this),tone:this.apu.tone.bind(this.apu),diskr:this.diskr.bind(this),diskw:this.diskw.bind(this),trace:this.trace.bind(this),traceUtf8:this.traceUtf8.bind(this),traceUtf16:this.traceUtf16.bind(this),tracef:this.tracef.bind(this)};await this.bluescreenOnError(async()=>{const n=$s(t),r=await WebAssembly.instantiate(n,{env:i});this.wasm=r.instance,typeof this.wasm.exports._start=="function"&&this.wasm.exports._start(),typeof this.wasm.exports._initialize=="function"&&this.wasm.exports._initialize()})}async bluescreenOnError(t){try{await t()}catch(e){if(e instanceof Error){const s=Us(e);this.blueScreen(s),this.printToServer(e.stack??"")}throw e}}text(t,e,s){const i=new Uint8Array(this.memory.buffer,t);this.framebuffer.drawText(i,e,s)}textUtf8(t,e,s,i){const n=new Uint8Array(this.memory.buffer,t,e);this.framebuffer.drawText(n,s,i)}textUtf16(t,e,s,i){const n=new Uint16Array(this.memory.buffer,t,e>>1);this.framebuffer.drawText(n,s,i)}blit(t,e,s,i,n,r){this.blitSub(t,e,s,i,n,0,0,i,r)}blitSub(t,e,s,i,n,r,c,a,h){const l=new Uint8Array(this.memory.buffer,t),d=h&1,u=h&2,w=h&4,b=h&8;this.framebuffer.blit(l,e,s,i,n,r,c,a,d,u,w,b)}diskr(t,e){const s=Math.min(e,this.diskSize),i=new Uint8Array(this.diskBuffer,0,s);return new Uint8Array(this.memory.buffer,t).set(i),s}diskw(t,e){const s=Math.min(e,X),i=new Uint8Array(this.memory.buffer,t,s),n=new Uint8Array(this.diskBuffer),r=oe(i);try{localStorage.setItem(this.diskName,r)}catch(c){console.error("Error writing disk",c)}return n.set(i),this.diskSize=s,s}getCString(t){let e="";for(;;){const s=this.data.getUint8(t++);if(s==0)break;e+=String.fromCharCode(s)}return e}print(t){console.log(t),this.printToServer(t)}printToServer(t){}trace(t){this.print(this.getCString(t))}traceUtf8(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder().decode(s);this.print(i)}traceUtf16(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder("utf-16").decode(s);this.print(i)}tracef(t,e){let s="",i;for(;i=this.data.getUint8(t++);)if(i==37)switch(i=this.data.getUint8(t++)){case 37:s+="%";break;case 99:s+=String.fromCharCode(this.data.getInt32(e,!0)),e+=4;break;case 100:case 120:s+=this.data.getInt32(e,!0).toString(i==100?10:16),e+=4;break;case 115:s+=this.getCString(this.data.getUint32(e,!0)),e+=4;break;case 102:s+=this.data.getFloat64(e,!0),e+=8;break;default:s+="%"+String.fromCharCode(i);break}else s+=String.fromCharCode(i);this.print(s)}start(){let t=this.wasm.exports.start;typeof t=="function"&&this.bluescreenOnError(t)}update(){if(this.pauseState!=0)return;this.getSystemFlag(Ze)||this.framebuffer.clear();let t=this.wasm.exports.update;typeof t=="function"&&this.bluescreenOnError(t),this.apu.tick()}blueScreen(t){this.pauseState|=se;const e=[1118702,8831084,11184810,16777215],s=u=>[...u].map(w=>w.charCodeAt(0)),i=` ${Ve} `,n=i,r=8*i.length,c=(160-8*i.length)/2,a=20,h=9,l=60;new Uint32Array(this.memory.buffer).set(e,$t>>2),this.data.setUint16(lt,4611,!0),this.framebuffer.clear(),this.framebuffer.drawHLine(c,a-1,r),this.data.setUint16(lt,4401,!0),this.framebuffer.drawText(s(n),c,a),this.data.setUint16(lt,4611,!0),this.framebuffer.drawText(s(t),h,l),this.composite()}composite(){const t=new Uint32Array(this.memory.buffer,$t,4);this.compositor.composite(t,this.framebuffer)}}function Us(o){if(o instanceof WebAssembly.RuntimeError){let t;return o.message.match(/unreachable/)?t=`The cartridge has +reached a code +segment marked as +unreachable.`:o.message.match(/out of bounds/)&&(t=`The cartridge has +attempted a memory +access that is +out of bounds.`),t+` + + + + +Hit R to reboot.`}else{if(o instanceof WebAssembly.LinkError)return`The cartridge has +tried to import +a missing function. + + + +See console for +more details.`;if(o instanceof WebAssembly.CompileError)return`The cartridge is +corrupted. + + + +See console for +more details.`;if(o instanceof Os)return o.wasm4Message}return`Unknown error. + + + +See console for +more details.`}class Os extends Error{constructor(t){super(t.replace(` +`," ")),this.name="Wasm4Error",this.wasm4Message=t}}var Ms=Object.defineProperty,Ls=Object.getOwnPropertyDescriptor,ut=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ls(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Ms(t,e,i),i};class ge{constructor(){this.gamepad=[0,0,0,0],this.mouseX=0,this.mouseY=0,this.mouseButtons=0}}A.App=class extends M{constructor(){var t;super(),this.hideGamepadOverlay=!1,this.showMenu=!1,this.inputState=new ge,this.gamepadUnavailableWarned=new Set,this.onPointerUp=e=>{e.pointerType=="touch"&&ne(),this.runtime.unlockAudio()},this.diskPrefix=((t=document.getElementById("wasm4-disk-prefix"))==null?void 0:t.textContent)??It("disk-prefix"),this.runtime=new Is(`${this.diskPrefix}-disk`),this.init()}async init(){async function t(){const p=document.getElementById("wasm4-cart-json");if(p){const{WASM4_CART:f,WASM4_CART_SIZE:m}=JSON.parse(p.textContent??""),y=new Uint8Array(m);return ae(f,y),y}else{const f=It("url")??"cart.wasm",m=await fetch(f);if(m.ok)return new Uint8Array(await m.arrayBuffer());throw new Error(`Could not load cart at url: ${f}`)}}const e=this.runtime;await e.init();const s=e.canvas,i=It("netplay");i?(this.netplay=this.createNetplay(),this.netplay.join(i)):await e.load(await t());let n={toggleDevtools(){},updateCompleted(...p){}};this.netplay||e.start();function r(){e.composite(),s.toBlob(p=>{const f=URL.createObjectURL(p),m=document.createElement("a");m.href=f,m.download="wasm4-screenshot.png",m.click(),URL.revokeObjectURL(f)})}let c=null;function a(){if(c!=null)return;const p="video/webm",f=s.captureStream();c=new MediaRecorder(f,{mimeType:p,videoBitsPerSecond:25e6});const m=[];c.ondataavailable=y=>{m.push(y.data)},c.onstop=()=>{const y=new Blob(m,{type:p}),g=URL.createObjectURL(y),_=document.createElement("a");_.href=g,_.download="wasm4-animation.webm",_.click(),URL.revokeObjectURL(g)},c.start(),setTimeout(()=>{c&&(c.requestData(),c.stop(),c=null)},4e3)}const h=p=>{if(document.body.style.cursor="",p.isPrimary){const f=s.getBoundingClientRect(),m=this.inputState;m.mouseX=Math.fround(E*(p.clientX-f.left)/f.width),m.mouseY=Math.fround(x*(p.clientY-f.top)/f.height),m.mouseButtons=p.buttons&7}};window.addEventListener("pointerdown",h),window.addEventListener("pointerup",h),window.addEventListener("pointermove",h),s.addEventListener("contextmenu",p=>{p.preventDefault()});const l={2:this.saveGameState.bind(this),4:this.loadGameState.bind(this),r:this.resetCart.bind(this),R:this.resetCart.bind(this),F8:n.toggleDevtools,F9:r,F10:a,F11:ne,Enter:this.onMenuButtonPressed.bind(this)},d=p=>{if(p.ctrlKey||p.altKey||p.srcElement instanceof HTMLElement&&p.srcElement.tagName=="INPUT")return;const f=p.type=="keydown";if(e.unlockAudio(),document.body.style.cursor="none",f){const g=l[p.key];if(g){g(),p.preventDefault();return}}let m=0,y=0;switch(p.code){case"KeyX":case"KeyV":case"Space":case"Period":y=L;break;case"KeyZ":case"KeyC":case"Comma":y=F;break;case"ArrowUp":y=H;break;case"ArrowDown":y=G;break;case"ArrowLeft":y=J;break;case"ArrowRight":y=Z;break;case"KeyA":case"KeyQ":m=1,y=L;break;case"ShiftLeft":case"Tab":m=1,y=F;break;case"KeyE":m=1,y=H;break;case"KeyD":m=1,y=G;break;case"KeyS":m=1,y=J;break;case"KeyF":m=1,y=Z;break;case"NumpadMultiply":case"NumpadDecimal":m=2,y=L;break;case"NumpadSubtract":case"NumpadEnter":m=2,y=F;break;case"Numpad8":m=2,y=H;break;case"Numpad5":m=2,y=G;break;case"Numpad4":m=2,y=J;break;case"Numpad6":m=2,y=Z;break}if(y!=0){p.preventDefault();const g=this.inputState.gamepad;f?g[m]|=y:g[m]&=~y}};if(window.addEventListener("keydown",d),window.addEventListener("keyup",d),top&&top!=window)try{top.addEventListener("keydown",d),top.addEventListener("keyup",d)}catch{}const u=()=>{if(navigator.getGamepads)for(const p of navigator.getGamepads()){if(p==null)continue;if(p.mapping!="standard"){this.gamepadUnavailableWarned.has(p.id)||(this.gamepadUnavailableWarned.add(p.id),this.notifications.show("Unsupported gamepad: "+p.id));continue}const f=p.buttons,m=p.axes;let y=0;(f[12].pressed||m[1]<-.5)&&(y|=H),(f[13].pressed||m[1]>.5)&&(y|=G),(f[14].pressed||m[0]<-.5)&&(y|=J),(f[15].pressed||m[0]>.5)&&(y|=Z),(f[0].pressed||f[3].pressed||f[5].pressed||f[7].pressed)&&(y|=L),(f[1].pressed||f[2].pressed||f[4].pressed||f[6].pressed)&&(y|=F),f[9].pressed&&(this.showMenu=!0),this.inputState.gamepad[p.index%4]=y}};let w=performance.now();const b=p=>{requestAnimationFrame(b),u();let f=this.inputState;if(this.menuOverlay!=null)if(this.menuOverlay.applyInput(),this.netplay)f=new ge;else return;let m=!1;for(p-w>=200&&(w=p);p>=w;)if(w+=1e3/60,this.netplay)this.netplay.update(f.gamepad[0])&&(m=!0);else{for(let y=0;y<4;++y)e.setGamepad(y,f.gamepad[y]);e.setMouse(f.mouseX,f.mouseY,f.mouseButtons),e.update(),m=!0}m&&(this.hideGamepadOverlay=!!e.getSystemFlag(Qe),e.composite())};requestAnimationFrame(b)}onMenuButtonPressed(){this.showMenu?this.inputState.gamepad[0]|=L:this.showMenu=!0}closeMenu(){if(this.showMenu){this.showMenu=!1;for(let t=0;t<4;++t)this.inputState.gamepad[t]=0}}saveGameState(){let t=this.savedGameState;t==null&&(t=this.savedGameState=new ht),t.read(this.runtime),this.notifications.show("State saved")}loadGameState(){if(this.netplay){this.notifications.show("State loading disabled during netplay");return}const t=this.savedGameState;t!=null?(t.write(this.runtime),this.notifications.show("State loaded")):this.notifications.show("Need to save a state first")}exportGameDisk(){if(this.runtime.diskSize<=0){this.notifications.show("Disk is empty");return}const t=new Uint8Array(this.runtime.diskBuffer).slice(0,this.runtime.diskSize),e=new Blob([t],{type:"application/octet-stream"}),s=document.createElement("a");s.style.display="none",s.href=URL.createObjectURL(e),s.download=`${this.diskPrefix}.disk`,document.body.appendChild(s),s.click(),document.body.removeChild(s)}importGameDisk(){if(this.netplay){this.notifications.show("Disk importing disabled during netplay");return}const t=this,e=document.createElement("input");e.style.display="none",e.type="file",e.accept=".disk",e.multiple=!1,e.addEventListener("change",()=>{const s=e.files;let i=new FileReader;i.addEventListener("load",()=>{let n=new Uint8Array(i.result).slice(0,X),r=new Uint8Array(X);r.set(n),t.runtime.diskBuffer=r.buffer,this.runtime.diskSize=n.length;const c=oe(n);try{localStorage.setItem(this.runtime.diskName,c),t.notifications.show("Disk imported")}catch(a){t.notifications.show("Error importing disk"),console.error("Error importing disk",a)}t.closeMenu()}),i.readAsArrayBuffer(s[0])}),document.body.appendChild(e),e.click(),document.body.removeChild(e)}clearGameDisk(){if(this.netplay){this.notifications.show("Disk clearing disabled during netplay");return}this.runtime.diskBuffer=new ArrayBuffer(X),this.runtime.diskSize=0;try{localStorage.removeItem(this.runtime.diskName)}catch(t){this.notifications.show("Error clearing disk"),console.error("Error clearing disk",t)}this.notifications.show("Disk cleared")}async copyNetplayLink(){this.netplay||(this.netplay=this.createNetplay(),this.netplay.host()),es(await this.netplay.getInviteLink()),this.notifications.show("Netplay link copied to clipboard")}async resetCart(t,e=!1){if(this.netplay){this.notifications.show("Reset disabled during netplay");return}t||(t=this.runtime.wasmBuffer);let s;e&&(s=new ht,s.read(this.runtime)),this.runtime.reset(!0),this.runtime.pauseState|=ie,await this.runtime.load(t),this.runtime.pauseState&=~ie,s?s.write(this.runtime):this.runtime.start()}createNetplay(){const t=new ps(this.runtime);return t.onstart=e=>this.notifications.show(`Joined as player ${e+1}`),t.onjoin=e=>this.notifications.show(`Player ${e+1} joined`),t.onleave=e=>this.notifications.show(`Player ${e+1} left`),t}getNetplaySummary(){return this.netplay?this.netplay.getSummary():[]}connectedCallback(){super.connectedCallback(),window.addEventListener("pointerup",this.onPointerUp)}disconnectedCallback(){window.removeEventListener("pointerup",this.onPointerUp),super.disconnectedCallback()}render(){return C` +
+ ${this.showMenu?C``:""} + + ${this.runtime.canvas} +
+ ${this.hideGamepadOverlay?"":C``} + `}},A.App.styles=ft` + :host { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + + touch-action: none; + user-select: none; + -webkit-user-select: none; + -webkit-tap-highlight-color: transparent; + + background: #202020; + } + + .content { + width: 100vmin; + height: 100vmin; + overflow: hidden; + } + + /** Nudge the game upwards a bit in portrait to make space for the virtual gamepad. */ + @media (pointer: coarse) and (max-aspect-ratio: 2/3) { + .content { + position: absolute; + top: calc((100% - 220px - 100vmin)/2) + } + } + + .content canvas { + width: 100%; + height: 100%; + image-rendering: pixelated; + image-rendering: crisp-edges; + } + `,ut([at()],A.App.prototype,"hideGamepadOverlay",2),ut([at()],A.App.prototype,"showMenu",2),ut([ct("wasm4-menu-overlay")],A.App.prototype,"menuOverlay",2),ut([ct("wasm4-notifications")],A.App.prototype,"notifications",2),A.App=ut([bt("wasm4-app")],A.App);/** + * @license + * Copyright 2021 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function*Ut(o,t){if(o!==void 0){let e=0;for(const s of o)yield t(s,e++)}}var Rs=Object.defineProperty,Ds=Object.getOwnPropertyDescriptor,Ot=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ds(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Rs(t,e,i),i};const j={DEFAULT:0,DISK:1},Ns=[{CONTINUE:0,SAVE_STATE:1,LOAD_STATE:2,DISK_OPTIONS:3,COPY_NETPLAY_LINK:4,RESET_CART:5},{BACK:0,EXPORT_DISK:1,IMPORT_DISK:2,CLEAR_DISK:3}],Mt=[["CONTINUE","SAVE STATE","LOAD STATE","DISK OPTIONS","COPY NETPLAY URL","RESET CART"],["BACK","EXPORT DISK","IMPORT DISK","CLEAR DISK"]];A.MenuOverlay=class extends M{constructor(){super(),this.lastGamepad=0,this.selectedIdx=0,this.netplaySummary=[],this.optionContext=0,this.optionContextHistory=[]}get optionIndex(){return Ns[this.optionContext]}get options(){return Mt[this.optionContext]}previousContext(){if(this.optionContextHistory.length>0){const t=this.optionContextHistory.pop();this.resetInput(),this.optionContext=t.context,this.selectedIdx=t.index}}switchContext(t,e=0){this.optionContextHistory.push({context:this.optionContext,index:this.selectedIdx}),this.resetInput(),this.optionContext=t,this.selectedIdx=e}resetInput(){this.app.inputState.gamepad[0]=0}applyInput(){let t=0;for(const s of this.app.inputState.gamepad)t|=s;const e=t&(t^this.lastGamepad);if(this.lastGamepad=t,e&(L|F)){if(this.optionContext===j.DEFAULT)switch(this.selectedIdx){case this.optionIndex.CONTINUE:this.app.closeMenu();break;case this.optionIndex.SAVE_STATE:this.app.saveGameState(),this.app.closeMenu();break;case this.optionIndex.LOAD_STATE:this.app.loadGameState(),this.app.closeMenu();break;case this.optionIndex.DISK_OPTIONS:this.switchContext(j.DISK);break;case this.optionIndex.COPY_NETPLAY_LINK:this.app.copyNetplayLink(),this.app.closeMenu();break;case this.optionIndex.RESET_CART:this.app.resetCart(),this.app.closeMenu();break}else if(this.optionContext===j.DISK)switch(this.selectedIdx){case this.optionIndex.BACK:this.previousContext();break;case this.optionIndex.EXPORT_DISK:this.app.exportGameDisk(),this.app.closeMenu();break;case this.optionIndex.IMPORT_DISK:this.resetInput(),this.app.importGameDisk();break;case this.optionIndex.CLEAR_DISK:this.app.clearGameDisk(),this.app.closeMenu();break}}e&G&&this.selectedIdx++,e&H&&this.selectedIdx--,this.selectedIdx=(this.selectedIdx+this.options.length)%this.options.length}connectedCallback(){super.connectedCallback();const t=()=>{this.netplaySummary=this.app.getNetplaySummary()};t(),this.netplayPollInterval=window.setInterval(t,1e3)}disconnectedCallback(){window.clearInterval(this.netplayPollInterval),super.disconnectedCallback()}render(){return C` +
+ WASM-4 v${"2.7.0"} +
+ +
+ ${Ut(this.netplaySummary,t=>{const e=t.ping<100?"good":t.ping<200?"ok":"bad",s=t.ping<0?C`YOU`:C`${Math.ceil(t.ping)}ms`;return C`
PLAYER ${t.playerIdx>=0?t.playerIdx+1:"?"} ${s}
`})} +
+ `}},A.MenuOverlay.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + + color: #a0a0a0; + font: 16px wasm4-font; + + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + + background: rgba(0, 0, 0, 0.85); + } + + .version { + color: #fff; + padding-bottom: 1em; + } + + .menu { + border: 2px solid #f0f0f0; + padding: 0 1em 0 1em; + line-height: 2em; + } + + .netplay-summary { + margin-top: 2em; + line-height: 1.5em; + } + + .ping-you { + color: #f0f0f0; + } + + .ping-good { + color: green; + } + + .ping-ok { + color: yellow; + } + + .ping-bad { + color: red; + } + + ul { + list-style: none; + padding-left: 0; + padding-right: 1em; + } + + li::before { + content: "\\00a0\\00a0"; + } + li.selected::before { + content: "> "; + } + li.selected { + color: #fff; + } + `,Ot([at()],A.MenuOverlay.prototype,"selectedIdx",2),Ot([at()],A.MenuOverlay.prototype,"netplaySummary",2),A.MenuOverlay=Ot([bt("wasm4-menu-overlay")],A.MenuOverlay);var Bs=Object.defineProperty,Fs=Object.getOwnPropertyDescriptor,Et=(o,t,e,s)=>{for(var i=s>1?void 0:s?Fs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Bs(t,e,i),i};function Q(o,t,e){o&&(e?o.classList.add(t):o.classList.remove(t))}A.VirtualGamepad=class extends M{constructor(){super(...arguments),this.touchEvents=new Map,this.onPointerEvent=t=>{if(t.pointerType!="touch")return;switch(t.preventDefault(),t.type){case"pointerdown":case"pointermove":this.touchEvents.set(t.pointerId,t);break;default:this.touchEvents.delete(t.pointerId);break}let e=0;if(this.touchEvents.size){const c=this.dpad.getBoundingClientRect(),a=c.x+c.width/2,h=c.y+c.height/2,l=this.action1.getBoundingClientRect(),d=l.x+l.width/2,u=l.y+l.height/2,w=this.action2.getBoundingClientRect(),b=w.x+w.width/2,p=w.y+w.height/2;let f,m,y,g,_;for(const v of this.touchEvents.values())f=v.clientX-a,m=v.clientY-h,y=Math.sqrt(f*f+m*m),y<100&&y>10&&(g=f/y,_=m/y,-g>.6?e|=J:g>.6&&(e|=Z),-_>.6?e|=H:_>.6&&(e|=G)),f=v.clientX-d,m=v.clientY-u,f*f+m*m<2500&&(e|=L),f=v.clientX-b,m=v.clientY-p,f*f+m*m<2500&&(e|=F)}Q(this.action1,"pressed",e&L),Q(this.action2,"pressed",e&F),Q(this.dpad,"pressed-left",e&J),Q(this.dpad,"pressed-right",e&Z),Q(this.dpad,"pressed-up",e&H),Q(this.dpad,"pressed-down",e&G),this.app.inputState.gamepad[0]=e}}connectedCallback(){super.connectedCallback(),window.addEventListener("pointercancel",this.onPointerEvent),window.addEventListener("pointerdown",this.onPointerEvent),window.addEventListener("pointermove",this.onPointerEvent),window.addEventListener("pointerup",this.onPointerEvent)}disconnectedCallback(){window.removeEventListener("pointercancel",this.onPointerEvent),window.removeEventListener("pointerdown",this.onPointerEvent),window.removeEventListener("pointermove",this.onPointerEvent),window.removeEventListener("pointerup",this.onPointerEvent),super.disconnectedCallback()}onMenuButtonPressed(t){this.app.onMenuButtonPressed(),t.stopImmediatePropagation()}render(){return C` + +
+
X
+
Z
+ `}},A.VirtualGamepad.styles=ft` + :host { + display: none; + } + @media (hover: none) or (pointer: coarse) { + :host { + display: inherit; + } + } + + .dpad { + pointer-events: none; + position: absolute; + width: 39px; + height: 120px; + left: 69px; + bottom: 30px; + background: #444; + border-radius: 9px; + } + .dpad:before { + position: absolute; + width: 120px; + height: 39px; + top: 39px; + left: -39px; + background: #444; + border-radius: 9px; + content: ""; + } + .dpad:after { + position: absolute; + height: 39px; + width: 39px; + top: 39px; + border-radius: 100%; + background: #333; + content: ""; + } + .dpad.pressed-left:before { + border-left: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-right:before { + border-right: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-up { + border-top: 4px solid #A93671; + } + .dpad.pressed-down { + border-bottom: 4px solid #A93671; + height: 116px; + } + + .action1 { + right: 80px; + bottom: 30px; + } + .action2 { + right: 30px; + bottom: 90px; + } + .action1, .action2 { + pointer-events: none; + position: absolute; + width: 60px; + height: 60px; + border: 4px solid #A93671; + border-radius: 50px; + + /** TODO(2022-03-14): Button text should be centered but is off slightly. */ + color: #A93671; + font: 24px wasm4-font; + text-align: center; + line-height: 60px; + } + .action1.pressed, .action2.pressed { + background: #A93671; + } + + .menu { + position: absolute; + background: #444; + width: 60px; + height: 20px; + bottom: 200px; + right: 35px; + border-radius: 10px; + } + `,Et([ct(".dpad")],A.VirtualGamepad.prototype,"dpad",2),Et([ct(".action1")],A.VirtualGamepad.prototype,"action1",2),Et([ct(".action2")],A.VirtualGamepad.prototype,"action2",2),A.VirtualGamepad=Et([bt("wasm4-virtual-gamepad")],A.VirtualGamepad);var Hs=Object.defineProperty,Gs=Object.getOwnPropertyDescriptor,Ae=(o,t,e,s)=>{for(var i=s>1?void 0:s?Gs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Hs(t,e,i),i};return A.Notifications=class extends M{constructor(){super(...arguments),this.notifications=[]}show(t){this.notifications=this.notifications.concat([t]),setTimeout(()=>{this.notifications=this.notifications.slice(1)},5e3)}render(){return this.notifications.map(t=>C`
${t}
`)}},A.Notifications.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + pointer-events: none; + + color: #fff; + font: 24px wasm4-font; + + display: flex; + flex-direction: column; + } + + .notification { + background: rgba(0, 0, 0, 0.85); + padding: 0.5em; + /* animation: appear 0.5s ease-out, disappear 0.5s 4.5s ease-in; */ + /* animation-fill-mode: forwards; */ + animation: appear 0.5s ease-out; + } + + @keyframes appear { + from { + padding-left: 2em; + opacity: 0; + } + to { + opacity: 1; + padding-left: 0.5em; + } + } + + /*@keyframes disappear { + from { + opacity: 1; + } + to { + opacity: 0; + } + }*/ + `,Ae([at()],A.Notifications.prototype,"notifications",2),A.Notifications=Ae([bt("wasm4-notifications")],A.Notifications),Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),A}({}); diff --git a/w4-snake/cart.wasm b/w4-snake/cart.wasm new file mode 100644 index 00000000..86d6e75a Binary files /dev/null and b/w4-snake/cart.wasm differ diff --git a/w4-snake/favicon.ico b/w4-snake/favicon.ico new file mode 100644 index 00000000..1e3dcdc7 Binary files /dev/null and b/w4-snake/favicon.ico differ diff --git a/w4-snake/index.html b/w4-snake/index.html new file mode 100644 index 00000000..889693a0 --- /dev/null +++ b/w4-snake/index.html @@ -0,0 +1,14 @@ + + + + + + + Wa-lang/WASM-4 Game + + + + + + + diff --git a/w4-snake/w4snake.wat b/w4-snake/w4snake.wat new file mode 100644 index 00000000..e30a3092 --- /dev/null +++ b/w4-snake/w4snake.wat @@ -0,0 +1,10133 @@ +(module $__walang__ + (import "env" "traceUtf8" (func $runtime.traceUtf8 (param i32) (param i32))) + (import "env" "blit" (func $syscall$wasm4.__import__blit (param i32) (param i32) (param i32) (param i32) (param i32) (param i32))) + (import "env" "rect" (func $syscall$wasm4.__import__rect (param i32) (param i32) (param i32) (param i32))) + (import "env" "tone" (func $syscall$wasm4.__import__tone (param i32) (param i32) (param i32) (param i32))) + (import "env" "memory" (memory 1)) + (table 26 funcref) + (type $$onFree (func (param i32))) + (type $$wa.runtime.comp (func (param i32) (param i32) (result i32))) + (type $$$fnSig1 (func (param i32) (param i32) (result i64))) + (type $$$fnSig2 (func (param i32) (param i32) (param i64))) + (type $$$fnSig3 (func (param i32) (param i32) (result i64))) + (type $$$fnSig4 (func (param i32) (param i32) (result i32 i32 i32))) + (type $$$fnSig5 (func (param i32) (param i32))) + (type $$$fnSig6 (func (param i32) (result i32))) + (global $__stack_ptr (mut i32) (i32.const 14656)) + (global $__heap_max i32 (i32.const 65536)) + (global $$wa.runtime.closure_data (mut i32) (i32.const 0)) + (global $$wa.runtime._concretTypeCount (mut i32) (i32.const 3)) + (global $$wa.runtime._interfaceCount (mut i32) (i32.const 4)) + (global $$wa.runtime._itabsPtr (mut i32) (i32.const 29688)) + (global $runtime.init$guard (mut i32) (i32.const 0)) + (global $$knr_basep (mut i32) (i32.const 0)) + (global $$knr_freep (mut i32) (i32.const 0)) + (global $math._cos.0 i32 (i32.const 0)) + (global $math._cos.1 i32 (i32.const 14792)) + (global $math._sin.0 i32 (i32.const 0)) + (global $math._sin.1 i32 (i32.const 14840)) + (global $math.init$guard (mut i32) (i32.const 0)) + (global $math$rand.fe.0 i32 (i32.const 0)) + (global $math$rand.fe.1 i32 (i32.const 14888)) + (global $math$rand.fn.0 i32 (i32.const 0)) + (global $math$rand.fn.1 i32 (i32.const 15912)) + (global $math$rand.globalRand.0 i32 (i32.const 0)) + (global $math$rand.globalRand.1 i32 (i32.const 16424)) + (global $math$rand.init$guard (mut i32) (i32.const 0)) + (global $math$rand.ke.0 i32 (i32.const 0)) + (global $math$rand.ke.1 i32 (i32.const 16432)) + (global $math$rand.kn.0 i32 (i32.const 0)) + (global $math$rand.kn.1 i32 (i32.const 17456)) + (global $math$rand.rngCooked.0 i32 (i32.const 0)) + (global $math$rand.rngCooked.1 i32 (i32.const 17968)) + (global $math$rand.we.0 i32 (i32.const 0)) + (global $math$rand.we.1 i32 (i32.const 22824)) + (global $math$rand.wn.0 i32 (i32.const 0)) + (global $math$rand.wn.1 i32 (i32.const 23848)) + (global $errors.init$guard (mut i32) (i32.const 0)) + (global $syscall$wasm4.init$guard (mut i32) (i32.const 0)) + (global $w4snake.frameCount.0 i32 (i32.const 0)) + (global $w4snake.frameCount.1 i32 (i32.const 24360)) + (global $w4snake.fruit.0 i32 (i32.const 0)) + (global $w4snake.fruit.1 i32 (i32.const 24364)) + (global $w4snake.fruitSprite.0 i32 (i32.const 0)) + (global $w4snake.fruitSprite.1 i32 (i32.const 24368)) + (global $w4snake.init$guard (mut i32) (i32.const 0)) + (global $w4snake.randInt.0 i32 (i32.const 0)) + (global $w4snake.randInt.1 i32 (i32.const 24384)) + (global $w4snake.sfxEat.0 i32 (i32.const 0)) + (global $w4snake.sfxEat.1 i32 (i32.const 24396)) + (global $w4snake.snake.0 i32 (i32.const 0)) + (global $w4snake.snake.1 i32 (i32.const 24432)) + (global $runtime.zptr (mut i32) (i32.const 24744)) + (global $__heap_base i32 (i32.const 29760)) + (func $runtime.throw + unreachable + ) + (func $runtime.heapBase (result i32) + global.get $__heap_base + ) + (func $runtime.heapMax (result i32) + global.get $__heap_max + ) + (func $runtime.HeapAlloc (export "runtime.HeapAlloc") (param $nbytes i32) (result i32) + (local $ptr i32) + local.get $nbytes + i32.eqz + if + i32.const 0 + return + end + local.get $nbytes + i32.const 7 + i32.add + i32.const 8 + i32.div_u + i32.const 8 + i32.mul + local.set $nbytes + local.get $nbytes + call $runtime.malloc + local.set $ptr + loop $zero + local.get $nbytes + i32.const 8 + i32.sub + local.tee $nbytes + local.get $ptr + i32.add + i64.const 0 + i64.store align=8 + local.get $nbytes + if + br $zero + end + end + local.get $ptr + ) + (func $runtime.HeapFree (export "runtime.HeapFree") (param $ptr i32) + local.get $ptr + call $runtime.free + ) + (func $runtime.Block.Init (param $ptr i32) (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + i32.const 1 + i32.store align=1 + local.get $ptr + local.get $item_count + i32.store offset=4 align=1 + local.get $ptr + local.get $release_func + i32.store offset=8 align=1 + local.get $ptr + local.get $item_size + i32.store offset=12 align=1 + end + ) + (func $runtime.Block.HeapAlloc (export "runtime.Block.HeapAlloc") (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $item_count + local.get $item_size + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $item_count + local.get $release_func + local.get $item_size + call $runtime.Block.Init + ) + (func $runtime.DupI32 (param $a i32) (result i32 i32) + local.get $a + local.get $a + ) + (func $runtime.Block.Retain (export "runtime.Block.Retain") (param $ptr i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + local.get $ptr + i32.load align=1 + i32.const 1 + i32.add + i32.store align=1 + end + ) + (func $runtime.Block.Release (export "runtime.Block.Release") (param $ptr i32) + (local $ref_count i32) + (local $item_count i32) + (local $free_func i32) + (local $item_size i32) + (local $data_ptr i32) + local.get $ptr + i32.const 0 + i32.eq + if + return + end + local.get $ptr + i32.load align=1 + i32.const 1 + i32.sub + local.set $ref_count + local.get $ref_count + if + local.get $ptr + local.get $ref_count + i32.store align=1 + else + local.get $ptr + i32.load offset=8 align=1 + local.set $free_func + local.get $free_func + if + local.get $ptr + i32.load offset=4 align=1 + local.set $item_count + local.get $item_count + if + local.get $ptr + i32.load offset=12 align=1 + local.set $item_size + local.get $ptr + i32.const 16 + i32.add + local.set $data_ptr + loop $free_next + local.get $data_ptr + local.get $free_func + call_indirect 0 (type $$onFree) + local.get $item_count + i32.const 1 + i32.sub + local.set $item_count + local.get $item_count + if + local.get $data_ptr + local.get $item_size + i32.add + local.set $data_ptr + br $free_next + end + end + end + end + local.get $ptr + call $runtime.HeapFree + end + ) + (func $$wa.runtime.queryIface_CommaOk (param $d.b i32) (param $d.d i32) (param $itab i32) (param $eq i32) (param $ihash i32) (result i32 i32 i32 i32 i32) + (local $t i32) + local.get $itab + if(result i32 i32 i32 i32 i32) + local.get $itab + i32.load + local.get $ihash + i32.const 1 + call $runtime.getItab + local.set $t + local.get $t + if(result i32 i32 i32 i32 i32) + local.get $d.b + call $runtime.Block.Retain + local.get $d.d + local.get $t + local.get $eq + i32.const 1 + else + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + end + else + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + end + ) + (func $$wa.runtime.string_to_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) + local.get $d + ) + (func $$wa.runtime.string_to_iter (param $b i32) (param $d i32) (param $l i32) (result i32 i32 i32) + local.get $d + local.get $l + i32.const 0 + ) + (func $$syscall/wasm4.__linkname__slice_data_ptr (param $b i32) (param $d i32) (param $l i32) (param $c i32) (result i32) + local.get $d + ) + (func $$syscall/wasm4.__linkname__make_slice (param $blk i32) (param $ptr i32) (param $len i32) (param $cap i32) (result i32 i32 i32 i32) + local.get $blk + local.get $ptr + local.get $len + local.get $cap + return + ) + (func $$string.appendstr (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32 i32 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $item i32) + (local $src i32) + (local $dest i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_len + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + ) + (func $$string.$$compAddr (param $p0 i32) (param $p1 i32) (result i32) + (local $v0.0 i32) + (local $v0.1 i32) + (local $v0.2 i32) + (local $v1.0 i32) + (local $v1.1 i32) + (local $v1.2 i32) + local.get $p0 + if + local.get $p0 + i32.load + call $runtime.Block.Retain + local.get $p0 + i32.load offset=4 + local.get $p0 + i32.load offset=8 + local.set $v0.2 + local.set $v0.1 + local.get $v0.0 + call $runtime.Block.Release + local.set $v0.0 + end + local.get $p1 + if + local.get $p1 + i32.load + call $runtime.Block.Retain + local.get $p1 + i32.load offset=4 + local.get $p1 + i32.load offset=8 + local.set $v1.2 + local.set $v1.1 + local.get $v1.0 + call $runtime.Block.Release + local.set $v1.0 + end + local.get $v0.0 + local.get $v0.1 + local.get $v0.2 + local.get $v1.0 + local.get $v1.1 + local.get $v1.2 + call $$wa.runtime.string_Comp + local.get $v0.0 + call $runtime.Block.Release + local.get $v1.0 + call $runtime.Block.Release + ) + (func $$u8.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$string.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $runtime.free (param $ap i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 + end + i32.const 0 + local.set $$current_block + local.get $ap + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ap + i32.const 8 + i32.sub + local.set $$t1 + i32.const 0 + local.set $$t2.0 + i32.const 0 + local.set $$t2.1 + local.get $$t1 + call $runtime.knr_getBlockHeader + local.set $$t3.1 + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.set $$t2.1 + local.set $$t2.0 + local.get $$t2.1 + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.le_u + local.set $$t5 + local.get $$t5 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $ap + i32.const 8 + i32.rem_u + local.set $$t6 + local.get $$t6 + i32.const 0 + i32.eq + i32.eqz + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + global.get $$knr_freep + local.set $$t8 + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + local.get $$t8 + call $runtime.knr_getBlockHeader + local.set $$t10.1 + local.set $$t10.0 + local.get $$t10.0 + local.get $$t10.1 + local.set $$t9.1 + local.set $$t9.0 + br $$Block_7 + end + i32.const 6 + local.set $$current_block + local.get $$t9.0 + local.set $$t11 + local.get $$t12 + local.get $$t11 + i32.ge_u + local.set $$t13 + local.get $$t13 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $$t2.1 + local.set $$t14 + local.get $$t14 + i32.const 8 + i32.mul + local.set $$t15 + local.get $$t1 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t9.0 + local.set $$t17 + local.get $$t16 + local.get $$t17 + i32.eq + local.set $$t18 + local.get $$t18 + if + br $$Block_12 + else + br $$Block_14 + end + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t19 + end + local.set $$t12 + i32.const 8 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t9.0 + local.set $$t21 + local.get $$t1 + local.get $$t21 + i32.lt_u + local.set $$t22 + local.get $$t22 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t9.0 + local.set $$t19 + local.get $$t19 + call $runtime.knr_getBlockHeader + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t9.1 + local.set $$t9.0 + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t24 + local.get $$t24 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 12 + local.set $$current_block + local.get $$t9.0 + local.set $$t25 + local.get $$t1 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 0 + local.set $$t27.0 + i32.const 0 + local.set $$t27.1 + local.get $$t9.0 + local.set $$t28 + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t29.1 + local.set $$t29.0 + local.get $$t29.0 + local.get $$t29.1 + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.1 + local.set $$t30 + local.get $$t2.1 + local.set $$t31 + local.get $$t31 + local.get $$t30 + i32.add + local.set $$t32 + local.get $$t32 + local.set $$t2.1 + local.get $$t27.0 + local.set $$t33 + local.get $$t33 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t34.1 + local.set $$t34.0 + local.get $$t1 + local.get $$t34.0 + local.get $$t34.1 + call $runtime.knr_setBlockHeader + br $$Block_13 + end + i32.const 14 + local.set $$current_block + local.get $$t9.1 + local.set $$t35 + local.get $$t35 + i32.const 8 + i32.mul + local.set $$t36 + local.get $$t12 + local.get $$t36 + i32.add + local.set $$t37 + local.get $$t37 + local.get $$t1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_15 + else + br $$Block_17 + end + end + i32.const 15 + local.set $$current_block + local.get $$t9.0 + local.set $$t39 + local.get $$t39 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t40.1 + local.set $$t40.0 + local.get $$t1 + local.get $$t40.0 + local.get $$t40.1 + call $runtime.knr_setBlockHeader + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $$t2.1 + local.set $$t41 + local.get $$t9.1 + local.set $$t42 + local.get $$t42 + local.get $$t41 + i32.add + local.set $$t43 + local.get $$t43 + local.set $$t9.1 + local.get $$t2.0 + local.set $$t44 + local.get $$t44 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t45.1 + local.set $$t45.0 + local.get $$t12 + local.get $$t45.0 + local.get $$t45.1 + call $runtime.knr_setBlockHeader + br $$Block_16 + end + i32.const 17 + local.set $$current_block + local.get $$t12 + global.set $$knr_freep + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t1 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t46.1 + local.set $$t46.0 + local.get $$t12 + local.get $$t46.0 + local.get $$t46.1 + call $runtime.knr_setBlockHeader + i32.const 17 + local.set $$block_selector + br $$BlockDisp + end + end + end + ) + (func $runtime.getItab (param $dhash i32) (param $ihash i32) (param $commanok i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + global.get $$wa.runtime._itabsPtr + local.set $$t0 + local.get $dhash + i32.const 1 + i32.sub + local.set $$t1 + global.get $$wa.runtime._interfaceCount + local.set $$t2 + local.get $$t1 + local.get $$t2 + i32.mul + local.set $$t3 + local.get $$t3 + local.get $ihash + i32.sub + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.sub + local.set $$t5 + local.get $$t5 + i32.const 4 + i32.mul + local.set $$t6 + local.get $$t0 + local.get $$t6 + i32.add + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + call $runtime.getU32 + local.set $$t9 + local.get $$t9 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $runtime.getU32 (param $addr i32) (result i32) + local.get $addr + i32.load + ) + (func $runtime.get_u8 (param $addr i32) (result i32) + local.get $addr + i32.load8_u align=1 + ) + (func $runtime.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $runtime.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $runtime.init$guard + call $syscall$wasm4.init + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $runtime.knr_getBlockHeader (param $addr i32) (result i32 i32) + local.get $addr + i32.load + local.get $addr + i32.load offset=4 + ) + (func $runtime.knr_setBlockHeader (param $addr i32) (param $data.0 i32) (param $data.1 i32) + local.get $addr + local.get $data.0 + i32.store + local.get $addr + local.get $data.1 + i32.store offset=4 + ) + (func $runtime.malloc (param $nbytes i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 + end + i32.const 0 + local.set $$current_block + local.get $nbytes + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + global.get $$knr_basep + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + call $runtime.heapMax + local.set $$t3 + global.get $$knr_basep + local.set $$t4 + local.get $$t3 + local.get $$t4 + i32.sub + local.set $$t5 + local.get $nbytes + local.get $$t5 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + call $runtime.heapBase + local.set $$t7 + local.get $$t7 + global.set $$knr_basep + global.get $$knr_basep + local.set $$t8 + local.get $$t8 + global.set $$knr_freep + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t10 + call $runtime.heapMax + local.set $$t11 + global.get $$knr_basep + local.set $$t12 + local.get $$t11 + local.get $$t12 + i32.sub + local.set $$t13 + local.get $$t13 + i32.const 8 + i32.div_u + local.set $$t14 + local.get $$t14 + i32.const 1 + i32.sub + local.set $$t15 + local.get $$t10 + local.set $$t9.0 + local.get $$t15 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t16 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t17.1 + local.set $$t17.0 + local.get $$t16 + local.get $$t17.0 + local.get $$t17.1 + call $runtime.knr_setBlockHeader + br $$Block_4 + end + i32.const 5 + local.set $$current_block + local.get $nbytes + i32.const 8 + i32.add + local.set $$t18 + local.get $$t18 + i32.const 1 + i32.sub + local.set $$t19 + local.get $$t19 + i32.const 8 + i32.div_u + local.set $$t20 + local.get $$t20 + i32.const 1 + i32.add + local.set $$t21 + global.get $$knr_freep + local.set $$t22 + i32.const 0 + local.set $$t23.0 + i32.const 0 + local.set $$t23.1 + local.get $$t22 + call $runtime.knr_getBlockHeader + local.set $$t24.1 + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.set $$t25 + i32.const 0 + local.set $$t26.0 + i32.const 0 + local.set $$t26.1 + local.get $$t25 + call $runtime.knr_getBlockHeader + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.0 + local.get $$t27.1 + local.set $$t26.1 + local.set $$t26.0 + br $$Block_5 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t22 + else + local.get $$t28 + end + local.set $$t29 + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t25 + else + local.get $$t30 + end + local.set $$t28 + i32.const 6 + local.set $$current_block + local.get $$t26.1 + local.set $$t31 + local.get $$t31 + local.get $$t21 + i32.ge_u + local.set $$t32 + local.get $$t32 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t26.1 + local.set $$t33 + local.get $$t33 + local.get $$t21 + i32.eq + local.set $$t34 + local.get $$t34 + if + br $$Block_8 + else + br $$Block_10 + end + end + i32.const 8 + local.set $$current_block + global.get $$knr_freep + local.set $$t35 + local.get $$t28 + local.get $$t35 + i32.eq + local.set $$t36 + local.get $$t36 + if + br $$Block_11 + else + br $$Block_12 + end + end + i32.const 9 + local.set $$current_block + local.get $$t26.0 + local.set $$t37 + local.get $$t37 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t38.1 + local.set $$t38.0 + local.get $$t29 + local.get $$t38.0 + local.get $$t38.1 + call $runtime.knr_setBlockHeader + br $$Block_9 + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t28 + else + local.get $$t39 + end + local.set $$t40 + i32.const 10 + local.set $$current_block + local.get $$t29 + global.set $$knr_freep + local.get $$t40 + i32.const 8 + i32.add + local.set $$t41 + local.get $$t41 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $$t26.1 + local.set $$t42 + local.get $$t42 + local.get $$t21 + i32.sub + local.set $$t43 + local.get $$t43 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t44.1 + local.set $$t44.0 + local.get $$t28 + local.get $$t44.0 + local.get $$t44.1 + call $runtime.knr_setBlockHeader + local.get $$t26.1 + local.set $$t45 + local.get $$t45 + i32.const 8 + i32.mul + local.set $$t46 + local.get $$t28 + local.get $$t46 + i32.add + local.set $$t39 + local.get $$t39 + call $runtime.knr_getBlockHeader + local.set $$t47.1 + local.set $$t47.0 + local.get $$t47.0 + local.get $$t47.1 + local.set $$t26.1 + local.set $$t26.0 + local.get $$t21 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t48.1 + local.set $$t48.0 + local.get $$t39 + local.get $$t48.0 + local.get $$t48.1 + call $runtime.knr_setBlockHeader + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t49.1 + local.set $$t49.0 + local.get $$t49.0 + local.get $$t49.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t26.0 + local.set $$t30 + local.get $$t30 + call $runtime.knr_getBlockHeader + local.set $$t50.1 + local.set $$t50.0 + local.get $$t50.0 + local.get $$t50.1 + local.set $$t26.1 + local.set $$t26.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + ) + (func $$void.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$void.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + call_indirect 0 (type $$onFree) + ) + (func $$i`0`.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapNode.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 9 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapImp.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 11 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapIter.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 12 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$array1.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $runtime.next_rune (param $iter.0 i32) (param $iter.1 i32) (param $iter.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$ret_2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101 i32) + (local $$t102 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106 i32) + (local $$t107 i32) + (local $$t108 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110 i32) + (local $$t111 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116 i32) + (local $$t117 i32) + (local $$t118 i32) + (local $$t119 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121 i32) + (local $$t122 i32) + (local $$t123 i32) + (local $$t124 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126 i32) + (local $$t127 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $iter.0 + i32.store + local.get $$t0.1 + local.get $iter.1 + i32.store offset=4 + local.get $$t0.1 + local.get $iter.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.ge_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + i32.const 0 + local.set $$ret_0 + local.get $$t7 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + local.get $$t9 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + local.set $$t12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t14 + local.set $$t15 + local.get $$t12 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t16 + call $runtime.get_u8 + local.set $$t17 + local.get $$t17 + local.set $$t18 + local.get $$t18 + i32.const 128 + i32.and + local.set $$t19 + local.get $$t19 + i32.const 0 + i32.eq + local.set $$t20 + local.get $$t20 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.load + local.set $$t22 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t24 + i32.const 1 + i32.add + local.set $$t25 + i32.const 1 + local.set $$ret_0 + local.get $$t22 + local.set $$ret_1 + local.get $$t18 + local.set $$ret_2 + local.get $$t25 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t18 + i32.const 224 + i32.and + local.set $$t26 + local.get $$t26 + i32.const 192 + i32.eq + local.set $$t27 + local.get $$t27 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t18 + i32.const 31 + i32.and + local.set $$t28 + local.get $$t28 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t29 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t32 + local.get $$t35 + i32.add + local.set $$t36 + local.get $$t36 + i32.const 1 + i32.add + local.set $$t37 + local.get $$t37 + call $runtime.get_u8 + local.set $$t38 + local.get $$t38 + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t29 + local.get $$t40 + i32.or + local.set $$t43 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.add + local.set $$t46 + i32.const 1 + local.set $$ret_0 + local.get $$t42 + local.set $$ret_1 + local.get $$t43 + local.set $$ret_2 + local.get $$t46 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $$t18 + i32.const 240 + i32.and + local.set $$t47 + local.get $$t47 + i32.const 224 + i32.eq + local.set $$t48 + local.get $$t48 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t18 + i32.const 15 + i32.and + local.set $$t49 + local.get $$t49 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t50 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.set $$t52 + local.get $$t52 + local.set $$t53 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.1 + i32.load + local.set $$t55 + local.get $$t55 + local.set $$t56 + local.get $$t53 + local.get $$t56 + i32.add + local.set $$t57 + local.get $$t57 + i32.const 1 + i32.add + local.set $$t58 + local.get $$t58 + call $runtime.get_u8 + local.set $$t59 + local.get $$t59 + local.set $$t60 + local.get $$t60 + i32.const 63 + i32.and + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t63.1 + i32.load + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.load + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t65 + local.get $$t68 + i32.add + local.set $$t69 + local.get $$t69 + i32.const 2 + i32.add + local.set $$t70 + local.get $$t70 + call $runtime.get_u8 + local.set $$t71 + local.get $$t71 + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + local.get $$t74.1 + i32.load + local.set $$t75 + local.get $$t50 + local.get $$t62 + i32.or + local.set $$t76 + local.get $$t76 + local.get $$t73 + i32.or + local.set $$t77 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + local.get $$t78.1 + i32.load + local.set $$t79 + local.get $$t79 + i32.const 3 + i32.add + local.set $$t80 + i32.const 1 + local.set $$ret_0 + local.get $$t75 + local.set $$ret_1 + local.get $$t77 + local.set $$ret_2 + local.get $$t80 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t18 + i32.const 248 + i32.and + local.set $$t81 + local.get $$t81 + i32.const 240 + i32.eq + local.set $$t82 + local.get $$t82 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t18 + i32.const 7 + i32.and + local.set $$t83 + local.get $$t83 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t84 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.1 + i32.load + local.set $$t86 + local.get $$t86 + local.set $$t87 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.load + local.set $$t89 + local.get $$t89 + local.set $$t90 + local.get $$t87 + local.get $$t90 + i32.add + local.set $$t91 + local.get $$t91 + i32.const 1 + i32.add + local.set $$t92 + local.get $$t92 + call $runtime.get_u8 + local.set $$t93 + local.get $$t93 + local.set $$t94 + local.get $$t94 + i32.const 63 + i32.and + local.set $$t95 + local.get $$t95 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t96 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t97.1 + i32.load + local.set $$t98 + local.get $$t98 + local.set $$t99 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $$t100.1 + i32.load + local.set $$t101 + local.get $$t101 + local.set $$t102 + local.get $$t99 + local.get $$t102 + i32.add + local.set $$t103 + local.get $$t103 + i32.const 2 + i32.add + local.set $$t104 + local.get $$t104 + call $runtime.get_u8 + local.set $$t105 + local.get $$t105 + local.set $$t106 + local.get $$t106 + i32.const 63 + i32.and + local.set $$t107 + local.get $$t107 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t108 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.1 + i32.load + local.set $$t110 + local.get $$t110 + local.set $$t111 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.1 + i32.load + local.set $$t113 + local.get $$t113 + local.set $$t114 + local.get $$t111 + local.get $$t114 + i32.add + local.set $$t115 + local.get $$t115 + i32.const 3 + i32.add + local.set $$t116 + local.get $$t116 + call $runtime.get_u8 + local.set $$t117 + local.get $$t117 + local.set $$t118 + local.get $$t118 + i32.const 63 + i32.and + local.set $$t119 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + local.get $$t120.1 + i32.load + local.set $$t121 + local.get $$t84 + local.get $$t96 + i32.or + local.set $$t122 + local.get $$t122 + local.get $$t108 + i32.or + local.set $$t123 + local.get $$t123 + local.get $$t119 + i32.or + local.set $$t124 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.load + local.set $$t126 + local.get $$t126 + i32.const 4 + i32.add + local.set $$t127 + i32.const 1 + local.set $$ret_0 + local.get $$t121 + local.set $$ret_1 + local.get $$t124 + local.set $$ret_2 + local.get $$t127 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + i32.const 0 + local.set $$ret_3 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$ret_2 + local.get $$ret_3 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + ) + (func $$runtime.panic_ (param $msg_ptr i32) (param $msg_len i32) (param $pos_msg_ptr i32) (param $pos_msg_len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 24510 + i32.const 7 + call $$runtime.waPrintString + local.get $msg_ptr + local.get $msg_len + call $$runtime.waPuts + i32.const 0 + i32.const 24474 + i32.const 2 + call $$runtime.waPrintString + local.get $pos_msg_ptr + local.get $pos_msg_len + call $$runtime.waPuts + i32.const 41 + call $$runtime.waPrintRune + i32.const 10 + call $$runtime.waPrintRune + i32.const 1 + call $$runtime.procExit + br $$BlockFnBody + end + end + end + ) + (func $runtime.printString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + local.get $$t0 + i32.const 0 + i32.gt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.refToPtr_string + local.set $$t2 + local.get $$t0 + local.set $$t3 + local.get $$t2 + local.get $$t3 + call $$runtime.waPuts + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$runtime.procExit (param $code i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + call $runtime.throw + br $$BlockFnBody + end + end + end + ) + (func $runtime.refToPtr_string (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$wa.runtime.string_to_ptr + local.set $$t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $runtime.stringFromRune (param $r i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $r + local.set $$t2 + local.get $$t2 + i32.const 127 + i32.le_u + local.set $$t3 + local.get $$t3 + if + br $$Block_1 + else + br $$Block_3 + end + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const 2 + else + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + i32.const 3 + else + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 3 + else + i32.const 4 + end + end + end + end + local.set $$t4 + i32.const 1 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.get $$t4 + i32.const 0 + i32.sub + local.get $$t1.3 + i32.const 0 + i32.sub + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + call $$string.appendstr + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $r + i32.const 255 + i32.and + local.set $$t8 + local.get $$t7.1 + local.get $$t8 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load8_u align=1 + local.set $$t10 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t12 + local.get $$t12 + i32.const 255 + i32.and + local.set $$t13 + i32.const 192 + local.get $$t13 + i32.or + local.set $$t14 + local.get $$t11.1 + local.get $$t14 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $r + i32.const 255 + i32.and + local.set $$t16 + local.get $$t16 + i32.const 63 + i32.and + local.set $$t17 + i32.const 128 + local.get $$t17 + i32.or + local.set $$t18 + local.get $$t15.1 + local.get $$t18 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $$t2 + i32.const 2047 + i32.le_u + local.set $$t19 + local.get $$t19 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load8_u align=1 + local.set $$t21 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + i32.const 65533 + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t23 + local.get $$t23 + i32.const 255 + i32.and + local.set $$t24 + i32.const 224 + local.get $$t24 + i32.or + local.set $$t25 + local.get $$t22.1 + local.get $$t25 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + i32.const 65533 + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t27 + local.get $$t27 + i32.const 255 + i32.and + local.set $$t28 + local.get $$t28 + i32.const 63 + i32.and + local.set $$t29 + i32.const 128 + local.get $$t29 + i32.or + local.set $$t30 + local.get $$t26.1 + local.get $$t30 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 65533 + i32.const 255 + i32.and + local.set $$t32 + local.get $$t32 + i32.const 63 + i32.and + local.set $$t33 + i32.const 128 + local.get $$t33 + i32.or + local.set $$t34 + local.get $$t31.1 + local.get $$t34 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $$t2 + i32.const 1114111 + i32.gt_u + local.set $$t35 + local.get $$t35 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.1 + i32.load8_u align=1 + local.set $$t37 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t39 + local.get $$t39 + i32.const 255 + i32.and + local.set $$t40 + i32.const 224 + local.get $$t40 + i32.or + local.set $$t41 + local.get $$t38.1 + local.get $$t41 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t43 + local.get $$t43 + i32.const 255 + i32.and + local.set $$t44 + local.get $$t44 + i32.const 63 + i32.and + local.set $$t45 + i32.const 128 + local.get $$t45 + i32.or + local.set $$t46 + local.get $$t42.1 + local.get $$t46 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $r + i32.const 255 + i32.and + local.set $$t48 + local.get $$t48 + i32.const 63 + i32.and + local.set $$t49 + i32.const 128 + local.get $$t49 + i32.or + local.set $$t50 + local.get $$t47.1 + local.get $$t50 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + i32.const 55296 + local.get $$t2 + i32.le_u + local.set $$t51 + local.get $$t51 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t2 + i32.const 65535 + i32.le_u + local.set $$t52 + local.get $$t52 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 10 + local.set $$current_block + local.get $$t2 + i32.const 57343 + i32.le_u + local.set $$t53 + br $$Block_10 + end + local.get $$current_block + i32.const 8 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t53 + end + local.set $$t54 + i32.const 11 + local.set $$current_block + local.get $$t54 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.1 + i32.load8_u align=1 + local.set $$t56 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $r + i64.const 18 + i32.wrap_i64 + i32.shr_s + local.set $$t58 + local.get $$t58 + i32.const 255 + i32.and + local.set $$t59 + i32.const 240 + local.get $$t59 + i32.or + local.set $$t60 + local.get $$t57.1 + local.get $$t60 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t62 + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + local.get $$t63 + i32.const 63 + i32.and + local.set $$t64 + i32.const 128 + local.get $$t64 + i32.or + local.set $$t65 + local.get $$t61.1 + local.get $$t65 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t67 + local.get $$t67 + i32.const 255 + i32.and + local.set $$t68 + local.get $$t68 + i32.const 63 + i32.and + local.set $$t69 + i32.const 128 + local.get $$t69 + i32.or + local.set $$t70 + local.get $$t66.1 + local.get $$t70 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $r + i32.const 255 + i32.and + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + i32.const 128 + local.get $$t73 + i32.or + local.set $$t74 + local.get $$t71.1 + local.get $$t74 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + ) + (func $$wa.runtime.string_Comp (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $x.0 + local.get $x.1 + local.get $x.2 + call $$wa.runtime.string_to_iter + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0 + local.get $$t0.1 + local.get $$t1.0 + i32.store + local.get $$t0.1 + local.get $$t1.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t1.2 + i32.store offset=8 + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_to_iter + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + local.get $$t2.1 + local.get $$t3.0 + i32.store + local.get $$t2.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t3.2 + i32.store offset=8 + br $$Block_0 + end + i32.const 1 + local.set $$current_block + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $runtime.next_rune + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0 + local.get $$t5.0 + local.set $$t6 + local.get $$t5.1 + local.set $$t7 + local.get $$t5.2 + local.set $$t8 + local.get $$t5.3 + local.set $$t9 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + local.get $$t9 + i32.store + local.get $$t2.1 + i32.load + local.get $$t2.1 + i32.load offset=4 + local.get $$t2.1 + i32.load offset=8 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + call $runtime.next_rune + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.set $$t12.0 + local.get $$t12.0 + local.set $$t13 + local.get $$t12.1 + local.set $$t14 + local.get $$t12.2 + local.set $$t15 + local.get $$t12.3 + local.set $$t16 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 8 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + local.get $$t16 + i32.store + local.get $$t6 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $x.2 + local.set $$t18 + local.get $y.2 + local.set $$t19 + local.get $$t18 + local.get $$t19 + i32.lt_s + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.lt_s + local.set $$t21 + local.get $$t21 + if + br $$Block_5 + else + br $$Block_6 + end + end + i32.const 4 + local.set $$current_block + br $$Block_4 + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t22 + i32.const 5 + local.set $$current_block + local.get $$t22 + i32.const 1 + i32.eq + i32.eqz + local.set $$t23 + local.get $$t23 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.gt_s + local.set $$t24 + local.get $$t24 + if + br $$Block_7 + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 9 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $$t18 + local.get $$t19 + i32.gt_s + local.set $$t25 + local.get $$t25 + if + br $$Block_10 + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + ) + (func $$runtime.waPrintRune (param $ch i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ch + call $runtime.stringFromRune + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + local.get $$t0.1 + local.get $$t0.2 + call $runtime.printString + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $$runtime.waPrintString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.printString + br $$BlockFnBody + end + end + end + ) + (func $$runtime.waPuts (param $ptr i32) (param $len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ptr + local.get $len + call $runtime.traceUtf8 + br $$BlockFnBody + end + end + end + ) + (func $math.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$math$rand.Source.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$math$rand.Source64.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$math$rand.Rand.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 15 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 16 + call_indirect 0 (type $$onFree) + ) + (func $math$rand.New (param $src.0.0 i32) (param $src.0.1 i32) (param $src.1 i32) (param $src.2 i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0.0.0 i32) + (local $$t0.0.0.1 i32) + (local $$t0.0.1 i32) + (local $$t0.0.2 i32) + (local $$t0.1 i32) + (local $$t1.0.0 i32) + (local $$t1.0.1 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $src.0.0 + local.get $src.0.1 + local.get $src.1 + local.get $src.2 + i32.const -3 + call $$wa.runtime.queryIface_CommaOk + local.set $$t0.1 + local.set $$t0.0.2 + local.set $$t0.0.1 + local.set $$t0.0.0.1 + local.get $$t0.0.0.0 + call $runtime.Block.Release + local.set $$t0.0.0.0 + local.get $$t0.0.0.0 + call $runtime.Block.Retain + local.get $$t0.0.0.1 + local.get $$t0.0.1 + local.get $$t0.0.2 + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0.1 + local.get $$t1.0.0 + call $runtime.Block.Release + local.set $$t1.0.0 + local.get $$t0.1 + local.set $$t2 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 17 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 0 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 16 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t4.1 + local.get $src.0.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t4.1 + local.get $src.0.1 + i32.store offset=4 + local.get $$t4.1 + local.get $src.1 + i32.store offset=8 + local.get $$t4.1 + local.get $src.2 + i32.store offset=12 + local.get $$t5.1 + local.get $$t1.0.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t5.1 + local.get $$t1.0.1 + i32.store offset=4 + local.get $$t5.1 + local.get $$t1.1 + i32.store offset=8 + local.get $$t5.1 + local.get $$t1.2 + i32.store offset=12 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0.0.0 + call $runtime.Block.Release + local.get $$t1.0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + ) + (func $math$rand.NewSource (param $seed i64) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0.0 i32) + (local $$ret_0.0.1 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0.0 i32) + (local $$t1.0.1 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $seed + call $math$rand.newSource + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const -2 + i32.const 0 + call $runtime.getItab + i32.const 0 + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0.1 + local.get $$t1.0.0 + call $runtime.Block.Release + local.set $$t1.0.0 + local.get $$t1.0.0 + call $runtime.Block.Retain + local.get $$t1.0.1 + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.set $$ret_0.0.1 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.set $$ret_0.0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0.0 + call $runtime.Block.Retain + local.get $$ret_0.0.1 + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0.0 + call $runtime.Block.Release + ) + (func $math$rand.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0.0 i32) + (local $$t6.0.1 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0.0 i32) + (local $$t7.0.1 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math$rand.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math$rand.init$guard + call $math.init + call $errors.init + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 17 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 0 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + i32.const 4880 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4864 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + i32.const 4880 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4864 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 2 + i32.const -2 + i32.const 0 + call $runtime.getItab + i32.const 0 + local.set $$t6.2 + local.set $$t6.1 + local.set $$t6.0.1 + local.get $$t6.0.0 + call $runtime.Block.Release + local.set $$t6.0.0 + local.get $$t2.1 + local.get $$t6.0.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t2.1 + local.get $$t6.0.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t6.1 + i32.store offset=8 + local.get $$t2.1 + local.get $$t6.2 + i32.store offset=12 + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.const 2 + i32.const -3 + i32.const 0 + call $runtime.getItab + i32.const 0 + local.set $$t7.2 + local.set $$t7.1 + local.set $$t7.0.1 + local.get $$t7.0.0 + call $runtime.Block.Release + local.set $$t7.0.0 + local.get $$t4.1 + local.get $$t7.0.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t4.1 + local.get $$t7.0.1 + i32.store offset=4 + local.get $$t4.1 + local.get $$t7.1 + i32.store offset=8 + local.get $$t4.1 + local.get $$t7.2 + i32.store offset=12 + i32.const 16424 + local.get $$t1.0 + call $runtime.Block.Retain + i32.const 16424 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 16424 + local.get $$t1.1 + i32.store offset=4 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0.0 + call $runtime.Block.Release + local.get $$t7.0.0 + call $runtime.Block.Release + ) + (func $math$rand.newSource (param $seed i64) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 4880 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4864 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + local.get $$t0.1 + local.get $seed + call $math$rand.rngSource.Seed + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $math$rand.seedrand (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 44488 + i32.div_s + local.set $$t0 + local.get $x + i32.const 44488 + i32.rem_s + local.set $$t1 + i32.const 48271 + local.get $$t1 + i32.mul + local.set $$t2 + i32.const 3399 + local.get $$t0 + i32.mul + local.set $$t3 + local.get $$t2 + local.get $$t3 + i32.sub + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.lt_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t4 + i32.const 2147483647 + i32.add + local.set $$t6 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $$t4 + else + local.get $$t6 + end + local.set $$t7 + i32.const 2 + local.set $$current_block + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $$errors.errorString.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 3 + call_indirect 0 (type $$onFree) + ) + (func $errors.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $errors.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $errors.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.BlitI32 (param $sprite.0 i32) (param $sprite.1 i32) (param $sprite.2 i32) (param $sprite.3 i32) (param $x i32) (param $y i32) (param $width i32) (param $height i32) (param $flags i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $sprite.0 + local.get $sprite.1 + local.get $sprite.2 + local.get $sprite.3 + call $$syscall/wasm4.__linkname__slice_data_ptr + local.set $$t0 + local.get $$t0 + local.get $x + local.get $y + local.get $width + local.get $height + local.get $flags + call $syscall$wasm4.__import__blit + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.GetGamePad1 (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 22 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.RectI32 (param $x i32) (param $y i32) (param $width i32) (param $height i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + local.get $y + local.get $width + local.get $height + call $syscall$wasm4.__import__rect + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.SetDrawColors (param $a i32) (param $b i32) (param $c i32) (param $d i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 20 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $a + local.set $$t1 + local.get $b + local.set $$t2 + local.get $$t2 + i64.const 4 + i32.wrap_i64 + i32.shl + local.set $$t3 + local.get $$t1 + local.get $$t3 + i32.add + local.set $$t4 + local.get $c + local.set $$t5 + local.get $$t5 + i64.const 8 + i32.wrap_i64 + i32.shl + local.set $$t6 + local.get $$t4 + local.get $$t6 + i32.add + local.set $$t7 + local.get $d + local.set $$t8 + local.get $$t8 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t9 + local.get $$t7 + local.get $$t9 + i32.add + local.set $$t10 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t10 + i32.const 65535 + i32.and + local.set $$t12 + local.get $$t11.1 + local.get $$t12 + i32.store16 + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.SetPalette (param $a0 i32) (param $a1 i32) (param $a2 i32) (param $a3 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 4 + i32.const 4 + i32.const 4 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 3 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t1.1 + local.get $a0 + i32.store + local.get $$t2.1 + local.get $a1 + i32.store + local.get $$t3.1 + local.get $a2 + i32.store + local.get $$t4.1 + local.get $a3 + i32.store + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.Tone (param $frequency i32) (param $duration i32) (param $volume i32) (param $flags i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $frequency + local.set $$t0 + local.get $duration + local.set $$t1 + local.get $volume + local.set $$t2 + local.get $flags + local.set $$t3 + local.get $$t0 + local.get $$t1 + local.get $$t2 + local.get $$t3 + call $syscall$wasm4.__import__tone + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $syscall$wasm4.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $syscall$wasm4.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $math$rand.Rand.Intn.$bound (param $n i32) (result i32) + global.get $$wa.runtime.closure_data + i32.load + global.get $$wa.runtime.closure_data + i32.load offset=4 + i32.const 0 + global.set $$wa.runtime.closure_data + local.get $n + call $math$rand.Rand.Intn + ) + (func $$math$rand.Rand.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$math$rand.Rand.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 20 + call_indirect 0 (type $$onFree) + ) + (func $w4snake.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t18.2 i32) + (local $$t18.3 i32) + (local $$t19.0.0 i32) + (local $$t19.0.1 i32) + (local $$t19.1 i32) + (local $$t19.2 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1.0 i32) + (local $$t21.1.1 i32) + (local $$t22.0 i32) + (local $$t22.1.0 i32) + (local $$t22.1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $w4snake.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $w4snake.init$guard + call $runtime.init + call $math$rand.init + call $syscall$wasm4.init + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.1 + i32.const 0 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.const 160 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.const 2 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.const 0 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 4 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.const 14 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 5 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.const 240 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 6 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.const 54 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 7 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.const 92 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 8 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.const 214 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 9 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.const 87 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 10 + i32.mul + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.const 213 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 11 + i32.mul + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.const 87 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 12 + i32.mul + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.1 + i32.const 53 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 13 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.const 92 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 14 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.const 15 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 15 + i32.mul + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + i32.const 240 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 16 + i32.const 0 + i32.sub + i32.const 16 + i32.const 0 + i32.sub + local.set $$t18.3 + local.set $$t18.2 + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + i32.const 24368 + local.get $$t18.0 + call $runtime.Block.Retain + i32.const 24368 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 24368 + local.get $$t18.1 + i32.store offset=4 + i32.const 24368 + local.get $$t18.2 + i32.store offset=8 + i32.const 24368 + local.get $$t18.3 + i32.store offset=12 + i64.const 1 + call $math$rand.NewSource + local.set $$t19.2 + local.set $$t19.1 + local.set $$t19.0.1 + local.get $$t19.0.0 + call $runtime.Block.Release + local.set $$t19.0.0 + local.get $$t19.0.0 + local.get $$t19.0.1 + local.get $$t19.1 + local.get $$t19.2 + call $math$rand.New + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + i32.const 19 + local.set $$t21.0 + i32.const 24 + call $runtime.HeapAlloc + i32.const 1 + i32.const 21 + i32.const 8 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t21.1.1 + local.get $$t21.1.0 + call $runtime.Block.Release + local.set $$t21.1.0 + local.get $$t21.1.1 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t21.1.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t21.1.1 + local.get $$t20.1 + i32.store offset=4 + local.get $$t21.0 + local.get $$t21.1.0 + call $runtime.Block.Retain + local.get $$t21.1.1 + local.set $$t22.1.1 + local.get $$t22.1.0 + call $runtime.Block.Release + local.set $$t22.1.0 + local.set $$t22.0 + i32.const 24384 + local.get $$t22.0 + i32.store + i32.const 24384 + local.get $$t22.1.0 + call $runtime.Block.Retain + i32.const 24384 + i32.load offset=4 align=1 + call $runtime.Block.Release + i32.store offset=4 align=1 + i32.const 24384 + local.get $$t22.1.1 + i32.store offset=8 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.1.0 + call $runtime.Block.Release + local.get $$t22.1.0 + call $runtime.Block.Release + ) + (func $w4snake.input + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + call $syscall$wasm4.GetGamePad1 + local.set $$t0 + local.get $$t0 + i32.const 1 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + i32.eqz + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 24456 + i32.const 1 + i32.store8 align=1 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + local.get $$t0 + i32.const 2 + i32.and + local.set $$t3 + local.get $$t3 + i32.const 0 + i32.eq + i32.eqz + local.set $$t4 + local.get $$t4 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + i32.const 24456 + i32.const 0 + i32.store8 align=1 + br $$Block_3 + end + i32.const 4 + local.set $$current_block + local.get $$t0 + i32.const 64 + i32.and + local.set $$t5 + local.get $$t5 + i32.const 0 + i32.eq + i32.eqz + local.set $$t6 + local.get $$t6 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + i32.const 0 + i32.const 24432 + call $w4snake.Snake.Up + br $$Block_5 + end + i32.const 6 + local.set $$current_block + local.get $$t0 + i32.const 128 + i32.and + local.set $$t7 + local.get $$t7 + i32.const 0 + i32.eq + i32.eqz + local.set $$t8 + local.get $$t8 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + i32.const 0 + i32.const 24432 + call $w4snake.Snake.Down + br $$Block_7 + end + i32.const 8 + local.set $$current_block + local.get $$t0 + i32.const 16 + i32.and + local.set $$t9 + local.get $$t9 + i32.const 0 + i32.eq + i32.eqz + local.set $$t10 + local.get $$t10 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + i32.const 0 + i32.const 24432 + call $w4snake.Snake.Left + br $$Block_9 + end + i32.const 10 + local.set $$current_block + local.get $$t0 + i32.const 32 + i32.and + local.set $$t11 + local.get $$t11 + i32.const 0 + i32.eq + i32.eqz + local.set $$t12 + local.get $$t12 + if + br $$Block_10 + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 0 + i32.const 24432 + call $w4snake.Snake.Right + br $$Block_11 + end + i32.const 12 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $w4snake.start (export "start") + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 16513011 + i32.const 15052931 + i32.const 4353629 + i32.const 2107453 + call $syscall$wasm4.SetPalette + i32.const 0 + i32.const 24432 + call $w4snake.Snake.Reset + br $$BlockFnBody + end + end + end + ) + (func $$w4snake.Point.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item.0 i32) + (local $item.1 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if(result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 2 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + end + local.get $src + i32.load8_u align=1 + local.get $src + i32.load8_u offset=1 align=1 + local.set $item.1 + local.set $item.0 + local.get $dest + local.get $item.0 + i32.store8 align=1 + local.get $dest + local.get $item.1 + i32.store8 offset=1 align=1 + local.get $src + i32.const 2 + i32.add + local.set $src + local.get $dest + i32.const 2 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end + end + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 2 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 0 + i32.const 2 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load8_u align=1 + local.get $src + i32.load8_u offset=1 align=1 + local.set $item.1 + local.set $item.0 + local.get $dest + local.get $item.0 + i32.store8 align=1 + local.get $dest + local.get $item.1 + i32.store8 offset=1 align=1 + local.get $src + i32.const 2 + i32.add + local.set $src + local.get $dest + i32.const 2 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load8_u align=1 + local.get $src + i32.load8_u offset=1 align=1 + local.set $item.1 + local.set $item.0 + local.get $dest + local.get $item.0 + i32.store8 align=1 + local.get $dest + local.get $item.1 + i32.store8 offset=1 align=1 + local.get $src + i32.const 2 + i32.add + local.set $src + local.get $dest + i32.const 2 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + end + ) + (func $w4snake.update (export "update") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t16.2 i32) + (local $$t16.3 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t18.2 i32) + (local $$t18.3 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t26.2 i32) + (local $$t26.3 i32) + (local $$t27.0 i32) + (local $$t27.1.0 i32) + (local $$t27.1.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1.0 i32) + (local $$t31.1.1 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + call $w4snake.input + i32.const 24360 + i32.load + local.set $$t0 + local.get $$t0 + i32.const 1 + i32.add + local.set $$t1 + i32.const 24360 + local.get $$t1 + i32.store + i32.const 24360 + i32.load + local.set $$t2 + local.get $$t2 + i32.const 10 + i32.rem_s + local.set $$t3 + local.get $$t3 + i32.const 0 + i32.eq + local.set $$t4 + local.get $$t4 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + i32.const 24432 + call $w4snake.Snake.Update + i32.const 0 + i32.const 24432 + call $w4snake.Snake.IsDead + local.set $$t5 + local.get $$t5 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 2 + local.set $$current_block + i32.const 0 + i32.const 24432 + call $w4snake.Snake.Draw + i32.const 1 + i32.const 2 + i32.const 3 + i32.const 4 + call $syscall$wasm4.SetDrawColors + i32.const 24368 + i32.load + call $runtime.Block.Retain + i32.const 24368 + i32.load offset=4 + i32.const 24368 + i32.load offset=8 + i32.const 24368 + i32.load offset=12 + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + i32.const 24364 + i32.load8_u align=1 + local.set $$t7 + local.get $$t7 + local.set $$t8 + i32.const 24365 + i32.load8_u align=1 + local.set $$t9 + local.get $$t9 + local.set $$t10 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + local.get $$t8 + local.get $$t10 + i32.const 8 + i32.const 8 + i32.const 1 + call $syscall$wasm4.BlitI32 + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + i32.const 0 + i32.const 24432 + call $w4snake.Snake.Reset + br $$Block_3 + end + i32.const 4 + local.set $$current_block + i32.const 24432 + i32.load + call $runtime.Block.Retain + i32.const 24432 + i32.load offset=4 + i32.const 24432 + i32.load offset=8 + i32.const 24432 + i32.load offset=12 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load8_u align=1 + local.get $$t12.1 + i32.load8_u offset=1 align=1 + local.set $$t13.1 + local.set $$t13.0 + i32.const 24364 + i32.load8_u align=1 + i32.const 24364 + i32.load8_u offset=1 align=1 + local.set $$t14.1 + local.set $$t14.0 + local.get $$t13.0 + local.get $$t14.0 + i32.eq + local.get $$t13.1 + local.get $$t14.1 + i32.eq + i32.and + local.set $$t15 + local.get $$t15 + if + br $$Block_4 + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + i32.const 24432 + i32.load + call $runtime.Block.Retain + i32.const 24432 + i32.load offset=4 + i32.const 24432 + i32.load offset=8 + i32.const 24432 + i32.load offset=12 + local.set $$t16.3 + local.set $$t16.2 + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + i32.const 24432 + i32.load + call $runtime.Block.Retain + i32.const 24432 + i32.load offset=4 + i32.const 24432 + i32.load offset=8 + i32.const 24432 + i32.load offset=12 + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + i32.const 24432 + i32.load + call $runtime.Block.Retain + i32.const 24432 + i32.load offset=4 + i32.const 24432 + i32.load offset=8 + i32.const 24432 + i32.load offset=12 + local.set $$t18.3 + local.set $$t18.2 + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.2 + local.set $$t19 + local.get $$t19 + i32.const 1 + i32.sub + local.set $$t20 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 2 + local.get $$t20 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.load8_u align=1 + local.get $$t21.1 + i32.load8_u offset=1 align=1 + local.set $$t22.1 + local.set $$t22.0 + i32.const 18 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 2 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.0 + call $runtime.Block.Retain + local.get $$t23.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + local.get $$t22.0 + i32.store8 align=1 + local.get $$t24.1 + local.get $$t22.1 + i32.store8 offset=1 align=1 + local.get $$t23.0 + call $runtime.Block.Retain + local.get $$t23.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t16.0 + local.get $$t16.1 + local.get $$t16.2 + local.get $$t16.3 + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + call $$w4snake.Point.$slice.append + local.set $$t26.3 + local.set $$t26.2 + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + i32.const 24432 + local.get $$t26.0 + call $runtime.Block.Retain + i32.const 24432 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 24432 + local.get $$t26.1 + i32.store offset=4 + i32.const 24432 + local.get $$t26.2 + i32.store offset=8 + i32.const 24432 + local.get $$t26.3 + i32.store offset=12 + i32.const 24384 + i32.load + i32.const 24384 + i32.load offset=4 + call $runtime.Block.Retain + i32.const 24384 + i32.load offset=8 + local.set $$t27.1.1 + local.get $$t27.1.0 + call $runtime.Block.Release + local.set $$t27.1.0 + local.set $$t27.0 + i32.const 20 + local.get $$t27.0 + local.get $$t27.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig6) + local.set $$t28 + local.get $$t28 + i32.const 8 + i32.mul + local.set $$t29 + local.get $$t29 + i32.const 255 + i32.and + local.set $$t30 + i32.const 24364 + local.get $$t30 + i32.store8 align=1 + i32.const 24384 + i32.load + i32.const 24384 + i32.load offset=4 + call $runtime.Block.Retain + i32.const 24384 + i32.load offset=8 + local.set $$t31.1.1 + local.get $$t31.1.0 + call $runtime.Block.Release + local.set $$t31.1.0 + local.set $$t31.0 + i32.const 20 + local.get $$t31.0 + local.get $$t31.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig6) + local.set $$t32 + local.get $$t32 + i32.const 8 + i32.mul + local.set $$t33 + local.get $$t33 + i32.const 255 + i32.and + local.set $$t34 + i32.const 24365 + local.get $$t34 + i32.store8 align=1 + i32.const 0 + i32.const 24396 + call $w4snake.Sound.play + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.1.0 + call $runtime.Block.Release + local.get $$t31.1.0 + call $runtime.Block.Release + ) + (func $math$rand.Rand.Int31 (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i64) + (local $$t1 i64) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $math$rand.Rand.Int63 + local.set $$t0 + local.get $$t0 + i64.const 32 + i64.shr_s + local.set $$t1 + local.get $$t1 + i32.wrap_i64 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $math$rand.Rand.Int31n (param $this.0 i32) (param $this.1 i32) (param $n i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 0 + end + i32.const 0 + local.set $$current_block + local.get $n + i32.const 0 + i32.le_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 24586 + i32.const 26 + i32.const 24612 + i32.const 13 + call $$runtime.panic_ + end + i32.const 2 + local.set $$current_block + local.get $n + i32.const 1 + i32.sub + local.set $$t1 + local.get $n + local.get $$t1 + i32.and + local.set $$t2 + local.get $$t2 + i32.const 0 + i32.eq + local.set $$t3 + local.get $$t3 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $math$rand.Rand.Int31 + local.set $$t4 + local.get $n + i32.const 1 + i32.sub + local.set $$t5 + local.get $$t4 + local.get $$t5 + i32.and + local.set $$t6 + local.get $$t6 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $n + local.set $$t7 + i32.const -2147483648 + local.get $$t7 + i32.rem_u + local.set $$t8 + i32.const 2147483647 + local.get $$t8 + i32.sub + local.set $$t9 + local.get $$t9 + local.set $$t10 + local.get $this.0 + local.get $this.1 + call $math$rand.Rand.Int31 + local.set $$t11 + br $$Block_6 + end + i32.const 5 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $math$rand.Rand.Int31 + local.set $$t12 + br $$Block_6 + end + i32.const 6 + local.set $$current_block + local.get $$t13 + local.get $n + i32.rem_s + local.set $$t14 + local.get $$t14 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t11 + else + local.get $$t12 + end + local.set $$t13 + i32.const 7 + local.set $$current_block + local.get $$t13 + local.get $$t10 + i32.gt_s + local.set $$t15 + local.get $$t15 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0 + ) + (func $math$rand.Rand.Int63 (param $this.0 i32) (param $this.1 i32) (result i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i64) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0.0 i32) + (local $$t1.0.1 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2 i64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0.1 + local.get $$t1.0.0 + call $runtime.Block.Release + local.set $$t1.0.0 + local.get $$t1.0.0 + local.get $$t1.0.1 + local.get $$t1.1 + i32.load offset=8 + call_indirect 0 (type $$$fnSig1) + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0.0 + call $runtime.Block.Release + ) + (func $math$rand.Rand.Int63n (param $this.0 i32) (param $this.1 i32) (param $n i64) (result i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i64) + (local $$t0 i32) + (local $$t1 i64) + (local $$t2 i64) + (local $$t3 i32) + (local $$t4 i64) + (local $$t5 i64) + (local $$t6 i64) + (local $$t7 i64) + (local $$t8 i64) + (local $$t9 i64) + (local $$t10 i64) + (local $$t11 i64) + (local $$t12 i64) + (local $$t13 i64) + (local $$t14 i64) + (local $$t15 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 0 + end + i32.const 0 + local.set $$current_block + local.get $n + i64.const 0 + i64.le_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 24625 + i32.const 26 + i32.const 24651 + i32.const 12 + call $$runtime.panic_ + end + i32.const 2 + local.set $$current_block + local.get $n + i64.const 1 + i64.sub + local.set $$t1 + local.get $n + local.get $$t1 + i64.and + local.set $$t2 + local.get $$t2 + i64.const 0 + i64.eq + local.set $$t3 + local.get $$t3 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $math$rand.Rand.Int63 + local.set $$t4 + local.get $n + i64.const 1 + i64.sub + local.set $$t5 + local.get $$t4 + local.get $$t5 + i64.and + local.set $$t6 + local.get $$t6 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $n + local.set $$t7 + i64.const -9223372036854775808 + local.get $$t7 + i64.rem_u + local.set $$t8 + i64.const 9223372036854775807 + local.get $$t8 + i64.sub + local.set $$t9 + local.get $$t9 + local.set $$t10 + local.get $this.0 + local.get $this.1 + call $math$rand.Rand.Int63 + local.set $$t11 + br $$Block_6 + end + i32.const 5 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $math$rand.Rand.Int63 + local.set $$t12 + br $$Block_6 + end + i32.const 6 + local.set $$current_block + local.get $$t13 + local.get $n + i64.rem_s + local.set $$t14 + local.get $$t14 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i64) + local.get $$t11 + else + local.get $$t12 + end + local.set $$t13 + i32.const 7 + local.set $$current_block + local.get $$t13 + local.get $$t10 + i64.gt_s + local.set $$t15 + local.get $$t15 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0 + ) + (func $math$rand.Rand.Intn (param $this.0 i32) (param $this.1 i32) (param $n i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i64) + (local $$t6 i64) + (local $$t7 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $n + i32.const 0 + i32.le_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 24663 + i32.const 24 + i32.const 24687 + i32.const 13 + call $$runtime.panic_ + end + i32.const 2 + local.set $$current_block + local.get $n + i32.const 2147483647 + i32.le_s + local.set $$t1 + local.get $$t1 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $n + local.set $$t2 + local.get $this.0 + local.get $this.1 + local.get $$t2 + call $math$rand.Rand.Int31n + local.set $$t3 + local.get $$t3 + local.set $$t4 + local.get $$t4 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $n + i64.extend_i32_s + local.set $$t5 + local.get $this.0 + local.get $this.1 + local.get $$t5 + call $math$rand.Rand.Int63n + local.set $$t6 + local.get $$t6 + i32.wrap_i64 + local.set $$t7 + local.get $$t7 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4snake.Sound.play (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.1 + i32.load + local.set $$t3 + local.get $$t3 + i64.const 16 + i32.wrap_i64 + i32.shl + local.set $$t4 + local.get $$t1 + local.get $$t4 + i32.or + local.set $$t5 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t7 + i64.const 24 + i32.wrap_i64 + i32.shl + local.set $$t8 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load + local.set $$t10 + local.get $$t10 + i64.const 16 + i32.wrap_i64 + i32.shl + local.set $$t11 + local.get $$t8 + local.get $$t11 + i32.or + local.set $$t12 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t12 + local.get $$t14 + i32.or + local.set $$t15 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 20 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + local.set $$t17 + local.get $$t17 + i64.const 8 + i32.wrap_i64 + i32.shl + local.set $$t18 + local.get $$t15 + local.get $$t18 + i32.or + local.set $$t19 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 28 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load + local.set $$t21 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 32 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.1 + i32.load + local.set $$t23 + local.get $$t23 + i64.const 2 + i32.wrap_i64 + i32.shl + local.set $$t24 + local.get $$t21 + local.get $$t24 + i32.or + local.set $$t25 + local.get $$t5 + local.set $$t26 + local.get $$t19 + local.set $$t27 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load + local.set $$t29 + local.get $$t29 + local.set $$t30 + local.get $$t25 + local.set $$t31 + local.get $$t26 + local.get $$t27 + local.get $$t30 + local.get $$t31 + call $syscall$wasm4.Tone + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + ) + (func $w4snake.Snake.Down (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load8_u align=1 + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.eq + local.set $$t5 + local.get $$t5 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 0 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 4 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t7.1 + i32.const 0 + i32.store + local.get $$t9.1 + i32.const 8 + i32.store + br $$Block_3 + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + ) + (func $w4snake.Snake.Draw (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + i32.const 3 + i32.const 4 + i32.const 3 + i32.const 4 + call $syscall$wasm4.SetDrawColors + i32.const 18 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 2 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=4 + local.get $$t1.1 + i32.load offset=8 + local.get $$t1.1 + i32.load offset=12 + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.2 + local.set $$t3 + br $$Block_0 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$t4 + end + local.set $$t5 + i32.const 1 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t4 + local.get $$t4 + local.get $$t3 + i32.lt_s + local.set $$t6 + local.get $$t6 + if + br $$Block_1 + else + br $$Block_2 + end + end + i32.const 2 + local.set $$current_block + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 2 + local.get $$t4 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load8_u align=1 + local.get $$t7.1 + i32.load8_u offset=1 align=1 + local.set $$t8.1 + local.set $$t8.0 + local.get $$t0.1 + local.get $$t8.0 + i32.store8 align=1 + local.get $$t0.1 + local.get $$t8.1 + i32.store8 offset=1 align=1 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load8_u align=1 + local.set $$t10 + local.get $$t10 + local.set $$t11 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load8_u align=1 + local.set $$t13 + local.get $$t13 + local.set $$t14 + local.get $$t11 + local.get $$t14 + i32.const 8 + i32.const 8 + call $syscall$wasm4.RectI32 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + i32.const 4 + i32.const 0 + i32.const 3 + i32.const 4 + call $syscall$wasm4.SetDrawColors + i32.const 18 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 2 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + call $runtime.Block.Retain + local.get $$t16.1 + i32.load offset=4 + local.get $$t16.1 + i32.load offset=8 + local.get $$t16.1 + i32.load offset=12 + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + i32.load8_u align=1 + local.get $$t18.1 + i32.load8_u offset=1 align=1 + local.set $$t19.1 + local.set $$t19.0 + local.get $$t15.1 + local.get $$t19.0 + i32.store8 align=1 + local.get $$t15.1 + local.get $$t19.1 + i32.store8 offset=1 align=1 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 0 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load8_u align=1 + local.set $$t21 + local.get $$t21 + local.set $$t22 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 1 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load8_u align=1 + local.set $$t24 + local.get $$t24 + local.set $$t25 + local.get $$t22 + local.get $$t25 + i32.const 8 + i32.const 8 + call $syscall$wasm4.RectI32 + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + ) + (func $w4snake.Snake.IsDead (param $this.0 i32) (param $this.1 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.1 + i32.load8_u align=1 + local.get $$t2.1 + i32.load8_u offset=1 align=1 + local.set $$t3.1 + local.set $$t3.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load + call $runtime.Block.Retain + local.get $$t4.1 + i32.load offset=4 + local.get $$t4.1 + i32.load offset=8 + local.get $$t4.1 + i32.load offset=12 + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.const 2 + local.get $$t6 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load8_u align=1 + local.get $$t7.1 + i32.load8_u offset=1 align=1 + local.set $$t8.1 + local.set $$t8.0 + local.get $$t3.0 + local.get $$t8.0 + i32.eq + local.get $$t3.1 + local.get $$t8.1 + i32.eq + i32.and + local.set $$t9 + local.get $$t9 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t10 + end + local.set $$t6 + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.load + call $runtime.Block.Retain + local.get $$t11.1 + i32.load offset=4 + local.get $$t11.1 + i32.load offset=8 + local.get $$t11.1 + i32.load offset=12 + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.2 + local.set $$t13 + local.get $$t6 + local.get $$t13 + i32.lt_s + local.set $$t14 + local.get $$t14 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + local.get $$t6 + i32.const 1 + i32.add + local.set $$t10 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + ) + (func $w4snake.Snake.Left (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load8_u align=1 + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 0 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.eq + local.set $$t5 + local.get $$t5 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 0 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 4 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t7.1 + i32.const -8 + i32.store + local.get $$t9.1 + i32.const 0 + i32.store + br $$Block_3 + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + ) + (func $w4snake.Snake.Reset (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + i32.const 22 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 6 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 0 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t3.1 + i32.const 16 + i32.store8 align=1 + local.get $$t4.1 + i32.const 0 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 2 + i32.const 1 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.const 0 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.const 1 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t6.1 + i32.const 8 + i32.store8 align=1 + local.get $$t7.1 + i32.const 0 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 2 + i32.const 2 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 0 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 1 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t9.1 + i32.const 0 + i32.store8 align=1 + local.get $$t10.1 + i32.const 0 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 3 + i32.const 0 + i32.sub + i32.const 3 + i32.const 0 + i32.sub + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t0.1 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t0.1 + local.get $$t11.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t11.2 + i32.store offset=8 + local.get $$t0.1 + local.get $$t11.3 + i32.store offset=12 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 0 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 4 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t13.1 + i32.const 8 + i32.store + local.get $$t14.1 + i32.const 0 + i32.store + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + ) + (func $w4snake.Snake.Right (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load8_u align=1 + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 0 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.eq + local.set $$t5 + local.get $$t5 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 0 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 4 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t7.1 + i32.const 8 + i32.store + local.get $$t9.1 + i32.const 0 + i32.store + br $$Block_3 + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + ) + (func $w4snake.Snake.Up (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load8_u align=1 + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.eq + local.set $$t5 + local.get $$t5 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 0 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 4 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t7.1 + i32.const 0 + i32.store + local.get $$t9.1 + i32.const -8 + i32.store + br $$Block_3 + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + ) + (func $w4snake.Snake.Update (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t7.3 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t21.2 i32) + (local $$t21.3 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t33.2 i32) + (local $$t33.3 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t37.2 i32) + (local $$t37.3 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t49.2 i32) + (local $$t49.3 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t56.2 i32) + (local $$t56.3 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t60.2 i32) + (local $$t60.3 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62.0 i32) + (local $$t62.1 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65.0 i32) + (local $$t65.1 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t66.2 i32) + (local $$t66.3 i32) + (local $$t67.0 i32) + (local $$t67.1 i32) + (local $$t68.0 i32) + (local $$t68.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load8_u align=1 + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.1 + i32.load + call $runtime.Block.Retain + local.get $$t2.1 + i32.load offset=4 + local.get $$t2.1 + i32.load offset=8 + local.get $$t2.1 + i32.load offset=12 + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.2 + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.sub + local.set $$t5 + br $$Block_4 + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + call $runtime.Block.Retain + local.get $$t6.1 + i32.load offset=4 + local.get $$t6.1 + i32.load offset=8 + local.get $$t6.1 + i32.load offset=12 + local.set $$t7.3 + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + local.get $$t8 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + call $runtime.Block.Retain + local.get $$t10.1 + i32.load offset=4 + local.get $$t10.1 + i32.load offset=8 + local.get $$t10.1 + i32.load offset=12 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t8 + i32.const 1 + i32.sub + local.set $$t12 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 2 + local.get $$t12 + i32.mul + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load8_u align=1 + local.get $$t13.1 + i32.load8_u offset=1 align=1 + local.set $$t14.1 + local.set $$t14.0 + local.get $$t9.1 + local.get $$t14.0 + i32.store8 align=1 + local.get $$t9.1 + local.get $$t14.1 + i32.store8 offset=1 align=1 + local.get $$t8 + i32.const 1 + i32.sub + local.set $$t15 + br $$Block_4 + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + call $runtime.Block.Retain + local.get $$t16.1 + i32.load offset=4 + local.get $$t16.1 + i32.load offset=8 + local.get $$t16.1 + i32.load offset=12 + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + i32.const 0 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load + call $runtime.Block.Retain + local.get $$t20.1 + i32.load offset=4 + local.get $$t20.1 + i32.load offset=8 + local.get $$t20.1 + i32.load offset=12 + local.set $$t21.3 + local.set $$t21.2 + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.0 + call $runtime.Block.Retain + local.get $$t21.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.const 0 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load8_u align=1 + local.set $$t24 + local.get $$t24 + local.set $$t25 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + i32.const 0 + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t27.1 + i32.load + local.set $$t28 + local.get $$t25 + local.get $$t28 + i32.add + local.set $$t29 + local.get $$t29 + i32.const 160 + i32.rem_s + local.set $$t30 + local.get $$t30 + i32.const 255 + i32.and + local.set $$t31 + local.get $$t19.1 + local.get $$t31 + i32.store8 align=1 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + i32.load + call $runtime.Block.Retain + local.get $$t32.1 + i32.load offset=4 + local.get $$t32.1 + i32.load offset=8 + local.get $$t32.1 + i32.load offset=12 + local.set $$t33.3 + local.set $$t33.2 + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.0 + call $runtime.Block.Retain + local.get $$t33.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t34.0 + call $runtime.Block.Retain + local.get $$t34.1 + i32.const 1 + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.1 + i32.load + call $runtime.Block.Retain + local.get $$t36.1 + i32.load offset=4 + local.get $$t36.1 + i32.load offset=8 + local.get $$t36.1 + i32.load offset=12 + local.set $$t37.3 + local.set $$t37.2 + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$t37.0 + call $runtime.Block.Retain + local.get $$t37.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 1 + i32.add + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t39.1 + i32.load8_u align=1 + local.set $$t40 + local.get $$t40 + local.set $$t41 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t42.0 + call $runtime.Block.Retain + local.get $$t42.1 + i32.const 4 + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.1 + i32.load + local.set $$t44 + local.get $$t41 + local.get $$t44 + i32.add + local.set $$t45 + local.get $$t45 + i32.const 160 + i32.rem_s + local.set $$t46 + local.get $$t46 + i32.const 255 + i32.and + local.set $$t47 + local.get $$t35.1 + local.get $$t47 + i32.store8 align=1 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t48.1 + local.get $$t48.0 + call $runtime.Block.Release + local.set $$t48.0 + local.get $$t48.1 + i32.load + call $runtime.Block.Retain + local.get $$t48.1 + i32.load offset=4 + local.get $$t48.1 + i32.load offset=8 + local.get $$t48.1 + i32.load offset=12 + local.set $$t49.3 + local.set $$t49.2 + local.set $$t49.1 + local.get $$t49.0 + call $runtime.Block.Release + local.set $$t49.0 + local.get $$t49.0 + call $runtime.Block.Retain + local.get $$t49.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 0 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load8_u align=1 + local.set $$t52 + local.get $$t52 + i32.const 160 + i32.gt_u + local.set $$t53 + local.get $$t53 + if + br $$Block_5 + else + br $$Block_6 + end + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + local.get $$t5 + else + local.get $$t15 + end + local.set $$t8 + i32.const 5 + local.set $$current_block + local.get $$t8 + i32.const 0 + i32.gt_s + local.set $$t54 + local.get $$t54 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.1 + i32.load + call $runtime.Block.Retain + local.get $$t55.1 + i32.load offset=4 + local.get $$t55.1 + i32.load offset=8 + local.get $$t55.1 + i32.load offset=12 + local.set $$t56.3 + local.set $$t56.2 + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $$t57.0 + call $runtime.Block.Retain + local.get $$t57.1 + i32.const 0 + i32.add + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + local.get $$t58.1 + i32.const 152 + i32.store8 align=1 + br $$Block_6 + end + i32.const 7 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t59.1 + i32.load + call $runtime.Block.Retain + local.get $$t59.1 + i32.load offset=4 + local.get $$t59.1 + i32.load offset=8 + local.get $$t59.1 + i32.load offset=12 + local.set $$t60.3 + local.set $$t60.2 + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + local.get $$t60.0 + call $runtime.Block.Retain + local.get $$t60.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $$t61.0 + call $runtime.Block.Retain + local.get $$t61.1 + i32.const 1 + i32.add + local.set $$t62.1 + local.get $$t62.0 + call $runtime.Block.Release + local.set $$t62.0 + local.get $$t62.1 + i32.load8_u align=1 + local.set $$t63 + local.get $$t63 + i32.const 160 + i32.gt_u + local.set $$t64 + local.get $$t64 + if + br $$Block_7 + else + br $$Block_8 + end + end + i32.const 8 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t65.1 + local.get $$t65.0 + call $runtime.Block.Release + local.set $$t65.0 + local.get $$t65.1 + i32.load + call $runtime.Block.Retain + local.get $$t65.1 + i32.load offset=4 + local.get $$t65.1 + i32.load offset=8 + local.get $$t65.1 + i32.load offset=12 + local.set $$t66.3 + local.set $$t66.2 + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.0 + call $runtime.Block.Retain + local.get $$t66.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t67.1 + local.get $$t67.0 + call $runtime.Block.Release + local.set $$t67.0 + local.get $$t67.0 + call $runtime.Block.Retain + local.get $$t67.1 + i32.const 1 + i32.add + local.set $$t68.1 + local.get $$t68.0 + call $runtime.Block.Release + local.set $$t68.0 + local.get $$t68.1 + i32.const 152 + i32.store8 align=1 + br $$Block_8 + end + i32.const 9 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t48.0 + call $runtime.Block.Release + local.get $$t49.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t62.0 + call $runtime.Block.Release + local.get $$t65.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t67.0 + call $runtime.Block.Release + local.get $$t68.0 + call $runtime.Block.Release + ) + (func $math$rand.rngSource.Int63 (param $this.0 i32) (param $this.1 i32) (result i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i64) + (local $$t0 i64) + (local $$t1 i64) + (local $$t2 i64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $math$rand.rngSource.Uint64 + local.set $$t0 + local.get $$t0 + i64.const 9223372036854775807 + i64.and + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $math$rand.rngSource.Seed (param $this.0 i32) (param $this.1 i32) (param $seed i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i64) + (local $$t3 i32) + (local $$t4 i64) + (local $$t5 i64) + (local $$t6 i32) + (local $$t7 i64) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i64) + (local $$t17 i64) + (local $$t18 i32) + (local $$t19 i64) + (local $$t20 i64) + (local $$t21 i64) + (local $$t22 i32) + (local $$t23 i64) + (local $$t24 i64) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26 i64) + (local $$t27 i64) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.const 0 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.const 334 + i32.store + local.get $seed + i64.const 2147483647 + i64.rem_s + local.set $$t2 + local.get $$t2 + i64.const 0 + i64.lt_s + local.set $$t3 + local.get $$t3 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t2 + i64.const 2147483647 + i64.add + local.set $$t4 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i64) + local.get $$t2 + else + local.get $$t4 + end + local.set $$t5 + i32.const 2 + local.set $$current_block + local.get $$t5 + i64.const 0 + i64.eq + local.set $$t6 + local.get $$t6 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + br $$Block_3 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i64) + local.get $$t5 + else + i64.const 89482311 + end + local.set $$t7 + i32.const 4 + local.set $$current_block + local.get $$t7 + i32.wrap_i64 + local.set $$t8 + br $$Block_6 + end + i32.const 5 + local.set $$current_block + local.get $$t9 + call $math$rand.seedrand + local.set $$t10 + local.get $$t11 + i32.const 0 + i32.ge_s + local.set $$t12 + local.get $$t12 + if + br $$Block_7 + else + br $$Block_8 + end + end + i32.const 6 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t13 + end + local.set $$t9 + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + i32.const -20 + else + local.get $$t14 + end + local.set $$t11 + i32.const 7 + local.set $$current_block + local.get $$t11 + i32.const 607 + i32.lt_s + local.set $$t15 + local.get $$t15 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + local.get $$t10 + i64.extend_i32_s + local.set $$t16 + local.get $$t16 + i64.const 40 + i64.shl + local.set $$t17 + local.get $$t10 + call $math$rand.seedrand + local.set $$t18 + local.get $$t18 + i64.extend_i32_s + local.set $$t19 + local.get $$t19 + i64.const 20 + i64.shl + local.set $$t20 + local.get $$t17 + local.get $$t20 + i64.xor + local.set $$t21 + local.get $$t18 + call $math$rand.seedrand + local.set $$t22 + local.get $$t22 + i64.extend_i32_s + local.set $$t23 + local.get $$t21 + local.get $$t23 + i64.xor + local.set $$t24 + i32.const 0 + i32.const 17968 + i32.const 8 + local.get $$t11 + i32.mul + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.1 + i64.load + local.set $$t26 + local.get $$t24 + local.get $$t26 + i64.xor + local.set $$t27 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + i32.const 8 + local.get $$t11 + i32.mul + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.1 + local.get $$t27 + i64.store align=8 + br $$Block_8 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t10 + else + local.get $$t22 + end + local.set $$t13 + i32.const 9 + local.set $$current_block + local.get $$t11 + i32.const 1 + i32.add + local.set $$t14 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + ) + (func $math$rand.rngSource.Uint64 (param $this.0 i32) (param $this.1 i32) (result i64) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i64) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i64) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i64) + (local $$t28 i64) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33 i64) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $$t1 + i32.const 1 + i32.sub + local.set $$t2 + local.get $$t0.1 + local.get $$t2 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.lt_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t7 + i32.const 607 + i32.add + local.set $$t8 + local.get $$t6.1 + local.get $$t8 + i32.store + br $$Block_1 + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load + local.set $$t10 + local.get $$t10 + i32.const 1 + i32.sub + local.set $$t11 + local.get $$t9.1 + local.get $$t11 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load + local.set $$t13 + local.get $$t13 + i32.const 0 + i32.lt_s + local.set $$t14 + local.get $$t14 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load + local.set $$t16 + local.get $$t16 + i32.const 607 + i32.add + local.set $$t17 + local.get $$t15.1 + local.get $$t17 + i32.store + br $$Block_3 + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.1 + i32.load + local.set $$t20 + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + i32.const 8 + local.get $$t20 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i64.load + local.set $$t22 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load + local.set $$t25 + local.get $$t23.0 + call $runtime.Block.Retain + local.get $$t23.1 + i32.const 8 + local.get $$t25 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i64.load + local.set $$t27 + local.get $$t22 + local.get $$t27 + i64.add + local.set $$t28 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 8 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 4 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 8 + local.get $$t31 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + local.get $$t28 + i64.store align=8 + local.get $$t28 + local.set $$t33 + local.get $$t33 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + ) + (func $errors.errorString.Error (param $this.0 i32) (param $this.1 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $_start (export "_start") + call $w4snake.init + ) + (func $_main (export "_main")) + (data (i32.const 14784) "\24\24\77\61\64\73\24\24\9b\1a\86\a0\49\fa\a8\bd\05\3f\4e\7b\9d\ee\21\3e\c6\4b\ac\7e\4f\7e\92\be\f5\44\c8\19\a0\01\fa\3e\91\4f\c1\16\6c\c1\56\bf\4b\55\55\55\55\55\a5\3f\cd\9c\d1\1f\fd\d8\e5\3d\5d\1f\29\a9\e5\e5\5a\be\a1\48\7d\56\e3\1d\c7\3e\03\df\bf\19\a0\01\2a\bf\d0\f7\10\11\11\11\81\3f\48\55\55\55\55\55\c5\bf\00\00\80\3f\2f\2a\70\3f\33\85\66\3f\04\28\5f\3f\78\08\59\3f\d5\b5\53\3f\b9\f4\4e\3f\8e\a1\4a\3f\1c\a5\46\3f\44\ef\42\3f\51\74\3f\3f\75\2b\3c\3f\db\0d\39\3f\1a\16\36\3f\d3\3f\33\3f\6e\87\30\3f\eb\e9\2d\3f\c4\64\2b\3f\d1\f5\28\3f\36\9b\26\3f\58\53\24\3f\cd\1c\22\3f\59\f6\1f\3f\e2\de\1d\3f\6d\d5\1b\3f\1a\d9\19\3f\1f\e9\17\3f\c6\04\16\3f\69\2b\14\3f\71\5c\12\3f\56\97\10\3f\99\db\0e\3f\c6\28\0d\3f\73\7e\0b\3f\3e\dc\09\3f\ca\41\08\3f\c4\ae\06\3f\dc\22\05\3f\ca\9d\03\3f\47\1f\02\3f\16\a7\00\3f\f0\69\fe\3e\6c\91\fb\3e\37\c4\f8\3e\ea\01\f6\3e\2a\4a\f3\3e\9c\9c\f0\3e\ec\f8\ed\3e\cc\5e\eb\3e\ef\cd\e8\3e\0f\46\e6\3e\e7\c6\e3\3e\37\50\e1\3e\c1\e1\de\3e\4b\7b\dc\3e\9d\1c\da\3e\82\c5\d7\3e\c7\75\d5\3e\3b\2d\d3\3e\b1\eb\d0\3e\fb\b0\ce\3e\f0\7c\cc\3e\65\4f\ca\3e\34\28\c8\3e\38\07\c6\3e\4c\ec\c3\3e\4e\d7\c1\3e\1b\c8\bf\3e\95\be\bd\3e\9c\ba\bb\3e\12\bc\b9\3e\da\c2\b7\3e\d9\ce\b5\3e\f4\df\b3\3e\12\f6\b1\3e\19\11\b0\3e\f1\30\ae\3e\83\55\ac\3e\b9\7e\aa\3e\7c\ac\a8\3e\b8\de\a6\3e\59\15\a5\3e\49\50\a3\3e\77\8f\a1\3e\d0\d2\9f\3e\42\1a\9e\3e\ba\65\9c\3e\29\b5\9a\3e\7e\08\99\3e\a9\5f\97\3e\9a\ba\95\3e\43\19\94\3e\94\7b\92\3e\80\e1\90\3e\f8\4a\8f\3e\ef\b7\8d\3e\58\28\8c\3e\27\9c\8a\3e\4e\13\89\3e\c3\8d\87\3e\78\0b\86\3e\62\8c\84\3e\78\10\83\3e\ac\97\81\3e\f5\21\80\3e\92\5e\7d\3e\3b\7f\7a\3e\d0\a5\77\3e\40\d2\74\3e\77\04\72\3e\62\3c\6f\3e\f1\79\6c\3e\11\bd\69\3e\b2\05\67\3e\c2\53\64\3e\33\a7\61\3e\f3\ff\5e\3e\f4\5d\5c\3e\26\c1\59\3e\7a\29\57\3e\e2\96\54\3e\50\09\52\3e\b7\80\4f\3e\07\fd\4c\3e\35\7e\4a\3e\33\04\48\3e\f5\8e\45\3e\6e\1e\43\3e\93\b2\40\3e\56\4b\3e\3e\ae\e8\3b\3e\8e\8a\39\3e\eb\30\37\3e\bb\db\34\3e\f3\8a\32\3e\88\3e\30\3e\70\f6\2d\3e\a2\b2\2b\3e\13\73\29\3e\bb\37\27\3e\8f\00\25\3e\86\cd\22\3e\98\9e\20\3e\bc\73\1e\3e\e9\4c\1c\3e\17\2a\1a\3e\3d\0b\18\3e\54\f0\15\3e\54\d9\13\3e\34\c6\11\3e\ed\b6\0f\3e\79\ab\0d\3e\cf\a3\0b\3e\e9\9f\09\3e\bf\9f\07\3e\4c\a3\05\3e\87\aa\03\3e\6c\b5\01\3e\e5\87\ff\3d\2b\ac\fb\3d\9d\d7\f7\3d\30\0a\f4\3d\d8\43\f0\3d\89\84\ec\3d\38\cc\e8\3d\db\1a\e5\3d\68\70\e1\3d\d3\cc\dd\3d\13\30\da\3d\1e\9a\d6\3d\ea\0a\d3\3d\6f\82\cf\3d\a2\00\cc\3d\7c\85\c8\3d\f4\10\c5\3d\01\a3\c1\3d\9c\3b\be\3d\bc\da\ba\3d\5a\80\b7\3d\6f\2c\b4\3d\f3\de\b0\3d\df\97\ad\3d\2e\57\aa\3d\d8\1c\a7\3d\d7\e8\a3\3d\25\bb\a0\3d\bd\93\9d\3d\99\72\9a\3d\b4\57\97\3d\09\43\94\3d\93\34\91\3d\4d\2c\8e\3d\34\2a\8b\3d\44\2e\88\3d\79\38\85\3d\cf\48\82\3d\86\be\7e\3d\a5\f7\78\3d\f5\3c\73\3d\72\8e\6d\3d\18\ec\67\3d\e3\55\62\3d\d1\cb\5c\3d\de\4d\57\3d\0a\dc\51\3d\54\76\4c\3d\bb\1c\47\3d\41\cf\41\3d\e6\8d\3c\3d\ac\58\37\3d\96\2f\32\3d\a9\12\2d\3d\e8\01\28\3d\59\fd\22\3d\02\05\1e\3d\ec\18\19\3d\1e\39\14\3d\a3\65\0f\3d\85\9e\0a\3d\d0\e3\05\3d\93\35\01\3d\b6\27\f9\3c\74\fd\ef\3c\83\ec\e6\3c\0b\f5\dd\3c\37\17\d5\3c\38\53\cc\3c\43\a9\c3\3c\8f\19\bb\3c\5c\a4\b2\3c\ed\49\aa\3c\8e\0a\a2\3c\91\e6\99\3c\4f\de\91\3c\2b\f2\89\3c\90\22\82\3c\ef\df\74\3c\c9\b5\65\3c\d3\c7\56\3c\53\17\48\3c\b7\a5\39\3c\98\74\2b\3c\c6\85\1d\3c\4f\db\0f\3c\91\77\02\3c\90\ba\ea\3b\4f\1f\d1\3b\fa\24\b8\3b\be\d4\9f\3b\eb\39\88\3b\9c\c5\62\3b\48\c4\36\3b\5d\a3\0c\3b\ab\5d\c9\3a\58\90\7d\3a\e2\18\ee\39\00\00\80\3f\78\ae\76\3f\39\b0\6f\3f\3a\bd\69\3f\92\6c\64\3f\db\8c\5f\3f\16\02\5b\3f\86\ba\56\3f\0c\aa\52\3f\f0\c7\4e\3f\a6\0d\4b\3f\1e\76\47\3f\53\fd\43\3f\03\a0\40\3f\7d\5b\3d\3f\82\2d\3a\3f\2b\14\37\3f\d6\0d\34\3f\18\19\31\3f\b7\34\2e\3f\9d\5f\2b\3f\d4\98\28\3f\84\df\25\3f\e7\32\23\3f\4f\92\20\3f\1c\fd\1d\3f\bd\72\1b\3f\b1\f2\18\3f\7d\7c\16\3f\b5\0f\14\3f\f3\ab\11\3f\d9\50\0f\3f\12\fe\0c\3f\4c\b3\0a\3f\3e\70\08\3f\a1\34\06\3f\36\00\04\3f\c0\d2\01\3f\0d\58\ff\3e\a7\17\fb\3e\ec\e3\f6\3e\7d\bc\f2\3e\02\a1\ee\3e\28\91\ea\3e\a0\8c\e6\3e\20\93\e2\3e\60\a4\de\3e\1e\c0\da\3e\1c\e6\d6\3e\1b\16\d3\3e\e5\4f\cf\3e\42\93\cb\3e\fe\df\c7\3e\e9\35\c4\3e\d4\94\c0\3e\92\fc\bc\3e\f8\6c\b9\3e\de\e5\b5\3e\1e\67\b2\3e\92\f0\ae\3e\16\82\ab\3e\8a\1b\a8\3e\cc\bc\a4\3e\bf\65\a1\3e\44\16\9e\3e\41\ce\9a\3e\98\8d\97\3e\32\54\94\3e\f5\21\91\3e\cb\f6\8d\3e\9c\d2\8a\3e\54\b5\87\3e\de\9e\84\3e\27\8f\81\3e\3a\0c\7d\3e\5b\07\77\3e\91\0f\71\3e\bc\24\6b\3e\c0\46\65\3e\7f\75\5f\3e\df\b0\59\3e\c8\f8\53\3e\22\4d\4e\3e\d7\ad\48\3e\d5\1a\43\3e\07\94\3d\3e\5e\19\38\3e\ca\aa\32\3e\3e\48\2d\3e\ad\f1\27\3e\0d\a7\22\3e\55\68\1d\3e\7f\35\18\3e\85\0e\13\3e\64\f3\0d\3e\1b\e4\08\3e\aa\e0\03\3e\26\d2\fd\3d\b7\fa\f3\3d\16\3b\ea\3d\56\93\e0\3d\8f\03\d7\3d\df\8b\cd\3d\6b\2c\c4\3d\5f\e5\ba\3d\eb\b6\b1\3d\4c\a1\a8\3d\c4\a4\9f\3d\a1\c1\96\3d\3b\f8\8d\3d\f8\48\85\3d\9a\68\79\3d\7b\75\68\3d\c6\b9\57\3d\da\36\47\3d\4f\ee\36\3d\fe\e1\26\3d\16\14\17\3d\2a\87\07\3d\a9\7c\f0\3c\bd\7a\d2\3c\fd\11\b5\3c\77\4e\98\3c\42\80\78\3c\5f\fa\41\3c\b6\4d\0d\3c\58\d4\b5\3b\f2\f4\2e\3b\00\00\00\00\00\00\00\00\39\a1\90\e2\00\00\00\00\bc\de\ea\9b\71\ac\77\c3\90\b9\dd\d4\b8\3f\89\de\7c\e8\a8\e4\6a\f1\df\e8\ab\de\f2\eb\e8\a6\49\ee\fd\4e\20\f0\8e\db\9b\f1\bb\58\d4\f2\4b\10\da\f3\78\6d\b8\f4\8a\ad\77\f5\3d\e8\1d\f6\84\b7\af\f6\73\a5\30\f7\51\76\a3\f7\b6\5b\0a\f8\9d\18\67\f8\4f\1b\bb\f8\62\90\07\f9\ca\70\4d\f9\7d\8c\8d\f9\8a\92\c8\f9\5b\17\ff\f9\96\99\31\fa\f8\85\60\fa\62\3a\8c\fa\4e\08\b5\fa\c8\36\db\fa\10\04\ff\fa\ea\a6\20\fb\b4\4f\40\fb\51\29\5e\fb\e9\59\7a\fb\8c\03\95\fb\ba\44\ae\fb\d8\38\c6\fb\92\f8\dc\fb\30\9a\f2\fb\df\31\07\fc\ed\d1\1a\fc\02\8b\2d\fc\4d\6c\3f\fc\ac\83\50\fc\d1\dd\60\fc\62\86\70\fc\10\88\7f\fc\b4\ec\8d\fc\62\bd\9b\fc\7c\02\a9\fc\c3\c3\b5\fc\64\08\c2\fc\0a\d7\cd\fc\e3\35\d9\fc\b0\2a\e4\fc\ce\ba\ee\fc\3b\eb\f8\fc\a0\c0\02\fd\59\3f\0c\fd\7b\6b\15\fd\d6\48\1e\fd\ff\da\26\fd\52\25\2f\fd\f7\2a\37\fd\e5\ee\3e\fd\e7\73\46\fd\9e\bc\4d\fd\85\cb\54\fd\f2\a2\5b\fd\1b\45\62\fd\15\b4\68\fd\da\f1\6e\fd\47\00\75\fd\20\e1\7a\fd\12\96\80\fd\b4\20\86\fd\85\82\8b\fd\f5\bc\90\fd\5e\d1\95\fd\0b\c1\9a\fd\36\8d\9f\fd\08\37\a4\fd\9e\bf\a8\fd\06\28\ad\fd\41\71\b1\fd\46\9c\b5\fd\fd\a9\b9\fd\46\9b\bd\fd\f6\70\c1\fd\d8\2b\c5\fd\ac\cc\c8\fd\2d\54\cc\fd\0b\c3\cf\fd\ef\19\d3\fd\7a\59\d6\fd\45\82\d9\fd\e5\94\dc\fd\e6\91\df\fd\ce\79\e2\fd\1f\4d\e5\fd\52\0c\e8\fd\de\b7\ea\fd\34\50\ed\fd\be\d5\ef\fd\e3\48\f2\fd\06\aa\f4\fd\84\f9\f6\fd\b6\37\f9\fd\f4\64\fb\fd\8d\81\fd\fd\d0\8d\ff\fd\08\8a\01\fe\7a\76\03\fe\6c\53\05\fe\1c\21\07\fe\c9\df\08\fe\ab\8f\0a\fe\fb\30\0c\fe\ec\c3\0d\fe\b1\48\0f\fe\76\bf\10\fe\69\28\12\fe\b4\83\13\fe\7c\d1\14\fe\e7\11\16\fe\16\45\17\fe\2a\6b\18\fe\3e\84\19\fe\70\90\1a\fe\d6\8f\1b\fe\89\82\1c\fe\9b\68\1d\fe\20\42\1e\fe\26\0f\1f\fe\bc\cf\1f\fe\ed\83\20\fe\c3\2b\21\fe\45\c7\21\fe\78\56\22\fe\5f\d9\22\fe\fb\4f\23\fe\4a\ba\23\fe\49\18\24\fe\f2\69\24\fe\3c\af\24\fe\1e\e8\24\fe\8b\14\25\fe\74\34\25\fe\c7\47\25\fe\70\4e\25\fe\5a\48\25\fe\6a\35\25\fe\86\15\25\fe\8f\e8\24\fe\64\ae\24\fe\e1\66\24\fe\df\11\24\fe\34\af\23\fe\b4\3e\23\fe\2c\c0\22\fe\6b\33\22\fe\38\98\21\fe\58\ee\20\fe\8c\35\20\fe\92\6d\1f\fe\21\96\1e\fe\f0\ae\1d\fe\ac\b7\1c\fe\02\b0\1b\fe\98\97\1a\fe\0d\6e\19\fe\fd\32\18\fe\fe\e5\16\fe\9d\86\15\fe\64\14\14\fe\d3\8e\12\fe\65\f5\10\fe\8c\47\0f\fe\b1\84\0d\fe\36\ac\0b\fe\73\bd\09\fe\b5\b7\07\fe\40\9a\05\fe\4c\64\03\fe\04\15\01\fe\88\ab\fe\fd\e9\26\fc\fd\29\86\f9\fd\3b\c8\f6\fd\01\ec\f3\fd\4a\f0\f0\fd\d1\d3\ed\fd\3d\95\ea\fd\1e\33\e7\fd\e9\ab\e3\fd\fb\fd\df\fd\91\27\dc\fd\cd\26\d8\fd\a8\f9\d3\fd\fc\9d\cf\fd\76\11\cb\fd\98\51\c6\fd\b3\5b\c1\fd\e2\2c\bc\fd\06\c2\b6\fd\be\17\b1\fd\63\2a\ab\fd\fd\f5\a4\fd\40\76\9e\fd\7a\a6\97\fd\92\81\90\fd\f2\01\89\fd\82\21\81\fd\8e\d9\78\fd\bb\22\70\fd\ed\f4\66\fd\32\47\5d\fd\9c\0f\53\fd\2b\43\48\fd\9a\d5\3c\fd\36\b9\30\fd\a4\de\23\fd\9e\34\16\fd\a3\a7\07\fd\9b\21\f8\fc\5b\89\e7\fc\20\c2\d5\fc\db\aa\c2\fc\5e\1d\ae\fc\4e\ed\97\fc\d4\e6\7f\fc\f3\cc\65\fc\62\57\49\fc\c8\2f\2a\fc\19\ee\07\fc\c1\13\e2\fb\1a\05\b8\fb\78\00\89\fb\a5\11\54\fb\05\00\18\fb\82\34\d3\fa\76\92\83\fa\32\3b\26\fa\1c\2d\b7\f9\a2\a1\30\f9\23\f0\89\f8\d2\77\b5\f7\0c\65\9c\f6\f0\30\15\f5\3c\0e\cb\f2\5d\b1\ef\ee\cf\6e\da\e6\12\22\ad\76\00\00\00\00\53\1b\0f\60\a6\47\e4\6c\a2\46\5b\72\1d\05\60\75\eb\21\49\77\bd\25\9a\78\c3\45\90\79\5d\ce\4b\7a\9f\62\df\7a\a6\82\56\7b\c6\a8\b8\7b\22\e7\0a\7c\e7\cc\50\7c\5b\ec\8c\7c\d6\2c\c1\7c\d2\fe\ee\7c\0b\7e\17\7d\83\88\3b\7d\6c\ce\5b\7d\64\dd\78\7d\86\28\93\7d\57\0e\ab\7d\30\dd\c0\7d\88\d6\d4\7d\85\31\e7\7d\ea\1c\f8\7d\a3\c0\07\7e\fa\3e\16\7e\87\b5\23\7e\fd\3d\30\7e\c2\ee\3b\7e\77\db\46\7e\5d\15\51\7e\b3\ab\5a\7e\f7\ab\63\7e\2c\22\6c\7e\06\19\74\7e\18\9a\7b\7e\fa\ad\82\7e\63\5c\89\7e\4b\ac\8f\7e\fb\a3\95\7e\24\49\9b\7e\ef\a0\a0\7e\0d\b0\a5\7e\c3\7a\aa\7e\f3\04\af\7e\2a\52\b3\7e\a5\65\b7\7e\59\42\bb\7e\fd\ea\be\7e\0a\62\c2\7e\c4\a9\c5\7e\41\c4\c8\7e\65\b3\cb\7e\ed\78\ce\7e\71\16\d1\7e\62\8d\d3\7e\12\df\d5\7e\b4\0c\d8\7e\5c\17\da\7e\05\00\dc\7e\8e\c7\dd\7e\bf\6e\df\7e\47\f6\e0\7e\be\5e\e2\7e\a9\a8\e3\7e\73\d4\e4\7e\76\e2\e5\7e\f5\d2\e6\7e\20\a6\e7\7e\10\5c\e8\7e\cd\f4\e8\7e\47\70\e9\7e\59\ce\e9\7e\ca\0e\ea\7e\47\31\ea\7e\68\35\ea\7e\ab\1a\ea\7e\71\e0\e9\7e\02\86\e9\7e\88\0a\e9\7e\08\6d\e8\7e\6a\ac\e7\7e\69\c7\e6\7e\9c\bc\e5\7e\67\8a\e4\7e\fc\2e\e3\7e\57\a8\e1\7e\2f\f4\df\7e\fa\0f\de\7e\d9\f8\db\7e\94\ab\d9\7e\8d\24\d7\7e\ae\5f\d4\7e\5c\58\d1\7e\5f\09\ce\7e\cb\6c\ca\7e\e2\7b\c6\7e\ee\2e\c2\7e\1a\7d\bd\7e\35\5c\b8\7e\75\c0\b2\7e\20\9c\ac\7e\27\df\a5\7e\9f\76\9e\7e\16\4c\96\7e\ba\44\8d\7e\33\40\83\7e\28\17\78\7e\33\99\6b\7e\1a\8a\5d\7e\ed\9d\4d\7e\7a\73\3b\7e\2f\8c\26\7e\f5\3f\0e\7e\5d\aa\f1\7d\72\8c\cf\7d\1e\1a\a6\7d\fb\a0\72\7d\97\e0\30\7d\ab\b4\d9\7c\1a\0f\60\7c\dc\0b\a9\7b\76\21\72\7a\e5\64\d6\77\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\e0\ff\ff\ff\ff\ff\ff\ff\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\1f\00\00\00\00\00\00\00\65\27\0b\31\ec\c4\82\2d\92\b5\d6\2d\ad\99\0c\2e\37\17\29\2e\88\84\42\2e\8f\c6\59\2e\c6\66\6f\2e\82\df\81\2e\d9\86\8b\2e\15\c0\94\2e\48\9c\9d\2e\ae\28\a6\2e\c5\6f\ae\2e\08\7a\b6\2e\6f\4e\be\2e\cb\f2\c5\2e\03\6c\cd\2e\46\be\d4\2e\2f\ed\db\2e\df\fb\e2\2e\12\ed\e9\2e\34\c3\f0\2e\66\80\f7\2e\93\26\fe\2e\b7\5b\02\2f\42\9a\05\2f\9c\cf\08\2f\67\fc\0b\2f\37\21\0f\2f\93\3e\12\2f\f7\54\15\2f\d5\64\18\2f\97\6e\1b\2f\9f\72\1e\2f\46\71\21\2f\e3\6a\24\2f\c3\5f\27\2f\31\50\2a\2f\72\3c\2d\2f\c6\24\30\2f\6b\09\33\2f\9b\ea\35\2f\8c\c8\38\2f\71\a3\3b\2f\7c\7b\3e\2f\db\50\41\2f\b9\23\44\2f\43\f4\46\2f\9e\c2\49\2f\f2\8e\4c\2f\64\59\4f\2f\16\22\52\2f\2b\e9\54\2f\c2\ae\57\2f\fc\72\5a\2f\f6\35\5d\2f\cd\f7\5f\2f\9d\b8\62\2f\81\78\65\2f\94\37\68\2f\f0\f5\6a\2f\ab\b3\6d\2f\e0\70\70\2f\a4\2d\73\2f\0f\ea\75\2f\37\a6\78\2f\31\62\7b\2f\13\1e\7e\2f\f9\6c\80\2f\f0\ca\81\2f\f9\28\83\2f\1e\87\84\2f\68\e5\85\2f\e1\43\87\2f\92\a2\88\2f\83\01\8a\2f\bf\60\8b\2f\4d\c0\8c\2f\37\20\8e\2f\85\80\8f\2f\3f\e1\90\2f\6e\42\92\2f\1a\a4\93\2f\4c\06\95\2f\0b\69\96\2f\61\cc\97\2f\54\30\99\2f\ed\94\9a\2f\35\fa\9b\2f\32\60\9d\2f\ee\c6\9e\2f\70\2e\a0\2f\bf\96\a1\2f\e5\ff\a2\2f\e8\69\a4\2f\d1\d4\a5\2f\a8\40\a7\2f\74\ad\a8\2f\3e\1b\aa\2f\0e\8a\ab\2f\eb\f9\ac\2f\df\6a\ae\2f\f0\dc\af\2f\27\50\b1\2f\8d\c4\b2\2f\29\3a\b4\2f\04\b1\b5\2f\26\29\b7\2f\99\a2\b8\2f\63\1d\ba\2f\8f\99\bb\2f\24\17\bd\2f\2b\96\be\2f\ae\16\c0\2f\b6\98\c1\2f\4b\1c\c3\2f\76\a1\c4\2f\42\28\c6\2f\b8\b0\c7\2f\e0\3a\c9\2f\c6\c6\ca\2f\72\54\cc\2f\ef\e3\cd\2f\47\75\cf\2f\84\08\d1\2f\b2\9d\d2\2f\da\34\d4\2f\07\ce\d5\2f\45\69\d7\2f\9f\06\d9\2f\20\a6\da\2f\d4\47\dc\2f\c7\eb\dd\2f\05\92\df\2f\9a\3a\e1\2f\94\e5\e2\2f\ff\92\e4\2f\e8\42\e6\2f\5c\f5\e7\2f\6a\aa\e9\2f\1f\62\eb\2f\8b\1c\ed\2f\ba\d9\ee\2f\be\99\f0\2f\a4\5c\f2\2f\7d\22\f4\2f\59\eb\f5\2f\48\b7\f7\2f\5b\86\f9\2f\a5\58\fb\2f\36\2e\fd\2f\20\07\ff\2f\bc\71\00\30\a7\61\01\30\5d\53\02\30\e6\46\03\30\4e\3c\04\30\a0\33\05\30\e5\2c\06\30\2b\28\07\30\7b\25\08\30\e3\24\09\30\6f\26\0a\30\2c\2a\0b\30\27\30\0c\30\6d\38\0d\30\0d\43\0e\30\15\50\0f\30\95\5f\10\30\9b\71\11\30\37\86\12\30\7b\9d\13\30\77\b7\14\30\3e\d4\15\30\e0\f3\16\30\73\16\18\30\08\3c\19\30\b6\64\1a\30\90\90\1b\30\ad\bf\1c\30\24\f2\1d\30\0c\28\1f\30\7f\61\20\30\96\9e\21\30\6c\df\22\30\1d\24\24\30\c5\6c\25\30\84\b9\26\30\78\0a\28\30\c4\5f\29\30\88\b9\2a\30\ea\17\2c\30\10\7b\2d\30\20\e3\2e\30\45\50\30\30\a9\c2\31\30\7b\3a\33\30\ea\b7\34\30\29\3b\36\30\6e\c4\37\30\ee\53\39\30\e7\e9\3a\30\96\86\3c\30\3c\2a\3e\30\1f\d5\3f\30\89\87\41\30\c8\41\43\30\2e\04\45\30\14\cf\46\30\d7\a2\48\30\da\7f\4a\30\88\66\4c\30\52\57\4e\30\b2\52\50\30\2a\59\52\30\46\6b\54\30\9c\89\56\30\ce\b4\58\30\8b\ed\5a\30\8f\34\5d\30\a7\8a\5f\30\b2\f0\61\30\a2\67\64\30\7f\f0\66\30\6b\8c\69\30\a3\3c\6c\30\85\02\6f\30\93\df\71\30\79\d5\74\30\13\e6\77\30\75\13\7b\30\f2\5f\7e\30\16\e7\80\30\8c\b0\82\30\0e\8e\84\30\8c\81\86\30\40\8d\88\30\c3\b3\8a\30\1e\f8\8c\30\e5\5d\8f\30\5e\e9\91\30\ad\9f\94\30\1c\87\97\30\71\a7\9a\30\76\0a\9e\30\bb\bc\a1\30\be\ce\a5\30\c2\56\aa\30\d7\73\af\30\3b\53\b5\30\87\3a\bc\30\ff\9c\c4\30\e0\4e\cf\30\f3\1c\de\30\c9\4e\f6\30\34\a3\ed\30\a4\6d\0b\2f\49\ca\39\2f\7f\64\5a\2f\bb\72\74\2f\b7\49\85\2f\73\06\8f\2f\6b\cc\97\2f\f7\d5\9f\2f\60\4a\a7\2f\7f\45\ae\2f\d9\db\b4\2f\0b\1d\bb\2f\43\15\c1\2f\35\ce\c6\2f\c3\4f\cc\2f\69\a0\d1\2f\93\c5\d6\2f\d4\c3\db\2f\16\9f\e0\2f\b5\5a\e5\2f\a0\f9\e9\2f\66\7e\ee\2f\48\eb\f2\2f\47\42\f7\2f\2c\85\fb\2f\91\b5\ff\2f\74\ea\01\30\3f\f2\03\30\c2\f2\05\30\89\ec\07\30\12\e0\09\30\d4\cd\0b\30\3a\b6\0d\30\aa\99\0f\30\80\78\11\30\14\53\13\30\b8\29\15\30\b8\fc\16\30\5d\cc\18\30\ec\98\1a\30\a4\62\1c\30\c3\29\1e\30\85\ee\1f\30\20\b1\21\30\cc\71\23\30\bb\30\25\30\1f\ee\26\30\28\aa\28\30\06\65\2a\30\e4\1e\2c\30\f1\d7\2d\30\55\90\2f\30\3d\48\31\30\d1\ff\32\30\3b\b7\34\30\a2\6e\36\30\2f\26\38\30\0a\de\39\30\5b\96\3b\30\48\4f\3d\30\fa\08\3f\30\98\c3\40\30\4a\7f\42\30\39\3c\44\30\8e\fa\45\30\71\ba\47\30\0d\7c\49\30\8d\3f\4b\30\1c\05\4d\30\e7\cc\4e\30\1c\97\50\30\ea\63\52\30\82\33\54\30\16\06\56\30\da\db\57\30\04\b5\59\30\cb\91\5b\30\6a\72\5d\30\1e\57\5f\30\27\40\61\30\c6\2d\63\30\42\20\65\30\e6\17\67\30\fd\14\69\30\db\17\6b\30\d5\20\6d\30\4a\30\6f\30\9a\46\71\30\2d\64\73\30\75\89\75\30\e7\b6\77\30\05\ed\79\30\58\2c\7c\30\76\75\7e\30\7f\64\80\30\d1\93\81\30\0f\c9\82\30\a0\04\84\30\f7\46\85\30\8f\90\86\30\f2\e1\87\30\b9\3b\89\30\8b\9e\8a\30\26\0b\8c\30\5c\82\8d\30\1a\05\8f\30\6f\94\90\30\8c\31\92\30\d1\dd\93\30\d5\9a\95\30\70\6a\97\30\cc\4e\99\30\7a\4a\9b\30\8e\60\9d\30\c2\94\9f\30\ae\eb\a1\30\0c\6b\a4\30\2b\1a\a7\30\90\02\aa\30\f7\30\ad\30\00\b7\b0\30\16\ae\b4\30\ef\3c\b9\30\f6\a2\be\30\9f\53\c5\30\06\47\ce\30\e2\53\dc\30\00\00\00\00\50\50\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\00\00\00\00\00\8c\00\00\00\14\00\00\00\04\00\00\00\0a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\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\00\00\00\00\00\00\30\61\73\73\65\72\74\20\66\61\69\6c\65\64\20\28\61\73\73\65\72\74\20\66\61\69\6c\65\64\3a\20\6e\69\6c\20\6d\61\70\2e\6d\61\70\2e\77\61\3a\32\30\3a\38\70\61\6e\69\63\3a\20\74\72\75\65\66\61\6c\73\65\4e\61\4e\2b\49\6e\66\2d\49\6e\66\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\0a\5b\2f\5d\72\61\6e\64\2e\47\65\74\52\61\6e\64\6f\6d\44\61\74\61\3a\20\75\6e\73\75\70\70\6f\72\74\69\6e\76\61\6c\69\64\20\61\72\67\75\6d\65\6e\74\20\74\6f\20\49\6e\74\33\31\6e\72\61\6e\64\2e\77\61\3a\31\31\33\3a\38\69\6e\76\61\6c\69\64\20\61\72\67\75\6d\65\6e\74\20\74\6f\20\49\6e\74\36\33\6e\72\61\6e\64\2e\77\61\3a\39\35\3a\38\69\6e\76\61\6c\69\64\20\61\72\67\75\6d\65\6e\74\20\74\6f\20\49\6e\74\6e\72\61\6e\64\2e\77\61\3a\31\35\36\3a\38\69\6e\76\61\6c\69\64\20\61\72\67\75\6d\65\6e\74\20\74\6f\20\53\68\75\66\66\6c\65\72\61\6e\64\2e\77\61\3a\32\33\30\3a\38\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\01\00\00\00\ff\ff\ff\ff\02\00\00\00\ff\ff\ff\ff\02\00\00\00\fe\ff\ff\ff\16\00\00\00\17\00\00\00\02\00\00\00\fd\ff\ff\ff\16\00\00\00\17\00\00\00\18\00\00\00\00\00\00\00\03\00\00\00\ff\ff\ff\ff\03\00\00\00\fc\ff\ff\ff\19\00\00\00\00\00\00\00\a8\73\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b0\73\00\00\b8\73\00\00\c8\73\00\00\00\00\00\00\e0\73\00\00\00\00\00\00\00\00\00\00\e8\73\00\00") + (elem (i32.const 1) $$string.$$compAddr) + (elem (i32.const 2) $$u8.$$block.$$onFree) + (elem (i32.const 3) $$string.underlying.$$onFree) + (elem (i32.const 4) $$void.$$block.$$onFree) + (elem (i32.const 5) $$void.$ref.underlying.$$onFree) + (elem (i32.const 6) $$i`0`.underlying.$$onFree) + (elem (i32.const 7) $$runtime.mapNode.$$onFree) + (elem (i32.const 8) $$runtime.mapNode.$$block.$$onFree) + (elem (i32.const 9) $$runtime.mapNode.$slice.underlying.$$onFree) + (elem (i32.const 10) $$runtime.mapImp.$$onFree) + (elem (i32.const 11) $$runtime.mapImp.$$block.$$onFree) + (elem (i32.const 12) $$runtime.mapImp.$ref.underlying.$$onFree) + (elem (i32.const 13) $$runtime.mapIter.$$onFree) + (elem (i32.const 14) $$runtime.mapNode.$array1.underlying.$$onFree) + (elem (i32.const 15) $$math$rand.Source.underlying.$$onFree) + (elem (i32.const 16) $$math$rand.Source64.underlying.$$onFree) + (elem (i32.const 17) $$math$rand.Rand.$$onFree) + (elem (i32.const 18) $$errors.errorString.$$onFree) + (elem (i32.const 19) $math$rand.Rand.Intn.$bound) + (elem (i32.const 20) $$math$rand.Rand.$$block.$$onFree) + (elem (i32.const 21) $$math$rand.Rand.$ref.underlying.$$onFree) + (elem (i32.const 22) $math$rand.rngSource.Int63) + (elem (i32.const 23) $math$rand.rngSource.Seed) + (elem (i32.const 24) $math$rand.rngSource.Uint64) + (elem (i32.const 25) $errors.errorString.Error) +) diff --git a/w4-snake/wasm4.css b/w4-snake/wasm4.css new file mode 100644 index 00000000..7c7e0155 --- /dev/null +++ b/w4-snake/wasm4.css @@ -0,0 +1 @@ +html,body{height:100%;margin:0}@font-face{font-family:wasm4-font;src:url(data:font/woff2;base64,d09GMgABAAAAAAegAA0AAAAAKHwAAAdOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYGYAA0CAQRCArGHLlRC4FCAAE2AiQDgUIEIAWDJgcgG4ggUVRQhkQRbBylAWCR/eGAmzBgcbVSEQV1MFRs8Ts/TVirjdcmzZum+foZqYGq4TdA2FbzSDx8f5+ee7Ns74fim/BWoE4AP1Wwc6lakA20VO54RMrR2gpfsF97s/P3xKMD8UIkBZNFk2ondPz/n9v9G4ROvGcJ9ejaJw8RK4kYUOt8zO4KgUDgofBQGDwMCjsf2FAHKMuSxfQKGICKTqpw8TAYfHywFNs02zbbJDAgUAD+z7l4byADjcSJjXhAkX+V15z5PA0HfmEHdHqW5OfXT1PsVLlV5AkPgm14EPW/1ds0nWuhRkHhmb/7JBfdZazTpbTGMrxynHPs9XO634fF7LHGGYvKrld7xSsgpTyfJqABJJGiNEP0JXXyPy/gUd+Oq0QckHKAEocXne/KDv7oOwSG0MMrDDRgQ0HCAFZ0Ar7LFhgi+t39/2Lzv/+fFLDLD/G/EugBH+CBbj+wXA/giv6ofkm3ZAqiNhrXlgkd4AIQwJg18/ES0QEKIZXedNDpbH9FmDzLD3D97q2rzT3TRXdngPKMRazVYXWiUtlpVnZTprWt4J6wbQiLK7o/u+vhZr91OWHc2/gH+Qyq505NGWB7ui1DWkl94VWLPsznaf1Socl++32X0B1fLASbyLYi6TAO6LlJoPwXg5YAIDQZ2GxXd7yaLzKdTNrAjkIbD1Sca4fUrWmNr+IUViUJVbuuu66KDZXmnH4fMCQ5ukPCRJDdgit52b4Et5RuCK2ZjuBXWu6K6zJkW4qAxA6Y0BWJpS9UgZPLQ3iSuQWAodKrD1VK44bhgApzKGely9pyBS45qWsGAx7ELrGRNkqZX2rpG1no3KgrF9zv29HXdcAmEYpTeqXQunmcM1KNLri1l3ETKhr/jkuZpYQWCtMUkAOA+G31Ezc8TlQCcX0AFiJM8A/Ja5ANNF3s+Aj1HaR91PPZwCslbEBH81Bta7KBGjhAdpteqxIHxKrVrglxhbYG0qRrxPwYd+RA3LtpvfDZhqQKKExdOI4SSCr8hboPCCdUxuYcsLQ2TWw8XO+W8S8kg28tTsGhGLgAGRwq7qpSd5XiJn8+0m7km8BBpAhQ5rqdtpQ58nsk6UVIA1DbFmX+klm8NFI+mk+Ll5BXDAY1ZsGRNeDGIUiLnIISx8u1n++kPlx5KbJLJOSiIDP1dfY4drhKlPE7oTwc9gEI5vBFDpQ2ih/QCB4V+GrFeAMbdFltBSpSqZm9jTuVVM1CVTyG+Haj1uZhNOXIU0xda+WccPIV0vAyy13AXHS7odKqX6lPnNQW29uptFF7hjud+bei1obGQ3mmpvE7YI+21Nlt7iq+tVb3XTcUFG5q31u2uVI1qvk971yZ+/NvzpZV1dNa7Wrems+vXZ7G0bjYrBMdM44xvrdfytxyouoAmPMIUnc0H1njzFfrgVdARZ2VnWXVw+0qv/fX8iYj698zzrSTOlorbpYF7dsMJFE7yW5kV/NV/wwJ/6VW+S3vk6u7s/frQR4kpi7JSQUksyJhl0BSNPS65eUmD+i8UGEYHhd5zmQA0oU5xN+qs8fdwfJZAQaqNDFTgSowOASAVTi4nNRD5CwJVyFK13cHxDEeWVQDvZU3CfsgXuwhIGxxAGE3sxM1QNCL5oTRpAtVec0/pJXNfeLQLO+973quQzeYBhK7GMFx18+4DtE1AX90lFeaawcfPwKbh9CZncWGRig514Ca6r5aIcMk1u7R7OyRfIjVldpkv/8QTig8xMfDoNqXMmPq6rWqoKMWvmXNIhNcLI1TokIhQLNwOGTfZxXWtBtNJFOwSQNl+3DGVwiBVU4+Oq0FeJi5E8VTE1ABD05R60ZWTc49DS4M1nMCCzmZSm7M8UWDSoiGvZPrWrGYd4bKvbh8oXu1Pnv2vrfKud0bz5t2kT7Ti8FNP4L9IJy/PdAULtKZAlxz2FahwUZvcI6aZm61UI4qEJ3XUpHb3NZcIBs7HYrbHf7GgFYvCv4JTMlVK5o9e10zmwVpEoUbhD8pWxVbCX6xdKM4RGTiZ/2PaYEZMh7uAHi1vTTwNaeeqsmWeoX+fERAY8Dlq8IlZUVTrzi35D7ANkN8liq6UConAkh2mBUCA+jNZ4cnuXvJDuFGvEUlaWfzT5MjGonslkNYRjXtmwJEQgbrm1xCr4/AZMWbVPGZ3SvOH9q/AaXqXNGRhP+VuL2mvmu8/zv9BnB5l14cMu1MBSJ04++6QDnTv1bPp6oZnRul1ORTFVkMUlS1LsSh2h2L41VW44wWXcvRhJYwoLfn7pCnX7rB3Zs4otOwC568tbQs/egw8kfbjvhpM06nOc/rWqbg7EicnAydmY7O4nomxNHJws4WxYXFJFGl55716GhGRqqjKI9kp3x0+aiPQqzthaSFKiR6LmZAzFysLXdGb3rZfIi6TEU7jgcy2geINtNWQpaBCnYWTmxqWDw0wzgfrJvzphPhoIstcvGIzuZO4UN1requPbF1HWhqLtgPf3YiwnTA/xIgKAA=)} diff --git a/w4-snake/wasm4.js b/w4-snake/wasm4.js new file mode 100644 index 00000000..e13db97d --- /dev/null +++ b/w4-snake/wasm4.js @@ -0,0 +1,360 @@ +var wasm4=function(A){"use strict";/** + * @license + * Copyright 2019 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */var ve;const pt=globalThis,_t=pt.ShadowRoot&&(pt.ShadyCSS===void 0||pt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,St=Symbol(),Dt=new WeakMap;let Nt=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==St)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(_t&&t===void 0){const s=e!==void 0&&e.length===1;s&&(t=Dt.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&Dt.set(e,t))}return t}toString(){return this.cssText}};const _e=o=>new Nt(typeof o=="string"?o:o+"",void 0,St),ft=(o,...t)=>{const e=o.length===1?o[0]:t.reduce((s,i,n)=>s+(r=>{if(r._$cssResult$===!0)return r.cssText;if(typeof r=="number")return r;throw Error("Value passed to 'css' function must be a 'css' function result: "+r+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+o[n+1],o[0]);return new Nt(e,o,St)},Se=(o,t)=>{if(_t)o.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(const e of t){const s=document.createElement("style"),i=pt.litNonce;i!==void 0&&s.setAttribute("nonce",i),s.textContent=e.cssText,o.appendChild(s)}},Bt=_t?o=>o:o=>o instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return _e(e)})(o):o;/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const{is:xe,defineProperty:ke,getOwnPropertyDescriptor:Ce,getOwnPropertyNames:Te,getOwnPropertySymbols:Pe,getPrototypeOf:$e}=Object,U=globalThis,Ft=U.trustedTypes,Ie=Ft?Ft.emptyScript:"",xt=U.reactiveElementPolyfillSupport,tt=(o,t)=>o,mt={toAttribute(o,t){switch(t){case Boolean:o=o?Ie:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,t){let e=o;switch(t){case Boolean:e=o!==null;break;case Number:e=o===null?null:Number(o);break;case Object:case Array:try{e=JSON.parse(o)}catch{e=null}}return e}},kt=(o,t)=>!xe(o,t),Ht={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),U.litPropertyMetadata??(U.litPropertyMetadata=new WeakMap);class Y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=Ht){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){const s=Symbol(),i=this.getPropertyDescriptor(t,s,e);i!==void 0&&ke(this.prototype,t,i)}}static getPropertyDescriptor(t,e,s){const{get:i,set:n}=Ce(this.prototype,t)??{get(){return this[e]},set(r){this[e]=r}};return{get(){return i==null?void 0:i.call(this)},set(r){const c=i==null?void 0:i.call(this);n.call(this,r),this.requestUpdate(t,c,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Ht}static _$Ei(){if(this.hasOwnProperty(tt("elementProperties")))return;const t=$e(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(tt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(tt("properties"))){const e=this.properties,s=[...Te(e),...Pe(e)];for(const i of s)this.createProperty(i,e[i])}const t=this[Symbol.metadata];if(t!==null){const e=litPropertyMetadata.get(t);if(e!==void 0)for(const[s,i]of e)this.elementProperties.set(s,i)}this._$Eh=new Map;for(const[e,s]of this.elementProperties){const i=this._$Eu(e,s);i!==void 0&&this._$Eh.set(i,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const i of s)e.unshift(Bt(i))}else t!==void 0&&e.push(Bt(t));return e}static _$Eu(t,e){const s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var t;this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),(t=this.constructor.l)==null||t.forEach(e=>e(this))}addController(t){var e;(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&((e=t.hostConnected)==null||e.call(t))}removeController(t){var e;(e=this._$EO)==null||e.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Se(t,this.constructor.elementStyles),t}connectedCallback(){var t;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostConnected)==null?void 0:s.call(e)})}enableUpdating(t){}disconnectedCallback(){var t;(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostDisconnected)==null?void 0:s.call(e)})}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$EC(t,e){var n;const s=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,s);if(i!==void 0&&s.reflect===!0){const r=(((n=s.converter)==null?void 0:n.toAttribute)!==void 0?s.converter:mt).toAttribute(e,s.type);this._$Em=t,r==null?this.removeAttribute(i):this.setAttribute(i,r),this._$Em=null}}_$AK(t,e){var n;const s=this.constructor,i=s._$Eh.get(t);if(i!==void 0&&this._$Em!==i){const r=s.getPropertyOptions(i),c=typeof r.converter=="function"?{fromAttribute:r.converter}:((n=r.converter)==null?void 0:n.fromAttribute)!==void 0?r.converter:mt;this._$Em=i,this[i]=c.fromAttribute(e,r.type),this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){if(s??(s=this.constructor.getPropertyOptions(t)),!(s.hasChanged??kt)(this[t],e))return;this.P(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,e,s){this._$AL.has(t)||this._$AL.set(t,e),s.reflect===!0&&this._$Em!==t&&(this._$Ej??(this._$Ej=new Set)).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var s;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[n,r]of this._$Ep)this[n]=r;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[n,r]of i)r.wrapped!==!0||this._$AL.has(n)||this[n]===void 0||this.P(n,this[n],r)}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),(s=this._$EO)==null||s.forEach(i=>{var n;return(n=i.hostUpdate)==null?void 0:n.call(i)}),this.update(e)):this._$EU()}catch(i){throw t=!1,this._$EU(),i}t&&this._$AE(e)}willUpdate(t){}_$AE(t){var e;(e=this._$EO)==null||e.forEach(s=>{var i;return(i=s.hostUpdated)==null?void 0:i.call(s)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&(this._$Ej=this._$Ej.forEach(e=>this._$EC(e,this[e]))),this._$EU()}updated(t){}firstUpdated(t){}}Y.elementStyles=[],Y.shadowRootOptions={mode:"open"},Y[tt("elementProperties")]=new Map,Y[tt("finalized")]=new Map,xt==null||xt({ReactiveElement:Y}),(U.reactiveElementVersions??(U.reactiveElementVersions=[])).push("2.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const et=globalThis,yt=et.trustedTypes,Gt=yt?yt.createPolicy("lit-html",{createHTML:o=>o}):void 0,Wt="$lit$",O=`lit$${(Math.random()+"").slice(9)}$`,zt="?"+O,Ue=`<${zt}>`,D=document,st=()=>D.createComment(""),it=o=>o===null||typeof o!="object"&&typeof o!="function",Vt=Array.isArray,Oe=o=>Vt(o)||typeof(o==null?void 0:o[Symbol.iterator])=="function",Ct=`[ +\f\r]`,nt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,jt=/-->/g,Yt=/>/g,N=RegExp(`>|${Ct}(?:([^\\s"'>=/]+)(${Ct}*=${Ct}*(?:[^ +\f\r"'\`<>=]|("|')|))|$)`,"g"),Kt=/'/g,qt=/"/g,Xt=/^(?:script|style|textarea|title)$/i,Me=o=>(t,...e)=>({_$litType$:o,strings:t,values:e}),C=Me(1),K=Symbol.for("lit-noChange"),S=Symbol.for("lit-nothing"),Jt=new WeakMap,B=D.createTreeWalker(D,129);function Zt(o,t){if(!Array.isArray(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return Gt!==void 0?Gt.createHTML(t):t}const Le=(o,t)=>{const e=o.length-1,s=[];let i,n=t===2?"":"",r=nt;for(let c=0;c"?(r=i??nt,d=-1):l[1]===void 0?d=-2:(d=r.lastIndex-l[2].length,h=l[1],r=l[3]===void 0?N:l[3]==='"'?qt:Kt):r===qt||r===Kt?r=N:r===jt||r===Yt?r=nt:(r=N,i=void 0);const w=r===N&&o[c+1].startsWith("/>")?" ":"";n+=r===nt?a+Ue:d>=0?(s.push(h),a.slice(0,d)+Wt+a.slice(d)+O+w):a+O+(d===-2?c:w)}return[Zt(o,n+(o[e]||"")+(t===2?"":"")),s]};class rt{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let n=0,r=0;const c=t.length-1,a=this.parts,[h,l]=Le(t,e);if(this.el=rt.createElement(h,s),B.currentNode=this.el.content,e===2){const d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(i=B.nextNode())!==null&&a.length0){i.textContent=yt?yt.emptyScript:"";for(let w=0;w2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=S}_$AI(t,e=this,s,i){const n=this.strings;let r=!1;if(n===void 0)t=q(this,t,e,0),r=!it(t)||t!==this._$AH&&t!==K,r&&(this._$AH=t);else{const c=t;let a,h;for(t=n[0],a=0;a{const s=(e==null?void 0:e.renderBefore)??t;let i=s._$litPart$;if(i===void 0){const n=(e==null?void 0:e.renderBefore)??null;s._$litPart$=i=new ot(t.insertBefore(st(),n),n,void 0,e??{})}return i._$AI(o),i};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */class M extends Y{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;const t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=He(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Do)==null||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Do)==null||t.setConnected(!1)}render(){return K}}M._$litElement$=!0,M.finalized=!0,(ve=globalThis.litElementHydrateSupport)==null||ve.call(globalThis,{LitElement:M});const Pt=globalThis.litElementPolyfillSupport;Pt==null||Pt({LitElement:M}),(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const bt=o=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(o,t)}):customElements.define(o,t)};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Ge={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt},We=(o=Ge,t,e)=>{const{kind:s,metadata:i}=e;let n=globalThis.litPropertyMetadata.get(i);if(n===void 0&&globalThis.litPropertyMetadata.set(i,n=new Map),n.set(e.name,o),s==="accessor"){const{name:r}=e;return{set(c){const a=t.get.call(this);t.set.call(this,c),this.requestUpdate(r,a,o)},init(c){return c!==void 0&&this.P(r,void 0,o),c}}}if(s==="setter"){const{name:r}=e;return function(c){const a=this[r];t.call(this,c),this.requestUpdate(r,a,o)}}throw Error("Unsupported decorator location: "+s)};function ze(o){return(t,e)=>typeof e=="object"?We(o,t,e):((s,i,n)=>{const r=i.hasOwnProperty(n);return i.constructor.createProperty(n,r?{...s,wrapped:!0}:s),r?Object.getOwnPropertyDescriptor(i,n):void 0})(o,t,e)}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function at(o){return ze({...o,state:!0,attribute:!1})}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Qt=(o,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(o,t,e),e);/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function ct(o,t){return(e,s,i)=>{const n=r=>{var c;return((c=r.renderRoot)==null?void 0:c.querySelector(o))??null};if(t){const{get:r,set:c}=typeof s=="object"?e:i??(()=>{const a=Symbol();return{get(){return this[a]},set(h){this[a]=h}}})();return Qt(e,s,{get(){let a=r.call(this);return a===void 0&&(a=n(this),(a!==null||this.hasUpdated)&&c.call(this,a)),a}})}return Qt(e,s,{get(){return n(this)}})}}const E=160,x=160,X=1024,Ve="WASM-4",je=[14743759,8831084,3172432,464929],$t=4,lt=20,Ye=22,te=26,ee=28,Ke=30,qe=31,Xe=32,Je=160,L=1,F=2,J=16,Z=32,H=64,G=128,Ze=1,Qe=2,se=1,ie=2,ts=Uint8Array.of(255,255,255,255,255,255,255,255,199,199,199,207,207,255,207,255,147,147,147,255,255,255,255,255,147,1,147,147,147,1,147,255,239,131,47,131,233,3,239,255,157,91,55,239,217,181,115,255,143,39,39,143,37,51,129,255,207,207,207,255,255,255,255,255,243,231,207,207,207,231,243,255,159,207,231,231,231,207,159,255,255,147,199,1,199,147,255,255,255,231,231,129,231,231,255,255,255,255,255,255,255,207,207,159,255,255,255,129,255,255,255,255,255,255,255,255,255,207,207,255,253,251,247,239,223,191,127,255,199,179,57,57,57,155,199,255,231,199,231,231,231,231,129,255,131,57,241,195,135,31,1,255,129,243,231,195,249,57,131,255,227,195,147,51,1,243,243,255,3,63,3,249,249,57,131,255,195,159,63,3,57,57,131,255,1,57,243,231,207,207,207,255,135,59,27,135,97,121,131,255,131,57,57,129,249,243,135,255,255,207,207,255,207,207,255,255,255,207,207,255,207,207,159,255,243,231,207,159,207,231,243,255,255,255,1,255,1,255,255,255,159,207,231,243,231,207,159,255,131,1,57,243,199,255,199,255,131,125,69,85,65,127,131,255,199,147,57,57,1,57,57,255,3,57,57,3,57,57,3,255,195,153,63,63,63,153,195,255,7,51,57,57,57,51,7,255,1,63,63,3,63,63,1,255,1,63,63,3,63,63,63,255,193,159,63,49,57,153,193,255,57,57,57,1,57,57,57,255,129,231,231,231,231,231,129,255,249,249,249,249,249,57,131,255,57,51,39,15,7,35,49,255,159,159,159,159,159,159,129,255,57,17,1,1,41,57,57,255,57,25,9,1,33,49,57,255,131,57,57,57,57,57,131,255,3,57,57,57,3,63,63,255,131,57,57,57,33,51,133,255,3,57,57,49,7,35,49,255,135,51,63,131,249,57,131,255,129,231,231,231,231,231,231,255,57,57,57,57,57,57,131,255,57,57,57,17,131,199,239,255,57,57,41,1,1,17,57,255,57,17,131,199,131,17,57,255,153,153,153,195,231,231,231,255,1,241,227,199,143,31,1,255,195,207,207,207,207,207,195,255,127,191,223,239,247,251,253,255,135,231,231,231,231,231,135,255,199,147,255,255,255,255,255,255,255,255,255,255,255,255,255,1,239,247,255,255,255,255,255,255,255,255,131,249,129,57,129,255,63,63,3,57,57,57,131,255,255,255,129,63,63,63,129,255,249,249,129,57,57,57,129,255,255,255,131,57,1,63,131,255,241,231,129,231,231,231,231,255,255,255,129,57,57,129,249,131,63,63,3,57,57,57,57,255,231,255,199,231,231,231,129,255,243,255,227,243,243,243,243,135,63,63,49,3,7,35,49,255,199,231,231,231,231,231,129,255,255,255,3,73,73,73,73,255,255,255,3,57,57,57,57,255,255,255,131,57,57,57,131,255,255,255,3,57,57,3,63,63,255,255,129,57,57,129,249,249,255,255,145,143,159,159,159,255,255,255,131,63,131,249,3,255,231,231,129,231,231,231,231,255,255,255,57,57,57,57,129,255,255,255,153,153,153,195,231,255,255,255,73,73,73,73,129,255,255,255,57,1,199,1,57,255,255,255,57,57,57,129,249,131,255,255,1,227,199,143,1,255,243,231,231,207,231,231,243,255,231,231,231,231,231,231,231,255,159,207,207,231,207,207,159,255,255,255,143,69,227,255,255,255,255,255,255,255,255,147,147,255,131,41,41,17,41,41,131,255,131,57,9,17,33,57,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,131,17,33,125,33,17,131,255,131,17,9,125,9,17,131,255,131,17,57,85,17,17,131,255,131,17,17,85,57,17,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,231,255,231,231,199,199,199,255,239,131,41,47,41,131,239,255,195,153,159,3,159,159,1,255,255,165,219,219,219,165,255,255,153,153,195,129,231,129,231,255,231,231,231,255,231,231,231,255,195,153,135,219,225,153,195,255,147,255,255,255,255,255,255,255,195,189,102,94,94,102,189,195,135,195,147,195,255,255,255,255,255,201,147,39,147,201,255,255,255,255,129,249,249,255,255,255,255,255,255,255,255,255,255,255,195,189,70,90,70,90,189,195,131,255,255,255,255,255,255,255,239,215,239,255,255,255,255,255,231,231,129,231,231,255,129,255,199,243,231,195,255,255,255,255,195,231,243,199,255,255,255,255,247,239,255,255,255,255,255,255,255,255,51,51,51,51,9,63,193,149,181,149,193,245,245,255,255,255,255,207,207,255,255,255,255,255,255,255,255,255,247,207,231,199,231,195,255,255,255,255,199,147,147,199,255,255,255,255,255,39,147,201,147,39,255,255,189,59,183,173,217,177,125,255,189,59,183,169,221,187,113,255,29,187,215,45,217,177,125,255,199,255,199,159,57,1,131,255,223,239,199,147,57,1,57,255,247,239,199,147,57,1,57,255,199,147,199,147,57,1,57,255,203,167,199,147,57,1,57,255,147,255,199,147,57,1,57,255,239,215,199,147,57,1,57,255,193,135,39,33,7,39,33,255,195,153,63,63,153,195,247,207,223,239,1,63,3,63,1,255,247,239,1,63,3,63,1,255,199,147,1,63,3,63,1,255,147,255,1,63,3,63,1,255,239,247,129,231,231,231,129,255,247,239,129,231,231,231,129,255,231,195,129,231,231,231,129,255,153,255,129,231,231,231,129,255,135,147,153,9,153,147,135,255,203,167,25,9,1,33,49,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,187,215,239,215,187,255,255,131,57,49,41,25,57,131,255,223,239,57,57,57,57,131,255,247,239,57,57,57,57,131,255,199,147,255,57,57,57,131,255,147,255,57,57,57,57,131,255,247,239,153,153,195,231,231,255,63,3,57,57,57,3,63,255,195,153,153,147,153,137,147,255,223,239,131,249,129,57,129,255,247,239,131,249,129,57,129,255,199,147,131,249,129,57,129,255,203,167,131,249,129,57,129,255,147,255,131,249,129,57,129,255,239,215,131,249,129,57,129,255,255,255,131,233,129,47,131,255,255,255,129,63,63,129,247,207,223,239,131,57,1,63,131,255,247,239,131,57,1,63,131,255,199,147,131,57,1,63,131,255,147,255,131,57,1,63,131,255,223,239,255,199,231,231,129,255,247,239,255,199,231,231,129,255,199,147,255,199,231,231,129,255,147,255,199,231,231,231,129,255,155,135,103,131,57,57,131,255,203,167,3,57,57,57,57,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,231,255,129,255,231,255,255,255,255,131,49,41,25,131,255,223,239,57,57,57,57,129,255,247,239,57,57,57,57,129,255,199,147,255,57,57,57,129,255,147,255,57,57,57,57,129,255,247,239,57,57,57,129,249,131,63,63,3,57,57,3,63,63,147,255,57,57,57,129,249,131);function It(o){const t=new URL(location.href),e=t.searchParams.get(o);return e??new URL(t.hash.substring(1),"https://x").searchParams.get(o)}function ne(){if(document.fullscreenElement==null){let o=function(){const e=window.frameElement;e&&(e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.zIndex="99999",e.style.width="100%",e.style.height="100%")};const t=document.body.requestFullscreen&&document.body.requestFullscreen({navigationUI:"hide"});t?t.catch(o):o()}}async function es(o){try{await navigator.clipboard.writeText(o)}catch{let t=document.createElement("dialog");t.title="Netplay URL",t.textContent=o,document.body.append(t);let e=document.createElement("button");e.textContent="Copy",e.style.marginLeft="1em",e.onclick=()=>navigator.clipboard.writeText(o),t.appendChild(e);let s=document.createElement("button");s.textContent="Close",s.style.marginLeft="1em",s.onclick=()=>{document.body.removeChild(t)},t.appendChild(s),t.showModal()}}const ss="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#".split(""),re=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0];function oe(o){const t=o.length,e=t%4,s=e?t+4-e:t;let i="",n=0,r=0;for(;n=1;){const h=Math.floor(r/a)%85;i+=ss[h],a/=85}r=0}}return i}function ae(o,t){let e=0,s=0,i=0;const n=o.length,r=t.length;if(o.length%5==0)for(;s=re.length)return e;if(i=i*85+re[c],s%5==0){let a=16777216;for(;a>=1;){if(e>=r)return e;t[e++]=i/a%256,a/=256}i=0}}return e}class ht{constructor(){this.memory=new ArrayBuffer(65536),this.globals={},this.diskBuffer=new ArrayBuffer(X),this.diskSize=0}read(t){new Uint8Array(this.memory).set(new Uint8Array(t.memory.buffer)),this.globals={};for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&(this.globals[e]=s.value.toString())}this.diskSize=t.diskSize,new Uint8Array(this.diskBuffer).set(new Uint8Array(t.diskBuffer,0,t.diskSize))}write(t){new Uint8Array(t.memory.buffer).set(new Uint8Array(this.memory));for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&e in this.globals&&(s.value=this.globals[e])}t.diskSize=this.diskSize,new Uint8Array(t.diskBuffer).set(new Uint8Array(this.diskBuffer,0,this.diskSize))}toBytes(){const t=new TextEncoder().encode(JSON.stringify(this.globals)),e=new Uint8Array(65544+t.byteLength+this.diskSize),s=new DataView(e.buffer,e.byteOffset,e.byteLength);e.set(new Uint8Array(this.memory),0);let i=65536;return s.setUint32(i,t.byteLength),e.set(t,i+4),i+=4+t.byteLength,s.setUint32(i,this.diskSize),e.set(new Uint8Array(this.diskBuffer,0,this.diskSize),i+4),e}fromBytes(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength);new Uint8Array(this.memory).set(t.subarray(0,65536));let s=65536;const i=e.getUint32(s),n=t.slice(s+4,s+4+i);this.globals=JSON.parse(new TextDecoder().decode(n)),s+=4+i,this.diskSize=e.getUint32(s),new Uint8Array(this.diskBuffer).set(t.subarray(s+4,s+4+this.diskSize))}}const I=20,R=4;class is{constructor(){this.frame=-1,this.state=new ht,this.inputs=new Array(R),this.predicted=new Array(R);for(let t=0;t=this.currentFrame)i.futureInputs.has(e)||i.futureInputs.set(e,n);else for(let r=0,c=I;r{this.send("",{type:"KEEPALIVE"},!1)},15e3)}async connect(){const t=["wss://webrtc-signal-server.wasm4.org","wss://ywc2h85cv1.execute-api.us-east-1.amazonaws.com/production","wss://webrtc-signal-server.wasm4.jwq.moe","wss://iyuavuru2h.execute-api.eu-central-1.amazonaws.com/production"];for(const e of t)try{this.socket=await new Promise((s,i)=>{const n=new WebSocket(e);n.addEventListener("open",()=>{s(n)}),n.addEventListener("error",()=>{i()})});break}catch(s){console.error(s)}if(!this.socket)throw new Error("Unable to connect to signal server");this.socket.addEventListener("message",e=>{const{source:s,message:i}=JSON.parse(e.data);this.onMessage(s,i)});for(const e of this.bufferedOutput)this.socket.send(e);this.bufferedOutput.length=0}send(t,e,s=!0){var n;const i=JSON.stringify({target:t,message:e});((n=this.socket)==null?void 0:n.readyState)==1?this.socket.send(i):s&&this.bufferedOutput.push(i)}close(){var t;(t=this.socket)==null||t.close(),window.clearInterval(this.keepaliveInterval)}}class os{constructor(t){this.connections=new Map;let e;this.localPeerId=new Promise(s=>{e=s}),this.signalClient=new rs(async(s,i)=>{switch(i.type){case"WHOAMI_REPLY":this.iceServers=i.iceServers,e(i.yourPeerId);break;case"OFFER":{if(this.connections.has(s))throw new Error("Received offer for a connection we already initiated");{const n=this.createConnection(s);await n.setRemoteDescription(i.description),await n.setLocalDescription(await n.createAnswer()),t(n,s),this.signalClient.send(s,{type:"ANSWER",description:n.localDescription.toJSON()})}}break;case"ANSWER":{const n=this.connections.get(s);n&&await n.setRemoteDescription(i.description)}break;case"CANDIDATE":{const n=this.connections.get(s);n&&await n.addIceCandidate(new RTCIceCandidate(i.candidate))}break;case"ABORT":{const n=this.connections.get(s);n&&n.close()}break}}),this.signalClient.send("",{type:"WHOAMI_REQUEST"})}createConnection(t){const e=new RTCPeerConnection({iceServers:this.iceServers});return this.connections.set(t,e),e.addEventListener("negotiationneeded",async()=>{await e.setLocalDescription(await e.createOffer()),this.signalClient.send(t,{type:"OFFER",description:e.localDescription.toJSON()})}),e.addEventListener("icecandidate",({candidate:s})=>{s&&this.signalClient.send(t,{type:"CANDIDATE",candidate:s.toJSON()})}),e.addEventListener("connectionstatechange",()=>{const s=e.connectionState;(s=="connected"||s=="failed")&&this.connections.delete(t)}),e}connect(t){return this.connections.get(t)||this.createConnection(t)}close(){this.signalClient.close();for(const[t,e]of this.connections)e.close()}}const gt=16384;class as{constructor(t){this.chunks=[],this.size=0,t.addEventListener("message",e=>{if(e.data instanceof ArrayBuffer){const s=new Uint8Array(e.data);this.size+=s.byteLength,this.chunks.push(s)}})}read(){const t=new Uint8Array(this.size);let e=0;for(const s of this.chunks)t.set(s,e),e+=s.byteLength;return this.chunks.length=0,this.size=0,t}}class cs{constructor(t){this.channel=t,this.size=0}write(t){this.buffer||(this.buffer=new Uint8Array(gt));let e=this.size,s=0;for(;s=gt&&(e-=gt,this.channel.send(this.buffer))}this.size=e}flush(){this.buffer&&this.size>0&&this.channel.send(this.buffer.subarray(0,this.size)),this.buffer=void 0}}class ls{constructor(t,e=0){this.buffer=t,this.position=e}readBit(){const t=!!(this.buffer[this.position/8>>>0]&1<<(this.position&7));return++this.position,t}readBits(t){let e=0;for(let s=0;s>>0]|=1<<(this.position&7),++this.position}write0(){this.buffer[this.position/8>>>0]&=~(1<<(this.position&7)),++this.position}writeBits(t,e){for(let s=0;s0;--s)this.outboundInputs.unshift(e);this.outboundFrame=t}else{const s=t-this.outboundFrame;if(s>=this.outboundInputs.length){for(let i=this.outboundInputs.length;i0?this.outboundInputs[i-1]:0;this.outboundInputs[s]=e}}}sendMessage(t){this.reliableChannel.send(JSON.stringify(t))}sendUnreliableBuffer(t){this.unreliableChannel.send(t)}sendPingRequest(){const t=new DataView(W);t.setUint8(0,2),t.setUint32(1,performance.now()>>>0),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendPingReply(t){const e=new DataView(W);e.setUint8(0,3),e.setUint32(1,t),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendTick(t){const e=new DataView(W);e.setUint8(0,1),e.setUint32(1,t),e.setInt8(5,this.nextNeededFrame==0?-127:this.nextNeededFrame-t),e.setInt8(6,this.outboundFrame-t),e.setUint8(7,this.outboundInputs.length);const s=new hs(new Uint8Array(W,8));let i=0;for(const r of this.outboundInputs){const c=i^r;i=r;for(let a=0;a<8;++a)c&1<{const i=Array.from(this.remotePlayers.keys()),n=await this.createRemotePlayer(e,s);n.sendMessage({type:"WELCOME",otherPeers:i}),this.localPlayerIdx>=0&&n.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})})}host(){this.runtime.setNetplay(0),this.rollbackMgr=new ce(1,this.runtime),this.localPlayerIdx=0}join(t){const e=this.peerMgr.connect(t);this.createRemotePlayer(e,t).then(s=>{s.sendMessage({type:"JOIN_REQUEST"})},s=>{this.runtime.blueScreen(`Failed to connect +to peer. They may +be offline?`)})}async getInviteLink(){const t=await this.peerMgr.localPeerId,e=window.location;if(e.protocol=="file:"||e.hostname=="localhost"||e.hostname=="127.0.0.1"||e.hostname=="wasm4.org")return`https://wasm4.org/netplay/#${t}`;const s=new URL(e.href);return s.searchParams.set("netplay",t),s.href}close(){for(const t of this.remotePlayers.values())t.close();this.peerMgr.close()}async createRemotePlayer(t,e){function s(a){return new Promise((h,l)=>{const d=t.createDataChannel("WASM-4",a);d.binaryType="arraybuffer",d.onopen=()=>{h(d)},d.onerror=l})}const[i,n]=await Promise.all([s({negotiated:!0,id:0}),s({negotiated:!0,id:1,ordered:!1,maxRetransmits:0})]),r=new us(e,t,i,n);this.remotePlayers.set(e,r);const c=()=>{this.remotePlayers.has(e)&&(this.remotePlayers.delete(e),this.onleave&&r.playerIdx>=0&&this.onleave(r.playerIdx))};return t.addEventListener("connectionstatechange",()=>{t.connectionState=="disconnected"&&c()}),i.addEventListener("close",c),n.addEventListener("close",c),i.addEventListener("message",async a=>{if(typeof a.data!="string")return;const h=JSON.parse(a.data);switch(h.type){case"WELCOME":for(const l of h.otherPeers)if(!this.remotePlayers.has(l)){const d=this.peerMgr.connect(l),u=await this.createRemotePlayer(d,l);this.localPlayerIdx>=0&&u.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})}break;case"JOIN_REQUEST":{const l=this.nextPlayerIdx();if(l>=4)r.sendMessage({type:"JOIN_REJECT"}),r.close();else{r.playerIdx=l,r.chunkWriter.write(this.runtime.wasmBuffer);const d=new ht;d.read(this.runtime),r.chunkWriter.write(d.toBytes()),r.chunkWriter.flush(),r.sendMessage({type:"JOIN_REPLY",yourPlayerIdx:r.playerIdx,frame:this.rollbackMgr.currentFrame,stateOffset:this.runtime.wasmBuffer.byteLength}),this.onjoin&&this.onjoin(r.playerIdx)}}break;case"JOIN_REPLY":{this.localPlayerIdx=h.yourPlayerIdx;for(const b of this.remotePlayers.values())b!=r&&b.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx});const l=r.chunkReader.read(),d=l.subarray(0,h.stateOffset),u=l.subarray(h.stateOffset);await this.runtime.load(d,!1);const w=new ht;w.fromBytes(u),w.write(this.runtime),this.runtime.setNetplay(this.localPlayerIdx),this.rollbackMgr=new ce(h.frame,this.runtime),this.onstart&&this.onstart(this.localPlayerIdx)}break;case"JOIN_REJECT":this.runtime.blueScreen(`Connected, but the +game is already +full!`),this.close();break;case"PLAYER_INFO":r.playerIdx==-1&&(r.playerIdx=h.playerIdx,this.onjoin&&this.onjoin(r.playerIdx));break}}),n.addEventListener("message",async a=>{const h=a.data,l=new DataView(h);switch(l.getUint8(0)){case 1:if(this.rollbackMgr&&r.playerIdx>=0){const u=l.getUint32(1);if(u>r.frame){const w=l.getInt8(5)+u,b=l.getInt8(6)+u,p=l.getUint8(7),f=new ls(new Uint8Array(h,8)),m=new Array(p);let y=0;for(let v=0;vr.outboundFrame){const v=w-r.outboundFrame;r.outboundFrame=w,r.outboundInputs.splice(0,v)}const g=u+.5*r.ping.average*60/1e3,_=this.rollbackMgr.currentFrame-g;r.drift.update(_),this.rollbackMgr.addInputs(r.playerIdx,b,m)}}break;case 2:{const u=l.getUint32(1);r.sendPingReply(u)}break;case 3:{const u=l.getUint32(1),w=(performance.now()>>>0)-u;r.ping.update(w)}break}}),r}nextPlayerIdx(){t:for(let t=0;t<4;++t)if(this.localPlayerIdx!=t){for(const e of this.remotePlayers.values())if(e.playerIdx==t)continue t;return t}return-1}update(t){if(!this.rollbackMgr)return!1;const e=(this.updateCount&7)==0,s=(this.updateCount&31)==0;++this.updateCount;const i=this.rollbackMgr.currentFrame,r=i+2;this.rollbackMgr.addInputs(this.localPlayerIdx,r,[t]);let c=!1;for(const a of this.remotePlayers.values())a.addOutboundInput(r,t),a.sendTick(i),(a.nextNeededFrame=he)&&(c=!0),s&&a.sendPingRequest();if(e){let a=0;for(const h of this.remotePlayers.values())a=Math.max(h.drift.average,a);a>=1&&(c=!0)}return c||this.rollbackMgr.update(),!c}getSummary(){const t=[{playerIdx:this.localPlayerIdx,ping:-1}];for(const e of this.remotePlayers.values())t.push({playerIdx:e.playerIdx,ping:e.ping.average});return t.sort((e,s)=>e.playerIdx-s.playerIdx),t}}const de=`"use strict";(()=>{var M=Math.floor(44.1),b=class{constructor(){this.freq1=0;this.freq2=0;this.startTime=0;this.attackTime=0;this.decayTime=0;this.sustainTime=0;this.releaseTime=0;this.endTick=0;this.sustainVolume=0;this.peakVolume=0;this.phase=0;this.pan=0;this.pulseDutyCycle=0;this.noiseSeed=1;this.noiseLastRandom=0}};function L(m,e,s){return m+s*(e-m)}function V(m,e){if(m1-e){let s=(m-(1-e))/e;return 1-(s+s-s*s)}else return 1}function x(m,e){return Math.pow(2,(m-69+e/256)/12)*440}var y=class extends AudioWorkletProcessor{constructor(){super(),this.time=0,this.ticks=0,this.channels=new Array(4);for(let e=0;e<4;++e)this.channels[e]=new b;this.port!=null&&(this.port.onmessage=e=>{e.data==="tick"?this.tick():this.tone(...e.data)})}ramp(e,s,f,u){if(this.time>=u)return s;let a=(this.time-f)/(u-f);return L(e,s,a)}getCurrentFrequency(e){return e.freq2>0?this.ramp(e.freq1,e.freq2,e.startTime,e.releaseTime):e.freq1}getCurrentVolume(e){let s=this.time;return s>=e.sustainTime&&e.releaseTime-e.sustainTime>M?this.ramp(e.sustainVolume,0,e.sustainTime,e.releaseTime):s>=e.decayTime?e.sustainVolume:s>=e.attackTime?this.ramp(e.peakVolume,e.sustainVolume,e.attackTime,e.decayTime):this.ramp(0,e.peakVolume,e.startTime,e.attackTime)}tick(){this.ticks++}tone(e,s,f,u){let a=e&65535,p=e>>16&65535,A=s&255,h=s>>8&255,o=s>>16&255,i=s>>24&255,E=Math.min(f&255,100),l=Math.min(f>>8&255,100),n=u&3,r=u>>2&3,c=u>>4&3,d=u&64,t=this.channels[n];this.time>t.releaseTime&&this.ticks!=t.endTick&&(t.phase=n==2?.25:0),d?(t.freq1=x(a&255,a>>8),t.freq2=p==0?0:x(p&255,p>>8)):(t.freq1=a,t.freq2=p),t.startTime=this.time,t.attackTime=t.startTime+(44100*i/60>>>0),t.decayTime=t.attackTime+(44100*o/60>>>0),t.sustainTime=t.decayTime+(44100*A/60>>>0),t.releaseTime=t.sustainTime+(44100*h/60>>>0),t.endTick=this.ticks+i+o+A+h,t.pan=c;let T=n==2?.25:.15;if(t.sustainVolume=T*E/100,t.peakVolume=l?T*l/100:T,n==0||n==1)switch(r){case 0:t.pulseDutyCycle=.125;break;case 1:case 3:default:t.pulseDutyCycle=.25;break;case 2:t.pulseDutyCycle=.5;break}else n==2&&h==0&&(t.releaseTime+=M)}process(e,[[s,f]],u){for(let a=0,p=s.length;a0;){i.phase--;let r=i.noiseSeed;r^=r>>7,r^=r<<9,r^=r>>13,i.noiseSeed=r,i.noiseLastRandom=((r&1)<<1)-1}n=l*i.noiseLastRandom}else{let r=E/44100,c=i.phase+r;if(c>=1&&c--,i.phase=c,o==2)n=l*(2*Math.abs(2*i.phase-1)-1);else{let d,t,T,k=i.pulseDutyCycle;c{n=new l};new Function("registerProcessor","AudioWorkletProcessor",de)(r,class{}),this.processor=n;const a=t.createScriptProcessor(1024,0,2);a.onaudioprocess=h=>{const l=h.outputBuffer.getChannelData(0),d=h.outputBuffer.getChannelData(1);n.process(null,[[l,d]],null)},a.connect(t.destination)}}tick(){this.processorPort!=null?this.processorPort.postMessage("tick"):this.processor.tick()}tone(t,e,s,i){this.processorPort!=null?this.processorPort.postMessage([t,e,s,i]):this.processor.tone(t,e,s,i)}unlockAudio(){const t=this.audioCtx;t.state=="suspended"&&t.resume()}pauseAudio(){const t=this.audioCtx;t.state=="running"&&t.suspend()}}class ms{constructor(t){this.bytes=new Uint8Array(t,Je,E*x>>>2),this.drawColors=new Uint16Array(t,lt,1)}clear(){this.bytes.fill(0)}drawPoint(t,e,s){const i=E*s+e>>>2,n=(e&3)<<1,r=3<=0&&e=0&&s3){for(let l=e;l>>2,a=E*s+n>>>2,h=t*85;this.bytes.fill(h,c,a),e=n}for(let c=e;c=0&&sE&&(i=E),e=E)return;const i=this.drawColors[0]&15;if(i==0)return;const n=Math.max(0,e),r=Math.min(x,e+s),c=i-1&3;for(let a=n;a>>4&15;if(u!==0){const b=u-1&3;for(let p=r;p=0&&t0&&c<=E)for(let p=r;p=0&&e0&&a<=x&&this.drawHLineFast(b,n,a-1,h)}}drawOval(t,e,s,i){const n=this.drawColors[0],r=n&15,c=n>>>4&15;if(c===15)return;const a=c-1&3,h=r-1&3;let l=s-1;const d=i-1;let u=d%2,w=e+Math.floor(i/2),b=t,p=t+s-1,f=w-u;const m=l*l,y=d*d;let g=4*(1-l)*y,_=4*(u+1)*m,v=g+_+u*m;l=8*m,u=8*y;do{this.drawPointUnclipped(a,p,w),this.drawPointUnclipped(a,b,w),this.drawPointUnclipped(a,b,f),this.drawPointUnclipped(a,p,f);const k=b+1,T=p-k;r!==0&&T>0&&(this.drawHLineUnclipped(h,k,w,p),this.drawHLineUnclipped(h,k,f,p));const P=2*v;P<=_&&(w+=1,f-=1,_+=l,v+=_),(P>=g||P>_)&&(b+=1,p-=1,g+=u,v+=g)}while(b<=p);for(;w-fi){let w=t;t=s,s=w,w=e,e=i,i=w}const a=Math.abs(s-t),h=tl?a:-l)/2,u;for(;this.drawPointUnclipped(c,t,e),!(t===s&&e===i);)u=d,u>-a&&(d-=l,t+=h),u=32&&c<=255&&this.blit(ts,i,s,8,8,0,c-32<<3,8),i+=8)}}blit(t,e,s,i,n,r,c,a,h=!1,l=!1,d=!1,u=!1){const w=this.drawColors[0];let b,p,f,m;u?(l=!l,b=Math.max(0,s)-s,p=Math.max(0,e)-e,f=Math.min(i,x-s),m=Math.min(n,E-e)):(b=Math.max(0,e)-e,p=Math.max(0,s)-s,f=Math.min(i,E-e),m=Math.min(n,x-s));for(let y=p;y>>2],Rt=6-(($&3)<<1);P=Lt>>>Rt&3}else{const Lt=t[$>>>3],Rt=7-($&7);P=Lt>>>Rt&1}const Ee=w>>>(P<<2)&15;Ee!==0&&this.drawPoint(Ee-1&3,_,v)}}}const ys=4,ws=35044,ue=34962,pe=5121,bs=5126,At=6409,gs=35632,As=35633,vs=35713,Es=35714,fe=9728,_s=10240,Ss=10241,xs=10242,ks=10243,z=3553,Cs=33984,me=33071,V=4;class Ts{constructor(t){this.gl=t,this.colorBuffer=new Uint32Array(E*x>>2),this.paletteBuffer=new Float32Array(3*V),this.lastPalette=Array(V),this.paletteLocation=null;const e=new Uint32Array(256);for(let i=0;i<256;++i){const n=i>>6&3,r=i>>4&3,c=i>>2&3,a=i&3;e[i]=n<<30|r<<22|c<<14|a<<6}this.table=e;const s=t.canvas;s.addEventListener("webglcontextlost",i=>{i.preventDefault()}),s.addEventListener("webglcontextrestored",()=>{this.initGL()}),this.initGL()}initGL(){const t=this.gl;this.lastPalette=Array(V);function e(d,u){const w=t.createShader(d);if(t.shaderSource(w,u),t.compileShader(w),!t.getShaderParameter(w,vs))throw new Error(t.getShaderInfoLog(w)+"");return w}function s(d){const u=t.createTexture();t.activeTexture(d),t.bindTexture(z,u),t.texParameteri(z,xs,me),t.texParameteri(z,ks,me),t.texParameteri(z,_s,fe),t.texParameteri(z,Ss,fe)}const i=e(As,` + attribute vec2 pos; + varying vec2 framebufferCoord; + + void main () { + framebufferCoord = pos*vec2(0.5, -0.5) + 0.5; + gl_Position = vec4(pos, 0, 1); + } + `),n=Array.from({length:V-1},(d,u)=>`p = mix(p, palette[${u+1}], step(${((u+1)/V).toFixed(2)}, index));`).join(` +`),r=e(gs,` + precision mediump float; + uniform vec3 palette[${V}]; + uniform sampler2D framebuffer; + varying vec2 framebufferCoord; + + vec3 lookup(float index) { + vec3 p = palette[0]; + ${n} + return p; + } + + void main () { + gl_FragColor = vec4(lookup(texture2D(framebuffer, framebufferCoord).r), 1.); + } + `),c=t.createProgram();if(t.attachShader(c,i),t.attachShader(c,r),t.linkProgram(c),!t.getProgramParameter(c,Es))throw new Error(t.getProgramInfoLog(c)+"");t.useProgram(c),this.paletteLocation=t.getUniformLocation(c,"palette"),t.uniform1i(t.getUniformLocation(c,"framebuffer"),0),t.detachShader(c,i),t.deleteShader(i),t.detachShader(c,r),t.deleteShader(r),s(Cs),t.texImage2D(z,0,At,E,x,0,At,pe,null);const a=t.getAttribLocation(c,"pos"),h=t.createBuffer(),l=new Float32Array([-1,-1,-1,1,1,1,1,1,1,-1,-1,-1]);t.bindBuffer(ue,h),t.bufferData(ue,l,ws),t.enableVertexAttribArray(a),t.vertexAttribPointer(a,2,bs,!1,0,0)}composite(t,e){const s=this.gl,i=e.bytes,n=this.colorBuffer,r=this.table,c=this.lastPalette,a=this.paletteBuffer;let h=!1;for(let l=0,d=0;l>16&255)/255,a[d++]=(u>>8&255)/255,a[d++]=(u&255)/255,c[l]=u}h&&s.uniform3fv(this.paletteLocation,this.paletteBuffer);for(let l=0;l>2;++l)n[l]=r[i[l]];s.texImage2D(z,0,At,E,x,0,At,pe,new Uint8Array(n.buffer)),s.drawArrays(ys,0,6)}}const Ps=6,ye=7,we=3;function $s(o){const t=new DataView(o.buffer),e=t.getUint32(0),s=t.getUint32(4,!0);if(e!==6386541||s!==1)throw new Error("Invalid WASM binary");let i=8;const n=[];let r=0,c=0,a;for(;in+(r[0]===0?r[2]-r[1]:r[1].length),0),s=new Uint8Array(e);let i=0;for(const n of t)n[0]===0?(s.set(o.slice(n[1],n[2]),i),i+=n[2]-n[1]):(s.set(n[1],i),i+=n[1].length);return s}function vt(o){const t=[];do{const e=o&127;o>>=7,t.push(o?e|128:e)}while(o);return new Uint8Array(t)}function dt(o,t=0){let e=0,s=0,i=0;do e=o[t++],s|=(e&127)<>2),this.data.setUint16(lt,4611,!0),this.data.setInt16(te,32767,!0),this.data.setInt16(ee,32767,!0)}async load(t,e=!0){if(this.wasmBuffer=t,this.wasmBufferByteLen=t.byteLength,this.wasm=null,t.byteLength>1048576&&e)throw new Error("Cart too big!");const i={memory:this.memory,rect:this.framebuffer.drawRect.bind(this.framebuffer),oval:this.framebuffer.drawOval.bind(this.framebuffer),line:this.framebuffer.drawLine.bind(this.framebuffer),hline:this.framebuffer.drawHLine.bind(this.framebuffer),vline:this.framebuffer.drawVLine.bind(this.framebuffer),text:this.text.bind(this),textUtf8:this.textUtf8.bind(this),textUtf16:this.textUtf16.bind(this),blit:this.blit.bind(this),blitSub:this.blitSub.bind(this),tone:this.apu.tone.bind(this.apu),diskr:this.diskr.bind(this),diskw:this.diskw.bind(this),trace:this.trace.bind(this),traceUtf8:this.traceUtf8.bind(this),traceUtf16:this.traceUtf16.bind(this),tracef:this.tracef.bind(this)};await this.bluescreenOnError(async()=>{const n=$s(t),r=await WebAssembly.instantiate(n,{env:i});this.wasm=r.instance,typeof this.wasm.exports._start=="function"&&this.wasm.exports._start(),typeof this.wasm.exports._initialize=="function"&&this.wasm.exports._initialize()})}async bluescreenOnError(t){try{await t()}catch(e){if(e instanceof Error){const s=Us(e);this.blueScreen(s),this.printToServer(e.stack??"")}throw e}}text(t,e,s){const i=new Uint8Array(this.memory.buffer,t);this.framebuffer.drawText(i,e,s)}textUtf8(t,e,s,i){const n=new Uint8Array(this.memory.buffer,t,e);this.framebuffer.drawText(n,s,i)}textUtf16(t,e,s,i){const n=new Uint16Array(this.memory.buffer,t,e>>1);this.framebuffer.drawText(n,s,i)}blit(t,e,s,i,n,r){this.blitSub(t,e,s,i,n,0,0,i,r)}blitSub(t,e,s,i,n,r,c,a,h){const l=new Uint8Array(this.memory.buffer,t),d=h&1,u=h&2,w=h&4,b=h&8;this.framebuffer.blit(l,e,s,i,n,r,c,a,d,u,w,b)}diskr(t,e){const s=Math.min(e,this.diskSize),i=new Uint8Array(this.diskBuffer,0,s);return new Uint8Array(this.memory.buffer,t).set(i),s}diskw(t,e){const s=Math.min(e,X),i=new Uint8Array(this.memory.buffer,t,s),n=new Uint8Array(this.diskBuffer),r=oe(i);try{localStorage.setItem(this.diskName,r)}catch(c){console.error("Error writing disk",c)}return n.set(i),this.diskSize=s,s}getCString(t){let e="";for(;;){const s=this.data.getUint8(t++);if(s==0)break;e+=String.fromCharCode(s)}return e}print(t){console.log(t),this.printToServer(t)}printToServer(t){}trace(t){this.print(this.getCString(t))}traceUtf8(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder().decode(s);this.print(i)}traceUtf16(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder("utf-16").decode(s);this.print(i)}tracef(t,e){let s="",i;for(;i=this.data.getUint8(t++);)if(i==37)switch(i=this.data.getUint8(t++)){case 37:s+="%";break;case 99:s+=String.fromCharCode(this.data.getInt32(e,!0)),e+=4;break;case 100:case 120:s+=this.data.getInt32(e,!0).toString(i==100?10:16),e+=4;break;case 115:s+=this.getCString(this.data.getUint32(e,!0)),e+=4;break;case 102:s+=this.data.getFloat64(e,!0),e+=8;break;default:s+="%"+String.fromCharCode(i);break}else s+=String.fromCharCode(i);this.print(s)}start(){let t=this.wasm.exports.start;typeof t=="function"&&this.bluescreenOnError(t)}update(){if(this.pauseState!=0)return;this.getSystemFlag(Ze)||this.framebuffer.clear();let t=this.wasm.exports.update;typeof t=="function"&&this.bluescreenOnError(t),this.apu.tick()}blueScreen(t){this.pauseState|=se;const e=[1118702,8831084,11184810,16777215],s=u=>[...u].map(w=>w.charCodeAt(0)),i=` ${Ve} `,n=i,r=8*i.length,c=(160-8*i.length)/2,a=20,h=9,l=60;new Uint32Array(this.memory.buffer).set(e,$t>>2),this.data.setUint16(lt,4611,!0),this.framebuffer.clear(),this.framebuffer.drawHLine(c,a-1,r),this.data.setUint16(lt,4401,!0),this.framebuffer.drawText(s(n),c,a),this.data.setUint16(lt,4611,!0),this.framebuffer.drawText(s(t),h,l),this.composite()}composite(){const t=new Uint32Array(this.memory.buffer,$t,4);this.compositor.composite(t,this.framebuffer)}}function Us(o){if(o instanceof WebAssembly.RuntimeError){let t;return o.message.match(/unreachable/)?t=`The cartridge has +reached a code +segment marked as +unreachable.`:o.message.match(/out of bounds/)&&(t=`The cartridge has +attempted a memory +access that is +out of bounds.`),t+` + + + + +Hit R to reboot.`}else{if(o instanceof WebAssembly.LinkError)return`The cartridge has +tried to import +a missing function. + + + +See console for +more details.`;if(o instanceof WebAssembly.CompileError)return`The cartridge is +corrupted. + + + +See console for +more details.`;if(o instanceof Os)return o.wasm4Message}return`Unknown error. + + + +See console for +more details.`}class Os extends Error{constructor(t){super(t.replace(` +`," ")),this.name="Wasm4Error",this.wasm4Message=t}}var Ms=Object.defineProperty,Ls=Object.getOwnPropertyDescriptor,ut=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ls(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Ms(t,e,i),i};class ge{constructor(){this.gamepad=[0,0,0,0],this.mouseX=0,this.mouseY=0,this.mouseButtons=0}}A.App=class extends M{constructor(){var t;super(),this.hideGamepadOverlay=!1,this.showMenu=!1,this.inputState=new ge,this.gamepadUnavailableWarned=new Set,this.onPointerUp=e=>{e.pointerType=="touch"&&ne(),this.runtime.unlockAudio()},this.diskPrefix=((t=document.getElementById("wasm4-disk-prefix"))==null?void 0:t.textContent)??It("disk-prefix"),this.runtime=new Is(`${this.diskPrefix}-disk`),this.init()}async init(){async function t(){const p=document.getElementById("wasm4-cart-json");if(p){const{WASM4_CART:f,WASM4_CART_SIZE:m}=JSON.parse(p.textContent??""),y=new Uint8Array(m);return ae(f,y),y}else{const f=It("url")??"cart.wasm",m=await fetch(f);if(m.ok)return new Uint8Array(await m.arrayBuffer());throw new Error(`Could not load cart at url: ${f}`)}}const e=this.runtime;await e.init();const s=e.canvas,i=It("netplay");i?(this.netplay=this.createNetplay(),this.netplay.join(i)):await e.load(await t());let n={toggleDevtools(){},updateCompleted(...p){}};this.netplay||e.start();function r(){e.composite(),s.toBlob(p=>{const f=URL.createObjectURL(p),m=document.createElement("a");m.href=f,m.download="wasm4-screenshot.png",m.click(),URL.revokeObjectURL(f)})}let c=null;function a(){if(c!=null)return;const p="video/webm",f=s.captureStream();c=new MediaRecorder(f,{mimeType:p,videoBitsPerSecond:25e6});const m=[];c.ondataavailable=y=>{m.push(y.data)},c.onstop=()=>{const y=new Blob(m,{type:p}),g=URL.createObjectURL(y),_=document.createElement("a");_.href=g,_.download="wasm4-animation.webm",_.click(),URL.revokeObjectURL(g)},c.start(),setTimeout(()=>{c&&(c.requestData(),c.stop(),c=null)},4e3)}const h=p=>{if(document.body.style.cursor="",p.isPrimary){const f=s.getBoundingClientRect(),m=this.inputState;m.mouseX=Math.fround(E*(p.clientX-f.left)/f.width),m.mouseY=Math.fround(x*(p.clientY-f.top)/f.height),m.mouseButtons=p.buttons&7}};window.addEventListener("pointerdown",h),window.addEventListener("pointerup",h),window.addEventListener("pointermove",h),s.addEventListener("contextmenu",p=>{p.preventDefault()});const l={2:this.saveGameState.bind(this),4:this.loadGameState.bind(this),r:this.resetCart.bind(this),R:this.resetCart.bind(this),F8:n.toggleDevtools,F9:r,F10:a,F11:ne,Enter:this.onMenuButtonPressed.bind(this)},d=p=>{if(p.ctrlKey||p.altKey||p.srcElement instanceof HTMLElement&&p.srcElement.tagName=="INPUT")return;const f=p.type=="keydown";if(e.unlockAudio(),document.body.style.cursor="none",f){const g=l[p.key];if(g){g(),p.preventDefault();return}}let m=0,y=0;switch(p.code){case"KeyX":case"KeyV":case"Space":case"Period":y=L;break;case"KeyZ":case"KeyC":case"Comma":y=F;break;case"ArrowUp":y=H;break;case"ArrowDown":y=G;break;case"ArrowLeft":y=J;break;case"ArrowRight":y=Z;break;case"KeyA":case"KeyQ":m=1,y=L;break;case"ShiftLeft":case"Tab":m=1,y=F;break;case"KeyE":m=1,y=H;break;case"KeyD":m=1,y=G;break;case"KeyS":m=1,y=J;break;case"KeyF":m=1,y=Z;break;case"NumpadMultiply":case"NumpadDecimal":m=2,y=L;break;case"NumpadSubtract":case"NumpadEnter":m=2,y=F;break;case"Numpad8":m=2,y=H;break;case"Numpad5":m=2,y=G;break;case"Numpad4":m=2,y=J;break;case"Numpad6":m=2,y=Z;break}if(y!=0){p.preventDefault();const g=this.inputState.gamepad;f?g[m]|=y:g[m]&=~y}};if(window.addEventListener("keydown",d),window.addEventListener("keyup",d),top&&top!=window)try{top.addEventListener("keydown",d),top.addEventListener("keyup",d)}catch{}const u=()=>{if(navigator.getGamepads)for(const p of navigator.getGamepads()){if(p==null)continue;if(p.mapping!="standard"){this.gamepadUnavailableWarned.has(p.id)||(this.gamepadUnavailableWarned.add(p.id),this.notifications.show("Unsupported gamepad: "+p.id));continue}const f=p.buttons,m=p.axes;let y=0;(f[12].pressed||m[1]<-.5)&&(y|=H),(f[13].pressed||m[1]>.5)&&(y|=G),(f[14].pressed||m[0]<-.5)&&(y|=J),(f[15].pressed||m[0]>.5)&&(y|=Z),(f[0].pressed||f[3].pressed||f[5].pressed||f[7].pressed)&&(y|=L),(f[1].pressed||f[2].pressed||f[4].pressed||f[6].pressed)&&(y|=F),f[9].pressed&&(this.showMenu=!0),this.inputState.gamepad[p.index%4]=y}};let w=performance.now();const b=p=>{requestAnimationFrame(b),u();let f=this.inputState;if(this.menuOverlay!=null)if(this.menuOverlay.applyInput(),this.netplay)f=new ge;else return;let m=!1;for(p-w>=200&&(w=p);p>=w;)if(w+=1e3/60,this.netplay)this.netplay.update(f.gamepad[0])&&(m=!0);else{for(let y=0;y<4;++y)e.setGamepad(y,f.gamepad[y]);e.setMouse(f.mouseX,f.mouseY,f.mouseButtons),e.update(),m=!0}m&&(this.hideGamepadOverlay=!!e.getSystemFlag(Qe),e.composite())};requestAnimationFrame(b)}onMenuButtonPressed(){this.showMenu?this.inputState.gamepad[0]|=L:this.showMenu=!0}closeMenu(){if(this.showMenu){this.showMenu=!1;for(let t=0;t<4;++t)this.inputState.gamepad[t]=0}}saveGameState(){let t=this.savedGameState;t==null&&(t=this.savedGameState=new ht),t.read(this.runtime),this.notifications.show("State saved")}loadGameState(){if(this.netplay){this.notifications.show("State loading disabled during netplay");return}const t=this.savedGameState;t!=null?(t.write(this.runtime),this.notifications.show("State loaded")):this.notifications.show("Need to save a state first")}exportGameDisk(){if(this.runtime.diskSize<=0){this.notifications.show("Disk is empty");return}const t=new Uint8Array(this.runtime.diskBuffer).slice(0,this.runtime.diskSize),e=new Blob([t],{type:"application/octet-stream"}),s=document.createElement("a");s.style.display="none",s.href=URL.createObjectURL(e),s.download=`${this.diskPrefix}.disk`,document.body.appendChild(s),s.click(),document.body.removeChild(s)}importGameDisk(){if(this.netplay){this.notifications.show("Disk importing disabled during netplay");return}const t=this,e=document.createElement("input");e.style.display="none",e.type="file",e.accept=".disk",e.multiple=!1,e.addEventListener("change",()=>{const s=e.files;let i=new FileReader;i.addEventListener("load",()=>{let n=new Uint8Array(i.result).slice(0,X),r=new Uint8Array(X);r.set(n),t.runtime.diskBuffer=r.buffer,this.runtime.diskSize=n.length;const c=oe(n);try{localStorage.setItem(this.runtime.diskName,c),t.notifications.show("Disk imported")}catch(a){t.notifications.show("Error importing disk"),console.error("Error importing disk",a)}t.closeMenu()}),i.readAsArrayBuffer(s[0])}),document.body.appendChild(e),e.click(),document.body.removeChild(e)}clearGameDisk(){if(this.netplay){this.notifications.show("Disk clearing disabled during netplay");return}this.runtime.diskBuffer=new ArrayBuffer(X),this.runtime.diskSize=0;try{localStorage.removeItem(this.runtime.diskName)}catch(t){this.notifications.show("Error clearing disk"),console.error("Error clearing disk",t)}this.notifications.show("Disk cleared")}async copyNetplayLink(){this.netplay||(this.netplay=this.createNetplay(),this.netplay.host()),es(await this.netplay.getInviteLink()),this.notifications.show("Netplay link copied to clipboard")}async resetCart(t,e=!1){if(this.netplay){this.notifications.show("Reset disabled during netplay");return}t||(t=this.runtime.wasmBuffer);let s;e&&(s=new ht,s.read(this.runtime)),this.runtime.reset(!0),this.runtime.pauseState|=ie,await this.runtime.load(t),this.runtime.pauseState&=~ie,s?s.write(this.runtime):this.runtime.start()}createNetplay(){const t=new ps(this.runtime);return t.onstart=e=>this.notifications.show(`Joined as player ${e+1}`),t.onjoin=e=>this.notifications.show(`Player ${e+1} joined`),t.onleave=e=>this.notifications.show(`Player ${e+1} left`),t}getNetplaySummary(){return this.netplay?this.netplay.getSummary():[]}connectedCallback(){super.connectedCallback(),window.addEventListener("pointerup",this.onPointerUp)}disconnectedCallback(){window.removeEventListener("pointerup",this.onPointerUp),super.disconnectedCallback()}render(){return C` +
+ ${this.showMenu?C``:""} + + ${this.runtime.canvas} +
+ ${this.hideGamepadOverlay?"":C``} + `}},A.App.styles=ft` + :host { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + + touch-action: none; + user-select: none; + -webkit-user-select: none; + -webkit-tap-highlight-color: transparent; + + background: #202020; + } + + .content { + width: 100vmin; + height: 100vmin; + overflow: hidden; + } + + /** Nudge the game upwards a bit in portrait to make space for the virtual gamepad. */ + @media (pointer: coarse) and (max-aspect-ratio: 2/3) { + .content { + position: absolute; + top: calc((100% - 220px - 100vmin)/2) + } + } + + .content canvas { + width: 100%; + height: 100%; + image-rendering: pixelated; + image-rendering: crisp-edges; + } + `,ut([at()],A.App.prototype,"hideGamepadOverlay",2),ut([at()],A.App.prototype,"showMenu",2),ut([ct("wasm4-menu-overlay")],A.App.prototype,"menuOverlay",2),ut([ct("wasm4-notifications")],A.App.prototype,"notifications",2),A.App=ut([bt("wasm4-app")],A.App);/** + * @license + * Copyright 2021 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function*Ut(o,t){if(o!==void 0){let e=0;for(const s of o)yield t(s,e++)}}var Rs=Object.defineProperty,Ds=Object.getOwnPropertyDescriptor,Ot=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ds(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Rs(t,e,i),i};const j={DEFAULT:0,DISK:1},Ns=[{CONTINUE:0,SAVE_STATE:1,LOAD_STATE:2,DISK_OPTIONS:3,COPY_NETPLAY_LINK:4,RESET_CART:5},{BACK:0,EXPORT_DISK:1,IMPORT_DISK:2,CLEAR_DISK:3}],Mt=[["CONTINUE","SAVE STATE","LOAD STATE","DISK OPTIONS","COPY NETPLAY URL","RESET CART"],["BACK","EXPORT DISK","IMPORT DISK","CLEAR DISK"]];A.MenuOverlay=class extends M{constructor(){super(),this.lastGamepad=0,this.selectedIdx=0,this.netplaySummary=[],this.optionContext=0,this.optionContextHistory=[]}get optionIndex(){return Ns[this.optionContext]}get options(){return Mt[this.optionContext]}previousContext(){if(this.optionContextHistory.length>0){const t=this.optionContextHistory.pop();this.resetInput(),this.optionContext=t.context,this.selectedIdx=t.index}}switchContext(t,e=0){this.optionContextHistory.push({context:this.optionContext,index:this.selectedIdx}),this.resetInput(),this.optionContext=t,this.selectedIdx=e}resetInput(){this.app.inputState.gamepad[0]=0}applyInput(){let t=0;for(const s of this.app.inputState.gamepad)t|=s;const e=t&(t^this.lastGamepad);if(this.lastGamepad=t,e&(L|F)){if(this.optionContext===j.DEFAULT)switch(this.selectedIdx){case this.optionIndex.CONTINUE:this.app.closeMenu();break;case this.optionIndex.SAVE_STATE:this.app.saveGameState(),this.app.closeMenu();break;case this.optionIndex.LOAD_STATE:this.app.loadGameState(),this.app.closeMenu();break;case this.optionIndex.DISK_OPTIONS:this.switchContext(j.DISK);break;case this.optionIndex.COPY_NETPLAY_LINK:this.app.copyNetplayLink(),this.app.closeMenu();break;case this.optionIndex.RESET_CART:this.app.resetCart(),this.app.closeMenu();break}else if(this.optionContext===j.DISK)switch(this.selectedIdx){case this.optionIndex.BACK:this.previousContext();break;case this.optionIndex.EXPORT_DISK:this.app.exportGameDisk(),this.app.closeMenu();break;case this.optionIndex.IMPORT_DISK:this.resetInput(),this.app.importGameDisk();break;case this.optionIndex.CLEAR_DISK:this.app.clearGameDisk(),this.app.closeMenu();break}}e&G&&this.selectedIdx++,e&H&&this.selectedIdx--,this.selectedIdx=(this.selectedIdx+this.options.length)%this.options.length}connectedCallback(){super.connectedCallback();const t=()=>{this.netplaySummary=this.app.getNetplaySummary()};t(),this.netplayPollInterval=window.setInterval(t,1e3)}disconnectedCallback(){window.clearInterval(this.netplayPollInterval),super.disconnectedCallback()}render(){return C` +
+ WASM-4 v${"2.7.0"} +
+ +
+ ${Ut(this.netplaySummary,t=>{const e=t.ping<100?"good":t.ping<200?"ok":"bad",s=t.ping<0?C`YOU`:C`${Math.ceil(t.ping)}ms`;return C`
PLAYER ${t.playerIdx>=0?t.playerIdx+1:"?"} ${s}
`})} +
+ `}},A.MenuOverlay.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + + color: #a0a0a0; + font: 16px wasm4-font; + + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + + background: rgba(0, 0, 0, 0.85); + } + + .version { + color: #fff; + padding-bottom: 1em; + } + + .menu { + border: 2px solid #f0f0f0; + padding: 0 1em 0 1em; + line-height: 2em; + } + + .netplay-summary { + margin-top: 2em; + line-height: 1.5em; + } + + .ping-you { + color: #f0f0f0; + } + + .ping-good { + color: green; + } + + .ping-ok { + color: yellow; + } + + .ping-bad { + color: red; + } + + ul { + list-style: none; + padding-left: 0; + padding-right: 1em; + } + + li::before { + content: "\\00a0\\00a0"; + } + li.selected::before { + content: "> "; + } + li.selected { + color: #fff; + } + `,Ot([at()],A.MenuOverlay.prototype,"selectedIdx",2),Ot([at()],A.MenuOverlay.prototype,"netplaySummary",2),A.MenuOverlay=Ot([bt("wasm4-menu-overlay")],A.MenuOverlay);var Bs=Object.defineProperty,Fs=Object.getOwnPropertyDescriptor,Et=(o,t,e,s)=>{for(var i=s>1?void 0:s?Fs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Bs(t,e,i),i};function Q(o,t,e){o&&(e?o.classList.add(t):o.classList.remove(t))}A.VirtualGamepad=class extends M{constructor(){super(...arguments),this.touchEvents=new Map,this.onPointerEvent=t=>{if(t.pointerType!="touch")return;switch(t.preventDefault(),t.type){case"pointerdown":case"pointermove":this.touchEvents.set(t.pointerId,t);break;default:this.touchEvents.delete(t.pointerId);break}let e=0;if(this.touchEvents.size){const c=this.dpad.getBoundingClientRect(),a=c.x+c.width/2,h=c.y+c.height/2,l=this.action1.getBoundingClientRect(),d=l.x+l.width/2,u=l.y+l.height/2,w=this.action2.getBoundingClientRect(),b=w.x+w.width/2,p=w.y+w.height/2;let f,m,y,g,_;for(const v of this.touchEvents.values())f=v.clientX-a,m=v.clientY-h,y=Math.sqrt(f*f+m*m),y<100&&y>10&&(g=f/y,_=m/y,-g>.6?e|=J:g>.6&&(e|=Z),-_>.6?e|=H:_>.6&&(e|=G)),f=v.clientX-d,m=v.clientY-u,f*f+m*m<2500&&(e|=L),f=v.clientX-b,m=v.clientY-p,f*f+m*m<2500&&(e|=F)}Q(this.action1,"pressed",e&L),Q(this.action2,"pressed",e&F),Q(this.dpad,"pressed-left",e&J),Q(this.dpad,"pressed-right",e&Z),Q(this.dpad,"pressed-up",e&H),Q(this.dpad,"pressed-down",e&G),this.app.inputState.gamepad[0]=e}}connectedCallback(){super.connectedCallback(),window.addEventListener("pointercancel",this.onPointerEvent),window.addEventListener("pointerdown",this.onPointerEvent),window.addEventListener("pointermove",this.onPointerEvent),window.addEventListener("pointerup",this.onPointerEvent)}disconnectedCallback(){window.removeEventListener("pointercancel",this.onPointerEvent),window.removeEventListener("pointerdown",this.onPointerEvent),window.removeEventListener("pointermove",this.onPointerEvent),window.removeEventListener("pointerup",this.onPointerEvent),super.disconnectedCallback()}onMenuButtonPressed(t){this.app.onMenuButtonPressed(),t.stopImmediatePropagation()}render(){return C` + +
+
X
+
Z
+ `}},A.VirtualGamepad.styles=ft` + :host { + display: none; + } + @media (hover: none) or (pointer: coarse) { + :host { + display: inherit; + } + } + + .dpad { + pointer-events: none; + position: absolute; + width: 39px; + height: 120px; + left: 69px; + bottom: 30px; + background: #444; + border-radius: 9px; + } + .dpad:before { + position: absolute; + width: 120px; + height: 39px; + top: 39px; + left: -39px; + background: #444; + border-radius: 9px; + content: ""; + } + .dpad:after { + position: absolute; + height: 39px; + width: 39px; + top: 39px; + border-radius: 100%; + background: #333; + content: ""; + } + .dpad.pressed-left:before { + border-left: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-right:before { + border-right: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-up { + border-top: 4px solid #A93671; + } + .dpad.pressed-down { + border-bottom: 4px solid #A93671; + height: 116px; + } + + .action1 { + right: 80px; + bottom: 30px; + } + .action2 { + right: 30px; + bottom: 90px; + } + .action1, .action2 { + pointer-events: none; + position: absolute; + width: 60px; + height: 60px; + border: 4px solid #A93671; + border-radius: 50px; + + /** TODO(2022-03-14): Button text should be centered but is off slightly. */ + color: #A93671; + font: 24px wasm4-font; + text-align: center; + line-height: 60px; + } + .action1.pressed, .action2.pressed { + background: #A93671; + } + + .menu { + position: absolute; + background: #444; + width: 60px; + height: 20px; + bottom: 200px; + right: 35px; + border-radius: 10px; + } + `,Et([ct(".dpad")],A.VirtualGamepad.prototype,"dpad",2),Et([ct(".action1")],A.VirtualGamepad.prototype,"action1",2),Et([ct(".action2")],A.VirtualGamepad.prototype,"action2",2),A.VirtualGamepad=Et([bt("wasm4-virtual-gamepad")],A.VirtualGamepad);var Hs=Object.defineProperty,Gs=Object.getOwnPropertyDescriptor,Ae=(o,t,e,s)=>{for(var i=s>1?void 0:s?Gs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Hs(t,e,i),i};return A.Notifications=class extends M{constructor(){super(...arguments),this.notifications=[]}show(t){this.notifications=this.notifications.concat([t]),setTimeout(()=>{this.notifications=this.notifications.slice(1)},5e3)}render(){return this.notifications.map(t=>C`
${t}
`)}},A.Notifications.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + pointer-events: none; + + color: #fff; + font: 24px wasm4-font; + + display: flex; + flex-direction: column; + } + + .notification { + background: rgba(0, 0, 0, 0.85); + padding: 0.5em; + /* animation: appear 0.5s ease-out, disappear 0.5s 4.5s ease-in; */ + /* animation-fill-mode: forwards; */ + animation: appear 0.5s ease-out; + } + + @keyframes appear { + from { + padding-left: 2em; + opacity: 0; + } + to { + opacity: 1; + padding-left: 0.5em; + } + } + + /*@keyframes disappear { + from { + opacity: 1; + } + to { + opacity: 0; + } + }*/ + `,Ae([at()],A.Notifications.prototype,"notifications",2),A.Notifications=Ae([bt("wasm4-notifications")],A.Notifications),Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),A}({}); diff --git a/w4-tetris/cart.wasm b/w4-tetris/cart.wasm new file mode 100644 index 00000000..81750783 Binary files /dev/null and b/w4-tetris/cart.wasm differ diff --git a/w4-tetris/favicon.ico b/w4-tetris/favicon.ico new file mode 100644 index 00000000..1e3dcdc7 Binary files /dev/null and b/w4-tetris/favicon.ico differ diff --git a/w4-tetris/index.html b/w4-tetris/index.html new file mode 100644 index 00000000..889693a0 --- /dev/null +++ b/w4-tetris/index.html @@ -0,0 +1,14 @@ + + + + + + + Wa-lang/WASM-4 Game + + + + + + + diff --git a/w4-tetris/w4teris.wat b/w4-tetris/w4teris.wat new file mode 100644 index 00000000..948428c2 --- /dev/null +++ b/w4-tetris/w4teris.wat @@ -0,0 +1,27598 @@ +(module $__walang__ + (import "env" "traceUtf8" (func $runtime.traceUtf8 (param i32) (param i32))) + (import "env" "blit" (func $syscall$wasm4.__import__blit (param i32) (param i32) (param i32) (param i32) (param i32) (param i32))) + (import "env" "diskr" (func $syscall$wasm4.__import__diskr (param i32) (param i32) (result i32))) + (import "env" "diskw" (func $syscall$wasm4.__import__diskw (param i32) (param i32) (result i32))) + (import "env" "rect" (func $syscall$wasm4.__import__rect (param i32) (param i32) (param i32) (param i32))) + (import "env" "textUtf8" (func $syscall$wasm4.__import__textUtf8 (param i32) (param i32) (param i32) (param i32))) + (import "env" "tone" (func $syscall$wasm4.__import__tone (param i32) (param i32) (param i32) (param i32))) + (import "env" "memory" (memory 1)) + (export "w4teris.CLEAR_SCORES.0" (global $w4teris.CLEAR_SCORES.0)) + (export "w4teris.CLEAR_SCORES.1" (global $w4teris.CLEAR_SCORES.1)) + (export "w4teris.LEVEL_SPEED.0" (global $w4teris.LEVEL_SPEED.0)) + (export "w4teris.LEVEL_SPEED.1" (global $w4teris.LEVEL_SPEED.1)) + (export "w4teris.PIECE_COLORS.0" (global $w4teris.PIECE_COLORS.0)) + (export "w4teris.PIECE_COLORS.1" (global $w4teris.PIECE_COLORS.1)) + (export "w4teris.PIECE_COORDS.0" (global $w4teris.PIECE_COORDS.0)) + (export "w4teris.PIECE_COORDS.1" (global $w4teris.PIECE_COORDS.1)) + (export "w4teris.PIECE_SPRITES.0" (global $w4teris.PIECE_SPRITES.0)) + (export "w4teris.PIECE_SPRITES.1" (global $w4teris.PIECE_SPRITES.1)) + (table 22 funcref) + (type $$onFree (func (param i32))) + (type $$wa.runtime.comp (func (param i32) (param i32) (result i32))) + (type $$$fnSig1 (func (param i32) (param i32) (result i32 i32 i32))) + (global $__stack_ptr (mut i32) (i32.const 14656)) + (global $__heap_max i32 (i32.const 65536)) + (global $$wa.runtime.closure_data (mut i32) (i32.const 0)) + (global $$wa.runtime._concretTypeCount (mut i32) (i32.const 3)) + (global $$wa.runtime._interfaceCount (mut i32) (i32.const 2)) + (global $$wa.runtime._itabsPtr (mut i32) (i32.const 46192)) + (global $runtime.init$guard (mut i32) (i32.const 0)) + (global $$knr_basep (mut i32) (i32.const 0)) + (global $$knr_freep (mut i32) (i32.const 0)) + (global $math._cos.0 i32 (i32.const 0)) + (global $math._cos.1 i32 (i32.const 14792)) + (global $math._sin.0 i32 (i32.const 0)) + (global $math._sin.1 i32 (i32.const 14840)) + (global $math.init$guard (mut i32) (i32.const 0)) + (global $math$bits.deBruijn32tab.0 i32 (i32.const 0)) + (global $math$bits.deBruijn32tab.1 i32 (i32.const 14888)) + (global $math$bits.deBruijn64tab.0 i32 (i32.const 0)) + (global $math$bits.deBruijn64tab.1 i32 (i32.const 14920)) + (global $math$bits.init$guard (mut i32) (i32.const 0)) + (global $errors.init$guard (mut i32) (i32.const 0)) + (global $strconv.ErrRange.0 i32 (i32.const 0)) + (global $strconv.ErrRange.1 i32 (i32.const 14984)) + (global $strconv.ErrSyntax.0 i32 (i32.const 0)) + (global $strconv.ErrSyntax.1 i32 (i32.const 15000)) + (global $strconv.detailedPowersOfTen.0 i32 (i32.const 0)) + (global $strconv.detailedPowersOfTen.1 i32 (i32.const 15016)) + (global $strconv.f64info.0 i32 (i32.const 0)) + (global $strconv.f64info.1 i32 (i32.const 26152)) + (global $strconv.float32info.0 i32 (i32.const 0)) + (global $strconv.float32info.1 i32 (i32.const 26164)) + (global $strconv.float32pow10.0 i32 (i32.const 0)) + (global $strconv.float32pow10.1 i32 (i32.const 26176)) + (global $strconv.float64pow10.0 i32 (i32.const 0)) + (global $strconv.float64pow10.1 i32 (i32.const 26224)) + (global $strconv.init$guard (mut i32) (i32.const 0)) + (global $strconv.isGraphic.0 i32 (i32.const 0)) + (global $strconv.isGraphic.1 i32 (i32.const 26408)) + (global $strconv.isNotPrint16.0 i32 (i32.const 0)) + (global $strconv.isNotPrint16.1 i32 (i32.const 26440)) + (global $strconv.isNotPrint32.0 i32 (i32.const 0)) + (global $strconv.isNotPrint32.1 i32 (i32.const 26704)) + (global $strconv.isPrint16.0 i32 (i32.const 0)) + (global $strconv.isPrint16.1 i32 (i32.const 26894)) + (global $strconv.isPrint32.0 i32 (i32.const 0)) + (global $strconv.isPrint32.1 i32 (i32.const 27764)) + (global $strconv.leftcheats.0 i32 (i32.const 0)) + (global $strconv.leftcheats.1 i32 (i32.const 29636)) + (global $strconv.optimize.0 i32 (i32.const 0)) + (global $strconv.optimize.1 i32 (i32.const 30612)) + (global $strconv.powtab.0 i32 (i32.const 0)) + (global $strconv.powtab.1 i32 (i32.const 30616)) + (global $strconv.u64pow10.0 i32 (i32.const 0)) + (global $strconv.u64pow10.1 i32 (i32.const 30656)) + (global $syscall$wasm4.init$guard (mut i32) (i32.const 0)) + (global $unicode$utf8.acceptRanges.0 i32 (i32.const 0)) + (global $unicode$utf8.acceptRanges.1 i32 (i32.const 30816)) + (global $unicode$utf8.first.0 i32 (i32.const 0)) + (global $unicode$utf8.first.1 i32 (i32.const 30848)) + (global $unicode$utf8.init$guard (mut i32) (i32.const 0)) + (global $w4teris.CLEAR_SCORES.0 i32 (i32.const 0)) + (global $w4teris.CLEAR_SCORES.1 i32 (i32.const 31104)) + (global $w4teris.LEVEL_SPEED.0 i32 (i32.const 0)) + (global $w4teris.LEVEL_SPEED.1 i32 (i32.const 31120)) + (global $w4teris.PIECE_COLORS.0 i32 (i32.const 0)) + (global $w4teris.PIECE_COLORS.1 i32 (i32.const 31136)) + (global $w4teris.PIECE_COORDS.0 i32 (i32.const 0)) + (global $w4teris.PIECE_COORDS.1 i32 (i32.const 31152)) + (global $w4teris.PIECE_SPRITES.0 i32 (i32.const 0)) + (global $w4teris.PIECE_SPRITES.1 i32 (i32.const 31168)) + (global $w4teris.best.0 i32 (i32.const 0)) + (global $w4teris.best.1 i32 (i32.const 31184)) + (global $w4teris.board.0 i32 (i32.const 0)) + (global $w4teris.board.1 i32 (i32.const 31188)) + (global $w4teris.clearAnimationDelay.0 i32 (i32.const 0)) + (global $w4teris.clearAnimationDelay.1 i32 (i32.const 31388)) + (global $w4teris.clearAnimationRowMask.0 i32 (i32.const 0)) + (global $w4teris.clearAnimationRowMask.1 i32 (i32.const 31392)) + (global $w4teris.gameover.0 i32 (i32.const 0)) + (global $w4teris.gameover.1 i32 (i32.const 31396)) + (global $w4teris.gameoverElapsed.0 i32 (i32.const 0)) + (global $w4teris.gameoverElapsed.1 i32 (i32.const 31400)) + (global $w4teris.gravityDelay.0 i32 (i32.const 0)) + (global $w4teris.gravityDelay.1 i32 (i32.const 31404)) + (global $w4teris.holdingDirection.0 i32 (i32.const 0)) + (global $w4teris.holdingDirection.1 i32 (i32.const 31408)) + (global $w4teris.init$guard (mut i32) (i32.const 0)) + (global $w4teris.lastGamepadState.0 i32 (i32.const 0)) + (global $w4teris.lastGamepadState.1 i32 (i32.const 31412)) + (global $w4teris.level.0 i32 (i32.const 0)) + (global $w4teris.level.1 i32 (i32.const 31416)) + (global $w4teris.lines.0 i32 (i32.const 0)) + (global $w4teris.lines.1 i32 (i32.const 31420)) + (global $w4teris.nextPieceType.0 i32 (i32.const 0)) + (global $w4teris.nextPieceType.1 i32 (i32.const 31424)) + (global $w4teris.piece.0 i32 (i32.const 0)) + (global $w4teris.piece.1 i32 (i32.const 31428)) + (global $w4teris.repeatDelay.0 i32 (i32.const 0)) + (global $w4teris.repeatDelay.1 i32 (i32.const 31472)) + (global $w4teris.score.0 i32 (i32.const 0)) + (global $w4teris.score.1 i32 (i32.const 31476)) + (global $w4teris.seed.0 i32 (i32.const 0)) + (global $w4teris.seed.1 i32 (i32.const 31480)) + (global $runtime.zptr (mut i32) (i32.const 35000)) + (global $__heap_base i32 (i32.const 46240)) + (func $runtime.throw + unreachable + ) + (func $runtime.heapBase (result i32) + global.get $__heap_base + ) + (func $runtime.heapMax (result i32) + global.get $__heap_max + ) + (func $runtime.HeapAlloc (export "runtime.HeapAlloc") (param $nbytes i32) (result i32) + (local $ptr i32) + local.get $nbytes + i32.eqz + if + i32.const 0 + return + end + local.get $nbytes + i32.const 7 + i32.add + i32.const 8 + i32.div_u + i32.const 8 + i32.mul + local.set $nbytes + local.get $nbytes + call $runtime.malloc + local.set $ptr + loop $zero + local.get $nbytes + i32.const 8 + i32.sub + local.tee $nbytes + local.get $ptr + i32.add + i64.const 0 + i64.store align=8 + local.get $nbytes + if + br $zero + end + end + local.get $ptr + ) + (func $runtime.HeapFree (export "runtime.HeapFree") (param $ptr i32) + local.get $ptr + call $runtime.free + ) + (func $runtime.Block.Init (param $ptr i32) (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + i32.const 1 + i32.store align=1 + local.get $ptr + local.get $item_count + i32.store offset=4 align=1 + local.get $ptr + local.get $release_func + i32.store offset=8 align=1 + local.get $ptr + local.get $item_size + i32.store offset=12 align=1 + end + ) + (func $runtime.Block.HeapAlloc (export "runtime.Block.HeapAlloc") (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $item_count + local.get $item_size + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $item_count + local.get $release_func + local.get $item_size + call $runtime.Block.Init + ) + (func $runtime.DupI32 (param $a i32) (result i32 i32) + local.get $a + local.get $a + ) + (func $runtime.Block.Retain (export "runtime.Block.Retain") (param $ptr i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + local.get $ptr + i32.load align=1 + i32.const 1 + i32.add + i32.store align=1 + end + ) + (func $runtime.Block.Release (export "runtime.Block.Release") (param $ptr i32) + (local $ref_count i32) + (local $item_count i32) + (local $free_func i32) + (local $item_size i32) + (local $data_ptr i32) + local.get $ptr + i32.const 0 + i32.eq + if + return + end + local.get $ptr + i32.load align=1 + i32.const 1 + i32.sub + local.set $ref_count + local.get $ref_count + if + local.get $ptr + local.get $ref_count + i32.store align=1 + else + local.get $ptr + i32.load offset=8 align=1 + local.set $free_func + local.get $free_func + if + local.get $ptr + i32.load offset=4 align=1 + local.set $item_count + local.get $item_count + if + local.get $ptr + i32.load offset=12 align=1 + local.set $item_size + local.get $ptr + i32.const 16 + i32.add + local.set $data_ptr + loop $free_next + local.get $data_ptr + local.get $free_func + call_indirect 0 (type $$onFree) + local.get $item_count + i32.const 1 + i32.sub + local.set $item_count + local.get $item_count + if + local.get $data_ptr + local.get $item_size + i32.add + local.set $data_ptr + br $free_next + end + end + end + end + local.get $ptr + call $runtime.HeapFree + end + ) + (func $$wa.runtime.string_to_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) + local.get $d + ) + (func $$wa.runtime.string_to_iter (param $b i32) (param $d i32) (param $l i32) (result i32 i32 i32) + local.get $d + local.get $l + i32.const 0 + ) + (func $$syscall/wasm4.__linkname__string_data_ptr (param $b i32) (param $d i32) (param $l i32) (result i32) + local.get $d + ) + (func $$syscall/wasm4.__linkname__slice_data_ptr (param $b i32) (param $d i32) (param $l i32) (param $c i32) (result i32) + local.get $d + ) + (func $$syscall/wasm4.__linkname__make_slice (param $blk i32) (param $ptr i32) (param $len i32) (param $cap i32) (result i32 i32 i32 i32) + local.get $blk + local.get $ptr + local.get $len + local.get $cap + return + ) + (func $$string.appendstr (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32 i32 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $item i32) + (local $src i32) + (local $dest i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_len + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + ) + (func $$string.$$compAddr (param $p0 i32) (param $p1 i32) (result i32) + (local $v0.0 i32) + (local $v0.1 i32) + (local $v0.2 i32) + (local $v1.0 i32) + (local $v1.1 i32) + (local $v1.2 i32) + local.get $p0 + if + local.get $p0 + i32.load + call $runtime.Block.Retain + local.get $p0 + i32.load offset=4 + local.get $p0 + i32.load offset=8 + local.set $v0.2 + local.set $v0.1 + local.get $v0.0 + call $runtime.Block.Release + local.set $v0.0 + end + local.get $p1 + if + local.get $p1 + i32.load + call $runtime.Block.Retain + local.get $p1 + i32.load offset=4 + local.get $p1 + i32.load offset=8 + local.set $v1.2 + local.set $v1.1 + local.get $v1.0 + call $runtime.Block.Release + local.set $v1.0 + end + local.get $v0.0 + local.get $v0.1 + local.get $v0.2 + local.get $v1.0 + local.get $v1.1 + local.get $v1.2 + call $$wa.runtime.string_Comp + local.get $v0.0 + call $runtime.Block.Release + local.get $v1.0 + call $runtime.Block.Release + ) + (func $$u8.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$string.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $runtime.free (param $ap i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 + end + i32.const 0 + local.set $$current_block + local.get $ap + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ap + i32.const 8 + i32.sub + local.set $$t1 + i32.const 0 + local.set $$t2.0 + i32.const 0 + local.set $$t2.1 + local.get $$t1 + call $runtime.knr_getBlockHeader + local.set $$t3.1 + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.set $$t2.1 + local.set $$t2.0 + local.get $$t2.1 + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.le_u + local.set $$t5 + local.get $$t5 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $ap + i32.const 8 + i32.rem_u + local.set $$t6 + local.get $$t6 + i32.const 0 + i32.eq + i32.eqz + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + global.get $$knr_freep + local.set $$t8 + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + local.get $$t8 + call $runtime.knr_getBlockHeader + local.set $$t10.1 + local.set $$t10.0 + local.get $$t10.0 + local.get $$t10.1 + local.set $$t9.1 + local.set $$t9.0 + br $$Block_7 + end + i32.const 6 + local.set $$current_block + local.get $$t9.0 + local.set $$t11 + local.get $$t12 + local.get $$t11 + i32.ge_u + local.set $$t13 + local.get $$t13 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $$t2.1 + local.set $$t14 + local.get $$t14 + i32.const 8 + i32.mul + local.set $$t15 + local.get $$t1 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t9.0 + local.set $$t17 + local.get $$t16 + local.get $$t17 + i32.eq + local.set $$t18 + local.get $$t18 + if + br $$Block_12 + else + br $$Block_14 + end + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t19 + end + local.set $$t12 + i32.const 8 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t9.0 + local.set $$t21 + local.get $$t1 + local.get $$t21 + i32.lt_u + local.set $$t22 + local.get $$t22 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t9.0 + local.set $$t19 + local.get $$t19 + call $runtime.knr_getBlockHeader + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t9.1 + local.set $$t9.0 + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t24 + local.get $$t24 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 12 + local.set $$current_block + local.get $$t9.0 + local.set $$t25 + local.get $$t1 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 0 + local.set $$t27.0 + i32.const 0 + local.set $$t27.1 + local.get $$t9.0 + local.set $$t28 + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t29.1 + local.set $$t29.0 + local.get $$t29.0 + local.get $$t29.1 + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.1 + local.set $$t30 + local.get $$t2.1 + local.set $$t31 + local.get $$t31 + local.get $$t30 + i32.add + local.set $$t32 + local.get $$t32 + local.set $$t2.1 + local.get $$t27.0 + local.set $$t33 + local.get $$t33 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t34.1 + local.set $$t34.0 + local.get $$t1 + local.get $$t34.0 + local.get $$t34.1 + call $runtime.knr_setBlockHeader + br $$Block_13 + end + i32.const 14 + local.set $$current_block + local.get $$t9.1 + local.set $$t35 + local.get $$t35 + i32.const 8 + i32.mul + local.set $$t36 + local.get $$t12 + local.get $$t36 + i32.add + local.set $$t37 + local.get $$t37 + local.get $$t1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_15 + else + br $$Block_17 + end + end + i32.const 15 + local.set $$current_block + local.get $$t9.0 + local.set $$t39 + local.get $$t39 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t40.1 + local.set $$t40.0 + local.get $$t1 + local.get $$t40.0 + local.get $$t40.1 + call $runtime.knr_setBlockHeader + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $$t2.1 + local.set $$t41 + local.get $$t9.1 + local.set $$t42 + local.get $$t42 + local.get $$t41 + i32.add + local.set $$t43 + local.get $$t43 + local.set $$t9.1 + local.get $$t2.0 + local.set $$t44 + local.get $$t44 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t45.1 + local.set $$t45.0 + local.get $$t12 + local.get $$t45.0 + local.get $$t45.1 + call $runtime.knr_setBlockHeader + br $$Block_16 + end + i32.const 17 + local.set $$current_block + local.get $$t12 + global.set $$knr_freep + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t1 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t46.1 + local.set $$t46.0 + local.get $$t12 + local.get $$t46.0 + local.get $$t46.1 + call $runtime.knr_setBlockHeader + i32.const 17 + local.set $$block_selector + br $$BlockDisp + end + end + end + ) + (func $runtime.getItab (param $dhash i32) (param $ihash i32) (param $commanok i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + global.get $$wa.runtime._itabsPtr + local.set $$t0 + local.get $dhash + i32.const 1 + i32.sub + local.set $$t1 + global.get $$wa.runtime._interfaceCount + local.set $$t2 + local.get $$t1 + local.get $$t2 + i32.mul + local.set $$t3 + local.get $$t3 + local.get $ihash + i32.sub + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.sub + local.set $$t5 + local.get $$t5 + i32.const 4 + i32.mul + local.set $$t6 + local.get $$t0 + local.get $$t6 + i32.add + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + call $runtime.getU32 + local.set $$t9 + local.get $$t9 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $runtime.getU32 (param $addr i32) (result i32) + local.get $addr + i32.load + ) + (func $runtime.get_u8 (param $addr i32) (result i32) + local.get $addr + i32.load8_u align=1 + ) + (func $runtime.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $runtime.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $runtime.init$guard + call $syscall$wasm4.init + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $runtime.knr_getBlockHeader (param $addr i32) (result i32 i32) + local.get $addr + i32.load + local.get $addr + i32.load offset=4 + ) + (func $runtime.knr_setBlockHeader (param $addr i32) (param $data.0 i32) (param $data.1 i32) + local.get $addr + local.get $data.0 + i32.store + local.get $addr + local.get $data.1 + i32.store offset=4 + ) + (func $runtime.malloc (param $nbytes i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 + end + i32.const 0 + local.set $$current_block + local.get $nbytes + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + global.get $$knr_basep + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + call $runtime.heapMax + local.set $$t3 + global.get $$knr_basep + local.set $$t4 + local.get $$t3 + local.get $$t4 + i32.sub + local.set $$t5 + local.get $nbytes + local.get $$t5 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + call $runtime.heapBase + local.set $$t7 + local.get $$t7 + global.set $$knr_basep + global.get $$knr_basep + local.set $$t8 + local.get $$t8 + global.set $$knr_freep + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t10 + call $runtime.heapMax + local.set $$t11 + global.get $$knr_basep + local.set $$t12 + local.get $$t11 + local.get $$t12 + i32.sub + local.set $$t13 + local.get $$t13 + i32.const 8 + i32.div_u + local.set $$t14 + local.get $$t14 + i32.const 1 + i32.sub + local.set $$t15 + local.get $$t10 + local.set $$t9.0 + local.get $$t15 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t16 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t17.1 + local.set $$t17.0 + local.get $$t16 + local.get $$t17.0 + local.get $$t17.1 + call $runtime.knr_setBlockHeader + br $$Block_4 + end + i32.const 5 + local.set $$current_block + local.get $nbytes + i32.const 8 + i32.add + local.set $$t18 + local.get $$t18 + i32.const 1 + i32.sub + local.set $$t19 + local.get $$t19 + i32.const 8 + i32.div_u + local.set $$t20 + local.get $$t20 + i32.const 1 + i32.add + local.set $$t21 + global.get $$knr_freep + local.set $$t22 + i32.const 0 + local.set $$t23.0 + i32.const 0 + local.set $$t23.1 + local.get $$t22 + call $runtime.knr_getBlockHeader + local.set $$t24.1 + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.set $$t25 + i32.const 0 + local.set $$t26.0 + i32.const 0 + local.set $$t26.1 + local.get $$t25 + call $runtime.knr_getBlockHeader + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.0 + local.get $$t27.1 + local.set $$t26.1 + local.set $$t26.0 + br $$Block_5 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t22 + else + local.get $$t28 + end + local.set $$t29 + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t25 + else + local.get $$t30 + end + local.set $$t28 + i32.const 6 + local.set $$current_block + local.get $$t26.1 + local.set $$t31 + local.get $$t31 + local.get $$t21 + i32.ge_u + local.set $$t32 + local.get $$t32 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t26.1 + local.set $$t33 + local.get $$t33 + local.get $$t21 + i32.eq + local.set $$t34 + local.get $$t34 + if + br $$Block_8 + else + br $$Block_10 + end + end + i32.const 8 + local.set $$current_block + global.get $$knr_freep + local.set $$t35 + local.get $$t28 + local.get $$t35 + i32.eq + local.set $$t36 + local.get $$t36 + if + br $$Block_11 + else + br $$Block_12 + end + end + i32.const 9 + local.set $$current_block + local.get $$t26.0 + local.set $$t37 + local.get $$t37 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t38.1 + local.set $$t38.0 + local.get $$t29 + local.get $$t38.0 + local.get $$t38.1 + call $runtime.knr_setBlockHeader + br $$Block_9 + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t28 + else + local.get $$t39 + end + local.set $$t40 + i32.const 10 + local.set $$current_block + local.get $$t29 + global.set $$knr_freep + local.get $$t40 + i32.const 8 + i32.add + local.set $$t41 + local.get $$t41 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $$t26.1 + local.set $$t42 + local.get $$t42 + local.get $$t21 + i32.sub + local.set $$t43 + local.get $$t43 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t44.1 + local.set $$t44.0 + local.get $$t28 + local.get $$t44.0 + local.get $$t44.1 + call $runtime.knr_setBlockHeader + local.get $$t26.1 + local.set $$t45 + local.get $$t45 + i32.const 8 + i32.mul + local.set $$t46 + local.get $$t28 + local.get $$t46 + i32.add + local.set $$t39 + local.get $$t39 + call $runtime.knr_getBlockHeader + local.set $$t47.1 + local.set $$t47.0 + local.get $$t47.0 + local.get $$t47.1 + local.set $$t26.1 + local.set $$t26.0 + local.get $$t21 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t48.1 + local.set $$t48.0 + local.get $$t39 + local.get $$t48.0 + local.get $$t48.1 + call $runtime.knr_setBlockHeader + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t49.1 + local.set $$t49.0 + local.get $$t49.0 + local.get $$t49.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t26.0 + local.set $$t30 + local.get $$t30 + call $runtime.knr_getBlockHeader + local.set $$t50.1 + local.set $$t50.0 + local.get $$t50.0 + local.get $$t50.1 + local.set $$t26.1 + local.set $$t26.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + ) + (func $$void.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$void.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + call_indirect 0 (type $$onFree) + ) + (func $$i`0`.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapNode.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 9 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapImp.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 11 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapIter.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 12 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$array1.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $runtime.next_rune (param $iter.0 i32) (param $iter.1 i32) (param $iter.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$ret_2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101 i32) + (local $$t102 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106 i32) + (local $$t107 i32) + (local $$t108 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110 i32) + (local $$t111 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116 i32) + (local $$t117 i32) + (local $$t118 i32) + (local $$t119 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121 i32) + (local $$t122 i32) + (local $$t123 i32) + (local $$t124 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126 i32) + (local $$t127 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $iter.0 + i32.store + local.get $$t0.1 + local.get $iter.1 + i32.store offset=4 + local.get $$t0.1 + local.get $iter.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.ge_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + i32.const 0 + local.set $$ret_0 + local.get $$t7 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + local.get $$t9 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + local.set $$t12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t14 + local.set $$t15 + local.get $$t12 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t16 + call $runtime.get_u8 + local.set $$t17 + local.get $$t17 + local.set $$t18 + local.get $$t18 + i32.const 128 + i32.and + local.set $$t19 + local.get $$t19 + i32.const 0 + i32.eq + local.set $$t20 + local.get $$t20 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.load + local.set $$t22 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t24 + i32.const 1 + i32.add + local.set $$t25 + i32.const 1 + local.set $$ret_0 + local.get $$t22 + local.set $$ret_1 + local.get $$t18 + local.set $$ret_2 + local.get $$t25 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t18 + i32.const 224 + i32.and + local.set $$t26 + local.get $$t26 + i32.const 192 + i32.eq + local.set $$t27 + local.get $$t27 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t18 + i32.const 31 + i32.and + local.set $$t28 + local.get $$t28 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t29 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t32 + local.get $$t35 + i32.add + local.set $$t36 + local.get $$t36 + i32.const 1 + i32.add + local.set $$t37 + local.get $$t37 + call $runtime.get_u8 + local.set $$t38 + local.get $$t38 + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t29 + local.get $$t40 + i32.or + local.set $$t43 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.add + local.set $$t46 + i32.const 1 + local.set $$ret_0 + local.get $$t42 + local.set $$ret_1 + local.get $$t43 + local.set $$ret_2 + local.get $$t46 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $$t18 + i32.const 240 + i32.and + local.set $$t47 + local.get $$t47 + i32.const 224 + i32.eq + local.set $$t48 + local.get $$t48 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t18 + i32.const 15 + i32.and + local.set $$t49 + local.get $$t49 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t50 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.set $$t52 + local.get $$t52 + local.set $$t53 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.1 + i32.load + local.set $$t55 + local.get $$t55 + local.set $$t56 + local.get $$t53 + local.get $$t56 + i32.add + local.set $$t57 + local.get $$t57 + i32.const 1 + i32.add + local.set $$t58 + local.get $$t58 + call $runtime.get_u8 + local.set $$t59 + local.get $$t59 + local.set $$t60 + local.get $$t60 + i32.const 63 + i32.and + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t63.1 + i32.load + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.load + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t65 + local.get $$t68 + i32.add + local.set $$t69 + local.get $$t69 + i32.const 2 + i32.add + local.set $$t70 + local.get $$t70 + call $runtime.get_u8 + local.set $$t71 + local.get $$t71 + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + local.get $$t74.1 + i32.load + local.set $$t75 + local.get $$t50 + local.get $$t62 + i32.or + local.set $$t76 + local.get $$t76 + local.get $$t73 + i32.or + local.set $$t77 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + local.get $$t78.1 + i32.load + local.set $$t79 + local.get $$t79 + i32.const 3 + i32.add + local.set $$t80 + i32.const 1 + local.set $$ret_0 + local.get $$t75 + local.set $$ret_1 + local.get $$t77 + local.set $$ret_2 + local.get $$t80 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t18 + i32.const 248 + i32.and + local.set $$t81 + local.get $$t81 + i32.const 240 + i32.eq + local.set $$t82 + local.get $$t82 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t18 + i32.const 7 + i32.and + local.set $$t83 + local.get $$t83 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t84 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.1 + i32.load + local.set $$t86 + local.get $$t86 + local.set $$t87 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.load + local.set $$t89 + local.get $$t89 + local.set $$t90 + local.get $$t87 + local.get $$t90 + i32.add + local.set $$t91 + local.get $$t91 + i32.const 1 + i32.add + local.set $$t92 + local.get $$t92 + call $runtime.get_u8 + local.set $$t93 + local.get $$t93 + local.set $$t94 + local.get $$t94 + i32.const 63 + i32.and + local.set $$t95 + local.get $$t95 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t96 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t97.1 + i32.load + local.set $$t98 + local.get $$t98 + local.set $$t99 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $$t100.1 + i32.load + local.set $$t101 + local.get $$t101 + local.set $$t102 + local.get $$t99 + local.get $$t102 + i32.add + local.set $$t103 + local.get $$t103 + i32.const 2 + i32.add + local.set $$t104 + local.get $$t104 + call $runtime.get_u8 + local.set $$t105 + local.get $$t105 + local.set $$t106 + local.get $$t106 + i32.const 63 + i32.and + local.set $$t107 + local.get $$t107 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t108 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.1 + i32.load + local.set $$t110 + local.get $$t110 + local.set $$t111 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.1 + i32.load + local.set $$t113 + local.get $$t113 + local.set $$t114 + local.get $$t111 + local.get $$t114 + i32.add + local.set $$t115 + local.get $$t115 + i32.const 3 + i32.add + local.set $$t116 + local.get $$t116 + call $runtime.get_u8 + local.set $$t117 + local.get $$t117 + local.set $$t118 + local.get $$t118 + i32.const 63 + i32.and + local.set $$t119 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + local.get $$t120.1 + i32.load + local.set $$t121 + local.get $$t84 + local.get $$t96 + i32.or + local.set $$t122 + local.get $$t122 + local.get $$t108 + i32.or + local.set $$t123 + local.get $$t123 + local.get $$t119 + i32.or + local.set $$t124 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.load + local.set $$t126 + local.get $$t126 + i32.const 4 + i32.add + local.set $$t127 + i32.const 1 + local.set $$ret_0 + local.get $$t121 + local.set $$ret_1 + local.get $$t124 + local.set $$ret_2 + local.get $$t127 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + i32.const 0 + local.set $$ret_3 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$ret_2 + local.get $$ret_3 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + ) + (func $$runtime.panic_ (param $msg_ptr i32) (param $msg_len i32) (param $pos_msg_ptr i32) (param $pos_msg_len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 31538 + i32.const 7 + call $$runtime.waPrintString + local.get $msg_ptr + local.get $msg_len + call $$runtime.waPuts + i32.const 0 + i32.const 31502 + i32.const 2 + call $$runtime.waPrintString + local.get $pos_msg_ptr + local.get $pos_msg_len + call $$runtime.waPuts + i32.const 41 + call $$runtime.waPrintRune + i32.const 10 + call $$runtime.waPrintRune + i32.const 1 + call $$runtime.procExit + br $$BlockFnBody + end + end + end + ) + (func $runtime.printString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + local.get $$t0 + i32.const 0 + i32.gt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.refToPtr_string + local.set $$t2 + local.get $$t0 + local.set $$t3 + local.get $$t2 + local.get $$t3 + call $$runtime.waPuts + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$runtime.procExit (param $code i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + call $runtime.throw + br $$BlockFnBody + end + end + end + ) + (func $runtime.refToPtr_string (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$wa.runtime.string_to_ptr + local.set $$t0 + local.get $$t0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $runtime.stringFromRune (param $r i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $r + local.set $$t2 + local.get $$t2 + i32.const 127 + i32.le_u + local.set $$t3 + local.get $$t3 + if + br $$Block_1 + else + br $$Block_3 + end + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const 2 + else + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + i32.const 3 + else + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 3 + else + i32.const 4 + end + end + end + end + local.set $$t4 + i32.const 1 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.get $$t4 + i32.const 0 + i32.sub + local.get $$t1.3 + i32.const 0 + i32.sub + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + call $$string.appendstr + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $r + i32.const 255 + i32.and + local.set $$t8 + local.get $$t7.1 + local.get $$t8 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load8_u align=1 + local.set $$t10 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t12 + local.get $$t12 + i32.const 255 + i32.and + local.set $$t13 + i32.const 192 + local.get $$t13 + i32.or + local.set $$t14 + local.get $$t11.1 + local.get $$t14 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $r + i32.const 255 + i32.and + local.set $$t16 + local.get $$t16 + i32.const 63 + i32.and + local.set $$t17 + i32.const 128 + local.get $$t17 + i32.or + local.set $$t18 + local.get $$t15.1 + local.get $$t18 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 4 + local.set $$current_block + local.get $$t2 + i32.const 2047 + i32.le_u + local.set $$t19 + local.get $$t19 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load8_u align=1 + local.set $$t21 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + i32.const 65533 + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t23 + local.get $$t23 + i32.const 255 + i32.and + local.set $$t24 + i32.const 224 + local.get $$t24 + i32.or + local.set $$t25 + local.get $$t22.1 + local.get $$t25 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + i32.const 65533 + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t27 + local.get $$t27 + i32.const 255 + i32.and + local.set $$t28 + local.get $$t28 + i32.const 63 + i32.and + local.set $$t29 + i32.const 128 + local.get $$t29 + i32.or + local.set $$t30 + local.get $$t26.1 + local.get $$t30 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 65533 + i32.const 255 + i32.and + local.set $$t32 + local.get $$t32 + i32.const 63 + i32.and + local.set $$t33 + i32.const 128 + local.get $$t33 + i32.or + local.set $$t34 + local.get $$t31.1 + local.get $$t34 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $$t2 + i32.const 1114111 + i32.gt_u + local.set $$t35 + local.get $$t35 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.1 + i32.load8_u align=1 + local.set $$t37 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t39 + local.get $$t39 + i32.const 255 + i32.and + local.set $$t40 + i32.const 224 + local.get $$t40 + i32.or + local.set $$t41 + local.get $$t38.1 + local.get $$t41 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t43 + local.get $$t43 + i32.const 255 + i32.and + local.set $$t44 + local.get $$t44 + i32.const 63 + i32.and + local.set $$t45 + i32.const 128 + local.get $$t45 + i32.or + local.set $$t46 + local.get $$t42.1 + local.get $$t46 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $r + i32.const 255 + i32.and + local.set $$t48 + local.get $$t48 + i32.const 63 + i32.and + local.set $$t49 + i32.const 128 + local.get $$t49 + i32.or + local.set $$t50 + local.get $$t47.1 + local.get $$t50 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + i32.const 55296 + local.get $$t2 + i32.le_u + local.set $$t51 + local.get $$t51 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t2 + i32.const 65535 + i32.le_u + local.set $$t52 + local.get $$t52 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 10 + local.set $$current_block + local.get $$t2 + i32.const 57343 + i32.le_u + local.set $$t53 + br $$Block_10 + end + local.get $$current_block + i32.const 8 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t53 + end + local.set $$t54 + i32.const 11 + local.set $$current_block + local.get $$t54 + if + i32.const 5 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.1 + i32.load8_u align=1 + local.set $$t56 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $r + i64.const 18 + i32.wrap_i64 + i32.shr_s + local.set $$t58 + local.get $$t58 + i32.const 255 + i32.and + local.set $$t59 + i32.const 240 + local.get $$t59 + i32.or + local.set $$t60 + local.get $$t57.1 + local.get $$t60 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t62 + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + local.get $$t63 + i32.const 63 + i32.and + local.set $$t64 + i32.const 128 + local.get $$t64 + i32.or + local.set $$t65 + local.get $$t61.1 + local.get $$t65 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t67 + local.get $$t67 + i32.const 255 + i32.and + local.set $$t68 + local.get $$t68 + i32.const 63 + i32.and + local.set $$t69 + i32.const 128 + local.get $$t69 + i32.or + local.set $$t70 + local.get $$t66.1 + local.get $$t70 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $r + i32.const 255 + i32.and + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + i32.const 128 + local.get $$t73 + i32.or + local.set $$t74 + local.get $$t71.1 + local.get $$t74 + i32.store8 align=1 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + ) + (func $$wa.runtime.string_Comp (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $x.0 + local.get $x.1 + local.get $x.2 + call $$wa.runtime.string_to_iter + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0 + local.get $$t0.1 + local.get $$t1.0 + i32.store + local.get $$t0.1 + local.get $$t1.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t1.2 + i32.store offset=8 + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_to_iter + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + local.get $$t2.1 + local.get $$t3.0 + i32.store + local.get $$t2.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t3.2 + i32.store offset=8 + br $$Block_0 + end + i32.const 1 + local.set $$current_block + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $runtime.next_rune + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0 + local.get $$t5.0 + local.set $$t6 + local.get $$t5.1 + local.set $$t7 + local.get $$t5.2 + local.set $$t8 + local.get $$t5.3 + local.set $$t9 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + local.get $$t9 + i32.store + local.get $$t2.1 + i32.load + local.get $$t2.1 + i32.load offset=4 + local.get $$t2.1 + i32.load offset=8 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + call $runtime.next_rune + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.set $$t12.0 + local.get $$t12.0 + local.set $$t13 + local.get $$t12.1 + local.set $$t14 + local.get $$t12.2 + local.set $$t15 + local.get $$t12.3 + local.set $$t16 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 8 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + local.get $$t16 + i32.store + local.get $$t6 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $x.2 + local.set $$t18 + local.get $y.2 + local.set $$t19 + local.get $$t18 + local.get $$t19 + i32.lt_s + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.lt_s + local.set $$t21 + local.get $$t21 + if + br $$Block_5 + else + br $$Block_6 + end + end + i32.const 4 + local.set $$current_block + br $$Block_4 + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t22 + i32.const 5 + local.set $$current_block + local.get $$t22 + i32.const 1 + i32.eq + i32.eqz + local.set $$t23 + local.get $$t23 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.gt_s + local.set $$t24 + local.get $$t24 + if + br $$Block_7 + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 9 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $$t18 + local.get $$t19 + i32.gt_s + local.set $$t25 + local.get $$t25 + if + br $$Block_10 + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + ) + (func $$runtime.waPrintRune (param $ch i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ch + call $runtime.stringFromRune + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + local.get $$t0.1 + local.get $$t0.2 + call $runtime.printString + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $$runtime.waPrintString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $runtime.printString + br $$BlockFnBody + end + end + end + ) + (func $$runtime.waPuts (param $ptr i32) (param $len i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $ptr + local.get $len + call $runtime.traceUtf8 + br $$BlockFnBody + end + end + end + ) + (func $math.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $math$bits.TrailingZeros (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i64) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $x + local.set $$t0 + local.get $$t0 + call $math$bits.TrailingZeros32 + local.set $$t1 + local.get $$t1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $x + i64.extend_i32_u + local.set $$t2 + local.get $$t2 + call $math$bits.TrailingZeros64 + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $math$bits.TrailingZeros32 (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 32 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i32.const 0 + local.get $x + i32.sub + local.set $$t1 + local.get $x + local.get $$t1 + i32.and + local.set $$t2 + local.get $$t2 + i32.const 125613361 + i32.mul + local.set $$t3 + local.get $$t3 + i64.const 27 + i32.wrap_i64 + i32.shr_u + local.set $$t4 + local.get $$t4 + local.set $$t5 + i32.const 0 + i32.const 14888 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load8_u align=1 + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $math$bits.TrailingZeros64 (param $x i64) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i64) + (local $$t2 i64) + (local $$t3 i64) + (local $$t4 i64) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i64.const 0 + i64.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 64 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i64.const 0 + local.get $x + i64.sub + local.set $$t1 + local.get $x + local.get $$t1 + i64.and + local.set $$t2 + local.get $$t2 + i64.const 285870213051353865 + i64.mul + local.set $$t3 + local.get $$t3 + i64.const 58 + i64.shr_u + local.set $$t4 + local.get $$t4 + i32.wrap_i64 + local.set $$t5 + i32.const 0 + i32.const 14920 + i32.const 1 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load8_u align=1 + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $math$bits.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $math$bits.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $math$bits.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$errors.errorString.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 3 + call_indirect 0 (type $$onFree) + ) + (func $errors.New (param $text.0 i32) (param $text.1 i32) (param $text.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0.0 i32) + (local $$ret_0.0.1 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0.0 i32) + (local $$t2.0.1 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 15 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + local.get $text.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t1.1 + local.get $text.1 + i32.store offset=4 + local.get $$t1.1 + local.get $text.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const -2 + i32.const 0 + call $runtime.getItab + i32.const 0 + local.set $$t2.2 + local.set $$t2.1 + local.set $$t2.0.1 + local.get $$t2.0.0 + call $runtime.Block.Release + local.set $$t2.0.0 + local.get $$t2.0.0 + call $runtime.Block.Retain + local.get $$t2.0.1 + local.get $$t2.1 + local.get $$t2.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.set $$ret_0.0.1 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.set $$ret_0.0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0.0 + call $runtime.Block.Retain + local.get $$ret_0.0.1 + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0.0 + call $runtime.Block.Release + ) + (func $errors.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $errors.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $errors.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $$u8.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if(result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 1 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end + end + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load8_u align=1 + local.set $item + local.get $dest + local.get $item + i32.store8 align=1 + local.get $src + i32.const 1 + i32.add + local.set $src + local.get $dest + i32.const 1 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + end + ) + (func $$.error.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$strconv.NumError.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 3 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 12 + i32.add + i32.const 3 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 24 + i32.add + i32.const 16 + call_indirect 0 (type $$onFree) + ) + (func $strconv.FormatInt (param $i i64) (param $base i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2 i64) + (local $$t3 i32) + (local $$t4.0.0 i32) + (local $$t4.0.1 i32) + (local $$t4.0.2 i32) + (local $$t4.0.3 i32) + (local $$t4.1.0 i32) + (local $$t4.1.1 i32) + (local $$t4.1.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + i32.const 1 + if + br $$Block_4 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $i + i32.wrap_i64 + local.set $$t0 + local.get $$t0 + call $strconv.small + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $i + local.set $$t2 + local.get $i + i64.const 0 + i64.lt_s + local.set $$t3 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.get $$t2 + local.get $base + local.get $$t3 + i32.const 0 + call $strconv.formatBits + local.set $$t4.1.2 + local.set $$t4.1.1 + local.get $$t4.1.0 + call $runtime.Block.Release + local.set $$t4.1.0 + local.set $$t4.0.3 + local.set $$t4.0.2 + local.set $$t4.0.1 + local.get $$t4.0.0 + call $runtime.Block.Release + local.set $$t4.0.0 + local.get $$t4.0.0 + call $runtime.Block.Retain + local.get $$t4.0.1 + local.get $$t4.0.2 + local.get $$t4.0.3 + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t4.1.0 + call $runtime.Block.Retain + local.get $$t4.1.1 + local.get $$t4.1.2 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + local.get $base + i32.const 10 + i32.eq + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $i + i64.const 100 + i64.lt_s + local.set $$t8 + local.get $$t8 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + i64.const 0 + local.get $i + i64.le_s + local.set $$t9 + local.get $$t9 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t4.1.0 + call $runtime.Block.Release + local.get $$t4.0.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $strconv.IsPrint (param $r i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t10.2 i32) + (local $$t10.3 i32) + (local $$t10.4 i32) + (local $$t10.5 i32) + (local $$t10.6 i32) + (local $$t10.7 i32) + (local $$t10.8 i32) + (local $$t10.9 i32) + (local $$t10.10 i32) + (local $$t10.11 i32) + (local $$t10.12 i32) + (local $$t10.13 i32) + (local $$t10.14 i32) + (local $$t10.15 i32) + (local $$t10.16 i32) + (local $$t10.17 i32) + (local $$t10.18 i32) + (local $$t10.19 i32) + (local $$t10.20 i32) + (local $$t10.21 i32) + (local $$t10.22 i32) + (local $$t10.23 i32) + (local $$t10.24 i32) + (local $$t10.25 i32) + (local $$t10.26 i32) + (local $$t10.27 i32) + (local $$t10.28 i32) + (local $$t10.29 i32) + (local $$t10.30 i32) + (local $$t10.31 i32) + (local $$t10.32 i32) + (local $$t10.33 i32) + (local $$t10.34 i32) + (local $$t10.35 i32) + (local $$t10.36 i32) + (local $$t10.37 i32) + (local $$t10.38 i32) + (local $$t10.39 i32) + (local $$t10.40 i32) + (local $$t10.41 i32) + (local $$t10.42 i32) + (local $$t10.43 i32) + (local $$t10.44 i32) + (local $$t10.45 i32) + (local $$t10.46 i32) + (local $$t10.47 i32) + (local $$t10.48 i32) + (local $$t10.49 i32) + (local $$t10.50 i32) + (local $$t10.51 i32) + (local $$t10.52 i32) + (local $$t10.53 i32) + (local $$t10.54 i32) + (local $$t10.55 i32) + (local $$t10.56 i32) + (local $$t10.57 i32) + (local $$t10.58 i32) + (local $$t10.59 i32) + (local $$t10.60 i32) + (local $$t10.61 i32) + (local $$t10.62 i32) + (local $$t10.63 i32) + (local $$t10.64 i32) + (local $$t10.65 i32) + (local $$t10.66 i32) + (local $$t10.67 i32) + (local $$t10.68 i32) + (local $$t10.69 i32) + (local $$t10.70 i32) + (local $$t10.71 i32) + (local $$t10.72 i32) + (local $$t10.73 i32) + (local $$t10.74 i32) + (local $$t10.75 i32) + (local $$t10.76 i32) + (local $$t10.77 i32) + (local $$t10.78 i32) + (local $$t10.79 i32) + (local $$t10.80 i32) + (local $$t10.81 i32) + (local $$t10.82 i32) + (local $$t10.83 i32) + (local $$t10.84 i32) + (local $$t10.85 i32) + (local $$t10.86 i32) + (local $$t10.87 i32) + (local $$t10.88 i32) + (local $$t10.89 i32) + (local $$t10.90 i32) + (local $$t10.91 i32) + (local $$t10.92 i32) + (local $$t10.93 i32) + (local $$t10.94 i32) + (local $$t10.95 i32) + (local $$t10.96 i32) + (local $$t10.97 i32) + (local $$t10.98 i32) + (local $$t10.99 i32) + (local $$t10.100 i32) + (local $$t10.101 i32) + (local $$t10.102 i32) + (local $$t10.103 i32) + (local $$t10.104 i32) + (local $$t10.105 i32) + (local $$t10.106 i32) + (local $$t10.107 i32) + (local $$t10.108 i32) + (local $$t10.109 i32) + (local $$t10.110 i32) + (local $$t10.111 i32) + (local $$t10.112 i32) + (local $$t10.113 i32) + (local $$t10.114 i32) + (local $$t10.115 i32) + (local $$t10.116 i32) + (local $$t10.117 i32) + (local $$t10.118 i32) + (local $$t10.119 i32) + (local $$t10.120 i32) + (local $$t10.121 i32) + (local $$t10.122 i32) + (local $$t10.123 i32) + (local $$t10.124 i32) + (local $$t10.125 i32) + (local $$t10.126 i32) + (local $$t10.127 i32) + (local $$t10.128 i32) + (local $$t10.129 i32) + (local $$t10.130 i32) + (local $$t10.131 i32) + (local $$t10.132 i32) + (local $$t10.133 i32) + (local $$t10.134 i32) + (local $$t10.135 i32) + (local $$t10.136 i32) + (local $$t10.137 i32) + (local $$t10.138 i32) + (local $$t10.139 i32) + (local $$t10.140 i32) + (local $$t10.141 i32) + (local $$t10.142 i32) + (local $$t10.143 i32) + (local $$t10.144 i32) + (local $$t10.145 i32) + (local $$t10.146 i32) + (local $$t10.147 i32) + (local $$t10.148 i32) + (local $$t10.149 i32) + (local $$t10.150 i32) + (local $$t10.151 i32) + (local $$t10.152 i32) + (local $$t10.153 i32) + (local $$t10.154 i32) + (local $$t10.155 i32) + (local $$t10.156 i32) + (local $$t10.157 i32) + (local $$t10.158 i32) + (local $$t10.159 i32) + (local $$t10.160 i32) + (local $$t10.161 i32) + (local $$t10.162 i32) + (local $$t10.163 i32) + (local $$t10.164 i32) + (local $$t10.165 i32) + (local $$t10.166 i32) + (local $$t10.167 i32) + (local $$t10.168 i32) + (local $$t10.169 i32) + (local $$t10.170 i32) + (local $$t10.171 i32) + (local $$t10.172 i32) + (local $$t10.173 i32) + (local $$t10.174 i32) + (local $$t10.175 i32) + (local $$t10.176 i32) + (local $$t10.177 i32) + (local $$t10.178 i32) + (local $$t10.179 i32) + (local $$t10.180 i32) + (local $$t10.181 i32) + (local $$t10.182 i32) + (local $$t10.183 i32) + (local $$t10.184 i32) + (local $$t10.185 i32) + (local $$t10.186 i32) + (local $$t10.187 i32) + (local $$t10.188 i32) + (local $$t10.189 i32) + (local $$t10.190 i32) + (local $$t10.191 i32) + (local $$t10.192 i32) + (local $$t10.193 i32) + (local $$t10.194 i32) + (local $$t10.195 i32) + (local $$t10.196 i32) + (local $$t10.197 i32) + (local $$t10.198 i32) + (local $$t10.199 i32) + (local $$t10.200 i32) + (local $$t10.201 i32) + (local $$t10.202 i32) + (local $$t10.203 i32) + (local $$t10.204 i32) + (local $$t10.205 i32) + (local $$t10.206 i32) + (local $$t10.207 i32) + (local $$t10.208 i32) + (local $$t10.209 i32) + (local $$t10.210 i32) + (local $$t10.211 i32) + (local $$t10.212 i32) + (local $$t10.213 i32) + (local $$t10.214 i32) + (local $$t10.215 i32) + (local $$t10.216 i32) + (local $$t10.217 i32) + (local $$t10.218 i32) + (local $$t10.219 i32) + (local $$t10.220 i32) + (local $$t10.221 i32) + (local $$t10.222 i32) + (local $$t10.223 i32) + (local $$t10.224 i32) + (local $$t10.225 i32) + (local $$t10.226 i32) + (local $$t10.227 i32) + (local $$t10.228 i32) + (local $$t10.229 i32) + (local $$t10.230 i32) + (local $$t10.231 i32) + (local $$t10.232 i32) + (local $$t10.233 i32) + (local $$t10.234 i32) + (local $$t10.235 i32) + (local $$t10.236 i32) + (local $$t10.237 i32) + (local $$t10.238 i32) + (local $$t10.239 i32) + (local $$t10.240 i32) + (local $$t10.241 i32) + (local $$t10.242 i32) + (local $$t10.243 i32) + (local $$t10.244 i32) + (local $$t10.245 i32) + (local $$t10.246 i32) + (local $$t10.247 i32) + (local $$t10.248 i32) + (local $$t10.249 i32) + (local $$t10.250 i32) + (local $$t10.251 i32) + (local $$t10.252 i32) + (local $$t10.253 i32) + (local $$t10.254 i32) + (local $$t10.255 i32) + (local $$t10.256 i32) + (local $$t10.257 i32) + (local $$t10.258 i32) + (local $$t10.259 i32) + (local $$t10.260 i32) + (local $$t10.261 i32) + (local $$t10.262 i32) + (local $$t10.263 i32) + (local $$t10.264 i32) + (local $$t10.265 i32) + (local $$t10.266 i32) + (local $$t10.267 i32) + (local $$t10.268 i32) + (local $$t10.269 i32) + (local $$t10.270 i32) + (local $$t10.271 i32) + (local $$t10.272 i32) + (local $$t10.273 i32) + (local $$t10.274 i32) + (local $$t10.275 i32) + (local $$t10.276 i32) + (local $$t10.277 i32) + (local $$t10.278 i32) + (local $$t10.279 i32) + (local $$t10.280 i32) + (local $$t10.281 i32) + (local $$t10.282 i32) + (local $$t10.283 i32) + (local $$t10.284 i32) + (local $$t10.285 i32) + (local $$t10.286 i32) + (local $$t10.287 i32) + (local $$t10.288 i32) + (local $$t10.289 i32) + (local $$t10.290 i32) + (local $$t10.291 i32) + (local $$t10.292 i32) + (local $$t10.293 i32) + (local $$t10.294 i32) + (local $$t10.295 i32) + (local $$t10.296 i32) + (local $$t10.297 i32) + (local $$t10.298 i32) + (local $$t10.299 i32) + (local $$t10.300 i32) + (local $$t10.301 i32) + (local $$t10.302 i32) + (local $$t10.303 i32) + (local $$t10.304 i32) + (local $$t10.305 i32) + (local $$t10.306 i32) + (local $$t10.307 i32) + (local $$t10.308 i32) + (local $$t10.309 i32) + (local $$t10.310 i32) + (local $$t10.311 i32) + (local $$t10.312 i32) + (local $$t10.313 i32) + (local $$t10.314 i32) + (local $$t10.315 i32) + (local $$t10.316 i32) + (local $$t10.317 i32) + (local $$t10.318 i32) + (local $$t10.319 i32) + (local $$t10.320 i32) + (local $$t10.321 i32) + (local $$t10.322 i32) + (local $$t10.323 i32) + (local $$t10.324 i32) + (local $$t10.325 i32) + (local $$t10.326 i32) + (local $$t10.327 i32) + (local $$t10.328 i32) + (local $$t10.329 i32) + (local $$t10.330 i32) + (local $$t10.331 i32) + (local $$t10.332 i32) + (local $$t10.333 i32) + (local $$t10.334 i32) + (local $$t10.335 i32) + (local $$t10.336 i32) + (local $$t10.337 i32) + (local $$t10.338 i32) + (local $$t10.339 i32) + (local $$t10.340 i32) + (local $$t10.341 i32) + (local $$t10.342 i32) + (local $$t10.343 i32) + (local $$t10.344 i32) + (local $$t10.345 i32) + (local $$t10.346 i32) + (local $$t10.347 i32) + (local $$t10.348 i32) + (local $$t10.349 i32) + (local $$t10.350 i32) + (local $$t10.351 i32) + (local $$t10.352 i32) + (local $$t10.353 i32) + (local $$t10.354 i32) + (local $$t10.355 i32) + (local $$t10.356 i32) + (local $$t10.357 i32) + (local $$t10.358 i32) + (local $$t10.359 i32) + (local $$t10.360 i32) + (local $$t10.361 i32) + (local $$t10.362 i32) + (local $$t10.363 i32) + (local $$t10.364 i32) + (local $$t10.365 i32) + (local $$t10.366 i32) + (local $$t10.367 i32) + (local $$t10.368 i32) + (local $$t10.369 i32) + (local $$t10.370 i32) + (local $$t10.371 i32) + (local $$t10.372 i32) + (local $$t10.373 i32) + (local $$t10.374 i32) + (local $$t10.375 i32) + (local $$t10.376 i32) + (local $$t10.377 i32) + (local $$t10.378 i32) + (local $$t10.379 i32) + (local $$t10.380 i32) + (local $$t10.381 i32) + (local $$t10.382 i32) + (local $$t10.383 i32) + (local $$t10.384 i32) + (local $$t10.385 i32) + (local $$t10.386 i32) + (local $$t10.387 i32) + (local $$t10.388 i32) + (local $$t10.389 i32) + (local $$t10.390 i32) + (local $$t10.391 i32) + (local $$t10.392 i32) + (local $$t10.393 i32) + (local $$t10.394 i32) + (local $$t10.395 i32) + (local $$t10.396 i32) + (local $$t10.397 i32) + (local $$t10.398 i32) + (local $$t10.399 i32) + (local $$t10.400 i32) + (local $$t10.401 i32) + (local $$t10.402 i32) + (local $$t10.403 i32) + (local $$t10.404 i32) + (local $$t10.405 i32) + (local $$t10.406 i32) + (local $$t10.407 i32) + (local $$t10.408 i32) + (local $$t10.409 i32) + (local $$t10.410 i32) + (local $$t10.411 i32) + (local $$t10.412 i32) + (local $$t10.413 i32) + (local $$t10.414 i32) + (local $$t10.415 i32) + (local $$t10.416 i32) + (local $$t10.417 i32) + (local $$t10.418 i32) + (local $$t10.419 i32) + (local $$t10.420 i32) + (local $$t10.421 i32) + (local $$t10.422 i32) + (local $$t10.423 i32) + (local $$t10.424 i32) + (local $$t10.425 i32) + (local $$t10.426 i32) + (local $$t10.427 i32) + (local $$t10.428 i32) + (local $$t10.429 i32) + (local $$t10.430 i32) + (local $$t10.431 i32) + (local $$t10.432 i32) + (local $$t10.433 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t11.4 i32) + (local $$t11.5 i32) + (local $$t11.6 i32) + (local $$t11.7 i32) + (local $$t11.8 i32) + (local $$t11.9 i32) + (local $$t11.10 i32) + (local $$t11.11 i32) + (local $$t11.12 i32) + (local $$t11.13 i32) + (local $$t11.14 i32) + (local $$t11.15 i32) + (local $$t11.16 i32) + (local $$t11.17 i32) + (local $$t11.18 i32) + (local $$t11.19 i32) + (local $$t11.20 i32) + (local $$t11.21 i32) + (local $$t11.22 i32) + (local $$t11.23 i32) + (local $$t11.24 i32) + (local $$t11.25 i32) + (local $$t11.26 i32) + (local $$t11.27 i32) + (local $$t11.28 i32) + (local $$t11.29 i32) + (local $$t11.30 i32) + (local $$t11.31 i32) + (local $$t11.32 i32) + (local $$t11.33 i32) + (local $$t11.34 i32) + (local $$t11.35 i32) + (local $$t11.36 i32) + (local $$t11.37 i32) + (local $$t11.38 i32) + (local $$t11.39 i32) + (local $$t11.40 i32) + (local $$t11.41 i32) + (local $$t11.42 i32) + (local $$t11.43 i32) + (local $$t11.44 i32) + (local $$t11.45 i32) + (local $$t11.46 i32) + (local $$t11.47 i32) + (local $$t11.48 i32) + (local $$t11.49 i32) + (local $$t11.50 i32) + (local $$t11.51 i32) + (local $$t11.52 i32) + (local $$t11.53 i32) + (local $$t11.54 i32) + (local $$t11.55 i32) + (local $$t11.56 i32) + (local $$t11.57 i32) + (local $$t11.58 i32) + (local $$t11.59 i32) + (local $$t11.60 i32) + (local $$t11.61 i32) + (local $$t11.62 i32) + (local $$t11.63 i32) + (local $$t11.64 i32) + (local $$t11.65 i32) + (local $$t11.66 i32) + (local $$t11.67 i32) + (local $$t11.68 i32) + (local $$t11.69 i32) + (local $$t11.70 i32) + (local $$t11.71 i32) + (local $$t11.72 i32) + (local $$t11.73 i32) + (local $$t11.74 i32) + (local $$t11.75 i32) + (local $$t11.76 i32) + (local $$t11.77 i32) + (local $$t11.78 i32) + (local $$t11.79 i32) + (local $$t11.80 i32) + (local $$t11.81 i32) + (local $$t11.82 i32) + (local $$t11.83 i32) + (local $$t11.84 i32) + (local $$t11.85 i32) + (local $$t11.86 i32) + (local $$t11.87 i32) + (local $$t11.88 i32) + (local $$t11.89 i32) + (local $$t11.90 i32) + (local $$t11.91 i32) + (local $$t11.92 i32) + (local $$t11.93 i32) + (local $$t11.94 i32) + (local $$t11.95 i32) + (local $$t11.96 i32) + (local $$t11.97 i32) + (local $$t11.98 i32) + (local $$t11.99 i32) + (local $$t11.100 i32) + (local $$t11.101 i32) + (local $$t11.102 i32) + (local $$t11.103 i32) + (local $$t11.104 i32) + (local $$t11.105 i32) + (local $$t11.106 i32) + (local $$t11.107 i32) + (local $$t11.108 i32) + (local $$t11.109 i32) + (local $$t11.110 i32) + (local $$t11.111 i32) + (local $$t11.112 i32) + (local $$t11.113 i32) + (local $$t11.114 i32) + (local $$t11.115 i32) + (local $$t11.116 i32) + (local $$t11.117 i32) + (local $$t11.118 i32) + (local $$t11.119 i32) + (local $$t11.120 i32) + (local $$t11.121 i32) + (local $$t11.122 i32) + (local $$t11.123 i32) + (local $$t11.124 i32) + (local $$t11.125 i32) + (local $$t11.126 i32) + (local $$t11.127 i32) + (local $$t11.128 i32) + (local $$t11.129 i32) + (local $$t11.130 i32) + (local $$t11.131 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t18.2 i32) + (local $$t18.3 i32) + (local $$t18.4 i32) + (local $$t18.5 i32) + (local $$t18.6 i32) + (local $$t18.7 i32) + (local $$t18.8 i32) + (local $$t18.9 i32) + (local $$t18.10 i32) + (local $$t18.11 i32) + (local $$t18.12 i32) + (local $$t18.13 i32) + (local $$t18.14 i32) + (local $$t18.15 i32) + (local $$t18.16 i32) + (local $$t18.17 i32) + (local $$t18.18 i32) + (local $$t18.19 i32) + (local $$t18.20 i32) + (local $$t18.21 i32) + (local $$t18.22 i32) + (local $$t18.23 i32) + (local $$t18.24 i32) + (local $$t18.25 i32) + (local $$t18.26 i32) + (local $$t18.27 i32) + (local $$t18.28 i32) + (local $$t18.29 i32) + (local $$t18.30 i32) + (local $$t18.31 i32) + (local $$t18.32 i32) + (local $$t18.33 i32) + (local $$t18.34 i32) + (local $$t18.35 i32) + (local $$t18.36 i32) + (local $$t18.37 i32) + (local $$t18.38 i32) + (local $$t18.39 i32) + (local $$t18.40 i32) + (local $$t18.41 i32) + (local $$t18.42 i32) + (local $$t18.43 i32) + (local $$t18.44 i32) + (local $$t18.45 i32) + (local $$t18.46 i32) + (local $$t18.47 i32) + (local $$t18.48 i32) + (local $$t18.49 i32) + (local $$t18.50 i32) + (local $$t18.51 i32) + (local $$t18.52 i32) + (local $$t18.53 i32) + (local $$t18.54 i32) + (local $$t18.55 i32) + (local $$t18.56 i32) + (local $$t18.57 i32) + (local $$t18.58 i32) + (local $$t18.59 i32) + (local $$t18.60 i32) + (local $$t18.61 i32) + (local $$t18.62 i32) + (local $$t18.63 i32) + (local $$t18.64 i32) + (local $$t18.65 i32) + (local $$t18.66 i32) + (local $$t18.67 i32) + (local $$t18.68 i32) + (local $$t18.69 i32) + (local $$t18.70 i32) + (local $$t18.71 i32) + (local $$t18.72 i32) + (local $$t18.73 i32) + (local $$t18.74 i32) + (local $$t18.75 i32) + (local $$t18.76 i32) + (local $$t18.77 i32) + (local $$t18.78 i32) + (local $$t18.79 i32) + (local $$t18.80 i32) + (local $$t18.81 i32) + (local $$t18.82 i32) + (local $$t18.83 i32) + (local $$t18.84 i32) + (local $$t18.85 i32) + (local $$t18.86 i32) + (local $$t18.87 i32) + (local $$t18.88 i32) + (local $$t18.89 i32) + (local $$t18.90 i32) + (local $$t18.91 i32) + (local $$t18.92 i32) + (local $$t18.93 i32) + (local $$t18.94 i32) + (local $$t18.95 i32) + (local $$t18.96 i32) + (local $$t18.97 i32) + (local $$t18.98 i32) + (local $$t18.99 i32) + (local $$t18.100 i32) + (local $$t18.101 i32) + (local $$t18.102 i32) + (local $$t18.103 i32) + (local $$t18.104 i32) + (local $$t18.105 i32) + (local $$t18.106 i32) + (local $$t18.107 i32) + (local $$t18.108 i32) + (local $$t18.109 i32) + (local $$t18.110 i32) + (local $$t18.111 i32) + (local $$t18.112 i32) + (local $$t18.113 i32) + (local $$t18.114 i32) + (local $$t18.115 i32) + (local $$t18.116 i32) + (local $$t18.117 i32) + (local $$t18.118 i32) + (local $$t18.119 i32) + (local $$t18.120 i32) + (local $$t18.121 i32) + (local $$t18.122 i32) + (local $$t18.123 i32) + (local $$t18.124 i32) + (local $$t18.125 i32) + (local $$t18.126 i32) + (local $$t18.127 i32) + (local $$t18.128 i32) + (local $$t18.129 i32) + (local $$t18.130 i32) + (local $$t18.131 i32) + (local $$t18.132 i32) + (local $$t18.133 i32) + (local $$t18.134 i32) + (local $$t18.135 i32) + (local $$t18.136 i32) + (local $$t18.137 i32) + (local $$t18.138 i32) + (local $$t18.139 i32) + (local $$t18.140 i32) + (local $$t18.141 i32) + (local $$t18.142 i32) + (local $$t18.143 i32) + (local $$t18.144 i32) + (local $$t18.145 i32) + (local $$t18.146 i32) + (local $$t18.147 i32) + (local $$t18.148 i32) + (local $$t18.149 i32) + (local $$t18.150 i32) + (local $$t18.151 i32) + (local $$t18.152 i32) + (local $$t18.153 i32) + (local $$t18.154 i32) + (local $$t18.155 i32) + (local $$t18.156 i32) + (local $$t18.157 i32) + (local $$t18.158 i32) + (local $$t18.159 i32) + (local $$t18.160 i32) + (local $$t18.161 i32) + (local $$t18.162 i32) + (local $$t18.163 i32) + (local $$t18.164 i32) + (local $$t18.165 i32) + (local $$t18.166 i32) + (local $$t18.167 i32) + (local $$t18.168 i32) + (local $$t18.169 i32) + (local $$t18.170 i32) + (local $$t18.171 i32) + (local $$t18.172 i32) + (local $$t18.173 i32) + (local $$t18.174 i32) + (local $$t18.175 i32) + (local $$t18.176 i32) + (local $$t18.177 i32) + (local $$t18.178 i32) + (local $$t18.179 i32) + (local $$t18.180 i32) + (local $$t18.181 i32) + (local $$t18.182 i32) + (local $$t18.183 i32) + (local $$t18.184 i32) + (local $$t18.185 i32) + (local $$t18.186 i32) + (local $$t18.187 i32) + (local $$t18.188 i32) + (local $$t18.189 i32) + (local $$t18.190 i32) + (local $$t18.191 i32) + (local $$t18.192 i32) + (local $$t18.193 i32) + (local $$t18.194 i32) + (local $$t18.195 i32) + (local $$t18.196 i32) + (local $$t18.197 i32) + (local $$t18.198 i32) + (local $$t18.199 i32) + (local $$t18.200 i32) + (local $$t18.201 i32) + (local $$t18.202 i32) + (local $$t18.203 i32) + (local $$t18.204 i32) + (local $$t18.205 i32) + (local $$t18.206 i32) + (local $$t18.207 i32) + (local $$t18.208 i32) + (local $$t18.209 i32) + (local $$t18.210 i32) + (local $$t18.211 i32) + (local $$t18.212 i32) + (local $$t18.213 i32) + (local $$t18.214 i32) + (local $$t18.215 i32) + (local $$t18.216 i32) + (local $$t18.217 i32) + (local $$t18.218 i32) + (local $$t18.219 i32) + (local $$t18.220 i32) + (local $$t18.221 i32) + (local $$t18.222 i32) + (local $$t18.223 i32) + (local $$t18.224 i32) + (local $$t18.225 i32) + (local $$t18.226 i32) + (local $$t18.227 i32) + (local $$t18.228 i32) + (local $$t18.229 i32) + (local $$t18.230 i32) + (local $$t18.231 i32) + (local $$t18.232 i32) + (local $$t18.233 i32) + (local $$t18.234 i32) + (local $$t18.235 i32) + (local $$t18.236 i32) + (local $$t18.237 i32) + (local $$t18.238 i32) + (local $$t18.239 i32) + (local $$t18.240 i32) + (local $$t18.241 i32) + (local $$t18.242 i32) + (local $$t18.243 i32) + (local $$t18.244 i32) + (local $$t18.245 i32) + (local $$t18.246 i32) + (local $$t18.247 i32) + (local $$t18.248 i32) + (local $$t18.249 i32) + (local $$t18.250 i32) + (local $$t18.251 i32) + (local $$t18.252 i32) + (local $$t18.253 i32) + (local $$t18.254 i32) + (local $$t18.255 i32) + (local $$t18.256 i32) + (local $$t18.257 i32) + (local $$t18.258 i32) + (local $$t18.259 i32) + (local $$t18.260 i32) + (local $$t18.261 i32) + (local $$t18.262 i32) + (local $$t18.263 i32) + (local $$t18.264 i32) + (local $$t18.265 i32) + (local $$t18.266 i32) + (local $$t18.267 i32) + (local $$t18.268 i32) + (local $$t18.269 i32) + (local $$t18.270 i32) + (local $$t18.271 i32) + (local $$t18.272 i32) + (local $$t18.273 i32) + (local $$t18.274 i32) + (local $$t18.275 i32) + (local $$t18.276 i32) + (local $$t18.277 i32) + (local $$t18.278 i32) + (local $$t18.279 i32) + (local $$t18.280 i32) + (local $$t18.281 i32) + (local $$t18.282 i32) + (local $$t18.283 i32) + (local $$t18.284 i32) + (local $$t18.285 i32) + (local $$t18.286 i32) + (local $$t18.287 i32) + (local $$t18.288 i32) + (local $$t18.289 i32) + (local $$t18.290 i32) + (local $$t18.291 i32) + (local $$t18.292 i32) + (local $$t18.293 i32) + (local $$t18.294 i32) + (local $$t18.295 i32) + (local $$t18.296 i32) + (local $$t18.297 i32) + (local $$t18.298 i32) + (local $$t18.299 i32) + (local $$t18.300 i32) + (local $$t18.301 i32) + (local $$t18.302 i32) + (local $$t18.303 i32) + (local $$t18.304 i32) + (local $$t18.305 i32) + (local $$t18.306 i32) + (local $$t18.307 i32) + (local $$t18.308 i32) + (local $$t18.309 i32) + (local $$t18.310 i32) + (local $$t18.311 i32) + (local $$t18.312 i32) + (local $$t18.313 i32) + (local $$t18.314 i32) + (local $$t18.315 i32) + (local $$t18.316 i32) + (local $$t18.317 i32) + (local $$t18.318 i32) + (local $$t18.319 i32) + (local $$t18.320 i32) + (local $$t18.321 i32) + (local $$t18.322 i32) + (local $$t18.323 i32) + (local $$t18.324 i32) + (local $$t18.325 i32) + (local $$t18.326 i32) + (local $$t18.327 i32) + (local $$t18.328 i32) + (local $$t18.329 i32) + (local $$t18.330 i32) + (local $$t18.331 i32) + (local $$t18.332 i32) + (local $$t18.333 i32) + (local $$t18.334 i32) + (local $$t18.335 i32) + (local $$t18.336 i32) + (local $$t18.337 i32) + (local $$t18.338 i32) + (local $$t18.339 i32) + (local $$t18.340 i32) + (local $$t18.341 i32) + (local $$t18.342 i32) + (local $$t18.343 i32) + (local $$t18.344 i32) + (local $$t18.345 i32) + (local $$t18.346 i32) + (local $$t18.347 i32) + (local $$t18.348 i32) + (local $$t18.349 i32) + (local $$t18.350 i32) + (local $$t18.351 i32) + (local $$t18.352 i32) + (local $$t18.353 i32) + (local $$t18.354 i32) + (local $$t18.355 i32) + (local $$t18.356 i32) + (local $$t18.357 i32) + (local $$t18.358 i32) + (local $$t18.359 i32) + (local $$t18.360 i32) + (local $$t18.361 i32) + (local $$t18.362 i32) + (local $$t18.363 i32) + (local $$t18.364 i32) + (local $$t18.365 i32) + (local $$t18.366 i32) + (local $$t18.367 i32) + (local $$t18.368 i32) + (local $$t18.369 i32) + (local $$t18.370 i32) + (local $$t18.371 i32) + (local $$t18.372 i32) + (local $$t18.373 i32) + (local $$t18.374 i32) + (local $$t18.375 i32) + (local $$t18.376 i32) + (local $$t18.377 i32) + (local $$t18.378 i32) + (local $$t18.379 i32) + (local $$t18.380 i32) + (local $$t18.381 i32) + (local $$t18.382 i32) + (local $$t18.383 i32) + (local $$t18.384 i32) + (local $$t18.385 i32) + (local $$t18.386 i32) + (local $$t18.387 i32) + (local $$t18.388 i32) + (local $$t18.389 i32) + (local $$t18.390 i32) + (local $$t18.391 i32) + (local $$t18.392 i32) + (local $$t18.393 i32) + (local $$t18.394 i32) + (local $$t18.395 i32) + (local $$t18.396 i32) + (local $$t18.397 i32) + (local $$t18.398 i32) + (local $$t18.399 i32) + (local $$t18.400 i32) + (local $$t18.401 i32) + (local $$t18.402 i32) + (local $$t18.403 i32) + (local $$t18.404 i32) + (local $$t18.405 i32) + (local $$t18.406 i32) + (local $$t18.407 i32) + (local $$t18.408 i32) + (local $$t18.409 i32) + (local $$t18.410 i32) + (local $$t18.411 i32) + (local $$t18.412 i32) + (local $$t18.413 i32) + (local $$t18.414 i32) + (local $$t18.415 i32) + (local $$t18.416 i32) + (local $$t18.417 i32) + (local $$t18.418 i32) + (local $$t18.419 i32) + (local $$t18.420 i32) + (local $$t18.421 i32) + (local $$t18.422 i32) + (local $$t18.423 i32) + (local $$t18.424 i32) + (local $$t18.425 i32) + (local $$t18.426 i32) + (local $$t18.427 i32) + (local $$t18.428 i32) + (local $$t18.429 i32) + (local $$t18.430 i32) + (local $$t18.431 i32) + (local $$t18.432 i32) + (local $$t18.433 i32) + (local $$t18.434 i32) + (local $$t18.435 i32) + (local $$t18.436 i32) + (local $$t18.437 i32) + (local $$t18.438 i32) + (local $$t18.439 i32) + (local $$t18.440 i32) + (local $$t18.441 i32) + (local $$t18.442 i32) + (local $$t18.443 i32) + (local $$t18.444 i32) + (local $$t18.445 i32) + (local $$t18.446 i32) + (local $$t18.447 i32) + (local $$t18.448 i32) + (local $$t18.449 i32) + (local $$t18.450 i32) + (local $$t18.451 i32) + (local $$t18.452 i32) + (local $$t18.453 i32) + (local $$t18.454 i32) + (local $$t18.455 i32) + (local $$t18.456 i32) + (local $$t18.457 i32) + (local $$t18.458 i32) + (local $$t18.459 i32) + (local $$t18.460 i32) + (local $$t18.461 i32) + (local $$t18.462 i32) + (local $$t18.463 i32) + (local $$t18.464 i32) + (local $$t18.465 i32) + (local $$t18.466 i32) + (local $$t18.467 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t19.2 i32) + (local $$t19.3 i32) + (local $$t19.4 i32) + (local $$t19.5 i32) + (local $$t19.6 i32) + (local $$t19.7 i32) + (local $$t19.8 i32) + (local $$t19.9 i32) + (local $$t19.10 i32) + (local $$t19.11 i32) + (local $$t19.12 i32) + (local $$t19.13 i32) + (local $$t19.14 i32) + (local $$t19.15 i32) + (local $$t19.16 i32) + (local $$t19.17 i32) + (local $$t19.18 i32) + (local $$t19.19 i32) + (local $$t19.20 i32) + (local $$t19.21 i32) + (local $$t19.22 i32) + (local $$t19.23 i32) + (local $$t19.24 i32) + (local $$t19.25 i32) + (local $$t19.26 i32) + (local $$t19.27 i32) + (local $$t19.28 i32) + (local $$t19.29 i32) + (local $$t19.30 i32) + (local $$t19.31 i32) + (local $$t19.32 i32) + (local $$t19.33 i32) + (local $$t19.34 i32) + (local $$t19.35 i32) + (local $$t19.36 i32) + (local $$t19.37 i32) + (local $$t19.38 i32) + (local $$t19.39 i32) + (local $$t19.40 i32) + (local $$t19.41 i32) + (local $$t19.42 i32) + (local $$t19.43 i32) + (local $$t19.44 i32) + (local $$t19.45 i32) + (local $$t19.46 i32) + (local $$t19.47 i32) + (local $$t19.48 i32) + (local $$t19.49 i32) + (local $$t19.50 i32) + (local $$t19.51 i32) + (local $$t19.52 i32) + (local $$t19.53 i32) + (local $$t19.54 i32) + (local $$t19.55 i32) + (local $$t19.56 i32) + (local $$t19.57 i32) + (local $$t19.58 i32) + (local $$t19.59 i32) + (local $$t19.60 i32) + (local $$t19.61 i32) + (local $$t19.62 i32) + (local $$t19.63 i32) + (local $$t19.64 i32) + (local $$t19.65 i32) + (local $$t19.66 i32) + (local $$t19.67 i32) + (local $$t19.68 i32) + (local $$t19.69 i32) + (local $$t19.70 i32) + (local $$t19.71 i32) + (local $$t19.72 i32) + (local $$t19.73 i32) + (local $$t19.74 i32) + (local $$t19.75 i32) + (local $$t19.76 i32) + (local $$t19.77 i32) + (local $$t19.78 i32) + (local $$t19.79 i32) + (local $$t19.80 i32) + (local $$t19.81 i32) + (local $$t19.82 i32) + (local $$t19.83 i32) + (local $$t19.84 i32) + (local $$t19.85 i32) + (local $$t19.86 i32) + (local $$t19.87 i32) + (local $$t19.88 i32) + (local $$t19.89 i32) + (local $$t19.90 i32) + (local $$t19.91 i32) + (local $$t19.92 i32) + (local $$t19.93 i32) + (local $$t19.94 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t20.2 i32) + (local $$t20.3 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t49.2 i32) + (local $$t49.3 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 0 + end + i32.const 0 + local.set $$current_block + local.get $r + i32.const 255 + i32.le_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 32 + local.get $r + i32.le_s + local.set $$t1 + local.get $$t1 + if + br $$Block_4 + else + br $$Block_3 + end + end + i32.const 2 + local.set $$current_block + i32.const 0 + local.get $r + i32.le_s + local.set $$t2 + local.get $$t2 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + i32.const 161 + local.get $r + i32.le_s + local.set $$t3 + local.get $$t3 + if + br $$Block_7 + else + br $$Block_6 + end + end + i32.const 5 + local.set $$current_block + local.get $r + i32.const 126 + i32.le_s + local.set $$t4 + local.get $$t4 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + local.get $r + i32.const 173 + i32.eq + i32.eqz + local.set $$t5 + local.get $$t5 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $r + i32.const 255 + i32.le_s + local.set $$t6 + local.get $$t6 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + i32.const 884 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 868 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + i32.const 280 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 264 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $r + i32.const 65535 + i32.and + local.set $$t9 + i32.const 26894 + i32.load16_u + i32.const 26894 + i32.load16_u offset=2 + i32.const 26894 + i32.load16_u offset=4 + i32.const 26894 + i32.load16_u offset=6 + i32.const 26894 + i32.load16_u offset=8 + i32.const 26894 + i32.load16_u offset=10 + i32.const 26894 + i32.load16_u offset=12 + i32.const 26894 + i32.load16_u offset=14 + i32.const 26894 + i32.load16_u offset=16 + i32.const 26894 + i32.load16_u offset=18 + i32.const 26894 + i32.load16_u offset=20 + i32.const 26894 + i32.load16_u offset=22 + i32.const 26894 + i32.load16_u offset=24 + i32.const 26894 + i32.load16_u offset=26 + i32.const 26894 + i32.load16_u offset=28 + i32.const 26894 + i32.load16_u offset=30 + i32.const 26894 + i32.load16_u offset=32 + i32.const 26894 + i32.load16_u offset=34 + i32.const 26894 + i32.load16_u offset=36 + i32.const 26894 + i32.load16_u offset=38 + i32.const 26894 + i32.load16_u offset=40 + i32.const 26894 + i32.load16_u offset=42 + i32.const 26894 + i32.load16_u offset=44 + i32.const 26894 + i32.load16_u offset=46 + i32.const 26894 + i32.load16_u offset=48 + i32.const 26894 + i32.load16_u offset=50 + i32.const 26894 + i32.load16_u offset=52 + i32.const 26894 + i32.load16_u offset=54 + i32.const 26894 + i32.load16_u offset=56 + i32.const 26894 + i32.load16_u offset=58 + i32.const 26894 + i32.load16_u offset=60 + i32.const 26894 + i32.load16_u offset=62 + i32.const 26894 + i32.load16_u offset=64 + i32.const 26894 + i32.load16_u offset=66 + i32.const 26894 + i32.load16_u offset=68 + i32.const 26894 + i32.load16_u offset=70 + i32.const 26894 + i32.load16_u offset=72 + i32.const 26894 + i32.load16_u offset=74 + i32.const 26894 + i32.load16_u offset=76 + i32.const 26894 + i32.load16_u offset=78 + i32.const 26894 + i32.load16_u offset=80 + i32.const 26894 + i32.load16_u offset=82 + i32.const 26894 + i32.load16_u offset=84 + i32.const 26894 + i32.load16_u offset=86 + i32.const 26894 + i32.load16_u offset=88 + i32.const 26894 + i32.load16_u offset=90 + i32.const 26894 + i32.load16_u offset=92 + i32.const 26894 + i32.load16_u offset=94 + i32.const 26894 + i32.load16_u offset=96 + i32.const 26894 + i32.load16_u offset=98 + i32.const 26894 + i32.load16_u offset=100 + i32.const 26894 + i32.load16_u offset=102 + i32.const 26894 + i32.load16_u offset=104 + i32.const 26894 + i32.load16_u offset=106 + i32.const 26894 + i32.load16_u offset=108 + i32.const 26894 + i32.load16_u offset=110 + i32.const 26894 + i32.load16_u offset=112 + i32.const 26894 + i32.load16_u offset=114 + i32.const 26894 + i32.load16_u offset=116 + i32.const 26894 + i32.load16_u offset=118 + i32.const 26894 + i32.load16_u offset=120 + i32.const 26894 + i32.load16_u offset=122 + i32.const 26894 + i32.load16_u offset=124 + i32.const 26894 + i32.load16_u offset=126 + i32.const 26894 + i32.load16_u offset=128 + i32.const 26894 + i32.load16_u offset=130 + i32.const 26894 + i32.load16_u offset=132 + i32.const 26894 + i32.load16_u offset=134 + i32.const 26894 + i32.load16_u offset=136 + i32.const 26894 + i32.load16_u offset=138 + i32.const 26894 + i32.load16_u offset=140 + i32.const 26894 + i32.load16_u offset=142 + i32.const 26894 + i32.load16_u offset=144 + i32.const 26894 + i32.load16_u offset=146 + i32.const 26894 + i32.load16_u offset=148 + i32.const 26894 + i32.load16_u offset=150 + i32.const 26894 + i32.load16_u offset=152 + i32.const 26894 + i32.load16_u offset=154 + i32.const 26894 + i32.load16_u offset=156 + i32.const 26894 + i32.load16_u offset=158 + i32.const 26894 + i32.load16_u offset=160 + i32.const 26894 + i32.load16_u offset=162 + i32.const 26894 + i32.load16_u offset=164 + i32.const 26894 + i32.load16_u offset=166 + i32.const 26894 + i32.load16_u offset=168 + i32.const 26894 + i32.load16_u offset=170 + i32.const 26894 + i32.load16_u offset=172 + i32.const 26894 + i32.load16_u offset=174 + i32.const 26894 + i32.load16_u offset=176 + i32.const 26894 + i32.load16_u offset=178 + i32.const 26894 + i32.load16_u offset=180 + i32.const 26894 + i32.load16_u offset=182 + i32.const 26894 + i32.load16_u offset=184 + i32.const 26894 + i32.load16_u offset=186 + i32.const 26894 + i32.load16_u offset=188 + i32.const 26894 + i32.load16_u offset=190 + i32.const 26894 + i32.load16_u offset=192 + i32.const 26894 + i32.load16_u offset=194 + i32.const 26894 + i32.load16_u offset=196 + i32.const 26894 + i32.load16_u offset=198 + i32.const 26894 + i32.load16_u offset=200 + i32.const 26894 + i32.load16_u offset=202 + i32.const 26894 + i32.load16_u offset=204 + i32.const 26894 + i32.load16_u offset=206 + i32.const 26894 + i32.load16_u offset=208 + i32.const 26894 + i32.load16_u offset=210 + i32.const 26894 + i32.load16_u offset=212 + i32.const 26894 + i32.load16_u offset=214 + i32.const 26894 + i32.load16_u offset=216 + i32.const 26894 + i32.load16_u offset=218 + i32.const 26894 + i32.load16_u offset=220 + i32.const 26894 + i32.load16_u offset=222 + i32.const 26894 + i32.load16_u offset=224 + i32.const 26894 + i32.load16_u offset=226 + i32.const 26894 + i32.load16_u offset=228 + i32.const 26894 + i32.load16_u offset=230 + i32.const 26894 + i32.load16_u offset=232 + i32.const 26894 + i32.load16_u offset=234 + i32.const 26894 + i32.load16_u offset=236 + i32.const 26894 + i32.load16_u offset=238 + i32.const 26894 + i32.load16_u offset=240 + i32.const 26894 + i32.load16_u offset=242 + i32.const 26894 + i32.load16_u offset=244 + i32.const 26894 + i32.load16_u offset=246 + i32.const 26894 + i32.load16_u offset=248 + i32.const 26894 + i32.load16_u offset=250 + i32.const 26894 + i32.load16_u offset=252 + i32.const 26894 + i32.load16_u offset=254 + i32.const 26894 + i32.load16_u offset=256 + i32.const 26894 + i32.load16_u offset=258 + i32.const 26894 + i32.load16_u offset=260 + i32.const 26894 + i32.load16_u offset=262 + i32.const 26894 + i32.load16_u offset=264 + i32.const 26894 + i32.load16_u offset=266 + i32.const 26894 + i32.load16_u offset=268 + i32.const 26894 + i32.load16_u offset=270 + i32.const 26894 + i32.load16_u offset=272 + i32.const 26894 + i32.load16_u offset=274 + i32.const 26894 + i32.load16_u offset=276 + i32.const 26894 + i32.load16_u offset=278 + i32.const 26894 + i32.load16_u offset=280 + i32.const 26894 + i32.load16_u offset=282 + i32.const 26894 + i32.load16_u offset=284 + i32.const 26894 + i32.load16_u offset=286 + i32.const 26894 + i32.load16_u offset=288 + i32.const 26894 + i32.load16_u offset=290 + i32.const 26894 + i32.load16_u offset=292 + i32.const 26894 + i32.load16_u offset=294 + i32.const 26894 + i32.load16_u offset=296 + i32.const 26894 + i32.load16_u offset=298 + i32.const 26894 + i32.load16_u offset=300 + i32.const 26894 + i32.load16_u offset=302 + i32.const 26894 + i32.load16_u offset=304 + i32.const 26894 + i32.load16_u offset=306 + i32.const 26894 + i32.load16_u offset=308 + i32.const 26894 + i32.load16_u offset=310 + i32.const 26894 + i32.load16_u offset=312 + i32.const 26894 + i32.load16_u offset=314 + i32.const 26894 + i32.load16_u offset=316 + i32.const 26894 + i32.load16_u offset=318 + i32.const 26894 + i32.load16_u offset=320 + i32.const 26894 + i32.load16_u offset=322 + i32.const 26894 + i32.load16_u offset=324 + i32.const 26894 + i32.load16_u offset=326 + i32.const 26894 + i32.load16_u offset=328 + i32.const 26894 + i32.load16_u offset=330 + i32.const 26894 + i32.load16_u offset=332 + i32.const 26894 + i32.load16_u offset=334 + i32.const 26894 + i32.load16_u offset=336 + i32.const 26894 + i32.load16_u offset=338 + i32.const 26894 + i32.load16_u offset=340 + i32.const 26894 + i32.load16_u offset=342 + i32.const 26894 + i32.load16_u offset=344 + i32.const 26894 + i32.load16_u offset=346 + i32.const 26894 + i32.load16_u offset=348 + i32.const 26894 + i32.load16_u offset=350 + i32.const 26894 + i32.load16_u offset=352 + i32.const 26894 + i32.load16_u offset=354 + i32.const 26894 + i32.load16_u offset=356 + i32.const 26894 + i32.load16_u offset=358 + i32.const 26894 + i32.load16_u offset=360 + i32.const 26894 + i32.load16_u offset=362 + i32.const 26894 + i32.load16_u offset=364 + i32.const 26894 + i32.load16_u offset=366 + i32.const 26894 + i32.load16_u offset=368 + i32.const 26894 + i32.load16_u offset=370 + i32.const 26894 + i32.load16_u offset=372 + i32.const 26894 + i32.load16_u offset=374 + i32.const 26894 + i32.load16_u offset=376 + i32.const 26894 + i32.load16_u offset=378 + i32.const 26894 + i32.load16_u offset=380 + i32.const 26894 + i32.load16_u offset=382 + i32.const 26894 + i32.load16_u offset=384 + i32.const 26894 + i32.load16_u offset=386 + i32.const 26894 + i32.load16_u offset=388 + i32.const 26894 + i32.load16_u offset=390 + i32.const 26894 + i32.load16_u offset=392 + i32.const 26894 + i32.load16_u offset=394 + i32.const 26894 + i32.load16_u offset=396 + i32.const 26894 + i32.load16_u offset=398 + i32.const 26894 + i32.load16_u offset=400 + i32.const 26894 + i32.load16_u offset=402 + i32.const 26894 + i32.load16_u offset=404 + i32.const 26894 + i32.load16_u offset=406 + i32.const 26894 + i32.load16_u offset=408 + i32.const 26894 + i32.load16_u offset=410 + i32.const 26894 + i32.load16_u offset=412 + i32.const 26894 + i32.load16_u offset=414 + i32.const 26894 + i32.load16_u offset=416 + i32.const 26894 + i32.load16_u offset=418 + i32.const 26894 + i32.load16_u offset=420 + i32.const 26894 + i32.load16_u offset=422 + i32.const 26894 + i32.load16_u offset=424 + i32.const 26894 + i32.load16_u offset=426 + i32.const 26894 + i32.load16_u offset=428 + i32.const 26894 + i32.load16_u offset=430 + i32.const 26894 + i32.load16_u offset=432 + i32.const 26894 + i32.load16_u offset=434 + i32.const 26894 + i32.load16_u offset=436 + i32.const 26894 + i32.load16_u offset=438 + i32.const 26894 + i32.load16_u offset=440 + i32.const 26894 + i32.load16_u offset=442 + i32.const 26894 + i32.load16_u offset=444 + i32.const 26894 + i32.load16_u offset=446 + i32.const 26894 + i32.load16_u offset=448 + i32.const 26894 + i32.load16_u offset=450 + i32.const 26894 + i32.load16_u offset=452 + i32.const 26894 + i32.load16_u offset=454 + i32.const 26894 + i32.load16_u offset=456 + i32.const 26894 + i32.load16_u offset=458 + i32.const 26894 + i32.load16_u offset=460 + i32.const 26894 + i32.load16_u offset=462 + i32.const 26894 + i32.load16_u offset=464 + i32.const 26894 + i32.load16_u offset=466 + i32.const 26894 + i32.load16_u offset=468 + i32.const 26894 + i32.load16_u offset=470 + i32.const 26894 + i32.load16_u offset=472 + i32.const 26894 + i32.load16_u offset=474 + i32.const 26894 + i32.load16_u offset=476 + i32.const 26894 + i32.load16_u offset=478 + i32.const 26894 + i32.load16_u offset=480 + i32.const 26894 + i32.load16_u offset=482 + i32.const 26894 + i32.load16_u offset=484 + i32.const 26894 + i32.load16_u offset=486 + i32.const 26894 + i32.load16_u offset=488 + i32.const 26894 + i32.load16_u offset=490 + i32.const 26894 + i32.load16_u offset=492 + i32.const 26894 + i32.load16_u offset=494 + i32.const 26894 + i32.load16_u offset=496 + i32.const 26894 + i32.load16_u offset=498 + i32.const 26894 + i32.load16_u offset=500 + i32.const 26894 + i32.load16_u offset=502 + i32.const 26894 + i32.load16_u offset=504 + i32.const 26894 + i32.load16_u offset=506 + i32.const 26894 + i32.load16_u offset=508 + i32.const 26894 + i32.load16_u offset=510 + i32.const 26894 + i32.load16_u offset=512 + i32.const 26894 + i32.load16_u offset=514 + i32.const 26894 + i32.load16_u offset=516 + i32.const 26894 + i32.load16_u offset=518 + i32.const 26894 + i32.load16_u offset=520 + i32.const 26894 + i32.load16_u offset=522 + i32.const 26894 + i32.load16_u offset=524 + i32.const 26894 + i32.load16_u offset=526 + i32.const 26894 + i32.load16_u offset=528 + i32.const 26894 + i32.load16_u offset=530 + i32.const 26894 + i32.load16_u offset=532 + i32.const 26894 + i32.load16_u offset=534 + i32.const 26894 + i32.load16_u offset=536 + i32.const 26894 + i32.load16_u offset=538 + i32.const 26894 + i32.load16_u offset=540 + i32.const 26894 + i32.load16_u offset=542 + i32.const 26894 + i32.load16_u offset=544 + i32.const 26894 + i32.load16_u offset=546 + i32.const 26894 + i32.load16_u offset=548 + i32.const 26894 + i32.load16_u offset=550 + i32.const 26894 + i32.load16_u offset=552 + i32.const 26894 + i32.load16_u offset=554 + i32.const 26894 + i32.load16_u offset=556 + i32.const 26894 + i32.load16_u offset=558 + i32.const 26894 + i32.load16_u offset=560 + i32.const 26894 + i32.load16_u offset=562 + i32.const 26894 + i32.load16_u offset=564 + i32.const 26894 + i32.load16_u offset=566 + i32.const 26894 + i32.load16_u offset=568 + i32.const 26894 + i32.load16_u offset=570 + i32.const 26894 + i32.load16_u offset=572 + i32.const 26894 + i32.load16_u offset=574 + i32.const 26894 + i32.load16_u offset=576 + i32.const 26894 + i32.load16_u offset=578 + i32.const 26894 + i32.load16_u offset=580 + i32.const 26894 + i32.load16_u offset=582 + i32.const 26894 + i32.load16_u offset=584 + i32.const 26894 + i32.load16_u offset=586 + i32.const 26894 + i32.load16_u offset=588 + i32.const 26894 + i32.load16_u offset=590 + i32.const 26894 + i32.load16_u offset=592 + i32.const 26894 + i32.load16_u offset=594 + i32.const 26894 + i32.load16_u offset=596 + i32.const 26894 + i32.load16_u offset=598 + i32.const 26894 + i32.load16_u offset=600 + i32.const 26894 + i32.load16_u offset=602 + i32.const 26894 + i32.load16_u offset=604 + i32.const 26894 + i32.load16_u offset=606 + i32.const 26894 + i32.load16_u offset=608 + i32.const 26894 + i32.load16_u offset=610 + i32.const 26894 + i32.load16_u offset=612 + i32.const 26894 + i32.load16_u offset=614 + i32.const 26894 + i32.load16_u offset=616 + i32.const 26894 + i32.load16_u offset=618 + i32.const 26894 + i32.load16_u offset=620 + i32.const 26894 + i32.load16_u offset=622 + i32.const 26894 + i32.load16_u offset=624 + i32.const 26894 + i32.load16_u offset=626 + i32.const 26894 + i32.load16_u offset=628 + i32.const 26894 + i32.load16_u offset=630 + i32.const 26894 + i32.load16_u offset=632 + i32.const 26894 + i32.load16_u offset=634 + i32.const 26894 + i32.load16_u offset=636 + i32.const 26894 + i32.load16_u offset=638 + i32.const 26894 + i32.load16_u offset=640 + i32.const 26894 + i32.load16_u offset=642 + i32.const 26894 + i32.load16_u offset=644 + i32.const 26894 + i32.load16_u offset=646 + i32.const 26894 + i32.load16_u offset=648 + i32.const 26894 + i32.load16_u offset=650 + i32.const 26894 + i32.load16_u offset=652 + i32.const 26894 + i32.load16_u offset=654 + i32.const 26894 + i32.load16_u offset=656 + i32.const 26894 + i32.load16_u offset=658 + i32.const 26894 + i32.load16_u offset=660 + i32.const 26894 + i32.load16_u offset=662 + i32.const 26894 + i32.load16_u offset=664 + i32.const 26894 + i32.load16_u offset=666 + i32.const 26894 + i32.load16_u offset=668 + i32.const 26894 + i32.load16_u offset=670 + i32.const 26894 + i32.load16_u offset=672 + i32.const 26894 + i32.load16_u offset=674 + i32.const 26894 + i32.load16_u offset=676 + i32.const 26894 + i32.load16_u offset=678 + i32.const 26894 + i32.load16_u offset=680 + i32.const 26894 + i32.load16_u offset=682 + i32.const 26894 + i32.load16_u offset=684 + i32.const 26894 + i32.load16_u offset=686 + i32.const 26894 + i32.load16_u offset=688 + i32.const 26894 + i32.load16_u offset=690 + i32.const 26894 + i32.load16_u offset=692 + i32.const 26894 + i32.load16_u offset=694 + i32.const 26894 + i32.load16_u offset=696 + i32.const 26894 + i32.load16_u offset=698 + i32.const 26894 + i32.load16_u offset=700 + i32.const 26894 + i32.load16_u offset=702 + i32.const 26894 + i32.load16_u offset=704 + i32.const 26894 + i32.load16_u offset=706 + i32.const 26894 + i32.load16_u offset=708 + i32.const 26894 + i32.load16_u offset=710 + i32.const 26894 + i32.load16_u offset=712 + i32.const 26894 + i32.load16_u offset=714 + i32.const 26894 + i32.load16_u offset=716 + i32.const 26894 + i32.load16_u offset=718 + i32.const 26894 + i32.load16_u offset=720 + i32.const 26894 + i32.load16_u offset=722 + i32.const 26894 + i32.load16_u offset=724 + i32.const 26894 + i32.load16_u offset=726 + i32.const 26894 + i32.load16_u offset=728 + i32.const 26894 + i32.load16_u offset=730 + i32.const 26894 + i32.load16_u offset=732 + i32.const 26894 + i32.load16_u offset=734 + i32.const 26894 + i32.load16_u offset=736 + i32.const 26894 + i32.load16_u offset=738 + i32.const 26894 + i32.load16_u offset=740 + i32.const 26894 + i32.load16_u offset=742 + i32.const 26894 + i32.load16_u offset=744 + i32.const 26894 + i32.load16_u offset=746 + i32.const 26894 + i32.load16_u offset=748 + i32.const 26894 + i32.load16_u offset=750 + i32.const 26894 + i32.load16_u offset=752 + i32.const 26894 + i32.load16_u offset=754 + i32.const 26894 + i32.load16_u offset=756 + i32.const 26894 + i32.load16_u offset=758 + i32.const 26894 + i32.load16_u offset=760 + i32.const 26894 + i32.load16_u offset=762 + i32.const 26894 + i32.load16_u offset=764 + i32.const 26894 + i32.load16_u offset=766 + i32.const 26894 + i32.load16_u offset=768 + i32.const 26894 + i32.load16_u offset=770 + i32.const 26894 + i32.load16_u offset=772 + i32.const 26894 + i32.load16_u offset=774 + i32.const 26894 + i32.load16_u offset=776 + i32.const 26894 + i32.load16_u offset=778 + i32.const 26894 + i32.load16_u offset=780 + i32.const 26894 + i32.load16_u offset=782 + i32.const 26894 + i32.load16_u offset=784 + i32.const 26894 + i32.load16_u offset=786 + i32.const 26894 + i32.load16_u offset=788 + i32.const 26894 + i32.load16_u offset=790 + i32.const 26894 + i32.load16_u offset=792 + i32.const 26894 + i32.load16_u offset=794 + i32.const 26894 + i32.load16_u offset=796 + i32.const 26894 + i32.load16_u offset=798 + i32.const 26894 + i32.load16_u offset=800 + i32.const 26894 + i32.load16_u offset=802 + i32.const 26894 + i32.load16_u offset=804 + i32.const 26894 + i32.load16_u offset=806 + i32.const 26894 + i32.load16_u offset=808 + i32.const 26894 + i32.load16_u offset=810 + i32.const 26894 + i32.load16_u offset=812 + i32.const 26894 + i32.load16_u offset=814 + i32.const 26894 + i32.load16_u offset=816 + i32.const 26894 + i32.load16_u offset=818 + i32.const 26894 + i32.load16_u offset=820 + i32.const 26894 + i32.load16_u offset=822 + i32.const 26894 + i32.load16_u offset=824 + i32.const 26894 + i32.load16_u offset=826 + i32.const 26894 + i32.load16_u offset=828 + i32.const 26894 + i32.load16_u offset=830 + i32.const 26894 + i32.load16_u offset=832 + i32.const 26894 + i32.load16_u offset=834 + i32.const 26894 + i32.load16_u offset=836 + i32.const 26894 + i32.load16_u offset=838 + i32.const 26894 + i32.load16_u offset=840 + i32.const 26894 + i32.load16_u offset=842 + i32.const 26894 + i32.load16_u offset=844 + i32.const 26894 + i32.load16_u offset=846 + i32.const 26894 + i32.load16_u offset=848 + i32.const 26894 + i32.load16_u offset=850 + i32.const 26894 + i32.load16_u offset=852 + i32.const 26894 + i32.load16_u offset=854 + i32.const 26894 + i32.load16_u offset=856 + i32.const 26894 + i32.load16_u offset=858 + i32.const 26894 + i32.load16_u offset=860 + i32.const 26894 + i32.load16_u offset=862 + i32.const 26894 + i32.load16_u offset=864 + i32.const 26894 + i32.load16_u offset=866 + local.set $$t10.433 + local.set $$t10.432 + local.set $$t10.431 + local.set $$t10.430 + local.set $$t10.429 + local.set $$t10.428 + local.set $$t10.427 + local.set $$t10.426 + local.set $$t10.425 + local.set $$t10.424 + local.set $$t10.423 + local.set $$t10.422 + local.set $$t10.421 + local.set $$t10.420 + local.set $$t10.419 + local.set $$t10.418 + local.set $$t10.417 + local.set $$t10.416 + local.set $$t10.415 + local.set $$t10.414 + local.set $$t10.413 + local.set $$t10.412 + local.set $$t10.411 + local.set $$t10.410 + local.set $$t10.409 + local.set $$t10.408 + local.set $$t10.407 + local.set $$t10.406 + local.set $$t10.405 + local.set $$t10.404 + local.set $$t10.403 + local.set $$t10.402 + local.set $$t10.401 + local.set $$t10.400 + local.set $$t10.399 + local.set $$t10.398 + local.set $$t10.397 + local.set $$t10.396 + local.set $$t10.395 + local.set $$t10.394 + local.set $$t10.393 + local.set $$t10.392 + local.set $$t10.391 + local.set $$t10.390 + local.set $$t10.389 + local.set $$t10.388 + local.set $$t10.387 + local.set $$t10.386 + local.set $$t10.385 + local.set $$t10.384 + local.set $$t10.383 + local.set $$t10.382 + local.set $$t10.381 + local.set $$t10.380 + local.set $$t10.379 + local.set $$t10.378 + local.set $$t10.377 + local.set $$t10.376 + local.set $$t10.375 + local.set $$t10.374 + local.set $$t10.373 + local.set $$t10.372 + local.set $$t10.371 + local.set $$t10.370 + local.set $$t10.369 + local.set $$t10.368 + local.set $$t10.367 + local.set $$t10.366 + local.set $$t10.365 + local.set $$t10.364 + local.set $$t10.363 + local.set $$t10.362 + local.set $$t10.361 + local.set $$t10.360 + local.set $$t10.359 + local.set $$t10.358 + local.set $$t10.357 + local.set $$t10.356 + local.set $$t10.355 + local.set $$t10.354 + local.set $$t10.353 + local.set $$t10.352 + local.set $$t10.351 + local.set $$t10.350 + local.set $$t10.349 + local.set $$t10.348 + local.set $$t10.347 + local.set $$t10.346 + local.set $$t10.345 + local.set $$t10.344 + local.set $$t10.343 + local.set $$t10.342 + local.set $$t10.341 + local.set $$t10.340 + local.set $$t10.339 + local.set $$t10.338 + local.set $$t10.337 + local.set $$t10.336 + local.set $$t10.335 + local.set $$t10.334 + local.set $$t10.333 + local.set $$t10.332 + local.set $$t10.331 + local.set $$t10.330 + local.set $$t10.329 + local.set $$t10.328 + local.set $$t10.327 + local.set $$t10.326 + local.set $$t10.325 + local.set $$t10.324 + local.set $$t10.323 + local.set $$t10.322 + local.set $$t10.321 + local.set $$t10.320 + local.set $$t10.319 + local.set $$t10.318 + local.set $$t10.317 + local.set $$t10.316 + local.set $$t10.315 + local.set $$t10.314 + local.set $$t10.313 + local.set $$t10.312 + local.set $$t10.311 + local.set $$t10.310 + local.set $$t10.309 + local.set $$t10.308 + local.set $$t10.307 + local.set $$t10.306 + local.set $$t10.305 + local.set $$t10.304 + local.set $$t10.303 + local.set $$t10.302 + local.set $$t10.301 + local.set $$t10.300 + local.set $$t10.299 + local.set $$t10.298 + local.set $$t10.297 + local.set $$t10.296 + local.set $$t10.295 + local.set $$t10.294 + local.set $$t10.293 + local.set $$t10.292 + local.set $$t10.291 + local.set $$t10.290 + local.set $$t10.289 + local.set $$t10.288 + local.set $$t10.287 + local.set $$t10.286 + local.set $$t10.285 + local.set $$t10.284 + local.set $$t10.283 + local.set $$t10.282 + local.set $$t10.281 + local.set $$t10.280 + local.set $$t10.279 + local.set $$t10.278 + local.set $$t10.277 + local.set $$t10.276 + local.set $$t10.275 + local.set $$t10.274 + local.set $$t10.273 + local.set $$t10.272 + local.set $$t10.271 + local.set $$t10.270 + local.set $$t10.269 + local.set $$t10.268 + local.set $$t10.267 + local.set $$t10.266 + local.set $$t10.265 + local.set $$t10.264 + local.set $$t10.263 + local.set $$t10.262 + local.set $$t10.261 + local.set $$t10.260 + local.set $$t10.259 + local.set $$t10.258 + local.set $$t10.257 + local.set $$t10.256 + local.set $$t10.255 + local.set $$t10.254 + local.set $$t10.253 + local.set $$t10.252 + local.set $$t10.251 + local.set $$t10.250 + local.set $$t10.249 + local.set $$t10.248 + local.set $$t10.247 + local.set $$t10.246 + local.set $$t10.245 + local.set $$t10.244 + local.set $$t10.243 + local.set $$t10.242 + local.set $$t10.241 + local.set $$t10.240 + local.set $$t10.239 + local.set $$t10.238 + local.set $$t10.237 + local.set $$t10.236 + local.set $$t10.235 + local.set $$t10.234 + local.set $$t10.233 + local.set $$t10.232 + local.set $$t10.231 + local.set $$t10.230 + local.set $$t10.229 + local.set $$t10.228 + local.set $$t10.227 + local.set $$t10.226 + local.set $$t10.225 + local.set $$t10.224 + local.set $$t10.223 + local.set $$t10.222 + local.set $$t10.221 + local.set $$t10.220 + local.set $$t10.219 + local.set $$t10.218 + local.set $$t10.217 + local.set $$t10.216 + local.set $$t10.215 + local.set $$t10.214 + local.set $$t10.213 + local.set $$t10.212 + local.set $$t10.211 + local.set $$t10.210 + local.set $$t10.209 + local.set $$t10.208 + local.set $$t10.207 + local.set $$t10.206 + local.set $$t10.205 + local.set $$t10.204 + local.set $$t10.203 + local.set $$t10.202 + local.set $$t10.201 + local.set $$t10.200 + local.set $$t10.199 + local.set $$t10.198 + local.set $$t10.197 + local.set $$t10.196 + local.set $$t10.195 + local.set $$t10.194 + local.set $$t10.193 + local.set $$t10.192 + local.set $$t10.191 + local.set $$t10.190 + local.set $$t10.189 + local.set $$t10.188 + local.set $$t10.187 + local.set $$t10.186 + local.set $$t10.185 + local.set $$t10.184 + local.set $$t10.183 + local.set $$t10.182 + local.set $$t10.181 + local.set $$t10.180 + local.set $$t10.179 + local.set $$t10.178 + local.set $$t10.177 + local.set $$t10.176 + local.set $$t10.175 + local.set $$t10.174 + local.set $$t10.173 + local.set $$t10.172 + local.set $$t10.171 + local.set $$t10.170 + local.set $$t10.169 + local.set $$t10.168 + local.set $$t10.167 + local.set $$t10.166 + local.set $$t10.165 + local.set $$t10.164 + local.set $$t10.163 + local.set $$t10.162 + local.set $$t10.161 + local.set $$t10.160 + local.set $$t10.159 + local.set $$t10.158 + local.set $$t10.157 + local.set $$t10.156 + local.set $$t10.155 + local.set $$t10.154 + local.set $$t10.153 + local.set $$t10.152 + local.set $$t10.151 + local.set $$t10.150 + local.set $$t10.149 + local.set $$t10.148 + local.set $$t10.147 + local.set $$t10.146 + local.set $$t10.145 + local.set $$t10.144 + local.set $$t10.143 + local.set $$t10.142 + local.set $$t10.141 + local.set $$t10.140 + local.set $$t10.139 + local.set $$t10.138 + local.set $$t10.137 + local.set $$t10.136 + local.set $$t10.135 + local.set $$t10.134 + local.set $$t10.133 + local.set $$t10.132 + local.set $$t10.131 + local.set $$t10.130 + local.set $$t10.129 + local.set $$t10.128 + local.set $$t10.127 + local.set $$t10.126 + local.set $$t10.125 + local.set $$t10.124 + local.set $$t10.123 + local.set $$t10.122 + local.set $$t10.121 + local.set $$t10.120 + local.set $$t10.119 + local.set $$t10.118 + local.set $$t10.117 + local.set $$t10.116 + local.set $$t10.115 + local.set $$t10.114 + local.set $$t10.113 + local.set $$t10.112 + local.set $$t10.111 + local.set $$t10.110 + local.set $$t10.109 + local.set $$t10.108 + local.set $$t10.107 + local.set $$t10.106 + local.set $$t10.105 + local.set $$t10.104 + local.set $$t10.103 + local.set $$t10.102 + local.set $$t10.101 + local.set $$t10.100 + local.set $$t10.99 + local.set $$t10.98 + local.set $$t10.97 + local.set $$t10.96 + local.set $$t10.95 + local.set $$t10.94 + local.set $$t10.93 + local.set $$t10.92 + local.set $$t10.91 + local.set $$t10.90 + local.set $$t10.89 + local.set $$t10.88 + local.set $$t10.87 + local.set $$t10.86 + local.set $$t10.85 + local.set $$t10.84 + local.set $$t10.83 + local.set $$t10.82 + local.set $$t10.81 + local.set $$t10.80 + local.set $$t10.79 + local.set $$t10.78 + local.set $$t10.77 + local.set $$t10.76 + local.set $$t10.75 + local.set $$t10.74 + local.set $$t10.73 + local.set $$t10.72 + local.set $$t10.71 + local.set $$t10.70 + local.set $$t10.69 + local.set $$t10.68 + local.set $$t10.67 + local.set $$t10.66 + local.set $$t10.65 + local.set $$t10.64 + local.set $$t10.63 + local.set $$t10.62 + local.set $$t10.61 + local.set $$t10.60 + local.set $$t10.59 + local.set $$t10.58 + local.set $$t10.57 + local.set $$t10.56 + local.set $$t10.55 + local.set $$t10.54 + local.set $$t10.53 + local.set $$t10.52 + local.set $$t10.51 + local.set $$t10.50 + local.set $$t10.49 + local.set $$t10.48 + local.set $$t10.47 + local.set $$t10.46 + local.set $$t10.45 + local.set $$t10.44 + local.set $$t10.43 + local.set $$t10.42 + local.set $$t10.41 + local.set $$t10.40 + local.set $$t10.39 + local.set $$t10.38 + local.set $$t10.37 + local.set $$t10.36 + local.set $$t10.35 + local.set $$t10.34 + local.set $$t10.33 + local.set $$t10.32 + local.set $$t10.31 + local.set $$t10.30 + local.set $$t10.29 + local.set $$t10.28 + local.set $$t10.27 + local.set $$t10.26 + local.set $$t10.25 + local.set $$t10.24 + local.set $$t10.23 + local.set $$t10.22 + local.set $$t10.21 + local.set $$t10.20 + local.set $$t10.19 + local.set $$t10.18 + local.set $$t10.17 + local.set $$t10.16 + local.set $$t10.15 + local.set $$t10.14 + local.set $$t10.13 + local.set $$t10.12 + local.set $$t10.11 + local.set $$t10.10 + local.set $$t10.9 + local.set $$t10.8 + local.set $$t10.7 + local.set $$t10.6 + local.set $$t10.5 + local.set $$t10.4 + local.set $$t10.3 + local.set $$t10.2 + local.set $$t10.1 + local.set $$t10.0 + i32.const 26440 + i32.load16_u + i32.const 26440 + i32.load16_u offset=2 + i32.const 26440 + i32.load16_u offset=4 + i32.const 26440 + i32.load16_u offset=6 + i32.const 26440 + i32.load16_u offset=8 + i32.const 26440 + i32.load16_u offset=10 + i32.const 26440 + i32.load16_u offset=12 + i32.const 26440 + i32.load16_u offset=14 + i32.const 26440 + i32.load16_u offset=16 + i32.const 26440 + i32.load16_u offset=18 + i32.const 26440 + i32.load16_u offset=20 + i32.const 26440 + i32.load16_u offset=22 + i32.const 26440 + i32.load16_u offset=24 + i32.const 26440 + i32.load16_u offset=26 + i32.const 26440 + i32.load16_u offset=28 + i32.const 26440 + i32.load16_u offset=30 + i32.const 26440 + i32.load16_u offset=32 + i32.const 26440 + i32.load16_u offset=34 + i32.const 26440 + i32.load16_u offset=36 + i32.const 26440 + i32.load16_u offset=38 + i32.const 26440 + i32.load16_u offset=40 + i32.const 26440 + i32.load16_u offset=42 + i32.const 26440 + i32.load16_u offset=44 + i32.const 26440 + i32.load16_u offset=46 + i32.const 26440 + i32.load16_u offset=48 + i32.const 26440 + i32.load16_u offset=50 + i32.const 26440 + i32.load16_u offset=52 + i32.const 26440 + i32.load16_u offset=54 + i32.const 26440 + i32.load16_u offset=56 + i32.const 26440 + i32.load16_u offset=58 + i32.const 26440 + i32.load16_u offset=60 + i32.const 26440 + i32.load16_u offset=62 + i32.const 26440 + i32.load16_u offset=64 + i32.const 26440 + i32.load16_u offset=66 + i32.const 26440 + i32.load16_u offset=68 + i32.const 26440 + i32.load16_u offset=70 + i32.const 26440 + i32.load16_u offset=72 + i32.const 26440 + i32.load16_u offset=74 + i32.const 26440 + i32.load16_u offset=76 + i32.const 26440 + i32.load16_u offset=78 + i32.const 26440 + i32.load16_u offset=80 + i32.const 26440 + i32.load16_u offset=82 + i32.const 26440 + i32.load16_u offset=84 + i32.const 26440 + i32.load16_u offset=86 + i32.const 26440 + i32.load16_u offset=88 + i32.const 26440 + i32.load16_u offset=90 + i32.const 26440 + i32.load16_u offset=92 + i32.const 26440 + i32.load16_u offset=94 + i32.const 26440 + i32.load16_u offset=96 + i32.const 26440 + i32.load16_u offset=98 + i32.const 26440 + i32.load16_u offset=100 + i32.const 26440 + i32.load16_u offset=102 + i32.const 26440 + i32.load16_u offset=104 + i32.const 26440 + i32.load16_u offset=106 + i32.const 26440 + i32.load16_u offset=108 + i32.const 26440 + i32.load16_u offset=110 + i32.const 26440 + i32.load16_u offset=112 + i32.const 26440 + i32.load16_u offset=114 + i32.const 26440 + i32.load16_u offset=116 + i32.const 26440 + i32.load16_u offset=118 + i32.const 26440 + i32.load16_u offset=120 + i32.const 26440 + i32.load16_u offset=122 + i32.const 26440 + i32.load16_u offset=124 + i32.const 26440 + i32.load16_u offset=126 + i32.const 26440 + i32.load16_u offset=128 + i32.const 26440 + i32.load16_u offset=130 + i32.const 26440 + i32.load16_u offset=132 + i32.const 26440 + i32.load16_u offset=134 + i32.const 26440 + i32.load16_u offset=136 + i32.const 26440 + i32.load16_u offset=138 + i32.const 26440 + i32.load16_u offset=140 + i32.const 26440 + i32.load16_u offset=142 + i32.const 26440 + i32.load16_u offset=144 + i32.const 26440 + i32.load16_u offset=146 + i32.const 26440 + i32.load16_u offset=148 + i32.const 26440 + i32.load16_u offset=150 + i32.const 26440 + i32.load16_u offset=152 + i32.const 26440 + i32.load16_u offset=154 + i32.const 26440 + i32.load16_u offset=156 + i32.const 26440 + i32.load16_u offset=158 + i32.const 26440 + i32.load16_u offset=160 + i32.const 26440 + i32.load16_u offset=162 + i32.const 26440 + i32.load16_u offset=164 + i32.const 26440 + i32.load16_u offset=166 + i32.const 26440 + i32.load16_u offset=168 + i32.const 26440 + i32.load16_u offset=170 + i32.const 26440 + i32.load16_u offset=172 + i32.const 26440 + i32.load16_u offset=174 + i32.const 26440 + i32.load16_u offset=176 + i32.const 26440 + i32.load16_u offset=178 + i32.const 26440 + i32.load16_u offset=180 + i32.const 26440 + i32.load16_u offset=182 + i32.const 26440 + i32.load16_u offset=184 + i32.const 26440 + i32.load16_u offset=186 + i32.const 26440 + i32.load16_u offset=188 + i32.const 26440 + i32.load16_u offset=190 + i32.const 26440 + i32.load16_u offset=192 + i32.const 26440 + i32.load16_u offset=194 + i32.const 26440 + i32.load16_u offset=196 + i32.const 26440 + i32.load16_u offset=198 + i32.const 26440 + i32.load16_u offset=200 + i32.const 26440 + i32.load16_u offset=202 + i32.const 26440 + i32.load16_u offset=204 + i32.const 26440 + i32.load16_u offset=206 + i32.const 26440 + i32.load16_u offset=208 + i32.const 26440 + i32.load16_u offset=210 + i32.const 26440 + i32.load16_u offset=212 + i32.const 26440 + i32.load16_u offset=214 + i32.const 26440 + i32.load16_u offset=216 + i32.const 26440 + i32.load16_u offset=218 + i32.const 26440 + i32.load16_u offset=220 + i32.const 26440 + i32.load16_u offset=222 + i32.const 26440 + i32.load16_u offset=224 + i32.const 26440 + i32.load16_u offset=226 + i32.const 26440 + i32.load16_u offset=228 + i32.const 26440 + i32.load16_u offset=230 + i32.const 26440 + i32.load16_u offset=232 + i32.const 26440 + i32.load16_u offset=234 + i32.const 26440 + i32.load16_u offset=236 + i32.const 26440 + i32.load16_u offset=238 + i32.const 26440 + i32.load16_u offset=240 + i32.const 26440 + i32.load16_u offset=242 + i32.const 26440 + i32.load16_u offset=244 + i32.const 26440 + i32.load16_u offset=246 + i32.const 26440 + i32.load16_u offset=248 + i32.const 26440 + i32.load16_u offset=250 + i32.const 26440 + i32.load16_u offset=252 + i32.const 26440 + i32.load16_u offset=254 + i32.const 26440 + i32.load16_u offset=256 + i32.const 26440 + i32.load16_u offset=258 + i32.const 26440 + i32.load16_u offset=260 + i32.const 26440 + i32.load16_u offset=262 + local.set $$t11.131 + local.set $$t11.130 + local.set $$t11.129 + local.set $$t11.128 + local.set $$t11.127 + local.set $$t11.126 + local.set $$t11.125 + local.set $$t11.124 + local.set $$t11.123 + local.set $$t11.122 + local.set $$t11.121 + local.set $$t11.120 + local.set $$t11.119 + local.set $$t11.118 + local.set $$t11.117 + local.set $$t11.116 + local.set $$t11.115 + local.set $$t11.114 + local.set $$t11.113 + local.set $$t11.112 + local.set $$t11.111 + local.set $$t11.110 + local.set $$t11.109 + local.set $$t11.108 + local.set $$t11.107 + local.set $$t11.106 + local.set $$t11.105 + local.set $$t11.104 + local.set $$t11.103 + local.set $$t11.102 + local.set $$t11.101 + local.set $$t11.100 + local.set $$t11.99 + local.set $$t11.98 + local.set $$t11.97 + local.set $$t11.96 + local.set $$t11.95 + local.set $$t11.94 + local.set $$t11.93 + local.set $$t11.92 + local.set $$t11.91 + local.set $$t11.90 + local.set $$t11.89 + local.set $$t11.88 + local.set $$t11.87 + local.set $$t11.86 + local.set $$t11.85 + local.set $$t11.84 + local.set $$t11.83 + local.set $$t11.82 + local.set $$t11.81 + local.set $$t11.80 + local.set $$t11.79 + local.set $$t11.78 + local.set $$t11.77 + local.set $$t11.76 + local.set $$t11.75 + local.set $$t11.74 + local.set $$t11.73 + local.set $$t11.72 + local.set $$t11.71 + local.set $$t11.70 + local.set $$t11.69 + local.set $$t11.68 + local.set $$t11.67 + local.set $$t11.66 + local.set $$t11.65 + local.set $$t11.64 + local.set $$t11.63 + local.set $$t11.62 + local.set $$t11.61 + local.set $$t11.60 + local.set $$t11.59 + local.set $$t11.58 + local.set $$t11.57 + local.set $$t11.56 + local.set $$t11.55 + local.set $$t11.54 + local.set $$t11.53 + local.set $$t11.52 + local.set $$t11.51 + local.set $$t11.50 + local.set $$t11.49 + local.set $$t11.48 + local.set $$t11.47 + local.set $$t11.46 + local.set $$t11.45 + local.set $$t11.44 + local.set $$t11.43 + local.set $$t11.42 + local.set $$t11.41 + local.set $$t11.40 + local.set $$t11.39 + local.set $$t11.38 + local.set $$t11.37 + local.set $$t11.36 + local.set $$t11.35 + local.set $$t11.34 + local.set $$t11.33 + local.set $$t11.32 + local.set $$t11.31 + local.set $$t11.30 + local.set $$t11.29 + local.set $$t11.28 + local.set $$t11.27 + local.set $$t11.26 + local.set $$t11.25 + local.set $$t11.24 + local.set $$t11.23 + local.set $$t11.22 + local.set $$t11.21 + local.set $$t11.20 + local.set $$t11.19 + local.set $$t11.18 + local.set $$t11.17 + local.set $$t11.16 + local.set $$t11.15 + local.set $$t11.14 + local.set $$t11.13 + local.set $$t11.12 + local.set $$t11.11 + local.set $$t11.10 + local.set $$t11.9 + local.set $$t11.8 + local.set $$t11.7 + local.set $$t11.6 + local.set $$t11.5 + local.set $$t11.4 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t7.1 + local.get $$t10.0 + i32.store16 + local.get $$t7.1 + local.get $$t10.1 + i32.store16 offset=2 + local.get $$t7.1 + local.get $$t10.2 + i32.store16 offset=4 + local.get $$t7.1 + local.get $$t10.3 + i32.store16 offset=6 + local.get $$t7.1 + local.get $$t10.4 + i32.store16 offset=8 + local.get $$t7.1 + local.get $$t10.5 + i32.store16 offset=10 + local.get $$t7.1 + local.get $$t10.6 + i32.store16 offset=12 + local.get $$t7.1 + local.get $$t10.7 + i32.store16 offset=14 + local.get $$t7.1 + local.get $$t10.8 + i32.store16 offset=16 + local.get $$t7.1 + local.get $$t10.9 + i32.store16 offset=18 + local.get $$t7.1 + local.get $$t10.10 + i32.store16 offset=20 + local.get $$t7.1 + local.get $$t10.11 + i32.store16 offset=22 + local.get $$t7.1 + local.get $$t10.12 + i32.store16 offset=24 + local.get $$t7.1 + local.get $$t10.13 + i32.store16 offset=26 + local.get $$t7.1 + local.get $$t10.14 + i32.store16 offset=28 + local.get $$t7.1 + local.get $$t10.15 + i32.store16 offset=30 + local.get $$t7.1 + local.get $$t10.16 + i32.store16 offset=32 + local.get $$t7.1 + local.get $$t10.17 + i32.store16 offset=34 + local.get $$t7.1 + local.get $$t10.18 + i32.store16 offset=36 + local.get $$t7.1 + local.get $$t10.19 + i32.store16 offset=38 + local.get $$t7.1 + local.get $$t10.20 + i32.store16 offset=40 + local.get $$t7.1 + local.get $$t10.21 + i32.store16 offset=42 + local.get $$t7.1 + local.get $$t10.22 + i32.store16 offset=44 + local.get $$t7.1 + local.get $$t10.23 + i32.store16 offset=46 + local.get $$t7.1 + local.get $$t10.24 + i32.store16 offset=48 + local.get $$t7.1 + local.get $$t10.25 + i32.store16 offset=50 + local.get $$t7.1 + local.get $$t10.26 + i32.store16 offset=52 + local.get $$t7.1 + local.get $$t10.27 + i32.store16 offset=54 + local.get $$t7.1 + local.get $$t10.28 + i32.store16 offset=56 + local.get $$t7.1 + local.get $$t10.29 + i32.store16 offset=58 + local.get $$t7.1 + local.get $$t10.30 + i32.store16 offset=60 + local.get $$t7.1 + local.get $$t10.31 + i32.store16 offset=62 + local.get $$t7.1 + local.get $$t10.32 + i32.store16 offset=64 + local.get $$t7.1 + local.get $$t10.33 + i32.store16 offset=66 + local.get $$t7.1 + local.get $$t10.34 + i32.store16 offset=68 + local.get $$t7.1 + local.get $$t10.35 + i32.store16 offset=70 + local.get $$t7.1 + local.get $$t10.36 + i32.store16 offset=72 + local.get $$t7.1 + local.get $$t10.37 + i32.store16 offset=74 + local.get $$t7.1 + local.get $$t10.38 + i32.store16 offset=76 + local.get $$t7.1 + local.get $$t10.39 + i32.store16 offset=78 + local.get $$t7.1 + local.get $$t10.40 + i32.store16 offset=80 + local.get $$t7.1 + local.get $$t10.41 + i32.store16 offset=82 + local.get $$t7.1 + local.get $$t10.42 + i32.store16 offset=84 + local.get $$t7.1 + local.get $$t10.43 + i32.store16 offset=86 + local.get $$t7.1 + local.get $$t10.44 + i32.store16 offset=88 + local.get $$t7.1 + local.get $$t10.45 + i32.store16 offset=90 + local.get $$t7.1 + local.get $$t10.46 + i32.store16 offset=92 + local.get $$t7.1 + local.get $$t10.47 + i32.store16 offset=94 + local.get $$t7.1 + local.get $$t10.48 + i32.store16 offset=96 + local.get $$t7.1 + local.get $$t10.49 + i32.store16 offset=98 + local.get $$t7.1 + local.get $$t10.50 + i32.store16 offset=100 + local.get $$t7.1 + local.get $$t10.51 + i32.store16 offset=102 + local.get $$t7.1 + local.get $$t10.52 + i32.store16 offset=104 + local.get $$t7.1 + local.get $$t10.53 + i32.store16 offset=106 + local.get $$t7.1 + local.get $$t10.54 + i32.store16 offset=108 + local.get $$t7.1 + local.get $$t10.55 + i32.store16 offset=110 + local.get $$t7.1 + local.get $$t10.56 + i32.store16 offset=112 + local.get $$t7.1 + local.get $$t10.57 + i32.store16 offset=114 + local.get $$t7.1 + local.get $$t10.58 + i32.store16 offset=116 + local.get $$t7.1 + local.get $$t10.59 + i32.store16 offset=118 + local.get $$t7.1 + local.get $$t10.60 + i32.store16 offset=120 + local.get $$t7.1 + local.get $$t10.61 + i32.store16 offset=122 + local.get $$t7.1 + local.get $$t10.62 + i32.store16 offset=124 + local.get $$t7.1 + local.get $$t10.63 + i32.store16 offset=126 + local.get $$t7.1 + local.get $$t10.64 + i32.store16 offset=128 + local.get $$t7.1 + local.get $$t10.65 + i32.store16 offset=130 + local.get $$t7.1 + local.get $$t10.66 + i32.store16 offset=132 + local.get $$t7.1 + local.get $$t10.67 + i32.store16 offset=134 + local.get $$t7.1 + local.get $$t10.68 + i32.store16 offset=136 + local.get $$t7.1 + local.get $$t10.69 + i32.store16 offset=138 + local.get $$t7.1 + local.get $$t10.70 + i32.store16 offset=140 + local.get $$t7.1 + local.get $$t10.71 + i32.store16 offset=142 + local.get $$t7.1 + local.get $$t10.72 + i32.store16 offset=144 + local.get $$t7.1 + local.get $$t10.73 + i32.store16 offset=146 + local.get $$t7.1 + local.get $$t10.74 + i32.store16 offset=148 + local.get $$t7.1 + local.get $$t10.75 + i32.store16 offset=150 + local.get $$t7.1 + local.get $$t10.76 + i32.store16 offset=152 + local.get $$t7.1 + local.get $$t10.77 + i32.store16 offset=154 + local.get $$t7.1 + local.get $$t10.78 + i32.store16 offset=156 + local.get $$t7.1 + local.get $$t10.79 + i32.store16 offset=158 + local.get $$t7.1 + local.get $$t10.80 + i32.store16 offset=160 + local.get $$t7.1 + local.get $$t10.81 + i32.store16 offset=162 + local.get $$t7.1 + local.get $$t10.82 + i32.store16 offset=164 + local.get $$t7.1 + local.get $$t10.83 + i32.store16 offset=166 + local.get $$t7.1 + local.get $$t10.84 + i32.store16 offset=168 + local.get $$t7.1 + local.get $$t10.85 + i32.store16 offset=170 + local.get $$t7.1 + local.get $$t10.86 + i32.store16 offset=172 + local.get $$t7.1 + local.get $$t10.87 + i32.store16 offset=174 + local.get $$t7.1 + local.get $$t10.88 + i32.store16 offset=176 + local.get $$t7.1 + local.get $$t10.89 + i32.store16 offset=178 + local.get $$t7.1 + local.get $$t10.90 + i32.store16 offset=180 + local.get $$t7.1 + local.get $$t10.91 + i32.store16 offset=182 + local.get $$t7.1 + local.get $$t10.92 + i32.store16 offset=184 + local.get $$t7.1 + local.get $$t10.93 + i32.store16 offset=186 + local.get $$t7.1 + local.get $$t10.94 + i32.store16 offset=188 + local.get $$t7.1 + local.get $$t10.95 + i32.store16 offset=190 + local.get $$t7.1 + local.get $$t10.96 + i32.store16 offset=192 + local.get $$t7.1 + local.get $$t10.97 + i32.store16 offset=194 + local.get $$t7.1 + local.get $$t10.98 + i32.store16 offset=196 + local.get $$t7.1 + local.get $$t10.99 + i32.store16 offset=198 + local.get $$t7.1 + local.get $$t10.100 + i32.store16 offset=200 + local.get $$t7.1 + local.get $$t10.101 + i32.store16 offset=202 + local.get $$t7.1 + local.get $$t10.102 + i32.store16 offset=204 + local.get $$t7.1 + local.get $$t10.103 + i32.store16 offset=206 + local.get $$t7.1 + local.get $$t10.104 + i32.store16 offset=208 + local.get $$t7.1 + local.get $$t10.105 + i32.store16 offset=210 + local.get $$t7.1 + local.get $$t10.106 + i32.store16 offset=212 + local.get $$t7.1 + local.get $$t10.107 + i32.store16 offset=214 + local.get $$t7.1 + local.get $$t10.108 + i32.store16 offset=216 + local.get $$t7.1 + local.get $$t10.109 + i32.store16 offset=218 + local.get $$t7.1 + local.get $$t10.110 + i32.store16 offset=220 + local.get $$t7.1 + local.get $$t10.111 + i32.store16 offset=222 + local.get $$t7.1 + local.get $$t10.112 + i32.store16 offset=224 + local.get $$t7.1 + local.get $$t10.113 + i32.store16 offset=226 + local.get $$t7.1 + local.get $$t10.114 + i32.store16 offset=228 + local.get $$t7.1 + local.get $$t10.115 + i32.store16 offset=230 + local.get $$t7.1 + local.get $$t10.116 + i32.store16 offset=232 + local.get $$t7.1 + local.get $$t10.117 + i32.store16 offset=234 + local.get $$t7.1 + local.get $$t10.118 + i32.store16 offset=236 + local.get $$t7.1 + local.get $$t10.119 + i32.store16 offset=238 + local.get $$t7.1 + local.get $$t10.120 + i32.store16 offset=240 + local.get $$t7.1 + local.get $$t10.121 + i32.store16 offset=242 + local.get $$t7.1 + local.get $$t10.122 + i32.store16 offset=244 + local.get $$t7.1 + local.get $$t10.123 + i32.store16 offset=246 + local.get $$t7.1 + local.get $$t10.124 + i32.store16 offset=248 + local.get $$t7.1 + local.get $$t10.125 + i32.store16 offset=250 + local.get $$t7.1 + local.get $$t10.126 + i32.store16 offset=252 + local.get $$t7.1 + local.get $$t10.127 + i32.store16 offset=254 + local.get $$t7.1 + local.get $$t10.128 + i32.store16 offset=256 + local.get $$t7.1 + local.get $$t10.129 + i32.store16 offset=258 + local.get $$t7.1 + local.get $$t10.130 + i32.store16 offset=260 + local.get $$t7.1 + local.get $$t10.131 + i32.store16 offset=262 + local.get $$t7.1 + local.get $$t10.132 + i32.store16 offset=264 + local.get $$t7.1 + local.get $$t10.133 + i32.store16 offset=266 + local.get $$t7.1 + local.get $$t10.134 + i32.store16 offset=268 + local.get $$t7.1 + local.get $$t10.135 + i32.store16 offset=270 + local.get $$t7.1 + local.get $$t10.136 + i32.store16 offset=272 + local.get $$t7.1 + local.get $$t10.137 + i32.store16 offset=274 + local.get $$t7.1 + local.get $$t10.138 + i32.store16 offset=276 + local.get $$t7.1 + local.get $$t10.139 + i32.store16 offset=278 + local.get $$t7.1 + local.get $$t10.140 + i32.store16 offset=280 + local.get $$t7.1 + local.get $$t10.141 + i32.store16 offset=282 + local.get $$t7.1 + local.get $$t10.142 + i32.store16 offset=284 + local.get $$t7.1 + local.get $$t10.143 + i32.store16 offset=286 + local.get $$t7.1 + local.get $$t10.144 + i32.store16 offset=288 + local.get $$t7.1 + local.get $$t10.145 + i32.store16 offset=290 + local.get $$t7.1 + local.get $$t10.146 + i32.store16 offset=292 + local.get $$t7.1 + local.get $$t10.147 + i32.store16 offset=294 + local.get $$t7.1 + local.get $$t10.148 + i32.store16 offset=296 + local.get $$t7.1 + local.get $$t10.149 + i32.store16 offset=298 + local.get $$t7.1 + local.get $$t10.150 + i32.store16 offset=300 + local.get $$t7.1 + local.get $$t10.151 + i32.store16 offset=302 + local.get $$t7.1 + local.get $$t10.152 + i32.store16 offset=304 + local.get $$t7.1 + local.get $$t10.153 + i32.store16 offset=306 + local.get $$t7.1 + local.get $$t10.154 + i32.store16 offset=308 + local.get $$t7.1 + local.get $$t10.155 + i32.store16 offset=310 + local.get $$t7.1 + local.get $$t10.156 + i32.store16 offset=312 + local.get $$t7.1 + local.get $$t10.157 + i32.store16 offset=314 + local.get $$t7.1 + local.get $$t10.158 + i32.store16 offset=316 + local.get $$t7.1 + local.get $$t10.159 + i32.store16 offset=318 + local.get $$t7.1 + local.get $$t10.160 + i32.store16 offset=320 + local.get $$t7.1 + local.get $$t10.161 + i32.store16 offset=322 + local.get $$t7.1 + local.get $$t10.162 + i32.store16 offset=324 + local.get $$t7.1 + local.get $$t10.163 + i32.store16 offset=326 + local.get $$t7.1 + local.get $$t10.164 + i32.store16 offset=328 + local.get $$t7.1 + local.get $$t10.165 + i32.store16 offset=330 + local.get $$t7.1 + local.get $$t10.166 + i32.store16 offset=332 + local.get $$t7.1 + local.get $$t10.167 + i32.store16 offset=334 + local.get $$t7.1 + local.get $$t10.168 + i32.store16 offset=336 + local.get $$t7.1 + local.get $$t10.169 + i32.store16 offset=338 + local.get $$t7.1 + local.get $$t10.170 + i32.store16 offset=340 + local.get $$t7.1 + local.get $$t10.171 + i32.store16 offset=342 + local.get $$t7.1 + local.get $$t10.172 + i32.store16 offset=344 + local.get $$t7.1 + local.get $$t10.173 + i32.store16 offset=346 + local.get $$t7.1 + local.get $$t10.174 + i32.store16 offset=348 + local.get $$t7.1 + local.get $$t10.175 + i32.store16 offset=350 + local.get $$t7.1 + local.get $$t10.176 + i32.store16 offset=352 + local.get $$t7.1 + local.get $$t10.177 + i32.store16 offset=354 + local.get $$t7.1 + local.get $$t10.178 + i32.store16 offset=356 + local.get $$t7.1 + local.get $$t10.179 + i32.store16 offset=358 + local.get $$t7.1 + local.get $$t10.180 + i32.store16 offset=360 + local.get $$t7.1 + local.get $$t10.181 + i32.store16 offset=362 + local.get $$t7.1 + local.get $$t10.182 + i32.store16 offset=364 + local.get $$t7.1 + local.get $$t10.183 + i32.store16 offset=366 + local.get $$t7.1 + local.get $$t10.184 + i32.store16 offset=368 + local.get $$t7.1 + local.get $$t10.185 + i32.store16 offset=370 + local.get $$t7.1 + local.get $$t10.186 + i32.store16 offset=372 + local.get $$t7.1 + local.get $$t10.187 + i32.store16 offset=374 + local.get $$t7.1 + local.get $$t10.188 + i32.store16 offset=376 + local.get $$t7.1 + local.get $$t10.189 + i32.store16 offset=378 + local.get $$t7.1 + local.get $$t10.190 + i32.store16 offset=380 + local.get $$t7.1 + local.get $$t10.191 + i32.store16 offset=382 + local.get $$t7.1 + local.get $$t10.192 + i32.store16 offset=384 + local.get $$t7.1 + local.get $$t10.193 + i32.store16 offset=386 + local.get $$t7.1 + local.get $$t10.194 + i32.store16 offset=388 + local.get $$t7.1 + local.get $$t10.195 + i32.store16 offset=390 + local.get $$t7.1 + local.get $$t10.196 + i32.store16 offset=392 + local.get $$t7.1 + local.get $$t10.197 + i32.store16 offset=394 + local.get $$t7.1 + local.get $$t10.198 + i32.store16 offset=396 + local.get $$t7.1 + local.get $$t10.199 + i32.store16 offset=398 + local.get $$t7.1 + local.get $$t10.200 + i32.store16 offset=400 + local.get $$t7.1 + local.get $$t10.201 + i32.store16 offset=402 + local.get $$t7.1 + local.get $$t10.202 + i32.store16 offset=404 + local.get $$t7.1 + local.get $$t10.203 + i32.store16 offset=406 + local.get $$t7.1 + local.get $$t10.204 + i32.store16 offset=408 + local.get $$t7.1 + local.get $$t10.205 + i32.store16 offset=410 + local.get $$t7.1 + local.get $$t10.206 + i32.store16 offset=412 + local.get $$t7.1 + local.get $$t10.207 + i32.store16 offset=414 + local.get $$t7.1 + local.get $$t10.208 + i32.store16 offset=416 + local.get $$t7.1 + local.get $$t10.209 + i32.store16 offset=418 + local.get $$t7.1 + local.get $$t10.210 + i32.store16 offset=420 + local.get $$t7.1 + local.get $$t10.211 + i32.store16 offset=422 + local.get $$t7.1 + local.get $$t10.212 + i32.store16 offset=424 + local.get $$t7.1 + local.get $$t10.213 + i32.store16 offset=426 + local.get $$t7.1 + local.get $$t10.214 + i32.store16 offset=428 + local.get $$t7.1 + local.get $$t10.215 + i32.store16 offset=430 + local.get $$t7.1 + local.get $$t10.216 + i32.store16 offset=432 + local.get $$t7.1 + local.get $$t10.217 + i32.store16 offset=434 + local.get $$t7.1 + local.get $$t10.218 + i32.store16 offset=436 + local.get $$t7.1 + local.get $$t10.219 + i32.store16 offset=438 + local.get $$t7.1 + local.get $$t10.220 + i32.store16 offset=440 + local.get $$t7.1 + local.get $$t10.221 + i32.store16 offset=442 + local.get $$t7.1 + local.get $$t10.222 + i32.store16 offset=444 + local.get $$t7.1 + local.get $$t10.223 + i32.store16 offset=446 + local.get $$t7.1 + local.get $$t10.224 + i32.store16 offset=448 + local.get $$t7.1 + local.get $$t10.225 + i32.store16 offset=450 + local.get $$t7.1 + local.get $$t10.226 + i32.store16 offset=452 + local.get $$t7.1 + local.get $$t10.227 + i32.store16 offset=454 + local.get $$t7.1 + local.get $$t10.228 + i32.store16 offset=456 + local.get $$t7.1 + local.get $$t10.229 + i32.store16 offset=458 + local.get $$t7.1 + local.get $$t10.230 + i32.store16 offset=460 + local.get $$t7.1 + local.get $$t10.231 + i32.store16 offset=462 + local.get $$t7.1 + local.get $$t10.232 + i32.store16 offset=464 + local.get $$t7.1 + local.get $$t10.233 + i32.store16 offset=466 + local.get $$t7.1 + local.get $$t10.234 + i32.store16 offset=468 + local.get $$t7.1 + local.get $$t10.235 + i32.store16 offset=470 + local.get $$t7.1 + local.get $$t10.236 + i32.store16 offset=472 + local.get $$t7.1 + local.get $$t10.237 + i32.store16 offset=474 + local.get $$t7.1 + local.get $$t10.238 + i32.store16 offset=476 + local.get $$t7.1 + local.get $$t10.239 + i32.store16 offset=478 + local.get $$t7.1 + local.get $$t10.240 + i32.store16 offset=480 + local.get $$t7.1 + local.get $$t10.241 + i32.store16 offset=482 + local.get $$t7.1 + local.get $$t10.242 + i32.store16 offset=484 + local.get $$t7.1 + local.get $$t10.243 + i32.store16 offset=486 + local.get $$t7.1 + local.get $$t10.244 + i32.store16 offset=488 + local.get $$t7.1 + local.get $$t10.245 + i32.store16 offset=490 + local.get $$t7.1 + local.get $$t10.246 + i32.store16 offset=492 + local.get $$t7.1 + local.get $$t10.247 + i32.store16 offset=494 + local.get $$t7.1 + local.get $$t10.248 + i32.store16 offset=496 + local.get $$t7.1 + local.get $$t10.249 + i32.store16 offset=498 + local.get $$t7.1 + local.get $$t10.250 + i32.store16 offset=500 + local.get $$t7.1 + local.get $$t10.251 + i32.store16 offset=502 + local.get $$t7.1 + local.get $$t10.252 + i32.store16 offset=504 + local.get $$t7.1 + local.get $$t10.253 + i32.store16 offset=506 + local.get $$t7.1 + local.get $$t10.254 + i32.store16 offset=508 + local.get $$t7.1 + local.get $$t10.255 + i32.store16 offset=510 + local.get $$t7.1 + local.get $$t10.256 + i32.store16 offset=512 + local.get $$t7.1 + local.get $$t10.257 + i32.store16 offset=514 + local.get $$t7.1 + local.get $$t10.258 + i32.store16 offset=516 + local.get $$t7.1 + local.get $$t10.259 + i32.store16 offset=518 + local.get $$t7.1 + local.get $$t10.260 + i32.store16 offset=520 + local.get $$t7.1 + local.get $$t10.261 + i32.store16 offset=522 + local.get $$t7.1 + local.get $$t10.262 + i32.store16 offset=524 + local.get $$t7.1 + local.get $$t10.263 + i32.store16 offset=526 + local.get $$t7.1 + local.get $$t10.264 + i32.store16 offset=528 + local.get $$t7.1 + local.get $$t10.265 + i32.store16 offset=530 + local.get $$t7.1 + local.get $$t10.266 + i32.store16 offset=532 + local.get $$t7.1 + local.get $$t10.267 + i32.store16 offset=534 + local.get $$t7.1 + local.get $$t10.268 + i32.store16 offset=536 + local.get $$t7.1 + local.get $$t10.269 + i32.store16 offset=538 + local.get $$t7.1 + local.get $$t10.270 + i32.store16 offset=540 + local.get $$t7.1 + local.get $$t10.271 + i32.store16 offset=542 + local.get $$t7.1 + local.get $$t10.272 + i32.store16 offset=544 + local.get $$t7.1 + local.get $$t10.273 + i32.store16 offset=546 + local.get $$t7.1 + local.get $$t10.274 + i32.store16 offset=548 + local.get $$t7.1 + local.get $$t10.275 + i32.store16 offset=550 + local.get $$t7.1 + local.get $$t10.276 + i32.store16 offset=552 + local.get $$t7.1 + local.get $$t10.277 + i32.store16 offset=554 + local.get $$t7.1 + local.get $$t10.278 + i32.store16 offset=556 + local.get $$t7.1 + local.get $$t10.279 + i32.store16 offset=558 + local.get $$t7.1 + local.get $$t10.280 + i32.store16 offset=560 + local.get $$t7.1 + local.get $$t10.281 + i32.store16 offset=562 + local.get $$t7.1 + local.get $$t10.282 + i32.store16 offset=564 + local.get $$t7.1 + local.get $$t10.283 + i32.store16 offset=566 + local.get $$t7.1 + local.get $$t10.284 + i32.store16 offset=568 + local.get $$t7.1 + local.get $$t10.285 + i32.store16 offset=570 + local.get $$t7.1 + local.get $$t10.286 + i32.store16 offset=572 + local.get $$t7.1 + local.get $$t10.287 + i32.store16 offset=574 + local.get $$t7.1 + local.get $$t10.288 + i32.store16 offset=576 + local.get $$t7.1 + local.get $$t10.289 + i32.store16 offset=578 + local.get $$t7.1 + local.get $$t10.290 + i32.store16 offset=580 + local.get $$t7.1 + local.get $$t10.291 + i32.store16 offset=582 + local.get $$t7.1 + local.get $$t10.292 + i32.store16 offset=584 + local.get $$t7.1 + local.get $$t10.293 + i32.store16 offset=586 + local.get $$t7.1 + local.get $$t10.294 + i32.store16 offset=588 + local.get $$t7.1 + local.get $$t10.295 + i32.store16 offset=590 + local.get $$t7.1 + local.get $$t10.296 + i32.store16 offset=592 + local.get $$t7.1 + local.get $$t10.297 + i32.store16 offset=594 + local.get $$t7.1 + local.get $$t10.298 + i32.store16 offset=596 + local.get $$t7.1 + local.get $$t10.299 + i32.store16 offset=598 + local.get $$t7.1 + local.get $$t10.300 + i32.store16 offset=600 + local.get $$t7.1 + local.get $$t10.301 + i32.store16 offset=602 + local.get $$t7.1 + local.get $$t10.302 + i32.store16 offset=604 + local.get $$t7.1 + local.get $$t10.303 + i32.store16 offset=606 + local.get $$t7.1 + local.get $$t10.304 + i32.store16 offset=608 + local.get $$t7.1 + local.get $$t10.305 + i32.store16 offset=610 + local.get $$t7.1 + local.get $$t10.306 + i32.store16 offset=612 + local.get $$t7.1 + local.get $$t10.307 + i32.store16 offset=614 + local.get $$t7.1 + local.get $$t10.308 + i32.store16 offset=616 + local.get $$t7.1 + local.get $$t10.309 + i32.store16 offset=618 + local.get $$t7.1 + local.get $$t10.310 + i32.store16 offset=620 + local.get $$t7.1 + local.get $$t10.311 + i32.store16 offset=622 + local.get $$t7.1 + local.get $$t10.312 + i32.store16 offset=624 + local.get $$t7.1 + local.get $$t10.313 + i32.store16 offset=626 + local.get $$t7.1 + local.get $$t10.314 + i32.store16 offset=628 + local.get $$t7.1 + local.get $$t10.315 + i32.store16 offset=630 + local.get $$t7.1 + local.get $$t10.316 + i32.store16 offset=632 + local.get $$t7.1 + local.get $$t10.317 + i32.store16 offset=634 + local.get $$t7.1 + local.get $$t10.318 + i32.store16 offset=636 + local.get $$t7.1 + local.get $$t10.319 + i32.store16 offset=638 + local.get $$t7.1 + local.get $$t10.320 + i32.store16 offset=640 + local.get $$t7.1 + local.get $$t10.321 + i32.store16 offset=642 + local.get $$t7.1 + local.get $$t10.322 + i32.store16 offset=644 + local.get $$t7.1 + local.get $$t10.323 + i32.store16 offset=646 + local.get $$t7.1 + local.get $$t10.324 + i32.store16 offset=648 + local.get $$t7.1 + local.get $$t10.325 + i32.store16 offset=650 + local.get $$t7.1 + local.get $$t10.326 + i32.store16 offset=652 + local.get $$t7.1 + local.get $$t10.327 + i32.store16 offset=654 + local.get $$t7.1 + local.get $$t10.328 + i32.store16 offset=656 + local.get $$t7.1 + local.get $$t10.329 + i32.store16 offset=658 + local.get $$t7.1 + local.get $$t10.330 + i32.store16 offset=660 + local.get $$t7.1 + local.get $$t10.331 + i32.store16 offset=662 + local.get $$t7.1 + local.get $$t10.332 + i32.store16 offset=664 + local.get $$t7.1 + local.get $$t10.333 + i32.store16 offset=666 + local.get $$t7.1 + local.get $$t10.334 + i32.store16 offset=668 + local.get $$t7.1 + local.get $$t10.335 + i32.store16 offset=670 + local.get $$t7.1 + local.get $$t10.336 + i32.store16 offset=672 + local.get $$t7.1 + local.get $$t10.337 + i32.store16 offset=674 + local.get $$t7.1 + local.get $$t10.338 + i32.store16 offset=676 + local.get $$t7.1 + local.get $$t10.339 + i32.store16 offset=678 + local.get $$t7.1 + local.get $$t10.340 + i32.store16 offset=680 + local.get $$t7.1 + local.get $$t10.341 + i32.store16 offset=682 + local.get $$t7.1 + local.get $$t10.342 + i32.store16 offset=684 + local.get $$t7.1 + local.get $$t10.343 + i32.store16 offset=686 + local.get $$t7.1 + local.get $$t10.344 + i32.store16 offset=688 + local.get $$t7.1 + local.get $$t10.345 + i32.store16 offset=690 + local.get $$t7.1 + local.get $$t10.346 + i32.store16 offset=692 + local.get $$t7.1 + local.get $$t10.347 + i32.store16 offset=694 + local.get $$t7.1 + local.get $$t10.348 + i32.store16 offset=696 + local.get $$t7.1 + local.get $$t10.349 + i32.store16 offset=698 + local.get $$t7.1 + local.get $$t10.350 + i32.store16 offset=700 + local.get $$t7.1 + local.get $$t10.351 + i32.store16 offset=702 + local.get $$t7.1 + local.get $$t10.352 + i32.store16 offset=704 + local.get $$t7.1 + local.get $$t10.353 + i32.store16 offset=706 + local.get $$t7.1 + local.get $$t10.354 + i32.store16 offset=708 + local.get $$t7.1 + local.get $$t10.355 + i32.store16 offset=710 + local.get $$t7.1 + local.get $$t10.356 + i32.store16 offset=712 + local.get $$t7.1 + local.get $$t10.357 + i32.store16 offset=714 + local.get $$t7.1 + local.get $$t10.358 + i32.store16 offset=716 + local.get $$t7.1 + local.get $$t10.359 + i32.store16 offset=718 + local.get $$t7.1 + local.get $$t10.360 + i32.store16 offset=720 + local.get $$t7.1 + local.get $$t10.361 + i32.store16 offset=722 + local.get $$t7.1 + local.get $$t10.362 + i32.store16 offset=724 + local.get $$t7.1 + local.get $$t10.363 + i32.store16 offset=726 + local.get $$t7.1 + local.get $$t10.364 + i32.store16 offset=728 + local.get $$t7.1 + local.get $$t10.365 + i32.store16 offset=730 + local.get $$t7.1 + local.get $$t10.366 + i32.store16 offset=732 + local.get $$t7.1 + local.get $$t10.367 + i32.store16 offset=734 + local.get $$t7.1 + local.get $$t10.368 + i32.store16 offset=736 + local.get $$t7.1 + local.get $$t10.369 + i32.store16 offset=738 + local.get $$t7.1 + local.get $$t10.370 + i32.store16 offset=740 + local.get $$t7.1 + local.get $$t10.371 + i32.store16 offset=742 + local.get $$t7.1 + local.get $$t10.372 + i32.store16 offset=744 + local.get $$t7.1 + local.get $$t10.373 + i32.store16 offset=746 + local.get $$t7.1 + local.get $$t10.374 + i32.store16 offset=748 + local.get $$t7.1 + local.get $$t10.375 + i32.store16 offset=750 + local.get $$t7.1 + local.get $$t10.376 + i32.store16 offset=752 + local.get $$t7.1 + local.get $$t10.377 + i32.store16 offset=754 + local.get $$t7.1 + local.get $$t10.378 + i32.store16 offset=756 + local.get $$t7.1 + local.get $$t10.379 + i32.store16 offset=758 + local.get $$t7.1 + local.get $$t10.380 + i32.store16 offset=760 + local.get $$t7.1 + local.get $$t10.381 + i32.store16 offset=762 + local.get $$t7.1 + local.get $$t10.382 + i32.store16 offset=764 + local.get $$t7.1 + local.get $$t10.383 + i32.store16 offset=766 + local.get $$t7.1 + local.get $$t10.384 + i32.store16 offset=768 + local.get $$t7.1 + local.get $$t10.385 + i32.store16 offset=770 + local.get $$t7.1 + local.get $$t10.386 + i32.store16 offset=772 + local.get $$t7.1 + local.get $$t10.387 + i32.store16 offset=774 + local.get $$t7.1 + local.get $$t10.388 + i32.store16 offset=776 + local.get $$t7.1 + local.get $$t10.389 + i32.store16 offset=778 + local.get $$t7.1 + local.get $$t10.390 + i32.store16 offset=780 + local.get $$t7.1 + local.get $$t10.391 + i32.store16 offset=782 + local.get $$t7.1 + local.get $$t10.392 + i32.store16 offset=784 + local.get $$t7.1 + local.get $$t10.393 + i32.store16 offset=786 + local.get $$t7.1 + local.get $$t10.394 + i32.store16 offset=788 + local.get $$t7.1 + local.get $$t10.395 + i32.store16 offset=790 + local.get $$t7.1 + local.get $$t10.396 + i32.store16 offset=792 + local.get $$t7.1 + local.get $$t10.397 + i32.store16 offset=794 + local.get $$t7.1 + local.get $$t10.398 + i32.store16 offset=796 + local.get $$t7.1 + local.get $$t10.399 + i32.store16 offset=798 + local.get $$t7.1 + local.get $$t10.400 + i32.store16 offset=800 + local.get $$t7.1 + local.get $$t10.401 + i32.store16 offset=802 + local.get $$t7.1 + local.get $$t10.402 + i32.store16 offset=804 + local.get $$t7.1 + local.get $$t10.403 + i32.store16 offset=806 + local.get $$t7.1 + local.get $$t10.404 + i32.store16 offset=808 + local.get $$t7.1 + local.get $$t10.405 + i32.store16 offset=810 + local.get $$t7.1 + local.get $$t10.406 + i32.store16 offset=812 + local.get $$t7.1 + local.get $$t10.407 + i32.store16 offset=814 + local.get $$t7.1 + local.get $$t10.408 + i32.store16 offset=816 + local.get $$t7.1 + local.get $$t10.409 + i32.store16 offset=818 + local.get $$t7.1 + local.get $$t10.410 + i32.store16 offset=820 + local.get $$t7.1 + local.get $$t10.411 + i32.store16 offset=822 + local.get $$t7.1 + local.get $$t10.412 + i32.store16 offset=824 + local.get $$t7.1 + local.get $$t10.413 + i32.store16 offset=826 + local.get $$t7.1 + local.get $$t10.414 + i32.store16 offset=828 + local.get $$t7.1 + local.get $$t10.415 + i32.store16 offset=830 + local.get $$t7.1 + local.get $$t10.416 + i32.store16 offset=832 + local.get $$t7.1 + local.get $$t10.417 + i32.store16 offset=834 + local.get $$t7.1 + local.get $$t10.418 + i32.store16 offset=836 + local.get $$t7.1 + local.get $$t10.419 + i32.store16 offset=838 + local.get $$t7.1 + local.get $$t10.420 + i32.store16 offset=840 + local.get $$t7.1 + local.get $$t10.421 + i32.store16 offset=842 + local.get $$t7.1 + local.get $$t10.422 + i32.store16 offset=844 + local.get $$t7.1 + local.get $$t10.423 + i32.store16 offset=846 + local.get $$t7.1 + local.get $$t10.424 + i32.store16 offset=848 + local.get $$t7.1 + local.get $$t10.425 + i32.store16 offset=850 + local.get $$t7.1 + local.get $$t10.426 + i32.store16 offset=852 + local.get $$t7.1 + local.get $$t10.427 + i32.store16 offset=854 + local.get $$t7.1 + local.get $$t10.428 + i32.store16 offset=856 + local.get $$t7.1 + local.get $$t10.429 + i32.store16 offset=858 + local.get $$t7.1 + local.get $$t10.430 + i32.store16 offset=860 + local.get $$t7.1 + local.get $$t10.431 + i32.store16 offset=862 + local.get $$t7.1 + local.get $$t10.432 + i32.store16 offset=864 + local.get $$t7.1 + local.get $$t10.433 + i32.store16 offset=866 + local.get $$t8.1 + local.get $$t11.0 + i32.store16 + local.get $$t8.1 + local.get $$t11.1 + i32.store16 offset=2 + local.get $$t8.1 + local.get $$t11.2 + i32.store16 offset=4 + local.get $$t8.1 + local.get $$t11.3 + i32.store16 offset=6 + local.get $$t8.1 + local.get $$t11.4 + i32.store16 offset=8 + local.get $$t8.1 + local.get $$t11.5 + i32.store16 offset=10 + local.get $$t8.1 + local.get $$t11.6 + i32.store16 offset=12 + local.get $$t8.1 + local.get $$t11.7 + i32.store16 offset=14 + local.get $$t8.1 + local.get $$t11.8 + i32.store16 offset=16 + local.get $$t8.1 + local.get $$t11.9 + i32.store16 offset=18 + local.get $$t8.1 + local.get $$t11.10 + i32.store16 offset=20 + local.get $$t8.1 + local.get $$t11.11 + i32.store16 offset=22 + local.get $$t8.1 + local.get $$t11.12 + i32.store16 offset=24 + local.get $$t8.1 + local.get $$t11.13 + i32.store16 offset=26 + local.get $$t8.1 + local.get $$t11.14 + i32.store16 offset=28 + local.get $$t8.1 + local.get $$t11.15 + i32.store16 offset=30 + local.get $$t8.1 + local.get $$t11.16 + i32.store16 offset=32 + local.get $$t8.1 + local.get $$t11.17 + i32.store16 offset=34 + local.get $$t8.1 + local.get $$t11.18 + i32.store16 offset=36 + local.get $$t8.1 + local.get $$t11.19 + i32.store16 offset=38 + local.get $$t8.1 + local.get $$t11.20 + i32.store16 offset=40 + local.get $$t8.1 + local.get $$t11.21 + i32.store16 offset=42 + local.get $$t8.1 + local.get $$t11.22 + i32.store16 offset=44 + local.get $$t8.1 + local.get $$t11.23 + i32.store16 offset=46 + local.get $$t8.1 + local.get $$t11.24 + i32.store16 offset=48 + local.get $$t8.1 + local.get $$t11.25 + i32.store16 offset=50 + local.get $$t8.1 + local.get $$t11.26 + i32.store16 offset=52 + local.get $$t8.1 + local.get $$t11.27 + i32.store16 offset=54 + local.get $$t8.1 + local.get $$t11.28 + i32.store16 offset=56 + local.get $$t8.1 + local.get $$t11.29 + i32.store16 offset=58 + local.get $$t8.1 + local.get $$t11.30 + i32.store16 offset=60 + local.get $$t8.1 + local.get $$t11.31 + i32.store16 offset=62 + local.get $$t8.1 + local.get $$t11.32 + i32.store16 offset=64 + local.get $$t8.1 + local.get $$t11.33 + i32.store16 offset=66 + local.get $$t8.1 + local.get $$t11.34 + i32.store16 offset=68 + local.get $$t8.1 + local.get $$t11.35 + i32.store16 offset=70 + local.get $$t8.1 + local.get $$t11.36 + i32.store16 offset=72 + local.get $$t8.1 + local.get $$t11.37 + i32.store16 offset=74 + local.get $$t8.1 + local.get $$t11.38 + i32.store16 offset=76 + local.get $$t8.1 + local.get $$t11.39 + i32.store16 offset=78 + local.get $$t8.1 + local.get $$t11.40 + i32.store16 offset=80 + local.get $$t8.1 + local.get $$t11.41 + i32.store16 offset=82 + local.get $$t8.1 + local.get $$t11.42 + i32.store16 offset=84 + local.get $$t8.1 + local.get $$t11.43 + i32.store16 offset=86 + local.get $$t8.1 + local.get $$t11.44 + i32.store16 offset=88 + local.get $$t8.1 + local.get $$t11.45 + i32.store16 offset=90 + local.get $$t8.1 + local.get $$t11.46 + i32.store16 offset=92 + local.get $$t8.1 + local.get $$t11.47 + i32.store16 offset=94 + local.get $$t8.1 + local.get $$t11.48 + i32.store16 offset=96 + local.get $$t8.1 + local.get $$t11.49 + i32.store16 offset=98 + local.get $$t8.1 + local.get $$t11.50 + i32.store16 offset=100 + local.get $$t8.1 + local.get $$t11.51 + i32.store16 offset=102 + local.get $$t8.1 + local.get $$t11.52 + i32.store16 offset=104 + local.get $$t8.1 + local.get $$t11.53 + i32.store16 offset=106 + local.get $$t8.1 + local.get $$t11.54 + i32.store16 offset=108 + local.get $$t8.1 + local.get $$t11.55 + i32.store16 offset=110 + local.get $$t8.1 + local.get $$t11.56 + i32.store16 offset=112 + local.get $$t8.1 + local.get $$t11.57 + i32.store16 offset=114 + local.get $$t8.1 + local.get $$t11.58 + i32.store16 offset=116 + local.get $$t8.1 + local.get $$t11.59 + i32.store16 offset=118 + local.get $$t8.1 + local.get $$t11.60 + i32.store16 offset=120 + local.get $$t8.1 + local.get $$t11.61 + i32.store16 offset=122 + local.get $$t8.1 + local.get $$t11.62 + i32.store16 offset=124 + local.get $$t8.1 + local.get $$t11.63 + i32.store16 offset=126 + local.get $$t8.1 + local.get $$t11.64 + i32.store16 offset=128 + local.get $$t8.1 + local.get $$t11.65 + i32.store16 offset=130 + local.get $$t8.1 + local.get $$t11.66 + i32.store16 offset=132 + local.get $$t8.1 + local.get $$t11.67 + i32.store16 offset=134 + local.get $$t8.1 + local.get $$t11.68 + i32.store16 offset=136 + local.get $$t8.1 + local.get $$t11.69 + i32.store16 offset=138 + local.get $$t8.1 + local.get $$t11.70 + i32.store16 offset=140 + local.get $$t8.1 + local.get $$t11.71 + i32.store16 offset=142 + local.get $$t8.1 + local.get $$t11.72 + i32.store16 offset=144 + local.get $$t8.1 + local.get $$t11.73 + i32.store16 offset=146 + local.get $$t8.1 + local.get $$t11.74 + i32.store16 offset=148 + local.get $$t8.1 + local.get $$t11.75 + i32.store16 offset=150 + local.get $$t8.1 + local.get $$t11.76 + i32.store16 offset=152 + local.get $$t8.1 + local.get $$t11.77 + i32.store16 offset=154 + local.get $$t8.1 + local.get $$t11.78 + i32.store16 offset=156 + local.get $$t8.1 + local.get $$t11.79 + i32.store16 offset=158 + local.get $$t8.1 + local.get $$t11.80 + i32.store16 offset=160 + local.get $$t8.1 + local.get $$t11.81 + i32.store16 offset=162 + local.get $$t8.1 + local.get $$t11.82 + i32.store16 offset=164 + local.get $$t8.1 + local.get $$t11.83 + i32.store16 offset=166 + local.get $$t8.1 + local.get $$t11.84 + i32.store16 offset=168 + local.get $$t8.1 + local.get $$t11.85 + i32.store16 offset=170 + local.get $$t8.1 + local.get $$t11.86 + i32.store16 offset=172 + local.get $$t8.1 + local.get $$t11.87 + i32.store16 offset=174 + local.get $$t8.1 + local.get $$t11.88 + i32.store16 offset=176 + local.get $$t8.1 + local.get $$t11.89 + i32.store16 offset=178 + local.get $$t8.1 + local.get $$t11.90 + i32.store16 offset=180 + local.get $$t8.1 + local.get $$t11.91 + i32.store16 offset=182 + local.get $$t8.1 + local.get $$t11.92 + i32.store16 offset=184 + local.get $$t8.1 + local.get $$t11.93 + i32.store16 offset=186 + local.get $$t8.1 + local.get $$t11.94 + i32.store16 offset=188 + local.get $$t8.1 + local.get $$t11.95 + i32.store16 offset=190 + local.get $$t8.1 + local.get $$t11.96 + i32.store16 offset=192 + local.get $$t8.1 + local.get $$t11.97 + i32.store16 offset=194 + local.get $$t8.1 + local.get $$t11.98 + i32.store16 offset=196 + local.get $$t8.1 + local.get $$t11.99 + i32.store16 offset=198 + local.get $$t8.1 + local.get $$t11.100 + i32.store16 offset=200 + local.get $$t8.1 + local.get $$t11.101 + i32.store16 offset=202 + local.get $$t8.1 + local.get $$t11.102 + i32.store16 offset=204 + local.get $$t8.1 + local.get $$t11.103 + i32.store16 offset=206 + local.get $$t8.1 + local.get $$t11.104 + i32.store16 offset=208 + local.get $$t8.1 + local.get $$t11.105 + i32.store16 offset=210 + local.get $$t8.1 + local.get $$t11.106 + i32.store16 offset=212 + local.get $$t8.1 + local.get $$t11.107 + i32.store16 offset=214 + local.get $$t8.1 + local.get $$t11.108 + i32.store16 offset=216 + local.get $$t8.1 + local.get $$t11.109 + i32.store16 offset=218 + local.get $$t8.1 + local.get $$t11.110 + i32.store16 offset=220 + local.get $$t8.1 + local.get $$t11.111 + i32.store16 offset=222 + local.get $$t8.1 + local.get $$t11.112 + i32.store16 offset=224 + local.get $$t8.1 + local.get $$t11.113 + i32.store16 offset=226 + local.get $$t8.1 + local.get $$t11.114 + i32.store16 offset=228 + local.get $$t8.1 + local.get $$t11.115 + i32.store16 offset=230 + local.get $$t8.1 + local.get $$t11.116 + i32.store16 offset=232 + local.get $$t8.1 + local.get $$t11.117 + i32.store16 offset=234 + local.get $$t8.1 + local.get $$t11.118 + i32.store16 offset=236 + local.get $$t8.1 + local.get $$t11.119 + i32.store16 offset=238 + local.get $$t8.1 + local.get $$t11.120 + i32.store16 offset=240 + local.get $$t8.1 + local.get $$t11.121 + i32.store16 offset=242 + local.get $$t8.1 + local.get $$t11.122 + i32.store16 offset=244 + local.get $$t8.1 + local.get $$t11.123 + i32.store16 offset=246 + local.get $$t8.1 + local.get $$t11.124 + i32.store16 offset=248 + local.get $$t8.1 + local.get $$t11.125 + i32.store16 offset=250 + local.get $$t8.1 + local.get $$t11.126 + i32.store16 offset=252 + local.get $$t8.1 + local.get $$t11.127 + i32.store16 offset=254 + local.get $$t8.1 + local.get $$t11.128 + i32.store16 offset=256 + local.get $$t8.1 + local.get $$t11.129 + i32.store16 offset=258 + local.get $$t8.1 + local.get $$t11.130 + i32.store16 offset=260 + local.get $$t8.1 + local.get $$t11.131 + i32.store16 offset=262 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 434 + i32.const 0 + i32.sub + i32.const 434 + i32.const 0 + i32.sub + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.0 + local.get $$t12.1 + local.get $$t12.2 + local.get $$t12.3 + local.get $$t9 + call $strconv.bsearch16 + local.set $$t13 + local.get $$t13 + i32.const 434 + i32.ge_s + local.set $$t14 + local.get $$t14 + if + br $$Block_11 + else + br $$Block_14 + end + end + i32.const 10 + local.set $$current_block + i32.const 1888 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1872 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + i32.const 206 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 190 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $r + local.set $$t17 + i32.const 27764 + i32.load + i32.const 27764 + i32.load offset=4 + i32.const 27764 + i32.load offset=8 + i32.const 27764 + i32.load offset=12 + i32.const 27764 + i32.load offset=16 + i32.const 27764 + i32.load offset=20 + i32.const 27764 + i32.load offset=24 + i32.const 27764 + i32.load offset=28 + i32.const 27764 + i32.load offset=32 + i32.const 27764 + i32.load offset=36 + i32.const 27764 + i32.load offset=40 + i32.const 27764 + i32.load offset=44 + i32.const 27764 + i32.load offset=48 + i32.const 27764 + i32.load offset=52 + i32.const 27764 + i32.load offset=56 + i32.const 27764 + i32.load offset=60 + i32.const 27764 + i32.load offset=64 + i32.const 27764 + i32.load offset=68 + i32.const 27764 + i32.load offset=72 + i32.const 27764 + i32.load offset=76 + i32.const 27764 + i32.load offset=80 + i32.const 27764 + i32.load offset=84 + i32.const 27764 + i32.load offset=88 + i32.const 27764 + i32.load offset=92 + i32.const 27764 + i32.load offset=96 + i32.const 27764 + i32.load offset=100 + i32.const 27764 + i32.load offset=104 + i32.const 27764 + i32.load offset=108 + i32.const 27764 + i32.load offset=112 + i32.const 27764 + i32.load offset=116 + i32.const 27764 + i32.load offset=120 + i32.const 27764 + i32.load offset=124 + i32.const 27764 + i32.load offset=128 + i32.const 27764 + i32.load offset=132 + i32.const 27764 + i32.load offset=136 + i32.const 27764 + i32.load offset=140 + i32.const 27764 + i32.load offset=144 + i32.const 27764 + i32.load offset=148 + i32.const 27764 + i32.load offset=152 + i32.const 27764 + i32.load offset=156 + i32.const 27764 + i32.load offset=160 + i32.const 27764 + i32.load offset=164 + i32.const 27764 + i32.load offset=168 + i32.const 27764 + i32.load offset=172 + i32.const 27764 + i32.load offset=176 + i32.const 27764 + i32.load offset=180 + i32.const 27764 + i32.load offset=184 + i32.const 27764 + i32.load offset=188 + i32.const 27764 + i32.load offset=192 + i32.const 27764 + i32.load offset=196 + i32.const 27764 + i32.load offset=200 + i32.const 27764 + i32.load offset=204 + i32.const 27764 + i32.load offset=208 + i32.const 27764 + i32.load offset=212 + i32.const 27764 + i32.load offset=216 + i32.const 27764 + i32.load offset=220 + i32.const 27764 + i32.load offset=224 + i32.const 27764 + i32.load offset=228 + i32.const 27764 + i32.load offset=232 + i32.const 27764 + i32.load offset=236 + i32.const 27764 + i32.load offset=240 + i32.const 27764 + i32.load offset=244 + i32.const 27764 + i32.load offset=248 + i32.const 27764 + i32.load offset=252 + i32.const 27764 + i32.load offset=256 + i32.const 27764 + i32.load offset=260 + i32.const 27764 + i32.load offset=264 + i32.const 27764 + i32.load offset=268 + i32.const 27764 + i32.load offset=272 + i32.const 27764 + i32.load offset=276 + i32.const 27764 + i32.load offset=280 + i32.const 27764 + i32.load offset=284 + i32.const 27764 + i32.load offset=288 + i32.const 27764 + i32.load offset=292 + i32.const 27764 + i32.load offset=296 + i32.const 27764 + i32.load offset=300 + i32.const 27764 + i32.load offset=304 + i32.const 27764 + i32.load offset=308 + i32.const 27764 + i32.load offset=312 + i32.const 27764 + i32.load offset=316 + i32.const 27764 + i32.load offset=320 + i32.const 27764 + i32.load offset=324 + i32.const 27764 + i32.load offset=328 + i32.const 27764 + i32.load offset=332 + i32.const 27764 + i32.load offset=336 + i32.const 27764 + i32.load offset=340 + i32.const 27764 + i32.load offset=344 + i32.const 27764 + i32.load offset=348 + i32.const 27764 + i32.load offset=352 + i32.const 27764 + i32.load offset=356 + i32.const 27764 + i32.load offset=360 + i32.const 27764 + i32.load offset=364 + i32.const 27764 + i32.load offset=368 + i32.const 27764 + i32.load offset=372 + i32.const 27764 + i32.load offset=376 + i32.const 27764 + i32.load offset=380 + i32.const 27764 + i32.load offset=384 + i32.const 27764 + i32.load offset=388 + i32.const 27764 + i32.load offset=392 + i32.const 27764 + i32.load offset=396 + i32.const 27764 + i32.load offset=400 + i32.const 27764 + i32.load offset=404 + i32.const 27764 + i32.load offset=408 + i32.const 27764 + i32.load offset=412 + i32.const 27764 + i32.load offset=416 + i32.const 27764 + i32.load offset=420 + i32.const 27764 + i32.load offset=424 + i32.const 27764 + i32.load offset=428 + i32.const 27764 + i32.load offset=432 + i32.const 27764 + i32.load offset=436 + i32.const 27764 + i32.load offset=440 + i32.const 27764 + i32.load offset=444 + i32.const 27764 + i32.load offset=448 + i32.const 27764 + i32.load offset=452 + i32.const 27764 + i32.load offset=456 + i32.const 27764 + i32.load offset=460 + i32.const 27764 + i32.load offset=464 + i32.const 27764 + i32.load offset=468 + i32.const 27764 + i32.load offset=472 + i32.const 27764 + i32.load offset=476 + i32.const 27764 + i32.load offset=480 + i32.const 27764 + i32.load offset=484 + i32.const 27764 + i32.load offset=488 + i32.const 27764 + i32.load offset=492 + i32.const 27764 + i32.load offset=496 + i32.const 27764 + i32.load offset=500 + i32.const 27764 + i32.load offset=504 + i32.const 27764 + i32.load offset=508 + i32.const 27764 + i32.load offset=512 + i32.const 27764 + i32.load offset=516 + i32.const 27764 + i32.load offset=520 + i32.const 27764 + i32.load offset=524 + i32.const 27764 + i32.load offset=528 + i32.const 27764 + i32.load offset=532 + i32.const 27764 + i32.load offset=536 + i32.const 27764 + i32.load offset=540 + i32.const 27764 + i32.load offset=544 + i32.const 27764 + i32.load offset=548 + i32.const 27764 + i32.load offset=552 + i32.const 27764 + i32.load offset=556 + i32.const 27764 + i32.load offset=560 + i32.const 27764 + i32.load offset=564 + i32.const 27764 + i32.load offset=568 + i32.const 27764 + i32.load offset=572 + i32.const 27764 + i32.load offset=576 + i32.const 27764 + i32.load offset=580 + i32.const 27764 + i32.load offset=584 + i32.const 27764 + i32.load offset=588 + i32.const 27764 + i32.load offset=592 + i32.const 27764 + i32.load offset=596 + i32.const 27764 + i32.load offset=600 + i32.const 27764 + i32.load offset=604 + i32.const 27764 + i32.load offset=608 + i32.const 27764 + i32.load offset=612 + i32.const 27764 + i32.load offset=616 + i32.const 27764 + i32.load offset=620 + i32.const 27764 + i32.load offset=624 + i32.const 27764 + i32.load offset=628 + i32.const 27764 + i32.load offset=632 + i32.const 27764 + i32.load offset=636 + i32.const 27764 + i32.load offset=640 + i32.const 27764 + i32.load offset=644 + i32.const 27764 + i32.load offset=648 + i32.const 27764 + i32.load offset=652 + i32.const 27764 + i32.load offset=656 + i32.const 27764 + i32.load offset=660 + i32.const 27764 + i32.load offset=664 + i32.const 27764 + i32.load offset=668 + i32.const 27764 + i32.load offset=672 + i32.const 27764 + i32.load offset=676 + i32.const 27764 + i32.load offset=680 + i32.const 27764 + i32.load offset=684 + i32.const 27764 + i32.load offset=688 + i32.const 27764 + i32.load offset=692 + i32.const 27764 + i32.load offset=696 + i32.const 27764 + i32.load offset=700 + i32.const 27764 + i32.load offset=704 + i32.const 27764 + i32.load offset=708 + i32.const 27764 + i32.load offset=712 + i32.const 27764 + i32.load offset=716 + i32.const 27764 + i32.load offset=720 + i32.const 27764 + i32.load offset=724 + i32.const 27764 + i32.load offset=728 + i32.const 27764 + i32.load offset=732 + i32.const 27764 + i32.load offset=736 + i32.const 27764 + i32.load offset=740 + i32.const 27764 + i32.load offset=744 + i32.const 27764 + i32.load offset=748 + i32.const 27764 + i32.load offset=752 + i32.const 27764 + i32.load offset=756 + i32.const 27764 + i32.load offset=760 + i32.const 27764 + i32.load offset=764 + i32.const 27764 + i32.load offset=768 + i32.const 27764 + i32.load offset=772 + i32.const 27764 + i32.load offset=776 + i32.const 27764 + i32.load offset=780 + i32.const 27764 + i32.load offset=784 + i32.const 27764 + i32.load offset=788 + i32.const 27764 + i32.load offset=792 + i32.const 27764 + i32.load offset=796 + i32.const 27764 + i32.load offset=800 + i32.const 27764 + i32.load offset=804 + i32.const 27764 + i32.load offset=808 + i32.const 27764 + i32.load offset=812 + i32.const 27764 + i32.load offset=816 + i32.const 27764 + i32.load offset=820 + i32.const 27764 + i32.load offset=824 + i32.const 27764 + i32.load offset=828 + i32.const 27764 + i32.load offset=832 + i32.const 27764 + i32.load offset=836 + i32.const 27764 + i32.load offset=840 + i32.const 27764 + i32.load offset=844 + i32.const 27764 + i32.load offset=848 + i32.const 27764 + i32.load offset=852 + i32.const 27764 + i32.load offset=856 + i32.const 27764 + i32.load offset=860 + i32.const 27764 + i32.load offset=864 + i32.const 27764 + i32.load offset=868 + i32.const 27764 + i32.load offset=872 + i32.const 27764 + i32.load offset=876 + i32.const 27764 + i32.load offset=880 + i32.const 27764 + i32.load offset=884 + i32.const 27764 + i32.load offset=888 + i32.const 27764 + i32.load offset=892 + i32.const 27764 + i32.load offset=896 + i32.const 27764 + i32.load offset=900 + i32.const 27764 + i32.load offset=904 + i32.const 27764 + i32.load offset=908 + i32.const 27764 + i32.load offset=912 + i32.const 27764 + i32.load offset=916 + i32.const 27764 + i32.load offset=920 + i32.const 27764 + i32.load offset=924 + i32.const 27764 + i32.load offset=928 + i32.const 27764 + i32.load offset=932 + i32.const 27764 + i32.load offset=936 + i32.const 27764 + i32.load offset=940 + i32.const 27764 + i32.load offset=944 + i32.const 27764 + i32.load offset=948 + i32.const 27764 + i32.load offset=952 + i32.const 27764 + i32.load offset=956 + i32.const 27764 + i32.load offset=960 + i32.const 27764 + i32.load offset=964 + i32.const 27764 + i32.load offset=968 + i32.const 27764 + i32.load offset=972 + i32.const 27764 + i32.load offset=976 + i32.const 27764 + i32.load offset=980 + i32.const 27764 + i32.load offset=984 + i32.const 27764 + i32.load offset=988 + i32.const 27764 + i32.load offset=992 + i32.const 27764 + i32.load offset=996 + i32.const 27764 + i32.load offset=1000 + i32.const 27764 + i32.load offset=1004 + i32.const 27764 + i32.load offset=1008 + i32.const 27764 + i32.load offset=1012 + i32.const 27764 + i32.load offset=1016 + i32.const 27764 + i32.load offset=1020 + i32.const 27764 + i32.load offset=1024 + i32.const 27764 + i32.load offset=1028 + i32.const 27764 + i32.load offset=1032 + i32.const 27764 + i32.load offset=1036 + i32.const 27764 + i32.load offset=1040 + i32.const 27764 + i32.load offset=1044 + i32.const 27764 + i32.load offset=1048 + i32.const 27764 + i32.load offset=1052 + i32.const 27764 + i32.load offset=1056 + i32.const 27764 + i32.load offset=1060 + i32.const 27764 + i32.load offset=1064 + i32.const 27764 + i32.load offset=1068 + i32.const 27764 + i32.load offset=1072 + i32.const 27764 + i32.load offset=1076 + i32.const 27764 + i32.load offset=1080 + i32.const 27764 + i32.load offset=1084 + i32.const 27764 + i32.load offset=1088 + i32.const 27764 + i32.load offset=1092 + i32.const 27764 + i32.load offset=1096 + i32.const 27764 + i32.load offset=1100 + i32.const 27764 + i32.load offset=1104 + i32.const 27764 + i32.load offset=1108 + i32.const 27764 + i32.load offset=1112 + i32.const 27764 + i32.load offset=1116 + i32.const 27764 + i32.load offset=1120 + i32.const 27764 + i32.load offset=1124 + i32.const 27764 + i32.load offset=1128 + i32.const 27764 + i32.load offset=1132 + i32.const 27764 + i32.load offset=1136 + i32.const 27764 + i32.load offset=1140 + i32.const 27764 + i32.load offset=1144 + i32.const 27764 + i32.load offset=1148 + i32.const 27764 + i32.load offset=1152 + i32.const 27764 + i32.load offset=1156 + i32.const 27764 + i32.load offset=1160 + i32.const 27764 + i32.load offset=1164 + i32.const 27764 + i32.load offset=1168 + i32.const 27764 + i32.load offset=1172 + i32.const 27764 + i32.load offset=1176 + i32.const 27764 + i32.load offset=1180 + i32.const 27764 + i32.load offset=1184 + i32.const 27764 + i32.load offset=1188 + i32.const 27764 + i32.load offset=1192 + i32.const 27764 + i32.load offset=1196 + i32.const 27764 + i32.load offset=1200 + i32.const 27764 + i32.load offset=1204 + i32.const 27764 + i32.load offset=1208 + i32.const 27764 + i32.load offset=1212 + i32.const 27764 + i32.load offset=1216 + i32.const 27764 + i32.load offset=1220 + i32.const 27764 + i32.load offset=1224 + i32.const 27764 + i32.load offset=1228 + i32.const 27764 + i32.load offset=1232 + i32.const 27764 + i32.load offset=1236 + i32.const 27764 + i32.load offset=1240 + i32.const 27764 + i32.load offset=1244 + i32.const 27764 + i32.load offset=1248 + i32.const 27764 + i32.load offset=1252 + i32.const 27764 + i32.load offset=1256 + i32.const 27764 + i32.load offset=1260 + i32.const 27764 + i32.load offset=1264 + i32.const 27764 + i32.load offset=1268 + i32.const 27764 + i32.load offset=1272 + i32.const 27764 + i32.load offset=1276 + i32.const 27764 + i32.load offset=1280 + i32.const 27764 + i32.load offset=1284 + i32.const 27764 + i32.load offset=1288 + i32.const 27764 + i32.load offset=1292 + i32.const 27764 + i32.load offset=1296 + i32.const 27764 + i32.load offset=1300 + i32.const 27764 + i32.load offset=1304 + i32.const 27764 + i32.load offset=1308 + i32.const 27764 + i32.load offset=1312 + i32.const 27764 + i32.load offset=1316 + i32.const 27764 + i32.load offset=1320 + i32.const 27764 + i32.load offset=1324 + i32.const 27764 + i32.load offset=1328 + i32.const 27764 + i32.load offset=1332 + i32.const 27764 + i32.load offset=1336 + i32.const 27764 + i32.load offset=1340 + i32.const 27764 + i32.load offset=1344 + i32.const 27764 + i32.load offset=1348 + i32.const 27764 + i32.load offset=1352 + i32.const 27764 + i32.load offset=1356 + i32.const 27764 + i32.load offset=1360 + i32.const 27764 + i32.load offset=1364 + i32.const 27764 + i32.load offset=1368 + i32.const 27764 + i32.load offset=1372 + i32.const 27764 + i32.load offset=1376 + i32.const 27764 + i32.load offset=1380 + i32.const 27764 + i32.load offset=1384 + i32.const 27764 + i32.load offset=1388 + i32.const 27764 + i32.load offset=1392 + i32.const 27764 + i32.load offset=1396 + i32.const 27764 + i32.load offset=1400 + i32.const 27764 + i32.load offset=1404 + i32.const 27764 + i32.load offset=1408 + i32.const 27764 + i32.load offset=1412 + i32.const 27764 + i32.load offset=1416 + i32.const 27764 + i32.load offset=1420 + i32.const 27764 + i32.load offset=1424 + i32.const 27764 + i32.load offset=1428 + i32.const 27764 + i32.load offset=1432 + i32.const 27764 + i32.load offset=1436 + i32.const 27764 + i32.load offset=1440 + i32.const 27764 + i32.load offset=1444 + i32.const 27764 + i32.load offset=1448 + i32.const 27764 + i32.load offset=1452 + i32.const 27764 + i32.load offset=1456 + i32.const 27764 + i32.load offset=1460 + i32.const 27764 + i32.load offset=1464 + i32.const 27764 + i32.load offset=1468 + i32.const 27764 + i32.load offset=1472 + i32.const 27764 + i32.load offset=1476 + i32.const 27764 + i32.load offset=1480 + i32.const 27764 + i32.load offset=1484 + i32.const 27764 + i32.load offset=1488 + i32.const 27764 + i32.load offset=1492 + i32.const 27764 + i32.load offset=1496 + i32.const 27764 + i32.load offset=1500 + i32.const 27764 + i32.load offset=1504 + i32.const 27764 + i32.load offset=1508 + i32.const 27764 + i32.load offset=1512 + i32.const 27764 + i32.load offset=1516 + i32.const 27764 + i32.load offset=1520 + i32.const 27764 + i32.load offset=1524 + i32.const 27764 + i32.load offset=1528 + i32.const 27764 + i32.load offset=1532 + i32.const 27764 + i32.load offset=1536 + i32.const 27764 + i32.load offset=1540 + i32.const 27764 + i32.load offset=1544 + i32.const 27764 + i32.load offset=1548 + i32.const 27764 + i32.load offset=1552 + i32.const 27764 + i32.load offset=1556 + i32.const 27764 + i32.load offset=1560 + i32.const 27764 + i32.load offset=1564 + i32.const 27764 + i32.load offset=1568 + i32.const 27764 + i32.load offset=1572 + i32.const 27764 + i32.load offset=1576 + i32.const 27764 + i32.load offset=1580 + i32.const 27764 + i32.load offset=1584 + i32.const 27764 + i32.load offset=1588 + i32.const 27764 + i32.load offset=1592 + i32.const 27764 + i32.load offset=1596 + i32.const 27764 + i32.load offset=1600 + i32.const 27764 + i32.load offset=1604 + i32.const 27764 + i32.load offset=1608 + i32.const 27764 + i32.load offset=1612 + i32.const 27764 + i32.load offset=1616 + i32.const 27764 + i32.load offset=1620 + i32.const 27764 + i32.load offset=1624 + i32.const 27764 + i32.load offset=1628 + i32.const 27764 + i32.load offset=1632 + i32.const 27764 + i32.load offset=1636 + i32.const 27764 + i32.load offset=1640 + i32.const 27764 + i32.load offset=1644 + i32.const 27764 + i32.load offset=1648 + i32.const 27764 + i32.load offset=1652 + i32.const 27764 + i32.load offset=1656 + i32.const 27764 + i32.load offset=1660 + i32.const 27764 + i32.load offset=1664 + i32.const 27764 + i32.load offset=1668 + i32.const 27764 + i32.load offset=1672 + i32.const 27764 + i32.load offset=1676 + i32.const 27764 + i32.load offset=1680 + i32.const 27764 + i32.load offset=1684 + i32.const 27764 + i32.load offset=1688 + i32.const 27764 + i32.load offset=1692 + i32.const 27764 + i32.load offset=1696 + i32.const 27764 + i32.load offset=1700 + i32.const 27764 + i32.load offset=1704 + i32.const 27764 + i32.load offset=1708 + i32.const 27764 + i32.load offset=1712 + i32.const 27764 + i32.load offset=1716 + i32.const 27764 + i32.load offset=1720 + i32.const 27764 + i32.load offset=1724 + i32.const 27764 + i32.load offset=1728 + i32.const 27764 + i32.load offset=1732 + i32.const 27764 + i32.load offset=1736 + i32.const 27764 + i32.load offset=1740 + i32.const 27764 + i32.load offset=1744 + i32.const 27764 + i32.load offset=1748 + i32.const 27764 + i32.load offset=1752 + i32.const 27764 + i32.load offset=1756 + i32.const 27764 + i32.load offset=1760 + i32.const 27764 + i32.load offset=1764 + i32.const 27764 + i32.load offset=1768 + i32.const 27764 + i32.load offset=1772 + i32.const 27764 + i32.load offset=1776 + i32.const 27764 + i32.load offset=1780 + i32.const 27764 + i32.load offset=1784 + i32.const 27764 + i32.load offset=1788 + i32.const 27764 + i32.load offset=1792 + i32.const 27764 + i32.load offset=1796 + i32.const 27764 + i32.load offset=1800 + i32.const 27764 + i32.load offset=1804 + i32.const 27764 + i32.load offset=1808 + i32.const 27764 + i32.load offset=1812 + i32.const 27764 + i32.load offset=1816 + i32.const 27764 + i32.load offset=1820 + i32.const 27764 + i32.load offset=1824 + i32.const 27764 + i32.load offset=1828 + i32.const 27764 + i32.load offset=1832 + i32.const 27764 + i32.load offset=1836 + i32.const 27764 + i32.load offset=1840 + i32.const 27764 + i32.load offset=1844 + i32.const 27764 + i32.load offset=1848 + i32.const 27764 + i32.load offset=1852 + i32.const 27764 + i32.load offset=1856 + i32.const 27764 + i32.load offset=1860 + i32.const 27764 + i32.load offset=1864 + i32.const 27764 + i32.load offset=1868 + local.set $$t18.467 + local.set $$t18.466 + local.set $$t18.465 + local.set $$t18.464 + local.set $$t18.463 + local.set $$t18.462 + local.set $$t18.461 + local.set $$t18.460 + local.set $$t18.459 + local.set $$t18.458 + local.set $$t18.457 + local.set $$t18.456 + local.set $$t18.455 + local.set $$t18.454 + local.set $$t18.453 + local.set $$t18.452 + local.set $$t18.451 + local.set $$t18.450 + local.set $$t18.449 + local.set $$t18.448 + local.set $$t18.447 + local.set $$t18.446 + local.set $$t18.445 + local.set $$t18.444 + local.set $$t18.443 + local.set $$t18.442 + local.set $$t18.441 + local.set $$t18.440 + local.set $$t18.439 + local.set $$t18.438 + local.set $$t18.437 + local.set $$t18.436 + local.set $$t18.435 + local.set $$t18.434 + local.set $$t18.433 + local.set $$t18.432 + local.set $$t18.431 + local.set $$t18.430 + local.set $$t18.429 + local.set $$t18.428 + local.set $$t18.427 + local.set $$t18.426 + local.set $$t18.425 + local.set $$t18.424 + local.set $$t18.423 + local.set $$t18.422 + local.set $$t18.421 + local.set $$t18.420 + local.set $$t18.419 + local.set $$t18.418 + local.set $$t18.417 + local.set $$t18.416 + local.set $$t18.415 + local.set $$t18.414 + local.set $$t18.413 + local.set $$t18.412 + local.set $$t18.411 + local.set $$t18.410 + local.set $$t18.409 + local.set $$t18.408 + local.set $$t18.407 + local.set $$t18.406 + local.set $$t18.405 + local.set $$t18.404 + local.set $$t18.403 + local.set $$t18.402 + local.set $$t18.401 + local.set $$t18.400 + local.set $$t18.399 + local.set $$t18.398 + local.set $$t18.397 + local.set $$t18.396 + local.set $$t18.395 + local.set $$t18.394 + local.set $$t18.393 + local.set $$t18.392 + local.set $$t18.391 + local.set $$t18.390 + local.set $$t18.389 + local.set $$t18.388 + local.set $$t18.387 + local.set $$t18.386 + local.set $$t18.385 + local.set $$t18.384 + local.set $$t18.383 + local.set $$t18.382 + local.set $$t18.381 + local.set $$t18.380 + local.set $$t18.379 + local.set $$t18.378 + local.set $$t18.377 + local.set $$t18.376 + local.set $$t18.375 + local.set $$t18.374 + local.set $$t18.373 + local.set $$t18.372 + local.set $$t18.371 + local.set $$t18.370 + local.set $$t18.369 + local.set $$t18.368 + local.set $$t18.367 + local.set $$t18.366 + local.set $$t18.365 + local.set $$t18.364 + local.set $$t18.363 + local.set $$t18.362 + local.set $$t18.361 + local.set $$t18.360 + local.set $$t18.359 + local.set $$t18.358 + local.set $$t18.357 + local.set $$t18.356 + local.set $$t18.355 + local.set $$t18.354 + local.set $$t18.353 + local.set $$t18.352 + local.set $$t18.351 + local.set $$t18.350 + local.set $$t18.349 + local.set $$t18.348 + local.set $$t18.347 + local.set $$t18.346 + local.set $$t18.345 + local.set $$t18.344 + local.set $$t18.343 + local.set $$t18.342 + local.set $$t18.341 + local.set $$t18.340 + local.set $$t18.339 + local.set $$t18.338 + local.set $$t18.337 + local.set $$t18.336 + local.set $$t18.335 + local.set $$t18.334 + local.set $$t18.333 + local.set $$t18.332 + local.set $$t18.331 + local.set $$t18.330 + local.set $$t18.329 + local.set $$t18.328 + local.set $$t18.327 + local.set $$t18.326 + local.set $$t18.325 + local.set $$t18.324 + local.set $$t18.323 + local.set $$t18.322 + local.set $$t18.321 + local.set $$t18.320 + local.set $$t18.319 + local.set $$t18.318 + local.set $$t18.317 + local.set $$t18.316 + local.set $$t18.315 + local.set $$t18.314 + local.set $$t18.313 + local.set $$t18.312 + local.set $$t18.311 + local.set $$t18.310 + local.set $$t18.309 + local.set $$t18.308 + local.set $$t18.307 + local.set $$t18.306 + local.set $$t18.305 + local.set $$t18.304 + local.set $$t18.303 + local.set $$t18.302 + local.set $$t18.301 + local.set $$t18.300 + local.set $$t18.299 + local.set $$t18.298 + local.set $$t18.297 + local.set $$t18.296 + local.set $$t18.295 + local.set $$t18.294 + local.set $$t18.293 + local.set $$t18.292 + local.set $$t18.291 + local.set $$t18.290 + local.set $$t18.289 + local.set $$t18.288 + local.set $$t18.287 + local.set $$t18.286 + local.set $$t18.285 + local.set $$t18.284 + local.set $$t18.283 + local.set $$t18.282 + local.set $$t18.281 + local.set $$t18.280 + local.set $$t18.279 + local.set $$t18.278 + local.set $$t18.277 + local.set $$t18.276 + local.set $$t18.275 + local.set $$t18.274 + local.set $$t18.273 + local.set $$t18.272 + local.set $$t18.271 + local.set $$t18.270 + local.set $$t18.269 + local.set $$t18.268 + local.set $$t18.267 + local.set $$t18.266 + local.set $$t18.265 + local.set $$t18.264 + local.set $$t18.263 + local.set $$t18.262 + local.set $$t18.261 + local.set $$t18.260 + local.set $$t18.259 + local.set $$t18.258 + local.set $$t18.257 + local.set $$t18.256 + local.set $$t18.255 + local.set $$t18.254 + local.set $$t18.253 + local.set $$t18.252 + local.set $$t18.251 + local.set $$t18.250 + local.set $$t18.249 + local.set $$t18.248 + local.set $$t18.247 + local.set $$t18.246 + local.set $$t18.245 + local.set $$t18.244 + local.set $$t18.243 + local.set $$t18.242 + local.set $$t18.241 + local.set $$t18.240 + local.set $$t18.239 + local.set $$t18.238 + local.set $$t18.237 + local.set $$t18.236 + local.set $$t18.235 + local.set $$t18.234 + local.set $$t18.233 + local.set $$t18.232 + local.set $$t18.231 + local.set $$t18.230 + local.set $$t18.229 + local.set $$t18.228 + local.set $$t18.227 + local.set $$t18.226 + local.set $$t18.225 + local.set $$t18.224 + local.set $$t18.223 + local.set $$t18.222 + local.set $$t18.221 + local.set $$t18.220 + local.set $$t18.219 + local.set $$t18.218 + local.set $$t18.217 + local.set $$t18.216 + local.set $$t18.215 + local.set $$t18.214 + local.set $$t18.213 + local.set $$t18.212 + local.set $$t18.211 + local.set $$t18.210 + local.set $$t18.209 + local.set $$t18.208 + local.set $$t18.207 + local.set $$t18.206 + local.set $$t18.205 + local.set $$t18.204 + local.set $$t18.203 + local.set $$t18.202 + local.set $$t18.201 + local.set $$t18.200 + local.set $$t18.199 + local.set $$t18.198 + local.set $$t18.197 + local.set $$t18.196 + local.set $$t18.195 + local.set $$t18.194 + local.set $$t18.193 + local.set $$t18.192 + local.set $$t18.191 + local.set $$t18.190 + local.set $$t18.189 + local.set $$t18.188 + local.set $$t18.187 + local.set $$t18.186 + local.set $$t18.185 + local.set $$t18.184 + local.set $$t18.183 + local.set $$t18.182 + local.set $$t18.181 + local.set $$t18.180 + local.set $$t18.179 + local.set $$t18.178 + local.set $$t18.177 + local.set $$t18.176 + local.set $$t18.175 + local.set $$t18.174 + local.set $$t18.173 + local.set $$t18.172 + local.set $$t18.171 + local.set $$t18.170 + local.set $$t18.169 + local.set $$t18.168 + local.set $$t18.167 + local.set $$t18.166 + local.set $$t18.165 + local.set $$t18.164 + local.set $$t18.163 + local.set $$t18.162 + local.set $$t18.161 + local.set $$t18.160 + local.set $$t18.159 + local.set $$t18.158 + local.set $$t18.157 + local.set $$t18.156 + local.set $$t18.155 + local.set $$t18.154 + local.set $$t18.153 + local.set $$t18.152 + local.set $$t18.151 + local.set $$t18.150 + local.set $$t18.149 + local.set $$t18.148 + local.set $$t18.147 + local.set $$t18.146 + local.set $$t18.145 + local.set $$t18.144 + local.set $$t18.143 + local.set $$t18.142 + local.set $$t18.141 + local.set $$t18.140 + local.set $$t18.139 + local.set $$t18.138 + local.set $$t18.137 + local.set $$t18.136 + local.set $$t18.135 + local.set $$t18.134 + local.set $$t18.133 + local.set $$t18.132 + local.set $$t18.131 + local.set $$t18.130 + local.set $$t18.129 + local.set $$t18.128 + local.set $$t18.127 + local.set $$t18.126 + local.set $$t18.125 + local.set $$t18.124 + local.set $$t18.123 + local.set $$t18.122 + local.set $$t18.121 + local.set $$t18.120 + local.set $$t18.119 + local.set $$t18.118 + local.set $$t18.117 + local.set $$t18.116 + local.set $$t18.115 + local.set $$t18.114 + local.set $$t18.113 + local.set $$t18.112 + local.set $$t18.111 + local.set $$t18.110 + local.set $$t18.109 + local.set $$t18.108 + local.set $$t18.107 + local.set $$t18.106 + local.set $$t18.105 + local.set $$t18.104 + local.set $$t18.103 + local.set $$t18.102 + local.set $$t18.101 + local.set $$t18.100 + local.set $$t18.99 + local.set $$t18.98 + local.set $$t18.97 + local.set $$t18.96 + local.set $$t18.95 + local.set $$t18.94 + local.set $$t18.93 + local.set $$t18.92 + local.set $$t18.91 + local.set $$t18.90 + local.set $$t18.89 + local.set $$t18.88 + local.set $$t18.87 + local.set $$t18.86 + local.set $$t18.85 + local.set $$t18.84 + local.set $$t18.83 + local.set $$t18.82 + local.set $$t18.81 + local.set $$t18.80 + local.set $$t18.79 + local.set $$t18.78 + local.set $$t18.77 + local.set $$t18.76 + local.set $$t18.75 + local.set $$t18.74 + local.set $$t18.73 + local.set $$t18.72 + local.set $$t18.71 + local.set $$t18.70 + local.set $$t18.69 + local.set $$t18.68 + local.set $$t18.67 + local.set $$t18.66 + local.set $$t18.65 + local.set $$t18.64 + local.set $$t18.63 + local.set $$t18.62 + local.set $$t18.61 + local.set $$t18.60 + local.set $$t18.59 + local.set $$t18.58 + local.set $$t18.57 + local.set $$t18.56 + local.set $$t18.55 + local.set $$t18.54 + local.set $$t18.53 + local.set $$t18.52 + local.set $$t18.51 + local.set $$t18.50 + local.set $$t18.49 + local.set $$t18.48 + local.set $$t18.47 + local.set $$t18.46 + local.set $$t18.45 + local.set $$t18.44 + local.set $$t18.43 + local.set $$t18.42 + local.set $$t18.41 + local.set $$t18.40 + local.set $$t18.39 + local.set $$t18.38 + local.set $$t18.37 + local.set $$t18.36 + local.set $$t18.35 + local.set $$t18.34 + local.set $$t18.33 + local.set $$t18.32 + local.set $$t18.31 + local.set $$t18.30 + local.set $$t18.29 + local.set $$t18.28 + local.set $$t18.27 + local.set $$t18.26 + local.set $$t18.25 + local.set $$t18.24 + local.set $$t18.23 + local.set $$t18.22 + local.set $$t18.21 + local.set $$t18.20 + local.set $$t18.19 + local.set $$t18.18 + local.set $$t18.17 + local.set $$t18.16 + local.set $$t18.15 + local.set $$t18.14 + local.set $$t18.13 + local.set $$t18.12 + local.set $$t18.11 + local.set $$t18.10 + local.set $$t18.9 + local.set $$t18.8 + local.set $$t18.7 + local.set $$t18.6 + local.set $$t18.5 + local.set $$t18.4 + local.set $$t18.3 + local.set $$t18.2 + local.set $$t18.1 + local.set $$t18.0 + i32.const 26704 + i32.load16_u + i32.const 26704 + i32.load16_u offset=2 + i32.const 26704 + i32.load16_u offset=4 + i32.const 26704 + i32.load16_u offset=6 + i32.const 26704 + i32.load16_u offset=8 + i32.const 26704 + i32.load16_u offset=10 + i32.const 26704 + i32.load16_u offset=12 + i32.const 26704 + i32.load16_u offset=14 + i32.const 26704 + i32.load16_u offset=16 + i32.const 26704 + i32.load16_u offset=18 + i32.const 26704 + i32.load16_u offset=20 + i32.const 26704 + i32.load16_u offset=22 + i32.const 26704 + i32.load16_u offset=24 + i32.const 26704 + i32.load16_u offset=26 + i32.const 26704 + i32.load16_u offset=28 + i32.const 26704 + i32.load16_u offset=30 + i32.const 26704 + i32.load16_u offset=32 + i32.const 26704 + i32.load16_u offset=34 + i32.const 26704 + i32.load16_u offset=36 + i32.const 26704 + i32.load16_u offset=38 + i32.const 26704 + i32.load16_u offset=40 + i32.const 26704 + i32.load16_u offset=42 + i32.const 26704 + i32.load16_u offset=44 + i32.const 26704 + i32.load16_u offset=46 + i32.const 26704 + i32.load16_u offset=48 + i32.const 26704 + i32.load16_u offset=50 + i32.const 26704 + i32.load16_u offset=52 + i32.const 26704 + i32.load16_u offset=54 + i32.const 26704 + i32.load16_u offset=56 + i32.const 26704 + i32.load16_u offset=58 + i32.const 26704 + i32.load16_u offset=60 + i32.const 26704 + i32.load16_u offset=62 + i32.const 26704 + i32.load16_u offset=64 + i32.const 26704 + i32.load16_u offset=66 + i32.const 26704 + i32.load16_u offset=68 + i32.const 26704 + i32.load16_u offset=70 + i32.const 26704 + i32.load16_u offset=72 + i32.const 26704 + i32.load16_u offset=74 + i32.const 26704 + i32.load16_u offset=76 + i32.const 26704 + i32.load16_u offset=78 + i32.const 26704 + i32.load16_u offset=80 + i32.const 26704 + i32.load16_u offset=82 + i32.const 26704 + i32.load16_u offset=84 + i32.const 26704 + i32.load16_u offset=86 + i32.const 26704 + i32.load16_u offset=88 + i32.const 26704 + i32.load16_u offset=90 + i32.const 26704 + i32.load16_u offset=92 + i32.const 26704 + i32.load16_u offset=94 + i32.const 26704 + i32.load16_u offset=96 + i32.const 26704 + i32.load16_u offset=98 + i32.const 26704 + i32.load16_u offset=100 + i32.const 26704 + i32.load16_u offset=102 + i32.const 26704 + i32.load16_u offset=104 + i32.const 26704 + i32.load16_u offset=106 + i32.const 26704 + i32.load16_u offset=108 + i32.const 26704 + i32.load16_u offset=110 + i32.const 26704 + i32.load16_u offset=112 + i32.const 26704 + i32.load16_u offset=114 + i32.const 26704 + i32.load16_u offset=116 + i32.const 26704 + i32.load16_u offset=118 + i32.const 26704 + i32.load16_u offset=120 + i32.const 26704 + i32.load16_u offset=122 + i32.const 26704 + i32.load16_u offset=124 + i32.const 26704 + i32.load16_u offset=126 + i32.const 26704 + i32.load16_u offset=128 + i32.const 26704 + i32.load16_u offset=130 + i32.const 26704 + i32.load16_u offset=132 + i32.const 26704 + i32.load16_u offset=134 + i32.const 26704 + i32.load16_u offset=136 + i32.const 26704 + i32.load16_u offset=138 + i32.const 26704 + i32.load16_u offset=140 + i32.const 26704 + i32.load16_u offset=142 + i32.const 26704 + i32.load16_u offset=144 + i32.const 26704 + i32.load16_u offset=146 + i32.const 26704 + i32.load16_u offset=148 + i32.const 26704 + i32.load16_u offset=150 + i32.const 26704 + i32.load16_u offset=152 + i32.const 26704 + i32.load16_u offset=154 + i32.const 26704 + i32.load16_u offset=156 + i32.const 26704 + i32.load16_u offset=158 + i32.const 26704 + i32.load16_u offset=160 + i32.const 26704 + i32.load16_u offset=162 + i32.const 26704 + i32.load16_u offset=164 + i32.const 26704 + i32.load16_u offset=166 + i32.const 26704 + i32.load16_u offset=168 + i32.const 26704 + i32.load16_u offset=170 + i32.const 26704 + i32.load16_u offset=172 + i32.const 26704 + i32.load16_u offset=174 + i32.const 26704 + i32.load16_u offset=176 + i32.const 26704 + i32.load16_u offset=178 + i32.const 26704 + i32.load16_u offset=180 + i32.const 26704 + i32.load16_u offset=182 + i32.const 26704 + i32.load16_u offset=184 + i32.const 26704 + i32.load16_u offset=186 + i32.const 26704 + i32.load16_u offset=188 + local.set $$t19.94 + local.set $$t19.93 + local.set $$t19.92 + local.set $$t19.91 + local.set $$t19.90 + local.set $$t19.89 + local.set $$t19.88 + local.set $$t19.87 + local.set $$t19.86 + local.set $$t19.85 + local.set $$t19.84 + local.set $$t19.83 + local.set $$t19.82 + local.set $$t19.81 + local.set $$t19.80 + local.set $$t19.79 + local.set $$t19.78 + local.set $$t19.77 + local.set $$t19.76 + local.set $$t19.75 + local.set $$t19.74 + local.set $$t19.73 + local.set $$t19.72 + local.set $$t19.71 + local.set $$t19.70 + local.set $$t19.69 + local.set $$t19.68 + local.set $$t19.67 + local.set $$t19.66 + local.set $$t19.65 + local.set $$t19.64 + local.set $$t19.63 + local.set $$t19.62 + local.set $$t19.61 + local.set $$t19.60 + local.set $$t19.59 + local.set $$t19.58 + local.set $$t19.57 + local.set $$t19.56 + local.set $$t19.55 + local.set $$t19.54 + local.set $$t19.53 + local.set $$t19.52 + local.set $$t19.51 + local.set $$t19.50 + local.set $$t19.49 + local.set $$t19.48 + local.set $$t19.47 + local.set $$t19.46 + local.set $$t19.45 + local.set $$t19.44 + local.set $$t19.43 + local.set $$t19.42 + local.set $$t19.41 + local.set $$t19.40 + local.set $$t19.39 + local.set $$t19.38 + local.set $$t19.37 + local.set $$t19.36 + local.set $$t19.35 + local.set $$t19.34 + local.set $$t19.33 + local.set $$t19.32 + local.set $$t19.31 + local.set $$t19.30 + local.set $$t19.29 + local.set $$t19.28 + local.set $$t19.27 + local.set $$t19.26 + local.set $$t19.25 + local.set $$t19.24 + local.set $$t19.23 + local.set $$t19.22 + local.set $$t19.21 + local.set $$t19.20 + local.set $$t19.19 + local.set $$t19.18 + local.set $$t19.17 + local.set $$t19.16 + local.set $$t19.15 + local.set $$t19.14 + local.set $$t19.13 + local.set $$t19.12 + local.set $$t19.11 + local.set $$t19.10 + local.set $$t19.9 + local.set $$t19.8 + local.set $$t19.7 + local.set $$t19.6 + local.set $$t19.5 + local.set $$t19.4 + local.set $$t19.3 + local.set $$t19.2 + local.set $$t19.1 + local.set $$t19.0 + local.get $$t15.1 + local.get $$t18.0 + i32.store + local.get $$t15.1 + local.get $$t18.1 + i32.store offset=4 + local.get $$t15.1 + local.get $$t18.2 + i32.store offset=8 + local.get $$t15.1 + local.get $$t18.3 + i32.store offset=12 + local.get $$t15.1 + local.get $$t18.4 + i32.store offset=16 + local.get $$t15.1 + local.get $$t18.5 + i32.store offset=20 + local.get $$t15.1 + local.get $$t18.6 + i32.store offset=24 + local.get $$t15.1 + local.get $$t18.7 + i32.store offset=28 + local.get $$t15.1 + local.get $$t18.8 + i32.store offset=32 + local.get $$t15.1 + local.get $$t18.9 + i32.store offset=36 + local.get $$t15.1 + local.get $$t18.10 + i32.store offset=40 + local.get $$t15.1 + local.get $$t18.11 + i32.store offset=44 + local.get $$t15.1 + local.get $$t18.12 + i32.store offset=48 + local.get $$t15.1 + local.get $$t18.13 + i32.store offset=52 + local.get $$t15.1 + local.get $$t18.14 + i32.store offset=56 + local.get $$t15.1 + local.get $$t18.15 + i32.store offset=60 + local.get $$t15.1 + local.get $$t18.16 + i32.store offset=64 + local.get $$t15.1 + local.get $$t18.17 + i32.store offset=68 + local.get $$t15.1 + local.get $$t18.18 + i32.store offset=72 + local.get $$t15.1 + local.get $$t18.19 + i32.store offset=76 + local.get $$t15.1 + local.get $$t18.20 + i32.store offset=80 + local.get $$t15.1 + local.get $$t18.21 + i32.store offset=84 + local.get $$t15.1 + local.get $$t18.22 + i32.store offset=88 + local.get $$t15.1 + local.get $$t18.23 + i32.store offset=92 + local.get $$t15.1 + local.get $$t18.24 + i32.store offset=96 + local.get $$t15.1 + local.get $$t18.25 + i32.store offset=100 + local.get $$t15.1 + local.get $$t18.26 + i32.store offset=104 + local.get $$t15.1 + local.get $$t18.27 + i32.store offset=108 + local.get $$t15.1 + local.get $$t18.28 + i32.store offset=112 + local.get $$t15.1 + local.get $$t18.29 + i32.store offset=116 + local.get $$t15.1 + local.get $$t18.30 + i32.store offset=120 + local.get $$t15.1 + local.get $$t18.31 + i32.store offset=124 + local.get $$t15.1 + local.get $$t18.32 + i32.store offset=128 + local.get $$t15.1 + local.get $$t18.33 + i32.store offset=132 + local.get $$t15.1 + local.get $$t18.34 + i32.store offset=136 + local.get $$t15.1 + local.get $$t18.35 + i32.store offset=140 + local.get $$t15.1 + local.get $$t18.36 + i32.store offset=144 + local.get $$t15.1 + local.get $$t18.37 + i32.store offset=148 + local.get $$t15.1 + local.get $$t18.38 + i32.store offset=152 + local.get $$t15.1 + local.get $$t18.39 + i32.store offset=156 + local.get $$t15.1 + local.get $$t18.40 + i32.store offset=160 + local.get $$t15.1 + local.get $$t18.41 + i32.store offset=164 + local.get $$t15.1 + local.get $$t18.42 + i32.store offset=168 + local.get $$t15.1 + local.get $$t18.43 + i32.store offset=172 + local.get $$t15.1 + local.get $$t18.44 + i32.store offset=176 + local.get $$t15.1 + local.get $$t18.45 + i32.store offset=180 + local.get $$t15.1 + local.get $$t18.46 + i32.store offset=184 + local.get $$t15.1 + local.get $$t18.47 + i32.store offset=188 + local.get $$t15.1 + local.get $$t18.48 + i32.store offset=192 + local.get $$t15.1 + local.get $$t18.49 + i32.store offset=196 + local.get $$t15.1 + local.get $$t18.50 + i32.store offset=200 + local.get $$t15.1 + local.get $$t18.51 + i32.store offset=204 + local.get $$t15.1 + local.get $$t18.52 + i32.store offset=208 + local.get $$t15.1 + local.get $$t18.53 + i32.store offset=212 + local.get $$t15.1 + local.get $$t18.54 + i32.store offset=216 + local.get $$t15.1 + local.get $$t18.55 + i32.store offset=220 + local.get $$t15.1 + local.get $$t18.56 + i32.store offset=224 + local.get $$t15.1 + local.get $$t18.57 + i32.store offset=228 + local.get $$t15.1 + local.get $$t18.58 + i32.store offset=232 + local.get $$t15.1 + local.get $$t18.59 + i32.store offset=236 + local.get $$t15.1 + local.get $$t18.60 + i32.store offset=240 + local.get $$t15.1 + local.get $$t18.61 + i32.store offset=244 + local.get $$t15.1 + local.get $$t18.62 + i32.store offset=248 + local.get $$t15.1 + local.get $$t18.63 + i32.store offset=252 + local.get $$t15.1 + local.get $$t18.64 + i32.store offset=256 + local.get $$t15.1 + local.get $$t18.65 + i32.store offset=260 + local.get $$t15.1 + local.get $$t18.66 + i32.store offset=264 + local.get $$t15.1 + local.get $$t18.67 + i32.store offset=268 + local.get $$t15.1 + local.get $$t18.68 + i32.store offset=272 + local.get $$t15.1 + local.get $$t18.69 + i32.store offset=276 + local.get $$t15.1 + local.get $$t18.70 + i32.store offset=280 + local.get $$t15.1 + local.get $$t18.71 + i32.store offset=284 + local.get $$t15.1 + local.get $$t18.72 + i32.store offset=288 + local.get $$t15.1 + local.get $$t18.73 + i32.store offset=292 + local.get $$t15.1 + local.get $$t18.74 + i32.store offset=296 + local.get $$t15.1 + local.get $$t18.75 + i32.store offset=300 + local.get $$t15.1 + local.get $$t18.76 + i32.store offset=304 + local.get $$t15.1 + local.get $$t18.77 + i32.store offset=308 + local.get $$t15.1 + local.get $$t18.78 + i32.store offset=312 + local.get $$t15.1 + local.get $$t18.79 + i32.store offset=316 + local.get $$t15.1 + local.get $$t18.80 + i32.store offset=320 + local.get $$t15.1 + local.get $$t18.81 + i32.store offset=324 + local.get $$t15.1 + local.get $$t18.82 + i32.store offset=328 + local.get $$t15.1 + local.get $$t18.83 + i32.store offset=332 + local.get $$t15.1 + local.get $$t18.84 + i32.store offset=336 + local.get $$t15.1 + local.get $$t18.85 + i32.store offset=340 + local.get $$t15.1 + local.get $$t18.86 + i32.store offset=344 + local.get $$t15.1 + local.get $$t18.87 + i32.store offset=348 + local.get $$t15.1 + local.get $$t18.88 + i32.store offset=352 + local.get $$t15.1 + local.get $$t18.89 + i32.store offset=356 + local.get $$t15.1 + local.get $$t18.90 + i32.store offset=360 + local.get $$t15.1 + local.get $$t18.91 + i32.store offset=364 + local.get $$t15.1 + local.get $$t18.92 + i32.store offset=368 + local.get $$t15.1 + local.get $$t18.93 + i32.store offset=372 + local.get $$t15.1 + local.get $$t18.94 + i32.store offset=376 + local.get $$t15.1 + local.get $$t18.95 + i32.store offset=380 + local.get $$t15.1 + local.get $$t18.96 + i32.store offset=384 + local.get $$t15.1 + local.get $$t18.97 + i32.store offset=388 + local.get $$t15.1 + local.get $$t18.98 + i32.store offset=392 + local.get $$t15.1 + local.get $$t18.99 + i32.store offset=396 + local.get $$t15.1 + local.get $$t18.100 + i32.store offset=400 + local.get $$t15.1 + local.get $$t18.101 + i32.store offset=404 + local.get $$t15.1 + local.get $$t18.102 + i32.store offset=408 + local.get $$t15.1 + local.get $$t18.103 + i32.store offset=412 + local.get $$t15.1 + local.get $$t18.104 + i32.store offset=416 + local.get $$t15.1 + local.get $$t18.105 + i32.store offset=420 + local.get $$t15.1 + local.get $$t18.106 + i32.store offset=424 + local.get $$t15.1 + local.get $$t18.107 + i32.store offset=428 + local.get $$t15.1 + local.get $$t18.108 + i32.store offset=432 + local.get $$t15.1 + local.get $$t18.109 + i32.store offset=436 + local.get $$t15.1 + local.get $$t18.110 + i32.store offset=440 + local.get $$t15.1 + local.get $$t18.111 + i32.store offset=444 + local.get $$t15.1 + local.get $$t18.112 + i32.store offset=448 + local.get $$t15.1 + local.get $$t18.113 + i32.store offset=452 + local.get $$t15.1 + local.get $$t18.114 + i32.store offset=456 + local.get $$t15.1 + local.get $$t18.115 + i32.store offset=460 + local.get $$t15.1 + local.get $$t18.116 + i32.store offset=464 + local.get $$t15.1 + local.get $$t18.117 + i32.store offset=468 + local.get $$t15.1 + local.get $$t18.118 + i32.store offset=472 + local.get $$t15.1 + local.get $$t18.119 + i32.store offset=476 + local.get $$t15.1 + local.get $$t18.120 + i32.store offset=480 + local.get $$t15.1 + local.get $$t18.121 + i32.store offset=484 + local.get $$t15.1 + local.get $$t18.122 + i32.store offset=488 + local.get $$t15.1 + local.get $$t18.123 + i32.store offset=492 + local.get $$t15.1 + local.get $$t18.124 + i32.store offset=496 + local.get $$t15.1 + local.get $$t18.125 + i32.store offset=500 + local.get $$t15.1 + local.get $$t18.126 + i32.store offset=504 + local.get $$t15.1 + local.get $$t18.127 + i32.store offset=508 + local.get $$t15.1 + local.get $$t18.128 + i32.store offset=512 + local.get $$t15.1 + local.get $$t18.129 + i32.store offset=516 + local.get $$t15.1 + local.get $$t18.130 + i32.store offset=520 + local.get $$t15.1 + local.get $$t18.131 + i32.store offset=524 + local.get $$t15.1 + local.get $$t18.132 + i32.store offset=528 + local.get $$t15.1 + local.get $$t18.133 + i32.store offset=532 + local.get $$t15.1 + local.get $$t18.134 + i32.store offset=536 + local.get $$t15.1 + local.get $$t18.135 + i32.store offset=540 + local.get $$t15.1 + local.get $$t18.136 + i32.store offset=544 + local.get $$t15.1 + local.get $$t18.137 + i32.store offset=548 + local.get $$t15.1 + local.get $$t18.138 + i32.store offset=552 + local.get $$t15.1 + local.get $$t18.139 + i32.store offset=556 + local.get $$t15.1 + local.get $$t18.140 + i32.store offset=560 + local.get $$t15.1 + local.get $$t18.141 + i32.store offset=564 + local.get $$t15.1 + local.get $$t18.142 + i32.store offset=568 + local.get $$t15.1 + local.get $$t18.143 + i32.store offset=572 + local.get $$t15.1 + local.get $$t18.144 + i32.store offset=576 + local.get $$t15.1 + local.get $$t18.145 + i32.store offset=580 + local.get $$t15.1 + local.get $$t18.146 + i32.store offset=584 + local.get $$t15.1 + local.get $$t18.147 + i32.store offset=588 + local.get $$t15.1 + local.get $$t18.148 + i32.store offset=592 + local.get $$t15.1 + local.get $$t18.149 + i32.store offset=596 + local.get $$t15.1 + local.get $$t18.150 + i32.store offset=600 + local.get $$t15.1 + local.get $$t18.151 + i32.store offset=604 + local.get $$t15.1 + local.get $$t18.152 + i32.store offset=608 + local.get $$t15.1 + local.get $$t18.153 + i32.store offset=612 + local.get $$t15.1 + local.get $$t18.154 + i32.store offset=616 + local.get $$t15.1 + local.get $$t18.155 + i32.store offset=620 + local.get $$t15.1 + local.get $$t18.156 + i32.store offset=624 + local.get $$t15.1 + local.get $$t18.157 + i32.store offset=628 + local.get $$t15.1 + local.get $$t18.158 + i32.store offset=632 + local.get $$t15.1 + local.get $$t18.159 + i32.store offset=636 + local.get $$t15.1 + local.get $$t18.160 + i32.store offset=640 + local.get $$t15.1 + local.get $$t18.161 + i32.store offset=644 + local.get $$t15.1 + local.get $$t18.162 + i32.store offset=648 + local.get $$t15.1 + local.get $$t18.163 + i32.store offset=652 + local.get $$t15.1 + local.get $$t18.164 + i32.store offset=656 + local.get $$t15.1 + local.get $$t18.165 + i32.store offset=660 + local.get $$t15.1 + local.get $$t18.166 + i32.store offset=664 + local.get $$t15.1 + local.get $$t18.167 + i32.store offset=668 + local.get $$t15.1 + local.get $$t18.168 + i32.store offset=672 + local.get $$t15.1 + local.get $$t18.169 + i32.store offset=676 + local.get $$t15.1 + local.get $$t18.170 + i32.store offset=680 + local.get $$t15.1 + local.get $$t18.171 + i32.store offset=684 + local.get $$t15.1 + local.get $$t18.172 + i32.store offset=688 + local.get $$t15.1 + local.get $$t18.173 + i32.store offset=692 + local.get $$t15.1 + local.get $$t18.174 + i32.store offset=696 + local.get $$t15.1 + local.get $$t18.175 + i32.store offset=700 + local.get $$t15.1 + local.get $$t18.176 + i32.store offset=704 + local.get $$t15.1 + local.get $$t18.177 + i32.store offset=708 + local.get $$t15.1 + local.get $$t18.178 + i32.store offset=712 + local.get $$t15.1 + local.get $$t18.179 + i32.store offset=716 + local.get $$t15.1 + local.get $$t18.180 + i32.store offset=720 + local.get $$t15.1 + local.get $$t18.181 + i32.store offset=724 + local.get $$t15.1 + local.get $$t18.182 + i32.store offset=728 + local.get $$t15.1 + local.get $$t18.183 + i32.store offset=732 + local.get $$t15.1 + local.get $$t18.184 + i32.store offset=736 + local.get $$t15.1 + local.get $$t18.185 + i32.store offset=740 + local.get $$t15.1 + local.get $$t18.186 + i32.store offset=744 + local.get $$t15.1 + local.get $$t18.187 + i32.store offset=748 + local.get $$t15.1 + local.get $$t18.188 + i32.store offset=752 + local.get $$t15.1 + local.get $$t18.189 + i32.store offset=756 + local.get $$t15.1 + local.get $$t18.190 + i32.store offset=760 + local.get $$t15.1 + local.get $$t18.191 + i32.store offset=764 + local.get $$t15.1 + local.get $$t18.192 + i32.store offset=768 + local.get $$t15.1 + local.get $$t18.193 + i32.store offset=772 + local.get $$t15.1 + local.get $$t18.194 + i32.store offset=776 + local.get $$t15.1 + local.get $$t18.195 + i32.store offset=780 + local.get $$t15.1 + local.get $$t18.196 + i32.store offset=784 + local.get $$t15.1 + local.get $$t18.197 + i32.store offset=788 + local.get $$t15.1 + local.get $$t18.198 + i32.store offset=792 + local.get $$t15.1 + local.get $$t18.199 + i32.store offset=796 + local.get $$t15.1 + local.get $$t18.200 + i32.store offset=800 + local.get $$t15.1 + local.get $$t18.201 + i32.store offset=804 + local.get $$t15.1 + local.get $$t18.202 + i32.store offset=808 + local.get $$t15.1 + local.get $$t18.203 + i32.store offset=812 + local.get $$t15.1 + local.get $$t18.204 + i32.store offset=816 + local.get $$t15.1 + local.get $$t18.205 + i32.store offset=820 + local.get $$t15.1 + local.get $$t18.206 + i32.store offset=824 + local.get $$t15.1 + local.get $$t18.207 + i32.store offset=828 + local.get $$t15.1 + local.get $$t18.208 + i32.store offset=832 + local.get $$t15.1 + local.get $$t18.209 + i32.store offset=836 + local.get $$t15.1 + local.get $$t18.210 + i32.store offset=840 + local.get $$t15.1 + local.get $$t18.211 + i32.store offset=844 + local.get $$t15.1 + local.get $$t18.212 + i32.store offset=848 + local.get $$t15.1 + local.get $$t18.213 + i32.store offset=852 + local.get $$t15.1 + local.get $$t18.214 + i32.store offset=856 + local.get $$t15.1 + local.get $$t18.215 + i32.store offset=860 + local.get $$t15.1 + local.get $$t18.216 + i32.store offset=864 + local.get $$t15.1 + local.get $$t18.217 + i32.store offset=868 + local.get $$t15.1 + local.get $$t18.218 + i32.store offset=872 + local.get $$t15.1 + local.get $$t18.219 + i32.store offset=876 + local.get $$t15.1 + local.get $$t18.220 + i32.store offset=880 + local.get $$t15.1 + local.get $$t18.221 + i32.store offset=884 + local.get $$t15.1 + local.get $$t18.222 + i32.store offset=888 + local.get $$t15.1 + local.get $$t18.223 + i32.store offset=892 + local.get $$t15.1 + local.get $$t18.224 + i32.store offset=896 + local.get $$t15.1 + local.get $$t18.225 + i32.store offset=900 + local.get $$t15.1 + local.get $$t18.226 + i32.store offset=904 + local.get $$t15.1 + local.get $$t18.227 + i32.store offset=908 + local.get $$t15.1 + local.get $$t18.228 + i32.store offset=912 + local.get $$t15.1 + local.get $$t18.229 + i32.store offset=916 + local.get $$t15.1 + local.get $$t18.230 + i32.store offset=920 + local.get $$t15.1 + local.get $$t18.231 + i32.store offset=924 + local.get $$t15.1 + local.get $$t18.232 + i32.store offset=928 + local.get $$t15.1 + local.get $$t18.233 + i32.store offset=932 + local.get $$t15.1 + local.get $$t18.234 + i32.store offset=936 + local.get $$t15.1 + local.get $$t18.235 + i32.store offset=940 + local.get $$t15.1 + local.get $$t18.236 + i32.store offset=944 + local.get $$t15.1 + local.get $$t18.237 + i32.store offset=948 + local.get $$t15.1 + local.get $$t18.238 + i32.store offset=952 + local.get $$t15.1 + local.get $$t18.239 + i32.store offset=956 + local.get $$t15.1 + local.get $$t18.240 + i32.store offset=960 + local.get $$t15.1 + local.get $$t18.241 + i32.store offset=964 + local.get $$t15.1 + local.get $$t18.242 + i32.store offset=968 + local.get $$t15.1 + local.get $$t18.243 + i32.store offset=972 + local.get $$t15.1 + local.get $$t18.244 + i32.store offset=976 + local.get $$t15.1 + local.get $$t18.245 + i32.store offset=980 + local.get $$t15.1 + local.get $$t18.246 + i32.store offset=984 + local.get $$t15.1 + local.get $$t18.247 + i32.store offset=988 + local.get $$t15.1 + local.get $$t18.248 + i32.store offset=992 + local.get $$t15.1 + local.get $$t18.249 + i32.store offset=996 + local.get $$t15.1 + local.get $$t18.250 + i32.store offset=1000 + local.get $$t15.1 + local.get $$t18.251 + i32.store offset=1004 + local.get $$t15.1 + local.get $$t18.252 + i32.store offset=1008 + local.get $$t15.1 + local.get $$t18.253 + i32.store offset=1012 + local.get $$t15.1 + local.get $$t18.254 + i32.store offset=1016 + local.get $$t15.1 + local.get $$t18.255 + i32.store offset=1020 + local.get $$t15.1 + local.get $$t18.256 + i32.store offset=1024 + local.get $$t15.1 + local.get $$t18.257 + i32.store offset=1028 + local.get $$t15.1 + local.get $$t18.258 + i32.store offset=1032 + local.get $$t15.1 + local.get $$t18.259 + i32.store offset=1036 + local.get $$t15.1 + local.get $$t18.260 + i32.store offset=1040 + local.get $$t15.1 + local.get $$t18.261 + i32.store offset=1044 + local.get $$t15.1 + local.get $$t18.262 + i32.store offset=1048 + local.get $$t15.1 + local.get $$t18.263 + i32.store offset=1052 + local.get $$t15.1 + local.get $$t18.264 + i32.store offset=1056 + local.get $$t15.1 + local.get $$t18.265 + i32.store offset=1060 + local.get $$t15.1 + local.get $$t18.266 + i32.store offset=1064 + local.get $$t15.1 + local.get $$t18.267 + i32.store offset=1068 + local.get $$t15.1 + local.get $$t18.268 + i32.store offset=1072 + local.get $$t15.1 + local.get $$t18.269 + i32.store offset=1076 + local.get $$t15.1 + local.get $$t18.270 + i32.store offset=1080 + local.get $$t15.1 + local.get $$t18.271 + i32.store offset=1084 + local.get $$t15.1 + local.get $$t18.272 + i32.store offset=1088 + local.get $$t15.1 + local.get $$t18.273 + i32.store offset=1092 + local.get $$t15.1 + local.get $$t18.274 + i32.store offset=1096 + local.get $$t15.1 + local.get $$t18.275 + i32.store offset=1100 + local.get $$t15.1 + local.get $$t18.276 + i32.store offset=1104 + local.get $$t15.1 + local.get $$t18.277 + i32.store offset=1108 + local.get $$t15.1 + local.get $$t18.278 + i32.store offset=1112 + local.get $$t15.1 + local.get $$t18.279 + i32.store offset=1116 + local.get $$t15.1 + local.get $$t18.280 + i32.store offset=1120 + local.get $$t15.1 + local.get $$t18.281 + i32.store offset=1124 + local.get $$t15.1 + local.get $$t18.282 + i32.store offset=1128 + local.get $$t15.1 + local.get $$t18.283 + i32.store offset=1132 + local.get $$t15.1 + local.get $$t18.284 + i32.store offset=1136 + local.get $$t15.1 + local.get $$t18.285 + i32.store offset=1140 + local.get $$t15.1 + local.get $$t18.286 + i32.store offset=1144 + local.get $$t15.1 + local.get $$t18.287 + i32.store offset=1148 + local.get $$t15.1 + local.get $$t18.288 + i32.store offset=1152 + local.get $$t15.1 + local.get $$t18.289 + i32.store offset=1156 + local.get $$t15.1 + local.get $$t18.290 + i32.store offset=1160 + local.get $$t15.1 + local.get $$t18.291 + i32.store offset=1164 + local.get $$t15.1 + local.get $$t18.292 + i32.store offset=1168 + local.get $$t15.1 + local.get $$t18.293 + i32.store offset=1172 + local.get $$t15.1 + local.get $$t18.294 + i32.store offset=1176 + local.get $$t15.1 + local.get $$t18.295 + i32.store offset=1180 + local.get $$t15.1 + local.get $$t18.296 + i32.store offset=1184 + local.get $$t15.1 + local.get $$t18.297 + i32.store offset=1188 + local.get $$t15.1 + local.get $$t18.298 + i32.store offset=1192 + local.get $$t15.1 + local.get $$t18.299 + i32.store offset=1196 + local.get $$t15.1 + local.get $$t18.300 + i32.store offset=1200 + local.get $$t15.1 + local.get $$t18.301 + i32.store offset=1204 + local.get $$t15.1 + local.get $$t18.302 + i32.store offset=1208 + local.get $$t15.1 + local.get $$t18.303 + i32.store offset=1212 + local.get $$t15.1 + local.get $$t18.304 + i32.store offset=1216 + local.get $$t15.1 + local.get $$t18.305 + i32.store offset=1220 + local.get $$t15.1 + local.get $$t18.306 + i32.store offset=1224 + local.get $$t15.1 + local.get $$t18.307 + i32.store offset=1228 + local.get $$t15.1 + local.get $$t18.308 + i32.store offset=1232 + local.get $$t15.1 + local.get $$t18.309 + i32.store offset=1236 + local.get $$t15.1 + local.get $$t18.310 + i32.store offset=1240 + local.get $$t15.1 + local.get $$t18.311 + i32.store offset=1244 + local.get $$t15.1 + local.get $$t18.312 + i32.store offset=1248 + local.get $$t15.1 + local.get $$t18.313 + i32.store offset=1252 + local.get $$t15.1 + local.get $$t18.314 + i32.store offset=1256 + local.get $$t15.1 + local.get $$t18.315 + i32.store offset=1260 + local.get $$t15.1 + local.get $$t18.316 + i32.store offset=1264 + local.get $$t15.1 + local.get $$t18.317 + i32.store offset=1268 + local.get $$t15.1 + local.get $$t18.318 + i32.store offset=1272 + local.get $$t15.1 + local.get $$t18.319 + i32.store offset=1276 + local.get $$t15.1 + local.get $$t18.320 + i32.store offset=1280 + local.get $$t15.1 + local.get $$t18.321 + i32.store offset=1284 + local.get $$t15.1 + local.get $$t18.322 + i32.store offset=1288 + local.get $$t15.1 + local.get $$t18.323 + i32.store offset=1292 + local.get $$t15.1 + local.get $$t18.324 + i32.store offset=1296 + local.get $$t15.1 + local.get $$t18.325 + i32.store offset=1300 + local.get $$t15.1 + local.get $$t18.326 + i32.store offset=1304 + local.get $$t15.1 + local.get $$t18.327 + i32.store offset=1308 + local.get $$t15.1 + local.get $$t18.328 + i32.store offset=1312 + local.get $$t15.1 + local.get $$t18.329 + i32.store offset=1316 + local.get $$t15.1 + local.get $$t18.330 + i32.store offset=1320 + local.get $$t15.1 + local.get $$t18.331 + i32.store offset=1324 + local.get $$t15.1 + local.get $$t18.332 + i32.store offset=1328 + local.get $$t15.1 + local.get $$t18.333 + i32.store offset=1332 + local.get $$t15.1 + local.get $$t18.334 + i32.store offset=1336 + local.get $$t15.1 + local.get $$t18.335 + i32.store offset=1340 + local.get $$t15.1 + local.get $$t18.336 + i32.store offset=1344 + local.get $$t15.1 + local.get $$t18.337 + i32.store offset=1348 + local.get $$t15.1 + local.get $$t18.338 + i32.store offset=1352 + local.get $$t15.1 + local.get $$t18.339 + i32.store offset=1356 + local.get $$t15.1 + local.get $$t18.340 + i32.store offset=1360 + local.get $$t15.1 + local.get $$t18.341 + i32.store offset=1364 + local.get $$t15.1 + local.get $$t18.342 + i32.store offset=1368 + local.get $$t15.1 + local.get $$t18.343 + i32.store offset=1372 + local.get $$t15.1 + local.get $$t18.344 + i32.store offset=1376 + local.get $$t15.1 + local.get $$t18.345 + i32.store offset=1380 + local.get $$t15.1 + local.get $$t18.346 + i32.store offset=1384 + local.get $$t15.1 + local.get $$t18.347 + i32.store offset=1388 + local.get $$t15.1 + local.get $$t18.348 + i32.store offset=1392 + local.get $$t15.1 + local.get $$t18.349 + i32.store offset=1396 + local.get $$t15.1 + local.get $$t18.350 + i32.store offset=1400 + local.get $$t15.1 + local.get $$t18.351 + i32.store offset=1404 + local.get $$t15.1 + local.get $$t18.352 + i32.store offset=1408 + local.get $$t15.1 + local.get $$t18.353 + i32.store offset=1412 + local.get $$t15.1 + local.get $$t18.354 + i32.store offset=1416 + local.get $$t15.1 + local.get $$t18.355 + i32.store offset=1420 + local.get $$t15.1 + local.get $$t18.356 + i32.store offset=1424 + local.get $$t15.1 + local.get $$t18.357 + i32.store offset=1428 + local.get $$t15.1 + local.get $$t18.358 + i32.store offset=1432 + local.get $$t15.1 + local.get $$t18.359 + i32.store offset=1436 + local.get $$t15.1 + local.get $$t18.360 + i32.store offset=1440 + local.get $$t15.1 + local.get $$t18.361 + i32.store offset=1444 + local.get $$t15.1 + local.get $$t18.362 + i32.store offset=1448 + local.get $$t15.1 + local.get $$t18.363 + i32.store offset=1452 + local.get $$t15.1 + local.get $$t18.364 + i32.store offset=1456 + local.get $$t15.1 + local.get $$t18.365 + i32.store offset=1460 + local.get $$t15.1 + local.get $$t18.366 + i32.store offset=1464 + local.get $$t15.1 + local.get $$t18.367 + i32.store offset=1468 + local.get $$t15.1 + local.get $$t18.368 + i32.store offset=1472 + local.get $$t15.1 + local.get $$t18.369 + i32.store offset=1476 + local.get $$t15.1 + local.get $$t18.370 + i32.store offset=1480 + local.get $$t15.1 + local.get $$t18.371 + i32.store offset=1484 + local.get $$t15.1 + local.get $$t18.372 + i32.store offset=1488 + local.get $$t15.1 + local.get $$t18.373 + i32.store offset=1492 + local.get $$t15.1 + local.get $$t18.374 + i32.store offset=1496 + local.get $$t15.1 + local.get $$t18.375 + i32.store offset=1500 + local.get $$t15.1 + local.get $$t18.376 + i32.store offset=1504 + local.get $$t15.1 + local.get $$t18.377 + i32.store offset=1508 + local.get $$t15.1 + local.get $$t18.378 + i32.store offset=1512 + local.get $$t15.1 + local.get $$t18.379 + i32.store offset=1516 + local.get $$t15.1 + local.get $$t18.380 + i32.store offset=1520 + local.get $$t15.1 + local.get $$t18.381 + i32.store offset=1524 + local.get $$t15.1 + local.get $$t18.382 + i32.store offset=1528 + local.get $$t15.1 + local.get $$t18.383 + i32.store offset=1532 + local.get $$t15.1 + local.get $$t18.384 + i32.store offset=1536 + local.get $$t15.1 + local.get $$t18.385 + i32.store offset=1540 + local.get $$t15.1 + local.get $$t18.386 + i32.store offset=1544 + local.get $$t15.1 + local.get $$t18.387 + i32.store offset=1548 + local.get $$t15.1 + local.get $$t18.388 + i32.store offset=1552 + local.get $$t15.1 + local.get $$t18.389 + i32.store offset=1556 + local.get $$t15.1 + local.get $$t18.390 + i32.store offset=1560 + local.get $$t15.1 + local.get $$t18.391 + i32.store offset=1564 + local.get $$t15.1 + local.get $$t18.392 + i32.store offset=1568 + local.get $$t15.1 + local.get $$t18.393 + i32.store offset=1572 + local.get $$t15.1 + local.get $$t18.394 + i32.store offset=1576 + local.get $$t15.1 + local.get $$t18.395 + i32.store offset=1580 + local.get $$t15.1 + local.get $$t18.396 + i32.store offset=1584 + local.get $$t15.1 + local.get $$t18.397 + i32.store offset=1588 + local.get $$t15.1 + local.get $$t18.398 + i32.store offset=1592 + local.get $$t15.1 + local.get $$t18.399 + i32.store offset=1596 + local.get $$t15.1 + local.get $$t18.400 + i32.store offset=1600 + local.get $$t15.1 + local.get $$t18.401 + i32.store offset=1604 + local.get $$t15.1 + local.get $$t18.402 + i32.store offset=1608 + local.get $$t15.1 + local.get $$t18.403 + i32.store offset=1612 + local.get $$t15.1 + local.get $$t18.404 + i32.store offset=1616 + local.get $$t15.1 + local.get $$t18.405 + i32.store offset=1620 + local.get $$t15.1 + local.get $$t18.406 + i32.store offset=1624 + local.get $$t15.1 + local.get $$t18.407 + i32.store offset=1628 + local.get $$t15.1 + local.get $$t18.408 + i32.store offset=1632 + local.get $$t15.1 + local.get $$t18.409 + i32.store offset=1636 + local.get $$t15.1 + local.get $$t18.410 + i32.store offset=1640 + local.get $$t15.1 + local.get $$t18.411 + i32.store offset=1644 + local.get $$t15.1 + local.get $$t18.412 + i32.store offset=1648 + local.get $$t15.1 + local.get $$t18.413 + i32.store offset=1652 + local.get $$t15.1 + local.get $$t18.414 + i32.store offset=1656 + local.get $$t15.1 + local.get $$t18.415 + i32.store offset=1660 + local.get $$t15.1 + local.get $$t18.416 + i32.store offset=1664 + local.get $$t15.1 + local.get $$t18.417 + i32.store offset=1668 + local.get $$t15.1 + local.get $$t18.418 + i32.store offset=1672 + local.get $$t15.1 + local.get $$t18.419 + i32.store offset=1676 + local.get $$t15.1 + local.get $$t18.420 + i32.store offset=1680 + local.get $$t15.1 + local.get $$t18.421 + i32.store offset=1684 + local.get $$t15.1 + local.get $$t18.422 + i32.store offset=1688 + local.get $$t15.1 + local.get $$t18.423 + i32.store offset=1692 + local.get $$t15.1 + local.get $$t18.424 + i32.store offset=1696 + local.get $$t15.1 + local.get $$t18.425 + i32.store offset=1700 + local.get $$t15.1 + local.get $$t18.426 + i32.store offset=1704 + local.get $$t15.1 + local.get $$t18.427 + i32.store offset=1708 + local.get $$t15.1 + local.get $$t18.428 + i32.store offset=1712 + local.get $$t15.1 + local.get $$t18.429 + i32.store offset=1716 + local.get $$t15.1 + local.get $$t18.430 + i32.store offset=1720 + local.get $$t15.1 + local.get $$t18.431 + i32.store offset=1724 + local.get $$t15.1 + local.get $$t18.432 + i32.store offset=1728 + local.get $$t15.1 + local.get $$t18.433 + i32.store offset=1732 + local.get $$t15.1 + local.get $$t18.434 + i32.store offset=1736 + local.get $$t15.1 + local.get $$t18.435 + i32.store offset=1740 + local.get $$t15.1 + local.get $$t18.436 + i32.store offset=1744 + local.get $$t15.1 + local.get $$t18.437 + i32.store offset=1748 + local.get $$t15.1 + local.get $$t18.438 + i32.store offset=1752 + local.get $$t15.1 + local.get $$t18.439 + i32.store offset=1756 + local.get $$t15.1 + local.get $$t18.440 + i32.store offset=1760 + local.get $$t15.1 + local.get $$t18.441 + i32.store offset=1764 + local.get $$t15.1 + local.get $$t18.442 + i32.store offset=1768 + local.get $$t15.1 + local.get $$t18.443 + i32.store offset=1772 + local.get $$t15.1 + local.get $$t18.444 + i32.store offset=1776 + local.get $$t15.1 + local.get $$t18.445 + i32.store offset=1780 + local.get $$t15.1 + local.get $$t18.446 + i32.store offset=1784 + local.get $$t15.1 + local.get $$t18.447 + i32.store offset=1788 + local.get $$t15.1 + local.get $$t18.448 + i32.store offset=1792 + local.get $$t15.1 + local.get $$t18.449 + i32.store offset=1796 + local.get $$t15.1 + local.get $$t18.450 + i32.store offset=1800 + local.get $$t15.1 + local.get $$t18.451 + i32.store offset=1804 + local.get $$t15.1 + local.get $$t18.452 + i32.store offset=1808 + local.get $$t15.1 + local.get $$t18.453 + i32.store offset=1812 + local.get $$t15.1 + local.get $$t18.454 + i32.store offset=1816 + local.get $$t15.1 + local.get $$t18.455 + i32.store offset=1820 + local.get $$t15.1 + local.get $$t18.456 + i32.store offset=1824 + local.get $$t15.1 + local.get $$t18.457 + i32.store offset=1828 + local.get $$t15.1 + local.get $$t18.458 + i32.store offset=1832 + local.get $$t15.1 + local.get $$t18.459 + i32.store offset=1836 + local.get $$t15.1 + local.get $$t18.460 + i32.store offset=1840 + local.get $$t15.1 + local.get $$t18.461 + i32.store offset=1844 + local.get $$t15.1 + local.get $$t18.462 + i32.store offset=1848 + local.get $$t15.1 + local.get $$t18.463 + i32.store offset=1852 + local.get $$t15.1 + local.get $$t18.464 + i32.store offset=1856 + local.get $$t15.1 + local.get $$t18.465 + i32.store offset=1860 + local.get $$t15.1 + local.get $$t18.466 + i32.store offset=1864 + local.get $$t15.1 + local.get $$t18.467 + i32.store offset=1868 + local.get $$t16.1 + local.get $$t19.0 + i32.store16 + local.get $$t16.1 + local.get $$t19.1 + i32.store16 offset=2 + local.get $$t16.1 + local.get $$t19.2 + i32.store16 offset=4 + local.get $$t16.1 + local.get $$t19.3 + i32.store16 offset=6 + local.get $$t16.1 + local.get $$t19.4 + i32.store16 offset=8 + local.get $$t16.1 + local.get $$t19.5 + i32.store16 offset=10 + local.get $$t16.1 + local.get $$t19.6 + i32.store16 offset=12 + local.get $$t16.1 + local.get $$t19.7 + i32.store16 offset=14 + local.get $$t16.1 + local.get $$t19.8 + i32.store16 offset=16 + local.get $$t16.1 + local.get $$t19.9 + i32.store16 offset=18 + local.get $$t16.1 + local.get $$t19.10 + i32.store16 offset=20 + local.get $$t16.1 + local.get $$t19.11 + i32.store16 offset=22 + local.get $$t16.1 + local.get $$t19.12 + i32.store16 offset=24 + local.get $$t16.1 + local.get $$t19.13 + i32.store16 offset=26 + local.get $$t16.1 + local.get $$t19.14 + i32.store16 offset=28 + local.get $$t16.1 + local.get $$t19.15 + i32.store16 offset=30 + local.get $$t16.1 + local.get $$t19.16 + i32.store16 offset=32 + local.get $$t16.1 + local.get $$t19.17 + i32.store16 offset=34 + local.get $$t16.1 + local.get $$t19.18 + i32.store16 offset=36 + local.get $$t16.1 + local.get $$t19.19 + i32.store16 offset=38 + local.get $$t16.1 + local.get $$t19.20 + i32.store16 offset=40 + local.get $$t16.1 + local.get $$t19.21 + i32.store16 offset=42 + local.get $$t16.1 + local.get $$t19.22 + i32.store16 offset=44 + local.get $$t16.1 + local.get $$t19.23 + i32.store16 offset=46 + local.get $$t16.1 + local.get $$t19.24 + i32.store16 offset=48 + local.get $$t16.1 + local.get $$t19.25 + i32.store16 offset=50 + local.get $$t16.1 + local.get $$t19.26 + i32.store16 offset=52 + local.get $$t16.1 + local.get $$t19.27 + i32.store16 offset=54 + local.get $$t16.1 + local.get $$t19.28 + i32.store16 offset=56 + local.get $$t16.1 + local.get $$t19.29 + i32.store16 offset=58 + local.get $$t16.1 + local.get $$t19.30 + i32.store16 offset=60 + local.get $$t16.1 + local.get $$t19.31 + i32.store16 offset=62 + local.get $$t16.1 + local.get $$t19.32 + i32.store16 offset=64 + local.get $$t16.1 + local.get $$t19.33 + i32.store16 offset=66 + local.get $$t16.1 + local.get $$t19.34 + i32.store16 offset=68 + local.get $$t16.1 + local.get $$t19.35 + i32.store16 offset=70 + local.get $$t16.1 + local.get $$t19.36 + i32.store16 offset=72 + local.get $$t16.1 + local.get $$t19.37 + i32.store16 offset=74 + local.get $$t16.1 + local.get $$t19.38 + i32.store16 offset=76 + local.get $$t16.1 + local.get $$t19.39 + i32.store16 offset=78 + local.get $$t16.1 + local.get $$t19.40 + i32.store16 offset=80 + local.get $$t16.1 + local.get $$t19.41 + i32.store16 offset=82 + local.get $$t16.1 + local.get $$t19.42 + i32.store16 offset=84 + local.get $$t16.1 + local.get $$t19.43 + i32.store16 offset=86 + local.get $$t16.1 + local.get $$t19.44 + i32.store16 offset=88 + local.get $$t16.1 + local.get $$t19.45 + i32.store16 offset=90 + local.get $$t16.1 + local.get $$t19.46 + i32.store16 offset=92 + local.get $$t16.1 + local.get $$t19.47 + i32.store16 offset=94 + local.get $$t16.1 + local.get $$t19.48 + i32.store16 offset=96 + local.get $$t16.1 + local.get $$t19.49 + i32.store16 offset=98 + local.get $$t16.1 + local.get $$t19.50 + i32.store16 offset=100 + local.get $$t16.1 + local.get $$t19.51 + i32.store16 offset=102 + local.get $$t16.1 + local.get $$t19.52 + i32.store16 offset=104 + local.get $$t16.1 + local.get $$t19.53 + i32.store16 offset=106 + local.get $$t16.1 + local.get $$t19.54 + i32.store16 offset=108 + local.get $$t16.1 + local.get $$t19.55 + i32.store16 offset=110 + local.get $$t16.1 + local.get $$t19.56 + i32.store16 offset=112 + local.get $$t16.1 + local.get $$t19.57 + i32.store16 offset=114 + local.get $$t16.1 + local.get $$t19.58 + i32.store16 offset=116 + local.get $$t16.1 + local.get $$t19.59 + i32.store16 offset=118 + local.get $$t16.1 + local.get $$t19.60 + i32.store16 offset=120 + local.get $$t16.1 + local.get $$t19.61 + i32.store16 offset=122 + local.get $$t16.1 + local.get $$t19.62 + i32.store16 offset=124 + local.get $$t16.1 + local.get $$t19.63 + i32.store16 offset=126 + local.get $$t16.1 + local.get $$t19.64 + i32.store16 offset=128 + local.get $$t16.1 + local.get $$t19.65 + i32.store16 offset=130 + local.get $$t16.1 + local.get $$t19.66 + i32.store16 offset=132 + local.get $$t16.1 + local.get $$t19.67 + i32.store16 offset=134 + local.get $$t16.1 + local.get $$t19.68 + i32.store16 offset=136 + local.get $$t16.1 + local.get $$t19.69 + i32.store16 offset=138 + local.get $$t16.1 + local.get $$t19.70 + i32.store16 offset=140 + local.get $$t16.1 + local.get $$t19.71 + i32.store16 offset=142 + local.get $$t16.1 + local.get $$t19.72 + i32.store16 offset=144 + local.get $$t16.1 + local.get $$t19.73 + i32.store16 offset=146 + local.get $$t16.1 + local.get $$t19.74 + i32.store16 offset=148 + local.get $$t16.1 + local.get $$t19.75 + i32.store16 offset=150 + local.get $$t16.1 + local.get $$t19.76 + i32.store16 offset=152 + local.get $$t16.1 + local.get $$t19.77 + i32.store16 offset=154 + local.get $$t16.1 + local.get $$t19.78 + i32.store16 offset=156 + local.get $$t16.1 + local.get $$t19.79 + i32.store16 offset=158 + local.get $$t16.1 + local.get $$t19.80 + i32.store16 offset=160 + local.get $$t16.1 + local.get $$t19.81 + i32.store16 offset=162 + local.get $$t16.1 + local.get $$t19.82 + i32.store16 offset=164 + local.get $$t16.1 + local.get $$t19.83 + i32.store16 offset=166 + local.get $$t16.1 + local.get $$t19.84 + i32.store16 offset=168 + local.get $$t16.1 + local.get $$t19.85 + i32.store16 offset=170 + local.get $$t16.1 + local.get $$t19.86 + i32.store16 offset=172 + local.get $$t16.1 + local.get $$t19.87 + i32.store16 offset=174 + local.get $$t16.1 + local.get $$t19.88 + i32.store16 offset=176 + local.get $$t16.1 + local.get $$t19.89 + i32.store16 offset=178 + local.get $$t16.1 + local.get $$t19.90 + i32.store16 offset=180 + local.get $$t16.1 + local.get $$t19.91 + i32.store16 offset=182 + local.get $$t16.1 + local.get $$t19.92 + i32.store16 offset=184 + local.get $$t16.1 + local.get $$t19.93 + i32.store16 offset=186 + local.get $$t16.1 + local.get $$t19.94 + i32.store16 offset=188 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 468 + i32.const 0 + i32.sub + i32.const 468 + i32.const 0 + i32.sub + local.set $$t20.3 + local.set $$t20.2 + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.0 + local.get $$t20.1 + local.get $$t20.2 + local.get $$t20.3 + local.get $$t17 + call $strconv.bsearch32 + local.set $$t21 + local.get $$t21 + i32.const 468 + i32.ge_s + local.set $$t22 + local.get $$t22 + if + br $$Block_17 + else + br $$Block_20 + end + end + i32.const 11 + local.set $$current_block + local.get $r + i32.const 65536 + i32.lt_s + local.set $$t23 + local.get $$t23 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 132 + i32.const 0 + i32.sub + i32.const 132 + i32.const 0 + i32.sub + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t24.2 + local.get $$t24.3 + local.get $$t9 + call $strconv.bsearch16 + local.set $$t25 + local.get $$t25 + i32.const 132 + i32.ge_s + local.set $$t26 + local.get $$t26 + if + br $$Block_16 + else + br $$Block_15 + end + end + i32.const 14 + local.set $$current_block + local.get $$t13 + i32.const 1 + i32.or + local.set $$t27 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + local.get $$t27 + i32.mul + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load16_u + local.set $$t29 + local.get $$t29 + local.get $$t9 + i32.lt_u + local.set $$t30 + local.get $$t30 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t13 + i32.const 1 + i32.const -1 + i32.xor + i32.and + local.set $$t31 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 2 + local.get $$t31 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + i32.load16_u + local.set $$t33 + local.get $$t9 + local.get $$t33 + i32.lt_u + local.set $$t34 + local.get $$t34 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 16 + local.set $$current_block + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 2 + local.get $$t25 + i32.mul + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t35.1 + i32.load16_u + local.set $$t36 + local.get $$t36 + local.get $$t9 + i32.eq + i32.eqz + local.set $$t37 + br $$Block_16 + end + local.get $$current_block + i32.const 13 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t37 + end + local.set $$t38 + i32.const 17 + local.set $$current_block + local.get $$t38 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 19 + local.set $$current_block + local.get $r + i32.const 131072 + i32.ge_s + local.set $$t39 + local.get $$t39 + if + br $$Block_21 + else + br $$Block_22 + end + end + i32.const 20 + local.set $$current_block + local.get $$t21 + i32.const 1 + i32.or + local.set $$t40 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + local.get $$t40 + i32.mul + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t42 + local.get $$t17 + i32.lt_u + local.set $$t43 + local.get $$t43 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + i32.const 19 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 21 + local.set $$current_block + local.get $$t21 + i32.const 1 + i32.const -1 + i32.xor + i32.and + local.set $$t44 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + local.get $$t44 + i32.mul + i32.add + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t45.1 + i32.load + local.set $$t46 + local.get $$t17 + local.get $$t46 + i32.lt_u + local.set $$t47 + local.get $$t47 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + i32.const 20 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 22 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 23 + local.set $$current_block + local.get $r + i32.const 65536 + i32.sub + local.set $$t48 + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 95 + i32.const 0 + i32.sub + i32.const 95 + i32.const 0 + i32.sub + local.set $$t49.3 + local.set $$t49.2 + local.set $$t49.1 + local.get $$t49.0 + call $runtime.Block.Release + local.set $$t49.0 + local.get $$t48 + i32.const 65535 + i32.and + local.set $$t50 + local.get $$t49.0 + local.get $$t49.1 + local.get $$t49.2 + local.get $$t49.3 + local.get $$t50 + call $strconv.bsearch16 + local.set $$t51 + local.get $$t51 + i32.const 95 + i32.ge_s + local.set $$t52 + local.get $$t52 + if + br $$Block_24 + else + br $$Block_23 + end + end + i32.const 24 + local.set $$current_block + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.const 2 + local.get $$t51 + i32.mul + i32.add + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $$t53.1 + i32.load16_u + local.set $$t54 + local.get $$t48 + i32.const 65535 + i32.and + local.set $$t55 + local.get $$t54 + local.get $$t55 + i32.eq + i32.eqz + local.set $$t56 + br $$Block_24 + end + local.get $$current_block + i32.const 23 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t56 + end + local.set $$t57 + i32.const 25 + local.set $$current_block + local.get $$t57 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t49.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + ) + (func $strconv.Itoa (param $i i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i64) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $i + i64.extend_i32_s + local.set $$t0 + local.get $$t0 + i32.const 10 + call $strconv.FormatInt + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $strconv.Quote (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + i32.const 34 + i32.const 0 + i32.const 0 + call $strconv.quoteWith + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.get $$t0.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + ) + (func $strconv.appendEscapedRune (param $buf.0 i32) (param $buf.1 i32) (param $buf.2 i32) (param $buf.3 i32) (param $r i32) (param $quote i32) (param $ASCIIonly i32) (param $graphicOnly i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t6.3 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t10.2 i32) + (local $$t10.3 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t19.2 i32) + (local $$t19.3 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t20.2 i32) + (local $$t20.3 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t22.2 i32) + (local $$t22.3 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t27.2 i32) + (local $$t27.3 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t28.2 i32) + (local $$t28.3 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t29.2 i32) + (local $$t29.3 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t30.2 i32) + (local $$t30.3 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t31.2 i32) + (local $$t31.3 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t32.2 i32) + (local $$t32.3 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t33.2 i32) + (local $$t33.3 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t34.2 i32) + (local $$t34.3 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t35.2 i32) + (local $$t35.3 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t36.2 i32) + (local $$t36.3 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t37.2 i32) + (local $$t37.3 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t38.2 i32) + (local $$t38.3 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t46.2 i32) + (local $$t46.3 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t52.2 i32) + (local $$t52.3 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t53.2 i32) + (local $$t53.3 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t59.2 i32) + (local $$t59.3 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t60.2 i32) + (local $$t60.3 i32) + (local $$t61 i32) + (local $$t62.0 i32) + (local $$t62.1 i32) + (local $$t62.2 i32) + (local $$t62.3 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69.0 i32) + (local $$t69.1 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t71.2 i32) + (local $$t71.3 i32) + (local $$t72.0 i32) + (local $$t72.1 i32) + (local $$t72.2 i32) + (local $$t72.3 i32) + (local $$t73 i32) + (local $$t74 i32) + (local $$t75.0 i32) + (local $$t75.1 i32) + (local $$t75.2 i32) + (local $$t75.3 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81.0 i32) + (local $$t81.1 i32) + (local $$t82.0 i32) + (local $$t82.1 i32) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t83.2 i32) + (local $$t83.3 i32) + (local $$t84.0 i32) + (local $$t84.1 i32) + (local $$t84.2 i32) + (local $$t84.3 i32) + (local $$t85 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92.0 i32) + (local $$t92.1 i32) + (local $$t93.0 i32) + (local $$t93.1 i32) + (local $$t94.0 i32) + (local $$t94.1 i32) + (local $$t94.2 i32) + (local $$t94.3 i32) + (local $$t95.0 i32) + (local $$t95.1 i32) + (local $$t95.2 i32) + (local $$t95.3 i32) + (local $$t96 i32) + (local $$t97 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_38 + block $$Block_37 + block $$Block_36 + block $$Block_35 + block $$Block_34 + block $$Block_33 + block $$Block_32 + block $$Block_31 + block $$Block_30 + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $quote + local.set $$t1 + local.get $r + local.get $$t1 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.const 92 + i32.store8 align=1 + local.get $$t3.0 + call $runtime.Block.Retain + local.get $$t3.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + local.get $$t5.0 + local.get $$t5.1 + local.get $$t5.2 + local.get $$t5.3 + call $$u8.$slice.append + local.set $$t6.3 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $r + i32.const 255 + i32.and + local.set $$t7 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + local.get $$t7 + i32.store8 align=1 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t10.3 + local.set $$t10.2 + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + local.get $$t6.3 + local.get $$t10.0 + local.get $$t10.1 + local.get $$t10.2 + local.get $$t10.3 + call $$u8.$slice.append + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ASCIIonly + if + br $$Block_3 + else + br $$Block_5 + end + end + i32.const 3 + local.set $$current_block + local.get $r + i32.const 92 + i32.eq + local.set $$t12 + local.get $$t12 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $r + i32.const 128 + i32.lt_s + local.set $$t13 + local.get $$t13 + if + br $$Block_7 + else + br $$Block_4 + end + end + i32.const 5 + local.set $$current_block + local.get $r + i32.const 7 + i32.eq + local.set $$t14 + local.get $$t14 + if + br $$Block_12 + else + br $$Block_14 + end + end + i32.const 6 + local.set $$current_block + local.get $r + call $strconv.IsPrint + local.set $$t15 + local.get $$t15 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $r + i32.const 255 + i32.and + local.set $$t16 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + local.get $$t16 + i32.store8 align=1 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t19.3 + local.set $$t19.2 + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + local.get $$t19.0 + local.get $$t19.1 + local.get $$t19.2 + local.get $$t19.3 + call $$u8.$slice.append + local.set $$t20.3 + local.set $$t20.2 + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + local.get $$t20.2 + local.get $$t20.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $r + call $strconv.IsPrint + local.set $$t21 + local.get $$t21 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t22.3 + local.set $$t22.2 + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.0 + local.get $$t22.1 + local.get $$t22.2 + local.get $$t22.3 + local.get $r + call $unicode$utf8.EncodeRune + local.set $$t23 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.get $$t23 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t24.2 + local.get $$t24.3 + call $$u8.$slice.append + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.0 + call $runtime.Block.Retain + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $graphicOnly + if + br $$Block_10 + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 11 + local.set $$current_block + local.get $r + call $strconv.isInGraphicList + local.set $$t26 + local.get $$t26 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 13 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + local.get $$t27.2 + local.get $$t27.3 + else + local.get $$current_block + i32.const 14 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + local.get $$t28.2 + local.get $$t28.3 + else + local.get $$current_block + i32.const 16 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + local.get $$t29.2 + local.get $$t29.3 + else + local.get $$current_block + i32.const 18 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + local.get $$t30.2 + local.get $$t30.3 + else + local.get $$current_block + i32.const 20 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t31.0 + call $runtime.Block.Retain + local.get $$t31.1 + local.get $$t31.2 + local.get $$t31.3 + else + local.get $$current_block + i32.const 22 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t32.0 + call $runtime.Block.Retain + local.get $$t32.1 + local.get $$t32.2 + local.get $$t32.3 + else + local.get $$current_block + i32.const 24 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t33.0 + call $runtime.Block.Retain + local.get $$t33.1 + local.get $$t33.2 + local.get $$t33.3 + else + local.get $$current_block + i32.const 27 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t34.0 + call $runtime.Block.Retain + local.get $$t34.1 + local.get $$t34.2 + local.get $$t34.3 + else + local.get $$current_block + i32.const 33 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t35.0 + call $runtime.Block.Retain + local.get $$t35.1 + local.get $$t35.2 + local.get $$t35.3 + else + local.get $$current_block + i32.const 36 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t36.0 + call $runtime.Block.Retain + local.get $$t36.1 + local.get $$t36.2 + local.get $$t36.3 + else + local.get $$t37.0 + call $runtime.Block.Retain + local.get $$t37.1 + local.get $$t37.2 + local.get $$t37.3 + end + end + end + end + end + end + end + end + end + end + local.set $$t38.3 + local.set $$t38.2 + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + i32.const 12 + local.set $$current_block + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + local.get $$t38.2 + local.get $$t38.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32757 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t27.3 + local.set $$t27.2 + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 14 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32759 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t28.3 + local.set $$t28.2 + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 15 + local.set $$current_block + local.get $r + i32.const 8 + i32.eq + local.set $$t39 + local.get $$t39 + if + i32.const 14 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_16 + end + end + i32.const 16 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32761 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t29.3 + local.set $$t29.2 + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 17 + local.set $$current_block + local.get $r + i32.const 12 + i32.eq + local.set $$t40 + local.get $$t40 + if + i32.const 16 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_18 + end + end + i32.const 18 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32763 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t30.3 + local.set $$t30.2 + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + local.get $r + i32.const 10 + i32.eq + local.set $$t41 + local.get $$t41 + if + i32.const 18 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_20 + end + end + i32.const 20 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32765 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t31.3 + local.set $$t31.2 + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 21 + local.set $$current_block + local.get $r + i32.const 13 + i32.eq + local.set $$t42 + local.get $$t42 + if + i32.const 20 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_22 + end + end + i32.const 22 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32767 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t32.3 + local.set $$t32.2 + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 23 + local.set $$current_block + local.get $r + i32.const 9 + i32.eq + local.set $$t43 + local.get $$t43 + if + i32.const 22 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_24 + end + end + i32.const 24 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32769 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t33.3 + local.set $$t33.2 + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 25 + local.set $$current_block + local.get $r + i32.const 11 + i32.eq + local.set $$t44 + local.get $$t44 + if + i32.const 24 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_25 + end + end + i32.const 26 + local.set $$current_block + local.get $r + i32.const 32 + i32.lt_s + local.set $$t45 + local.get $$t45 + if + br $$Block_26 + else + br $$Block_28 + end + end + i32.const 27 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32771 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t46.3 + local.set $$t46.2 + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $r + i32.const 255 + i32.and + local.set $$t47 + local.get $$t47 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t48 + i32.const 31565 + local.get $$t48 + i32.add + i32.load8_u align=1 + local.set $$t49 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + local.get $$t49 + i32.store8 align=1 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t52.3 + local.set $$t52.2 + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t46.0 + local.get $$t46.1 + local.get $$t46.2 + local.get $$t46.3 + local.get $$t52.0 + local.get $$t52.1 + local.get $$t52.2 + local.get $$t52.3 + call $$u8.$slice.append + local.set $$t53.3 + local.set $$t53.2 + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $r + i32.const 255 + i32.and + local.set $$t54 + local.get $$t54 + i32.const 15 + i32.and + local.set $$t55 + i32.const 31565 + local.get $$t55 + i32.add + i32.load8_u align=1 + local.set $$t56 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $$t57.0 + call $runtime.Block.Retain + local.get $$t57.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + local.get $$t58.1 + local.get $$t56 + i32.store8 align=1 + local.get $$t57.0 + call $runtime.Block.Retain + local.get $$t57.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t59.3 + local.set $$t59.2 + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t53.0 + local.get $$t53.1 + local.get $$t53.2 + local.get $$t53.3 + local.get $$t59.0 + local.get $$t59.1 + local.get $$t59.2 + local.get $$t59.3 + call $$u8.$slice.append + local.set $$t34.3 + local.set $$t34.2 + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + i32.const 28 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32773 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t60.3 + local.set $$t60.2 + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + br $$Block_32 + end + i32.const 29 + local.set $$current_block + local.get $r + i32.const 1114111 + i32.gt_s + local.set $$t61 + local.get $$t61 + if + i32.const 28 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_30 + end + end + i32.const 30 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32773 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t62.3 + local.set $$t62.2 + local.set $$t62.1 + local.get $$t62.0 + call $runtime.Block.Release + local.set $$t62.0 + br $$Block_35 + end + i32.const 31 + local.set $$current_block + local.get $r + i32.const 65536 + i32.lt_s + local.set $$t63 + local.get $$t63 + if + i32.const 30 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_33 + end + end + i32.const 32 + local.set $$current_block + local.get $$t64 + local.set $$t65 + i32.const 65533 + local.get $$t65 + i32.shr_s + local.set $$t66 + local.get $$t66 + i32.const 15 + i32.and + local.set $$t67 + i32.const 31565 + local.get $$t67 + i32.add + i32.load8_u align=1 + local.set $$t68 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t69.1 + local.get $$t69.0 + call $runtime.Block.Release + local.set $$t69.0 + local.get $$t69.0 + call $runtime.Block.Retain + local.get $$t69.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + local.get $$t70.1 + local.get $$t68 + i32.store8 align=1 + local.get $$t69.0 + call $runtime.Block.Retain + local.get $$t69.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t71.3 + local.set $$t71.2 + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $$t35.0 + local.get $$t35.1 + local.get $$t35.2 + local.get $$t35.3 + local.get $$t71.0 + local.get $$t71.1 + local.get $$t71.2 + local.get $$t71.3 + call $$u8.$slice.append + local.set $$t72.3 + local.set $$t72.2 + local.set $$t72.1 + local.get $$t72.0 + call $runtime.Block.Release + local.set $$t72.0 + local.get $$t64 + i32.const 4 + i32.sub + local.set $$t73 + br $$Block_32 + end + local.get $$current_block + i32.const 28 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t60.0 + call $runtime.Block.Retain + local.get $$t60.1 + local.get $$t60.2 + local.get $$t60.3 + else + local.get $$t72.0 + call $runtime.Block.Retain + local.get $$t72.1 + local.get $$t72.2 + local.get $$t72.3 + end + local.set $$t35.3 + local.set $$t35.2 + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$current_block + i32.const 28 + i32.eq + if(result i32) + i32.const 12 + else + local.get $$t73 + end + local.set $$t64 + i32.const 33 + local.set $$current_block + local.get $$t64 + i32.const 0 + i32.ge_s + local.set $$t74 + local.get $$t74 + if + i32.const 32 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 34 + local.set $$current_block + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + i32.const 0 + i32.const 32775 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t75.3 + local.set $$t75.2 + local.set $$t75.1 + local.get $$t75.0 + call $runtime.Block.Release + local.set $$t75.0 + br $$Block_37 + end + i32.const 35 + local.set $$current_block + local.get $$t76 + local.set $$t77 + local.get $r + local.get $$t77 + i32.shr_s + local.set $$t78 + local.get $$t78 + i32.const 15 + i32.and + local.set $$t79 + i32.const 31565 + local.get $$t79 + i32.add + i32.load8_u align=1 + local.set $$t80 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t81.1 + local.get $$t81.0 + call $runtime.Block.Release + local.set $$t81.0 + local.get $$t81.0 + call $runtime.Block.Retain + local.get $$t81.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t82.1 + local.get $$t82.0 + call $runtime.Block.Release + local.set $$t82.0 + local.get $$t82.1 + local.get $$t80 + i32.store8 align=1 + local.get $$t81.0 + call $runtime.Block.Retain + local.get $$t81.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t83.3 + local.set $$t83.2 + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t36.0 + local.get $$t36.1 + local.get $$t36.2 + local.get $$t36.3 + local.get $$t83.0 + local.get $$t83.1 + local.get $$t83.2 + local.get $$t83.3 + call $$u8.$slice.append + local.set $$t84.3 + local.set $$t84.2 + local.set $$t84.1 + local.get $$t84.0 + call $runtime.Block.Release + local.set $$t84.0 + local.get $$t76 + i32.const 4 + i32.sub + local.set $$t85 + br $$Block_35 + end + local.get $$current_block + i32.const 30 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t62.0 + call $runtime.Block.Retain + local.get $$t62.1 + local.get $$t62.2 + local.get $$t62.3 + else + local.get $$t84.0 + call $runtime.Block.Retain + local.get $$t84.1 + local.get $$t84.2 + local.get $$t84.3 + end + local.set $$t36.3 + local.set $$t36.2 + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$current_block + i32.const 30 + i32.eq + if(result i32) + i32.const 12 + else + local.get $$t85 + end + local.set $$t76 + i32.const 36 + local.set $$current_block + local.get $$t76 + i32.const 0 + i32.ge_s + local.set $$t86 + local.get $$t86 + if + i32.const 35 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 37 + local.set $$current_block + local.get $$t87 + local.set $$t88 + local.get $r + local.get $$t88 + i32.shr_s + local.set $$t89 + local.get $$t89 + i32.const 15 + i32.and + local.set $$t90 + i32.const 31565 + local.get $$t90 + i32.add + i32.load8_u align=1 + local.set $$t91 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t92.1 + local.get $$t92.0 + call $runtime.Block.Release + local.set $$t92.0 + local.get $$t92.0 + call $runtime.Block.Retain + local.get $$t92.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t93.1 + local.get $$t93.0 + call $runtime.Block.Release + local.set $$t93.0 + local.get $$t93.1 + local.get $$t91 + i32.store8 align=1 + local.get $$t92.0 + call $runtime.Block.Retain + local.get $$t92.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t94.3 + local.set $$t94.2 + local.set $$t94.1 + local.get $$t94.0 + call $runtime.Block.Release + local.set $$t94.0 + local.get $$t37.0 + local.get $$t37.1 + local.get $$t37.2 + local.get $$t37.3 + local.get $$t94.0 + local.get $$t94.1 + local.get $$t94.2 + local.get $$t94.3 + call $$u8.$slice.append + local.set $$t95.3 + local.set $$t95.2 + local.set $$t95.1 + local.get $$t95.0 + call $runtime.Block.Release + local.set $$t95.0 + local.get $$t87 + i32.const 4 + i32.sub + local.set $$t96 + br $$Block_37 + end + local.get $$current_block + i32.const 34 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + local.get $$t75.2 + local.get $$t75.3 + else + local.get $$t95.0 + call $runtime.Block.Retain + local.get $$t95.1 + local.get $$t95.2 + local.get $$t95.3 + end + local.set $$t37.3 + local.set $$t37.2 + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$current_block + i32.const 34 + i32.eq + if(result i32) + i32.const 28 + else + local.get $$t96 + end + local.set $$t87 + i32.const 38 + local.set $$current_block + local.get $$t87 + i32.const 0 + i32.ge_s + local.set $$t97 + local.get $$t97 + if + i32.const 37 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t62.0 + call $runtime.Block.Release + local.get $$t69.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + local.get $$t72.0 + call $runtime.Block.Release + local.get $$t75.0 + call $runtime.Block.Release + local.get $$t81.0 + call $runtime.Block.Release + local.get $$t82.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + local.get $$t84.0 + call $runtime.Block.Release + local.get $$t92.0 + call $runtime.Block.Release + local.get $$t93.0 + call $runtime.Block.Release + local.get $$t94.0 + call $runtime.Block.Release + local.get $$t95.0 + call $runtime.Block.Release + ) + (func $$u8.$slice.copy (param $d.0 i32) (param $d.1 i32) (param $d.2 i32) (param $d.3 i32) (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $s.3 i32) (result i32) + (local $item i32) + (local $count i32) + (local $dp i32) + (local $sp i32) + (local $item_size i32) + local.get $d.2 + local.get $s.2 + i32.gt_u + if + local.get $s.2 + local.set $count + else + local.get $d.2 + local.set $count + end + local.get $count + local.get $d.1 + local.get $s.1 + i32.lt_u + if + local.get $d.1 + local.set $dp + local.get $s.1 + local.set $sp + i32.const 1 + local.set $item_size + else + local.get $count + i32.const 1 + i32.sub + i32.const 1 + i32.mul + local.set $item_size + local.get $d.1 + local.get $item_size + i32.add + local.set $dp + local.get $s.1 + local.get $item_size + i32.add + local.set $sp + i32.const 0 + i32.const 1 + i32.sub + local.set $item_size + end + block $b0 + loop $l0 + local.get $count + i32.eqz + if + br $b0 + else + local.get $sp + i32.load8_u align=1 + local.set $item + local.get $dp + local.get $item + i32.store8 align=1 + local.get $sp + local.get $item_size + i32.add + local.set $sp + local.get $dp + local.get $item_size + i32.add + local.set $dp + local.get $count + i32.const 1 + i32.sub + local.set $count + br $l0 + end + end + end + ) + (func $strconv.appendQuotedWith (param $buf.0 i32) (param $buf.1 i32) (param $buf.2 i32) (param $buf.3 i32) (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $quote i32) (param $ASCIIonly i32) (param $graphicOnly i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t11.3 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + (local $$t13.3 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t16.2 i32) + (local $$t16.3 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t17.2 i32) + (local $$t17.3 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t18.2 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t24.2 i32) + (local $$t24.3 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t26.2 i32) + (local $$t26.3 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t27.2 i32) + (local $$t27.3 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t28.2 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t31.2 i32) + (local $$t31.3 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t32.2 i32) + (local $$t32.3 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t39.2 i32) + (local $$t39.3 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t45.2 i32) + (local $$t45.3 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t46.2 i32) + (local $$t46.3 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t52.2 i32) + (local $$t52.3 i32) + (local $$t53 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 0 + end + i32.const 0 + local.set $$current_block + local.get $buf.3 + local.set $$t0 + local.get $buf.2 + local.set $$t1 + local.get $$t0 + local.get $$t1 + i32.sub + local.set $$t2 + local.get $s.2 + local.set $$t3 + local.get $$t2 + local.get $$t3 + i32.lt_s + local.set $$t4 + local.get $$t4 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $buf.2 + local.set $$t5 + local.get $buf.2 + local.set $$t6 + local.get $$t6 + i32.const 1 + i32.add + local.set $$t7 + local.get $s.2 + local.set $$t8 + local.get $$t7 + local.get $$t8 + i32.add + local.set $$t9 + local.get $$t9 + i32.const 1 + i32.add + local.set $$t10 + local.get $$t10 + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t10 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.get $$t5 + local.get $$t10 + local.set $$t11.3 + local.set $$t11.2 + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + local.get $buf.0 + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + call $$u8.$slice.copy + local.set $$t12 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32 i32 i32 i32) + local.get $buf.0 + call $runtime.Block.Retain + local.get $buf.1 + local.get $buf.2 + local.get $buf.3 + else + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + local.get $$t11.2 + local.get $$t11.3 + end + local.set $$t13.3 + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + i32.const 2 + local.set $$current_block + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + local.get $quote + i32.store8 align=1 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t16.3 + local.set $$t16.2 + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t13.0 + local.get $$t13.1 + local.get $$t13.2 + local.get $$t13.3 + local.get $$t16.0 + local.get $$t16.1 + local.get $$t16.2 + local.get $$t16.3 + call $$u8.$slice.append + local.set $$t17.3 + local.set $$t17.2 + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + br $$Block_4 + end + i32.const 3 + local.set $$current_block + local.get $$t18.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t19 + local.get $$t19 + local.set $$t20 + local.get $$t20 + i32.const 128 + i32.ge_s + local.set $$t21 + local.get $$t21 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 4 + local.set $$current_block + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + local.get $quote + i32.store8 align=1 + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t24.3 + local.set $$t24.2 + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.get $$t24.0 + local.get $$t24.1 + local.get $$t24.2 + local.get $$t24.3 + call $$u8.$slice.append + local.set $$t26.3 + local.set $$t26.2 + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + local.get $$t26.2 + local.get $$t26.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + local.get $$t17.2 + local.get $$t17.3 + else + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + local.get $$t27.2 + local.get $$t27.3 + end + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$current_block + i32.const 2 + i32.eq + if(result i32 i32 i32) + local.get $s.0 + call $runtime.Block.Retain + local.get $s.1 + local.get $s.2 + else + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + local.get $$t28.2 + end + local.set $$t18.2 + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + i32.const 5 + local.set $$current_block + local.get $$t18.2 + local.set $$t29 + local.get $$t29 + i32.const 0 + i32.gt_s + local.set $$t30 + local.get $$t30 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t31.0 + call $runtime.Block.Retain + local.get $$t31.1 + local.get $$t31.2 + local.get $$t31.3 + else + local.get $$t32.0 + call $runtime.Block.Retain + local.get $$t32.1 + local.get $$t32.2 + local.get $$t32.3 + end + local.set $$t27.3 + local.set $$t27.2 + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + i32.const 6 + local.set $$current_block + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + local.get $$t33 + i32.add + local.get $$t18.2 + local.get $$t33 + i32.sub + local.set $$t28.2 + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + i32.const 7 + local.set $$current_block + local.get $$t18.0 + local.get $$t18.1 + local.get $$t18.2 + call $unicode$utf8.DecodeRuneInString + local.set $$t34.1 + local.set $$t34.0 + local.get $$t34.0 + local.set $$t35 + local.get $$t34.1 + local.set $$t36 + br $$Block_7 + end + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + i32.const 1 + else + local.get $$t36 + end + local.set $$t33 + local.get $$current_block + i32.const 3 + i32.eq + if(result i32) + local.get $$t20 + else + local.get $$t35 + end + local.set $$t37 + i32.const 8 + local.set $$current_block + local.get $$t33 + i32.const 1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + i32.const 0 + i32.const 32771 + i32.const 2 + i32.const 2 + call $$u8.$slice.append + local.set $$t39.3 + local.set $$t39.2 + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t18.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t40 + local.get $$t40 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t41 + i32.const 31565 + local.get $$t41 + i32.add + i32.load8_u align=1 + local.set $$t42 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + local.get $$t42 + i32.store8 align=1 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t45.3 + local.set $$t45.2 + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t39.0 + local.get $$t39.1 + local.get $$t39.2 + local.get $$t39.3 + local.get $$t45.0 + local.get $$t45.1 + local.get $$t45.2 + local.get $$t45.3 + call $$u8.$slice.append + local.set $$t46.3 + local.set $$t46.2 + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t18.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t47 + local.get $$t47 + i32.const 15 + i32.and + local.set $$t48 + i32.const 31565 + local.get $$t48 + i32.add + i32.load8_u align=1 + local.set $$t49 + i32.const 17 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + local.get $$t49 + i32.store8 align=1 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t52.3 + local.set $$t52.2 + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t46.0 + local.get $$t46.1 + local.get $$t46.2 + local.get $$t46.3 + local.get $$t52.0 + local.get $$t52.1 + local.get $$t52.2 + local.get $$t52.3 + call $$u8.$slice.append + local.set $$t31.3 + local.set $$t31.2 + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $$t25.0 + local.get $$t25.1 + local.get $$t25.2 + local.get $$t25.3 + local.get $$t37 + local.get $quote + local.get $ASCIIonly + local.get $graphicOnly + call $strconv.appendEscapedRune + local.set $$t32.3 + local.set $$t32.2 + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t37 + i32.const 65533 + i32.eq + local.set $$t53 + local.get $$t53 + if + i32.const 9 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + ) + (func $$u8.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $$strconv.decimalSlice.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 18 + call_indirect 0 (type $$onFree) + ) + (func $strconv.bsearch16 (param $a.0 i32) (param $a.1 i32) (param $a.2 i32) (param $a.3 i32) (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + local.get $a.2 + local.set $$t0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $$t1 + local.get $$t2 + i32.sub + local.set $$t3 + local.get $$t3 + i64.const 1 + i32.wrap_i64 + i32.shr_s + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.add + local.set $$t5 + local.get $a.0 + call $runtime.Block.Retain + local.get $a.1 + i32.const 2 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load16_u + local.set $$t7 + local.get $$t7 + local.get $x + i32.lt_u + local.set $$t8 + local.get $$t8 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t9 + else + local.get $$t2 + end + end + local.set $$t2 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $$t0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t1 + else + local.get $$t5 + end + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t2 + local.get $$t1 + i32.lt_s + local.set $$t10 + local.get $$t10 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t9 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 5 + local.set $$current_block + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $strconv.bsearch32 (param $a.0 i32) (param $a.1 i32) (param $a.2 i32) (param $a.3 i32) (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + local.get $a.2 + local.set $$t0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $$t1 + local.get $$t2 + i32.sub + local.set $$t3 + local.get $$t3 + i64.const 1 + i32.wrap_i64 + i32.shr_s + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.add + local.set $$t5 + local.get $a.0 + call $runtime.Block.Retain + local.get $a.1 + i32.const 4 + local.get $$t5 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t7 + local.get $x + i32.lt_u + local.set $$t8 + local.get $$t8 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t9 + else + local.get $$t2 + end + end + local.set $$t2 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + local.get $$t0 + else + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + local.get $$t1 + else + local.get $$t5 + end + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t2 + local.get $$t1 + i32.lt_s + local.set $$t10 + local.get $$t10 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t9 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 5 + local.set $$current_block + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $strconv.formatBits (param $dst.0 i32) (param $dst.1 i32) (param $dst.2 i32) (param $dst.3 i32) (param $u i64) (param $base i32) (param $neg i32) (param $append_ i32) (result i32 i32 i32 i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$ret_0.3 i32) + (local $$ret_1.0 i32) + (local $$ret_1.1 i32) + (local $$ret_1.2 i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i64) + (local $$t4 i64) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i64) + (local $$t13 i64) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i64) + (local $$t18 i64) + (local $$t19 i64) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64.0 i32) + (local $$t64.1 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i64) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i64) + (local $$t74 i32) + (local $$t75 i32) + (local $$t76.0 i32) + (local $$t76.1 i32) + (local $$t77 i64) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i64) + (local $$t82 i64) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t84 i32) + (local $$t85 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88 i32) + (local $$t89 i64) + (local $$t90 i64) + (local $$t91.0 i32) + (local $$t91.1 i32) + (local $$t92 i64) + (local $$t93 i64) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96.0 i32) + (local $$t96.1 i32) + (local $$t97 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100 i32) + (local $$t101.0 i32) + (local $$t101.1 i32) + (local $$t102 i32) + (local $$t103.0 i32) + (local $$t103.1 i32) + (local $$t103.2 i32) + (local $$t103.3 i32) + (local $$t104.0 i32) + (local $$t104.1 i32) + (local $$t104.2 i32) + (local $$t104.3 i32) + (local $$t105.0 i32) + (local $$t105.1 i32) + (local $$t105.2 i32) + (local $$t105.3 i32) + (local $$t106.0 i32) + (local $$t106.1 i32) + (local $$t106.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_30 + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 0 + end + i32.const 0 + local.set $$current_block + local.get $base + i32.const 2 + i32.lt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 32823 + i32.const 41 + i32.const 32864 + i32.const 12 + call $$runtime.panic_ + end + i32.const 2 + local.set $$current_block + i32.const 81 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 65 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $neg + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $base + i32.const 36 + i32.gt_s + local.set $$t2 + local.get $$t2 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + i64.const 0 + local.get $u + i64.sub + local.set $$t3 + br $$Block_4 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i64) + local.get $u + else + local.get $$t3 + end + local.set $$t4 + i32.const 5 + local.set $$current_block + local.get $base + i32.const 10 + i32.eq + local.set $$t5 + local.get $$t5 + if + br $$Block_5 + else + br $$Block_7 + end + end + i32.const 6 + local.set $$current_block + i32.const 1 + if + br $$Block_10 + else + br $$Block_8 + end + end + local.get $$current_block + i32.const 16 + i32.eq + if(result i32) + local.get $$t6 + else + local.get $$current_block + i32.const 22 + i32.eq + if(result i32) + local.get $$t7 + else + local.get $$current_block + i32.const 18 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t9 + end + end + end + local.set $$t10 + i32.const 7 + local.set $$current_block + local.get $neg + if + br $$Block_26 + else + br $$Block_27 + end + end + i32.const 8 + local.set $$current_block + local.get $base + call $strconv.isPowerOfTwo + local.set $$t11 + local.get $$t11 + if + br $$Block_18 + else + br $$Block_19 + end + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t12 + end + local.set $$t13 + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t14 + end + local.set $$t15 + i32.const 9 + local.set $$current_block + local.get $$t13 + i32.wrap_i64 + local.set $$t16 + br $$Block_16 + end + i32.const 10 + local.set $$current_block + local.get $$t12 + i64.const 1000000000 + i64.div_u + local.set $$t17 + local.get $$t17 + i64.const 1000000000 + i64.mul + local.set $$t18 + local.get $$t12 + local.get $$t18 + i64.sub + local.set $$t19 + local.get $$t19 + i32.wrap_i64 + local.set $$t20 + br $$Block_13 + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t17 + end + local.set $$t12 + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t21 + end + local.set $$t14 + i32.const 11 + local.set $$current_block + local.get $$t12 + i64.const 1000000000 + i64.ge_u + local.set $$t22 + local.get $$t22 + if + i32.const 10 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 12 + local.set $$current_block + local.get $$t23 + i32.const 100 + i32.rem_u + local.set $$t24 + local.get $$t24 + i32.const 2 + i32.mul + local.set $$t25 + local.get $$t23 + i32.const 100 + i32.div_u + local.set $$t26 + local.get $$t27 + i32.const 2 + i32.sub + local.set $$t28 + local.get $$t28 + i32.const 1 + i32.add + local.set $$t29 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t29 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t25 + i32.const 1 + i32.add + local.set $$t31 + i32.const 32876 + local.get $$t31 + i32.add + i32.load8_u align=1 + local.set $$t32 + local.get $$t30.1 + local.get $$t32 + i32.store8 align=1 + local.get $$t28 + i32.const 0 + i32.add + local.set $$t33 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t33 + i32.mul + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t25 + i32.const 0 + i32.add + local.set $$t35 + i32.const 32876 + local.get $$t35 + i32.add + i32.load8_u align=1 + local.set $$t36 + local.get $$t34.1 + local.get $$t36 + i32.store8 align=1 + local.get $$t37 + i32.const 1 + i32.sub + local.set $$t38 + br $$Block_13 + end + i32.const 13 + local.set $$current_block + local.get $$t27 + i32.const 1 + i32.sub + local.set $$t21 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t21 + i32.mul + i32.add + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t23 + i32.const 2 + i32.mul + local.set $$t40 + local.get $$t40 + i32.const 1 + i32.add + local.set $$t41 + i32.const 32876 + local.get $$t41 + i32.add + i32.load8_u align=1 + local.set $$t42 + local.get $$t39.1 + local.get $$t42 + i32.store8 align=1 + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + local.get $$t14 + else + local.get $$t28 + end + local.set $$t27 + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + local.get $$t20 + else + local.get $$t26 + end + local.set $$t23 + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + i32.const 4 + else + local.get $$t38 + end + local.set $$t37 + i32.const 14 + local.set $$current_block + local.get $$t37 + i32.const 0 + i32.gt_s + local.set $$t43 + local.get $$t43 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t44 + i32.const 100 + i32.rem_u + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.mul + local.set $$t46 + local.get $$t44 + i32.const 100 + i32.div_u + local.set $$t47 + local.get $$t48 + i32.const 2 + i32.sub + local.set $$t49 + local.get $$t49 + i32.const 1 + i32.add + local.set $$t50 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t50 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t46 + i32.const 1 + i32.add + local.set $$t52 + i32.const 32876 + local.get $$t52 + i32.add + i32.load8_u align=1 + local.set $$t53 + local.get $$t51.1 + local.get $$t53 + i32.store8 align=1 + local.get $$t49 + i32.const 0 + i32.add + local.set $$t54 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t54 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t46 + i32.const 0 + i32.add + local.set $$t56 + i32.const 32876 + local.get $$t56 + i32.add + i32.load8_u align=1 + local.set $$t57 + local.get $$t55.1 + local.get $$t57 + i32.store8 align=1 + br $$Block_16 + end + i32.const 16 + local.set $$current_block + local.get $$t44 + i32.const 2 + i32.mul + local.set $$t58 + local.get $$t48 + i32.const 1 + i32.sub + local.set $$t6 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t6 + i32.mul + i32.add + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t58 + i32.const 1 + i32.add + local.set $$t60 + i32.const 32876 + local.get $$t60 + i32.add + i32.load8_u align=1 + local.set $$t61 + local.get $$t59.1 + local.get $$t61 + i32.store8 align=1 + local.get $$t44 + i32.const 10 + i32.ge_u + local.set $$t62 + local.get $$t62 + if + br $$Block_17 + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t15 + else + local.get $$t49 + end + local.set $$t48 + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t16 + else + local.get $$t47 + end + local.set $$t44 + i32.const 17 + local.set $$current_block + local.get $$t44 + i32.const 100 + i32.ge_u + local.set $$t63 + local.get $$t63 + if + i32.const 15 + local.set $$block_selector + br $$BlockDisp + else + i32.const 16 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 18 + local.set $$current_block + local.get $$t6 + i32.const 1 + i32.sub + local.set $$t8 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t8 + i32.mul + i32.add + local.set $$t64.1 + local.get $$t64.0 + call $runtime.Block.Release + local.set $$t64.0 + i32.const 32876 + local.get $$t58 + i32.add + i32.load8_u align=1 + local.set $$t65 + local.get $$t64.1 + local.get $$t65 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + local.get $base + local.set $$t66 + local.get $$t66 + call $math$bits.TrailingZeros + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t68 + i32.const 7 + i32.and + local.set $$t69 + local.get $base + i64.extend_i32_u + local.set $$t70 + local.get $base + local.set $$t71 + local.get $$t71 + i32.const 1 + i32.sub + local.set $$t72 + br $$Block_22 + end + i32.const 20 + local.set $$current_block + local.get $base + i64.extend_i32_u + local.set $$t73 + br $$Block_25 + end + i32.const 21 + local.set $$current_block + local.get $$t74 + i32.const 1 + i32.sub + local.set $$t75 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t75 + i32.mul + i32.add + local.set $$t76.1 + local.get $$t76.0 + call $runtime.Block.Release + local.set $$t76.0 + local.get $$t77 + i32.wrap_i64 + local.set $$t78 + local.get $$t78 + local.get $$t72 + i32.and + local.set $$t79 + i32.const 33076 + local.get $$t79 + i32.add + i32.load8_u align=1 + local.set $$t80 + local.get $$t76.1 + local.get $$t80 + i32.store8 align=1 + local.get $$t69 + i64.extend_i32_u + local.set $$t81 + local.get $$t77 + local.get $$t81 + i64.shr_u + local.set $$t82 + br $$Block_22 + end + i32.const 22 + local.set $$current_block + local.get $$t74 + i32.const 1 + i32.sub + local.set $$t7 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t7 + i32.mul + i32.add + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t77 + i32.wrap_i64 + local.set $$t84 + i32.const 33076 + local.get $$t84 + i32.add + i32.load8_u align=1 + local.set $$t85 + local.get $$t83.1 + local.get $$t85 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 19 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t82 + end + local.set $$t77 + local.get $$current_block + i32.const 19 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t75 + end + local.set $$t74 + i32.const 23 + local.set $$current_block + local.get $$t77 + local.get $$t70 + i64.ge_u + local.set $$t86 + local.get $$t86 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + i32.const 22 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 24 + local.set $$current_block + local.get $$t87 + i32.const 1 + i32.sub + local.set $$t88 + local.get $$t89 + local.get $$t73 + i64.div_u + local.set $$t90 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t88 + i32.mul + i32.add + local.set $$t91.1 + local.get $$t91.0 + call $runtime.Block.Release + local.set $$t91.0 + local.get $$t90 + local.get $$t73 + i64.mul + local.set $$t92 + local.get $$t89 + local.get $$t92 + i64.sub + local.set $$t93 + local.get $$t93 + i32.wrap_i64 + local.set $$t94 + i32.const 33076 + local.get $$t94 + i32.add + i32.load8_u align=1 + local.set $$t95 + local.get $$t91.1 + local.get $$t95 + i32.store8 align=1 + br $$Block_25 + end + i32.const 25 + local.set $$current_block + local.get $$t87 + i32.const 1 + i32.sub + local.set $$t9 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t9 + i32.mul + i32.add + local.set $$t96.1 + local.get $$t96.0 + call $runtime.Block.Release + local.set $$t96.0 + local.get $$t89 + i32.wrap_i64 + local.set $$t97 + i32.const 33076 + local.get $$t97 + i32.add + i32.load8_u align=1 + local.set $$t98 + local.get $$t96.1 + local.get $$t98 + i32.store8 align=1 + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 20 + i32.eq + if(result i64) + local.get $$t4 + else + local.get $$t90 + end + local.set $$t89 + local.get $$current_block + i32.const 20 + i32.eq + if(result i32) + i32.const 65 + else + local.get $$t88 + end + local.set $$t87 + i32.const 26 + local.set $$current_block + local.get $$t89 + local.get $$t73 + i64.ge_u + local.set $$t99 + local.get $$t99 + if + i32.const 24 + local.set $$block_selector + br $$BlockDisp + else + i32.const 25 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 27 + local.set $$current_block + local.get $$t10 + i32.const 1 + i32.sub + local.set $$t100 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t100 + i32.mul + i32.add + local.set $$t101.1 + local.get $$t101.0 + call $runtime.Block.Release + local.set $$t101.0 + local.get $$t101.1 + i32.const 45 + i32.store8 align=1 + br $$Block_27 + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + local.get $$t10 + else + local.get $$t100 + end + local.set $$t102 + i32.const 28 + local.set $$current_block + local.get $append_ + if + br $$Block_28 + else + br $$Block_29 + end + end + i32.const 29 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t102 + i32.mul + i32.add + i32.const 65 + local.get $$t102 + i32.sub + i32.const 65 + local.get $$t102 + i32.sub + local.set $$t103.3 + local.set $$t103.2 + local.set $$t103.1 + local.get $$t103.0 + call $runtime.Block.Release + local.set $$t103.0 + local.get $dst.0 + local.get $dst.1 + local.get $dst.2 + local.get $dst.3 + local.get $$t103.0 + local.get $$t103.1 + local.get $$t103.2 + local.get $$t103.3 + call $$u8.$slice.append + local.set $$t104.3 + local.set $$t104.2 + local.set $$t104.1 + local.get $$t104.0 + call $runtime.Block.Release + local.set $$t104.0 + local.get $$t104.0 + call $runtime.Block.Retain + local.get $$t104.1 + local.get $$t104.2 + local.get $$t104.3 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.set $$ret_1.2 + local.set $$ret_1.1 + local.get $$ret_1.0 + call $runtime.Block.Release + local.set $$ret_1.0 + br $$BlockFnBody + end + i32.const 30 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 1 + local.get $$t102 + i32.mul + i32.add + i32.const 65 + local.get $$t102 + i32.sub + i32.const 65 + local.get $$t102 + i32.sub + local.set $$t105.3 + local.set $$t105.2 + local.set $$t105.1 + local.get $$t105.0 + call $runtime.Block.Release + local.set $$t105.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t105.0 + local.get $$t105.1 + local.get $$t105.2 + call $$string.appendstr + local.set $$t106.2 + local.set $$t106.1 + local.get $$t106.0 + call $runtime.Block.Release + local.set $$t106.0 + i32.const 0 + i32.const 0 + i32.const 0 + i32.const 0 + local.set $$ret_0.3 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + local.get $$t106.0 + call $runtime.Block.Retain + local.get $$t106.1 + local.get $$t106.2 + local.set $$ret_1.2 + local.set $$ret_1.1 + local.get $$ret_1.0 + call $runtime.Block.Release + local.set $$ret_1.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.3 + local.get $$ret_1.0 + call $runtime.Block.Retain + local.get $$ret_1.1 + local.get $$ret_1.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$ret_1.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t64.0 + call $runtime.Block.Release + local.get $$t76.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + local.get $$t91.0 + call $runtime.Block.Release + local.get $$t96.0 + call $runtime.Block.Release + local.get $$t101.0 + call $runtime.Block.Release + local.get $$t103.0 + call $runtime.Block.Release + local.get $$t104.0 + call $runtime.Block.Release + local.get $$t105.0 + call $runtime.Block.Release + local.get $$t106.0 + call $runtime.Block.Release + ) + (func $strconv.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0.0 i32) + (local $$t1.0.1 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0.0 i32) + (local $$t2.0.1 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $strconv.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $strconv.init$guard + call $math.init + call $errors.init + call $math$bits.init + call $unicode$utf8.init + i32.const 0 + i32.const 33172 + i32.const 18 + call $errors.New + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0.1 + local.get $$t1.0.0 + call $runtime.Block.Release + local.set $$t1.0.0 + i32.const 14984 + local.get $$t1.0.0 + call $runtime.Block.Retain + i32.const 14984 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14984 + local.get $$t1.0.1 + i32.store offset=4 + i32.const 14984 + local.get $$t1.1 + i32.store offset=8 + i32.const 14984 + local.get $$t1.2 + i32.store offset=12 + i32.const 0 + i32.const 33190 + i32.const 14 + call $errors.New + local.set $$t2.2 + local.set $$t2.1 + local.set $$t2.0.1 + local.get $$t2.0.0 + call $runtime.Block.Release + local.set $$t2.0.0 + i32.const 15000 + local.get $$t2.0.0 + call $runtime.Block.Retain + i32.const 15000 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 15000 + local.get $$t2.0.1 + i32.store offset=4 + i32.const 15000 + local.get $$t2.1 + i32.store offset=8 + i32.const 15000 + local.get $$t2.2 + i32.store offset=12 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0.0 + call $runtime.Block.Release + local.get $$t2.0.0 + call $runtime.Block.Release + ) + (func $strconv.isInGraphicList (param $r i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $r + i32.const 65535 + i32.gt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $r + i32.const 65535 + i32.and + local.set $$t1 + i32.const 0 + i32.const 26408 + i32.const 2 + i32.const 0 + i32.mul + i32.add + i32.const 16 + i32.const 0 + i32.sub + i32.const 16 + i32.const 0 + i32.sub + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + local.get $$t2.3 + local.get $$t1 + call $strconv.bsearch16 + local.set $$t3 + local.get $$t3 + i32.const 16 + i32.lt_s + local.set $$t4 + local.get $$t4 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + i32.const 0 + i32.const 26408 + i32.const 2 + local.get $$t3 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load16_u + local.set $$t6 + local.get $$t1 + local.get $$t6 + i32.eq + local.set $$t7 + br $$Block_3 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t7 + end + local.set $$t8 + i32.const 4 + local.set $$current_block + local.get $$t8 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + ) + (func $strconv.isPowerOfTwo (param $x i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + i32.const 1 + i32.sub + local.set $$t0 + local.get $x + local.get $$t0 + i32.and + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $strconv.quoteWith (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $quote i32) (param $ASCIIonly i32) (param $graphicOnly i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t4.3 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + i32.const 3 + local.get $$t0 + i32.mul + local.set $$t1 + local.get $$t1 + i32.const 2 + i32.div_s + local.set $$t2 + local.get $$t2 + i32.const 1 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t2 + i32.const 0 + i32.const 1 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + i32.const 0 + local.get $$t2 + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.get $$t3.2 + local.get $$t3.3 + local.get $s.0 + local.get $s.1 + local.get $s.2 + local.get $quote + local.get $ASCIIonly + local.get $graphicOnly + call $strconv.appendQuotedWith + local.set $$t4.3 + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + i32.const 0 + i32.const 14784 + i32.const 0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $$string.appendstr + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + local.get $$t5.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + ) + (func $strconv.small (param $i i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + local.get $i + i32.const 10 + i32.lt_s + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $i + i32.const 1 + i32.add + local.set $$t1 + i32.const 0 + i32.const 33076 + local.get $i + i32.add + local.get $$t1 + local.get $i + i32.sub + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + local.get $$t2.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $i + i32.const 2 + i32.mul + local.set $$t3 + local.get $$t3 + i32.const 2 + i32.add + local.set $$t4 + local.get $i + i32.const 2 + i32.mul + local.set $$t5 + i32.const 0 + i32.const 32876 + local.get $$t5 + i32.add + local.get $$t4 + local.get $$t5 + i32.sub + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + local.get $$t6.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.BlitI32 (param $sprite.0 i32) (param $sprite.1 i32) (param $sprite.2 i32) (param $sprite.3 i32) (param $x i32) (param $y i32) (param $width i32) (param $height i32) (param $flags i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $sprite.0 + local.get $sprite.1 + local.get $sprite.2 + local.get $sprite.3 + call $$syscall/wasm4.__linkname__slice_data_ptr + local.set $$t0 + local.get $$t0 + local.get $x + local.get $y + local.get $width + local.get $height + local.get $flags + call $syscall$wasm4.__import__blit + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.DiskR (param $data.0 i32) (param $data.1 i32) (param $data.2 i32) (param $data.3 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $data.0 + local.get $data.1 + local.get $data.2 + local.get $data.3 + call $$syscall/wasm4.__linkname__slice_data_ptr + local.set $$t0 + local.get $data.2 + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $$t0 + local.get $$t2 + call $syscall$wasm4.__import__diskr + local.set $$t3 + local.get $$t3 + local.set $$t4 + local.get $$t4 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $syscall$wasm4.DiskW (param $data.0 i32) (param $data.1 i32) (param $data.2 i32) (param $data.3 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $data.0 + local.get $data.1 + local.get $data.2 + local.get $data.3 + call $$syscall/wasm4.__linkname__slice_data_ptr + local.set $$t0 + local.get $data.2 + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $$t0 + local.get $$t2 + call $syscall$wasm4.__import__diskw + local.set $$t3 + local.get $$t3 + local.set $$t4 + local.get $$t4 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $syscall$wasm4.GetGamePad1 (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 22 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.RectI32 (param $x i32) (param $y i32) (param $width i32) (param $height i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x + local.get $y + local.get $width + local.get $height + call $syscall$wasm4.__import__rect + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.SetDrawColorsU16 (param $x i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 20 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + local.get $x + i32.store16 + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.SetPalette0 (param $a i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 4 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $a + local.set $$t2 + local.get $$t1.1 + local.get $$t2 + i32.store + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.SetPalette1 (param $a i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 8 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $a + local.set $$t2 + local.get $$t1.1 + local.get $$t2 + i32.store + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.SetPalette2 (param $a i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 12 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $a + local.set $$t2 + local.get $$t1.1 + local.get $$t2 + i32.store + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.SetPalette3 (param $a i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 16 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $a + local.set $$t2 + local.get $$t1.1 + local.get $$t2 + i32.store + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.Text (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (param $x i32) (param $y i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $s.0 + local.get $s.1 + local.get $s.2 + call $$syscall/wasm4.__linkname__string_data_ptr + local.set $$t0 + local.get $s.2 + local.set $$t1 + local.get $$t1 + local.set $$t2 + local.get $$t0 + local.get $$t2 + local.get $x + local.get $y + call $syscall$wasm4.__import__textUtf8 + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.Tone (param $frequency i32) (param $duration i32) (param $volume i32) (param $flags i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $frequency + local.set $$t0 + local.get $duration + local.set $$t1 + local.get $volume + local.set $$t2 + local.get $flags + local.set $$t3 + local.get $$t0 + local.get $$t1 + local.get $$t2 + local.get $$t3 + call $syscall$wasm4.__import__tone + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $syscall$wasm4.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $syscall$wasm4.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $unicode$utf8.DecodeRuneInString (param $s.0 i32) (param $s.1 i32) (param $s.2 i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 + end + i32.const 0 + local.set $$current_block + local.get $s.2 + local.set $$t0 + local.get $$t0 + i32.const 1 + i32.lt_s + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $s.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$t3 + i32.const 0 + i32.const 30848 + i32.const 1 + local.get $$t3 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load8_u align=1 + local.set $$t5 + local.get $$t5 + i32.const 240 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t5 + local.set $$t7 + local.get $$t7 + i64.const 31 + i32.wrap_i64 + i32.shl + local.set $$t8 + local.get $$t8 + i64.const 31 + i32.wrap_i64 + i32.shr_s + local.set $$t9 + local.get $s.1 + i32.const 0 + i32.add + i32.load8_u align=1 + local.set $$t10 + local.get $$t10 + local.set $$t11 + local.get $$t11 + local.get $$t9 + i32.const -1 + i32.xor + i32.and + local.set $$t12 + i32.const 65533 + local.get $$t9 + i32.and + local.set $$t13 + local.get $$t12 + local.get $$t13 + i32.or + local.set $$t14 + local.get $$t14 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t5 + i32.const 7 + i32.and + local.set $$t15 + local.get $$t15 + local.set $$t16 + i32.const 18 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 2 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t5 + i64.const 4 + i32.wrap_i64 + i32.shr_u + local.set $$t18 + local.get $$t18 + local.set $$t19 + i32.const 0 + i32.const 30816 + i32.const 2 + local.get $$t19 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load8_u align=1 + local.get $$t20.1 + i32.load8_u offset=1 align=1 + local.set $$t21.1 + local.set $$t21.0 + local.get $$t17.1 + local.get $$t21.0 + i32.store8 align=1 + local.get $$t17.1 + local.get $$t21.1 + i32.store8 offset=1 align=1 + local.get $$t0 + local.get $$t16 + i32.lt_s + local.set $$t22 + local.get $$t22 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $s.1 + i32.const 1 + i32.add + i32.load8_u align=1 + local.set $$t23 + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 0 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load8_u align=1 + local.set $$t25 + local.get $$t23 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + br $$Block_6 + else + br $$Block_8 + end + end + i32.const 7 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t16 + i32.const 2 + i32.le_s + local.set $$t27 + local.get $$t27 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t17.0 + call $runtime.Block.Retain + local.get $$t17.1 + i32.const 1 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load8_u align=1 + local.set $$t29 + local.get $$t29 + local.get $$t23 + i32.lt_u + local.set $$t30 + local.get $$t30 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t2 + i32.const 31 + i32.and + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t32 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t33 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t33 + local.get $$t35 + i32.or + local.set $$t36 + local.get $$t36 + local.set $$ret_0 + i32.const 2 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $s.1 + i32.const 2 + i32.add + i32.load8_u align=1 + local.set $$t37 + local.get $$t37 + i32.const 128 + i32.lt_u + local.set $$t38 + local.get $$t38 + if + br $$Block_11 + else + br $$Block_13 + end + end + i32.const 12 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t16 + i32.const 3 + i32.le_s + local.set $$t39 + local.get $$t39 + if + br $$Block_14 + else + br $$Block_15 + end + end + i32.const 14 + local.set $$current_block + i32.const 191 + local.get $$t37 + i32.lt_u + local.set $$t40 + local.get $$t40 + if + i32.const 12 + local.set $$block_selector + br $$BlockDisp + else + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t2 + i32.const 15 + i32.and + local.set $$t41 + local.get $$t41 + local.set $$t42 + local.get $$t42 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t43 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t44 + local.get $$t44 + local.set $$t45 + local.get $$t45 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t46 + local.get $$t43 + local.get $$t46 + i32.or + local.set $$t47 + local.get $$t37 + i32.const 63 + i32.and + local.set $$t48 + local.get $$t48 + local.set $$t49 + local.get $$t47 + local.get $$t49 + i32.or + local.set $$t50 + local.get $$t50 + local.set $$ret_0 + i32.const 3 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 16 + local.set $$current_block + local.get $s.1 + i32.const 3 + i32.add + i32.load8_u align=1 + local.set $$t51 + local.get $$t51 + i32.const 128 + i32.lt_u + local.set $$t52 + local.get $$t52 + if + br $$Block_16 + else + br $$Block_18 + end + end + i32.const 17 + local.set $$current_block + i32.const 65533 + local.set $$ret_0 + i32.const 1 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t2 + i32.const 7 + i32.and + local.set $$t53 + local.get $$t53 + local.set $$t54 + local.get $$t54 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t55 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t56 + local.get $$t56 + local.set $$t57 + local.get $$t57 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t58 + local.get $$t55 + local.get $$t58 + i32.or + local.set $$t59 + local.get $$t37 + i32.const 63 + i32.and + local.set $$t60 + local.get $$t60 + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t59 + local.get $$t62 + i32.or + local.set $$t63 + local.get $$t51 + i32.const 63 + i32.and + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t63 + local.get $$t65 + i32.or + local.set $$t66 + local.get $$t66 + local.set $$ret_0 + i32.const 4 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 19 + local.set $$current_block + i32.const 191 + local.get $$t51 + i32.lt_u + local.set $$t67 + local.get $$t67 + if + i32.const 17 + local.set $$block_selector + br $$BlockDisp + else + i32.const 18 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + ) + (func $unicode$utf8.EncodeRune (param $p.0 i32) (param $p.1 i32) (param $p.2 i32) (param $p.3 i32) (param $r i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 0 + end + i32.const 0 + local.set $$current_block + local.get $r + local.set $$t0 + local.get $$t0 + i32.const 127 + i32.le_u + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $r + i32.const 255 + i32.and + local.set $$t3 + local.get $$t2.1 + local.get $$t3 + i32.store8 align=1 + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load8_u align=1 + local.set $$t5 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t7 + local.get $$t7 + i32.const 255 + i32.and + local.set $$t8 + i32.const 192 + local.get $$t8 + i32.or + local.set $$t9 + local.get $$t6.1 + local.get $$t9 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $r + i32.const 255 + i32.and + local.set $$t11 + local.get $$t11 + i32.const 63 + i32.and + local.set $$t12 + i32.const 128 + local.get $$t12 + i32.or + local.set $$t13 + local.get $$t10.1 + local.get $$t13 + i32.store8 align=1 + i32.const 2 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + local.get $$t0 + i32.const 2047 + i32.le_u + local.set $$t14 + local.get $$t14 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_4 + end + end + i32.const 4 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load8_u align=1 + local.set $$t16 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + i32.const 65533 + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t18 + local.get $$t18 + i32.const 255 + i32.and + local.set $$t19 + i32.const 224 + local.get $$t19 + i32.or + local.set $$t20 + local.get $$t17.1 + local.get $$t20 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + i32.const 65533 + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t22 + local.get $$t22 + i32.const 255 + i32.and + local.set $$t23 + local.get $$t23 + i32.const 63 + i32.and + local.set $$t24 + i32.const 128 + local.get $$t24 + i32.or + local.set $$t25 + local.get $$t21.1 + local.get $$t25 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + i32.const 65533 + i32.const 255 + i32.and + local.set $$t27 + local.get $$t27 + i32.const 63 + i32.and + local.set $$t28 + i32.const 128 + local.get $$t28 + i32.or + local.set $$t29 + local.get $$t26.1 + local.get $$t29 + i32.store8 align=1 + i32.const 3 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + local.get $$t0 + i32.const 1114111 + i32.gt_u + local.set $$t30 + local.get $$t30 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_6 + end + end + i32.const 6 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t31.1 + i32.load8_u align=1 + local.set $$t32 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t34 + local.get $$t34 + i32.const 255 + i32.and + local.set $$t35 + i32.const 224 + local.get $$t35 + i32.or + local.set $$t36 + local.get $$t33.1 + local.get $$t36 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t38 + local.get $$t38 + i32.const 255 + i32.and + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + i32.const 128 + local.get $$t40 + i32.or + local.set $$t41 + local.get $$t37.1 + local.get $$t41 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $r + i32.const 255 + i32.and + local.set $$t43 + local.get $$t43 + i32.const 63 + i32.and + local.set $$t44 + i32.const 128 + local.get $$t44 + i32.or + local.set $$t45 + local.get $$t42.1 + local.get $$t45 + i32.store8 align=1 + i32.const 3 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + i32.const 55296 + local.get $$t0 + i32.le_u + local.set $$t46 + local.get $$t46 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 8 + local.set $$current_block + local.get $$t0 + i32.const 65535 + i32.le_u + local.set $$t47 + local.get $$t47 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + local.get $$t0 + i32.const 57343 + i32.le_u + local.set $$t48 + br $$Block_9 + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t48 + end + local.set $$t49 + i32.const 10 + local.set $$current_block + local.get $$t49 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 11 + local.set $$current_block + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.1 + i32.load8_u align=1 + local.set $$t51 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $r + i64.const 18 + i32.wrap_i64 + i32.shr_s + local.set $$t53 + local.get $$t53 + i32.const 255 + i32.and + local.set $$t54 + i32.const 240 + local.get $$t54 + i32.or + local.set $$t55 + local.get $$t52.1 + local.get $$t55 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $r + i64.const 12 + i32.wrap_i64 + i32.shr_s + local.set $$t57 + local.get $$t57 + i32.const 255 + i32.and + local.set $$t58 + local.get $$t58 + i32.const 63 + i32.and + local.set $$t59 + i32.const 128 + local.get $$t59 + i32.or + local.set $$t60 + local.get $$t56.1 + local.get $$t60 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $r + i64.const 6 + i32.wrap_i64 + i32.shr_s + local.set $$t62 + local.get $$t62 + i32.const 255 + i32.and + local.set $$t63 + local.get $$t63 + i32.const 63 + i32.and + local.set $$t64 + i32.const 128 + local.get $$t64 + i32.or + local.set $$t65 + local.get $$t61.1 + local.get $$t65 + i32.store8 align=1 + local.get $p.0 + call $runtime.Block.Retain + local.get $p.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $r + i32.const 255 + i32.and + local.set $$t67 + local.get $$t67 + i32.const 63 + i32.and + local.set $$t68 + i32.const 128 + local.get $$t68 + i32.or + local.set $$t69 + local.get $$t66.1 + local.get $$t69 + i32.store8 align=1 + i32.const 4 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + ) + (func $unicode$utf8.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $unicode$utf8.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $unicode$utf8.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $w4teris.Start (export "start") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 14212841 + call $syscall$wasm4.SetPalette0 + i32.const 5002858 + call $syscall$wasm4.SetPalette2 + i32.const 3028032 + call $syscall$wasm4.SetPalette3 + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + local.get $$t1.1 + local.get $$t1.2 + local.get $$t1.3 + call $syscall$wasm4.DiskR + local.set $$t2 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load8_u align=1 + local.set $$t4 + local.get $$t4 + local.set $$t5 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load8_u align=1 + local.set $$t7 + local.get $$t7 + local.set $$t8 + local.get $$t8 + i64.const 8 + i32.wrap_i64 + i32.shl + local.set $$t9 + local.get $$t5 + local.get $$t9 + i32.or + local.set $$t10 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.load8_u align=1 + local.set $$t12 + local.get $$t12 + local.set $$t13 + local.get $$t13 + i64.const 16 + i32.wrap_i64 + i32.shl + local.set $$t14 + local.get $$t10 + local.get $$t14 + i32.or + local.set $$t15 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load8_u align=1 + local.set $$t17 + local.get $$t17 + local.set $$t18 + local.get $$t18 + i64.const 24 + i32.wrap_i64 + i32.shl + local.set $$t19 + local.get $$t15 + local.get $$t19 + i32.or + local.set $$t20 + local.get $$t20 + local.set $$t21 + i32.const 31184 + local.get $$t21 + i32.store + call $w4teris.nextPiece + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + ) + (func $w4teris.Update (export "update") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t48.2 i32) + (local $$t48.3 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t54.2 i32) + (local $$t54.3 i32) + (local $$t55 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71 i64) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74 i32) + (local $$t75 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96 i32) + (local $$t97 i32) + (local $$t98 i32) + (local $$t99.0 i32) + (local $$t99.1 i32) + (local $$t99.2 i32) + (local $$t99.3 i32) + (local $$t100 i32) + (local $$t101 i32) + (local $$t102.0 i32) + (local $$t102.1 i32) + (local $$t102.2 i32) + (local $$t102.3 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106.0 i32) + (local $$t106.1 i32) + (local $$t106.2 i32) + (local $$t107 i32) + (local $$t108 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t109.2 i32) + (local $$t110 i32) + (local $$t111 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t112.2 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116 i32) + (local $$t117 i32) + (local $$t118.0 i32) + (local $$t118.1 i32) + (local $$t118.2 i32) + (local $$t118.3 i32) + (local $$t119 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_55 + block $$Block_54 + block $$Block_53 + block $$Block_52 + block $$Block_51 + block $$Block_50 + block $$Block_49 + block $$Block_48 + block $$Block_47 + block $$Block_46 + block $$Block_45 + block $$Block_44 + block $$Block_43 + block $$Block_42 + block $$Block_41 + block $$Block_40 + block $$Block_39 + block $$Block_38 + block $$Block_37 + block $$Block_36 + block $$Block_35 + block $$Block_34 + block $$Block_33 + block $$Block_32 + block $$Block_31 + block $$Block_30 + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 0 + end + i32.const 0 + local.set $$current_block + call $syscall$wasm4.GetGamePad1 + local.set $$t0 + i32.const 31412 + i32.load8_u align=1 + local.set $$t1 + local.get $$t0 + local.get $$t1 + i32.xor + local.set $$t2 + local.get $$t0 + local.get $$t2 + i32.and + local.set $$t3 + i32.const 31412 + local.get $$t0 + i32.store8 align=1 + i32.const 31388 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.eq + i32.eqz + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 31388 + i32.load + local.set $$t6 + local.get $$t6 + i32.const 16 + i32.rem_s + local.set $$t7 + local.get $$t7 + i32.const 0 + i32.eq + local.set $$t8 + local.get $$t8 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + i32.const 3 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 0 + i32.const 16 + i32.const 160 + call $syscall$wasm4.RectI32 + i32.const 96 + i32.const 0 + i32.const 64 + i32.const 160 + call $syscall$wasm4.RectI32 + i32.const 4 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 16 + i32.const 0 + i32.const 1 + i32.const 160 + call $syscall$wasm4.RectI32 + i32.const 95 + i32.const 0 + i32.const 1 + i32.const 160 + call $syscall$wasm4.RectI32 + i32.const 31396 + i32.load8_u align=1 + local.set $$t9 + local.get $$t9 + if + br $$Block_31 + else + br $$Block_32 + end + end + i32.const 3 + local.set $$current_block + i32.const 31396 + i32.load8_u align=1 + local.set $$t10 + local.get $$t10 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 4 + local.set $$current_block + i32.const 35389580 + i32.const 4104 + i32.const 100 + i32.const 3 + call $syscall$wasm4.Tone + br $$Block_4 + end + i32.const 5 + local.set $$current_block + i32.const 31388 + i32.load + local.set $$t11 + local.get $$t11 + i32.const 1 + i32.sub + local.set $$t12 + i32.const 31388 + local.get $$t12 + i32.store + i32.const 31388 + i32.load + local.set $$t13 + local.get $$t13 + i32.const 0 + i32.eq + local.set $$t14 + local.get $$t14 + if + br $$Block_5 + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + call $w4teris.clearFilledRows + i32.const 31392 + i32.const 0 + i32.store + call $w4teris.nextPiece + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + i32.const 7 + local.set $$current_block + i32.const 31400 + i32.load + local.set $$t15 + local.get $$t15 + i32.const 80 + i32.lt_s + local.set $$t16 + local.get $$t16 + if + br $$Block_8 + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + local.get $$t3 + i32.const 67 + i32.and + local.set $$t17 + local.get $$t17 + i32.const 0 + i32.eq + i32.eqz + local.set $$t18 + local.get $$t18 + if + br $$Block_9 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + i32.const 31400 + i32.load + local.set $$t19 + local.get $$t19 + i32.const 1 + i32.add + local.set $$t20 + i32.const 31400 + local.get $$t20 + i32.store + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + i32.const 10 + local.set $$current_block + local.get $$t3 + i32.const 2 + i32.and + local.set $$t21 + local.get $$t21 + i32.const 0 + i32.eq + i32.eqz + local.set $$t22 + local.get $$t22 + if + br $$Block_11 + else + br $$Block_12 + end + end + i32.const 11 + local.set $$current_block + local.get $$t3 + i32.const 128 + i32.and + local.set $$t23 + local.get $$t23 + i32.const 0 + i32.eq + i32.eqz + local.set $$t24 + local.get $$t24 + if + br $$Block_16 + else + br $$Block_15 + end + end + i32.const 12 + local.set $$current_block + i32.const -1 + call $w4teris.spinPiece + local.set $$t25 + local.get $$t25 + i32.const 0 + i32.eq + local.set $$t26 + local.get $$t26 + if + br $$Block_13 + else + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 1 + call $w4teris.spinPiece + local.set $$t27 + local.get $$t27 + i32.const 0 + i32.eq + local.set $$t28 + local.get $$t28 + if + br $$Block_14 + else + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 14 + local.set $$current_block + i32.const 16384210 + i32.const 8 + i32.const 100 + i32.const 8 + call $syscall$wasm4.Tone + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + i32.const 15 + local.set $$current_block + i32.const 16384210 + i32.const 8 + i32.const 100 + i32.const 8 + call $syscall$wasm4.Tone + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $$t0 + i32.const 48 + i32.and + local.set $$t29 + local.get $$t29 + i32.const 0 + i32.eq + i32.eqz + local.set $$t30 + local.get $$t30 + if + br $$Block_17 + else + br $$Block_19 + end + end + i32.const 17 + local.set $$current_block + call $w4teris.stepGravity + local.set $$t31 + local.get $$t31 + i32.const 0 + i32.eq + local.set $$t32 + local.get $$t32 + if + i32.const 17 + local.set $$block_selector + br $$BlockDisp + else + i32.const 16 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 18 + local.set $$current_block + i32.const 31472 + i32.load + local.set $$t33 + local.get $$t33 + i32.const 0 + i32.eq + i32.eqz + local.set $$t34 + local.get $$t34 + if + br $$Block_20 + else + br $$Block_22 + end + end + i32.const 19 + local.set $$current_block + i32.const 31404 + i32.load + local.set $$t35 + local.get $$t35 + i32.const 0 + i32.eq + i32.eqz + local.set $$t36 + local.get $$t36 + if + br $$Block_27 + else + br $$Block_28 + end + end + i32.const 20 + local.set $$current_block + i32.const 31408 + i32.const 0 + i32.store + i32.const 31472 + i32.const 0 + i32.store + i32.const 19 + local.set $$block_selector + br $$BlockDisp + end + i32.const 21 + local.set $$current_block + i32.const 31472 + i32.load + local.set $$t37 + local.get $$t37 + i32.const 1 + i32.sub + local.set $$t38 + i32.const 31472 + local.get $$t38 + i32.store + br $$Block_21 + end + i32.const 22 + local.set $$current_block + i32.const 31408 + i32.const 1 + i32.store + i32.const 19 + local.set $$block_selector + br $$BlockDisp + end + i32.const 23 + local.set $$current_block + i32.const 31472 + i32.const 18 + i32.store + i32.const 31408 + i32.load + local.set $$t39 + local.get $$t39 + i32.const 0 + i32.eq + i32.eqz + local.set $$t40 + local.get $$t40 + if + br $$Block_23 + else + br $$Block_24 + end + end + i32.const 24 + local.set $$current_block + i32.const 31472 + i32.const 6 + i32.store + br $$Block_24 + end + i32.const 25 + local.set $$current_block + local.get $$t0 + i32.const 16 + i32.and + local.set $$t41 + local.get $$t41 + i32.const 0 + i32.eq + i32.eqz + local.set $$t42 + local.get $$t42 + if + br $$Block_25 + else + br $$Block_26 + end + end + i32.const 26 + local.set $$current_block + i32.const -1 + i32.const 0 + call $w4teris.movePiece + local.set $$t43 + i32.const 22 + local.set $$block_selector + br $$BlockDisp + end + i32.const 27 + local.set $$current_block + i32.const 1 + i32.const 0 + call $w4teris.movePiece + local.set $$t44 + i32.const 22 + local.set $$block_selector + br $$BlockDisp + end + i32.const 28 + local.set $$current_block + i32.const 31404 + i32.load + local.set $$t45 + local.get $$t45 + i32.const 1 + i32.sub + local.set $$t46 + i32.const 31404 + local.get $$t46 + i32.store + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + i32.const 29 + local.set $$current_block + i32.const 31416 + i32.load + local.set $$t47 + i32.const 31120 + i32.load + call $runtime.Block.Retain + i32.const 31120 + i32.load offset=4 + i32.const 31120 + i32.load offset=8 + i32.const 31120 + i32.load offset=12 + local.set $$t48.3 + local.set $$t48.2 + local.set $$t48.1 + local.get $$t48.0 + call $runtime.Block.Release + local.set $$t48.0 + local.get $$t48.2 + local.set $$t49 + local.get $$t49 + local.set $$t50 + local.get $$t50 + i32.const 1 + i32.sub + local.set $$t51 + local.get $$t47 + local.get $$t51 + i32.ge_s + local.set $$t52 + local.get $$t52 + if + br $$Block_29 + else + br $$Block_30 + end + end + i32.const 30 + local.set $$current_block + br $$Block_30 + end + local.get $$current_block + i32.const 29 + i32.eq + if(result i32) + local.get $$t47 + else + local.get $$t51 + end + local.set $$t53 + i32.const 31 + local.set $$current_block + i32.const 31120 + i32.load + call $runtime.Block.Retain + i32.const 31120 + i32.load offset=4 + i32.const 31120 + i32.load offset=8 + i32.const 31120 + i32.load offset=12 + local.set $$t54.3 + local.set $$t54.2 + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t53 + local.set $$t55 + local.get $$t54.0 + call $runtime.Block.Retain + local.get $$t54.1 + i32.const 4 + local.get $$t55 + i32.mul + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $$t56.1 + i32.load + local.set $$t57 + i32.const 31404 + local.get $$t57 + i32.store + call $w4teris.stepGravity + local.set $$t58 + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + i32.const 32 + local.set $$current_block + i32.const 31400 + i32.load + local.set $$t59 + i32.const 2 + local.get $$t59 + i32.mul + local.set $$t60 + i32.const 4 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 34939 + i32.const 9 + i32.const 20 + i32.const 64 + call $syscall$wasm4.Text + i32.const 0 + i32.const 34948 + i32.const 8 + i32.const 20 + i32.const 74 + call $syscall$wasm4.Text + local.get $$t60 + i32.const 160 + i32.ge_s + local.set $$t61 + local.get $$t61 + if + br $$Block_34 + else + br $$Block_32 + end + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$current_block + i32.const 32 + i32.eq + if(result i32) + local.get $$t60 + else + local.get $$current_block + i32.const 35 + i32.eq + if(result i32) + local.get $$t60 + else + local.get $$t60 + end + end + end + local.set $$t62 + i32.const 33 + local.set $$current_block + br $$Block_39 + end + i32.const 34 + local.set $$current_block + i32.const 31396 + i32.const 0 + i32.store8 align=1 + i32.const 31416 + i32.const 0 + i32.store + i32.const 31476 + i32.const 0 + i32.store + i32.const 31420 + i32.const 0 + i32.store + call $w4teris.nextPiece + br $$Block_36 + end + i32.const 35 + local.set $$current_block + local.get $$t3 + i32.const 1 + i32.and + local.set $$t63 + local.get $$t63 + i32.const 0 + i32.eq + i32.eqz + local.set $$t64 + local.get $$t64 + if + i32.const 34 + local.set $$block_selector + br $$BlockDisp + else + i32.const 33 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 36 + local.set $$current_block + i32.const 0 + i32.const 31188 + i32.const 1 + local.get $$t65 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.const 0 + i32.store8 align=1 + local.get $$t65 + i32.const 1 + i32.add + local.set $$t67 + br $$Block_36 + end + local.get $$current_block + i32.const 34 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t67 + end + local.set $$t65 + i32.const 37 + local.set $$current_block + local.get $$t65 + i32.const 200 + i32.lt_s + local.set $$t68 + local.get $$t68 + if + i32.const 36 + local.set $$block_selector + br $$BlockDisp + else + i32.const 33 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 38 + local.set $$current_block + i32.const 31392 + i32.load + local.set $$t69 + local.get $$t70 + i64.extend_i32_u + local.set $$t71 + local.get $$t69 + local.get $$t71 + i32.wrap_i64 + i32.shr_s + local.set $$t72 + local.get $$t72 + i32.const 1 + i32.and + local.set $$t73 + local.get $$t73 + i32.const 0 + i32.eq + i32.eqz + local.set $$t74 + local.get $$t74 + if + br $$Block_40 + else + br $$Block_41 + end + end + i32.const 39 + local.set $$current_block + i32.const 31396 + i32.load8_u align=1 + local.set $$t75 + local.get $$t75 + if + br $$Block_51 + else + br $$Block_50 + end + end + local.get $$current_block + i32.const 33 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t76 + end + local.set $$t70 + i32.const 40 + local.set $$current_block + local.get $$t70 + i32.const 20 + i32.lt_s + local.set $$t77 + local.get $$t77 + if + i32.const 38 + local.set $$block_selector + br $$BlockDisp + else + i32.const 39 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 41 + local.set $$current_block + i32.const 31388 + i32.load + local.set $$t78 + local.get $$t78 + local.set $$t79 + local.get $$t79 + i64.const 3 + i32.wrap_i64 + i32.shr_u + local.set $$t80 + local.get $$t80 + i32.const 1 + i32.and + local.set $$t81 + local.get $$t81 + i32.const 0 + i32.eq + i32.eqz + local.set $$t82 + br $$Block_41 + end + local.get $$current_block + i32.const 38 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t82 + end + local.set $$t83 + i32.const 42 + local.set $$current_block + local.get $$t83 + if + br $$Block_42 + else + br $$Block_44 + end + end + i32.const 43 + local.set $$current_block + i32.const 66 + call $syscall$wasm4.SetDrawColorsU16 + br $$Block_43 + end + i32.const 44 + local.set $$current_block + br $$Block_47 + end + i32.const 45 + local.set $$current_block + i32.const 67 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 44 + local.set $$block_selector + br $$BlockDisp + end + i32.const 46 + local.set $$current_block + local.get $$t70 + i32.const 10 + i32.mul + local.set $$t84 + local.get $$t84 + local.get $$t85 + i32.add + local.set $$t86 + local.get $$t86 + local.set $$t87 + i32.const 0 + i32.const 31188 + i32.const 1 + local.get $$t87 + i32.mul + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.load8_u align=1 + local.set $$t89 + local.get $$t89 + i32.const 0 + i32.eq + i32.eqz + local.set $$t90 + local.get $$t90 + if + br $$Block_48 + else + br $$Block_49 + end + end + i32.const 47 + local.set $$current_block + local.get $$t70 + i32.const 1 + i32.add + local.set $$t76 + i32.const 40 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 44 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t91 + end + local.set $$t85 + i32.const 48 + local.set $$current_block + local.get $$t85 + i32.const 10 + i32.lt_s + local.set $$t92 + local.get $$t92 + if + i32.const 46 + local.set $$block_selector + br $$BlockDisp + else + i32.const 47 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 49 + local.set $$current_block + local.get $$t89 + i32.const 1 + i32.sub + i32.const 255 + i32.and + local.set $$t93 + local.get $$t93 + local.set $$t94 + i32.const 8 + local.get $$t85 + i32.mul + local.set $$t95 + i32.const 8 + local.get $$t70 + i32.mul + local.set $$t96 + local.get $$t96 + local.get $$t62 + i32.add + local.set $$t97 + local.get $$t94 + local.get $$t95 + local.get $$t97 + call $w4teris.drawBlock + br $$Block_49 + end + i32.const 50 + local.set $$current_block + local.get $$t85 + i32.const 1 + i32.add + local.set $$t91 + i32.const 48 + local.set $$block_selector + br $$BlockDisp + end + i32.const 51 + local.set $$current_block + i32.const 65 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 31424 + i32.load + local.set $$t98 + i32.const 31152 + i32.load + call $runtime.Block.Retain + i32.const 31152 + i32.load offset=4 + i32.const 31152 + i32.load offset=8 + i32.const 31152 + i32.load offset=12 + local.set $$t99.3 + local.set $$t99.2 + local.set $$t99.1 + local.get $$t99.0 + call $runtime.Block.Release + local.set $$t99.0 + i32.const 31424 + i32.load + local.set $$t100 + i32.const 8 + local.get $$t100 + i32.mul + local.set $$t101 + local.get $$t99.0 + call $runtime.Block.Retain + local.get $$t99.1 + i32.const 4 + local.get $$t101 + i32.mul + i32.add + local.get $$t99.2 + local.get $$t101 + i32.sub + local.get $$t99.3 + local.get $$t101 + i32.sub + local.set $$t102.3 + local.set $$t102.2 + local.set $$t102.1 + local.get $$t102.0 + call $runtime.Block.Release + local.set $$t102.0 + i32.const 13 + i32.const 14 + local.get $$t98 + local.get $$t102.0 + local.get $$t102.1 + local.get $$t102.2 + local.get $$t102.3 + call $w4teris.drawPiece + br $$Block_51 + end + i32.const 52 + local.set $$current_block + i32.const 4 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 34956 + i32.const 5 + i32.const 104 + i32.const 16 + call $syscall$wasm4.Text + i32.const 0 + i32.const 34961 + i32.const 5 + i32.const 104 + i32.const 40 + call $syscall$wasm4.Text + i32.const 0 + i32.const 34966 + i32.const 4 + i32.const 104 + i32.const 64 + call $syscall$wasm4.Text + i32.const 1 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 34970 + i32.const 7 + i32.const 100 + i32.const 150 + call $syscall$wasm4.Text + i32.const 31416 + i32.load + local.set $$t103 + local.get $$t103 + i32.const 1 + i32.add + local.set $$t104 + local.get $$t104 + local.set $$t105 + local.get $$t105 + call $strconv.Itoa + local.set $$t106.2 + local.set $$t106.1 + local.get $$t106.0 + call $runtime.Block.Release + local.set $$t106.0 + local.get $$t106.0 + local.get $$t106.1 + local.get $$t106.2 + i32.const 104 + i32.const 26 + call $syscall$wasm4.Text + i32.const 31476 + i32.load + local.set $$t107 + local.get $$t107 + local.set $$t108 + local.get $$t108 + call $strconv.Itoa + local.set $$t109.2 + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.0 + local.get $$t109.1 + local.get $$t109.2 + i32.const 104 + i32.const 50 + call $syscall$wasm4.Text + i32.const 31184 + i32.load + local.set $$t110 + local.get $$t110 + local.set $$t111 + local.get $$t111 + call $strconv.Itoa + local.set $$t112.2 + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.0 + local.get $$t112.1 + local.get $$t112.2 + i32.const 104 + i32.const 74 + call $syscall$wasm4.Text + i32.const 31388 + i32.load + local.set $$t113 + local.get $$t113 + i32.const 0 + i32.eq + local.set $$t114 + local.get $$t114 + if + br $$Block_54 + else + br $$Block_53 + end + end + i32.const 53 + local.set $$current_block + i32.const 66 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 31428 + i32.load + local.set $$t115 + i32.const 31432 + i32.load + local.set $$t116 + i32.const 31436 + i32.load + local.set $$t117 + i32.const 0 + i32.const 31440 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 8 + i32.const 0 + i32.sub + i32.const 8 + i32.const 0 + i32.sub + local.set $$t118.3 + local.set $$t118.2 + local.set $$t118.1 + local.get $$t118.0 + call $runtime.Block.Release + local.set $$t118.0 + local.get $$t115 + local.get $$t116 + local.get $$t117 + local.get $$t118.0 + local.get $$t118.1 + local.get $$t118.2 + local.get $$t118.3 + call $w4teris.drawPiece + br $$Block_53 + end + i32.const 54 + local.set $$current_block + br $$BlockFnBody + end + i32.const 55 + local.set $$current_block + i32.const 31396 + i32.load8_u align=1 + local.set $$t119 + local.get $$t119 + if + i32.const 54 + local.set $$block_selector + br $$BlockDisp + else + i32.const 53 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t48.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t99.0 + call $runtime.Block.Release + local.get $$t102.0 + call $runtime.Block.Release + local.get $$t106.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t118.0 + call $runtime.Block.Release + ) + (func $w4teris.checkFilledRows (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i64) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 31392 + i32.const 0 + i32.store + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + i32.const 31392 + i32.load + local.set $$t0 + local.get $$t0 + i32.const 0 + i32.eq + i32.eqz + local.set $$t1 + local.get $$t1 + if + br $$Block_10 + else + br $$Block_11 + end + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 19 + else + local.get $$t2 + end + local.set $$t3 + i32.const 3 + local.set $$current_block + local.get $$t3 + i32.const 0 + i32.ge_s + local.set $$t4 + local.get $$t4 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t3 + i32.const 10 + i32.mul + local.set $$t5 + local.get $$t5 + local.get $$t6 + i32.add + local.set $$t7 + i32.const 0 + i32.const 31188 + i32.const 1 + local.get $$t7 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load8_u align=1 + local.set $$t9 + local.get $$t9 + i32.const 0 + i32.eq + local.set $$t10 + local.get $$t10 + if + br $$Block_6 + else + br $$Block_7 + end + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + i32.const 1 + else + i32.const 0 + end + local.set $$t11 + i32.const 5 + local.set $$current_block + local.get $$t11 + if + br $$Block_8 + else + br $$Block_9 + end + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t12 + end + local.set $$t6 + i32.const 6 + local.set $$current_block + local.get $$t6 + i32.const 10 + i32.lt_s + local.set $$t13 + local.get $$t13 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + local.get $$t6 + i32.const 1 + i32.add + local.set $$t12 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 9 + local.set $$current_block + local.get $$t3 + i64.extend_i32_u + local.set $$t14 + i32.const 1 + local.get $$t14 + i32.wrap_i64 + i32.shl + local.set $$t15 + i32.const 31392 + i32.load + local.set $$t16 + local.get $$t16 + local.get $$t15 + i32.or + local.set $$t17 + i32.const 31392 + local.get $$t17 + i32.store + i32.const 31388 + i32.load + local.set $$t18 + local.get $$t18 + i32.const 16 + i32.add + local.set $$t19 + i32.const 31388 + local.get $$t19 + i32.store + br $$Block_9 + end + i32.const 10 + local.set $$current_block + local.get $$t3 + i32.const 1 + i32.sub + local.set $$t2 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t8.0 + call $runtime.Block.Release + ) + (func $w4teris.clearFilledRows + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t30.2 i32) + (local $$t30.3 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62.0 i32) + (local $$t62.1 i32) + (local $$t62.2 i32) + (local $$t62.3 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + local.get $$t0 + i32.const 0 + i32.eq + i32.eqz + local.set $$t1 + local.get $$t1 + if + br $$Block_13 + else + br $$Block_14 + end + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t2 + end + local.set $$t0 + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 19 + else + local.get $$t3 + end + local.set $$t4 + i32.const 3 + local.set $$current_block + local.get $$t4 + i32.const 0 + i32.ge_s + local.set $$t5 + local.get $$t5 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t4 + i32.const 10 + i32.mul + local.set $$t6 + local.get $$t6 + local.get $$t7 + i32.add + local.set $$t8 + i32.const 0 + i32.const 31188 + i32.const 1 + local.get $$t8 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load8_u align=1 + local.set $$t10 + local.get $$t10 + i32.const 0 + i32.eq + local.set $$t11 + local.get $$t11 + if + br $$Block_6 + else + br $$Block_7 + end + end + local.get $$current_block + i32.const 6 + i32.eq + if(result i32) + i32.const 1 + else + i32.const 0 + end + local.set $$t12 + i32.const 5 + local.set $$current_block + local.get $$t12 + if + br $$Block_8 + else + br $$Block_9 + end + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t7 + i32.const 6 + local.set $$current_block + local.get $$t7 + i32.const 10 + i32.lt_s + local.set $$t14 + local.get $$t14 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + i32.const 8 + local.set $$current_block + local.get $$t7 + i32.const 1 + i32.add + local.set $$t13 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 9 + local.set $$current_block + local.get $$t0 + i32.const 1 + i32.add + local.set $$t15 + local.get $$t4 + i32.const 1 + i32.add + local.set $$t16 + local.get $$t16 + i32.const 10 + i32.mul + local.set $$t17 + local.get $$t17 + i32.const 1 + i32.sub + local.set $$t18 + br $$Block_12 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t0 + else + local.get $$t15 + end + local.set $$t2 + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t4 + else + local.get $$t19 + end + local.set $$t20 + i32.const 10 + local.set $$current_block + local.get $$t20 + i32.const 1 + i32.sub + local.set $$t3 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + i32.const 0 + i32.const 31188 + i32.const 1 + local.get $$t21 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t21 + i32.const 10 + i32.sub + local.set $$t23 + i32.const 0 + i32.const 31188 + i32.const 1 + local.get $$t23 + i32.mul + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load8_u align=1 + local.set $$t25 + local.get $$t22.1 + local.get $$t25 + i32.store8 align=1 + local.get $$t21 + i32.const 1 + i32.sub + local.set $$t26 + br $$Block_12 + end + i32.const 12 + local.set $$current_block + local.get $$t4 + i32.const 1 + i32.add + local.set $$t19 + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t18 + else + local.get $$t26 + end + local.set $$t21 + i32.const 13 + local.set $$current_block + local.get $$t21 + i32.const 10 + i32.ge_s + local.set $$t27 + local.get $$t27 + if + i32.const 11 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 14 + local.set $$current_block + i32.const 31416 + i32.load + local.set $$t28 + local.get $$t28 + i32.const 1 + i32.add + local.set $$t29 + i32.const 31104 + i32.load + call $runtime.Block.Retain + i32.const 31104 + i32.load offset=4 + i32.const 31104 + i32.load offset=8 + i32.const 31104 + i32.load offset=12 + local.set $$t30.3 + local.set $$t30.2 + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t0 + i32.const 1 + i32.sub + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + i32.const 4 + local.get $$t32 + i32.mul + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t29 + local.get $$t34 + i32.mul + local.set $$t35 + i32.const 31476 + i32.load + local.set $$t36 + local.get $$t36 + local.get $$t35 + i32.add + local.set $$t37 + i32.const 31476 + local.get $$t37 + i32.store + i32.const 31476 + i32.load + local.set $$t38 + i32.const 31184 + i32.load + local.set $$t39 + local.get $$t38 + local.get $$t39 + i32.ge_s + local.set $$t40 + local.get $$t40 + if + br $$Block_15 + else + br $$Block_16 + end + end + i32.const 15 + local.set $$current_block + br $$BlockFnBody + end + i32.const 16 + local.set $$current_block + i32.const 31476 + i32.load + local.set $$t41 + i32.const 31184 + local.get $$t41 + i32.store + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t42.0 + call $runtime.Block.Retain + local.get $$t42.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + i32.const 31184 + i32.load + local.set $$t44 + local.get $$t44 + local.set $$t45 + local.get $$t45 + i64.const 24 + i32.wrap_i64 + i32.shr_u + local.set $$t46 + local.get $$t46 + i32.const 255 + i32.and + local.set $$t47 + local.get $$t43.1 + local.get $$t47 + i32.store8 align=1 + local.get $$t42.0 + call $runtime.Block.Retain + local.get $$t42.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t48.1 + local.get $$t48.0 + call $runtime.Block.Release + local.set $$t48.0 + i32.const 31184 + i32.load + local.set $$t49 + local.get $$t49 + local.set $$t50 + local.get $$t50 + i64.const 16 + i32.wrap_i64 + i32.shr_u + local.set $$t51 + local.get $$t51 + i32.const 255 + i32.and + local.set $$t52 + local.get $$t48.1 + local.get $$t52 + i32.store8 align=1 + local.get $$t42.0 + call $runtime.Block.Retain + local.get $$t42.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + i32.const 31184 + i32.load + local.set $$t54 + local.get $$t54 + local.set $$t55 + local.get $$t55 + i64.const 8 + i32.wrap_i64 + i32.shr_u + local.set $$t56 + local.get $$t56 + i32.const 255 + i32.and + local.set $$t57 + local.get $$t53.1 + local.get $$t57 + i32.store8 align=1 + local.get $$t42.0 + call $runtime.Block.Retain + local.get $$t42.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + i32.const 31184 + i32.load + local.set $$t59 + local.get $$t59 + local.set $$t60 + local.get $$t60 + i32.const 255 + i32.and + local.set $$t61 + local.get $$t58.1 + local.get $$t61 + i32.store8 align=1 + local.get $$t42.0 + call $runtime.Block.Retain + local.get $$t42.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t62.3 + local.set $$t62.2 + local.set $$t62.1 + local.get $$t62.0 + call $runtime.Block.Release + local.set $$t62.0 + local.get $$t62.0 + local.get $$t62.1 + local.get $$t62.2 + local.get $$t62.3 + call $syscall$wasm4.DiskW + local.set $$t63 + br $$Block_16 + end + i32.const 17 + local.set $$current_block + i32.const 31420 + i32.load + local.set $$t64 + local.get $$t64 + local.get $$t0 + i32.add + local.set $$t65 + i32.const 31420 + local.get $$t65 + i32.store + i32.const 31420 + i32.load + local.set $$t66 + local.get $$t66 + i32.const 8 + i32.div_s + local.set $$t67 + i32.const 31416 + i32.load + local.set $$t68 + local.get $$t67 + local.get $$t68 + i32.eq + i32.eqz + local.set $$t69 + local.get $$t69 + if + br $$Block_17 + else + i32.const 15 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 18 + local.set $$current_block + i32.const 31416 + local.get $$t67 + i32.store + i32.const 61603970 + i32.const 20 + i32.const 100 + i32.const 5 + call $syscall$wasm4.Tone + i32.const 15 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t48.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t62.0 + call $runtime.Block.Release + ) + (func $w4teris.copyPieceToBoard + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 31440 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 8 + i32.const 0 + i32.sub + i32.const 8 + i32.const 0 + i32.sub + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + i32.const 2 + local.get $$t1 + i32.mul + local.set $$t2 + local.get $$t2 + i32.const 0 + i32.add + local.set $$t3 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + local.get $$t3 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load + local.set $$t5 + i32.const 2 + local.get $$t1 + i32.mul + local.set $$t6 + local.get $$t6 + i32.const 1 + i32.add + local.set $$t7 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + local.get $$t7 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + i32.const 31428 + i32.load + local.set $$t10 + local.get $$t10 + local.get $$t5 + i32.add + local.set $$t11 + i32.const 31432 + i32.load + local.set $$t12 + local.get $$t12 + local.get $$t9 + i32.add + local.set $$t13 + local.get $$t13 + i32.const 10 + i32.mul + local.set $$t14 + local.get $$t14 + local.get $$t11 + i32.add + local.set $$t15 + local.get $$t15 + local.set $$t16 + i32.const 0 + i32.const 31188 + i32.const 1 + local.get $$t16 + i32.mul + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + i32.const 31436 + i32.load + local.set $$t18 + local.get $$t18 + i32.const 255 + i32.and + local.set $$t19 + local.get $$t19 + i32.const 1 + i32.add + i32.const 255 + i32.and + local.set $$t20 + local.get $$t17.1 + local.get $$t20 + i32.store8 align=1 + local.get $$t1 + i32.const 1 + i32.add + local.set $$t21 + br $$Block_2 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t21 + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t1 + i32.const 4 + i32.lt_s + local.set $$t22 + local.get $$t22 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + ) + (func $w4teris.drawBlock (param $typ i32) (param $x i32) (param $y i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t3.3 i32) + (local $$t4 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 31168 + i32.load + call $runtime.Block.Retain + i32.const 31168 + i32.load offset=4 + i32.const 31168 + i32.load offset=8 + i32.const 31168 + i32.load offset=12 + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $typ + local.set $$t1 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + local.get $$t1 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 8 + i32.const 0 + i32.sub + i32.const 8 + i32.const 0 + i32.sub + local.set $$t3.3 + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + i32.const 16 + local.get $x + i32.add + local.set $$t4 + local.get $$t3.0 + local.get $$t3.1 + local.get $$t3.2 + local.get $$t3.3 + local.get $$t4 + local.get $y + i32.const 8 + i32.const 8 + i32.const 0 + call $syscall$wasm4.BlitI32 + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + ) + (func $w4teris.drawPiece (param $x i32) (param $y i32) (param $typ i32) (param $coords.0 i32) (param $coords.1 i32) (param $coords.2 i32) (param $coords.3 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $$t0 + i32.const 2 + i32.mul + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.add + local.set $$t2 + local.get $coords.0 + call $runtime.Block.Retain + local.get $coords.1 + i32.const 4 + local.get $$t2 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t0 + i32.const 2 + i32.mul + local.set $$t5 + local.get $$t5 + i32.const 1 + i32.add + local.set $$t6 + local.get $coords.0 + call $runtime.Block.Retain + local.get $coords.1 + i32.const 4 + local.get $$t6 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load + local.set $$t8 + local.get $x + local.get $$t4 + i32.add + local.set $$t9 + i32.const 8 + local.get $$t9 + i32.mul + local.set $$t10 + local.get $y + local.get $$t8 + i32.add + local.set $$t11 + i32.const 8 + local.get $$t11 + i32.mul + local.set $$t12 + local.get $typ + local.get $$t10 + local.get $$t12 + call $w4teris.drawBlock + local.get $$t0 + i32.const 1 + i32.add + local.set $$t13 + br $$Block_2 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t0 + i32.const 3 + local.set $$current_block + local.get $$t0 + i32.const 4 + i32.lt_s + local.set $$t14 + local.get $$t14 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + ) + (func $w4teris.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62.0 i32) + (local $$t62.1 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64.0 i32) + (local $$t64.1 i32) + (local $$t65.0 i32) + (local $$t65.1 i32) + (local $$t65.2 i32) + (local $$t65.3 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67.0 i32) + (local $$t67.1 i32) + (local $$t68.0 i32) + (local $$t68.1 i32) + (local $$t69.0 i32) + (local $$t69.1 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72.0 i32) + (local $$t72.1 i32) + (local $$t73.0 i32) + (local $$t73.1 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t74.2 i32) + (local $$t74.3 i32) + (local $$t75.0 i32) + (local $$t75.1 i32) + (local $$t76.0 i32) + (local $$t76.1 i32) + (local $$t77.0 i32) + (local $$t77.1 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79.0 i32) + (local $$t79.1 i32) + (local $$t80.0 i32) + (local $$t80.1 i32) + (local $$t81.0 i32) + (local $$t81.1 i32) + (local $$t82.0 i32) + (local $$t82.1 i32) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t84.0 i32) + (local $$t84.1 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86.0 i32) + (local $$t86.1 i32) + (local $$t87.0 i32) + (local $$t87.1 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89.0 i32) + (local $$t89.1 i32) + (local $$t90.0 i32) + (local $$t90.1 i32) + (local $$t91.0 i32) + (local $$t91.1 i32) + (local $$t92.0 i32) + (local $$t92.1 i32) + (local $$t93.0 i32) + (local $$t93.1 i32) + (local $$t94.0 i32) + (local $$t94.1 i32) + (local $$t95.0 i32) + (local $$t95.1 i32) + (local $$t96.0 i32) + (local $$t96.1 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98.0 i32) + (local $$t98.1 i32) + (local $$t99.0 i32) + (local $$t99.1 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101.0 i32) + (local $$t101.1 i32) + (local $$t102.0 i32) + (local $$t102.1 i32) + (local $$t103.0 i32) + (local $$t103.1 i32) + (local $$t104.0 i32) + (local $$t104.1 i32) + (local $$t105.0 i32) + (local $$t105.1 i32) + (local $$t106.0 i32) + (local $$t106.1 i32) + (local $$t107.0 i32) + (local $$t107.1 i32) + (local $$t108.0 i32) + (local $$t108.1 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110.0 i32) + (local $$t110.1 i32) + (local $$t111.0 i32) + (local $$t111.1 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113.0 i32) + (local $$t113.1 i32) + (local $$t114.0 i32) + (local $$t114.1 i32) + (local $$t115.0 i32) + (local $$t115.1 i32) + (local $$t116.0 i32) + (local $$t116.1 i32) + (local $$t117.0 i32) + (local $$t117.1 i32) + (local $$t118.0 i32) + (local $$t118.1 i32) + (local $$t119.0 i32) + (local $$t119.1 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121.0 i32) + (local $$t121.1 i32) + (local $$t122.0 i32) + (local $$t122.1 i32) + (local $$t123.0 i32) + (local $$t123.1 i32) + (local $$t124.0 i32) + (local $$t124.1 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126.0 i32) + (local $$t126.1 i32) + (local $$t127.0 i32) + (local $$t127.1 i32) + (local $$t128.0 i32) + (local $$t128.1 i32) + (local $$t129.0 i32) + (local $$t129.1 i32) + (local $$t130.0 i32) + (local $$t130.1 i32) + (local $$t131.0 i32) + (local $$t131.1 i32) + (local $$t132.0 i32) + (local $$t132.1 i32) + (local $$t132.2 i32) + (local $$t132.3 i32) + (local $$t133.0 i32) + (local $$t133.1 i32) + (local $$t134.0 i32) + (local $$t134.1 i32) + (local $$t135.0 i32) + (local $$t135.1 i32) + (local $$t136.0 i32) + (local $$t136.1 i32) + (local $$t137.0 i32) + (local $$t137.1 i32) + (local $$t138.0 i32) + (local $$t138.1 i32) + (local $$t139.0 i32) + (local $$t139.1 i32) + (local $$t140.0 i32) + (local $$t140.1 i32) + (local $$t141.0 i32) + (local $$t141.1 i32) + (local $$t142.0 i32) + (local $$t142.1 i32) + (local $$t143.0 i32) + (local $$t143.1 i32) + (local $$t144.0 i32) + (local $$t144.1 i32) + (local $$t145.0 i32) + (local $$t145.1 i32) + (local $$t146.0 i32) + (local $$t146.1 i32) + (local $$t147.0 i32) + (local $$t147.1 i32) + (local $$t148.0 i32) + (local $$t148.1 i32) + (local $$t149.0 i32) + (local $$t149.1 i32) + (local $$t150.0 i32) + (local $$t150.1 i32) + (local $$t151.0 i32) + (local $$t151.1 i32) + (local $$t152.0 i32) + (local $$t152.1 i32) + (local $$t153.0 i32) + (local $$t153.1 i32) + (local $$t154.0 i32) + (local $$t154.1 i32) + (local $$t155.0 i32) + (local $$t155.1 i32) + (local $$t155.2 i32) + (local $$t155.3 i32) + (local $$t156.0 i32) + (local $$t156.1 i32) + (local $$t157.0 i32) + (local $$t157.1 i32) + (local $$t158.0 i32) + (local $$t158.1 i32) + (local $$t159.0 i32) + (local $$t159.1 i32) + (local $$t160.0 i32) + (local $$t160.1 i32) + (local $$t161.0 i32) + (local $$t161.1 i32) + (local $$t161.2 i32) + (local $$t161.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $w4teris.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $w4teris.init$guard + call $runtime.init + call $syscall$wasm4.init + call $strconv.init + i32.const 72 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 56 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.const 4 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.const 5 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.const 6 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 1 + i32.const 7 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t3.1 + i32.const 255 + i32.store8 align=1 + local.get $$t4.1 + i32.const 129 + i32.store8 align=1 + local.get $$t5.1 + i32.const 189 + i32.store8 align=1 + local.get $$t6.1 + i32.const 161 + i32.store8 align=1 + local.get $$t7.1 + i32.const 161 + i32.store8 align=1 + local.get $$t8.1 + i32.const 161 + i32.store8 align=1 + local.get $$t9.1 + i32.const 129 + i32.store8 align=1 + local.get $$t10.1 + i32.const 255 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 8 + i32.const 1 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 1 + i32.const 4 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 1 + i32.const 5 + i32.mul + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 1 + i32.const 6 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t11.0 + call $runtime.Block.Retain + local.get $$t11.1 + i32.const 1 + i32.const 7 + i32.mul + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t12.1 + i32.const 255 + i32.store8 align=1 + local.get $$t13.1 + i32.const 129 + i32.store8 align=1 + local.get $$t14.1 + i32.const 133 + i32.store8 align=1 + local.get $$t15.1 + i32.const 133 + i32.store8 align=1 + local.get $$t16.1 + i32.const 133 + i32.store8 align=1 + local.get $$t17.1 + i32.const 189 + i32.store8 align=1 + local.get $$t18.1 + i32.const 129 + i32.store8 align=1 + local.get $$t19.1 + i32.const 255 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 8 + i32.const 2 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 1 + i32.const 4 + i32.mul + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 1 + i32.const 5 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 1 + i32.const 6 + i32.mul + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 1 + i32.const 7 + i32.mul + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t21.1 + i32.const 255 + i32.store8 align=1 + local.get $$t22.1 + i32.const 165 + i32.store8 align=1 + local.get $$t23.1 + i32.const 201 + i32.store8 align=1 + local.get $$t24.1 + i32.const 147 + i32.store8 align=1 + local.get $$t25.1 + i32.const 165 + i32.store8 align=1 + local.get $$t26.1 + i32.const 201 + i32.store8 align=1 + local.get $$t27.1 + i32.const 147 + i32.store8 align=1 + local.get $$t28.1 + i32.const 255 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 8 + i32.const 3 + i32.mul + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + i32.const 4 + i32.mul + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + i32.const 5 + i32.mul + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + i32.const 6 + i32.mul + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 1 + i32.const 7 + i32.mul + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$t30.1 + i32.const 255 + i32.store8 align=1 + local.get $$t31.1 + i32.const 165 + i32.store8 align=1 + local.get $$t32.1 + i32.const 147 + i32.store8 align=1 + local.get $$t33.1 + i32.const 201 + i32.store8 align=1 + local.get $$t34.1 + i32.const 165 + i32.store8 align=1 + local.get $$t35.1 + i32.const 147 + i32.store8 align=1 + local.get $$t36.1 + i32.const 201 + i32.store8 align=1 + local.get $$t37.1 + i32.const 255 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 8 + i32.const 4 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t40.1 + local.get $$t40.0 + call $runtime.Block.Release + local.set $$t40.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 1 + i32.const 4 + i32.mul + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 1 + i32.const 5 + i32.mul + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 1 + i32.const 6 + i32.mul + i32.add + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 1 + i32.const 7 + i32.mul + i32.add + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t39.1 + i32.const 255 + i32.store8 align=1 + local.get $$t40.1 + i32.const 129 + i32.store8 align=1 + local.get $$t41.1 + i32.const 129 + i32.store8 align=1 + local.get $$t42.1 + i32.const 129 + i32.store8 align=1 + local.get $$t43.1 + i32.const 129 + i32.store8 align=1 + local.get $$t44.1 + i32.const 129 + i32.store8 align=1 + local.get $$t45.1 + i32.const 129 + i32.store8 align=1 + local.get $$t46.1 + i32.const 255 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 8 + i32.const 5 + i32.mul + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $$t47.0 + call $runtime.Block.Retain + local.get $$t47.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t48.1 + local.get $$t48.0 + call $runtime.Block.Release + local.set $$t48.0 + local.get $$t47.0 + call $runtime.Block.Retain + local.get $$t47.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t49.1 + local.get $$t49.0 + call $runtime.Block.Release + local.set $$t49.0 + local.get $$t47.0 + call $runtime.Block.Retain + local.get $$t47.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t47.0 + call $runtime.Block.Retain + local.get $$t47.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t47.0 + call $runtime.Block.Retain + local.get $$t47.1 + i32.const 1 + i32.const 4 + i32.mul + i32.add + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t47.0 + call $runtime.Block.Retain + local.get $$t47.1 + i32.const 1 + i32.const 5 + i32.mul + i32.add + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $$t47.0 + call $runtime.Block.Retain + local.get $$t47.1 + i32.const 1 + i32.const 6 + i32.mul + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t47.0 + call $runtime.Block.Retain + local.get $$t47.1 + i32.const 1 + i32.const 7 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t48.1 + i32.const 255 + i32.store8 align=1 + local.get $$t49.1 + i32.const 129 + i32.store8 align=1 + local.get $$t50.1 + i32.const 189 + i32.store8 align=1 + local.get $$t51.1 + i32.const 165 + i32.store8 align=1 + local.get $$t52.1 + i32.const 165 + i32.store8 align=1 + local.get $$t53.1 + i32.const 189 + i32.store8 align=1 + local.get $$t54.1 + i32.const 129 + i32.store8 align=1 + local.get $$t55.1 + i32.const 255 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 8 + i32.const 6 + i32.mul + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 1 + i32.const 4 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 1 + i32.const 5 + i32.mul + i32.add + local.set $$t62.1 + local.get $$t62.0 + call $runtime.Block.Release + local.set $$t62.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 1 + i32.const 6 + i32.mul + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 1 + i32.const 7 + i32.mul + i32.add + local.set $$t64.1 + local.get $$t64.0 + call $runtime.Block.Release + local.set $$t64.0 + local.get $$t57.1 + i32.const 255 + i32.store8 align=1 + local.get $$t58.1 + i32.const 129 + i32.store8 align=1 + local.get $$t59.1 + i32.const 165 + i32.store8 align=1 + local.get $$t60.1 + i32.const 129 + i32.store8 align=1 + local.get $$t61.1 + i32.const 165 + i32.store8 align=1 + local.get $$t62.1 + i32.const 189 + i32.store8 align=1 + local.get $$t63.1 + i32.const 129 + i32.store8 align=1 + local.get $$t64.1 + i32.const 255 + i32.store8 align=1 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + i32.const 7 + i32.const 0 + i32.sub + i32.const 7 + i32.const 0 + i32.sub + local.set $$t65.3 + local.set $$t65.2 + local.set $$t65.1 + local.get $$t65.0 + call $runtime.Block.Release + local.set $$t65.0 + i32.const 31168 + local.get $$t65.0 + call $runtime.Block.Retain + i32.const 31168 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 31168 + local.get $$t65.1 + i32.store offset=4 + i32.const 31168 + local.get $$t65.2 + i32.store offset=8 + i32.const 31168 + local.get $$t65.3 + i32.store offset=12 + i32.const 44 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 28 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.0 + call $runtime.Block.Retain + local.get $$t66.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t67.1 + local.get $$t67.0 + call $runtime.Block.Release + local.set $$t67.0 + local.get $$t67.1 + i32.const 296145 + i32.store + local.get $$t66.0 + call $runtime.Block.Retain + local.get $$t66.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t68.1 + local.get $$t68.0 + call $runtime.Block.Release + local.set $$t68.0 + local.get $$t68.1 + i32.const 16486955 + i32.store + local.get $$t66.0 + call $runtime.Block.Retain + local.get $$t66.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t69.1 + local.get $$t69.0 + call $runtime.Block.Release + local.set $$t69.0 + local.get $$t69.1 + i32.const 15022916 + i32.store + local.get $$t66.0 + call $runtime.Block.Retain + local.get $$t66.1 + i32.const 4 + i32.const 3 + i32.mul + i32.add + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + local.get $$t70.1 + i32.const 6538829 + i32.store + local.get $$t66.0 + call $runtime.Block.Retain + local.get $$t66.1 + i32.const 4 + i32.const 4 + i32.mul + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $$t71.1 + i32.const 16770914 + i32.store + local.get $$t66.0 + call $runtime.Block.Retain + local.get $$t66.1 + i32.const 4 + i32.const 5 + i32.mul + i32.add + local.set $$t72.1 + local.get $$t72.0 + call $runtime.Block.Release + local.set $$t72.0 + local.get $$t72.1 + i32.const 12543679 + i32.store + local.get $$t66.0 + call $runtime.Block.Retain + local.get $$t66.1 + i32.const 4 + i32.const 6 + i32.mul + i32.add + local.set $$t73.1 + local.get $$t73.0 + call $runtime.Block.Release + local.set $$t73.0 + local.get $$t73.1 + i32.const 2943220 + i32.store + local.get $$t66.0 + call $runtime.Block.Retain + local.get $$t66.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 7 + i32.const 0 + i32.sub + i32.const 7 + i32.const 0 + i32.sub + local.set $$t74.3 + local.set $$t74.2 + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + i32.const 31136 + local.get $$t74.0 + call $runtime.Block.Retain + i32.const 31136 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 31136 + local.get $$t74.1 + i32.store offset=4 + i32.const 31136 + local.get $$t74.2 + i32.store offset=8 + i32.const 31136 + local.get $$t74.3 + i32.store offset=12 + i32.const 240 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 224 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t75.1 + local.get $$t75.0 + call $runtime.Block.Release + local.set $$t75.0 + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t76.1 + local.get $$t76.0 + call $runtime.Block.Release + local.set $$t76.0 + local.get $$t76.1 + i32.const 1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t77.1 + local.get $$t77.0 + call $runtime.Block.Release + local.set $$t77.0 + local.get $$t77.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + local.get $$t78.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 3 + i32.mul + i32.add + local.set $$t79.1 + local.get $$t79.0 + call $runtime.Block.Release + local.set $$t79.0 + local.get $$t79.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 4 + i32.mul + i32.add + local.set $$t80.1 + local.get $$t80.0 + call $runtime.Block.Release + local.set $$t80.0 + local.get $$t80.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 5 + i32.mul + i32.add + local.set $$t81.1 + local.get $$t81.0 + call $runtime.Block.Release + local.set $$t81.0 + local.get $$t81.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 6 + i32.mul + i32.add + local.set $$t82.1 + local.get $$t82.0 + call $runtime.Block.Release + local.set $$t82.0 + local.get $$t82.1 + i32.const 1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 7 + i32.mul + i32.add + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t83.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 8 + i32.mul + i32.add + local.set $$t84.1 + local.get $$t84.0 + call $runtime.Block.Release + local.set $$t84.0 + local.get $$t84.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 9 + i32.mul + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 10 + i32.mul + i32.add + local.set $$t86.1 + local.get $$t86.0 + call $runtime.Block.Release + local.set $$t86.0 + local.get $$t86.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 11 + i32.mul + i32.add + local.set $$t87.1 + local.get $$t87.0 + call $runtime.Block.Release + local.set $$t87.0 + local.get $$t87.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 12 + i32.mul + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 13 + i32.mul + i32.add + local.set $$t89.1 + local.get $$t89.0 + call $runtime.Block.Release + local.set $$t89.0 + local.get $$t89.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 14 + i32.mul + i32.add + local.set $$t90.1 + local.get $$t90.0 + call $runtime.Block.Release + local.set $$t90.0 + local.get $$t90.1 + i32.const 1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 15 + i32.mul + i32.add + local.set $$t91.1 + local.get $$t91.0 + call $runtime.Block.Release + local.set $$t91.0 + local.get $$t91.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 16 + i32.mul + i32.add + local.set $$t92.1 + local.get $$t92.0 + call $runtime.Block.Release + local.set $$t92.0 + local.get $$t92.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 17 + i32.mul + i32.add + local.set $$t93.1 + local.get $$t93.0 + call $runtime.Block.Release + local.set $$t93.0 + local.get $$t93.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 18 + i32.mul + i32.add + local.set $$t94.1 + local.get $$t94.0 + call $runtime.Block.Release + local.set $$t94.0 + local.get $$t94.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 19 + i32.mul + i32.add + local.set $$t95.1 + local.get $$t95.0 + call $runtime.Block.Release + local.set $$t95.0 + local.get $$t95.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 20 + i32.mul + i32.add + local.set $$t96.1 + local.get $$t96.0 + call $runtime.Block.Release + local.set $$t96.0 + local.get $$t96.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 21 + i32.mul + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t97.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 22 + i32.mul + i32.add + local.set $$t98.1 + local.get $$t98.0 + call $runtime.Block.Release + local.set $$t98.0 + local.get $$t98.1 + i32.const 1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 23 + i32.mul + i32.add + local.set $$t99.1 + local.get $$t99.0 + call $runtime.Block.Release + local.set $$t99.0 + local.get $$t99.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 24 + i32.mul + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $$t100.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 25 + i32.mul + i32.add + local.set $$t101.1 + local.get $$t101.0 + call $runtime.Block.Release + local.set $$t101.0 + local.get $$t101.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 26 + i32.mul + i32.add + local.set $$t102.1 + local.get $$t102.0 + call $runtime.Block.Release + local.set $$t102.0 + local.get $$t102.1 + i32.const 1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 27 + i32.mul + i32.add + local.set $$t103.1 + local.get $$t103.0 + call $runtime.Block.Release + local.set $$t103.0 + local.get $$t103.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 28 + i32.mul + i32.add + local.set $$t104.1 + local.get $$t104.0 + call $runtime.Block.Release + local.set $$t104.0 + local.get $$t104.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 29 + i32.mul + i32.add + local.set $$t105.1 + local.get $$t105.0 + call $runtime.Block.Release + local.set $$t105.0 + local.get $$t105.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 30 + i32.mul + i32.add + local.set $$t106.1 + local.get $$t106.0 + call $runtime.Block.Release + local.set $$t106.0 + local.get $$t106.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 31 + i32.mul + i32.add + local.set $$t107.1 + local.get $$t107.0 + call $runtime.Block.Release + local.set $$t107.0 + local.get $$t107.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 32 + i32.mul + i32.add + local.set $$t108.1 + local.get $$t108.0 + call $runtime.Block.Release + local.set $$t108.0 + local.get $$t108.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 33 + i32.mul + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 34 + i32.mul + i32.add + local.set $$t110.1 + local.get $$t110.0 + call $runtime.Block.Release + local.set $$t110.0 + local.get $$t110.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 35 + i32.mul + i32.add + local.set $$t111.1 + local.get $$t111.0 + call $runtime.Block.Release + local.set $$t111.0 + local.get $$t111.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 36 + i32.mul + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 37 + i32.mul + i32.add + local.set $$t113.1 + local.get $$t113.0 + call $runtime.Block.Release + local.set $$t113.0 + local.get $$t113.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 38 + i32.mul + i32.add + local.set $$t114.1 + local.get $$t114.0 + call $runtime.Block.Release + local.set $$t114.0 + local.get $$t114.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 39 + i32.mul + i32.add + local.set $$t115.1 + local.get $$t115.0 + call $runtime.Block.Release + local.set $$t115.0 + local.get $$t115.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 40 + i32.mul + i32.add + local.set $$t116.1 + local.get $$t116.0 + call $runtime.Block.Release + local.set $$t116.0 + local.get $$t116.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 41 + i32.mul + i32.add + local.set $$t117.1 + local.get $$t117.0 + call $runtime.Block.Release + local.set $$t117.0 + local.get $$t117.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 42 + i32.mul + i32.add + local.set $$t118.1 + local.get $$t118.0 + call $runtime.Block.Release + local.set $$t118.0 + local.get $$t118.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 43 + i32.mul + i32.add + local.set $$t119.1 + local.get $$t119.0 + call $runtime.Block.Release + local.set $$t119.0 + local.get $$t119.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 44 + i32.mul + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + local.get $$t120.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 45 + i32.mul + i32.add + local.set $$t121.1 + local.get $$t121.0 + call $runtime.Block.Release + local.set $$t121.0 + local.get $$t121.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 46 + i32.mul + i32.add + local.set $$t122.1 + local.get $$t122.0 + call $runtime.Block.Release + local.set $$t122.0 + local.get $$t122.1 + i32.const 1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 47 + i32.mul + i32.add + local.set $$t123.1 + local.get $$t123.0 + call $runtime.Block.Release + local.set $$t123.0 + local.get $$t123.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 48 + i32.mul + i32.add + local.set $$t124.1 + local.get $$t124.0 + call $runtime.Block.Release + local.set $$t124.0 + local.get $$t124.1 + i32.const -2 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 49 + i32.mul + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 50 + i32.mul + i32.add + local.set $$t126.1 + local.get $$t126.0 + call $runtime.Block.Release + local.set $$t126.0 + local.get $$t126.1 + i32.const -1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 51 + i32.mul + i32.add + local.set $$t127.1 + local.get $$t127.0 + call $runtime.Block.Release + local.set $$t127.0 + local.get $$t127.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 52 + i32.mul + i32.add + local.set $$t128.1 + local.get $$t128.0 + call $runtime.Block.Release + local.set $$t128.0 + local.get $$t128.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 53 + i32.mul + i32.add + local.set $$t129.1 + local.get $$t129.0 + call $runtime.Block.Release + local.set $$t129.0 + local.get $$t129.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 54 + i32.mul + i32.add + local.set $$t130.1 + local.get $$t130.0 + call $runtime.Block.Release + local.set $$t130.0 + local.get $$t130.1 + i32.const 1 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 55 + i32.mul + i32.add + local.set $$t131.1 + local.get $$t131.0 + call $runtime.Block.Release + local.set $$t131.0 + local.get $$t131.1 + i32.const 0 + i32.store + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 56 + i32.const 0 + i32.sub + i32.const 56 + i32.const 0 + i32.sub + local.set $$t132.3 + local.set $$t132.2 + local.set $$t132.1 + local.get $$t132.0 + call $runtime.Block.Release + local.set $$t132.0 + i32.const 31152 + local.get $$t132.0 + call $runtime.Block.Retain + i32.const 31152 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 31152 + local.get $$t132.1 + i32.store offset=4 + i32.const 31152 + local.get $$t132.2 + i32.store offset=8 + i32.const 31152 + local.get $$t132.3 + i32.store offset=12 + i32.const 100 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 84 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t133.1 + local.get $$t133.0 + call $runtime.Block.Release + local.set $$t133.0 + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t134.1 + local.get $$t134.0 + call $runtime.Block.Release + local.set $$t134.0 + local.get $$t134.1 + i32.const 53 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t135.1 + local.get $$t135.0 + call $runtime.Block.Release + local.set $$t135.0 + local.get $$t135.1 + i32.const 49 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t136.1 + local.get $$t136.0 + call $runtime.Block.Release + local.set $$t136.0 + local.get $$t136.1 + i32.const 45 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 3 + i32.mul + i32.add + local.set $$t137.1 + local.get $$t137.0 + call $runtime.Block.Release + local.set $$t137.0 + local.get $$t137.1 + i32.const 41 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 4 + i32.mul + i32.add + local.set $$t138.1 + local.get $$t138.0 + call $runtime.Block.Release + local.set $$t138.0 + local.get $$t138.1 + i32.const 37 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 5 + i32.mul + i32.add + local.set $$t139.1 + local.get $$t139.0 + call $runtime.Block.Release + local.set $$t139.0 + local.get $$t139.1 + i32.const 33 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 6 + i32.mul + i32.add + local.set $$t140.1 + local.get $$t140.0 + call $runtime.Block.Release + local.set $$t140.0 + local.get $$t140.1 + i32.const 28 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 7 + i32.mul + i32.add + local.set $$t141.1 + local.get $$t141.0 + call $runtime.Block.Release + local.set $$t141.0 + local.get $$t141.1 + i32.const 22 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 8 + i32.mul + i32.add + local.set $$t142.1 + local.get $$t142.0 + call $runtime.Block.Release + local.set $$t142.0 + local.get $$t142.1 + i32.const 17 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 9 + i32.mul + i32.add + local.set $$t143.1 + local.get $$t143.0 + call $runtime.Block.Release + local.set $$t143.0 + local.get $$t143.1 + i32.const 11 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 10 + i32.mul + i32.add + local.set $$t144.1 + local.get $$t144.0 + call $runtime.Block.Release + local.set $$t144.0 + local.get $$t144.1 + i32.const 10 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 11 + i32.mul + i32.add + local.set $$t145.1 + local.get $$t145.0 + call $runtime.Block.Release + local.set $$t145.0 + local.get $$t145.1 + i32.const 9 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 12 + i32.mul + i32.add + local.set $$t146.1 + local.get $$t146.0 + call $runtime.Block.Release + local.set $$t146.0 + local.get $$t146.1 + i32.const 8 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 13 + i32.mul + i32.add + local.set $$t147.1 + local.get $$t147.0 + call $runtime.Block.Release + local.set $$t147.0 + local.get $$t147.1 + i32.const 7 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 14 + i32.mul + i32.add + local.set $$t148.1 + local.get $$t148.0 + call $runtime.Block.Release + local.set $$t148.0 + local.get $$t148.1 + i32.const 6 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 15 + i32.mul + i32.add + local.set $$t149.1 + local.get $$t149.0 + call $runtime.Block.Release + local.set $$t149.0 + local.get $$t149.1 + i32.const 6 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 16 + i32.mul + i32.add + local.set $$t150.1 + local.get $$t150.0 + call $runtime.Block.Release + local.set $$t150.0 + local.get $$t150.1 + i32.const 5 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 17 + i32.mul + i32.add + local.set $$t151.1 + local.get $$t151.0 + call $runtime.Block.Release + local.set $$t151.0 + local.get $$t151.1 + i32.const 5 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 18 + i32.mul + i32.add + local.set $$t152.1 + local.get $$t152.0 + call $runtime.Block.Release + local.set $$t152.0 + local.get $$t152.1 + i32.const 4 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 19 + i32.mul + i32.add + local.set $$t153.1 + local.get $$t153.0 + call $runtime.Block.Release + local.set $$t153.0 + local.get $$t153.1 + i32.const 4 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 20 + i32.mul + i32.add + local.set $$t154.1 + local.get $$t154.0 + call $runtime.Block.Release + local.set $$t154.0 + local.get $$t154.1 + i32.const 3 + i32.store + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 21 + i32.const 0 + i32.sub + i32.const 21 + i32.const 0 + i32.sub + local.set $$t155.3 + local.set $$t155.2 + local.set $$t155.1 + local.get $$t155.0 + call $runtime.Block.Release + local.set $$t155.0 + i32.const 31120 + local.get $$t155.0 + call $runtime.Block.Retain + i32.const 31120 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 31120 + local.get $$t155.1 + i32.store offset=4 + i32.const 31120 + local.get $$t155.2 + i32.store offset=8 + i32.const 31120 + local.get $$t155.3 + i32.store offset=12 + i32.const 32 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 16 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t156.1 + local.get $$t156.0 + call $runtime.Block.Release + local.set $$t156.0 + local.get $$t156.0 + call $runtime.Block.Retain + local.get $$t156.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t157.1 + local.get $$t157.0 + call $runtime.Block.Release + local.set $$t157.0 + local.get $$t157.1 + i32.const 40 + i32.store + local.get $$t156.0 + call $runtime.Block.Retain + local.get $$t156.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t158.1 + local.get $$t158.0 + call $runtime.Block.Release + local.set $$t158.0 + local.get $$t158.1 + i32.const 100 + i32.store + local.get $$t156.0 + call $runtime.Block.Retain + local.get $$t156.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t159.1 + local.get $$t159.0 + call $runtime.Block.Release + local.set $$t159.0 + local.get $$t159.1 + i32.const 300 + i32.store + local.get $$t156.0 + call $runtime.Block.Retain + local.get $$t156.1 + i32.const 4 + i32.const 3 + i32.mul + i32.add + local.set $$t160.1 + local.get $$t160.0 + call $runtime.Block.Release + local.set $$t160.0 + local.get $$t160.1 + i32.const 1200 + i32.store + local.get $$t156.0 + call $runtime.Block.Retain + local.get $$t156.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t161.3 + local.set $$t161.2 + local.set $$t161.1 + local.get $$t161.0 + call $runtime.Block.Release + local.set $$t161.0 + i32.const 31104 + local.get $$t161.0 + call $runtime.Block.Retain + i32.const 31104 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 31104 + local.get $$t161.1 + i32.store offset=4 + i32.const 31104 + local.get $$t161.2 + i32.store offset=8 + i32.const 31104 + local.get $$t161.3 + i32.store offset=12 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t40.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t48.0 + call $runtime.Block.Release + local.get $$t49.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t62.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t64.0 + call $runtime.Block.Release + local.get $$t65.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t67.0 + call $runtime.Block.Release + local.get $$t68.0 + call $runtime.Block.Release + local.get $$t69.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + local.get $$t72.0 + call $runtime.Block.Release + local.get $$t73.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t75.0 + call $runtime.Block.Release + local.get $$t76.0 + call $runtime.Block.Release + local.get $$t77.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t79.0 + call $runtime.Block.Release + local.get $$t80.0 + call $runtime.Block.Release + local.get $$t81.0 + call $runtime.Block.Release + local.get $$t82.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + local.get $$t84.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t86.0 + call $runtime.Block.Release + local.get $$t87.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t89.0 + call $runtime.Block.Release + local.get $$t90.0 + call $runtime.Block.Release + local.get $$t91.0 + call $runtime.Block.Release + local.get $$t92.0 + call $runtime.Block.Release + local.get $$t93.0 + call $runtime.Block.Release + local.get $$t94.0 + call $runtime.Block.Release + local.get $$t95.0 + call $runtime.Block.Release + local.get $$t96.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t98.0 + call $runtime.Block.Release + local.get $$t99.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t101.0 + call $runtime.Block.Release + local.get $$t102.0 + call $runtime.Block.Release + local.get $$t103.0 + call $runtime.Block.Release + local.get $$t104.0 + call $runtime.Block.Release + local.get $$t105.0 + call $runtime.Block.Release + local.get $$t106.0 + call $runtime.Block.Release + local.get $$t107.0 + call $runtime.Block.Release + local.get $$t108.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t110.0 + call $runtime.Block.Release + local.get $$t111.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t113.0 + call $runtime.Block.Release + local.get $$t114.0 + call $runtime.Block.Release + local.get $$t115.0 + call $runtime.Block.Release + local.get $$t116.0 + call $runtime.Block.Release + local.get $$t117.0 + call $runtime.Block.Release + local.get $$t118.0 + call $runtime.Block.Release + local.get $$t119.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t121.0 + call $runtime.Block.Release + local.get $$t122.0 + call $runtime.Block.Release + local.get $$t123.0 + call $runtime.Block.Release + local.get $$t124.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + local.get $$t126.0 + call $runtime.Block.Release + local.get $$t127.0 + call $runtime.Block.Release + local.get $$t128.0 + call $runtime.Block.Release + local.get $$t129.0 + call $runtime.Block.Release + local.get $$t130.0 + call $runtime.Block.Release + local.get $$t131.0 + call $runtime.Block.Release + local.get $$t132.0 + call $runtime.Block.Release + local.get $$t133.0 + call $runtime.Block.Release + local.get $$t134.0 + call $runtime.Block.Release + local.get $$t135.0 + call $runtime.Block.Release + local.get $$t136.0 + call $runtime.Block.Release + local.get $$t137.0 + call $runtime.Block.Release + local.get $$t138.0 + call $runtime.Block.Release + local.get $$t139.0 + call $runtime.Block.Release + local.get $$t140.0 + call $runtime.Block.Release + local.get $$t141.0 + call $runtime.Block.Release + local.get $$t142.0 + call $runtime.Block.Release + local.get $$t143.0 + call $runtime.Block.Release + local.get $$t144.0 + call $runtime.Block.Release + local.get $$t145.0 + call $runtime.Block.Release + local.get $$t146.0 + call $runtime.Block.Release + local.get $$t147.0 + call $runtime.Block.Release + local.get $$t148.0 + call $runtime.Block.Release + local.get $$t149.0 + call $runtime.Block.Release + local.get $$t150.0 + call $runtime.Block.Release + local.get $$t151.0 + call $runtime.Block.Release + local.get $$t152.0 + call $runtime.Block.Release + local.get $$t153.0 + call $runtime.Block.Release + local.get $$t154.0 + call $runtime.Block.Release + local.get $$t155.0 + call $runtime.Block.Release + local.get $$t156.0 + call $runtime.Block.Release + local.get $$t157.0 + call $runtime.Block.Release + local.get $$t158.0 + call $runtime.Block.Release + local.get $$t159.0 + call $runtime.Block.Release + local.get $$t160.0 + call $runtime.Block.Release + local.get $$t161.0 + call $runtime.Block.Release + ) + (func $w4teris.movePiece (param $dx i32) (param $dy i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 31440 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 8 + i32.const 0 + i32.sub + i32.const 8 + i32.const 0 + i32.sub + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + i32.const 2 + local.get $$t1 + i32.mul + local.set $$t2 + local.get $$t2 + i32.const 0 + i32.add + local.set $$t3 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + local.get $$t3 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load + local.set $$t5 + i32.const 2 + local.get $$t1 + i32.mul + local.set $$t6 + local.get $$t6 + i32.const 1 + i32.add + local.set $$t7 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + local.get $$t7 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + i32.const 31428 + i32.load + local.set $$t10 + local.get $$t10 + local.get $$t5 + i32.add + local.set $$t11 + local.get $$t11 + local.get $dx + i32.add + local.set $$t12 + i32.const 31432 + i32.load + local.set $$t13 + local.get $$t13 + local.get $$t9 + i32.add + local.set $$t14 + local.get $$t14 + local.get $dy + i32.add + local.set $$t15 + local.get $$t12 + i32.const 0 + i32.lt_s + local.set $$t16 + local.get $$t16 + if + br $$Block_3 + else + br $$Block_8 + end + end + i32.const 2 + local.set $$current_block + i32.const 31428 + i32.load + local.set $$t17 + local.get $$t17 + local.get $dx + i32.add + local.set $$t18 + i32.const 31428 + local.get $$t18 + i32.store + i32.const 31432 + i32.load + local.set $$t19 + local.get $$t19 + local.get $dy + i32.add + local.set $$t20 + i32.const 31432 + local.get $$t20 + i32.store + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t21 + end + local.set $$t1 + i32.const 3 + local.set $$current_block + local.get $$t1 + i32.const 4 + i32.lt_s + local.set $$t22 + local.get $$t22 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + local.get $$t1 + i32.const 1 + i32.add + local.set $$t21 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $$t15 + i32.const 10 + i32.mul + local.set $$t23 + local.get $$t23 + local.get $$t12 + i32.add + local.set $$t24 + local.get $$t24 + local.set $$t25 + i32.const 0 + i32.const 31188 + i32.const 1 + local.get $$t25 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i32.load8_u align=1 + local.set $$t27 + local.get $$t27 + i32.const 0 + i32.eq + i32.eqz + local.set $$t28 + local.get $$t28 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + local.get $$t15 + i32.const 20 + i32.ge_s + local.set $$t29 + local.get $$t29 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + local.get $$t15 + i32.const 0 + i32.lt_s + local.set $$t30 + local.get $$t30 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t12 + i32.const 10 + i32.ge_s + local.set $$t31 + local.get $$t31 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + ) + (func $w4teris.nextPiece + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t4.3 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t7.3 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + (local $$t13.3 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + i32.const 31428 + i32.const 5 + i32.store + i32.const 31432 + i32.const 1 + i32.store + i32.const 31424 + i32.load + local.set $$t0 + i32.const 31436 + local.get $$t0 + i32.store + call $w4teris.rand + local.set $$t1 + local.get $$t1 + i32.const 7 + i32.rem_s + local.set $$t2 + local.get $$t2 + local.set $$t3 + i32.const 31424 + local.get $$t3 + i32.store + i32.const 31152 + i32.load + call $runtime.Block.Retain + i32.const 31152 + i32.load offset=4 + i32.const 31152 + i32.load offset=8 + i32.const 31152 + i32.load offset=12 + local.set $$t4.3 + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + i32.const 31436 + i32.load + local.set $$t5 + local.get $$t5 + i32.const 8 + i32.mul + local.set $$t6 + local.get $$t4.0 + call $runtime.Block.Retain + local.get $$t4.1 + i32.const 4 + local.get $$t6 + i32.mul + i32.add + local.get $$t4.2 + local.get $$t6 + i32.sub + local.get $$t4.3 + local.get $$t6 + i32.sub + local.set $$t7.3 + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + i32.const 0 + i32.const 31440 + i32.const 4 + local.get $$t8 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 4 + local.get $$t8 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t9.1 + local.get $$t11 + i32.store + local.get $$t8 + i32.const 1 + i32.add + local.set $$t12 + br $$Block_2 + end + i32.const 2 + local.set $$current_block + i32.const 31136 + i32.load + call $runtime.Block.Retain + i32.const 31136 + i32.load offset=4 + i32.const 31136 + i32.load offset=8 + i32.const 31136 + i32.load offset=12 + local.set $$t13.3 + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + i32.const 31436 + i32.load + local.set $$t14 + local.get $$t14 + local.set $$t15 + local.get $$t13.0 + call $runtime.Block.Retain + local.get $$t13.1 + i32.const 4 + local.get $$t15 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + local.set $$t17 + local.get $$t17 + call $syscall$wasm4.SetPalette1 + br $$BlockFnBody + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t12 + end + local.set $$t8 + i32.const 3 + local.set $$current_block + local.get $$t8 + i32.const 8 + i32.lt_s + local.set $$t18 + local.get $$t18 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + ) + (func $w4teris.rand (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i64) + (local $$t1 i64) + (local $$t2 i64) + (local $$t3 i64) + (local $$t4 i64) + (local $$t5 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 31480 + i64.load + local.set $$t0 + i64.const 6364136223846793005 + local.get $$t0 + i64.mul + local.set $$t1 + local.get $$t1 + i64.const 1 + i64.add + local.set $$t2 + i32.const 31480 + local.get $$t2 + i64.store align=8 + i32.const 31480 + i64.load + local.set $$t3 + local.get $$t3 + i64.const 33 + i64.shr_u + local.set $$t4 + local.get $$t4 + i32.wrap_i64 + local.set $$t5 + local.get $$t5 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4teris.spinPiece (param $direction i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 + end + i32.const 0 + local.set $$current_block + i32.const 31436 + i32.load + local.set $$t0 + local.get $$t0 + i32.const 4 + i32.eq + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + i32.const 48 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 32 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + br $$Block_4 + end + i32.const 3 + local.set $$current_block + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 4 + local.get $$t3 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + i32.const 0 + i32.const 31440 + i32.const 4 + local.get $$t3 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + local.set $$t6 + local.get $$t4.1 + local.get $$t6 + i32.store + local.get $$t3 + i32.const 1 + i32.add + local.set $$t7 + br $$Block_4 + end + i32.const 4 + local.set $$current_block + br $$Block_7 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t7 + end + local.set $$t3 + i32.const 5 + local.set $$current_block + local.get $$t3 + i32.const 8 + i32.lt_s + local.set $$t8 + local.get $$t8 + if + i32.const 3 + local.set $$block_selector + br $$BlockDisp + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + i32.const 2 + local.get $$t9 + i32.mul + local.set $$t10 + local.get $$t10 + i32.const 0 + i32.add + local.set $$t11 + i32.const 0 + i32.const 31440 + i32.const 4 + local.get $$t11 + i32.mul + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.load + local.set $$t13 + i32.const 2 + local.get $$t9 + i32.mul + local.set $$t14 + local.get $$t14 + i32.const 1 + i32.add + local.set $$t15 + i32.const 0 + i32.const 31440 + i32.const 4 + local.get $$t15 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + local.set $$t17 + i32.const 2 + local.get $$t9 + i32.mul + local.set $$t18 + local.get $$t18 + i32.const 0 + i32.add + local.set $$t19 + i32.const 0 + i32.const 31440 + i32.const 4 + local.get $$t19 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + i32.const 0 + local.get $direction + i32.sub + local.set $$t21 + local.get $$t21 + local.get $$t17 + i32.mul + local.set $$t22 + local.get $$t20.1 + local.get $$t22 + i32.store + i32.const 2 + local.get $$t9 + i32.mul + local.set $$t23 + local.get $$t23 + i32.const 1 + i32.add + local.set $$t24 + i32.const 0 + i32.const 31440 + i32.const 4 + local.get $$t24 + i32.mul + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $direction + local.get $$t13 + i32.mul + local.set $$t26 + local.get $$t25.1 + local.get $$t26 + i32.store + local.get $$t9 + i32.const 1 + i32.add + local.set $$t27 + br $$Block_7 + end + i32.const 7 + local.set $$current_block + i32.const 0 + i32.const 0 + call $w4teris.movePiece + local.set $$t28 + local.get $$t28 + i32.const 0 + i32.eq + i32.eqz + local.set $$t29 + local.get $$t29 + if + br $$Block_8 + else + br $$Block_9 + end + end + local.get $$current_block + i32.const 4 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t27 + end + local.set $$t9 + i32.const 8 + local.set $$current_block + local.get $$t9 + i32.const 4 + i32.lt_s + local.set $$t30 + local.get $$t30 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + br $$Block_12 + end + i32.const 10 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + i32.const 0 + i32.const 31440 + i32.const 4 + local.get $$t31 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 4 + local.get $$t31 + i32.mul + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t32.1 + local.get $$t34 + i32.store + local.get $$t31 + i32.const 1 + i32.add + local.set $$t35 + br $$Block_12 + end + i32.const 12 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t35 + end + local.set $$t31 + i32.const 13 + local.set $$current_block + local.get $$t31 + i32.const 8 + i32.lt_s + local.set $$t36 + local.get $$t36 + if + i32.const 11 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$ret_0 + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + ) + (func $w4teris.stepGravity (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 1 + call $w4teris.movePiece + local.set $$t0 + local.get $$t0 + i32.const 0 + i32.eq + i32.eqz + local.set $$t1 + local.get $$t1 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + call $w4teris.copyPieceToBoard + call $w4teris.checkFilledRows + local.set $$t2 + local.get $$t2 + i32.const 0 + i32.eq + local.set $$t3 + local.get $$t3 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 2 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + call $w4teris.nextPiece + i32.const 0 + i32.const 0 + call $w4teris.movePiece + local.set $$t4 + local.get $$t4 + i32.const 0 + i32.eq + i32.eqz + local.set $$t5 + local.get $$t5 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 4 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + i32.const 31396 + i32.const 1 + i32.store8 align=1 + i32.const 31400 + i32.const 0 + i32.store + i32.const 656384 + i32.const 40960 + i32.const 100 + i32.const 4 + call $syscall$wasm4.Tone + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + i32.const 240 + i32.const 3072 + i32.const 100 + i32.const 3 + call $syscall$wasm4.Tone + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + ) + (func $errors.errorString.Error (param $this.0 i32) (param $this.1 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + local.get $$t1.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $strconv.NumError.Error (param $this.0 i32) (param $this.1 i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1 i32) + (local $$ret_0.2 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t6.2 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t7.2 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t9.2 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0.0 i32) + (local $$t11.0.1 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t13.2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + call $runtime.Block.Retain + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + i32.const 0 + i32.const 34977 + i32.const 8 + local.get $$t1.0 + local.get $$t1.1 + local.get $$t1.2 + call $$string.appendstr + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.get $$t2.2 + i32.const 0 + i32.const 31517 + i32.const 2 + call $$string.appendstr + local.set $$t3.2 + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.get $$t3.2 + i32.const 0 + i32.const 34985 + i32.const 8 + call $$string.appendstr + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 12 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + call $runtime.Block.Retain + local.get $$t5.1 + i32.load offset=4 + local.get $$t5.1 + i32.load offset=8 + local.set $$t6.2 + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + local.get $$t6.1 + local.get $$t6.2 + call $strconv.Quote + local.set $$t7.2 + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + local.get $$t7.0 + local.get $$t7.1 + local.get $$t7.2 + call $$string.appendstr + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + local.get $$t8.1 + local.get $$t8.2 + i32.const 0 + i32.const 31517 + i32.const 2 + call $$string.appendstr + local.set $$t9.2 + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 24 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + call $runtime.Block.Retain + local.get $$t10.1 + i32.load offset=4 + local.get $$t10.1 + i32.load offset=8 + local.get $$t10.1 + i32.load offset=12 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0.1 + local.get $$t11.0.0 + call $runtime.Block.Release + local.set $$t11.0.0 + local.get $$t11.0.0 + local.get $$t11.0.1 + local.get $$t11.1 + i32.load offset=8 + call_indirect 0 (type $$$fnSig1) + local.set $$t12.2 + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t9.0 + local.get $$t9.1 + local.get $$t9.2 + local.get $$t12.0 + local.get $$t12.1 + local.get $$t12.2 + call $$string.appendstr + local.set $$t13.2 + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.0 + call $runtime.Block.Retain + local.get $$t13.1 + local.get $$t13.2 + local.set $$ret_0.2 + local.set $$ret_0.1 + local.get $$ret_0.0 + call $runtime.Block.Release + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + call $runtime.Block.Retain + local.get $$ret_0.1 + local.get $$ret_0.2 + local.get $$ret_0.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + ) + (func $_start (export "_start") + call $w4teris.init + ) + (func $_main (export "_main")) + (data (i32.const 14784) "\24\24\77\61\64\73\24\24\9b\1a\86\a0\49\fa\a8\bd\05\3f\4e\7b\9d\ee\21\3e\c6\4b\ac\7e\4f\7e\92\be\f5\44\c8\19\a0\01\fa\3e\91\4f\c1\16\6c\c1\56\bf\4b\55\55\55\55\55\a5\3f\cd\9c\d1\1f\fd\d8\e5\3d\5d\1f\29\a9\e5\e5\5a\be\a1\48\7d\56\e3\1d\c7\3e\03\df\bf\19\a0\01\2a\bf\d0\f7\10\11\11\11\81\3f\48\55\55\55\55\55\c5\bf\00\01\1c\02\1d\0e\18\03\1e\16\14\0f\19\11\04\08\1f\1b\0d\17\15\13\10\07\1a\0c\12\06\0b\05\0a\09\00\01\38\02\39\31\1c\03\3d\3a\2a\32\26\1d\11\04\3e\2f\3b\24\2d\2b\33\16\35\27\21\1e\18\12\0c\05\3f\37\30\1b\3c\29\25\10\2e\23\2c\15\34\20\17\0b\36\1a\28\0f\22\14\1f\0a\19\0e\13\09\0d\08\07\06\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\00\00\00\00\00\00\00\53\e4\60\cd\69\c8\32\17\00\00\00\00\00\00\00\00\b4\8e\5c\20\42\bd\7f\0e\00\00\00\00\00\00\00\00\61\b2\73\a8\92\ac\1f\52\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\33\fc\80\38\87\ee\32\74\00\00\00\00\00\00\00\00\3f\3b\a1\06\29\aa\3f\11\00\00\00\00\00\00\00\00\07\c5\24\a4\59\ca\c7\4a\00\00\00\00\00\00\00\00\49\f6\2d\0d\f0\bc\79\5d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\69\e8\4b\8a\9b\1b\07\79\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\31\cc\af\21\50\cb\3b\4c\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\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\00\00\00\00\00\00\c2\18\1f\51\af\fd\0e\68\00\00\00\00\00\00\00\00\f2\de\66\25\1b\bd\12\02\00\00\00\00\00\00\00\00\57\4b\60\f7\30\b6\4b\01\00\00\00\00\00\00\00\00\2d\5e\38\35\bd\a3\9e\41\00\00\00\00\00\00\00\00\b9\75\86\82\ac\4c\06\52\00\00\00\00\00\00\00\00\93\09\94\d1\eb\ef\43\73\00\00\00\00\00\00\00\00\f8\0b\f9\c5\e6\eb\14\10\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b0\35\55\5d\5f\6e\b4\55\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\6e\36\25\21\c9\33\b2\47\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\28\57\5e\6a\92\06\04\38\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1d\21\e0\fb\6a\ee\b3\7a\00\00\00\00\00\00\00\00\64\29\d8\ba\05\ea\60\59\00\00\00\00\00\00\00\00\bd\33\8e\29\87\24\b9\6f\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\87\de\94\fe\ab\cd\1a\33\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d9\4d\e4\5e\ae\f0\ec\07\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\06\f4\aa\48\0a\63\bd\6d\00\00\00\00\00\00\00\00\08\b1\d5\da\cc\bb\2c\09\00\00\00\00\00\00\00\00\a5\8e\c5\08\60\f5\bb\25\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\e1\ae\b4\0d\66\af\f5\1a\00\00\00\00\00\00\00\00\4d\ed\90\c8\9f\8d\d9\50\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c8\72\62\a9\49\ed\53\1e\00\00\00\00\00\00\00\00\7a\0f\bb\13\9c\e8\e8\25\00\00\00\00\00\00\00\00\ac\e9\54\8c\61\91\b1\77\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1d\ad\44\6b\28\73\05\4b\00\00\00\00\00\00\00\00\32\ec\0a\43\f9\67\e3\4e\00\00\00\00\00\00\00\00\3f\a7\cd\93\f7\41\9c\22\00\00\00\00\00\00\00\00\0f\11\c1\78\75\52\43\6b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\d5\56\c6\6b\98\cc\23\00\00\00\00\00\00\00\00\a8\8a\ec\b7\86\be\bf\2c\00\00\00\00\00\00\00\00\a9\d6\f3\32\14\d7\f7\7b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a1\1f\c2\b9\09\08\10\23\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\6c\51\3f\32\8f\0c\c9\16\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\83\d5\11\d7\43\56\40\40\00\00\00\00\00\00\00\00\72\25\6b\66\ea\35\28\48\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\91\a2\04\e8\a6\44\77\5a\00\00\00\00\00\00\00\00\36\cb\05\a2\d0\15\15\71\00\00\00\00\00\00\00\00\03\3e\87\ca\44\5b\5a\0d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\72\a8\39\be\4d\97\6e\62\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\99\0b\9d\bc\34\66\e6\7c\00\00\00\00\00\00\00\00\80\4e\c4\eb\c1\ff\1f\1c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a8\ba\62\00\9f\ff\f1\4b\00\00\00\00\00\00\00\00\a9\b4\3d\60\c3\3f\77\6f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\48\6a\60\46\a1\53\2a\7e\00\00\00\00\00\00\00\00\6d\42\fc\cb\44\74\da\2e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ca\27\ba\7e\ab\55\35\79\00\00\00\00\00\00\00\00\de\58\34\2f\8b\55\c1\4b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\dc\ca\c1\79\a9\15\5e\46\00\00\00\00\00\00\00\00\c9\1e\19\ec\89\cd\fa\0b\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\9a\d4\e1\93\e0\91\a7\67\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\18\6e\88\73\f7\e9\fa\58\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\03\96\42\52\c9\06\84\6d\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\7f\06\55\9a\a0\ee\f2\5c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\58\08\b7\d6\08\3d\c5\76\00\00\00\00\00\00\00\00\6e\ca\64\0c\4b\8c\76\54\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\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\00\00\00\00\00\00\1b\09\a1\9c\41\b6\9a\35\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1d\cf\5d\42\63\de\e0\79\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\9d\93\b2\17\7b\5b\6f\3e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\83\83\2a\78\ff\c6\50\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\3f\6e\84\59\7b\55\e2\28\00\00\00\00\00\00\00\00\cf\89\e5\2f\da\ea\1a\33\00\00\00\00\00\00\00\00\21\76\ef\5d\c8\d2\f0\3f\00\00\00\00\00\00\00\00\a9\53\6b\75\7a\07\ed\0f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5c\d9\bb\ab\d7\2d\71\64\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\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\00\00\00\00\00\00\d5\ce\22\c5\75\28\1c\31\00\00\00\00\00\00\00\00\8b\82\6b\36\93\32\63\7d\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\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\00\00\00\00\00\00\6d\1e\f7\59\9e\cb\47\42\00\00\00\00\00\00\00\00\08\e6\74\f0\85\be\d9\52\00\00\00\00\00\00\00\00\8b\1f\92\6c\27\2e\90\67\00\00\00\00\00\00\00\00\b6\53\db\a3\d8\1c\ba\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\cd\b2\06\80\12\cd\22\61\00\00\00\00\00\00\00\00\81\5f\08\20\57\80\6b\79\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\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\00\00\00\00\00\00\4a\1c\4d\2d\15\dd\1b\75\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4b\c9\3f\70\38\a4\d1\2b\00\00\00\00\00\00\00\00\cf\dd\27\46\a3\06\63\7b\00\00\00\00\00\00\00\00\42\d5\b1\17\4c\c8\3b\1a\00\00\00\00\00\00\00\00\93\4a\9e\1d\5f\ba\ca\20\00\00\00\00\00\00\00\00\9c\ee\82\72\7b\b4\7e\54\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d4\94\ec\e2\00\fa\05\64\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\57\09\9b\dd\24\d6\ad\3b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4c\1f\21\cd\4c\cf\9f\5e\00\00\00\00\00\00\00\00\1f\67\69\00\20\c3\47\76\00\00\00\00\00\00\00\00\73\e0\41\00\f4\d9\ec\29\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\ee\66\40\8d\14\82\71\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\fd\29\3f\85\e1\f1\ef\40\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b9\c0\f8\5e\3a\10\ab\29\00\00\00\00\00\00\00\00\e7\f0\b6\f6\48\d4\15\74\00\00\00\00\00\00\00\00\21\ad\64\34\5b\49\1b\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\42\a7\ee\40\4f\51\5d\3d\00\00\00\00\00\00\00\00\12\51\2a\11\a3\a5\b4\0c\00\00\00\00\00\00\00\00\ab\72\ba\ea\85\e7\f0\47\00\00\00\00\00\00\00\00\56\0f\69\65\67\21\ed\59\00\00\00\00\00\00\00\00\2c\53\c3\3e\c1\69\68\30\00\00\00\00\00\00\00\00\fb\13\3a\c7\18\42\41\1e\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\83\b7\8e\32\8c\ba\8b\6b\00\00\00\00\00\00\00\00\64\65\32\3f\2f\a9\6e\06\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\37\b7\23\38\11\48\2c\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\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\00\00\00\00\00\00\a8\26\99\07\05\f9\8d\31\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\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\00\00\00\00\00\00\b0\73\c6\a3\7a\ce\fd\3d\00\00\00\00\00\00\00\00\4e\08\5c\a6\0c\a1\be\06\00\00\00\00\00\00\00\00\62\0a\f3\cf\4f\49\6e\48\00\00\00\00\00\00\00\00\fa\cc\ef\c3\a3\db\89\5a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2c\2e\58\ed\7d\a0\6a\74\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\17\1d\c8\f9\ba\20\b0\77\00\00\00\00\00\00\00\00\2e\12\1d\dc\74\14\ce\0a\00\00\00\00\00\00\00\00\ba\56\24\13\92\99\81\0d\00\00\00\00\00\00\00\00\69\6c\ed\97\f6\ff\e1\10\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\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\00\00\00\00\00\00\6b\a9\3a\42\7a\f0\cd\6b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\72\49\ad\64\d7\1c\47\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c3\c2\4e\8d\10\1d\ff\4a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\32\ea\fe\29\62\22\3d\73\00\00\00\00\00\00\00\00\5f\52\3f\5a\7d\35\06\08\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\11\df\d4\65\5e\79\9e\0a\00\00\00\00\00\00\00\00\d5\16\4a\ff\b5\17\46\4d\00\00\00\00\00\00\00\00\45\4e\8e\bf\d1\ce\4b\50\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4c\5a\4e\bb\27\73\76\5d\00\00\00\00\00\00\00\00\6f\f8\10\d5\f8\07\6a\3a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2e\84\ea\cc\74\ac\45\2b\00\00\00\00\00\00\00\00\9d\92\12\00\c9\8b\0b\3b\00\00\00\00\00\00\00\00\44\37\17\40\bb\6e\ce\09\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f9\ab\96\dc\22\98\93\47\00\00\00\00\00\00\00\00\f7\56\bc\93\2b\7e\78\59\00\00\00\00\00\00\00\00\5a\b6\55\3c\db\4e\eb\57\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\14\b4\eb\18\02\cb\db\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5f\49\f0\46\33\6d\e7\4b\00\00\00\00\00\00\00\00\db\2d\56\0c\40\a4\70\6f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a7\a7\46\13\a4\00\20\7e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\fa\32\0f\2f\80\00\89\72\00\00\00\00\00\00\00\00\b9\ff\d2\3a\a0\40\2b\4f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c9\d7\f4\2d\7d\ca\d9\0d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2a\91\ce\97\63\4c\a4\75\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\20\c9\c1\bb\87\e9\00\54\00\00\00\00\00\00\00\00\68\3b\b2\aa\e9\23\01\29\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f3\1a\0b\36\b6\ae\38\1e\00\00\00\00\00\00\00\00\b0\e1\8d\c3\63\da\c6\25\00\00\00\00\00\00\00\00\0e\ad\38\5a\7e\48\9c\57\00\00\00\00\00\00\00\00\51\d8\c6\f0\9d\5a\83\2d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ff\58\1b\64\cb\9e\8e\1b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0f\bb\6a\cc\1d\d8\0e\5b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\24\62\b3\47\d7\98\23\3f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ac\24\04\30\68\cf\53\19\00\00\00\00\00\00\00\00\d7\2d\05\3c\42\c3\a8\5f\00\00\00\00\00\00\00\00\4d\79\06\cb\12\f4\92\37\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c4\0e\9d\ae\ae\ce\6a\5b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\6b\60\85\96\d6\4d\46\55\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\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\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\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\00\00\00\00\52\5d\0d\58\18\c0\60\55\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\22\0d\fd\c5\97\7b\60\3d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\42\b2\ad\92\8e\60\f3\77\00\00\00\00\00\00\00\00\d3\1e\59\37\b2\38\f0\55\00\00\00\00\00\00\00\00\88\66\2f\c5\de\46\6c\6b\00\00\00\00\00\00\00\00\15\a0\3d\3b\4b\ac\23\23\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\54\2e\da\77\41\d6\50\7e\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f2\4a\81\a5\ed\18\de\67\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\30\43\a0\13\58\e4\6e\09\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\7d\34\55\cf\64\a2\5e\77\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\22\f5\83\bd\dd\83\3a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\93\82\17\0f\3c\05\b7\75\00\00\00\00\00\00\00\00\38\63\dd\12\8b\c6\24\53\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\e5\32\6c\d0\e3\e9\31\2b\00\00\00\00\00\00\00\00\cf\9f\43\62\2e\32\ff\3a\00\00\00\00\00\00\00\00\c2\87\d4\fa\b9\fe\be\09\00\00\00\00\00\00\00\00\b3\a9\89\79\68\be\2e\4c\00\00\00\00\00\00\00\00\10\0a\f6\4b\01\37\9d\0f\00\00\00\00\00\00\00\00\94\8c\f3\9e\c1\84\84\53\00\00\00\00\00\00\00\00\b9\6f\b0\06\f2\a5\65\28\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\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\00\00\00\00\00\00\30\30\95\f8\88\0a\68\31\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4c\1b\69\04\76\90\32\3d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\1d\72\33\dc\80\cf\0f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\e9\26\31\08\ac\1c\5a\64\00\00\00\00\00\00\00\00\a3\70\3d\0a\d7\a3\70\3d\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\40\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\50\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\00\00\00\00\00\00\4d\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\00\00\00\00\00\28\6c\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\00\00\00\00\40\7f\3c\00\00\00\00\00\00\00\00\00\00\00\00\00\10\9f\4b\00\00\00\00\00\00\00\00\00\00\00\00\00\d4\86\1e\00\00\00\00\00\00\00\00\00\00\00\00\80\44\14\13\00\00\00\00\00\00\00\00\00\00\00\00\a0\55\d9\17\00\00\00\00\00\00\00\00\00\00\00\00\08\ab\cf\5d\00\00\00\00\00\00\00\00\00\00\00\00\e5\ca\a1\5a\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\00\00\d0\05\cd\9c\6d\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\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\00\00\00\00\00\00\00\00\34\cc\22\f4\26\45\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\40\11\5f\76\dd\0c\3c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\80\d8\d6\98\45\90\a4\72\00\00\00\00\00\00\00\00\50\47\86\7f\2b\da\a6\47\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\d5\53\47\d0\36\f2\02\00\00\00\00\00\00\00\00\90\65\94\2c\42\62\d7\01\00\00\00\00\00\00\00\00\f5\7e\b9\b7\d2\3a\4d\42\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\2f\eb\88\9f\f4\55\cc\63\00\00\00\00\00\00\00\00\fb\25\6b\c7\71\6b\bf\3c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\17\a3\be\1c\ed\ee\52\3d\00\00\00\00\00\00\00\00\dd\4b\ee\63\a8\aa\a7\4c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\16\b6\96\71\a8\bc\db\60\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\41\be\bd\98\63\ab\ab\6b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\cb\4b\29\43\5f\a5\25\3b\00\00\00\00\00\00\00\00\be\9e\f3\13\b7\0e\ef\49\00\00\00\00\00\00\00\00\37\43\78\6c\32\69\35\6e\00\00\00\00\00\00\00\00\04\54\96\07\7f\c3\c2\49\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a3\71\ed\3d\bb\28\a0\69\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\fa\e0\79\da\c6\67\26\79\00\00\00\00\00\00\00\00\38\59\18\91\b8\01\70\57\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\05\5b\31\58\81\4f\54\00\00\00\00\00\00\00\00\21\c7\b1\3d\ae\61\63\69\00\00\00\00\00\00\00\00\e9\38\1e\cd\19\3a\bc\03\00\00\00\00\00\00\00\00\23\c7\65\40\a0\48\ab\04\00\00\00\00\00\00\00\00\76\9c\3f\28\64\0d\eb\62\00\00\00\00\00\00\00\00\94\83\4f\32\bd\d0\a5\3b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\cb\1e\4e\cf\13\8b\99\7e\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\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\00\00\00\00\00\00\97\dc\8e\ae\45\6e\8a\2a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\56\9c\5f\70\26\26\3c\59\00\00\00\00\00\00\00\00\6c\83\77\0c\b0\2f\8b\6f\00\00\00\00\00\00\00\00\47\64\95\0f\9c\fb\6d\0b\00\00\00\00\00\00\00\00\ac\5e\bd\89\41\bd\24\47\00\00\00\00\00\00\00\00\57\b6\2c\ec\91\ec\ed\58\00\00\00\00\00\00\00\00\ed\e3\37\67\b6\67\29\2f\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\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\00\00\00\00\00\00\dd\dc\7f\14\8d\05\09\31\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1a\c9\07\70\ac\18\9e\6c\00\00\00\00\00\00\00\00\b0\dd\04\c6\6b\cf\e2\03\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\7e\c0\60\3f\8f\7e\cb\4f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c5\2c\07\d3\bf\f5\ad\5c\00\00\00\00\00\00\00\00\f6\f7\c8\c7\2f\73\d9\73\00\00\00\00\00\00\00\00\fa\9a\dd\dc\fd\e7\67\28\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\26\42\1a\a9\7c\5a\22\1f\00\00\00\00\00\00\00\00\58\69\b0\e9\8d\78\75\33\00\00\00\00\00\00\00\00\ae\83\1c\64\b1\d6\52\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\fb\11\c3\98\45\be\ba\29\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0c\66\58\5f\a6\e4\99\18\00\00\00\00\00\00\00\00\8f\7f\2e\f7\cf\5d\c0\5e\00\00\00\00\00\00\00\00\73\1f\fa\f4\43\75\70\76\00\00\00\00\00\00\00\00\a8\53\1c\79\4a\49\06\6a\00\00\00\00\00\00\00\00\92\68\63\17\9d\db\87\04\00\00\00\00\00\00\00\00\b6\42\3c\5d\84\d2\a9\45\00\00\00\00\00\00\00\00\b2\a9\45\ba\92\23\8a\0b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\26\d9\0c\43\95\d7\07\32\00\00\00\00\00\00\00\00\b8\07\e8\49\bd\e6\44\7f\00\00\00\00\00\00\00\00\a6\09\62\9c\6c\20\16\5f\00\00\00\00\00\00\00\00\0f\8c\7a\c3\87\a8\db\36\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\c7\ac\e5\94\94\82\92\6f\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\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\00\00\00\00\00\00\69\5d\c2\5f\66\58\b2\7e\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\5d\b8\aa\01\56\cd\37\7a\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\09\60\4d\31\6b\98\7b\57\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\07\73\84\be\13\8f\58\14\00\00\00\00\00\00\00\00\c8\8f\25\ae\d8\b2\6e\59\00\00\00\00\00\00\00\00\bb\f3\ae\d9\8e\5f\ca\6f\00\00\00\00\00\00\00\00\54\58\0d\48\b9\7b\de\25\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\04\da\94\80\51\a1\2b\1b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\53\4a\74\ac\07\16\3a\35\00\00\00\00\00\00\00\00\e8\5c\91\97\89\9b\88\42\00\00\00\00\00\00\00\00\11\da\ba\fe\35\61\95\69\00\00\00\00\00\00\00\00\95\90\69\7e\83\b9\fa\43\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f5\78\c2\ba\ee\e0\1b\1d\00\00\00\00\00\00\00\00\32\17\73\69\2a\d9\62\64\00\00\00\00\00\00\00\00\fe\dc\cf\03\75\8f\7b\7d\00\00\00\00\00\00\00\00\3e\d4\c3\44\52\73\da\5c\00\00\00\00\00\00\00\00\a7\64\fa\6a\13\88\08\3a\00\00\00\00\00\00\00\00\d0\fd\b8\45\18\aa\8a\08\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\4b\86\78\f6\e2\54\ac\36\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d5\51\1c\a1\a2\44\6d\65\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\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\00\00\00\00\00\00\f2\88\d5\42\24\f1\a7\09\00\00\00\00\00\00\00\00\2f\eb\8a\53\6d\ed\11\0c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ac\a9\95\c3\dc\81\c9\37\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b2\27\00\97\d1\c8\7a\38\00\00\00\00\00\00\00\00\9e\31\c0\fc\05\7b\99\06\00\00\00\00\00\00\00\00\03\1f\f8\bd\e3\ec\1f\44\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\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\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\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\00\00\00\00\90\01\5d\f9\d7\02\f0\27\00\00\00\00\00\00\00\00\f4\41\b4\f7\8d\03\ec\31\00\00\00\00\00\00\00\00\71\52\a1\75\71\04\67\7e\00\00\00\00\00\00\00\00\86\d3\84\e9\c6\62\00\0f\00\00\00\00\00\00\00\00\68\08\e6\a3\78\7b\c0\52\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\35\a4\0e\d0\93\f8\cf\6a\00\00\00\00\00\00\00\00\43\4d\12\c4\b8\f6\83\05\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5c\4c\2e\59\c0\18\4f\74\00\00\00\00\00\00\00\00\73\df\79\6f\f0\de\62\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\92\36\17\d7\2b\3e\95\6d\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a2\22\0a\40\92\98\9c\1d\00\00\00\00\00\00\00\00\4b\ab\0c\d0\b6\be\03\25\00\00\00\00\00\00\00\00\1d\d6\0f\84\64\ae\44\2e\00\00\00\00\00\00\00\00\d2\e5\89\d2\fe\ec\ea\5c\00\00\00\00\00\00\00\00\47\5f\2c\87\3e\a8\25\74\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0b\55\01\10\4d\c6\6c\63\00\00\00\00\00\00\00\00\4e\aa\01\54\e0\f7\47\3c\00\00\00\00\00\00\00\00\71\0a\81\34\ec\fa\ac\65\00\00\00\00\00\00\00\00\0d\4d\a1\41\a7\39\18\7f\00\00\00\00\00\00\00\00\50\a0\09\12\11\48\de\1e\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\8e\66\9d\ab\60\12\25\36\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\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\00\00\00\00\00\00\b1\a3\7d\01\ef\40\98\16\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f3\2a\d3\58\0a\09\fd\17\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\8e\f9\64\15\10\af\bd\4a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b4\9b\e4\b4\f5\3c\fd\32\00\00\00\00\00\00\00\00\a1\c2\1d\22\33\8c\bc\3f\00\00\00\00\00\00\00\00\4a\33\a5\ea\3f\af\ab\0f\00\00\00\00\00\00\00\00\0e\40\a7\f2\87\4d\cb\29\00\00\00\00\00\00\00\00\12\10\51\ef\e9\20\3e\74\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\8e\54\f7\c2\b6\89\d0\1a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\92\88\65\7a\7c\a6\2f\7e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\65\a5\3e\7f\22\74\2a\55\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\85\2d\43\b0\69\75\2b\2d\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\73\9a\21\36\a9\70\1c\24\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\18\4e\a7\d8\44\86\2d\4b\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\43\62\93\3b\1f\75\6a\3d\00\00\00\00\00\00\00\00\d4\3a\78\0a\67\12\c5\0c\00\00\00\00\00\00\00\00\c5\24\8b\66\80\2b\fb\27\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\73\69\39\a0\f8\73\78\5e\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\fb\10\78\cc\40\a1\41\76\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\44\cd\bd\9f\fa\45\63\54\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\5d\48\cc\cc\ab\8e\ed\49\00\00\00\00\00\00\00\00\74\5a\ff\bf\56\f2\68\5c\00\00\00\00\00\00\00\00\11\31\ff\6f\ec\2e\83\73\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\eb\35\5f\e5\d2\1b\ce\28\00\00\00\00\00\00\00\00\b3\81\5b\cf\63\d1\80\79\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\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\00\00\00\00\00\00\d3\33\9f\56\9a\bf\d1\6e\00\00\00\00\00\00\00\00\c8\00\47\ec\80\2f\86\0a\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\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\00\00\00\00\00\00\74\ac\6c\e0\fc\cc\58\18\00\00\00\00\00\00\00\00\c8\eb\43\0c\1e\80\37\0f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\69\20\2a\f3\2e\b8\c6\47\00\00\00\00\00\00\00\00\41\54\fa\57\1d\33\dc\4c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\a6\23\77\d9\dd\0f\18\58\00\00\00\00\00\00\00\00\48\76\ea\a7\ea\09\0f\57\00\00\00\00\00\00\00\00\da\13\e5\51\65\cc\d2\2c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\63\b5\f9\f1\9a\db\c5\79\00\00\00\00\00\00\00\00\bc\22\78\ae\81\52\37\18\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\eb\51\61\a4\92\06\a6\5f\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\08\6c\90\22\b5\b9\12\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\d0\7f\09\c1\e3\5a\49\60\00\00\00\00\00\00\00\00\c4\df\4b\b1\9c\b1\5b\38\00\00\00\00\00\00\00\00\b5\d7\9e\dd\03\9e\72\46\00\00\00\00\00\00\00\00\d1\46\83\6a\c2\a2\07\6c\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\28\33\04\dc\f1\74\7f\73\00\00\00\00\00\00\00\00\f2\3f\05\53\2e\52\5f\50\00\00\00\00\00\00\00\00\ef\8f\c6\e7\b9\26\77\64\00\00\00\00\00\00\00\00\f5\19\dc\30\34\78\ca\5e\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\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\00\00\00\00\00\00\b0\ad\a4\b5\bb\27\36\72\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\b1\a7\e8\a5\0a\4f\3a\21\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\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\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\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\00\00\00\00\b0\59\89\94\6b\4f\0a\6a\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\95\21\0e\0f\8f\11\8e\6f\00\00\00\00\00\00\00\00\fb\a9\d1\d2\f2\95\71\4b\00\00\00\00\00\00\00\00\34\00\00\00\0b\00\00\00\01\fc\ff\ff\17\00\00\00\08\00\00\00\81\ff\ff\ff\00\00\80\3f\00\00\20\41\00\00\c8\42\00\00\7a\44\00\40\1c\46\00\50\c3\47\00\24\74\49\80\96\18\4b\20\bc\be\4c\28\6b\6e\4e\f9\02\15\50\00\00\00\00\00\00\00\00\00\00\f0\3f\00\00\00\00\00\00\24\40\00\00\00\00\00\00\59\40\00\00\00\00\00\40\8f\40\00\00\00\00\00\88\c3\40\00\00\00\00\00\6a\f8\40\00\00\00\00\80\84\2e\41\00\00\00\00\d0\12\63\41\00\00\00\00\84\d7\97\41\00\00\00\00\65\cd\cd\41\00\00\00\20\5f\a0\02\42\00\00\00\e8\76\48\37\42\00\00\00\a2\94\1a\6d\42\00\00\40\e5\9c\30\a2\42\00\00\90\1e\c4\bc\d6\42\00\00\34\26\f5\6b\0c\43\00\80\e0\37\79\c3\41\43\00\a0\d8\85\57\34\76\43\00\c8\4e\67\6d\c1\ab\43\00\3d\91\60\e4\58\e1\43\40\8c\b5\78\1d\af\15\44\50\ef\e2\d6\e4\1a\4b\44\92\d5\4d\06\cf\f0\80\44\a0\00\80\16\00\20\01\20\02\20\03\20\04\20\05\20\06\20\07\20\08\20\09\20\0a\20\2f\20\5f\20\00\30\ad\00\8b\03\8d\03\a2\03\30\05\90\05\dd\06\3f\08\5f\08\b5\08\e2\08\84\09\a9\09\b1\09\de\09\04\0a\29\0a\31\0a\34\0a\37\0a\3d\0a\5d\0a\84\0a\8e\0a\92\0a\a9\0a\b1\0a\b4\0a\c6\0a\ca\0a\00\0b\04\0b\29\0b\31\0b\34\0b\5e\0b\84\0b\91\0b\9b\0b\9d\0b\c9\0b\0d\0c\11\0c\29\0c\45\0c\49\0c\57\0c\8d\0c\91\0c\a9\0c\b4\0c\c5\0c\c9\0c\df\0c\f0\0c\0d\0d\11\0d\45\0d\49\0d\80\0d\84\0d\b2\0d\bc\0d\d5\0d\d7\0d\83\0e\85\0e\8b\0e\a4\0e\a6\0e\c5\0e\c7\0e\48\0f\98\0f\bd\0f\cd\0f\c6\10\49\12\57\12\59\12\89\12\b1\12\bf\12\c1\12\d7\12\11\13\80\16\0d\17\6d\17\71\17\1f\19\5f\1a\fa\1d\58\1f\5a\1f\5c\1f\5e\1f\b5\1f\c5\1f\dc\1f\f5\1f\8f\20\96\2b\2f\2c\5f\2c\26\2d\a7\2d\af\2d\b7\2d\bf\2d\c7\2d\cf\2d\d7\2d\df\2d\9a\2e\40\30\30\31\8f\31\1f\32\ce\a9\ff\a9\27\ab\2f\ab\37\fb\3d\fb\3f\fb\42\fb\45\fb\53\fe\67\fe\75\fe\e7\ff\0c\00\27\00\3b\00\3e\00\8f\01\9e\03\09\08\36\08\56\08\f3\08\04\0a\14\0a\18\0a\7f\0e\aa\0e\bd\10\35\11\e0\11\12\12\87\12\89\12\8e\12\9e\12\04\13\29\13\31\13\34\13\3a\13\5c\14\14\19\17\19\36\19\09\1c\37\1c\a8\1c\07\1d\0a\1d\3b\1d\3e\1d\66\1d\69\1d\8f\1d\92\1d\6f\24\5f\6a\5a\6b\62\6b\55\d4\9d\d4\ad\d4\ba\d4\bc\d4\c4\d4\06\d5\15\d5\1d\d5\3a\d5\3f\d5\45\d5\51\d5\a0\da\07\e0\22\e0\25\e0\04\ee\20\ee\23\ee\28\ee\33\ee\38\ee\3a\ee\48\ee\4a\ee\4c\ee\50\ee\53\ee\58\ee\5a\ee\5c\ee\5e\ee\60\ee\63\ee\6b\ee\73\ee\78\ee\7d\ee\7f\ee\8a\ee\a4\ee\aa\ee\c0\f0\d0\f0\79\f9\cc\f9\93\fb\20\00\7e\00\a1\00\77\03\7a\03\7f\03\84\03\56\05\59\05\8a\05\8d\05\c7\05\d0\05\ea\05\ef\05\f4\05\06\06\1b\06\1e\06\0d\07\10\07\4a\07\4d\07\b1\07\c0\07\fa\07\fd\07\2d\08\30\08\5b\08\5e\08\6a\08\a0\08\c7\08\d3\08\8c\09\8f\09\90\09\93\09\b2\09\b6\09\b9\09\bc\09\c4\09\c7\09\c8\09\cb\09\ce\09\d7\09\d7\09\dc\09\e3\09\e6\09\fe\09\01\0a\0a\0a\0f\0a\10\0a\13\0a\39\0a\3c\0a\42\0a\47\0a\48\0a\4b\0a\4d\0a\51\0a\51\0a\59\0a\5e\0a\66\0a\76\0a\81\0a\b9\0a\bc\0a\cd\0a\d0\0a\d0\0a\e0\0a\e3\0a\e6\0a\f1\0a\f9\0a\0c\0b\0f\0b\10\0b\13\0b\39\0b\3c\0b\44\0b\47\0b\48\0b\4b\0b\4d\0b\55\0b\57\0b\5c\0b\63\0b\66\0b\77\0b\82\0b\8a\0b\8e\0b\95\0b\99\0b\9f\0b\a3\0b\a4\0b\a8\0b\aa\0b\ae\0b\b9\0b\be\0b\c2\0b\c6\0b\cd\0b\d0\0b\d0\0b\d7\0b\d7\0b\e6\0b\fa\0b\00\0c\39\0c\3d\0c\4d\0c\55\0c\5a\0c\60\0c\63\0c\66\0c\6f\0c\77\0c\b9\0c\bc\0c\cd\0c\d5\0c\d6\0c\de\0c\e3\0c\e6\0c\f2\0c\00\0d\4f\0d\54\0d\63\0d\66\0d\96\0d\9a\0d\bd\0d\c0\0d\c6\0d\ca\0d\ca\0d\cf\0d\df\0d\e6\0d\ef\0d\f2\0d\f4\0d\01\0e\3a\0e\3f\0e\5b\0e\81\0e\bd\0e\c0\0e\cd\0e\d0\0e\d9\0e\dc\0e\df\0e\00\0f\6c\0f\71\0f\da\0f\00\10\c7\10\cd\10\cd\10\d0\10\4d\12\50\12\5d\12\60\12\8d\12\90\12\b5\12\b8\12\c5\12\c8\12\15\13\18\13\5a\13\5d\13\7c\13\80\13\99\13\a0\13\f5\13\f8\13\fd\13\00\14\9c\16\a0\16\f8\16\00\17\14\17\20\17\36\17\40\17\53\17\60\17\73\17\80\17\dd\17\e0\17\e9\17\f0\17\f9\17\00\18\0d\18\10\18\19\18\20\18\78\18\80\18\aa\18\b0\18\f5\18\00\19\2b\19\30\19\3b\19\40\19\40\19\44\19\6d\19\70\19\74\19\80\19\ab\19\b0\19\c9\19\d0\19\da\19\de\19\1b\1a\1e\1a\7c\1a\7f\1a\89\1a\90\1a\99\1a\a0\1a\ad\1a\b0\1a\c0\1a\00\1b\4b\1b\50\1b\7c\1b\80\1b\f3\1b\fc\1b\37\1c\3b\1c\49\1c\4d\1c\88\1c\90\1c\ba\1c\bd\1c\c7\1c\d0\1c\fa\1c\00\1d\15\1f\18\1f\1d\1f\20\1f\45\1f\48\1f\4d\1f\50\1f\7d\1f\80\1f\d3\1f\d6\1f\ef\1f\f2\1f\fe\1f\10\20\27\20\30\20\5e\20\70\20\71\20\74\20\9c\20\a0\20\bf\20\d0\20\f0\20\00\21\8b\21\90\21\26\24\40\24\4a\24\60\24\73\2b\76\2b\f3\2c\f9\2c\27\2d\2d\2d\2d\2d\30\2d\67\2d\6f\2d\70\2d\7f\2d\96\2d\a0\2d\52\2e\80\2e\f3\2e\00\2f\d5\2f\f0\2f\fb\2f\01\30\96\30\99\30\ff\30\05\31\e3\31\f0\31\fc\9f\00\a0\8c\a4\90\a4\c6\a4\d0\a4\2b\a6\40\a6\f7\a6\00\a7\bf\a7\c2\a7\ca\a7\f5\a7\2c\a8\30\a8\39\a8\40\a8\77\a8\80\a8\c5\a8\ce\a8\d9\a8\e0\a8\53\a9\5f\a9\7c\a9\80\a9\d9\a9\de\a9\36\aa\40\aa\4d\aa\50\aa\59\aa\5c\aa\c2\aa\db\aa\f6\aa\01\ab\06\ab\09\ab\0e\ab\11\ab\16\ab\20\ab\6b\ab\70\ab\ed\ab\f0\ab\f9\ab\00\ac\a3\d7\b0\d7\c6\d7\cb\d7\fb\d7\00\f9\6d\fa\70\fa\d9\fa\00\fb\06\fb\13\fb\17\fb\1d\fb\c1\fb\d3\fb\3f\fd\50\fd\8f\fd\92\fd\c7\fd\f0\fd\fd\fd\00\fe\19\fe\20\fe\6b\fe\70\fe\fc\fe\01\ff\be\ff\c2\ff\c7\ff\ca\ff\cf\ff\d2\ff\d7\ff\da\ff\dc\ff\e0\ff\ee\ff\fc\ff\fd\ff\00\00\00\00\01\00\4d\00\01\00\50\00\01\00\5d\00\01\00\80\00\01\00\fa\00\01\00\00\01\01\00\02\01\01\00\07\01\01\00\33\01\01\00\37\01\01\00\9c\01\01\00\a0\01\01\00\a0\01\01\00\d0\01\01\00\fd\01\01\00\80\02\01\00\9c\02\01\00\a0\02\01\00\d0\02\01\00\e0\02\01\00\fb\02\01\00\00\03\01\00\23\03\01\00\2d\03\01\00\4a\03\01\00\50\03\01\00\7a\03\01\00\80\03\01\00\c3\03\01\00\c8\03\01\00\d5\03\01\00\00\04\01\00\9d\04\01\00\a0\04\01\00\a9\04\01\00\b0\04\01\00\d3\04\01\00\d8\04\01\00\fb\04\01\00\00\05\01\00\27\05\01\00\30\05\01\00\63\05\01\00\6f\05\01\00\6f\05\01\00\00\06\01\00\36\07\01\00\40\07\01\00\55\07\01\00\60\07\01\00\67\07\01\00\00\08\01\00\05\08\01\00\08\08\01\00\38\08\01\00\3c\08\01\00\3c\08\01\00\3f\08\01\00\9e\08\01\00\a7\08\01\00\af\08\01\00\e0\08\01\00\f5\08\01\00\fb\08\01\00\1b\09\01\00\1f\09\01\00\39\09\01\00\3f\09\01\00\3f\09\01\00\80\09\01\00\b7\09\01\00\bc\09\01\00\cf\09\01\00\d2\09\01\00\06\0a\01\00\0c\0a\01\00\35\0a\01\00\38\0a\01\00\3a\0a\01\00\3f\0a\01\00\48\0a\01\00\50\0a\01\00\58\0a\01\00\60\0a\01\00\9f\0a\01\00\c0\0a\01\00\e6\0a\01\00\eb\0a\01\00\f6\0a\01\00\00\0b\01\00\35\0b\01\00\39\0b\01\00\55\0b\01\00\58\0b\01\00\72\0b\01\00\78\0b\01\00\91\0b\01\00\99\0b\01\00\9c\0b\01\00\a9\0b\01\00\af\0b\01\00\00\0c\01\00\48\0c\01\00\80\0c\01\00\b2\0c\01\00\c0\0c\01\00\f2\0c\01\00\fa\0c\01\00\27\0d\01\00\30\0d\01\00\39\0d\01\00\60\0e\01\00\ad\0e\01\00\b0\0e\01\00\b1\0e\01\00\00\0f\01\00\27\0f\01\00\30\0f\01\00\59\0f\01\00\b0\0f\01\00\cb\0f\01\00\e0\0f\01\00\f6\0f\01\00\00\10\01\00\4d\10\01\00\52\10\01\00\6f\10\01\00\7f\10\01\00\c1\10\01\00\d0\10\01\00\e8\10\01\00\f0\10\01\00\f9\10\01\00\00\11\01\00\47\11\01\00\50\11\01\00\76\11\01\00\80\11\01\00\f4\11\01\00\00\12\01\00\3e\12\01\00\80\12\01\00\a9\12\01\00\b0\12\01\00\ea\12\01\00\f0\12\01\00\f9\12\01\00\00\13\01\00\0c\13\01\00\0f\13\01\00\10\13\01\00\13\13\01\00\44\13\01\00\47\13\01\00\48\13\01\00\4b\13\01\00\4d\13\01\00\50\13\01\00\50\13\01\00\57\13\01\00\57\13\01\00\5d\13\01\00\63\13\01\00\66\13\01\00\6c\13\01\00\70\13\01\00\74\13\01\00\00\14\01\00\61\14\01\00\80\14\01\00\c7\14\01\00\d0\14\01\00\d9\14\01\00\80\15\01\00\b5\15\01\00\b8\15\01\00\dd\15\01\00\00\16\01\00\44\16\01\00\50\16\01\00\59\16\01\00\60\16\01\00\6c\16\01\00\80\16\01\00\b8\16\01\00\c0\16\01\00\c9\16\01\00\00\17\01\00\1a\17\01\00\1d\17\01\00\2b\17\01\00\30\17\01\00\3f\17\01\00\00\18\01\00\3b\18\01\00\a0\18\01\00\f2\18\01\00\ff\18\01\00\06\19\01\00\09\19\01\00\09\19\01\00\0c\19\01\00\38\19\01\00\3b\19\01\00\46\19\01\00\50\19\01\00\59\19\01\00\a0\19\01\00\a7\19\01\00\aa\19\01\00\d7\19\01\00\da\19\01\00\e4\19\01\00\00\1a\01\00\47\1a\01\00\50\1a\01\00\a2\1a\01\00\c0\1a\01\00\f8\1a\01\00\00\1c\01\00\45\1c\01\00\50\1c\01\00\6c\1c\01\00\70\1c\01\00\8f\1c\01\00\92\1c\01\00\b6\1c\01\00\00\1d\01\00\36\1d\01\00\3a\1d\01\00\47\1d\01\00\50\1d\01\00\59\1d\01\00\60\1d\01\00\98\1d\01\00\a0\1d\01\00\a9\1d\01\00\e0\1e\01\00\f8\1e\01\00\b0\1f\01\00\b0\1f\01\00\c0\1f\01\00\f1\1f\01\00\ff\1f\01\00\99\23\01\00\00\24\01\00\74\24\01\00\80\24\01\00\43\25\01\00\00\30\01\00\2e\34\01\00\00\44\01\00\46\46\01\00\00\68\01\00\38\6a\01\00\40\6a\01\00\69\6a\01\00\6e\6a\01\00\6f\6a\01\00\d0\6a\01\00\ed\6a\01\00\f0\6a\01\00\f5\6a\01\00\00\6b\01\00\45\6b\01\00\50\6b\01\00\77\6b\01\00\7d\6b\01\00\8f\6b\01\00\40\6e\01\00\9a\6e\01\00\00\6f\01\00\4a\6f\01\00\4f\6f\01\00\87\6f\01\00\8f\6f\01\00\9f\6f\01\00\e0\6f\01\00\e4\6f\01\00\f0\6f\01\00\f1\6f\01\00\00\70\01\00\f7\87\01\00\00\88\01\00\d5\8c\01\00\00\8d\01\00\08\8d\01\00\00\b0\01\00\1e\b1\01\00\50\b1\01\00\52\b1\01\00\64\b1\01\00\67\b1\01\00\70\b1\01\00\fb\b2\01\00\00\bc\01\00\6a\bc\01\00\70\bc\01\00\7c\bc\01\00\80\bc\01\00\88\bc\01\00\90\bc\01\00\99\bc\01\00\9c\bc\01\00\9f\bc\01\00\00\d0\01\00\f5\d0\01\00\00\d1\01\00\26\d1\01\00\29\d1\01\00\72\d1\01\00\7b\d1\01\00\e8\d1\01\00\00\d2\01\00\45\d2\01\00\e0\d2\01\00\f3\d2\01\00\00\d3\01\00\56\d3\01\00\60\d3\01\00\78\d3\01\00\00\d4\01\00\9f\d4\01\00\a2\d4\01\00\a2\d4\01\00\a5\d4\01\00\a6\d4\01\00\a9\d4\01\00\0a\d5\01\00\0d\d5\01\00\46\d5\01\00\4a\d5\01\00\a5\d6\01\00\a8\d6\01\00\cb\d7\01\00\ce\d7\01\00\8b\da\01\00\9b\da\01\00\af\da\01\00\00\e0\01\00\18\e0\01\00\1b\e0\01\00\2a\e0\01\00\00\e1\01\00\2c\e1\01\00\30\e1\01\00\3d\e1\01\00\40\e1\01\00\49\e1\01\00\4e\e1\01\00\4f\e1\01\00\c0\e2\01\00\f9\e2\01\00\ff\e2\01\00\ff\e2\01\00\00\e8\01\00\c4\e8\01\00\c7\e8\01\00\d6\e8\01\00\00\e9\01\00\4b\e9\01\00\50\e9\01\00\59\e9\01\00\5e\e9\01\00\5f\e9\01\00\71\ec\01\00\b4\ec\01\00\01\ed\01\00\3d\ed\01\00\00\ee\01\00\24\ee\01\00\27\ee\01\00\3b\ee\01\00\42\ee\01\00\42\ee\01\00\47\ee\01\00\54\ee\01\00\57\ee\01\00\64\ee\01\00\67\ee\01\00\9b\ee\01\00\a1\ee\01\00\bb\ee\01\00\f0\ee\01\00\f1\ee\01\00\00\f0\01\00\2b\f0\01\00\30\f0\01\00\93\f0\01\00\a0\f0\01\00\ae\f0\01\00\b1\f0\01\00\f5\f0\01\00\00\f1\01\00\ad\f1\01\00\e6\f1\01\00\02\f2\01\00\10\f2\01\00\3b\f2\01\00\40\f2\01\00\48\f2\01\00\50\f2\01\00\51\f2\01\00\60\f2\01\00\65\f2\01\00\00\f3\01\00\d7\f6\01\00\e0\f6\01\00\ec\f6\01\00\f0\f6\01\00\fc\f6\01\00\00\f7\01\00\73\f7\01\00\80\f7\01\00\d8\f7\01\00\e0\f7\01\00\eb\f7\01\00\00\f8\01\00\0b\f8\01\00\10\f8\01\00\47\f8\01\00\50\f8\01\00\59\f8\01\00\60\f8\01\00\87\f8\01\00\90\f8\01\00\ad\f8\01\00\b0\f8\01\00\b1\f8\01\00\00\f9\01\00\53\fa\01\00\60\fa\01\00\6d\fa\01\00\70\fa\01\00\74\fa\01\00\78\fa\01\00\7a\fa\01\00\80\fa\01\00\86\fa\01\00\90\fa\01\00\a8\fa\01\00\b0\fa\01\00\b6\fa\01\00\c0\fa\01\00\c2\fa\01\00\d0\fa\01\00\d6\fa\01\00\00\fb\01\00\ca\fb\01\00\f0\fb\01\00\f9\fb\01\00\00\00\02\00\dd\a6\02\00\00\a7\02\00\34\b7\02\00\40\b7\02\00\1d\b8\02\00\20\b8\02\00\a1\ce\02\00\b0\ce\02\00\e0\eb\02\00\00\f8\02\00\1d\fa\02\00\00\00\03\00\4a\13\03\00\00\01\0e\00\ef\01\0e\00\00\00\00\00\00\00\00\00\c0\39\00\00\00\00\00\00\01\00\00\00\00\00\00\00\60\3a\00\00\01\00\00\00\01\00\00\00\00\00\00\00\b7\7b\00\00\02\00\00\00\01\00\00\00\00\00\00\00\b4\81\00\00\03\00\00\00\02\00\00\00\00\00\00\00\b7\81\00\00\03\00\00\00\02\00\00\00\00\00\00\00\ba\81\00\00\04\00\00\00\02\00\00\00\00\00\00\00\be\81\00\00\05\00\00\00\03\00\00\00\00\00\00\00\c3\81\00\00\05\00\00\00\03\00\00\00\00\00\00\00\c8\81\00\00\06\00\00\00\03\00\00\00\00\00\00\00\ce\81\00\00\07\00\00\00\04\00\00\00\00\00\00\00\d5\81\00\00\07\00\00\00\04\00\00\00\00\00\00\00\dc\81\00\00\08\00\00\00\04\00\00\00\00\00\00\00\e4\81\00\00\09\00\00\00\04\00\00\00\00\00\00\00\ed\81\00\00\0a\00\00\00\05\00\00\00\00\00\00\00\f7\81\00\00\0a\00\00\00\05\00\00\00\00\00\00\00\01\82\00\00\0b\00\00\00\05\00\00\00\00\00\00\00\0c\82\00\00\0c\00\00\00\06\00\00\00\00\00\00\00\18\82\00\00\0c\00\00\00\06\00\00\00\00\00\00\00\24\82\00\00\0d\00\00\00\06\00\00\00\00\00\00\00\31\82\00\00\0e\00\00\00\07\00\00\00\00\00\00\00\3f\82\00\00\0e\00\00\00\07\00\00\00\00\00\00\00\4d\82\00\00\0f\00\00\00\07\00\00\00\00\00\00\00\5c\82\00\00\10\00\00\00\07\00\00\00\00\00\00\00\6c\82\00\00\11\00\00\00\08\00\00\00\00\00\00\00\7d\82\00\00\11\00\00\00\08\00\00\00\00\00\00\00\8e\82\00\00\12\00\00\00\08\00\00\00\00\00\00\00\a0\82\00\00\13\00\00\00\09\00\00\00\00\00\00\00\b3\82\00\00\13\00\00\00\09\00\00\00\00\00\00\00\c6\82\00\00\14\00\00\00\09\00\00\00\00\00\00\00\da\82\00\00\15\00\00\00\0a\00\00\00\00\00\00\00\ef\82\00\00\15\00\00\00\0a\00\00\00\00\00\00\00\04\83\00\00\16\00\00\00\0a\00\00\00\00\00\00\00\1a\83\00\00\17\00\00\00\0a\00\00\00\00\00\00\00\31\83\00\00\18\00\00\00\0b\00\00\00\00\00\00\00\49\83\00\00\18\00\00\00\0b\00\00\00\00\00\00\00\61\83\00\00\19\00\00\00\0b\00\00\00\00\00\00\00\7a\83\00\00\1a\00\00\00\0c\00\00\00\00\00\00\00\94\83\00\00\1a\00\00\00\0c\00\00\00\00\00\00\00\ae\83\00\00\1b\00\00\00\0c\00\00\00\00\00\00\00\c9\83\00\00\1c\00\00\00\0d\00\00\00\00\00\00\00\e5\83\00\00\1c\00\00\00\0d\00\00\00\00\00\00\00\01\84\00\00\1d\00\00\00\0d\00\00\00\00\00\00\00\1e\84\00\00\1e\00\00\00\0d\00\00\00\00\00\00\00\3c\84\00\00\1f\00\00\00\0e\00\00\00\00\00\00\00\5b\84\00\00\1f\00\00\00\0e\00\00\00\00\00\00\00\7a\84\00\00\20\00\00\00\0e\00\00\00\00\00\00\00\9a\84\00\00\21\00\00\00\0f\00\00\00\00\00\00\00\bb\84\00\00\21\00\00\00\0f\00\00\00\00\00\00\00\dc\84\00\00\22\00\00\00\0f\00\00\00\00\00\00\00\fe\84\00\00\23\00\00\00\10\00\00\00\00\00\00\00\21\85\00\00\23\00\00\00\10\00\00\00\00\00\00\00\44\85\00\00\24\00\00\00\10\00\00\00\00\00\00\00\68\85\00\00\25\00\00\00\10\00\00\00\00\00\00\00\8d\85\00\00\26\00\00\00\11\00\00\00\00\00\00\00\b3\85\00\00\26\00\00\00\11\00\00\00\00\00\00\00\d9\85\00\00\27\00\00\00\11\00\00\00\00\00\00\00\00\86\00\00\28\00\00\00\12\00\00\00\00\00\00\00\28\86\00\00\28\00\00\00\12\00\00\00\00\00\00\00\50\86\00\00\29\00\00\00\12\00\00\00\00\00\00\00\79\86\00\00\2a\00\00\00\13\00\00\00\00\00\00\00\a3\86\00\00\2a\00\00\00\00\00\00\00\01\00\00\00\03\00\00\00\06\00\00\00\09\00\00\00\0d\00\00\00\10\00\00\00\13\00\00\00\17\00\00\00\1a\00\00\00\00\00\00\00\01\00\00\00\00\00\00\00\0a\00\00\00\00\00\00\00\64\00\00\00\00\00\00\00\e8\03\00\00\00\00\00\00\10\27\00\00\00\00\00\00\a0\86\01\00\00\00\00\00\40\42\0f\00\00\00\00\00\80\96\98\00\00\00\00\00\00\e1\f5\05\00\00\00\00\00\ca\9a\3b\00\00\00\00\00\e4\0b\54\02\00\00\00\00\e8\76\48\17\00\00\00\00\10\a5\d4\e8\00\00\00\00\a0\72\4e\18\09\00\00\00\40\7a\10\f3\5a\00\00\00\80\c6\a4\7e\8d\03\00\00\00\c1\6f\f2\86\23\00\00\00\8a\5d\78\45\63\01\00\00\64\a7\b3\b6\e0\0d\00\00\00\00\00\00\00\00\80\bf\a0\bf\80\9f\90\bf\80\8f\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f0\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\13\03\03\03\03\03\03\03\03\03\03\03\03\23\03\03\34\04\04\04\44\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\f1\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\00\00\00\00\00\30\61\73\73\65\72\74\20\66\61\69\6c\65\64\20\28\61\73\73\65\72\74\20\66\61\69\6c\65\64\3a\20\6e\69\6c\20\6d\61\70\2e\6d\61\70\2e\77\61\3a\32\30\3a\38\70\61\6e\69\63\3a\20\74\72\75\65\66\61\6c\73\65\4e\61\4e\2b\49\6e\66\2d\49\6e\66\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\0a\5b\2f\5d\69\6e\74\65\67\65\72\20\6f\76\65\72\66\6c\6f\77\62\69\74\73\2e\77\61\3a\35\30\32\3a\38\69\6e\74\65\67\65\72\20\64\69\76\69\64\65\20\62\79\20\7a\65\72\6f\62\69\74\73\2e\77\61\3a\35\30\35\3a\38\62\69\74\73\2e\77\61\3a\35\32\32\3a\38\62\69\74\73\2e\77\61\3a\35\32\35\3a\38\00\01\02\02\03\03\03\03\04\04\04\04\04\04\04\04\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\05\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\06\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\07\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\08\00\01\01\02\01\02\02\03\01\02\02\03\02\03\03\04\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\01\02\02\03\02\03\03\04\02\03\03\04\03\04\04\05\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\02\03\03\04\03\04\04\05\03\04\04\05\04\05\05\06\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\03\04\04\05\04\05\05\06\04\05\05\06\05\06\06\07\04\05\05\06\05\06\06\07\05\06\06\07\06\07\07\08\00\80\40\c0\20\a0\60\e0\10\90\50\d0\30\b0\70\f0\08\88\48\c8\28\a8\68\e8\18\98\58\d8\38\b8\78\f8\04\84\44\c4\24\a4\64\e4\14\94\54\d4\34\b4\74\f4\0c\8c\4c\cc\2c\ac\6c\ec\1c\9c\5c\dc\3c\bc\7c\fc\02\82\42\c2\22\a2\62\e2\12\92\52\d2\32\b2\72\f2\0a\8a\4a\ca\2a\aa\6a\ea\1a\9a\5a\da\3a\ba\7a\fa\06\86\46\c6\26\a6\66\e6\16\96\56\d6\36\b6\76\f6\0e\8e\4e\ce\2e\ae\6e\ee\1e\9e\5e\de\3e\be\7e\fe\01\81\41\c1\21\a1\61\e1\11\91\51\d1\31\b1\71\f1\09\89\49\c9\29\a9\69\e9\19\99\59\d9\39\b9\79\f9\05\85\45\c5\25\a5\65\e5\15\95\55\d5\35\b5\75\f5\0d\8d\4d\cd\2d\ad\6d\ed\1d\9d\5d\dd\3d\bd\7d\fd\03\83\43\c3\23\a3\63\e3\13\93\53\d3\33\b3\73\f3\0b\8b\4b\cb\2b\ab\6b\eb\1b\9b\5b\db\3b\bb\7b\fb\07\87\47\c7\27\a7\67\e7\17\97\57\d7\37\b7\77\f7\0f\8f\4f\cf\2f\af\6f\ef\1f\9f\5f\df\3f\bf\7f\ff\08\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\06\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\07\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\06\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\05\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\04\00\01\00\02\00\01\00\03\00\01\00\02\00\01\00\41\74\6f\69\54\52\55\45\54\72\75\65\46\41\4c\53\45\46\61\6c\73\65\50\61\72\73\65\42\6f\6f\6c\50\61\72\73\65\46\6c\6f\61\74\50\61\72\73\65\49\6e\74\50\61\72\73\65\55\69\6e\74\5c\61\5c\62\5c\66\5c\6e\5c\72\5c\74\5c\76\5c\78\5c\75\5c\55\69\6e\76\61\6c\69\64\20\62\61\73\65\20\69\6e\76\61\6c\69\64\20\62\69\74\20\73\69\7a\65\20\30\31\32\33\34\35\36\37\38\39\41\42\43\44\45\46\73\74\72\63\6f\6e\76\3a\20\69\6c\6c\65\67\61\6c\20\41\70\70\65\6e\64\49\6e\74\2f\46\6f\72\6d\61\74\49\6e\74\20\62\61\73\65\69\74\6f\61\2e\77\61\3a\38\37\3a\38\30\30\30\31\30\32\30\33\30\34\30\35\30\36\30\37\30\38\30\39\31\30\31\31\31\32\31\33\31\34\31\35\31\36\31\37\31\38\31\39\32\30\32\31\32\32\32\33\32\34\32\35\32\36\32\37\32\38\32\39\33\30\33\31\33\32\33\33\33\34\33\35\33\36\33\37\33\38\33\39\34\30\34\31\34\32\34\33\34\34\34\35\34\36\34\37\34\38\34\39\35\30\35\31\35\32\35\33\35\34\35\35\35\36\35\37\35\38\35\39\36\30\36\31\36\32\36\33\36\34\36\35\36\36\36\37\36\38\36\39\37\30\37\31\37\32\37\33\37\34\37\35\37\36\37\37\37\38\37\39\38\30\38\31\38\32\38\33\38\34\38\35\38\36\38\37\38\38\38\39\39\30\39\31\39\32\39\33\39\34\39\35\39\36\39\37\39\38\39\39\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\67\68\69\6a\6b\6c\6d\6e\6f\70\71\72\73\74\75\76\77\78\79\7a\73\74\72\63\6f\6e\76\3a\20\69\6c\6c\65\67\61\6c\20\41\70\70\65\6e\64\46\6c\6f\61\74\2f\46\6f\72\6d\61\74\46\6c\6f\61\74\20\62\69\74\53\69\7a\65\66\74\6f\61\2e\77\61\3a\36\34\3a\38\76\61\6c\75\65\20\6f\75\74\20\6f\66\20\72\61\6e\67\65\69\6e\76\61\6c\69\64\20\73\79\6e\74\61\78\31\32\35\36\32\35\33\31\32\35\31\35\36\32\35\37\38\31\32\35\33\39\30\36\32\35\31\39\35\33\31\32\35\39\37\36\35\36\32\35\34\38\38\32\38\31\32\35\32\34\34\31\34\30\36\32\35\31\32\32\30\37\30\33\31\32\35\36\31\30\33\35\31\35\36\32\35\33\30\35\31\37\35\37\38\31\32\35\31\35\32\35\38\37\38\39\30\36\32\35\37\36\32\39\33\39\34\35\33\31\32\35\33\38\31\34\36\39\37\32\36\35\36\32\35\31\39\30\37\33\34\38\36\33\32\38\31\32\35\39\35\33\36\37\34\33\31\36\34\30\36\32\35\34\37\36\38\33\37\31\35\38\32\30\33\31\32\35\32\33\38\34\31\38\35\37\39\31\30\31\35\36\32\35\31\31\39\32\30\39\32\38\39\35\35\30\37\38\31\32\35\35\39\36\30\34\36\34\34\37\37\35\33\39\30\36\32\35\32\39\38\30\32\33\32\32\33\38\37\36\39\35\33\31\32\35\31\34\39\30\31\31\36\31\31\39\33\38\34\37\36\35\36\32\35\37\34\35\30\35\38\30\35\39\36\39\32\33\38\32\38\31\32\35\33\37\32\35\32\39\30\32\39\38\34\36\31\39\31\34\30\36\32\35\31\38\36\32\36\34\35\31\34\39\32\33\30\39\35\37\30\33\31\32\35\39\33\31\33\32\32\35\37\34\36\31\35\34\37\38\35\31\35\36\32\35\34\36\35\36\36\31\32\38\37\33\30\37\37\33\39\32\35\37\38\31\32\35\32\33\32\38\33\30\36\34\33\36\35\33\38\36\39\36\32\38\39\30\36\32\35\31\31\36\34\31\35\33\32\31\38\32\36\39\33\34\38\31\34\34\35\33\31\32\35\35\38\32\30\37\36\36\30\39\31\33\34\36\37\34\30\37\32\32\36\35\36\32\35\32\39\31\30\33\38\33\30\34\35\36\37\33\33\37\30\33\36\31\33\32\38\31\32\35\31\34\35\35\31\39\31\35\32\32\38\33\36\36\38\35\31\38\30\36\36\34\30\36\32\35\37\32\37\35\39\35\37\36\31\34\31\38\33\34\32\35\39\30\33\33\32\30\33\31\32\35\33\36\33\37\39\37\38\38\30\37\30\39\31\37\31\32\39\35\31\36\36\30\31\35\36\32\35\31\38\31\38\39\38\39\34\30\33\35\34\35\38\35\36\34\37\35\38\33\30\30\37\38\31\32\35\39\30\39\34\39\34\37\30\31\37\37\32\39\32\38\32\33\37\39\31\35\30\33\39\30\36\32\35\34\35\34\37\34\37\33\35\30\38\38\36\34\36\34\31\31\38\39\35\37\35\31\39\35\33\31\32\35\32\32\37\33\37\33\36\37\35\34\34\33\32\33\32\30\35\39\34\37\38\37\35\39\37\36\35\36\32\35\31\31\33\36\38\36\38\33\37\37\32\31\36\31\36\30\32\39\37\33\39\33\37\39\38\38\32\38\31\32\35\35\36\38\34\33\34\31\38\38\36\30\38\30\38\30\31\34\38\36\39\36\38\39\39\34\31\34\30\36\32\35\32\38\34\32\31\37\30\39\34\33\30\34\30\34\30\30\37\34\33\34\38\34\34\39\37\30\37\30\33\31\32\35\31\34\32\31\30\38\35\34\37\31\35\32\30\32\30\30\33\37\31\37\34\32\32\34\38\35\33\35\31\35\36\32\35\37\31\30\35\34\32\37\33\35\37\36\30\31\30\30\31\38\35\38\37\31\31\32\34\32\36\37\35\37\38\31\32\35\33\35\35\32\37\31\33\36\37\38\38\30\30\35\30\30\39\32\39\33\35\35\36\32\31\33\33\37\38\39\30\36\32\35\31\37\37\36\33\35\36\38\33\39\34\30\30\32\35\30\34\36\34\36\37\37\38\31\30\36\36\38\39\34\35\33\31\32\35\38\38\38\31\37\38\34\31\39\37\30\30\31\32\35\32\33\32\33\33\38\39\30\35\33\33\34\34\37\32\36\35\36\32\35\34\34\34\30\38\39\32\30\39\38\35\30\30\36\32\36\31\36\31\36\39\34\35\32\36\36\37\32\33\36\33\32\38\31\32\35\32\32\32\30\34\34\36\30\34\39\32\35\30\33\31\33\30\38\30\38\34\37\32\36\33\33\33\36\31\38\31\36\34\30\36\32\35\31\31\31\30\32\32\33\30\32\34\36\32\35\31\35\36\35\34\30\34\32\33\36\33\31\36\36\38\30\39\30\38\32\30\33\31\32\35\35\35\35\31\31\31\35\31\32\33\31\32\35\37\38\32\37\30\32\31\31\38\31\35\38\33\34\30\34\35\34\31\30\31\35\36\32\35\32\37\37\35\35\35\37\35\36\31\35\36\32\38\39\31\33\35\31\30\35\39\30\37\39\31\37\30\32\32\37\30\35\30\37\38\31\32\35\31\33\38\37\37\37\38\37\38\30\37\38\31\34\34\35\36\37\35\35\32\39\35\33\39\35\38\35\31\31\33\35\32\35\33\39\30\36\32\35\36\39\33\38\38\39\33\39\30\33\39\30\37\32\32\38\33\37\37\36\34\37\36\39\37\39\32\35\35\36\37\36\32\36\39\35\33\31\32\35\33\34\36\39\34\34\36\39\35\31\39\35\33\36\31\34\31\38\38\38\32\33\38\34\38\39\36\32\37\38\33\38\31\33\34\37\36\35\36\32\35\31\37\33\34\37\32\33\34\37\35\39\37\36\38\30\37\30\39\34\34\31\31\39\32\34\34\38\31\33\39\31\39\30\36\37\33\38\32\38\31\32\35\38\36\37\33\36\31\37\33\37\39\38\38\34\30\33\35\34\37\32\30\35\39\36\32\32\34\30\36\39\35\39\35\33\33\36\39\31\34\30\36\32\35\6d\75\6c\74\31\32\38\62\69\74\50\6f\77\31\30\3a\20\70\6f\77\65\72\20\6f\66\20\31\30\20\69\73\20\6f\75\74\20\6f\66\20\72\61\6e\67\65\66\74\6f\61\72\79\75\2e\77\61\3a\35\32\33\3a\38\6d\75\6c\74\36\34\62\69\74\50\6f\77\31\30\3a\20\70\6f\77\65\72\20\6f\66\20\31\30\20\69\73\20\6f\75\74\20\6f\66\20\72\61\6e\67\65\66\74\6f\61\72\79\75\2e\77\61\3a\34\39\35\3a\38\72\79\75\46\74\6f\61\46\69\78\65\64\33\32\20\63\61\6c\6c\65\64\20\77\69\74\68\20\6e\65\67\61\74\69\76\65\20\70\72\65\63\66\74\6f\61\72\79\75\2e\77\61\3a\31\38\3a\38\72\79\75\46\74\6f\61\46\69\78\65\64\33\32\20\63\61\6c\6c\65\64\20\77\69\74\68\20\70\72\65\63\20\3e\20\39\66\74\6f\61\72\79\75\2e\77\61\3a\32\31\3a\38\6e\6f\74\20\65\6e\6f\75\67\68\20\73\69\67\6e\69\66\69\63\61\6e\74\20\62\69\74\73\20\61\66\74\65\72\20\6d\75\6c\74\36\34\62\69\74\50\6f\77\31\30\66\74\6f\61\72\79\75\2e\77\61\3a\34\39\3a\38\72\79\75\46\74\6f\61\46\69\78\65\64\36\34\20\63\61\6c\6c\65\64\20\77\69\74\68\20\70\72\65\63\20\3e\20\31\38\66\74\6f\61\72\79\75\2e\77\61\3a\38\38\3a\38\6e\6f\74\20\65\6e\6f\75\67\68\20\73\69\67\6e\69\66\69\63\61\6e\74\20\62\69\74\73\20\61\66\74\65\72\20\6d\75\6c\74\31\32\38\62\69\74\50\6f\77\31\30\66\74\6f\61\72\79\75\2e\77\61\3a\31\31\39\3a\38\66\74\6f\61\72\79\75\2e\77\61\3a\32\35\39\3a\38\69\6e\66\69\6e\69\74\79\6e\61\6e\47\41\4d\45\20\4f\56\45\52\20\50\52\45\53\53\20\58\4c\45\56\45\4c\53\43\4f\52\45\42\45\53\54\57\61\2d\6c\61\6e\67\73\74\72\63\6f\6e\76\2e\70\61\72\73\69\6e\67\20\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\01\00\00\00\ff\ff\ff\ff\02\00\00\00\ff\ff\ff\ff\02\00\00\00\fe\ff\ff\ff\14\00\00\00\00\00\00\00\03\00\00\00\ff\ff\ff\ff\03\00\00\00\fe\ff\ff\ff\15\00\00\00\00\00\00\00\38\b4\00\00\00\00\00\00\40\b4\00\00\48\b4\00\00\58\b4\00\00\60\b4\00\00") + (elem (i32.const 1) $$string.$$compAddr) + (elem (i32.const 2) $$u8.$$block.$$onFree) + (elem (i32.const 3) $$string.underlying.$$onFree) + (elem (i32.const 4) $$void.$$block.$$onFree) + (elem (i32.const 5) $$void.$ref.underlying.$$onFree) + (elem (i32.const 6) $$i`0`.underlying.$$onFree) + (elem (i32.const 7) $$runtime.mapNode.$$onFree) + (elem (i32.const 8) $$runtime.mapNode.$$block.$$onFree) + (elem (i32.const 9) $$runtime.mapNode.$slice.underlying.$$onFree) + (elem (i32.const 10) $$runtime.mapImp.$$onFree) + (elem (i32.const 11) $$runtime.mapImp.$$block.$$onFree) + (elem (i32.const 12) $$runtime.mapImp.$ref.underlying.$$onFree) + (elem (i32.const 13) $$runtime.mapIter.$$onFree) + (elem (i32.const 14) $$runtime.mapNode.$array1.underlying.$$onFree) + (elem (i32.const 15) $$errors.errorString.$$onFree) + (elem (i32.const 16) $$.error.underlying.$$onFree) + (elem (i32.const 17) $$strconv.NumError.$$onFree) + (elem (i32.const 18) $$u8.$slice.underlying.$$onFree) + (elem (i32.const 19) $$strconv.decimalSlice.$$onFree) + (elem (i32.const 20) $errors.errorString.Error) + (elem (i32.const 21) $strconv.NumError.Error) +) diff --git a/w4-tetris/wasm4.css b/w4-tetris/wasm4.css new file mode 100644 index 00000000..7c7e0155 --- /dev/null +++ b/w4-tetris/wasm4.css @@ -0,0 +1 @@ +html,body{height:100%;margin:0}@font-face{font-family:wasm4-font;src:url(data:font/woff2;base64,d09GMgABAAAAAAegAA0AAAAAKHwAAAdOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYGYAA0CAQRCArGHLlRC4FCAAE2AiQDgUIEIAWDJgcgG4ggUVRQhkQRbBylAWCR/eGAmzBgcbVSEQV1MFRs8Ts/TVirjdcmzZum+foZqYGq4TdA2FbzSDx8f5+ee7Ns74fim/BWoE4AP1Wwc6lakA20VO54RMrR2gpfsF97s/P3xKMD8UIkBZNFk2ondPz/n9v9G4ROvGcJ9ejaJw8RK4kYUOt8zO4KgUDgofBQGDwMCjsf2FAHKMuSxfQKGICKTqpw8TAYfHywFNs02zbbJDAgUAD+z7l4byADjcSJjXhAkX+V15z5PA0HfmEHdHqW5OfXT1PsVLlV5AkPgm14EPW/1ds0nWuhRkHhmb/7JBfdZazTpbTGMrxynHPs9XO634fF7LHGGYvKrld7xSsgpTyfJqABJJGiNEP0JXXyPy/gUd+Oq0QckHKAEocXne/KDv7oOwSG0MMrDDRgQ0HCAFZ0Ar7LFhgi+t39/2Lzv/+fFLDLD/G/EugBH+CBbj+wXA/giv6ofkm3ZAqiNhrXlgkd4AIQwJg18/ES0QEKIZXedNDpbH9FmDzLD3D97q2rzT3TRXdngPKMRazVYXWiUtlpVnZTprWt4J6wbQiLK7o/u+vhZr91OWHc2/gH+Qyq505NGWB7ui1DWkl94VWLPsznaf1Socl++32X0B1fLASbyLYi6TAO6LlJoPwXg5YAIDQZ2GxXd7yaLzKdTNrAjkIbD1Sca4fUrWmNr+IUViUJVbuuu66KDZXmnH4fMCQ5ukPCRJDdgit52b4Et5RuCK2ZjuBXWu6K6zJkW4qAxA6Y0BWJpS9UgZPLQ3iSuQWAodKrD1VK44bhgApzKGely9pyBS45qWsGAx7ELrGRNkqZX2rpG1no3KgrF9zv29HXdcAmEYpTeqXQunmcM1KNLri1l3ETKhr/jkuZpYQWCtMUkAOA+G31Ezc8TlQCcX0AFiJM8A/Ja5ANNF3s+Aj1HaR91PPZwCslbEBH81Bta7KBGjhAdpteqxIHxKrVrglxhbYG0qRrxPwYd+RA3LtpvfDZhqQKKExdOI4SSCr8hboPCCdUxuYcsLQ2TWw8XO+W8S8kg28tTsGhGLgAGRwq7qpSd5XiJn8+0m7km8BBpAhQ5rqdtpQ58nsk6UVIA1DbFmX+klm8NFI+mk+Ll5BXDAY1ZsGRNeDGIUiLnIISx8u1n++kPlx5KbJLJOSiIDP1dfY4drhKlPE7oTwc9gEI5vBFDpQ2ih/QCB4V+GrFeAMbdFltBSpSqZm9jTuVVM1CVTyG+Haj1uZhNOXIU0xda+WccPIV0vAyy13AXHS7odKqX6lPnNQW29uptFF7hjud+bei1obGQ3mmpvE7YI+21Nlt7iq+tVb3XTcUFG5q31u2uVI1qvk971yZ+/NvzpZV1dNa7Wrems+vXZ7G0bjYrBMdM44xvrdfytxyouoAmPMIUnc0H1njzFfrgVdARZ2VnWXVw+0qv/fX8iYj698zzrSTOlorbpYF7dsMJFE7yW5kV/NV/wwJ/6VW+S3vk6u7s/frQR4kpi7JSQUksyJhl0BSNPS65eUmD+i8UGEYHhd5zmQA0oU5xN+qs8fdwfJZAQaqNDFTgSowOASAVTi4nNRD5CwJVyFK13cHxDEeWVQDvZU3CfsgXuwhIGxxAGE3sxM1QNCL5oTRpAtVec0/pJXNfeLQLO+973quQzeYBhK7GMFx18+4DtE1AX90lFeaawcfPwKbh9CZncWGRig514Ca6r5aIcMk1u7R7OyRfIjVldpkv/8QTig8xMfDoNqXMmPq6rWqoKMWvmXNIhNcLI1TokIhQLNwOGTfZxXWtBtNJFOwSQNl+3DGVwiBVU4+Oq0FeJi5E8VTE1ABD05R60ZWTc49DS4M1nMCCzmZSm7M8UWDSoiGvZPrWrGYd4bKvbh8oXu1Pnv2vrfKud0bz5t2kT7Ti8FNP4L9IJy/PdAULtKZAlxz2FahwUZvcI6aZm61UI4qEJ3XUpHb3NZcIBs7HYrbHf7GgFYvCv4JTMlVK5o9e10zmwVpEoUbhD8pWxVbCX6xdKM4RGTiZ/2PaYEZMh7uAHi1vTTwNaeeqsmWeoX+fERAY8Dlq8IlZUVTrzi35D7ANkN8liq6UConAkh2mBUCA+jNZ4cnuXvJDuFGvEUlaWfzT5MjGonslkNYRjXtmwJEQgbrm1xCr4/AZMWbVPGZ3SvOH9q/AaXqXNGRhP+VuL2mvmu8/zv9BnB5l14cMu1MBSJ04++6QDnTv1bPp6oZnRul1ORTFVkMUlS1LsSh2h2L41VW44wWXcvRhJYwoLfn7pCnX7rB3Zs4otOwC568tbQs/egw8kfbjvhpM06nOc/rWqbg7EicnAydmY7O4nomxNHJws4WxYXFJFGl55716GhGRqqjKI9kp3x0+aiPQqzthaSFKiR6LmZAzFysLXdGb3rZfIi6TEU7jgcy2geINtNWQpaBCnYWTmxqWDw0wzgfrJvzphPhoIstcvGIzuZO4UN1requPbF1HWhqLtgPf3YiwnTA/xIgKAA=)} diff --git a/w4-tetris/wasm4.js b/w4-tetris/wasm4.js new file mode 100644 index 00000000..e13db97d --- /dev/null +++ b/w4-tetris/wasm4.js @@ -0,0 +1,360 @@ +var wasm4=function(A){"use strict";/** + * @license + * Copyright 2019 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */var ve;const pt=globalThis,_t=pt.ShadowRoot&&(pt.ShadyCSS===void 0||pt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,St=Symbol(),Dt=new WeakMap;let Nt=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==St)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(_t&&t===void 0){const s=e!==void 0&&e.length===1;s&&(t=Dt.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&Dt.set(e,t))}return t}toString(){return this.cssText}};const _e=o=>new Nt(typeof o=="string"?o:o+"",void 0,St),ft=(o,...t)=>{const e=o.length===1?o[0]:t.reduce((s,i,n)=>s+(r=>{if(r._$cssResult$===!0)return r.cssText;if(typeof r=="number")return r;throw Error("Value passed to 'css' function must be a 'css' function result: "+r+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+o[n+1],o[0]);return new Nt(e,o,St)},Se=(o,t)=>{if(_t)o.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(const e of t){const s=document.createElement("style"),i=pt.litNonce;i!==void 0&&s.setAttribute("nonce",i),s.textContent=e.cssText,o.appendChild(s)}},Bt=_t?o=>o:o=>o instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return _e(e)})(o):o;/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const{is:xe,defineProperty:ke,getOwnPropertyDescriptor:Ce,getOwnPropertyNames:Te,getOwnPropertySymbols:Pe,getPrototypeOf:$e}=Object,U=globalThis,Ft=U.trustedTypes,Ie=Ft?Ft.emptyScript:"",xt=U.reactiveElementPolyfillSupport,tt=(o,t)=>o,mt={toAttribute(o,t){switch(t){case Boolean:o=o?Ie:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,t){let e=o;switch(t){case Boolean:e=o!==null;break;case Number:e=o===null?null:Number(o);break;case Object:case Array:try{e=JSON.parse(o)}catch{e=null}}return e}},kt=(o,t)=>!xe(o,t),Ht={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),U.litPropertyMetadata??(U.litPropertyMetadata=new WeakMap);class Y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=Ht){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){const s=Symbol(),i=this.getPropertyDescriptor(t,s,e);i!==void 0&&ke(this.prototype,t,i)}}static getPropertyDescriptor(t,e,s){const{get:i,set:n}=Ce(this.prototype,t)??{get(){return this[e]},set(r){this[e]=r}};return{get(){return i==null?void 0:i.call(this)},set(r){const c=i==null?void 0:i.call(this);n.call(this,r),this.requestUpdate(t,c,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Ht}static _$Ei(){if(this.hasOwnProperty(tt("elementProperties")))return;const t=$e(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(tt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(tt("properties"))){const e=this.properties,s=[...Te(e),...Pe(e)];for(const i of s)this.createProperty(i,e[i])}const t=this[Symbol.metadata];if(t!==null){const e=litPropertyMetadata.get(t);if(e!==void 0)for(const[s,i]of e)this.elementProperties.set(s,i)}this._$Eh=new Map;for(const[e,s]of this.elementProperties){const i=this._$Eu(e,s);i!==void 0&&this._$Eh.set(i,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const i of s)e.unshift(Bt(i))}else t!==void 0&&e.push(Bt(t));return e}static _$Eu(t,e){const s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var t;this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),(t=this.constructor.l)==null||t.forEach(e=>e(this))}addController(t){var e;(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&((e=t.hostConnected)==null||e.call(t))}removeController(t){var e;(e=this._$EO)==null||e.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Se(t,this.constructor.elementStyles),t}connectedCallback(){var t;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostConnected)==null?void 0:s.call(e)})}enableUpdating(t){}disconnectedCallback(){var t;(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostDisconnected)==null?void 0:s.call(e)})}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$EC(t,e){var n;const s=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,s);if(i!==void 0&&s.reflect===!0){const r=(((n=s.converter)==null?void 0:n.toAttribute)!==void 0?s.converter:mt).toAttribute(e,s.type);this._$Em=t,r==null?this.removeAttribute(i):this.setAttribute(i,r),this._$Em=null}}_$AK(t,e){var n;const s=this.constructor,i=s._$Eh.get(t);if(i!==void 0&&this._$Em!==i){const r=s.getPropertyOptions(i),c=typeof r.converter=="function"?{fromAttribute:r.converter}:((n=r.converter)==null?void 0:n.fromAttribute)!==void 0?r.converter:mt;this._$Em=i,this[i]=c.fromAttribute(e,r.type),this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){if(s??(s=this.constructor.getPropertyOptions(t)),!(s.hasChanged??kt)(this[t],e))return;this.P(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,e,s){this._$AL.has(t)||this._$AL.set(t,e),s.reflect===!0&&this._$Em!==t&&(this._$Ej??(this._$Ej=new Set)).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var s;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[n,r]of this._$Ep)this[n]=r;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[n,r]of i)r.wrapped!==!0||this._$AL.has(n)||this[n]===void 0||this.P(n,this[n],r)}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),(s=this._$EO)==null||s.forEach(i=>{var n;return(n=i.hostUpdate)==null?void 0:n.call(i)}),this.update(e)):this._$EU()}catch(i){throw t=!1,this._$EU(),i}t&&this._$AE(e)}willUpdate(t){}_$AE(t){var e;(e=this._$EO)==null||e.forEach(s=>{var i;return(i=s.hostUpdated)==null?void 0:i.call(s)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&(this._$Ej=this._$Ej.forEach(e=>this._$EC(e,this[e]))),this._$EU()}updated(t){}firstUpdated(t){}}Y.elementStyles=[],Y.shadowRootOptions={mode:"open"},Y[tt("elementProperties")]=new Map,Y[tt("finalized")]=new Map,xt==null||xt({ReactiveElement:Y}),(U.reactiveElementVersions??(U.reactiveElementVersions=[])).push("2.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const et=globalThis,yt=et.trustedTypes,Gt=yt?yt.createPolicy("lit-html",{createHTML:o=>o}):void 0,Wt="$lit$",O=`lit$${(Math.random()+"").slice(9)}$`,zt="?"+O,Ue=`<${zt}>`,D=document,st=()=>D.createComment(""),it=o=>o===null||typeof o!="object"&&typeof o!="function",Vt=Array.isArray,Oe=o=>Vt(o)||typeof(o==null?void 0:o[Symbol.iterator])=="function",Ct=`[ +\f\r]`,nt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,jt=/-->/g,Yt=/>/g,N=RegExp(`>|${Ct}(?:([^\\s"'>=/]+)(${Ct}*=${Ct}*(?:[^ +\f\r"'\`<>=]|("|')|))|$)`,"g"),Kt=/'/g,qt=/"/g,Xt=/^(?:script|style|textarea|title)$/i,Me=o=>(t,...e)=>({_$litType$:o,strings:t,values:e}),C=Me(1),K=Symbol.for("lit-noChange"),S=Symbol.for("lit-nothing"),Jt=new WeakMap,B=D.createTreeWalker(D,129);function Zt(o,t){if(!Array.isArray(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return Gt!==void 0?Gt.createHTML(t):t}const Le=(o,t)=>{const e=o.length-1,s=[];let i,n=t===2?"":"",r=nt;for(let c=0;c"?(r=i??nt,d=-1):l[1]===void 0?d=-2:(d=r.lastIndex-l[2].length,h=l[1],r=l[3]===void 0?N:l[3]==='"'?qt:Kt):r===qt||r===Kt?r=N:r===jt||r===Yt?r=nt:(r=N,i=void 0);const w=r===N&&o[c+1].startsWith("/>")?" ":"";n+=r===nt?a+Ue:d>=0?(s.push(h),a.slice(0,d)+Wt+a.slice(d)+O+w):a+O+(d===-2?c:w)}return[Zt(o,n+(o[e]||"")+(t===2?"":"")),s]};class rt{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let n=0,r=0;const c=t.length-1,a=this.parts,[h,l]=Le(t,e);if(this.el=rt.createElement(h,s),B.currentNode=this.el.content,e===2){const d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(i=B.nextNode())!==null&&a.length0){i.textContent=yt?yt.emptyScript:"";for(let w=0;w2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=S}_$AI(t,e=this,s,i){const n=this.strings;let r=!1;if(n===void 0)t=q(this,t,e,0),r=!it(t)||t!==this._$AH&&t!==K,r&&(this._$AH=t);else{const c=t;let a,h;for(t=n[0],a=0;a{const s=(e==null?void 0:e.renderBefore)??t;let i=s._$litPart$;if(i===void 0){const n=(e==null?void 0:e.renderBefore)??null;s._$litPart$=i=new ot(t.insertBefore(st(),n),n,void 0,e??{})}return i._$AI(o),i};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */class M extends Y{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;const t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=He(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Do)==null||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Do)==null||t.setConnected(!1)}render(){return K}}M._$litElement$=!0,M.finalized=!0,(ve=globalThis.litElementHydrateSupport)==null||ve.call(globalThis,{LitElement:M});const Pt=globalThis.litElementPolyfillSupport;Pt==null||Pt({LitElement:M}),(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const bt=o=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(o,t)}):customElements.define(o,t)};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Ge={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt},We=(o=Ge,t,e)=>{const{kind:s,metadata:i}=e;let n=globalThis.litPropertyMetadata.get(i);if(n===void 0&&globalThis.litPropertyMetadata.set(i,n=new Map),n.set(e.name,o),s==="accessor"){const{name:r}=e;return{set(c){const a=t.get.call(this);t.set.call(this,c),this.requestUpdate(r,a,o)},init(c){return c!==void 0&&this.P(r,void 0,o),c}}}if(s==="setter"){const{name:r}=e;return function(c){const a=this[r];t.call(this,c),this.requestUpdate(r,a,o)}}throw Error("Unsupported decorator location: "+s)};function ze(o){return(t,e)=>typeof e=="object"?We(o,t,e):((s,i,n)=>{const r=i.hasOwnProperty(n);return i.constructor.createProperty(n,r?{...s,wrapped:!0}:s),r?Object.getOwnPropertyDescriptor(i,n):void 0})(o,t,e)}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function at(o){return ze({...o,state:!0,attribute:!1})}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Qt=(o,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(o,t,e),e);/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function ct(o,t){return(e,s,i)=>{const n=r=>{var c;return((c=r.renderRoot)==null?void 0:c.querySelector(o))??null};if(t){const{get:r,set:c}=typeof s=="object"?e:i??(()=>{const a=Symbol();return{get(){return this[a]},set(h){this[a]=h}}})();return Qt(e,s,{get(){let a=r.call(this);return a===void 0&&(a=n(this),(a!==null||this.hasUpdated)&&c.call(this,a)),a}})}return Qt(e,s,{get(){return n(this)}})}}const E=160,x=160,X=1024,Ve="WASM-4",je=[14743759,8831084,3172432,464929],$t=4,lt=20,Ye=22,te=26,ee=28,Ke=30,qe=31,Xe=32,Je=160,L=1,F=2,J=16,Z=32,H=64,G=128,Ze=1,Qe=2,se=1,ie=2,ts=Uint8Array.of(255,255,255,255,255,255,255,255,199,199,199,207,207,255,207,255,147,147,147,255,255,255,255,255,147,1,147,147,147,1,147,255,239,131,47,131,233,3,239,255,157,91,55,239,217,181,115,255,143,39,39,143,37,51,129,255,207,207,207,255,255,255,255,255,243,231,207,207,207,231,243,255,159,207,231,231,231,207,159,255,255,147,199,1,199,147,255,255,255,231,231,129,231,231,255,255,255,255,255,255,255,207,207,159,255,255,255,129,255,255,255,255,255,255,255,255,255,207,207,255,253,251,247,239,223,191,127,255,199,179,57,57,57,155,199,255,231,199,231,231,231,231,129,255,131,57,241,195,135,31,1,255,129,243,231,195,249,57,131,255,227,195,147,51,1,243,243,255,3,63,3,249,249,57,131,255,195,159,63,3,57,57,131,255,1,57,243,231,207,207,207,255,135,59,27,135,97,121,131,255,131,57,57,129,249,243,135,255,255,207,207,255,207,207,255,255,255,207,207,255,207,207,159,255,243,231,207,159,207,231,243,255,255,255,1,255,1,255,255,255,159,207,231,243,231,207,159,255,131,1,57,243,199,255,199,255,131,125,69,85,65,127,131,255,199,147,57,57,1,57,57,255,3,57,57,3,57,57,3,255,195,153,63,63,63,153,195,255,7,51,57,57,57,51,7,255,1,63,63,3,63,63,1,255,1,63,63,3,63,63,63,255,193,159,63,49,57,153,193,255,57,57,57,1,57,57,57,255,129,231,231,231,231,231,129,255,249,249,249,249,249,57,131,255,57,51,39,15,7,35,49,255,159,159,159,159,159,159,129,255,57,17,1,1,41,57,57,255,57,25,9,1,33,49,57,255,131,57,57,57,57,57,131,255,3,57,57,57,3,63,63,255,131,57,57,57,33,51,133,255,3,57,57,49,7,35,49,255,135,51,63,131,249,57,131,255,129,231,231,231,231,231,231,255,57,57,57,57,57,57,131,255,57,57,57,17,131,199,239,255,57,57,41,1,1,17,57,255,57,17,131,199,131,17,57,255,153,153,153,195,231,231,231,255,1,241,227,199,143,31,1,255,195,207,207,207,207,207,195,255,127,191,223,239,247,251,253,255,135,231,231,231,231,231,135,255,199,147,255,255,255,255,255,255,255,255,255,255,255,255,255,1,239,247,255,255,255,255,255,255,255,255,131,249,129,57,129,255,63,63,3,57,57,57,131,255,255,255,129,63,63,63,129,255,249,249,129,57,57,57,129,255,255,255,131,57,1,63,131,255,241,231,129,231,231,231,231,255,255,255,129,57,57,129,249,131,63,63,3,57,57,57,57,255,231,255,199,231,231,231,129,255,243,255,227,243,243,243,243,135,63,63,49,3,7,35,49,255,199,231,231,231,231,231,129,255,255,255,3,73,73,73,73,255,255,255,3,57,57,57,57,255,255,255,131,57,57,57,131,255,255,255,3,57,57,3,63,63,255,255,129,57,57,129,249,249,255,255,145,143,159,159,159,255,255,255,131,63,131,249,3,255,231,231,129,231,231,231,231,255,255,255,57,57,57,57,129,255,255,255,153,153,153,195,231,255,255,255,73,73,73,73,129,255,255,255,57,1,199,1,57,255,255,255,57,57,57,129,249,131,255,255,1,227,199,143,1,255,243,231,231,207,231,231,243,255,231,231,231,231,231,231,231,255,159,207,207,231,207,207,159,255,255,255,143,69,227,255,255,255,255,255,255,255,255,147,147,255,131,41,41,17,41,41,131,255,131,57,9,17,33,57,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,131,17,33,125,33,17,131,255,131,17,9,125,9,17,131,255,131,17,57,85,17,17,131,255,131,17,17,85,57,17,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,231,255,231,231,199,199,199,255,239,131,41,47,41,131,239,255,195,153,159,3,159,159,1,255,255,165,219,219,219,165,255,255,153,153,195,129,231,129,231,255,231,231,231,255,231,231,231,255,195,153,135,219,225,153,195,255,147,255,255,255,255,255,255,255,195,189,102,94,94,102,189,195,135,195,147,195,255,255,255,255,255,201,147,39,147,201,255,255,255,255,129,249,249,255,255,255,255,255,255,255,255,255,255,255,195,189,70,90,70,90,189,195,131,255,255,255,255,255,255,255,239,215,239,255,255,255,255,255,231,231,129,231,231,255,129,255,199,243,231,195,255,255,255,255,195,231,243,199,255,255,255,255,247,239,255,255,255,255,255,255,255,255,51,51,51,51,9,63,193,149,181,149,193,245,245,255,255,255,255,207,207,255,255,255,255,255,255,255,255,255,247,207,231,199,231,195,255,255,255,255,199,147,147,199,255,255,255,255,255,39,147,201,147,39,255,255,189,59,183,173,217,177,125,255,189,59,183,169,221,187,113,255,29,187,215,45,217,177,125,255,199,255,199,159,57,1,131,255,223,239,199,147,57,1,57,255,247,239,199,147,57,1,57,255,199,147,199,147,57,1,57,255,203,167,199,147,57,1,57,255,147,255,199,147,57,1,57,255,239,215,199,147,57,1,57,255,193,135,39,33,7,39,33,255,195,153,63,63,153,195,247,207,223,239,1,63,3,63,1,255,247,239,1,63,3,63,1,255,199,147,1,63,3,63,1,255,147,255,1,63,3,63,1,255,239,247,129,231,231,231,129,255,247,239,129,231,231,231,129,255,231,195,129,231,231,231,129,255,153,255,129,231,231,231,129,255,135,147,153,9,153,147,135,255,203,167,25,9,1,33,49,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,187,215,239,215,187,255,255,131,57,49,41,25,57,131,255,223,239,57,57,57,57,131,255,247,239,57,57,57,57,131,255,199,147,255,57,57,57,131,255,147,255,57,57,57,57,131,255,247,239,153,153,195,231,231,255,63,3,57,57,57,3,63,255,195,153,153,147,153,137,147,255,223,239,131,249,129,57,129,255,247,239,131,249,129,57,129,255,199,147,131,249,129,57,129,255,203,167,131,249,129,57,129,255,147,255,131,249,129,57,129,255,239,215,131,249,129,57,129,255,255,255,131,233,129,47,131,255,255,255,129,63,63,129,247,207,223,239,131,57,1,63,131,255,247,239,131,57,1,63,131,255,199,147,131,57,1,63,131,255,147,255,131,57,1,63,131,255,223,239,255,199,231,231,129,255,247,239,255,199,231,231,129,255,199,147,255,199,231,231,129,255,147,255,199,231,231,231,129,255,155,135,103,131,57,57,131,255,203,167,3,57,57,57,57,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,231,255,129,255,231,255,255,255,255,131,49,41,25,131,255,223,239,57,57,57,57,129,255,247,239,57,57,57,57,129,255,199,147,255,57,57,57,129,255,147,255,57,57,57,57,129,255,247,239,57,57,57,129,249,131,63,63,3,57,57,3,63,63,147,255,57,57,57,129,249,131);function It(o){const t=new URL(location.href),e=t.searchParams.get(o);return e??new URL(t.hash.substring(1),"https://x").searchParams.get(o)}function ne(){if(document.fullscreenElement==null){let o=function(){const e=window.frameElement;e&&(e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.zIndex="99999",e.style.width="100%",e.style.height="100%")};const t=document.body.requestFullscreen&&document.body.requestFullscreen({navigationUI:"hide"});t?t.catch(o):o()}}async function es(o){try{await navigator.clipboard.writeText(o)}catch{let t=document.createElement("dialog");t.title="Netplay URL",t.textContent=o,document.body.append(t);let e=document.createElement("button");e.textContent="Copy",e.style.marginLeft="1em",e.onclick=()=>navigator.clipboard.writeText(o),t.appendChild(e);let s=document.createElement("button");s.textContent="Close",s.style.marginLeft="1em",s.onclick=()=>{document.body.removeChild(t)},t.appendChild(s),t.showModal()}}const ss="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#".split(""),re=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0];function oe(o){const t=o.length,e=t%4,s=e?t+4-e:t;let i="",n=0,r=0;for(;n=1;){const h=Math.floor(r/a)%85;i+=ss[h],a/=85}r=0}}return i}function ae(o,t){let e=0,s=0,i=0;const n=o.length,r=t.length;if(o.length%5==0)for(;s=re.length)return e;if(i=i*85+re[c],s%5==0){let a=16777216;for(;a>=1;){if(e>=r)return e;t[e++]=i/a%256,a/=256}i=0}}return e}class ht{constructor(){this.memory=new ArrayBuffer(65536),this.globals={},this.diskBuffer=new ArrayBuffer(X),this.diskSize=0}read(t){new Uint8Array(this.memory).set(new Uint8Array(t.memory.buffer)),this.globals={};for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&(this.globals[e]=s.value.toString())}this.diskSize=t.diskSize,new Uint8Array(this.diskBuffer).set(new Uint8Array(t.diskBuffer,0,t.diskSize))}write(t){new Uint8Array(t.memory.buffer).set(new Uint8Array(this.memory));for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&e in this.globals&&(s.value=this.globals[e])}t.diskSize=this.diskSize,new Uint8Array(t.diskBuffer).set(new Uint8Array(this.diskBuffer,0,this.diskSize))}toBytes(){const t=new TextEncoder().encode(JSON.stringify(this.globals)),e=new Uint8Array(65544+t.byteLength+this.diskSize),s=new DataView(e.buffer,e.byteOffset,e.byteLength);e.set(new Uint8Array(this.memory),0);let i=65536;return s.setUint32(i,t.byteLength),e.set(t,i+4),i+=4+t.byteLength,s.setUint32(i,this.diskSize),e.set(new Uint8Array(this.diskBuffer,0,this.diskSize),i+4),e}fromBytes(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength);new Uint8Array(this.memory).set(t.subarray(0,65536));let s=65536;const i=e.getUint32(s),n=t.slice(s+4,s+4+i);this.globals=JSON.parse(new TextDecoder().decode(n)),s+=4+i,this.diskSize=e.getUint32(s),new Uint8Array(this.diskBuffer).set(t.subarray(s+4,s+4+this.diskSize))}}const I=20,R=4;class is{constructor(){this.frame=-1,this.state=new ht,this.inputs=new Array(R),this.predicted=new Array(R);for(let t=0;t=this.currentFrame)i.futureInputs.has(e)||i.futureInputs.set(e,n);else for(let r=0,c=I;r{this.send("",{type:"KEEPALIVE"},!1)},15e3)}async connect(){const t=["wss://webrtc-signal-server.wasm4.org","wss://ywc2h85cv1.execute-api.us-east-1.amazonaws.com/production","wss://webrtc-signal-server.wasm4.jwq.moe","wss://iyuavuru2h.execute-api.eu-central-1.amazonaws.com/production"];for(const e of t)try{this.socket=await new Promise((s,i)=>{const n=new WebSocket(e);n.addEventListener("open",()=>{s(n)}),n.addEventListener("error",()=>{i()})});break}catch(s){console.error(s)}if(!this.socket)throw new Error("Unable to connect to signal server");this.socket.addEventListener("message",e=>{const{source:s,message:i}=JSON.parse(e.data);this.onMessage(s,i)});for(const e of this.bufferedOutput)this.socket.send(e);this.bufferedOutput.length=0}send(t,e,s=!0){var n;const i=JSON.stringify({target:t,message:e});((n=this.socket)==null?void 0:n.readyState)==1?this.socket.send(i):s&&this.bufferedOutput.push(i)}close(){var t;(t=this.socket)==null||t.close(),window.clearInterval(this.keepaliveInterval)}}class os{constructor(t){this.connections=new Map;let e;this.localPeerId=new Promise(s=>{e=s}),this.signalClient=new rs(async(s,i)=>{switch(i.type){case"WHOAMI_REPLY":this.iceServers=i.iceServers,e(i.yourPeerId);break;case"OFFER":{if(this.connections.has(s))throw new Error("Received offer for a connection we already initiated");{const n=this.createConnection(s);await n.setRemoteDescription(i.description),await n.setLocalDescription(await n.createAnswer()),t(n,s),this.signalClient.send(s,{type:"ANSWER",description:n.localDescription.toJSON()})}}break;case"ANSWER":{const n=this.connections.get(s);n&&await n.setRemoteDescription(i.description)}break;case"CANDIDATE":{const n=this.connections.get(s);n&&await n.addIceCandidate(new RTCIceCandidate(i.candidate))}break;case"ABORT":{const n=this.connections.get(s);n&&n.close()}break}}),this.signalClient.send("",{type:"WHOAMI_REQUEST"})}createConnection(t){const e=new RTCPeerConnection({iceServers:this.iceServers});return this.connections.set(t,e),e.addEventListener("negotiationneeded",async()=>{await e.setLocalDescription(await e.createOffer()),this.signalClient.send(t,{type:"OFFER",description:e.localDescription.toJSON()})}),e.addEventListener("icecandidate",({candidate:s})=>{s&&this.signalClient.send(t,{type:"CANDIDATE",candidate:s.toJSON()})}),e.addEventListener("connectionstatechange",()=>{const s=e.connectionState;(s=="connected"||s=="failed")&&this.connections.delete(t)}),e}connect(t){return this.connections.get(t)||this.createConnection(t)}close(){this.signalClient.close();for(const[t,e]of this.connections)e.close()}}const gt=16384;class as{constructor(t){this.chunks=[],this.size=0,t.addEventListener("message",e=>{if(e.data instanceof ArrayBuffer){const s=new Uint8Array(e.data);this.size+=s.byteLength,this.chunks.push(s)}})}read(){const t=new Uint8Array(this.size);let e=0;for(const s of this.chunks)t.set(s,e),e+=s.byteLength;return this.chunks.length=0,this.size=0,t}}class cs{constructor(t){this.channel=t,this.size=0}write(t){this.buffer||(this.buffer=new Uint8Array(gt));let e=this.size,s=0;for(;s=gt&&(e-=gt,this.channel.send(this.buffer))}this.size=e}flush(){this.buffer&&this.size>0&&this.channel.send(this.buffer.subarray(0,this.size)),this.buffer=void 0}}class ls{constructor(t,e=0){this.buffer=t,this.position=e}readBit(){const t=!!(this.buffer[this.position/8>>>0]&1<<(this.position&7));return++this.position,t}readBits(t){let e=0;for(let s=0;s>>0]|=1<<(this.position&7),++this.position}write0(){this.buffer[this.position/8>>>0]&=~(1<<(this.position&7)),++this.position}writeBits(t,e){for(let s=0;s0;--s)this.outboundInputs.unshift(e);this.outboundFrame=t}else{const s=t-this.outboundFrame;if(s>=this.outboundInputs.length){for(let i=this.outboundInputs.length;i0?this.outboundInputs[i-1]:0;this.outboundInputs[s]=e}}}sendMessage(t){this.reliableChannel.send(JSON.stringify(t))}sendUnreliableBuffer(t){this.unreliableChannel.send(t)}sendPingRequest(){const t=new DataView(W);t.setUint8(0,2),t.setUint32(1,performance.now()>>>0),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendPingReply(t){const e=new DataView(W);e.setUint8(0,3),e.setUint32(1,t),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendTick(t){const e=new DataView(W);e.setUint8(0,1),e.setUint32(1,t),e.setInt8(5,this.nextNeededFrame==0?-127:this.nextNeededFrame-t),e.setInt8(6,this.outboundFrame-t),e.setUint8(7,this.outboundInputs.length);const s=new hs(new Uint8Array(W,8));let i=0;for(const r of this.outboundInputs){const c=i^r;i=r;for(let a=0;a<8;++a)c&1<{const i=Array.from(this.remotePlayers.keys()),n=await this.createRemotePlayer(e,s);n.sendMessage({type:"WELCOME",otherPeers:i}),this.localPlayerIdx>=0&&n.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})})}host(){this.runtime.setNetplay(0),this.rollbackMgr=new ce(1,this.runtime),this.localPlayerIdx=0}join(t){const e=this.peerMgr.connect(t);this.createRemotePlayer(e,t).then(s=>{s.sendMessage({type:"JOIN_REQUEST"})},s=>{this.runtime.blueScreen(`Failed to connect +to peer. They may +be offline?`)})}async getInviteLink(){const t=await this.peerMgr.localPeerId,e=window.location;if(e.protocol=="file:"||e.hostname=="localhost"||e.hostname=="127.0.0.1"||e.hostname=="wasm4.org")return`https://wasm4.org/netplay/#${t}`;const s=new URL(e.href);return s.searchParams.set("netplay",t),s.href}close(){for(const t of this.remotePlayers.values())t.close();this.peerMgr.close()}async createRemotePlayer(t,e){function s(a){return new Promise((h,l)=>{const d=t.createDataChannel("WASM-4",a);d.binaryType="arraybuffer",d.onopen=()=>{h(d)},d.onerror=l})}const[i,n]=await Promise.all([s({negotiated:!0,id:0}),s({negotiated:!0,id:1,ordered:!1,maxRetransmits:0})]),r=new us(e,t,i,n);this.remotePlayers.set(e,r);const c=()=>{this.remotePlayers.has(e)&&(this.remotePlayers.delete(e),this.onleave&&r.playerIdx>=0&&this.onleave(r.playerIdx))};return t.addEventListener("connectionstatechange",()=>{t.connectionState=="disconnected"&&c()}),i.addEventListener("close",c),n.addEventListener("close",c),i.addEventListener("message",async a=>{if(typeof a.data!="string")return;const h=JSON.parse(a.data);switch(h.type){case"WELCOME":for(const l of h.otherPeers)if(!this.remotePlayers.has(l)){const d=this.peerMgr.connect(l),u=await this.createRemotePlayer(d,l);this.localPlayerIdx>=0&&u.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})}break;case"JOIN_REQUEST":{const l=this.nextPlayerIdx();if(l>=4)r.sendMessage({type:"JOIN_REJECT"}),r.close();else{r.playerIdx=l,r.chunkWriter.write(this.runtime.wasmBuffer);const d=new ht;d.read(this.runtime),r.chunkWriter.write(d.toBytes()),r.chunkWriter.flush(),r.sendMessage({type:"JOIN_REPLY",yourPlayerIdx:r.playerIdx,frame:this.rollbackMgr.currentFrame,stateOffset:this.runtime.wasmBuffer.byteLength}),this.onjoin&&this.onjoin(r.playerIdx)}}break;case"JOIN_REPLY":{this.localPlayerIdx=h.yourPlayerIdx;for(const b of this.remotePlayers.values())b!=r&&b.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx});const l=r.chunkReader.read(),d=l.subarray(0,h.stateOffset),u=l.subarray(h.stateOffset);await this.runtime.load(d,!1);const w=new ht;w.fromBytes(u),w.write(this.runtime),this.runtime.setNetplay(this.localPlayerIdx),this.rollbackMgr=new ce(h.frame,this.runtime),this.onstart&&this.onstart(this.localPlayerIdx)}break;case"JOIN_REJECT":this.runtime.blueScreen(`Connected, but the +game is already +full!`),this.close();break;case"PLAYER_INFO":r.playerIdx==-1&&(r.playerIdx=h.playerIdx,this.onjoin&&this.onjoin(r.playerIdx));break}}),n.addEventListener("message",async a=>{const h=a.data,l=new DataView(h);switch(l.getUint8(0)){case 1:if(this.rollbackMgr&&r.playerIdx>=0){const u=l.getUint32(1);if(u>r.frame){const w=l.getInt8(5)+u,b=l.getInt8(6)+u,p=l.getUint8(7),f=new ls(new Uint8Array(h,8)),m=new Array(p);let y=0;for(let v=0;vr.outboundFrame){const v=w-r.outboundFrame;r.outboundFrame=w,r.outboundInputs.splice(0,v)}const g=u+.5*r.ping.average*60/1e3,_=this.rollbackMgr.currentFrame-g;r.drift.update(_),this.rollbackMgr.addInputs(r.playerIdx,b,m)}}break;case 2:{const u=l.getUint32(1);r.sendPingReply(u)}break;case 3:{const u=l.getUint32(1),w=(performance.now()>>>0)-u;r.ping.update(w)}break}}),r}nextPlayerIdx(){t:for(let t=0;t<4;++t)if(this.localPlayerIdx!=t){for(const e of this.remotePlayers.values())if(e.playerIdx==t)continue t;return t}return-1}update(t){if(!this.rollbackMgr)return!1;const e=(this.updateCount&7)==0,s=(this.updateCount&31)==0;++this.updateCount;const i=this.rollbackMgr.currentFrame,r=i+2;this.rollbackMgr.addInputs(this.localPlayerIdx,r,[t]);let c=!1;for(const a of this.remotePlayers.values())a.addOutboundInput(r,t),a.sendTick(i),(a.nextNeededFrame=he)&&(c=!0),s&&a.sendPingRequest();if(e){let a=0;for(const h of this.remotePlayers.values())a=Math.max(h.drift.average,a);a>=1&&(c=!0)}return c||this.rollbackMgr.update(),!c}getSummary(){const t=[{playerIdx:this.localPlayerIdx,ping:-1}];for(const e of this.remotePlayers.values())t.push({playerIdx:e.playerIdx,ping:e.ping.average});return t.sort((e,s)=>e.playerIdx-s.playerIdx),t}}const de=`"use strict";(()=>{var M=Math.floor(44.1),b=class{constructor(){this.freq1=0;this.freq2=0;this.startTime=0;this.attackTime=0;this.decayTime=0;this.sustainTime=0;this.releaseTime=0;this.endTick=0;this.sustainVolume=0;this.peakVolume=0;this.phase=0;this.pan=0;this.pulseDutyCycle=0;this.noiseSeed=1;this.noiseLastRandom=0}};function L(m,e,s){return m+s*(e-m)}function V(m,e){if(m1-e){let s=(m-(1-e))/e;return 1-(s+s-s*s)}else return 1}function x(m,e){return Math.pow(2,(m-69+e/256)/12)*440}var y=class extends AudioWorkletProcessor{constructor(){super(),this.time=0,this.ticks=0,this.channels=new Array(4);for(let e=0;e<4;++e)this.channels[e]=new b;this.port!=null&&(this.port.onmessage=e=>{e.data==="tick"?this.tick():this.tone(...e.data)})}ramp(e,s,f,u){if(this.time>=u)return s;let a=(this.time-f)/(u-f);return L(e,s,a)}getCurrentFrequency(e){return e.freq2>0?this.ramp(e.freq1,e.freq2,e.startTime,e.releaseTime):e.freq1}getCurrentVolume(e){let s=this.time;return s>=e.sustainTime&&e.releaseTime-e.sustainTime>M?this.ramp(e.sustainVolume,0,e.sustainTime,e.releaseTime):s>=e.decayTime?e.sustainVolume:s>=e.attackTime?this.ramp(e.peakVolume,e.sustainVolume,e.attackTime,e.decayTime):this.ramp(0,e.peakVolume,e.startTime,e.attackTime)}tick(){this.ticks++}tone(e,s,f,u){let a=e&65535,p=e>>16&65535,A=s&255,h=s>>8&255,o=s>>16&255,i=s>>24&255,E=Math.min(f&255,100),l=Math.min(f>>8&255,100),n=u&3,r=u>>2&3,c=u>>4&3,d=u&64,t=this.channels[n];this.time>t.releaseTime&&this.ticks!=t.endTick&&(t.phase=n==2?.25:0),d?(t.freq1=x(a&255,a>>8),t.freq2=p==0?0:x(p&255,p>>8)):(t.freq1=a,t.freq2=p),t.startTime=this.time,t.attackTime=t.startTime+(44100*i/60>>>0),t.decayTime=t.attackTime+(44100*o/60>>>0),t.sustainTime=t.decayTime+(44100*A/60>>>0),t.releaseTime=t.sustainTime+(44100*h/60>>>0),t.endTick=this.ticks+i+o+A+h,t.pan=c;let T=n==2?.25:.15;if(t.sustainVolume=T*E/100,t.peakVolume=l?T*l/100:T,n==0||n==1)switch(r){case 0:t.pulseDutyCycle=.125;break;case 1:case 3:default:t.pulseDutyCycle=.25;break;case 2:t.pulseDutyCycle=.5;break}else n==2&&h==0&&(t.releaseTime+=M)}process(e,[[s,f]],u){for(let a=0,p=s.length;a0;){i.phase--;let r=i.noiseSeed;r^=r>>7,r^=r<<9,r^=r>>13,i.noiseSeed=r,i.noiseLastRandom=((r&1)<<1)-1}n=l*i.noiseLastRandom}else{let r=E/44100,c=i.phase+r;if(c>=1&&c--,i.phase=c,o==2)n=l*(2*Math.abs(2*i.phase-1)-1);else{let d,t,T,k=i.pulseDutyCycle;c{n=new l};new Function("registerProcessor","AudioWorkletProcessor",de)(r,class{}),this.processor=n;const a=t.createScriptProcessor(1024,0,2);a.onaudioprocess=h=>{const l=h.outputBuffer.getChannelData(0),d=h.outputBuffer.getChannelData(1);n.process(null,[[l,d]],null)},a.connect(t.destination)}}tick(){this.processorPort!=null?this.processorPort.postMessage("tick"):this.processor.tick()}tone(t,e,s,i){this.processorPort!=null?this.processorPort.postMessage([t,e,s,i]):this.processor.tone(t,e,s,i)}unlockAudio(){const t=this.audioCtx;t.state=="suspended"&&t.resume()}pauseAudio(){const t=this.audioCtx;t.state=="running"&&t.suspend()}}class ms{constructor(t){this.bytes=new Uint8Array(t,Je,E*x>>>2),this.drawColors=new Uint16Array(t,lt,1)}clear(){this.bytes.fill(0)}drawPoint(t,e,s){const i=E*s+e>>>2,n=(e&3)<<1,r=3<=0&&e=0&&s3){for(let l=e;l>>2,a=E*s+n>>>2,h=t*85;this.bytes.fill(h,c,a),e=n}for(let c=e;c=0&&sE&&(i=E),e=E)return;const i=this.drawColors[0]&15;if(i==0)return;const n=Math.max(0,e),r=Math.min(x,e+s),c=i-1&3;for(let a=n;a>>4&15;if(u!==0){const b=u-1&3;for(let p=r;p=0&&t0&&c<=E)for(let p=r;p=0&&e0&&a<=x&&this.drawHLineFast(b,n,a-1,h)}}drawOval(t,e,s,i){const n=this.drawColors[0],r=n&15,c=n>>>4&15;if(c===15)return;const a=c-1&3,h=r-1&3;let l=s-1;const d=i-1;let u=d%2,w=e+Math.floor(i/2),b=t,p=t+s-1,f=w-u;const m=l*l,y=d*d;let g=4*(1-l)*y,_=4*(u+1)*m,v=g+_+u*m;l=8*m,u=8*y;do{this.drawPointUnclipped(a,p,w),this.drawPointUnclipped(a,b,w),this.drawPointUnclipped(a,b,f),this.drawPointUnclipped(a,p,f);const k=b+1,T=p-k;r!==0&&T>0&&(this.drawHLineUnclipped(h,k,w,p),this.drawHLineUnclipped(h,k,f,p));const P=2*v;P<=_&&(w+=1,f-=1,_+=l,v+=_),(P>=g||P>_)&&(b+=1,p-=1,g+=u,v+=g)}while(b<=p);for(;w-fi){let w=t;t=s,s=w,w=e,e=i,i=w}const a=Math.abs(s-t),h=tl?a:-l)/2,u;for(;this.drawPointUnclipped(c,t,e),!(t===s&&e===i);)u=d,u>-a&&(d-=l,t+=h),u=32&&c<=255&&this.blit(ts,i,s,8,8,0,c-32<<3,8),i+=8)}}blit(t,e,s,i,n,r,c,a,h=!1,l=!1,d=!1,u=!1){const w=this.drawColors[0];let b,p,f,m;u?(l=!l,b=Math.max(0,s)-s,p=Math.max(0,e)-e,f=Math.min(i,x-s),m=Math.min(n,E-e)):(b=Math.max(0,e)-e,p=Math.max(0,s)-s,f=Math.min(i,E-e),m=Math.min(n,x-s));for(let y=p;y>>2],Rt=6-(($&3)<<1);P=Lt>>>Rt&3}else{const Lt=t[$>>>3],Rt=7-($&7);P=Lt>>>Rt&1}const Ee=w>>>(P<<2)&15;Ee!==0&&this.drawPoint(Ee-1&3,_,v)}}}const ys=4,ws=35044,ue=34962,pe=5121,bs=5126,At=6409,gs=35632,As=35633,vs=35713,Es=35714,fe=9728,_s=10240,Ss=10241,xs=10242,ks=10243,z=3553,Cs=33984,me=33071,V=4;class Ts{constructor(t){this.gl=t,this.colorBuffer=new Uint32Array(E*x>>2),this.paletteBuffer=new Float32Array(3*V),this.lastPalette=Array(V),this.paletteLocation=null;const e=new Uint32Array(256);for(let i=0;i<256;++i){const n=i>>6&3,r=i>>4&3,c=i>>2&3,a=i&3;e[i]=n<<30|r<<22|c<<14|a<<6}this.table=e;const s=t.canvas;s.addEventListener("webglcontextlost",i=>{i.preventDefault()}),s.addEventListener("webglcontextrestored",()=>{this.initGL()}),this.initGL()}initGL(){const t=this.gl;this.lastPalette=Array(V);function e(d,u){const w=t.createShader(d);if(t.shaderSource(w,u),t.compileShader(w),!t.getShaderParameter(w,vs))throw new Error(t.getShaderInfoLog(w)+"");return w}function s(d){const u=t.createTexture();t.activeTexture(d),t.bindTexture(z,u),t.texParameteri(z,xs,me),t.texParameteri(z,ks,me),t.texParameteri(z,_s,fe),t.texParameteri(z,Ss,fe)}const i=e(As,` + attribute vec2 pos; + varying vec2 framebufferCoord; + + void main () { + framebufferCoord = pos*vec2(0.5, -0.5) + 0.5; + gl_Position = vec4(pos, 0, 1); + } + `),n=Array.from({length:V-1},(d,u)=>`p = mix(p, palette[${u+1}], step(${((u+1)/V).toFixed(2)}, index));`).join(` +`),r=e(gs,` + precision mediump float; + uniform vec3 palette[${V}]; + uniform sampler2D framebuffer; + varying vec2 framebufferCoord; + + vec3 lookup(float index) { + vec3 p = palette[0]; + ${n} + return p; + } + + void main () { + gl_FragColor = vec4(lookup(texture2D(framebuffer, framebufferCoord).r), 1.); + } + `),c=t.createProgram();if(t.attachShader(c,i),t.attachShader(c,r),t.linkProgram(c),!t.getProgramParameter(c,Es))throw new Error(t.getProgramInfoLog(c)+"");t.useProgram(c),this.paletteLocation=t.getUniformLocation(c,"palette"),t.uniform1i(t.getUniformLocation(c,"framebuffer"),0),t.detachShader(c,i),t.deleteShader(i),t.detachShader(c,r),t.deleteShader(r),s(Cs),t.texImage2D(z,0,At,E,x,0,At,pe,null);const a=t.getAttribLocation(c,"pos"),h=t.createBuffer(),l=new Float32Array([-1,-1,-1,1,1,1,1,1,1,-1,-1,-1]);t.bindBuffer(ue,h),t.bufferData(ue,l,ws),t.enableVertexAttribArray(a),t.vertexAttribPointer(a,2,bs,!1,0,0)}composite(t,e){const s=this.gl,i=e.bytes,n=this.colorBuffer,r=this.table,c=this.lastPalette,a=this.paletteBuffer;let h=!1;for(let l=0,d=0;l>16&255)/255,a[d++]=(u>>8&255)/255,a[d++]=(u&255)/255,c[l]=u}h&&s.uniform3fv(this.paletteLocation,this.paletteBuffer);for(let l=0;l>2;++l)n[l]=r[i[l]];s.texImage2D(z,0,At,E,x,0,At,pe,new Uint8Array(n.buffer)),s.drawArrays(ys,0,6)}}const Ps=6,ye=7,we=3;function $s(o){const t=new DataView(o.buffer),e=t.getUint32(0),s=t.getUint32(4,!0);if(e!==6386541||s!==1)throw new Error("Invalid WASM binary");let i=8;const n=[];let r=0,c=0,a;for(;in+(r[0]===0?r[2]-r[1]:r[1].length),0),s=new Uint8Array(e);let i=0;for(const n of t)n[0]===0?(s.set(o.slice(n[1],n[2]),i),i+=n[2]-n[1]):(s.set(n[1],i),i+=n[1].length);return s}function vt(o){const t=[];do{const e=o&127;o>>=7,t.push(o?e|128:e)}while(o);return new Uint8Array(t)}function dt(o,t=0){let e=0,s=0,i=0;do e=o[t++],s|=(e&127)<>2),this.data.setUint16(lt,4611,!0),this.data.setInt16(te,32767,!0),this.data.setInt16(ee,32767,!0)}async load(t,e=!0){if(this.wasmBuffer=t,this.wasmBufferByteLen=t.byteLength,this.wasm=null,t.byteLength>1048576&&e)throw new Error("Cart too big!");const i={memory:this.memory,rect:this.framebuffer.drawRect.bind(this.framebuffer),oval:this.framebuffer.drawOval.bind(this.framebuffer),line:this.framebuffer.drawLine.bind(this.framebuffer),hline:this.framebuffer.drawHLine.bind(this.framebuffer),vline:this.framebuffer.drawVLine.bind(this.framebuffer),text:this.text.bind(this),textUtf8:this.textUtf8.bind(this),textUtf16:this.textUtf16.bind(this),blit:this.blit.bind(this),blitSub:this.blitSub.bind(this),tone:this.apu.tone.bind(this.apu),diskr:this.diskr.bind(this),diskw:this.diskw.bind(this),trace:this.trace.bind(this),traceUtf8:this.traceUtf8.bind(this),traceUtf16:this.traceUtf16.bind(this),tracef:this.tracef.bind(this)};await this.bluescreenOnError(async()=>{const n=$s(t),r=await WebAssembly.instantiate(n,{env:i});this.wasm=r.instance,typeof this.wasm.exports._start=="function"&&this.wasm.exports._start(),typeof this.wasm.exports._initialize=="function"&&this.wasm.exports._initialize()})}async bluescreenOnError(t){try{await t()}catch(e){if(e instanceof Error){const s=Us(e);this.blueScreen(s),this.printToServer(e.stack??"")}throw e}}text(t,e,s){const i=new Uint8Array(this.memory.buffer,t);this.framebuffer.drawText(i,e,s)}textUtf8(t,e,s,i){const n=new Uint8Array(this.memory.buffer,t,e);this.framebuffer.drawText(n,s,i)}textUtf16(t,e,s,i){const n=new Uint16Array(this.memory.buffer,t,e>>1);this.framebuffer.drawText(n,s,i)}blit(t,e,s,i,n,r){this.blitSub(t,e,s,i,n,0,0,i,r)}blitSub(t,e,s,i,n,r,c,a,h){const l=new Uint8Array(this.memory.buffer,t),d=h&1,u=h&2,w=h&4,b=h&8;this.framebuffer.blit(l,e,s,i,n,r,c,a,d,u,w,b)}diskr(t,e){const s=Math.min(e,this.diskSize),i=new Uint8Array(this.diskBuffer,0,s);return new Uint8Array(this.memory.buffer,t).set(i),s}diskw(t,e){const s=Math.min(e,X),i=new Uint8Array(this.memory.buffer,t,s),n=new Uint8Array(this.diskBuffer),r=oe(i);try{localStorage.setItem(this.diskName,r)}catch(c){console.error("Error writing disk",c)}return n.set(i),this.diskSize=s,s}getCString(t){let e="";for(;;){const s=this.data.getUint8(t++);if(s==0)break;e+=String.fromCharCode(s)}return e}print(t){console.log(t),this.printToServer(t)}printToServer(t){}trace(t){this.print(this.getCString(t))}traceUtf8(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder().decode(s);this.print(i)}traceUtf16(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder("utf-16").decode(s);this.print(i)}tracef(t,e){let s="",i;for(;i=this.data.getUint8(t++);)if(i==37)switch(i=this.data.getUint8(t++)){case 37:s+="%";break;case 99:s+=String.fromCharCode(this.data.getInt32(e,!0)),e+=4;break;case 100:case 120:s+=this.data.getInt32(e,!0).toString(i==100?10:16),e+=4;break;case 115:s+=this.getCString(this.data.getUint32(e,!0)),e+=4;break;case 102:s+=this.data.getFloat64(e,!0),e+=8;break;default:s+="%"+String.fromCharCode(i);break}else s+=String.fromCharCode(i);this.print(s)}start(){let t=this.wasm.exports.start;typeof t=="function"&&this.bluescreenOnError(t)}update(){if(this.pauseState!=0)return;this.getSystemFlag(Ze)||this.framebuffer.clear();let t=this.wasm.exports.update;typeof t=="function"&&this.bluescreenOnError(t),this.apu.tick()}blueScreen(t){this.pauseState|=se;const e=[1118702,8831084,11184810,16777215],s=u=>[...u].map(w=>w.charCodeAt(0)),i=` ${Ve} `,n=i,r=8*i.length,c=(160-8*i.length)/2,a=20,h=9,l=60;new Uint32Array(this.memory.buffer).set(e,$t>>2),this.data.setUint16(lt,4611,!0),this.framebuffer.clear(),this.framebuffer.drawHLine(c,a-1,r),this.data.setUint16(lt,4401,!0),this.framebuffer.drawText(s(n),c,a),this.data.setUint16(lt,4611,!0),this.framebuffer.drawText(s(t),h,l),this.composite()}composite(){const t=new Uint32Array(this.memory.buffer,$t,4);this.compositor.composite(t,this.framebuffer)}}function Us(o){if(o instanceof WebAssembly.RuntimeError){let t;return o.message.match(/unreachable/)?t=`The cartridge has +reached a code +segment marked as +unreachable.`:o.message.match(/out of bounds/)&&(t=`The cartridge has +attempted a memory +access that is +out of bounds.`),t+` + + + + +Hit R to reboot.`}else{if(o instanceof WebAssembly.LinkError)return`The cartridge has +tried to import +a missing function. + + + +See console for +more details.`;if(o instanceof WebAssembly.CompileError)return`The cartridge is +corrupted. + + + +See console for +more details.`;if(o instanceof Os)return o.wasm4Message}return`Unknown error. + + + +See console for +more details.`}class Os extends Error{constructor(t){super(t.replace(` +`," ")),this.name="Wasm4Error",this.wasm4Message=t}}var Ms=Object.defineProperty,Ls=Object.getOwnPropertyDescriptor,ut=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ls(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Ms(t,e,i),i};class ge{constructor(){this.gamepad=[0,0,0,0],this.mouseX=0,this.mouseY=0,this.mouseButtons=0}}A.App=class extends M{constructor(){var t;super(),this.hideGamepadOverlay=!1,this.showMenu=!1,this.inputState=new ge,this.gamepadUnavailableWarned=new Set,this.onPointerUp=e=>{e.pointerType=="touch"&&ne(),this.runtime.unlockAudio()},this.diskPrefix=((t=document.getElementById("wasm4-disk-prefix"))==null?void 0:t.textContent)??It("disk-prefix"),this.runtime=new Is(`${this.diskPrefix}-disk`),this.init()}async init(){async function t(){const p=document.getElementById("wasm4-cart-json");if(p){const{WASM4_CART:f,WASM4_CART_SIZE:m}=JSON.parse(p.textContent??""),y=new Uint8Array(m);return ae(f,y),y}else{const f=It("url")??"cart.wasm",m=await fetch(f);if(m.ok)return new Uint8Array(await m.arrayBuffer());throw new Error(`Could not load cart at url: ${f}`)}}const e=this.runtime;await e.init();const s=e.canvas,i=It("netplay");i?(this.netplay=this.createNetplay(),this.netplay.join(i)):await e.load(await t());let n={toggleDevtools(){},updateCompleted(...p){}};this.netplay||e.start();function r(){e.composite(),s.toBlob(p=>{const f=URL.createObjectURL(p),m=document.createElement("a");m.href=f,m.download="wasm4-screenshot.png",m.click(),URL.revokeObjectURL(f)})}let c=null;function a(){if(c!=null)return;const p="video/webm",f=s.captureStream();c=new MediaRecorder(f,{mimeType:p,videoBitsPerSecond:25e6});const m=[];c.ondataavailable=y=>{m.push(y.data)},c.onstop=()=>{const y=new Blob(m,{type:p}),g=URL.createObjectURL(y),_=document.createElement("a");_.href=g,_.download="wasm4-animation.webm",_.click(),URL.revokeObjectURL(g)},c.start(),setTimeout(()=>{c&&(c.requestData(),c.stop(),c=null)},4e3)}const h=p=>{if(document.body.style.cursor="",p.isPrimary){const f=s.getBoundingClientRect(),m=this.inputState;m.mouseX=Math.fround(E*(p.clientX-f.left)/f.width),m.mouseY=Math.fround(x*(p.clientY-f.top)/f.height),m.mouseButtons=p.buttons&7}};window.addEventListener("pointerdown",h),window.addEventListener("pointerup",h),window.addEventListener("pointermove",h),s.addEventListener("contextmenu",p=>{p.preventDefault()});const l={2:this.saveGameState.bind(this),4:this.loadGameState.bind(this),r:this.resetCart.bind(this),R:this.resetCart.bind(this),F8:n.toggleDevtools,F9:r,F10:a,F11:ne,Enter:this.onMenuButtonPressed.bind(this)},d=p=>{if(p.ctrlKey||p.altKey||p.srcElement instanceof HTMLElement&&p.srcElement.tagName=="INPUT")return;const f=p.type=="keydown";if(e.unlockAudio(),document.body.style.cursor="none",f){const g=l[p.key];if(g){g(),p.preventDefault();return}}let m=0,y=0;switch(p.code){case"KeyX":case"KeyV":case"Space":case"Period":y=L;break;case"KeyZ":case"KeyC":case"Comma":y=F;break;case"ArrowUp":y=H;break;case"ArrowDown":y=G;break;case"ArrowLeft":y=J;break;case"ArrowRight":y=Z;break;case"KeyA":case"KeyQ":m=1,y=L;break;case"ShiftLeft":case"Tab":m=1,y=F;break;case"KeyE":m=1,y=H;break;case"KeyD":m=1,y=G;break;case"KeyS":m=1,y=J;break;case"KeyF":m=1,y=Z;break;case"NumpadMultiply":case"NumpadDecimal":m=2,y=L;break;case"NumpadSubtract":case"NumpadEnter":m=2,y=F;break;case"Numpad8":m=2,y=H;break;case"Numpad5":m=2,y=G;break;case"Numpad4":m=2,y=J;break;case"Numpad6":m=2,y=Z;break}if(y!=0){p.preventDefault();const g=this.inputState.gamepad;f?g[m]|=y:g[m]&=~y}};if(window.addEventListener("keydown",d),window.addEventListener("keyup",d),top&&top!=window)try{top.addEventListener("keydown",d),top.addEventListener("keyup",d)}catch{}const u=()=>{if(navigator.getGamepads)for(const p of navigator.getGamepads()){if(p==null)continue;if(p.mapping!="standard"){this.gamepadUnavailableWarned.has(p.id)||(this.gamepadUnavailableWarned.add(p.id),this.notifications.show("Unsupported gamepad: "+p.id));continue}const f=p.buttons,m=p.axes;let y=0;(f[12].pressed||m[1]<-.5)&&(y|=H),(f[13].pressed||m[1]>.5)&&(y|=G),(f[14].pressed||m[0]<-.5)&&(y|=J),(f[15].pressed||m[0]>.5)&&(y|=Z),(f[0].pressed||f[3].pressed||f[5].pressed||f[7].pressed)&&(y|=L),(f[1].pressed||f[2].pressed||f[4].pressed||f[6].pressed)&&(y|=F),f[9].pressed&&(this.showMenu=!0),this.inputState.gamepad[p.index%4]=y}};let w=performance.now();const b=p=>{requestAnimationFrame(b),u();let f=this.inputState;if(this.menuOverlay!=null)if(this.menuOverlay.applyInput(),this.netplay)f=new ge;else return;let m=!1;for(p-w>=200&&(w=p);p>=w;)if(w+=1e3/60,this.netplay)this.netplay.update(f.gamepad[0])&&(m=!0);else{for(let y=0;y<4;++y)e.setGamepad(y,f.gamepad[y]);e.setMouse(f.mouseX,f.mouseY,f.mouseButtons),e.update(),m=!0}m&&(this.hideGamepadOverlay=!!e.getSystemFlag(Qe),e.composite())};requestAnimationFrame(b)}onMenuButtonPressed(){this.showMenu?this.inputState.gamepad[0]|=L:this.showMenu=!0}closeMenu(){if(this.showMenu){this.showMenu=!1;for(let t=0;t<4;++t)this.inputState.gamepad[t]=0}}saveGameState(){let t=this.savedGameState;t==null&&(t=this.savedGameState=new ht),t.read(this.runtime),this.notifications.show("State saved")}loadGameState(){if(this.netplay){this.notifications.show("State loading disabled during netplay");return}const t=this.savedGameState;t!=null?(t.write(this.runtime),this.notifications.show("State loaded")):this.notifications.show("Need to save a state first")}exportGameDisk(){if(this.runtime.diskSize<=0){this.notifications.show("Disk is empty");return}const t=new Uint8Array(this.runtime.diskBuffer).slice(0,this.runtime.diskSize),e=new Blob([t],{type:"application/octet-stream"}),s=document.createElement("a");s.style.display="none",s.href=URL.createObjectURL(e),s.download=`${this.diskPrefix}.disk`,document.body.appendChild(s),s.click(),document.body.removeChild(s)}importGameDisk(){if(this.netplay){this.notifications.show("Disk importing disabled during netplay");return}const t=this,e=document.createElement("input");e.style.display="none",e.type="file",e.accept=".disk",e.multiple=!1,e.addEventListener("change",()=>{const s=e.files;let i=new FileReader;i.addEventListener("load",()=>{let n=new Uint8Array(i.result).slice(0,X),r=new Uint8Array(X);r.set(n),t.runtime.diskBuffer=r.buffer,this.runtime.diskSize=n.length;const c=oe(n);try{localStorage.setItem(this.runtime.diskName,c),t.notifications.show("Disk imported")}catch(a){t.notifications.show("Error importing disk"),console.error("Error importing disk",a)}t.closeMenu()}),i.readAsArrayBuffer(s[0])}),document.body.appendChild(e),e.click(),document.body.removeChild(e)}clearGameDisk(){if(this.netplay){this.notifications.show("Disk clearing disabled during netplay");return}this.runtime.diskBuffer=new ArrayBuffer(X),this.runtime.diskSize=0;try{localStorage.removeItem(this.runtime.diskName)}catch(t){this.notifications.show("Error clearing disk"),console.error("Error clearing disk",t)}this.notifications.show("Disk cleared")}async copyNetplayLink(){this.netplay||(this.netplay=this.createNetplay(),this.netplay.host()),es(await this.netplay.getInviteLink()),this.notifications.show("Netplay link copied to clipboard")}async resetCart(t,e=!1){if(this.netplay){this.notifications.show("Reset disabled during netplay");return}t||(t=this.runtime.wasmBuffer);let s;e&&(s=new ht,s.read(this.runtime)),this.runtime.reset(!0),this.runtime.pauseState|=ie,await this.runtime.load(t),this.runtime.pauseState&=~ie,s?s.write(this.runtime):this.runtime.start()}createNetplay(){const t=new ps(this.runtime);return t.onstart=e=>this.notifications.show(`Joined as player ${e+1}`),t.onjoin=e=>this.notifications.show(`Player ${e+1} joined`),t.onleave=e=>this.notifications.show(`Player ${e+1} left`),t}getNetplaySummary(){return this.netplay?this.netplay.getSummary():[]}connectedCallback(){super.connectedCallback(),window.addEventListener("pointerup",this.onPointerUp)}disconnectedCallback(){window.removeEventListener("pointerup",this.onPointerUp),super.disconnectedCallback()}render(){return C` +
+ ${this.showMenu?C``:""} + + ${this.runtime.canvas} +
+ ${this.hideGamepadOverlay?"":C``} + `}},A.App.styles=ft` + :host { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + + touch-action: none; + user-select: none; + -webkit-user-select: none; + -webkit-tap-highlight-color: transparent; + + background: #202020; + } + + .content { + width: 100vmin; + height: 100vmin; + overflow: hidden; + } + + /** Nudge the game upwards a bit in portrait to make space for the virtual gamepad. */ + @media (pointer: coarse) and (max-aspect-ratio: 2/3) { + .content { + position: absolute; + top: calc((100% - 220px - 100vmin)/2) + } + } + + .content canvas { + width: 100%; + height: 100%; + image-rendering: pixelated; + image-rendering: crisp-edges; + } + `,ut([at()],A.App.prototype,"hideGamepadOverlay",2),ut([at()],A.App.prototype,"showMenu",2),ut([ct("wasm4-menu-overlay")],A.App.prototype,"menuOverlay",2),ut([ct("wasm4-notifications")],A.App.prototype,"notifications",2),A.App=ut([bt("wasm4-app")],A.App);/** + * @license + * Copyright 2021 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function*Ut(o,t){if(o!==void 0){let e=0;for(const s of o)yield t(s,e++)}}var Rs=Object.defineProperty,Ds=Object.getOwnPropertyDescriptor,Ot=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ds(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Rs(t,e,i),i};const j={DEFAULT:0,DISK:1},Ns=[{CONTINUE:0,SAVE_STATE:1,LOAD_STATE:2,DISK_OPTIONS:3,COPY_NETPLAY_LINK:4,RESET_CART:5},{BACK:0,EXPORT_DISK:1,IMPORT_DISK:2,CLEAR_DISK:3}],Mt=[["CONTINUE","SAVE STATE","LOAD STATE","DISK OPTIONS","COPY NETPLAY URL","RESET CART"],["BACK","EXPORT DISK","IMPORT DISK","CLEAR DISK"]];A.MenuOverlay=class extends M{constructor(){super(),this.lastGamepad=0,this.selectedIdx=0,this.netplaySummary=[],this.optionContext=0,this.optionContextHistory=[]}get optionIndex(){return Ns[this.optionContext]}get options(){return Mt[this.optionContext]}previousContext(){if(this.optionContextHistory.length>0){const t=this.optionContextHistory.pop();this.resetInput(),this.optionContext=t.context,this.selectedIdx=t.index}}switchContext(t,e=0){this.optionContextHistory.push({context:this.optionContext,index:this.selectedIdx}),this.resetInput(),this.optionContext=t,this.selectedIdx=e}resetInput(){this.app.inputState.gamepad[0]=0}applyInput(){let t=0;for(const s of this.app.inputState.gamepad)t|=s;const e=t&(t^this.lastGamepad);if(this.lastGamepad=t,e&(L|F)){if(this.optionContext===j.DEFAULT)switch(this.selectedIdx){case this.optionIndex.CONTINUE:this.app.closeMenu();break;case this.optionIndex.SAVE_STATE:this.app.saveGameState(),this.app.closeMenu();break;case this.optionIndex.LOAD_STATE:this.app.loadGameState(),this.app.closeMenu();break;case this.optionIndex.DISK_OPTIONS:this.switchContext(j.DISK);break;case this.optionIndex.COPY_NETPLAY_LINK:this.app.copyNetplayLink(),this.app.closeMenu();break;case this.optionIndex.RESET_CART:this.app.resetCart(),this.app.closeMenu();break}else if(this.optionContext===j.DISK)switch(this.selectedIdx){case this.optionIndex.BACK:this.previousContext();break;case this.optionIndex.EXPORT_DISK:this.app.exportGameDisk(),this.app.closeMenu();break;case this.optionIndex.IMPORT_DISK:this.resetInput(),this.app.importGameDisk();break;case this.optionIndex.CLEAR_DISK:this.app.clearGameDisk(),this.app.closeMenu();break}}e&G&&this.selectedIdx++,e&H&&this.selectedIdx--,this.selectedIdx=(this.selectedIdx+this.options.length)%this.options.length}connectedCallback(){super.connectedCallback();const t=()=>{this.netplaySummary=this.app.getNetplaySummary()};t(),this.netplayPollInterval=window.setInterval(t,1e3)}disconnectedCallback(){window.clearInterval(this.netplayPollInterval),super.disconnectedCallback()}render(){return C` +
+ WASM-4 v${"2.7.0"} +
+ +
+ ${Ut(this.netplaySummary,t=>{const e=t.ping<100?"good":t.ping<200?"ok":"bad",s=t.ping<0?C`YOU`:C`${Math.ceil(t.ping)}ms`;return C`
PLAYER ${t.playerIdx>=0?t.playerIdx+1:"?"} ${s}
`})} +
+ `}},A.MenuOverlay.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + + color: #a0a0a0; + font: 16px wasm4-font; + + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + + background: rgba(0, 0, 0, 0.85); + } + + .version { + color: #fff; + padding-bottom: 1em; + } + + .menu { + border: 2px solid #f0f0f0; + padding: 0 1em 0 1em; + line-height: 2em; + } + + .netplay-summary { + margin-top: 2em; + line-height: 1.5em; + } + + .ping-you { + color: #f0f0f0; + } + + .ping-good { + color: green; + } + + .ping-ok { + color: yellow; + } + + .ping-bad { + color: red; + } + + ul { + list-style: none; + padding-left: 0; + padding-right: 1em; + } + + li::before { + content: "\\00a0\\00a0"; + } + li.selected::before { + content: "> "; + } + li.selected { + color: #fff; + } + `,Ot([at()],A.MenuOverlay.prototype,"selectedIdx",2),Ot([at()],A.MenuOverlay.prototype,"netplaySummary",2),A.MenuOverlay=Ot([bt("wasm4-menu-overlay")],A.MenuOverlay);var Bs=Object.defineProperty,Fs=Object.getOwnPropertyDescriptor,Et=(o,t,e,s)=>{for(var i=s>1?void 0:s?Fs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Bs(t,e,i),i};function Q(o,t,e){o&&(e?o.classList.add(t):o.classList.remove(t))}A.VirtualGamepad=class extends M{constructor(){super(...arguments),this.touchEvents=new Map,this.onPointerEvent=t=>{if(t.pointerType!="touch")return;switch(t.preventDefault(),t.type){case"pointerdown":case"pointermove":this.touchEvents.set(t.pointerId,t);break;default:this.touchEvents.delete(t.pointerId);break}let e=0;if(this.touchEvents.size){const c=this.dpad.getBoundingClientRect(),a=c.x+c.width/2,h=c.y+c.height/2,l=this.action1.getBoundingClientRect(),d=l.x+l.width/2,u=l.y+l.height/2,w=this.action2.getBoundingClientRect(),b=w.x+w.width/2,p=w.y+w.height/2;let f,m,y,g,_;for(const v of this.touchEvents.values())f=v.clientX-a,m=v.clientY-h,y=Math.sqrt(f*f+m*m),y<100&&y>10&&(g=f/y,_=m/y,-g>.6?e|=J:g>.6&&(e|=Z),-_>.6?e|=H:_>.6&&(e|=G)),f=v.clientX-d,m=v.clientY-u,f*f+m*m<2500&&(e|=L),f=v.clientX-b,m=v.clientY-p,f*f+m*m<2500&&(e|=F)}Q(this.action1,"pressed",e&L),Q(this.action2,"pressed",e&F),Q(this.dpad,"pressed-left",e&J),Q(this.dpad,"pressed-right",e&Z),Q(this.dpad,"pressed-up",e&H),Q(this.dpad,"pressed-down",e&G),this.app.inputState.gamepad[0]=e}}connectedCallback(){super.connectedCallback(),window.addEventListener("pointercancel",this.onPointerEvent),window.addEventListener("pointerdown",this.onPointerEvent),window.addEventListener("pointermove",this.onPointerEvent),window.addEventListener("pointerup",this.onPointerEvent)}disconnectedCallback(){window.removeEventListener("pointercancel",this.onPointerEvent),window.removeEventListener("pointerdown",this.onPointerEvent),window.removeEventListener("pointermove",this.onPointerEvent),window.removeEventListener("pointerup",this.onPointerEvent),super.disconnectedCallback()}onMenuButtonPressed(t){this.app.onMenuButtonPressed(),t.stopImmediatePropagation()}render(){return C` + +
+
X
+
Z
+ `}},A.VirtualGamepad.styles=ft` + :host { + display: none; + } + @media (hover: none) or (pointer: coarse) { + :host { + display: inherit; + } + } + + .dpad { + pointer-events: none; + position: absolute; + width: 39px; + height: 120px; + left: 69px; + bottom: 30px; + background: #444; + border-radius: 9px; + } + .dpad:before { + position: absolute; + width: 120px; + height: 39px; + top: 39px; + left: -39px; + background: #444; + border-radius: 9px; + content: ""; + } + .dpad:after { + position: absolute; + height: 39px; + width: 39px; + top: 39px; + border-radius: 100%; + background: #333; + content: ""; + } + .dpad.pressed-left:before { + border-left: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-right:before { + border-right: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-up { + border-top: 4px solid #A93671; + } + .dpad.pressed-down { + border-bottom: 4px solid #A93671; + height: 116px; + } + + .action1 { + right: 80px; + bottom: 30px; + } + .action2 { + right: 30px; + bottom: 90px; + } + .action1, .action2 { + pointer-events: none; + position: absolute; + width: 60px; + height: 60px; + border: 4px solid #A93671; + border-radius: 50px; + + /** TODO(2022-03-14): Button text should be centered but is off slightly. */ + color: #A93671; + font: 24px wasm4-font; + text-align: center; + line-height: 60px; + } + .action1.pressed, .action2.pressed { + background: #A93671; + } + + .menu { + position: absolute; + background: #444; + width: 60px; + height: 20px; + bottom: 200px; + right: 35px; + border-radius: 10px; + } + `,Et([ct(".dpad")],A.VirtualGamepad.prototype,"dpad",2),Et([ct(".action1")],A.VirtualGamepad.prototype,"action1",2),Et([ct(".action2")],A.VirtualGamepad.prototype,"action2",2),A.VirtualGamepad=Et([bt("wasm4-virtual-gamepad")],A.VirtualGamepad);var Hs=Object.defineProperty,Gs=Object.getOwnPropertyDescriptor,Ae=(o,t,e,s)=>{for(var i=s>1?void 0:s?Gs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Hs(t,e,i),i};return A.Notifications=class extends M{constructor(){super(...arguments),this.notifications=[]}show(t){this.notifications=this.notifications.concat([t]),setTimeout(()=>{this.notifications=this.notifications.slice(1)},5e3)}render(){return this.notifications.map(t=>C`
${t}
`)}},A.Notifications.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + pointer-events: none; + + color: #fff; + font: 24px wasm4-font; + + display: flex; + flex-direction: column; + } + + .notification { + background: rgba(0, 0, 0, 0.85); + padding: 0.5em; + /* animation: appear 0.5s ease-out, disappear 0.5s 4.5s ease-in; */ + /* animation-fill-mode: forwards; */ + animation: appear 0.5s ease-out; + } + + @keyframes appear { + from { + padding-left: 2em; + opacity: 0; + } + to { + opacity: 1; + padding-left: 0.5em; + } + } + + /*@keyframes disappear { + from { + opacity: 1; + } + to { + opacity: 0; + } + }*/ + `,Ae([at()],A.Notifications.prototype,"notifications",2),A.Notifications=Ae([bt("wasm4-notifications")],A.Notifications),Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),A}({}); diff --git a/w4-tic-tac-toe/cart.wasm b/w4-tic-tac-toe/cart.wasm new file mode 100644 index 00000000..6f818ae2 Binary files /dev/null and b/w4-tic-tac-toe/cart.wasm differ diff --git a/w4-tic-tac-toe/favicon.ico b/w4-tic-tac-toe/favicon.ico new file mode 100644 index 00000000..1e3dcdc7 Binary files /dev/null and b/w4-tic-tac-toe/favicon.ico differ diff --git a/w4-tic-tac-toe/index.html b/w4-tic-tac-toe/index.html new file mode 100644 index 00000000..889693a0 --- /dev/null +++ b/w4-tic-tac-toe/index.html @@ -0,0 +1,14 @@ + + + + + + + Wa-lang/WASM-4 Game + + + + + + + diff --git a/w4-tic-tac-toe/w4app.wat b/w4-tic-tac-toe/w4app.wat new file mode 100644 index 00000000..6bc80cad --- /dev/null +++ b/w4-tic-tac-toe/w4app.wat @@ -0,0 +1,63872 @@ +(module $__walang__ + (import "env" "blitSub" (func $syscall$wasm4.__import__blitSub (param i32) (param i32) (param i32) (param i32) (param i32) (param i32) (param i32) (param i32) (param i32))) + (import "env" "line" (func $syscall$wasm4.__import__line (param i32) (param i32) (param i32) (param i32))) + (import "env" "memory" (memory 1)) + (table 31 funcref) + (type $$onFree (func (param i32))) + (type $$wa.runtime.comp (func (param i32) (param i32) (result i32))) + (type $$$fnSig1 (func (param i32) (result i32))) + (type $$$fnSig2 (func (param i32) (param i32) (param i32) (param i32) (param i32))) + (global $__stack_ptr (mut i32) (i32.const 14656)) + (global $__heap_max i32 (i32.const 65536)) + (global $$wa.runtime.closure_data (mut i32) (i32.const 0)) + (global $$wa.runtime._concretTypeCount (mut i32) (i32.const 1)) + (global $$wa.runtime._interfaceCount (mut i32) (i32.const 1)) + (global $$wa.runtime._itabsPtr (mut i32) (i32.const 17272)) + (global $runtime.init$guard (mut i32) (i32.const 0)) + (global $$knr_basep (mut i32) (i32.const 0)) + (global $$knr_freep (mut i32) (i32.const 0)) + (global $syscall$wasm4.init$guard (mut i32) (i32.const 0)) + (global $w4app.board.0 i32 (i32.const 0)) + (global $w4app.board.1 i32 (i32.const 14792)) + (global $w4app.game.0 i32 (i32.const 0)) + (global $w4app.game.1 i32 (i32.const 14808)) + (global $w4app.init$guard (mut i32) (i32.const 0)) + (global $w4app.letters_4.0 i32 (i32.const 0)) + (global $w4app.letters_4.1 i32 (i32.const 14816)) + (global $w4app.letters_A.0 i32 (i32.const 0)) + (global $w4app.letters_A.1 i32 (i32.const 14832)) + (global $w4app.letters_D.0 i32 (i32.const 0)) + (global $w4app.letters_D.1 i32 (i32.const 14848)) + (global $w4app.letters_E.0 i32 (i32.const 0)) + (global $w4app.letters_E.1 i32 (i32.const 14864)) + (global $w4app.letters_I.0 i32 (i32.const 0)) + (global $w4app.letters_I.1 i32 (i32.const 14880)) + (global $w4app.letters_M.0 i32 (i32.const 0)) + (global $w4app.letters_M.1 i32 (i32.const 14896)) + (global $w4app.letters_N.0 i32 (i32.const 0)) + (global $w4app.letters_N.1 i32 (i32.const 14912)) + (global $w4app.letters_R.0 i32 (i32.const 0)) + (global $w4app.letters_R.1 i32 (i32.const 14928)) + (global $w4app.letters_S.0 i32 (i32.const 0)) + (global $w4app.letters_S.1 i32 (i32.const 14944)) + (global $w4app.letters_W.0 i32 (i32.const 0)) + (global $w4app.letters_W.1 i32 (i32.const 14960)) + (global $w4app.letters_minus.0 i32 (i32.const 0)) + (global $w4app.letters_minus.1 i32 (i32.const 14976)) + (global $w4app.nextSprite.0 i32 (i32.const 0)) + (global $w4app.nextSprite.1 i32 (i32.const 14992)) + (global $w4app.playerSprite.0 i32 (i32.const 0)) + (global $w4app.playerSprite.1 i32 (i32.const 15008)) + (global $w4app.state.0 i32 (i32.const 0)) + (global $w4app.state.1 i32 (i32.const 15024)) + (global $w4app.tileset.0 i32 (i32.const 0)) + (global $w4app.tileset.1 i32 (i32.const 15044)) + (global $runtime.zptr (mut i32) (i32.const 15152)) + (global $__heap_base i32 (i32.const 17296)) + (func $runtime.heapBase (result i32) + global.get $__heap_base + ) + (func $runtime.heapMax (result i32) + global.get $__heap_max + ) + (func $runtime.HeapAlloc (export "runtime.HeapAlloc") (param $nbytes i32) (result i32) + (local $ptr i32) + local.get $nbytes + i32.eqz + if + i32.const 0 + return + end + local.get $nbytes + i32.const 7 + i32.add + i32.const 8 + i32.div_u + i32.const 8 + i32.mul + local.set $nbytes + local.get $nbytes + call $runtime.malloc + local.set $ptr + loop $zero + local.get $nbytes + i32.const 8 + i32.sub + local.tee $nbytes + local.get $ptr + i32.add + i64.const 0 + i64.store align=8 + local.get $nbytes + if + br $zero + end + end + local.get $ptr + ) + (func $runtime.HeapFree (export "runtime.HeapFree") (param $ptr i32) + local.get $ptr + call $runtime.free + ) + (func $runtime.Block.Init (param $ptr i32) (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + i32.const 1 + i32.store align=1 + local.get $ptr + local.get $item_count + i32.store offset=4 align=1 + local.get $ptr + local.get $release_func + i32.store offset=8 align=1 + local.get $ptr + local.get $item_size + i32.store offset=12 align=1 + end + ) + (func $runtime.Block.HeapAlloc (export "runtime.Block.HeapAlloc") (param $item_count i32) (param $release_func i32) (param $item_size i32) (result i32) + local.get $item_count + local.get $item_size + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $item_count + local.get $release_func + local.get $item_size + call $runtime.Block.Init + ) + (func $runtime.DupI32 (param $a i32) (result i32 i32) + local.get $a + local.get $a + ) + (func $runtime.Block.Retain (export "runtime.Block.Retain") (param $ptr i32) (result i32) + local.get $ptr + local.get $ptr + if + local.get $ptr + local.get $ptr + i32.load align=1 + i32.const 1 + i32.add + i32.store align=1 + end + ) + (func $runtime.Block.Release (export "runtime.Block.Release") (param $ptr i32) + (local $ref_count i32) + (local $item_count i32) + (local $free_func i32) + (local $item_size i32) + (local $data_ptr i32) + local.get $ptr + i32.const 0 + i32.eq + if + return + end + local.get $ptr + i32.load align=1 + i32.const 1 + i32.sub + local.set $ref_count + local.get $ref_count + if + local.get $ptr + local.get $ref_count + i32.store align=1 + else + local.get $ptr + i32.load offset=8 align=1 + local.set $free_func + local.get $free_func + if + local.get $ptr + i32.load offset=4 align=1 + local.set $item_count + local.get $item_count + if + local.get $ptr + i32.load offset=12 align=1 + local.set $item_size + local.get $ptr + i32.const 16 + i32.add + local.set $data_ptr + loop $free_next + local.get $data_ptr + local.get $free_func + call_indirect 0 (type $$onFree) + local.get $item_count + i32.const 1 + i32.sub + local.set $item_count + local.get $item_count + if + local.get $data_ptr + local.get $item_size + i32.add + local.set $data_ptr + br $free_next + end + end + end + end + local.get $ptr + call $runtime.HeapFree + end + ) + (func $$wa.runtime.string_to_iter (param $b i32) (param $d i32) (param $l i32) (result i32 i32 i32) + local.get $d + local.get $l + i32.const 0 + ) + (func $$syscall/wasm4.__linkname__slice_data_ptr (param $b i32) (param $d i32) (param $l i32) (param $c i32) (result i32) + local.get $d + ) + (func $$syscall/wasm4.__linkname__make_slice (param $blk i32) (param $ptr i32) (param $len i32) (param $cap i32) (result i32 i32 i32 i32) + local.get $blk + local.get $ptr + local.get $len + local.get $cap + return + ) + (func $$string.$$compAddr (param $p0 i32) (param $p1 i32) (result i32) + (local $v0.0 i32) + (local $v0.1 i32) + (local $v0.2 i32) + (local $v1.0 i32) + (local $v1.1 i32) + (local $v1.2 i32) + local.get $p0 + if + local.get $p0 + i32.load + call $runtime.Block.Retain + local.get $p0 + i32.load offset=4 + local.get $p0 + i32.load offset=8 + local.set $v0.2 + local.set $v0.1 + local.get $v0.0 + call $runtime.Block.Release + local.set $v0.0 + end + local.get $p1 + if + local.get $p1 + i32.load + call $runtime.Block.Retain + local.get $p1 + i32.load offset=4 + local.get $p1 + i32.load offset=8 + local.set $v1.2 + local.set $v1.1 + local.get $v1.0 + call $runtime.Block.Release + local.set $v1.0 + end + local.get $v0.0 + local.get $v0.1 + local.get $v0.2 + local.get $v1.0 + local.get $v1.1 + local.get $v1.2 + call $$wa.runtime.string_Comp + local.get $v0.0 + call $runtime.Block.Release + local.get $v1.0 + call $runtime.Block.Release + ) + (func $$u8.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$string.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $runtime.free (param $ap i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 + end + i32.const 0 + local.set $$current_block + local.get $ap + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $ap + i32.const 8 + i32.sub + local.set $$t1 + i32.const 0 + local.set $$t2.0 + i32.const 0 + local.set $$t2.1 + local.get $$t1 + call $runtime.knr_getBlockHeader + local.set $$t3.1 + local.set $$t3.0 + local.get $$t3.0 + local.get $$t3.1 + local.set $$t2.1 + local.set $$t2.0 + local.get $$t2.1 + local.set $$t4 + local.get $$t4 + i32.const 1 + i32.le_u + local.set $$t5 + local.get $$t5 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + local.get $ap + i32.const 8 + i32.rem_u + local.set $$t6 + local.get $$t6 + i32.const 0 + i32.eq + i32.eqz + local.set $$t7 + local.get $$t7 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + global.get $$knr_freep + local.set $$t8 + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + local.get $$t8 + call $runtime.knr_getBlockHeader + local.set $$t10.1 + local.set $$t10.0 + local.get $$t10.0 + local.get $$t10.1 + local.set $$t9.1 + local.set $$t9.0 + br $$Block_7 + end + i32.const 6 + local.set $$current_block + local.get $$t9.0 + local.set $$t11 + local.get $$t12 + local.get $$t11 + i32.ge_u + local.set $$t13 + local.get $$t13 + if + br $$Block_10 + else + br $$Block_9 + end + end + i32.const 7 + local.set $$current_block + local.get $$t2.1 + local.set $$t14 + local.get $$t14 + i32.const 8 + i32.mul + local.set $$t15 + local.get $$t1 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t9.0 + local.set $$t17 + local.get $$t16 + local.get $$t17 + i32.eq + local.set $$t18 + local.get $$t18 + if + br $$Block_12 + else + br $$Block_14 + end + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t8 + else + local.get $$t19 + end + local.set $$t12 + i32.const 8 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 9 + local.set $$current_block + local.get $$t9.0 + local.set $$t21 + local.get $$t1 + local.get $$t21 + i32.lt_u + local.set $$t22 + local.get $$t22 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t9.0 + local.set $$t19 + local.get $$t19 + call $runtime.knr_getBlockHeader + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t9.1 + local.set $$t9.0 + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + local.get $$t1 + local.get $$t12 + i32.gt_u + local.set $$t24 + local.get $$t24 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_11 + end + end + i32.const 12 + local.set $$current_block + local.get $$t9.0 + local.set $$t25 + local.get $$t1 + local.get $$t25 + i32.lt_u + local.set $$t26 + local.get $$t26 + if + i32.const 7 + local.set $$block_selector + br $$BlockDisp + else + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 0 + local.set $$t27.0 + i32.const 0 + local.set $$t27.1 + local.get $$t9.0 + local.set $$t28 + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t29.1 + local.set $$t29.0 + local.get $$t29.0 + local.get $$t29.1 + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.1 + local.set $$t30 + local.get $$t2.1 + local.set $$t31 + local.get $$t31 + local.get $$t30 + i32.add + local.set $$t32 + local.get $$t32 + local.set $$t2.1 + local.get $$t27.0 + local.set $$t33 + local.get $$t33 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t34.1 + local.set $$t34.0 + local.get $$t1 + local.get $$t34.0 + local.get $$t34.1 + call $runtime.knr_setBlockHeader + br $$Block_13 + end + i32.const 14 + local.set $$current_block + local.get $$t9.1 + local.set $$t35 + local.get $$t35 + i32.const 8 + i32.mul + local.set $$t36 + local.get $$t12 + local.get $$t36 + i32.add + local.set $$t37 + local.get $$t37 + local.get $$t1 + i32.eq + local.set $$t38 + local.get $$t38 + if + br $$Block_15 + else + br $$Block_17 + end + end + i32.const 15 + local.set $$current_block + local.get $$t9.0 + local.set $$t39 + local.get $$t39 + local.set $$t2.0 + local.get $$t2.0 + local.get $$t2.1 + local.set $$t40.1 + local.set $$t40.0 + local.get $$t1 + local.get $$t40.0 + local.get $$t40.1 + call $runtime.knr_setBlockHeader + i32.const 14 + local.set $$block_selector + br $$BlockDisp + end + i32.const 16 + local.set $$current_block + local.get $$t2.1 + local.set $$t41 + local.get $$t9.1 + local.set $$t42 + local.get $$t42 + local.get $$t41 + i32.add + local.set $$t43 + local.get $$t43 + local.set $$t9.1 + local.get $$t2.0 + local.set $$t44 + local.get $$t44 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t45.1 + local.set $$t45.0 + local.get $$t12 + local.get $$t45.0 + local.get $$t45.1 + call $runtime.knr_setBlockHeader + br $$Block_16 + end + i32.const 17 + local.set $$current_block + local.get $$t12 + global.set $$knr_freep + br $$BlockFnBody + end + i32.const 18 + local.set $$current_block + local.get $$t1 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t46.1 + local.set $$t46.0 + local.get $$t12 + local.get $$t46.0 + local.get $$t46.1 + call $runtime.knr_setBlockHeader + i32.const 17 + local.set $$block_selector + br $$BlockDisp + end + end + end + ) + (func $runtime.get_u8 (param $addr i32) (result i32) + local.get $addr + i32.load8_u align=1 + ) + (func $runtime.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $runtime.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $runtime.init$guard + call $syscall$wasm4.init + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $runtime.knr_getBlockHeader (param $addr i32) (result i32 i32) + local.get $addr + i32.load + local.get $addr + i32.load offset=4 + ) + (func $runtime.knr_setBlockHeader (param $addr i32) (param $data.0 i32) (param $data.1 i32) + local.get $addr + local.get $data.0 + i32.store + local.get $addr + local.get $data.1 + i32.store offset=4 + ) + (func $runtime.malloc (param $nbytes i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 + end + i32.const 0 + local.set $$current_block + local.get $nbytes + i32.const 0 + i32.eq + local.set $$t0 + local.get $$t0 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + global.get $$knr_basep + local.set $$t1 + local.get $$t1 + i32.const 0 + i32.eq + local.set $$t2 + local.get $$t2 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 3 + local.set $$current_block + call $runtime.heapMax + local.set $$t3 + global.get $$knr_basep + local.set $$t4 + local.get $$t3 + local.get $$t4 + i32.sub + local.set $$t5 + local.get $nbytes + local.get $$t5 + i32.ge_u + local.set $$t6 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + call $runtime.heapBase + local.set $$t7 + local.get $$t7 + global.set $$knr_basep + global.get $$knr_basep + local.set $$t8 + local.get $$t8 + global.set $$knr_freep + i32.const 0 + local.set $$t9.0 + i32.const 0 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t10 + call $runtime.heapMax + local.set $$t11 + global.get $$knr_basep + local.set $$t12 + local.get $$t11 + local.get $$t12 + i32.sub + local.set $$t13 + local.get $$t13 + i32.const 8 + i32.div_u + local.set $$t14 + local.get $$t14 + i32.const 1 + i32.sub + local.set $$t15 + local.get $$t10 + local.set $$t9.0 + local.get $$t15 + local.set $$t9.1 + global.get $$knr_basep + local.set $$t16 + local.get $$t9.0 + local.get $$t9.1 + local.set $$t17.1 + local.set $$t17.0 + local.get $$t16 + local.get $$t17.0 + local.get $$t17.1 + call $runtime.knr_setBlockHeader + br $$Block_4 + end + i32.const 5 + local.set $$current_block + local.get $nbytes + i32.const 8 + i32.add + local.set $$t18 + local.get $$t18 + i32.const 1 + i32.sub + local.set $$t19 + local.get $$t19 + i32.const 8 + i32.div_u + local.set $$t20 + local.get $$t20 + i32.const 1 + i32.add + local.set $$t21 + global.get $$knr_freep + local.set $$t22 + i32.const 0 + local.set $$t23.0 + i32.const 0 + local.set $$t23.1 + local.get $$t22 + call $runtime.knr_getBlockHeader + local.set $$t24.1 + local.set $$t24.0 + local.get $$t24.0 + local.get $$t24.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t23.0 + local.set $$t25 + i32.const 0 + local.set $$t26.0 + i32.const 0 + local.set $$t26.1 + local.get $$t25 + call $runtime.knr_getBlockHeader + local.set $$t27.1 + local.set $$t27.0 + local.get $$t27.0 + local.get $$t27.1 + local.set $$t26.1 + local.set $$t26.0 + br $$Block_5 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t22 + else + local.get $$t28 + end + local.set $$t29 + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t25 + else + local.get $$t30 + end + local.set $$t28 + i32.const 6 + local.set $$current_block + local.get $$t26.1 + local.set $$t31 + local.get $$t31 + local.get $$t21 + i32.ge_u + local.set $$t32 + local.get $$t32 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t26.1 + local.set $$t33 + local.get $$t33 + local.get $$t21 + i32.eq + local.set $$t34 + local.get $$t34 + if + br $$Block_8 + else + br $$Block_10 + end + end + i32.const 8 + local.set $$current_block + global.get $$knr_freep + local.set $$t35 + local.get $$t28 + local.get $$t35 + i32.eq + local.set $$t36 + local.get $$t36 + if + br $$Block_11 + else + br $$Block_12 + end + end + i32.const 9 + local.set $$current_block + local.get $$t26.0 + local.set $$t37 + local.get $$t37 + local.set $$t23.0 + local.get $$t23.0 + local.get $$t23.1 + local.set $$t38.1 + local.set $$t38.0 + local.get $$t29 + local.get $$t38.0 + local.get $$t38.1 + call $runtime.knr_setBlockHeader + br $$Block_9 + end + local.get $$current_block + i32.const 9 + i32.eq + if(result i32) + local.get $$t28 + else + local.get $$t39 + end + local.set $$t40 + i32.const 10 + local.set $$current_block + local.get $$t29 + global.set $$knr_freep + local.get $$t40 + i32.const 8 + i32.add + local.set $$t41 + local.get $$t41 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 11 + local.set $$current_block + local.get $$t26.1 + local.set $$t42 + local.get $$t42 + local.get $$t21 + i32.sub + local.set $$t43 + local.get $$t43 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t44.1 + local.set $$t44.0 + local.get $$t28 + local.get $$t44.0 + local.get $$t44.1 + call $runtime.knr_setBlockHeader + local.get $$t26.1 + local.set $$t45 + local.get $$t45 + i32.const 8 + i32.mul + local.set $$t46 + local.get $$t28 + local.get $$t46 + i32.add + local.set $$t39 + local.get $$t39 + call $runtime.knr_getBlockHeader + local.set $$t47.1 + local.set $$t47.0 + local.get $$t47.0 + local.get $$t47.1 + local.set $$t26.1 + local.set $$t26.0 + local.get $$t21 + local.set $$t26.1 + local.get $$t26.0 + local.get $$t26.1 + local.set $$t48.1 + local.set $$t48.0 + local.get $$t39 + local.get $$t48.0 + local.get $$t48.1 + call $runtime.knr_setBlockHeader + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 13 + local.set $$current_block + local.get $$t28 + call $runtime.knr_getBlockHeader + local.set $$t49.1 + local.set $$t49.0 + local.get $$t49.0 + local.get $$t49.1 + local.set $$t23.1 + local.set $$t23.0 + local.get $$t26.0 + local.set $$t30 + local.get $$t30 + call $runtime.knr_getBlockHeader + local.set $$t50.1 + local.set $$t50.0 + local.get $$t50.0 + local.get $$t50.1 + local.set $$t26.1 + local.set $$t26.0 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + ) + (func $$void.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$void.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + call_indirect 0 (type $$onFree) + ) + (func $$i`0`.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapNode.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 8 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 9 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapImp.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$runtime.mapImp.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 11 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapIter.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 12 + call_indirect 0 (type $$onFree) + ) + (func $$runtime.mapNode.$array1.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 6 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 6 + call_indirect 0 (type $$onFree) + ) + (func $runtime.next_rune (param $iter.0 i32) (param $iter.1 i32) (param $iter.2 i32) (result i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$ret_2 i32) + (local $$ret_3 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64 i32) + (local $$t65 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69 i32) + (local $$t70 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75 i32) + (local $$t76 i32) + (local $$t77 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79 i32) + (local $$t80 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86 i32) + (local $$t87 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89 i32) + (local $$t90 i32) + (local $$t91 i32) + (local $$t92 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95 i32) + (local $$t96 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101 i32) + (local $$t102 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106 i32) + (local $$t107 i32) + (local $$t108 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110 i32) + (local $$t111 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116 i32) + (local $$t117 i32) + (local $$t118 i32) + (local $$t119 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121 i32) + (local $$t122 i32) + (local $$t123 i32) + (local $$t124 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126 i32) + (local $$t127 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $iter.0 + i32.store + local.get $$t0.1 + local.get $iter.1 + i32.store offset=4 + local.get $$t0.1 + local.get $iter.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + local.set $$t2 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t2 + local.get $$t4 + i32.ge_s + local.set $$t5 + local.get $$t5 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.load + local.set $$t9 + i32.const 0 + local.set $$ret_0 + local.get $$t7 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + local.get $$t9 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 2 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + local.set $$t12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t14 + local.set $$t15 + local.get $$t12 + local.get $$t15 + i32.add + local.set $$t16 + local.get $$t16 + call $runtime.get_u8 + local.set $$t17 + local.get $$t17 + local.set $$t18 + local.get $$t18 + i32.const 128 + i32.and + local.set $$t19 + local.get $$t19 + i32.const 0 + i32.eq + local.set $$t20 + local.get $$t20 + if + br $$Block_2 + else + br $$Block_3 + end + end + i32.const 3 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.load + local.set $$t22 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t24 + i32.const 1 + i32.add + local.set $$t25 + i32.const 1 + local.set $$ret_0 + local.get $$t22 + local.set $$ret_1 + local.get $$t18 + local.set $$ret_2 + local.get $$t25 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t18 + i32.const 224 + i32.and + local.set $$t26 + local.get $$t26 + i32.const 192 + i32.eq + local.set $$t27 + local.get $$t27 + if + br $$Block_4 + else + br $$Block_5 + end + end + i32.const 5 + local.set $$current_block + local.get $$t18 + i32.const 31 + i32.and + local.set $$t28 + local.get $$t28 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t29 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t31 + local.set $$t32 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t32 + local.get $$t35 + i32.add + local.set $$t36 + local.get $$t36 + i32.const 1 + i32.add + local.set $$t37 + local.get $$t37 + call $runtime.get_u8 + local.set $$t38 + local.get $$t38 + local.set $$t39 + local.get $$t39 + i32.const 63 + i32.and + local.set $$t40 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + local.set $$t42 + local.get $$t29 + local.get $$t40 + i32.or + local.set $$t43 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.set $$t45 + local.get $$t45 + i32.const 2 + i32.add + local.set $$t46 + i32.const 1 + local.set $$ret_0 + local.get $$t42 + local.set $$ret_1 + local.get $$t43 + local.set $$ret_2 + local.get $$t46 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 6 + local.set $$current_block + local.get $$t18 + i32.const 240 + i32.and + local.set $$t47 + local.get $$t47 + i32.const 224 + i32.eq + local.set $$t48 + local.get $$t48 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $$t18 + i32.const 15 + i32.and + local.set $$t49 + local.get $$t49 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t50 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.set $$t52 + local.get $$t52 + local.set $$t53 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.1 + i32.load + local.set $$t55 + local.get $$t55 + local.set $$t56 + local.get $$t53 + local.get $$t56 + i32.add + local.set $$t57 + local.get $$t57 + i32.const 1 + i32.add + local.set $$t58 + local.get $$t58 + call $runtime.get_u8 + local.set $$t59 + local.get $$t59 + local.set $$t60 + local.get $$t60 + i32.const 63 + i32.and + local.set $$t61 + local.get $$t61 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t62 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t63.1 + i32.load + local.set $$t64 + local.get $$t64 + local.set $$t65 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.load + local.set $$t67 + local.get $$t67 + local.set $$t68 + local.get $$t65 + local.get $$t68 + i32.add + local.set $$t69 + local.get $$t69 + i32.const 2 + i32.add + local.set $$t70 + local.get $$t70 + call $runtime.get_u8 + local.set $$t71 + local.get $$t71 + local.set $$t72 + local.get $$t72 + i32.const 63 + i32.and + local.set $$t73 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + local.get $$t74.1 + i32.load + local.set $$t75 + local.get $$t50 + local.get $$t62 + i32.or + local.set $$t76 + local.get $$t76 + local.get $$t73 + i32.or + local.set $$t77 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + local.get $$t78.1 + i32.load + local.set $$t79 + local.get $$t79 + i32.const 3 + i32.add + local.set $$t80 + i32.const 1 + local.set $$ret_0 + local.get $$t75 + local.set $$ret_1 + local.get $$t77 + local.set $$ret_2 + local.get $$t80 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + local.get $$t18 + i32.const 248 + i32.and + local.set $$t81 + local.get $$t81 + i32.const 240 + i32.eq + local.set $$t82 + local.get $$t82 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 9 + local.set $$current_block + local.get $$t18 + i32.const 7 + i32.and + local.set $$t83 + local.get $$t83 + i64.const 18 + i32.wrap_i64 + i32.shl + local.set $$t84 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.1 + i32.load + local.set $$t86 + local.get $$t86 + local.set $$t87 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.load + local.set $$t89 + local.get $$t89 + local.set $$t90 + local.get $$t87 + local.get $$t90 + i32.add + local.set $$t91 + local.get $$t91 + i32.const 1 + i32.add + local.set $$t92 + local.get $$t92 + call $runtime.get_u8 + local.set $$t93 + local.get $$t93 + local.set $$t94 + local.get $$t94 + i32.const 63 + i32.and + local.set $$t95 + local.get $$t95 + i64.const 12 + i32.wrap_i64 + i32.shl + local.set $$t96 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t97.1 + i32.load + local.set $$t98 + local.get $$t98 + local.set $$t99 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $$t100.1 + i32.load + local.set $$t101 + local.get $$t101 + local.set $$t102 + local.get $$t99 + local.get $$t102 + i32.add + local.set $$t103 + local.get $$t103 + i32.const 2 + i32.add + local.set $$t104 + local.get $$t104 + call $runtime.get_u8 + local.set $$t105 + local.get $$t105 + local.set $$t106 + local.get $$t106 + i32.const 63 + i32.and + local.set $$t107 + local.get $$t107 + i64.const 6 + i32.wrap_i64 + i32.shl + local.set $$t108 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.1 + i32.load + local.set $$t110 + local.get $$t110 + local.set $$t111 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.1 + i32.load + local.set $$t113 + local.get $$t113 + local.set $$t114 + local.get $$t111 + local.get $$t114 + i32.add + local.set $$t115 + local.get $$t115 + i32.const 3 + i32.add + local.set $$t116 + local.get $$t116 + call $runtime.get_u8 + local.set $$t117 + local.get $$t117 + local.set $$t118 + local.get $$t118 + i32.const 63 + i32.and + local.set $$t119 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + local.get $$t120.1 + i32.load + local.set $$t121 + local.get $$t84 + local.get $$t96 + i32.or + local.set $$t122 + local.get $$t122 + local.get $$t108 + i32.or + local.set $$t123 + local.get $$t123 + local.get $$t119 + i32.or + local.set $$t124 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.load + local.set $$t126 + local.get $$t126 + i32.const 4 + i32.add + local.set $$t127 + i32.const 1 + local.set $$ret_0 + local.get $$t121 + local.set $$ret_1 + local.get $$t124 + local.set $$ret_2 + local.get $$t127 + local.set $$ret_3 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + i32.const 0 + local.set $$ret_1 + i32.const 0 + local.set $$ret_2 + i32.const 0 + local.set $$ret_3 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$ret_2 + local.get $$ret_3 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + ) + (func $$wa.runtime.string_Comp (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t3.2 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t11.2 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t12.2 i32) + (local $$t12.3 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $x.0 + local.get $x.1 + local.get $x.2 + call $$wa.runtime.string_to_iter + local.set $$t1.2 + local.set $$t1.1 + local.set $$t1.0 + local.get $$t0.1 + local.get $$t1.0 + i32.store + local.get $$t0.1 + local.get $$t1.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t1.2 + i32.store offset=8 + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $y.0 + local.get $y.1 + local.get $y.2 + call $$wa.runtime.string_to_iter + local.set $$t3.2 + local.set $$t3.1 + local.set $$t3.0 + local.get $$t2.1 + local.get $$t3.0 + i32.store + local.get $$t2.1 + local.get $$t3.1 + i32.store offset=4 + local.get $$t2.1 + local.get $$t3.2 + i32.store offset=8 + br $$Block_0 + end + i32.const 1 + local.set $$current_block + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.set $$t4.2 + local.set $$t4.1 + local.set $$t4.0 + local.get $$t4.0 + local.get $$t4.1 + local.get $$t4.2 + call $runtime.next_rune + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.set $$t5.0 + local.get $$t5.0 + local.set $$t6 + local.get $$t5.1 + local.set $$t7 + local.get $$t5.2 + local.set $$t8 + local.get $$t5.3 + local.set $$t9 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + local.get $$t9 + i32.store + local.get $$t2.1 + i32.load + local.get $$t2.1 + i32.load offset=4 + local.get $$t2.1 + i32.load offset=8 + local.set $$t11.2 + local.set $$t11.1 + local.set $$t11.0 + local.get $$t11.0 + local.get $$t11.1 + local.get $$t11.2 + call $runtime.next_rune + local.set $$t12.3 + local.set $$t12.2 + local.set $$t12.1 + local.set $$t12.0 + local.get $$t12.0 + local.set $$t13 + local.get $$t12.1 + local.set $$t14 + local.get $$t12.2 + local.set $$t15 + local.get $$t12.3 + local.set $$t16 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 8 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + local.get $$t16 + i32.store + local.get $$t6 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + local.get $x.2 + local.set $$t18 + local.get $y.2 + local.set $$t19 + local.get $$t18 + local.get $$t19 + i32.lt_s + local.set $$t20 + local.get $$t20 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 3 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.lt_s + local.set $$t21 + local.get $$t21 + if + br $$Block_5 + else + br $$Block_6 + end + end + i32.const 4 + local.set $$current_block + br $$Block_4 + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t22 + i32.const 5 + local.set $$current_block + local.get $$t22 + i32.const 1 + i32.eq + i32.eqz + local.set $$t23 + local.get $$t23 + if + i32.const 2 + local.set $$block_selector + br $$BlockDisp + else + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 7 + local.set $$current_block + local.get $$t8 + local.get $$t15 + i32.gt_s + local.set $$t24 + local.get $$t24 + if + br $$Block_7 + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 9 + local.set $$current_block + i32.const -1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $$t18 + local.get $$t19 + i32.gt_s + local.set $$t25 + local.get $$t25 + if + br $$Block_10 + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + i32.const 1 + local.set $$ret_0 + br $$BlockFnBody + end + i32.const 12 + local.set $$current_block + i32.const 0 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.BlitSubI32 (param $sprite.0 i32) (param $sprite.1 i32) (param $sprite.2 i32) (param $sprite.3 i32) (param $x i32) (param $y i32) (param $width i32) (param $height i32) (param $srcX i32) (param $srcY i32) (param $stride i32) (param $flags i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $sprite.0 + local.get $sprite.1 + local.get $sprite.2 + local.get $sprite.3 + call $$syscall/wasm4.__linkname__slice_data_ptr + local.set $$t0 + local.get $$t0 + local.get $x + local.get $y + local.get $width + local.get $height + local.get $srcX + local.get $srcY + local.get $stride + local.get $flags + call $syscall$wasm4.__import__blitSub + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.GetGamePad1 (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 22 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetMouseButtons (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 30 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load8_u align=1 + local.set $$t2 + local.get $$t2 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetMouseX (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 26 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load16_u + local.set $$t2 + local.get $$t2 + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.GetMouseY (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 28 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load16_u + local.set $$t2 + local.get $$t2 + local.set $$t3 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.LineI32 (param $x1 i32) (param $y1 i32) (param $x2 i32) (param $y2 i32) + (local $$block_selector i32) + (local $$current_block i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $x1 + local.get $y1 + local.get $x2 + local.get $y2 + call $syscall$wasm4.__import__line + br $$BlockFnBody + end + end + end + ) + (func $syscall$wasm4.SetDrawColorsU16 (param $x i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 0 + i32.const 20 + i32.const 1 + i32.const 1 + call $$syscall/wasm4.__linkname__make_slice + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 2 + i32.const 0 + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + local.get $x + i32.store16 + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $syscall$wasm4.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $syscall$wasm4.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $syscall$wasm4.init$guard + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + ) + (func $w4app.JustPressedGamepad1 (export "w4app.JustPressedGamepad1") (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + call $syscall$wasm4.GetGamePad1 + local.set $$t0 + i32.const 15030 + i32.load8_u align=1 + local.set $$t1 + local.get $$t0 + local.get $$t1 + i32.xor + local.set $$t2 + local.get $$t0 + local.get $$t2 + i32.and + local.set $$t3 + i32.const 15030 + local.get $$t0 + i32.store8 align=1 + local.get $$t3 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4app.Random$1 (param $seed.0 i32) (param $seed.1 i32) (param $n i32) (result i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$t0 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + local.get $seed.1 + i32.load + local.set $$t0 + local.get $$t0 + i32.const 16807 + i32.mul + local.set $$t1 + local.get $$t1 + i32.const 2147483647 + i32.rem_u + local.set $$t2 + local.get $seed.1 + local.get $$t2 + i32.store + local.get $seed.1 + i32.load + local.set $$t3 + local.get $$t3 + local.get $n + i32.rem_u + local.set $$t4 + local.get $$t4 + local.set $$ret_0 + br $$BlockFnBody + end + end + end + local.get $$ret_0 + ) + (func $w4app.Random$1.$warpfn (param $n i32) (result i32) + global.get $$wa.runtime.closure_data + i32.load + global.get $$wa.runtime.closure_data + i32.load offset=4 + i32.const 0 + global.set $$wa.runtime.closure_data + local.get $n + call $w4app.Random$1 + ) + (func $$u32.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$u32.$ref.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 16 + call_indirect 0 (type $$onFree) + ) + (func $$w4app.Random$1.$warpdata.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 17 + call_indirect 0 (type $$onFree) + ) + (func $w4app.Random (export "w4app.Random") (param $seed i32) (result i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0.0 i32) + (local $$ret_0.1.0 i32) + (local $$ret_0.1.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1.0 i32) + (local $$t7.1.1 i32) + (local $$t8.0.0 i32) + (local $$t8.0.1 i32) + (local $$t9.0 i32) + (local $$t9.1.0 i32) + (local $$t9.1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + i32.const 20 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 4 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $seed + i32.store + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $$t1 + i32.const 2147483647 + i32.rem_u + local.set $$t2 + local.get $$t0.1 + local.get $$t2 + i32.store + local.get $$t0.1 + i32.load + local.set $$t3 + local.get $$t3 + i32.const 0 + i32.le_u + local.set $$t4 + local.get $$t4 + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $$t0.1 + i32.load + local.set $$t5 + local.get $$t5 + i32.const 2147483646 + i32.add + local.set $$t6 + local.get $$t0.1 + local.get $$t6 + i32.store + br $$Block_1 + end + i32.const 2 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + local.set $$t8.0.1 + local.get $$t8.0.0 + call $runtime.Block.Release + local.set $$t8.0.0 + i32.const 15 + local.set $$t7.0 + i32.const 24 + call $runtime.HeapAlloc + i32.const 1 + i32.const 18 + i32.const 8 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t7.1.1 + local.get $$t7.1.0 + call $runtime.Block.Release + local.set $$t7.1.0 + local.get $$t7.1.1 + local.get $$t8.0.0 + call $runtime.Block.Retain + local.get $$t7.1.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t7.1.1 + local.get $$t8.0.1 + i32.store offset=4 + local.get $$t8.0.0 + call $runtime.Block.Release + i32.const 0 + local.set $$t8.0.0 + i32.const 0 + local.set $$t8.0.1 + local.get $$t7.0 + local.get $$t7.1.0 + call $runtime.Block.Retain + local.get $$t7.1.1 + local.set $$t9.1.1 + local.get $$t9.1.0 + call $runtime.Block.Release + local.set $$t9.1.0 + local.set $$t9.0 + local.get $$t9.0 + local.get $$t9.1.0 + call $runtime.Block.Retain + local.get $$t9.1.1 + local.set $$ret_0.1.1 + local.get $$ret_0.1.0 + call $runtime.Block.Release + local.set $$ret_0.1.0 + local.set $$ret_0.0 + br $$BlockFnBody + end + end + end + local.get $$ret_0.0 + local.get $$ret_0.1.0 + call $runtime.Block.Retain + local.get $$ret_0.1.1 + local.get $$ret_0.1.0 + call $runtime.Block.Release + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t7.1.0 + call $runtime.Block.Release + local.get $$t8.0.0 + call $runtime.Block.Release + local.get $$t9.1.0 + call $runtime.Block.Release + ) + (func $w4app.Update (export "update") + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 0 + end + i32.const 0 + local.set $$current_block + i32.const 14808 + i32.load + call $runtime.Block.Retain + i32.const 14808 + i32.load offset=4 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + local.get $$t0.1 + call $w4app.Game.Update + i32.const 14808 + i32.load + call $runtime.Block.Retain + i32.const 14808 + i32.load offset=4 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + local.get $$t1.1 + call $w4app.Game.Draw + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + ) + (func $$u8.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 2 + call_indirect 0 (type $$onFree) + ) + (func $$w4app.Sprite.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 19 + call_indirect 0 (type $$onFree) + ) + (func $$$u32$$$u32$$.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 4 + i32.add + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$w4app.Star.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$w4app.Star.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 22 + call_indirect 0 (type $$onFree) + ) + (func $$i`1`.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 5 + call_indirect 0 (type $$onFree) + ) + (func $$w4app.Game.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 80 + i32.add + i32.const 21 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 92 + i32.add + i32.const 23 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 108 + i32.add + i32.const 24 + call_indirect 0 (type $$onFree) + ) + (func $$w4app.Tile.$$block.$$onFree (param $ptr i32) + local.get $ptr + i32.load align=1 + call $runtime.Block.Release + local.get $ptr + i32.const 0 + i32.store align=1 + ) + (func $$w4app.Tile.$slice.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 26 + call_indirect 0 (type $$onFree) + ) + (func $$w4app.Player.$array2.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 27 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 27 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 32 + i32.add + i32.const 27 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 48 + i32.add + i32.const 27 + call_indirect 0 (type $$onFree) + ) + (func $$w4app.Next.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 26 + call_indirect 0 (type $$onFree) + ) + (func $$w4app.Next.$array2.underlying.$$onFree (param $$ptr i32) + local.get $$ptr + i32.const 29 + call_indirect 0 (type $$onFree) + local.get $$ptr + i32.const 16 + i32.add + i32.const 29 + call_indirect 0 (type $$onFree) + ) + (func $w4app.init + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62.0 i32) + (local $$t62.1 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64.0 i32) + (local $$t64.1 i32) + (local $$t65.0 i32) + (local $$t65.1 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67.0 i32) + (local $$t67.1 i32) + (local $$t68.0 i32) + (local $$t68.1 i32) + (local $$t69.0 i32) + (local $$t69.1 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72.0 i32) + (local $$t72.1 i32) + (local $$t73.0 i32) + (local $$t73.1 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75.0 i32) + (local $$t75.1 i32) + (local $$t76.0 i32) + (local $$t76.1 i32) + (local $$t77.0 i32) + (local $$t77.1 i32) + (local $$t78.0 i32) + (local $$t78.1 i32) + (local $$t79.0 i32) + (local $$t79.1 i32) + (local $$t80.0 i32) + (local $$t80.1 i32) + (local $$t81.0 i32) + (local $$t81.1 i32) + (local $$t82.0 i32) + (local $$t82.1 i32) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t84.0 i32) + (local $$t84.1 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86.0 i32) + (local $$t86.1 i32) + (local $$t87.0 i32) + (local $$t87.1 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89.0 i32) + (local $$t89.1 i32) + (local $$t90.0 i32) + (local $$t90.1 i32) + (local $$t91.0 i32) + (local $$t91.1 i32) + (local $$t92.0 i32) + (local $$t92.1 i32) + (local $$t93.0 i32) + (local $$t93.1 i32) + (local $$t94.0 i32) + (local $$t94.1 i32) + (local $$t95.0 i32) + (local $$t95.1 i32) + (local $$t96.0 i32) + (local $$t96.1 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98.0 i32) + (local $$t98.1 i32) + (local $$t99.0 i32) + (local $$t99.1 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101.0 i32) + (local $$t101.1 i32) + (local $$t102.0 i32) + (local $$t102.1 i32) + (local $$t103.0 i32) + (local $$t103.1 i32) + (local $$t104.0 i32) + (local $$t104.1 i32) + (local $$t105.0 i32) + (local $$t105.1 i32) + (local $$t106.0 i32) + (local $$t106.1 i32) + (local $$t107.0 i32) + (local $$t107.1 i32) + (local $$t108.0 i32) + (local $$t108.1 i32) + (local $$t109.0 i32) + (local $$t109.1 i32) + (local $$t110.0 i32) + (local $$t110.1 i32) + (local $$t111.0 i32) + (local $$t111.1 i32) + (local $$t112.0 i32) + (local $$t112.1 i32) + (local $$t113.0 i32) + (local $$t113.1 i32) + (local $$t114.0 i32) + (local $$t114.1 i32) + (local $$t115.0 i32) + (local $$t115.1 i32) + (local $$t116.0 i32) + (local $$t116.1 i32) + (local $$t117.0 i32) + (local $$t117.1 i32) + (local $$t118.0 i32) + (local $$t118.1 i32) + (local $$t119.0 i32) + (local $$t119.1 i32) + (local $$t120.0 i32) + (local $$t120.1 i32) + (local $$t121.0 i32) + (local $$t121.1 i32) + (local $$t122.0 i32) + (local $$t122.1 i32) + (local $$t123.0 i32) + (local $$t123.1 i32) + (local $$t124.0 i32) + (local $$t124.1 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126.0 i32) + (local $$t126.1 i32) + (local $$t127.0 i32) + (local $$t127.1 i32) + (local $$t128.0 i32) + (local $$t128.1 i32) + (local $$t129.0 i32) + (local $$t129.1 i32) + (local $$t130.0 i32) + (local $$t130.1 i32) + (local $$t131.0 i32) + (local $$t131.1 i32) + (local $$t132.0 i32) + (local $$t132.1 i32) + (local $$t133.0 i32) + (local $$t133.1 i32) + (local $$t134.0 i32) + (local $$t134.1 i32) + (local $$t135.0 i32) + (local $$t135.1 i32) + (local $$t136.0 i32) + (local $$t136.1 i32) + (local $$t137.0 i32) + (local $$t137.1 i32) + (local $$t138.0 i32) + (local $$t138.1 i32) + (local $$t139.0 i32) + (local $$t139.1 i32) + (local $$t140.0 i32) + (local $$t140.1 i32) + (local $$t141.0 i32) + (local $$t141.1 i32) + (local $$t142.0 i32) + (local $$t142.1 i32) + (local $$t143.0 i32) + (local $$t143.1 i32) + (local $$t144.0 i32) + (local $$t144.1 i32) + (local $$t145.0 i32) + (local $$t145.1 i32) + (local $$t146.0 i32) + (local $$t146.1 i32) + (local $$t147.0 i32) + (local $$t147.1 i32) + (local $$t148.0 i32) + (local $$t148.1 i32) + (local $$t149.0 i32) + (local $$t149.1 i32) + (local $$t150.0 i32) + (local $$t150.1 i32) + (local $$t151.0 i32) + (local $$t151.1 i32) + (local $$t152.0 i32) + (local $$t152.1 i32) + (local $$t153.0 i32) + (local $$t153.1 i32) + (local $$t154.0 i32) + (local $$t154.1 i32) + (local $$t155.0 i32) + (local $$t155.1 i32) + (local $$t156.0 i32) + (local $$t156.1 i32) + (local $$t157.0 i32) + (local $$t157.1 i32) + (local $$t158.0 i32) + (local $$t158.1 i32) + (local $$t159.0 i32) + (local $$t159.1 i32) + (local $$t160.0 i32) + (local $$t160.1 i32) + (local $$t161.0 i32) + (local $$t161.1 i32) + (local $$t162.0 i32) + (local $$t162.1 i32) + (local $$t163.0 i32) + (local $$t163.1 i32) + (local $$t164.0 i32) + (local $$t164.1 i32) + (local $$t165.0 i32) + (local $$t165.1 i32) + (local $$t166.0 i32) + (local $$t166.1 i32) + (local $$t167.0 i32) + (local $$t167.1 i32) + (local $$t168.0 i32) + (local $$t168.1 i32) + (local $$t169.0 i32) + (local $$t169.1 i32) + (local $$t170.0 i32) + (local $$t170.1 i32) + (local $$t171.0 i32) + (local $$t171.1 i32) + (local $$t172.0 i32) + (local $$t172.1 i32) + (local $$t173.0 i32) + (local $$t173.1 i32) + (local $$t174.0 i32) + (local $$t174.1 i32) + (local $$t175.0 i32) + (local $$t175.1 i32) + (local $$t176.0 i32) + (local $$t176.1 i32) + (local $$t177.0 i32) + (local $$t177.1 i32) + (local $$t178.0 i32) + (local $$t178.1 i32) + (local $$t179.0 i32) + (local $$t179.1 i32) + (local $$t180.0 i32) + (local $$t180.1 i32) + (local $$t181.0 i32) + (local $$t181.1 i32) + (local $$t182.0 i32) + (local $$t182.1 i32) + (local $$t183.0 i32) + (local $$t183.1 i32) + (local $$t184.0 i32) + (local $$t184.1 i32) + (local $$t185.0 i32) + (local $$t185.1 i32) + (local $$t186.0 i32) + (local $$t186.1 i32) + (local $$t187.0 i32) + (local $$t187.1 i32) + (local $$t188.0 i32) + (local $$t188.1 i32) + (local $$t189.0 i32) + (local $$t189.1 i32) + (local $$t190.0 i32) + (local $$t190.1 i32) + (local $$t191.0 i32) + (local $$t191.1 i32) + (local $$t192.0 i32) + (local $$t192.1 i32) + (local $$t193.0 i32) + (local $$t193.1 i32) + (local $$t194.0 i32) + (local $$t194.1 i32) + (local $$t195.0 i32) + (local $$t195.1 i32) + (local $$t196.0 i32) + (local $$t196.1 i32) + (local $$t197.0 i32) + (local $$t197.1 i32) + (local $$t198.0 i32) + (local $$t198.1 i32) + (local $$t199.0 i32) + (local $$t199.1 i32) + (local $$t200.0 i32) + (local $$t200.1 i32) + (local $$t201.0 i32) + (local $$t201.1 i32) + (local $$t202.0 i32) + (local $$t202.1 i32) + (local $$t203.0 i32) + (local $$t203.1 i32) + (local $$t204.0 i32) + (local $$t204.1 i32) + (local $$t205.0 i32) + (local $$t205.1 i32) + (local $$t206.0 i32) + (local $$t206.1 i32) + (local $$t207.0 i32) + (local $$t207.1 i32) + (local $$t208.0 i32) + (local $$t208.1 i32) + (local $$t209.0 i32) + (local $$t209.1 i32) + (local $$t210.0 i32) + (local $$t210.1 i32) + (local $$t211.0 i32) + (local $$t211.1 i32) + (local $$t212.0 i32) + (local $$t212.1 i32) + (local $$t213.0 i32) + (local $$t213.1 i32) + (local $$t214.0 i32) + (local $$t214.1 i32) + (local $$t215.0 i32) + (local $$t215.1 i32) + (local $$t216.0 i32) + (local $$t216.1 i32) + (local $$t217.0 i32) + (local $$t217.1 i32) + (local $$t218.0 i32) + (local $$t218.1 i32) + (local $$t219.0 i32) + (local $$t219.1 i32) + (local $$t220.0 i32) + (local $$t220.1 i32) + (local $$t221.0 i32) + (local $$t221.1 i32) + (local $$t222.0 i32) + (local $$t222.1 i32) + (local $$t223.0 i32) + (local $$t223.1 i32) + (local $$t224.0 i32) + (local $$t224.1 i32) + (local $$t225.0 i32) + (local $$t225.1 i32) + (local $$t226.0 i32) + (local $$t226.1 i32) + (local $$t227.0 i32) + (local $$t227.1 i32) + (local $$t228.0 i32) + (local $$t228.1 i32) + (local $$t229.0 i32) + (local $$t229.1 i32) + (local $$t230.0 i32) + (local $$t230.1 i32) + (local $$t231.0 i32) + (local $$t231.1 i32) + (local $$t232.0 i32) + (local $$t232.1 i32) + (local $$t233.0 i32) + (local $$t233.1 i32) + (local $$t234.0 i32) + (local $$t234.1 i32) + (local $$t235.0 i32) + (local $$t235.1 i32) + (local $$t236.0 i32) + (local $$t236.1 i32) + (local $$t237.0 i32) + (local $$t237.1 i32) + (local $$t238.0 i32) + (local $$t238.1 i32) + (local $$t239.0 i32) + (local $$t239.1 i32) + (local $$t240.0 i32) + (local $$t240.1 i32) + (local $$t241.0 i32) + (local $$t241.1 i32) + (local $$t242.0 i32) + (local $$t242.1 i32) + (local $$t243.0 i32) + (local $$t243.1 i32) + (local $$t244.0 i32) + (local $$t244.1 i32) + (local $$t245.0 i32) + (local $$t245.1 i32) + (local $$t246.0 i32) + (local $$t246.1 i32) + (local $$t247.0 i32) + (local $$t247.1 i32) + (local $$t248.0 i32) + (local $$t248.1 i32) + (local $$t249.0 i32) + (local $$t249.1 i32) + (local $$t250.0 i32) + (local $$t250.1 i32) + (local $$t251.0 i32) + (local $$t251.1 i32) + (local $$t252.0 i32) + (local $$t252.1 i32) + (local $$t253.0 i32) + (local $$t253.1 i32) + (local $$t254.0 i32) + (local $$t254.1 i32) + (local $$t255.0 i32) + (local $$t255.1 i32) + (local $$t256.0 i32) + (local $$t256.1 i32) + (local $$t257.0 i32) + (local $$t257.1 i32) + (local $$t258.0 i32) + (local $$t258.1 i32) + (local $$t259.0 i32) + (local $$t259.1 i32) + (local $$t260.0 i32) + (local $$t260.1 i32) + (local $$t261.0 i32) + (local $$t261.1 i32) + (local $$t262.0 i32) + (local $$t262.1 i32) + (local $$t263.0 i32) + (local $$t263.1 i32) + (local $$t264.0 i32) + (local $$t264.1 i32) + (local $$t265.0 i32) + (local $$t265.1 i32) + (local $$t266.0 i32) + (local $$t266.1 i32) + (local $$t267.0 i32) + (local $$t267.1 i32) + (local $$t268.0 i32) + (local $$t268.1 i32) + (local $$t269.0 i32) + (local $$t269.1 i32) + (local $$t270.0 i32) + (local $$t270.1 i32) + (local $$t271.0 i32) + (local $$t271.1 i32) + (local $$t272.0 i32) + (local $$t272.1 i32) + (local $$t273.0 i32) + (local $$t273.1 i32) + (local $$t274.0 i32) + (local $$t274.1 i32) + (local $$t275.0 i32) + (local $$t275.1 i32) + (local $$t276.0 i32) + (local $$t276.1 i32) + (local $$t277.0 i32) + (local $$t277.1 i32) + (local $$t278.0 i32) + (local $$t278.1 i32) + (local $$t279.0 i32) + (local $$t279.1 i32) + (local $$t280.0 i32) + (local $$t280.1 i32) + (local $$t281.0 i32) + (local $$t281.1 i32) + (local $$t282.0 i32) + (local $$t282.1 i32) + (local $$t283.0 i32) + (local $$t283.1 i32) + (local $$t284.0 i32) + (local $$t284.1 i32) + (local $$t285.0 i32) + (local $$t285.1 i32) + (local $$t286.0 i32) + (local $$t286.1 i32) + (local $$t287.0 i32) + (local $$t287.1 i32) + (local $$t288.0 i32) + (local $$t288.1 i32) + (local $$t289.0 i32) + (local $$t289.1 i32) + (local $$t290.0 i32) + (local $$t290.1 i32) + (local $$t291.0 i32) + (local $$t291.1 i32) + (local $$t292.0 i32) + (local $$t292.1 i32) + (local $$t293.0 i32) + (local $$t293.1 i32) + (local $$t294.0 i32) + (local $$t294.1 i32) + (local $$t295.0 i32) + (local $$t295.1 i32) + (local $$t296.0 i32) + (local $$t296.1 i32) + (local $$t297.0 i32) + (local $$t297.1 i32) + (local $$t298.0 i32) + (local $$t298.1 i32) + (local $$t299.0 i32) + (local $$t299.1 i32) + (local $$t300.0 i32) + (local $$t300.1 i32) + (local $$t301.0 i32) + (local $$t301.1 i32) + (local $$t302.0 i32) + (local $$t302.1 i32) + (local $$t303.0 i32) + (local $$t303.1 i32) + (local $$t304.0 i32) + (local $$t304.1 i32) + (local $$t305.0 i32) + (local $$t305.1 i32) + (local $$t306.0 i32) + (local $$t306.1 i32) + (local $$t307.0 i32) + (local $$t307.1 i32) + (local $$t308.0 i32) + (local $$t308.1 i32) + (local $$t309.0 i32) + (local $$t309.1 i32) + (local $$t310.0 i32) + (local $$t310.1 i32) + (local $$t311.0 i32) + (local $$t311.1 i32) + (local $$t312.0 i32) + (local $$t312.1 i32) + (local $$t313.0 i32) + (local $$t313.1 i32) + (local $$t314.0 i32) + (local $$t314.1 i32) + (local $$t315.0 i32) + (local $$t315.1 i32) + (local $$t316.0 i32) + (local $$t316.1 i32) + (local $$t317.0 i32) + (local $$t317.1 i32) + (local $$t318.0 i32) + (local $$t318.1 i32) + (local $$t319.0 i32) + (local $$t319.1 i32) + (local $$t320.0 i32) + (local $$t320.1 i32) + (local $$t321.0 i32) + (local $$t321.1 i32) + (local $$t322.0 i32) + (local $$t322.1 i32) + (local $$t323.0 i32) + (local $$t323.1 i32) + (local $$t324.0 i32) + (local $$t324.1 i32) + (local $$t325.0 i32) + (local $$t325.1 i32) + (local $$t326.0 i32) + (local $$t326.1 i32) + (local $$t327.0 i32) + (local $$t327.1 i32) + (local $$t328.0 i32) + (local $$t328.1 i32) + (local $$t329.0 i32) + (local $$t329.1 i32) + (local $$t330.0 i32) + (local $$t330.1 i32) + (local $$t331.0 i32) + (local $$t331.1 i32) + (local $$t332.0 i32) + (local $$t332.1 i32) + (local $$t333.0 i32) + (local $$t333.1 i32) + (local $$t334.0 i32) + (local $$t334.1 i32) + (local $$t335.0 i32) + (local $$t335.1 i32) + (local $$t336.0 i32) + (local $$t336.1 i32) + (local $$t337.0 i32) + (local $$t337.1 i32) + (local $$t338.0 i32) + (local $$t338.1 i32) + (local $$t339.0 i32) + (local $$t339.1 i32) + (local $$t340.0 i32) + (local $$t340.1 i32) + (local $$t341.0 i32) + (local $$t341.1 i32) + (local $$t342.0 i32) + (local $$t342.1 i32) + (local $$t343.0 i32) + (local $$t343.1 i32) + (local $$t344.0 i32) + (local $$t344.1 i32) + (local $$t345.0 i32) + (local $$t345.1 i32) + (local $$t346.0 i32) + (local $$t346.1 i32) + (local $$t347.0 i32) + (local $$t347.1 i32) + (local $$t348.0 i32) + (local $$t348.1 i32) + (local $$t349.0 i32) + (local $$t349.1 i32) + (local $$t350.0 i32) + (local $$t350.1 i32) + (local $$t351.0 i32) + (local $$t351.1 i32) + (local $$t352.0 i32) + (local $$t352.1 i32) + (local $$t353.0 i32) + (local $$t353.1 i32) + (local $$t354.0 i32) + (local $$t354.1 i32) + (local $$t355.0 i32) + (local $$t355.1 i32) + (local $$t356.0 i32) + (local $$t356.1 i32) + (local $$t357.0 i32) + (local $$t357.1 i32) + (local $$t358.0 i32) + (local $$t358.1 i32) + (local $$t359.0 i32) + (local $$t359.1 i32) + (local $$t360.0 i32) + (local $$t360.1 i32) + (local $$t361.0 i32) + (local $$t361.1 i32) + (local $$t362.0 i32) + (local $$t362.1 i32) + (local $$t363.0 i32) + (local $$t363.1 i32) + (local $$t364.0 i32) + (local $$t364.1 i32) + (local $$t365.0 i32) + (local $$t365.1 i32) + (local $$t366.0 i32) + (local $$t366.1 i32) + (local $$t367.0 i32) + (local $$t367.1 i32) + (local $$t368.0 i32) + (local $$t368.1 i32) + (local $$t369.0 i32) + (local $$t369.1 i32) + (local $$t370.0 i32) + (local $$t370.1 i32) + (local $$t371.0 i32) + (local $$t371.1 i32) + (local $$t372.0 i32) + (local $$t372.1 i32) + (local $$t373.0 i32) + (local $$t373.1 i32) + (local $$t374.0 i32) + (local $$t374.1 i32) + (local $$t375.0 i32) + (local $$t375.1 i32) + (local $$t376.0 i32) + (local $$t376.1 i32) + (local $$t377.0 i32) + (local $$t377.1 i32) + (local $$t378.0 i32) + (local $$t378.1 i32) + (local $$t379.0 i32) + (local $$t379.1 i32) + (local $$t380.0 i32) + (local $$t380.1 i32) + (local $$t381.0 i32) + (local $$t381.1 i32) + (local $$t382.0 i32) + (local $$t382.1 i32) + (local $$t383.0 i32) + (local $$t383.1 i32) + (local $$t384.0 i32) + (local $$t384.1 i32) + (local $$t385.0 i32) + (local $$t385.1 i32) + (local $$t386.0 i32) + (local $$t386.1 i32) + (local $$t387.0 i32) + (local $$t387.1 i32) + (local $$t388.0 i32) + (local $$t388.1 i32) + (local $$t389.0 i32) + (local $$t389.1 i32) + (local $$t390.0 i32) + (local $$t390.1 i32) + (local $$t391.0 i32) + (local $$t391.1 i32) + (local $$t392.0 i32) + (local $$t392.1 i32) + (local $$t393.0 i32) + (local $$t393.1 i32) + (local $$t394.0 i32) + (local $$t394.1 i32) + (local $$t395.0 i32) + (local $$t395.1 i32) + (local $$t396.0 i32) + (local $$t396.1 i32) + (local $$t397.0 i32) + (local $$t397.1 i32) + (local $$t398.0 i32) + (local $$t398.1 i32) + (local $$t399.0 i32) + (local $$t399.1 i32) + (local $$t400.0 i32) + (local $$t400.1 i32) + (local $$t401.0 i32) + (local $$t401.1 i32) + (local $$t402.0 i32) + (local $$t402.1 i32) + (local $$t403.0 i32) + (local $$t403.1 i32) + (local $$t404.0 i32) + (local $$t404.1 i32) + (local $$t405.0 i32) + (local $$t405.1 i32) + (local $$t406.0 i32) + (local $$t406.1 i32) + (local $$t407.0 i32) + (local $$t407.1 i32) + (local $$t408.0 i32) + (local $$t408.1 i32) + (local $$t409.0 i32) + (local $$t409.1 i32) + (local $$t410.0 i32) + (local $$t410.1 i32) + (local $$t411.0 i32) + (local $$t411.1 i32) + (local $$t412.0 i32) + (local $$t412.1 i32) + (local $$t413.0 i32) + (local $$t413.1 i32) + (local $$t414.0 i32) + (local $$t414.1 i32) + (local $$t415.0 i32) + (local $$t415.1 i32) + (local $$t416.0 i32) + (local $$t416.1 i32) + (local $$t417.0 i32) + (local $$t417.1 i32) + (local $$t418.0 i32) + (local $$t418.1 i32) + (local $$t419.0 i32) + (local $$t419.1 i32) + (local $$t420.0 i32) + (local $$t420.1 i32) + (local $$t421.0 i32) + (local $$t421.1 i32) + (local $$t422.0 i32) + (local $$t422.1 i32) + (local $$t423.0 i32) + (local $$t423.1 i32) + (local $$t424.0 i32) + (local $$t424.1 i32) + (local $$t425.0 i32) + (local $$t425.1 i32) + (local $$t426.0 i32) + (local $$t426.1 i32) + (local $$t427.0 i32) + (local $$t427.1 i32) + (local $$t428.0 i32) + (local $$t428.1 i32) + (local $$t429.0 i32) + (local $$t429.1 i32) + (local $$t430.0 i32) + (local $$t430.1 i32) + (local $$t431.0 i32) + (local $$t431.1 i32) + (local $$t432.0 i32) + (local $$t432.1 i32) + (local $$t433.0 i32) + (local $$t433.1 i32) + (local $$t434.0 i32) + (local $$t434.1 i32) + (local $$t435.0 i32) + (local $$t435.1 i32) + (local $$t436.0 i32) + (local $$t436.1 i32) + (local $$t437.0 i32) + (local $$t437.1 i32) + (local $$t438.0 i32) + (local $$t438.1 i32) + (local $$t439.0 i32) + (local $$t439.1 i32) + (local $$t440.0 i32) + (local $$t440.1 i32) + (local $$t441.0 i32) + (local $$t441.1 i32) + (local $$t442.0 i32) + (local $$t442.1 i32) + (local $$t443.0 i32) + (local $$t443.1 i32) + (local $$t444.0 i32) + (local $$t444.1 i32) + (local $$t445.0 i32) + (local $$t445.1 i32) + (local $$t446.0 i32) + (local $$t446.1 i32) + (local $$t447.0 i32) + (local $$t447.1 i32) + (local $$t448.0 i32) + (local $$t448.1 i32) + (local $$t449.0 i32) + (local $$t449.1 i32) + (local $$t450.0 i32) + (local $$t450.1 i32) + (local $$t451.0 i32) + (local $$t451.1 i32) + (local $$t452.0 i32) + (local $$t452.1 i32) + (local $$t453.0 i32) + (local $$t453.1 i32) + (local $$t454.0 i32) + (local $$t454.1 i32) + (local $$t455.0 i32) + (local $$t455.1 i32) + (local $$t456.0 i32) + (local $$t456.1 i32) + (local $$t457.0 i32) + (local $$t457.1 i32) + (local $$t458.0 i32) + (local $$t458.1 i32) + (local $$t459.0 i32) + (local $$t459.1 i32) + (local $$t460.0 i32) + (local $$t460.1 i32) + (local $$t461.0 i32) + (local $$t461.1 i32) + (local $$t462.0 i32) + (local $$t462.1 i32) + (local $$t463.0 i32) + (local $$t463.1 i32) + (local $$t464.0 i32) + (local $$t464.1 i32) + (local $$t465.0 i32) + (local $$t465.1 i32) + (local $$t466.0 i32) + (local $$t466.1 i32) + (local $$t467.0 i32) + (local $$t467.1 i32) + (local $$t468.0 i32) + (local $$t468.1 i32) + (local $$t469.0 i32) + (local $$t469.1 i32) + (local $$t470.0 i32) + (local $$t470.1 i32) + (local $$t471.0 i32) + (local $$t471.1 i32) + (local $$t472.0 i32) + (local $$t472.1 i32) + (local $$t473.0 i32) + (local $$t473.1 i32) + (local $$t474.0 i32) + (local $$t474.1 i32) + (local $$t475.0 i32) + (local $$t475.1 i32) + (local $$t476.0 i32) + (local $$t476.1 i32) + (local $$t477.0 i32) + (local $$t477.1 i32) + (local $$t478.0 i32) + (local $$t478.1 i32) + (local $$t479.0 i32) + (local $$t479.1 i32) + (local $$t480.0 i32) + (local $$t480.1 i32) + (local $$t481.0 i32) + (local $$t481.1 i32) + (local $$t482.0 i32) + (local $$t482.1 i32) + (local $$t483.0 i32) + (local $$t483.1 i32) + (local $$t484.0 i32) + (local $$t484.1 i32) + (local $$t485.0 i32) + (local $$t485.1 i32) + (local $$t486.0 i32) + (local $$t486.1 i32) + (local $$t487.0 i32) + (local $$t487.1 i32) + (local $$t488.0 i32) + (local $$t488.1 i32) + (local $$t489.0 i32) + (local $$t489.1 i32) + (local $$t490.0 i32) + (local $$t490.1 i32) + (local $$t491.0 i32) + (local $$t491.1 i32) + (local $$t492.0 i32) + (local $$t492.1 i32) + (local $$t493.0 i32) + (local $$t493.1 i32) + (local $$t494.0 i32) + (local $$t494.1 i32) + (local $$t495.0 i32) + (local $$t495.1 i32) + (local $$t496.0 i32) + (local $$t496.1 i32) + (local $$t497.0 i32) + (local $$t497.1 i32) + (local $$t498.0 i32) + (local $$t498.1 i32) + (local $$t499.0 i32) + (local $$t499.1 i32) + (local $$t500.0 i32) + (local $$t500.1 i32) + (local $$t501.0 i32) + (local $$t501.1 i32) + (local $$t502.0 i32) + (local $$t502.1 i32) + (local $$t503.0 i32) + (local $$t503.1 i32) + (local $$t504.0 i32) + (local $$t504.1 i32) + (local $$t505.0 i32) + (local $$t505.1 i32) + (local $$t506.0 i32) + (local $$t506.1 i32) + (local $$t507.0 i32) + (local $$t507.1 i32) + (local $$t508.0 i32) + (local $$t508.1 i32) + (local $$t509.0 i32) + (local $$t509.1 i32) + (local $$t510.0 i32) + (local $$t510.1 i32) + (local $$t511.0 i32) + (local $$t511.1 i32) + (local $$t512.0 i32) + (local $$t512.1 i32) + (local $$t513.0 i32) + (local $$t513.1 i32) + (local $$t514.0 i32) + (local $$t514.1 i32) + (local $$t515.0 i32) + (local $$t515.1 i32) + (local $$t516.0 i32) + (local $$t516.1 i32) + (local $$t517.0 i32) + (local $$t517.1 i32) + (local $$t518.0 i32) + (local $$t518.1 i32) + (local $$t519.0 i32) + (local $$t519.1 i32) + (local $$t520.0 i32) + (local $$t520.1 i32) + (local $$t521.0 i32) + (local $$t521.1 i32) + (local $$t522.0 i32) + (local $$t522.1 i32) + (local $$t523.0 i32) + (local $$t523.1 i32) + (local $$t524.0 i32) + (local $$t524.1 i32) + (local $$t525.0 i32) + (local $$t525.1 i32) + (local $$t526.0 i32) + (local $$t526.1 i32) + (local $$t527.0 i32) + (local $$t527.1 i32) + (local $$t528.0 i32) + (local $$t528.1 i32) + (local $$t529.0 i32) + (local $$t529.1 i32) + (local $$t530.0 i32) + (local $$t530.1 i32) + (local $$t531.0 i32) + (local $$t531.1 i32) + (local $$t532.0 i32) + (local $$t532.1 i32) + (local $$t533.0 i32) + (local $$t533.1 i32) + (local $$t534.0 i32) + (local $$t534.1 i32) + (local $$t535.0 i32) + (local $$t535.1 i32) + (local $$t536.0 i32) + (local $$t536.1 i32) + (local $$t537.0 i32) + (local $$t537.1 i32) + (local $$t538.0 i32) + (local $$t538.1 i32) + (local $$t539.0 i32) + (local $$t539.1 i32) + (local $$t540.0 i32) + (local $$t540.1 i32) + (local $$t541.0 i32) + (local $$t541.1 i32) + (local $$t542.0 i32) + (local $$t542.1 i32) + (local $$t543.0 i32) + (local $$t543.1 i32) + (local $$t544.0 i32) + (local $$t544.1 i32) + (local $$t545.0 i32) + (local $$t545.1 i32) + (local $$t546.0 i32) + (local $$t546.1 i32) + (local $$t547.0 i32) + (local $$t547.1 i32) + (local $$t548.0 i32) + (local $$t548.1 i32) + (local $$t549.0 i32) + (local $$t549.1 i32) + (local $$t550.0 i32) + (local $$t550.1 i32) + (local $$t551.0 i32) + (local $$t551.1 i32) + (local $$t552.0 i32) + (local $$t552.1 i32) + (local $$t553.0 i32) + (local $$t553.1 i32) + (local $$t554.0 i32) + (local $$t554.1 i32) + (local $$t555.0 i32) + (local $$t555.1 i32) + (local $$t556.0 i32) + (local $$t556.1 i32) + (local $$t557.0 i32) + (local $$t557.1 i32) + (local $$t558.0 i32) + (local $$t558.1 i32) + (local $$t559.0 i32) + (local $$t559.1 i32) + (local $$t560.0 i32) + (local $$t560.1 i32) + (local $$t561.0 i32) + (local $$t561.1 i32) + (local $$t562.0 i32) + (local $$t562.1 i32) + (local $$t563.0 i32) + (local $$t563.1 i32) + (local $$t564.0 i32) + (local $$t564.1 i32) + (local $$t565.0 i32) + (local $$t565.1 i32) + (local $$t566.0 i32) + (local $$t566.1 i32) + (local $$t567.0 i32) + (local $$t567.1 i32) + (local $$t568.0 i32) + (local $$t568.1 i32) + (local $$t569.0 i32) + (local $$t569.1 i32) + (local $$t570.0 i32) + (local $$t570.1 i32) + (local $$t571.0 i32) + (local $$t571.1 i32) + (local $$t572.0 i32) + (local $$t572.1 i32) + (local $$t573.0 i32) + (local $$t573.1 i32) + (local $$t574.0 i32) + (local $$t574.1 i32) + (local $$t575.0 i32) + (local $$t575.1 i32) + (local $$t576.0 i32) + (local $$t576.1 i32) + (local $$t577.0 i32) + (local $$t577.1 i32) + (local $$t578.0 i32) + (local $$t578.1 i32) + (local $$t579.0 i32) + (local $$t579.1 i32) + (local $$t580.0 i32) + (local $$t580.1 i32) + (local $$t581.0 i32) + (local $$t581.1 i32) + (local $$t582.0 i32) + (local $$t582.1 i32) + (local $$t583.0 i32) + (local $$t583.1 i32) + (local $$t584.0 i32) + (local $$t584.1 i32) + (local $$t585.0 i32) + (local $$t585.1 i32) + (local $$t586.0 i32) + (local $$t586.1 i32) + (local $$t587.0 i32) + (local $$t587.1 i32) + (local $$t588.0 i32) + (local $$t588.1 i32) + (local $$t589.0 i32) + (local $$t589.1 i32) + (local $$t590.0 i32) + (local $$t590.1 i32) + (local $$t591.0 i32) + (local $$t591.1 i32) + (local $$t592.0 i32) + (local $$t592.1 i32) + (local $$t593.0 i32) + (local $$t593.1 i32) + (local $$t594.0 i32) + (local $$t594.1 i32) + (local $$t595.0 i32) + (local $$t595.1 i32) + (local $$t596.0 i32) + (local $$t596.1 i32) + (local $$t597.0 i32) + (local $$t597.1 i32) + (local $$t598.0 i32) + (local $$t598.1 i32) + (local $$t599.0 i32) + (local $$t599.1 i32) + (local $$t600.0 i32) + (local $$t600.1 i32) + (local $$t601.0 i32) + (local $$t601.1 i32) + (local $$t602.0 i32) + (local $$t602.1 i32) + (local $$t603.0 i32) + (local $$t603.1 i32) + (local $$t604.0 i32) + (local $$t604.1 i32) + (local $$t605.0 i32) + (local $$t605.1 i32) + (local $$t606.0 i32) + (local $$t606.1 i32) + (local $$t607.0 i32) + (local $$t607.1 i32) + (local $$t608.0 i32) + (local $$t608.1 i32) + (local $$t609.0 i32) + (local $$t609.1 i32) + (local $$t610.0 i32) + (local $$t610.1 i32) + (local $$t611.0 i32) + (local $$t611.1 i32) + (local $$t612.0 i32) + (local $$t612.1 i32) + (local $$t613.0 i32) + (local $$t613.1 i32) + (local $$t614.0 i32) + (local $$t614.1 i32) + (local $$t615.0 i32) + (local $$t615.1 i32) + (local $$t616.0 i32) + (local $$t616.1 i32) + (local $$t617.0 i32) + (local $$t617.1 i32) + (local $$t618.0 i32) + (local $$t618.1 i32) + (local $$t619.0 i32) + (local $$t619.1 i32) + (local $$t620.0 i32) + (local $$t620.1 i32) + (local $$t621.0 i32) + (local $$t621.1 i32) + (local $$t622.0 i32) + (local $$t622.1 i32) + (local $$t623.0 i32) + (local $$t623.1 i32) + (local $$t624.0 i32) + (local $$t624.1 i32) + (local $$t625.0 i32) + (local $$t625.1 i32) + (local $$t626.0 i32) + (local $$t626.1 i32) + (local $$t627.0 i32) + (local $$t627.1 i32) + (local $$t628.0 i32) + (local $$t628.1 i32) + (local $$t629.0 i32) + (local $$t629.1 i32) + (local $$t630.0 i32) + (local $$t630.1 i32) + (local $$t631.0 i32) + (local $$t631.1 i32) + (local $$t632.0 i32) + (local $$t632.1 i32) + (local $$t633.0 i32) + (local $$t633.1 i32) + (local $$t634.0 i32) + (local $$t634.1 i32) + (local $$t635.0 i32) + (local $$t635.1 i32) + (local $$t636.0 i32) + (local $$t636.1 i32) + (local $$t637.0 i32) + (local $$t637.1 i32) + (local $$t638.0 i32) + (local $$t638.1 i32) + (local $$t639.0 i32) + (local $$t639.1 i32) + (local $$t640.0 i32) + (local $$t640.1 i32) + (local $$t641.0 i32) + (local $$t641.1 i32) + (local $$t642.0 i32) + (local $$t642.1 i32) + (local $$t643.0 i32) + (local $$t643.1 i32) + (local $$t644.0 i32) + (local $$t644.1 i32) + (local $$t645.0 i32) + (local $$t645.1 i32) + (local $$t646.0 i32) + (local $$t646.1 i32) + (local $$t647.0 i32) + (local $$t647.1 i32) + (local $$t648.0 i32) + (local $$t648.1 i32) + (local $$t649.0 i32) + (local $$t649.1 i32) + (local $$t650.0 i32) + (local $$t650.1 i32) + (local $$t651.0 i32) + (local $$t651.1 i32) + (local $$t652.0 i32) + (local $$t652.1 i32) + (local $$t653.0 i32) + (local $$t653.1 i32) + (local $$t654.0 i32) + (local $$t654.1 i32) + (local $$t655.0 i32) + (local $$t655.1 i32) + (local $$t656.0 i32) + (local $$t656.1 i32) + (local $$t657.0 i32) + (local $$t657.1 i32) + (local $$t658.0 i32) + (local $$t658.1 i32) + (local $$t659.0 i32) + (local $$t659.1 i32) + (local $$t660.0 i32) + (local $$t660.1 i32) + (local $$t661.0 i32) + (local $$t661.1 i32) + (local $$t662.0 i32) + (local $$t662.1 i32) + (local $$t663.0 i32) + (local $$t663.1 i32) + (local $$t664.0 i32) + (local $$t664.1 i32) + (local $$t665.0 i32) + (local $$t665.1 i32) + (local $$t666.0 i32) + (local $$t666.1 i32) + (local $$t667.0 i32) + (local $$t667.1 i32) + (local $$t668.0 i32) + (local $$t668.1 i32) + (local $$t669.0 i32) + (local $$t669.1 i32) + (local $$t670.0 i32) + (local $$t670.1 i32) + (local $$t671.0 i32) + (local $$t671.1 i32) + (local $$t672.0 i32) + (local $$t672.1 i32) + (local $$t673.0 i32) + (local $$t673.1 i32) + (local $$t674.0 i32) + (local $$t674.1 i32) + (local $$t675.0 i32) + (local $$t675.1 i32) + (local $$t676.0 i32) + (local $$t676.1 i32) + (local $$t677.0 i32) + (local $$t677.1 i32) + (local $$t678.0 i32) + (local $$t678.1 i32) + (local $$t679.0 i32) + (local $$t679.1 i32) + (local $$t680.0 i32) + (local $$t680.1 i32) + (local $$t681.0 i32) + (local $$t681.1 i32) + (local $$t682.0 i32) + (local $$t682.1 i32) + (local $$t683.0 i32) + (local $$t683.1 i32) + (local $$t684.0 i32) + (local $$t684.1 i32) + (local $$t685.0 i32) + (local $$t685.1 i32) + (local $$t686.0 i32) + (local $$t686.1 i32) + (local $$t687.0 i32) + (local $$t687.1 i32) + (local $$t688.0 i32) + (local $$t688.1 i32) + (local $$t689.0 i32) + (local $$t689.1 i32) + (local $$t690.0 i32) + (local $$t690.1 i32) + (local $$t691.0 i32) + (local $$t691.1 i32) + (local $$t692.0 i32) + (local $$t692.1 i32) + (local $$t693.0 i32) + (local $$t693.1 i32) + (local $$t694.0 i32) + (local $$t694.1 i32) + (local $$t695.0 i32) + (local $$t695.1 i32) + (local $$t696.0 i32) + (local $$t696.1 i32) + (local $$t697.0 i32) + (local $$t697.1 i32) + (local $$t698.0 i32) + (local $$t698.1 i32) + (local $$t699.0 i32) + (local $$t699.1 i32) + (local $$t700.0 i32) + (local $$t700.1 i32) + (local $$t701.0 i32) + (local $$t701.1 i32) + (local $$t702.0 i32) + (local $$t702.1 i32) + (local $$t703.0 i32) + (local $$t703.1 i32) + (local $$t704.0 i32) + (local $$t704.1 i32) + (local $$t705.0 i32) + (local $$t705.1 i32) + (local $$t706.0 i32) + (local $$t706.1 i32) + (local $$t707.0 i32) + (local $$t707.1 i32) + (local $$t708.0 i32) + (local $$t708.1 i32) + (local $$t709.0 i32) + (local $$t709.1 i32) + (local $$t710.0 i32) + (local $$t710.1 i32) + (local $$t711.0 i32) + (local $$t711.1 i32) + (local $$t712.0 i32) + (local $$t712.1 i32) + (local $$t713.0 i32) + (local $$t713.1 i32) + (local $$t714.0 i32) + (local $$t714.1 i32) + (local $$t715.0 i32) + (local $$t715.1 i32) + (local $$t716.0 i32) + (local $$t716.1 i32) + (local $$t717.0 i32) + (local $$t717.1 i32) + (local $$t718.0 i32) + (local $$t718.1 i32) + (local $$t719.0 i32) + (local $$t719.1 i32) + (local $$t720.0 i32) + (local $$t720.1 i32) + (local $$t721.0 i32) + (local $$t721.1 i32) + (local $$t722.0 i32) + (local $$t722.1 i32) + (local $$t723.0 i32) + (local $$t723.1 i32) + (local $$t724.0 i32) + (local $$t724.1 i32) + (local $$t725.0 i32) + (local $$t725.1 i32) + (local $$t726.0 i32) + (local $$t726.1 i32) + (local $$t727.0 i32) + (local $$t727.1 i32) + (local $$t728.0 i32) + (local $$t728.1 i32) + (local $$t729.0 i32) + (local $$t729.1 i32) + (local $$t730.0 i32) + (local $$t730.1 i32) + (local $$t731.0 i32) + (local $$t731.1 i32) + (local $$t732.0 i32) + (local $$t732.1 i32) + (local $$t733.0 i32) + (local $$t733.1 i32) + (local $$t734.0 i32) + (local $$t734.1 i32) + (local $$t735.0 i32) + (local $$t735.1 i32) + (local $$t736.0 i32) + (local $$t736.1 i32) + (local $$t737.0 i32) + (local $$t737.1 i32) + (local $$t738.0 i32) + (local $$t738.1 i32) + (local $$t739.0 i32) + (local $$t739.1 i32) + (local $$t740.0 i32) + (local $$t740.1 i32) + (local $$t741.0 i32) + (local $$t741.1 i32) + (local $$t742.0 i32) + (local $$t742.1 i32) + (local $$t743.0 i32) + (local $$t743.1 i32) + (local $$t744.0 i32) + (local $$t744.1 i32) + (local $$t745.0 i32) + (local $$t745.1 i32) + (local $$t746.0 i32) + (local $$t746.1 i32) + (local $$t747.0 i32) + (local $$t747.1 i32) + (local $$t748.0 i32) + (local $$t748.1 i32) + (local $$t749.0 i32) + (local $$t749.1 i32) + (local $$t750.0 i32) + (local $$t750.1 i32) + (local $$t751.0 i32) + (local $$t751.1 i32) + (local $$t752.0 i32) + (local $$t752.1 i32) + (local $$t753.0 i32) + (local $$t753.1 i32) + (local $$t754.0 i32) + (local $$t754.1 i32) + (local $$t755.0 i32) + (local $$t755.1 i32) + (local $$t756.0 i32) + (local $$t756.1 i32) + (local $$t757.0 i32) + (local $$t757.1 i32) + (local $$t758.0 i32) + (local $$t758.1 i32) + (local $$t759.0 i32) + (local $$t759.1 i32) + (local $$t760.0 i32) + (local $$t760.1 i32) + (local $$t761.0 i32) + (local $$t761.1 i32) + (local $$t762.0 i32) + (local $$t762.1 i32) + (local $$t763.0 i32) + (local $$t763.1 i32) + (local $$t764.0 i32) + (local $$t764.1 i32) + (local $$t765.0 i32) + (local $$t765.1 i32) + (local $$t766.0 i32) + (local $$t766.1 i32) + (local $$t767.0 i32) + (local $$t767.1 i32) + (local $$t768.0 i32) + (local $$t768.1 i32) + (local $$t769.0 i32) + (local $$t769.1 i32) + (local $$t770.0 i32) + (local $$t770.1 i32) + (local $$t771.0 i32) + (local $$t771.1 i32) + (local $$t772.0 i32) + (local $$t772.1 i32) + (local $$t773.0 i32) + (local $$t773.1 i32) + (local $$t774.0 i32) + (local $$t774.1 i32) + (local $$t775.0 i32) + (local $$t775.1 i32) + (local $$t776.0 i32) + (local $$t776.1 i32) + (local $$t777.0 i32) + (local $$t777.1 i32) + (local $$t778.0 i32) + (local $$t778.1 i32) + (local $$t779.0 i32) + (local $$t779.1 i32) + (local $$t780.0 i32) + (local $$t780.1 i32) + (local $$t781.0 i32) + (local $$t781.1 i32) + (local $$t782.0 i32) + (local $$t782.1 i32) + (local $$t783.0 i32) + (local $$t783.1 i32) + (local $$t784.0 i32) + (local $$t784.1 i32) + (local $$t785.0 i32) + (local $$t785.1 i32) + (local $$t786.0 i32) + (local $$t786.1 i32) + (local $$t787.0 i32) + (local $$t787.1 i32) + (local $$t788.0 i32) + (local $$t788.1 i32) + (local $$t789.0 i32) + (local $$t789.1 i32) + (local $$t790.0 i32) + (local $$t790.1 i32) + (local $$t791.0 i32) + (local $$t791.1 i32) + (local $$t792.0 i32) + (local $$t792.1 i32) + (local $$t793.0 i32) + (local $$t793.1 i32) + (local $$t794.0 i32) + (local $$t794.1 i32) + (local $$t795.0 i32) + (local $$t795.1 i32) + (local $$t796.0 i32) + (local $$t796.1 i32) + (local $$t797.0 i32) + (local $$t797.1 i32) + (local $$t798.0 i32) + (local $$t798.1 i32) + (local $$t799.0 i32) + (local $$t799.1 i32) + (local $$t800.0 i32) + (local $$t800.1 i32) + (local $$t801.0 i32) + (local $$t801.1 i32) + (local $$t802.0 i32) + (local $$t802.1 i32) + (local $$t803.0 i32) + (local $$t803.1 i32) + (local $$t804.0 i32) + (local $$t804.1 i32) + (local $$t805.0 i32) + (local $$t805.1 i32) + (local $$t806.0 i32) + (local $$t806.1 i32) + (local $$t807.0 i32) + (local $$t807.1 i32) + (local $$t808.0 i32) + (local $$t808.1 i32) + (local $$t809.0 i32) + (local $$t809.1 i32) + (local $$t810.0 i32) + (local $$t810.1 i32) + (local $$t811.0 i32) + (local $$t811.1 i32) + (local $$t812.0 i32) + (local $$t812.1 i32) + (local $$t813.0 i32) + (local $$t813.1 i32) + (local $$t814.0 i32) + (local $$t814.1 i32) + (local $$t815.0 i32) + (local $$t815.1 i32) + (local $$t816.0 i32) + (local $$t816.1 i32) + (local $$t817.0 i32) + (local $$t817.1 i32) + (local $$t818.0 i32) + (local $$t818.1 i32) + (local $$t819.0 i32) + (local $$t819.1 i32) + (local $$t820.0 i32) + (local $$t820.1 i32) + (local $$t821.0 i32) + (local $$t821.1 i32) + (local $$t822.0 i32) + (local $$t822.1 i32) + (local $$t823.0 i32) + (local $$t823.1 i32) + (local $$t824.0 i32) + (local $$t824.1 i32) + (local $$t825.0 i32) + (local $$t825.1 i32) + (local $$t826.0 i32) + (local $$t826.1 i32) + (local $$t827.0 i32) + (local $$t827.1 i32) + (local $$t828.0 i32) + (local $$t828.1 i32) + (local $$t829.0 i32) + (local $$t829.1 i32) + (local $$t830.0 i32) + (local $$t830.1 i32) + (local $$t831.0 i32) + (local $$t831.1 i32) + (local $$t832.0 i32) + (local $$t832.1 i32) + (local $$t833.0 i32) + (local $$t833.1 i32) + (local $$t834.0 i32) + (local $$t834.1 i32) + (local $$t835.0 i32) + (local $$t835.1 i32) + (local $$t836.0 i32) + (local $$t836.1 i32) + (local $$t837.0 i32) + (local $$t837.1 i32) + (local $$t838.0 i32) + (local $$t838.1 i32) + (local $$t839.0 i32) + (local $$t839.1 i32) + (local $$t840.0 i32) + (local $$t840.1 i32) + (local $$t841.0 i32) + (local $$t841.1 i32) + (local $$t842.0 i32) + (local $$t842.1 i32) + (local $$t843.0 i32) + (local $$t843.1 i32) + (local $$t844.0 i32) + (local $$t844.1 i32) + (local $$t845.0 i32) + (local $$t845.1 i32) + (local $$t846.0 i32) + (local $$t846.1 i32) + (local $$t847.0 i32) + (local $$t847.1 i32) + (local $$t848.0 i32) + (local $$t848.1 i32) + (local $$t849.0 i32) + (local $$t849.1 i32) + (local $$t850.0 i32) + (local $$t850.1 i32) + (local $$t851.0 i32) + (local $$t851.1 i32) + (local $$t852.0 i32) + (local $$t852.1 i32) + (local $$t853.0 i32) + (local $$t853.1 i32) + (local $$t854.0 i32) + (local $$t854.1 i32) + (local $$t855.0 i32) + (local $$t855.1 i32) + (local $$t856.0 i32) + (local $$t856.1 i32) + (local $$t857.0 i32) + (local $$t857.1 i32) + (local $$t858.0 i32) + (local $$t858.1 i32) + (local $$t859.0 i32) + (local $$t859.1 i32) + (local $$t860.0 i32) + (local $$t860.1 i32) + (local $$t861.0 i32) + (local $$t861.1 i32) + (local $$t862.0 i32) + (local $$t862.1 i32) + (local $$t863.0 i32) + (local $$t863.1 i32) + (local $$t864.0 i32) + (local $$t864.1 i32) + (local $$t865.0 i32) + (local $$t865.1 i32) + (local $$t866.0 i32) + (local $$t866.1 i32) + (local $$t867.0 i32) + (local $$t867.1 i32) + (local $$t868.0 i32) + (local $$t868.1 i32) + (local $$t869.0 i32) + (local $$t869.1 i32) + (local $$t870.0 i32) + (local $$t870.1 i32) + (local $$t871.0 i32) + (local $$t871.1 i32) + (local $$t872.0 i32) + (local $$t872.1 i32) + (local $$t873.0 i32) + (local $$t873.1 i32) + (local $$t874.0 i32) + (local $$t874.1 i32) + (local $$t875.0 i32) + (local $$t875.1 i32) + (local $$t876.0 i32) + (local $$t876.1 i32) + (local $$t877.0 i32) + (local $$t877.1 i32) + (local $$t878.0 i32) + (local $$t878.1 i32) + (local $$t879.0 i32) + (local $$t879.1 i32) + (local $$t880.0 i32) + (local $$t880.1 i32) + (local $$t881.0 i32) + (local $$t881.1 i32) + (local $$t882.0 i32) + (local $$t882.1 i32) + (local $$t883.0 i32) + (local $$t883.1 i32) + (local $$t884.0 i32) + (local $$t884.1 i32) + (local $$t885.0 i32) + (local $$t885.1 i32) + (local $$t886.0 i32) + (local $$t886.1 i32) + (local $$t887.0 i32) + (local $$t887.1 i32) + (local $$t888.0 i32) + (local $$t888.1 i32) + (local $$t889.0 i32) + (local $$t889.1 i32) + (local $$t890.0 i32) + (local $$t890.1 i32) + (local $$t891.0 i32) + (local $$t891.1 i32) + (local $$t892.0 i32) + (local $$t892.1 i32) + (local $$t893.0 i32) + (local $$t893.1 i32) + (local $$t894.0 i32) + (local $$t894.1 i32) + (local $$t895.0 i32) + (local $$t895.1 i32) + (local $$t896.0 i32) + (local $$t896.1 i32) + (local $$t897.0 i32) + (local $$t897.1 i32) + (local $$t898.0 i32) + (local $$t898.1 i32) + (local $$t899.0 i32) + (local $$t899.1 i32) + (local $$t900.0 i32) + (local $$t900.1 i32) + (local $$t901.0 i32) + (local $$t901.1 i32) + (local $$t902.0 i32) + (local $$t902.1 i32) + (local $$t903.0 i32) + (local $$t903.1 i32) + (local $$t904.0 i32) + (local $$t904.1 i32) + (local $$t905.0 i32) + (local $$t905.1 i32) + (local $$t906.0 i32) + (local $$t906.1 i32) + (local $$t907.0 i32) + (local $$t907.1 i32) + (local $$t908.0 i32) + (local $$t908.1 i32) + (local $$t909.0 i32) + (local $$t909.1 i32) + (local $$t910.0 i32) + (local $$t910.1 i32) + (local $$t911.0 i32) + (local $$t911.1 i32) + (local $$t912.0 i32) + (local $$t912.1 i32) + (local $$t913.0 i32) + (local $$t913.1 i32) + (local $$t914.0 i32) + (local $$t914.1 i32) + (local $$t915.0 i32) + (local $$t915.1 i32) + (local $$t916.0 i32) + (local $$t916.1 i32) + (local $$t917.0 i32) + (local $$t917.1 i32) + (local $$t918.0 i32) + (local $$t918.1 i32) + (local $$t919.0 i32) + (local $$t919.1 i32) + (local $$t920.0 i32) + (local $$t920.1 i32) + (local $$t921.0 i32) + (local $$t921.1 i32) + (local $$t922.0 i32) + (local $$t922.1 i32) + (local $$t923.0 i32) + (local $$t923.1 i32) + (local $$t924.0 i32) + (local $$t924.1 i32) + (local $$t925.0 i32) + (local $$t925.1 i32) + (local $$t926.0 i32) + (local $$t926.1 i32) + (local $$t927.0 i32) + (local $$t927.1 i32) + (local $$t928.0 i32) + (local $$t928.1 i32) + (local $$t929.0 i32) + (local $$t929.1 i32) + (local $$t930.0 i32) + (local $$t930.1 i32) + (local $$t931.0 i32) + (local $$t931.1 i32) + (local $$t932.0 i32) + (local $$t932.1 i32) + (local $$t933.0 i32) + (local $$t933.1 i32) + (local $$t934.0 i32) + (local $$t934.1 i32) + (local $$t935.0 i32) + (local $$t935.1 i32) + (local $$t936.0 i32) + (local $$t936.1 i32) + (local $$t937.0 i32) + (local $$t937.1 i32) + (local $$t938.0 i32) + (local $$t938.1 i32) + (local $$t939.0 i32) + (local $$t939.1 i32) + (local $$t940.0 i32) + (local $$t940.1 i32) + (local $$t941.0 i32) + (local $$t941.1 i32) + (local $$t942.0 i32) + (local $$t942.1 i32) + (local $$t943.0 i32) + (local $$t943.1 i32) + (local $$t944.0 i32) + (local $$t944.1 i32) + (local $$t945.0 i32) + (local $$t945.1 i32) + (local $$t946.0 i32) + (local $$t946.1 i32) + (local $$t947.0 i32) + (local $$t947.1 i32) + (local $$t948.0 i32) + (local $$t948.1 i32) + (local $$t949.0 i32) + (local $$t949.1 i32) + (local $$t950.0 i32) + (local $$t950.1 i32) + (local $$t951.0 i32) + (local $$t951.1 i32) + (local $$t952.0 i32) + (local $$t952.1 i32) + (local $$t953.0 i32) + (local $$t953.1 i32) + (local $$t954.0 i32) + (local $$t954.1 i32) + (local $$t955.0 i32) + (local $$t955.1 i32) + (local $$t956.0 i32) + (local $$t956.1 i32) + (local $$t957.0 i32) + (local $$t957.1 i32) + (local $$t958.0 i32) + (local $$t958.1 i32) + (local $$t959.0 i32) + (local $$t959.1 i32) + (local $$t960.0 i32) + (local $$t960.1 i32) + (local $$t961.0 i32) + (local $$t961.1 i32) + (local $$t962.0 i32) + (local $$t962.1 i32) + (local $$t963.0 i32) + (local $$t963.1 i32) + (local $$t964.0 i32) + (local $$t964.1 i32) + (local $$t965.0 i32) + (local $$t965.1 i32) + (local $$t966.0 i32) + (local $$t966.1 i32) + (local $$t967.0 i32) + (local $$t967.1 i32) + (local $$t968.0 i32) + (local $$t968.1 i32) + (local $$t969.0 i32) + (local $$t969.1 i32) + (local $$t970.0 i32) + (local $$t970.1 i32) + (local $$t971.0 i32) + (local $$t971.1 i32) + (local $$t972.0 i32) + (local $$t972.1 i32) + (local $$t973.0 i32) + (local $$t973.1 i32) + (local $$t974.0 i32) + (local $$t974.1 i32) + (local $$t975.0 i32) + (local $$t975.1 i32) + (local $$t976.0 i32) + (local $$t976.1 i32) + (local $$t977.0 i32) + (local $$t977.1 i32) + (local $$t978.0 i32) + (local $$t978.1 i32) + (local $$t979.0 i32) + (local $$t979.1 i32) + (local $$t980.0 i32) + (local $$t980.1 i32) + (local $$t981.0 i32) + (local $$t981.1 i32) + (local $$t982.0 i32) + (local $$t982.1 i32) + (local $$t983.0 i32) + (local $$t983.1 i32) + (local $$t984.0 i32) + (local $$t984.1 i32) + (local $$t985.0 i32) + (local $$t985.1 i32) + (local $$t986.0 i32) + (local $$t986.1 i32) + (local $$t987.0 i32) + (local $$t987.1 i32) + (local $$t988.0 i32) + (local $$t988.1 i32) + (local $$t989.0 i32) + (local $$t989.1 i32) + (local $$t990.0 i32) + (local $$t990.1 i32) + (local $$t991.0 i32) + (local $$t991.1 i32) + (local $$t992.0 i32) + (local $$t992.1 i32) + (local $$t993.0 i32) + (local $$t993.1 i32) + (local $$t994.0 i32) + (local $$t994.1 i32) + (local $$t995.0 i32) + (local $$t995.1 i32) + (local $$t996.0 i32) + (local $$t996.1 i32) + (local $$t997.0 i32) + (local $$t997.1 i32) + (local $$t998.0 i32) + (local $$t998.1 i32) + (local $$t999.0 i32) + (local $$t999.1 i32) + (local $$t1000.0 i32) + (local $$t1000.1 i32) + (local $$t1001.0 i32) + (local $$t1001.1 i32) + (local $$t1002.0 i32) + (local $$t1002.1 i32) + (local $$t1003.0 i32) + (local $$t1003.1 i32) + (local $$t1004.0 i32) + (local $$t1004.1 i32) + (local $$t1005.0 i32) + (local $$t1005.1 i32) + (local $$t1006.0 i32) + (local $$t1006.1 i32) + (local $$t1007.0 i32) + (local $$t1007.1 i32) + (local $$t1008.0 i32) + (local $$t1008.1 i32) + (local $$t1009.0 i32) + (local $$t1009.1 i32) + (local $$t1010.0 i32) + (local $$t1010.1 i32) + (local $$t1011.0 i32) + (local $$t1011.1 i32) + (local $$t1012.0 i32) + (local $$t1012.1 i32) + (local $$t1013.0 i32) + (local $$t1013.1 i32) + (local $$t1014.0 i32) + (local $$t1014.1 i32) + (local $$t1015.0 i32) + (local $$t1015.1 i32) + (local $$t1016.0 i32) + (local $$t1016.1 i32) + (local $$t1017.0 i32) + (local $$t1017.1 i32) + (local $$t1018.0 i32) + (local $$t1018.1 i32) + (local $$t1019.0 i32) + (local $$t1019.1 i32) + (local $$t1020.0 i32) + (local $$t1020.1 i32) + (local $$t1021.0 i32) + (local $$t1021.1 i32) + (local $$t1022.0 i32) + (local $$t1022.1 i32) + (local $$t1023.0 i32) + (local $$t1023.1 i32) + (local $$t1024.0 i32) + (local $$t1024.1 i32) + (local $$t1025.0 i32) + (local $$t1025.1 i32) + (local $$t1026.0 i32) + (local $$t1026.1 i32) + (local $$t1027.0 i32) + (local $$t1027.1 i32) + (local $$t1028.0 i32) + (local $$t1028.1 i32) + (local $$t1029.0 i32) + (local $$t1029.1 i32) + (local $$t1030.0 i32) + (local $$t1030.1 i32) + (local $$t1031.0 i32) + (local $$t1031.1 i32) + (local $$t1032.0 i32) + (local $$t1032.1 i32) + (local $$t1033.0 i32) + (local $$t1033.1 i32) + (local $$t1034.0 i32) + (local $$t1034.1 i32) + (local $$t1035.0 i32) + (local $$t1035.1 i32) + (local $$t1036.0 i32) + (local $$t1036.1 i32) + (local $$t1037.0 i32) + (local $$t1037.1 i32) + (local $$t1038.0 i32) + (local $$t1038.1 i32) + (local $$t1039.0 i32) + (local $$t1039.1 i32) + (local $$t1040.0 i32) + (local $$t1040.1 i32) + (local $$t1041.0 i32) + (local $$t1041.1 i32) + (local $$t1042.0 i32) + (local $$t1042.1 i32) + (local $$t1043.0 i32) + (local $$t1043.1 i32) + (local $$t1044.0 i32) + (local $$t1044.1 i32) + (local $$t1045.0 i32) + (local $$t1045.1 i32) + (local $$t1046.0 i32) + (local $$t1046.1 i32) + (local $$t1047.0 i32) + (local $$t1047.1 i32) + (local $$t1048.0 i32) + (local $$t1048.1 i32) + (local $$t1049.0 i32) + (local $$t1049.1 i32) + (local $$t1050.0 i32) + (local $$t1050.1 i32) + (local $$t1051.0 i32) + (local $$t1051.1 i32) + (local $$t1052.0 i32) + (local $$t1052.1 i32) + (local $$t1053.0 i32) + (local $$t1053.1 i32) + (local $$t1054.0 i32) + (local $$t1054.1 i32) + (local $$t1055.0 i32) + (local $$t1055.1 i32) + (local $$t1056.0 i32) + (local $$t1056.1 i32) + (local $$t1057.0 i32) + (local $$t1057.1 i32) + (local $$t1058.0 i32) + (local $$t1058.1 i32) + (local $$t1059.0 i32) + (local $$t1059.1 i32) + (local $$t1060.0 i32) + (local $$t1060.1 i32) + (local $$t1061.0 i32) + (local $$t1061.1 i32) + (local $$t1062.0 i32) + (local $$t1062.1 i32) + (local $$t1063.0 i32) + (local $$t1063.1 i32) + (local $$t1064.0 i32) + (local $$t1064.1 i32) + (local $$t1065.0 i32) + (local $$t1065.1 i32) + (local $$t1066.0 i32) + (local $$t1066.1 i32) + (local $$t1067.0 i32) + (local $$t1067.1 i32) + (local $$t1068.0 i32) + (local $$t1068.1 i32) + (local $$t1069.0 i32) + (local $$t1069.1 i32) + (local $$t1070.0 i32) + (local $$t1070.1 i32) + (local $$t1071.0 i32) + (local $$t1071.1 i32) + (local $$t1072.0 i32) + (local $$t1072.1 i32) + (local $$t1073.0 i32) + (local $$t1073.1 i32) + (local $$t1074.0 i32) + (local $$t1074.1 i32) + (local $$t1075.0 i32) + (local $$t1075.1 i32) + (local $$t1076.0 i32) + (local $$t1076.1 i32) + (local $$t1077.0 i32) + (local $$t1077.1 i32) + (local $$t1078.0 i32) + (local $$t1078.1 i32) + (local $$t1079.0 i32) + (local $$t1079.1 i32) + (local $$t1080.0 i32) + (local $$t1080.1 i32) + (local $$t1081.0 i32) + (local $$t1081.1 i32) + (local $$t1082.0 i32) + (local $$t1082.1 i32) + (local $$t1083.0 i32) + (local $$t1083.1 i32) + (local $$t1084.0 i32) + (local $$t1084.1 i32) + (local $$t1085.0 i32) + (local $$t1085.1 i32) + (local $$t1086.0 i32) + (local $$t1086.1 i32) + (local $$t1087.0 i32) + (local $$t1087.1 i32) + (local $$t1088.0 i32) + (local $$t1088.1 i32) + (local $$t1089.0 i32) + (local $$t1089.1 i32) + (local $$t1090.0 i32) + (local $$t1090.1 i32) + (local $$t1091.0 i32) + (local $$t1091.1 i32) + (local $$t1092.0 i32) + (local $$t1092.1 i32) + (local $$t1093.0 i32) + (local $$t1093.1 i32) + (local $$t1094.0 i32) + (local $$t1094.1 i32) + (local $$t1095.0 i32) + (local $$t1095.1 i32) + (local $$t1096.0 i32) + (local $$t1096.1 i32) + (local $$t1097.0 i32) + (local $$t1097.1 i32) + (local $$t1098.0 i32) + (local $$t1098.1 i32) + (local $$t1099.0 i32) + (local $$t1099.1 i32) + (local $$t1100.0 i32) + (local $$t1100.1 i32) + (local $$t1101.0 i32) + (local $$t1101.1 i32) + (local $$t1102.0 i32) + (local $$t1102.1 i32) + (local $$t1103.0 i32) + (local $$t1103.1 i32) + (local $$t1104.0 i32) + (local $$t1104.1 i32) + (local $$t1105.0 i32) + (local $$t1105.1 i32) + (local $$t1106.0 i32) + (local $$t1106.1 i32) + (local $$t1107.0 i32) + (local $$t1107.1 i32) + (local $$t1108.0 i32) + (local $$t1108.1 i32) + (local $$t1109.0 i32) + (local $$t1109.1 i32) + (local $$t1110.0 i32) + (local $$t1110.1 i32) + (local $$t1111.0 i32) + (local $$t1111.1 i32) + (local $$t1112.0 i32) + (local $$t1112.1 i32) + (local $$t1113.0 i32) + (local $$t1113.1 i32) + (local $$t1114.0 i32) + (local $$t1114.1 i32) + (local $$t1115.0 i32) + (local $$t1115.1 i32) + (local $$t1116.0 i32) + (local $$t1116.1 i32) + (local $$t1117.0 i32) + (local $$t1117.1 i32) + (local $$t1118.0 i32) + (local $$t1118.1 i32) + (local $$t1119.0 i32) + (local $$t1119.1 i32) + (local $$t1120.0 i32) + (local $$t1120.1 i32) + (local $$t1121.0 i32) + (local $$t1121.1 i32) + (local $$t1122.0 i32) + (local $$t1122.1 i32) + (local $$t1123.0 i32) + (local $$t1123.1 i32) + (local $$t1124.0 i32) + (local $$t1124.1 i32) + (local $$t1125.0 i32) + (local $$t1125.1 i32) + (local $$t1126.0 i32) + (local $$t1126.1 i32) + (local $$t1127.0 i32) + (local $$t1127.1 i32) + (local $$t1128.0 i32) + (local $$t1128.1 i32) + (local $$t1129.0 i32) + (local $$t1129.1 i32) + (local $$t1130.0 i32) + (local $$t1130.1 i32) + (local $$t1131.0 i32) + (local $$t1131.1 i32) + (local $$t1132.0 i32) + (local $$t1132.1 i32) + (local $$t1133.0 i32) + (local $$t1133.1 i32) + (local $$t1134.0 i32) + (local $$t1134.1 i32) + (local $$t1135.0 i32) + (local $$t1135.1 i32) + (local $$t1136.0 i32) + (local $$t1136.1 i32) + (local $$t1137.0 i32) + (local $$t1137.1 i32) + (local $$t1138.0 i32) + (local $$t1138.1 i32) + (local $$t1139.0 i32) + (local $$t1139.1 i32) + (local $$t1140.0 i32) + (local $$t1140.1 i32) + (local $$t1141.0 i32) + (local $$t1141.1 i32) + (local $$t1142.0 i32) + (local $$t1142.1 i32) + (local $$t1143.0 i32) + (local $$t1143.1 i32) + (local $$t1144.0 i32) + (local $$t1144.1 i32) + (local $$t1145.0 i32) + (local $$t1145.1 i32) + (local $$t1146.0 i32) + (local $$t1146.1 i32) + (local $$t1147.0 i32) + (local $$t1147.1 i32) + (local $$t1148.0 i32) + (local $$t1148.1 i32) + (local $$t1149.0 i32) + (local $$t1149.1 i32) + (local $$t1150.0 i32) + (local $$t1150.1 i32) + (local $$t1151.0 i32) + (local $$t1151.1 i32) + (local $$t1152.0 i32) + (local $$t1152.1 i32) + (local $$t1153.0 i32) + (local $$t1153.1 i32) + (local $$t1154.0 i32) + (local $$t1154.1 i32) + (local $$t1155.0 i32) + (local $$t1155.1 i32) + (local $$t1156.0 i32) + (local $$t1156.1 i32) + (local $$t1157.0 i32) + (local $$t1157.1 i32) + (local $$t1158.0 i32) + (local $$t1158.1 i32) + (local $$t1159.0 i32) + (local $$t1159.1 i32) + (local $$t1160.0 i32) + (local $$t1160.1 i32) + (local $$t1161.0 i32) + (local $$t1161.1 i32) + (local $$t1162.0 i32) + (local $$t1162.1 i32) + (local $$t1163.0 i32) + (local $$t1163.1 i32) + (local $$t1164.0 i32) + (local $$t1164.1 i32) + (local $$t1165.0 i32) + (local $$t1165.1 i32) + (local $$t1166.0 i32) + (local $$t1166.1 i32) + (local $$t1167.0 i32) + (local $$t1167.1 i32) + (local $$t1168.0 i32) + (local $$t1168.1 i32) + (local $$t1169.0 i32) + (local $$t1169.1 i32) + (local $$t1170.0 i32) + (local $$t1170.1 i32) + (local $$t1171.0 i32) + (local $$t1171.1 i32) + (local $$t1172.0 i32) + (local $$t1172.1 i32) + (local $$t1173.0 i32) + (local $$t1173.1 i32) + (local $$t1174.0 i32) + (local $$t1174.1 i32) + (local $$t1175.0 i32) + (local $$t1175.1 i32) + (local $$t1176.0 i32) + (local $$t1176.1 i32) + (local $$t1177.0 i32) + (local $$t1177.1 i32) + (local $$t1178.0 i32) + (local $$t1178.1 i32) + (local $$t1179.0 i32) + (local $$t1179.1 i32) + (local $$t1180.0 i32) + (local $$t1180.1 i32) + (local $$t1181.0 i32) + (local $$t1181.1 i32) + (local $$t1182.0 i32) + (local $$t1182.1 i32) + (local $$t1183.0 i32) + (local $$t1183.1 i32) + (local $$t1184.0 i32) + (local $$t1184.1 i32) + (local $$t1185.0 i32) + (local $$t1185.1 i32) + (local $$t1186.0 i32) + (local $$t1186.1 i32) + (local $$t1187.0 i32) + (local $$t1187.1 i32) + (local $$t1188.0 i32) + (local $$t1188.1 i32) + (local $$t1189.0 i32) + (local $$t1189.1 i32) + (local $$t1190.0 i32) + (local $$t1190.1 i32) + (local $$t1191.0 i32) + (local $$t1191.1 i32) + (local $$t1192.0 i32) + (local $$t1192.1 i32) + (local $$t1193.0 i32) + (local $$t1193.1 i32) + (local $$t1194.0 i32) + (local $$t1194.1 i32) + (local $$t1195.0 i32) + (local $$t1195.1 i32) + (local $$t1196.0 i32) + (local $$t1196.1 i32) + (local $$t1197.0 i32) + (local $$t1197.1 i32) + (local $$t1198.0 i32) + (local $$t1198.1 i32) + (local $$t1199.0 i32) + (local $$t1199.1 i32) + (local $$t1200.0 i32) + (local $$t1200.1 i32) + (local $$t1201.0 i32) + (local $$t1201.1 i32) + (local $$t1202.0 i32) + (local $$t1202.1 i32) + (local $$t1203.0 i32) + (local $$t1203.1 i32) + (local $$t1204.0 i32) + (local $$t1204.1 i32) + (local $$t1205.0 i32) + (local $$t1205.1 i32) + (local $$t1206.0 i32) + (local $$t1206.1 i32) + (local $$t1207.0 i32) + (local $$t1207.1 i32) + (local $$t1208.0 i32) + (local $$t1208.1 i32) + (local $$t1209.0 i32) + (local $$t1209.1 i32) + (local $$t1210.0 i32) + (local $$t1210.1 i32) + (local $$t1211.0 i32) + (local $$t1211.1 i32) + (local $$t1212.0 i32) + (local $$t1212.1 i32) + (local $$t1213.0 i32) + (local $$t1213.1 i32) + (local $$t1214.0 i32) + (local $$t1214.1 i32) + (local $$t1215.0 i32) + (local $$t1215.1 i32) + (local $$t1216.0 i32) + (local $$t1216.1 i32) + (local $$t1217.0 i32) + (local $$t1217.1 i32) + (local $$t1218.0 i32) + (local $$t1218.1 i32) + (local $$t1219.0 i32) + (local $$t1219.1 i32) + (local $$t1220.0 i32) + (local $$t1220.1 i32) + (local $$t1221.0 i32) + (local $$t1221.1 i32) + (local $$t1222.0 i32) + (local $$t1222.1 i32) + (local $$t1223.0 i32) + (local $$t1223.1 i32) + (local $$t1224.0 i32) + (local $$t1224.1 i32) + (local $$t1225.0 i32) + (local $$t1225.1 i32) + (local $$t1226.0 i32) + (local $$t1226.1 i32) + (local $$t1227.0 i32) + (local $$t1227.1 i32) + (local $$t1228.0 i32) + (local $$t1228.1 i32) + (local $$t1229.0 i32) + (local $$t1229.1 i32) + (local $$t1230.0 i32) + (local $$t1230.1 i32) + (local $$t1231.0 i32) + (local $$t1231.1 i32) + (local $$t1232.0 i32) + (local $$t1232.1 i32) + (local $$t1233.0 i32) + (local $$t1233.1 i32) + (local $$t1234.0 i32) + (local $$t1234.1 i32) + (local $$t1235.0 i32) + (local $$t1235.1 i32) + (local $$t1236.0 i32) + (local $$t1236.1 i32) + (local $$t1237.0 i32) + (local $$t1237.1 i32) + (local $$t1238.0 i32) + (local $$t1238.1 i32) + (local $$t1239.0 i32) + (local $$t1239.1 i32) + (local $$t1240.0 i32) + (local $$t1240.1 i32) + (local $$t1241.0 i32) + (local $$t1241.1 i32) + (local $$t1242.0 i32) + (local $$t1242.1 i32) + (local $$t1243.0 i32) + (local $$t1243.1 i32) + (local $$t1244.0 i32) + (local $$t1244.1 i32) + (local $$t1245.0 i32) + (local $$t1245.1 i32) + (local $$t1246.0 i32) + (local $$t1246.1 i32) + (local $$t1247.0 i32) + (local $$t1247.1 i32) + (local $$t1248.0 i32) + (local $$t1248.1 i32) + (local $$t1249.0 i32) + (local $$t1249.1 i32) + (local $$t1250.0 i32) + (local $$t1250.1 i32) + (local $$t1251.0 i32) + (local $$t1251.1 i32) + (local $$t1252.0 i32) + (local $$t1252.1 i32) + (local $$t1253.0 i32) + (local $$t1253.1 i32) + (local $$t1254.0 i32) + (local $$t1254.1 i32) + (local $$t1255.0 i32) + (local $$t1255.1 i32) + (local $$t1256.0 i32) + (local $$t1256.1 i32) + (local $$t1257.0 i32) + (local $$t1257.1 i32) + (local $$t1258.0 i32) + (local $$t1258.1 i32) + (local $$t1259.0 i32) + (local $$t1259.1 i32) + (local $$t1260.0 i32) + (local $$t1260.1 i32) + (local $$t1261.0 i32) + (local $$t1261.1 i32) + (local $$t1262.0 i32) + (local $$t1262.1 i32) + (local $$t1263.0 i32) + (local $$t1263.1 i32) + (local $$t1264.0 i32) + (local $$t1264.1 i32) + (local $$t1265.0 i32) + (local $$t1265.1 i32) + (local $$t1266.0 i32) + (local $$t1266.1 i32) + (local $$t1267.0 i32) + (local $$t1267.1 i32) + (local $$t1268.0 i32) + (local $$t1268.1 i32) + (local $$t1269.0 i32) + (local $$t1269.1 i32) + (local $$t1270.0 i32) + (local $$t1270.1 i32) + (local $$t1271.0 i32) + (local $$t1271.1 i32) + (local $$t1272.0 i32) + (local $$t1272.1 i32) + (local $$t1273.0 i32) + (local $$t1273.1 i32) + (local $$t1274.0 i32) + (local $$t1274.1 i32) + (local $$t1275.0 i32) + (local $$t1275.1 i32) + (local $$t1276.0 i32) + (local $$t1276.1 i32) + (local $$t1277.0 i32) + (local $$t1277.1 i32) + (local $$t1278.0 i32) + (local $$t1278.1 i32) + (local $$t1279.0 i32) + (local $$t1279.1 i32) + (local $$t1280.0 i32) + (local $$t1280.1 i32) + (local $$t1281.0 i32) + (local $$t1281.1 i32) + (local $$t1282.0 i32) + (local $$t1282.1 i32) + (local $$t1283.0 i32) + (local $$t1283.1 i32) + (local $$t1284.0 i32) + (local $$t1284.1 i32) + (local $$t1285.0 i32) + (local $$t1285.1 i32) + (local $$t1286.0 i32) + (local $$t1286.1 i32) + (local $$t1287.0 i32) + (local $$t1287.1 i32) + (local $$t1288.0 i32) + (local $$t1288.1 i32) + (local $$t1289.0 i32) + (local $$t1289.1 i32) + (local $$t1290.0 i32) + (local $$t1290.1 i32) + (local $$t1291.0 i32) + (local $$t1291.1 i32) + (local $$t1292.0 i32) + (local $$t1292.1 i32) + (local $$t1293.0 i32) + (local $$t1293.1 i32) + (local $$t1294.0 i32) + (local $$t1294.1 i32) + (local $$t1295.0 i32) + (local $$t1295.1 i32) + (local $$t1296.0 i32) + (local $$t1296.1 i32) + (local $$t1297.0 i32) + (local $$t1297.1 i32) + (local $$t1298.0 i32) + (local $$t1298.1 i32) + (local $$t1299.0 i32) + (local $$t1299.1 i32) + (local $$t1300.0 i32) + (local $$t1300.1 i32) + (local $$t1301.0 i32) + (local $$t1301.1 i32) + (local $$t1302.0 i32) + (local $$t1302.1 i32) + (local $$t1303.0 i32) + (local $$t1303.1 i32) + (local $$t1304.0 i32) + (local $$t1304.1 i32) + (local $$t1305.0 i32) + (local $$t1305.1 i32) + (local $$t1306.0 i32) + (local $$t1306.1 i32) + (local $$t1307.0 i32) + (local $$t1307.1 i32) + (local $$t1308.0 i32) + (local $$t1308.1 i32) + (local $$t1309.0 i32) + (local $$t1309.1 i32) + (local $$t1310.0 i32) + (local $$t1310.1 i32) + (local $$t1311.0 i32) + (local $$t1311.1 i32) + (local $$t1312.0 i32) + (local $$t1312.1 i32) + (local $$t1313.0 i32) + (local $$t1313.1 i32) + (local $$t1314.0 i32) + (local $$t1314.1 i32) + (local $$t1315.0 i32) + (local $$t1315.1 i32) + (local $$t1316.0 i32) + (local $$t1316.1 i32) + (local $$t1317.0 i32) + (local $$t1317.1 i32) + (local $$t1318.0 i32) + (local $$t1318.1 i32) + (local $$t1319.0 i32) + (local $$t1319.1 i32) + (local $$t1320.0 i32) + (local $$t1320.1 i32) + (local $$t1321.0 i32) + (local $$t1321.1 i32) + (local $$t1322.0 i32) + (local $$t1322.1 i32) + (local $$t1323.0 i32) + (local $$t1323.1 i32) + (local $$t1324.0 i32) + (local $$t1324.1 i32) + (local $$t1325.0 i32) + (local $$t1325.1 i32) + (local $$t1326.0 i32) + (local $$t1326.1 i32) + (local $$t1327.0 i32) + (local $$t1327.1 i32) + (local $$t1328.0 i32) + (local $$t1328.1 i32) + (local $$t1329.0 i32) + (local $$t1329.1 i32) + (local $$t1330.0 i32) + (local $$t1330.1 i32) + (local $$t1331.0 i32) + (local $$t1331.1 i32) + (local $$t1332.0 i32) + (local $$t1332.1 i32) + (local $$t1333.0 i32) + (local $$t1333.1 i32) + (local $$t1334.0 i32) + (local $$t1334.1 i32) + (local $$t1335.0 i32) + (local $$t1335.1 i32) + (local $$t1336.0 i32) + (local $$t1336.1 i32) + (local $$t1337.0 i32) + (local $$t1337.1 i32) + (local $$t1338.0 i32) + (local $$t1338.1 i32) + (local $$t1339.0 i32) + (local $$t1339.1 i32) + (local $$t1340.0 i32) + (local $$t1340.1 i32) + (local $$t1341.0 i32) + (local $$t1341.1 i32) + (local $$t1342.0 i32) + (local $$t1342.1 i32) + (local $$t1343.0 i32) + (local $$t1343.1 i32) + (local $$t1344.0 i32) + (local $$t1344.1 i32) + (local $$t1345.0 i32) + (local $$t1345.1 i32) + (local $$t1346.0 i32) + (local $$t1346.1 i32) + (local $$t1347.0 i32) + (local $$t1347.1 i32) + (local $$t1348.0 i32) + (local $$t1348.1 i32) + (local $$t1349.0 i32) + (local $$t1349.1 i32) + (local $$t1350.0 i32) + (local $$t1350.1 i32) + (local $$t1351.0 i32) + (local $$t1351.1 i32) + (local $$t1352.0 i32) + (local $$t1352.1 i32) + (local $$t1353.0 i32) + (local $$t1353.1 i32) + (local $$t1354.0 i32) + (local $$t1354.1 i32) + (local $$t1355.0 i32) + (local $$t1355.1 i32) + (local $$t1356.0 i32) + (local $$t1356.1 i32) + (local $$t1357.0 i32) + (local $$t1357.1 i32) + (local $$t1358.0 i32) + (local $$t1358.1 i32) + (local $$t1359.0 i32) + (local $$t1359.1 i32) + (local $$t1360.0 i32) + (local $$t1360.1 i32) + (local $$t1361.0 i32) + (local $$t1361.1 i32) + (local $$t1362.0 i32) + (local $$t1362.1 i32) + (local $$t1363.0 i32) + (local $$t1363.1 i32) + (local $$t1364.0 i32) + (local $$t1364.1 i32) + (local $$t1365.0 i32) + (local $$t1365.1 i32) + (local $$t1366.0 i32) + (local $$t1366.1 i32) + (local $$t1367.0 i32) + (local $$t1367.1 i32) + (local $$t1368.0 i32) + (local $$t1368.1 i32) + (local $$t1369.0 i32) + (local $$t1369.1 i32) + (local $$t1370.0 i32) + (local $$t1370.1 i32) + (local $$t1371.0 i32) + (local $$t1371.1 i32) + (local $$t1372.0 i32) + (local $$t1372.1 i32) + (local $$t1373.0 i32) + (local $$t1373.1 i32) + (local $$t1374.0 i32) + (local $$t1374.1 i32) + (local $$t1375.0 i32) + (local $$t1375.1 i32) + (local $$t1376.0 i32) + (local $$t1376.1 i32) + (local $$t1377.0 i32) + (local $$t1377.1 i32) + (local $$t1378.0 i32) + (local $$t1378.1 i32) + (local $$t1379.0 i32) + (local $$t1379.1 i32) + (local $$t1380.0 i32) + (local $$t1380.1 i32) + (local $$t1381.0 i32) + (local $$t1381.1 i32) + (local $$t1382.0 i32) + (local $$t1382.1 i32) + (local $$t1383.0 i32) + (local $$t1383.1 i32) + (local $$t1384.0 i32) + (local $$t1384.1 i32) + (local $$t1385.0 i32) + (local $$t1385.1 i32) + (local $$t1386.0 i32) + (local $$t1386.1 i32) + (local $$t1387.0 i32) + (local $$t1387.1 i32) + (local $$t1388.0 i32) + (local $$t1388.1 i32) + (local $$t1389.0 i32) + (local $$t1389.1 i32) + (local $$t1390.0 i32) + (local $$t1390.1 i32) + (local $$t1391.0 i32) + (local $$t1391.1 i32) + (local $$t1392.0 i32) + (local $$t1392.1 i32) + (local $$t1393.0 i32) + (local $$t1393.1 i32) + (local $$t1394.0 i32) + (local $$t1394.1 i32) + (local $$t1395.0 i32) + (local $$t1395.1 i32) + (local $$t1396.0 i32) + (local $$t1396.1 i32) + (local $$t1397.0 i32) + (local $$t1397.1 i32) + (local $$t1398.0 i32) + (local $$t1398.1 i32) + (local $$t1399.0 i32) + (local $$t1399.1 i32) + (local $$t1400.0 i32) + (local $$t1400.1 i32) + (local $$t1401.0 i32) + (local $$t1401.1 i32) + (local $$t1402.0 i32) + (local $$t1402.1 i32) + (local $$t1403.0 i32) + (local $$t1403.1 i32) + (local $$t1404.0 i32) + (local $$t1404.1 i32) + (local $$t1405.0 i32) + (local $$t1405.1 i32) + (local $$t1406.0 i32) + (local $$t1406.1 i32) + (local $$t1407.0 i32) + (local $$t1407.1 i32) + (local $$t1408.0 i32) + (local $$t1408.1 i32) + (local $$t1409.0 i32) + (local $$t1409.1 i32) + (local $$t1410.0 i32) + (local $$t1410.1 i32) + (local $$t1411.0 i32) + (local $$t1411.1 i32) + (local $$t1412.0 i32) + (local $$t1412.1 i32) + (local $$t1413.0 i32) + (local $$t1413.1 i32) + (local $$t1414.0 i32) + (local $$t1414.1 i32) + (local $$t1415.0 i32) + (local $$t1415.1 i32) + (local $$t1416.0 i32) + (local $$t1416.1 i32) + (local $$t1417.0 i32) + (local $$t1417.1 i32) + (local $$t1418.0 i32) + (local $$t1418.1 i32) + (local $$t1419.0 i32) + (local $$t1419.1 i32) + (local $$t1420.0 i32) + (local $$t1420.1 i32) + (local $$t1421.0 i32) + (local $$t1421.1 i32) + (local $$t1422.0 i32) + (local $$t1422.1 i32) + (local $$t1423.0 i32) + (local $$t1423.1 i32) + (local $$t1424.0 i32) + (local $$t1424.1 i32) + (local $$t1425.0 i32) + (local $$t1425.1 i32) + (local $$t1426.0 i32) + (local $$t1426.1 i32) + (local $$t1427.0 i32) + (local $$t1427.1 i32) + (local $$t1428.0 i32) + (local $$t1428.1 i32) + (local $$t1429.0 i32) + (local $$t1429.1 i32) + (local $$t1430.0 i32) + (local $$t1430.1 i32) + (local $$t1431.0 i32) + (local $$t1431.1 i32) + (local $$t1432.0 i32) + (local $$t1432.1 i32) + (local $$t1433.0 i32) + (local $$t1433.1 i32) + (local $$t1434.0 i32) + (local $$t1434.1 i32) + (local $$t1435.0 i32) + (local $$t1435.1 i32) + (local $$t1436.0 i32) + (local $$t1436.1 i32) + (local $$t1437.0 i32) + (local $$t1437.1 i32) + (local $$t1438.0 i32) + (local $$t1438.1 i32) + (local $$t1439.0 i32) + (local $$t1439.1 i32) + (local $$t1440.0 i32) + (local $$t1440.1 i32) + (local $$t1441.0 i32) + (local $$t1441.1 i32) + (local $$t1442.0 i32) + (local $$t1442.1 i32) + (local $$t1443.0 i32) + (local $$t1443.1 i32) + (local $$t1444.0 i32) + (local $$t1444.1 i32) + (local $$t1445.0 i32) + (local $$t1445.1 i32) + (local $$t1446.0 i32) + (local $$t1446.1 i32) + (local $$t1447.0 i32) + (local $$t1447.1 i32) + (local $$t1448.0 i32) + (local $$t1448.1 i32) + (local $$t1449.0 i32) + (local $$t1449.1 i32) + (local $$t1450.0 i32) + (local $$t1450.1 i32) + (local $$t1451.0 i32) + (local $$t1451.1 i32) + (local $$t1452.0 i32) + (local $$t1452.1 i32) + (local $$t1453.0 i32) + (local $$t1453.1 i32) + (local $$t1454.0 i32) + (local $$t1454.1 i32) + (local $$t1455.0 i32) + (local $$t1455.1 i32) + (local $$t1456.0 i32) + (local $$t1456.1 i32) + (local $$t1457.0 i32) + (local $$t1457.1 i32) + (local $$t1458.0 i32) + (local $$t1458.1 i32) + (local $$t1459.0 i32) + (local $$t1459.1 i32) + (local $$t1460.0 i32) + (local $$t1460.1 i32) + (local $$t1461.0 i32) + (local $$t1461.1 i32) + (local $$t1462.0 i32) + (local $$t1462.1 i32) + (local $$t1463.0 i32) + (local $$t1463.1 i32) + (local $$t1464.0 i32) + (local $$t1464.1 i32) + (local $$t1465.0 i32) + (local $$t1465.1 i32) + (local $$t1466.0 i32) + (local $$t1466.1 i32) + (local $$t1467.0 i32) + (local $$t1467.1 i32) + (local $$t1468.0 i32) + (local $$t1468.1 i32) + (local $$t1469.0 i32) + (local $$t1469.1 i32) + (local $$t1470.0 i32) + (local $$t1470.1 i32) + (local $$t1471.0 i32) + (local $$t1471.1 i32) + (local $$t1472.0 i32) + (local $$t1472.1 i32) + (local $$t1473.0 i32) + (local $$t1473.1 i32) + (local $$t1474.0 i32) + (local $$t1474.1 i32) + (local $$t1475.0 i32) + (local $$t1475.1 i32) + (local $$t1476.0 i32) + (local $$t1476.1 i32) + (local $$t1477.0 i32) + (local $$t1477.1 i32) + (local $$t1478.0 i32) + (local $$t1478.1 i32) + (local $$t1479.0 i32) + (local $$t1479.1 i32) + (local $$t1480.0 i32) + (local $$t1480.1 i32) + (local $$t1481.0 i32) + (local $$t1481.1 i32) + (local $$t1482.0 i32) + (local $$t1482.1 i32) + (local $$t1483.0 i32) + (local $$t1483.1 i32) + (local $$t1484.0 i32) + (local $$t1484.1 i32) + (local $$t1485.0 i32) + (local $$t1485.1 i32) + (local $$t1486.0 i32) + (local $$t1486.1 i32) + (local $$t1487.0 i32) + (local $$t1487.1 i32) + (local $$t1488.0 i32) + (local $$t1488.1 i32) + (local $$t1489.0 i32) + (local $$t1489.1 i32) + (local $$t1490.0 i32) + (local $$t1490.1 i32) + (local $$t1491.0 i32) + (local $$t1491.1 i32) + (local $$t1492.0 i32) + (local $$t1492.1 i32) + (local $$t1493.0 i32) + (local $$t1493.1 i32) + (local $$t1494.0 i32) + (local $$t1494.1 i32) + (local $$t1495.0 i32) + (local $$t1495.1 i32) + (local $$t1496.0 i32) + (local $$t1496.1 i32) + (local $$t1497.0 i32) + (local $$t1497.1 i32) + (local $$t1498.0 i32) + (local $$t1498.1 i32) + (local $$t1499.0 i32) + (local $$t1499.1 i32) + (local $$t1500.0 i32) + (local $$t1500.1 i32) + (local $$t1501.0 i32) + (local $$t1501.1 i32) + (local $$t1502.0 i32) + (local $$t1502.1 i32) + (local $$t1503.0 i32) + (local $$t1503.1 i32) + (local $$t1504.0 i32) + (local $$t1504.1 i32) + (local $$t1505.0 i32) + (local $$t1505.1 i32) + (local $$t1506.0 i32) + (local $$t1506.1 i32) + (local $$t1507.0 i32) + (local $$t1507.1 i32) + (local $$t1508.0 i32) + (local $$t1508.1 i32) + (local $$t1509.0 i32) + (local $$t1509.1 i32) + (local $$t1510.0 i32) + (local $$t1510.1 i32) + (local $$t1511.0 i32) + (local $$t1511.1 i32) + (local $$t1512.0 i32) + (local $$t1512.1 i32) + (local $$t1513.0 i32) + (local $$t1513.1 i32) + (local $$t1514.0 i32) + (local $$t1514.1 i32) + (local $$t1515.0 i32) + (local $$t1515.1 i32) + (local $$t1516.0 i32) + (local $$t1516.1 i32) + (local $$t1517.0 i32) + (local $$t1517.1 i32) + (local $$t1518.0 i32) + (local $$t1518.1 i32) + (local $$t1519.0 i32) + (local $$t1519.1 i32) + (local $$t1520.0 i32) + (local $$t1520.1 i32) + (local $$t1521.0 i32) + (local $$t1521.1 i32) + (local $$t1522.0 i32) + (local $$t1522.1 i32) + (local $$t1523.0 i32) + (local $$t1523.1 i32) + (local $$t1524.0 i32) + (local $$t1524.1 i32) + (local $$t1525.0 i32) + (local $$t1525.1 i32) + (local $$t1526.0 i32) + (local $$t1526.1 i32) + (local $$t1527.0 i32) + (local $$t1527.1 i32) + (local $$t1528.0 i32) + (local $$t1528.1 i32) + (local $$t1529.0 i32) + (local $$t1529.1 i32) + (local $$t1530.0 i32) + (local $$t1530.1 i32) + (local $$t1531.0 i32) + (local $$t1531.1 i32) + (local $$t1532.0 i32) + (local $$t1532.1 i32) + (local $$t1533.0 i32) + (local $$t1533.1 i32) + (local $$t1534.0 i32) + (local $$t1534.1 i32) + (local $$t1535.0 i32) + (local $$t1535.1 i32) + (local $$t1536.0 i32) + (local $$t1536.1 i32) + (local $$t1537.0 i32) + (local $$t1537.1 i32) + (local $$t1538.0 i32) + (local $$t1538.1 i32) + (local $$t1539.0 i32) + (local $$t1539.1 i32) + (local $$t1540.0 i32) + (local $$t1540.1 i32) + (local $$t1541.0 i32) + (local $$t1541.1 i32) + (local $$t1542.0 i32) + (local $$t1542.1 i32) + (local $$t1543.0 i32) + (local $$t1543.1 i32) + (local $$t1544.0 i32) + (local $$t1544.1 i32) + (local $$t1545.0 i32) + (local $$t1545.1 i32) + (local $$t1546.0 i32) + (local $$t1546.1 i32) + (local $$t1547.0 i32) + (local $$t1547.1 i32) + (local $$t1548.0 i32) + (local $$t1548.1 i32) + (local $$t1549.0 i32) + (local $$t1549.1 i32) + (local $$t1550.0 i32) + (local $$t1550.1 i32) + (local $$t1551.0 i32) + (local $$t1551.1 i32) + (local $$t1552.0 i32) + (local $$t1552.1 i32) + (local $$t1553.0 i32) + (local $$t1553.1 i32) + (local $$t1554.0 i32) + (local $$t1554.1 i32) + (local $$t1555.0 i32) + (local $$t1555.1 i32) + (local $$t1556.0 i32) + (local $$t1556.1 i32) + (local $$t1557.0 i32) + (local $$t1557.1 i32) + (local $$t1558.0 i32) + (local $$t1558.1 i32) + (local $$t1559.0 i32) + (local $$t1559.1 i32) + (local $$t1560.0 i32) + (local $$t1560.1 i32) + (local $$t1561.0 i32) + (local $$t1561.1 i32) + (local $$t1562.0 i32) + (local $$t1562.1 i32) + (local $$t1563.0 i32) + (local $$t1563.1 i32) + (local $$t1564.0 i32) + (local $$t1564.1 i32) + (local $$t1565.0 i32) + (local $$t1565.1 i32) + (local $$t1566.0 i32) + (local $$t1566.1 i32) + (local $$t1567.0 i32) + (local $$t1567.1 i32) + (local $$t1568.0 i32) + (local $$t1568.1 i32) + (local $$t1569.0 i32) + (local $$t1569.1 i32) + (local $$t1570.0 i32) + (local $$t1570.1 i32) + (local $$t1571.0 i32) + (local $$t1571.1 i32) + (local $$t1572.0 i32) + (local $$t1572.1 i32) + (local $$t1573.0 i32) + (local $$t1573.1 i32) + (local $$t1574.0 i32) + (local $$t1574.1 i32) + (local $$t1575.0 i32) + (local $$t1575.1 i32) + (local $$t1576.0 i32) + (local $$t1576.1 i32) + (local $$t1577.0 i32) + (local $$t1577.1 i32) + (local $$t1578.0 i32) + (local $$t1578.1 i32) + (local $$t1579.0 i32) + (local $$t1579.1 i32) + (local $$t1580.0 i32) + (local $$t1580.1 i32) + (local $$t1581.0 i32) + (local $$t1581.1 i32) + (local $$t1582.0 i32) + (local $$t1582.1 i32) + (local $$t1583.0 i32) + (local $$t1583.1 i32) + (local $$t1584.0 i32) + (local $$t1584.1 i32) + (local $$t1585.0 i32) + (local $$t1585.1 i32) + (local $$t1586.0 i32) + (local $$t1586.1 i32) + (local $$t1587.0 i32) + (local $$t1587.1 i32) + (local $$t1588.0 i32) + (local $$t1588.1 i32) + (local $$t1589.0 i32) + (local $$t1589.1 i32) + (local $$t1590.0 i32) + (local $$t1590.1 i32) + (local $$t1591.0 i32) + (local $$t1591.1 i32) + (local $$t1592.0 i32) + (local $$t1592.1 i32) + (local $$t1593.0 i32) + (local $$t1593.1 i32) + (local $$t1594.0 i32) + (local $$t1594.1 i32) + (local $$t1595.0 i32) + (local $$t1595.1 i32) + (local $$t1596.0 i32) + (local $$t1596.1 i32) + (local $$t1597.0 i32) + (local $$t1597.1 i32) + (local $$t1598.0 i32) + (local $$t1598.1 i32) + (local $$t1599.0 i32) + (local $$t1599.1 i32) + (local $$t1600.0 i32) + (local $$t1600.1 i32) + (local $$t1601.0 i32) + (local $$t1601.1 i32) + (local $$t1602.0 i32) + (local $$t1602.1 i32) + (local $$t1603.0 i32) + (local $$t1603.1 i32) + (local $$t1604.0 i32) + (local $$t1604.1 i32) + (local $$t1605.0 i32) + (local $$t1605.1 i32) + (local $$t1606.0 i32) + (local $$t1606.1 i32) + (local $$t1607.0 i32) + (local $$t1607.1 i32) + (local $$t1608.0 i32) + (local $$t1608.1 i32) + (local $$t1609.0 i32) + (local $$t1609.1 i32) + (local $$t1610.0 i32) + (local $$t1610.1 i32) + (local $$t1611.0 i32) + (local $$t1611.1 i32) + (local $$t1612.0 i32) + (local $$t1612.1 i32) + (local $$t1613.0 i32) + (local $$t1613.1 i32) + (local $$t1614.0 i32) + (local $$t1614.1 i32) + (local $$t1615.0 i32) + (local $$t1615.1 i32) + (local $$t1616.0 i32) + (local $$t1616.1 i32) + (local $$t1617.0 i32) + (local $$t1617.1 i32) + (local $$t1618.0 i32) + (local $$t1618.1 i32) + (local $$t1619.0 i32) + (local $$t1619.1 i32) + (local $$t1620.0 i32) + (local $$t1620.1 i32) + (local $$t1621.0 i32) + (local $$t1621.1 i32) + (local $$t1622.0 i32) + (local $$t1622.1 i32) + (local $$t1623.0 i32) + (local $$t1623.1 i32) + (local $$t1624.0 i32) + (local $$t1624.1 i32) + (local $$t1625.0 i32) + (local $$t1625.1 i32) + (local $$t1626.0 i32) + (local $$t1626.1 i32) + (local $$t1627.0 i32) + (local $$t1627.1 i32) + (local $$t1628.0 i32) + (local $$t1628.1 i32) + (local $$t1629.0 i32) + (local $$t1629.1 i32) + (local $$t1630.0 i32) + (local $$t1630.1 i32) + (local $$t1631.0 i32) + (local $$t1631.1 i32) + (local $$t1632.0 i32) + (local $$t1632.1 i32) + (local $$t1633.0 i32) + (local $$t1633.1 i32) + (local $$t1634.0 i32) + (local $$t1634.1 i32) + (local $$t1635.0 i32) + (local $$t1635.1 i32) + (local $$t1636.0 i32) + (local $$t1636.1 i32) + (local $$t1637.0 i32) + (local $$t1637.1 i32) + (local $$t1638.0 i32) + (local $$t1638.1 i32) + (local $$t1639.0 i32) + (local $$t1639.1 i32) + (local $$t1640.0 i32) + (local $$t1640.1 i32) + (local $$t1641.0 i32) + (local $$t1641.1 i32) + (local $$t1642.0 i32) + (local $$t1642.1 i32) + (local $$t1643.0 i32) + (local $$t1643.1 i32) + (local $$t1644.0 i32) + (local $$t1644.1 i32) + (local $$t1645.0 i32) + (local $$t1645.1 i32) + (local $$t1646.0 i32) + (local $$t1646.1 i32) + (local $$t1647.0 i32) + (local $$t1647.1 i32) + (local $$t1648.0 i32) + (local $$t1648.1 i32) + (local $$t1649.0 i32) + (local $$t1649.1 i32) + (local $$t1650.0 i32) + (local $$t1650.1 i32) + (local $$t1651.0 i32) + (local $$t1651.1 i32) + (local $$t1652.0 i32) + (local $$t1652.1 i32) + (local $$t1653.0 i32) + (local $$t1653.1 i32) + (local $$t1654.0 i32) + (local $$t1654.1 i32) + (local $$t1655.0 i32) + (local $$t1655.1 i32) + (local $$t1656.0 i32) + (local $$t1656.1 i32) + (local $$t1657.0 i32) + (local $$t1657.1 i32) + (local $$t1658.0 i32) + (local $$t1658.1 i32) + (local $$t1659.0 i32) + (local $$t1659.1 i32) + (local $$t1660.0 i32) + (local $$t1660.1 i32) + (local $$t1661.0 i32) + (local $$t1661.1 i32) + (local $$t1662.0 i32) + (local $$t1662.1 i32) + (local $$t1663.0 i32) + (local $$t1663.1 i32) + (local $$t1664.0 i32) + (local $$t1664.1 i32) + (local $$t1665.0 i32) + (local $$t1665.1 i32) + (local $$t1666.0 i32) + (local $$t1666.1 i32) + (local $$t1667.0 i32) + (local $$t1667.1 i32) + (local $$t1668.0 i32) + (local $$t1668.1 i32) + (local $$t1669.0 i32) + (local $$t1669.1 i32) + (local $$t1670.0 i32) + (local $$t1670.1 i32) + (local $$t1671.0 i32) + (local $$t1671.1 i32) + (local $$t1672.0 i32) + (local $$t1672.1 i32) + (local $$t1673.0 i32) + (local $$t1673.1 i32) + (local $$t1674.0 i32) + (local $$t1674.1 i32) + (local $$t1675.0 i32) + (local $$t1675.1 i32) + (local $$t1676.0 i32) + (local $$t1676.1 i32) + (local $$t1677.0 i32) + (local $$t1677.1 i32) + (local $$t1678.0 i32) + (local $$t1678.1 i32) + (local $$t1679.0 i32) + (local $$t1679.1 i32) + (local $$t1680.0 i32) + (local $$t1680.1 i32) + (local $$t1681.0 i32) + (local $$t1681.1 i32) + (local $$t1682.0 i32) + (local $$t1682.1 i32) + (local $$t1683.0 i32) + (local $$t1683.1 i32) + (local $$t1684.0 i32) + (local $$t1684.1 i32) + (local $$t1685.0 i32) + (local $$t1685.1 i32) + (local $$t1686.0 i32) + (local $$t1686.1 i32) + (local $$t1687.0 i32) + (local $$t1687.1 i32) + (local $$t1688.0 i32) + (local $$t1688.1 i32) + (local $$t1689.0 i32) + (local $$t1689.1 i32) + (local $$t1690.0 i32) + (local $$t1690.1 i32) + (local $$t1691.0 i32) + (local $$t1691.1 i32) + (local $$t1692.0 i32) + (local $$t1692.1 i32) + (local $$t1693.0 i32) + (local $$t1693.1 i32) + (local $$t1694.0 i32) + (local $$t1694.1 i32) + (local $$t1695.0 i32) + (local $$t1695.1 i32) + (local $$t1696.0 i32) + (local $$t1696.1 i32) + (local $$t1697.0 i32) + (local $$t1697.1 i32) + (local $$t1698.0 i32) + (local $$t1698.1 i32) + (local $$t1699.0 i32) + (local $$t1699.1 i32) + (local $$t1700.0 i32) + (local $$t1700.1 i32) + (local $$t1701.0 i32) + (local $$t1701.1 i32) + (local $$t1702.0 i32) + (local $$t1702.1 i32) + (local $$t1703.0 i32) + (local $$t1703.1 i32) + (local $$t1704.0 i32) + (local $$t1704.1 i32) + (local $$t1705.0 i32) + (local $$t1705.1 i32) + (local $$t1706.0 i32) + (local $$t1706.1 i32) + (local $$t1707.0 i32) + (local $$t1707.1 i32) + (local $$t1708.0 i32) + (local $$t1708.1 i32) + (local $$t1709.0 i32) + (local $$t1709.1 i32) + (local $$t1710.0 i32) + (local $$t1710.1 i32) + (local $$t1711.0 i32) + (local $$t1711.1 i32) + (local $$t1712.0 i32) + (local $$t1712.1 i32) + (local $$t1713.0 i32) + (local $$t1713.1 i32) + (local $$t1714.0 i32) + (local $$t1714.1 i32) + (local $$t1715.0 i32) + (local $$t1715.1 i32) + (local $$t1716.0 i32) + (local $$t1716.1 i32) + (local $$t1717.0 i32) + (local $$t1717.1 i32) + (local $$t1718.0 i32) + (local $$t1718.1 i32) + (local $$t1719.0 i32) + (local $$t1719.1 i32) + (local $$t1720.0 i32) + (local $$t1720.1 i32) + (local $$t1721.0 i32) + (local $$t1721.1 i32) + (local $$t1722.0 i32) + (local $$t1722.1 i32) + (local $$t1723.0 i32) + (local $$t1723.1 i32) + (local $$t1724.0 i32) + (local $$t1724.1 i32) + (local $$t1725.0 i32) + (local $$t1725.1 i32) + (local $$t1726.0 i32) + (local $$t1726.1 i32) + (local $$t1727.0 i32) + (local $$t1727.1 i32) + (local $$t1728.0 i32) + (local $$t1728.1 i32) + (local $$t1729.0 i32) + (local $$t1729.1 i32) + (local $$t1730.0 i32) + (local $$t1730.1 i32) + (local $$t1731.0 i32) + (local $$t1731.1 i32) + (local $$t1732.0 i32) + (local $$t1732.1 i32) + (local $$t1733.0 i32) + (local $$t1733.1 i32) + (local $$t1734.0 i32) + (local $$t1734.1 i32) + (local $$t1735.0 i32) + (local $$t1735.1 i32) + (local $$t1736.0 i32) + (local $$t1736.1 i32) + (local $$t1737.0 i32) + (local $$t1737.1 i32) + (local $$t1738.0 i32) + (local $$t1738.1 i32) + (local $$t1739.0 i32) + (local $$t1739.1 i32) + (local $$t1740.0 i32) + (local $$t1740.1 i32) + (local $$t1741.0 i32) + (local $$t1741.1 i32) + (local $$t1742.0 i32) + (local $$t1742.1 i32) + (local $$t1743.0 i32) + (local $$t1743.1 i32) + (local $$t1744.0 i32) + (local $$t1744.1 i32) + (local $$t1745.0 i32) + (local $$t1745.1 i32) + (local $$t1746.0 i32) + (local $$t1746.1 i32) + (local $$t1747.0 i32) + (local $$t1747.1 i32) + (local $$t1748.0 i32) + (local $$t1748.1 i32) + (local $$t1749.0 i32) + (local $$t1749.1 i32) + (local $$t1750.0 i32) + (local $$t1750.1 i32) + (local $$t1751.0 i32) + (local $$t1751.1 i32) + (local $$t1752.0 i32) + (local $$t1752.1 i32) + (local $$t1753.0 i32) + (local $$t1753.1 i32) + (local $$t1754.0 i32) + (local $$t1754.1 i32) + (local $$t1755.0 i32) + (local $$t1755.1 i32) + (local $$t1756.0 i32) + (local $$t1756.1 i32) + (local $$t1757.0 i32) + (local $$t1757.1 i32) + (local $$t1758.0 i32) + (local $$t1758.1 i32) + (local $$t1759.0 i32) + (local $$t1759.1 i32) + (local $$t1760.0 i32) + (local $$t1760.1 i32) + (local $$t1761.0 i32) + (local $$t1761.1 i32) + (local $$t1762.0 i32) + (local $$t1762.1 i32) + (local $$t1763.0 i32) + (local $$t1763.1 i32) + (local $$t1764.0 i32) + (local $$t1764.1 i32) + (local $$t1765.0 i32) + (local $$t1765.1 i32) + (local $$t1766.0 i32) + (local $$t1766.1 i32) + (local $$t1767.0 i32) + (local $$t1767.1 i32) + (local $$t1768.0 i32) + (local $$t1768.1 i32) + (local $$t1769.0 i32) + (local $$t1769.1 i32) + (local $$t1770.0 i32) + (local $$t1770.1 i32) + (local $$t1771.0 i32) + (local $$t1771.1 i32) + (local $$t1772.0 i32) + (local $$t1772.1 i32) + (local $$t1773.0 i32) + (local $$t1773.1 i32) + (local $$t1774.0 i32) + (local $$t1774.1 i32) + (local $$t1775.0 i32) + (local $$t1775.1 i32) + (local $$t1776.0 i32) + (local $$t1776.1 i32) + (local $$t1777.0 i32) + (local $$t1777.1 i32) + (local $$t1778.0 i32) + (local $$t1778.1 i32) + (local $$t1779.0 i32) + (local $$t1779.1 i32) + (local $$t1780.0 i32) + (local $$t1780.1 i32) + (local $$t1781.0 i32) + (local $$t1781.1 i32) + (local $$t1782.0 i32) + (local $$t1782.1 i32) + (local $$t1783.0 i32) + (local $$t1783.1 i32) + (local $$t1784.0 i32) + (local $$t1784.1 i32) + (local $$t1785.0 i32) + (local $$t1785.1 i32) + (local $$t1786.0 i32) + (local $$t1786.1 i32) + (local $$t1787.0 i32) + (local $$t1787.1 i32) + (local $$t1788.0 i32) + (local $$t1788.1 i32) + (local $$t1789.0 i32) + (local $$t1789.1 i32) + (local $$t1790.0 i32) + (local $$t1790.1 i32) + (local $$t1791.0 i32) + (local $$t1791.1 i32) + (local $$t1792.0 i32) + (local $$t1792.1 i32) + (local $$t1793.0 i32) + (local $$t1793.1 i32) + (local $$t1794.0 i32) + (local $$t1794.1 i32) + (local $$t1795.0 i32) + (local $$t1795.1 i32) + (local $$t1796.0 i32) + (local $$t1796.1 i32) + (local $$t1797.0 i32) + (local $$t1797.1 i32) + (local $$t1798.0 i32) + (local $$t1798.1 i32) + (local $$t1799.0 i32) + (local $$t1799.1 i32) + (local $$t1800.0 i32) + (local $$t1800.1 i32) + (local $$t1801.0 i32) + (local $$t1801.1 i32) + (local $$t1802.0 i32) + (local $$t1802.1 i32) + (local $$t1803.0 i32) + (local $$t1803.1 i32) + (local $$t1804.0 i32) + (local $$t1804.1 i32) + (local $$t1805.0 i32) + (local $$t1805.1 i32) + (local $$t1806.0 i32) + (local $$t1806.1 i32) + (local $$t1807.0 i32) + (local $$t1807.1 i32) + (local $$t1808.0 i32) + (local $$t1808.1 i32) + (local $$t1809.0 i32) + (local $$t1809.1 i32) + (local $$t1810.0 i32) + (local $$t1810.1 i32) + (local $$t1811.0 i32) + (local $$t1811.1 i32) + (local $$t1812.0 i32) + (local $$t1812.1 i32) + (local $$t1813.0 i32) + (local $$t1813.1 i32) + (local $$t1814.0 i32) + (local $$t1814.1 i32) + (local $$t1815.0 i32) + (local $$t1815.1 i32) + (local $$t1816.0 i32) + (local $$t1816.1 i32) + (local $$t1817.0 i32) + (local $$t1817.1 i32) + (local $$t1818.0 i32) + (local $$t1818.1 i32) + (local $$t1819.0 i32) + (local $$t1819.1 i32) + (local $$t1820.0 i32) + (local $$t1820.1 i32) + (local $$t1821.0 i32) + (local $$t1821.1 i32) + (local $$t1822.0 i32) + (local $$t1822.1 i32) + (local $$t1823.0 i32) + (local $$t1823.1 i32) + (local $$t1824.0 i32) + (local $$t1824.1 i32) + (local $$t1825.0 i32) + (local $$t1825.1 i32) + (local $$t1826.0 i32) + (local $$t1826.1 i32) + (local $$t1827.0 i32) + (local $$t1827.1 i32) + (local $$t1828.0 i32) + (local $$t1828.1 i32) + (local $$t1829.0 i32) + (local $$t1829.1 i32) + (local $$t1830.0 i32) + (local $$t1830.1 i32) + (local $$t1831.0 i32) + (local $$t1831.1 i32) + (local $$t1832.0 i32) + (local $$t1832.1 i32) + (local $$t1833.0 i32) + (local $$t1833.1 i32) + (local $$t1834.0 i32) + (local $$t1834.1 i32) + (local $$t1835.0 i32) + (local $$t1835.1 i32) + (local $$t1836.0 i32) + (local $$t1836.1 i32) + (local $$t1837.0 i32) + (local $$t1837.1 i32) + (local $$t1838.0 i32) + (local $$t1838.1 i32) + (local $$t1839.0 i32) + (local $$t1839.1 i32) + (local $$t1840.0 i32) + (local $$t1840.1 i32) + (local $$t1841.0 i32) + (local $$t1841.1 i32) + (local $$t1842.0 i32) + (local $$t1842.1 i32) + (local $$t1843.0 i32) + (local $$t1843.1 i32) + (local $$t1844.0 i32) + (local $$t1844.1 i32) + (local $$t1845.0 i32) + (local $$t1845.1 i32) + (local $$t1846.0 i32) + (local $$t1846.1 i32) + (local $$t1847.0 i32) + (local $$t1847.1 i32) + (local $$t1848.0 i32) + (local $$t1848.1 i32) + (local $$t1849.0 i32) + (local $$t1849.1 i32) + (local $$t1850.0 i32) + (local $$t1850.1 i32) + (local $$t1851.0 i32) + (local $$t1851.1 i32) + (local $$t1852.0 i32) + (local $$t1852.1 i32) + (local $$t1853.0 i32) + (local $$t1853.1 i32) + (local $$t1854.0 i32) + (local $$t1854.1 i32) + (local $$t1855.0 i32) + (local $$t1855.1 i32) + (local $$t1856.0 i32) + (local $$t1856.1 i32) + (local $$t1857.0 i32) + (local $$t1857.1 i32) + (local $$t1858.0 i32) + (local $$t1858.1 i32) + (local $$t1859.0 i32) + (local $$t1859.1 i32) + (local $$t1860.0 i32) + (local $$t1860.1 i32) + (local $$t1861.0 i32) + (local $$t1861.1 i32) + (local $$t1862.0 i32) + (local $$t1862.1 i32) + (local $$t1863.0 i32) + (local $$t1863.1 i32) + (local $$t1864.0 i32) + (local $$t1864.1 i32) + (local $$t1865.0 i32) + (local $$t1865.1 i32) + (local $$t1866.0 i32) + (local $$t1866.1 i32) + (local $$t1867.0 i32) + (local $$t1867.1 i32) + (local $$t1868.0 i32) + (local $$t1868.1 i32) + (local $$t1869.0 i32) + (local $$t1869.1 i32) + (local $$t1870.0 i32) + (local $$t1870.1 i32) + (local $$t1871.0 i32) + (local $$t1871.1 i32) + (local $$t1872.0 i32) + (local $$t1872.1 i32) + (local $$t1873.0 i32) + (local $$t1873.1 i32) + (local $$t1874.0 i32) + (local $$t1874.1 i32) + (local $$t1875.0 i32) + (local $$t1875.1 i32) + (local $$t1876.0 i32) + (local $$t1876.1 i32) + (local $$t1877.0 i32) + (local $$t1877.1 i32) + (local $$t1878.0 i32) + (local $$t1878.1 i32) + (local $$t1879.0 i32) + (local $$t1879.1 i32) + (local $$t1880.0 i32) + (local $$t1880.1 i32) + (local $$t1881.0 i32) + (local $$t1881.1 i32) + (local $$t1882.0 i32) + (local $$t1882.1 i32) + (local $$t1883.0 i32) + (local $$t1883.1 i32) + (local $$t1884.0 i32) + (local $$t1884.1 i32) + (local $$t1885.0 i32) + (local $$t1885.1 i32) + (local $$t1886.0 i32) + (local $$t1886.1 i32) + (local $$t1887.0 i32) + (local $$t1887.1 i32) + (local $$t1888.0 i32) + (local $$t1888.1 i32) + (local $$t1889.0 i32) + (local $$t1889.1 i32) + (local $$t1890.0 i32) + (local $$t1890.1 i32) + (local $$t1891.0 i32) + (local $$t1891.1 i32) + (local $$t1892.0 i32) + (local $$t1892.1 i32) + (local $$t1893.0 i32) + (local $$t1893.1 i32) + (local $$t1894.0 i32) + (local $$t1894.1 i32) + (local $$t1895.0 i32) + (local $$t1895.1 i32) + (local $$t1896.0 i32) + (local $$t1896.1 i32) + (local $$t1897.0 i32) + (local $$t1897.1 i32) + (local $$t1898.0 i32) + (local $$t1898.1 i32) + (local $$t1899.0 i32) + (local $$t1899.1 i32) + (local $$t1900.0 i32) + (local $$t1900.1 i32) + (local $$t1901.0 i32) + (local $$t1901.1 i32) + (local $$t1902.0 i32) + (local $$t1902.1 i32) + (local $$t1903.0 i32) + (local $$t1903.1 i32) + (local $$t1904.0 i32) + (local $$t1904.1 i32) + (local $$t1905.0 i32) + (local $$t1905.1 i32) + (local $$t1906.0 i32) + (local $$t1906.1 i32) + (local $$t1907.0 i32) + (local $$t1907.1 i32) + (local $$t1908.0 i32) + (local $$t1908.1 i32) + (local $$t1909.0 i32) + (local $$t1909.1 i32) + (local $$t1910.0 i32) + (local $$t1910.1 i32) + (local $$t1911.0 i32) + (local $$t1911.1 i32) + (local $$t1912.0 i32) + (local $$t1912.1 i32) + (local $$t1913.0 i32) + (local $$t1913.1 i32) + (local $$t1914.0 i32) + (local $$t1914.1 i32) + (local $$t1915.0 i32) + (local $$t1915.1 i32) + (local $$t1916.0 i32) + (local $$t1916.1 i32) + (local $$t1917.0 i32) + (local $$t1917.1 i32) + (local $$t1918.0 i32) + (local $$t1918.1 i32) + (local $$t1919.0 i32) + (local $$t1919.1 i32) + (local $$t1920.0 i32) + (local $$t1920.1 i32) + (local $$t1921.0 i32) + (local $$t1921.1 i32) + (local $$t1922.0 i32) + (local $$t1922.1 i32) + (local $$t1923.0 i32) + (local $$t1923.1 i32) + (local $$t1924.0 i32) + (local $$t1924.1 i32) + (local $$t1925.0 i32) + (local $$t1925.1 i32) + (local $$t1926.0 i32) + (local $$t1926.1 i32) + (local $$t1927.0 i32) + (local $$t1927.1 i32) + (local $$t1928.0 i32) + (local $$t1928.1 i32) + (local $$t1929.0 i32) + (local $$t1929.1 i32) + (local $$t1930.0 i32) + (local $$t1930.1 i32) + (local $$t1931.0 i32) + (local $$t1931.1 i32) + (local $$t1932.0 i32) + (local $$t1932.1 i32) + (local $$t1933.0 i32) + (local $$t1933.1 i32) + (local $$t1934.0 i32) + (local $$t1934.1 i32) + (local $$t1935.0 i32) + (local $$t1935.1 i32) + (local $$t1936.0 i32) + (local $$t1936.1 i32) + (local $$t1937.0 i32) + (local $$t1937.1 i32) + (local $$t1938.0 i32) + (local $$t1938.1 i32) + (local $$t1939.0 i32) + (local $$t1939.1 i32) + (local $$t1940.0 i32) + (local $$t1940.1 i32) + (local $$t1941.0 i32) + (local $$t1941.1 i32) + (local $$t1942.0 i32) + (local $$t1942.1 i32) + (local $$t1943.0 i32) + (local $$t1943.1 i32) + (local $$t1944.0 i32) + (local $$t1944.1 i32) + (local $$t1945.0 i32) + (local $$t1945.1 i32) + (local $$t1946.0 i32) + (local $$t1946.1 i32) + (local $$t1947.0 i32) + (local $$t1947.1 i32) + (local $$t1948.0 i32) + (local $$t1948.1 i32) + (local $$t1949.0 i32) + (local $$t1949.1 i32) + (local $$t1950.0 i32) + (local $$t1950.1 i32) + (local $$t1951.0 i32) + (local $$t1951.1 i32) + (local $$t1952.0 i32) + (local $$t1952.1 i32) + (local $$t1953.0 i32) + (local $$t1953.1 i32) + (local $$t1954.0 i32) + (local $$t1954.1 i32) + (local $$t1955.0 i32) + (local $$t1955.1 i32) + (local $$t1956.0 i32) + (local $$t1956.1 i32) + (local $$t1957.0 i32) + (local $$t1957.1 i32) + (local $$t1958.0 i32) + (local $$t1958.1 i32) + (local $$t1959.0 i32) + (local $$t1959.1 i32) + (local $$t1960.0 i32) + (local $$t1960.1 i32) + (local $$t1961.0 i32) + (local $$t1961.1 i32) + (local $$t1962.0 i32) + (local $$t1962.1 i32) + (local $$t1963.0 i32) + (local $$t1963.1 i32) + (local $$t1964.0 i32) + (local $$t1964.1 i32) + (local $$t1965.0 i32) + (local $$t1965.1 i32) + (local $$t1966.0 i32) + (local $$t1966.1 i32) + (local $$t1967.0 i32) + (local $$t1967.1 i32) + (local $$t1968.0 i32) + (local $$t1968.1 i32) + (local $$t1969.0 i32) + (local $$t1969.1 i32) + (local $$t1970.0 i32) + (local $$t1970.1 i32) + (local $$t1971.0 i32) + (local $$t1971.1 i32) + (local $$t1972.0 i32) + (local $$t1972.1 i32) + (local $$t1973.0 i32) + (local $$t1973.1 i32) + (local $$t1974.0 i32) + (local $$t1974.1 i32) + (local $$t1975.0 i32) + (local $$t1975.1 i32) + (local $$t1976.0 i32) + (local $$t1976.1 i32) + (local $$t1977.0 i32) + (local $$t1977.1 i32) + (local $$t1978.0 i32) + (local $$t1978.1 i32) + (local $$t1979.0 i32) + (local $$t1979.1 i32) + (local $$t1980.0 i32) + (local $$t1980.1 i32) + (local $$t1981.0 i32) + (local $$t1981.1 i32) + (local $$t1982.0 i32) + (local $$t1982.1 i32) + (local $$t1983.0 i32) + (local $$t1983.1 i32) + (local $$t1984.0 i32) + (local $$t1984.1 i32) + (local $$t1985.0 i32) + (local $$t1985.1 i32) + (local $$t1986.0 i32) + (local $$t1986.1 i32) + (local $$t1987.0 i32) + (local $$t1987.1 i32) + (local $$t1988.0 i32) + (local $$t1988.1 i32) + (local $$t1989.0 i32) + (local $$t1989.1 i32) + (local $$t1990.0 i32) + (local $$t1990.1 i32) + (local $$t1991.0 i32) + (local $$t1991.1 i32) + (local $$t1992.0 i32) + (local $$t1992.1 i32) + (local $$t1993.0 i32) + (local $$t1993.1 i32) + (local $$t1994.0 i32) + (local $$t1994.1 i32) + (local $$t1995.0 i32) + (local $$t1995.1 i32) + (local $$t1996.0 i32) + (local $$t1996.1 i32) + (local $$t1997.0 i32) + (local $$t1997.1 i32) + (local $$t1998.0 i32) + (local $$t1998.1 i32) + (local $$t1999.0 i32) + (local $$t1999.1 i32) + (local $$t2000.0 i32) + (local $$t2000.1 i32) + (local $$t2001.0 i32) + (local $$t2001.1 i32) + (local $$t2002.0 i32) + (local $$t2002.1 i32) + (local $$t2003.0 i32) + (local $$t2003.1 i32) + (local $$t2004.0 i32) + (local $$t2004.1 i32) + (local $$t2005.0 i32) + (local $$t2005.1 i32) + (local $$t2006.0 i32) + (local $$t2006.1 i32) + (local $$t2007.0 i32) + (local $$t2007.1 i32) + (local $$t2008.0 i32) + (local $$t2008.1 i32) + (local $$t2009.0 i32) + (local $$t2009.1 i32) + (local $$t2010.0 i32) + (local $$t2010.1 i32) + (local $$t2011.0 i32) + (local $$t2011.1 i32) + (local $$t2012.0 i32) + (local $$t2012.1 i32) + (local $$t2013.0 i32) + (local $$t2013.1 i32) + (local $$t2014.0 i32) + (local $$t2014.1 i32) + (local $$t2015.0 i32) + (local $$t2015.1 i32) + (local $$t2016.0 i32) + (local $$t2016.1 i32) + (local $$t2017.0 i32) + (local $$t2017.1 i32) + (local $$t2018.0 i32) + (local $$t2018.1 i32) + (local $$t2019.0 i32) + (local $$t2019.1 i32) + (local $$t2020.0 i32) + (local $$t2020.1 i32) + (local $$t2021.0 i32) + (local $$t2021.1 i32) + (local $$t2022.0 i32) + (local $$t2022.1 i32) + (local $$t2023.0 i32) + (local $$t2023.1 i32) + (local $$t2024.0 i32) + (local $$t2024.1 i32) + (local $$t2025.0 i32) + (local $$t2025.1 i32) + (local $$t2026.0 i32) + (local $$t2026.1 i32) + (local $$t2027.0 i32) + (local $$t2027.1 i32) + (local $$t2028.0 i32) + (local $$t2028.1 i32) + (local $$t2029.0 i32) + (local $$t2029.1 i32) + (local $$t2030.0 i32) + (local $$t2030.1 i32) + (local $$t2031.0 i32) + (local $$t2031.1 i32) + (local $$t2032.0 i32) + (local $$t2032.1 i32) + (local $$t2033.0 i32) + (local $$t2033.1 i32) + (local $$t2034.0 i32) + (local $$t2034.1 i32) + (local $$t2035.0 i32) + (local $$t2035.1 i32) + (local $$t2036.0 i32) + (local $$t2036.1 i32) + (local $$t2037.0 i32) + (local $$t2037.1 i32) + (local $$t2038.0 i32) + (local $$t2038.1 i32) + (local $$t2039.0 i32) + (local $$t2039.1 i32) + (local $$t2040.0 i32) + (local $$t2040.1 i32) + (local $$t2041.0 i32) + (local $$t2041.1 i32) + (local $$t2042.0 i32) + (local $$t2042.1 i32) + (local $$t2043.0 i32) + (local $$t2043.1 i32) + (local $$t2044.0 i32) + (local $$t2044.1 i32) + (local $$t2045.0 i32) + (local $$t2045.1 i32) + (local $$t2046.0 i32) + (local $$t2046.1 i32) + (local $$t2047.0 i32) + (local $$t2047.1 i32) + (local $$t2048.0 i32) + (local $$t2048.1 i32) + (local $$t2049.0 i32) + (local $$t2049.1 i32) + (local $$t2050.0 i32) + (local $$t2050.1 i32) + (local $$t2051.0 i32) + (local $$t2051.1 i32) + (local $$t2052.0 i32) + (local $$t2052.1 i32) + (local $$t2053.0 i32) + (local $$t2053.1 i32) + (local $$t2054.0 i32) + (local $$t2054.1 i32) + (local $$t2055.0 i32) + (local $$t2055.1 i32) + (local $$t2056.0 i32) + (local $$t2056.1 i32) + (local $$t2057.0 i32) + (local $$t2057.1 i32) + (local $$t2058.0 i32) + (local $$t2058.1 i32) + (local $$t2059.0 i32) + (local $$t2059.1 i32) + (local $$t2060.0 i32) + (local $$t2060.1 i32) + (local $$t2061.0 i32) + (local $$t2061.1 i32) + (local $$t2062.0 i32) + (local $$t2062.1 i32) + (local $$t2063.0 i32) + (local $$t2063.1 i32) + (local $$t2064.0 i32) + (local $$t2064.1 i32) + (local $$t2065.0 i32) + (local $$t2065.1 i32) + (local $$t2066.0 i32) + (local $$t2066.1 i32) + (local $$t2067.0 i32) + (local $$t2067.1 i32) + (local $$t2068.0 i32) + (local $$t2068.1 i32) + (local $$t2069.0 i32) + (local $$t2069.1 i32) + (local $$t2070.0 i32) + (local $$t2070.1 i32) + (local $$t2071.0 i32) + (local $$t2071.1 i32) + (local $$t2072.0 i32) + (local $$t2072.1 i32) + (local $$t2073.0 i32) + (local $$t2073.1 i32) + (local $$t2074.0 i32) + (local $$t2074.1 i32) + (local $$t2075.0 i32) + (local $$t2075.1 i32) + (local $$t2076.0 i32) + (local $$t2076.1 i32) + (local $$t2077.0 i32) + (local $$t2077.1 i32) + (local $$t2078.0 i32) + (local $$t2078.1 i32) + (local $$t2079.0 i32) + (local $$t2079.1 i32) + (local $$t2080.0 i32) + (local $$t2080.1 i32) + (local $$t2081.0 i32) + (local $$t2081.1 i32) + (local $$t2082.0 i32) + (local $$t2082.1 i32) + (local $$t2083.0 i32) + (local $$t2083.1 i32) + (local $$t2084.0 i32) + (local $$t2084.1 i32) + (local $$t2085.0 i32) + (local $$t2085.1 i32) + (local $$t2086.0 i32) + (local $$t2086.1 i32) + (local $$t2087.0 i32) + (local $$t2087.1 i32) + (local $$t2088.0 i32) + (local $$t2088.1 i32) + (local $$t2089.0 i32) + (local $$t2089.1 i32) + (local $$t2090.0 i32) + (local $$t2090.1 i32) + (local $$t2091.0 i32) + (local $$t2091.1 i32) + (local $$t2092.0 i32) + (local $$t2092.1 i32) + (local $$t2093.0 i32) + (local $$t2093.1 i32) + (local $$t2094.0 i32) + (local $$t2094.1 i32) + (local $$t2095.0 i32) + (local $$t2095.1 i32) + (local $$t2096.0 i32) + (local $$t2096.1 i32) + (local $$t2097.0 i32) + (local $$t2097.1 i32) + (local $$t2098.0 i32) + (local $$t2098.1 i32) + (local $$t2099.0 i32) + (local $$t2099.1 i32) + (local $$t2100.0 i32) + (local $$t2100.1 i32) + (local $$t2101.0 i32) + (local $$t2101.1 i32) + (local $$t2102.0 i32) + (local $$t2102.1 i32) + (local $$t2103.0 i32) + (local $$t2103.1 i32) + (local $$t2104.0 i32) + (local $$t2104.1 i32) + (local $$t2105.0 i32) + (local $$t2105.1 i32) + (local $$t2106.0 i32) + (local $$t2106.1 i32) + (local $$t2107.0 i32) + (local $$t2107.1 i32) + (local $$t2108.0 i32) + (local $$t2108.1 i32) + (local $$t2109.0 i32) + (local $$t2109.1 i32) + (local $$t2110.0 i32) + (local $$t2110.1 i32) + (local $$t2111.0 i32) + (local $$t2111.1 i32) + (local $$t2112.0 i32) + (local $$t2112.1 i32) + (local $$t2113.0 i32) + (local $$t2113.1 i32) + (local $$t2114.0 i32) + (local $$t2114.1 i32) + (local $$t2115.0 i32) + (local $$t2115.1 i32) + (local $$t2116.0 i32) + (local $$t2116.1 i32) + (local $$t2117.0 i32) + (local $$t2117.1 i32) + (local $$t2118.0 i32) + (local $$t2118.1 i32) + (local $$t2119.0 i32) + (local $$t2119.1 i32) + (local $$t2119.2 i32) + (local $$t2119.3 i32) + (local $$t2120.0 i32) + (local $$t2120.1 i32) + (local $$t2121.0 i32) + (local $$t2121.1 i32) + (local $$t2122.0 i32) + (local $$t2122.1 i32) + (local $$t2123.0 i32) + (local $$t2123.1 i32) + (local $$t2124.0 i32) + (local $$t2124.1 i32) + (local $$t2125.0 i32) + (local $$t2125.1 i32) + (local $$t2126.0 i32) + (local $$t2126.1 i32) + (local $$t2127.0 i32) + (local $$t2127.1 i32) + (local $$t2128.0 i32) + (local $$t2128.1 i32) + (local $$t2129.0 i32) + (local $$t2129.1 i32) + (local $$t2130.0 i32) + (local $$t2130.1 i32) + (local $$t2131.0 i32) + (local $$t2131.1 i32) + (local $$t2132.0 i32) + (local $$t2132.1 i32) + (local $$t2133.0 i32) + (local $$t2133.1 i32) + (local $$t2134.0 i32) + (local $$t2134.1 i32) + (local $$t2135.0 i32) + (local $$t2135.1 i32) + (local $$t2136.0 i32) + (local $$t2136.1 i32) + (local $$t2137.0 i32) + (local $$t2137.1 i32) + (local $$t2138.0 i32) + (local $$t2138.1 i32) + (local $$t2139.0 i32) + (local $$t2139.1 i32) + (local $$t2140.0 i32) + (local $$t2140.1 i32) + (local $$t2141.0 i32) + (local $$t2141.1 i32) + (local $$t2142.0 i32) + (local $$t2142.1 i32) + (local $$t2143.0 i32) + (local $$t2143.1 i32) + (local $$t2144.0 i32) + (local $$t2144.1 i32) + (local $$t2145.0 i32) + (local $$t2145.1 i32) + (local $$t2146.0 i32) + (local $$t2146.1 i32) + (local $$t2147.0 i32) + (local $$t2147.1 i32) + (local $$t2148.0 i32) + (local $$t2148.1 i32) + (local $$t2149.0 i32) + (local $$t2149.1 i32) + (local $$t2150.0 i32) + (local $$t2150.1 i32) + (local $$t2151.0 i32) + (local $$t2151.1 i32) + (local $$t2152.0 i32) + (local $$t2152.1 i32) + (local $$t2153.0 i32) + (local $$t2153.1 i32) + (local $$t2154.0 i32) + (local $$t2154.1 i32) + (local $$t2155.0 i32) + (local $$t2155.1 i32) + (local $$t2156.0 i32) + (local $$t2156.1 i32) + (local $$t2157.0 i32) + (local $$t2157.1 i32) + (local $$t2158.0 i32) + (local $$t2158.1 i32) + (local $$t2159.0 i32) + (local $$t2159.1 i32) + (local $$t2160.0 i32) + (local $$t2160.1 i32) + (local $$t2161.0 i32) + (local $$t2161.1 i32) + (local $$t2162.0 i32) + (local $$t2162.1 i32) + (local $$t2163.0 i32) + (local $$t2163.1 i32) + (local $$t2164.0 i32) + (local $$t2164.1 i32) + (local $$t2165.0 i32) + (local $$t2165.1 i32) + (local $$t2166.0 i32) + (local $$t2166.1 i32) + (local $$t2167.0 i32) + (local $$t2167.1 i32) + (local $$t2168.0 i32) + (local $$t2168.1 i32) + (local $$t2169.0 i32) + (local $$t2169.1 i32) + (local $$t2170.0 i32) + (local $$t2170.1 i32) + (local $$t2171.0 i32) + (local $$t2171.1 i32) + (local $$t2172.0 i32) + (local $$t2172.1 i32) + (local $$t2173.0 i32) + (local $$t2173.1 i32) + (local $$t2174.0 i32) + (local $$t2174.1 i32) + (local $$t2175.0 i32) + (local $$t2175.1 i32) + (local $$t2176.0 i32) + (local $$t2176.1 i32) + (local $$t2177.0 i32) + (local $$t2177.1 i32) + (local $$t2178.0 i32) + (local $$t2178.1 i32) + (local $$t2179.0 i32) + (local $$t2179.1 i32) + (local $$t2180.0 i32) + (local $$t2180.1 i32) + (local $$t2181.0 i32) + (local $$t2181.1 i32) + (local $$t2182.0 i32) + (local $$t2182.1 i32) + (local $$t2183.0 i32) + (local $$t2183.1 i32) + (local $$t2184.0 i32) + (local $$t2184.1 i32) + (local $$t2185.0 i32) + (local $$t2185.1 i32) + (local $$t2186.0 i32) + (local $$t2186.1 i32) + (local $$t2187.0 i32) + (local $$t2187.1 i32) + (local $$t2188.0 i32) + (local $$t2188.1 i32) + (local $$t2189.0 i32) + (local $$t2189.1 i32) + (local $$t2190.0 i32) + (local $$t2190.1 i32) + (local $$t2191.0 i32) + (local $$t2191.1 i32) + (local $$t2192.0 i32) + (local $$t2192.1 i32) + (local $$t2193.0 i32) + (local $$t2193.1 i32) + (local $$t2194.0 i32) + (local $$t2194.1 i32) + (local $$t2195.0 i32) + (local $$t2195.1 i32) + (local $$t2196.0 i32) + (local $$t2196.1 i32) + (local $$t2197.0 i32) + (local $$t2197.1 i32) + (local $$t2198.0 i32) + (local $$t2198.1 i32) + (local $$t2199.0 i32) + (local $$t2199.1 i32) + (local $$t2200.0 i32) + (local $$t2200.1 i32) + (local $$t2201.0 i32) + (local $$t2201.1 i32) + (local $$t2202.0 i32) + (local $$t2202.1 i32) + (local $$t2203.0 i32) + (local $$t2203.1 i32) + (local $$t2204.0 i32) + (local $$t2204.1 i32) + (local $$t2205.0 i32) + (local $$t2205.1 i32) + (local $$t2206.0 i32) + (local $$t2206.1 i32) + (local $$t2207.0 i32) + (local $$t2207.1 i32) + (local $$t2208.0 i32) + (local $$t2208.1 i32) + (local $$t2209.0 i32) + (local $$t2209.1 i32) + (local $$t2210.0 i32) + (local $$t2210.1 i32) + (local $$t2211.0 i32) + (local $$t2211.1 i32) + (local $$t2212.0 i32) + (local $$t2212.1 i32) + (local $$t2213.0 i32) + (local $$t2213.1 i32) + (local $$t2214.0 i32) + (local $$t2214.1 i32) + (local $$t2215.0 i32) + (local $$t2215.1 i32) + (local $$t2216.0 i32) + (local $$t2216.1 i32) + (local $$t2217.0 i32) + (local $$t2217.1 i32) + (local $$t2218.0 i32) + (local $$t2218.1 i32) + (local $$t2219.0 i32) + (local $$t2219.1 i32) + (local $$t2220.0 i32) + (local $$t2220.1 i32) + (local $$t2221.0 i32) + (local $$t2221.1 i32) + (local $$t2222.0 i32) + (local $$t2222.1 i32) + (local $$t2223.0 i32) + (local $$t2223.1 i32) + (local $$t2224.0 i32) + (local $$t2224.1 i32) + (local $$t2225.0 i32) + (local $$t2225.1 i32) + (local $$t2226.0 i32) + (local $$t2226.1 i32) + (local $$t2227.0 i32) + (local $$t2227.1 i32) + (local $$t2228.0 i32) + (local $$t2228.1 i32) + (local $$t2229.0 i32) + (local $$t2229.1 i32) + (local $$t2230.0 i32) + (local $$t2230.1 i32) + (local $$t2231.0 i32) + (local $$t2231.1 i32) + (local $$t2232.0 i32) + (local $$t2232.1 i32) + (local $$t2233.0 i32) + (local $$t2233.1 i32) + (local $$t2234.0 i32) + (local $$t2234.1 i32) + (local $$t2235.0 i32) + (local $$t2235.1 i32) + (local $$t2236.0 i32) + (local $$t2236.1 i32) + (local $$t2237.0 i32) + (local $$t2237.1 i32) + (local $$t2238.0 i32) + (local $$t2238.1 i32) + (local $$t2239.0 i32) + (local $$t2239.1 i32) + (local $$t2240.0 i32) + (local $$t2240.1 i32) + (local $$t2241.0 i32) + (local $$t2241.1 i32) + (local $$t2242.0 i32) + (local $$t2242.1 i32) + (local $$t2243.0 i32) + (local $$t2243.1 i32) + (local $$t2244.0 i32) + (local $$t2244.1 i32) + (local $$t2245.0 i32) + (local $$t2245.1 i32) + (local $$t2246.0 i32) + (local $$t2246.1 i32) + (local $$t2247.0 i32) + (local $$t2247.1 i32) + (local $$t2248.0 i32) + (local $$t2248.1 i32) + (local $$t2249.0 i32) + (local $$t2249.1 i32) + (local $$t2250.0 i32) + (local $$t2250.1 i32) + (local $$t2251.0 i32) + (local $$t2251.1 i32) + (local $$t2252.0 i32) + (local $$t2252.1 i32) + (local $$t2253.0 i32) + (local $$t2253.1 i32) + (local $$t2254.0 i32) + (local $$t2254.1 i32) + (local $$t2255.0 i32) + (local $$t2255.1 i32) + (local $$t2256.0 i32) + (local $$t2256.1 i32) + (local $$t2257.0 i32) + (local $$t2257.1 i32) + (local $$t2258.0 i32) + (local $$t2258.1 i32) + (local $$t2259.0 i32) + (local $$t2259.1 i32) + (local $$t2260.0 i32) + (local $$t2260.1 i32) + (local $$t2261.0 i32) + (local $$t2261.1 i32) + (local $$t2262.0 i32) + (local $$t2262.1 i32) + (local $$t2263.0 i32) + (local $$t2263.1 i32) + (local $$t2264.0 i32) + (local $$t2264.1 i32) + (local $$t2265.0 i32) + (local $$t2265.1 i32) + (local $$t2266.0 i32) + (local $$t2266.1 i32) + (local $$t2267.0 i32) + (local $$t2267.1 i32) + (local $$t2268.0 i32) + (local $$t2268.1 i32) + (local $$t2269.0 i32) + (local $$t2269.1 i32) + (local $$t2270.0 i32) + (local $$t2270.1 i32) + (local $$t2271.0 i32) + (local $$t2271.1 i32) + (local $$t2272.0 i32) + (local $$t2272.1 i32) + (local $$t2273.0 i32) + (local $$t2273.1 i32) + (local $$t2274.0 i32) + (local $$t2274.1 i32) + (local $$t2275.0 i32) + (local $$t2275.1 i32) + (local $$t2276.0 i32) + (local $$t2276.1 i32) + (local $$t2277.0 i32) + (local $$t2277.1 i32) + (local $$t2278.0 i32) + (local $$t2278.1 i32) + (local $$t2279.0 i32) + (local $$t2279.1 i32) + (local $$t2280.0 i32) + (local $$t2280.1 i32) + (local $$t2281.0 i32) + (local $$t2281.1 i32) + (local $$t2282.0 i32) + (local $$t2282.1 i32) + (local $$t2283.0 i32) + (local $$t2283.1 i32) + (local $$t2284.0 i32) + (local $$t2284.1 i32) + (local $$t2285.0 i32) + (local $$t2285.1 i32) + (local $$t2286.0 i32) + (local $$t2286.1 i32) + (local $$t2287.0 i32) + (local $$t2287.1 i32) + (local $$t2288.0 i32) + (local $$t2288.1 i32) + (local $$t2289.0 i32) + (local $$t2289.1 i32) + (local $$t2290.0 i32) + (local $$t2290.1 i32) + (local $$t2291.0 i32) + (local $$t2291.1 i32) + (local $$t2292.0 i32) + (local $$t2292.1 i32) + (local $$t2293.0 i32) + (local $$t2293.1 i32) + (local $$t2294.0 i32) + (local $$t2294.1 i32) + (local $$t2295.0 i32) + (local $$t2295.1 i32) + (local $$t2296.0 i32) + (local $$t2296.1 i32) + (local $$t2297.0 i32) + (local $$t2297.1 i32) + (local $$t2298.0 i32) + (local $$t2298.1 i32) + (local $$t2299.0 i32) + (local $$t2299.1 i32) + (local $$t2300.0 i32) + (local $$t2300.1 i32) + (local $$t2301.0 i32) + (local $$t2301.1 i32) + (local $$t2302.0 i32) + (local $$t2302.1 i32) + (local $$t2303.0 i32) + (local $$t2303.1 i32) + (local $$t2304.0 i32) + (local $$t2304.1 i32) + (local $$t2305.0 i32) + (local $$t2305.1 i32) + (local $$t2306.0 i32) + (local $$t2306.1 i32) + (local $$t2307.0 i32) + (local $$t2307.1 i32) + (local $$t2308.0 i32) + (local $$t2308.1 i32) + (local $$t2309.0 i32) + (local $$t2309.1 i32) + (local $$t2310.0 i32) + (local $$t2310.1 i32) + (local $$t2311.0 i32) + (local $$t2311.1 i32) + (local $$t2312.0 i32) + (local $$t2312.1 i32) + (local $$t2313.0 i32) + (local $$t2313.1 i32) + (local $$t2314.0 i32) + (local $$t2314.1 i32) + (local $$t2315.0 i32) + (local $$t2315.1 i32) + (local $$t2316.0 i32) + (local $$t2316.1 i32) + (local $$t2317.0 i32) + (local $$t2317.1 i32) + (local $$t2317.2 i32) + (local $$t2317.3 i32) + (local $$t2318 i32) + (local $$t2319 i32) + (local $$t2320 i32) + (local $$t2321 i32) + (local $$t2322 i32) + (local $$t2323.0 i32) + (local $$t2323.1 i32) + (local $$t2324.0 i32) + (local $$t2324.1 i32) + (local $$t2325.0 i32) + (local $$t2325.1 i32) + (local $$t2326.0 i32) + (local $$t2326.1 i32) + (local $$t2327.0 i32) + (local $$t2327.1 i32) + (local $$t2328.0 i32) + (local $$t2328.1 i32) + (local $$t2329.0 i32) + (local $$t2329.1 i32) + (local $$t2330.0 i32) + (local $$t2330.1 i32) + (local $$t2331.0 i32) + (local $$t2331.1 i32) + (local $$t2332.0 i32) + (local $$t2332.1 i32) + (local $$t2333.0 i32) + (local $$t2333.1 i32) + (local $$t2334.0 i32) + (local $$t2334.1 i32) + (local $$t2335.0 i32) + (local $$t2335.1 i32) + (local $$t2336.0 i32) + (local $$t2336.1 i32) + (local $$t2337.0 i32) + (local $$t2337.1 i32) + (local $$t2338.0 i32) + (local $$t2338.1 i32) + (local $$t2339.0 i32) + (local $$t2339.1 i32) + (local $$t2340.0 i32) + (local $$t2340.1 i32) + (local $$t2341.0 i32) + (local $$t2341.1 i32) + (local $$t2342.0 i32) + (local $$t2342.1 i32) + (local $$t2343.0 i32) + (local $$t2343.1 i32) + (local $$t2344.0 i32) + (local $$t2344.1 i32) + (local $$t2345.0 i32) + (local $$t2345.1 i32) + (local $$t2346.0 i32) + (local $$t2346.1 i32) + (local $$t2346.2 i32) + (local $$t2346.3 i32) + (local $$t2347.0 i32) + (local $$t2347.1 i32) + (local $$t2348.0 i32) + (local $$t2348.1 i32) + (local $$t2349.0 i32) + (local $$t2349.1 i32) + (local $$t2350.0 i32) + (local $$t2350.1 i32) + (local $$t2351.0 i32) + (local $$t2351.1 i32) + (local $$t2352.0 i32) + (local $$t2352.1 i32) + (local $$t2353.0 i32) + (local $$t2353.1 i32) + (local $$t2354.0 i32) + (local $$t2354.1 i32) + (local $$t2355.0 i32) + (local $$t2355.1 i32) + (local $$t2356.0 i32) + (local $$t2356.1 i32) + (local $$t2357.0 i32) + (local $$t2357.1 i32) + (local $$t2358.0 i32) + (local $$t2358.1 i32) + (local $$t2359.0 i32) + (local $$t2359.1 i32) + (local $$t2360.0 i32) + (local $$t2360.1 i32) + (local $$t2361.0 i32) + (local $$t2361.1 i32) + (local $$t2362.0 i32) + (local $$t2362.1 i32) + (local $$t2363.0 i32) + (local $$t2363.1 i32) + (local $$t2364.0 i32) + (local $$t2364.1 i32) + (local $$t2365.0 i32) + (local $$t2365.1 i32) + (local $$t2366.0 i32) + (local $$t2366.1 i32) + (local $$t2367.0 i32) + (local $$t2367.1 i32) + (local $$t2368.0 i32) + (local $$t2368.1 i32) + (local $$t2368.2 i32) + (local $$t2368.3 i32) + (local $$t2369.0 i32) + (local $$t2369.1 i32) + (local $$t2370.0 i32) + (local $$t2370.1 i32) + (local $$t2371.0 i32) + (local $$t2371.1 i32) + (local $$t2372.0 i32) + (local $$t2372.1 i32) + (local $$t2373.0 i32) + (local $$t2373.1 i32) + (local $$t2374.0 i32) + (local $$t2374.1 i32) + (local $$t2375.0 i32) + (local $$t2375.1 i32) + (local $$t2376.0 i32) + (local $$t2376.1 i32) + (local $$t2377.0 i32) + (local $$t2377.1 i32) + (local $$t2378.0 i32) + (local $$t2378.1 i32) + (local $$t2379.0 i32) + (local $$t2379.1 i32) + (local $$t2380.0 i32) + (local $$t2380.1 i32) + (local $$t2381.0 i32) + (local $$t2381.1 i32) + (local $$t2382.0 i32) + (local $$t2382.1 i32) + (local $$t2383.0 i32) + (local $$t2383.1 i32) + (local $$t2384.0 i32) + (local $$t2384.1 i32) + (local $$t2385.0 i32) + (local $$t2385.1 i32) + (local $$t2386.0 i32) + (local $$t2386.1 i32) + (local $$t2387.0 i32) + (local $$t2387.1 i32) + (local $$t2388.0 i32) + (local $$t2388.1 i32) + (local $$t2389.0 i32) + (local $$t2389.1 i32) + (local $$t2390.0 i32) + (local $$t2390.1 i32) + (local $$t2390.2 i32) + (local $$t2390.3 i32) + (local $$t2391.0 i32) + (local $$t2391.1 i32) + (local $$t2392.0 i32) + (local $$t2392.1 i32) + (local $$t2393.0 i32) + (local $$t2393.1 i32) + (local $$t2394.0 i32) + (local $$t2394.1 i32) + (local $$t2395.0 i32) + (local $$t2395.1 i32) + (local $$t2396.0 i32) + (local $$t2396.1 i32) + (local $$t2397.0 i32) + (local $$t2397.1 i32) + (local $$t2398.0 i32) + (local $$t2398.1 i32) + (local $$t2399.0 i32) + (local $$t2399.1 i32) + (local $$t2400.0 i32) + (local $$t2400.1 i32) + (local $$t2401.0 i32) + (local $$t2401.1 i32) + (local $$t2402.0 i32) + (local $$t2402.1 i32) + (local $$t2402.2 i32) + (local $$t2402.3 i32) + (local $$t2403.0 i32) + (local $$t2403.1 i32) + (local $$t2404.0 i32) + (local $$t2404.1 i32) + (local $$t2405.0 i32) + (local $$t2405.1 i32) + (local $$t2406.0 i32) + (local $$t2406.1 i32) + (local $$t2407.0 i32) + (local $$t2407.1 i32) + (local $$t2408.0 i32) + (local $$t2408.1 i32) + (local $$t2409.0 i32) + (local $$t2409.1 i32) + (local $$t2410.0 i32) + (local $$t2410.1 i32) + (local $$t2411.0 i32) + (local $$t2411.1 i32) + (local $$t2412.0 i32) + (local $$t2412.1 i32) + (local $$t2413.0 i32) + (local $$t2413.1 i32) + (local $$t2414.0 i32) + (local $$t2414.1 i32) + (local $$t2415.0 i32) + (local $$t2415.1 i32) + (local $$t2416.0 i32) + (local $$t2416.1 i32) + (local $$t2417.0 i32) + (local $$t2417.1 i32) + (local $$t2418.0 i32) + (local $$t2418.1 i32) + (local $$t2419.0 i32) + (local $$t2419.1 i32) + (local $$t2420.0 i32) + (local $$t2420.1 i32) + (local $$t2421.0 i32) + (local $$t2421.1 i32) + (local $$t2422.0 i32) + (local $$t2422.1 i32) + (local $$t2423.0 i32) + (local $$t2423.1 i32) + (local $$t2424.0 i32) + (local $$t2424.1 i32) + (local $$t2424.2 i32) + (local $$t2424.3 i32) + (local $$t2425.0 i32) + (local $$t2425.1 i32) + (local $$t2426.0 i32) + (local $$t2426.1 i32) + (local $$t2427.0 i32) + (local $$t2427.1 i32) + (local $$t2428.0 i32) + (local $$t2428.1 i32) + (local $$t2429.0 i32) + (local $$t2429.1 i32) + (local $$t2430.0 i32) + (local $$t2430.1 i32) + (local $$t2431.0 i32) + (local $$t2431.1 i32) + (local $$t2432.0 i32) + (local $$t2432.1 i32) + (local $$t2433.0 i32) + (local $$t2433.1 i32) + (local $$t2434.0 i32) + (local $$t2434.1 i32) + (local $$t2435.0 i32) + (local $$t2435.1 i32) + (local $$t2436.0 i32) + (local $$t2436.1 i32) + (local $$t2437.0 i32) + (local $$t2437.1 i32) + (local $$t2438.0 i32) + (local $$t2438.1 i32) + (local $$t2439.0 i32) + (local $$t2439.1 i32) + (local $$t2440.0 i32) + (local $$t2440.1 i32) + (local $$t2441.0 i32) + (local $$t2441.1 i32) + (local $$t2442.0 i32) + (local $$t2442.1 i32) + (local $$t2443.0 i32) + (local $$t2443.1 i32) + (local $$t2444.0 i32) + (local $$t2444.1 i32) + (local $$t2445.0 i32) + (local $$t2445.1 i32) + (local $$t2446.0 i32) + (local $$t2446.1 i32) + (local $$t2446.2 i32) + (local $$t2446.3 i32) + (local $$t2447.0 i32) + (local $$t2447.1 i32) + (local $$t2448.0 i32) + (local $$t2448.1 i32) + (local $$t2449.0 i32) + (local $$t2449.1 i32) + (local $$t2450.0 i32) + (local $$t2450.1 i32) + (local $$t2451.0 i32) + (local $$t2451.1 i32) + (local $$t2452.0 i32) + (local $$t2452.1 i32) + (local $$t2453.0 i32) + (local $$t2453.1 i32) + (local $$t2454.0 i32) + (local $$t2454.1 i32) + (local $$t2455.0 i32) + (local $$t2455.1 i32) + (local $$t2456.0 i32) + (local $$t2456.1 i32) + (local $$t2457.0 i32) + (local $$t2457.1 i32) + (local $$t2458.0 i32) + (local $$t2458.1 i32) + (local $$t2459.0 i32) + (local $$t2459.1 i32) + (local $$t2460.0 i32) + (local $$t2460.1 i32) + (local $$t2461.0 i32) + (local $$t2461.1 i32) + (local $$t2462.0 i32) + (local $$t2462.1 i32) + (local $$t2463.0 i32) + (local $$t2463.1 i32) + (local $$t2464.0 i32) + (local $$t2464.1 i32) + (local $$t2465.0 i32) + (local $$t2465.1 i32) + (local $$t2466.0 i32) + (local $$t2466.1 i32) + (local $$t2467.0 i32) + (local $$t2467.1 i32) + (local $$t2468.0 i32) + (local $$t2468.1 i32) + (local $$t2468.2 i32) + (local $$t2468.3 i32) + (local $$t2469.0 i32) + (local $$t2469.1 i32) + (local $$t2470.0 i32) + (local $$t2470.1 i32) + (local $$t2471.0 i32) + (local $$t2471.1 i32) + (local $$t2472.0 i32) + (local $$t2472.1 i32) + (local $$t2473.0 i32) + (local $$t2473.1 i32) + (local $$t2474.0 i32) + (local $$t2474.1 i32) + (local $$t2475.0 i32) + (local $$t2475.1 i32) + (local $$t2476.0 i32) + (local $$t2476.1 i32) + (local $$t2477.0 i32) + (local $$t2477.1 i32) + (local $$t2478.0 i32) + (local $$t2478.1 i32) + (local $$t2479.0 i32) + (local $$t2479.1 i32) + (local $$t2480.0 i32) + (local $$t2480.1 i32) + (local $$t2481.0 i32) + (local $$t2481.1 i32) + (local $$t2482.0 i32) + (local $$t2482.1 i32) + (local $$t2483.0 i32) + (local $$t2483.1 i32) + (local $$t2484.0 i32) + (local $$t2484.1 i32) + (local $$t2485.0 i32) + (local $$t2485.1 i32) + (local $$t2486.0 i32) + (local $$t2486.1 i32) + (local $$t2487.0 i32) + (local $$t2487.1 i32) + (local $$t2488.0 i32) + (local $$t2488.1 i32) + (local $$t2489.0 i32) + (local $$t2489.1 i32) + (local $$t2490.0 i32) + (local $$t2490.1 i32) + (local $$t2490.2 i32) + (local $$t2490.3 i32) + (local $$t2491.0 i32) + (local $$t2491.1 i32) + (local $$t2492.0 i32) + (local $$t2492.1 i32) + (local $$t2493.0 i32) + (local $$t2493.1 i32) + (local $$t2494.0 i32) + (local $$t2494.1 i32) + (local $$t2495.0 i32) + (local $$t2495.1 i32) + (local $$t2496.0 i32) + (local $$t2496.1 i32) + (local $$t2497.0 i32) + (local $$t2497.1 i32) + (local $$t2498.0 i32) + (local $$t2498.1 i32) + (local $$t2499.0 i32) + (local $$t2499.1 i32) + (local $$t2500.0 i32) + (local $$t2500.1 i32) + (local $$t2501.0 i32) + (local $$t2501.1 i32) + (local $$t2502.0 i32) + (local $$t2502.1 i32) + (local $$t2503.0 i32) + (local $$t2503.1 i32) + (local $$t2504.0 i32) + (local $$t2504.1 i32) + (local $$t2505.0 i32) + (local $$t2505.1 i32) + (local $$t2506.0 i32) + (local $$t2506.1 i32) + (local $$t2507.0 i32) + (local $$t2507.1 i32) + (local $$t2508.0 i32) + (local $$t2508.1 i32) + (local $$t2509.0 i32) + (local $$t2509.1 i32) + (local $$t2510.0 i32) + (local $$t2510.1 i32) + (local $$t2511.0 i32) + (local $$t2511.1 i32) + (local $$t2512.0 i32) + (local $$t2512.1 i32) + (local $$t2512.2 i32) + (local $$t2512.3 i32) + (local $$t2513.0 i32) + (local $$t2513.1 i32) + (local $$t2514.0 i32) + (local $$t2514.1 i32) + (local $$t2515.0 i32) + (local $$t2515.1 i32) + (local $$t2516.0 i32) + (local $$t2516.1 i32) + (local $$t2517.0 i32) + (local $$t2517.1 i32) + (local $$t2518.0 i32) + (local $$t2518.1 i32) + (local $$t2519.0 i32) + (local $$t2519.1 i32) + (local $$t2519.2 i32) + (local $$t2519.3 i32) + (local $$t2520.0 i32) + (local $$t2520.1 i32) + (local $$t2521.0 i32) + (local $$t2521.1 i32) + (local $$t2522.0 i32) + (local $$t2522.1 i32) + (local $$t2523.0 i32) + (local $$t2523.1 i32) + (local $$t2524.0 i32) + (local $$t2524.1 i32) + (local $$t2525.0 i32) + (local $$t2525.1 i32) + (local $$t2526.0 i32) + (local $$t2526.1 i32) + (local $$t2527.0 i32) + (local $$t2527.1 i32) + (local $$t2528.0 i32) + (local $$t2528.1 i32) + (local $$t2529.0 i32) + (local $$t2529.1 i32) + (local $$t2530.0 i32) + (local $$t2530.1 i32) + (local $$t2531.0 i32) + (local $$t2531.1 i32) + (local $$t2532.0 i32) + (local $$t2532.1 i32) + (local $$t2533.0 i32) + (local $$t2533.1 i32) + (local $$t2534.0 i32) + (local $$t2534.1 i32) + (local $$t2535.0 i32) + (local $$t2535.1 i32) + (local $$t2536.0 i32) + (local $$t2536.1 i32) + (local $$t2537.0 i32) + (local $$t2537.1 i32) + (local $$t2538.0 i32) + (local $$t2538.1 i32) + (local $$t2539.0 i32) + (local $$t2539.1 i32) + (local $$t2540.0 i32) + (local $$t2540.1 i32) + (local $$t2541.0 i32) + (local $$t2541.1 i32) + (local $$t2541.2 i32) + (local $$t2541.3 i32) + (local $$t2542.0 i32) + (local $$t2542.1 i32) + (local $$t2543.0 i32) + (local $$t2543.1 i32) + (local $$t2544.0 i32) + (local $$t2544.1 i32) + (local $$t2545.0 i32) + (local $$t2545.1 i32) + (local $$t2546.0 i32) + (local $$t2546.1 i32) + (local $$t2547.0 i32) + (local $$t2547.1 i32) + (local $$t2548.0 i32) + (local $$t2548.1 i32) + (local $$t2549.0 i32) + (local $$t2549.1 i32) + (local $$t2550.0 i32) + (local $$t2550.1 i32) + (local $$t2551.0 i32) + (local $$t2551.1 i32) + (local $$t2552.0 i32) + (local $$t2552.1 i32) + (local $$t2553.0 i32) + (local $$t2553.1 i32) + (local $$t2554.0 i32) + (local $$t2554.1 i32) + (local $$t2555.0 i32) + (local $$t2555.1 i32) + (local $$t2556.0 i32) + (local $$t2556.1 i32) + (local $$t2557.0 i32) + (local $$t2557.1 i32) + (local $$t2558.0 i32) + (local $$t2558.1 i32) + (local $$t2559.0 i32) + (local $$t2559.1 i32) + (local $$t2560.0 i32) + (local $$t2560.1 i32) + (local $$t2561.0 i32) + (local $$t2561.1 i32) + (local $$t2562.0 i32) + (local $$t2562.1 i32) + (local $$t2563.0 i32) + (local $$t2563.1 i32) + (local $$t2564.0 i32) + (local $$t2564.1 i32) + (local $$t2565.0 i32) + (local $$t2565.1 i32) + (local $$t2566.0 i32) + (local $$t2566.1 i32) + (local $$t2567.0 i32) + (local $$t2567.1 i32) + (local $$t2568.0 i32) + (local $$t2568.1 i32) + (local $$t2569.0 i32) + (local $$t2569.1 i32) + (local $$t2570.0 i32) + (local $$t2570.1 i32) + (local $$t2571.0 i32) + (local $$t2571.1 i32) + (local $$t2572.0 i32) + (local $$t2572.1 i32) + (local $$t2573.0 i32) + (local $$t2573.1 i32) + (local $$t2574.0 i32) + (local $$t2574.1 i32) + (local $$t2575.0 i32) + (local $$t2575.1 i32) + (local $$t2576.0 i32) + (local $$t2576.1 i32) + (local $$t2577.0 i32) + (local $$t2577.1 i32) + (local $$t2578.0 i32) + (local $$t2578.1 i32) + (local $$t2579.0 i32) + (local $$t2579.1 i32) + (local $$t2580.0 i32) + (local $$t2580.1 i32) + (local $$t2581.0 i32) + (local $$t2581.1 i32) + (local $$t2582.0 i32) + (local $$t2582.1 i32) + (local $$t2583.0 i32) + (local $$t2583.1 i32) + (local $$t2584.0 i32) + (local $$t2584.1 i32) + (local $$t2585.0 i32) + (local $$t2585.1 i32) + (local $$t2586.0 i32) + (local $$t2586.1 i32) + (local $$t2587.0 i32) + (local $$t2587.1 i32) + (local $$t2588.0 i32) + (local $$t2588.1 i32) + (local $$t2589.0 i32) + (local $$t2589.1 i32) + (local $$t2590.0 i32) + (local $$t2590.1 i32) + (local $$t2591.0 i32) + (local $$t2591.1 i32) + (local $$t2592.0 i32) + (local $$t2592.1 i32) + (local $$t2593.0 i32) + (local $$t2593.1 i32) + (local $$t2594.0 i32) + (local $$t2594.1 i32) + (local $$t2595.0 i32) + (local $$t2595.1 i32) + (local $$t2596.0 i32) + (local $$t2596.1 i32) + (local $$t2597.0 i32) + (local $$t2597.1 i32) + (local $$t2598.0 i32) + (local $$t2598.1 i32) + (local $$t2599.0 i32) + (local $$t2599.1 i32) + (local $$t2600.0 i32) + (local $$t2600.1 i32) + (local $$t2601.0 i32) + (local $$t2601.1 i32) + (local $$t2602.0 i32) + (local $$t2602.1 i32) + (local $$t2603.0 i32) + (local $$t2603.1 i32) + (local $$t2604.0 i32) + (local $$t2604.1 i32) + (local $$t2605.0 i32) + (local $$t2605.1 i32) + (local $$t2606.0 i32) + (local $$t2606.1 i32) + (local $$t2607.0 i32) + (local $$t2607.1 i32) + (local $$t2608.0 i32) + (local $$t2608.1 i32) + (local $$t2609.0 i32) + (local $$t2609.1 i32) + (local $$t2610.0 i32) + (local $$t2610.1 i32) + (local $$t2611.0 i32) + (local $$t2611.1 i32) + (local $$t2612.0 i32) + (local $$t2612.1 i32) + (local $$t2613.0 i32) + (local $$t2613.1 i32) + (local $$t2614.0 i32) + (local $$t2614.1 i32) + (local $$t2615.0 i32) + (local $$t2615.1 i32) + (local $$t2616.0 i32) + (local $$t2616.1 i32) + (local $$t2617.0 i32) + (local $$t2617.1 i32) + (local $$t2618.0 i32) + (local $$t2618.1 i32) + (local $$t2619.0 i32) + (local $$t2619.1 i32) + (local $$t2620.0 i32) + (local $$t2620.1 i32) + (local $$t2621.0 i32) + (local $$t2621.1 i32) + (local $$t2622.0 i32) + (local $$t2622.1 i32) + (local $$t2623.0 i32) + (local $$t2623.1 i32) + (local $$t2624.0 i32) + (local $$t2624.1 i32) + (local $$t2625.0 i32) + (local $$t2625.1 i32) + (local $$t2626.0 i32) + (local $$t2626.1 i32) + (local $$t2626.2 i32) + (local $$t2626.3 i32) + (local $$t2627.0 i32) + (local $$t2627.1 i32) + (local $$t2628.0 i32) + (local $$t2628.1 i32) + (local $$t2629.0 i32) + (local $$t2629.1 i32) + (local $$t2630.0 i32) + (local $$t2630.1 i32) + (local $$t2631.0 i32) + (local $$t2631.1 i32) + (local $$t2632.0 i32) + (local $$t2632.1 i32) + (local $$t2633.0 i32) + (local $$t2633.1 i32) + (local $$t2634.0 i32) + (local $$t2634.1 i32) + (local $$t2635.0 i32) + (local $$t2635.1 i32) + (local $$t2636.0 i32) + (local $$t2636.1 i32) + (local $$t2637.0 i32) + (local $$t2637.1 i32) + (local $$t2638.0 i32) + (local $$t2638.1 i32) + (local $$t2639.0 i32) + (local $$t2639.1 i32) + (local $$t2640.0 i32) + (local $$t2640.1 i32) + (local $$t2641.0 i32) + (local $$t2641.1 i32) + (local $$t2642.0 i32) + (local $$t2642.1 i32) + (local $$t2643.0 i32) + (local $$t2643.1 i32) + (local $$t2644.0 i32) + (local $$t2644.1 i32) + (local $$t2645.0 i32) + (local $$t2645.1 i32) + (local $$t2646.0 i32) + (local $$t2646.1 i32) + (local $$t2647.0 i32) + (local $$t2647.1 i32) + (local $$t2648.0 i32) + (local $$t2648.1 i32) + (local $$t2649.0 i32) + (local $$t2649.1 i32) + (local $$t2650.0 i32) + (local $$t2650.1 i32) + (local $$t2651.0 i32) + (local $$t2651.1 i32) + (local $$t2652.0 i32) + (local $$t2652.1 i32) + (local $$t2653.0 i32) + (local $$t2653.1 i32) + (local $$t2654.0 i32) + (local $$t2654.1 i32) + (local $$t2655.0 i32) + (local $$t2655.1 i32) + (local $$t2656.0 i32) + (local $$t2656.1 i32) + (local $$t2657.0 i32) + (local $$t2657.1 i32) + (local $$t2658.0 i32) + (local $$t2658.1 i32) + (local $$t2659.0 i32) + (local $$t2659.1 i32) + (local $$t2660.0 i32) + (local $$t2660.1 i32) + (local $$t2661.0 i32) + (local $$t2661.1 i32) + (local $$t2662.0 i32) + (local $$t2662.1 i32) + (local $$t2663.0 i32) + (local $$t2663.1 i32) + (local $$t2664.0 i32) + (local $$t2664.1 i32) + (local $$t2665.0 i32) + (local $$t2665.1 i32) + (local $$t2666.0 i32) + (local $$t2666.1 i32) + (local $$t2667.0 i32) + (local $$t2667.1 i32) + (local $$t2668.0 i32) + (local $$t2668.1 i32) + (local $$t2669.0 i32) + (local $$t2669.1 i32) + (local $$t2670.0 i32) + (local $$t2670.1 i32) + (local $$t2671.0 i32) + (local $$t2671.1 i32) + (local $$t2672.0 i32) + (local $$t2672.1 i32) + (local $$t2673.0 i32) + (local $$t2673.1 i32) + (local $$t2674.0 i32) + (local $$t2674.1 i32) + (local $$t2675.0 i32) + (local $$t2675.1 i32) + (local $$t2676.0 i32) + (local $$t2676.1 i32) + (local $$t2677.0 i32) + (local $$t2677.1 i32) + (local $$t2678.0 i32) + (local $$t2678.1 i32) + (local $$t2679.0 i32) + (local $$t2679.1 i32) + (local $$t2680.0 i32) + (local $$t2680.1 i32) + (local $$t2681.0 i32) + (local $$t2681.1 i32) + (local $$t2682.0 i32) + (local $$t2682.1 i32) + (local $$t2683.0 i32) + (local $$t2683.1 i32) + (local $$t2684.0 i32) + (local $$t2684.1 i32) + (local $$t2685.0 i32) + (local $$t2685.1 i32) + (local $$t2686.0 i32) + (local $$t2686.1 i32) + (local $$t2687.0 i32) + (local $$t2687.1 i32) + (local $$t2688.0 i32) + (local $$t2688.1 i32) + (local $$t2689.0 i32) + (local $$t2689.1 i32) + (local $$t2690.0 i32) + (local $$t2690.1 i32) + (local $$t2691.0 i32) + (local $$t2691.1 i32) + (local $$t2692.0 i32) + (local $$t2692.1 i32) + (local $$t2693.0 i32) + (local $$t2693.1 i32) + (local $$t2694.0 i32) + (local $$t2694.1 i32) + (local $$t2695.0 i32) + (local $$t2695.1 i32) + (local $$t2696.0 i32) + (local $$t2696.1 i32) + (local $$t2697.0 i32) + (local $$t2697.1 i32) + (local $$t2698.0 i32) + (local $$t2698.1 i32) + (local $$t2699.0 i32) + (local $$t2699.1 i32) + (local $$t2700.0 i32) + (local $$t2700.1 i32) + (local $$t2701.0 i32) + (local $$t2701.1 i32) + (local $$t2702.0 i32) + (local $$t2702.1 i32) + (local $$t2703.0 i32) + (local $$t2703.1 i32) + (local $$t2704.0 i32) + (local $$t2704.1 i32) + (local $$t2705.0 i32) + (local $$t2705.1 i32) + (local $$t2706.0 i32) + (local $$t2706.1 i32) + (local $$t2707.0 i32) + (local $$t2707.1 i32) + (local $$t2708.0 i32) + (local $$t2708.1 i32) + (local $$t2709.0 i32) + (local $$t2709.1 i32) + (local $$t2709.2 i32) + (local $$t2709.3 i32) + (local $$t2710.0 i32) + (local $$t2710.1 i32) + (local $$t2711.0 i32) + (local $$t2711.1 i32) + (local $$t2712.0 i32) + (local $$t2712.1 i32) + (local $$t2713.0 i32) + (local $$t2713.1 i32) + (local $$t2714.0 i32) + (local $$t2714.1 i32) + (local $$t2715.0 i32) + (local $$t2715.1 i32) + (local $$t2716.0 i32) + (local $$t2716.1 i32) + (local $$t2717.0 i32) + (local $$t2717.1 i32) + (local $$t2718.0 i32) + (local $$t2718.1 i32) + (local $$t2719.0 i32) + (local $$t2719.1 i32) + (local $$t2720.0 i32) + (local $$t2720.1 i32) + (local $$t2721.0 i32) + (local $$t2721.1 i32) + (local $$t2722.0 i32) + (local $$t2722.1 i32) + (local $$t2723.0 i32) + (local $$t2723.1 i32) + (local $$t2724.0 i32) + (local $$t2724.1 i32) + (local $$t2725.0 i32) + (local $$t2725.1 i32) + (local $$t2726.0 i32) + (local $$t2726.1 i32) + (local $$t2727.0 i32) + (local $$t2727.1 i32) + (local $$t2728.0 i32) + (local $$t2728.1 i32) + (local $$t2729.0 i32) + (local $$t2729.1 i32) + (local $$t2730.0 i32) + (local $$t2730.1 i32) + (local $$t2731.0 i32) + (local $$t2731.1 i32) + (local $$t2732.0 i32) + (local $$t2732.1 i32) + (local $$t2733.0 i32) + (local $$t2733.1 i32) + (local $$t2734.0 i32) + (local $$t2734.1 i32) + (local $$t2735.0 i32) + (local $$t2735.1 i32) + (local $$t2736.0 i32) + (local $$t2736.1 i32) + (local $$t2737.0 i32) + (local $$t2737.1 i32) + (local $$t2738.0 i32) + (local $$t2738.1 i32) + (local $$t2739.0 i32) + (local $$t2739.1 i32) + (local $$t2740.0 i32) + (local $$t2740.1 i32) + (local $$t2741.0 i32) + (local $$t2741.1 i32) + (local $$t2742.0 i32) + (local $$t2742.1 i32) + (local $$t2743.0 i32) + (local $$t2743.1 i32) + (local $$t2744.0 i32) + (local $$t2744.1 i32) + (local $$t2745.0 i32) + (local $$t2745.1 i32) + (local $$t2746.0 i32) + (local $$t2746.1 i32) + (local $$t2747.0 i32) + (local $$t2747.1 i32) + (local $$t2748.0 i32) + (local $$t2748.1 i32) + (local $$t2749.0 i32) + (local $$t2749.1 i32) + (local $$t2750.0 i32) + (local $$t2750.1 i32) + (local $$t2751.0 i32) + (local $$t2751.1 i32) + (local $$t2752.0 i32) + (local $$t2752.1 i32) + (local $$t2753.0 i32) + (local $$t2753.1 i32) + (local $$t2754.0 i32) + (local $$t2754.1 i32) + (local $$t2755.0 i32) + (local $$t2755.1 i32) + (local $$t2756.0 i32) + (local $$t2756.1 i32) + (local $$t2757.0 i32) + (local $$t2757.1 i32) + (local $$t2758.0 i32) + (local $$t2758.1 i32) + (local $$t2759.0 i32) + (local $$t2759.1 i32) + (local $$t2760.0 i32) + (local $$t2760.1 i32) + (local $$t2761.0 i32) + (local $$t2761.1 i32) + (local $$t2762.0 i32) + (local $$t2762.1 i32) + (local $$t2763.0 i32) + (local $$t2763.1 i32) + (local $$t2764.0 i32) + (local $$t2764.1 i32) + (local $$t2765.0 i32) + (local $$t2765.1 i32) + (local $$t2766.0 i32) + (local $$t2766.1 i32) + (local $$t2767.0 i32) + (local $$t2767.1 i32) + (local $$t2768.0 i32) + (local $$t2768.1 i32) + (local $$t2769.0 i32) + (local $$t2769.1 i32) + (local $$t2770.0 i32) + (local $$t2770.1 i32) + (local $$t2771.0 i32) + (local $$t2771.1 i32) + (local $$t2772.0 i32) + (local $$t2772.1 i32) + (local $$t2773.0 i32) + (local $$t2773.1 i32) + (local $$t2773.2 i32) + (local $$t2773.3 i32) + (local $$t2774.0 i32) + (local $$t2774.1 i32) + (local $$t2775.0 i32) + (local $$t2775.1 i32) + (local $$t2776.0 i32) + (local $$t2776.1 i32) + (local $$t2777.0 i32) + (local $$t2777.1 i32) + (local $$t2778.0 i32) + (local $$t2778.1 i32) + (local $$t2779.0 i32) + (local $$t2779.1 i32) + (local $$t2780.0 i32) + (local $$t2780.1 i32) + (local $$t2781.0 i32) + (local $$t2781.1 i32) + (local $$t2782.0 i32) + (local $$t2782.1 i32) + (local $$t2783.0 i32) + (local $$t2783.1 i32) + (local $$t2784.0 i32) + (local $$t2784.1 i32) + (local $$t2785.0 i32) + (local $$t2785.1 i32) + (local $$t2786.0 i32) + (local $$t2786.1 i32) + (local $$t2787.0 i32) + (local $$t2787.1 i32) + (local $$t2788.0 i32) + (local $$t2788.1 i32) + (local $$t2789.0 i32) + (local $$t2789.1 i32) + (local $$t2790.0 i32) + (local $$t2790.1 i32) + (local $$t2791.0 i32) + (local $$t2791.1 i32) + (local $$t2792.0 i32) + (local $$t2792.1 i32) + (local $$t2793.0 i32) + (local $$t2793.1 i32) + (local $$t2794.0 i32) + (local $$t2794.1 i32) + (local $$t2795.0 i32) + (local $$t2795.1 i32) + (local $$t2796.0 i32) + (local $$t2796.1 i32) + (local $$t2797.0 i32) + (local $$t2797.1 i32) + (local $$t2798.0 i32) + (local $$t2798.1 i32) + (local $$t2799.0 i32) + (local $$t2799.1 i32) + (local $$t2800.0 i32) + (local $$t2800.1 i32) + (local $$t2801.0 i32) + (local $$t2801.1 i32) + (local $$t2802.0 i32) + (local $$t2802.1 i32) + (local $$t2803.0 i32) + (local $$t2803.1 i32) + (local $$t2804.0 i32) + (local $$t2804.1 i32) + (local $$t2805.0 i32) + (local $$t2805.1 i32) + (local $$t2806.0 i32) + (local $$t2806.1 i32) + (local $$t2807.0 i32) + (local $$t2807.1 i32) + (local $$t2808.0 i32) + (local $$t2808.1 i32) + (local $$t2809.0 i32) + (local $$t2809.1 i32) + (local $$t2810.0 i32) + (local $$t2810.1 i32) + (local $$t2811.0 i32) + (local $$t2811.1 i32) + (local $$t2812.0 i32) + (local $$t2812.1 i32) + (local $$t2813.0 i32) + (local $$t2813.1 i32) + (local $$t2814.0 i32) + (local $$t2814.1 i32) + (local $$t2815.0 i32) + (local $$t2815.1 i32) + (local $$t2816.0 i32) + (local $$t2816.1 i32) + (local $$t2817.0 i32) + (local $$t2817.1 i32) + (local $$t2818.0 i32) + (local $$t2818.1 i32) + (local $$t2819.0 i32) + (local $$t2819.1 i32) + (local $$t2820.0 i32) + (local $$t2820.1 i32) + (local $$t2821.0 i32) + (local $$t2821.1 i32) + (local $$t2822.0 i32) + (local $$t2822.1 i32) + (local $$t2823.0 i32) + (local $$t2823.1 i32) + (local $$t2824.0 i32) + (local $$t2824.1 i32) + (local $$t2825.0 i32) + (local $$t2825.1 i32) + (local $$t2826.0 i32) + (local $$t2826.1 i32) + (local $$t2827.0 i32) + (local $$t2827.1 i32) + (local $$t2828.0 i32) + (local $$t2828.1 i32) + (local $$t2829.0 i32) + (local $$t2829.1 i32) + (local $$t2830.0 i32) + (local $$t2830.1 i32) + (local $$t2831.0 i32) + (local $$t2831.1 i32) + (local $$t2832.0 i32) + (local $$t2832.1 i32) + (local $$t2833.0 i32) + (local $$t2833.1 i32) + (local $$t2834.0 i32) + (local $$t2834.1 i32) + (local $$t2835.0 i32) + (local $$t2835.1 i32) + (local $$t2836.0 i32) + (local $$t2836.1 i32) + (local $$t2836.2 i32) + (local $$t2836.3 i32) + (local $$t2837.0 i32) + (local $$t2837.1 i32) + (local $$t2837.2 i32) + (local $$t2837.3 i32) + (local $$t2838.0 i32) + (local $$t2838.1 i32) + (local $$t2839.0 i32) + (local $$t2839.1 i32) + (local $$t2840.0 i32) + (local $$t2840.1 i32) + (local $$t2841.0 i32) + (local $$t2841.1 i32) + (local $$t2842.0 i32) + (local $$t2842.1 i32) + (local $$t2843.0 i32) + (local $$t2843.1 i32) + (local $$t2844.0 i32) + (local $$t2844.1 i32) + (local $$t2845.0 i32) + (local $$t2845.1 i32) + (local $$t2846.0 i32) + (local $$t2846.1 i32) + (local $$t2847.0 i32) + (local $$t2847.1 i32) + (local $$t2848.0 i32) + (local $$t2848.1 i32) + (local $$t2849.0 i32) + (local $$t2849.1 i32) + (local $$t2850.0 i32) + (local $$t2850.1 i32) + (local $$t2851.0 i32) + (local $$t2851.1 i32) + (local $$t2852.0 i32) + (local $$t2852.1 i32) + (local $$t2853.0 i32) + (local $$t2853.1 i32) + (local $$t2854.0 i32) + (local $$t2854.1 i32) + (local $$t2855.0 i32) + (local $$t2855.1 i32) + (local $$t2856.0 i32) + (local $$t2856.1 i32) + (local $$t2857.0 i32) + (local $$t2857.1 i32) + (local $$t2858.0 i32) + (local $$t2858.1 i32) + (local $$t2859.0 i32) + (local $$t2859.1 i32) + (local $$t2860.0 i32) + (local $$t2860.1 i32) + (local $$t2861.0 i32) + (local $$t2861.1 i32) + (local $$t2861.2 i32) + (local $$t2861.3 i32) + (local $$t2862.0 i32) + (local $$t2862.1 i32) + (local $$t2862.2 i32) + (local $$t2862.3 i32) + (local $$t2863.0 i32) + (local $$t2863.1 i32) + (local $$t2864.0 i32) + (local $$t2864.1 i32) + (local $$t2865.0 i32) + (local $$t2865.1 i32) + (local $$t2866.0 i32) + (local $$t2866.1 i32) + (local $$t2867.0 i32) + (local $$t2867.1 i32) + (local $$t2868.0 i32) + (local $$t2868.1 i32) + (local $$t2869.0 i32) + (local $$t2869.1 i32) + (local $$t2870.0 i32) + (local $$t2870.1 i32) + (local $$t2871.0 i32) + (local $$t2871.1 i32) + (local $$t2872.0 i32) + (local $$t2872.1 i32) + (local $$t2873.0 i32) + (local $$t2873.1 i32) + (local $$t2874.0 i32) + (local $$t2874.1 i32) + (local $$t2875.0 i32) + (local $$t2875.1 i32) + (local $$t2876.0 i32) + (local $$t2876.1 i32) + (local $$t2877.0 i32) + (local $$t2877.1 i32) + (local $$t2878.0 i32) + (local $$t2878.1 i32) + (local $$t2879.0 i32) + (local $$t2879.1 i32) + (local $$t2880.0 i32) + (local $$t2880.1 i32) + (local $$t2881.0 i32) + (local $$t2881.1 i32) + (local $$t2882.0 i32) + (local $$t2882.1 i32) + (local $$t2883.0 i32) + (local $$t2883.1 i32) + (local $$t2884.0 i32) + (local $$t2884.1 i32) + (local $$t2885.0 i32) + (local $$t2885.1 i32) + (local $$t2885.2 i32) + (local $$t2885.3 i32) + (local $$t2886.0 i32) + (local $$t2886.1 i32) + (local $$t2886.2 i32) + (local $$t2886.3 i32) + (local $$t2887.0 i32) + (local $$t2887.1 i32) + (local $$t2887.2 i32) + (local $$t2887.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 0 + end + i32.const 0 + local.set $$current_block + global.get $w4app.init$guard + local.set $$t0 + local.get $$t0 + if + br $$Block_1 + else + br $$Block_0 + end + end + i32.const 1 + local.set $$current_block + i32.const 1 + global.set $w4app.init$guard + call $runtime.init + call $syscall$wasm4.init + i32.const 44 + call $runtime.HeapAlloc + i32.const 1 + i32.const 20 + i32.const 28 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 16 + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 20 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 24 + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 0 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + i32.const 2128 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 2112 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.const 84 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 3 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.const 21 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 4 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 5 + i32.mul + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 6 + i32.mul + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 7 + i32.mul + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 8 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 9 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 10 + i32.mul + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 11 + i32.mul + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 12 + i32.mul + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 13 + i32.mul + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 14 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 15 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 16 + i32.mul + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 17 + i32.mul + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 18 + i32.mul + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 19 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 20 + i32.mul + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t27.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 21 + i32.mul + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 22 + i32.mul + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 23 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 24 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t31.1 + i32.const 105 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 25 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 26 + i32.mul + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 27 + i32.mul + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t34.1 + i32.const 105 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 28 + i32.mul + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t35.1 + i32.const 32 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 29 + i32.mul + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.1 + i32.const 8 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 30 + i32.mul + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$t37.1 + i32.const 10 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 31 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.1 + i32.const 160 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 32 + i32.mul + i32.add + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t39.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 33 + i32.mul + i32.add + local.set $$t40.1 + local.get $$t40.0 + call $runtime.Block.Release + local.set $$t40.0 + local.get $$t40.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 34 + i32.mul + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 35 + i32.mul + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t42.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 36 + i32.mul + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 37 + i32.mul + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 38 + i32.mul + i32.add + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t45.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 39 + i32.mul + i32.add + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t46.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 40 + i32.mul + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $$t47.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 41 + i32.mul + i32.add + local.set $$t48.1 + local.get $$t48.0 + call $runtime.Block.Release + local.set $$t48.0 + local.get $$t48.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 42 + i32.mul + i32.add + local.set $$t49.1 + local.get $$t49.0 + call $runtime.Block.Release + local.set $$t49.0 + local.get $$t49.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 43 + i32.mul + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 44 + i32.mul + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 45 + i32.mul + i32.add + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t52.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 46 + i32.mul + i32.add + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $$t53.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 47 + i32.mul + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 48 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 49 + i32.mul + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $$t56.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 50 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $$t57.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 51 + i32.mul + i32.add + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + local.get $$t58.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 52 + i32.mul + i32.add + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t59.1 + i32.const 8 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 53 + i32.mul + i32.add + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + local.get $$t60.1 + i32.const 32 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 54 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $$t61.1 + i32.const 32 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 55 + i32.mul + i32.add + local.set $$t62.1 + local.get $$t62.0 + call $runtime.Block.Release + local.set $$t62.0 + local.get $$t62.1 + i32.const 8 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 56 + i32.mul + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t63.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 57 + i32.mul + i32.add + local.set $$t64.1 + local.get $$t64.0 + call $runtime.Block.Release + local.set $$t64.0 + local.get $$t64.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 58 + i32.mul + i32.add + local.set $$t65.1 + local.get $$t65.0 + call $runtime.Block.Release + local.set $$t65.0 + local.get $$t65.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 59 + i32.mul + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 60 + i32.mul + i32.add + local.set $$t67.1 + local.get $$t67.0 + call $runtime.Block.Release + local.set $$t67.0 + local.get $$t67.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 61 + i32.mul + i32.add + local.set $$t68.1 + local.get $$t68.0 + call $runtime.Block.Release + local.set $$t68.0 + local.get $$t68.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 62 + i32.mul + i32.add + local.set $$t69.1 + local.get $$t69.0 + call $runtime.Block.Release + local.set $$t69.0 + local.get $$t69.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 63 + i32.mul + i32.add + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + local.get $$t70.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 64 + i32.mul + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $$t71.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 65 + i32.mul + i32.add + local.set $$t72.1 + local.get $$t72.0 + call $runtime.Block.Release + local.set $$t72.0 + local.get $$t72.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 66 + i32.mul + i32.add + local.set $$t73.1 + local.get $$t73.0 + call $runtime.Block.Release + local.set $$t73.0 + local.get $$t73.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 67 + i32.mul + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + local.get $$t74.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 68 + i32.mul + i32.add + local.set $$t75.1 + local.get $$t75.0 + call $runtime.Block.Release + local.set $$t75.0 + local.get $$t75.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 69 + i32.mul + i32.add + local.set $$t76.1 + local.get $$t76.0 + call $runtime.Block.Release + local.set $$t76.0 + local.get $$t76.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 70 + i32.mul + i32.add + local.set $$t77.1 + local.get $$t77.0 + call $runtime.Block.Release + local.set $$t77.0 + local.get $$t77.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 71 + i32.mul + i32.add + local.set $$t78.1 + local.get $$t78.0 + call $runtime.Block.Release + local.set $$t78.0 + local.get $$t78.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 72 + i32.mul + i32.add + local.set $$t79.1 + local.get $$t79.0 + call $runtime.Block.Release + local.set $$t79.0 + local.get $$t79.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 73 + i32.mul + i32.add + local.set $$t80.1 + local.get $$t80.0 + call $runtime.Block.Release + local.set $$t80.0 + local.get $$t80.1 + i32.const 144 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 74 + i32.mul + i32.add + local.set $$t81.1 + local.get $$t81.0 + call $runtime.Block.Release + local.set $$t81.0 + local.get $$t81.1 + i32.const 6 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 75 + i32.mul + i32.add + local.set $$t82.1 + local.get $$t82.0 + call $runtime.Block.Release + local.set $$t82.0 + local.get $$t82.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 76 + i32.mul + i32.add + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t83.1 + i32.const 2 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 77 + i32.mul + i32.add + local.set $$t84.1 + local.get $$t84.0 + call $runtime.Block.Release + local.set $$t84.0 + local.get $$t84.1 + i32.const 128 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 78 + i32.mul + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.1 + i32.const 32 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 79 + i32.mul + i32.add + local.set $$t86.1 + local.get $$t86.0 + call $runtime.Block.Release + local.set $$t86.0 + local.get $$t86.1 + i32.const 8 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 80 + i32.mul + i32.add + local.set $$t87.1 + local.get $$t87.0 + call $runtime.Block.Release + local.set $$t87.0 + local.get $$t87.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 81 + i32.mul + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 82 + i32.mul + i32.add + local.set $$t89.1 + local.get $$t89.0 + call $runtime.Block.Release + local.set $$t89.0 + local.get $$t89.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 83 + i32.mul + i32.add + local.set $$t90.1 + local.get $$t90.0 + call $runtime.Block.Release + local.set $$t90.0 + local.get $$t90.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 84 + i32.mul + i32.add + local.set $$t91.1 + local.get $$t91.0 + call $runtime.Block.Release + local.set $$t91.0 + local.get $$t91.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 85 + i32.mul + i32.add + local.set $$t92.1 + local.get $$t92.0 + call $runtime.Block.Release + local.set $$t92.0 + local.get $$t92.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 86 + i32.mul + i32.add + local.set $$t93.1 + local.get $$t93.0 + call $runtime.Block.Release + local.set $$t93.0 + local.get $$t93.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 87 + i32.mul + i32.add + local.set $$t94.1 + local.get $$t94.0 + call $runtime.Block.Release + local.set $$t94.0 + local.get $$t94.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 88 + i32.mul + i32.add + local.set $$t95.1 + local.get $$t95.0 + call $runtime.Block.Release + local.set $$t95.0 + local.get $$t95.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 89 + i32.mul + i32.add + local.set $$t96.1 + local.get $$t96.0 + call $runtime.Block.Release + local.set $$t96.0 + local.get $$t96.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 90 + i32.mul + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t97.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 91 + i32.mul + i32.add + local.set $$t98.1 + local.get $$t98.0 + call $runtime.Block.Release + local.set $$t98.0 + local.get $$t98.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 92 + i32.mul + i32.add + local.set $$t99.1 + local.get $$t99.0 + call $runtime.Block.Release + local.set $$t99.0 + local.get $$t99.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 93 + i32.mul + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $$t100.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 94 + i32.mul + i32.add + local.set $$t101.1 + local.get $$t101.0 + call $runtime.Block.Release + local.set $$t101.0 + local.get $$t101.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 95 + i32.mul + i32.add + local.set $$t102.1 + local.get $$t102.0 + call $runtime.Block.Release + local.set $$t102.0 + local.get $$t102.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 96 + i32.mul + i32.add + local.set $$t103.1 + local.get $$t103.0 + call $runtime.Block.Release + local.set $$t103.0 + local.get $$t103.1 + i32.const 6 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 97 + i32.mul + i32.add + local.set $$t104.1 + local.get $$t104.0 + call $runtime.Block.Release + local.set $$t104.0 + local.get $$t104.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 98 + i32.mul + i32.add + local.set $$t105.1 + local.get $$t105.0 + call $runtime.Block.Release + local.set $$t105.0 + local.get $$t105.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 99 + i32.mul + i32.add + local.set $$t106.1 + local.get $$t106.0 + call $runtime.Block.Release + local.set $$t106.0 + local.get $$t106.1 + i32.const 144 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 100 + i32.mul + i32.add + local.set $$t107.1 + local.get $$t107.0 + call $runtime.Block.Release + local.set $$t107.0 + local.get $$t107.1 + i32.const 2 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 101 + i32.mul + i32.add + local.set $$t108.1 + local.get $$t108.0 + call $runtime.Block.Release + local.set $$t108.0 + local.get $$t108.1 + i32.const 128 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 102 + i32.mul + i32.add + local.set $$t109.1 + local.get $$t109.0 + call $runtime.Block.Release + local.set $$t109.0 + local.get $$t109.1 + i32.const 32 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 103 + i32.mul + i32.add + local.set $$t110.1 + local.get $$t110.0 + call $runtime.Block.Release + local.set $$t110.0 + local.get $$t110.1 + i32.const 8 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 104 + i32.mul + i32.add + local.set $$t111.1 + local.get $$t111.0 + call $runtime.Block.Release + local.set $$t111.0 + local.get $$t111.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 105 + i32.mul + i32.add + local.set $$t112.1 + local.get $$t112.0 + call $runtime.Block.Release + local.set $$t112.0 + local.get $$t112.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 106 + i32.mul + i32.add + local.set $$t113.1 + local.get $$t113.0 + call $runtime.Block.Release + local.set $$t113.0 + local.get $$t113.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 107 + i32.mul + i32.add + local.set $$t114.1 + local.get $$t114.0 + call $runtime.Block.Release + local.set $$t114.0 + local.get $$t114.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 108 + i32.mul + i32.add + local.set $$t115.1 + local.get $$t115.0 + call $runtime.Block.Release + local.set $$t115.0 + local.get $$t115.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 109 + i32.mul + i32.add + local.set $$t116.1 + local.get $$t116.0 + call $runtime.Block.Release + local.set $$t116.0 + local.get $$t116.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 110 + i32.mul + i32.add + local.set $$t117.1 + local.get $$t117.0 + call $runtime.Block.Release + local.set $$t117.0 + local.get $$t117.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 111 + i32.mul + i32.add + local.set $$t118.1 + local.get $$t118.0 + call $runtime.Block.Release + local.set $$t118.0 + local.get $$t118.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 112 + i32.mul + i32.add + local.set $$t119.1 + local.get $$t119.0 + call $runtime.Block.Release + local.set $$t119.0 + local.get $$t119.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 113 + i32.mul + i32.add + local.set $$t120.1 + local.get $$t120.0 + call $runtime.Block.Release + local.set $$t120.0 + local.get $$t120.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 114 + i32.mul + i32.add + local.set $$t121.1 + local.get $$t121.0 + call $runtime.Block.Release + local.set $$t121.0 + local.get $$t121.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 115 + i32.mul + i32.add + local.set $$t122.1 + local.get $$t122.0 + call $runtime.Block.Release + local.set $$t122.0 + local.get $$t122.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 116 + i32.mul + i32.add + local.set $$t123.1 + local.get $$t123.0 + call $runtime.Block.Release + local.set $$t123.0 + local.get $$t123.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 117 + i32.mul + i32.add + local.set $$t124.1 + local.get $$t124.0 + call $runtime.Block.Release + local.set $$t124.0 + local.get $$t124.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 118 + i32.mul + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 119 + i32.mul + i32.add + local.set $$t126.1 + local.get $$t126.0 + call $runtime.Block.Release + local.set $$t126.0 + local.get $$t126.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 120 + i32.mul + i32.add + local.set $$t127.1 + local.get $$t127.0 + call $runtime.Block.Release + local.set $$t127.0 + local.get $$t127.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 121 + i32.mul + i32.add + local.set $$t128.1 + local.get $$t128.0 + call $runtime.Block.Release + local.set $$t128.0 + local.get $$t128.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 122 + i32.mul + i32.add + local.set $$t129.1 + local.get $$t129.0 + call $runtime.Block.Release + local.set $$t129.0 + local.get $$t129.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 123 + i32.mul + i32.add + local.set $$t130.1 + local.get $$t130.0 + call $runtime.Block.Release + local.set $$t130.0 + local.get $$t130.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 124 + i32.mul + i32.add + local.set $$t131.1 + local.get $$t131.0 + call $runtime.Block.Release + local.set $$t131.0 + local.get $$t131.1 + i32.const 8 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 125 + i32.mul + i32.add + local.set $$t132.1 + local.get $$t132.0 + call $runtime.Block.Release + local.set $$t132.0 + local.get $$t132.1 + i32.const 32 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 126 + i32.mul + i32.add + local.set $$t133.1 + local.get $$t133.0 + call $runtime.Block.Release + local.set $$t133.0 + local.get $$t133.1 + i32.const 32 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 127 + i32.mul + i32.add + local.set $$t134.1 + local.get $$t134.0 + call $runtime.Block.Release + local.set $$t134.0 + local.get $$t134.1 + i32.const 8 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 128 + i32.mul + i32.add + local.set $$t135.1 + local.get $$t135.0 + call $runtime.Block.Release + local.set $$t135.0 + local.get $$t135.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 129 + i32.mul + i32.add + local.set $$t136.1 + local.get $$t136.0 + call $runtime.Block.Release + local.set $$t136.0 + local.get $$t136.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 130 + i32.mul + i32.add + local.set $$t137.1 + local.get $$t137.0 + call $runtime.Block.Release + local.set $$t137.0 + local.get $$t137.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 131 + i32.mul + i32.add + local.set $$t138.1 + local.get $$t138.0 + call $runtime.Block.Release + local.set $$t138.0 + local.get $$t138.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 132 + i32.mul + i32.add + local.set $$t139.1 + local.get $$t139.0 + call $runtime.Block.Release + local.set $$t139.0 + local.get $$t139.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 133 + i32.mul + i32.add + local.set $$t140.1 + local.get $$t140.0 + call $runtime.Block.Release + local.set $$t140.0 + local.get $$t140.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 134 + i32.mul + i32.add + local.set $$t141.1 + local.get $$t141.0 + call $runtime.Block.Release + local.set $$t141.0 + local.get $$t141.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 135 + i32.mul + i32.add + local.set $$t142.1 + local.get $$t142.0 + call $runtime.Block.Release + local.set $$t142.0 + local.get $$t142.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 136 + i32.mul + i32.add + local.set $$t143.1 + local.get $$t143.0 + call $runtime.Block.Release + local.set $$t143.0 + local.get $$t143.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 137 + i32.mul + i32.add + local.set $$t144.1 + local.get $$t144.0 + call $runtime.Block.Release + local.set $$t144.0 + local.get $$t144.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 138 + i32.mul + i32.add + local.set $$t145.1 + local.get $$t145.0 + call $runtime.Block.Release + local.set $$t145.0 + local.get $$t145.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 139 + i32.mul + i32.add + local.set $$t146.1 + local.get $$t146.0 + call $runtime.Block.Release + local.set $$t146.0 + local.get $$t146.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 140 + i32.mul + i32.add + local.set $$t147.1 + local.get $$t147.0 + call $runtime.Block.Release + local.set $$t147.0 + local.get $$t147.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 141 + i32.mul + i32.add + local.set $$t148.1 + local.get $$t148.0 + call $runtime.Block.Release + local.set $$t148.0 + local.get $$t148.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 142 + i32.mul + i32.add + local.set $$t149.1 + local.get $$t149.0 + call $runtime.Block.Release + local.set $$t149.0 + local.get $$t149.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 143 + i32.mul + i32.add + local.set $$t150.1 + local.get $$t150.0 + call $runtime.Block.Release + local.set $$t150.0 + local.get $$t150.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 144 + i32.mul + i32.add + local.set $$t151.1 + local.get $$t151.0 + call $runtime.Block.Release + local.set $$t151.0 + local.get $$t151.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 145 + i32.mul + i32.add + local.set $$t152.1 + local.get $$t152.0 + call $runtime.Block.Release + local.set $$t152.0 + local.get $$t152.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 146 + i32.mul + i32.add + local.set $$t153.1 + local.get $$t153.0 + call $runtime.Block.Release + local.set $$t153.0 + local.get $$t153.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 147 + i32.mul + i32.add + local.set $$t154.1 + local.get $$t154.0 + call $runtime.Block.Release + local.set $$t154.0 + local.get $$t154.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 148 + i32.mul + i32.add + local.set $$t155.1 + local.get $$t155.0 + call $runtime.Block.Release + local.set $$t155.0 + local.get $$t155.1 + i32.const 32 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 149 + i32.mul + i32.add + local.set $$t156.1 + local.get $$t156.0 + call $runtime.Block.Release + local.set $$t156.0 + local.get $$t156.1 + i32.const 8 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 150 + i32.mul + i32.add + local.set $$t157.1 + local.get $$t157.0 + call $runtime.Block.Release + local.set $$t157.0 + local.get $$t157.1 + i32.const 10 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 151 + i32.mul + i32.add + local.set $$t158.1 + local.get $$t158.0 + call $runtime.Block.Release + local.set $$t158.0 + local.get $$t158.1 + i32.const 160 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 152 + i32.mul + i32.add + local.set $$t159.1 + local.get $$t159.0 + call $runtime.Block.Release + local.set $$t159.0 + local.get $$t159.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 153 + i32.mul + i32.add + local.set $$t160.1 + local.get $$t160.0 + call $runtime.Block.Release + local.set $$t160.0 + local.get $$t160.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 154 + i32.mul + i32.add + local.set $$t161.1 + local.get $$t161.0 + call $runtime.Block.Release + local.set $$t161.0 + local.get $$t161.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 155 + i32.mul + i32.add + local.set $$t162.1 + local.get $$t162.0 + call $runtime.Block.Release + local.set $$t162.0 + local.get $$t162.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 156 + i32.mul + i32.add + local.set $$t163.1 + local.get $$t163.0 + call $runtime.Block.Release + local.set $$t163.0 + local.get $$t163.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 157 + i32.mul + i32.add + local.set $$t164.1 + local.get $$t164.0 + call $runtime.Block.Release + local.set $$t164.0 + local.get $$t164.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 158 + i32.mul + i32.add + local.set $$t165.1 + local.get $$t165.0 + call $runtime.Block.Release + local.set $$t165.0 + local.get $$t165.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 159 + i32.mul + i32.add + local.set $$t166.1 + local.get $$t166.0 + call $runtime.Block.Release + local.set $$t166.0 + local.get $$t166.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 160 + i32.mul + i32.add + local.set $$t167.1 + local.get $$t167.0 + call $runtime.Block.Release + local.set $$t167.0 + local.get $$t167.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 161 + i32.mul + i32.add + local.set $$t168.1 + local.get $$t168.0 + call $runtime.Block.Release + local.set $$t168.0 + local.get $$t168.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 162 + i32.mul + i32.add + local.set $$t169.1 + local.get $$t169.0 + call $runtime.Block.Release + local.set $$t169.0 + local.get $$t169.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 163 + i32.mul + i32.add + local.set $$t170.1 + local.get $$t170.0 + call $runtime.Block.Release + local.set $$t170.0 + local.get $$t170.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 164 + i32.mul + i32.add + local.set $$t171.1 + local.get $$t171.0 + call $runtime.Block.Release + local.set $$t171.0 + local.get $$t171.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 165 + i32.mul + i32.add + local.set $$t172.1 + local.get $$t172.0 + call $runtime.Block.Release + local.set $$t172.0 + local.get $$t172.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 166 + i32.mul + i32.add + local.set $$t173.1 + local.get $$t173.0 + call $runtime.Block.Release + local.set $$t173.0 + local.get $$t173.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 167 + i32.mul + i32.add + local.set $$t174.1 + local.get $$t174.0 + call $runtime.Block.Release + local.set $$t174.0 + local.get $$t174.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 168 + i32.mul + i32.add + local.set $$t175.1 + local.get $$t175.0 + call $runtime.Block.Release + local.set $$t175.0 + local.get $$t175.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 169 + i32.mul + i32.add + local.set $$t176.1 + local.get $$t176.0 + call $runtime.Block.Release + local.set $$t176.0 + local.get $$t176.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 170 + i32.mul + i32.add + local.set $$t177.1 + local.get $$t177.0 + call $runtime.Block.Release + local.set $$t177.0 + local.get $$t177.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 171 + i32.mul + i32.add + local.set $$t178.1 + local.get $$t178.0 + call $runtime.Block.Release + local.set $$t178.0 + local.get $$t178.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 172 + i32.mul + i32.add + local.set $$t179.1 + local.get $$t179.0 + call $runtime.Block.Release + local.set $$t179.0 + local.get $$t179.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 173 + i32.mul + i32.add + local.set $$t180.1 + local.get $$t180.0 + call $runtime.Block.Release + local.set $$t180.0 + local.get $$t180.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 174 + i32.mul + i32.add + local.set $$t181.1 + local.get $$t181.0 + call $runtime.Block.Release + local.set $$t181.0 + local.get $$t181.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 175 + i32.mul + i32.add + local.set $$t182.1 + local.get $$t182.0 + call $runtime.Block.Release + local.set $$t182.0 + local.get $$t182.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 176 + i32.mul + i32.add + local.set $$t183.1 + local.get $$t183.0 + call $runtime.Block.Release + local.set $$t183.0 + local.get $$t183.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 177 + i32.mul + i32.add + local.set $$t184.1 + local.get $$t184.0 + call $runtime.Block.Release + local.set $$t184.0 + local.get $$t184.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 178 + i32.mul + i32.add + local.set $$t185.1 + local.get $$t185.0 + call $runtime.Block.Release + local.set $$t185.0 + local.get $$t185.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 179 + i32.mul + i32.add + local.set $$t186.1 + local.get $$t186.0 + call $runtime.Block.Release + local.set $$t186.0 + local.get $$t186.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 180 + i32.mul + i32.add + local.set $$t187.1 + local.get $$t187.0 + call $runtime.Block.Release + local.set $$t187.0 + local.get $$t187.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 181 + i32.mul + i32.add + local.set $$t188.1 + local.get $$t188.0 + call $runtime.Block.Release + local.set $$t188.0 + local.get $$t188.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 182 + i32.mul + i32.add + local.set $$t189.1 + local.get $$t189.0 + call $runtime.Block.Release + local.set $$t189.0 + local.get $$t189.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 183 + i32.mul + i32.add + local.set $$t190.1 + local.get $$t190.0 + call $runtime.Block.Release + local.set $$t190.0 + local.get $$t190.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 184 + i32.mul + i32.add + local.set $$t191.1 + local.get $$t191.0 + call $runtime.Block.Release + local.set $$t191.0 + local.get $$t191.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 185 + i32.mul + i32.add + local.set $$t192.1 + local.get $$t192.0 + call $runtime.Block.Release + local.set $$t192.0 + local.get $$t192.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 186 + i32.mul + i32.add + local.set $$t193.1 + local.get $$t193.0 + call $runtime.Block.Release + local.set $$t193.0 + local.get $$t193.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 187 + i32.mul + i32.add + local.set $$t194.1 + local.get $$t194.0 + call $runtime.Block.Release + local.set $$t194.0 + local.get $$t194.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 188 + i32.mul + i32.add + local.set $$t195.1 + local.get $$t195.0 + call $runtime.Block.Release + local.set $$t195.0 + local.get $$t195.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 189 + i32.mul + i32.add + local.set $$t196.1 + local.get $$t196.0 + call $runtime.Block.Release + local.set $$t196.0 + local.get $$t196.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 190 + i32.mul + i32.add + local.set $$t197.1 + local.get $$t197.0 + call $runtime.Block.Release + local.set $$t197.0 + local.get $$t197.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 191 + i32.mul + i32.add + local.set $$t198.1 + local.get $$t198.0 + call $runtime.Block.Release + local.set $$t198.0 + local.get $$t198.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 192 + i32.mul + i32.add + local.set $$t199.1 + local.get $$t199.0 + call $runtime.Block.Release + local.set $$t199.0 + local.get $$t199.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 193 + i32.mul + i32.add + local.set $$t200.1 + local.get $$t200.0 + call $runtime.Block.Release + local.set $$t200.0 + local.get $$t200.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 194 + i32.mul + i32.add + local.set $$t201.1 + local.get $$t201.0 + call $runtime.Block.Release + local.set $$t201.0 + local.get $$t201.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 195 + i32.mul + i32.add + local.set $$t202.1 + local.get $$t202.0 + call $runtime.Block.Release + local.set $$t202.0 + local.get $$t202.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 196 + i32.mul + i32.add + local.set $$t203.1 + local.get $$t203.0 + call $runtime.Block.Release + local.set $$t203.0 + local.get $$t203.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 197 + i32.mul + i32.add + local.set $$t204.1 + local.get $$t204.0 + call $runtime.Block.Release + local.set $$t204.0 + local.get $$t204.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 198 + i32.mul + i32.add + local.set $$t205.1 + local.get $$t205.0 + call $runtime.Block.Release + local.set $$t205.0 + local.get $$t205.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 199 + i32.mul + i32.add + local.set $$t206.1 + local.get $$t206.0 + call $runtime.Block.Release + local.set $$t206.0 + local.get $$t206.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 200 + i32.mul + i32.add + local.set $$t207.1 + local.get $$t207.0 + call $runtime.Block.Release + local.set $$t207.0 + local.get $$t207.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 201 + i32.mul + i32.add + local.set $$t208.1 + local.get $$t208.0 + call $runtime.Block.Release + local.set $$t208.0 + local.get $$t208.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 202 + i32.mul + i32.add + local.set $$t209.1 + local.get $$t209.0 + call $runtime.Block.Release + local.set $$t209.0 + local.get $$t209.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 203 + i32.mul + i32.add + local.set $$t210.1 + local.get $$t210.0 + call $runtime.Block.Release + local.set $$t210.0 + local.get $$t210.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 204 + i32.mul + i32.add + local.set $$t211.1 + local.get $$t211.0 + call $runtime.Block.Release + local.set $$t211.0 + local.get $$t211.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 205 + i32.mul + i32.add + local.set $$t212.1 + local.get $$t212.0 + call $runtime.Block.Release + local.set $$t212.0 + local.get $$t212.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 206 + i32.mul + i32.add + local.set $$t213.1 + local.get $$t213.0 + call $runtime.Block.Release + local.set $$t213.0 + local.get $$t213.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 207 + i32.mul + i32.add + local.set $$t214.1 + local.get $$t214.0 + call $runtime.Block.Release + local.set $$t214.0 + local.get $$t214.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 208 + i32.mul + i32.add + local.set $$t215.1 + local.get $$t215.0 + call $runtime.Block.Release + local.set $$t215.0 + local.get $$t215.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 209 + i32.mul + i32.add + local.set $$t216.1 + local.get $$t216.0 + call $runtime.Block.Release + local.set $$t216.0 + local.get $$t216.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 210 + i32.mul + i32.add + local.set $$t217.1 + local.get $$t217.0 + call $runtime.Block.Release + local.set $$t217.0 + local.get $$t217.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 211 + i32.mul + i32.add + local.set $$t218.1 + local.get $$t218.0 + call $runtime.Block.Release + local.set $$t218.0 + local.get $$t218.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 212 + i32.mul + i32.add + local.set $$t219.1 + local.get $$t219.0 + call $runtime.Block.Release + local.set $$t219.0 + local.get $$t219.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 213 + i32.mul + i32.add + local.set $$t220.1 + local.get $$t220.0 + call $runtime.Block.Release + local.set $$t220.0 + local.get $$t220.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 214 + i32.mul + i32.add + local.set $$t221.1 + local.get $$t221.0 + call $runtime.Block.Release + local.set $$t221.0 + local.get $$t221.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 215 + i32.mul + i32.add + local.set $$t222.1 + local.get $$t222.0 + call $runtime.Block.Release + local.set $$t222.0 + local.get $$t222.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 216 + i32.mul + i32.add + local.set $$t223.1 + local.get $$t223.0 + call $runtime.Block.Release + local.set $$t223.0 + local.get $$t223.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 217 + i32.mul + i32.add + local.set $$t224.1 + local.get $$t224.0 + call $runtime.Block.Release + local.set $$t224.0 + local.get $$t224.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 218 + i32.mul + i32.add + local.set $$t225.1 + local.get $$t225.0 + call $runtime.Block.Release + local.set $$t225.0 + local.get $$t225.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 219 + i32.mul + i32.add + local.set $$t226.1 + local.get $$t226.0 + call $runtime.Block.Release + local.set $$t226.0 + local.get $$t226.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 220 + i32.mul + i32.add + local.set $$t227.1 + local.get $$t227.0 + call $runtime.Block.Release + local.set $$t227.0 + local.get $$t227.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 221 + i32.mul + i32.add + local.set $$t228.1 + local.get $$t228.0 + call $runtime.Block.Release + local.set $$t228.0 + local.get $$t228.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 222 + i32.mul + i32.add + local.set $$t229.1 + local.get $$t229.0 + call $runtime.Block.Release + local.set $$t229.0 + local.get $$t229.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 223 + i32.mul + i32.add + local.set $$t230.1 + local.get $$t230.0 + call $runtime.Block.Release + local.set $$t230.0 + local.get $$t230.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 224 + i32.mul + i32.add + local.set $$t231.1 + local.get $$t231.0 + call $runtime.Block.Release + local.set $$t231.0 + local.get $$t231.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 225 + i32.mul + i32.add + local.set $$t232.1 + local.get $$t232.0 + call $runtime.Block.Release + local.set $$t232.0 + local.get $$t232.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 226 + i32.mul + i32.add + local.set $$t233.1 + local.get $$t233.0 + call $runtime.Block.Release + local.set $$t233.0 + local.get $$t233.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 227 + i32.mul + i32.add + local.set $$t234.1 + local.get $$t234.0 + call $runtime.Block.Release + local.set $$t234.0 + local.get $$t234.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 228 + i32.mul + i32.add + local.set $$t235.1 + local.get $$t235.0 + call $runtime.Block.Release + local.set $$t235.0 + local.get $$t235.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 229 + i32.mul + i32.add + local.set $$t236.1 + local.get $$t236.0 + call $runtime.Block.Release + local.set $$t236.0 + local.get $$t236.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 230 + i32.mul + i32.add + local.set $$t237.1 + local.get $$t237.0 + call $runtime.Block.Release + local.set $$t237.0 + local.get $$t237.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 231 + i32.mul + i32.add + local.set $$t238.1 + local.get $$t238.0 + call $runtime.Block.Release + local.set $$t238.0 + local.get $$t238.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 232 + i32.mul + i32.add + local.set $$t239.1 + local.get $$t239.0 + call $runtime.Block.Release + local.set $$t239.0 + local.get $$t239.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 233 + i32.mul + i32.add + local.set $$t240.1 + local.get $$t240.0 + call $runtime.Block.Release + local.set $$t240.0 + local.get $$t240.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 234 + i32.mul + i32.add + local.set $$t241.1 + local.get $$t241.0 + call $runtime.Block.Release + local.set $$t241.0 + local.get $$t241.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 235 + i32.mul + i32.add + local.set $$t242.1 + local.get $$t242.0 + call $runtime.Block.Release + local.set $$t242.0 + local.get $$t242.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 236 + i32.mul + i32.add + local.set $$t243.1 + local.get $$t243.0 + call $runtime.Block.Release + local.set $$t243.0 + local.get $$t243.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 237 + i32.mul + i32.add + local.set $$t244.1 + local.get $$t244.0 + call $runtime.Block.Release + local.set $$t244.0 + local.get $$t244.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 238 + i32.mul + i32.add + local.set $$t245.1 + local.get $$t245.0 + call $runtime.Block.Release + local.set $$t245.0 + local.get $$t245.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 239 + i32.mul + i32.add + local.set $$t246.1 + local.get $$t246.0 + call $runtime.Block.Release + local.set $$t246.0 + local.get $$t246.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 240 + i32.mul + i32.add + local.set $$t247.1 + local.get $$t247.0 + call $runtime.Block.Release + local.set $$t247.0 + local.get $$t247.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 241 + i32.mul + i32.add + local.set $$t248.1 + local.get $$t248.0 + call $runtime.Block.Release + local.set $$t248.0 + local.get $$t248.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 242 + i32.mul + i32.add + local.set $$t249.1 + local.get $$t249.0 + call $runtime.Block.Release + local.set $$t249.0 + local.get $$t249.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 243 + i32.mul + i32.add + local.set $$t250.1 + local.get $$t250.0 + call $runtime.Block.Release + local.set $$t250.0 + local.get $$t250.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 244 + i32.mul + i32.add + local.set $$t251.1 + local.get $$t251.0 + call $runtime.Block.Release + local.set $$t251.0 + local.get $$t251.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 245 + i32.mul + i32.add + local.set $$t252.1 + local.get $$t252.0 + call $runtime.Block.Release + local.set $$t252.0 + local.get $$t252.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 246 + i32.mul + i32.add + local.set $$t253.1 + local.get $$t253.0 + call $runtime.Block.Release + local.set $$t253.0 + local.get $$t253.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 247 + i32.mul + i32.add + local.set $$t254.1 + local.get $$t254.0 + call $runtime.Block.Release + local.set $$t254.0 + local.get $$t254.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 248 + i32.mul + i32.add + local.set $$t255.1 + local.get $$t255.0 + call $runtime.Block.Release + local.set $$t255.0 + local.get $$t255.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 249 + i32.mul + i32.add + local.set $$t256.1 + local.get $$t256.0 + call $runtime.Block.Release + local.set $$t256.0 + local.get $$t256.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 250 + i32.mul + i32.add + local.set $$t257.1 + local.get $$t257.0 + call $runtime.Block.Release + local.set $$t257.0 + local.get $$t257.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 251 + i32.mul + i32.add + local.set $$t258.1 + local.get $$t258.0 + call $runtime.Block.Release + local.set $$t258.0 + local.get $$t258.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 252 + i32.mul + i32.add + local.set $$t259.1 + local.get $$t259.0 + call $runtime.Block.Release + local.set $$t259.0 + local.get $$t259.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 253 + i32.mul + i32.add + local.set $$t260.1 + local.get $$t260.0 + call $runtime.Block.Release + local.set $$t260.0 + local.get $$t260.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 254 + i32.mul + i32.add + local.set $$t261.1 + local.get $$t261.0 + call $runtime.Block.Release + local.set $$t261.0 + local.get $$t261.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 255 + i32.mul + i32.add + local.set $$t262.1 + local.get $$t262.0 + call $runtime.Block.Release + local.set $$t262.0 + local.get $$t262.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 256 + i32.mul + i32.add + local.set $$t263.1 + local.get $$t263.0 + call $runtime.Block.Release + local.set $$t263.0 + local.get $$t263.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 257 + i32.mul + i32.add + local.set $$t264.1 + local.get $$t264.0 + call $runtime.Block.Release + local.set $$t264.0 + local.get $$t264.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 258 + i32.mul + i32.add + local.set $$t265.1 + local.get $$t265.0 + call $runtime.Block.Release + local.set $$t265.0 + local.get $$t265.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 259 + i32.mul + i32.add + local.set $$t266.1 + local.get $$t266.0 + call $runtime.Block.Release + local.set $$t266.0 + local.get $$t266.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 260 + i32.mul + i32.add + local.set $$t267.1 + local.get $$t267.0 + call $runtime.Block.Release + local.set $$t267.0 + local.get $$t267.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 261 + i32.mul + i32.add + local.set $$t268.1 + local.get $$t268.0 + call $runtime.Block.Release + local.set $$t268.0 + local.get $$t268.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 262 + i32.mul + i32.add + local.set $$t269.1 + local.get $$t269.0 + call $runtime.Block.Release + local.set $$t269.0 + local.get $$t269.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 263 + i32.mul + i32.add + local.set $$t270.1 + local.get $$t270.0 + call $runtime.Block.Release + local.set $$t270.0 + local.get $$t270.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 264 + i32.mul + i32.add + local.set $$t271.1 + local.get $$t271.0 + call $runtime.Block.Release + local.set $$t271.0 + local.get $$t271.1 + i32.const 6 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 265 + i32.mul + i32.add + local.set $$t272.1 + local.get $$t272.0 + call $runtime.Block.Release + local.set $$t272.0 + local.get $$t272.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 266 + i32.mul + i32.add + local.set $$t273.1 + local.get $$t273.0 + call $runtime.Block.Release + local.set $$t273.0 + local.get $$t273.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 267 + i32.mul + i32.add + local.set $$t274.1 + local.get $$t274.0 + call $runtime.Block.Release + local.set $$t274.0 + local.get $$t274.1 + i32.const 144 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 268 + i32.mul + i32.add + local.set $$t275.1 + local.get $$t275.0 + call $runtime.Block.Release + local.set $$t275.0 + local.get $$t275.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 269 + i32.mul + i32.add + local.set $$t276.1 + local.get $$t276.0 + call $runtime.Block.Release + local.set $$t276.0 + local.get $$t276.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 270 + i32.mul + i32.add + local.set $$t277.1 + local.get $$t277.0 + call $runtime.Block.Release + local.set $$t277.0 + local.get $$t277.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 271 + i32.mul + i32.add + local.set $$t278.1 + local.get $$t278.0 + call $runtime.Block.Release + local.set $$t278.0 + local.get $$t278.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 272 + i32.mul + i32.add + local.set $$t279.1 + local.get $$t279.0 + call $runtime.Block.Release + local.set $$t279.0 + local.get $$t279.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 273 + i32.mul + i32.add + local.set $$t280.1 + local.get $$t280.0 + call $runtime.Block.Release + local.set $$t280.0 + local.get $$t280.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 274 + i32.mul + i32.add + local.set $$t281.1 + local.get $$t281.0 + call $runtime.Block.Release + local.set $$t281.0 + local.get $$t281.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 275 + i32.mul + i32.add + local.set $$t282.1 + local.get $$t282.0 + call $runtime.Block.Release + local.set $$t282.0 + local.get $$t282.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 276 + i32.mul + i32.add + local.set $$t283.1 + local.get $$t283.0 + call $runtime.Block.Release + local.set $$t283.0 + local.get $$t283.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 277 + i32.mul + i32.add + local.set $$t284.1 + local.get $$t284.0 + call $runtime.Block.Release + local.set $$t284.0 + local.get $$t284.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 278 + i32.mul + i32.add + local.set $$t285.1 + local.get $$t285.0 + call $runtime.Block.Release + local.set $$t285.0 + local.get $$t285.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 279 + i32.mul + i32.add + local.set $$t286.1 + local.get $$t286.0 + call $runtime.Block.Release + local.set $$t286.0 + local.get $$t286.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 280 + i32.mul + i32.add + local.set $$t287.1 + local.get $$t287.0 + call $runtime.Block.Release + local.set $$t287.0 + local.get $$t287.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 281 + i32.mul + i32.add + local.set $$t288.1 + local.get $$t288.0 + call $runtime.Block.Release + local.set $$t288.0 + local.get $$t288.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 282 + i32.mul + i32.add + local.set $$t289.1 + local.get $$t289.0 + call $runtime.Block.Release + local.set $$t289.0 + local.get $$t289.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 283 + i32.mul + i32.add + local.set $$t290.1 + local.get $$t290.0 + call $runtime.Block.Release + local.set $$t290.0 + local.get $$t290.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 284 + i32.mul + i32.add + local.set $$t291.1 + local.get $$t291.0 + call $runtime.Block.Release + local.set $$t291.0 + local.get $$t291.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 285 + i32.mul + i32.add + local.set $$t292.1 + local.get $$t292.0 + call $runtime.Block.Release + local.set $$t292.0 + local.get $$t292.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 286 + i32.mul + i32.add + local.set $$t293.1 + local.get $$t293.0 + call $runtime.Block.Release + local.set $$t293.0 + local.get $$t293.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 287 + i32.mul + i32.add + local.set $$t294.1 + local.get $$t294.0 + call $runtime.Block.Release + local.set $$t294.0 + local.get $$t294.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 288 + i32.mul + i32.add + local.set $$t295.1 + local.get $$t295.0 + call $runtime.Block.Release + local.set $$t295.0 + local.get $$t295.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 289 + i32.mul + i32.add + local.set $$t296.1 + local.get $$t296.0 + call $runtime.Block.Release + local.set $$t296.0 + local.get $$t296.1 + i32.const 144 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 290 + i32.mul + i32.add + local.set $$t297.1 + local.get $$t297.0 + call $runtime.Block.Release + local.set $$t297.0 + local.get $$t297.1 + i32.const 6 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 291 + i32.mul + i32.add + local.set $$t298.1 + local.get $$t298.0 + call $runtime.Block.Release + local.set $$t298.0 + local.get $$t298.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 292 + i32.mul + i32.add + local.set $$t299.1 + local.get $$t299.0 + call $runtime.Block.Release + local.set $$t299.0 + local.get $$t299.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 293 + i32.mul + i32.add + local.set $$t300.1 + local.get $$t300.0 + call $runtime.Block.Release + local.set $$t300.0 + local.get $$t300.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 294 + i32.mul + i32.add + local.set $$t301.1 + local.get $$t301.0 + call $runtime.Block.Release + local.set $$t301.0 + local.get $$t301.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 295 + i32.mul + i32.add + local.set $$t302.1 + local.get $$t302.0 + call $runtime.Block.Release + local.set $$t302.0 + local.get $$t302.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 296 + i32.mul + i32.add + local.set $$t303.1 + local.get $$t303.0 + call $runtime.Block.Release + local.set $$t303.0 + local.get $$t303.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 297 + i32.mul + i32.add + local.set $$t304.1 + local.get $$t304.0 + call $runtime.Block.Release + local.set $$t304.0 + local.get $$t304.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 298 + i32.mul + i32.add + local.set $$t305.1 + local.get $$t305.0 + call $runtime.Block.Release + local.set $$t305.0 + local.get $$t305.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 299 + i32.mul + i32.add + local.set $$t306.1 + local.get $$t306.0 + call $runtime.Block.Release + local.set $$t306.0 + local.get $$t306.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 300 + i32.mul + i32.add + local.set $$t307.1 + local.get $$t307.0 + call $runtime.Block.Release + local.set $$t307.0 + local.get $$t307.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 301 + i32.mul + i32.add + local.set $$t308.1 + local.get $$t308.0 + call $runtime.Block.Release + local.set $$t308.0 + local.get $$t308.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 302 + i32.mul + i32.add + local.set $$t309.1 + local.get $$t309.0 + call $runtime.Block.Release + local.set $$t309.0 + local.get $$t309.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 303 + i32.mul + i32.add + local.set $$t310.1 + local.get $$t310.0 + call $runtime.Block.Release + local.set $$t310.0 + local.get $$t310.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 304 + i32.mul + i32.add + local.set $$t311.1 + local.get $$t311.0 + call $runtime.Block.Release + local.set $$t311.0 + local.get $$t311.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 305 + i32.mul + i32.add + local.set $$t312.1 + local.get $$t312.0 + call $runtime.Block.Release + local.set $$t312.0 + local.get $$t312.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 306 + i32.mul + i32.add + local.set $$t313.1 + local.get $$t313.0 + call $runtime.Block.Release + local.set $$t313.0 + local.get $$t313.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 307 + i32.mul + i32.add + local.set $$t314.1 + local.get $$t314.0 + call $runtime.Block.Release + local.set $$t314.0 + local.get $$t314.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 308 + i32.mul + i32.add + local.set $$t315.1 + local.get $$t315.0 + call $runtime.Block.Release + local.set $$t315.0 + local.get $$t315.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 309 + i32.mul + i32.add + local.set $$t316.1 + local.get $$t316.0 + call $runtime.Block.Release + local.set $$t316.0 + local.get $$t316.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 310 + i32.mul + i32.add + local.set $$t317.1 + local.get $$t317.0 + call $runtime.Block.Release + local.set $$t317.0 + local.get $$t317.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 311 + i32.mul + i32.add + local.set $$t318.1 + local.get $$t318.0 + call $runtime.Block.Release + local.set $$t318.0 + local.get $$t318.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 312 + i32.mul + i32.add + local.set $$t319.1 + local.get $$t319.0 + call $runtime.Block.Release + local.set $$t319.0 + local.get $$t319.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 313 + i32.mul + i32.add + local.set $$t320.1 + local.get $$t320.0 + call $runtime.Block.Release + local.set $$t320.0 + local.get $$t320.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 314 + i32.mul + i32.add + local.set $$t321.1 + local.get $$t321.0 + call $runtime.Block.Release + local.set $$t321.0 + local.get $$t321.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 315 + i32.mul + i32.add + local.set $$t322.1 + local.get $$t322.0 + call $runtime.Block.Release + local.set $$t322.0 + local.get $$t322.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 316 + i32.mul + i32.add + local.set $$t323.1 + local.get $$t323.0 + call $runtime.Block.Release + local.set $$t323.0 + local.get $$t323.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 317 + i32.mul + i32.add + local.set $$t324.1 + local.get $$t324.0 + call $runtime.Block.Release + local.set $$t324.0 + local.get $$t324.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 318 + i32.mul + i32.add + local.set $$t325.1 + local.get $$t325.0 + call $runtime.Block.Release + local.set $$t325.0 + local.get $$t325.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 319 + i32.mul + i32.add + local.set $$t326.1 + local.get $$t326.0 + call $runtime.Block.Release + local.set $$t326.0 + local.get $$t326.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 320 + i32.mul + i32.add + local.set $$t327.1 + local.get $$t327.0 + call $runtime.Block.Release + local.set $$t327.0 + local.get $$t327.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 321 + i32.mul + i32.add + local.set $$t328.1 + local.get $$t328.0 + call $runtime.Block.Release + local.set $$t328.0 + local.get $$t328.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 322 + i32.mul + i32.add + local.set $$t329.1 + local.get $$t329.0 + call $runtime.Block.Release + local.set $$t329.0 + local.get $$t329.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 323 + i32.mul + i32.add + local.set $$t330.1 + local.get $$t330.0 + call $runtime.Block.Release + local.set $$t330.0 + local.get $$t330.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 324 + i32.mul + i32.add + local.set $$t331.1 + local.get $$t331.0 + call $runtime.Block.Release + local.set $$t331.0 + local.get $$t331.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 325 + i32.mul + i32.add + local.set $$t332.1 + local.get $$t332.0 + call $runtime.Block.Release + local.set $$t332.0 + local.get $$t332.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 326 + i32.mul + i32.add + local.set $$t333.1 + local.get $$t333.0 + call $runtime.Block.Release + local.set $$t333.0 + local.get $$t333.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 327 + i32.mul + i32.add + local.set $$t334.1 + local.get $$t334.0 + call $runtime.Block.Release + local.set $$t334.0 + local.get $$t334.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 328 + i32.mul + i32.add + local.set $$t335.1 + local.get $$t335.0 + call $runtime.Block.Release + local.set $$t335.0 + local.get $$t335.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 329 + i32.mul + i32.add + local.set $$t336.1 + local.get $$t336.0 + call $runtime.Block.Release + local.set $$t336.0 + local.get $$t336.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 330 + i32.mul + i32.add + local.set $$t337.1 + local.get $$t337.0 + call $runtime.Block.Release + local.set $$t337.0 + local.get $$t337.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 331 + i32.mul + i32.add + local.set $$t338.1 + local.get $$t338.0 + call $runtime.Block.Release + local.set $$t338.0 + local.get $$t338.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 332 + i32.mul + i32.add + local.set $$t339.1 + local.get $$t339.0 + call $runtime.Block.Release + local.set $$t339.0 + local.get $$t339.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 333 + i32.mul + i32.add + local.set $$t340.1 + local.get $$t340.0 + call $runtime.Block.Release + local.set $$t340.0 + local.get $$t340.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 334 + i32.mul + i32.add + local.set $$t341.1 + local.get $$t341.0 + call $runtime.Block.Release + local.set $$t341.0 + local.get $$t341.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 335 + i32.mul + i32.add + local.set $$t342.1 + local.get $$t342.0 + call $runtime.Block.Release + local.set $$t342.0 + local.get $$t342.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 336 + i32.mul + i32.add + local.set $$t343.1 + local.get $$t343.0 + call $runtime.Block.Release + local.set $$t343.0 + local.get $$t343.1 + i32.const 105 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 337 + i32.mul + i32.add + local.set $$t344.1 + local.get $$t344.0 + call $runtime.Block.Release + local.set $$t344.0 + local.get $$t344.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 338 + i32.mul + i32.add + local.set $$t345.1 + local.get $$t345.0 + call $runtime.Block.Release + local.set $$t345.0 + local.get $$t345.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 339 + i32.mul + i32.add + local.set $$t346.1 + local.get $$t346.0 + call $runtime.Block.Release + local.set $$t346.0 + local.get $$t346.1 + i32.const 105 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 340 + i32.mul + i32.add + local.set $$t347.1 + local.get $$t347.0 + call $runtime.Block.Release + local.set $$t347.0 + local.get $$t347.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 341 + i32.mul + i32.add + local.set $$t348.1 + local.get $$t348.0 + call $runtime.Block.Release + local.set $$t348.0 + local.get $$t348.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 342 + i32.mul + i32.add + local.set $$t349.1 + local.get $$t349.0 + call $runtime.Block.Release + local.set $$t349.0 + local.get $$t349.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 343 + i32.mul + i32.add + local.set $$t350.1 + local.get $$t350.0 + call $runtime.Block.Release + local.set $$t350.0 + local.get $$t350.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 344 + i32.mul + i32.add + local.set $$t351.1 + local.get $$t351.0 + call $runtime.Block.Release + local.set $$t351.0 + local.get $$t351.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 345 + i32.mul + i32.add + local.set $$t352.1 + local.get $$t352.0 + call $runtime.Block.Release + local.set $$t352.0 + local.get $$t352.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 346 + i32.mul + i32.add + local.set $$t353.1 + local.get $$t353.0 + call $runtime.Block.Release + local.set $$t353.0 + local.get $$t353.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 347 + i32.mul + i32.add + local.set $$t354.1 + local.get $$t354.0 + call $runtime.Block.Release + local.set $$t354.0 + local.get $$t354.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 348 + i32.mul + i32.add + local.set $$t355.1 + local.get $$t355.0 + call $runtime.Block.Release + local.set $$t355.0 + local.get $$t355.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 349 + i32.mul + i32.add + local.set $$t356.1 + local.get $$t356.0 + call $runtime.Block.Release + local.set $$t356.0 + local.get $$t356.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 350 + i32.mul + i32.add + local.set $$t357.1 + local.get $$t357.0 + call $runtime.Block.Release + local.set $$t357.0 + local.get $$t357.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 351 + i32.mul + i32.add + local.set $$t358.1 + local.get $$t358.0 + call $runtime.Block.Release + local.set $$t358.0 + local.get $$t358.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 352 + i32.mul + i32.add + local.set $$t359.1 + local.get $$t359.0 + call $runtime.Block.Release + local.set $$t359.0 + local.get $$t359.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 353 + i32.mul + i32.add + local.set $$t360.1 + local.get $$t360.0 + call $runtime.Block.Release + local.set $$t360.0 + local.get $$t360.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 354 + i32.mul + i32.add + local.set $$t361.1 + local.get $$t361.0 + call $runtime.Block.Release + local.set $$t361.0 + local.get $$t361.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 355 + i32.mul + i32.add + local.set $$t362.1 + local.get $$t362.0 + call $runtime.Block.Release + local.set $$t362.0 + local.get $$t362.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 356 + i32.mul + i32.add + local.set $$t363.1 + local.get $$t363.0 + call $runtime.Block.Release + local.set $$t363.0 + local.get $$t363.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 357 + i32.mul + i32.add + local.set $$t364.1 + local.get $$t364.0 + call $runtime.Block.Release + local.set $$t364.0 + local.get $$t364.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 358 + i32.mul + i32.add + local.set $$t365.1 + local.get $$t365.0 + call $runtime.Block.Release + local.set $$t365.0 + local.get $$t365.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 359 + i32.mul + i32.add + local.set $$t366.1 + local.get $$t366.0 + call $runtime.Block.Release + local.set $$t366.0 + local.get $$t366.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 360 + i32.mul + i32.add + local.set $$t367.1 + local.get $$t367.0 + call $runtime.Block.Release + local.set $$t367.0 + local.get $$t367.1 + i32.const 84 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 361 + i32.mul + i32.add + local.set $$t368.1 + local.get $$t368.0 + call $runtime.Block.Release + local.set $$t368.0 + local.get $$t368.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 362 + i32.mul + i32.add + local.set $$t369.1 + local.get $$t369.0 + call $runtime.Block.Release + local.set $$t369.0 + local.get $$t369.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 363 + i32.mul + i32.add + local.set $$t370.1 + local.get $$t370.0 + call $runtime.Block.Release + local.set $$t370.0 + local.get $$t370.1 + i32.const 21 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 364 + i32.mul + i32.add + local.set $$t371.1 + local.get $$t371.0 + call $runtime.Block.Release + local.set $$t371.0 + local.get $$t371.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 365 + i32.mul + i32.add + local.set $$t372.1 + local.get $$t372.0 + call $runtime.Block.Release + local.set $$t372.0 + local.get $$t372.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 366 + i32.mul + i32.add + local.set $$t373.1 + local.get $$t373.0 + call $runtime.Block.Release + local.set $$t373.0 + local.get $$t373.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 367 + i32.mul + i32.add + local.set $$t374.1 + local.get $$t374.0 + call $runtime.Block.Release + local.set $$t374.0 + local.get $$t374.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 368 + i32.mul + i32.add + local.set $$t375.1 + local.get $$t375.0 + call $runtime.Block.Release + local.set $$t375.0 + local.get $$t375.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 369 + i32.mul + i32.add + local.set $$t376.1 + local.get $$t376.0 + call $runtime.Block.Release + local.set $$t376.0 + local.get $$t376.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 370 + i32.mul + i32.add + local.set $$t377.1 + local.get $$t377.0 + call $runtime.Block.Release + local.set $$t377.0 + local.get $$t377.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 371 + i32.mul + i32.add + local.set $$t378.1 + local.get $$t378.0 + call $runtime.Block.Release + local.set $$t378.0 + local.get $$t378.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 372 + i32.mul + i32.add + local.set $$t379.1 + local.get $$t379.0 + call $runtime.Block.Release + local.set $$t379.0 + local.get $$t379.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 373 + i32.mul + i32.add + local.set $$t380.1 + local.get $$t380.0 + call $runtime.Block.Release + local.set $$t380.0 + local.get $$t380.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 374 + i32.mul + i32.add + local.set $$t381.1 + local.get $$t381.0 + call $runtime.Block.Release + local.set $$t381.0 + local.get $$t381.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 375 + i32.mul + i32.add + local.set $$t382.1 + local.get $$t382.0 + call $runtime.Block.Release + local.set $$t382.0 + local.get $$t382.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 376 + i32.mul + i32.add + local.set $$t383.1 + local.get $$t383.0 + call $runtime.Block.Release + local.set $$t383.0 + local.get $$t383.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 377 + i32.mul + i32.add + local.set $$t384.1 + local.get $$t384.0 + call $runtime.Block.Release + local.set $$t384.0 + local.get $$t384.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 378 + i32.mul + i32.add + local.set $$t385.1 + local.get $$t385.0 + call $runtime.Block.Release + local.set $$t385.0 + local.get $$t385.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 379 + i32.mul + i32.add + local.set $$t386.1 + local.get $$t386.0 + call $runtime.Block.Release + local.set $$t386.0 + local.get $$t386.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 380 + i32.mul + i32.add + local.set $$t387.1 + local.get $$t387.0 + call $runtime.Block.Release + local.set $$t387.0 + local.get $$t387.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 381 + i32.mul + i32.add + local.set $$t388.1 + local.get $$t388.0 + call $runtime.Block.Release + local.set $$t388.0 + local.get $$t388.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 382 + i32.mul + i32.add + local.set $$t389.1 + local.get $$t389.0 + call $runtime.Block.Release + local.set $$t389.0 + local.get $$t389.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 383 + i32.mul + i32.add + local.set $$t390.1 + local.get $$t390.0 + call $runtime.Block.Release + local.set $$t390.0 + local.get $$t390.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 384 + i32.mul + i32.add + local.set $$t391.1 + local.get $$t391.0 + call $runtime.Block.Release + local.set $$t391.0 + local.get $$t391.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 385 + i32.mul + i32.add + local.set $$t392.1 + local.get $$t392.0 + call $runtime.Block.Release + local.set $$t392.0 + local.get $$t392.1 + i32.const 5 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 386 + i32.mul + i32.add + local.set $$t393.1 + local.get $$t393.0 + call $runtime.Block.Release + local.set $$t393.0 + local.get $$t393.1 + i32.const 80 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 387 + i32.mul + i32.add + local.set $$t394.1 + local.get $$t394.0 + call $runtime.Block.Release + local.set $$t394.0 + local.get $$t394.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 388 + i32.mul + i32.add + local.set $$t395.1 + local.get $$t395.0 + call $runtime.Block.Release + local.set $$t395.0 + local.get $$t395.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 389 + i32.mul + i32.add + local.set $$t396.1 + local.get $$t396.0 + call $runtime.Block.Release + local.set $$t396.0 + local.get $$t396.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 390 + i32.mul + i32.add + local.set $$t397.1 + local.get $$t397.0 + call $runtime.Block.Release + local.set $$t397.0 + local.get $$t397.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 391 + i32.mul + i32.add + local.set $$t398.1 + local.get $$t398.0 + call $runtime.Block.Release + local.set $$t398.0 + local.get $$t398.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 392 + i32.mul + i32.add + local.set $$t399.1 + local.get $$t399.0 + call $runtime.Block.Release + local.set $$t399.0 + local.get $$t399.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 393 + i32.mul + i32.add + local.set $$t400.1 + local.get $$t400.0 + call $runtime.Block.Release + local.set $$t400.0 + local.get $$t400.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 394 + i32.mul + i32.add + local.set $$t401.1 + local.get $$t401.0 + call $runtime.Block.Release + local.set $$t401.0 + local.get $$t401.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 395 + i32.mul + i32.add + local.set $$t402.1 + local.get $$t402.0 + call $runtime.Block.Release + local.set $$t402.0 + local.get $$t402.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 396 + i32.mul + i32.add + local.set $$t403.1 + local.get $$t403.0 + call $runtime.Block.Release + local.set $$t403.0 + local.get $$t403.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 397 + i32.mul + i32.add + local.set $$t404.1 + local.get $$t404.0 + call $runtime.Block.Release + local.set $$t404.0 + local.get $$t404.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 398 + i32.mul + i32.add + local.set $$t405.1 + local.get $$t405.0 + call $runtime.Block.Release + local.set $$t405.0 + local.get $$t405.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 399 + i32.mul + i32.add + local.set $$t406.1 + local.get $$t406.0 + call $runtime.Block.Release + local.set $$t406.0 + local.get $$t406.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 400 + i32.mul + i32.add + local.set $$t407.1 + local.get $$t407.0 + call $runtime.Block.Release + local.set $$t407.0 + local.get $$t407.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 401 + i32.mul + i32.add + local.set $$t408.1 + local.get $$t408.0 + call $runtime.Block.Release + local.set $$t408.0 + local.get $$t408.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 402 + i32.mul + i32.add + local.set $$t409.1 + local.get $$t409.0 + call $runtime.Block.Release + local.set $$t409.0 + local.get $$t409.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 403 + i32.mul + i32.add + local.set $$t410.1 + local.get $$t410.0 + call $runtime.Block.Release + local.set $$t410.0 + local.get $$t410.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 404 + i32.mul + i32.add + local.set $$t411.1 + local.get $$t411.0 + call $runtime.Block.Release + local.set $$t411.0 + local.get $$t411.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 405 + i32.mul + i32.add + local.set $$t412.1 + local.get $$t412.0 + call $runtime.Block.Release + local.set $$t412.0 + local.get $$t412.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 406 + i32.mul + i32.add + local.set $$t413.1 + local.get $$t413.0 + call $runtime.Block.Release + local.set $$t413.0 + local.get $$t413.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 407 + i32.mul + i32.add + local.set $$t414.1 + local.get $$t414.0 + call $runtime.Block.Release + local.set $$t414.0 + local.get $$t414.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 408 + i32.mul + i32.add + local.set $$t415.1 + local.get $$t415.0 + call $runtime.Block.Release + local.set $$t415.0 + local.get $$t415.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 409 + i32.mul + i32.add + local.set $$t416.1 + local.get $$t416.0 + call $runtime.Block.Release + local.set $$t416.0 + local.get $$t416.1 + i32.const 90 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 410 + i32.mul + i32.add + local.set $$t417.1 + local.get $$t417.0 + call $runtime.Block.Release + local.set $$t417.0 + local.get $$t417.1 + i32.const 165 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 411 + i32.mul + i32.add + local.set $$t418.1 + local.get $$t418.0 + call $runtime.Block.Release + local.set $$t418.0 + local.get $$t418.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 412 + i32.mul + i32.add + local.set $$t419.1 + local.get $$t419.0 + call $runtime.Block.Release + local.set $$t419.0 + local.get $$t419.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 413 + i32.mul + i32.add + local.set $$t420.1 + local.get $$t420.0 + call $runtime.Block.Release + local.set $$t420.0 + local.get $$t420.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 414 + i32.mul + i32.add + local.set $$t421.1 + local.get $$t421.0 + call $runtime.Block.Release + local.set $$t421.0 + local.get $$t421.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 415 + i32.mul + i32.add + local.set $$t422.1 + local.get $$t422.0 + call $runtime.Block.Release + local.set $$t422.0 + local.get $$t422.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 416 + i32.mul + i32.add + local.set $$t423.1 + local.get $$t423.0 + call $runtime.Block.Release + local.set $$t423.0 + local.get $$t423.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 417 + i32.mul + i32.add + local.set $$t424.1 + local.get $$t424.0 + call $runtime.Block.Release + local.set $$t424.0 + local.get $$t424.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 418 + i32.mul + i32.add + local.set $$t425.1 + local.get $$t425.0 + call $runtime.Block.Release + local.set $$t425.0 + local.get $$t425.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 419 + i32.mul + i32.add + local.set $$t426.1 + local.get $$t426.0 + call $runtime.Block.Release + local.set $$t426.0 + local.get $$t426.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 420 + i32.mul + i32.add + local.set $$t427.1 + local.get $$t427.0 + call $runtime.Block.Release + local.set $$t427.0 + local.get $$t427.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 421 + i32.mul + i32.add + local.set $$t428.1 + local.get $$t428.0 + call $runtime.Block.Release + local.set $$t428.0 + local.get $$t428.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 422 + i32.mul + i32.add + local.set $$t429.1 + local.get $$t429.0 + call $runtime.Block.Release + local.set $$t429.0 + local.get $$t429.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 423 + i32.mul + i32.add + local.set $$t430.1 + local.get $$t430.0 + call $runtime.Block.Release + local.set $$t430.0 + local.get $$t430.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 424 + i32.mul + i32.add + local.set $$t431.1 + local.get $$t431.0 + call $runtime.Block.Release + local.set $$t431.0 + local.get $$t431.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 425 + i32.mul + i32.add + local.set $$t432.1 + local.get $$t432.0 + call $runtime.Block.Release + local.set $$t432.0 + local.get $$t432.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 426 + i32.mul + i32.add + local.set $$t433.1 + local.get $$t433.0 + call $runtime.Block.Release + local.set $$t433.0 + local.get $$t433.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 427 + i32.mul + i32.add + local.set $$t434.1 + local.get $$t434.0 + call $runtime.Block.Release + local.set $$t434.0 + local.get $$t434.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 428 + i32.mul + i32.add + local.set $$t435.1 + local.get $$t435.0 + call $runtime.Block.Release + local.set $$t435.0 + local.get $$t435.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 429 + i32.mul + i32.add + local.set $$t436.1 + local.get $$t436.0 + call $runtime.Block.Release + local.set $$t436.0 + local.get $$t436.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 430 + i32.mul + i32.add + local.set $$t437.1 + local.get $$t437.0 + call $runtime.Block.Release + local.set $$t437.0 + local.get $$t437.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 431 + i32.mul + i32.add + local.set $$t438.1 + local.get $$t438.0 + call $runtime.Block.Release + local.set $$t438.0 + local.get $$t438.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 432 + i32.mul + i32.add + local.set $$t439.1 + local.get $$t439.0 + call $runtime.Block.Release + local.set $$t439.0 + local.get $$t439.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 433 + i32.mul + i32.add + local.set $$t440.1 + local.get $$t440.0 + call $runtime.Block.Release + local.set $$t440.0 + local.get $$t440.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 434 + i32.mul + i32.add + local.set $$t441.1 + local.get $$t441.0 + call $runtime.Block.Release + local.set $$t441.0 + local.get $$t441.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 435 + i32.mul + i32.add + local.set $$t442.1 + local.get $$t442.0 + call $runtime.Block.Release + local.set $$t442.0 + local.get $$t442.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 436 + i32.mul + i32.add + local.set $$t443.1 + local.get $$t443.0 + call $runtime.Block.Release + local.set $$t443.0 + local.get $$t443.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 437 + i32.mul + i32.add + local.set $$t444.1 + local.get $$t444.0 + call $runtime.Block.Release + local.set $$t444.0 + local.get $$t444.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 438 + i32.mul + i32.add + local.set $$t445.1 + local.get $$t445.0 + call $runtime.Block.Release + local.set $$t445.0 + local.get $$t445.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 439 + i32.mul + i32.add + local.set $$t446.1 + local.get $$t446.0 + call $runtime.Block.Release + local.set $$t446.0 + local.get $$t446.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 440 + i32.mul + i32.add + local.set $$t447.1 + local.get $$t447.0 + call $runtime.Block.Release + local.set $$t447.0 + local.get $$t447.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 441 + i32.mul + i32.add + local.set $$t448.1 + local.get $$t448.0 + call $runtime.Block.Release + local.set $$t448.0 + local.get $$t448.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 442 + i32.mul + i32.add + local.set $$t449.1 + local.get $$t449.0 + call $runtime.Block.Release + local.set $$t449.0 + local.get $$t449.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 443 + i32.mul + i32.add + local.set $$t450.1 + local.get $$t450.0 + call $runtime.Block.Release + local.set $$t450.0 + local.get $$t450.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 444 + i32.mul + i32.add + local.set $$t451.1 + local.get $$t451.0 + call $runtime.Block.Release + local.set $$t451.0 + local.get $$t451.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 445 + i32.mul + i32.add + local.set $$t452.1 + local.get $$t452.0 + call $runtime.Block.Release + local.set $$t452.0 + local.get $$t452.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 446 + i32.mul + i32.add + local.set $$t453.1 + local.get $$t453.0 + call $runtime.Block.Release + local.set $$t453.0 + local.get $$t453.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 447 + i32.mul + i32.add + local.set $$t454.1 + local.get $$t454.0 + call $runtime.Block.Release + local.set $$t454.0 + local.get $$t454.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 448 + i32.mul + i32.add + local.set $$t455.1 + local.get $$t455.0 + call $runtime.Block.Release + local.set $$t455.0 + local.get $$t455.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 449 + i32.mul + i32.add + local.set $$t456.1 + local.get $$t456.0 + call $runtime.Block.Release + local.set $$t456.0 + local.get $$t456.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 450 + i32.mul + i32.add + local.set $$t457.1 + local.get $$t457.0 + call $runtime.Block.Release + local.set $$t457.0 + local.get $$t457.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 451 + i32.mul + i32.add + local.set $$t458.1 + local.get $$t458.0 + call $runtime.Block.Release + local.set $$t458.0 + local.get $$t458.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 452 + i32.mul + i32.add + local.set $$t459.1 + local.get $$t459.0 + call $runtime.Block.Release + local.set $$t459.0 + local.get $$t459.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 453 + i32.mul + i32.add + local.set $$t460.1 + local.get $$t460.0 + call $runtime.Block.Release + local.set $$t460.0 + local.get $$t460.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 454 + i32.mul + i32.add + local.set $$t461.1 + local.get $$t461.0 + call $runtime.Block.Release + local.set $$t461.0 + local.get $$t461.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 455 + i32.mul + i32.add + local.set $$t462.1 + local.get $$t462.0 + call $runtime.Block.Release + local.set $$t462.0 + local.get $$t462.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 456 + i32.mul + i32.add + local.set $$t463.1 + local.get $$t463.0 + call $runtime.Block.Release + local.set $$t463.0 + local.get $$t463.1 + i32.const 6 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 457 + i32.mul + i32.add + local.set $$t464.1 + local.get $$t464.0 + call $runtime.Block.Release + local.set $$t464.0 + local.get $$t464.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 458 + i32.mul + i32.add + local.set $$t465.1 + local.get $$t465.0 + call $runtime.Block.Release + local.set $$t465.0 + local.get $$t465.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 459 + i32.mul + i32.add + local.set $$t466.1 + local.get $$t466.0 + call $runtime.Block.Release + local.set $$t466.0 + local.get $$t466.1 + i32.const 144 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 460 + i32.mul + i32.add + local.set $$t467.1 + local.get $$t467.0 + call $runtime.Block.Release + local.set $$t467.0 + local.get $$t467.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 461 + i32.mul + i32.add + local.set $$t468.1 + local.get $$t468.0 + call $runtime.Block.Release + local.set $$t468.0 + local.get $$t468.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 462 + i32.mul + i32.add + local.set $$t469.1 + local.get $$t469.0 + call $runtime.Block.Release + local.set $$t469.0 + local.get $$t469.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 463 + i32.mul + i32.add + local.set $$t470.1 + local.get $$t470.0 + call $runtime.Block.Release + local.set $$t470.0 + local.get $$t470.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 464 + i32.mul + i32.add + local.set $$t471.1 + local.get $$t471.0 + call $runtime.Block.Release + local.set $$t471.0 + local.get $$t471.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 465 + i32.mul + i32.add + local.set $$t472.1 + local.get $$t472.0 + call $runtime.Block.Release + local.set $$t472.0 + local.get $$t472.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 466 + i32.mul + i32.add + local.set $$t473.1 + local.get $$t473.0 + call $runtime.Block.Release + local.set $$t473.0 + local.get $$t473.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 467 + i32.mul + i32.add + local.set $$t474.1 + local.get $$t474.0 + call $runtime.Block.Release + local.set $$t474.0 + local.get $$t474.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 468 + i32.mul + i32.add + local.set $$t475.1 + local.get $$t475.0 + call $runtime.Block.Release + local.set $$t475.0 + local.get $$t475.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 469 + i32.mul + i32.add + local.set $$t476.1 + local.get $$t476.0 + call $runtime.Block.Release + local.set $$t476.0 + local.get $$t476.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 470 + i32.mul + i32.add + local.set $$t477.1 + local.get $$t477.0 + call $runtime.Block.Release + local.set $$t477.0 + local.get $$t477.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 471 + i32.mul + i32.add + local.set $$t478.1 + local.get $$t478.0 + call $runtime.Block.Release + local.set $$t478.0 + local.get $$t478.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 472 + i32.mul + i32.add + local.set $$t479.1 + local.get $$t479.0 + call $runtime.Block.Release + local.set $$t479.0 + local.get $$t479.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 473 + i32.mul + i32.add + local.set $$t480.1 + local.get $$t480.0 + call $runtime.Block.Release + local.set $$t480.0 + local.get $$t480.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 474 + i32.mul + i32.add + local.set $$t481.1 + local.get $$t481.0 + call $runtime.Block.Release + local.set $$t481.0 + local.get $$t481.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 475 + i32.mul + i32.add + local.set $$t482.1 + local.get $$t482.0 + call $runtime.Block.Release + local.set $$t482.0 + local.get $$t482.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 476 + i32.mul + i32.add + local.set $$t483.1 + local.get $$t483.0 + call $runtime.Block.Release + local.set $$t483.0 + local.get $$t483.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 477 + i32.mul + i32.add + local.set $$t484.1 + local.get $$t484.0 + call $runtime.Block.Release + local.set $$t484.0 + local.get $$t484.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 478 + i32.mul + i32.add + local.set $$t485.1 + local.get $$t485.0 + call $runtime.Block.Release + local.set $$t485.0 + local.get $$t485.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 479 + i32.mul + i32.add + local.set $$t486.1 + local.get $$t486.0 + call $runtime.Block.Release + local.set $$t486.0 + local.get $$t486.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 480 + i32.mul + i32.add + local.set $$t487.1 + local.get $$t487.0 + call $runtime.Block.Release + local.set $$t487.0 + local.get $$t487.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 481 + i32.mul + i32.add + local.set $$t488.1 + local.get $$t488.0 + call $runtime.Block.Release + local.set $$t488.0 + local.get $$t488.1 + i32.const 165 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 482 + i32.mul + i32.add + local.set $$t489.1 + local.get $$t489.0 + call $runtime.Block.Release + local.set $$t489.0 + local.get $$t489.1 + i32.const 90 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 483 + i32.mul + i32.add + local.set $$t490.1 + local.get $$t490.0 + call $runtime.Block.Release + local.set $$t490.0 + local.get $$t490.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 484 + i32.mul + i32.add + local.set $$t491.1 + local.get $$t491.0 + call $runtime.Block.Release + local.set $$t491.0 + local.get $$t491.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 485 + i32.mul + i32.add + local.set $$t492.1 + local.get $$t492.0 + call $runtime.Block.Release + local.set $$t492.0 + local.get $$t492.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 486 + i32.mul + i32.add + local.set $$t493.1 + local.get $$t493.0 + call $runtime.Block.Release + local.set $$t493.0 + local.get $$t493.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 487 + i32.mul + i32.add + local.set $$t494.1 + local.get $$t494.0 + call $runtime.Block.Release + local.set $$t494.0 + local.get $$t494.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 488 + i32.mul + i32.add + local.set $$t495.1 + local.get $$t495.0 + call $runtime.Block.Release + local.set $$t495.0 + local.get $$t495.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 489 + i32.mul + i32.add + local.set $$t496.1 + local.get $$t496.0 + call $runtime.Block.Release + local.set $$t496.0 + local.get $$t496.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 490 + i32.mul + i32.add + local.set $$t497.1 + local.get $$t497.0 + call $runtime.Block.Release + local.set $$t497.0 + local.get $$t497.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 491 + i32.mul + i32.add + local.set $$t498.1 + local.get $$t498.0 + call $runtime.Block.Release + local.set $$t498.0 + local.get $$t498.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 492 + i32.mul + i32.add + local.set $$t499.1 + local.get $$t499.0 + call $runtime.Block.Release + local.set $$t499.0 + local.get $$t499.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 493 + i32.mul + i32.add + local.set $$t500.1 + local.get $$t500.0 + call $runtime.Block.Release + local.set $$t500.0 + local.get $$t500.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 494 + i32.mul + i32.add + local.set $$t501.1 + local.get $$t501.0 + call $runtime.Block.Release + local.set $$t501.0 + local.get $$t501.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 495 + i32.mul + i32.add + local.set $$t502.1 + local.get $$t502.0 + call $runtime.Block.Release + local.set $$t502.0 + local.get $$t502.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 496 + i32.mul + i32.add + local.set $$t503.1 + local.get $$t503.0 + call $runtime.Block.Release + local.set $$t503.0 + local.get $$t503.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 497 + i32.mul + i32.add + local.set $$t504.1 + local.get $$t504.0 + call $runtime.Block.Release + local.set $$t504.0 + local.get $$t504.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 498 + i32.mul + i32.add + local.set $$t505.1 + local.get $$t505.0 + call $runtime.Block.Release + local.set $$t505.0 + local.get $$t505.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 499 + i32.mul + i32.add + local.set $$t506.1 + local.get $$t506.0 + call $runtime.Block.Release + local.set $$t506.0 + local.get $$t506.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 500 + i32.mul + i32.add + local.set $$t507.1 + local.get $$t507.0 + call $runtime.Block.Release + local.set $$t507.0 + local.get $$t507.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 501 + i32.mul + i32.add + local.set $$t508.1 + local.get $$t508.0 + call $runtime.Block.Release + local.set $$t508.0 + local.get $$t508.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 502 + i32.mul + i32.add + local.set $$t509.1 + local.get $$t509.0 + call $runtime.Block.Release + local.set $$t509.0 + local.get $$t509.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 503 + i32.mul + i32.add + local.set $$t510.1 + local.get $$t510.0 + call $runtime.Block.Release + local.set $$t510.0 + local.get $$t510.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 504 + i32.mul + i32.add + local.set $$t511.1 + local.get $$t511.0 + call $runtime.Block.Release + local.set $$t511.0 + local.get $$t511.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 505 + i32.mul + i32.add + local.set $$t512.1 + local.get $$t512.0 + call $runtime.Block.Release + local.set $$t512.0 + local.get $$t512.1 + i32.const 144 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 506 + i32.mul + i32.add + local.set $$t513.1 + local.get $$t513.0 + call $runtime.Block.Release + local.set $$t513.0 + local.get $$t513.1 + i32.const 6 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 507 + i32.mul + i32.add + local.set $$t514.1 + local.get $$t514.0 + call $runtime.Block.Release + local.set $$t514.0 + local.get $$t514.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 508 + i32.mul + i32.add + local.set $$t515.1 + local.get $$t515.0 + call $runtime.Block.Release + local.set $$t515.0 + local.get $$t515.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 509 + i32.mul + i32.add + local.set $$t516.1 + local.get $$t516.0 + call $runtime.Block.Release + local.set $$t516.0 + local.get $$t516.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 510 + i32.mul + i32.add + local.set $$t517.1 + local.get $$t517.0 + call $runtime.Block.Release + local.set $$t517.0 + local.get $$t517.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 511 + i32.mul + i32.add + local.set $$t518.1 + local.get $$t518.0 + call $runtime.Block.Release + local.set $$t518.0 + local.get $$t518.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 512 + i32.mul + i32.add + local.set $$t519.1 + local.get $$t519.0 + call $runtime.Block.Release + local.set $$t519.0 + local.get $$t519.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 513 + i32.mul + i32.add + local.set $$t520.1 + local.get $$t520.0 + call $runtime.Block.Release + local.set $$t520.0 + local.get $$t520.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 514 + i32.mul + i32.add + local.set $$t521.1 + local.get $$t521.0 + call $runtime.Block.Release + local.set $$t521.0 + local.get $$t521.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 515 + i32.mul + i32.add + local.set $$t522.1 + local.get $$t522.0 + call $runtime.Block.Release + local.set $$t522.0 + local.get $$t522.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 516 + i32.mul + i32.add + local.set $$t523.1 + local.get $$t523.0 + call $runtime.Block.Release + local.set $$t523.0 + local.get $$t523.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 517 + i32.mul + i32.add + local.set $$t524.1 + local.get $$t524.0 + call $runtime.Block.Release + local.set $$t524.0 + local.get $$t524.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 518 + i32.mul + i32.add + local.set $$t525.1 + local.get $$t525.0 + call $runtime.Block.Release + local.set $$t525.0 + local.get $$t525.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 519 + i32.mul + i32.add + local.set $$t526.1 + local.get $$t526.0 + call $runtime.Block.Release + local.set $$t526.0 + local.get $$t526.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 520 + i32.mul + i32.add + local.set $$t527.1 + local.get $$t527.0 + call $runtime.Block.Release + local.set $$t527.0 + local.get $$t527.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 521 + i32.mul + i32.add + local.set $$t528.1 + local.get $$t528.0 + call $runtime.Block.Release + local.set $$t528.0 + local.get $$t528.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 522 + i32.mul + i32.add + local.set $$t529.1 + local.get $$t529.0 + call $runtime.Block.Release + local.set $$t529.0 + local.get $$t529.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 523 + i32.mul + i32.add + local.set $$t530.1 + local.get $$t530.0 + call $runtime.Block.Release + local.set $$t530.0 + local.get $$t530.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 524 + i32.mul + i32.add + local.set $$t531.1 + local.get $$t531.0 + call $runtime.Block.Release + local.set $$t531.0 + local.get $$t531.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 525 + i32.mul + i32.add + local.set $$t532.1 + local.get $$t532.0 + call $runtime.Block.Release + local.set $$t532.0 + local.get $$t532.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 526 + i32.mul + i32.add + local.set $$t533.1 + local.get $$t533.0 + call $runtime.Block.Release + local.set $$t533.0 + local.get $$t533.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 527 + i32.mul + i32.add + local.set $$t534.1 + local.get $$t534.0 + call $runtime.Block.Release + local.set $$t534.0 + local.get $$t534.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 528 + i32.mul + i32.add + local.set $$t535.1 + local.get $$t535.0 + call $runtime.Block.Release + local.set $$t535.0 + local.get $$t535.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 529 + i32.mul + i32.add + local.set $$t536.1 + local.get $$t536.0 + call $runtime.Block.Release + local.set $$t536.0 + local.get $$t536.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 530 + i32.mul + i32.add + local.set $$t537.1 + local.get $$t537.0 + call $runtime.Block.Release + local.set $$t537.0 + local.get $$t537.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 531 + i32.mul + i32.add + local.set $$t538.1 + local.get $$t538.0 + call $runtime.Block.Release + local.set $$t538.0 + local.get $$t538.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 532 + i32.mul + i32.add + local.set $$t539.1 + local.get $$t539.0 + call $runtime.Block.Release + local.set $$t539.0 + local.get $$t539.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 533 + i32.mul + i32.add + local.set $$t540.1 + local.get $$t540.0 + call $runtime.Block.Release + local.set $$t540.0 + local.get $$t540.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 534 + i32.mul + i32.add + local.set $$t541.1 + local.get $$t541.0 + call $runtime.Block.Release + local.set $$t541.0 + local.get $$t541.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 535 + i32.mul + i32.add + local.set $$t542.1 + local.get $$t542.0 + call $runtime.Block.Release + local.set $$t542.0 + local.get $$t542.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 536 + i32.mul + i32.add + local.set $$t543.1 + local.get $$t543.0 + call $runtime.Block.Release + local.set $$t543.0 + local.get $$t543.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 537 + i32.mul + i32.add + local.set $$t544.1 + local.get $$t544.0 + call $runtime.Block.Release + local.set $$t544.0 + local.get $$t544.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 538 + i32.mul + i32.add + local.set $$t545.1 + local.get $$t545.0 + call $runtime.Block.Release + local.set $$t545.0 + local.get $$t545.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 539 + i32.mul + i32.add + local.set $$t546.1 + local.get $$t546.0 + call $runtime.Block.Release + local.set $$t546.0 + local.get $$t546.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 540 + i32.mul + i32.add + local.set $$t547.1 + local.get $$t547.0 + call $runtime.Block.Release + local.set $$t547.0 + local.get $$t547.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 541 + i32.mul + i32.add + local.set $$t548.1 + local.get $$t548.0 + call $runtime.Block.Release + local.set $$t548.0 + local.get $$t548.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 542 + i32.mul + i32.add + local.set $$t549.1 + local.get $$t549.0 + call $runtime.Block.Release + local.set $$t549.0 + local.get $$t549.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 543 + i32.mul + i32.add + local.set $$t550.1 + local.get $$t550.0 + call $runtime.Block.Release + local.set $$t550.0 + local.get $$t550.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 544 + i32.mul + i32.add + local.set $$t551.1 + local.get $$t551.0 + call $runtime.Block.Release + local.set $$t551.0 + local.get $$t551.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 545 + i32.mul + i32.add + local.set $$t552.1 + local.get $$t552.0 + call $runtime.Block.Release + local.set $$t552.0 + local.get $$t552.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 546 + i32.mul + i32.add + local.set $$t553.1 + local.get $$t553.0 + call $runtime.Block.Release + local.set $$t553.0 + local.get $$t553.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 547 + i32.mul + i32.add + local.set $$t554.1 + local.get $$t554.0 + call $runtime.Block.Release + local.set $$t554.0 + local.get $$t554.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 548 + i32.mul + i32.add + local.set $$t555.1 + local.get $$t555.0 + call $runtime.Block.Release + local.set $$t555.0 + local.get $$t555.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 549 + i32.mul + i32.add + local.set $$t556.1 + local.get $$t556.0 + call $runtime.Block.Release + local.set $$t556.0 + local.get $$t556.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 550 + i32.mul + i32.add + local.set $$t557.1 + local.get $$t557.0 + call $runtime.Block.Release + local.set $$t557.0 + local.get $$t557.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 551 + i32.mul + i32.add + local.set $$t558.1 + local.get $$t558.0 + call $runtime.Block.Release + local.set $$t558.0 + local.get $$t558.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 552 + i32.mul + i32.add + local.set $$t559.1 + local.get $$t559.0 + call $runtime.Block.Release + local.set $$t559.0 + local.get $$t559.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 553 + i32.mul + i32.add + local.set $$t560.1 + local.get $$t560.0 + call $runtime.Block.Release + local.set $$t560.0 + local.get $$t560.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 554 + i32.mul + i32.add + local.set $$t561.1 + local.get $$t561.0 + call $runtime.Block.Release + local.set $$t561.0 + local.get $$t561.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 555 + i32.mul + i32.add + local.set $$t562.1 + local.get $$t562.0 + call $runtime.Block.Release + local.set $$t562.0 + local.get $$t562.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 556 + i32.mul + i32.add + local.set $$t563.1 + local.get $$t563.0 + call $runtime.Block.Release + local.set $$t563.0 + local.get $$t563.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 557 + i32.mul + i32.add + local.set $$t564.1 + local.get $$t564.0 + call $runtime.Block.Release + local.set $$t564.0 + local.get $$t564.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 558 + i32.mul + i32.add + local.set $$t565.1 + local.get $$t565.0 + call $runtime.Block.Release + local.set $$t565.0 + local.get $$t565.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 559 + i32.mul + i32.add + local.set $$t566.1 + local.get $$t566.0 + call $runtime.Block.Release + local.set $$t566.0 + local.get $$t566.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 560 + i32.mul + i32.add + local.set $$t567.1 + local.get $$t567.0 + call $runtime.Block.Release + local.set $$t567.0 + local.get $$t567.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 561 + i32.mul + i32.add + local.set $$t568.1 + local.get $$t568.0 + call $runtime.Block.Release + local.set $$t568.0 + local.get $$t568.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 562 + i32.mul + i32.add + local.set $$t569.1 + local.get $$t569.0 + call $runtime.Block.Release + local.set $$t569.0 + local.get $$t569.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 563 + i32.mul + i32.add + local.set $$t570.1 + local.get $$t570.0 + call $runtime.Block.Release + local.set $$t570.0 + local.get $$t570.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 564 + i32.mul + i32.add + local.set $$t571.1 + local.get $$t571.0 + call $runtime.Block.Release + local.set $$t571.0 + local.get $$t571.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 565 + i32.mul + i32.add + local.set $$t572.1 + local.get $$t572.0 + call $runtime.Block.Release + local.set $$t572.0 + local.get $$t572.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 566 + i32.mul + i32.add + local.set $$t573.1 + local.get $$t573.0 + call $runtime.Block.Release + local.set $$t573.0 + local.get $$t573.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 567 + i32.mul + i32.add + local.set $$t574.1 + local.get $$t574.0 + call $runtime.Block.Release + local.set $$t574.0 + local.get $$t574.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 568 + i32.mul + i32.add + local.set $$t575.1 + local.get $$t575.0 + call $runtime.Block.Release + local.set $$t575.0 + local.get $$t575.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 569 + i32.mul + i32.add + local.set $$t576.1 + local.get $$t576.0 + call $runtime.Block.Release + local.set $$t576.0 + local.get $$t576.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 570 + i32.mul + i32.add + local.set $$t577.1 + local.get $$t577.0 + call $runtime.Block.Release + local.set $$t577.0 + local.get $$t577.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 571 + i32.mul + i32.add + local.set $$t578.1 + local.get $$t578.0 + call $runtime.Block.Release + local.set $$t578.0 + local.get $$t578.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 572 + i32.mul + i32.add + local.set $$t579.1 + local.get $$t579.0 + call $runtime.Block.Release + local.set $$t579.0 + local.get $$t579.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 573 + i32.mul + i32.add + local.set $$t580.1 + local.get $$t580.0 + call $runtime.Block.Release + local.set $$t580.0 + local.get $$t580.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 574 + i32.mul + i32.add + local.set $$t581.1 + local.get $$t581.0 + call $runtime.Block.Release + local.set $$t581.0 + local.get $$t581.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 575 + i32.mul + i32.add + local.set $$t582.1 + local.get $$t582.0 + call $runtime.Block.Release + local.set $$t582.0 + local.get $$t582.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 576 + i32.mul + i32.add + local.set $$t583.1 + local.get $$t583.0 + call $runtime.Block.Release + local.set $$t583.0 + local.get $$t583.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 577 + i32.mul + i32.add + local.set $$t584.1 + local.get $$t584.0 + call $runtime.Block.Release + local.set $$t584.0 + local.get $$t584.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 578 + i32.mul + i32.add + local.set $$t585.1 + local.get $$t585.0 + call $runtime.Block.Release + local.set $$t585.0 + local.get $$t585.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 579 + i32.mul + i32.add + local.set $$t586.1 + local.get $$t586.0 + call $runtime.Block.Release + local.set $$t586.0 + local.get $$t586.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 580 + i32.mul + i32.add + local.set $$t587.1 + local.get $$t587.0 + call $runtime.Block.Release + local.set $$t587.0 + local.get $$t587.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 581 + i32.mul + i32.add + local.set $$t588.1 + local.get $$t588.0 + call $runtime.Block.Release + local.set $$t588.0 + local.get $$t588.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 582 + i32.mul + i32.add + local.set $$t589.1 + local.get $$t589.0 + call $runtime.Block.Release + local.set $$t589.0 + local.get $$t589.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 583 + i32.mul + i32.add + local.set $$t590.1 + local.get $$t590.0 + call $runtime.Block.Release + local.set $$t590.0 + local.get $$t590.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 584 + i32.mul + i32.add + local.set $$t591.1 + local.get $$t591.0 + call $runtime.Block.Release + local.set $$t591.0 + local.get $$t591.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 585 + i32.mul + i32.add + local.set $$t592.1 + local.get $$t592.0 + call $runtime.Block.Release + local.set $$t592.0 + local.get $$t592.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 586 + i32.mul + i32.add + local.set $$t593.1 + local.get $$t593.0 + call $runtime.Block.Release + local.set $$t593.0 + local.get $$t593.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 587 + i32.mul + i32.add + local.set $$t594.1 + local.get $$t594.0 + call $runtime.Block.Release + local.set $$t594.0 + local.get $$t594.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 588 + i32.mul + i32.add + local.set $$t595.1 + local.get $$t595.0 + call $runtime.Block.Release + local.set $$t595.0 + local.get $$t595.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 589 + i32.mul + i32.add + local.set $$t596.1 + local.get $$t596.0 + call $runtime.Block.Release + local.set $$t596.0 + local.get $$t596.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 590 + i32.mul + i32.add + local.set $$t597.1 + local.get $$t597.0 + call $runtime.Block.Release + local.set $$t597.0 + local.get $$t597.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 591 + i32.mul + i32.add + local.set $$t598.1 + local.get $$t598.0 + call $runtime.Block.Release + local.set $$t598.0 + local.get $$t598.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 592 + i32.mul + i32.add + local.set $$t599.1 + local.get $$t599.0 + call $runtime.Block.Release + local.set $$t599.0 + local.get $$t599.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 593 + i32.mul + i32.add + local.set $$t600.1 + local.get $$t600.0 + call $runtime.Block.Release + local.set $$t600.0 + local.get $$t600.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 594 + i32.mul + i32.add + local.set $$t601.1 + local.get $$t601.0 + call $runtime.Block.Release + local.set $$t601.0 + local.get $$t601.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 595 + i32.mul + i32.add + local.set $$t602.1 + local.get $$t602.0 + call $runtime.Block.Release + local.set $$t602.0 + local.get $$t602.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 596 + i32.mul + i32.add + local.set $$t603.1 + local.get $$t603.0 + call $runtime.Block.Release + local.set $$t603.0 + local.get $$t603.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 597 + i32.mul + i32.add + local.set $$t604.1 + local.get $$t604.0 + call $runtime.Block.Release + local.set $$t604.0 + local.get $$t604.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 598 + i32.mul + i32.add + local.set $$t605.1 + local.get $$t605.0 + call $runtime.Block.Release + local.set $$t605.0 + local.get $$t605.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 599 + i32.mul + i32.add + local.set $$t606.1 + local.get $$t606.0 + call $runtime.Block.Release + local.set $$t606.0 + local.get $$t606.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 600 + i32.mul + i32.add + local.set $$t607.1 + local.get $$t607.0 + call $runtime.Block.Release + local.set $$t607.0 + local.get $$t607.1 + i32.const 106 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 601 + i32.mul + i32.add + local.set $$t608.1 + local.get $$t608.0 + call $runtime.Block.Release + local.set $$t608.0 + local.get $$t608.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 602 + i32.mul + i32.add + local.set $$t609.1 + local.get $$t609.0 + call $runtime.Block.Release + local.set $$t609.0 + local.get $$t609.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 603 + i32.mul + i32.add + local.set $$t610.1 + local.get $$t610.0 + call $runtime.Block.Release + local.set $$t610.0 + local.get $$t610.1 + i32.const 169 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 604 + i32.mul + i32.add + local.set $$t611.1 + local.get $$t611.0 + call $runtime.Block.Release + local.set $$t611.0 + local.get $$t611.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 605 + i32.mul + i32.add + local.set $$t612.1 + local.get $$t612.0 + call $runtime.Block.Release + local.set $$t612.0 + local.get $$t612.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 606 + i32.mul + i32.add + local.set $$t613.1 + local.get $$t613.0 + call $runtime.Block.Release + local.set $$t613.0 + local.get $$t613.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 607 + i32.mul + i32.add + local.set $$t614.1 + local.get $$t614.0 + call $runtime.Block.Release + local.set $$t614.0 + local.get $$t614.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 608 + i32.mul + i32.add + local.set $$t615.1 + local.get $$t615.0 + call $runtime.Block.Release + local.set $$t615.0 + local.get $$t615.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 609 + i32.mul + i32.add + local.set $$t616.1 + local.get $$t616.0 + call $runtime.Block.Release + local.set $$t616.0 + local.get $$t616.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 610 + i32.mul + i32.add + local.set $$t617.1 + local.get $$t617.0 + call $runtime.Block.Release + local.set $$t617.0 + local.get $$t617.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 611 + i32.mul + i32.add + local.set $$t618.1 + local.get $$t618.0 + call $runtime.Block.Release + local.set $$t618.0 + local.get $$t618.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 612 + i32.mul + i32.add + local.set $$t619.1 + local.get $$t619.0 + call $runtime.Block.Release + local.set $$t619.0 + local.get $$t619.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 613 + i32.mul + i32.add + local.set $$t620.1 + local.get $$t620.0 + call $runtime.Block.Release + local.set $$t620.0 + local.get $$t620.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 614 + i32.mul + i32.add + local.set $$t621.1 + local.get $$t621.0 + call $runtime.Block.Release + local.set $$t621.0 + local.get $$t621.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 615 + i32.mul + i32.add + local.set $$t622.1 + local.get $$t622.0 + call $runtime.Block.Release + local.set $$t622.0 + local.get $$t622.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 616 + i32.mul + i32.add + local.set $$t623.1 + local.get $$t623.0 + call $runtime.Block.Release + local.set $$t623.0 + local.get $$t623.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 617 + i32.mul + i32.add + local.set $$t624.1 + local.get $$t624.0 + call $runtime.Block.Release + local.set $$t624.0 + local.get $$t624.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 618 + i32.mul + i32.add + local.set $$t625.1 + local.get $$t625.0 + call $runtime.Block.Release + local.set $$t625.0 + local.get $$t625.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 619 + i32.mul + i32.add + local.set $$t626.1 + local.get $$t626.0 + call $runtime.Block.Release + local.set $$t626.0 + local.get $$t626.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 620 + i32.mul + i32.add + local.set $$t627.1 + local.get $$t627.0 + call $runtime.Block.Release + local.set $$t627.0 + local.get $$t627.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 621 + i32.mul + i32.add + local.set $$t628.1 + local.get $$t628.0 + call $runtime.Block.Release + local.set $$t628.0 + local.get $$t628.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 622 + i32.mul + i32.add + local.set $$t629.1 + local.get $$t629.0 + call $runtime.Block.Release + local.set $$t629.0 + local.get $$t629.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 623 + i32.mul + i32.add + local.set $$t630.1 + local.get $$t630.0 + call $runtime.Block.Release + local.set $$t630.0 + local.get $$t630.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 624 + i32.mul + i32.add + local.set $$t631.1 + local.get $$t631.0 + call $runtime.Block.Release + local.set $$t631.0 + local.get $$t631.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 625 + i32.mul + i32.add + local.set $$t632.1 + local.get $$t632.0 + call $runtime.Block.Release + local.set $$t632.0 + local.get $$t632.1 + i32.const 144 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 626 + i32.mul + i32.add + local.set $$t633.1 + local.get $$t633.0 + call $runtime.Block.Release + local.set $$t633.0 + local.get $$t633.1 + i32.const 6 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 627 + i32.mul + i32.add + local.set $$t634.1 + local.get $$t634.0 + call $runtime.Block.Release + local.set $$t634.0 + local.get $$t634.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 628 + i32.mul + i32.add + local.set $$t635.1 + local.get $$t635.0 + call $runtime.Block.Release + local.set $$t635.0 + local.get $$t635.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 629 + i32.mul + i32.add + local.set $$t636.1 + local.get $$t636.0 + call $runtime.Block.Release + local.set $$t636.0 + local.get $$t636.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 630 + i32.mul + i32.add + local.set $$t637.1 + local.get $$t637.0 + call $runtime.Block.Release + local.set $$t637.0 + local.get $$t637.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 631 + i32.mul + i32.add + local.set $$t638.1 + local.get $$t638.0 + call $runtime.Block.Release + local.set $$t638.0 + local.get $$t638.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 632 + i32.mul + i32.add + local.set $$t639.1 + local.get $$t639.0 + call $runtime.Block.Release + local.set $$t639.0 + local.get $$t639.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 633 + i32.mul + i32.add + local.set $$t640.1 + local.get $$t640.0 + call $runtime.Block.Release + local.set $$t640.0 + local.get $$t640.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 634 + i32.mul + i32.add + local.set $$t641.1 + local.get $$t641.0 + call $runtime.Block.Release + local.set $$t641.0 + local.get $$t641.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 635 + i32.mul + i32.add + local.set $$t642.1 + local.get $$t642.0 + call $runtime.Block.Release + local.set $$t642.0 + local.get $$t642.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 636 + i32.mul + i32.add + local.set $$t643.1 + local.get $$t643.0 + call $runtime.Block.Release + local.set $$t643.0 + local.get $$t643.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 637 + i32.mul + i32.add + local.set $$t644.1 + local.get $$t644.0 + call $runtime.Block.Release + local.set $$t644.0 + local.get $$t644.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 638 + i32.mul + i32.add + local.set $$t645.1 + local.get $$t645.0 + call $runtime.Block.Release + local.set $$t645.0 + local.get $$t645.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 639 + i32.mul + i32.add + local.set $$t646.1 + local.get $$t646.0 + call $runtime.Block.Release + local.set $$t646.0 + local.get $$t646.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 640 + i32.mul + i32.add + local.set $$t647.1 + local.get $$t647.0 + call $runtime.Block.Release + local.set $$t647.0 + local.get $$t647.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 641 + i32.mul + i32.add + local.set $$t648.1 + local.get $$t648.0 + call $runtime.Block.Release + local.set $$t648.0 + local.get $$t648.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 642 + i32.mul + i32.add + local.set $$t649.1 + local.get $$t649.0 + call $runtime.Block.Release + local.set $$t649.0 + local.get $$t649.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 643 + i32.mul + i32.add + local.set $$t650.1 + local.get $$t650.0 + call $runtime.Block.Release + local.set $$t650.0 + local.get $$t650.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 644 + i32.mul + i32.add + local.set $$t651.1 + local.get $$t651.0 + call $runtime.Block.Release + local.set $$t651.0 + local.get $$t651.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 645 + i32.mul + i32.add + local.set $$t652.1 + local.get $$t652.0 + call $runtime.Block.Release + local.set $$t652.0 + local.get $$t652.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 646 + i32.mul + i32.add + local.set $$t653.1 + local.get $$t653.0 + call $runtime.Block.Release + local.set $$t653.0 + local.get $$t653.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 647 + i32.mul + i32.add + local.set $$t654.1 + local.get $$t654.0 + call $runtime.Block.Release + local.set $$t654.0 + local.get $$t654.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 648 + i32.mul + i32.add + local.set $$t655.1 + local.get $$t655.0 + call $runtime.Block.Release + local.set $$t655.0 + local.get $$t655.1 + i32.const 26 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 649 + i32.mul + i32.add + local.set $$t656.1 + local.get $$t656.0 + call $runtime.Block.Release + local.set $$t656.0 + local.get $$t656.1 + i32.const 165 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 650 + i32.mul + i32.add + local.set $$t657.1 + local.get $$t657.0 + call $runtime.Block.Release + local.set $$t657.0 + local.get $$t657.1 + i32.const 90 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 651 + i32.mul + i32.add + local.set $$t658.1 + local.get $$t658.0 + call $runtime.Block.Release + local.set $$t658.0 + local.get $$t658.1 + i32.const 164 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 652 + i32.mul + i32.add + local.set $$t659.1 + local.get $$t659.0 + call $runtime.Block.Release + local.set $$t659.0 + local.get $$t659.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 653 + i32.mul + i32.add + local.set $$t660.1 + local.get $$t660.0 + call $runtime.Block.Release + local.set $$t660.0 + local.get $$t660.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 654 + i32.mul + i32.add + local.set $$t661.1 + local.get $$t661.0 + call $runtime.Block.Release + local.set $$t661.0 + local.get $$t661.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 655 + i32.mul + i32.add + local.set $$t662.1 + local.get $$t662.0 + call $runtime.Block.Release + local.set $$t662.0 + local.get $$t662.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 656 + i32.mul + i32.add + local.set $$t663.1 + local.get $$t663.0 + call $runtime.Block.Release + local.set $$t663.0 + local.get $$t663.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 657 + i32.mul + i32.add + local.set $$t664.1 + local.get $$t664.0 + call $runtime.Block.Release + local.set $$t664.0 + local.get $$t664.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 658 + i32.mul + i32.add + local.set $$t665.1 + local.get $$t665.0 + call $runtime.Block.Release + local.set $$t665.0 + local.get $$t665.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 659 + i32.mul + i32.add + local.set $$t666.1 + local.get $$t666.0 + call $runtime.Block.Release + local.set $$t666.0 + local.get $$t666.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 660 + i32.mul + i32.add + local.set $$t667.1 + local.get $$t667.0 + call $runtime.Block.Release + local.set $$t667.0 + local.get $$t667.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 661 + i32.mul + i32.add + local.set $$t668.1 + local.get $$t668.0 + call $runtime.Block.Release + local.set $$t668.0 + local.get $$t668.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 662 + i32.mul + i32.add + local.set $$t669.1 + local.get $$t669.0 + call $runtime.Block.Release + local.set $$t669.0 + local.get $$t669.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 663 + i32.mul + i32.add + local.set $$t670.1 + local.get $$t670.0 + call $runtime.Block.Release + local.set $$t670.0 + local.get $$t670.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 664 + i32.mul + i32.add + local.set $$t671.1 + local.get $$t671.0 + call $runtime.Block.Release + local.set $$t671.0 + local.get $$t671.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 665 + i32.mul + i32.add + local.set $$t672.1 + local.get $$t672.0 + call $runtime.Block.Release + local.set $$t672.0 + local.get $$t672.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 666 + i32.mul + i32.add + local.set $$t673.1 + local.get $$t673.0 + call $runtime.Block.Release + local.set $$t673.0 + local.get $$t673.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 667 + i32.mul + i32.add + local.set $$t674.1 + local.get $$t674.0 + call $runtime.Block.Release + local.set $$t674.0 + local.get $$t674.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 668 + i32.mul + i32.add + local.set $$t675.1 + local.get $$t675.0 + call $runtime.Block.Release + local.set $$t675.0 + local.get $$t675.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 669 + i32.mul + i32.add + local.set $$t676.1 + local.get $$t676.0 + call $runtime.Block.Release + local.set $$t676.0 + local.get $$t676.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 670 + i32.mul + i32.add + local.set $$t677.1 + local.get $$t677.0 + call $runtime.Block.Release + local.set $$t677.0 + local.get $$t677.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 671 + i32.mul + i32.add + local.set $$t678.1 + local.get $$t678.0 + call $runtime.Block.Release + local.set $$t678.0 + local.get $$t678.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 672 + i32.mul + i32.add + local.set $$t679.1 + local.get $$t679.0 + call $runtime.Block.Release + local.set $$t679.0 + local.get $$t679.1 + i32.const 6 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 673 + i32.mul + i32.add + local.set $$t680.1 + local.get $$t680.0 + call $runtime.Block.Release + local.set $$t680.0 + local.get $$t680.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 674 + i32.mul + i32.add + local.set $$t681.1 + local.get $$t681.0 + call $runtime.Block.Release + local.set $$t681.0 + local.get $$t681.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 675 + i32.mul + i32.add + local.set $$t682.1 + local.get $$t682.0 + call $runtime.Block.Release + local.set $$t682.0 + local.get $$t682.1 + i32.const 144 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 676 + i32.mul + i32.add + local.set $$t683.1 + local.get $$t683.0 + call $runtime.Block.Release + local.set $$t683.0 + local.get $$t683.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 677 + i32.mul + i32.add + local.set $$t684.1 + local.get $$t684.0 + call $runtime.Block.Release + local.set $$t684.0 + local.get $$t684.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 678 + i32.mul + i32.add + local.set $$t685.1 + local.get $$t685.0 + call $runtime.Block.Release + local.set $$t685.0 + local.get $$t685.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 679 + i32.mul + i32.add + local.set $$t686.1 + local.get $$t686.0 + call $runtime.Block.Release + local.set $$t686.0 + local.get $$t686.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 680 + i32.mul + i32.add + local.set $$t687.1 + local.get $$t687.0 + call $runtime.Block.Release + local.set $$t687.0 + local.get $$t687.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 681 + i32.mul + i32.add + local.set $$t688.1 + local.get $$t688.0 + call $runtime.Block.Release + local.set $$t688.0 + local.get $$t688.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 682 + i32.mul + i32.add + local.set $$t689.1 + local.get $$t689.0 + call $runtime.Block.Release + local.set $$t689.0 + local.get $$t689.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 683 + i32.mul + i32.add + local.set $$t690.1 + local.get $$t690.0 + call $runtime.Block.Release + local.set $$t690.0 + local.get $$t690.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 684 + i32.mul + i32.add + local.set $$t691.1 + local.get $$t691.0 + call $runtime.Block.Release + local.set $$t691.0 + local.get $$t691.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 685 + i32.mul + i32.add + local.set $$t692.1 + local.get $$t692.0 + call $runtime.Block.Release + local.set $$t692.0 + local.get $$t692.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 686 + i32.mul + i32.add + local.set $$t693.1 + local.get $$t693.0 + call $runtime.Block.Release + local.set $$t693.0 + local.get $$t693.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 687 + i32.mul + i32.add + local.set $$t694.1 + local.get $$t694.0 + call $runtime.Block.Release + local.set $$t694.0 + local.get $$t694.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 688 + i32.mul + i32.add + local.set $$t695.1 + local.get $$t695.0 + call $runtime.Block.Release + local.set $$t695.0 + local.get $$t695.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 689 + i32.mul + i32.add + local.set $$t696.1 + local.get $$t696.0 + call $runtime.Block.Release + local.set $$t696.0 + local.get $$t696.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 690 + i32.mul + i32.add + local.set $$t697.1 + local.get $$t697.0 + call $runtime.Block.Release + local.set $$t697.0 + local.get $$t697.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 691 + i32.mul + i32.add + local.set $$t698.1 + local.get $$t698.0 + call $runtime.Block.Release + local.set $$t698.0 + local.get $$t698.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 692 + i32.mul + i32.add + local.set $$t699.1 + local.get $$t699.0 + call $runtime.Block.Release + local.set $$t699.0 + local.get $$t699.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 693 + i32.mul + i32.add + local.set $$t700.1 + local.get $$t700.0 + call $runtime.Block.Release + local.set $$t700.0 + local.get $$t700.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 694 + i32.mul + i32.add + local.set $$t701.1 + local.get $$t701.0 + call $runtime.Block.Release + local.set $$t701.0 + local.get $$t701.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 695 + i32.mul + i32.add + local.set $$t702.1 + local.get $$t702.0 + call $runtime.Block.Release + local.set $$t702.0 + local.get $$t702.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 696 + i32.mul + i32.add + local.set $$t703.1 + local.get $$t703.0 + call $runtime.Block.Release + local.set $$t703.0 + local.get $$t703.1 + i32.const 1 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 697 + i32.mul + i32.add + local.set $$t704.1 + local.get $$t704.0 + call $runtime.Block.Release + local.set $$t704.0 + local.get $$t704.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 698 + i32.mul + i32.add + local.set $$t705.1 + local.get $$t705.0 + call $runtime.Block.Release + local.set $$t705.0 + local.get $$t705.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 699 + i32.mul + i32.add + local.set $$t706.1 + local.get $$t706.0 + call $runtime.Block.Release + local.set $$t706.0 + local.get $$t706.1 + i32.const 64 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 700 + i32.mul + i32.add + local.set $$t707.1 + local.get $$t707.0 + call $runtime.Block.Release + local.set $$t707.0 + local.get $$t707.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 701 + i32.mul + i32.add + local.set $$t708.1 + local.get $$t708.0 + call $runtime.Block.Release + local.set $$t708.0 + local.get $$t708.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 702 + i32.mul + i32.add + local.set $$t709.1 + local.get $$t709.0 + call $runtime.Block.Release + local.set $$t709.0 + local.get $$t709.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 703 + i32.mul + i32.add + local.set $$t710.1 + local.get $$t710.0 + call $runtime.Block.Release + local.set $$t710.0 + local.get $$t710.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 704 + i32.mul + i32.add + local.set $$t711.1 + local.get $$t711.0 + call $runtime.Block.Release + local.set $$t711.0 + local.get $$t711.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 705 + i32.mul + i32.add + local.set $$t712.1 + local.get $$t712.0 + call $runtime.Block.Release + local.set $$t712.0 + local.get $$t712.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 706 + i32.mul + i32.add + local.set $$t713.1 + local.get $$t713.0 + call $runtime.Block.Release + local.set $$t713.0 + local.get $$t713.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 707 + i32.mul + i32.add + local.set $$t714.1 + local.get $$t714.0 + call $runtime.Block.Release + local.set $$t714.0 + local.get $$t714.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 708 + i32.mul + i32.add + local.set $$t715.1 + local.get $$t715.0 + call $runtime.Block.Release + local.set $$t715.0 + local.get $$t715.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 709 + i32.mul + i32.add + local.set $$t716.1 + local.get $$t716.0 + call $runtime.Block.Release + local.set $$t716.0 + local.get $$t716.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 710 + i32.mul + i32.add + local.set $$t717.1 + local.get $$t717.0 + call $runtime.Block.Release + local.set $$t717.0 + local.get $$t717.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 711 + i32.mul + i32.add + local.set $$t718.1 + local.get $$t718.0 + call $runtime.Block.Release + local.set $$t718.0 + local.get $$t718.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 712 + i32.mul + i32.add + local.set $$t719.1 + local.get $$t719.0 + call $runtime.Block.Release + local.set $$t719.0 + local.get $$t719.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 713 + i32.mul + i32.add + local.set $$t720.1 + local.get $$t720.0 + call $runtime.Block.Release + local.set $$t720.0 + local.get $$t720.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 714 + i32.mul + i32.add + local.set $$t721.1 + local.get $$t721.0 + call $runtime.Block.Release + local.set $$t721.0 + local.get $$t721.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 715 + i32.mul + i32.add + local.set $$t722.1 + local.get $$t722.0 + call $runtime.Block.Release + local.set $$t722.0 + local.get $$t722.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 716 + i32.mul + i32.add + local.set $$t723.1 + local.get $$t723.0 + call $runtime.Block.Release + local.set $$t723.0 + local.get $$t723.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 717 + i32.mul + i32.add + local.set $$t724.1 + local.get $$t724.0 + call $runtime.Block.Release + local.set $$t724.0 + local.get $$t724.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 718 + i32.mul + i32.add + local.set $$t725.1 + local.get $$t725.0 + call $runtime.Block.Release + local.set $$t725.0 + local.get $$t725.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 719 + i32.mul + i32.add + local.set $$t726.1 + local.get $$t726.0 + call $runtime.Block.Release + local.set $$t726.0 + local.get $$t726.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 720 + i32.mul + i32.add + local.set $$t727.1 + local.get $$t727.0 + call $runtime.Block.Release + local.set $$t727.0 + local.get $$t727.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 721 + i32.mul + i32.add + local.set $$t728.1 + local.get $$t728.0 + call $runtime.Block.Release + local.set $$t728.0 + local.get $$t728.1 + i32.const 90 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 722 + i32.mul + i32.add + local.set $$t729.1 + local.get $$t729.0 + call $runtime.Block.Release + local.set $$t729.0 + local.get $$t729.1 + i32.const 165 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 723 + i32.mul + i32.add + local.set $$t730.1 + local.get $$t730.0 + call $runtime.Block.Release + local.set $$t730.0 + local.get $$t730.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 724 + i32.mul + i32.add + local.set $$t731.1 + local.get $$t731.0 + call $runtime.Block.Release + local.set $$t731.0 + local.get $$t731.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 725 + i32.mul + i32.add + local.set $$t732.1 + local.get $$t732.0 + call $runtime.Block.Release + local.set $$t732.0 + local.get $$t732.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 726 + i32.mul + i32.add + local.set $$t733.1 + local.get $$t733.0 + call $runtime.Block.Release + local.set $$t733.0 + local.get $$t733.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 727 + i32.mul + i32.add + local.set $$t734.1 + local.get $$t734.0 + call $runtime.Block.Release + local.set $$t734.0 + local.get $$t734.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 728 + i32.mul + i32.add + local.set $$t735.1 + local.get $$t735.0 + call $runtime.Block.Release + local.set $$t735.0 + local.get $$t735.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 729 + i32.mul + i32.add + local.set $$t736.1 + local.get $$t736.0 + call $runtime.Block.Release + local.set $$t736.0 + local.get $$t736.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 730 + i32.mul + i32.add + local.set $$t737.1 + local.get $$t737.0 + call $runtime.Block.Release + local.set $$t737.0 + local.get $$t737.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 731 + i32.mul + i32.add + local.set $$t738.1 + local.get $$t738.0 + call $runtime.Block.Release + local.set $$t738.0 + local.get $$t738.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 732 + i32.mul + i32.add + local.set $$t739.1 + local.get $$t739.0 + call $runtime.Block.Release + local.set $$t739.0 + local.get $$t739.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 733 + i32.mul + i32.add + local.set $$t740.1 + local.get $$t740.0 + call $runtime.Block.Release + local.set $$t740.0 + local.get $$t740.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 734 + i32.mul + i32.add + local.set $$t741.1 + local.get $$t741.0 + call $runtime.Block.Release + local.set $$t741.0 + local.get $$t741.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 735 + i32.mul + i32.add + local.set $$t742.1 + local.get $$t742.0 + call $runtime.Block.Release + local.set $$t742.0 + local.get $$t742.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 736 + i32.mul + i32.add + local.set $$t743.1 + local.get $$t743.0 + call $runtime.Block.Release + local.set $$t743.0 + local.get $$t743.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 737 + i32.mul + i32.add + local.set $$t744.1 + local.get $$t744.0 + call $runtime.Block.Release + local.set $$t744.0 + local.get $$t744.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 738 + i32.mul + i32.add + local.set $$t745.1 + local.get $$t745.0 + call $runtime.Block.Release + local.set $$t745.0 + local.get $$t745.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 739 + i32.mul + i32.add + local.set $$t746.1 + local.get $$t746.0 + call $runtime.Block.Release + local.set $$t746.0 + local.get $$t746.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 740 + i32.mul + i32.add + local.set $$t747.1 + local.get $$t747.0 + call $runtime.Block.Release + local.set $$t747.0 + local.get $$t747.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 741 + i32.mul + i32.add + local.set $$t748.1 + local.get $$t748.0 + call $runtime.Block.Release + local.set $$t748.0 + local.get $$t748.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 742 + i32.mul + i32.add + local.set $$t749.1 + local.get $$t749.0 + call $runtime.Block.Release + local.set $$t749.0 + local.get $$t749.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 743 + i32.mul + i32.add + local.set $$t750.1 + local.get $$t750.0 + call $runtime.Block.Release + local.set $$t750.0 + local.get $$t750.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 744 + i32.mul + i32.add + local.set $$t751.1 + local.get $$t751.0 + call $runtime.Block.Release + local.set $$t751.0 + local.get $$t751.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 745 + i32.mul + i32.add + local.set $$t752.1 + local.get $$t752.0 + call $runtime.Block.Release + local.set $$t752.0 + local.get $$t752.1 + i32.const 5 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 746 + i32.mul + i32.add + local.set $$t753.1 + local.get $$t753.0 + call $runtime.Block.Release + local.set $$t753.0 + local.get $$t753.1 + i32.const 80 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 747 + i32.mul + i32.add + local.set $$t754.1 + local.get $$t754.0 + call $runtime.Block.Release + local.set $$t754.0 + local.get $$t754.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 748 + i32.mul + i32.add + local.set $$t755.1 + local.get $$t755.0 + call $runtime.Block.Release + local.set $$t755.0 + local.get $$t755.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 749 + i32.mul + i32.add + local.set $$t756.1 + local.get $$t756.0 + call $runtime.Block.Release + local.set $$t756.0 + local.get $$t756.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 750 + i32.mul + i32.add + local.set $$t757.1 + local.get $$t757.0 + call $runtime.Block.Release + local.set $$t757.0 + local.get $$t757.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 751 + i32.mul + i32.add + local.set $$t758.1 + local.get $$t758.0 + call $runtime.Block.Release + local.set $$t758.0 + local.get $$t758.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 752 + i32.mul + i32.add + local.set $$t759.1 + local.get $$t759.0 + call $runtime.Block.Release + local.set $$t759.0 + local.get $$t759.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 753 + i32.mul + i32.add + local.set $$t760.1 + local.get $$t760.0 + call $runtime.Block.Release + local.set $$t760.0 + local.get $$t760.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 754 + i32.mul + i32.add + local.set $$t761.1 + local.get $$t761.0 + call $runtime.Block.Release + local.set $$t761.0 + local.get $$t761.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 755 + i32.mul + i32.add + local.set $$t762.1 + local.get $$t762.0 + call $runtime.Block.Release + local.set $$t762.0 + local.get $$t762.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 756 + i32.mul + i32.add + local.set $$t763.1 + local.get $$t763.0 + call $runtime.Block.Release + local.set $$t763.0 + local.get $$t763.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 757 + i32.mul + i32.add + local.set $$t764.1 + local.get $$t764.0 + call $runtime.Block.Release + local.set $$t764.0 + local.get $$t764.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 758 + i32.mul + i32.add + local.set $$t765.1 + local.get $$t765.0 + call $runtime.Block.Release + local.set $$t765.0 + local.get $$t765.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 759 + i32.mul + i32.add + local.set $$t766.1 + local.get $$t766.0 + call $runtime.Block.Release + local.set $$t766.0 + local.get $$t766.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 760 + i32.mul + i32.add + local.set $$t767.1 + local.get $$t767.0 + call $runtime.Block.Release + local.set $$t767.0 + local.get $$t767.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 761 + i32.mul + i32.add + local.set $$t768.1 + local.get $$t768.0 + call $runtime.Block.Release + local.set $$t768.0 + local.get $$t768.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 762 + i32.mul + i32.add + local.set $$t769.1 + local.get $$t769.0 + call $runtime.Block.Release + local.set $$t769.0 + local.get $$t769.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 763 + i32.mul + i32.add + local.set $$t770.1 + local.get $$t770.0 + call $runtime.Block.Release + local.set $$t770.0 + local.get $$t770.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 764 + i32.mul + i32.add + local.set $$t771.1 + local.get $$t771.0 + call $runtime.Block.Release + local.set $$t771.0 + local.get $$t771.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 765 + i32.mul + i32.add + local.set $$t772.1 + local.get $$t772.0 + call $runtime.Block.Release + local.set $$t772.0 + local.get $$t772.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 766 + i32.mul + i32.add + local.set $$t773.1 + local.get $$t773.0 + call $runtime.Block.Release + local.set $$t773.0 + local.get $$t773.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 767 + i32.mul + i32.add + local.set $$t774.1 + local.get $$t774.0 + call $runtime.Block.Release + local.set $$t774.0 + local.get $$t774.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 768 + i32.mul + i32.add + local.set $$t775.1 + local.get $$t775.0 + call $runtime.Block.Release + local.set $$t775.0 + local.get $$t775.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 769 + i32.mul + i32.add + local.set $$t776.1 + local.get $$t776.0 + call $runtime.Block.Release + local.set $$t776.0 + local.get $$t776.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 770 + i32.mul + i32.add + local.set $$t777.1 + local.get $$t777.0 + call $runtime.Block.Release + local.set $$t777.0 + local.get $$t777.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 771 + i32.mul + i32.add + local.set $$t778.1 + local.get $$t778.0 + call $runtime.Block.Release + local.set $$t778.0 + local.get $$t778.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 772 + i32.mul + i32.add + local.set $$t779.1 + local.get $$t779.0 + call $runtime.Block.Release + local.set $$t779.0 + local.get $$t779.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 773 + i32.mul + i32.add + local.set $$t780.1 + local.get $$t780.0 + call $runtime.Block.Release + local.set $$t780.0 + local.get $$t780.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 774 + i32.mul + i32.add + local.set $$t781.1 + local.get $$t781.0 + call $runtime.Block.Release + local.set $$t781.0 + local.get $$t781.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 775 + i32.mul + i32.add + local.set $$t782.1 + local.get $$t782.0 + call $runtime.Block.Release + local.set $$t782.0 + local.get $$t782.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 776 + i32.mul + i32.add + local.set $$t783.1 + local.get $$t783.0 + call $runtime.Block.Release + local.set $$t783.0 + local.get $$t783.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 777 + i32.mul + i32.add + local.set $$t784.1 + local.get $$t784.0 + call $runtime.Block.Release + local.set $$t784.0 + local.get $$t784.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 778 + i32.mul + i32.add + local.set $$t785.1 + local.get $$t785.0 + call $runtime.Block.Release + local.set $$t785.0 + local.get $$t785.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 779 + i32.mul + i32.add + local.set $$t786.1 + local.get $$t786.0 + call $runtime.Block.Release + local.set $$t786.0 + local.get $$t786.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 780 + i32.mul + i32.add + local.set $$t787.1 + local.get $$t787.0 + call $runtime.Block.Release + local.set $$t787.0 + local.get $$t787.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 781 + i32.mul + i32.add + local.set $$t788.1 + local.get $$t788.0 + call $runtime.Block.Release + local.set $$t788.0 + local.get $$t788.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 782 + i32.mul + i32.add + local.set $$t789.1 + local.get $$t789.0 + call $runtime.Block.Release + local.set $$t789.0 + local.get $$t789.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 783 + i32.mul + i32.add + local.set $$t790.1 + local.get $$t790.0 + call $runtime.Block.Release + local.set $$t790.0 + local.get $$t790.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 784 + i32.mul + i32.add + local.set $$t791.1 + local.get $$t791.0 + call $runtime.Block.Release + local.set $$t791.0 + local.get $$t791.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 785 + i32.mul + i32.add + local.set $$t792.1 + local.get $$t792.0 + call $runtime.Block.Release + local.set $$t792.0 + local.get $$t792.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 786 + i32.mul + i32.add + local.set $$t793.1 + local.get $$t793.0 + call $runtime.Block.Release + local.set $$t793.0 + local.get $$t793.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 787 + i32.mul + i32.add + local.set $$t794.1 + local.get $$t794.0 + call $runtime.Block.Release + local.set $$t794.0 + local.get $$t794.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 788 + i32.mul + i32.add + local.set $$t795.1 + local.get $$t795.0 + call $runtime.Block.Release + local.set $$t795.0 + local.get $$t795.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 789 + i32.mul + i32.add + local.set $$t796.1 + local.get $$t796.0 + call $runtime.Block.Release + local.set $$t796.0 + local.get $$t796.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 790 + i32.mul + i32.add + local.set $$t797.1 + local.get $$t797.0 + call $runtime.Block.Release + local.set $$t797.0 + local.get $$t797.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 791 + i32.mul + i32.add + local.set $$t798.1 + local.get $$t798.0 + call $runtime.Block.Release + local.set $$t798.0 + local.get $$t798.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 792 + i32.mul + i32.add + local.set $$t799.1 + local.get $$t799.0 + call $runtime.Block.Release + local.set $$t799.0 + local.get $$t799.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 793 + i32.mul + i32.add + local.set $$t800.1 + local.get $$t800.0 + call $runtime.Block.Release + local.set $$t800.0 + local.get $$t800.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 794 + i32.mul + i32.add + local.set $$t801.1 + local.get $$t801.0 + call $runtime.Block.Release + local.set $$t801.0 + local.get $$t801.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 795 + i32.mul + i32.add + local.set $$t802.1 + local.get $$t802.0 + call $runtime.Block.Release + local.set $$t802.0 + local.get $$t802.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 796 + i32.mul + i32.add + local.set $$t803.1 + local.get $$t803.0 + call $runtime.Block.Release + local.set $$t803.0 + local.get $$t803.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 797 + i32.mul + i32.add + local.set $$t804.1 + local.get $$t804.0 + call $runtime.Block.Release + local.set $$t804.0 + local.get $$t804.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 798 + i32.mul + i32.add + local.set $$t805.1 + local.get $$t805.0 + call $runtime.Block.Release + local.set $$t805.0 + local.get $$t805.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 799 + i32.mul + i32.add + local.set $$t806.1 + local.get $$t806.0 + call $runtime.Block.Release + local.set $$t806.0 + local.get $$t806.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 800 + i32.mul + i32.add + local.set $$t807.1 + local.get $$t807.0 + call $runtime.Block.Release + local.set $$t807.0 + local.get $$t807.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 801 + i32.mul + i32.add + local.set $$t808.1 + local.get $$t808.0 + call $runtime.Block.Release + local.set $$t808.0 + local.get $$t808.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 802 + i32.mul + i32.add + local.set $$t809.1 + local.get $$t809.0 + call $runtime.Block.Release + local.set $$t809.0 + local.get $$t809.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 803 + i32.mul + i32.add + local.set $$t810.1 + local.get $$t810.0 + call $runtime.Block.Release + local.set $$t810.0 + local.get $$t810.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 804 + i32.mul + i32.add + local.set $$t811.1 + local.get $$t811.0 + call $runtime.Block.Release + local.set $$t811.0 + local.get $$t811.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 805 + i32.mul + i32.add + local.set $$t812.1 + local.get $$t812.0 + call $runtime.Block.Release + local.set $$t812.0 + local.get $$t812.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 806 + i32.mul + i32.add + local.set $$t813.1 + local.get $$t813.0 + call $runtime.Block.Release + local.set $$t813.0 + local.get $$t813.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 807 + i32.mul + i32.add + local.set $$t814.1 + local.get $$t814.0 + call $runtime.Block.Release + local.set $$t814.0 + local.get $$t814.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 808 + i32.mul + i32.add + local.set $$t815.1 + local.get $$t815.0 + call $runtime.Block.Release + local.set $$t815.0 + local.get $$t815.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 809 + i32.mul + i32.add + local.set $$t816.1 + local.get $$t816.0 + call $runtime.Block.Release + local.set $$t816.0 + local.get $$t816.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 810 + i32.mul + i32.add + local.set $$t817.1 + local.get $$t817.0 + call $runtime.Block.Release + local.set $$t817.0 + local.get $$t817.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 811 + i32.mul + i32.add + local.set $$t818.1 + local.get $$t818.0 + call $runtime.Block.Release + local.set $$t818.0 + local.get $$t818.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 812 + i32.mul + i32.add + local.set $$t819.1 + local.get $$t819.0 + call $runtime.Block.Release + local.set $$t819.0 + local.get $$t819.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 813 + i32.mul + i32.add + local.set $$t820.1 + local.get $$t820.0 + call $runtime.Block.Release + local.set $$t820.0 + local.get $$t820.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 814 + i32.mul + i32.add + local.set $$t821.1 + local.get $$t821.0 + call $runtime.Block.Release + local.set $$t821.0 + local.get $$t821.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 815 + i32.mul + i32.add + local.set $$t822.1 + local.get $$t822.0 + call $runtime.Block.Release + local.set $$t822.0 + local.get $$t822.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 816 + i32.mul + i32.add + local.set $$t823.1 + local.get $$t823.0 + call $runtime.Block.Release + local.set $$t823.0 + local.get $$t823.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 817 + i32.mul + i32.add + local.set $$t824.1 + local.get $$t824.0 + call $runtime.Block.Release + local.set $$t824.0 + local.get $$t824.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 818 + i32.mul + i32.add + local.set $$t825.1 + local.get $$t825.0 + call $runtime.Block.Release + local.set $$t825.0 + local.get $$t825.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 819 + i32.mul + i32.add + local.set $$t826.1 + local.get $$t826.0 + call $runtime.Block.Release + local.set $$t826.0 + local.get $$t826.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 820 + i32.mul + i32.add + local.set $$t827.1 + local.get $$t827.0 + call $runtime.Block.Release + local.set $$t827.0 + local.get $$t827.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 821 + i32.mul + i32.add + local.set $$t828.1 + local.get $$t828.0 + call $runtime.Block.Release + local.set $$t828.0 + local.get $$t828.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 822 + i32.mul + i32.add + local.set $$t829.1 + local.get $$t829.0 + call $runtime.Block.Release + local.set $$t829.0 + local.get $$t829.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 823 + i32.mul + i32.add + local.set $$t830.1 + local.get $$t830.0 + call $runtime.Block.Release + local.set $$t830.0 + local.get $$t830.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 824 + i32.mul + i32.add + local.set $$t831.1 + local.get $$t831.0 + call $runtime.Block.Release + local.set $$t831.0 + local.get $$t831.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 825 + i32.mul + i32.add + local.set $$t832.1 + local.get $$t832.0 + call $runtime.Block.Release + local.set $$t832.0 + local.get $$t832.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 826 + i32.mul + i32.add + local.set $$t833.1 + local.get $$t833.0 + call $runtime.Block.Release + local.set $$t833.0 + local.get $$t833.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 827 + i32.mul + i32.add + local.set $$t834.1 + local.get $$t834.0 + call $runtime.Block.Release + local.set $$t834.0 + local.get $$t834.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 828 + i32.mul + i32.add + local.set $$t835.1 + local.get $$t835.0 + call $runtime.Block.Release + local.set $$t835.0 + local.get $$t835.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 829 + i32.mul + i32.add + local.set $$t836.1 + local.get $$t836.0 + call $runtime.Block.Release + local.set $$t836.0 + local.get $$t836.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 830 + i32.mul + i32.add + local.set $$t837.1 + local.get $$t837.0 + call $runtime.Block.Release + local.set $$t837.0 + local.get $$t837.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 831 + i32.mul + i32.add + local.set $$t838.1 + local.get $$t838.0 + call $runtime.Block.Release + local.set $$t838.0 + local.get $$t838.1 + i32.const 253 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 832 + i32.mul + i32.add + local.set $$t839.1 + local.get $$t839.0 + call $runtime.Block.Release + local.set $$t839.0 + local.get $$t839.1 + i32.const 127 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 833 + i32.mul + i32.add + local.set $$t840.1 + local.get $$t840.0 + call $runtime.Block.Release + local.set $$t840.0 + local.get $$t840.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 834 + i32.mul + i32.add + local.set $$t841.1 + local.get $$t841.0 + call $runtime.Block.Release + local.set $$t841.0 + local.get $$t841.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 835 + i32.mul + i32.add + local.set $$t842.1 + local.get $$t842.0 + call $runtime.Block.Release + local.set $$t842.0 + local.get $$t842.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 836 + i32.mul + i32.add + local.set $$t843.1 + local.get $$t843.0 + call $runtime.Block.Release + local.set $$t843.0 + local.get $$t843.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 837 + i32.mul + i32.add + local.set $$t844.1 + local.get $$t844.0 + call $runtime.Block.Release + local.set $$t844.0 + local.get $$t844.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 838 + i32.mul + i32.add + local.set $$t845.1 + local.get $$t845.0 + call $runtime.Block.Release + local.set $$t845.0 + local.get $$t845.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 839 + i32.mul + i32.add + local.set $$t846.1 + local.get $$t846.0 + call $runtime.Block.Release + local.set $$t846.0 + local.get $$t846.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 840 + i32.mul + i32.add + local.set $$t847.1 + local.get $$t847.0 + call $runtime.Block.Release + local.set $$t847.0 + local.get $$t847.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 841 + i32.mul + i32.add + local.set $$t848.1 + local.get $$t848.0 + call $runtime.Block.Release + local.set $$t848.0 + local.get $$t848.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 842 + i32.mul + i32.add + local.set $$t849.1 + local.get $$t849.0 + call $runtime.Block.Release + local.set $$t849.0 + local.get $$t849.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 843 + i32.mul + i32.add + local.set $$t850.1 + local.get $$t850.0 + call $runtime.Block.Release + local.set $$t850.0 + local.get $$t850.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 844 + i32.mul + i32.add + local.set $$t851.1 + local.get $$t851.0 + call $runtime.Block.Release + local.set $$t851.0 + local.get $$t851.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 845 + i32.mul + i32.add + local.set $$t852.1 + local.get $$t852.0 + call $runtime.Block.Release + local.set $$t852.0 + local.get $$t852.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 846 + i32.mul + i32.add + local.set $$t853.1 + local.get $$t853.0 + call $runtime.Block.Release + local.set $$t853.0 + local.get $$t853.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 847 + i32.mul + i32.add + local.set $$t854.1 + local.get $$t854.0 + call $runtime.Block.Release + local.set $$t854.0 + local.get $$t854.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 848 + i32.mul + i32.add + local.set $$t855.1 + local.get $$t855.0 + call $runtime.Block.Release + local.set $$t855.0 + local.get $$t855.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 849 + i32.mul + i32.add + local.set $$t856.1 + local.get $$t856.0 + call $runtime.Block.Release + local.set $$t856.0 + local.get $$t856.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 850 + i32.mul + i32.add + local.set $$t857.1 + local.get $$t857.0 + call $runtime.Block.Release + local.set $$t857.0 + local.get $$t857.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 851 + i32.mul + i32.add + local.set $$t858.1 + local.get $$t858.0 + call $runtime.Block.Release + local.set $$t858.0 + local.get $$t858.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 852 + i32.mul + i32.add + local.set $$t859.1 + local.get $$t859.0 + call $runtime.Block.Release + local.set $$t859.0 + local.get $$t859.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 853 + i32.mul + i32.add + local.set $$t860.1 + local.get $$t860.0 + call $runtime.Block.Release + local.set $$t860.0 + local.get $$t860.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 854 + i32.mul + i32.add + local.set $$t861.1 + local.get $$t861.0 + call $runtime.Block.Release + local.set $$t861.0 + local.get $$t861.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 855 + i32.mul + i32.add + local.set $$t862.1 + local.get $$t862.0 + call $runtime.Block.Release + local.set $$t862.0 + local.get $$t862.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 856 + i32.mul + i32.add + local.set $$t863.1 + local.get $$t863.0 + call $runtime.Block.Release + local.set $$t863.0 + local.get $$t863.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 857 + i32.mul + i32.add + local.set $$t864.1 + local.get $$t864.0 + call $runtime.Block.Release + local.set $$t864.0 + local.get $$t864.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 858 + i32.mul + i32.add + local.set $$t865.1 + local.get $$t865.0 + call $runtime.Block.Release + local.set $$t865.0 + local.get $$t865.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 859 + i32.mul + i32.add + local.set $$t866.1 + local.get $$t866.0 + call $runtime.Block.Release + local.set $$t866.0 + local.get $$t866.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 860 + i32.mul + i32.add + local.set $$t867.1 + local.get $$t867.0 + call $runtime.Block.Release + local.set $$t867.0 + local.get $$t867.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 861 + i32.mul + i32.add + local.set $$t868.1 + local.get $$t868.0 + call $runtime.Block.Release + local.set $$t868.0 + local.get $$t868.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 862 + i32.mul + i32.add + local.set $$t869.1 + local.get $$t869.0 + call $runtime.Block.Release + local.set $$t869.0 + local.get $$t869.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 863 + i32.mul + i32.add + local.set $$t870.1 + local.get $$t870.0 + call $runtime.Block.Release + local.set $$t870.0 + local.get $$t870.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 864 + i32.mul + i32.add + local.set $$t871.1 + local.get $$t871.0 + call $runtime.Block.Release + local.set $$t871.0 + local.get $$t871.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 865 + i32.mul + i32.add + local.set $$t872.1 + local.get $$t872.0 + call $runtime.Block.Release + local.set $$t872.0 + local.get $$t872.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 866 + i32.mul + i32.add + local.set $$t873.1 + local.get $$t873.0 + call $runtime.Block.Release + local.set $$t873.0 + local.get $$t873.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 867 + i32.mul + i32.add + local.set $$t874.1 + local.get $$t874.0 + call $runtime.Block.Release + local.set $$t874.0 + local.get $$t874.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 868 + i32.mul + i32.add + local.set $$t875.1 + local.get $$t875.0 + call $runtime.Block.Release + local.set $$t875.0 + local.get $$t875.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 869 + i32.mul + i32.add + local.set $$t876.1 + local.get $$t876.0 + call $runtime.Block.Release + local.set $$t876.0 + local.get $$t876.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 870 + i32.mul + i32.add + local.set $$t877.1 + local.get $$t877.0 + call $runtime.Block.Release + local.set $$t877.0 + local.get $$t877.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 871 + i32.mul + i32.add + local.set $$t878.1 + local.get $$t878.0 + call $runtime.Block.Release + local.set $$t878.0 + local.get $$t878.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 872 + i32.mul + i32.add + local.set $$t879.1 + local.get $$t879.0 + call $runtime.Block.Release + local.set $$t879.0 + local.get $$t879.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 873 + i32.mul + i32.add + local.set $$t880.1 + local.get $$t880.0 + call $runtime.Block.Release + local.set $$t880.0 + local.get $$t880.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 874 + i32.mul + i32.add + local.set $$t881.1 + local.get $$t881.0 + call $runtime.Block.Release + local.set $$t881.0 + local.get $$t881.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 875 + i32.mul + i32.add + local.set $$t882.1 + local.get $$t882.0 + call $runtime.Block.Release + local.set $$t882.0 + local.get $$t882.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 876 + i32.mul + i32.add + local.set $$t883.1 + local.get $$t883.0 + call $runtime.Block.Release + local.set $$t883.0 + local.get $$t883.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 877 + i32.mul + i32.add + local.set $$t884.1 + local.get $$t884.0 + call $runtime.Block.Release + local.set $$t884.0 + local.get $$t884.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 878 + i32.mul + i32.add + local.set $$t885.1 + local.get $$t885.0 + call $runtime.Block.Release + local.set $$t885.0 + local.get $$t885.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 879 + i32.mul + i32.add + local.set $$t886.1 + local.get $$t886.0 + call $runtime.Block.Release + local.set $$t886.0 + local.get $$t886.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 880 + i32.mul + i32.add + local.set $$t887.1 + local.get $$t887.0 + call $runtime.Block.Release + local.set $$t887.0 + local.get $$t887.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 881 + i32.mul + i32.add + local.set $$t888.1 + local.get $$t888.0 + call $runtime.Block.Release + local.set $$t888.0 + local.get $$t888.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 882 + i32.mul + i32.add + local.set $$t889.1 + local.get $$t889.0 + call $runtime.Block.Release + local.set $$t889.0 + local.get $$t889.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 883 + i32.mul + i32.add + local.set $$t890.1 + local.get $$t890.0 + call $runtime.Block.Release + local.set $$t890.0 + local.get $$t890.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 884 + i32.mul + i32.add + local.set $$t891.1 + local.get $$t891.0 + call $runtime.Block.Release + local.set $$t891.0 + local.get $$t891.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 885 + i32.mul + i32.add + local.set $$t892.1 + local.get $$t892.0 + call $runtime.Block.Release + local.set $$t892.0 + local.get $$t892.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 886 + i32.mul + i32.add + local.set $$t893.1 + local.get $$t893.0 + call $runtime.Block.Release + local.set $$t893.0 + local.get $$t893.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 887 + i32.mul + i32.add + local.set $$t894.1 + local.get $$t894.0 + call $runtime.Block.Release + local.set $$t894.0 + local.get $$t894.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 888 + i32.mul + i32.add + local.set $$t895.1 + local.get $$t895.0 + call $runtime.Block.Release + local.set $$t895.0 + local.get $$t895.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 889 + i32.mul + i32.add + local.set $$t896.1 + local.get $$t896.0 + call $runtime.Block.Release + local.set $$t896.0 + local.get $$t896.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 890 + i32.mul + i32.add + local.set $$t897.1 + local.get $$t897.0 + call $runtime.Block.Release + local.set $$t897.0 + local.get $$t897.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 891 + i32.mul + i32.add + local.set $$t898.1 + local.get $$t898.0 + call $runtime.Block.Release + local.set $$t898.0 + local.get $$t898.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 892 + i32.mul + i32.add + local.set $$t899.1 + local.get $$t899.0 + call $runtime.Block.Release + local.set $$t899.0 + local.get $$t899.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 893 + i32.mul + i32.add + local.set $$t900.1 + local.get $$t900.0 + call $runtime.Block.Release + local.set $$t900.0 + local.get $$t900.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 894 + i32.mul + i32.add + local.set $$t901.1 + local.get $$t901.0 + call $runtime.Block.Release + local.set $$t901.0 + local.get $$t901.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 895 + i32.mul + i32.add + local.set $$t902.1 + local.get $$t902.0 + call $runtime.Block.Release + local.set $$t902.0 + local.get $$t902.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 896 + i32.mul + i32.add + local.set $$t903.1 + local.get $$t903.0 + call $runtime.Block.Release + local.set $$t903.0 + local.get $$t903.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 897 + i32.mul + i32.add + local.set $$t904.1 + local.get $$t904.0 + call $runtime.Block.Release + local.set $$t904.0 + local.get $$t904.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 898 + i32.mul + i32.add + local.set $$t905.1 + local.get $$t905.0 + call $runtime.Block.Release + local.set $$t905.0 + local.get $$t905.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 899 + i32.mul + i32.add + local.set $$t906.1 + local.get $$t906.0 + call $runtime.Block.Release + local.set $$t906.0 + local.get $$t906.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 900 + i32.mul + i32.add + local.set $$t907.1 + local.get $$t907.0 + call $runtime.Block.Release + local.set $$t907.0 + local.get $$t907.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 901 + i32.mul + i32.add + local.set $$t908.1 + local.get $$t908.0 + call $runtime.Block.Release + local.set $$t908.0 + local.get $$t908.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 902 + i32.mul + i32.add + local.set $$t909.1 + local.get $$t909.0 + call $runtime.Block.Release + local.set $$t909.0 + local.get $$t909.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 903 + i32.mul + i32.add + local.set $$t910.1 + local.get $$t910.0 + call $runtime.Block.Release + local.set $$t910.0 + local.get $$t910.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 904 + i32.mul + i32.add + local.set $$t911.1 + local.get $$t911.0 + call $runtime.Block.Release + local.set $$t911.0 + local.get $$t911.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 905 + i32.mul + i32.add + local.set $$t912.1 + local.get $$t912.0 + call $runtime.Block.Release + local.set $$t912.0 + local.get $$t912.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 906 + i32.mul + i32.add + local.set $$t913.1 + local.get $$t913.0 + call $runtime.Block.Release + local.set $$t913.0 + local.get $$t913.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 907 + i32.mul + i32.add + local.set $$t914.1 + local.get $$t914.0 + call $runtime.Block.Release + local.set $$t914.0 + local.get $$t914.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 908 + i32.mul + i32.add + local.set $$t915.1 + local.get $$t915.0 + call $runtime.Block.Release + local.set $$t915.0 + local.get $$t915.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 909 + i32.mul + i32.add + local.set $$t916.1 + local.get $$t916.0 + call $runtime.Block.Release + local.set $$t916.0 + local.get $$t916.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 910 + i32.mul + i32.add + local.set $$t917.1 + local.get $$t917.0 + call $runtime.Block.Release + local.set $$t917.0 + local.get $$t917.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 911 + i32.mul + i32.add + local.set $$t918.1 + local.get $$t918.0 + call $runtime.Block.Release + local.set $$t918.0 + local.get $$t918.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 912 + i32.mul + i32.add + local.set $$t919.1 + local.get $$t919.0 + call $runtime.Block.Release + local.set $$t919.0 + local.get $$t919.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 913 + i32.mul + i32.add + local.set $$t920.1 + local.get $$t920.0 + call $runtime.Block.Release + local.set $$t920.0 + local.get $$t920.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 914 + i32.mul + i32.add + local.set $$t921.1 + local.get $$t921.0 + call $runtime.Block.Release + local.set $$t921.0 + local.get $$t921.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 915 + i32.mul + i32.add + local.set $$t922.1 + local.get $$t922.0 + call $runtime.Block.Release + local.set $$t922.0 + local.get $$t922.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 916 + i32.mul + i32.add + local.set $$t923.1 + local.get $$t923.0 + call $runtime.Block.Release + local.set $$t923.0 + local.get $$t923.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 917 + i32.mul + i32.add + local.set $$t924.1 + local.get $$t924.0 + call $runtime.Block.Release + local.set $$t924.0 + local.get $$t924.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 918 + i32.mul + i32.add + local.set $$t925.1 + local.get $$t925.0 + call $runtime.Block.Release + local.set $$t925.0 + local.get $$t925.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 919 + i32.mul + i32.add + local.set $$t926.1 + local.get $$t926.0 + call $runtime.Block.Release + local.set $$t926.0 + local.get $$t926.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 920 + i32.mul + i32.add + local.set $$t927.1 + local.get $$t927.0 + call $runtime.Block.Release + local.set $$t927.0 + local.get $$t927.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 921 + i32.mul + i32.add + local.set $$t928.1 + local.get $$t928.0 + call $runtime.Block.Release + local.set $$t928.0 + local.get $$t928.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 922 + i32.mul + i32.add + local.set $$t929.1 + local.get $$t929.0 + call $runtime.Block.Release + local.set $$t929.0 + local.get $$t929.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 923 + i32.mul + i32.add + local.set $$t930.1 + local.get $$t930.0 + call $runtime.Block.Release + local.set $$t930.0 + local.get $$t930.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 924 + i32.mul + i32.add + local.set $$t931.1 + local.get $$t931.0 + call $runtime.Block.Release + local.set $$t931.0 + local.get $$t931.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 925 + i32.mul + i32.add + local.set $$t932.1 + local.get $$t932.0 + call $runtime.Block.Release + local.set $$t932.0 + local.get $$t932.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 926 + i32.mul + i32.add + local.set $$t933.1 + local.get $$t933.0 + call $runtime.Block.Release + local.set $$t933.0 + local.get $$t933.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 927 + i32.mul + i32.add + local.set $$t934.1 + local.get $$t934.0 + call $runtime.Block.Release + local.set $$t934.0 + local.get $$t934.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 928 + i32.mul + i32.add + local.set $$t935.1 + local.get $$t935.0 + call $runtime.Block.Release + local.set $$t935.0 + local.get $$t935.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 929 + i32.mul + i32.add + local.set $$t936.1 + local.get $$t936.0 + call $runtime.Block.Release + local.set $$t936.0 + local.get $$t936.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 930 + i32.mul + i32.add + local.set $$t937.1 + local.get $$t937.0 + call $runtime.Block.Release + local.set $$t937.0 + local.get $$t937.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 931 + i32.mul + i32.add + local.set $$t938.1 + local.get $$t938.0 + call $runtime.Block.Release + local.set $$t938.0 + local.get $$t938.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 932 + i32.mul + i32.add + local.set $$t939.1 + local.get $$t939.0 + call $runtime.Block.Release + local.set $$t939.0 + local.get $$t939.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 933 + i32.mul + i32.add + local.set $$t940.1 + local.get $$t940.0 + call $runtime.Block.Release + local.set $$t940.0 + local.get $$t940.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 934 + i32.mul + i32.add + local.set $$t941.1 + local.get $$t941.0 + call $runtime.Block.Release + local.set $$t941.0 + local.get $$t941.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 935 + i32.mul + i32.add + local.set $$t942.1 + local.get $$t942.0 + call $runtime.Block.Release + local.set $$t942.0 + local.get $$t942.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 936 + i32.mul + i32.add + local.set $$t943.1 + local.get $$t943.0 + call $runtime.Block.Release + local.set $$t943.0 + local.get $$t943.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 937 + i32.mul + i32.add + local.set $$t944.1 + local.get $$t944.0 + call $runtime.Block.Release + local.set $$t944.0 + local.get $$t944.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 938 + i32.mul + i32.add + local.set $$t945.1 + local.get $$t945.0 + call $runtime.Block.Release + local.set $$t945.0 + local.get $$t945.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 939 + i32.mul + i32.add + local.set $$t946.1 + local.get $$t946.0 + call $runtime.Block.Release + local.set $$t946.0 + local.get $$t946.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 940 + i32.mul + i32.add + local.set $$t947.1 + local.get $$t947.0 + call $runtime.Block.Release + local.set $$t947.0 + local.get $$t947.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 941 + i32.mul + i32.add + local.set $$t948.1 + local.get $$t948.0 + call $runtime.Block.Release + local.set $$t948.0 + local.get $$t948.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 942 + i32.mul + i32.add + local.set $$t949.1 + local.get $$t949.0 + call $runtime.Block.Release + local.set $$t949.0 + local.get $$t949.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 943 + i32.mul + i32.add + local.set $$t950.1 + local.get $$t950.0 + call $runtime.Block.Release + local.set $$t950.0 + local.get $$t950.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 944 + i32.mul + i32.add + local.set $$t951.1 + local.get $$t951.0 + call $runtime.Block.Release + local.set $$t951.0 + local.get $$t951.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 945 + i32.mul + i32.add + local.set $$t952.1 + local.get $$t952.0 + call $runtime.Block.Release + local.set $$t952.0 + local.get $$t952.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 946 + i32.mul + i32.add + local.set $$t953.1 + local.get $$t953.0 + call $runtime.Block.Release + local.set $$t953.0 + local.get $$t953.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 947 + i32.mul + i32.add + local.set $$t954.1 + local.get $$t954.0 + call $runtime.Block.Release + local.set $$t954.0 + local.get $$t954.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 948 + i32.mul + i32.add + local.set $$t955.1 + local.get $$t955.0 + call $runtime.Block.Release + local.set $$t955.0 + local.get $$t955.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 949 + i32.mul + i32.add + local.set $$t956.1 + local.get $$t956.0 + call $runtime.Block.Release + local.set $$t956.0 + local.get $$t956.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 950 + i32.mul + i32.add + local.set $$t957.1 + local.get $$t957.0 + call $runtime.Block.Release + local.set $$t957.0 + local.get $$t957.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 951 + i32.mul + i32.add + local.set $$t958.1 + local.get $$t958.0 + call $runtime.Block.Release + local.set $$t958.0 + local.get $$t958.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 952 + i32.mul + i32.add + local.set $$t959.1 + local.get $$t959.0 + call $runtime.Block.Release + local.set $$t959.0 + local.get $$t959.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 953 + i32.mul + i32.add + local.set $$t960.1 + local.get $$t960.0 + call $runtime.Block.Release + local.set $$t960.0 + local.get $$t960.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 954 + i32.mul + i32.add + local.set $$t961.1 + local.get $$t961.0 + call $runtime.Block.Release + local.set $$t961.0 + local.get $$t961.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 955 + i32.mul + i32.add + local.set $$t962.1 + local.get $$t962.0 + call $runtime.Block.Release + local.set $$t962.0 + local.get $$t962.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 956 + i32.mul + i32.add + local.set $$t963.1 + local.get $$t963.0 + call $runtime.Block.Release + local.set $$t963.0 + local.get $$t963.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 957 + i32.mul + i32.add + local.set $$t964.1 + local.get $$t964.0 + call $runtime.Block.Release + local.set $$t964.0 + local.get $$t964.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 958 + i32.mul + i32.add + local.set $$t965.1 + local.get $$t965.0 + call $runtime.Block.Release + local.set $$t965.0 + local.get $$t965.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 959 + i32.mul + i32.add + local.set $$t966.1 + local.get $$t966.0 + call $runtime.Block.Release + local.set $$t966.0 + local.get $$t966.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 960 + i32.mul + i32.add + local.set $$t967.1 + local.get $$t967.0 + call $runtime.Block.Release + local.set $$t967.0 + local.get $$t967.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 961 + i32.mul + i32.add + local.set $$t968.1 + local.get $$t968.0 + call $runtime.Block.Release + local.set $$t968.0 + local.get $$t968.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 962 + i32.mul + i32.add + local.set $$t969.1 + local.get $$t969.0 + call $runtime.Block.Release + local.set $$t969.0 + local.get $$t969.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 963 + i32.mul + i32.add + local.set $$t970.1 + local.get $$t970.0 + call $runtime.Block.Release + local.set $$t970.0 + local.get $$t970.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 964 + i32.mul + i32.add + local.set $$t971.1 + local.get $$t971.0 + call $runtime.Block.Release + local.set $$t971.0 + local.get $$t971.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 965 + i32.mul + i32.add + local.set $$t972.1 + local.get $$t972.0 + call $runtime.Block.Release + local.set $$t972.0 + local.get $$t972.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 966 + i32.mul + i32.add + local.set $$t973.1 + local.get $$t973.0 + call $runtime.Block.Release + local.set $$t973.0 + local.get $$t973.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 967 + i32.mul + i32.add + local.set $$t974.1 + local.get $$t974.0 + call $runtime.Block.Release + local.set $$t974.0 + local.get $$t974.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 968 + i32.mul + i32.add + local.set $$t975.1 + local.get $$t975.0 + call $runtime.Block.Release + local.set $$t975.0 + local.get $$t975.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 969 + i32.mul + i32.add + local.set $$t976.1 + local.get $$t976.0 + call $runtime.Block.Release + local.set $$t976.0 + local.get $$t976.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 970 + i32.mul + i32.add + local.set $$t977.1 + local.get $$t977.0 + call $runtime.Block.Release + local.set $$t977.0 + local.get $$t977.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 971 + i32.mul + i32.add + local.set $$t978.1 + local.get $$t978.0 + call $runtime.Block.Release + local.set $$t978.0 + local.get $$t978.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 972 + i32.mul + i32.add + local.set $$t979.1 + local.get $$t979.0 + call $runtime.Block.Release + local.set $$t979.0 + local.get $$t979.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 973 + i32.mul + i32.add + local.set $$t980.1 + local.get $$t980.0 + call $runtime.Block.Release + local.set $$t980.0 + local.get $$t980.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 974 + i32.mul + i32.add + local.set $$t981.1 + local.get $$t981.0 + call $runtime.Block.Release + local.set $$t981.0 + local.get $$t981.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 975 + i32.mul + i32.add + local.set $$t982.1 + local.get $$t982.0 + call $runtime.Block.Release + local.set $$t982.0 + local.get $$t982.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 976 + i32.mul + i32.add + local.set $$t983.1 + local.get $$t983.0 + call $runtime.Block.Release + local.set $$t983.0 + local.get $$t983.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 977 + i32.mul + i32.add + local.set $$t984.1 + local.get $$t984.0 + call $runtime.Block.Release + local.set $$t984.0 + local.get $$t984.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 978 + i32.mul + i32.add + local.set $$t985.1 + local.get $$t985.0 + call $runtime.Block.Release + local.set $$t985.0 + local.get $$t985.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 979 + i32.mul + i32.add + local.set $$t986.1 + local.get $$t986.0 + call $runtime.Block.Release + local.set $$t986.0 + local.get $$t986.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 980 + i32.mul + i32.add + local.set $$t987.1 + local.get $$t987.0 + call $runtime.Block.Release + local.set $$t987.0 + local.get $$t987.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 981 + i32.mul + i32.add + local.set $$t988.1 + local.get $$t988.0 + call $runtime.Block.Release + local.set $$t988.0 + local.get $$t988.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 982 + i32.mul + i32.add + local.set $$t989.1 + local.get $$t989.0 + call $runtime.Block.Release + local.set $$t989.0 + local.get $$t989.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 983 + i32.mul + i32.add + local.set $$t990.1 + local.get $$t990.0 + call $runtime.Block.Release + local.set $$t990.0 + local.get $$t990.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 984 + i32.mul + i32.add + local.set $$t991.1 + local.get $$t991.0 + call $runtime.Block.Release + local.set $$t991.0 + local.get $$t991.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 985 + i32.mul + i32.add + local.set $$t992.1 + local.get $$t992.0 + call $runtime.Block.Release + local.set $$t992.0 + local.get $$t992.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 986 + i32.mul + i32.add + local.set $$t993.1 + local.get $$t993.0 + call $runtime.Block.Release + local.set $$t993.0 + local.get $$t993.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 987 + i32.mul + i32.add + local.set $$t994.1 + local.get $$t994.0 + call $runtime.Block.Release + local.set $$t994.0 + local.get $$t994.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 988 + i32.mul + i32.add + local.set $$t995.1 + local.get $$t995.0 + call $runtime.Block.Release + local.set $$t995.0 + local.get $$t995.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 989 + i32.mul + i32.add + local.set $$t996.1 + local.get $$t996.0 + call $runtime.Block.Release + local.set $$t996.0 + local.get $$t996.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 990 + i32.mul + i32.add + local.set $$t997.1 + local.get $$t997.0 + call $runtime.Block.Release + local.set $$t997.0 + local.get $$t997.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 991 + i32.mul + i32.add + local.set $$t998.1 + local.get $$t998.0 + call $runtime.Block.Release + local.set $$t998.0 + local.get $$t998.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 992 + i32.mul + i32.add + local.set $$t999.1 + local.get $$t999.0 + call $runtime.Block.Release + local.set $$t999.0 + local.get $$t999.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 993 + i32.mul + i32.add + local.set $$t1000.1 + local.get $$t1000.0 + call $runtime.Block.Release + local.set $$t1000.0 + local.get $$t1000.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 994 + i32.mul + i32.add + local.set $$t1001.1 + local.get $$t1001.0 + call $runtime.Block.Release + local.set $$t1001.0 + local.get $$t1001.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 995 + i32.mul + i32.add + local.set $$t1002.1 + local.get $$t1002.0 + call $runtime.Block.Release + local.set $$t1002.0 + local.get $$t1002.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 996 + i32.mul + i32.add + local.set $$t1003.1 + local.get $$t1003.0 + call $runtime.Block.Release + local.set $$t1003.0 + local.get $$t1003.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 997 + i32.mul + i32.add + local.set $$t1004.1 + local.get $$t1004.0 + call $runtime.Block.Release + local.set $$t1004.0 + local.get $$t1004.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 998 + i32.mul + i32.add + local.set $$t1005.1 + local.get $$t1005.0 + call $runtime.Block.Release + local.set $$t1005.0 + local.get $$t1005.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 999 + i32.mul + i32.add + local.set $$t1006.1 + local.get $$t1006.0 + call $runtime.Block.Release + local.set $$t1006.0 + local.get $$t1006.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1000 + i32.mul + i32.add + local.set $$t1007.1 + local.get $$t1007.0 + call $runtime.Block.Release + local.set $$t1007.0 + local.get $$t1007.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1001 + i32.mul + i32.add + local.set $$t1008.1 + local.get $$t1008.0 + call $runtime.Block.Release + local.set $$t1008.0 + local.get $$t1008.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1002 + i32.mul + i32.add + local.set $$t1009.1 + local.get $$t1009.0 + call $runtime.Block.Release + local.set $$t1009.0 + local.get $$t1009.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1003 + i32.mul + i32.add + local.set $$t1010.1 + local.get $$t1010.0 + call $runtime.Block.Release + local.set $$t1010.0 + local.get $$t1010.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1004 + i32.mul + i32.add + local.set $$t1011.1 + local.get $$t1011.0 + call $runtime.Block.Release + local.set $$t1011.0 + local.get $$t1011.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1005 + i32.mul + i32.add + local.set $$t1012.1 + local.get $$t1012.0 + call $runtime.Block.Release + local.set $$t1012.0 + local.get $$t1012.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1006 + i32.mul + i32.add + local.set $$t1013.1 + local.get $$t1013.0 + call $runtime.Block.Release + local.set $$t1013.0 + local.get $$t1013.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1007 + i32.mul + i32.add + local.set $$t1014.1 + local.get $$t1014.0 + call $runtime.Block.Release + local.set $$t1014.0 + local.get $$t1014.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1008 + i32.mul + i32.add + local.set $$t1015.1 + local.get $$t1015.0 + call $runtime.Block.Release + local.set $$t1015.0 + local.get $$t1015.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1009 + i32.mul + i32.add + local.set $$t1016.1 + local.get $$t1016.0 + call $runtime.Block.Release + local.set $$t1016.0 + local.get $$t1016.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1010 + i32.mul + i32.add + local.set $$t1017.1 + local.get $$t1017.0 + call $runtime.Block.Release + local.set $$t1017.0 + local.get $$t1017.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1011 + i32.mul + i32.add + local.set $$t1018.1 + local.get $$t1018.0 + call $runtime.Block.Release + local.set $$t1018.0 + local.get $$t1018.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1012 + i32.mul + i32.add + local.set $$t1019.1 + local.get $$t1019.0 + call $runtime.Block.Release + local.set $$t1019.0 + local.get $$t1019.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1013 + i32.mul + i32.add + local.set $$t1020.1 + local.get $$t1020.0 + call $runtime.Block.Release + local.set $$t1020.0 + local.get $$t1020.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1014 + i32.mul + i32.add + local.set $$t1021.1 + local.get $$t1021.0 + call $runtime.Block.Release + local.set $$t1021.0 + local.get $$t1021.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1015 + i32.mul + i32.add + local.set $$t1022.1 + local.get $$t1022.0 + call $runtime.Block.Release + local.set $$t1022.0 + local.get $$t1022.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1016 + i32.mul + i32.add + local.set $$t1023.1 + local.get $$t1023.0 + call $runtime.Block.Release + local.set $$t1023.0 + local.get $$t1023.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1017 + i32.mul + i32.add + local.set $$t1024.1 + local.get $$t1024.0 + call $runtime.Block.Release + local.set $$t1024.0 + local.get $$t1024.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1018 + i32.mul + i32.add + local.set $$t1025.1 + local.get $$t1025.0 + call $runtime.Block.Release + local.set $$t1025.0 + local.get $$t1025.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1019 + i32.mul + i32.add + local.set $$t1026.1 + local.get $$t1026.0 + call $runtime.Block.Release + local.set $$t1026.0 + local.get $$t1026.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1020 + i32.mul + i32.add + local.set $$t1027.1 + local.get $$t1027.0 + call $runtime.Block.Release + local.set $$t1027.0 + local.get $$t1027.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1021 + i32.mul + i32.add + local.set $$t1028.1 + local.get $$t1028.0 + call $runtime.Block.Release + local.set $$t1028.0 + local.get $$t1028.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1022 + i32.mul + i32.add + local.set $$t1029.1 + local.get $$t1029.0 + call $runtime.Block.Release + local.set $$t1029.0 + local.get $$t1029.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1023 + i32.mul + i32.add + local.set $$t1030.1 + local.get $$t1030.0 + call $runtime.Block.Release + local.set $$t1030.0 + local.get $$t1030.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1024 + i32.mul + i32.add + local.set $$t1031.1 + local.get $$t1031.0 + call $runtime.Block.Release + local.set $$t1031.0 + local.get $$t1031.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1025 + i32.mul + i32.add + local.set $$t1032.1 + local.get $$t1032.0 + call $runtime.Block.Release + local.set $$t1032.0 + local.get $$t1032.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1026 + i32.mul + i32.add + local.set $$t1033.1 + local.get $$t1033.0 + call $runtime.Block.Release + local.set $$t1033.0 + local.get $$t1033.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1027 + i32.mul + i32.add + local.set $$t1034.1 + local.get $$t1034.0 + call $runtime.Block.Release + local.set $$t1034.0 + local.get $$t1034.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1028 + i32.mul + i32.add + local.set $$t1035.1 + local.get $$t1035.0 + call $runtime.Block.Release + local.set $$t1035.0 + local.get $$t1035.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1029 + i32.mul + i32.add + local.set $$t1036.1 + local.get $$t1036.0 + call $runtime.Block.Release + local.set $$t1036.0 + local.get $$t1036.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1030 + i32.mul + i32.add + local.set $$t1037.1 + local.get $$t1037.0 + call $runtime.Block.Release + local.set $$t1037.0 + local.get $$t1037.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1031 + i32.mul + i32.add + local.set $$t1038.1 + local.get $$t1038.0 + call $runtime.Block.Release + local.set $$t1038.0 + local.get $$t1038.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1032 + i32.mul + i32.add + local.set $$t1039.1 + local.get $$t1039.0 + call $runtime.Block.Release + local.set $$t1039.0 + local.get $$t1039.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1033 + i32.mul + i32.add + local.set $$t1040.1 + local.get $$t1040.0 + call $runtime.Block.Release + local.set $$t1040.0 + local.get $$t1040.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1034 + i32.mul + i32.add + local.set $$t1041.1 + local.get $$t1041.0 + call $runtime.Block.Release + local.set $$t1041.0 + local.get $$t1041.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1035 + i32.mul + i32.add + local.set $$t1042.1 + local.get $$t1042.0 + call $runtime.Block.Release + local.set $$t1042.0 + local.get $$t1042.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1036 + i32.mul + i32.add + local.set $$t1043.1 + local.get $$t1043.0 + call $runtime.Block.Release + local.set $$t1043.0 + local.get $$t1043.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1037 + i32.mul + i32.add + local.set $$t1044.1 + local.get $$t1044.0 + call $runtime.Block.Release + local.set $$t1044.0 + local.get $$t1044.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1038 + i32.mul + i32.add + local.set $$t1045.1 + local.get $$t1045.0 + call $runtime.Block.Release + local.set $$t1045.0 + local.get $$t1045.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1039 + i32.mul + i32.add + local.set $$t1046.1 + local.get $$t1046.0 + call $runtime.Block.Release + local.set $$t1046.0 + local.get $$t1046.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1040 + i32.mul + i32.add + local.set $$t1047.1 + local.get $$t1047.0 + call $runtime.Block.Release + local.set $$t1047.0 + local.get $$t1047.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1041 + i32.mul + i32.add + local.set $$t1048.1 + local.get $$t1048.0 + call $runtime.Block.Release + local.set $$t1048.0 + local.get $$t1048.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1042 + i32.mul + i32.add + local.set $$t1049.1 + local.get $$t1049.0 + call $runtime.Block.Release + local.set $$t1049.0 + local.get $$t1049.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1043 + i32.mul + i32.add + local.set $$t1050.1 + local.get $$t1050.0 + call $runtime.Block.Release + local.set $$t1050.0 + local.get $$t1050.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1044 + i32.mul + i32.add + local.set $$t1051.1 + local.get $$t1051.0 + call $runtime.Block.Release + local.set $$t1051.0 + local.get $$t1051.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1045 + i32.mul + i32.add + local.set $$t1052.1 + local.get $$t1052.0 + call $runtime.Block.Release + local.set $$t1052.0 + local.get $$t1052.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1046 + i32.mul + i32.add + local.set $$t1053.1 + local.get $$t1053.0 + call $runtime.Block.Release + local.set $$t1053.0 + local.get $$t1053.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1047 + i32.mul + i32.add + local.set $$t1054.1 + local.get $$t1054.0 + call $runtime.Block.Release + local.set $$t1054.0 + local.get $$t1054.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1048 + i32.mul + i32.add + local.set $$t1055.1 + local.get $$t1055.0 + call $runtime.Block.Release + local.set $$t1055.0 + local.get $$t1055.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1049 + i32.mul + i32.add + local.set $$t1056.1 + local.get $$t1056.0 + call $runtime.Block.Release + local.set $$t1056.0 + local.get $$t1056.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1050 + i32.mul + i32.add + local.set $$t1057.1 + local.get $$t1057.0 + call $runtime.Block.Release + local.set $$t1057.0 + local.get $$t1057.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1051 + i32.mul + i32.add + local.set $$t1058.1 + local.get $$t1058.0 + call $runtime.Block.Release + local.set $$t1058.0 + local.get $$t1058.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1052 + i32.mul + i32.add + local.set $$t1059.1 + local.get $$t1059.0 + call $runtime.Block.Release + local.set $$t1059.0 + local.get $$t1059.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1053 + i32.mul + i32.add + local.set $$t1060.1 + local.get $$t1060.0 + call $runtime.Block.Release + local.set $$t1060.0 + local.get $$t1060.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1054 + i32.mul + i32.add + local.set $$t1061.1 + local.get $$t1061.0 + call $runtime.Block.Release + local.set $$t1061.0 + local.get $$t1061.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1055 + i32.mul + i32.add + local.set $$t1062.1 + local.get $$t1062.0 + call $runtime.Block.Release + local.set $$t1062.0 + local.get $$t1062.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1056 + i32.mul + i32.add + local.set $$t1063.1 + local.get $$t1063.0 + call $runtime.Block.Release + local.set $$t1063.0 + local.get $$t1063.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1057 + i32.mul + i32.add + local.set $$t1064.1 + local.get $$t1064.0 + call $runtime.Block.Release + local.set $$t1064.0 + local.get $$t1064.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1058 + i32.mul + i32.add + local.set $$t1065.1 + local.get $$t1065.0 + call $runtime.Block.Release + local.set $$t1065.0 + local.get $$t1065.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1059 + i32.mul + i32.add + local.set $$t1066.1 + local.get $$t1066.0 + call $runtime.Block.Release + local.set $$t1066.0 + local.get $$t1066.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1060 + i32.mul + i32.add + local.set $$t1067.1 + local.get $$t1067.0 + call $runtime.Block.Release + local.set $$t1067.0 + local.get $$t1067.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1061 + i32.mul + i32.add + local.set $$t1068.1 + local.get $$t1068.0 + call $runtime.Block.Release + local.set $$t1068.0 + local.get $$t1068.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1062 + i32.mul + i32.add + local.set $$t1069.1 + local.get $$t1069.0 + call $runtime.Block.Release + local.set $$t1069.0 + local.get $$t1069.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1063 + i32.mul + i32.add + local.set $$t1070.1 + local.get $$t1070.0 + call $runtime.Block.Release + local.set $$t1070.0 + local.get $$t1070.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1064 + i32.mul + i32.add + local.set $$t1071.1 + local.get $$t1071.0 + call $runtime.Block.Release + local.set $$t1071.0 + local.get $$t1071.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1065 + i32.mul + i32.add + local.set $$t1072.1 + local.get $$t1072.0 + call $runtime.Block.Release + local.set $$t1072.0 + local.get $$t1072.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1066 + i32.mul + i32.add + local.set $$t1073.1 + local.get $$t1073.0 + call $runtime.Block.Release + local.set $$t1073.0 + local.get $$t1073.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1067 + i32.mul + i32.add + local.set $$t1074.1 + local.get $$t1074.0 + call $runtime.Block.Release + local.set $$t1074.0 + local.get $$t1074.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1068 + i32.mul + i32.add + local.set $$t1075.1 + local.get $$t1075.0 + call $runtime.Block.Release + local.set $$t1075.0 + local.get $$t1075.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1069 + i32.mul + i32.add + local.set $$t1076.1 + local.get $$t1076.0 + call $runtime.Block.Release + local.set $$t1076.0 + local.get $$t1076.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1070 + i32.mul + i32.add + local.set $$t1077.1 + local.get $$t1077.0 + call $runtime.Block.Release + local.set $$t1077.0 + local.get $$t1077.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1071 + i32.mul + i32.add + local.set $$t1078.1 + local.get $$t1078.0 + call $runtime.Block.Release + local.set $$t1078.0 + local.get $$t1078.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1072 + i32.mul + i32.add + local.set $$t1079.1 + local.get $$t1079.0 + call $runtime.Block.Release + local.set $$t1079.0 + local.get $$t1079.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1073 + i32.mul + i32.add + local.set $$t1080.1 + local.get $$t1080.0 + call $runtime.Block.Release + local.set $$t1080.0 + local.get $$t1080.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1074 + i32.mul + i32.add + local.set $$t1081.1 + local.get $$t1081.0 + call $runtime.Block.Release + local.set $$t1081.0 + local.get $$t1081.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1075 + i32.mul + i32.add + local.set $$t1082.1 + local.get $$t1082.0 + call $runtime.Block.Release + local.set $$t1082.0 + local.get $$t1082.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1076 + i32.mul + i32.add + local.set $$t1083.1 + local.get $$t1083.0 + call $runtime.Block.Release + local.set $$t1083.0 + local.get $$t1083.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1077 + i32.mul + i32.add + local.set $$t1084.1 + local.get $$t1084.0 + call $runtime.Block.Release + local.set $$t1084.0 + local.get $$t1084.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1078 + i32.mul + i32.add + local.set $$t1085.1 + local.get $$t1085.0 + call $runtime.Block.Release + local.set $$t1085.0 + local.get $$t1085.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1079 + i32.mul + i32.add + local.set $$t1086.1 + local.get $$t1086.0 + call $runtime.Block.Release + local.set $$t1086.0 + local.get $$t1086.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1080 + i32.mul + i32.add + local.set $$t1087.1 + local.get $$t1087.0 + call $runtime.Block.Release + local.set $$t1087.0 + local.get $$t1087.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1081 + i32.mul + i32.add + local.set $$t1088.1 + local.get $$t1088.0 + call $runtime.Block.Release + local.set $$t1088.0 + local.get $$t1088.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1082 + i32.mul + i32.add + local.set $$t1089.1 + local.get $$t1089.0 + call $runtime.Block.Release + local.set $$t1089.0 + local.get $$t1089.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1083 + i32.mul + i32.add + local.set $$t1090.1 + local.get $$t1090.0 + call $runtime.Block.Release + local.set $$t1090.0 + local.get $$t1090.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1084 + i32.mul + i32.add + local.set $$t1091.1 + local.get $$t1091.0 + call $runtime.Block.Release + local.set $$t1091.0 + local.get $$t1091.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1085 + i32.mul + i32.add + local.set $$t1092.1 + local.get $$t1092.0 + call $runtime.Block.Release + local.set $$t1092.0 + local.get $$t1092.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1086 + i32.mul + i32.add + local.set $$t1093.1 + local.get $$t1093.0 + call $runtime.Block.Release + local.set $$t1093.0 + local.get $$t1093.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1087 + i32.mul + i32.add + local.set $$t1094.1 + local.get $$t1094.0 + call $runtime.Block.Release + local.set $$t1094.0 + local.get $$t1094.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1088 + i32.mul + i32.add + local.set $$t1095.1 + local.get $$t1095.0 + call $runtime.Block.Release + local.set $$t1095.0 + local.get $$t1095.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1089 + i32.mul + i32.add + local.set $$t1096.1 + local.get $$t1096.0 + call $runtime.Block.Release + local.set $$t1096.0 + local.get $$t1096.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1090 + i32.mul + i32.add + local.set $$t1097.1 + local.get $$t1097.0 + call $runtime.Block.Release + local.set $$t1097.0 + local.get $$t1097.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1091 + i32.mul + i32.add + local.set $$t1098.1 + local.get $$t1098.0 + call $runtime.Block.Release + local.set $$t1098.0 + local.get $$t1098.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1092 + i32.mul + i32.add + local.set $$t1099.1 + local.get $$t1099.0 + call $runtime.Block.Release + local.set $$t1099.0 + local.get $$t1099.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1093 + i32.mul + i32.add + local.set $$t1100.1 + local.get $$t1100.0 + call $runtime.Block.Release + local.set $$t1100.0 + local.get $$t1100.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1094 + i32.mul + i32.add + local.set $$t1101.1 + local.get $$t1101.0 + call $runtime.Block.Release + local.set $$t1101.0 + local.get $$t1101.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1095 + i32.mul + i32.add + local.set $$t1102.1 + local.get $$t1102.0 + call $runtime.Block.Release + local.set $$t1102.0 + local.get $$t1102.1 + i32.const 253 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1096 + i32.mul + i32.add + local.set $$t1103.1 + local.get $$t1103.0 + call $runtime.Block.Release + local.set $$t1103.0 + local.get $$t1103.1 + i32.const 127 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1097 + i32.mul + i32.add + local.set $$t1104.1 + local.get $$t1104.0 + call $runtime.Block.Release + local.set $$t1104.0 + local.get $$t1104.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1098 + i32.mul + i32.add + local.set $$t1105.1 + local.get $$t1105.0 + call $runtime.Block.Release + local.set $$t1105.0 + local.get $$t1105.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1099 + i32.mul + i32.add + local.set $$t1106.1 + local.get $$t1106.0 + call $runtime.Block.Release + local.set $$t1106.0 + local.get $$t1106.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1100 + i32.mul + i32.add + local.set $$t1107.1 + local.get $$t1107.0 + call $runtime.Block.Release + local.set $$t1107.0 + local.get $$t1107.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1101 + i32.mul + i32.add + local.set $$t1108.1 + local.get $$t1108.0 + call $runtime.Block.Release + local.set $$t1108.0 + local.get $$t1108.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1102 + i32.mul + i32.add + local.set $$t1109.1 + local.get $$t1109.0 + call $runtime.Block.Release + local.set $$t1109.0 + local.get $$t1109.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1103 + i32.mul + i32.add + local.set $$t1110.1 + local.get $$t1110.0 + call $runtime.Block.Release + local.set $$t1110.0 + local.get $$t1110.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1104 + i32.mul + i32.add + local.set $$t1111.1 + local.get $$t1111.0 + call $runtime.Block.Release + local.set $$t1111.0 + local.get $$t1111.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1105 + i32.mul + i32.add + local.set $$t1112.1 + local.get $$t1112.0 + call $runtime.Block.Release + local.set $$t1112.0 + local.get $$t1112.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1106 + i32.mul + i32.add + local.set $$t1113.1 + local.get $$t1113.0 + call $runtime.Block.Release + local.set $$t1113.0 + local.get $$t1113.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1107 + i32.mul + i32.add + local.set $$t1114.1 + local.get $$t1114.0 + call $runtime.Block.Release + local.set $$t1114.0 + local.get $$t1114.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1108 + i32.mul + i32.add + local.set $$t1115.1 + local.get $$t1115.0 + call $runtime.Block.Release + local.set $$t1115.0 + local.get $$t1115.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1109 + i32.mul + i32.add + local.set $$t1116.1 + local.get $$t1116.0 + call $runtime.Block.Release + local.set $$t1116.0 + local.get $$t1116.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1110 + i32.mul + i32.add + local.set $$t1117.1 + local.get $$t1117.0 + call $runtime.Block.Release + local.set $$t1117.0 + local.get $$t1117.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1111 + i32.mul + i32.add + local.set $$t1118.1 + local.get $$t1118.0 + call $runtime.Block.Release + local.set $$t1118.0 + local.get $$t1118.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1112 + i32.mul + i32.add + local.set $$t1119.1 + local.get $$t1119.0 + call $runtime.Block.Release + local.set $$t1119.0 + local.get $$t1119.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1113 + i32.mul + i32.add + local.set $$t1120.1 + local.get $$t1120.0 + call $runtime.Block.Release + local.set $$t1120.0 + local.get $$t1120.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1114 + i32.mul + i32.add + local.set $$t1121.1 + local.get $$t1121.0 + call $runtime.Block.Release + local.set $$t1121.0 + local.get $$t1121.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1115 + i32.mul + i32.add + local.set $$t1122.1 + local.get $$t1122.0 + call $runtime.Block.Release + local.set $$t1122.0 + local.get $$t1122.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1116 + i32.mul + i32.add + local.set $$t1123.1 + local.get $$t1123.0 + call $runtime.Block.Release + local.set $$t1123.0 + local.get $$t1123.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1117 + i32.mul + i32.add + local.set $$t1124.1 + local.get $$t1124.0 + call $runtime.Block.Release + local.set $$t1124.0 + local.get $$t1124.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1118 + i32.mul + i32.add + local.set $$t1125.1 + local.get $$t1125.0 + call $runtime.Block.Release + local.set $$t1125.0 + local.get $$t1125.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1119 + i32.mul + i32.add + local.set $$t1126.1 + local.get $$t1126.0 + call $runtime.Block.Release + local.set $$t1126.0 + local.get $$t1126.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1120 + i32.mul + i32.add + local.set $$t1127.1 + local.get $$t1127.0 + call $runtime.Block.Release + local.set $$t1127.0 + local.get $$t1127.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1121 + i32.mul + i32.add + local.set $$t1128.1 + local.get $$t1128.0 + call $runtime.Block.Release + local.set $$t1128.0 + local.get $$t1128.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1122 + i32.mul + i32.add + local.set $$t1129.1 + local.get $$t1129.0 + call $runtime.Block.Release + local.set $$t1129.0 + local.get $$t1129.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1123 + i32.mul + i32.add + local.set $$t1130.1 + local.get $$t1130.0 + call $runtime.Block.Release + local.set $$t1130.0 + local.get $$t1130.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1124 + i32.mul + i32.add + local.set $$t1131.1 + local.get $$t1131.0 + call $runtime.Block.Release + local.set $$t1131.0 + local.get $$t1131.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1125 + i32.mul + i32.add + local.set $$t1132.1 + local.get $$t1132.0 + call $runtime.Block.Release + local.set $$t1132.0 + local.get $$t1132.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1126 + i32.mul + i32.add + local.set $$t1133.1 + local.get $$t1133.0 + call $runtime.Block.Release + local.set $$t1133.0 + local.get $$t1133.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1127 + i32.mul + i32.add + local.set $$t1134.1 + local.get $$t1134.0 + call $runtime.Block.Release + local.set $$t1134.0 + local.get $$t1134.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1128 + i32.mul + i32.add + local.set $$t1135.1 + local.get $$t1135.0 + call $runtime.Block.Release + local.set $$t1135.0 + local.get $$t1135.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1129 + i32.mul + i32.add + local.set $$t1136.1 + local.get $$t1136.0 + call $runtime.Block.Release + local.set $$t1136.0 + local.get $$t1136.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1130 + i32.mul + i32.add + local.set $$t1137.1 + local.get $$t1137.0 + call $runtime.Block.Release + local.set $$t1137.0 + local.get $$t1137.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1131 + i32.mul + i32.add + local.set $$t1138.1 + local.get $$t1138.0 + call $runtime.Block.Release + local.set $$t1138.0 + local.get $$t1138.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1132 + i32.mul + i32.add + local.set $$t1139.1 + local.get $$t1139.0 + call $runtime.Block.Release + local.set $$t1139.0 + local.get $$t1139.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1133 + i32.mul + i32.add + local.set $$t1140.1 + local.get $$t1140.0 + call $runtime.Block.Release + local.set $$t1140.0 + local.get $$t1140.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1134 + i32.mul + i32.add + local.set $$t1141.1 + local.get $$t1141.0 + call $runtime.Block.Release + local.set $$t1141.0 + local.get $$t1141.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1135 + i32.mul + i32.add + local.set $$t1142.1 + local.get $$t1142.0 + call $runtime.Block.Release + local.set $$t1142.0 + local.get $$t1142.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1136 + i32.mul + i32.add + local.set $$t1143.1 + local.get $$t1143.0 + call $runtime.Block.Release + local.set $$t1143.0 + local.get $$t1143.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1137 + i32.mul + i32.add + local.set $$t1144.1 + local.get $$t1144.0 + call $runtime.Block.Release + local.set $$t1144.0 + local.get $$t1144.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1138 + i32.mul + i32.add + local.set $$t1145.1 + local.get $$t1145.0 + call $runtime.Block.Release + local.set $$t1145.0 + local.get $$t1145.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1139 + i32.mul + i32.add + local.set $$t1146.1 + local.get $$t1146.0 + call $runtime.Block.Release + local.set $$t1146.0 + local.get $$t1146.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1140 + i32.mul + i32.add + local.set $$t1147.1 + local.get $$t1147.0 + call $runtime.Block.Release + local.set $$t1147.0 + local.get $$t1147.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1141 + i32.mul + i32.add + local.set $$t1148.1 + local.get $$t1148.0 + call $runtime.Block.Release + local.set $$t1148.0 + local.get $$t1148.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1142 + i32.mul + i32.add + local.set $$t1149.1 + local.get $$t1149.0 + call $runtime.Block.Release + local.set $$t1149.0 + local.get $$t1149.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1143 + i32.mul + i32.add + local.set $$t1150.1 + local.get $$t1150.0 + call $runtime.Block.Release + local.set $$t1150.0 + local.get $$t1150.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1144 + i32.mul + i32.add + local.set $$t1151.1 + local.get $$t1151.0 + call $runtime.Block.Release + local.set $$t1151.0 + local.get $$t1151.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1145 + i32.mul + i32.add + local.set $$t1152.1 + local.get $$t1152.0 + call $runtime.Block.Release + local.set $$t1152.0 + local.get $$t1152.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1146 + i32.mul + i32.add + local.set $$t1153.1 + local.get $$t1153.0 + call $runtime.Block.Release + local.set $$t1153.0 + local.get $$t1153.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1147 + i32.mul + i32.add + local.set $$t1154.1 + local.get $$t1154.0 + call $runtime.Block.Release + local.set $$t1154.0 + local.get $$t1154.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1148 + i32.mul + i32.add + local.set $$t1155.1 + local.get $$t1155.0 + call $runtime.Block.Release + local.set $$t1155.0 + local.get $$t1155.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1149 + i32.mul + i32.add + local.set $$t1156.1 + local.get $$t1156.0 + call $runtime.Block.Release + local.set $$t1156.0 + local.get $$t1156.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1150 + i32.mul + i32.add + local.set $$t1157.1 + local.get $$t1157.0 + call $runtime.Block.Release + local.set $$t1157.0 + local.get $$t1157.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1151 + i32.mul + i32.add + local.set $$t1158.1 + local.get $$t1158.0 + call $runtime.Block.Release + local.set $$t1158.0 + local.get $$t1158.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1152 + i32.mul + i32.add + local.set $$t1159.1 + local.get $$t1159.0 + call $runtime.Block.Release + local.set $$t1159.0 + local.get $$t1159.1 + i32.const 252 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1153 + i32.mul + i32.add + local.set $$t1160.1 + local.get $$t1160.0 + call $runtime.Block.Release + local.set $$t1160.0 + local.get $$t1160.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1154 + i32.mul + i32.add + local.set $$t1161.1 + local.get $$t1161.0 + call $runtime.Block.Release + local.set $$t1161.0 + local.get $$t1161.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1155 + i32.mul + i32.add + local.set $$t1162.1 + local.get $$t1162.0 + call $runtime.Block.Release + local.set $$t1162.0 + local.get $$t1162.1 + i32.const 63 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1156 + i32.mul + i32.add + local.set $$t1163.1 + local.get $$t1163.0 + call $runtime.Block.Release + local.set $$t1163.0 + local.get $$t1163.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1157 + i32.mul + i32.add + local.set $$t1164.1 + local.get $$t1164.0 + call $runtime.Block.Release + local.set $$t1164.0 + local.get $$t1164.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1158 + i32.mul + i32.add + local.set $$t1165.1 + local.get $$t1165.0 + call $runtime.Block.Release + local.set $$t1165.0 + local.get $$t1165.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1159 + i32.mul + i32.add + local.set $$t1166.1 + local.get $$t1166.0 + call $runtime.Block.Release + local.set $$t1166.0 + local.get $$t1166.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1160 + i32.mul + i32.add + local.set $$t1167.1 + local.get $$t1167.0 + call $runtime.Block.Release + local.set $$t1167.0 + local.get $$t1167.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1161 + i32.mul + i32.add + local.set $$t1168.1 + local.get $$t1168.0 + call $runtime.Block.Release + local.set $$t1168.0 + local.get $$t1168.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1162 + i32.mul + i32.add + local.set $$t1169.1 + local.get $$t1169.0 + call $runtime.Block.Release + local.set $$t1169.0 + local.get $$t1169.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1163 + i32.mul + i32.add + local.set $$t1170.1 + local.get $$t1170.0 + call $runtime.Block.Release + local.set $$t1170.0 + local.get $$t1170.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1164 + i32.mul + i32.add + local.set $$t1171.1 + local.get $$t1171.0 + call $runtime.Block.Release + local.set $$t1171.0 + local.get $$t1171.1 + i32.const 252 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1165 + i32.mul + i32.add + local.set $$t1172.1 + local.get $$t1172.0 + call $runtime.Block.Release + local.set $$t1172.0 + local.get $$t1172.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1166 + i32.mul + i32.add + local.set $$t1173.1 + local.get $$t1173.0 + call $runtime.Block.Release + local.set $$t1173.0 + local.get $$t1173.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1167 + i32.mul + i32.add + local.set $$t1174.1 + local.get $$t1174.0 + call $runtime.Block.Release + local.set $$t1174.0 + local.get $$t1174.1 + i32.const 63 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1168 + i32.mul + i32.add + local.set $$t1175.1 + local.get $$t1175.0 + call $runtime.Block.Release + local.set $$t1175.0 + local.get $$t1175.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1169 + i32.mul + i32.add + local.set $$t1176.1 + local.get $$t1176.0 + call $runtime.Block.Release + local.set $$t1176.0 + local.get $$t1176.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1170 + i32.mul + i32.add + local.set $$t1177.1 + local.get $$t1177.0 + call $runtime.Block.Release + local.set $$t1177.0 + local.get $$t1177.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1171 + i32.mul + i32.add + local.set $$t1178.1 + local.get $$t1178.0 + call $runtime.Block.Release + local.set $$t1178.0 + local.get $$t1178.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1172 + i32.mul + i32.add + local.set $$t1179.1 + local.get $$t1179.0 + call $runtime.Block.Release + local.set $$t1179.0 + local.get $$t1179.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1173 + i32.mul + i32.add + local.set $$t1180.1 + local.get $$t1180.0 + call $runtime.Block.Release + local.set $$t1180.0 + local.get $$t1180.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1174 + i32.mul + i32.add + local.set $$t1181.1 + local.get $$t1181.0 + call $runtime.Block.Release + local.set $$t1181.0 + local.get $$t1181.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1175 + i32.mul + i32.add + local.set $$t1182.1 + local.get $$t1182.0 + call $runtime.Block.Release + local.set $$t1182.0 + local.get $$t1182.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1176 + i32.mul + i32.add + local.set $$t1183.1 + local.get $$t1183.0 + call $runtime.Block.Release + local.set $$t1183.0 + local.get $$t1183.1 + i32.const 235 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1177 + i32.mul + i32.add + local.set $$t1184.1 + local.get $$t1184.0 + call $runtime.Block.Release + local.set $$t1184.0 + local.get $$t1184.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1178 + i32.mul + i32.add + local.set $$t1185.1 + local.get $$t1185.0 + call $runtime.Block.Release + local.set $$t1185.0 + local.get $$t1185.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1179 + i32.mul + i32.add + local.set $$t1186.1 + local.get $$t1186.0 + call $runtime.Block.Release + local.set $$t1186.0 + local.get $$t1186.1 + i32.const 235 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1180 + i32.mul + i32.add + local.set $$t1187.1 + local.get $$t1187.0 + call $runtime.Block.Release + local.set $$t1187.0 + local.get $$t1187.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1181 + i32.mul + i32.add + local.set $$t1188.1 + local.get $$t1188.0 + call $runtime.Block.Release + local.set $$t1188.0 + local.get $$t1188.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1182 + i32.mul + i32.add + local.set $$t1189.1 + local.get $$t1189.0 + call $runtime.Block.Release + local.set $$t1189.0 + local.get $$t1189.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1183 + i32.mul + i32.add + local.set $$t1190.1 + local.get $$t1190.0 + call $runtime.Block.Release + local.set $$t1190.0 + local.get $$t1190.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1184 + i32.mul + i32.add + local.set $$t1191.1 + local.get $$t1191.0 + call $runtime.Block.Release + local.set $$t1191.0 + local.get $$t1191.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1185 + i32.mul + i32.add + local.set $$t1192.1 + local.get $$t1192.0 + call $runtime.Block.Release + local.set $$t1192.0 + local.get $$t1192.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1186 + i32.mul + i32.add + local.set $$t1193.1 + local.get $$t1193.0 + call $runtime.Block.Release + local.set $$t1193.0 + local.get $$t1193.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1187 + i32.mul + i32.add + local.set $$t1194.1 + local.get $$t1194.0 + call $runtime.Block.Release + local.set $$t1194.0 + local.get $$t1194.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1188 + i32.mul + i32.add + local.set $$t1195.1 + local.get $$t1195.0 + call $runtime.Block.Release + local.set $$t1195.0 + local.get $$t1195.1 + i32.const 215 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1189 + i32.mul + i32.add + local.set $$t1196.1 + local.get $$t1196.0 + call $runtime.Block.Release + local.set $$t1196.0 + local.get $$t1196.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1190 + i32.mul + i32.add + local.set $$t1197.1 + local.get $$t1197.0 + call $runtime.Block.Release + local.set $$t1197.0 + local.get $$t1197.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1191 + i32.mul + i32.add + local.set $$t1198.1 + local.get $$t1198.0 + call $runtime.Block.Release + local.set $$t1198.0 + local.get $$t1198.1 + i32.const 215 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1192 + i32.mul + i32.add + local.set $$t1199.1 + local.get $$t1199.0 + call $runtime.Block.Release + local.set $$t1199.0 + local.get $$t1199.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1193 + i32.mul + i32.add + local.set $$t1200.1 + local.get $$t1200.0 + call $runtime.Block.Release + local.set $$t1200.0 + local.get $$t1200.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1194 + i32.mul + i32.add + local.set $$t1201.1 + local.get $$t1201.0 + call $runtime.Block.Release + local.set $$t1201.0 + local.get $$t1201.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1195 + i32.mul + i32.add + local.set $$t1202.1 + local.get $$t1202.0 + call $runtime.Block.Release + local.set $$t1202.0 + local.get $$t1202.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1196 + i32.mul + i32.add + local.set $$t1203.1 + local.get $$t1203.0 + call $runtime.Block.Release + local.set $$t1203.0 + local.get $$t1203.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1197 + i32.mul + i32.add + local.set $$t1204.1 + local.get $$t1204.0 + call $runtime.Block.Release + local.set $$t1204.0 + local.get $$t1204.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1198 + i32.mul + i32.add + local.set $$t1205.1 + local.get $$t1205.0 + call $runtime.Block.Release + local.set $$t1205.0 + local.get $$t1205.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1199 + i32.mul + i32.add + local.set $$t1206.1 + local.get $$t1206.0 + call $runtime.Block.Release + local.set $$t1206.0 + local.get $$t1206.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1200 + i32.mul + i32.add + local.set $$t1207.1 + local.get $$t1207.0 + call $runtime.Block.Release + local.set $$t1207.0 + local.get $$t1207.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1201 + i32.mul + i32.add + local.set $$t1208.1 + local.get $$t1208.0 + call $runtime.Block.Release + local.set $$t1208.0 + local.get $$t1208.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1202 + i32.mul + i32.add + local.set $$t1209.1 + local.get $$t1209.0 + call $runtime.Block.Release + local.set $$t1209.0 + local.get $$t1209.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1203 + i32.mul + i32.add + local.set $$t1210.1 + local.get $$t1210.0 + call $runtime.Block.Release + local.set $$t1210.0 + local.get $$t1210.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1204 + i32.mul + i32.add + local.set $$t1211.1 + local.get $$t1211.0 + call $runtime.Block.Release + local.set $$t1211.0 + local.get $$t1211.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1205 + i32.mul + i32.add + local.set $$t1212.1 + local.get $$t1212.0 + call $runtime.Block.Release + local.set $$t1212.0 + local.get $$t1212.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1206 + i32.mul + i32.add + local.set $$t1213.1 + local.get $$t1213.0 + call $runtime.Block.Release + local.set $$t1213.0 + local.get $$t1213.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1207 + i32.mul + i32.add + local.set $$t1214.1 + local.get $$t1214.0 + call $runtime.Block.Release + local.set $$t1214.0 + local.get $$t1214.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1208 + i32.mul + i32.add + local.set $$t1215.1 + local.get $$t1215.0 + call $runtime.Block.Release + local.set $$t1215.0 + local.get $$t1215.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1209 + i32.mul + i32.add + local.set $$t1216.1 + local.get $$t1216.0 + call $runtime.Block.Release + local.set $$t1216.0 + local.get $$t1216.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1210 + i32.mul + i32.add + local.set $$t1217.1 + local.get $$t1217.0 + call $runtime.Block.Release + local.set $$t1217.0 + local.get $$t1217.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1211 + i32.mul + i32.add + local.set $$t1218.1 + local.get $$t1218.0 + call $runtime.Block.Release + local.set $$t1218.0 + local.get $$t1218.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1212 + i32.mul + i32.add + local.set $$t1219.1 + local.get $$t1219.0 + call $runtime.Block.Release + local.set $$t1219.0 + local.get $$t1219.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1213 + i32.mul + i32.add + local.set $$t1220.1 + local.get $$t1220.0 + call $runtime.Block.Release + local.set $$t1220.0 + local.get $$t1220.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1214 + i32.mul + i32.add + local.set $$t1221.1 + local.get $$t1221.0 + call $runtime.Block.Release + local.set $$t1221.0 + local.get $$t1221.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1215 + i32.mul + i32.add + local.set $$t1222.1 + local.get $$t1222.0 + call $runtime.Block.Release + local.set $$t1222.0 + local.get $$t1222.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1216 + i32.mul + i32.add + local.set $$t1223.1 + local.get $$t1223.0 + call $runtime.Block.Release + local.set $$t1223.0 + local.get $$t1223.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1217 + i32.mul + i32.add + local.set $$t1224.1 + local.get $$t1224.0 + call $runtime.Block.Release + local.set $$t1224.0 + local.get $$t1224.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1218 + i32.mul + i32.add + local.set $$t1225.1 + local.get $$t1225.0 + call $runtime.Block.Release + local.set $$t1225.0 + local.get $$t1225.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1219 + i32.mul + i32.add + local.set $$t1226.1 + local.get $$t1226.0 + call $runtime.Block.Release + local.set $$t1226.0 + local.get $$t1226.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1220 + i32.mul + i32.add + local.set $$t1227.1 + local.get $$t1227.0 + call $runtime.Block.Release + local.set $$t1227.0 + local.get $$t1227.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1221 + i32.mul + i32.add + local.set $$t1228.1 + local.get $$t1228.0 + call $runtime.Block.Release + local.set $$t1228.0 + local.get $$t1228.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1222 + i32.mul + i32.add + local.set $$t1229.1 + local.get $$t1229.0 + call $runtime.Block.Release + local.set $$t1229.0 + local.get $$t1229.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1223 + i32.mul + i32.add + local.set $$t1230.1 + local.get $$t1230.0 + call $runtime.Block.Release + local.set $$t1230.0 + local.get $$t1230.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1224 + i32.mul + i32.add + local.set $$t1231.1 + local.get $$t1231.0 + call $runtime.Block.Release + local.set $$t1231.0 + local.get $$t1231.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1225 + i32.mul + i32.add + local.set $$t1232.1 + local.get $$t1232.0 + call $runtime.Block.Release + local.set $$t1232.0 + local.get $$t1232.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1226 + i32.mul + i32.add + local.set $$t1233.1 + local.get $$t1233.0 + call $runtime.Block.Release + local.set $$t1233.0 + local.get $$t1233.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1227 + i32.mul + i32.add + local.set $$t1234.1 + local.get $$t1234.0 + call $runtime.Block.Release + local.set $$t1234.0 + local.get $$t1234.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1228 + i32.mul + i32.add + local.set $$t1235.1 + local.get $$t1235.0 + call $runtime.Block.Release + local.set $$t1235.0 + local.get $$t1235.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1229 + i32.mul + i32.add + local.set $$t1236.1 + local.get $$t1236.0 + call $runtime.Block.Release + local.set $$t1236.0 + local.get $$t1236.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1230 + i32.mul + i32.add + local.set $$t1237.1 + local.get $$t1237.0 + call $runtime.Block.Release + local.set $$t1237.0 + local.get $$t1237.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1231 + i32.mul + i32.add + local.set $$t1238.1 + local.get $$t1238.0 + call $runtime.Block.Release + local.set $$t1238.0 + local.get $$t1238.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1232 + i32.mul + i32.add + local.set $$t1239.1 + local.get $$t1239.0 + call $runtime.Block.Release + local.set $$t1239.0 + local.get $$t1239.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1233 + i32.mul + i32.add + local.set $$t1240.1 + local.get $$t1240.0 + call $runtime.Block.Release + local.set $$t1240.0 + local.get $$t1240.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1234 + i32.mul + i32.add + local.set $$t1241.1 + local.get $$t1241.0 + call $runtime.Block.Release + local.set $$t1241.0 + local.get $$t1241.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1235 + i32.mul + i32.add + local.set $$t1242.1 + local.get $$t1242.0 + call $runtime.Block.Release + local.set $$t1242.0 + local.get $$t1242.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1236 + i32.mul + i32.add + local.set $$t1243.1 + local.get $$t1243.0 + call $runtime.Block.Release + local.set $$t1243.0 + local.get $$t1243.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1237 + i32.mul + i32.add + local.set $$t1244.1 + local.get $$t1244.0 + call $runtime.Block.Release + local.set $$t1244.0 + local.get $$t1244.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1238 + i32.mul + i32.add + local.set $$t1245.1 + local.get $$t1245.0 + call $runtime.Block.Release + local.set $$t1245.0 + local.get $$t1245.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1239 + i32.mul + i32.add + local.set $$t1246.1 + local.get $$t1246.0 + call $runtime.Block.Release + local.set $$t1246.0 + local.get $$t1246.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1240 + i32.mul + i32.add + local.set $$t1247.1 + local.get $$t1247.0 + call $runtime.Block.Release + local.set $$t1247.0 + local.get $$t1247.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1241 + i32.mul + i32.add + local.set $$t1248.1 + local.get $$t1248.0 + call $runtime.Block.Release + local.set $$t1248.0 + local.get $$t1248.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1242 + i32.mul + i32.add + local.set $$t1249.1 + local.get $$t1249.0 + call $runtime.Block.Release + local.set $$t1249.0 + local.get $$t1249.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1243 + i32.mul + i32.add + local.set $$t1250.1 + local.get $$t1250.0 + call $runtime.Block.Release + local.set $$t1250.0 + local.get $$t1250.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1244 + i32.mul + i32.add + local.set $$t1251.1 + local.get $$t1251.0 + call $runtime.Block.Release + local.set $$t1251.0 + local.get $$t1251.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1245 + i32.mul + i32.add + local.set $$t1252.1 + local.get $$t1252.0 + call $runtime.Block.Release + local.set $$t1252.0 + local.get $$t1252.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1246 + i32.mul + i32.add + local.set $$t1253.1 + local.get $$t1253.0 + call $runtime.Block.Release + local.set $$t1253.0 + local.get $$t1253.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1247 + i32.mul + i32.add + local.set $$t1254.1 + local.get $$t1254.0 + call $runtime.Block.Release + local.set $$t1254.0 + local.get $$t1254.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1248 + i32.mul + i32.add + local.set $$t1255.1 + local.get $$t1255.0 + call $runtime.Block.Release + local.set $$t1255.0 + local.get $$t1255.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1249 + i32.mul + i32.add + local.set $$t1256.1 + local.get $$t1256.0 + call $runtime.Block.Release + local.set $$t1256.0 + local.get $$t1256.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1250 + i32.mul + i32.add + local.set $$t1257.1 + local.get $$t1257.0 + call $runtime.Block.Release + local.set $$t1257.0 + local.get $$t1257.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1251 + i32.mul + i32.add + local.set $$t1258.1 + local.get $$t1258.0 + call $runtime.Block.Release + local.set $$t1258.0 + local.get $$t1258.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1252 + i32.mul + i32.add + local.set $$t1259.1 + local.get $$t1259.0 + call $runtime.Block.Release + local.set $$t1259.0 + local.get $$t1259.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1253 + i32.mul + i32.add + local.set $$t1260.1 + local.get $$t1260.0 + call $runtime.Block.Release + local.set $$t1260.0 + local.get $$t1260.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1254 + i32.mul + i32.add + local.set $$t1261.1 + local.get $$t1261.0 + call $runtime.Block.Release + local.set $$t1261.0 + local.get $$t1261.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1255 + i32.mul + i32.add + local.set $$t1262.1 + local.get $$t1262.0 + call $runtime.Block.Release + local.set $$t1262.0 + local.get $$t1262.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1256 + i32.mul + i32.add + local.set $$t1263.1 + local.get $$t1263.0 + call $runtime.Block.Release + local.set $$t1263.0 + local.get $$t1263.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1257 + i32.mul + i32.add + local.set $$t1264.1 + local.get $$t1264.0 + call $runtime.Block.Release + local.set $$t1264.0 + local.get $$t1264.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1258 + i32.mul + i32.add + local.set $$t1265.1 + local.get $$t1265.0 + call $runtime.Block.Release + local.set $$t1265.0 + local.get $$t1265.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1259 + i32.mul + i32.add + local.set $$t1266.1 + local.get $$t1266.0 + call $runtime.Block.Release + local.set $$t1266.0 + local.get $$t1266.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1260 + i32.mul + i32.add + local.set $$t1267.1 + local.get $$t1267.0 + call $runtime.Block.Release + local.set $$t1267.0 + local.get $$t1267.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1261 + i32.mul + i32.add + local.set $$t1268.1 + local.get $$t1268.0 + call $runtime.Block.Release + local.set $$t1268.0 + local.get $$t1268.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1262 + i32.mul + i32.add + local.set $$t1269.1 + local.get $$t1269.0 + call $runtime.Block.Release + local.set $$t1269.0 + local.get $$t1269.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1263 + i32.mul + i32.add + local.set $$t1270.1 + local.get $$t1270.0 + call $runtime.Block.Release + local.set $$t1270.0 + local.get $$t1270.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1264 + i32.mul + i32.add + local.set $$t1271.1 + local.get $$t1271.0 + call $runtime.Block.Release + local.set $$t1271.0 + local.get $$t1271.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1265 + i32.mul + i32.add + local.set $$t1272.1 + local.get $$t1272.0 + call $runtime.Block.Release + local.set $$t1272.0 + local.get $$t1272.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1266 + i32.mul + i32.add + local.set $$t1273.1 + local.get $$t1273.0 + call $runtime.Block.Release + local.set $$t1273.0 + local.get $$t1273.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1267 + i32.mul + i32.add + local.set $$t1274.1 + local.get $$t1274.0 + call $runtime.Block.Release + local.set $$t1274.0 + local.get $$t1274.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1268 + i32.mul + i32.add + local.set $$t1275.1 + local.get $$t1275.0 + call $runtime.Block.Release + local.set $$t1275.0 + local.get $$t1275.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1269 + i32.mul + i32.add + local.set $$t1276.1 + local.get $$t1276.0 + call $runtime.Block.Release + local.set $$t1276.0 + local.get $$t1276.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1270 + i32.mul + i32.add + local.set $$t1277.1 + local.get $$t1277.0 + call $runtime.Block.Release + local.set $$t1277.0 + local.get $$t1277.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1271 + i32.mul + i32.add + local.set $$t1278.1 + local.get $$t1278.0 + call $runtime.Block.Release + local.set $$t1278.0 + local.get $$t1278.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1272 + i32.mul + i32.add + local.set $$t1279.1 + local.get $$t1279.0 + call $runtime.Block.Release + local.set $$t1279.0 + local.get $$t1279.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1273 + i32.mul + i32.add + local.set $$t1280.1 + local.get $$t1280.0 + call $runtime.Block.Release + local.set $$t1280.0 + local.get $$t1280.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1274 + i32.mul + i32.add + local.set $$t1281.1 + local.get $$t1281.0 + call $runtime.Block.Release + local.set $$t1281.0 + local.get $$t1281.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1275 + i32.mul + i32.add + local.set $$t1282.1 + local.get $$t1282.0 + call $runtime.Block.Release + local.set $$t1282.0 + local.get $$t1282.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1276 + i32.mul + i32.add + local.set $$t1283.1 + local.get $$t1283.0 + call $runtime.Block.Release + local.set $$t1283.0 + local.get $$t1283.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1277 + i32.mul + i32.add + local.set $$t1284.1 + local.get $$t1284.0 + call $runtime.Block.Release + local.set $$t1284.0 + local.get $$t1284.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1278 + i32.mul + i32.add + local.set $$t1285.1 + local.get $$t1285.0 + call $runtime.Block.Release + local.set $$t1285.0 + local.get $$t1285.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1279 + i32.mul + i32.add + local.set $$t1286.1 + local.get $$t1286.0 + call $runtime.Block.Release + local.set $$t1286.0 + local.get $$t1286.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1280 + i32.mul + i32.add + local.set $$t1287.1 + local.get $$t1287.0 + call $runtime.Block.Release + local.set $$t1287.0 + local.get $$t1287.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1281 + i32.mul + i32.add + local.set $$t1288.1 + local.get $$t1288.0 + call $runtime.Block.Release + local.set $$t1288.0 + local.get $$t1288.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1282 + i32.mul + i32.add + local.set $$t1289.1 + local.get $$t1289.0 + call $runtime.Block.Release + local.set $$t1289.0 + local.get $$t1289.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1283 + i32.mul + i32.add + local.set $$t1290.1 + local.get $$t1290.0 + call $runtime.Block.Release + local.set $$t1290.0 + local.get $$t1290.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1284 + i32.mul + i32.add + local.set $$t1291.1 + local.get $$t1291.0 + call $runtime.Block.Release + local.set $$t1291.0 + local.get $$t1291.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1285 + i32.mul + i32.add + local.set $$t1292.1 + local.get $$t1292.0 + call $runtime.Block.Release + local.set $$t1292.0 + local.get $$t1292.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1286 + i32.mul + i32.add + local.set $$t1293.1 + local.get $$t1293.0 + call $runtime.Block.Release + local.set $$t1293.0 + local.get $$t1293.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1287 + i32.mul + i32.add + local.set $$t1294.1 + local.get $$t1294.0 + call $runtime.Block.Release + local.set $$t1294.0 + local.get $$t1294.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1288 + i32.mul + i32.add + local.set $$t1295.1 + local.get $$t1295.0 + call $runtime.Block.Release + local.set $$t1295.0 + local.get $$t1295.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1289 + i32.mul + i32.add + local.set $$t1296.1 + local.get $$t1296.0 + call $runtime.Block.Release + local.set $$t1296.0 + local.get $$t1296.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1290 + i32.mul + i32.add + local.set $$t1297.1 + local.get $$t1297.0 + call $runtime.Block.Release + local.set $$t1297.0 + local.get $$t1297.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1291 + i32.mul + i32.add + local.set $$t1298.1 + local.get $$t1298.0 + call $runtime.Block.Release + local.set $$t1298.0 + local.get $$t1298.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1292 + i32.mul + i32.add + local.set $$t1299.1 + local.get $$t1299.0 + call $runtime.Block.Release + local.set $$t1299.0 + local.get $$t1299.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1293 + i32.mul + i32.add + local.set $$t1300.1 + local.get $$t1300.0 + call $runtime.Block.Release + local.set $$t1300.0 + local.get $$t1300.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1294 + i32.mul + i32.add + local.set $$t1301.1 + local.get $$t1301.0 + call $runtime.Block.Release + local.set $$t1301.0 + local.get $$t1301.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1295 + i32.mul + i32.add + local.set $$t1302.1 + local.get $$t1302.0 + call $runtime.Block.Release + local.set $$t1302.0 + local.get $$t1302.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1296 + i32.mul + i32.add + local.set $$t1303.1 + local.get $$t1303.0 + call $runtime.Block.Release + local.set $$t1303.0 + local.get $$t1303.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1297 + i32.mul + i32.add + local.set $$t1304.1 + local.get $$t1304.0 + call $runtime.Block.Release + local.set $$t1304.0 + local.get $$t1304.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1298 + i32.mul + i32.add + local.set $$t1305.1 + local.get $$t1305.0 + call $runtime.Block.Release + local.set $$t1305.0 + local.get $$t1305.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1299 + i32.mul + i32.add + local.set $$t1306.1 + local.get $$t1306.0 + call $runtime.Block.Release + local.set $$t1306.0 + local.get $$t1306.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1300 + i32.mul + i32.add + local.set $$t1307.1 + local.get $$t1307.0 + call $runtime.Block.Release + local.set $$t1307.0 + local.get $$t1307.1 + i32.const 235 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1301 + i32.mul + i32.add + local.set $$t1308.1 + local.get $$t1308.0 + call $runtime.Block.Release + local.set $$t1308.0 + local.get $$t1308.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1302 + i32.mul + i32.add + local.set $$t1309.1 + local.get $$t1309.0 + call $runtime.Block.Release + local.set $$t1309.0 + local.get $$t1309.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1303 + i32.mul + i32.add + local.set $$t1310.1 + local.get $$t1310.0 + call $runtime.Block.Release + local.set $$t1310.0 + local.get $$t1310.1 + i32.const 235 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1304 + i32.mul + i32.add + local.set $$t1311.1 + local.get $$t1311.0 + call $runtime.Block.Release + local.set $$t1311.0 + local.get $$t1311.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1305 + i32.mul + i32.add + local.set $$t1312.1 + local.get $$t1312.0 + call $runtime.Block.Release + local.set $$t1312.0 + local.get $$t1312.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1306 + i32.mul + i32.add + local.set $$t1313.1 + local.get $$t1313.0 + call $runtime.Block.Release + local.set $$t1313.0 + local.get $$t1313.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1307 + i32.mul + i32.add + local.set $$t1314.1 + local.get $$t1314.0 + call $runtime.Block.Release + local.set $$t1314.0 + local.get $$t1314.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1308 + i32.mul + i32.add + local.set $$t1315.1 + local.get $$t1315.0 + call $runtime.Block.Release + local.set $$t1315.0 + local.get $$t1315.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1309 + i32.mul + i32.add + local.set $$t1316.1 + local.get $$t1316.0 + call $runtime.Block.Release + local.set $$t1316.0 + local.get $$t1316.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1310 + i32.mul + i32.add + local.set $$t1317.1 + local.get $$t1317.0 + call $runtime.Block.Release + local.set $$t1317.0 + local.get $$t1317.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1311 + i32.mul + i32.add + local.set $$t1318.1 + local.get $$t1318.0 + call $runtime.Block.Release + local.set $$t1318.0 + local.get $$t1318.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1312 + i32.mul + i32.add + local.set $$t1319.1 + local.get $$t1319.0 + call $runtime.Block.Release + local.set $$t1319.0 + local.get $$t1319.1 + i32.const 215 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1313 + i32.mul + i32.add + local.set $$t1320.1 + local.get $$t1320.0 + call $runtime.Block.Release + local.set $$t1320.0 + local.get $$t1320.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1314 + i32.mul + i32.add + local.set $$t1321.1 + local.get $$t1321.0 + call $runtime.Block.Release + local.set $$t1321.0 + local.get $$t1321.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1315 + i32.mul + i32.add + local.set $$t1322.1 + local.get $$t1322.0 + call $runtime.Block.Release + local.set $$t1322.0 + local.get $$t1322.1 + i32.const 215 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1316 + i32.mul + i32.add + local.set $$t1323.1 + local.get $$t1323.0 + call $runtime.Block.Release + local.set $$t1323.0 + local.get $$t1323.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1317 + i32.mul + i32.add + local.set $$t1324.1 + local.get $$t1324.0 + call $runtime.Block.Release + local.set $$t1324.0 + local.get $$t1324.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1318 + i32.mul + i32.add + local.set $$t1325.1 + local.get $$t1325.0 + call $runtime.Block.Release + local.set $$t1325.0 + local.get $$t1325.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1319 + i32.mul + i32.add + local.set $$t1326.1 + local.get $$t1326.0 + call $runtime.Block.Release + local.set $$t1326.0 + local.get $$t1326.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1320 + i32.mul + i32.add + local.set $$t1327.1 + local.get $$t1327.0 + call $runtime.Block.Release + local.set $$t1327.0 + local.get $$t1327.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1321 + i32.mul + i32.add + local.set $$t1328.1 + local.get $$t1328.0 + call $runtime.Block.Release + local.set $$t1328.0 + local.get $$t1328.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1322 + i32.mul + i32.add + local.set $$t1329.1 + local.get $$t1329.0 + call $runtime.Block.Release + local.set $$t1329.0 + local.get $$t1329.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1323 + i32.mul + i32.add + local.set $$t1330.1 + local.get $$t1330.0 + call $runtime.Block.Release + local.set $$t1330.0 + local.get $$t1330.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1324 + i32.mul + i32.add + local.set $$t1331.1 + local.get $$t1331.0 + call $runtime.Block.Release + local.set $$t1331.0 + local.get $$t1331.1 + i32.const 252 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1325 + i32.mul + i32.add + local.set $$t1332.1 + local.get $$t1332.0 + call $runtime.Block.Release + local.set $$t1332.0 + local.get $$t1332.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1326 + i32.mul + i32.add + local.set $$t1333.1 + local.get $$t1333.0 + call $runtime.Block.Release + local.set $$t1333.0 + local.get $$t1333.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1327 + i32.mul + i32.add + local.set $$t1334.1 + local.get $$t1334.0 + call $runtime.Block.Release + local.set $$t1334.0 + local.get $$t1334.1 + i32.const 63 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1328 + i32.mul + i32.add + local.set $$t1335.1 + local.get $$t1335.0 + call $runtime.Block.Release + local.set $$t1335.0 + local.get $$t1335.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1329 + i32.mul + i32.add + local.set $$t1336.1 + local.get $$t1336.0 + call $runtime.Block.Release + local.set $$t1336.0 + local.get $$t1336.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1330 + i32.mul + i32.add + local.set $$t1337.1 + local.get $$t1337.0 + call $runtime.Block.Release + local.set $$t1337.0 + local.get $$t1337.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1331 + i32.mul + i32.add + local.set $$t1338.1 + local.get $$t1338.0 + call $runtime.Block.Release + local.set $$t1338.0 + local.get $$t1338.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1332 + i32.mul + i32.add + local.set $$t1339.1 + local.get $$t1339.0 + call $runtime.Block.Release + local.set $$t1339.0 + local.get $$t1339.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1333 + i32.mul + i32.add + local.set $$t1340.1 + local.get $$t1340.0 + call $runtime.Block.Release + local.set $$t1340.0 + local.get $$t1340.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1334 + i32.mul + i32.add + local.set $$t1341.1 + local.get $$t1341.0 + call $runtime.Block.Release + local.set $$t1341.0 + local.get $$t1341.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1335 + i32.mul + i32.add + local.set $$t1342.1 + local.get $$t1342.0 + call $runtime.Block.Release + local.set $$t1342.0 + local.get $$t1342.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1336 + i32.mul + i32.add + local.set $$t1343.1 + local.get $$t1343.0 + call $runtime.Block.Release + local.set $$t1343.0 + local.get $$t1343.1 + i32.const 252 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1337 + i32.mul + i32.add + local.set $$t1344.1 + local.get $$t1344.0 + call $runtime.Block.Release + local.set $$t1344.0 + local.get $$t1344.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1338 + i32.mul + i32.add + local.set $$t1345.1 + local.get $$t1345.0 + call $runtime.Block.Release + local.set $$t1345.0 + local.get $$t1345.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1339 + i32.mul + i32.add + local.set $$t1346.1 + local.get $$t1346.0 + call $runtime.Block.Release + local.set $$t1346.0 + local.get $$t1346.1 + i32.const 63 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1340 + i32.mul + i32.add + local.set $$t1347.1 + local.get $$t1347.0 + call $runtime.Block.Release + local.set $$t1347.0 + local.get $$t1347.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1341 + i32.mul + i32.add + local.set $$t1348.1 + local.get $$t1348.0 + call $runtime.Block.Release + local.set $$t1348.0 + local.get $$t1348.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1342 + i32.mul + i32.add + local.set $$t1349.1 + local.get $$t1349.0 + call $runtime.Block.Release + local.set $$t1349.0 + local.get $$t1349.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1343 + i32.mul + i32.add + local.set $$t1350.1 + local.get $$t1350.0 + call $runtime.Block.Release + local.set $$t1350.0 + local.get $$t1350.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1344 + i32.mul + i32.add + local.set $$t1351.1 + local.get $$t1351.0 + call $runtime.Block.Release + local.set $$t1351.0 + local.get $$t1351.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1345 + i32.mul + i32.add + local.set $$t1352.1 + local.get $$t1352.0 + call $runtime.Block.Release + local.set $$t1352.0 + local.get $$t1352.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1346 + i32.mul + i32.add + local.set $$t1353.1 + local.get $$t1353.0 + call $runtime.Block.Release + local.set $$t1353.0 + local.get $$t1353.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1347 + i32.mul + i32.add + local.set $$t1354.1 + local.get $$t1354.0 + call $runtime.Block.Release + local.set $$t1354.0 + local.get $$t1354.1 + i32.const 63 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1348 + i32.mul + i32.add + local.set $$t1355.1 + local.get $$t1355.0 + call $runtime.Block.Release + local.set $$t1355.0 + local.get $$t1355.1 + i32.const 252 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1349 + i32.mul + i32.add + local.set $$t1356.1 + local.get $$t1356.0 + call $runtime.Block.Release + local.set $$t1356.0 + local.get $$t1356.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1350 + i32.mul + i32.add + local.set $$t1357.1 + local.get $$t1357.0 + call $runtime.Block.Release + local.set $$t1357.0 + local.get $$t1357.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1351 + i32.mul + i32.add + local.set $$t1358.1 + local.get $$t1358.0 + call $runtime.Block.Release + local.set $$t1358.0 + local.get $$t1358.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1352 + i32.mul + i32.add + local.set $$t1359.1 + local.get $$t1359.0 + call $runtime.Block.Release + local.set $$t1359.0 + local.get $$t1359.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1353 + i32.mul + i32.add + local.set $$t1360.1 + local.get $$t1360.0 + call $runtime.Block.Release + local.set $$t1360.0 + local.get $$t1360.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1354 + i32.mul + i32.add + local.set $$t1361.1 + local.get $$t1361.0 + call $runtime.Block.Release + local.set $$t1361.0 + local.get $$t1361.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1355 + i32.mul + i32.add + local.set $$t1362.1 + local.get $$t1362.0 + call $runtime.Block.Release + local.set $$t1362.0 + local.get $$t1362.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1356 + i32.mul + i32.add + local.set $$t1363.1 + local.get $$t1363.0 + call $runtime.Block.Release + local.set $$t1363.0 + local.get $$t1363.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1357 + i32.mul + i32.add + local.set $$t1364.1 + local.get $$t1364.0 + call $runtime.Block.Release + local.set $$t1364.0 + local.get $$t1364.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1358 + i32.mul + i32.add + local.set $$t1365.1 + local.get $$t1365.0 + call $runtime.Block.Release + local.set $$t1365.0 + local.get $$t1365.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1359 + i32.mul + i32.add + local.set $$t1366.1 + local.get $$t1366.0 + call $runtime.Block.Release + local.set $$t1366.0 + local.get $$t1366.1 + i32.const 63 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1360 + i32.mul + i32.add + local.set $$t1367.1 + local.get $$t1367.0 + call $runtime.Block.Release + local.set $$t1367.0 + local.get $$t1367.1 + i32.const 252 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1361 + i32.mul + i32.add + local.set $$t1368.1 + local.get $$t1368.0 + call $runtime.Block.Release + local.set $$t1368.0 + local.get $$t1368.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1362 + i32.mul + i32.add + local.set $$t1369.1 + local.get $$t1369.0 + call $runtime.Block.Release + local.set $$t1369.0 + local.get $$t1369.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1363 + i32.mul + i32.add + local.set $$t1370.1 + local.get $$t1370.0 + call $runtime.Block.Release + local.set $$t1370.0 + local.get $$t1370.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1364 + i32.mul + i32.add + local.set $$t1371.1 + local.get $$t1371.0 + call $runtime.Block.Release + local.set $$t1371.0 + local.get $$t1371.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1365 + i32.mul + i32.add + local.set $$t1372.1 + local.get $$t1372.0 + call $runtime.Block.Release + local.set $$t1372.0 + local.get $$t1372.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1366 + i32.mul + i32.add + local.set $$t1373.1 + local.get $$t1373.0 + call $runtime.Block.Release + local.set $$t1373.0 + local.get $$t1373.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1367 + i32.mul + i32.add + local.set $$t1374.1 + local.get $$t1374.0 + call $runtime.Block.Release + local.set $$t1374.0 + local.get $$t1374.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1368 + i32.mul + i32.add + local.set $$t1375.1 + local.get $$t1375.0 + call $runtime.Block.Release + local.set $$t1375.0 + local.get $$t1375.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1369 + i32.mul + i32.add + local.set $$t1376.1 + local.get $$t1376.0 + call $runtime.Block.Release + local.set $$t1376.0 + local.get $$t1376.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1370 + i32.mul + i32.add + local.set $$t1377.1 + local.get $$t1377.0 + call $runtime.Block.Release + local.set $$t1377.0 + local.get $$t1377.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1371 + i32.mul + i32.add + local.set $$t1378.1 + local.get $$t1378.0 + call $runtime.Block.Release + local.set $$t1378.0 + local.get $$t1378.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1372 + i32.mul + i32.add + local.set $$t1379.1 + local.get $$t1379.0 + call $runtime.Block.Release + local.set $$t1379.0 + local.get $$t1379.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1373 + i32.mul + i32.add + local.set $$t1380.1 + local.get $$t1380.0 + call $runtime.Block.Release + local.set $$t1380.0 + local.get $$t1380.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1374 + i32.mul + i32.add + local.set $$t1381.1 + local.get $$t1381.0 + call $runtime.Block.Release + local.set $$t1381.0 + local.get $$t1381.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1375 + i32.mul + i32.add + local.set $$t1382.1 + local.get $$t1382.0 + call $runtime.Block.Release + local.set $$t1382.0 + local.get $$t1382.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1376 + i32.mul + i32.add + local.set $$t1383.1 + local.get $$t1383.0 + call $runtime.Block.Release + local.set $$t1383.0 + local.get $$t1383.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1377 + i32.mul + i32.add + local.set $$t1384.1 + local.get $$t1384.0 + call $runtime.Block.Release + local.set $$t1384.0 + local.get $$t1384.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1378 + i32.mul + i32.add + local.set $$t1385.1 + local.get $$t1385.0 + call $runtime.Block.Release + local.set $$t1385.0 + local.get $$t1385.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1379 + i32.mul + i32.add + local.set $$t1386.1 + local.get $$t1386.0 + call $runtime.Block.Release + local.set $$t1386.0 + local.get $$t1386.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1380 + i32.mul + i32.add + local.set $$t1387.1 + local.get $$t1387.0 + call $runtime.Block.Release + local.set $$t1387.0 + local.get $$t1387.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1381 + i32.mul + i32.add + local.set $$t1388.1 + local.get $$t1388.0 + call $runtime.Block.Release + local.set $$t1388.0 + local.get $$t1388.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1382 + i32.mul + i32.add + local.set $$t1389.1 + local.get $$t1389.0 + call $runtime.Block.Release + local.set $$t1389.0 + local.get $$t1389.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1383 + i32.mul + i32.add + local.set $$t1390.1 + local.get $$t1390.0 + call $runtime.Block.Release + local.set $$t1390.0 + local.get $$t1390.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1384 + i32.mul + i32.add + local.set $$t1391.1 + local.get $$t1391.0 + call $runtime.Block.Release + local.set $$t1391.0 + local.get $$t1391.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1385 + i32.mul + i32.add + local.set $$t1392.1 + local.get $$t1392.0 + call $runtime.Block.Release + local.set $$t1392.0 + local.get $$t1392.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1386 + i32.mul + i32.add + local.set $$t1393.1 + local.get $$t1393.0 + call $runtime.Block.Release + local.set $$t1393.0 + local.get $$t1393.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1387 + i32.mul + i32.add + local.set $$t1394.1 + local.get $$t1394.0 + call $runtime.Block.Release + local.set $$t1394.0 + local.get $$t1394.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1388 + i32.mul + i32.add + local.set $$t1395.1 + local.get $$t1395.0 + call $runtime.Block.Release + local.set $$t1395.0 + local.get $$t1395.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1389 + i32.mul + i32.add + local.set $$t1396.1 + local.get $$t1396.0 + call $runtime.Block.Release + local.set $$t1396.0 + local.get $$t1396.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1390 + i32.mul + i32.add + local.set $$t1397.1 + local.get $$t1397.0 + call $runtime.Block.Release + local.set $$t1397.0 + local.get $$t1397.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1391 + i32.mul + i32.add + local.set $$t1398.1 + local.get $$t1398.0 + call $runtime.Block.Release + local.set $$t1398.0 + local.get $$t1398.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1392 + i32.mul + i32.add + local.set $$t1399.1 + local.get $$t1399.0 + call $runtime.Block.Release + local.set $$t1399.0 + local.get $$t1399.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1393 + i32.mul + i32.add + local.set $$t1400.1 + local.get $$t1400.0 + call $runtime.Block.Release + local.set $$t1400.0 + local.get $$t1400.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1394 + i32.mul + i32.add + local.set $$t1401.1 + local.get $$t1401.0 + call $runtime.Block.Release + local.set $$t1401.0 + local.get $$t1401.1 + i32.const 250 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1395 + i32.mul + i32.add + local.set $$t1402.1 + local.get $$t1402.0 + call $runtime.Block.Release + local.set $$t1402.0 + local.get $$t1402.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1396 + i32.mul + i32.add + local.set $$t1403.1 + local.get $$t1403.0 + call $runtime.Block.Release + local.set $$t1403.0 + local.get $$t1403.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1397 + i32.mul + i32.add + local.set $$t1404.1 + local.get $$t1404.0 + call $runtime.Block.Release + local.set $$t1404.0 + local.get $$t1404.1 + i32.const 175 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1398 + i32.mul + i32.add + local.set $$t1405.1 + local.get $$t1405.0 + call $runtime.Block.Release + local.set $$t1405.0 + local.get $$t1405.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1399 + i32.mul + i32.add + local.set $$t1406.1 + local.get $$t1406.0 + call $runtime.Block.Release + local.set $$t1406.0 + local.get $$t1406.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1400 + i32.mul + i32.add + local.set $$t1407.1 + local.get $$t1407.0 + call $runtime.Block.Release + local.set $$t1407.0 + local.get $$t1407.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1401 + i32.mul + i32.add + local.set $$t1408.1 + local.get $$t1408.0 + call $runtime.Block.Release + local.set $$t1408.0 + local.get $$t1408.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1402 + i32.mul + i32.add + local.set $$t1409.1 + local.get $$t1409.0 + call $runtime.Block.Release + local.set $$t1409.0 + local.get $$t1409.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1403 + i32.mul + i32.add + local.set $$t1410.1 + local.get $$t1410.0 + call $runtime.Block.Release + local.set $$t1410.0 + local.get $$t1410.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1404 + i32.mul + i32.add + local.set $$t1411.1 + local.get $$t1411.0 + call $runtime.Block.Release + local.set $$t1411.0 + local.get $$t1411.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1405 + i32.mul + i32.add + local.set $$t1412.1 + local.get $$t1412.0 + call $runtime.Block.Release + local.set $$t1412.0 + local.get $$t1412.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1406 + i32.mul + i32.add + local.set $$t1413.1 + local.get $$t1413.0 + call $runtime.Block.Release + local.set $$t1413.0 + local.get $$t1413.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1407 + i32.mul + i32.add + local.set $$t1414.1 + local.get $$t1414.0 + call $runtime.Block.Release + local.set $$t1414.0 + local.get $$t1414.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1408 + i32.mul + i32.add + local.set $$t1415.1 + local.get $$t1415.0 + call $runtime.Block.Release + local.set $$t1415.0 + local.get $$t1415.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1409 + i32.mul + i32.add + local.set $$t1416.1 + local.get $$t1416.0 + call $runtime.Block.Release + local.set $$t1416.0 + local.get $$t1416.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1410 + i32.mul + i32.add + local.set $$t1417.1 + local.get $$t1417.0 + call $runtime.Block.Release + local.set $$t1417.0 + local.get $$t1417.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1411 + i32.mul + i32.add + local.set $$t1418.1 + local.get $$t1418.0 + call $runtime.Block.Release + local.set $$t1418.0 + local.get $$t1418.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1412 + i32.mul + i32.add + local.set $$t1419.1 + local.get $$t1419.0 + call $runtime.Block.Release + local.set $$t1419.0 + local.get $$t1419.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1413 + i32.mul + i32.add + local.set $$t1420.1 + local.get $$t1420.0 + call $runtime.Block.Release + local.set $$t1420.0 + local.get $$t1420.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1414 + i32.mul + i32.add + local.set $$t1421.1 + local.get $$t1421.0 + call $runtime.Block.Release + local.set $$t1421.0 + local.get $$t1421.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1415 + i32.mul + i32.add + local.set $$t1422.1 + local.get $$t1422.0 + call $runtime.Block.Release + local.set $$t1422.0 + local.get $$t1422.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1416 + i32.mul + i32.add + local.set $$t1423.1 + local.get $$t1423.0 + call $runtime.Block.Release + local.set $$t1423.0 + local.get $$t1423.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1417 + i32.mul + i32.add + local.set $$t1424.1 + local.get $$t1424.0 + call $runtime.Block.Release + local.set $$t1424.0 + local.get $$t1424.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1418 + i32.mul + i32.add + local.set $$t1425.1 + local.get $$t1425.0 + call $runtime.Block.Release + local.set $$t1425.0 + local.get $$t1425.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1419 + i32.mul + i32.add + local.set $$t1426.1 + local.get $$t1426.0 + call $runtime.Block.Release + local.set $$t1426.0 + local.get $$t1426.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1420 + i32.mul + i32.add + local.set $$t1427.1 + local.get $$t1427.0 + call $runtime.Block.Release + local.set $$t1427.0 + local.get $$t1427.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1421 + i32.mul + i32.add + local.set $$t1428.1 + local.get $$t1428.0 + call $runtime.Block.Release + local.set $$t1428.0 + local.get $$t1428.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1422 + i32.mul + i32.add + local.set $$t1429.1 + local.get $$t1429.0 + call $runtime.Block.Release + local.set $$t1429.0 + local.get $$t1429.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1423 + i32.mul + i32.add + local.set $$t1430.1 + local.get $$t1430.0 + call $runtime.Block.Release + local.set $$t1430.0 + local.get $$t1430.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1424 + i32.mul + i32.add + local.set $$t1431.1 + local.get $$t1431.0 + call $runtime.Block.Release + local.set $$t1431.0 + local.get $$t1431.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1425 + i32.mul + i32.add + local.set $$t1432.1 + local.get $$t1432.0 + call $runtime.Block.Release + local.set $$t1432.0 + local.get $$t1432.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1426 + i32.mul + i32.add + local.set $$t1433.1 + local.get $$t1433.0 + call $runtime.Block.Release + local.set $$t1433.0 + local.get $$t1433.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1427 + i32.mul + i32.add + local.set $$t1434.1 + local.get $$t1434.0 + call $runtime.Block.Release + local.set $$t1434.0 + local.get $$t1434.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1428 + i32.mul + i32.add + local.set $$t1435.1 + local.get $$t1435.0 + call $runtime.Block.Release + local.set $$t1435.0 + local.get $$t1435.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1429 + i32.mul + i32.add + local.set $$t1436.1 + local.get $$t1436.0 + call $runtime.Block.Release + local.set $$t1436.0 + local.get $$t1436.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1430 + i32.mul + i32.add + local.set $$t1437.1 + local.get $$t1437.0 + call $runtime.Block.Release + local.set $$t1437.0 + local.get $$t1437.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1431 + i32.mul + i32.add + local.set $$t1438.1 + local.get $$t1438.0 + call $runtime.Block.Release + local.set $$t1438.0 + local.get $$t1438.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1432 + i32.mul + i32.add + local.set $$t1439.1 + local.get $$t1439.0 + call $runtime.Block.Release + local.set $$t1439.0 + local.get $$t1439.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1433 + i32.mul + i32.add + local.set $$t1440.1 + local.get $$t1440.0 + call $runtime.Block.Release + local.set $$t1440.0 + local.get $$t1440.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1434 + i32.mul + i32.add + local.set $$t1441.1 + local.get $$t1441.0 + call $runtime.Block.Release + local.set $$t1441.0 + local.get $$t1441.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1435 + i32.mul + i32.add + local.set $$t1442.1 + local.get $$t1442.0 + call $runtime.Block.Release + local.set $$t1442.0 + local.get $$t1442.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1436 + i32.mul + i32.add + local.set $$t1443.1 + local.get $$t1443.0 + call $runtime.Block.Release + local.set $$t1443.0 + local.get $$t1443.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1437 + i32.mul + i32.add + local.set $$t1444.1 + local.get $$t1444.0 + call $runtime.Block.Release + local.set $$t1444.0 + local.get $$t1444.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1438 + i32.mul + i32.add + local.set $$t1445.1 + local.get $$t1445.0 + call $runtime.Block.Release + local.set $$t1445.0 + local.get $$t1445.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1439 + i32.mul + i32.add + local.set $$t1446.1 + local.get $$t1446.0 + call $runtime.Block.Release + local.set $$t1446.0 + local.get $$t1446.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1440 + i32.mul + i32.add + local.set $$t1447.1 + local.get $$t1447.0 + call $runtime.Block.Release + local.set $$t1447.0 + local.get $$t1447.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1441 + i32.mul + i32.add + local.set $$t1448.1 + local.get $$t1448.0 + call $runtime.Block.Release + local.set $$t1448.0 + local.get $$t1448.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1442 + i32.mul + i32.add + local.set $$t1449.1 + local.get $$t1449.0 + call $runtime.Block.Release + local.set $$t1449.0 + local.get $$t1449.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1443 + i32.mul + i32.add + local.set $$t1450.1 + local.get $$t1450.0 + call $runtime.Block.Release + local.set $$t1450.0 + local.get $$t1450.1 + i32.const 191 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1444 + i32.mul + i32.add + local.set $$t1451.1 + local.get $$t1451.0 + call $runtime.Block.Release + local.set $$t1451.0 + local.get $$t1451.1 + i32.const 254 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1445 + i32.mul + i32.add + local.set $$t1452.1 + local.get $$t1452.0 + call $runtime.Block.Release + local.set $$t1452.0 + local.get $$t1452.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1446 + i32.mul + i32.add + local.set $$t1453.1 + local.get $$t1453.0 + call $runtime.Block.Release + local.set $$t1453.0 + local.get $$t1453.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1447 + i32.mul + i32.add + local.set $$t1454.1 + local.get $$t1454.0 + call $runtime.Block.Release + local.set $$t1454.0 + local.get $$t1454.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1448 + i32.mul + i32.add + local.set $$t1455.1 + local.get $$t1455.0 + call $runtime.Block.Release + local.set $$t1455.0 + local.get $$t1455.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1449 + i32.mul + i32.add + local.set $$t1456.1 + local.get $$t1456.0 + call $runtime.Block.Release + local.set $$t1456.0 + local.get $$t1456.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1450 + i32.mul + i32.add + local.set $$t1457.1 + local.get $$t1457.0 + call $runtime.Block.Release + local.set $$t1457.0 + local.get $$t1457.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1451 + i32.mul + i32.add + local.set $$t1458.1 + local.get $$t1458.0 + call $runtime.Block.Release + local.set $$t1458.0 + local.get $$t1458.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1452 + i32.mul + i32.add + local.set $$t1459.1 + local.get $$t1459.0 + call $runtime.Block.Release + local.set $$t1459.0 + local.get $$t1459.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1453 + i32.mul + i32.add + local.set $$t1460.1 + local.get $$t1460.0 + call $runtime.Block.Release + local.set $$t1460.0 + local.get $$t1460.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1454 + i32.mul + i32.add + local.set $$t1461.1 + local.get $$t1461.0 + call $runtime.Block.Release + local.set $$t1461.0 + local.get $$t1461.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1455 + i32.mul + i32.add + local.set $$t1462.1 + local.get $$t1462.0 + call $runtime.Block.Release + local.set $$t1462.0 + local.get $$t1462.1 + i32.const 127 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1456 + i32.mul + i32.add + local.set $$t1463.1 + local.get $$t1463.0 + call $runtime.Block.Release + local.set $$t1463.0 + local.get $$t1463.1 + i32.const 253 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1457 + i32.mul + i32.add + local.set $$t1464.1 + local.get $$t1464.0 + call $runtime.Block.Release + local.set $$t1464.0 + local.get $$t1464.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1458 + i32.mul + i32.add + local.set $$t1465.1 + local.get $$t1465.0 + call $runtime.Block.Release + local.set $$t1465.0 + local.get $$t1465.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1459 + i32.mul + i32.add + local.set $$t1466.1 + local.get $$t1466.0 + call $runtime.Block.Release + local.set $$t1466.0 + local.get $$t1466.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1460 + i32.mul + i32.add + local.set $$t1467.1 + local.get $$t1467.0 + call $runtime.Block.Release + local.set $$t1467.0 + local.get $$t1467.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1461 + i32.mul + i32.add + local.set $$t1468.1 + local.get $$t1468.0 + call $runtime.Block.Release + local.set $$t1468.0 + local.get $$t1468.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1462 + i32.mul + i32.add + local.set $$t1469.1 + local.get $$t1469.0 + call $runtime.Block.Release + local.set $$t1469.0 + local.get $$t1469.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1463 + i32.mul + i32.add + local.set $$t1470.1 + local.get $$t1470.0 + call $runtime.Block.Release + local.set $$t1470.0 + local.get $$t1470.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1464 + i32.mul + i32.add + local.set $$t1471.1 + local.get $$t1471.0 + call $runtime.Block.Release + local.set $$t1471.0 + local.get $$t1471.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1465 + i32.mul + i32.add + local.set $$t1472.1 + local.get $$t1472.0 + call $runtime.Block.Release + local.set $$t1472.0 + local.get $$t1472.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1466 + i32.mul + i32.add + local.set $$t1473.1 + local.get $$t1473.0 + call $runtime.Block.Release + local.set $$t1473.0 + local.get $$t1473.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1467 + i32.mul + i32.add + local.set $$t1474.1 + local.get $$t1474.0 + call $runtime.Block.Release + local.set $$t1474.0 + local.get $$t1474.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1468 + i32.mul + i32.add + local.set $$t1475.1 + local.get $$t1475.0 + call $runtime.Block.Release + local.set $$t1475.0 + local.get $$t1475.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1469 + i32.mul + i32.add + local.set $$t1476.1 + local.get $$t1476.0 + call $runtime.Block.Release + local.set $$t1476.0 + local.get $$t1476.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1470 + i32.mul + i32.add + local.set $$t1477.1 + local.get $$t1477.0 + call $runtime.Block.Release + local.set $$t1477.0 + local.get $$t1477.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1471 + i32.mul + i32.add + local.set $$t1478.1 + local.get $$t1478.0 + call $runtime.Block.Release + local.set $$t1478.0 + local.get $$t1478.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1472 + i32.mul + i32.add + local.set $$t1479.1 + local.get $$t1479.0 + call $runtime.Block.Release + local.set $$t1479.0 + local.get $$t1479.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1473 + i32.mul + i32.add + local.set $$t1480.1 + local.get $$t1480.0 + call $runtime.Block.Release + local.set $$t1480.0 + local.get $$t1480.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1474 + i32.mul + i32.add + local.set $$t1481.1 + local.get $$t1481.0 + call $runtime.Block.Release + local.set $$t1481.0 + local.get $$t1481.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1475 + i32.mul + i32.add + local.set $$t1482.1 + local.get $$t1482.0 + call $runtime.Block.Release + local.set $$t1482.0 + local.get $$t1482.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1476 + i32.mul + i32.add + local.set $$t1483.1 + local.get $$t1483.0 + call $runtime.Block.Release + local.set $$t1483.0 + local.get $$t1483.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1477 + i32.mul + i32.add + local.set $$t1484.1 + local.get $$t1484.0 + call $runtime.Block.Release + local.set $$t1484.0 + local.get $$t1484.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1478 + i32.mul + i32.add + local.set $$t1485.1 + local.get $$t1485.0 + call $runtime.Block.Release + local.set $$t1485.0 + local.get $$t1485.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1479 + i32.mul + i32.add + local.set $$t1486.1 + local.get $$t1486.0 + call $runtime.Block.Release + local.set $$t1486.0 + local.get $$t1486.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1480 + i32.mul + i32.add + local.set $$t1487.1 + local.get $$t1487.0 + call $runtime.Block.Release + local.set $$t1487.0 + local.get $$t1487.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1481 + i32.mul + i32.add + local.set $$t1488.1 + local.get $$t1488.0 + call $runtime.Block.Release + local.set $$t1488.0 + local.get $$t1488.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1482 + i32.mul + i32.add + local.set $$t1489.1 + local.get $$t1489.0 + call $runtime.Block.Release + local.set $$t1489.0 + local.get $$t1489.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1483 + i32.mul + i32.add + local.set $$t1490.1 + local.get $$t1490.0 + call $runtime.Block.Release + local.set $$t1490.0 + local.get $$t1490.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1484 + i32.mul + i32.add + local.set $$t1491.1 + local.get $$t1491.0 + call $runtime.Block.Release + local.set $$t1491.0 + local.get $$t1491.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1485 + i32.mul + i32.add + local.set $$t1492.1 + local.get $$t1492.0 + call $runtime.Block.Release + local.set $$t1492.0 + local.get $$t1492.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1486 + i32.mul + i32.add + local.set $$t1493.1 + local.get $$t1493.0 + call $runtime.Block.Release + local.set $$t1493.0 + local.get $$t1493.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1487 + i32.mul + i32.add + local.set $$t1494.1 + local.get $$t1494.0 + call $runtime.Block.Release + local.set $$t1494.0 + local.get $$t1494.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1488 + i32.mul + i32.add + local.set $$t1495.1 + local.get $$t1495.0 + call $runtime.Block.Release + local.set $$t1495.0 + local.get $$t1495.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1489 + i32.mul + i32.add + local.set $$t1496.1 + local.get $$t1496.0 + call $runtime.Block.Release + local.set $$t1496.0 + local.get $$t1496.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1490 + i32.mul + i32.add + local.set $$t1497.1 + local.get $$t1497.0 + call $runtime.Block.Release + local.set $$t1497.0 + local.get $$t1497.1 + i32.const 188 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1491 + i32.mul + i32.add + local.set $$t1498.1 + local.get $$t1498.0 + call $runtime.Block.Release + local.set $$t1498.0 + local.get $$t1498.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1492 + i32.mul + i32.add + local.set $$t1499.1 + local.get $$t1499.0 + call $runtime.Block.Release + local.set $$t1499.0 + local.get $$t1499.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1493 + i32.mul + i32.add + local.set $$t1500.1 + local.get $$t1500.0 + call $runtime.Block.Release + local.set $$t1500.0 + local.get $$t1500.1 + i32.const 62 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1494 + i32.mul + i32.add + local.set $$t1501.1 + local.get $$t1501.0 + call $runtime.Block.Release + local.set $$t1501.0 + local.get $$t1501.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1495 + i32.mul + i32.add + local.set $$t1502.1 + local.get $$t1502.0 + call $runtime.Block.Release + local.set $$t1502.0 + local.get $$t1502.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1496 + i32.mul + i32.add + local.set $$t1503.1 + local.get $$t1503.0 + call $runtime.Block.Release + local.set $$t1503.0 + local.get $$t1503.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1497 + i32.mul + i32.add + local.set $$t1504.1 + local.get $$t1504.0 + call $runtime.Block.Release + local.set $$t1504.0 + local.get $$t1504.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1498 + i32.mul + i32.add + local.set $$t1505.1 + local.get $$t1505.0 + call $runtime.Block.Release + local.set $$t1505.0 + local.get $$t1505.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1499 + i32.mul + i32.add + local.set $$t1506.1 + local.get $$t1506.0 + call $runtime.Block.Release + local.set $$t1506.0 + local.get $$t1506.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1500 + i32.mul + i32.add + local.set $$t1507.1 + local.get $$t1507.0 + call $runtime.Block.Release + local.set $$t1507.0 + local.get $$t1507.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1501 + i32.mul + i32.add + local.set $$t1508.1 + local.get $$t1508.0 + call $runtime.Block.Release + local.set $$t1508.0 + local.get $$t1508.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1502 + i32.mul + i32.add + local.set $$t1509.1 + local.get $$t1509.0 + call $runtime.Block.Release + local.set $$t1509.0 + local.get $$t1509.1 + i32.const 124 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1503 + i32.mul + i32.add + local.set $$t1510.1 + local.get $$t1510.0 + call $runtime.Block.Release + local.set $$t1510.0 + local.get $$t1510.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1504 + i32.mul + i32.add + local.set $$t1511.1 + local.get $$t1511.0 + call $runtime.Block.Release + local.set $$t1511.0 + local.get $$t1511.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1505 + i32.mul + i32.add + local.set $$t1512.1 + local.get $$t1512.0 + call $runtime.Block.Release + local.set $$t1512.0 + local.get $$t1512.1 + i32.const 61 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1506 + i32.mul + i32.add + local.set $$t1513.1 + local.get $$t1513.0 + call $runtime.Block.Release + local.set $$t1513.0 + local.get $$t1513.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1507 + i32.mul + i32.add + local.set $$t1514.1 + local.get $$t1514.0 + call $runtime.Block.Release + local.set $$t1514.0 + local.get $$t1514.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1508 + i32.mul + i32.add + local.set $$t1515.1 + local.get $$t1515.0 + call $runtime.Block.Release + local.set $$t1515.0 + local.get $$t1515.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1509 + i32.mul + i32.add + local.set $$t1516.1 + local.get $$t1516.0 + call $runtime.Block.Release + local.set $$t1516.0 + local.get $$t1516.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1510 + i32.mul + i32.add + local.set $$t1517.1 + local.get $$t1517.0 + call $runtime.Block.Release + local.set $$t1517.0 + local.get $$t1517.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1511 + i32.mul + i32.add + local.set $$t1518.1 + local.get $$t1518.0 + call $runtime.Block.Release + local.set $$t1518.0 + local.get $$t1518.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1512 + i32.mul + i32.add + local.set $$t1519.1 + local.get $$t1519.0 + call $runtime.Block.Release + local.set $$t1519.0 + local.get $$t1519.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1513 + i32.mul + i32.add + local.set $$t1520.1 + local.get $$t1520.0 + call $runtime.Block.Release + local.set $$t1520.0 + local.get $$t1520.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1514 + i32.mul + i32.add + local.set $$t1521.1 + local.get $$t1521.0 + call $runtime.Block.Release + local.set $$t1521.0 + local.get $$t1521.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1515 + i32.mul + i32.add + local.set $$t1522.1 + local.get $$t1522.0 + call $runtime.Block.Release + local.set $$t1522.0 + local.get $$t1522.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1516 + i32.mul + i32.add + local.set $$t1523.1 + local.get $$t1523.0 + call $runtime.Block.Release + local.set $$t1523.0 + local.get $$t1523.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1517 + i32.mul + i32.add + local.set $$t1524.1 + local.get $$t1524.0 + call $runtime.Block.Release + local.set $$t1524.0 + local.get $$t1524.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1518 + i32.mul + i32.add + local.set $$t1525.1 + local.get $$t1525.0 + call $runtime.Block.Release + local.set $$t1525.0 + local.get $$t1525.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1519 + i32.mul + i32.add + local.set $$t1526.1 + local.get $$t1526.0 + call $runtime.Block.Release + local.set $$t1526.0 + local.get $$t1526.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1520 + i32.mul + i32.add + local.set $$t1527.1 + local.get $$t1527.0 + call $runtime.Block.Release + local.set $$t1527.0 + local.get $$t1527.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1521 + i32.mul + i32.add + local.set $$t1528.1 + local.get $$t1528.0 + call $runtime.Block.Release + local.set $$t1528.0 + local.get $$t1528.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1522 + i32.mul + i32.add + local.set $$t1529.1 + local.get $$t1529.0 + call $runtime.Block.Release + local.set $$t1529.0 + local.get $$t1529.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1523 + i32.mul + i32.add + local.set $$t1530.1 + local.get $$t1530.0 + call $runtime.Block.Release + local.set $$t1530.0 + local.get $$t1530.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1524 + i32.mul + i32.add + local.set $$t1531.1 + local.get $$t1531.0 + call $runtime.Block.Release + local.set $$t1531.0 + local.get $$t1531.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1525 + i32.mul + i32.add + local.set $$t1532.1 + local.get $$t1532.0 + call $runtime.Block.Release + local.set $$t1532.0 + local.get $$t1532.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1526 + i32.mul + i32.add + local.set $$t1533.1 + local.get $$t1533.0 + call $runtime.Block.Release + local.set $$t1533.0 + local.get $$t1533.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1527 + i32.mul + i32.add + local.set $$t1534.1 + local.get $$t1534.0 + call $runtime.Block.Release + local.set $$t1534.0 + local.get $$t1534.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1528 + i32.mul + i32.add + local.set $$t1535.1 + local.get $$t1535.0 + call $runtime.Block.Release + local.set $$t1535.0 + local.get $$t1535.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1529 + i32.mul + i32.add + local.set $$t1536.1 + local.get $$t1536.0 + call $runtime.Block.Release + local.set $$t1536.0 + local.get $$t1536.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1530 + i32.mul + i32.add + local.set $$t1537.1 + local.get $$t1537.0 + call $runtime.Block.Release + local.set $$t1537.0 + local.get $$t1537.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1531 + i32.mul + i32.add + local.set $$t1538.1 + local.get $$t1538.0 + call $runtime.Block.Release + local.set $$t1538.0 + local.get $$t1538.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1532 + i32.mul + i32.add + local.set $$t1539.1 + local.get $$t1539.0 + call $runtime.Block.Release + local.set $$t1539.0 + local.get $$t1539.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1533 + i32.mul + i32.add + local.set $$t1540.1 + local.get $$t1540.0 + call $runtime.Block.Release + local.set $$t1540.0 + local.get $$t1540.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1534 + i32.mul + i32.add + local.set $$t1541.1 + local.get $$t1541.0 + call $runtime.Block.Release + local.set $$t1541.0 + local.get $$t1541.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1535 + i32.mul + i32.add + local.set $$t1542.1 + local.get $$t1542.0 + call $runtime.Block.Release + local.set $$t1542.0 + local.get $$t1542.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1536 + i32.mul + i32.add + local.set $$t1543.1 + local.get $$t1543.0 + call $runtime.Block.Release + local.set $$t1543.0 + local.get $$t1543.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1537 + i32.mul + i32.add + local.set $$t1544.1 + local.get $$t1544.0 + call $runtime.Block.Release + local.set $$t1544.0 + local.get $$t1544.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1538 + i32.mul + i32.add + local.set $$t1545.1 + local.get $$t1545.0 + call $runtime.Block.Release + local.set $$t1545.0 + local.get $$t1545.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1539 + i32.mul + i32.add + local.set $$t1546.1 + local.get $$t1546.0 + call $runtime.Block.Release + local.set $$t1546.0 + local.get $$t1546.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1540 + i32.mul + i32.add + local.set $$t1547.1 + local.get $$t1547.0 + call $runtime.Block.Release + local.set $$t1547.0 + local.get $$t1547.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1541 + i32.mul + i32.add + local.set $$t1548.1 + local.get $$t1548.0 + call $runtime.Block.Release + local.set $$t1548.0 + local.get $$t1548.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1542 + i32.mul + i32.add + local.set $$t1549.1 + local.get $$t1549.0 + call $runtime.Block.Release + local.set $$t1549.0 + local.get $$t1549.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1543 + i32.mul + i32.add + local.set $$t1550.1 + local.get $$t1550.0 + call $runtime.Block.Release + local.set $$t1550.0 + local.get $$t1550.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1544 + i32.mul + i32.add + local.set $$t1551.1 + local.get $$t1551.0 + call $runtime.Block.Release + local.set $$t1551.0 + local.get $$t1551.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1545 + i32.mul + i32.add + local.set $$t1552.1 + local.get $$t1552.0 + call $runtime.Block.Release + local.set $$t1552.0 + local.get $$t1552.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1546 + i32.mul + i32.add + local.set $$t1553.1 + local.get $$t1553.0 + call $runtime.Block.Release + local.set $$t1553.0 + local.get $$t1553.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1547 + i32.mul + i32.add + local.set $$t1554.1 + local.get $$t1554.0 + call $runtime.Block.Release + local.set $$t1554.0 + local.get $$t1554.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1548 + i32.mul + i32.add + local.set $$t1555.1 + local.get $$t1555.0 + call $runtime.Block.Release + local.set $$t1555.0 + local.get $$t1555.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1549 + i32.mul + i32.add + local.set $$t1556.1 + local.get $$t1556.0 + call $runtime.Block.Release + local.set $$t1556.0 + local.get $$t1556.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1550 + i32.mul + i32.add + local.set $$t1557.1 + local.get $$t1557.0 + call $runtime.Block.Release + local.set $$t1557.0 + local.get $$t1557.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1551 + i32.mul + i32.add + local.set $$t1558.1 + local.get $$t1558.0 + call $runtime.Block.Release + local.set $$t1558.0 + local.get $$t1558.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1552 + i32.mul + i32.add + local.set $$t1559.1 + local.get $$t1559.0 + call $runtime.Block.Release + local.set $$t1559.0 + local.get $$t1559.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1553 + i32.mul + i32.add + local.set $$t1560.1 + local.get $$t1560.0 + call $runtime.Block.Release + local.set $$t1560.0 + local.get $$t1560.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1554 + i32.mul + i32.add + local.set $$t1561.1 + local.get $$t1561.0 + call $runtime.Block.Release + local.set $$t1561.0 + local.get $$t1561.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1555 + i32.mul + i32.add + local.set $$t1562.1 + local.get $$t1562.0 + call $runtime.Block.Release + local.set $$t1562.0 + local.get $$t1562.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1556 + i32.mul + i32.add + local.set $$t1563.1 + local.get $$t1563.0 + call $runtime.Block.Release + local.set $$t1563.0 + local.get $$t1563.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1557 + i32.mul + i32.add + local.set $$t1564.1 + local.get $$t1564.0 + call $runtime.Block.Release + local.set $$t1564.0 + local.get $$t1564.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1558 + i32.mul + i32.add + local.set $$t1565.1 + local.get $$t1565.0 + call $runtime.Block.Release + local.set $$t1565.0 + local.get $$t1565.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1559 + i32.mul + i32.add + local.set $$t1566.1 + local.get $$t1566.0 + call $runtime.Block.Release + local.set $$t1566.0 + local.get $$t1566.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1560 + i32.mul + i32.add + local.set $$t1567.1 + local.get $$t1567.0 + call $runtime.Block.Release + local.set $$t1567.0 + local.get $$t1567.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1561 + i32.mul + i32.add + local.set $$t1568.1 + local.get $$t1568.0 + call $runtime.Block.Release + local.set $$t1568.0 + local.get $$t1568.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1562 + i32.mul + i32.add + local.set $$t1569.1 + local.get $$t1569.0 + call $runtime.Block.Release + local.set $$t1569.0 + local.get $$t1569.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1563 + i32.mul + i32.add + local.set $$t1570.1 + local.get $$t1570.0 + call $runtime.Block.Release + local.set $$t1570.0 + local.get $$t1570.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1564 + i32.mul + i32.add + local.set $$t1571.1 + local.get $$t1571.0 + call $runtime.Block.Release + local.set $$t1571.0 + local.get $$t1571.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1565 + i32.mul + i32.add + local.set $$t1572.1 + local.get $$t1572.0 + call $runtime.Block.Release + local.set $$t1572.0 + local.get $$t1572.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1566 + i32.mul + i32.add + local.set $$t1573.1 + local.get $$t1573.0 + call $runtime.Block.Release + local.set $$t1573.0 + local.get $$t1573.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1567 + i32.mul + i32.add + local.set $$t1574.1 + local.get $$t1574.0 + call $runtime.Block.Release + local.set $$t1574.0 + local.get $$t1574.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1568 + i32.mul + i32.add + local.set $$t1575.1 + local.get $$t1575.0 + call $runtime.Block.Release + local.set $$t1575.0 + local.get $$t1575.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1569 + i32.mul + i32.add + local.set $$t1576.1 + local.get $$t1576.0 + call $runtime.Block.Release + local.set $$t1576.0 + local.get $$t1576.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1570 + i32.mul + i32.add + local.set $$t1577.1 + local.get $$t1577.0 + call $runtime.Block.Release + local.set $$t1577.0 + local.get $$t1577.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1571 + i32.mul + i32.add + local.set $$t1578.1 + local.get $$t1578.0 + call $runtime.Block.Release + local.set $$t1578.0 + local.get $$t1578.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1572 + i32.mul + i32.add + local.set $$t1579.1 + local.get $$t1579.0 + call $runtime.Block.Release + local.set $$t1579.0 + local.get $$t1579.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1573 + i32.mul + i32.add + local.set $$t1580.1 + local.get $$t1580.0 + call $runtime.Block.Release + local.set $$t1580.0 + local.get $$t1580.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1574 + i32.mul + i32.add + local.set $$t1581.1 + local.get $$t1581.0 + call $runtime.Block.Release + local.set $$t1581.0 + local.get $$t1581.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1575 + i32.mul + i32.add + local.set $$t1582.1 + local.get $$t1582.0 + call $runtime.Block.Release + local.set $$t1582.0 + local.get $$t1582.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1576 + i32.mul + i32.add + local.set $$t1583.1 + local.get $$t1583.0 + call $runtime.Block.Release + local.set $$t1583.0 + local.get $$t1583.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1577 + i32.mul + i32.add + local.set $$t1584.1 + local.get $$t1584.0 + call $runtime.Block.Release + local.set $$t1584.0 + local.get $$t1584.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1578 + i32.mul + i32.add + local.set $$t1585.1 + local.get $$t1585.0 + call $runtime.Block.Release + local.set $$t1585.0 + local.get $$t1585.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1579 + i32.mul + i32.add + local.set $$t1586.1 + local.get $$t1586.0 + call $runtime.Block.Release + local.set $$t1586.0 + local.get $$t1586.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1580 + i32.mul + i32.add + local.set $$t1587.1 + local.get $$t1587.0 + call $runtime.Block.Release + local.set $$t1587.0 + local.get $$t1587.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1581 + i32.mul + i32.add + local.set $$t1588.1 + local.get $$t1588.0 + call $runtime.Block.Release + local.set $$t1588.0 + local.get $$t1588.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1582 + i32.mul + i32.add + local.set $$t1589.1 + local.get $$t1589.0 + call $runtime.Block.Release + local.set $$t1589.0 + local.get $$t1589.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1583 + i32.mul + i32.add + local.set $$t1590.1 + local.get $$t1590.0 + call $runtime.Block.Release + local.set $$t1590.0 + local.get $$t1590.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1584 + i32.mul + i32.add + local.set $$t1591.1 + local.get $$t1591.0 + call $runtime.Block.Release + local.set $$t1591.0 + local.get $$t1591.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1585 + i32.mul + i32.add + local.set $$t1592.1 + local.get $$t1592.0 + call $runtime.Block.Release + local.set $$t1592.0 + local.get $$t1592.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1586 + i32.mul + i32.add + local.set $$t1593.1 + local.get $$t1593.0 + call $runtime.Block.Release + local.set $$t1593.0 + local.get $$t1593.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1587 + i32.mul + i32.add + local.set $$t1594.1 + local.get $$t1594.0 + call $runtime.Block.Release + local.set $$t1594.0 + local.get $$t1594.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1588 + i32.mul + i32.add + local.set $$t1595.1 + local.get $$t1595.0 + call $runtime.Block.Release + local.set $$t1595.0 + local.get $$t1595.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1589 + i32.mul + i32.add + local.set $$t1596.1 + local.get $$t1596.0 + call $runtime.Block.Release + local.set $$t1596.0 + local.get $$t1596.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1590 + i32.mul + i32.add + local.set $$t1597.1 + local.get $$t1597.0 + call $runtime.Block.Release + local.set $$t1597.0 + local.get $$t1597.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1591 + i32.mul + i32.add + local.set $$t1598.1 + local.get $$t1598.0 + call $runtime.Block.Release + local.set $$t1598.0 + local.get $$t1598.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1592 + i32.mul + i32.add + local.set $$t1599.1 + local.get $$t1599.0 + call $runtime.Block.Release + local.set $$t1599.0 + local.get $$t1599.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1593 + i32.mul + i32.add + local.set $$t1600.1 + local.get $$t1600.0 + call $runtime.Block.Release + local.set $$t1600.0 + local.get $$t1600.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1594 + i32.mul + i32.add + local.set $$t1601.1 + local.get $$t1601.0 + call $runtime.Block.Release + local.set $$t1601.0 + local.get $$t1601.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1595 + i32.mul + i32.add + local.set $$t1602.1 + local.get $$t1602.0 + call $runtime.Block.Release + local.set $$t1602.0 + local.get $$t1602.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1596 + i32.mul + i32.add + local.set $$t1603.1 + local.get $$t1603.0 + call $runtime.Block.Release + local.set $$t1603.0 + local.get $$t1603.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1597 + i32.mul + i32.add + local.set $$t1604.1 + local.get $$t1604.0 + call $runtime.Block.Release + local.set $$t1604.0 + local.get $$t1604.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1598 + i32.mul + i32.add + local.set $$t1605.1 + local.get $$t1605.0 + call $runtime.Block.Release + local.set $$t1605.0 + local.get $$t1605.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1599 + i32.mul + i32.add + local.set $$t1606.1 + local.get $$t1606.0 + call $runtime.Block.Release + local.set $$t1606.0 + local.get $$t1606.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1600 + i32.mul + i32.add + local.set $$t1607.1 + local.get $$t1607.0 + call $runtime.Block.Release + local.set $$t1607.0 + local.get $$t1607.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1601 + i32.mul + i32.add + local.set $$t1608.1 + local.get $$t1608.0 + call $runtime.Block.Release + local.set $$t1608.0 + local.get $$t1608.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1602 + i32.mul + i32.add + local.set $$t1609.1 + local.get $$t1609.0 + call $runtime.Block.Release + local.set $$t1609.0 + local.get $$t1609.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1603 + i32.mul + i32.add + local.set $$t1610.1 + local.get $$t1610.0 + call $runtime.Block.Release + local.set $$t1610.0 + local.get $$t1610.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1604 + i32.mul + i32.add + local.set $$t1611.1 + local.get $$t1611.0 + call $runtime.Block.Release + local.set $$t1611.0 + local.get $$t1611.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1605 + i32.mul + i32.add + local.set $$t1612.1 + local.get $$t1612.0 + call $runtime.Block.Release + local.set $$t1612.0 + local.get $$t1612.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1606 + i32.mul + i32.add + local.set $$t1613.1 + local.get $$t1613.0 + call $runtime.Block.Release + local.set $$t1613.0 + local.get $$t1613.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1607 + i32.mul + i32.add + local.set $$t1614.1 + local.get $$t1614.0 + call $runtime.Block.Release + local.set $$t1614.0 + local.get $$t1614.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1608 + i32.mul + i32.add + local.set $$t1615.1 + local.get $$t1615.0 + call $runtime.Block.Release + local.set $$t1615.0 + local.get $$t1615.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1609 + i32.mul + i32.add + local.set $$t1616.1 + local.get $$t1616.0 + call $runtime.Block.Release + local.set $$t1616.0 + local.get $$t1616.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1610 + i32.mul + i32.add + local.set $$t1617.1 + local.get $$t1617.0 + call $runtime.Block.Release + local.set $$t1617.0 + local.get $$t1617.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1611 + i32.mul + i32.add + local.set $$t1618.1 + local.get $$t1618.0 + call $runtime.Block.Release + local.set $$t1618.0 + local.get $$t1618.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1612 + i32.mul + i32.add + local.set $$t1619.1 + local.get $$t1619.0 + call $runtime.Block.Release + local.set $$t1619.0 + local.get $$t1619.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1613 + i32.mul + i32.add + local.set $$t1620.1 + local.get $$t1620.0 + call $runtime.Block.Release + local.set $$t1620.0 + local.get $$t1620.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1614 + i32.mul + i32.add + local.set $$t1621.1 + local.get $$t1621.0 + call $runtime.Block.Release + local.set $$t1621.0 + local.get $$t1621.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1615 + i32.mul + i32.add + local.set $$t1622.1 + local.get $$t1622.0 + call $runtime.Block.Release + local.set $$t1622.0 + local.get $$t1622.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1616 + i32.mul + i32.add + local.set $$t1623.1 + local.get $$t1623.0 + call $runtime.Block.Release + local.set $$t1623.0 + local.get $$t1623.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1617 + i32.mul + i32.add + local.set $$t1624.1 + local.get $$t1624.0 + call $runtime.Block.Release + local.set $$t1624.0 + local.get $$t1624.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1618 + i32.mul + i32.add + local.set $$t1625.1 + local.get $$t1625.0 + call $runtime.Block.Release + local.set $$t1625.0 + local.get $$t1625.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1619 + i32.mul + i32.add + local.set $$t1626.1 + local.get $$t1626.0 + call $runtime.Block.Release + local.set $$t1626.0 + local.get $$t1626.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1620 + i32.mul + i32.add + local.set $$t1627.1 + local.get $$t1627.0 + call $runtime.Block.Release + local.set $$t1627.0 + local.get $$t1627.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1621 + i32.mul + i32.add + local.set $$t1628.1 + local.get $$t1628.0 + call $runtime.Block.Release + local.set $$t1628.0 + local.get $$t1628.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1622 + i32.mul + i32.add + local.set $$t1629.1 + local.get $$t1629.0 + call $runtime.Block.Release + local.set $$t1629.0 + local.get $$t1629.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1623 + i32.mul + i32.add + local.set $$t1630.1 + local.get $$t1630.0 + call $runtime.Block.Release + local.set $$t1630.0 + local.get $$t1630.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1624 + i32.mul + i32.add + local.set $$t1631.1 + local.get $$t1631.0 + call $runtime.Block.Release + local.set $$t1631.0 + local.get $$t1631.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1625 + i32.mul + i32.add + local.set $$t1632.1 + local.get $$t1632.0 + call $runtime.Block.Release + local.set $$t1632.0 + local.get $$t1632.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1626 + i32.mul + i32.add + local.set $$t1633.1 + local.get $$t1633.0 + call $runtime.Block.Release + local.set $$t1633.0 + local.get $$t1633.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1627 + i32.mul + i32.add + local.set $$t1634.1 + local.get $$t1634.0 + call $runtime.Block.Release + local.set $$t1634.0 + local.get $$t1634.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1628 + i32.mul + i32.add + local.set $$t1635.1 + local.get $$t1635.0 + call $runtime.Block.Release + local.set $$t1635.0 + local.get $$t1635.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1629 + i32.mul + i32.add + local.set $$t1636.1 + local.get $$t1636.0 + call $runtime.Block.Release + local.set $$t1636.0 + local.get $$t1636.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1630 + i32.mul + i32.add + local.set $$t1637.1 + local.get $$t1637.0 + call $runtime.Block.Release + local.set $$t1637.0 + local.get $$t1637.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1631 + i32.mul + i32.add + local.set $$t1638.1 + local.get $$t1638.0 + call $runtime.Block.Release + local.set $$t1638.0 + local.get $$t1638.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1632 + i32.mul + i32.add + local.set $$t1639.1 + local.get $$t1639.0 + call $runtime.Block.Release + local.set $$t1639.0 + local.get $$t1639.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1633 + i32.mul + i32.add + local.set $$t1640.1 + local.get $$t1640.0 + call $runtime.Block.Release + local.set $$t1640.0 + local.get $$t1640.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1634 + i32.mul + i32.add + local.set $$t1641.1 + local.get $$t1641.0 + call $runtime.Block.Release + local.set $$t1641.0 + local.get $$t1641.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1635 + i32.mul + i32.add + local.set $$t1642.1 + local.get $$t1642.0 + call $runtime.Block.Release + local.set $$t1642.0 + local.get $$t1642.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1636 + i32.mul + i32.add + local.set $$t1643.1 + local.get $$t1643.0 + call $runtime.Block.Release + local.set $$t1643.0 + local.get $$t1643.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1637 + i32.mul + i32.add + local.set $$t1644.1 + local.get $$t1644.0 + call $runtime.Block.Release + local.set $$t1644.0 + local.get $$t1644.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1638 + i32.mul + i32.add + local.set $$t1645.1 + local.get $$t1645.0 + call $runtime.Block.Release + local.set $$t1645.0 + local.get $$t1645.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1639 + i32.mul + i32.add + local.set $$t1646.1 + local.get $$t1646.0 + call $runtime.Block.Release + local.set $$t1646.0 + local.get $$t1646.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1640 + i32.mul + i32.add + local.set $$t1647.1 + local.get $$t1647.0 + call $runtime.Block.Release + local.set $$t1647.0 + local.get $$t1647.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1641 + i32.mul + i32.add + local.set $$t1648.1 + local.get $$t1648.0 + call $runtime.Block.Release + local.set $$t1648.0 + local.get $$t1648.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1642 + i32.mul + i32.add + local.set $$t1649.1 + local.get $$t1649.0 + call $runtime.Block.Release + local.set $$t1649.0 + local.get $$t1649.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1643 + i32.mul + i32.add + local.set $$t1650.1 + local.get $$t1650.0 + call $runtime.Block.Release + local.set $$t1650.0 + local.get $$t1650.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1644 + i32.mul + i32.add + local.set $$t1651.1 + local.get $$t1651.0 + call $runtime.Block.Release + local.set $$t1651.0 + local.get $$t1651.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1645 + i32.mul + i32.add + local.set $$t1652.1 + local.get $$t1652.0 + call $runtime.Block.Release + local.set $$t1652.0 + local.get $$t1652.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1646 + i32.mul + i32.add + local.set $$t1653.1 + local.get $$t1653.0 + call $runtime.Block.Release + local.set $$t1653.0 + local.get $$t1653.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1647 + i32.mul + i32.add + local.set $$t1654.1 + local.get $$t1654.0 + call $runtime.Block.Release + local.set $$t1654.0 + local.get $$t1654.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1648 + i32.mul + i32.add + local.set $$t1655.1 + local.get $$t1655.0 + call $runtime.Block.Release + local.set $$t1655.0 + local.get $$t1655.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1649 + i32.mul + i32.add + local.set $$t1656.1 + local.get $$t1656.0 + call $runtime.Block.Release + local.set $$t1656.0 + local.get $$t1656.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1650 + i32.mul + i32.add + local.set $$t1657.1 + local.get $$t1657.0 + call $runtime.Block.Release + local.set $$t1657.0 + local.get $$t1657.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1651 + i32.mul + i32.add + local.set $$t1658.1 + local.get $$t1658.0 + call $runtime.Block.Release + local.set $$t1658.0 + local.get $$t1658.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1652 + i32.mul + i32.add + local.set $$t1659.1 + local.get $$t1659.0 + call $runtime.Block.Release + local.set $$t1659.0 + local.get $$t1659.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1653 + i32.mul + i32.add + local.set $$t1660.1 + local.get $$t1660.0 + call $runtime.Block.Release + local.set $$t1660.0 + local.get $$t1660.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1654 + i32.mul + i32.add + local.set $$t1661.1 + local.get $$t1661.0 + call $runtime.Block.Release + local.set $$t1661.0 + local.get $$t1661.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1655 + i32.mul + i32.add + local.set $$t1662.1 + local.get $$t1662.0 + call $runtime.Block.Release + local.set $$t1662.0 + local.get $$t1662.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1656 + i32.mul + i32.add + local.set $$t1663.1 + local.get $$t1663.0 + call $runtime.Block.Release + local.set $$t1663.0 + local.get $$t1663.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1657 + i32.mul + i32.add + local.set $$t1664.1 + local.get $$t1664.0 + call $runtime.Block.Release + local.set $$t1664.0 + local.get $$t1664.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1658 + i32.mul + i32.add + local.set $$t1665.1 + local.get $$t1665.0 + call $runtime.Block.Release + local.set $$t1665.0 + local.get $$t1665.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1659 + i32.mul + i32.add + local.set $$t1666.1 + local.get $$t1666.0 + call $runtime.Block.Release + local.set $$t1666.0 + local.get $$t1666.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1660 + i32.mul + i32.add + local.set $$t1667.1 + local.get $$t1667.0 + call $runtime.Block.Release + local.set $$t1667.0 + local.get $$t1667.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1661 + i32.mul + i32.add + local.set $$t1668.1 + local.get $$t1668.0 + call $runtime.Block.Release + local.set $$t1668.0 + local.get $$t1668.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1662 + i32.mul + i32.add + local.set $$t1669.1 + local.get $$t1669.0 + call $runtime.Block.Release + local.set $$t1669.0 + local.get $$t1669.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1663 + i32.mul + i32.add + local.set $$t1670.1 + local.get $$t1670.0 + call $runtime.Block.Release + local.set $$t1670.0 + local.get $$t1670.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1664 + i32.mul + i32.add + local.set $$t1671.1 + local.get $$t1671.0 + call $runtime.Block.Release + local.set $$t1671.0 + local.get $$t1671.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1665 + i32.mul + i32.add + local.set $$t1672.1 + local.get $$t1672.0 + call $runtime.Block.Release + local.set $$t1672.0 + local.get $$t1672.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1666 + i32.mul + i32.add + local.set $$t1673.1 + local.get $$t1673.0 + call $runtime.Block.Release + local.set $$t1673.0 + local.get $$t1673.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1667 + i32.mul + i32.add + local.set $$t1674.1 + local.get $$t1674.0 + call $runtime.Block.Release + local.set $$t1674.0 + local.get $$t1674.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1668 + i32.mul + i32.add + local.set $$t1675.1 + local.get $$t1675.0 + call $runtime.Block.Release + local.set $$t1675.0 + local.get $$t1675.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1669 + i32.mul + i32.add + local.set $$t1676.1 + local.get $$t1676.0 + call $runtime.Block.Release + local.set $$t1676.0 + local.get $$t1676.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1670 + i32.mul + i32.add + local.set $$t1677.1 + local.get $$t1677.0 + call $runtime.Block.Release + local.set $$t1677.0 + local.get $$t1677.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1671 + i32.mul + i32.add + local.set $$t1678.1 + local.get $$t1678.0 + call $runtime.Block.Release + local.set $$t1678.0 + local.get $$t1678.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1672 + i32.mul + i32.add + local.set $$t1679.1 + local.get $$t1679.0 + call $runtime.Block.Release + local.set $$t1679.0 + local.get $$t1679.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1673 + i32.mul + i32.add + local.set $$t1680.1 + local.get $$t1680.0 + call $runtime.Block.Release + local.set $$t1680.0 + local.get $$t1680.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1674 + i32.mul + i32.add + local.set $$t1681.1 + local.get $$t1681.0 + call $runtime.Block.Release + local.set $$t1681.0 + local.get $$t1681.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1675 + i32.mul + i32.add + local.set $$t1682.1 + local.get $$t1682.0 + call $runtime.Block.Release + local.set $$t1682.0 + local.get $$t1682.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1676 + i32.mul + i32.add + local.set $$t1683.1 + local.get $$t1683.0 + call $runtime.Block.Release + local.set $$t1683.0 + local.get $$t1683.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1677 + i32.mul + i32.add + local.set $$t1684.1 + local.get $$t1684.0 + call $runtime.Block.Release + local.set $$t1684.0 + local.get $$t1684.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1678 + i32.mul + i32.add + local.set $$t1685.1 + local.get $$t1685.0 + call $runtime.Block.Release + local.set $$t1685.0 + local.get $$t1685.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1679 + i32.mul + i32.add + local.set $$t1686.1 + local.get $$t1686.0 + call $runtime.Block.Release + local.set $$t1686.0 + local.get $$t1686.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1680 + i32.mul + i32.add + local.set $$t1687.1 + local.get $$t1687.0 + call $runtime.Block.Release + local.set $$t1687.0 + local.get $$t1687.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1681 + i32.mul + i32.add + local.set $$t1688.1 + local.get $$t1688.0 + call $runtime.Block.Release + local.set $$t1688.0 + local.get $$t1688.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1682 + i32.mul + i32.add + local.set $$t1689.1 + local.get $$t1689.0 + call $runtime.Block.Release + local.set $$t1689.0 + local.get $$t1689.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1683 + i32.mul + i32.add + local.set $$t1690.1 + local.get $$t1690.0 + call $runtime.Block.Release + local.set $$t1690.0 + local.get $$t1690.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1684 + i32.mul + i32.add + local.set $$t1691.1 + local.get $$t1691.0 + call $runtime.Block.Release + local.set $$t1691.0 + local.get $$t1691.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1685 + i32.mul + i32.add + local.set $$t1692.1 + local.get $$t1692.0 + call $runtime.Block.Release + local.set $$t1692.0 + local.get $$t1692.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1686 + i32.mul + i32.add + local.set $$t1693.1 + local.get $$t1693.0 + call $runtime.Block.Release + local.set $$t1693.0 + local.get $$t1693.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1687 + i32.mul + i32.add + local.set $$t1694.1 + local.get $$t1694.0 + call $runtime.Block.Release + local.set $$t1694.0 + local.get $$t1694.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1688 + i32.mul + i32.add + local.set $$t1695.1 + local.get $$t1695.0 + call $runtime.Block.Release + local.set $$t1695.0 + local.get $$t1695.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1689 + i32.mul + i32.add + local.set $$t1696.1 + local.get $$t1696.0 + call $runtime.Block.Release + local.set $$t1696.0 + local.get $$t1696.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1690 + i32.mul + i32.add + local.set $$t1697.1 + local.get $$t1697.0 + call $runtime.Block.Release + local.set $$t1697.0 + local.get $$t1697.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1691 + i32.mul + i32.add + local.set $$t1698.1 + local.get $$t1698.0 + call $runtime.Block.Release + local.set $$t1698.0 + local.get $$t1698.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1692 + i32.mul + i32.add + local.set $$t1699.1 + local.get $$t1699.0 + call $runtime.Block.Release + local.set $$t1699.0 + local.get $$t1699.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1693 + i32.mul + i32.add + local.set $$t1700.1 + local.get $$t1700.0 + call $runtime.Block.Release + local.set $$t1700.0 + local.get $$t1700.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1694 + i32.mul + i32.add + local.set $$t1701.1 + local.get $$t1701.0 + call $runtime.Block.Release + local.set $$t1701.0 + local.get $$t1701.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1695 + i32.mul + i32.add + local.set $$t1702.1 + local.get $$t1702.0 + call $runtime.Block.Release + local.set $$t1702.0 + local.get $$t1702.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1696 + i32.mul + i32.add + local.set $$t1703.1 + local.get $$t1703.0 + call $runtime.Block.Release + local.set $$t1703.0 + local.get $$t1703.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1697 + i32.mul + i32.add + local.set $$t1704.1 + local.get $$t1704.0 + call $runtime.Block.Release + local.set $$t1704.0 + local.get $$t1704.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1698 + i32.mul + i32.add + local.set $$t1705.1 + local.get $$t1705.0 + call $runtime.Block.Release + local.set $$t1705.0 + local.get $$t1705.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1699 + i32.mul + i32.add + local.set $$t1706.1 + local.get $$t1706.0 + call $runtime.Block.Release + local.set $$t1706.0 + local.get $$t1706.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1700 + i32.mul + i32.add + local.set $$t1707.1 + local.get $$t1707.0 + call $runtime.Block.Release + local.set $$t1707.0 + local.get $$t1707.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1701 + i32.mul + i32.add + local.set $$t1708.1 + local.get $$t1708.0 + call $runtime.Block.Release + local.set $$t1708.0 + local.get $$t1708.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1702 + i32.mul + i32.add + local.set $$t1709.1 + local.get $$t1709.0 + call $runtime.Block.Release + local.set $$t1709.0 + local.get $$t1709.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1703 + i32.mul + i32.add + local.set $$t1710.1 + local.get $$t1710.0 + call $runtime.Block.Release + local.set $$t1710.0 + local.get $$t1710.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1704 + i32.mul + i32.add + local.set $$t1711.1 + local.get $$t1711.0 + call $runtime.Block.Release + local.set $$t1711.0 + local.get $$t1711.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1705 + i32.mul + i32.add + local.set $$t1712.1 + local.get $$t1712.0 + call $runtime.Block.Release + local.set $$t1712.0 + local.get $$t1712.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1706 + i32.mul + i32.add + local.set $$t1713.1 + local.get $$t1713.0 + call $runtime.Block.Release + local.set $$t1713.0 + local.get $$t1713.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1707 + i32.mul + i32.add + local.set $$t1714.1 + local.get $$t1714.0 + call $runtime.Block.Release + local.set $$t1714.0 + local.get $$t1714.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1708 + i32.mul + i32.add + local.set $$t1715.1 + local.get $$t1715.0 + call $runtime.Block.Release + local.set $$t1715.0 + local.get $$t1715.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1709 + i32.mul + i32.add + local.set $$t1716.1 + local.get $$t1716.0 + call $runtime.Block.Release + local.set $$t1716.0 + local.get $$t1716.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1710 + i32.mul + i32.add + local.set $$t1717.1 + local.get $$t1717.0 + call $runtime.Block.Release + local.set $$t1717.0 + local.get $$t1717.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1711 + i32.mul + i32.add + local.set $$t1718.1 + local.get $$t1718.0 + call $runtime.Block.Release + local.set $$t1718.0 + local.get $$t1718.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1712 + i32.mul + i32.add + local.set $$t1719.1 + local.get $$t1719.0 + call $runtime.Block.Release + local.set $$t1719.0 + local.get $$t1719.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1713 + i32.mul + i32.add + local.set $$t1720.1 + local.get $$t1720.0 + call $runtime.Block.Release + local.set $$t1720.0 + local.get $$t1720.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1714 + i32.mul + i32.add + local.set $$t1721.1 + local.get $$t1721.0 + call $runtime.Block.Release + local.set $$t1721.0 + local.get $$t1721.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1715 + i32.mul + i32.add + local.set $$t1722.1 + local.get $$t1722.0 + call $runtime.Block.Release + local.set $$t1722.0 + local.get $$t1722.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1716 + i32.mul + i32.add + local.set $$t1723.1 + local.get $$t1723.0 + call $runtime.Block.Release + local.set $$t1723.0 + local.get $$t1723.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1717 + i32.mul + i32.add + local.set $$t1724.1 + local.get $$t1724.0 + call $runtime.Block.Release + local.set $$t1724.0 + local.get $$t1724.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1718 + i32.mul + i32.add + local.set $$t1725.1 + local.get $$t1725.0 + call $runtime.Block.Release + local.set $$t1725.0 + local.get $$t1725.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1719 + i32.mul + i32.add + local.set $$t1726.1 + local.get $$t1726.0 + call $runtime.Block.Release + local.set $$t1726.0 + local.get $$t1726.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1720 + i32.mul + i32.add + local.set $$t1727.1 + local.get $$t1727.0 + call $runtime.Block.Release + local.set $$t1727.0 + local.get $$t1727.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1721 + i32.mul + i32.add + local.set $$t1728.1 + local.get $$t1728.0 + call $runtime.Block.Release + local.set $$t1728.0 + local.get $$t1728.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1722 + i32.mul + i32.add + local.set $$t1729.1 + local.get $$t1729.0 + call $runtime.Block.Release + local.set $$t1729.0 + local.get $$t1729.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1723 + i32.mul + i32.add + local.set $$t1730.1 + local.get $$t1730.0 + call $runtime.Block.Release + local.set $$t1730.0 + local.get $$t1730.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1724 + i32.mul + i32.add + local.set $$t1731.1 + local.get $$t1731.0 + call $runtime.Block.Release + local.set $$t1731.0 + local.get $$t1731.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1725 + i32.mul + i32.add + local.set $$t1732.1 + local.get $$t1732.0 + call $runtime.Block.Release + local.set $$t1732.0 + local.get $$t1732.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1726 + i32.mul + i32.add + local.set $$t1733.1 + local.get $$t1733.0 + call $runtime.Block.Release + local.set $$t1733.0 + local.get $$t1733.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1727 + i32.mul + i32.add + local.set $$t1734.1 + local.get $$t1734.0 + call $runtime.Block.Release + local.set $$t1734.0 + local.get $$t1734.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1728 + i32.mul + i32.add + local.set $$t1735.1 + local.get $$t1735.0 + call $runtime.Block.Release + local.set $$t1735.0 + local.get $$t1735.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1729 + i32.mul + i32.add + local.set $$t1736.1 + local.get $$t1736.0 + call $runtime.Block.Release + local.set $$t1736.0 + local.get $$t1736.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1730 + i32.mul + i32.add + local.set $$t1737.1 + local.get $$t1737.0 + call $runtime.Block.Release + local.set $$t1737.0 + local.get $$t1737.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1731 + i32.mul + i32.add + local.set $$t1738.1 + local.get $$t1738.0 + call $runtime.Block.Release + local.set $$t1738.0 + local.get $$t1738.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1732 + i32.mul + i32.add + local.set $$t1739.1 + local.get $$t1739.0 + call $runtime.Block.Release + local.set $$t1739.0 + local.get $$t1739.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1733 + i32.mul + i32.add + local.set $$t1740.1 + local.get $$t1740.0 + call $runtime.Block.Release + local.set $$t1740.0 + local.get $$t1740.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1734 + i32.mul + i32.add + local.set $$t1741.1 + local.get $$t1741.0 + call $runtime.Block.Release + local.set $$t1741.0 + local.get $$t1741.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1735 + i32.mul + i32.add + local.set $$t1742.1 + local.get $$t1742.0 + call $runtime.Block.Release + local.set $$t1742.0 + local.get $$t1742.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1736 + i32.mul + i32.add + local.set $$t1743.1 + local.get $$t1743.0 + call $runtime.Block.Release + local.set $$t1743.0 + local.get $$t1743.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1737 + i32.mul + i32.add + local.set $$t1744.1 + local.get $$t1744.0 + call $runtime.Block.Release + local.set $$t1744.0 + local.get $$t1744.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1738 + i32.mul + i32.add + local.set $$t1745.1 + local.get $$t1745.0 + call $runtime.Block.Release + local.set $$t1745.0 + local.get $$t1745.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1739 + i32.mul + i32.add + local.set $$t1746.1 + local.get $$t1746.0 + call $runtime.Block.Release + local.set $$t1746.0 + local.get $$t1746.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1740 + i32.mul + i32.add + local.set $$t1747.1 + local.get $$t1747.0 + call $runtime.Block.Release + local.set $$t1747.0 + local.get $$t1747.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1741 + i32.mul + i32.add + local.set $$t1748.1 + local.get $$t1748.0 + call $runtime.Block.Release + local.set $$t1748.0 + local.get $$t1748.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1742 + i32.mul + i32.add + local.set $$t1749.1 + local.get $$t1749.0 + call $runtime.Block.Release + local.set $$t1749.0 + local.get $$t1749.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1743 + i32.mul + i32.add + local.set $$t1750.1 + local.get $$t1750.0 + call $runtime.Block.Release + local.set $$t1750.0 + local.get $$t1750.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1744 + i32.mul + i32.add + local.set $$t1751.1 + local.get $$t1751.0 + call $runtime.Block.Release + local.set $$t1751.0 + local.get $$t1751.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1745 + i32.mul + i32.add + local.set $$t1752.1 + local.get $$t1752.0 + call $runtime.Block.Release + local.set $$t1752.0 + local.get $$t1752.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1746 + i32.mul + i32.add + local.set $$t1753.1 + local.get $$t1753.0 + call $runtime.Block.Release + local.set $$t1753.0 + local.get $$t1753.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1747 + i32.mul + i32.add + local.set $$t1754.1 + local.get $$t1754.0 + call $runtime.Block.Release + local.set $$t1754.0 + local.get $$t1754.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1748 + i32.mul + i32.add + local.set $$t1755.1 + local.get $$t1755.0 + call $runtime.Block.Release + local.set $$t1755.0 + local.get $$t1755.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1749 + i32.mul + i32.add + local.set $$t1756.1 + local.get $$t1756.0 + call $runtime.Block.Release + local.set $$t1756.0 + local.get $$t1756.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1750 + i32.mul + i32.add + local.set $$t1757.1 + local.get $$t1757.0 + call $runtime.Block.Release + local.set $$t1757.0 + local.get $$t1757.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1751 + i32.mul + i32.add + local.set $$t1758.1 + local.get $$t1758.0 + call $runtime.Block.Release + local.set $$t1758.0 + local.get $$t1758.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1752 + i32.mul + i32.add + local.set $$t1759.1 + local.get $$t1759.0 + call $runtime.Block.Release + local.set $$t1759.0 + local.get $$t1759.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1753 + i32.mul + i32.add + local.set $$t1760.1 + local.get $$t1760.0 + call $runtime.Block.Release + local.set $$t1760.0 + local.get $$t1760.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1754 + i32.mul + i32.add + local.set $$t1761.1 + local.get $$t1761.0 + call $runtime.Block.Release + local.set $$t1761.0 + local.get $$t1761.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1755 + i32.mul + i32.add + local.set $$t1762.1 + local.get $$t1762.0 + call $runtime.Block.Release + local.set $$t1762.0 + local.get $$t1762.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1756 + i32.mul + i32.add + local.set $$t1763.1 + local.get $$t1763.0 + call $runtime.Block.Release + local.set $$t1763.0 + local.get $$t1763.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1757 + i32.mul + i32.add + local.set $$t1764.1 + local.get $$t1764.0 + call $runtime.Block.Release + local.set $$t1764.0 + local.get $$t1764.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1758 + i32.mul + i32.add + local.set $$t1765.1 + local.get $$t1765.0 + call $runtime.Block.Release + local.set $$t1765.0 + local.get $$t1765.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1759 + i32.mul + i32.add + local.set $$t1766.1 + local.get $$t1766.0 + call $runtime.Block.Release + local.set $$t1766.0 + local.get $$t1766.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1760 + i32.mul + i32.add + local.set $$t1767.1 + local.get $$t1767.0 + call $runtime.Block.Release + local.set $$t1767.0 + local.get $$t1767.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1761 + i32.mul + i32.add + local.set $$t1768.1 + local.get $$t1768.0 + call $runtime.Block.Release + local.set $$t1768.0 + local.get $$t1768.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1762 + i32.mul + i32.add + local.set $$t1769.1 + local.get $$t1769.0 + call $runtime.Block.Release + local.set $$t1769.0 + local.get $$t1769.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1763 + i32.mul + i32.add + local.set $$t1770.1 + local.get $$t1770.0 + call $runtime.Block.Release + local.set $$t1770.0 + local.get $$t1770.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1764 + i32.mul + i32.add + local.set $$t1771.1 + local.get $$t1771.0 + call $runtime.Block.Release + local.set $$t1771.0 + local.get $$t1771.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1765 + i32.mul + i32.add + local.set $$t1772.1 + local.get $$t1772.0 + call $runtime.Block.Release + local.set $$t1772.0 + local.get $$t1772.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1766 + i32.mul + i32.add + local.set $$t1773.1 + local.get $$t1773.0 + call $runtime.Block.Release + local.set $$t1773.0 + local.get $$t1773.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1767 + i32.mul + i32.add + local.set $$t1774.1 + local.get $$t1774.0 + call $runtime.Block.Release + local.set $$t1774.0 + local.get $$t1774.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1768 + i32.mul + i32.add + local.set $$t1775.1 + local.get $$t1775.0 + call $runtime.Block.Release + local.set $$t1775.0 + local.get $$t1775.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1769 + i32.mul + i32.add + local.set $$t1776.1 + local.get $$t1776.0 + call $runtime.Block.Release + local.set $$t1776.0 + local.get $$t1776.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1770 + i32.mul + i32.add + local.set $$t1777.1 + local.get $$t1777.0 + call $runtime.Block.Release + local.set $$t1777.0 + local.get $$t1777.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1771 + i32.mul + i32.add + local.set $$t1778.1 + local.get $$t1778.0 + call $runtime.Block.Release + local.set $$t1778.0 + local.get $$t1778.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1772 + i32.mul + i32.add + local.set $$t1779.1 + local.get $$t1779.0 + call $runtime.Block.Release + local.set $$t1779.0 + local.get $$t1779.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1773 + i32.mul + i32.add + local.set $$t1780.1 + local.get $$t1780.0 + call $runtime.Block.Release + local.set $$t1780.0 + local.get $$t1780.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1774 + i32.mul + i32.add + local.set $$t1781.1 + local.get $$t1781.0 + call $runtime.Block.Release + local.set $$t1781.0 + local.get $$t1781.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1775 + i32.mul + i32.add + local.set $$t1782.1 + local.get $$t1782.0 + call $runtime.Block.Release + local.set $$t1782.0 + local.get $$t1782.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1776 + i32.mul + i32.add + local.set $$t1783.1 + local.get $$t1783.0 + call $runtime.Block.Release + local.set $$t1783.0 + local.get $$t1783.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1777 + i32.mul + i32.add + local.set $$t1784.1 + local.get $$t1784.0 + call $runtime.Block.Release + local.set $$t1784.0 + local.get $$t1784.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1778 + i32.mul + i32.add + local.set $$t1785.1 + local.get $$t1785.0 + call $runtime.Block.Release + local.set $$t1785.0 + local.get $$t1785.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1779 + i32.mul + i32.add + local.set $$t1786.1 + local.get $$t1786.0 + call $runtime.Block.Release + local.set $$t1786.0 + local.get $$t1786.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1780 + i32.mul + i32.add + local.set $$t1787.1 + local.get $$t1787.0 + call $runtime.Block.Release + local.set $$t1787.0 + local.get $$t1787.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1781 + i32.mul + i32.add + local.set $$t1788.1 + local.get $$t1788.0 + call $runtime.Block.Release + local.set $$t1788.0 + local.get $$t1788.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1782 + i32.mul + i32.add + local.set $$t1789.1 + local.get $$t1789.0 + call $runtime.Block.Release + local.set $$t1789.0 + local.get $$t1789.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1783 + i32.mul + i32.add + local.set $$t1790.1 + local.get $$t1790.0 + call $runtime.Block.Release + local.set $$t1790.0 + local.get $$t1790.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1784 + i32.mul + i32.add + local.set $$t1791.1 + local.get $$t1791.0 + call $runtime.Block.Release + local.set $$t1791.0 + local.get $$t1791.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1785 + i32.mul + i32.add + local.set $$t1792.1 + local.get $$t1792.0 + call $runtime.Block.Release + local.set $$t1792.0 + local.get $$t1792.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1786 + i32.mul + i32.add + local.set $$t1793.1 + local.get $$t1793.0 + call $runtime.Block.Release + local.set $$t1793.0 + local.get $$t1793.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1787 + i32.mul + i32.add + local.set $$t1794.1 + local.get $$t1794.0 + call $runtime.Block.Release + local.set $$t1794.0 + local.get $$t1794.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1788 + i32.mul + i32.add + local.set $$t1795.1 + local.get $$t1795.0 + call $runtime.Block.Release + local.set $$t1795.0 + local.get $$t1795.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1789 + i32.mul + i32.add + local.set $$t1796.1 + local.get $$t1796.0 + call $runtime.Block.Release + local.set $$t1796.0 + local.get $$t1796.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1790 + i32.mul + i32.add + local.set $$t1797.1 + local.get $$t1797.0 + call $runtime.Block.Release + local.set $$t1797.0 + local.get $$t1797.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1791 + i32.mul + i32.add + local.set $$t1798.1 + local.get $$t1798.0 + call $runtime.Block.Release + local.set $$t1798.0 + local.get $$t1798.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1792 + i32.mul + i32.add + local.set $$t1799.1 + local.get $$t1799.0 + call $runtime.Block.Release + local.set $$t1799.0 + local.get $$t1799.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1793 + i32.mul + i32.add + local.set $$t1800.1 + local.get $$t1800.0 + call $runtime.Block.Release + local.set $$t1800.0 + local.get $$t1800.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1794 + i32.mul + i32.add + local.set $$t1801.1 + local.get $$t1801.0 + call $runtime.Block.Release + local.set $$t1801.0 + local.get $$t1801.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1795 + i32.mul + i32.add + local.set $$t1802.1 + local.get $$t1802.0 + call $runtime.Block.Release + local.set $$t1802.0 + local.get $$t1802.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1796 + i32.mul + i32.add + local.set $$t1803.1 + local.get $$t1803.0 + call $runtime.Block.Release + local.set $$t1803.0 + local.get $$t1803.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1797 + i32.mul + i32.add + local.set $$t1804.1 + local.get $$t1804.0 + call $runtime.Block.Release + local.set $$t1804.0 + local.get $$t1804.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1798 + i32.mul + i32.add + local.set $$t1805.1 + local.get $$t1805.0 + call $runtime.Block.Release + local.set $$t1805.0 + local.get $$t1805.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1799 + i32.mul + i32.add + local.set $$t1806.1 + local.get $$t1806.0 + call $runtime.Block.Release + local.set $$t1806.0 + local.get $$t1806.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1800 + i32.mul + i32.add + local.set $$t1807.1 + local.get $$t1807.0 + call $runtime.Block.Release + local.set $$t1807.0 + local.get $$t1807.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1801 + i32.mul + i32.add + local.set $$t1808.1 + local.get $$t1808.0 + call $runtime.Block.Release + local.set $$t1808.0 + local.get $$t1808.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1802 + i32.mul + i32.add + local.set $$t1809.1 + local.get $$t1809.0 + call $runtime.Block.Release + local.set $$t1809.0 + local.get $$t1809.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1803 + i32.mul + i32.add + local.set $$t1810.1 + local.get $$t1810.0 + call $runtime.Block.Release + local.set $$t1810.0 + local.get $$t1810.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1804 + i32.mul + i32.add + local.set $$t1811.1 + local.get $$t1811.0 + call $runtime.Block.Release + local.set $$t1811.0 + local.get $$t1811.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1805 + i32.mul + i32.add + local.set $$t1812.1 + local.get $$t1812.0 + call $runtime.Block.Release + local.set $$t1812.0 + local.get $$t1812.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1806 + i32.mul + i32.add + local.set $$t1813.1 + local.get $$t1813.0 + call $runtime.Block.Release + local.set $$t1813.0 + local.get $$t1813.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1807 + i32.mul + i32.add + local.set $$t1814.1 + local.get $$t1814.0 + call $runtime.Block.Release + local.set $$t1814.0 + local.get $$t1814.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1808 + i32.mul + i32.add + local.set $$t1815.1 + local.get $$t1815.0 + call $runtime.Block.Release + local.set $$t1815.0 + local.get $$t1815.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1809 + i32.mul + i32.add + local.set $$t1816.1 + local.get $$t1816.0 + call $runtime.Block.Release + local.set $$t1816.0 + local.get $$t1816.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1810 + i32.mul + i32.add + local.set $$t1817.1 + local.get $$t1817.0 + call $runtime.Block.Release + local.set $$t1817.0 + local.get $$t1817.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1811 + i32.mul + i32.add + local.set $$t1818.1 + local.get $$t1818.0 + call $runtime.Block.Release + local.set $$t1818.0 + local.get $$t1818.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1812 + i32.mul + i32.add + local.set $$t1819.1 + local.get $$t1819.0 + call $runtime.Block.Release + local.set $$t1819.0 + local.get $$t1819.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1813 + i32.mul + i32.add + local.set $$t1820.1 + local.get $$t1820.0 + call $runtime.Block.Release + local.set $$t1820.0 + local.get $$t1820.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1814 + i32.mul + i32.add + local.set $$t1821.1 + local.get $$t1821.0 + call $runtime.Block.Release + local.set $$t1821.0 + local.get $$t1821.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1815 + i32.mul + i32.add + local.set $$t1822.1 + local.get $$t1822.0 + call $runtime.Block.Release + local.set $$t1822.0 + local.get $$t1822.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1816 + i32.mul + i32.add + local.set $$t1823.1 + local.get $$t1823.0 + call $runtime.Block.Release + local.set $$t1823.0 + local.get $$t1823.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1817 + i32.mul + i32.add + local.set $$t1824.1 + local.get $$t1824.0 + call $runtime.Block.Release + local.set $$t1824.0 + local.get $$t1824.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1818 + i32.mul + i32.add + local.set $$t1825.1 + local.get $$t1825.0 + call $runtime.Block.Release + local.set $$t1825.0 + local.get $$t1825.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1819 + i32.mul + i32.add + local.set $$t1826.1 + local.get $$t1826.0 + call $runtime.Block.Release + local.set $$t1826.0 + local.get $$t1826.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1820 + i32.mul + i32.add + local.set $$t1827.1 + local.get $$t1827.0 + call $runtime.Block.Release + local.set $$t1827.0 + local.get $$t1827.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1821 + i32.mul + i32.add + local.set $$t1828.1 + local.get $$t1828.0 + call $runtime.Block.Release + local.set $$t1828.0 + local.get $$t1828.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1822 + i32.mul + i32.add + local.set $$t1829.1 + local.get $$t1829.0 + call $runtime.Block.Release + local.set $$t1829.0 + local.get $$t1829.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1823 + i32.mul + i32.add + local.set $$t1830.1 + local.get $$t1830.0 + call $runtime.Block.Release + local.set $$t1830.0 + local.get $$t1830.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1824 + i32.mul + i32.add + local.set $$t1831.1 + local.get $$t1831.0 + call $runtime.Block.Release + local.set $$t1831.0 + local.get $$t1831.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1825 + i32.mul + i32.add + local.set $$t1832.1 + local.get $$t1832.0 + call $runtime.Block.Release + local.set $$t1832.0 + local.get $$t1832.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1826 + i32.mul + i32.add + local.set $$t1833.1 + local.get $$t1833.0 + call $runtime.Block.Release + local.set $$t1833.0 + local.get $$t1833.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1827 + i32.mul + i32.add + local.set $$t1834.1 + local.get $$t1834.0 + call $runtime.Block.Release + local.set $$t1834.0 + local.get $$t1834.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1828 + i32.mul + i32.add + local.set $$t1835.1 + local.get $$t1835.0 + call $runtime.Block.Release + local.set $$t1835.0 + local.get $$t1835.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1829 + i32.mul + i32.add + local.set $$t1836.1 + local.get $$t1836.0 + call $runtime.Block.Release + local.set $$t1836.0 + local.get $$t1836.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1830 + i32.mul + i32.add + local.set $$t1837.1 + local.get $$t1837.0 + call $runtime.Block.Release + local.set $$t1837.0 + local.get $$t1837.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1831 + i32.mul + i32.add + local.set $$t1838.1 + local.get $$t1838.0 + call $runtime.Block.Release + local.set $$t1838.0 + local.get $$t1838.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1832 + i32.mul + i32.add + local.set $$t1839.1 + local.get $$t1839.0 + call $runtime.Block.Release + local.set $$t1839.0 + local.get $$t1839.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1833 + i32.mul + i32.add + local.set $$t1840.1 + local.get $$t1840.0 + call $runtime.Block.Release + local.set $$t1840.0 + local.get $$t1840.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1834 + i32.mul + i32.add + local.set $$t1841.1 + local.get $$t1841.0 + call $runtime.Block.Release + local.set $$t1841.0 + local.get $$t1841.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1835 + i32.mul + i32.add + local.set $$t1842.1 + local.get $$t1842.0 + call $runtime.Block.Release + local.set $$t1842.0 + local.get $$t1842.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1836 + i32.mul + i32.add + local.set $$t1843.1 + local.get $$t1843.0 + call $runtime.Block.Release + local.set $$t1843.0 + local.get $$t1843.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1837 + i32.mul + i32.add + local.set $$t1844.1 + local.get $$t1844.0 + call $runtime.Block.Release + local.set $$t1844.0 + local.get $$t1844.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1838 + i32.mul + i32.add + local.set $$t1845.1 + local.get $$t1845.0 + call $runtime.Block.Release + local.set $$t1845.0 + local.get $$t1845.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1839 + i32.mul + i32.add + local.set $$t1846.1 + local.get $$t1846.0 + call $runtime.Block.Release + local.set $$t1846.0 + local.get $$t1846.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1840 + i32.mul + i32.add + local.set $$t1847.1 + local.get $$t1847.0 + call $runtime.Block.Release + local.set $$t1847.0 + local.get $$t1847.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1841 + i32.mul + i32.add + local.set $$t1848.1 + local.get $$t1848.0 + call $runtime.Block.Release + local.set $$t1848.0 + local.get $$t1848.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1842 + i32.mul + i32.add + local.set $$t1849.1 + local.get $$t1849.0 + call $runtime.Block.Release + local.set $$t1849.0 + local.get $$t1849.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1843 + i32.mul + i32.add + local.set $$t1850.1 + local.get $$t1850.0 + call $runtime.Block.Release + local.set $$t1850.0 + local.get $$t1850.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1844 + i32.mul + i32.add + local.set $$t1851.1 + local.get $$t1851.0 + call $runtime.Block.Release + local.set $$t1851.0 + local.get $$t1851.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1845 + i32.mul + i32.add + local.set $$t1852.1 + local.get $$t1852.0 + call $runtime.Block.Release + local.set $$t1852.0 + local.get $$t1852.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1846 + i32.mul + i32.add + local.set $$t1853.1 + local.get $$t1853.0 + call $runtime.Block.Release + local.set $$t1853.0 + local.get $$t1853.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1847 + i32.mul + i32.add + local.set $$t1854.1 + local.get $$t1854.0 + call $runtime.Block.Release + local.set $$t1854.0 + local.get $$t1854.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1848 + i32.mul + i32.add + local.set $$t1855.1 + local.get $$t1855.0 + call $runtime.Block.Release + local.set $$t1855.0 + local.get $$t1855.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1849 + i32.mul + i32.add + local.set $$t1856.1 + local.get $$t1856.0 + call $runtime.Block.Release + local.set $$t1856.0 + local.get $$t1856.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1850 + i32.mul + i32.add + local.set $$t1857.1 + local.get $$t1857.0 + call $runtime.Block.Release + local.set $$t1857.0 + local.get $$t1857.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1851 + i32.mul + i32.add + local.set $$t1858.1 + local.get $$t1858.0 + call $runtime.Block.Release + local.set $$t1858.0 + local.get $$t1858.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1852 + i32.mul + i32.add + local.set $$t1859.1 + local.get $$t1859.0 + call $runtime.Block.Release + local.set $$t1859.0 + local.get $$t1859.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1853 + i32.mul + i32.add + local.set $$t1860.1 + local.get $$t1860.0 + call $runtime.Block.Release + local.set $$t1860.0 + local.get $$t1860.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1854 + i32.mul + i32.add + local.set $$t1861.1 + local.get $$t1861.0 + call $runtime.Block.Release + local.set $$t1861.0 + local.get $$t1861.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1855 + i32.mul + i32.add + local.set $$t1862.1 + local.get $$t1862.0 + call $runtime.Block.Release + local.set $$t1862.0 + local.get $$t1862.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1856 + i32.mul + i32.add + local.set $$t1863.1 + local.get $$t1863.0 + call $runtime.Block.Release + local.set $$t1863.0 + local.get $$t1863.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1857 + i32.mul + i32.add + local.set $$t1864.1 + local.get $$t1864.0 + call $runtime.Block.Release + local.set $$t1864.0 + local.get $$t1864.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1858 + i32.mul + i32.add + local.set $$t1865.1 + local.get $$t1865.0 + call $runtime.Block.Release + local.set $$t1865.0 + local.get $$t1865.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1859 + i32.mul + i32.add + local.set $$t1866.1 + local.get $$t1866.0 + call $runtime.Block.Release + local.set $$t1866.0 + local.get $$t1866.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1860 + i32.mul + i32.add + local.set $$t1867.1 + local.get $$t1867.0 + call $runtime.Block.Release + local.set $$t1867.0 + local.get $$t1867.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1861 + i32.mul + i32.add + local.set $$t1868.1 + local.get $$t1868.0 + call $runtime.Block.Release + local.set $$t1868.0 + local.get $$t1868.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1862 + i32.mul + i32.add + local.set $$t1869.1 + local.get $$t1869.0 + call $runtime.Block.Release + local.set $$t1869.0 + local.get $$t1869.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1863 + i32.mul + i32.add + local.set $$t1870.1 + local.get $$t1870.0 + call $runtime.Block.Release + local.set $$t1870.0 + local.get $$t1870.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1864 + i32.mul + i32.add + local.set $$t1871.1 + local.get $$t1871.0 + call $runtime.Block.Release + local.set $$t1871.0 + local.get $$t1871.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1865 + i32.mul + i32.add + local.set $$t1872.1 + local.get $$t1872.0 + call $runtime.Block.Release + local.set $$t1872.0 + local.get $$t1872.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1866 + i32.mul + i32.add + local.set $$t1873.1 + local.get $$t1873.0 + call $runtime.Block.Release + local.set $$t1873.0 + local.get $$t1873.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1867 + i32.mul + i32.add + local.set $$t1874.1 + local.get $$t1874.0 + call $runtime.Block.Release + local.set $$t1874.0 + local.get $$t1874.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1868 + i32.mul + i32.add + local.set $$t1875.1 + local.get $$t1875.0 + call $runtime.Block.Release + local.set $$t1875.0 + local.get $$t1875.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1869 + i32.mul + i32.add + local.set $$t1876.1 + local.get $$t1876.0 + call $runtime.Block.Release + local.set $$t1876.0 + local.get $$t1876.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1870 + i32.mul + i32.add + local.set $$t1877.1 + local.get $$t1877.0 + call $runtime.Block.Release + local.set $$t1877.0 + local.get $$t1877.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1871 + i32.mul + i32.add + local.set $$t1878.1 + local.get $$t1878.0 + call $runtime.Block.Release + local.set $$t1878.0 + local.get $$t1878.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1872 + i32.mul + i32.add + local.set $$t1879.1 + local.get $$t1879.0 + call $runtime.Block.Release + local.set $$t1879.0 + local.get $$t1879.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1873 + i32.mul + i32.add + local.set $$t1880.1 + local.get $$t1880.0 + call $runtime.Block.Release + local.set $$t1880.0 + local.get $$t1880.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1874 + i32.mul + i32.add + local.set $$t1881.1 + local.get $$t1881.0 + call $runtime.Block.Release + local.set $$t1881.0 + local.get $$t1881.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1875 + i32.mul + i32.add + local.set $$t1882.1 + local.get $$t1882.0 + call $runtime.Block.Release + local.set $$t1882.0 + local.get $$t1882.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1876 + i32.mul + i32.add + local.set $$t1883.1 + local.get $$t1883.0 + call $runtime.Block.Release + local.set $$t1883.0 + local.get $$t1883.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1877 + i32.mul + i32.add + local.set $$t1884.1 + local.get $$t1884.0 + call $runtime.Block.Release + local.set $$t1884.0 + local.get $$t1884.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1878 + i32.mul + i32.add + local.set $$t1885.1 + local.get $$t1885.0 + call $runtime.Block.Release + local.set $$t1885.0 + local.get $$t1885.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1879 + i32.mul + i32.add + local.set $$t1886.1 + local.get $$t1886.0 + call $runtime.Block.Release + local.set $$t1886.0 + local.get $$t1886.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1880 + i32.mul + i32.add + local.set $$t1887.1 + local.get $$t1887.0 + call $runtime.Block.Release + local.set $$t1887.0 + local.get $$t1887.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1881 + i32.mul + i32.add + local.set $$t1888.1 + local.get $$t1888.0 + call $runtime.Block.Release + local.set $$t1888.0 + local.get $$t1888.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1882 + i32.mul + i32.add + local.set $$t1889.1 + local.get $$t1889.0 + call $runtime.Block.Release + local.set $$t1889.0 + local.get $$t1889.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1883 + i32.mul + i32.add + local.set $$t1890.1 + local.get $$t1890.0 + call $runtime.Block.Release + local.set $$t1890.0 + local.get $$t1890.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1884 + i32.mul + i32.add + local.set $$t1891.1 + local.get $$t1891.0 + call $runtime.Block.Release + local.set $$t1891.0 + local.get $$t1891.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1885 + i32.mul + i32.add + local.set $$t1892.1 + local.get $$t1892.0 + call $runtime.Block.Release + local.set $$t1892.0 + local.get $$t1892.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1886 + i32.mul + i32.add + local.set $$t1893.1 + local.get $$t1893.0 + call $runtime.Block.Release + local.set $$t1893.0 + local.get $$t1893.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1887 + i32.mul + i32.add + local.set $$t1894.1 + local.get $$t1894.0 + call $runtime.Block.Release + local.set $$t1894.0 + local.get $$t1894.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1888 + i32.mul + i32.add + local.set $$t1895.1 + local.get $$t1895.0 + call $runtime.Block.Release + local.set $$t1895.0 + local.get $$t1895.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1889 + i32.mul + i32.add + local.set $$t1896.1 + local.get $$t1896.0 + call $runtime.Block.Release + local.set $$t1896.0 + local.get $$t1896.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1890 + i32.mul + i32.add + local.set $$t1897.1 + local.get $$t1897.0 + call $runtime.Block.Release + local.set $$t1897.0 + local.get $$t1897.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1891 + i32.mul + i32.add + local.set $$t1898.1 + local.get $$t1898.0 + call $runtime.Block.Release + local.set $$t1898.0 + local.get $$t1898.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1892 + i32.mul + i32.add + local.set $$t1899.1 + local.get $$t1899.0 + call $runtime.Block.Release + local.set $$t1899.0 + local.get $$t1899.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1893 + i32.mul + i32.add + local.set $$t1900.1 + local.get $$t1900.0 + call $runtime.Block.Release + local.set $$t1900.0 + local.get $$t1900.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1894 + i32.mul + i32.add + local.set $$t1901.1 + local.get $$t1901.0 + call $runtime.Block.Release + local.set $$t1901.0 + local.get $$t1901.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1895 + i32.mul + i32.add + local.set $$t1902.1 + local.get $$t1902.0 + call $runtime.Block.Release + local.set $$t1902.0 + local.get $$t1902.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1896 + i32.mul + i32.add + local.set $$t1903.1 + local.get $$t1903.0 + call $runtime.Block.Release + local.set $$t1903.0 + local.get $$t1903.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1897 + i32.mul + i32.add + local.set $$t1904.1 + local.get $$t1904.0 + call $runtime.Block.Release + local.set $$t1904.0 + local.get $$t1904.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1898 + i32.mul + i32.add + local.set $$t1905.1 + local.get $$t1905.0 + call $runtime.Block.Release + local.set $$t1905.0 + local.get $$t1905.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1899 + i32.mul + i32.add + local.set $$t1906.1 + local.get $$t1906.0 + call $runtime.Block.Release + local.set $$t1906.0 + local.get $$t1906.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1900 + i32.mul + i32.add + local.set $$t1907.1 + local.get $$t1907.0 + call $runtime.Block.Release + local.set $$t1907.0 + local.get $$t1907.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1901 + i32.mul + i32.add + local.set $$t1908.1 + local.get $$t1908.0 + call $runtime.Block.Release + local.set $$t1908.0 + local.get $$t1908.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1902 + i32.mul + i32.add + local.set $$t1909.1 + local.get $$t1909.0 + call $runtime.Block.Release + local.set $$t1909.0 + local.get $$t1909.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1903 + i32.mul + i32.add + local.set $$t1910.1 + local.get $$t1910.0 + call $runtime.Block.Release + local.set $$t1910.0 + local.get $$t1910.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1904 + i32.mul + i32.add + local.set $$t1911.1 + local.get $$t1911.0 + call $runtime.Block.Release + local.set $$t1911.0 + local.get $$t1911.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1905 + i32.mul + i32.add + local.set $$t1912.1 + local.get $$t1912.0 + call $runtime.Block.Release + local.set $$t1912.0 + local.get $$t1912.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1906 + i32.mul + i32.add + local.set $$t1913.1 + local.get $$t1913.0 + call $runtime.Block.Release + local.set $$t1913.0 + local.get $$t1913.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1907 + i32.mul + i32.add + local.set $$t1914.1 + local.get $$t1914.0 + call $runtime.Block.Release + local.set $$t1914.0 + local.get $$t1914.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1908 + i32.mul + i32.add + local.set $$t1915.1 + local.get $$t1915.0 + call $runtime.Block.Release + local.set $$t1915.0 + local.get $$t1915.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1909 + i32.mul + i32.add + local.set $$t1916.1 + local.get $$t1916.0 + call $runtime.Block.Release + local.set $$t1916.0 + local.get $$t1916.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1910 + i32.mul + i32.add + local.set $$t1917.1 + local.get $$t1917.0 + call $runtime.Block.Release + local.set $$t1917.0 + local.get $$t1917.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1911 + i32.mul + i32.add + local.set $$t1918.1 + local.get $$t1918.0 + call $runtime.Block.Release + local.set $$t1918.0 + local.get $$t1918.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1912 + i32.mul + i32.add + local.set $$t1919.1 + local.get $$t1919.0 + call $runtime.Block.Release + local.set $$t1919.0 + local.get $$t1919.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1913 + i32.mul + i32.add + local.set $$t1920.1 + local.get $$t1920.0 + call $runtime.Block.Release + local.set $$t1920.0 + local.get $$t1920.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1914 + i32.mul + i32.add + local.set $$t1921.1 + local.get $$t1921.0 + call $runtime.Block.Release + local.set $$t1921.0 + local.get $$t1921.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1915 + i32.mul + i32.add + local.set $$t1922.1 + local.get $$t1922.0 + call $runtime.Block.Release + local.set $$t1922.0 + local.get $$t1922.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1916 + i32.mul + i32.add + local.set $$t1923.1 + local.get $$t1923.0 + call $runtime.Block.Release + local.set $$t1923.0 + local.get $$t1923.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1917 + i32.mul + i32.add + local.set $$t1924.1 + local.get $$t1924.0 + call $runtime.Block.Release + local.set $$t1924.0 + local.get $$t1924.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1918 + i32.mul + i32.add + local.set $$t1925.1 + local.get $$t1925.0 + call $runtime.Block.Release + local.set $$t1925.0 + local.get $$t1925.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1919 + i32.mul + i32.add + local.set $$t1926.1 + local.get $$t1926.0 + call $runtime.Block.Release + local.set $$t1926.0 + local.get $$t1926.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1920 + i32.mul + i32.add + local.set $$t1927.1 + local.get $$t1927.0 + call $runtime.Block.Release + local.set $$t1927.0 + local.get $$t1927.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1921 + i32.mul + i32.add + local.set $$t1928.1 + local.get $$t1928.0 + call $runtime.Block.Release + local.set $$t1928.0 + local.get $$t1928.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1922 + i32.mul + i32.add + local.set $$t1929.1 + local.get $$t1929.0 + call $runtime.Block.Release + local.set $$t1929.0 + local.get $$t1929.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1923 + i32.mul + i32.add + local.set $$t1930.1 + local.get $$t1930.0 + call $runtime.Block.Release + local.set $$t1930.0 + local.get $$t1930.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1924 + i32.mul + i32.add + local.set $$t1931.1 + local.get $$t1931.0 + call $runtime.Block.Release + local.set $$t1931.0 + local.get $$t1931.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1925 + i32.mul + i32.add + local.set $$t1932.1 + local.get $$t1932.0 + call $runtime.Block.Release + local.set $$t1932.0 + local.get $$t1932.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1926 + i32.mul + i32.add + local.set $$t1933.1 + local.get $$t1933.0 + call $runtime.Block.Release + local.set $$t1933.0 + local.get $$t1933.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1927 + i32.mul + i32.add + local.set $$t1934.1 + local.get $$t1934.0 + call $runtime.Block.Release + local.set $$t1934.0 + local.get $$t1934.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1928 + i32.mul + i32.add + local.set $$t1935.1 + local.get $$t1935.0 + call $runtime.Block.Release + local.set $$t1935.0 + local.get $$t1935.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1929 + i32.mul + i32.add + local.set $$t1936.1 + local.get $$t1936.0 + call $runtime.Block.Release + local.set $$t1936.0 + local.get $$t1936.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1930 + i32.mul + i32.add + local.set $$t1937.1 + local.get $$t1937.0 + call $runtime.Block.Release + local.set $$t1937.0 + local.get $$t1937.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1931 + i32.mul + i32.add + local.set $$t1938.1 + local.get $$t1938.0 + call $runtime.Block.Release + local.set $$t1938.0 + local.get $$t1938.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1932 + i32.mul + i32.add + local.set $$t1939.1 + local.get $$t1939.0 + call $runtime.Block.Release + local.set $$t1939.0 + local.get $$t1939.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1933 + i32.mul + i32.add + local.set $$t1940.1 + local.get $$t1940.0 + call $runtime.Block.Release + local.set $$t1940.0 + local.get $$t1940.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1934 + i32.mul + i32.add + local.set $$t1941.1 + local.get $$t1941.0 + call $runtime.Block.Release + local.set $$t1941.0 + local.get $$t1941.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1935 + i32.mul + i32.add + local.set $$t1942.1 + local.get $$t1942.0 + call $runtime.Block.Release + local.set $$t1942.0 + local.get $$t1942.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1936 + i32.mul + i32.add + local.set $$t1943.1 + local.get $$t1943.0 + call $runtime.Block.Release + local.set $$t1943.0 + local.get $$t1943.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1937 + i32.mul + i32.add + local.set $$t1944.1 + local.get $$t1944.0 + call $runtime.Block.Release + local.set $$t1944.0 + local.get $$t1944.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1938 + i32.mul + i32.add + local.set $$t1945.1 + local.get $$t1945.0 + call $runtime.Block.Release + local.set $$t1945.0 + local.get $$t1945.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1939 + i32.mul + i32.add + local.set $$t1946.1 + local.get $$t1946.0 + call $runtime.Block.Release + local.set $$t1946.0 + local.get $$t1946.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1940 + i32.mul + i32.add + local.set $$t1947.1 + local.get $$t1947.0 + call $runtime.Block.Release + local.set $$t1947.0 + local.get $$t1947.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1941 + i32.mul + i32.add + local.set $$t1948.1 + local.get $$t1948.0 + call $runtime.Block.Release + local.set $$t1948.0 + local.get $$t1948.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1942 + i32.mul + i32.add + local.set $$t1949.1 + local.get $$t1949.0 + call $runtime.Block.Release + local.set $$t1949.0 + local.get $$t1949.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1943 + i32.mul + i32.add + local.set $$t1950.1 + local.get $$t1950.0 + call $runtime.Block.Release + local.set $$t1950.0 + local.get $$t1950.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1944 + i32.mul + i32.add + local.set $$t1951.1 + local.get $$t1951.0 + call $runtime.Block.Release + local.set $$t1951.0 + local.get $$t1951.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1945 + i32.mul + i32.add + local.set $$t1952.1 + local.get $$t1952.0 + call $runtime.Block.Release + local.set $$t1952.0 + local.get $$t1952.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1946 + i32.mul + i32.add + local.set $$t1953.1 + local.get $$t1953.0 + call $runtime.Block.Release + local.set $$t1953.0 + local.get $$t1953.1 + i32.const 188 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1947 + i32.mul + i32.add + local.set $$t1954.1 + local.get $$t1954.0 + call $runtime.Block.Release + local.set $$t1954.0 + local.get $$t1954.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1948 + i32.mul + i32.add + local.set $$t1955.1 + local.get $$t1955.0 + call $runtime.Block.Release + local.set $$t1955.0 + local.get $$t1955.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1949 + i32.mul + i32.add + local.set $$t1956.1 + local.get $$t1956.0 + call $runtime.Block.Release + local.set $$t1956.0 + local.get $$t1956.1 + i32.const 62 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1950 + i32.mul + i32.add + local.set $$t1957.1 + local.get $$t1957.0 + call $runtime.Block.Release + local.set $$t1957.0 + local.get $$t1957.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1951 + i32.mul + i32.add + local.set $$t1958.1 + local.get $$t1958.0 + call $runtime.Block.Release + local.set $$t1958.0 + local.get $$t1958.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1952 + i32.mul + i32.add + local.set $$t1959.1 + local.get $$t1959.0 + call $runtime.Block.Release + local.set $$t1959.0 + local.get $$t1959.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1953 + i32.mul + i32.add + local.set $$t1960.1 + local.get $$t1960.0 + call $runtime.Block.Release + local.set $$t1960.0 + local.get $$t1960.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1954 + i32.mul + i32.add + local.set $$t1961.1 + local.get $$t1961.0 + call $runtime.Block.Release + local.set $$t1961.0 + local.get $$t1961.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1955 + i32.mul + i32.add + local.set $$t1962.1 + local.get $$t1962.0 + call $runtime.Block.Release + local.set $$t1962.0 + local.get $$t1962.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1956 + i32.mul + i32.add + local.set $$t1963.1 + local.get $$t1963.0 + call $runtime.Block.Release + local.set $$t1963.0 + local.get $$t1963.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1957 + i32.mul + i32.add + local.set $$t1964.1 + local.get $$t1964.0 + call $runtime.Block.Release + local.set $$t1964.0 + local.get $$t1964.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1958 + i32.mul + i32.add + local.set $$t1965.1 + local.get $$t1965.0 + call $runtime.Block.Release + local.set $$t1965.0 + local.get $$t1965.1 + i32.const 124 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1959 + i32.mul + i32.add + local.set $$t1966.1 + local.get $$t1966.0 + call $runtime.Block.Release + local.set $$t1966.0 + local.get $$t1966.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1960 + i32.mul + i32.add + local.set $$t1967.1 + local.get $$t1967.0 + call $runtime.Block.Release + local.set $$t1967.0 + local.get $$t1967.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1961 + i32.mul + i32.add + local.set $$t1968.1 + local.get $$t1968.0 + call $runtime.Block.Release + local.set $$t1968.0 + local.get $$t1968.1 + i32.const 61 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1962 + i32.mul + i32.add + local.set $$t1969.1 + local.get $$t1969.0 + call $runtime.Block.Release + local.set $$t1969.0 + local.get $$t1969.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1963 + i32.mul + i32.add + local.set $$t1970.1 + local.get $$t1970.0 + call $runtime.Block.Release + local.set $$t1970.0 + local.get $$t1970.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1964 + i32.mul + i32.add + local.set $$t1971.1 + local.get $$t1971.0 + call $runtime.Block.Release + local.set $$t1971.0 + local.get $$t1971.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1965 + i32.mul + i32.add + local.set $$t1972.1 + local.get $$t1972.0 + call $runtime.Block.Release + local.set $$t1972.0 + local.get $$t1972.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1966 + i32.mul + i32.add + local.set $$t1973.1 + local.get $$t1973.0 + call $runtime.Block.Release + local.set $$t1973.0 + local.get $$t1973.1 + i32.const 255 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1967 + i32.mul + i32.add + local.set $$t1974.1 + local.get $$t1974.0 + call $runtime.Block.Release + local.set $$t1974.0 + local.get $$t1974.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1968 + i32.mul + i32.add + local.set $$t1975.1 + local.get $$t1975.0 + call $runtime.Block.Release + local.set $$t1975.0 + local.get $$t1975.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1969 + i32.mul + i32.add + local.set $$t1976.1 + local.get $$t1976.0 + call $runtime.Block.Release + local.set $$t1976.0 + local.get $$t1976.1 + i32.const 58 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1970 + i32.mul + i32.add + local.set $$t1977.1 + local.get $$t1977.0 + call $runtime.Block.Release + local.set $$t1977.0 + local.get $$t1977.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1971 + i32.mul + i32.add + local.set $$t1978.1 + local.get $$t1978.0 + call $runtime.Block.Release + local.set $$t1978.0 + local.get $$t1978.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1972 + i32.mul + i32.add + local.set $$t1979.1 + local.get $$t1979.0 + call $runtime.Block.Release + local.set $$t1979.0 + local.get $$t1979.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1973 + i32.mul + i32.add + local.set $$t1980.1 + local.get $$t1980.0 + call $runtime.Block.Release + local.set $$t1980.0 + local.get $$t1980.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1974 + i32.mul + i32.add + local.set $$t1981.1 + local.get $$t1981.0 + call $runtime.Block.Release + local.set $$t1981.0 + local.get $$t1981.1 + i32.const 172 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1975 + i32.mul + i32.add + local.set $$t1982.1 + local.get $$t1982.0 + call $runtime.Block.Release + local.set $$t1982.0 + local.get $$t1982.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1976 + i32.mul + i32.add + local.set $$t1983.1 + local.get $$t1983.0 + call $runtime.Block.Release + local.set $$t1983.0 + local.get $$t1983.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1977 + i32.mul + i32.add + local.set $$t1984.1 + local.get $$t1984.0 + call $runtime.Block.Release + local.set $$t1984.0 + local.get $$t1984.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1978 + i32.mul + i32.add + local.set $$t1985.1 + local.get $$t1985.0 + call $runtime.Block.Release + local.set $$t1985.0 + local.get $$t1985.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1979 + i32.mul + i32.add + local.set $$t1986.1 + local.get $$t1986.0 + call $runtime.Block.Release + local.set $$t1986.0 + local.get $$t1986.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1980 + i32.mul + i32.add + local.set $$t1987.1 + local.get $$t1987.0 + call $runtime.Block.Release + local.set $$t1987.0 + local.get $$t1987.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1981 + i32.mul + i32.add + local.set $$t1988.1 + local.get $$t1988.0 + call $runtime.Block.Release + local.set $$t1988.0 + local.get $$t1988.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1982 + i32.mul + i32.add + local.set $$t1989.1 + local.get $$t1989.0 + call $runtime.Block.Release + local.set $$t1989.0 + local.get $$t1989.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1983 + i32.mul + i32.add + local.set $$t1990.1 + local.get $$t1990.0 + call $runtime.Block.Release + local.set $$t1990.0 + local.get $$t1990.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1984 + i32.mul + i32.add + local.set $$t1991.1 + local.get $$t1991.0 + call $runtime.Block.Release + local.set $$t1991.0 + local.get $$t1991.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1985 + i32.mul + i32.add + local.set $$t1992.1 + local.get $$t1992.0 + call $runtime.Block.Release + local.set $$t1992.0 + local.get $$t1992.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1986 + i32.mul + i32.add + local.set $$t1993.1 + local.get $$t1993.0 + call $runtime.Block.Release + local.set $$t1993.0 + local.get $$t1993.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1987 + i32.mul + i32.add + local.set $$t1994.1 + local.get $$t1994.0 + call $runtime.Block.Release + local.set $$t1994.0 + local.get $$t1994.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1988 + i32.mul + i32.add + local.set $$t1995.1 + local.get $$t1995.0 + call $runtime.Block.Release + local.set $$t1995.0 + local.get $$t1995.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1989 + i32.mul + i32.add + local.set $$t1996.1 + local.get $$t1996.0 + call $runtime.Block.Release + local.set $$t1996.0 + local.get $$t1996.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1990 + i32.mul + i32.add + local.set $$t1997.1 + local.get $$t1997.0 + call $runtime.Block.Release + local.set $$t1997.0 + local.get $$t1997.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1991 + i32.mul + i32.add + local.set $$t1998.1 + local.get $$t1998.0 + call $runtime.Block.Release + local.set $$t1998.0 + local.get $$t1998.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1992 + i32.mul + i32.add + local.set $$t1999.1 + local.get $$t1999.0 + call $runtime.Block.Release + local.set $$t1999.0 + local.get $$t1999.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1993 + i32.mul + i32.add + local.set $$t2000.1 + local.get $$t2000.0 + call $runtime.Block.Release + local.set $$t2000.0 + local.get $$t2000.1 + i32.const 14 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1994 + i32.mul + i32.add + local.set $$t2001.1 + local.get $$t2001.0 + call $runtime.Block.Release + local.set $$t2001.0 + local.get $$t2001.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1995 + i32.mul + i32.add + local.set $$t2002.1 + local.get $$t2002.0 + call $runtime.Block.Release + local.set $$t2002.0 + local.get $$t2002.1 + i32.const 191 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1996 + i32.mul + i32.add + local.set $$t2003.1 + local.get $$t2003.0 + call $runtime.Block.Release + local.set $$t2003.0 + local.get $$t2003.1 + i32.const 254 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1997 + i32.mul + i32.add + local.set $$t2004.1 + local.get $$t2004.0 + call $runtime.Block.Release + local.set $$t2004.0 + local.get $$t2004.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1998 + i32.mul + i32.add + local.set $$t2005.1 + local.get $$t2005.0 + call $runtime.Block.Release + local.set $$t2005.0 + local.get $$t2005.1 + i32.const 176 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 1999 + i32.mul + i32.add + local.set $$t2006.1 + local.get $$t2006.0 + call $runtime.Block.Release + local.set $$t2006.0 + local.get $$t2006.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2000 + i32.mul + i32.add + local.set $$t2007.1 + local.get $$t2007.0 + call $runtime.Block.Release + local.set $$t2007.0 + local.get $$t2007.1 + i32.const 53 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2001 + i32.mul + i32.add + local.set $$t2008.1 + local.get $$t2008.0 + call $runtime.Block.Release + local.set $$t2008.0 + local.get $$t2008.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2002 + i32.mul + i32.add + local.set $$t2009.1 + local.get $$t2009.0 + call $runtime.Block.Release + local.set $$t2009.0 + local.get $$t2009.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2003 + i32.mul + i32.add + local.set $$t2010.1 + local.get $$t2010.0 + call $runtime.Block.Release + local.set $$t2010.0 + local.get $$t2010.1 + i32.const 92 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2004 + i32.mul + i32.add + local.set $$t2011.1 + local.get $$t2011.0 + call $runtime.Block.Release + local.set $$t2011.0 + local.get $$t2011.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2005 + i32.mul + i32.add + local.set $$t2012.1 + local.get $$t2012.0 + call $runtime.Block.Release + local.set $$t2012.0 + local.get $$t2012.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2006 + i32.mul + i32.add + local.set $$t2013.1 + local.get $$t2013.0 + call $runtime.Block.Release + local.set $$t2013.0 + local.get $$t2013.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2007 + i32.mul + i32.add + local.set $$t2014.1 + local.get $$t2014.0 + call $runtime.Block.Release + local.set $$t2014.0 + local.get $$t2014.1 + i32.const 127 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2008 + i32.mul + i32.add + local.set $$t2015.1 + local.get $$t2015.0 + call $runtime.Block.Release + local.set $$t2015.0 + local.get $$t2015.1 + i32.const 253 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2009 + i32.mul + i32.add + local.set $$t2016.1 + local.get $$t2016.0 + call $runtime.Block.Release + local.set $$t2016.0 + local.get $$t2016.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2010 + i32.mul + i32.add + local.set $$t2017.1 + local.get $$t2017.0 + call $runtime.Block.Release + local.set $$t2017.0 + local.get $$t2017.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2011 + i32.mul + i32.add + local.set $$t2018.1 + local.get $$t2018.0 + call $runtime.Block.Release + local.set $$t2018.0 + local.get $$t2018.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2012 + i32.mul + i32.add + local.set $$t2019.1 + local.get $$t2019.0 + call $runtime.Block.Release + local.set $$t2019.0 + local.get $$t2019.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2013 + i32.mul + i32.add + local.set $$t2020.1 + local.get $$t2020.0 + call $runtime.Block.Release + local.set $$t2020.0 + local.get $$t2020.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2014 + i32.mul + i32.add + local.set $$t2021.1 + local.get $$t2021.0 + call $runtime.Block.Release + local.set $$t2021.0 + local.get $$t2021.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2015 + i32.mul + i32.add + local.set $$t2022.1 + local.get $$t2022.0 + call $runtime.Block.Release + local.set $$t2022.0 + local.get $$t2022.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2016 + i32.mul + i32.add + local.set $$t2023.1 + local.get $$t2023.0 + call $runtime.Block.Release + local.set $$t2023.0 + local.get $$t2023.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2017 + i32.mul + i32.add + local.set $$t2024.1 + local.get $$t2024.0 + call $runtime.Block.Release + local.set $$t2024.0 + local.get $$t2024.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2018 + i32.mul + i32.add + local.set $$t2025.1 + local.get $$t2025.0 + call $runtime.Block.Release + local.set $$t2025.0 + local.get $$t2025.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2019 + i32.mul + i32.add + local.set $$t2026.1 + local.get $$t2026.0 + call $runtime.Block.Release + local.set $$t2026.0 + local.get $$t2026.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2020 + i32.mul + i32.add + local.set $$t2027.1 + local.get $$t2027.0 + call $runtime.Block.Release + local.set $$t2027.0 + local.get $$t2027.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2021 + i32.mul + i32.add + local.set $$t2028.1 + local.get $$t2028.0 + call $runtime.Block.Release + local.set $$t2028.0 + local.get $$t2028.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2022 + i32.mul + i32.add + local.set $$t2029.1 + local.get $$t2029.0 + call $runtime.Block.Release + local.set $$t2029.0 + local.get $$t2029.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2023 + i32.mul + i32.add + local.set $$t2030.1 + local.get $$t2030.0 + call $runtime.Block.Release + local.set $$t2030.0 + local.get $$t2030.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2024 + i32.mul + i32.add + local.set $$t2031.1 + local.get $$t2031.0 + call $runtime.Block.Release + local.set $$t2031.0 + local.get $$t2031.1 + i32.const 13 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2025 + i32.mul + i32.add + local.set $$t2032.1 + local.get $$t2032.0 + call $runtime.Block.Release + local.set $$t2032.0 + local.get $$t2032.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2026 + i32.mul + i32.add + local.set $$t2033.1 + local.get $$t2033.0 + call $runtime.Block.Release + local.set $$t2033.0 + local.get $$t2033.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2027 + i32.mul + i32.add + local.set $$t2034.1 + local.get $$t2034.0 + call $runtime.Block.Release + local.set $$t2034.0 + local.get $$t2034.1 + i32.const 112 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2028 + i32.mul + i32.add + local.set $$t2035.1 + local.get $$t2035.0 + call $runtime.Block.Release + local.set $$t2035.0 + local.get $$t2035.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2029 + i32.mul + i32.add + local.set $$t2036.1 + local.get $$t2036.0 + call $runtime.Block.Release + local.set $$t2036.0 + local.get $$t2036.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2030 + i32.mul + i32.add + local.set $$t2037.1 + local.get $$t2037.0 + call $runtime.Block.Release + local.set $$t2037.0 + local.get $$t2037.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2031 + i32.mul + i32.add + local.set $$t2038.1 + local.get $$t2038.0 + call $runtime.Block.Release + local.set $$t2038.0 + local.get $$t2038.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2032 + i32.mul + i32.add + local.set $$t2039.1 + local.get $$t2039.0 + call $runtime.Block.Release + local.set $$t2039.0 + local.get $$t2039.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2033 + i32.mul + i32.add + local.set $$t2040.1 + local.get $$t2040.0 + call $runtime.Block.Release + local.set $$t2040.0 + local.get $$t2040.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2034 + i32.mul + i32.add + local.set $$t2041.1 + local.get $$t2041.0 + call $runtime.Block.Release + local.set $$t2041.0 + local.get $$t2041.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2035 + i32.mul + i32.add + local.set $$t2042.1 + local.get $$t2042.0 + call $runtime.Block.Release + local.set $$t2042.0 + local.get $$t2042.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2036 + i32.mul + i32.add + local.set $$t2043.1 + local.get $$t2043.0 + call $runtime.Block.Release + local.set $$t2043.0 + local.get $$t2043.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2037 + i32.mul + i32.add + local.set $$t2044.1 + local.get $$t2044.0 + call $runtime.Block.Release + local.set $$t2044.0 + local.get $$t2044.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2038 + i32.mul + i32.add + local.set $$t2045.1 + local.get $$t2045.0 + call $runtime.Block.Release + local.set $$t2045.0 + local.get $$t2045.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2039 + i32.mul + i32.add + local.set $$t2046.1 + local.get $$t2046.0 + call $runtime.Block.Release + local.set $$t2046.0 + local.get $$t2046.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2040 + i32.mul + i32.add + local.set $$t2047.1 + local.get $$t2047.0 + call $runtime.Block.Release + local.set $$t2047.0 + local.get $$t2047.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2041 + i32.mul + i32.add + local.set $$t2048.1 + local.get $$t2048.0 + call $runtime.Block.Release + local.set $$t2048.0 + local.get $$t2048.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2042 + i32.mul + i32.add + local.set $$t2049.1 + local.get $$t2049.0 + call $runtime.Block.Release + local.set $$t2049.0 + local.get $$t2049.1 + i32.const 250 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2043 + i32.mul + i32.add + local.set $$t2050.1 + local.get $$t2050.0 + call $runtime.Block.Release + local.set $$t2050.0 + local.get $$t2050.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2044 + i32.mul + i32.add + local.set $$t2051.1 + local.get $$t2051.0 + call $runtime.Block.Release + local.set $$t2051.0 + local.get $$t2051.1 + i32.const 170 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2045 + i32.mul + i32.add + local.set $$t2052.1 + local.get $$t2052.0 + call $runtime.Block.Release + local.set $$t2052.0 + local.get $$t2052.1 + i32.const 175 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2046 + i32.mul + i32.add + local.set $$t2053.1 + local.get $$t2053.0 + call $runtime.Block.Release + local.set $$t2053.0 + local.get $$t2053.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2047 + i32.mul + i32.add + local.set $$t2054.1 + local.get $$t2054.0 + call $runtime.Block.Release + local.set $$t2054.0 + local.get $$t2054.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2048 + i32.mul + i32.add + local.set $$t2055.1 + local.get $$t2055.0 + call $runtime.Block.Release + local.set $$t2055.0 + local.get $$t2055.1 + i32.const 3 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2049 + i32.mul + i32.add + local.set $$t2056.1 + local.get $$t2056.0 + call $runtime.Block.Release + local.set $$t2056.0 + local.get $$t2056.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2050 + i32.mul + i32.add + local.set $$t2057.1 + local.get $$t2057.0 + call $runtime.Block.Release + local.set $$t2057.0 + local.get $$t2057.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2051 + i32.mul + i32.add + local.set $$t2058.1 + local.get $$t2058.0 + call $runtime.Block.Release + local.set $$t2058.0 + local.get $$t2058.1 + i32.const 192 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2052 + i32.mul + i32.add + local.set $$t2059.1 + local.get $$t2059.0 + call $runtime.Block.Release + local.set $$t2059.0 + local.get $$t2059.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2053 + i32.mul + i32.add + local.set $$t2060.1 + local.get $$t2060.0 + call $runtime.Block.Release + local.set $$t2060.0 + local.get $$t2060.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2054 + i32.mul + i32.add + local.set $$t2061.1 + local.get $$t2061.0 + call $runtime.Block.Release + local.set $$t2061.0 + local.get $$t2061.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2055 + i32.mul + i32.add + local.set $$t2062.1 + local.get $$t2062.0 + call $runtime.Block.Release + local.set $$t2062.0 + local.get $$t2062.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2056 + i32.mul + i32.add + local.set $$t2063.1 + local.get $$t2063.0 + call $runtime.Block.Release + local.set $$t2063.0 + local.get $$t2063.1 + i32.const 85 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2057 + i32.mul + i32.add + local.set $$t2064.1 + local.get $$t2064.0 + call $runtime.Block.Release + local.set $$t2064.0 + local.get $$t2064.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2058 + i32.mul + i32.add + local.set $$t2065.1 + local.get $$t2065.0 + call $runtime.Block.Release + local.set $$t2065.0 + local.get $$t2065.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2059 + i32.mul + i32.add + local.set $$t2066.1 + local.get $$t2066.0 + call $runtime.Block.Release + local.set $$t2066.0 + local.get $$t2066.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2060 + i32.mul + i32.add + local.set $$t2067.1 + local.get $$t2067.0 + call $runtime.Block.Release + local.set $$t2067.0 + local.get $$t2067.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2061 + i32.mul + i32.add + local.set $$t2068.1 + local.get $$t2068.0 + call $runtime.Block.Release + local.set $$t2068.0 + local.get $$t2068.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2062 + i32.mul + i32.add + local.set $$t2069.1 + local.get $$t2069.0 + call $runtime.Block.Release + local.set $$t2069.0 + local.get $$t2069.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2063 + i32.mul + i32.add + local.set $$t2070.1 + local.get $$t2070.0 + call $runtime.Block.Release + local.set $$t2070.0 + local.get $$t2070.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2064 + i32.mul + i32.add + local.set $$t2071.1 + local.get $$t2071.0 + call $runtime.Block.Release + local.set $$t2071.0 + local.get $$t2071.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2065 + i32.mul + i32.add + local.set $$t2072.1 + local.get $$t2072.0 + call $runtime.Block.Release + local.set $$t2072.0 + local.get $$t2072.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2066 + i32.mul + i32.add + local.set $$t2073.1 + local.get $$t2073.0 + call $runtime.Block.Release + local.set $$t2073.0 + local.get $$t2073.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2067 + i32.mul + i32.add + local.set $$t2074.1 + local.get $$t2074.0 + call $runtime.Block.Release + local.set $$t2074.0 + local.get $$t2074.1 + i32.const 234 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2068 + i32.mul + i32.add + local.set $$t2075.1 + local.get $$t2075.0 + call $runtime.Block.Release + local.set $$t2075.0 + local.get $$t2075.1 + i32.const 171 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2069 + i32.mul + i32.add + local.set $$t2076.1 + local.get $$t2076.0 + call $runtime.Block.Release + local.set $$t2076.0 + local.get $$t2076.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2070 + i32.mul + i32.add + local.set $$t2077.1 + local.get $$t2077.0 + call $runtime.Block.Release + local.set $$t2077.0 + local.get $$t2077.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2071 + i32.mul + i32.add + local.set $$t2078.1 + local.get $$t2078.0 + call $runtime.Block.Release + local.set $$t2078.0 + local.get $$t2078.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2072 + i32.mul + i32.add + local.set $$t2079.1 + local.get $$t2079.0 + call $runtime.Block.Release + local.set $$t2079.0 + local.get $$t2079.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2073 + i32.mul + i32.add + local.set $$t2080.1 + local.get $$t2080.0 + call $runtime.Block.Release + local.set $$t2080.0 + local.get $$t2080.1 + i32.const 245 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2074 + i32.mul + i32.add + local.set $$t2081.1 + local.get $$t2081.0 + call $runtime.Block.Release + local.set $$t2081.0 + local.get $$t2081.1 + i32.const 95 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2075 + i32.mul + i32.add + local.set $$t2082.1 + local.get $$t2082.0 + call $runtime.Block.Release + local.set $$t2082.0 + local.get $$t2082.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2076 + i32.mul + i32.add + local.set $$t2083.1 + local.get $$t2083.0 + call $runtime.Block.Release + local.set $$t2083.0 + local.get $$t2083.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2077 + i32.mul + i32.add + local.set $$t2084.1 + local.get $$t2084.0 + call $runtime.Block.Release + local.set $$t2084.0 + local.get $$t2084.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2078 + i32.mul + i32.add + local.set $$t2085.1 + local.get $$t2085.0 + call $runtime.Block.Release + local.set $$t2085.0 + local.get $$t2085.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2079 + i32.mul + i32.add + local.set $$t2086.1 + local.get $$t2086.0 + call $runtime.Block.Release + local.set $$t2086.0 + local.get $$t2086.1 + i32.const 213 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2080 + i32.mul + i32.add + local.set $$t2087.1 + local.get $$t2087.0 + call $runtime.Block.Release + local.set $$t2087.0 + local.get $$t2087.1 + i32.const 87 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2081 + i32.mul + i32.add + local.set $$t2088.1 + local.get $$t2088.0 + call $runtime.Block.Release + local.set $$t2088.0 + local.get $$t2088.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2082 + i32.mul + i32.add + local.set $$t2089.1 + local.get $$t2089.0 + call $runtime.Block.Release + local.set $$t2089.0 + local.get $$t2089.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2083 + i32.mul + i32.add + local.set $$t2090.1 + local.get $$t2090.0 + call $runtime.Block.Release + local.set $$t2090.0 + local.get $$t2090.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2084 + i32.mul + i32.add + local.set $$t2091.1 + local.get $$t2091.0 + call $runtime.Block.Release + local.set $$t2091.0 + local.get $$t2091.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2085 + i32.mul + i32.add + local.set $$t2092.1 + local.get $$t2092.0 + call $runtime.Block.Release + local.set $$t2092.0 + local.get $$t2092.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2086 + i32.mul + i32.add + local.set $$t2093.1 + local.get $$t2093.0 + call $runtime.Block.Release + local.set $$t2093.0 + local.get $$t2093.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2087 + i32.mul + i32.add + local.set $$t2094.1 + local.get $$t2094.0 + call $runtime.Block.Release + local.set $$t2094.0 + local.get $$t2094.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2088 + i32.mul + i32.add + local.set $$t2095.1 + local.get $$t2095.0 + call $runtime.Block.Release + local.set $$t2095.0 + local.get $$t2095.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2089 + i32.mul + i32.add + local.set $$t2096.1 + local.get $$t2096.0 + call $runtime.Block.Release + local.set $$t2096.0 + local.get $$t2096.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2090 + i32.mul + i32.add + local.set $$t2097.1 + local.get $$t2097.0 + call $runtime.Block.Release + local.set $$t2097.0 + local.get $$t2097.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2091 + i32.mul + i32.add + local.set $$t2098.1 + local.get $$t2098.0 + call $runtime.Block.Release + local.set $$t2098.0 + local.get $$t2098.1 + i32.const 63 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2092 + i32.mul + i32.add + local.set $$t2099.1 + local.get $$t2099.0 + call $runtime.Block.Release + local.set $$t2099.0 + local.get $$t2099.1 + i32.const 252 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2093 + i32.mul + i32.add + local.set $$t2100.1 + local.get $$t2100.0 + call $runtime.Block.Release + local.set $$t2100.0 + local.get $$t2100.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2094 + i32.mul + i32.add + local.set $$t2101.1 + local.get $$t2101.0 + call $runtime.Block.Release + local.set $$t2101.0 + local.get $$t2101.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2095 + i32.mul + i32.add + local.set $$t2102.1 + local.get $$t2102.0 + call $runtime.Block.Release + local.set $$t2102.0 + local.get $$t2102.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2096 + i32.mul + i32.add + local.set $$t2103.1 + local.get $$t2103.0 + call $runtime.Block.Release + local.set $$t2103.0 + local.get $$t2103.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2097 + i32.mul + i32.add + local.set $$t2104.1 + local.get $$t2104.0 + call $runtime.Block.Release + local.set $$t2104.0 + local.get $$t2104.1 + i32.const 15 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2098 + i32.mul + i32.add + local.set $$t2105.1 + local.get $$t2105.0 + call $runtime.Block.Release + local.set $$t2105.0 + local.get $$t2105.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2099 + i32.mul + i32.add + local.set $$t2106.1 + local.get $$t2106.0 + call $runtime.Block.Release + local.set $$t2106.0 + local.get $$t2106.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2100 + i32.mul + i32.add + local.set $$t2107.1 + local.get $$t2107.0 + call $runtime.Block.Release + local.set $$t2107.0 + local.get $$t2107.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2101 + i32.mul + i32.add + local.set $$t2108.1 + local.get $$t2108.0 + call $runtime.Block.Release + local.set $$t2108.0 + local.get $$t2108.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2102 + i32.mul + i32.add + local.set $$t2109.1 + local.get $$t2109.0 + call $runtime.Block.Release + local.set $$t2109.0 + local.get $$t2109.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2103 + i32.mul + i32.add + local.set $$t2110.1 + local.get $$t2110.0 + call $runtime.Block.Release + local.set $$t2110.0 + local.get $$t2110.1 + i32.const 63 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2104 + i32.mul + i32.add + local.set $$t2111.1 + local.get $$t2111.0 + call $runtime.Block.Release + local.set $$t2111.0 + local.get $$t2111.1 + i32.const 252 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2105 + i32.mul + i32.add + local.set $$t2112.1 + local.get $$t2112.0 + call $runtime.Block.Release + local.set $$t2112.0 + local.get $$t2112.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2106 + i32.mul + i32.add + local.set $$t2113.1 + local.get $$t2113.0 + call $runtime.Block.Release + local.set $$t2113.0 + local.get $$t2113.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2107 + i32.mul + i32.add + local.set $$t2114.1 + local.get $$t2114.0 + call $runtime.Block.Release + local.set $$t2114.0 + local.get $$t2114.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2108 + i32.mul + i32.add + local.set $$t2115.1 + local.get $$t2115.0 + call $runtime.Block.Release + local.set $$t2115.0 + local.get $$t2115.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2109 + i32.mul + i32.add + local.set $$t2116.1 + local.get $$t2116.0 + call $runtime.Block.Release + local.set $$t2116.0 + local.get $$t2116.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2110 + i32.mul + i32.add + local.set $$t2117.1 + local.get $$t2117.0 + call $runtime.Block.Release + local.set $$t2117.0 + local.get $$t2117.1 + i32.const 0 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 2111 + i32.mul + i32.add + local.set $$t2118.1 + local.get $$t2118.0 + call $runtime.Block.Release + local.set $$t2118.0 + local.get $$t2118.1 + i32.const 240 + i32.store8 align=1 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 1 + i32.const 0 + i32.mul + i32.add + i32.const 2112 + i32.const 0 + i32.sub + i32.const 2112 + i32.const 0 + i32.sub + local.set $$t2119.3 + local.set $$t2119.2 + local.set $$t2119.1 + local.get $$t2119.0 + call $runtime.Block.Release + local.set $$t2119.0 + local.get $$t2.1 + i32.const 96 + i32.store + local.get $$t3.1 + i32.const 96 + i32.store + local.get $$t4.1 + i32.const 1 + i32.store + local.get $$t5.1 + local.get $$t2119.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t5.1 + local.get $$t2119.1 + i32.store offset=4 + local.get $$t5.1 + local.get $$t2119.2 + i32.store offset=8 + local.get $$t5.1 + local.get $$t2119.3 + i32.store offset=12 + i32.const 15044 + local.get $$t1.0 + call $runtime.Block.Retain + i32.const 15044 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 15044 + local.get $$t1.1 + i32.store offset=4 + i32.const 800 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 784 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2120.1 + local.get $$t2120.0 + call $runtime.Block.Release + local.set $$t2120.0 + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t2121.1 + local.get $$t2121.0 + call $runtime.Block.Release + local.set $$t2121.0 + local.get $$t2121.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t2122.1 + local.get $$t2122.0 + call $runtime.Block.Release + local.set $$t2122.0 + local.get $$t2122.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t2123.1 + local.get $$t2123.0 + call $runtime.Block.Release + local.set $$t2123.0 + local.get $$t2123.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 3 + i32.mul + i32.add + local.set $$t2124.1 + local.get $$t2124.0 + call $runtime.Block.Release + local.set $$t2124.0 + local.get $$t2124.1 + i32.const 5 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 4 + i32.mul + i32.add + local.set $$t2125.1 + local.get $$t2125.0 + call $runtime.Block.Release + local.set $$t2125.0 + local.get $$t2125.1 + i32.const 6 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 5 + i32.mul + i32.add + local.set $$t2126.1 + local.get $$t2126.0 + call $runtime.Block.Release + local.set $$t2126.0 + local.get $$t2126.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 6 + i32.mul + i32.add + local.set $$t2127.1 + local.get $$t2127.0 + call $runtime.Block.Release + local.set $$t2127.0 + local.get $$t2127.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 7 + i32.mul + i32.add + local.set $$t2128.1 + local.get $$t2128.0 + call $runtime.Block.Release + local.set $$t2128.0 + local.get $$t2128.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 8 + i32.mul + i32.add + local.set $$t2129.1 + local.get $$t2129.0 + call $runtime.Block.Release + local.set $$t2129.0 + local.get $$t2129.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 9 + i32.mul + i32.add + local.set $$t2130.1 + local.get $$t2130.0 + call $runtime.Block.Release + local.set $$t2130.0 + local.get $$t2130.1 + i32.const 5 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 10 + i32.mul + i32.add + local.set $$t2131.1 + local.get $$t2131.0 + call $runtime.Block.Release + local.set $$t2131.0 + local.get $$t2131.1 + i32.const 6 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 11 + i32.mul + i32.add + local.set $$t2132.1 + local.get $$t2132.0 + call $runtime.Block.Release + local.set $$t2132.0 + local.get $$t2132.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 12 + i32.mul + i32.add + local.set $$t2133.1 + local.get $$t2133.0 + call $runtime.Block.Release + local.set $$t2133.0 + local.get $$t2133.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 13 + i32.mul + i32.add + local.set $$t2134.1 + local.get $$t2134.0 + call $runtime.Block.Release + local.set $$t2134.0 + local.get $$t2134.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 14 + i32.mul + i32.add + local.set $$t2135.1 + local.get $$t2135.0 + call $runtime.Block.Release + local.set $$t2135.0 + local.get $$t2135.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 15 + i32.mul + i32.add + local.set $$t2136.1 + local.get $$t2136.0 + call $runtime.Block.Release + local.set $$t2136.0 + local.get $$t2136.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 16 + i32.mul + i32.add + local.set $$t2137.1 + local.get $$t2137.0 + call $runtime.Block.Release + local.set $$t2137.0 + local.get $$t2137.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 17 + i32.mul + i32.add + local.set $$t2138.1 + local.get $$t2138.0 + call $runtime.Block.Release + local.set $$t2138.0 + local.get $$t2138.1 + i32.const 17 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 18 + i32.mul + i32.add + local.set $$t2139.1 + local.get $$t2139.0 + call $runtime.Block.Release + local.set $$t2139.0 + local.get $$t2139.1 + i32.const 18 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 19 + i32.mul + i32.add + local.set $$t2140.1 + local.get $$t2140.0 + call $runtime.Block.Release + local.set $$t2140.0 + local.get $$t2140.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 20 + i32.mul + i32.add + local.set $$t2141.1 + local.get $$t2141.0 + call $runtime.Block.Release + local.set $$t2141.0 + local.get $$t2141.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 21 + i32.mul + i32.add + local.set $$t2142.1 + local.get $$t2142.0 + call $runtime.Block.Release + local.set $$t2142.0 + local.get $$t2142.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 22 + i32.mul + i32.add + local.set $$t2143.1 + local.get $$t2143.0 + call $runtime.Block.Release + local.set $$t2143.0 + local.get $$t2143.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 23 + i32.mul + i32.add + local.set $$t2144.1 + local.get $$t2144.0 + call $runtime.Block.Release + local.set $$t2144.0 + local.get $$t2144.1 + i32.const 17 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 24 + i32.mul + i32.add + local.set $$t2145.1 + local.get $$t2145.0 + call $runtime.Block.Release + local.set $$t2145.0 + local.get $$t2145.1 + i32.const 18 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 25 + i32.mul + i32.add + local.set $$t2146.1 + local.get $$t2146.0 + call $runtime.Block.Release + local.set $$t2146.0 + local.get $$t2146.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 26 + i32.mul + i32.add + local.set $$t2147.1 + local.get $$t2147.0 + call $runtime.Block.Release + local.set $$t2147.0 + local.get $$t2147.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 27 + i32.mul + i32.add + local.set $$t2148.1 + local.get $$t2148.0 + call $runtime.Block.Release + local.set $$t2148.0 + local.get $$t2148.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 28 + i32.mul + i32.add + local.set $$t2149.1 + local.get $$t2149.0 + call $runtime.Block.Release + local.set $$t2149.0 + local.get $$t2149.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 29 + i32.mul + i32.add + local.set $$t2150.1 + local.get $$t2150.0 + call $runtime.Block.Release + local.set $$t2150.0 + local.get $$t2150.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 30 + i32.mul + i32.add + local.set $$t2151.1 + local.get $$t2151.0 + call $runtime.Block.Release + local.set $$t2151.0 + local.get $$t2151.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 31 + i32.mul + i32.add + local.set $$t2152.1 + local.get $$t2152.0 + call $runtime.Block.Release + local.set $$t2152.0 + local.get $$t2152.1 + i32.const 41 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 32 + i32.mul + i32.add + local.set $$t2153.1 + local.get $$t2153.0 + call $runtime.Block.Release + local.set $$t2153.0 + local.get $$t2153.1 + i32.const 42 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 33 + i32.mul + i32.add + local.set $$t2154.1 + local.get $$t2154.0 + call $runtime.Block.Release + local.set $$t2154.0 + local.get $$t2154.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 34 + i32.mul + i32.add + local.set $$t2155.1 + local.get $$t2155.0 + call $runtime.Block.Release + local.set $$t2155.0 + local.get $$t2155.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 35 + i32.mul + i32.add + local.set $$t2156.1 + local.get $$t2156.0 + call $runtime.Block.Release + local.set $$t2156.0 + local.get $$t2156.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 36 + i32.mul + i32.add + local.set $$t2157.1 + local.get $$t2157.0 + call $runtime.Block.Release + local.set $$t2157.0 + local.get $$t2157.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 37 + i32.mul + i32.add + local.set $$t2158.1 + local.get $$t2158.0 + call $runtime.Block.Release + local.set $$t2158.0 + local.get $$t2158.1 + i32.const 41 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 38 + i32.mul + i32.add + local.set $$t2159.1 + local.get $$t2159.0 + call $runtime.Block.Release + local.set $$t2159.0 + local.get $$t2159.1 + i32.const 42 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 39 + i32.mul + i32.add + local.set $$t2160.1 + local.get $$t2160.0 + call $runtime.Block.Release + local.set $$t2160.0 + local.get $$t2160.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 40 + i32.mul + i32.add + local.set $$t2161.1 + local.get $$t2161.0 + call $runtime.Block.Release + local.set $$t2161.0 + local.get $$t2161.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 41 + i32.mul + i32.add + local.set $$t2162.1 + local.get $$t2162.0 + call $runtime.Block.Release + local.set $$t2162.0 + local.get $$t2162.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 42 + i32.mul + i32.add + local.set $$t2163.1 + local.get $$t2163.0 + call $runtime.Block.Release + local.set $$t2163.0 + local.get $$t2163.1 + i32.const 49 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 43 + i32.mul + i32.add + local.set $$t2164.1 + local.get $$t2164.0 + call $runtime.Block.Release + local.set $$t2164.0 + local.get $$t2164.1 + i32.const 50 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 44 + i32.mul + i32.add + local.set $$t2165.1 + local.get $$t2165.0 + call $runtime.Block.Release + local.set $$t2165.0 + local.get $$t2165.1 + i32.const 52 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 45 + i32.mul + i32.add + local.set $$t2166.1 + local.get $$t2166.0 + call $runtime.Block.Release + local.set $$t2166.0 + local.get $$t2166.1 + i32.const 53 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 46 + i32.mul + i32.add + local.set $$t2167.1 + local.get $$t2167.0 + call $runtime.Block.Release + local.set $$t2167.0 + local.get $$t2167.1 + i32.const 54 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 47 + i32.mul + i32.add + local.set $$t2168.1 + local.get $$t2168.0 + call $runtime.Block.Release + local.set $$t2168.0 + local.get $$t2168.1 + i32.const 57 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 48 + i32.mul + i32.add + local.set $$t2169.1 + local.get $$t2169.0 + call $runtime.Block.Release + local.set $$t2169.0 + local.get $$t2169.1 + i32.const 51 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 49 + i32.mul + i32.add + local.set $$t2170.1 + local.get $$t2170.0 + call $runtime.Block.Release + local.set $$t2170.0 + local.get $$t2170.1 + i32.const 51 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 50 + i32.mul + i32.add + local.set $$t2171.1 + local.get $$t2171.0 + call $runtime.Block.Release + local.set $$t2171.0 + local.get $$t2171.1 + i32.const 56 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 51 + i32.mul + i32.add + local.set $$t2172.1 + local.get $$t2172.0 + call $runtime.Block.Release + local.set $$t2172.0 + local.get $$t2172.1 + i32.const 53 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 52 + i32.mul + i32.add + local.set $$t2173.1 + local.get $$t2173.0 + call $runtime.Block.Release + local.set $$t2173.0 + local.get $$t2173.1 + i32.const 54 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 53 + i32.mul + i32.add + local.set $$t2174.1 + local.get $$t2174.0 + call $runtime.Block.Release + local.set $$t2174.0 + local.get $$t2174.1 + i32.const 55 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 54 + i32.mul + i32.add + local.set $$t2175.1 + local.get $$t2175.0 + call $runtime.Block.Release + local.set $$t2175.0 + local.get $$t2175.1 + i32.const 58 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 55 + i32.mul + i32.add + local.set $$t2176.1 + local.get $$t2176.0 + call $runtime.Block.Release + local.set $$t2176.0 + local.get $$t2176.1 + i32.const 59 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 56 + i32.mul + i32.add + local.set $$t2177.1 + local.get $$t2177.0 + call $runtime.Block.Release + local.set $$t2177.0 + local.get $$t2177.1 + i32.const 61 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 57 + i32.mul + i32.add + local.set $$t2178.1 + local.get $$t2178.0 + call $runtime.Block.Release + local.set $$t2178.0 + local.get $$t2178.1 + i32.const 62 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 58 + i32.mul + i32.add + local.set $$t2179.1 + local.get $$t2179.0 + call $runtime.Block.Release + local.set $$t2179.0 + local.get $$t2179.1 + i32.const 64 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 59 + i32.mul + i32.add + local.set $$t2180.1 + local.get $$t2180.0 + call $runtime.Block.Release + local.set $$t2180.0 + local.get $$t2180.1 + i32.const 65 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 60 + i32.mul + i32.add + local.set $$t2181.1 + local.get $$t2181.0 + call $runtime.Block.Release + local.set $$t2181.0 + local.get $$t2181.1 + i32.const 66 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 61 + i32.mul + i32.add + local.set $$t2182.1 + local.get $$t2182.0 + call $runtime.Block.Release + local.set $$t2182.0 + local.get $$t2182.1 + i32.const 69 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 62 + i32.mul + i32.add + local.set $$t2183.1 + local.get $$t2183.0 + call $runtime.Block.Release + local.set $$t2183.0 + local.get $$t2183.1 + i32.const 63 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 63 + i32.mul + i32.add + local.set $$t2184.1 + local.get $$t2184.0 + call $runtime.Block.Release + local.set $$t2184.0 + local.get $$t2184.1 + i32.const 63 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 64 + i32.mul + i32.add + local.set $$t2185.1 + local.get $$t2185.0 + call $runtime.Block.Release + local.set $$t2185.0 + local.get $$t2185.1 + i32.const 68 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 65 + i32.mul + i32.add + local.set $$t2186.1 + local.get $$t2186.0 + call $runtime.Block.Release + local.set $$t2186.0 + local.get $$t2186.1 + i32.const 65 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 66 + i32.mul + i32.add + local.set $$t2187.1 + local.get $$t2187.0 + call $runtime.Block.Release + local.set $$t2187.0 + local.get $$t2187.1 + i32.const 66 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 67 + i32.mul + i32.add + local.set $$t2188.1 + local.get $$t2188.0 + call $runtime.Block.Release + local.set $$t2188.0 + local.get $$t2188.1 + i32.const 67 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 68 + i32.mul + i32.add + local.set $$t2189.1 + local.get $$t2189.0 + call $runtime.Block.Release + local.set $$t2189.0 + local.get $$t2189.1 + i32.const 70 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 69 + i32.mul + i32.add + local.set $$t2190.1 + local.get $$t2190.0 + call $runtime.Block.Release + local.set $$t2190.0 + local.get $$t2190.1 + i32.const 71 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 70 + i32.mul + i32.add + local.set $$t2191.1 + local.get $$t2191.0 + call $runtime.Block.Release + local.set $$t2191.0 + local.get $$t2191.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 71 + i32.mul + i32.add + local.set $$t2192.1 + local.get $$t2192.0 + call $runtime.Block.Release + local.set $$t2192.0 + local.get $$t2192.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 72 + i32.mul + i32.add + local.set $$t2193.1 + local.get $$t2193.0 + call $runtime.Block.Release + local.set $$t2193.0 + local.get $$t2193.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 73 + i32.mul + i32.add + local.set $$t2194.1 + local.get $$t2194.0 + call $runtime.Block.Release + local.set $$t2194.0 + local.get $$t2194.1 + i32.const 101 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 74 + i32.mul + i32.add + local.set $$t2195.1 + local.get $$t2195.0 + call $runtime.Block.Release + local.set $$t2195.0 + local.get $$t2195.1 + i32.const 102 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 75 + i32.mul + i32.add + local.set $$t2196.1 + local.get $$t2196.0 + call $runtime.Block.Release + local.set $$t2196.0 + local.get $$t2196.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 76 + i32.mul + i32.add + local.set $$t2197.1 + local.get $$t2197.0 + call $runtime.Block.Release + local.set $$t2197.0 + local.get $$t2197.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 77 + i32.mul + i32.add + local.set $$t2198.1 + local.get $$t2198.0 + call $runtime.Block.Release + local.set $$t2198.0 + local.get $$t2198.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 78 + i32.mul + i32.add + local.set $$t2199.1 + local.get $$t2199.0 + call $runtime.Block.Release + local.set $$t2199.0 + local.get $$t2199.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 79 + i32.mul + i32.add + local.set $$t2200.1 + local.get $$t2200.0 + call $runtime.Block.Release + local.set $$t2200.0 + local.get $$t2200.1 + i32.const 101 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 80 + i32.mul + i32.add + local.set $$t2201.1 + local.get $$t2201.0 + call $runtime.Block.Release + local.set $$t2201.0 + local.get $$t2201.1 + i32.const 102 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 81 + i32.mul + i32.add + local.set $$t2202.1 + local.get $$t2202.0 + call $runtime.Block.Release + local.set $$t2202.0 + local.get $$t2202.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 82 + i32.mul + i32.add + local.set $$t2203.1 + local.get $$t2203.0 + call $runtime.Block.Release + local.set $$t2203.0 + local.get $$t2203.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 83 + i32.mul + i32.add + local.set $$t2204.1 + local.get $$t2204.0 + call $runtime.Block.Release + local.set $$t2204.0 + local.get $$t2204.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 84 + i32.mul + i32.add + local.set $$t2205.1 + local.get $$t2205.0 + call $runtime.Block.Release + local.set $$t2205.0 + local.get $$t2205.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 85 + i32.mul + i32.add + local.set $$t2206.1 + local.get $$t2206.0 + call $runtime.Block.Release + local.set $$t2206.0 + local.get $$t2206.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 86 + i32.mul + i32.add + local.set $$t2207.1 + local.get $$t2207.0 + call $runtime.Block.Release + local.set $$t2207.0 + local.get $$t2207.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 87 + i32.mul + i32.add + local.set $$t2208.1 + local.get $$t2208.0 + call $runtime.Block.Release + local.set $$t2208.0 + local.get $$t2208.1 + i32.const 29 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 88 + i32.mul + i32.add + local.set $$t2209.1 + local.get $$t2209.0 + call $runtime.Block.Release + local.set $$t2209.0 + local.get $$t2209.1 + i32.const 30 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 89 + i32.mul + i32.add + local.set $$t2210.1 + local.get $$t2210.0 + call $runtime.Block.Release + local.set $$t2210.0 + local.get $$t2210.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 90 + i32.mul + i32.add + local.set $$t2211.1 + local.get $$t2211.0 + call $runtime.Block.Release + local.set $$t2211.0 + local.get $$t2211.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 91 + i32.mul + i32.add + local.set $$t2212.1 + local.get $$t2212.0 + call $runtime.Block.Release + local.set $$t2212.0 + local.get $$t2212.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 92 + i32.mul + i32.add + local.set $$t2213.1 + local.get $$t2213.0 + call $runtime.Block.Release + local.set $$t2213.0 + local.get $$t2213.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 93 + i32.mul + i32.add + local.set $$t2214.1 + local.get $$t2214.0 + call $runtime.Block.Release + local.set $$t2214.0 + local.get $$t2214.1 + i32.const 29 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 94 + i32.mul + i32.add + local.set $$t2215.1 + local.get $$t2215.0 + call $runtime.Block.Release + local.set $$t2215.0 + local.get $$t2215.1 + i32.const 30 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 95 + i32.mul + i32.add + local.set $$t2216.1 + local.get $$t2216.0 + call $runtime.Block.Release + local.set $$t2216.0 + local.get $$t2216.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 96 + i32.mul + i32.add + local.set $$t2217.1 + local.get $$t2217.0 + call $runtime.Block.Release + local.set $$t2217.0 + local.get $$t2217.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 97 + i32.mul + i32.add + local.set $$t2218.1 + local.get $$t2218.0 + call $runtime.Block.Release + local.set $$t2218.0 + local.get $$t2218.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 98 + i32.mul + i32.add + local.set $$t2219.1 + local.get $$t2219.0 + call $runtime.Block.Release + local.set $$t2219.0 + local.get $$t2219.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 99 + i32.mul + i32.add + local.set $$t2220.1 + local.get $$t2220.0 + call $runtime.Block.Release + local.set $$t2220.0 + local.get $$t2220.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 100 + i32.mul + i32.add + local.set $$t2221.1 + local.get $$t2221.0 + call $runtime.Block.Release + local.set $$t2221.0 + local.get $$t2221.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 101 + i32.mul + i32.add + local.set $$t2222.1 + local.get $$t2222.0 + call $runtime.Block.Release + local.set $$t2222.0 + local.get $$t2222.1 + i32.const 29 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 102 + i32.mul + i32.add + local.set $$t2223.1 + local.get $$t2223.0 + call $runtime.Block.Release + local.set $$t2223.0 + local.get $$t2223.1 + i32.const 30 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 103 + i32.mul + i32.add + local.set $$t2224.1 + local.get $$t2224.0 + call $runtime.Block.Release + local.set $$t2224.0 + local.get $$t2224.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 104 + i32.mul + i32.add + local.set $$t2225.1 + local.get $$t2225.0 + call $runtime.Block.Release + local.set $$t2225.0 + local.get $$t2225.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 105 + i32.mul + i32.add + local.set $$t2226.1 + local.get $$t2226.0 + call $runtime.Block.Release + local.set $$t2226.0 + local.get $$t2226.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 106 + i32.mul + i32.add + local.set $$t2227.1 + local.get $$t2227.0 + call $runtime.Block.Release + local.set $$t2227.0 + local.get $$t2227.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 107 + i32.mul + i32.add + local.set $$t2228.1 + local.get $$t2228.0 + call $runtime.Block.Release + local.set $$t2228.0 + local.get $$t2228.1 + i32.const 29 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 108 + i32.mul + i32.add + local.set $$t2229.1 + local.get $$t2229.0 + call $runtime.Block.Release + local.set $$t2229.0 + local.get $$t2229.1 + i32.const 30 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 109 + i32.mul + i32.add + local.set $$t2230.1 + local.get $$t2230.0 + call $runtime.Block.Release + local.set $$t2230.0 + local.get $$t2230.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 110 + i32.mul + i32.add + local.set $$t2231.1 + local.get $$t2231.0 + call $runtime.Block.Release + local.set $$t2231.0 + local.get $$t2231.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 111 + i32.mul + i32.add + local.set $$t2232.1 + local.get $$t2232.0 + call $runtime.Block.Release + local.set $$t2232.0 + local.get $$t2232.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 112 + i32.mul + i32.add + local.set $$t2233.1 + local.get $$t2233.0 + call $runtime.Block.Release + local.set $$t2233.0 + local.get $$t2233.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 113 + i32.mul + i32.add + local.set $$t2234.1 + local.get $$t2234.0 + call $runtime.Block.Release + local.set $$t2234.0 + local.get $$t2234.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 114 + i32.mul + i32.add + local.set $$t2235.1 + local.get $$t2235.0 + call $runtime.Block.Release + local.set $$t2235.0 + local.get $$t2235.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 115 + i32.mul + i32.add + local.set $$t2236.1 + local.get $$t2236.0 + call $runtime.Block.Release + local.set $$t2236.0 + local.get $$t2236.1 + i32.const 89 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 116 + i32.mul + i32.add + local.set $$t2237.1 + local.get $$t2237.0 + call $runtime.Block.Release + local.set $$t2237.0 + local.get $$t2237.1 + i32.const 90 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 117 + i32.mul + i32.add + local.set $$t2238.1 + local.get $$t2238.0 + call $runtime.Block.Release + local.set $$t2238.0 + local.get $$t2238.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 118 + i32.mul + i32.add + local.set $$t2239.1 + local.get $$t2239.0 + call $runtime.Block.Release + local.set $$t2239.0 + local.get $$t2239.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 119 + i32.mul + i32.add + local.set $$t2240.1 + local.get $$t2240.0 + call $runtime.Block.Release + local.set $$t2240.0 + local.get $$t2240.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 120 + i32.mul + i32.add + local.set $$t2241.1 + local.get $$t2241.0 + call $runtime.Block.Release + local.set $$t2241.0 + local.get $$t2241.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 121 + i32.mul + i32.add + local.set $$t2242.1 + local.get $$t2242.0 + call $runtime.Block.Release + local.set $$t2242.0 + local.get $$t2242.1 + i32.const 89 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 122 + i32.mul + i32.add + local.set $$t2243.1 + local.get $$t2243.0 + call $runtime.Block.Release + local.set $$t2243.0 + local.get $$t2243.1 + i32.const 90 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 123 + i32.mul + i32.add + local.set $$t2244.1 + local.get $$t2244.0 + call $runtime.Block.Release + local.set $$t2244.0 + local.get $$t2244.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 124 + i32.mul + i32.add + local.set $$t2245.1 + local.get $$t2245.0 + call $runtime.Block.Release + local.set $$t2245.0 + local.get $$t2245.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 125 + i32.mul + i32.add + local.set $$t2246.1 + local.get $$t2246.0 + call $runtime.Block.Release + local.set $$t2246.0 + local.get $$t2246.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 126 + i32.mul + i32.add + local.set $$t2247.1 + local.get $$t2247.0 + call $runtime.Block.Release + local.set $$t2247.0 + local.get $$t2247.1 + i32.const 49 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 127 + i32.mul + i32.add + local.set $$t2248.1 + local.get $$t2248.0 + call $runtime.Block.Release + local.set $$t2248.0 + local.get $$t2248.1 + i32.const 50 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 128 + i32.mul + i32.add + local.set $$t2249.1 + local.get $$t2249.0 + call $runtime.Block.Release + local.set $$t2249.0 + local.get $$t2249.1 + i32.const 52 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 129 + i32.mul + i32.add + local.set $$t2250.1 + local.get $$t2250.0 + call $runtime.Block.Release + local.set $$t2250.0 + local.get $$t2250.1 + i32.const 53 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 130 + i32.mul + i32.add + local.set $$t2251.1 + local.get $$t2251.0 + call $runtime.Block.Release + local.set $$t2251.0 + local.get $$t2251.1 + i32.const 54 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 131 + i32.mul + i32.add + local.set $$t2252.1 + local.get $$t2252.0 + call $runtime.Block.Release + local.set $$t2252.0 + local.get $$t2252.1 + i32.const 57 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 132 + i32.mul + i32.add + local.set $$t2253.1 + local.get $$t2253.0 + call $runtime.Block.Release + local.set $$t2253.0 + local.get $$t2253.1 + i32.const 51 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 133 + i32.mul + i32.add + local.set $$t2254.1 + local.get $$t2254.0 + call $runtime.Block.Release + local.set $$t2254.0 + local.get $$t2254.1 + i32.const 51 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 134 + i32.mul + i32.add + local.set $$t2255.1 + local.get $$t2255.0 + call $runtime.Block.Release + local.set $$t2255.0 + local.get $$t2255.1 + i32.const 56 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 135 + i32.mul + i32.add + local.set $$t2256.1 + local.get $$t2256.0 + call $runtime.Block.Release + local.set $$t2256.0 + local.get $$t2256.1 + i32.const 53 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 136 + i32.mul + i32.add + local.set $$t2257.1 + local.get $$t2257.0 + call $runtime.Block.Release + local.set $$t2257.0 + local.get $$t2257.1 + i32.const 54 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 137 + i32.mul + i32.add + local.set $$t2258.1 + local.get $$t2258.0 + call $runtime.Block.Release + local.set $$t2258.0 + local.get $$t2258.1 + i32.const 55 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 138 + i32.mul + i32.add + local.set $$t2259.1 + local.get $$t2259.0 + call $runtime.Block.Release + local.set $$t2259.0 + local.get $$t2259.1 + i32.const 58 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 139 + i32.mul + i32.add + local.set $$t2260.1 + local.get $$t2260.0 + call $runtime.Block.Release + local.set $$t2260.0 + local.get $$t2260.1 + i32.const 59 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 140 + i32.mul + i32.add + local.set $$t2261.1 + local.get $$t2261.0 + call $runtime.Block.Release + local.set $$t2261.0 + local.get $$t2261.1 + i32.const 61 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 141 + i32.mul + i32.add + local.set $$t2262.1 + local.get $$t2262.0 + call $runtime.Block.Release + local.set $$t2262.0 + local.get $$t2262.1 + i32.const 62 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 142 + i32.mul + i32.add + local.set $$t2263.1 + local.get $$t2263.0 + call $runtime.Block.Release + local.set $$t2263.0 + local.get $$t2263.1 + i32.const 64 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 143 + i32.mul + i32.add + local.set $$t2264.1 + local.get $$t2264.0 + call $runtime.Block.Release + local.set $$t2264.0 + local.get $$t2264.1 + i32.const 65 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 144 + i32.mul + i32.add + local.set $$t2265.1 + local.get $$t2265.0 + call $runtime.Block.Release + local.set $$t2265.0 + local.get $$t2265.1 + i32.const 66 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 145 + i32.mul + i32.add + local.set $$t2266.1 + local.get $$t2266.0 + call $runtime.Block.Release + local.set $$t2266.0 + local.get $$t2266.1 + i32.const 69 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 146 + i32.mul + i32.add + local.set $$t2267.1 + local.get $$t2267.0 + call $runtime.Block.Release + local.set $$t2267.0 + local.get $$t2267.1 + i32.const 63 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 147 + i32.mul + i32.add + local.set $$t2268.1 + local.get $$t2268.0 + call $runtime.Block.Release + local.set $$t2268.0 + local.get $$t2268.1 + i32.const 63 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 148 + i32.mul + i32.add + local.set $$t2269.1 + local.get $$t2269.0 + call $runtime.Block.Release + local.set $$t2269.0 + local.get $$t2269.1 + i32.const 68 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 149 + i32.mul + i32.add + local.set $$t2270.1 + local.get $$t2270.0 + call $runtime.Block.Release + local.set $$t2270.0 + local.get $$t2270.1 + i32.const 65 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 150 + i32.mul + i32.add + local.set $$t2271.1 + local.get $$t2271.0 + call $runtime.Block.Release + local.set $$t2271.0 + local.get $$t2271.1 + i32.const 66 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 151 + i32.mul + i32.add + local.set $$t2272.1 + local.get $$t2272.0 + call $runtime.Block.Release + local.set $$t2272.0 + local.get $$t2272.1 + i32.const 67 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 152 + i32.mul + i32.add + local.set $$t2273.1 + local.get $$t2273.0 + call $runtime.Block.Release + local.set $$t2273.0 + local.get $$t2273.1 + i32.const 70 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 153 + i32.mul + i32.add + local.set $$t2274.1 + local.get $$t2274.0 + call $runtime.Block.Release + local.set $$t2274.0 + local.get $$t2274.1 + i32.const 71 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 154 + i32.mul + i32.add + local.set $$t2275.1 + local.get $$t2275.0 + call $runtime.Block.Release + local.set $$t2275.0 + local.get $$t2275.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 155 + i32.mul + i32.add + local.set $$t2276.1 + local.get $$t2276.0 + call $runtime.Block.Release + local.set $$t2276.0 + local.get $$t2276.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 156 + i32.mul + i32.add + local.set $$t2277.1 + local.get $$t2277.0 + call $runtime.Block.Release + local.set $$t2277.0 + local.get $$t2277.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 157 + i32.mul + i32.add + local.set $$t2278.1 + local.get $$t2278.0 + call $runtime.Block.Release + local.set $$t2278.0 + local.get $$t2278.1 + i32.const 77 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 158 + i32.mul + i32.add + local.set $$t2279.1 + local.get $$t2279.0 + call $runtime.Block.Release + local.set $$t2279.0 + local.get $$t2279.1 + i32.const 78 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 159 + i32.mul + i32.add + local.set $$t2280.1 + local.get $$t2280.0 + call $runtime.Block.Release + local.set $$t2280.0 + local.get $$t2280.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 160 + i32.mul + i32.add + local.set $$t2281.1 + local.get $$t2281.0 + call $runtime.Block.Release + local.set $$t2281.0 + local.get $$t2281.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 161 + i32.mul + i32.add + local.set $$t2282.1 + local.get $$t2282.0 + call $runtime.Block.Release + local.set $$t2282.0 + local.get $$t2282.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 162 + i32.mul + i32.add + local.set $$t2283.1 + local.get $$t2283.0 + call $runtime.Block.Release + local.set $$t2283.0 + local.get $$t2283.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 163 + i32.mul + i32.add + local.set $$t2284.1 + local.get $$t2284.0 + call $runtime.Block.Release + local.set $$t2284.0 + local.get $$t2284.1 + i32.const 77 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 164 + i32.mul + i32.add + local.set $$t2285.1 + local.get $$t2285.0 + call $runtime.Block.Release + local.set $$t2285.0 + local.get $$t2285.1 + i32.const 78 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 165 + i32.mul + i32.add + local.set $$t2286.1 + local.get $$t2286.0 + call $runtime.Block.Release + local.set $$t2286.0 + local.get $$t2286.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 166 + i32.mul + i32.add + local.set $$t2287.1 + local.get $$t2287.0 + call $runtime.Block.Release + local.set $$t2287.0 + local.get $$t2287.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 167 + i32.mul + i32.add + local.set $$t2288.1 + local.get $$t2288.0 + call $runtime.Block.Release + local.set $$t2288.0 + local.get $$t2288.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 168 + i32.mul + i32.add + local.set $$t2289.1 + local.get $$t2289.0 + call $runtime.Block.Release + local.set $$t2289.0 + local.get $$t2289.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 169 + i32.mul + i32.add + local.set $$t2290.1 + local.get $$t2290.0 + call $runtime.Block.Release + local.set $$t2290.0 + local.get $$t2290.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 170 + i32.mul + i32.add + local.set $$t2291.1 + local.get $$t2291.0 + call $runtime.Block.Release + local.set $$t2291.0 + local.get $$t2291.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 171 + i32.mul + i32.add + local.set $$t2292.1 + local.get $$t2292.0 + call $runtime.Block.Release + local.set $$t2292.0 + local.get $$t2292.1 + i32.const 113 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 172 + i32.mul + i32.add + local.set $$t2293.1 + local.get $$t2293.0 + call $runtime.Block.Release + local.set $$t2293.0 + local.get $$t2293.1 + i32.const 114 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 173 + i32.mul + i32.add + local.set $$t2294.1 + local.get $$t2294.0 + call $runtime.Block.Release + local.set $$t2294.0 + local.get $$t2294.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 174 + i32.mul + i32.add + local.set $$t2295.1 + local.get $$t2295.0 + call $runtime.Block.Release + local.set $$t2295.0 + local.get $$t2295.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 175 + i32.mul + i32.add + local.set $$t2296.1 + local.get $$t2296.0 + call $runtime.Block.Release + local.set $$t2296.0 + local.get $$t2296.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 176 + i32.mul + i32.add + local.set $$t2297.1 + local.get $$t2297.0 + call $runtime.Block.Release + local.set $$t2297.0 + local.get $$t2297.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 177 + i32.mul + i32.add + local.set $$t2298.1 + local.get $$t2298.0 + call $runtime.Block.Release + local.set $$t2298.0 + local.get $$t2298.1 + i32.const 113 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 178 + i32.mul + i32.add + local.set $$t2299.1 + local.get $$t2299.0 + call $runtime.Block.Release + local.set $$t2299.0 + local.get $$t2299.1 + i32.const 114 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 179 + i32.mul + i32.add + local.set $$t2300.1 + local.get $$t2300.0 + call $runtime.Block.Release + local.set $$t2300.0 + local.get $$t2300.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 180 + i32.mul + i32.add + local.set $$t2301.1 + local.get $$t2301.0 + call $runtime.Block.Release + local.set $$t2301.0 + local.get $$t2301.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 181 + i32.mul + i32.add + local.set $$t2302.1 + local.get $$t2302.0 + call $runtime.Block.Release + local.set $$t2302.0 + local.get $$t2302.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 182 + i32.mul + i32.add + local.set $$t2303.1 + local.get $$t2303.0 + call $runtime.Block.Release + local.set $$t2303.0 + local.get $$t2303.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 183 + i32.mul + i32.add + local.set $$t2304.1 + local.get $$t2304.0 + call $runtime.Block.Release + local.set $$t2304.0 + local.get $$t2304.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 184 + i32.mul + i32.add + local.set $$t2305.1 + local.get $$t2305.0 + call $runtime.Block.Release + local.set $$t2305.0 + local.get $$t2305.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 185 + i32.mul + i32.add + local.set $$t2306.1 + local.get $$t2306.0 + call $runtime.Block.Release + local.set $$t2306.0 + local.get $$t2306.1 + i32.const 125 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 186 + i32.mul + i32.add + local.set $$t2307.1 + local.get $$t2307.0 + call $runtime.Block.Release + local.set $$t2307.0 + local.get $$t2307.1 + i32.const 126 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 187 + i32.mul + i32.add + local.set $$t2308.1 + local.get $$t2308.0 + call $runtime.Block.Release + local.set $$t2308.0 + local.get $$t2308.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 188 + i32.mul + i32.add + local.set $$t2309.1 + local.get $$t2309.0 + call $runtime.Block.Release + local.set $$t2309.0 + local.get $$t2309.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 189 + i32.mul + i32.add + local.set $$t2310.1 + local.get $$t2310.0 + call $runtime.Block.Release + local.set $$t2310.0 + local.get $$t2310.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 190 + i32.mul + i32.add + local.set $$t2311.1 + local.get $$t2311.0 + call $runtime.Block.Release + local.set $$t2311.0 + local.get $$t2311.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 191 + i32.mul + i32.add + local.set $$t2312.1 + local.get $$t2312.0 + call $runtime.Block.Release + local.set $$t2312.0 + local.get $$t2312.1 + i32.const 125 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 192 + i32.mul + i32.add + local.set $$t2313.1 + local.get $$t2313.0 + call $runtime.Block.Release + local.set $$t2313.0 + local.get $$t2313.1 + i32.const 126 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 193 + i32.mul + i32.add + local.set $$t2314.1 + local.get $$t2314.0 + call $runtime.Block.Release + local.set $$t2314.0 + local.get $$t2314.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 194 + i32.mul + i32.add + local.set $$t2315.1 + local.get $$t2315.0 + call $runtime.Block.Release + local.set $$t2315.0 + local.get $$t2315.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 195 + i32.mul + i32.add + local.set $$t2316.1 + local.get $$t2316.0 + call $runtime.Block.Release + local.set $$t2316.0 + local.get $$t2316.1 + i32.const 0 + i32.store + local.get $$t2120.0 + call $runtime.Block.Retain + local.get $$t2120.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + i32.const 196 + i32.const 0 + i32.sub + i32.const 196 + i32.const 0 + i32.sub + local.set $$t2317.3 + local.set $$t2317.2 + local.set $$t2317.1 + local.get $$t2317.0 + call $runtime.Block.Release + local.set $$t2317.0 + i32.const 14792 + local.get $$t2317.0 + call $runtime.Block.Retain + i32.const 14792 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14792 + local.get $$t2317.1 + i32.store offset=4 + i32.const 14792 + local.get $$t2317.2 + i32.store offset=8 + i32.const 14792 + local.get $$t2317.3 + i32.store offset=12 + call $syscall$wasm4.GetGamePad1 + local.set $$t2318 + call $syscall$wasm4.GetMouseX + local.set $$t2319 + call $syscall$wasm4.GetMouseY + local.set $$t2320 + call $syscall$wasm4.GetMouseButtons + local.set $$t2321 + local.get $$t2321 + local.set $$t2322 + i32.const 15030 + local.get $$t2318 + i32.store8 align=1 + i32.const 15032 + local.get $$t2319 + i32.store + i32.const 15036 + local.get $$t2320 + i32.store + i32.const 15040 + local.get $$t2322 + i32.store + i32.const 144 + call $runtime.HeapAlloc + i32.const 1 + i32.const 25 + i32.const 128 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2323.1 + local.get $$t2323.0 + call $runtime.Block.Release + local.set $$t2323.0 + local.get $$t2323.0 + call $runtime.Block.Retain + local.get $$t2323.1 + i32.const 36 + i32.add + local.set $$t2324.1 + local.get $$t2324.0 + call $runtime.Block.Release + local.set $$t2324.0 + local.get $$t2324.1 + i32.const 1 + i32.store + i32.const 14808 + local.get $$t2323.0 + call $runtime.Block.Retain + i32.const 14808 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14808 + local.get $$t2323.1 + i32.store offset=4 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2325.1 + local.get $$t2325.0 + call $runtime.Block.Release + local.set $$t2325.0 + local.get $$t2325.0 + call $runtime.Block.Retain + local.get $$t2325.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2326.1 + local.get $$t2326.0 + call $runtime.Block.Release + local.set $$t2326.0 + local.get $$t2326.0 + call $runtime.Block.Retain + local.get $$t2326.1 + i32.const 0 + i32.add + local.set $$t2327.1 + local.get $$t2327.0 + call $runtime.Block.Release + local.set $$t2327.0 + local.get $$t2326.0 + call $runtime.Block.Retain + local.get $$t2326.1 + i32.const 4 + i32.add + local.set $$t2328.1 + local.get $$t2328.0 + call $runtime.Block.Release + local.set $$t2328.0 + local.get $$t2328.0 + call $runtime.Block.Retain + local.get $$t2328.1 + i32.const 0 + i32.add + local.set $$t2329.1 + local.get $$t2329.0 + call $runtime.Block.Release + local.set $$t2329.0 + local.get $$t2328.0 + call $runtime.Block.Retain + local.get $$t2328.1 + i32.const 4 + i32.add + local.set $$t2330.1 + local.get $$t2330.0 + call $runtime.Block.Release + local.set $$t2330.0 + local.get $$t2327.1 + i32.const 30 + i32.store + local.get $$t2329.1 + i32.const 0 + i32.store + local.get $$t2330.1 + i32.const 0 + i32.store + local.get $$t2325.0 + call $runtime.Block.Retain + local.get $$t2325.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2331.1 + local.get $$t2331.0 + call $runtime.Block.Release + local.set $$t2331.0 + local.get $$t2331.0 + call $runtime.Block.Retain + local.get $$t2331.1 + i32.const 0 + i32.add + local.set $$t2332.1 + local.get $$t2332.0 + call $runtime.Block.Release + local.set $$t2332.0 + local.get $$t2331.0 + call $runtime.Block.Retain + local.get $$t2331.1 + i32.const 4 + i32.add + local.set $$t2333.1 + local.get $$t2333.0 + call $runtime.Block.Release + local.set $$t2333.0 + local.get $$t2333.0 + call $runtime.Block.Retain + local.get $$t2333.1 + i32.const 0 + i32.add + local.set $$t2334.1 + local.get $$t2334.0 + call $runtime.Block.Release + local.set $$t2334.0 + local.get $$t2333.0 + call $runtime.Block.Retain + local.get $$t2333.1 + i32.const 4 + i32.add + local.set $$t2335.1 + local.get $$t2335.0 + call $runtime.Block.Release + local.set $$t2335.0 + local.get $$t2332.1 + i32.const 31 + i32.store + local.get $$t2334.1 + i32.const 1 + i32.store + local.get $$t2335.1 + i32.const 0 + i32.store + local.get $$t2325.0 + call $runtime.Block.Retain + local.get $$t2325.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2336.1 + local.get $$t2336.0 + call $runtime.Block.Release + local.set $$t2336.0 + local.get $$t2336.0 + call $runtime.Block.Retain + local.get $$t2336.1 + i32.const 0 + i32.add + local.set $$t2337.1 + local.get $$t2337.0 + call $runtime.Block.Release + local.set $$t2337.0 + local.get $$t2336.0 + call $runtime.Block.Retain + local.get $$t2336.1 + i32.const 4 + i32.add + local.set $$t2338.1 + local.get $$t2338.0 + call $runtime.Block.Release + local.set $$t2338.0 + local.get $$t2338.0 + call $runtime.Block.Retain + local.get $$t2338.1 + i32.const 0 + i32.add + local.set $$t2339.1 + local.get $$t2339.0 + call $runtime.Block.Release + local.set $$t2339.0 + local.get $$t2338.0 + call $runtime.Block.Retain + local.get $$t2338.1 + i32.const 4 + i32.add + local.set $$t2340.1 + local.get $$t2340.0 + call $runtime.Block.Release + local.set $$t2340.0 + local.get $$t2337.1 + i32.const 42 + i32.store + local.get $$t2339.1 + i32.const 0 + i32.store + local.get $$t2340.1 + i32.const 1 + i32.store + local.get $$t2325.0 + call $runtime.Block.Retain + local.get $$t2325.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2341.1 + local.get $$t2341.0 + call $runtime.Block.Release + local.set $$t2341.0 + local.get $$t2341.0 + call $runtime.Block.Retain + local.get $$t2341.1 + i32.const 0 + i32.add + local.set $$t2342.1 + local.get $$t2342.0 + call $runtime.Block.Release + local.set $$t2342.0 + local.get $$t2341.0 + call $runtime.Block.Retain + local.get $$t2341.1 + i32.const 4 + i32.add + local.set $$t2343.1 + local.get $$t2343.0 + call $runtime.Block.Release + local.set $$t2343.0 + local.get $$t2343.0 + call $runtime.Block.Retain + local.get $$t2343.1 + i32.const 0 + i32.add + local.set $$t2344.1 + local.get $$t2344.0 + call $runtime.Block.Release + local.set $$t2344.0 + local.get $$t2343.0 + call $runtime.Block.Retain + local.get $$t2343.1 + i32.const 4 + i32.add + local.set $$t2345.1 + local.get $$t2345.0 + call $runtime.Block.Release + local.set $$t2345.0 + local.get $$t2342.1 + i32.const 43 + i32.store + local.get $$t2344.1 + i32.const 1 + i32.store + local.get $$t2345.1 + i32.const 1 + i32.store + local.get $$t2325.0 + call $runtime.Block.Retain + local.get $$t2325.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2346.3 + local.set $$t2346.2 + local.set $$t2346.1 + local.get $$t2346.0 + call $runtime.Block.Release + local.set $$t2346.0 + i32.const 14832 + local.get $$t2346.0 + call $runtime.Block.Retain + i32.const 14832 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14832 + local.get $$t2346.1 + i32.store offset=4 + i32.const 14832 + local.get $$t2346.2 + i32.store offset=8 + i32.const 14832 + local.get $$t2346.3 + i32.store offset=12 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2347.1 + local.get $$t2347.0 + call $runtime.Block.Release + local.set $$t2347.0 + local.get $$t2347.0 + call $runtime.Block.Retain + local.get $$t2347.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2348.1 + local.get $$t2348.0 + call $runtime.Block.Release + local.set $$t2348.0 + local.get $$t2348.0 + call $runtime.Block.Retain + local.get $$t2348.1 + i32.const 0 + i32.add + local.set $$t2349.1 + local.get $$t2349.0 + call $runtime.Block.Release + local.set $$t2349.0 + local.get $$t2348.0 + call $runtime.Block.Retain + local.get $$t2348.1 + i32.const 4 + i32.add + local.set $$t2350.1 + local.get $$t2350.0 + call $runtime.Block.Release + local.set $$t2350.0 + local.get $$t2350.0 + call $runtime.Block.Retain + local.get $$t2350.1 + i32.const 0 + i32.add + local.set $$t2351.1 + local.get $$t2351.0 + call $runtime.Block.Release + local.set $$t2351.0 + local.get $$t2350.0 + call $runtime.Block.Retain + local.get $$t2350.1 + i32.const 4 + i32.add + local.set $$t2352.1 + local.get $$t2352.0 + call $runtime.Block.Release + local.set $$t2352.0 + local.get $$t2349.1 + i32.const 10 + i32.store + local.get $$t2351.1 + i32.const 0 + i32.store + local.get $$t2352.1 + i32.const 0 + i32.store + local.get $$t2347.0 + call $runtime.Block.Retain + local.get $$t2347.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2353.1 + local.get $$t2353.0 + call $runtime.Block.Release + local.set $$t2353.0 + local.get $$t2353.0 + call $runtime.Block.Retain + local.get $$t2353.1 + i32.const 0 + i32.add + local.set $$t2354.1 + local.get $$t2354.0 + call $runtime.Block.Release + local.set $$t2354.0 + local.get $$t2353.0 + call $runtime.Block.Retain + local.get $$t2353.1 + i32.const 4 + i32.add + local.set $$t2355.1 + local.get $$t2355.0 + call $runtime.Block.Release + local.set $$t2355.0 + local.get $$t2355.0 + call $runtime.Block.Retain + local.get $$t2355.1 + i32.const 0 + i32.add + local.set $$t2356.1 + local.get $$t2356.0 + call $runtime.Block.Release + local.set $$t2356.0 + local.get $$t2355.0 + call $runtime.Block.Retain + local.get $$t2355.1 + i32.const 4 + i32.add + local.set $$t2357.1 + local.get $$t2357.0 + call $runtime.Block.Release + local.set $$t2357.0 + local.get $$t2354.1 + i32.const 11 + i32.store + local.get $$t2356.1 + i32.const 1 + i32.store + local.get $$t2357.1 + i32.const 0 + i32.store + local.get $$t2347.0 + call $runtime.Block.Retain + local.get $$t2347.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2358.1 + local.get $$t2358.0 + call $runtime.Block.Release + local.set $$t2358.0 + local.get $$t2358.0 + call $runtime.Block.Retain + local.get $$t2358.1 + i32.const 0 + i32.add + local.set $$t2359.1 + local.get $$t2359.0 + call $runtime.Block.Release + local.set $$t2359.0 + local.get $$t2358.0 + call $runtime.Block.Retain + local.get $$t2358.1 + i32.const 4 + i32.add + local.set $$t2360.1 + local.get $$t2360.0 + call $runtime.Block.Release + local.set $$t2360.0 + local.get $$t2360.0 + call $runtime.Block.Retain + local.get $$t2360.1 + i32.const 0 + i32.add + local.set $$t2361.1 + local.get $$t2361.0 + call $runtime.Block.Release + local.set $$t2361.0 + local.get $$t2360.0 + call $runtime.Block.Retain + local.get $$t2360.1 + i32.const 4 + i32.add + local.set $$t2362.1 + local.get $$t2362.0 + call $runtime.Block.Release + local.set $$t2362.0 + local.get $$t2359.1 + i32.const 22 + i32.store + local.get $$t2361.1 + i32.const 0 + i32.store + local.get $$t2362.1 + i32.const 1 + i32.store + local.get $$t2347.0 + call $runtime.Block.Retain + local.get $$t2347.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2363.1 + local.get $$t2363.0 + call $runtime.Block.Release + local.set $$t2363.0 + local.get $$t2363.0 + call $runtime.Block.Retain + local.get $$t2363.1 + i32.const 0 + i32.add + local.set $$t2364.1 + local.get $$t2364.0 + call $runtime.Block.Release + local.set $$t2364.0 + local.get $$t2363.0 + call $runtime.Block.Retain + local.get $$t2363.1 + i32.const 4 + i32.add + local.set $$t2365.1 + local.get $$t2365.0 + call $runtime.Block.Release + local.set $$t2365.0 + local.get $$t2365.0 + call $runtime.Block.Retain + local.get $$t2365.1 + i32.const 0 + i32.add + local.set $$t2366.1 + local.get $$t2366.0 + call $runtime.Block.Release + local.set $$t2366.0 + local.get $$t2365.0 + call $runtime.Block.Retain + local.get $$t2365.1 + i32.const 4 + i32.add + local.set $$t2367.1 + local.get $$t2367.0 + call $runtime.Block.Release + local.set $$t2367.0 + local.get $$t2364.1 + i32.const 23 + i32.store + local.get $$t2366.1 + i32.const 1 + i32.store + local.get $$t2367.1 + i32.const 1 + i32.store + local.get $$t2347.0 + call $runtime.Block.Retain + local.get $$t2347.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2368.3 + local.set $$t2368.2 + local.set $$t2368.1 + local.get $$t2368.0 + call $runtime.Block.Release + local.set $$t2368.0 + i32.const 14848 + local.get $$t2368.0 + call $runtime.Block.Retain + i32.const 14848 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14848 + local.get $$t2368.1 + i32.store offset=4 + i32.const 14848 + local.get $$t2368.2 + i32.store offset=8 + i32.const 14848 + local.get $$t2368.3 + i32.store offset=12 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2369.1 + local.get $$t2369.0 + call $runtime.Block.Release + local.set $$t2369.0 + local.get $$t2369.0 + call $runtime.Block.Retain + local.get $$t2369.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2370.1 + local.get $$t2370.0 + call $runtime.Block.Release + local.set $$t2370.0 + local.get $$t2370.0 + call $runtime.Block.Retain + local.get $$t2370.1 + i32.const 0 + i32.add + local.set $$t2371.1 + local.get $$t2371.0 + call $runtime.Block.Release + local.set $$t2371.0 + local.get $$t2370.0 + call $runtime.Block.Retain + local.get $$t2370.1 + i32.const 4 + i32.add + local.set $$t2372.1 + local.get $$t2372.0 + call $runtime.Block.Release + local.set $$t2372.0 + local.get $$t2372.0 + call $runtime.Block.Retain + local.get $$t2372.1 + i32.const 0 + i32.add + local.set $$t2373.1 + local.get $$t2373.0 + call $runtime.Block.Release + local.set $$t2373.0 + local.get $$t2372.0 + call $runtime.Block.Retain + local.get $$t2372.1 + i32.const 4 + i32.add + local.set $$t2374.1 + local.get $$t2374.0 + call $runtime.Block.Release + local.set $$t2374.0 + local.get $$t2371.1 + i32.const 30 + i32.store + local.get $$t2373.1 + i32.const 0 + i32.store + local.get $$t2374.1 + i32.const 0 + i32.store + local.get $$t2369.0 + call $runtime.Block.Retain + local.get $$t2369.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2375.1 + local.get $$t2375.0 + call $runtime.Block.Release + local.set $$t2375.0 + local.get $$t2375.0 + call $runtime.Block.Retain + local.get $$t2375.1 + i32.const 0 + i32.add + local.set $$t2376.1 + local.get $$t2376.0 + call $runtime.Block.Release + local.set $$t2376.0 + local.get $$t2375.0 + call $runtime.Block.Retain + local.get $$t2375.1 + i32.const 4 + i32.add + local.set $$t2377.1 + local.get $$t2377.0 + call $runtime.Block.Release + local.set $$t2377.0 + local.get $$t2377.0 + call $runtime.Block.Retain + local.get $$t2377.1 + i32.const 0 + i32.add + local.set $$t2378.1 + local.get $$t2378.0 + call $runtime.Block.Release + local.set $$t2378.0 + local.get $$t2377.0 + call $runtime.Block.Retain + local.get $$t2377.1 + i32.const 4 + i32.add + local.set $$t2379.1 + local.get $$t2379.0 + call $runtime.Block.Release + local.set $$t2379.0 + local.get $$t2376.1 + i32.const 31 + i32.store + local.get $$t2378.1 + i32.const 0 + i32.store + local.get $$t2379.1 + i32.const 1 + i32.store + local.get $$t2369.0 + call $runtime.Block.Retain + local.get $$t2369.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2380.1 + local.get $$t2380.0 + call $runtime.Block.Release + local.set $$t2380.0 + local.get $$t2380.0 + call $runtime.Block.Retain + local.get $$t2380.1 + i32.const 0 + i32.add + local.set $$t2381.1 + local.get $$t2381.0 + call $runtime.Block.Release + local.set $$t2381.0 + local.get $$t2380.0 + call $runtime.Block.Retain + local.get $$t2380.1 + i32.const 4 + i32.add + local.set $$t2382.1 + local.get $$t2382.0 + call $runtime.Block.Release + local.set $$t2382.0 + local.get $$t2382.0 + call $runtime.Block.Retain + local.get $$t2382.1 + i32.const 0 + i32.add + local.set $$t2383.1 + local.get $$t2383.0 + call $runtime.Block.Release + local.set $$t2383.0 + local.get $$t2382.0 + call $runtime.Block.Retain + local.get $$t2382.1 + i32.const 4 + i32.add + local.set $$t2384.1 + local.get $$t2384.0 + call $runtime.Block.Release + local.set $$t2384.0 + local.get $$t2381.1 + i32.const 42 + i32.store + local.get $$t2383.1 + i32.const 1 + i32.store + local.get $$t2384.1 + i32.const 0 + i32.store + local.get $$t2369.0 + call $runtime.Block.Retain + local.get $$t2369.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2385.1 + local.get $$t2385.0 + call $runtime.Block.Release + local.set $$t2385.0 + local.get $$t2385.0 + call $runtime.Block.Retain + local.get $$t2385.1 + i32.const 0 + i32.add + local.set $$t2386.1 + local.get $$t2386.0 + call $runtime.Block.Release + local.set $$t2386.0 + local.get $$t2385.0 + call $runtime.Block.Retain + local.get $$t2385.1 + i32.const 4 + i32.add + local.set $$t2387.1 + local.get $$t2387.0 + call $runtime.Block.Release + local.set $$t2387.0 + local.get $$t2387.0 + call $runtime.Block.Retain + local.get $$t2387.1 + i32.const 0 + i32.add + local.set $$t2388.1 + local.get $$t2388.0 + call $runtime.Block.Release + local.set $$t2388.0 + local.get $$t2387.0 + call $runtime.Block.Retain + local.get $$t2387.1 + i32.const 4 + i32.add + local.set $$t2389.1 + local.get $$t2389.0 + call $runtime.Block.Release + local.set $$t2389.0 + local.get $$t2386.1 + i32.const 43 + i32.store + local.get $$t2388.1 + i32.const 1 + i32.store + local.get $$t2389.1 + i32.const 1 + i32.store + local.get $$t2369.0 + call $runtime.Block.Retain + local.get $$t2369.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2390.3 + local.set $$t2390.2 + local.set $$t2390.1 + local.get $$t2390.0 + call $runtime.Block.Release + local.set $$t2390.0 + i32.const 14864 + local.get $$t2390.0 + call $runtime.Block.Retain + i32.const 14864 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14864 + local.get $$t2390.1 + i32.store offset=4 + i32.const 14864 + local.get $$t2390.2 + i32.store offset=8 + i32.const 14864 + local.get $$t2390.3 + i32.store offset=12 + i32.const 40 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 24 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2391.1 + local.get $$t2391.0 + call $runtime.Block.Release + local.set $$t2391.0 + local.get $$t2391.0 + call $runtime.Block.Retain + local.get $$t2391.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2392.1 + local.get $$t2392.0 + call $runtime.Block.Release + local.set $$t2392.0 + local.get $$t2392.0 + call $runtime.Block.Retain + local.get $$t2392.1 + i32.const 0 + i32.add + local.set $$t2393.1 + local.get $$t2393.0 + call $runtime.Block.Release + local.set $$t2393.0 + local.get $$t2392.0 + call $runtime.Block.Retain + local.get $$t2392.1 + i32.const 4 + i32.add + local.set $$t2394.1 + local.get $$t2394.0 + call $runtime.Block.Release + local.set $$t2394.0 + local.get $$t2394.0 + call $runtime.Block.Retain + local.get $$t2394.1 + i32.const 0 + i32.add + local.set $$t2395.1 + local.get $$t2395.0 + call $runtime.Block.Release + local.set $$t2395.0 + local.get $$t2394.0 + call $runtime.Block.Retain + local.get $$t2394.1 + i32.const 4 + i32.add + local.set $$t2396.1 + local.get $$t2396.0 + call $runtime.Block.Release + local.set $$t2396.0 + local.get $$t2393.1 + i32.const 71 + i32.store + local.get $$t2395.1 + i32.const 0 + i32.store + local.get $$t2396.1 + i32.const 0 + i32.store + local.get $$t2391.0 + call $runtime.Block.Retain + local.get $$t2391.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2397.1 + local.get $$t2397.0 + call $runtime.Block.Release + local.set $$t2397.0 + local.get $$t2397.0 + call $runtime.Block.Retain + local.get $$t2397.1 + i32.const 0 + i32.add + local.set $$t2398.1 + local.get $$t2398.0 + call $runtime.Block.Release + local.set $$t2398.0 + local.get $$t2397.0 + call $runtime.Block.Retain + local.get $$t2397.1 + i32.const 4 + i32.add + local.set $$t2399.1 + local.get $$t2399.0 + call $runtime.Block.Release + local.set $$t2399.0 + local.get $$t2399.0 + call $runtime.Block.Retain + local.get $$t2399.1 + i32.const 0 + i32.add + local.set $$t2400.1 + local.get $$t2400.0 + call $runtime.Block.Release + local.set $$t2400.0 + local.get $$t2399.0 + call $runtime.Block.Retain + local.get $$t2399.1 + i32.const 4 + i32.add + local.set $$t2401.1 + local.get $$t2401.0 + call $runtime.Block.Release + local.set $$t2401.0 + local.get $$t2398.1 + i32.const 83 + i32.store + local.get $$t2400.1 + i32.const 0 + i32.store + local.get $$t2401.1 + i32.const 1 + i32.store + local.get $$t2391.0 + call $runtime.Block.Retain + local.get $$t2391.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 2 + i32.const 0 + i32.sub + i32.const 2 + i32.const 0 + i32.sub + local.set $$t2402.3 + local.set $$t2402.2 + local.set $$t2402.1 + local.get $$t2402.0 + call $runtime.Block.Release + local.set $$t2402.0 + i32.const 14880 + local.get $$t2402.0 + call $runtime.Block.Retain + i32.const 14880 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14880 + local.get $$t2402.1 + i32.store offset=4 + i32.const 14880 + local.get $$t2402.2 + i32.store offset=8 + i32.const 14880 + local.get $$t2402.3 + i32.store offset=12 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2403.1 + local.get $$t2403.0 + call $runtime.Block.Release + local.set $$t2403.0 + local.get $$t2403.0 + call $runtime.Block.Retain + local.get $$t2403.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2404.1 + local.get $$t2404.0 + call $runtime.Block.Release + local.set $$t2404.0 + local.get $$t2404.0 + call $runtime.Block.Retain + local.get $$t2404.1 + i32.const 0 + i32.add + local.set $$t2405.1 + local.get $$t2405.0 + call $runtime.Block.Release + local.set $$t2405.0 + local.get $$t2404.0 + call $runtime.Block.Retain + local.get $$t2404.1 + i32.const 4 + i32.add + local.set $$t2406.1 + local.get $$t2406.0 + call $runtime.Block.Release + local.set $$t2406.0 + local.get $$t2406.0 + call $runtime.Block.Retain + local.get $$t2406.1 + i32.const 0 + i32.add + local.set $$t2407.1 + local.get $$t2407.0 + call $runtime.Block.Release + local.set $$t2407.0 + local.get $$t2406.0 + call $runtime.Block.Retain + local.get $$t2406.1 + i32.const 4 + i32.add + local.set $$t2408.1 + local.get $$t2408.0 + call $runtime.Block.Release + local.set $$t2408.0 + local.get $$t2405.1 + i32.const 6 + i32.store + local.get $$t2407.1 + i32.const 0 + i32.store + local.get $$t2408.1 + i32.const 0 + i32.store + local.get $$t2403.0 + call $runtime.Block.Retain + local.get $$t2403.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2409.1 + local.get $$t2409.0 + call $runtime.Block.Release + local.set $$t2409.0 + local.get $$t2409.0 + call $runtime.Block.Retain + local.get $$t2409.1 + i32.const 0 + i32.add + local.set $$t2410.1 + local.get $$t2410.0 + call $runtime.Block.Release + local.set $$t2410.0 + local.get $$t2409.0 + call $runtime.Block.Retain + local.get $$t2409.1 + i32.const 4 + i32.add + local.set $$t2411.1 + local.get $$t2411.0 + call $runtime.Block.Release + local.set $$t2411.0 + local.get $$t2411.0 + call $runtime.Block.Retain + local.get $$t2411.1 + i32.const 0 + i32.add + local.set $$t2412.1 + local.get $$t2412.0 + call $runtime.Block.Release + local.set $$t2412.0 + local.get $$t2411.0 + call $runtime.Block.Retain + local.get $$t2411.1 + i32.const 4 + i32.add + local.set $$t2413.1 + local.get $$t2413.0 + call $runtime.Block.Release + local.set $$t2413.0 + local.get $$t2410.1 + i32.const 18 + i32.store + local.get $$t2412.1 + i32.const 0 + i32.store + local.get $$t2413.1 + i32.const 1 + i32.store + local.get $$t2403.0 + call $runtime.Block.Retain + local.get $$t2403.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2414.1 + local.get $$t2414.0 + call $runtime.Block.Release + local.set $$t2414.0 + local.get $$t2414.0 + call $runtime.Block.Retain + local.get $$t2414.1 + i32.const 0 + i32.add + local.set $$t2415.1 + local.get $$t2415.0 + call $runtime.Block.Release + local.set $$t2415.0 + local.get $$t2414.0 + call $runtime.Block.Retain + local.get $$t2414.1 + i32.const 4 + i32.add + local.set $$t2416.1 + local.get $$t2416.0 + call $runtime.Block.Release + local.set $$t2416.0 + local.get $$t2416.0 + call $runtime.Block.Retain + local.get $$t2416.1 + i32.const 0 + i32.add + local.set $$t2417.1 + local.get $$t2417.0 + call $runtime.Block.Release + local.set $$t2417.0 + local.get $$t2416.0 + call $runtime.Block.Retain + local.get $$t2416.1 + i32.const 4 + i32.add + local.set $$t2418.1 + local.get $$t2418.0 + call $runtime.Block.Release + local.set $$t2418.0 + local.get $$t2415.1 + i32.const 95 + i32.store + local.get $$t2417.1 + i32.const 1 + i32.store + local.get $$t2418.1 + i32.const 0 + i32.store + local.get $$t2403.0 + call $runtime.Block.Retain + local.get $$t2403.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2419.1 + local.get $$t2419.0 + call $runtime.Block.Release + local.set $$t2419.0 + local.get $$t2419.0 + call $runtime.Block.Retain + local.get $$t2419.1 + i32.const 0 + i32.add + local.set $$t2420.1 + local.get $$t2420.0 + call $runtime.Block.Release + local.set $$t2420.0 + local.get $$t2419.0 + call $runtime.Block.Retain + local.get $$t2419.1 + i32.const 4 + i32.add + local.set $$t2421.1 + local.get $$t2421.0 + call $runtime.Block.Release + local.set $$t2421.0 + local.get $$t2421.0 + call $runtime.Block.Retain + local.get $$t2421.1 + i32.const 0 + i32.add + local.set $$t2422.1 + local.get $$t2422.0 + call $runtime.Block.Release + local.set $$t2422.0 + local.get $$t2421.0 + call $runtime.Block.Retain + local.get $$t2421.1 + i32.const 4 + i32.add + local.set $$t2423.1 + local.get $$t2423.0 + call $runtime.Block.Release + local.set $$t2423.0 + local.get $$t2420.1 + i32.const 107 + i32.store + local.get $$t2422.1 + i32.const 1 + i32.store + local.get $$t2423.1 + i32.const 1 + i32.store + local.get $$t2403.0 + call $runtime.Block.Retain + local.get $$t2403.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2424.3 + local.set $$t2424.2 + local.set $$t2424.1 + local.get $$t2424.0 + call $runtime.Block.Release + local.set $$t2424.0 + i32.const 14896 + local.get $$t2424.0 + call $runtime.Block.Retain + i32.const 14896 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14896 + local.get $$t2424.1 + i32.store offset=4 + i32.const 14896 + local.get $$t2424.2 + i32.store offset=8 + i32.const 14896 + local.get $$t2424.3 + i32.store offset=12 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2425.1 + local.get $$t2425.0 + call $runtime.Block.Release + local.set $$t2425.0 + local.get $$t2425.0 + call $runtime.Block.Retain + local.get $$t2425.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2426.1 + local.get $$t2426.0 + call $runtime.Block.Release + local.set $$t2426.0 + local.get $$t2426.0 + call $runtime.Block.Retain + local.get $$t2426.1 + i32.const 0 + i32.add + local.set $$t2427.1 + local.get $$t2427.0 + call $runtime.Block.Release + local.set $$t2427.0 + local.get $$t2426.0 + call $runtime.Block.Retain + local.get $$t2426.1 + i32.const 4 + i32.add + local.set $$t2428.1 + local.get $$t2428.0 + call $runtime.Block.Release + local.set $$t2428.0 + local.get $$t2428.0 + call $runtime.Block.Retain + local.get $$t2428.1 + i32.const 0 + i32.add + local.set $$t2429.1 + local.get $$t2429.0 + call $runtime.Block.Release + local.set $$t2429.0 + local.get $$t2428.0 + call $runtime.Block.Retain + local.get $$t2428.1 + i32.const 4 + i32.add + local.set $$t2430.1 + local.get $$t2430.0 + call $runtime.Block.Release + local.set $$t2430.0 + local.get $$t2427.1 + i32.const 6 + i32.store + local.get $$t2429.1 + i32.const 0 + i32.store + local.get $$t2430.1 + i32.const 0 + i32.store + local.get $$t2425.0 + call $runtime.Block.Retain + local.get $$t2425.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2431.1 + local.get $$t2431.0 + call $runtime.Block.Release + local.set $$t2431.0 + local.get $$t2431.0 + call $runtime.Block.Retain + local.get $$t2431.1 + i32.const 0 + i32.add + local.set $$t2432.1 + local.get $$t2432.0 + call $runtime.Block.Release + local.set $$t2432.0 + local.get $$t2431.0 + call $runtime.Block.Retain + local.get $$t2431.1 + i32.const 4 + i32.add + local.set $$t2433.1 + local.get $$t2433.0 + call $runtime.Block.Release + local.set $$t2433.0 + local.get $$t2433.0 + call $runtime.Block.Retain + local.get $$t2433.1 + i32.const 0 + i32.add + local.set $$t2434.1 + local.get $$t2434.0 + call $runtime.Block.Release + local.set $$t2434.0 + local.get $$t2433.0 + call $runtime.Block.Retain + local.get $$t2433.1 + i32.const 4 + i32.add + local.set $$t2435.1 + local.get $$t2435.0 + call $runtime.Block.Release + local.set $$t2435.0 + local.get $$t2432.1 + i32.const 7 + i32.store + local.get $$t2434.1 + i32.const 1 + i32.store + local.get $$t2435.1 + i32.const 0 + i32.store + local.get $$t2425.0 + call $runtime.Block.Retain + local.get $$t2425.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2436.1 + local.get $$t2436.0 + call $runtime.Block.Release + local.set $$t2436.0 + local.get $$t2436.0 + call $runtime.Block.Retain + local.get $$t2436.1 + i32.const 0 + i32.add + local.set $$t2437.1 + local.get $$t2437.0 + call $runtime.Block.Release + local.set $$t2437.0 + local.get $$t2436.0 + call $runtime.Block.Retain + local.get $$t2436.1 + i32.const 4 + i32.add + local.set $$t2438.1 + local.get $$t2438.0 + call $runtime.Block.Release + local.set $$t2438.0 + local.get $$t2438.0 + call $runtime.Block.Retain + local.get $$t2438.1 + i32.const 0 + i32.add + local.set $$t2439.1 + local.get $$t2439.0 + call $runtime.Block.Release + local.set $$t2439.0 + local.get $$t2438.0 + call $runtime.Block.Retain + local.get $$t2438.1 + i32.const 4 + i32.add + local.set $$t2440.1 + local.get $$t2440.0 + call $runtime.Block.Release + local.set $$t2440.0 + local.get $$t2437.1 + i32.const 18 + i32.store + local.get $$t2439.1 + i32.const 0 + i32.store + local.get $$t2440.1 + i32.const 1 + i32.store + local.get $$t2425.0 + call $runtime.Block.Retain + local.get $$t2425.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2441.1 + local.get $$t2441.0 + call $runtime.Block.Release + local.set $$t2441.0 + local.get $$t2441.0 + call $runtime.Block.Retain + local.get $$t2441.1 + i32.const 0 + i32.add + local.set $$t2442.1 + local.get $$t2442.0 + call $runtime.Block.Release + local.set $$t2442.0 + local.get $$t2441.0 + call $runtime.Block.Retain + local.get $$t2441.1 + i32.const 4 + i32.add + local.set $$t2443.1 + local.get $$t2443.0 + call $runtime.Block.Release + local.set $$t2443.0 + local.get $$t2443.0 + call $runtime.Block.Retain + local.get $$t2443.1 + i32.const 0 + i32.add + local.set $$t2444.1 + local.get $$t2444.0 + call $runtime.Block.Release + local.set $$t2444.0 + local.get $$t2443.0 + call $runtime.Block.Retain + local.get $$t2443.1 + i32.const 4 + i32.add + local.set $$t2445.1 + local.get $$t2445.0 + call $runtime.Block.Release + local.set $$t2445.0 + local.get $$t2442.1 + i32.const 19 + i32.store + local.get $$t2444.1 + i32.const 1 + i32.store + local.get $$t2445.1 + i32.const 1 + i32.store + local.get $$t2425.0 + call $runtime.Block.Retain + local.get $$t2425.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2446.3 + local.set $$t2446.2 + local.set $$t2446.1 + local.get $$t2446.0 + call $runtime.Block.Release + local.set $$t2446.0 + i32.const 14912 + local.get $$t2446.0 + call $runtime.Block.Retain + i32.const 14912 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14912 + local.get $$t2446.1 + i32.store offset=4 + i32.const 14912 + local.get $$t2446.2 + i32.store offset=8 + i32.const 14912 + local.get $$t2446.3 + i32.store offset=12 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2447.1 + local.get $$t2447.0 + call $runtime.Block.Release + local.set $$t2447.0 + local.get $$t2447.0 + call $runtime.Block.Retain + local.get $$t2447.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2448.1 + local.get $$t2448.0 + call $runtime.Block.Release + local.set $$t2448.0 + local.get $$t2448.0 + call $runtime.Block.Retain + local.get $$t2448.1 + i32.const 0 + i32.add + local.set $$t2449.1 + local.get $$t2449.0 + call $runtime.Block.Release + local.set $$t2449.0 + local.get $$t2448.0 + call $runtime.Block.Retain + local.get $$t2448.1 + i32.const 4 + i32.add + local.set $$t2450.1 + local.get $$t2450.0 + call $runtime.Block.Release + local.set $$t2450.0 + local.get $$t2450.0 + call $runtime.Block.Retain + local.get $$t2450.1 + i32.const 0 + i32.add + local.set $$t2451.1 + local.get $$t2451.0 + call $runtime.Block.Release + local.set $$t2451.0 + local.get $$t2450.0 + call $runtime.Block.Retain + local.get $$t2450.1 + i32.const 4 + i32.add + local.set $$t2452.1 + local.get $$t2452.0 + call $runtime.Block.Release + local.set $$t2452.0 + local.get $$t2449.1 + i32.const 34 + i32.store + local.get $$t2451.1 + i32.const 0 + i32.store + local.get $$t2452.1 + i32.const 0 + i32.store + local.get $$t2447.0 + call $runtime.Block.Retain + local.get $$t2447.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2453.1 + local.get $$t2453.0 + call $runtime.Block.Release + local.set $$t2453.0 + local.get $$t2453.0 + call $runtime.Block.Retain + local.get $$t2453.1 + i32.const 0 + i32.add + local.set $$t2454.1 + local.get $$t2454.0 + call $runtime.Block.Release + local.set $$t2454.0 + local.get $$t2453.0 + call $runtime.Block.Retain + local.get $$t2453.1 + i32.const 4 + i32.add + local.set $$t2455.1 + local.get $$t2455.0 + call $runtime.Block.Release + local.set $$t2455.0 + local.get $$t2455.0 + call $runtime.Block.Retain + local.get $$t2455.1 + i32.const 0 + i32.add + local.set $$t2456.1 + local.get $$t2456.0 + call $runtime.Block.Release + local.set $$t2456.0 + local.get $$t2455.0 + call $runtime.Block.Retain + local.get $$t2455.1 + i32.const 4 + i32.add + local.set $$t2457.1 + local.get $$t2457.0 + call $runtime.Block.Release + local.set $$t2457.0 + local.get $$t2454.1 + i32.const 35 + i32.store + local.get $$t2456.1 + i32.const 1 + i32.store + local.get $$t2457.1 + i32.const 0 + i32.store + local.get $$t2447.0 + call $runtime.Block.Retain + local.get $$t2447.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2458.1 + local.get $$t2458.0 + call $runtime.Block.Release + local.set $$t2458.0 + local.get $$t2458.0 + call $runtime.Block.Retain + local.get $$t2458.1 + i32.const 0 + i32.add + local.set $$t2459.1 + local.get $$t2459.0 + call $runtime.Block.Release + local.set $$t2459.0 + local.get $$t2458.0 + call $runtime.Block.Retain + local.get $$t2458.1 + i32.const 4 + i32.add + local.set $$t2460.1 + local.get $$t2460.0 + call $runtime.Block.Release + local.set $$t2460.0 + local.get $$t2460.0 + call $runtime.Block.Retain + local.get $$t2460.1 + i32.const 0 + i32.add + local.set $$t2461.1 + local.get $$t2461.0 + call $runtime.Block.Release + local.set $$t2461.0 + local.get $$t2460.0 + call $runtime.Block.Retain + local.get $$t2460.1 + i32.const 4 + i32.add + local.set $$t2462.1 + local.get $$t2462.0 + call $runtime.Block.Release + local.set $$t2462.0 + local.get $$t2459.1 + i32.const 46 + i32.store + local.get $$t2461.1 + i32.const 0 + i32.store + local.get $$t2462.1 + i32.const 1 + i32.store + local.get $$t2447.0 + call $runtime.Block.Retain + local.get $$t2447.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2463.1 + local.get $$t2463.0 + call $runtime.Block.Release + local.set $$t2463.0 + local.get $$t2463.0 + call $runtime.Block.Retain + local.get $$t2463.1 + i32.const 0 + i32.add + local.set $$t2464.1 + local.get $$t2464.0 + call $runtime.Block.Release + local.set $$t2464.0 + local.get $$t2463.0 + call $runtime.Block.Retain + local.get $$t2463.1 + i32.const 4 + i32.add + local.set $$t2465.1 + local.get $$t2465.0 + call $runtime.Block.Release + local.set $$t2465.0 + local.get $$t2465.0 + call $runtime.Block.Retain + local.get $$t2465.1 + i32.const 0 + i32.add + local.set $$t2466.1 + local.get $$t2466.0 + call $runtime.Block.Release + local.set $$t2466.0 + local.get $$t2465.0 + call $runtime.Block.Retain + local.get $$t2465.1 + i32.const 4 + i32.add + local.set $$t2467.1 + local.get $$t2467.0 + call $runtime.Block.Release + local.set $$t2467.0 + local.get $$t2464.1 + i32.const 47 + i32.store + local.get $$t2466.1 + i32.const 1 + i32.store + local.get $$t2467.1 + i32.const 1 + i32.store + local.get $$t2447.0 + call $runtime.Block.Retain + local.get $$t2447.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2468.3 + local.set $$t2468.2 + local.set $$t2468.1 + local.get $$t2468.0 + call $runtime.Block.Release + local.set $$t2468.0 + i32.const 14928 + local.get $$t2468.0 + call $runtime.Block.Retain + i32.const 14928 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14928 + local.get $$t2468.1 + i32.store offset=4 + i32.const 14928 + local.get $$t2468.2 + i32.store offset=8 + i32.const 14928 + local.get $$t2468.3 + i32.store offset=12 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2469.1 + local.get $$t2469.0 + call $runtime.Block.Release + local.set $$t2469.0 + local.get $$t2469.0 + call $runtime.Block.Retain + local.get $$t2469.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2470.1 + local.get $$t2470.0 + call $runtime.Block.Release + local.set $$t2470.0 + local.get $$t2470.0 + call $runtime.Block.Retain + local.get $$t2470.1 + i32.const 0 + i32.add + local.set $$t2471.1 + local.get $$t2471.0 + call $runtime.Block.Release + local.set $$t2471.0 + local.get $$t2470.0 + call $runtime.Block.Retain + local.get $$t2470.1 + i32.const 4 + i32.add + local.set $$t2472.1 + local.get $$t2472.0 + call $runtime.Block.Release + local.set $$t2472.0 + local.get $$t2472.0 + call $runtime.Block.Retain + local.get $$t2472.1 + i32.const 0 + i32.add + local.set $$t2473.1 + local.get $$t2473.0 + call $runtime.Block.Release + local.set $$t2473.0 + local.get $$t2472.0 + call $runtime.Block.Retain + local.get $$t2472.1 + i32.const 4 + i32.add + local.set $$t2474.1 + local.get $$t2474.0 + call $runtime.Block.Release + local.set $$t2474.0 + local.get $$t2471.1 + i32.const 32 + i32.store + local.get $$t2473.1 + i32.const 0 + i32.store + local.get $$t2474.1 + i32.const 0 + i32.store + local.get $$t2469.0 + call $runtime.Block.Retain + local.get $$t2469.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2475.1 + local.get $$t2475.0 + call $runtime.Block.Release + local.set $$t2475.0 + local.get $$t2475.0 + call $runtime.Block.Retain + local.get $$t2475.1 + i32.const 0 + i32.add + local.set $$t2476.1 + local.get $$t2476.0 + call $runtime.Block.Release + local.set $$t2476.0 + local.get $$t2475.0 + call $runtime.Block.Retain + local.get $$t2475.1 + i32.const 4 + i32.add + local.set $$t2477.1 + local.get $$t2477.0 + call $runtime.Block.Release + local.set $$t2477.0 + local.get $$t2477.0 + call $runtime.Block.Retain + local.get $$t2477.1 + i32.const 0 + i32.add + local.set $$t2478.1 + local.get $$t2478.0 + call $runtime.Block.Release + local.set $$t2478.0 + local.get $$t2477.0 + call $runtime.Block.Retain + local.get $$t2477.1 + i32.const 4 + i32.add + local.set $$t2479.1 + local.get $$t2479.0 + call $runtime.Block.Release + local.set $$t2479.0 + local.get $$t2476.1 + i32.const 33 + i32.store + local.get $$t2478.1 + i32.const 1 + i32.store + local.get $$t2479.1 + i32.const 0 + i32.store + local.get $$t2469.0 + call $runtime.Block.Retain + local.get $$t2469.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2480.1 + local.get $$t2480.0 + call $runtime.Block.Release + local.set $$t2480.0 + local.get $$t2480.0 + call $runtime.Block.Retain + local.get $$t2480.1 + i32.const 0 + i32.add + local.set $$t2481.1 + local.get $$t2481.0 + call $runtime.Block.Release + local.set $$t2481.0 + local.get $$t2480.0 + call $runtime.Block.Retain + local.get $$t2480.1 + i32.const 4 + i32.add + local.set $$t2482.1 + local.get $$t2482.0 + call $runtime.Block.Release + local.set $$t2482.0 + local.get $$t2482.0 + call $runtime.Block.Retain + local.get $$t2482.1 + i32.const 0 + i32.add + local.set $$t2483.1 + local.get $$t2483.0 + call $runtime.Block.Release + local.set $$t2483.0 + local.get $$t2482.0 + call $runtime.Block.Retain + local.get $$t2482.1 + i32.const 4 + i32.add + local.set $$t2484.1 + local.get $$t2484.0 + call $runtime.Block.Release + local.set $$t2484.0 + local.get $$t2481.1 + i32.const 44 + i32.store + local.get $$t2483.1 + i32.const 0 + i32.store + local.get $$t2484.1 + i32.const 1 + i32.store + local.get $$t2469.0 + call $runtime.Block.Retain + local.get $$t2469.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2485.1 + local.get $$t2485.0 + call $runtime.Block.Release + local.set $$t2485.0 + local.get $$t2485.0 + call $runtime.Block.Retain + local.get $$t2485.1 + i32.const 0 + i32.add + local.set $$t2486.1 + local.get $$t2486.0 + call $runtime.Block.Release + local.set $$t2486.0 + local.get $$t2485.0 + call $runtime.Block.Retain + local.get $$t2485.1 + i32.const 4 + i32.add + local.set $$t2487.1 + local.get $$t2487.0 + call $runtime.Block.Release + local.set $$t2487.0 + local.get $$t2487.0 + call $runtime.Block.Retain + local.get $$t2487.1 + i32.const 0 + i32.add + local.set $$t2488.1 + local.get $$t2488.0 + call $runtime.Block.Release + local.set $$t2488.0 + local.get $$t2487.0 + call $runtime.Block.Retain + local.get $$t2487.1 + i32.const 4 + i32.add + local.set $$t2489.1 + local.get $$t2489.0 + call $runtime.Block.Release + local.set $$t2489.0 + local.get $$t2486.1 + i32.const 45 + i32.store + local.get $$t2488.1 + i32.const 1 + i32.store + local.get $$t2489.1 + i32.const 1 + i32.store + local.get $$t2469.0 + call $runtime.Block.Retain + local.get $$t2469.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2490.3 + local.set $$t2490.2 + local.set $$t2490.1 + local.get $$t2490.0 + call $runtime.Block.Release + local.set $$t2490.0 + i32.const 14944 + local.get $$t2490.0 + call $runtime.Block.Retain + i32.const 14944 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14944 + local.get $$t2490.1 + i32.store offset=4 + i32.const 14944 + local.get $$t2490.2 + i32.store offset=8 + i32.const 14944 + local.get $$t2490.3 + i32.store offset=12 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2491.1 + local.get $$t2491.0 + call $runtime.Block.Release + local.set $$t2491.0 + local.get $$t2491.0 + call $runtime.Block.Retain + local.get $$t2491.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2492.1 + local.get $$t2492.0 + call $runtime.Block.Release + local.set $$t2492.0 + local.get $$t2492.0 + call $runtime.Block.Retain + local.get $$t2492.1 + i32.const 0 + i32.add + local.set $$t2493.1 + local.get $$t2493.0 + call $runtime.Block.Release + local.set $$t2493.0 + local.get $$t2492.0 + call $runtime.Block.Retain + local.get $$t2492.1 + i32.const 4 + i32.add + local.set $$t2494.1 + local.get $$t2494.0 + call $runtime.Block.Release + local.set $$t2494.0 + local.get $$t2494.0 + call $runtime.Block.Retain + local.get $$t2494.1 + i32.const 0 + i32.add + local.set $$t2495.1 + local.get $$t2495.0 + call $runtime.Block.Release + local.set $$t2495.0 + local.get $$t2494.0 + call $runtime.Block.Retain + local.get $$t2494.1 + i32.const 4 + i32.add + local.set $$t2496.1 + local.get $$t2496.0 + call $runtime.Block.Release + local.set $$t2496.0 + local.get $$t2493.1 + i32.const 94 + i32.store + local.get $$t2495.1 + i32.const 0 + i32.store + local.get $$t2496.1 + i32.const 0 + i32.store + local.get $$t2491.0 + call $runtime.Block.Retain + local.get $$t2491.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2497.1 + local.get $$t2497.0 + call $runtime.Block.Release + local.set $$t2497.0 + local.get $$t2497.0 + call $runtime.Block.Retain + local.get $$t2497.1 + i32.const 0 + i32.add + local.set $$t2498.1 + local.get $$t2498.0 + call $runtime.Block.Release + local.set $$t2498.0 + local.get $$t2497.0 + call $runtime.Block.Retain + local.get $$t2497.1 + i32.const 4 + i32.add + local.set $$t2499.1 + local.get $$t2499.0 + call $runtime.Block.Release + local.set $$t2499.0 + local.get $$t2499.0 + call $runtime.Block.Retain + local.get $$t2499.1 + i32.const 0 + i32.add + local.set $$t2500.1 + local.get $$t2500.0 + call $runtime.Block.Release + local.set $$t2500.0 + local.get $$t2499.0 + call $runtime.Block.Retain + local.get $$t2499.1 + i32.const 4 + i32.add + local.set $$t2501.1 + local.get $$t2501.0 + call $runtime.Block.Release + local.set $$t2501.0 + local.get $$t2498.1 + i32.const 106 + i32.store + local.get $$t2500.1 + i32.const 0 + i32.store + local.get $$t2501.1 + i32.const 1 + i32.store + local.get $$t2491.0 + call $runtime.Block.Retain + local.get $$t2491.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2502.1 + local.get $$t2502.0 + call $runtime.Block.Release + local.set $$t2502.0 + local.get $$t2502.0 + call $runtime.Block.Retain + local.get $$t2502.1 + i32.const 0 + i32.add + local.set $$t2503.1 + local.get $$t2503.0 + call $runtime.Block.Release + local.set $$t2503.0 + local.get $$t2502.0 + call $runtime.Block.Retain + local.get $$t2502.1 + i32.const 4 + i32.add + local.set $$t2504.1 + local.get $$t2504.0 + call $runtime.Block.Release + local.set $$t2504.0 + local.get $$t2504.0 + call $runtime.Block.Retain + local.get $$t2504.1 + i32.const 0 + i32.add + local.set $$t2505.1 + local.get $$t2505.0 + call $runtime.Block.Release + local.set $$t2505.0 + local.get $$t2504.0 + call $runtime.Block.Retain + local.get $$t2504.1 + i32.const 4 + i32.add + local.set $$t2506.1 + local.get $$t2506.0 + call $runtime.Block.Release + local.set $$t2506.0 + local.get $$t2503.1 + i32.const 7 + i32.store + local.get $$t2505.1 + i32.const 1 + i32.store + local.get $$t2506.1 + i32.const 0 + i32.store + local.get $$t2491.0 + call $runtime.Block.Retain + local.get $$t2491.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2507.1 + local.get $$t2507.0 + call $runtime.Block.Release + local.set $$t2507.0 + local.get $$t2507.0 + call $runtime.Block.Retain + local.get $$t2507.1 + i32.const 0 + i32.add + local.set $$t2508.1 + local.get $$t2508.0 + call $runtime.Block.Release + local.set $$t2508.0 + local.get $$t2507.0 + call $runtime.Block.Retain + local.get $$t2507.1 + i32.const 4 + i32.add + local.set $$t2509.1 + local.get $$t2509.0 + call $runtime.Block.Release + local.set $$t2509.0 + local.get $$t2509.0 + call $runtime.Block.Retain + local.get $$t2509.1 + i32.const 0 + i32.add + local.set $$t2510.1 + local.get $$t2510.0 + call $runtime.Block.Release + local.set $$t2510.0 + local.get $$t2509.0 + call $runtime.Block.Retain + local.get $$t2509.1 + i32.const 4 + i32.add + local.set $$t2511.1 + local.get $$t2511.0 + call $runtime.Block.Release + local.set $$t2511.0 + local.get $$t2508.1 + i32.const 19 + i32.store + local.get $$t2510.1 + i32.const 1 + i32.store + local.get $$t2511.1 + i32.const 1 + i32.store + local.get $$t2491.0 + call $runtime.Block.Retain + local.get $$t2491.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2512.3 + local.set $$t2512.2 + local.set $$t2512.1 + local.get $$t2512.0 + call $runtime.Block.Release + local.set $$t2512.0 + i32.const 14960 + local.get $$t2512.0 + call $runtime.Block.Retain + i32.const 14960 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14960 + local.get $$t2512.1 + i32.store offset=4 + i32.const 14960 + local.get $$t2512.2 + i32.store offset=8 + i32.const 14960 + local.get $$t2512.3 + i32.store offset=12 + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2513.1 + local.get $$t2513.0 + call $runtime.Block.Release + local.set $$t2513.0 + local.get $$t2513.0 + call $runtime.Block.Retain + local.get $$t2513.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2514.1 + local.get $$t2514.0 + call $runtime.Block.Release + local.set $$t2514.0 + local.get $$t2514.0 + call $runtime.Block.Retain + local.get $$t2514.1 + i32.const 0 + i32.add + local.set $$t2515.1 + local.get $$t2515.0 + call $runtime.Block.Release + local.set $$t2515.0 + local.get $$t2514.0 + call $runtime.Block.Retain + local.get $$t2514.1 + i32.const 4 + i32.add + local.set $$t2516.1 + local.get $$t2516.0 + call $runtime.Block.Release + local.set $$t2516.0 + local.get $$t2516.0 + call $runtime.Block.Retain + local.get $$t2516.1 + i32.const 0 + i32.add + local.set $$t2517.1 + local.get $$t2517.0 + call $runtime.Block.Release + local.set $$t2517.0 + local.get $$t2516.0 + call $runtime.Block.Retain + local.get $$t2516.1 + i32.const 4 + i32.add + local.set $$t2518.1 + local.get $$t2518.0 + call $runtime.Block.Release + local.set $$t2518.0 + local.get $$t2515.1 + i32.const 14 + i32.store + local.get $$t2517.1 + i32.const 0 + i32.store + local.get $$t2518.1 + i32.const 0 + i32.store + local.get $$t2513.0 + call $runtime.Block.Retain + local.get $$t2513.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t2519.3 + local.set $$t2519.2 + local.set $$t2519.1 + local.get $$t2519.0 + call $runtime.Block.Release + local.set $$t2519.0 + i32.const 14976 + local.get $$t2519.0 + call $runtime.Block.Retain + i32.const 14976 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14976 + local.get $$t2519.1 + i32.store offset=4 + i32.const 14976 + local.get $$t2519.2 + i32.store offset=8 + i32.const 14976 + local.get $$t2519.3 + i32.store offset=12 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2520.1 + local.get $$t2520.0 + call $runtime.Block.Release + local.set $$t2520.0 + local.get $$t2520.0 + call $runtime.Block.Retain + local.get $$t2520.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2521.1 + local.get $$t2521.0 + call $runtime.Block.Release + local.set $$t2521.0 + local.get $$t2521.0 + call $runtime.Block.Retain + local.get $$t2521.1 + i32.const 0 + i32.add + local.set $$t2522.1 + local.get $$t2522.0 + call $runtime.Block.Release + local.set $$t2522.0 + local.get $$t2521.0 + call $runtime.Block.Retain + local.get $$t2521.1 + i32.const 4 + i32.add + local.set $$t2523.1 + local.get $$t2523.0 + call $runtime.Block.Release + local.set $$t2523.0 + local.get $$t2523.0 + call $runtime.Block.Retain + local.get $$t2523.1 + i32.const 0 + i32.add + local.set $$t2524.1 + local.get $$t2524.0 + call $runtime.Block.Release + local.set $$t2524.0 + local.get $$t2523.0 + call $runtime.Block.Retain + local.get $$t2523.1 + i32.const 4 + i32.add + local.set $$t2525.1 + local.get $$t2525.0 + call $runtime.Block.Release + local.set $$t2525.0 + local.get $$t2522.1 + i32.const 118 + i32.store + local.get $$t2524.1 + i32.const 0 + i32.store + local.get $$t2525.1 + i32.const 0 + i32.store + local.get $$t2520.0 + call $runtime.Block.Retain + local.get $$t2520.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2526.1 + local.get $$t2526.0 + call $runtime.Block.Release + local.set $$t2526.0 + local.get $$t2526.0 + call $runtime.Block.Retain + local.get $$t2526.1 + i32.const 0 + i32.add + local.set $$t2527.1 + local.get $$t2527.0 + call $runtime.Block.Release + local.set $$t2527.0 + local.get $$t2526.0 + call $runtime.Block.Retain + local.get $$t2526.1 + i32.const 4 + i32.add + local.set $$t2528.1 + local.get $$t2528.0 + call $runtime.Block.Release + local.set $$t2528.0 + local.get $$t2528.0 + call $runtime.Block.Retain + local.get $$t2528.1 + i32.const 0 + i32.add + local.set $$t2529.1 + local.get $$t2529.0 + call $runtime.Block.Release + local.set $$t2529.0 + local.get $$t2528.0 + call $runtime.Block.Retain + local.get $$t2528.1 + i32.const 4 + i32.add + local.set $$t2530.1 + local.get $$t2530.0 + call $runtime.Block.Release + local.set $$t2530.0 + local.get $$t2527.1 + i32.const 119 + i32.store + local.get $$t2529.1 + i32.const 1 + i32.store + local.get $$t2530.1 + i32.const 0 + i32.store + local.get $$t2520.0 + call $runtime.Block.Retain + local.get $$t2520.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2531.1 + local.get $$t2531.0 + call $runtime.Block.Release + local.set $$t2531.0 + local.get $$t2531.0 + call $runtime.Block.Retain + local.get $$t2531.1 + i32.const 0 + i32.add + local.set $$t2532.1 + local.get $$t2532.0 + call $runtime.Block.Release + local.set $$t2532.0 + local.get $$t2531.0 + call $runtime.Block.Retain + local.get $$t2531.1 + i32.const 4 + i32.add + local.set $$t2533.1 + local.get $$t2533.0 + call $runtime.Block.Release + local.set $$t2533.0 + local.get $$t2533.0 + call $runtime.Block.Retain + local.get $$t2533.1 + i32.const 0 + i32.add + local.set $$t2534.1 + local.get $$t2534.0 + call $runtime.Block.Release + local.set $$t2534.0 + local.get $$t2533.0 + call $runtime.Block.Retain + local.get $$t2533.1 + i32.const 4 + i32.add + local.set $$t2535.1 + local.get $$t2535.0 + call $runtime.Block.Release + local.set $$t2535.0 + local.get $$t2532.1 + i32.const 130 + i32.store + local.get $$t2534.1 + i32.const 0 + i32.store + local.get $$t2535.1 + i32.const 1 + i32.store + local.get $$t2520.0 + call $runtime.Block.Retain + local.get $$t2520.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2536.1 + local.get $$t2536.0 + call $runtime.Block.Release + local.set $$t2536.0 + local.get $$t2536.0 + call $runtime.Block.Retain + local.get $$t2536.1 + i32.const 0 + i32.add + local.set $$t2537.1 + local.get $$t2537.0 + call $runtime.Block.Release + local.set $$t2537.0 + local.get $$t2536.0 + call $runtime.Block.Retain + local.get $$t2536.1 + i32.const 4 + i32.add + local.set $$t2538.1 + local.get $$t2538.0 + call $runtime.Block.Release + local.set $$t2538.0 + local.get $$t2538.0 + call $runtime.Block.Retain + local.get $$t2538.1 + i32.const 0 + i32.add + local.set $$t2539.1 + local.get $$t2539.0 + call $runtime.Block.Release + local.set $$t2539.0 + local.get $$t2538.0 + call $runtime.Block.Retain + local.get $$t2538.1 + i32.const 4 + i32.add + local.set $$t2540.1 + local.get $$t2540.0 + call $runtime.Block.Release + local.set $$t2540.0 + local.get $$t2537.1 + i32.const 131 + i32.store + local.get $$t2539.1 + i32.const 1 + i32.store + local.get $$t2540.1 + i32.const 1 + i32.store + local.get $$t2520.0 + call $runtime.Block.Retain + local.get $$t2520.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2541.3 + local.set $$t2541.2 + local.set $$t2541.1 + local.get $$t2541.0 + call $runtime.Block.Release + local.set $$t2541.0 + i32.const 14816 + local.get $$t2541.0 + call $runtime.Block.Retain + i32.const 14816 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14816 + local.get $$t2541.1 + i32.store offset=4 + i32.const 14816 + local.get $$t2541.2 + i32.store offset=8 + i32.const 14816 + local.get $$t2541.3 + i32.store offset=12 + i32.const 80 + call $runtime.HeapAlloc + i32.const 1 + i32.const 28 + i32.const 64 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2542.1 + local.get $$t2542.0 + call $runtime.Block.Release + local.set $$t2542.0 + local.get $$t2542.0 + call $runtime.Block.Retain + local.get $$t2542.1 + i32.const 32 + i32.const 0 + i32.mul + i32.add + local.set $$t2543.1 + local.get $$t2543.0 + call $runtime.Block.Release + local.set $$t2543.0 + local.get $$t2543.0 + call $runtime.Block.Retain + local.get $$t2543.1 + i32.const 0 + i32.add + local.set $$t2544.1 + local.get $$t2544.0 + call $runtime.Block.Release + local.set $$t2544.0 + i32.const 208 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 192 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2545.1 + local.get $$t2545.0 + call $runtime.Block.Release + local.set $$t2545.0 + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2546.1 + local.get $$t2546.0 + call $runtime.Block.Release + local.set $$t2546.0 + local.get $$t2546.0 + call $runtime.Block.Retain + local.get $$t2546.1 + i32.const 0 + i32.add + local.set $$t2547.1 + local.get $$t2547.0 + call $runtime.Block.Release + local.set $$t2547.0 + local.get $$t2546.0 + call $runtime.Block.Retain + local.get $$t2546.1 + i32.const 4 + i32.add + local.set $$t2548.1 + local.get $$t2548.0 + call $runtime.Block.Release + local.set $$t2548.0 + local.get $$t2548.0 + call $runtime.Block.Retain + local.get $$t2548.1 + i32.const 0 + i32.add + local.set $$t2549.1 + local.get $$t2549.0 + call $runtime.Block.Release + local.set $$t2549.0 + local.get $$t2548.0 + call $runtime.Block.Retain + local.get $$t2548.1 + i32.const 4 + i32.add + local.set $$t2550.1 + local.get $$t2550.0 + call $runtime.Block.Release + local.set $$t2550.0 + local.get $$t2547.1 + i32.const 72 + i32.store + local.get $$t2549.1 + i32.const 0 + i32.store + local.get $$t2550.1 + i32.const 0 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2551.1 + local.get $$t2551.0 + call $runtime.Block.Release + local.set $$t2551.0 + local.get $$t2551.0 + call $runtime.Block.Retain + local.get $$t2551.1 + i32.const 0 + i32.add + local.set $$t2552.1 + local.get $$t2552.0 + call $runtime.Block.Release + local.set $$t2552.0 + local.get $$t2551.0 + call $runtime.Block.Retain + local.get $$t2551.1 + i32.const 4 + i32.add + local.set $$t2553.1 + local.get $$t2553.0 + call $runtime.Block.Release + local.set $$t2553.0 + local.get $$t2553.0 + call $runtime.Block.Retain + local.get $$t2553.1 + i32.const 0 + i32.add + local.set $$t2554.1 + local.get $$t2554.0 + call $runtime.Block.Release + local.set $$t2554.0 + local.get $$t2553.0 + call $runtime.Block.Retain + local.get $$t2553.1 + i32.const 4 + i32.add + local.set $$t2555.1 + local.get $$t2555.0 + call $runtime.Block.Release + local.set $$t2555.0 + local.get $$t2552.1 + i32.const 73 + i32.store + local.get $$t2554.1 + i32.const 3 + i32.store + local.get $$t2555.1 + i32.const 0 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2556.1 + local.get $$t2556.0 + call $runtime.Block.Release + local.set $$t2556.0 + local.get $$t2556.0 + call $runtime.Block.Retain + local.get $$t2556.1 + i32.const 0 + i32.add + local.set $$t2557.1 + local.get $$t2557.0 + call $runtime.Block.Release + local.set $$t2557.0 + local.get $$t2556.0 + call $runtime.Block.Retain + local.get $$t2556.1 + i32.const 4 + i32.add + local.set $$t2558.1 + local.get $$t2558.0 + call $runtime.Block.Release + local.set $$t2558.0 + local.get $$t2558.0 + call $runtime.Block.Retain + local.get $$t2558.1 + i32.const 0 + i32.add + local.set $$t2559.1 + local.get $$t2559.0 + call $runtime.Block.Release + local.set $$t2559.0 + local.get $$t2558.0 + call $runtime.Block.Retain + local.get $$t2558.1 + i32.const 4 + i32.add + local.set $$t2560.1 + local.get $$t2560.0 + call $runtime.Block.Release + local.set $$t2560.0 + local.get $$t2557.1 + i32.const 26 + i32.store + local.get $$t2559.1 + i32.const 1 + i32.store + local.get $$t2560.1 + i32.const 1 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2561.1 + local.get $$t2561.0 + call $runtime.Block.Release + local.set $$t2561.0 + local.get $$t2561.0 + call $runtime.Block.Retain + local.get $$t2561.1 + i32.const 0 + i32.add + local.set $$t2562.1 + local.get $$t2562.0 + call $runtime.Block.Release + local.set $$t2562.0 + local.get $$t2561.0 + call $runtime.Block.Retain + local.get $$t2561.1 + i32.const 4 + i32.add + local.set $$t2563.1 + local.get $$t2563.0 + call $runtime.Block.Release + local.set $$t2563.0 + local.get $$t2563.0 + call $runtime.Block.Retain + local.get $$t2563.1 + i32.const 0 + i32.add + local.set $$t2564.1 + local.get $$t2564.0 + call $runtime.Block.Release + local.set $$t2564.0 + local.get $$t2563.0 + call $runtime.Block.Retain + local.get $$t2563.1 + i32.const 4 + i32.add + local.set $$t2565.1 + local.get $$t2565.0 + call $runtime.Block.Release + local.set $$t2565.0 + local.get $$t2562.1 + i32.const 38 + i32.store + local.get $$t2564.1 + i32.const 2 + i32.store + local.get $$t2565.1 + i32.const 1 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 4 + i32.mul + i32.add + local.set $$t2566.1 + local.get $$t2566.0 + call $runtime.Block.Release + local.set $$t2566.0 + local.get $$t2566.0 + call $runtime.Block.Retain + local.get $$t2566.1 + i32.const 0 + i32.add + local.set $$t2567.1 + local.get $$t2567.0 + call $runtime.Block.Release + local.set $$t2567.0 + local.get $$t2566.0 + call $runtime.Block.Retain + local.get $$t2566.1 + i32.const 4 + i32.add + local.set $$t2568.1 + local.get $$t2568.0 + call $runtime.Block.Release + local.set $$t2568.0 + local.get $$t2568.0 + call $runtime.Block.Retain + local.get $$t2568.1 + i32.const 0 + i32.add + local.set $$t2569.1 + local.get $$t2569.0 + call $runtime.Block.Release + local.set $$t2569.0 + local.get $$t2568.0 + call $runtime.Block.Retain + local.get $$t2568.1 + i32.const 4 + i32.add + local.set $$t2570.1 + local.get $$t2570.0 + call $runtime.Block.Release + local.set $$t2570.0 + local.get $$t2567.1 + i32.const 26 + i32.store + local.get $$t2569.1 + i32.const 2 + i32.store + local.get $$t2570.1 + i32.const 2 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 5 + i32.mul + i32.add + local.set $$t2571.1 + local.get $$t2571.0 + call $runtime.Block.Release + local.set $$t2571.0 + local.get $$t2571.0 + call $runtime.Block.Retain + local.get $$t2571.1 + i32.const 0 + i32.add + local.set $$t2572.1 + local.get $$t2572.0 + call $runtime.Block.Release + local.set $$t2572.0 + local.get $$t2571.0 + call $runtime.Block.Retain + local.get $$t2571.1 + i32.const 4 + i32.add + local.set $$t2573.1 + local.get $$t2573.0 + call $runtime.Block.Release + local.set $$t2573.0 + local.get $$t2573.0 + call $runtime.Block.Retain + local.get $$t2573.1 + i32.const 0 + i32.add + local.set $$t2574.1 + local.get $$t2574.0 + call $runtime.Block.Release + local.set $$t2574.0 + local.get $$t2573.0 + call $runtime.Block.Retain + local.get $$t2573.1 + i32.const 4 + i32.add + local.set $$t2575.1 + local.get $$t2575.0 + call $runtime.Block.Release + local.set $$t2575.0 + local.get $$t2572.1 + i32.const 38 + i32.store + local.get $$t2574.1 + i32.const 1 + i32.store + local.get $$t2575.1 + i32.const 2 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 6 + i32.mul + i32.add + local.set $$t2576.1 + local.get $$t2576.0 + call $runtime.Block.Release + local.set $$t2576.0 + local.get $$t2576.0 + call $runtime.Block.Retain + local.get $$t2576.1 + i32.const 0 + i32.add + local.set $$t2577.1 + local.get $$t2577.0 + call $runtime.Block.Release + local.set $$t2577.0 + local.get $$t2576.0 + call $runtime.Block.Retain + local.get $$t2576.1 + i32.const 4 + i32.add + local.set $$t2578.1 + local.get $$t2578.0 + call $runtime.Block.Release + local.set $$t2578.0 + local.get $$t2578.0 + call $runtime.Block.Retain + local.get $$t2578.1 + i32.const 0 + i32.add + local.set $$t2579.1 + local.get $$t2579.0 + call $runtime.Block.Release + local.set $$t2579.0 + local.get $$t2578.0 + call $runtime.Block.Retain + local.get $$t2578.1 + i32.const 4 + i32.add + local.set $$t2580.1 + local.get $$t2580.0 + call $runtime.Block.Release + local.set $$t2580.0 + local.get $$t2577.1 + i32.const 74 + i32.store + local.get $$t2579.1 + i32.const 0 + i32.store + local.get $$t2580.1 + i32.const 3 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 7 + i32.mul + i32.add + local.set $$t2581.1 + local.get $$t2581.0 + call $runtime.Block.Release + local.set $$t2581.0 + local.get $$t2581.0 + call $runtime.Block.Retain + local.get $$t2581.1 + i32.const 0 + i32.add + local.set $$t2582.1 + local.get $$t2582.0 + call $runtime.Block.Release + local.set $$t2582.0 + local.get $$t2581.0 + call $runtime.Block.Retain + local.get $$t2581.1 + i32.const 4 + i32.add + local.set $$t2583.1 + local.get $$t2583.0 + call $runtime.Block.Release + local.set $$t2583.0 + local.get $$t2583.0 + call $runtime.Block.Retain + local.get $$t2583.1 + i32.const 0 + i32.add + local.set $$t2584.1 + local.get $$t2584.0 + call $runtime.Block.Release + local.set $$t2584.0 + local.get $$t2583.0 + call $runtime.Block.Retain + local.get $$t2583.1 + i32.const 4 + i32.add + local.set $$t2585.1 + local.get $$t2585.0 + call $runtime.Block.Release + local.set $$t2585.0 + local.get $$t2582.1 + i32.const 75 + i32.store + local.get $$t2584.1 + i32.const 3 + i32.store + local.get $$t2585.1 + i32.const 3 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 8 + i32.mul + i32.add + local.set $$t2586.1 + local.get $$t2586.0 + call $runtime.Block.Release + local.set $$t2586.0 + local.get $$t2586.0 + call $runtime.Block.Retain + local.get $$t2586.1 + i32.const 0 + i32.add + local.set $$t2587.1 + local.get $$t2587.0 + call $runtime.Block.Release + local.set $$t2587.0 + local.get $$t2586.0 + call $runtime.Block.Retain + local.get $$t2586.1 + i32.const 4 + i32.add + local.set $$t2588.1 + local.get $$t2588.0 + call $runtime.Block.Release + local.set $$t2588.0 + local.get $$t2588.0 + call $runtime.Block.Retain + local.get $$t2588.1 + i32.const 0 + i32.add + local.set $$t2589.1 + local.get $$t2589.0 + call $runtime.Block.Release + local.set $$t2589.0 + local.get $$t2588.0 + call $runtime.Block.Retain + local.get $$t2588.1 + i32.const 4 + i32.add + local.set $$t2590.1 + local.get $$t2590.0 + call $runtime.Block.Release + local.set $$t2590.0 + local.get $$t2587.1 + i32.const 97 + i32.store + local.get $$t2589.1 + i32.const 0 + i32.store + local.get $$t2590.1 + i32.const 2 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 9 + i32.mul + i32.add + local.set $$t2591.1 + local.get $$t2591.0 + call $runtime.Block.Release + local.set $$t2591.0 + local.get $$t2591.0 + call $runtime.Block.Retain + local.get $$t2591.1 + i32.const 0 + i32.add + local.set $$t2592.1 + local.get $$t2592.0 + call $runtime.Block.Release + local.set $$t2592.0 + local.get $$t2591.0 + call $runtime.Block.Retain + local.get $$t2591.1 + i32.const 4 + i32.add + local.set $$t2593.1 + local.get $$t2593.0 + call $runtime.Block.Release + local.set $$t2593.0 + local.get $$t2593.0 + call $runtime.Block.Retain + local.get $$t2593.1 + i32.const 0 + i32.add + local.set $$t2594.1 + local.get $$t2594.0 + call $runtime.Block.Release + local.set $$t2594.0 + local.get $$t2593.0 + call $runtime.Block.Retain + local.get $$t2593.1 + i32.const 4 + i32.add + local.set $$t2595.1 + local.get $$t2595.0 + call $runtime.Block.Release + local.set $$t2595.0 + local.get $$t2592.1 + i32.const 109 + i32.store + local.get $$t2594.1 + i32.const 0 + i32.store + local.get $$t2595.1 + i32.const 1 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 10 + i32.mul + i32.add + local.set $$t2596.1 + local.get $$t2596.0 + call $runtime.Block.Release + local.set $$t2596.0 + local.get $$t2596.0 + call $runtime.Block.Retain + local.get $$t2596.1 + i32.const 0 + i32.add + local.set $$t2597.1 + local.get $$t2597.0 + call $runtime.Block.Release + local.set $$t2597.0 + local.get $$t2596.0 + call $runtime.Block.Retain + local.get $$t2596.1 + i32.const 4 + i32.add + local.set $$t2598.1 + local.get $$t2598.0 + call $runtime.Block.Release + local.set $$t2598.0 + local.get $$t2598.0 + call $runtime.Block.Retain + local.get $$t2598.1 + i32.const 0 + i32.add + local.set $$t2599.1 + local.get $$t2599.0 + call $runtime.Block.Release + local.set $$t2599.0 + local.get $$t2598.0 + call $runtime.Block.Retain + local.get $$t2598.1 + i32.const 4 + i32.add + local.set $$t2600.1 + local.get $$t2600.0 + call $runtime.Block.Release + local.set $$t2600.0 + local.get $$t2597.1 + i32.const 98 + i32.store + local.get $$t2599.1 + i32.const 1 + i32.store + local.get $$t2600.1 + i32.const 0 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 11 + i32.mul + i32.add + local.set $$t2601.1 + local.get $$t2601.0 + call $runtime.Block.Release + local.set $$t2601.0 + local.get $$t2601.0 + call $runtime.Block.Retain + local.get $$t2601.1 + i32.const 0 + i32.add + local.set $$t2602.1 + local.get $$t2602.0 + call $runtime.Block.Release + local.set $$t2602.0 + local.get $$t2601.0 + call $runtime.Block.Retain + local.get $$t2601.1 + i32.const 4 + i32.add + local.set $$t2603.1 + local.get $$t2603.0 + call $runtime.Block.Release + local.set $$t2603.0 + local.get $$t2603.0 + call $runtime.Block.Retain + local.get $$t2603.1 + i32.const 0 + i32.add + local.set $$t2604.1 + local.get $$t2604.0 + call $runtime.Block.Release + local.set $$t2604.0 + local.get $$t2603.0 + call $runtime.Block.Retain + local.get $$t2603.1 + i32.const 4 + i32.add + local.set $$t2605.1 + local.get $$t2605.0 + call $runtime.Block.Release + local.set $$t2605.0 + local.get $$t2602.1 + i32.const 110 + i32.store + local.get $$t2604.1 + i32.const 1 + i32.store + local.get $$t2605.1 + i32.const 3 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 12 + i32.mul + i32.add + local.set $$t2606.1 + local.get $$t2606.0 + call $runtime.Block.Release + local.set $$t2606.0 + local.get $$t2606.0 + call $runtime.Block.Retain + local.get $$t2606.1 + i32.const 0 + i32.add + local.set $$t2607.1 + local.get $$t2607.0 + call $runtime.Block.Release + local.set $$t2607.0 + local.get $$t2606.0 + call $runtime.Block.Retain + local.get $$t2606.1 + i32.const 4 + i32.add + local.set $$t2608.1 + local.get $$t2608.0 + call $runtime.Block.Release + local.set $$t2608.0 + local.get $$t2608.0 + call $runtime.Block.Retain + local.get $$t2608.1 + i32.const 0 + i32.add + local.set $$t2609.1 + local.get $$t2609.0 + call $runtime.Block.Release + local.set $$t2609.0 + local.get $$t2608.0 + call $runtime.Block.Retain + local.get $$t2608.1 + i32.const 4 + i32.add + local.set $$t2610.1 + local.get $$t2610.0 + call $runtime.Block.Release + local.set $$t2610.0 + local.get $$t2607.1 + i32.const 97 + i32.store + local.get $$t2609.1 + i32.const 2 + i32.store + local.get $$t2610.1 + i32.const 0 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 13 + i32.mul + i32.add + local.set $$t2611.1 + local.get $$t2611.0 + call $runtime.Block.Release + local.set $$t2611.0 + local.get $$t2611.0 + call $runtime.Block.Retain + local.get $$t2611.1 + i32.const 0 + i32.add + local.set $$t2612.1 + local.get $$t2612.0 + call $runtime.Block.Release + local.set $$t2612.0 + local.get $$t2611.0 + call $runtime.Block.Retain + local.get $$t2611.1 + i32.const 4 + i32.add + local.set $$t2613.1 + local.get $$t2613.0 + call $runtime.Block.Release + local.set $$t2613.0 + local.get $$t2613.0 + call $runtime.Block.Retain + local.get $$t2613.1 + i32.const 0 + i32.add + local.set $$t2614.1 + local.get $$t2614.0 + call $runtime.Block.Release + local.set $$t2614.0 + local.get $$t2613.0 + call $runtime.Block.Retain + local.get $$t2613.1 + i32.const 4 + i32.add + local.set $$t2615.1 + local.get $$t2615.0 + call $runtime.Block.Release + local.set $$t2615.0 + local.get $$t2612.1 + i32.const 109 + i32.store + local.get $$t2614.1 + i32.const 2 + i32.store + local.get $$t2615.1 + i32.const 3 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 14 + i32.mul + i32.add + local.set $$t2616.1 + local.get $$t2616.0 + call $runtime.Block.Release + local.set $$t2616.0 + local.get $$t2616.0 + call $runtime.Block.Retain + local.get $$t2616.1 + i32.const 0 + i32.add + local.set $$t2617.1 + local.get $$t2617.0 + call $runtime.Block.Release + local.set $$t2617.0 + local.get $$t2616.0 + call $runtime.Block.Retain + local.get $$t2616.1 + i32.const 4 + i32.add + local.set $$t2618.1 + local.get $$t2618.0 + call $runtime.Block.Release + local.set $$t2618.0 + local.get $$t2618.0 + call $runtime.Block.Retain + local.get $$t2618.1 + i32.const 0 + i32.add + local.set $$t2619.1 + local.get $$t2619.0 + call $runtime.Block.Release + local.set $$t2619.0 + local.get $$t2618.0 + call $runtime.Block.Retain + local.get $$t2618.1 + i32.const 4 + i32.add + local.set $$t2620.1 + local.get $$t2620.0 + call $runtime.Block.Release + local.set $$t2620.0 + local.get $$t2617.1 + i32.const 98 + i32.store + local.get $$t2619.1 + i32.const 3 + i32.store + local.get $$t2620.1 + i32.const 2 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 15 + i32.mul + i32.add + local.set $$t2621.1 + local.get $$t2621.0 + call $runtime.Block.Release + local.set $$t2621.0 + local.get $$t2621.0 + call $runtime.Block.Retain + local.get $$t2621.1 + i32.const 0 + i32.add + local.set $$t2622.1 + local.get $$t2622.0 + call $runtime.Block.Release + local.set $$t2622.0 + local.get $$t2621.0 + call $runtime.Block.Retain + local.get $$t2621.1 + i32.const 4 + i32.add + local.set $$t2623.1 + local.get $$t2623.0 + call $runtime.Block.Release + local.set $$t2623.0 + local.get $$t2623.0 + call $runtime.Block.Retain + local.get $$t2623.1 + i32.const 0 + i32.add + local.set $$t2624.1 + local.get $$t2624.0 + call $runtime.Block.Release + local.set $$t2624.0 + local.get $$t2623.0 + call $runtime.Block.Retain + local.get $$t2623.1 + i32.const 4 + i32.add + local.set $$t2625.1 + local.get $$t2625.0 + call $runtime.Block.Release + local.set $$t2625.0 + local.get $$t2622.1 + i32.const 110 + i32.store + local.get $$t2624.1 + i32.const 3 + i32.store + local.get $$t2625.1 + i32.const 1 + i32.store + local.get $$t2545.0 + call $runtime.Block.Retain + local.get $$t2545.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 16 + i32.const 0 + i32.sub + i32.const 16 + i32.const 0 + i32.sub + local.set $$t2626.3 + local.set $$t2626.2 + local.set $$t2626.1 + local.get $$t2626.0 + call $runtime.Block.Release + local.set $$t2626.0 + local.get $$t2543.0 + call $runtime.Block.Retain + local.get $$t2543.1 + i32.const 16 + i32.add + local.set $$t2627.1 + local.get $$t2627.0 + call $runtime.Block.Release + local.set $$t2627.0 + i32.const 208 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 192 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2628.1 + local.get $$t2628.0 + call $runtime.Block.Release + local.set $$t2628.0 + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2629.1 + local.get $$t2629.0 + call $runtime.Block.Release + local.set $$t2629.0 + local.get $$t2629.0 + call $runtime.Block.Retain + local.get $$t2629.1 + i32.const 0 + i32.add + local.set $$t2630.1 + local.get $$t2630.0 + call $runtime.Block.Release + local.set $$t2630.0 + local.get $$t2629.0 + call $runtime.Block.Retain + local.get $$t2629.1 + i32.const 4 + i32.add + local.set $$t2631.1 + local.get $$t2631.0 + call $runtime.Block.Release + local.set $$t2631.0 + local.get $$t2631.0 + call $runtime.Block.Retain + local.get $$t2631.1 + i32.const 0 + i32.add + local.set $$t2632.1 + local.get $$t2632.0 + call $runtime.Block.Release + local.set $$t2632.0 + local.get $$t2631.0 + call $runtime.Block.Retain + local.get $$t2631.1 + i32.const 4 + i32.add + local.set $$t2633.1 + local.get $$t2633.0 + call $runtime.Block.Release + local.set $$t2633.0 + local.get $$t2630.1 + i32.const 78 + i32.store + local.get $$t2632.1 + i32.const 0 + i32.store + local.get $$t2633.1 + i32.const 0 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2634.1 + local.get $$t2634.0 + call $runtime.Block.Release + local.set $$t2634.0 + local.get $$t2634.0 + call $runtime.Block.Retain + local.get $$t2634.1 + i32.const 0 + i32.add + local.set $$t2635.1 + local.get $$t2635.0 + call $runtime.Block.Release + local.set $$t2635.0 + local.get $$t2634.0 + call $runtime.Block.Retain + local.get $$t2634.1 + i32.const 4 + i32.add + local.set $$t2636.1 + local.get $$t2636.0 + call $runtime.Block.Release + local.set $$t2636.0 + local.get $$t2636.0 + call $runtime.Block.Retain + local.get $$t2636.1 + i32.const 0 + i32.add + local.set $$t2637.1 + local.get $$t2637.0 + call $runtime.Block.Release + local.set $$t2637.0 + local.get $$t2636.0 + call $runtime.Block.Retain + local.get $$t2636.1 + i32.const 4 + i32.add + local.set $$t2638.1 + local.get $$t2638.0 + call $runtime.Block.Release + local.set $$t2638.0 + local.get $$t2635.1 + i32.const 79 + i32.store + local.get $$t2637.1 + i32.const 3 + i32.store + local.get $$t2638.1 + i32.const 0 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2639.1 + local.get $$t2639.0 + call $runtime.Block.Release + local.set $$t2639.0 + local.get $$t2639.0 + call $runtime.Block.Retain + local.get $$t2639.1 + i32.const 0 + i32.add + local.set $$t2640.1 + local.get $$t2640.0 + call $runtime.Block.Release + local.set $$t2640.0 + local.get $$t2639.0 + call $runtime.Block.Retain + local.get $$t2639.1 + i32.const 4 + i32.add + local.set $$t2641.1 + local.get $$t2641.0 + call $runtime.Block.Release + local.set $$t2641.0 + local.get $$t2641.0 + call $runtime.Block.Retain + local.get $$t2641.1 + i32.const 0 + i32.add + local.set $$t2642.1 + local.get $$t2642.0 + call $runtime.Block.Release + local.set $$t2642.0 + local.get $$t2641.0 + call $runtime.Block.Retain + local.get $$t2641.1 + i32.const 4 + i32.add + local.set $$t2643.1 + local.get $$t2643.0 + call $runtime.Block.Release + local.set $$t2643.0 + local.get $$t2640.1 + i32.const 39 + i32.store + local.get $$t2642.1 + i32.const 1 + i32.store + local.get $$t2643.1 + i32.const 1 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2644.1 + local.get $$t2644.0 + call $runtime.Block.Release + local.set $$t2644.0 + local.get $$t2644.0 + call $runtime.Block.Retain + local.get $$t2644.1 + i32.const 0 + i32.add + local.set $$t2645.1 + local.get $$t2645.0 + call $runtime.Block.Release + local.set $$t2645.0 + local.get $$t2644.0 + call $runtime.Block.Retain + local.get $$t2644.1 + i32.const 4 + i32.add + local.set $$t2646.1 + local.get $$t2646.0 + call $runtime.Block.Release + local.set $$t2646.0 + local.get $$t2646.0 + call $runtime.Block.Retain + local.get $$t2646.1 + i32.const 0 + i32.add + local.set $$t2647.1 + local.get $$t2647.0 + call $runtime.Block.Release + local.set $$t2647.0 + local.get $$t2646.0 + call $runtime.Block.Retain + local.get $$t2646.1 + i32.const 4 + i32.add + local.set $$t2648.1 + local.get $$t2648.0 + call $runtime.Block.Release + local.set $$t2648.0 + local.get $$t2645.1 + i32.const 27 + i32.store + local.get $$t2647.1 + i32.const 2 + i32.store + local.get $$t2648.1 + i32.const 1 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 4 + i32.mul + i32.add + local.set $$t2649.1 + local.get $$t2649.0 + call $runtime.Block.Release + local.set $$t2649.0 + local.get $$t2649.0 + call $runtime.Block.Retain + local.get $$t2649.1 + i32.const 0 + i32.add + local.set $$t2650.1 + local.get $$t2650.0 + call $runtime.Block.Release + local.set $$t2650.0 + local.get $$t2649.0 + call $runtime.Block.Retain + local.get $$t2649.1 + i32.const 4 + i32.add + local.set $$t2651.1 + local.get $$t2651.0 + call $runtime.Block.Release + local.set $$t2651.0 + local.get $$t2651.0 + call $runtime.Block.Retain + local.get $$t2651.1 + i32.const 0 + i32.add + local.set $$t2652.1 + local.get $$t2652.0 + call $runtime.Block.Release + local.set $$t2652.0 + local.get $$t2651.0 + call $runtime.Block.Retain + local.get $$t2651.1 + i32.const 4 + i32.add + local.set $$t2653.1 + local.get $$t2653.0 + call $runtime.Block.Release + local.set $$t2653.0 + local.get $$t2650.1 + i32.const 39 + i32.store + local.get $$t2652.1 + i32.const 2 + i32.store + local.get $$t2653.1 + i32.const 2 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 5 + i32.mul + i32.add + local.set $$t2654.1 + local.get $$t2654.0 + call $runtime.Block.Release + local.set $$t2654.0 + local.get $$t2654.0 + call $runtime.Block.Retain + local.get $$t2654.1 + i32.const 0 + i32.add + local.set $$t2655.1 + local.get $$t2655.0 + call $runtime.Block.Release + local.set $$t2655.0 + local.get $$t2654.0 + call $runtime.Block.Retain + local.get $$t2654.1 + i32.const 4 + i32.add + local.set $$t2656.1 + local.get $$t2656.0 + call $runtime.Block.Release + local.set $$t2656.0 + local.get $$t2656.0 + call $runtime.Block.Retain + local.get $$t2656.1 + i32.const 0 + i32.add + local.set $$t2657.1 + local.get $$t2657.0 + call $runtime.Block.Release + local.set $$t2657.0 + local.get $$t2656.0 + call $runtime.Block.Retain + local.get $$t2656.1 + i32.const 4 + i32.add + local.set $$t2658.1 + local.get $$t2658.0 + call $runtime.Block.Release + local.set $$t2658.0 + local.get $$t2655.1 + i32.const 27 + i32.store + local.get $$t2657.1 + i32.const 1 + i32.store + local.get $$t2658.1 + i32.const 2 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 6 + i32.mul + i32.add + local.set $$t2659.1 + local.get $$t2659.0 + call $runtime.Block.Release + local.set $$t2659.0 + local.get $$t2659.0 + call $runtime.Block.Retain + local.get $$t2659.1 + i32.const 0 + i32.add + local.set $$t2660.1 + local.get $$t2660.0 + call $runtime.Block.Release + local.set $$t2660.0 + local.get $$t2659.0 + call $runtime.Block.Retain + local.get $$t2659.1 + i32.const 4 + i32.add + local.set $$t2661.1 + local.get $$t2661.0 + call $runtime.Block.Release + local.set $$t2661.0 + local.get $$t2661.0 + call $runtime.Block.Retain + local.get $$t2661.1 + i32.const 0 + i32.add + local.set $$t2662.1 + local.get $$t2662.0 + call $runtime.Block.Release + local.set $$t2662.0 + local.get $$t2661.0 + call $runtime.Block.Retain + local.get $$t2661.1 + i32.const 4 + i32.add + local.set $$t2663.1 + local.get $$t2663.0 + call $runtime.Block.Release + local.set $$t2663.0 + local.get $$t2660.1 + i32.const 80 + i32.store + local.get $$t2662.1 + i32.const 0 + i32.store + local.get $$t2663.1 + i32.const 3 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 7 + i32.mul + i32.add + local.set $$t2664.1 + local.get $$t2664.0 + call $runtime.Block.Release + local.set $$t2664.0 + local.get $$t2664.0 + call $runtime.Block.Retain + local.get $$t2664.1 + i32.const 0 + i32.add + local.set $$t2665.1 + local.get $$t2665.0 + call $runtime.Block.Release + local.set $$t2665.0 + local.get $$t2664.0 + call $runtime.Block.Retain + local.get $$t2664.1 + i32.const 4 + i32.add + local.set $$t2666.1 + local.get $$t2666.0 + call $runtime.Block.Release + local.set $$t2666.0 + local.get $$t2666.0 + call $runtime.Block.Retain + local.get $$t2666.1 + i32.const 0 + i32.add + local.set $$t2667.1 + local.get $$t2667.0 + call $runtime.Block.Release + local.set $$t2667.0 + local.get $$t2666.0 + call $runtime.Block.Retain + local.get $$t2666.1 + i32.const 4 + i32.add + local.set $$t2668.1 + local.get $$t2668.0 + call $runtime.Block.Release + local.set $$t2668.0 + local.get $$t2665.1 + i32.const 81 + i32.store + local.get $$t2667.1 + i32.const 3 + i32.store + local.get $$t2668.1 + i32.const 3 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 8 + i32.mul + i32.add + local.set $$t2669.1 + local.get $$t2669.0 + call $runtime.Block.Release + local.set $$t2669.0 + local.get $$t2669.0 + call $runtime.Block.Retain + local.get $$t2669.1 + i32.const 0 + i32.add + local.set $$t2670.1 + local.get $$t2670.0 + call $runtime.Block.Release + local.set $$t2670.0 + local.get $$t2669.0 + call $runtime.Block.Retain + local.get $$t2669.1 + i32.const 4 + i32.add + local.set $$t2671.1 + local.get $$t2671.0 + call $runtime.Block.Release + local.set $$t2671.0 + local.get $$t2671.0 + call $runtime.Block.Retain + local.get $$t2671.1 + i32.const 0 + i32.add + local.set $$t2672.1 + local.get $$t2672.0 + call $runtime.Block.Release + local.set $$t2672.0 + local.get $$t2671.0 + call $runtime.Block.Retain + local.get $$t2671.1 + i32.const 4 + i32.add + local.set $$t2673.1 + local.get $$t2673.0 + call $runtime.Block.Release + local.set $$t2673.0 + local.get $$t2670.1 + i32.const 103 + i32.store + local.get $$t2672.1 + i32.const 0 + i32.store + local.get $$t2673.1 + i32.const 2 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 9 + i32.mul + i32.add + local.set $$t2674.1 + local.get $$t2674.0 + call $runtime.Block.Release + local.set $$t2674.0 + local.get $$t2674.0 + call $runtime.Block.Retain + local.get $$t2674.1 + i32.const 0 + i32.add + local.set $$t2675.1 + local.get $$t2675.0 + call $runtime.Block.Release + local.set $$t2675.0 + local.get $$t2674.0 + call $runtime.Block.Retain + local.get $$t2674.1 + i32.const 4 + i32.add + local.set $$t2676.1 + local.get $$t2676.0 + call $runtime.Block.Release + local.set $$t2676.0 + local.get $$t2676.0 + call $runtime.Block.Retain + local.get $$t2676.1 + i32.const 0 + i32.add + local.set $$t2677.1 + local.get $$t2677.0 + call $runtime.Block.Release + local.set $$t2677.0 + local.get $$t2676.0 + call $runtime.Block.Retain + local.get $$t2676.1 + i32.const 4 + i32.add + local.set $$t2678.1 + local.get $$t2678.0 + call $runtime.Block.Release + local.set $$t2678.0 + local.get $$t2675.1 + i32.const 115 + i32.store + local.get $$t2677.1 + i32.const 0 + i32.store + local.get $$t2678.1 + i32.const 1 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 10 + i32.mul + i32.add + local.set $$t2679.1 + local.get $$t2679.0 + call $runtime.Block.Release + local.set $$t2679.0 + local.get $$t2679.0 + call $runtime.Block.Retain + local.get $$t2679.1 + i32.const 0 + i32.add + local.set $$t2680.1 + local.get $$t2680.0 + call $runtime.Block.Release + local.set $$t2680.0 + local.get $$t2679.0 + call $runtime.Block.Retain + local.get $$t2679.1 + i32.const 4 + i32.add + local.set $$t2681.1 + local.get $$t2681.0 + call $runtime.Block.Release + local.set $$t2681.0 + local.get $$t2681.0 + call $runtime.Block.Retain + local.get $$t2681.1 + i32.const 0 + i32.add + local.set $$t2682.1 + local.get $$t2682.0 + call $runtime.Block.Release + local.set $$t2682.0 + local.get $$t2681.0 + call $runtime.Block.Retain + local.get $$t2681.1 + i32.const 4 + i32.add + local.set $$t2683.1 + local.get $$t2683.0 + call $runtime.Block.Release + local.set $$t2683.0 + local.get $$t2680.1 + i32.const 104 + i32.store + local.get $$t2682.1 + i32.const 1 + i32.store + local.get $$t2683.1 + i32.const 0 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 11 + i32.mul + i32.add + local.set $$t2684.1 + local.get $$t2684.0 + call $runtime.Block.Release + local.set $$t2684.0 + local.get $$t2684.0 + call $runtime.Block.Retain + local.get $$t2684.1 + i32.const 0 + i32.add + local.set $$t2685.1 + local.get $$t2685.0 + call $runtime.Block.Release + local.set $$t2685.0 + local.get $$t2684.0 + call $runtime.Block.Retain + local.get $$t2684.1 + i32.const 4 + i32.add + local.set $$t2686.1 + local.get $$t2686.0 + call $runtime.Block.Release + local.set $$t2686.0 + local.get $$t2686.0 + call $runtime.Block.Retain + local.get $$t2686.1 + i32.const 0 + i32.add + local.set $$t2687.1 + local.get $$t2687.0 + call $runtime.Block.Release + local.set $$t2687.0 + local.get $$t2686.0 + call $runtime.Block.Retain + local.get $$t2686.1 + i32.const 4 + i32.add + local.set $$t2688.1 + local.get $$t2688.0 + call $runtime.Block.Release + local.set $$t2688.0 + local.get $$t2685.1 + i32.const 116 + i32.store + local.get $$t2687.1 + i32.const 1 + i32.store + local.get $$t2688.1 + i32.const 3 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 12 + i32.mul + i32.add + local.set $$t2689.1 + local.get $$t2689.0 + call $runtime.Block.Release + local.set $$t2689.0 + local.get $$t2689.0 + call $runtime.Block.Retain + local.get $$t2689.1 + i32.const 0 + i32.add + local.set $$t2690.1 + local.get $$t2690.0 + call $runtime.Block.Release + local.set $$t2690.0 + local.get $$t2689.0 + call $runtime.Block.Retain + local.get $$t2689.1 + i32.const 4 + i32.add + local.set $$t2691.1 + local.get $$t2691.0 + call $runtime.Block.Release + local.set $$t2691.0 + local.get $$t2691.0 + call $runtime.Block.Retain + local.get $$t2691.1 + i32.const 0 + i32.add + local.set $$t2692.1 + local.get $$t2692.0 + call $runtime.Block.Release + local.set $$t2692.0 + local.get $$t2691.0 + call $runtime.Block.Retain + local.get $$t2691.1 + i32.const 4 + i32.add + local.set $$t2693.1 + local.get $$t2693.0 + call $runtime.Block.Release + local.set $$t2693.0 + local.get $$t2690.1 + i32.const 103 + i32.store + local.get $$t2692.1 + i32.const 2 + i32.store + local.get $$t2693.1 + i32.const 0 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 13 + i32.mul + i32.add + local.set $$t2694.1 + local.get $$t2694.0 + call $runtime.Block.Release + local.set $$t2694.0 + local.get $$t2694.0 + call $runtime.Block.Retain + local.get $$t2694.1 + i32.const 0 + i32.add + local.set $$t2695.1 + local.get $$t2695.0 + call $runtime.Block.Release + local.set $$t2695.0 + local.get $$t2694.0 + call $runtime.Block.Retain + local.get $$t2694.1 + i32.const 4 + i32.add + local.set $$t2696.1 + local.get $$t2696.0 + call $runtime.Block.Release + local.set $$t2696.0 + local.get $$t2696.0 + call $runtime.Block.Retain + local.get $$t2696.1 + i32.const 0 + i32.add + local.set $$t2697.1 + local.get $$t2697.0 + call $runtime.Block.Release + local.set $$t2697.0 + local.get $$t2696.0 + call $runtime.Block.Retain + local.get $$t2696.1 + i32.const 4 + i32.add + local.set $$t2698.1 + local.get $$t2698.0 + call $runtime.Block.Release + local.set $$t2698.0 + local.get $$t2695.1 + i32.const 115 + i32.store + local.get $$t2697.1 + i32.const 2 + i32.store + local.get $$t2698.1 + i32.const 3 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 14 + i32.mul + i32.add + local.set $$t2699.1 + local.get $$t2699.0 + call $runtime.Block.Release + local.set $$t2699.0 + local.get $$t2699.0 + call $runtime.Block.Retain + local.get $$t2699.1 + i32.const 0 + i32.add + local.set $$t2700.1 + local.get $$t2700.0 + call $runtime.Block.Release + local.set $$t2700.0 + local.get $$t2699.0 + call $runtime.Block.Retain + local.get $$t2699.1 + i32.const 4 + i32.add + local.set $$t2701.1 + local.get $$t2701.0 + call $runtime.Block.Release + local.set $$t2701.0 + local.get $$t2701.0 + call $runtime.Block.Retain + local.get $$t2701.1 + i32.const 0 + i32.add + local.set $$t2702.1 + local.get $$t2702.0 + call $runtime.Block.Release + local.set $$t2702.0 + local.get $$t2701.0 + call $runtime.Block.Retain + local.get $$t2701.1 + i32.const 4 + i32.add + local.set $$t2703.1 + local.get $$t2703.0 + call $runtime.Block.Release + local.set $$t2703.0 + local.get $$t2700.1 + i32.const 104 + i32.store + local.get $$t2702.1 + i32.const 3 + i32.store + local.get $$t2703.1 + i32.const 2 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 15 + i32.mul + i32.add + local.set $$t2704.1 + local.get $$t2704.0 + call $runtime.Block.Release + local.set $$t2704.0 + local.get $$t2704.0 + call $runtime.Block.Retain + local.get $$t2704.1 + i32.const 0 + i32.add + local.set $$t2705.1 + local.get $$t2705.0 + call $runtime.Block.Release + local.set $$t2705.0 + local.get $$t2704.0 + call $runtime.Block.Retain + local.get $$t2704.1 + i32.const 4 + i32.add + local.set $$t2706.1 + local.get $$t2706.0 + call $runtime.Block.Release + local.set $$t2706.0 + local.get $$t2706.0 + call $runtime.Block.Retain + local.get $$t2706.1 + i32.const 0 + i32.add + local.set $$t2707.1 + local.get $$t2707.0 + call $runtime.Block.Release + local.set $$t2707.0 + local.get $$t2706.0 + call $runtime.Block.Retain + local.get $$t2706.1 + i32.const 4 + i32.add + local.set $$t2708.1 + local.get $$t2708.0 + call $runtime.Block.Release + local.set $$t2708.0 + local.get $$t2705.1 + i32.const 116 + i32.store + local.get $$t2707.1 + i32.const 3 + i32.store + local.get $$t2708.1 + i32.const 1 + i32.store + local.get $$t2628.0 + call $runtime.Block.Retain + local.get $$t2628.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 16 + i32.const 0 + i32.sub + i32.const 16 + i32.const 0 + i32.sub + local.set $$t2709.3 + local.set $$t2709.2 + local.set $$t2709.1 + local.get $$t2709.0 + call $runtime.Block.Release + local.set $$t2709.0 + local.get $$t2544.1 + local.get $$t2626.0 + call $runtime.Block.Retain + local.get $$t2544.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t2544.1 + local.get $$t2626.1 + i32.store offset=4 + local.get $$t2544.1 + local.get $$t2626.2 + i32.store offset=8 + local.get $$t2544.1 + local.get $$t2626.3 + i32.store offset=12 + local.get $$t2627.1 + local.get $$t2709.0 + call $runtime.Block.Retain + local.get $$t2627.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t2627.1 + local.get $$t2709.1 + i32.store offset=4 + local.get $$t2627.1 + local.get $$t2709.2 + i32.store offset=8 + local.get $$t2627.1 + local.get $$t2709.3 + i32.store offset=12 + local.get $$t2542.0 + call $runtime.Block.Retain + local.get $$t2542.1 + i32.const 32 + i32.const 1 + i32.mul + i32.add + local.set $$t2710.1 + local.get $$t2710.0 + call $runtime.Block.Release + local.set $$t2710.0 + local.get $$t2710.0 + call $runtime.Block.Retain + local.get $$t2710.1 + i32.const 0 + i32.add + local.set $$t2711.1 + local.get $$t2711.0 + call $runtime.Block.Release + local.set $$t2711.0 + i32.const 160 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 144 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2712.1 + local.get $$t2712.0 + call $runtime.Block.Release + local.set $$t2712.0 + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2713.1 + local.get $$t2713.0 + call $runtime.Block.Release + local.set $$t2713.0 + local.get $$t2713.0 + call $runtime.Block.Retain + local.get $$t2713.1 + i32.const 0 + i32.add + local.set $$t2714.1 + local.get $$t2714.0 + call $runtime.Block.Release + local.set $$t2714.0 + local.get $$t2713.0 + call $runtime.Block.Retain + local.get $$t2713.1 + i32.const 4 + i32.add + local.set $$t2715.1 + local.get $$t2715.0 + call $runtime.Block.Release + local.set $$t2715.0 + local.get $$t2715.0 + call $runtime.Block.Retain + local.get $$t2715.1 + i32.const 0 + i32.add + local.set $$t2716.1 + local.get $$t2716.0 + call $runtime.Block.Release + local.set $$t2716.0 + local.get $$t2715.0 + call $runtime.Block.Retain + local.get $$t2715.1 + i32.const 4 + i32.add + local.set $$t2717.1 + local.get $$t2717.0 + call $runtime.Block.Release + local.set $$t2717.0 + local.get $$t2714.1 + i32.const 84 + i32.store + local.get $$t2716.1 + i32.const 0 + i32.store + local.get $$t2717.1 + i32.const 0 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2718.1 + local.get $$t2718.0 + call $runtime.Block.Release + local.set $$t2718.0 + local.get $$t2718.0 + call $runtime.Block.Retain + local.get $$t2718.1 + i32.const 0 + i32.add + local.set $$t2719.1 + local.get $$t2719.0 + call $runtime.Block.Release + local.set $$t2719.0 + local.get $$t2718.0 + call $runtime.Block.Retain + local.get $$t2718.1 + i32.const 4 + i32.add + local.set $$t2720.1 + local.get $$t2720.0 + call $runtime.Block.Release + local.set $$t2720.0 + local.get $$t2720.0 + call $runtime.Block.Retain + local.get $$t2720.1 + i32.const 0 + i32.add + local.set $$t2721.1 + local.get $$t2721.0 + call $runtime.Block.Release + local.set $$t2721.0 + local.get $$t2720.0 + call $runtime.Block.Retain + local.get $$t2720.1 + i32.const 4 + i32.add + local.set $$t2722.1 + local.get $$t2722.0 + call $runtime.Block.Release + local.set $$t2722.0 + local.get $$t2719.1 + i32.const 85 + i32.store + local.get $$t2721.1 + i32.const 1 + i32.store + local.get $$t2722.1 + i32.const 0 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2723.1 + local.get $$t2723.0 + call $runtime.Block.Release + local.set $$t2723.0 + local.get $$t2723.0 + call $runtime.Block.Retain + local.get $$t2723.1 + i32.const 0 + i32.add + local.set $$t2724.1 + local.get $$t2724.0 + call $runtime.Block.Release + local.set $$t2724.0 + local.get $$t2723.0 + call $runtime.Block.Retain + local.get $$t2723.1 + i32.const 4 + i32.add + local.set $$t2725.1 + local.get $$t2725.0 + call $runtime.Block.Release + local.set $$t2725.0 + local.get $$t2725.0 + call $runtime.Block.Retain + local.get $$t2725.1 + i32.const 0 + i32.add + local.set $$t2726.1 + local.get $$t2726.0 + call $runtime.Block.Release + local.set $$t2726.0 + local.get $$t2725.0 + call $runtime.Block.Retain + local.get $$t2725.1 + i32.const 4 + i32.add + local.set $$t2727.1 + local.get $$t2727.0 + call $runtime.Block.Release + local.set $$t2727.0 + local.get $$t2724.1 + i32.const 86 + i32.store + local.get $$t2726.1 + i32.const 2 + i32.store + local.get $$t2727.1 + i32.const 0 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2728.1 + local.get $$t2728.0 + call $runtime.Block.Release + local.set $$t2728.0 + local.get $$t2728.0 + call $runtime.Block.Retain + local.get $$t2728.1 + i32.const 0 + i32.add + local.set $$t2729.1 + local.get $$t2729.0 + call $runtime.Block.Release + local.set $$t2729.0 + local.get $$t2728.0 + call $runtime.Block.Retain + local.get $$t2728.1 + i32.const 4 + i32.add + local.set $$t2730.1 + local.get $$t2730.0 + call $runtime.Block.Release + local.set $$t2730.0 + local.get $$t2730.0 + call $runtime.Block.Retain + local.get $$t2730.1 + i32.const 0 + i32.add + local.set $$t2731.1 + local.get $$t2731.0 + call $runtime.Block.Release + local.set $$t2731.0 + local.get $$t2730.0 + call $runtime.Block.Retain + local.get $$t2730.1 + i32.const 4 + i32.add + local.set $$t2732.1 + local.get $$t2732.0 + call $runtime.Block.Release + local.set $$t2732.0 + local.get $$t2729.1 + i32.const 87 + i32.store + local.get $$t2731.1 + i32.const 3 + i32.store + local.get $$t2732.1 + i32.const 0 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 4 + i32.mul + i32.add + local.set $$t2733.1 + local.get $$t2733.0 + call $runtime.Block.Release + local.set $$t2733.0 + local.get $$t2733.0 + call $runtime.Block.Retain + local.get $$t2733.1 + i32.const 0 + i32.add + local.set $$t2734.1 + local.get $$t2734.0 + call $runtime.Block.Release + local.set $$t2734.0 + local.get $$t2733.0 + call $runtime.Block.Retain + local.get $$t2733.1 + i32.const 4 + i32.add + local.set $$t2735.1 + local.get $$t2735.0 + call $runtime.Block.Release + local.set $$t2735.0 + local.get $$t2735.0 + call $runtime.Block.Retain + local.get $$t2735.1 + i32.const 0 + i32.add + local.set $$t2736.1 + local.get $$t2736.0 + call $runtime.Block.Release + local.set $$t2736.0 + local.get $$t2735.0 + call $runtime.Block.Retain + local.get $$t2735.1 + i32.const 4 + i32.add + local.set $$t2737.1 + local.get $$t2737.0 + call $runtime.Block.Release + local.set $$t2737.0 + local.get $$t2734.1 + i32.const 96 + i32.store + local.get $$t2736.1 + i32.const 0 + i32.store + local.get $$t2737.1 + i32.const 1 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 5 + i32.mul + i32.add + local.set $$t2738.1 + local.get $$t2738.0 + call $runtime.Block.Release + local.set $$t2738.0 + local.get $$t2738.0 + call $runtime.Block.Retain + local.get $$t2738.1 + i32.const 0 + i32.add + local.set $$t2739.1 + local.get $$t2739.0 + call $runtime.Block.Release + local.set $$t2739.0 + local.get $$t2738.0 + call $runtime.Block.Retain + local.get $$t2738.1 + i32.const 4 + i32.add + local.set $$t2740.1 + local.get $$t2740.0 + call $runtime.Block.Release + local.set $$t2740.0 + local.get $$t2740.0 + call $runtime.Block.Retain + local.get $$t2740.1 + i32.const 0 + i32.add + local.set $$t2741.1 + local.get $$t2741.0 + call $runtime.Block.Release + local.set $$t2741.0 + local.get $$t2740.0 + call $runtime.Block.Retain + local.get $$t2740.1 + i32.const 4 + i32.add + local.set $$t2742.1 + local.get $$t2742.0 + call $runtime.Block.Release + local.set $$t2742.0 + local.get $$t2739.1 + i32.const 99 + i32.store + local.get $$t2741.1 + i32.const 3 + i32.store + local.get $$t2742.1 + i32.const 1 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 6 + i32.mul + i32.add + local.set $$t2743.1 + local.get $$t2743.0 + call $runtime.Block.Release + local.set $$t2743.0 + local.get $$t2743.0 + call $runtime.Block.Retain + local.get $$t2743.1 + i32.const 0 + i32.add + local.set $$t2744.1 + local.get $$t2744.0 + call $runtime.Block.Release + local.set $$t2744.0 + local.get $$t2743.0 + call $runtime.Block.Retain + local.get $$t2743.1 + i32.const 4 + i32.add + local.set $$t2745.1 + local.get $$t2745.0 + call $runtime.Block.Release + local.set $$t2745.0 + local.get $$t2745.0 + call $runtime.Block.Retain + local.get $$t2745.1 + i32.const 0 + i32.add + local.set $$t2746.1 + local.get $$t2746.0 + call $runtime.Block.Release + local.set $$t2746.0 + local.get $$t2745.0 + call $runtime.Block.Retain + local.get $$t2745.1 + i32.const 4 + i32.add + local.set $$t2747.1 + local.get $$t2747.0 + call $runtime.Block.Release + local.set $$t2747.0 + local.get $$t2744.1 + i32.const 108 + i32.store + local.get $$t2746.1 + i32.const 0 + i32.store + local.get $$t2747.1 + i32.const 2 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 7 + i32.mul + i32.add + local.set $$t2748.1 + local.get $$t2748.0 + call $runtime.Block.Release + local.set $$t2748.0 + local.get $$t2748.0 + call $runtime.Block.Retain + local.get $$t2748.1 + i32.const 0 + i32.add + local.set $$t2749.1 + local.get $$t2749.0 + call $runtime.Block.Release + local.set $$t2749.0 + local.get $$t2748.0 + call $runtime.Block.Retain + local.get $$t2748.1 + i32.const 4 + i32.add + local.set $$t2750.1 + local.get $$t2750.0 + call $runtime.Block.Release + local.set $$t2750.0 + local.get $$t2750.0 + call $runtime.Block.Retain + local.get $$t2750.1 + i32.const 0 + i32.add + local.set $$t2751.1 + local.get $$t2751.0 + call $runtime.Block.Release + local.set $$t2751.0 + local.get $$t2750.0 + call $runtime.Block.Retain + local.get $$t2750.1 + i32.const 4 + i32.add + local.set $$t2752.1 + local.get $$t2752.0 + call $runtime.Block.Release + local.set $$t2752.0 + local.get $$t2749.1 + i32.const 111 + i32.store + local.get $$t2751.1 + i32.const 3 + i32.store + local.get $$t2752.1 + i32.const 2 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 8 + i32.mul + i32.add + local.set $$t2753.1 + local.get $$t2753.0 + call $runtime.Block.Release + local.set $$t2753.0 + local.get $$t2753.0 + call $runtime.Block.Retain + local.get $$t2753.1 + i32.const 0 + i32.add + local.set $$t2754.1 + local.get $$t2754.0 + call $runtime.Block.Release + local.set $$t2754.0 + local.get $$t2753.0 + call $runtime.Block.Retain + local.get $$t2753.1 + i32.const 4 + i32.add + local.set $$t2755.1 + local.get $$t2755.0 + call $runtime.Block.Release + local.set $$t2755.0 + local.get $$t2755.0 + call $runtime.Block.Retain + local.get $$t2755.1 + i32.const 0 + i32.add + local.set $$t2756.1 + local.get $$t2756.0 + call $runtime.Block.Release + local.set $$t2756.0 + local.get $$t2755.0 + call $runtime.Block.Retain + local.get $$t2755.1 + i32.const 4 + i32.add + local.set $$t2757.1 + local.get $$t2757.0 + call $runtime.Block.Release + local.set $$t2757.0 + local.get $$t2754.1 + i32.const 120 + i32.store + local.get $$t2756.1 + i32.const 0 + i32.store + local.get $$t2757.1 + i32.const 3 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 9 + i32.mul + i32.add + local.set $$t2758.1 + local.get $$t2758.0 + call $runtime.Block.Release + local.set $$t2758.0 + local.get $$t2758.0 + call $runtime.Block.Retain + local.get $$t2758.1 + i32.const 0 + i32.add + local.set $$t2759.1 + local.get $$t2759.0 + call $runtime.Block.Release + local.set $$t2759.0 + local.get $$t2758.0 + call $runtime.Block.Retain + local.get $$t2758.1 + i32.const 4 + i32.add + local.set $$t2760.1 + local.get $$t2760.0 + call $runtime.Block.Release + local.set $$t2760.0 + local.get $$t2760.0 + call $runtime.Block.Retain + local.get $$t2760.1 + i32.const 0 + i32.add + local.set $$t2761.1 + local.get $$t2761.0 + call $runtime.Block.Release + local.set $$t2761.0 + local.get $$t2760.0 + call $runtime.Block.Retain + local.get $$t2760.1 + i32.const 4 + i32.add + local.set $$t2762.1 + local.get $$t2762.0 + call $runtime.Block.Release + local.set $$t2762.0 + local.get $$t2759.1 + i32.const 121 + i32.store + local.get $$t2761.1 + i32.const 1 + i32.store + local.get $$t2762.1 + i32.const 3 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 10 + i32.mul + i32.add + local.set $$t2763.1 + local.get $$t2763.0 + call $runtime.Block.Release + local.set $$t2763.0 + local.get $$t2763.0 + call $runtime.Block.Retain + local.get $$t2763.1 + i32.const 0 + i32.add + local.set $$t2764.1 + local.get $$t2764.0 + call $runtime.Block.Release + local.set $$t2764.0 + local.get $$t2763.0 + call $runtime.Block.Retain + local.get $$t2763.1 + i32.const 4 + i32.add + local.set $$t2765.1 + local.get $$t2765.0 + call $runtime.Block.Release + local.set $$t2765.0 + local.get $$t2765.0 + call $runtime.Block.Retain + local.get $$t2765.1 + i32.const 0 + i32.add + local.set $$t2766.1 + local.get $$t2766.0 + call $runtime.Block.Release + local.set $$t2766.0 + local.get $$t2765.0 + call $runtime.Block.Retain + local.get $$t2765.1 + i32.const 4 + i32.add + local.set $$t2767.1 + local.get $$t2767.0 + call $runtime.Block.Release + local.set $$t2767.0 + local.get $$t2764.1 + i32.const 122 + i32.store + local.get $$t2766.1 + i32.const 2 + i32.store + local.get $$t2767.1 + i32.const 3 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 11 + i32.mul + i32.add + local.set $$t2768.1 + local.get $$t2768.0 + call $runtime.Block.Release + local.set $$t2768.0 + local.get $$t2768.0 + call $runtime.Block.Retain + local.get $$t2768.1 + i32.const 0 + i32.add + local.set $$t2769.1 + local.get $$t2769.0 + call $runtime.Block.Release + local.set $$t2769.0 + local.get $$t2768.0 + call $runtime.Block.Retain + local.get $$t2768.1 + i32.const 4 + i32.add + local.set $$t2770.1 + local.get $$t2770.0 + call $runtime.Block.Release + local.set $$t2770.0 + local.get $$t2770.0 + call $runtime.Block.Retain + local.get $$t2770.1 + i32.const 0 + i32.add + local.set $$t2771.1 + local.get $$t2771.0 + call $runtime.Block.Release + local.set $$t2771.0 + local.get $$t2770.0 + call $runtime.Block.Retain + local.get $$t2770.1 + i32.const 4 + i32.add + local.set $$t2772.1 + local.get $$t2772.0 + call $runtime.Block.Release + local.set $$t2772.0 + local.get $$t2769.1 + i32.const 123 + i32.store + local.get $$t2771.1 + i32.const 3 + i32.store + local.get $$t2772.1 + i32.const 3 + i32.store + local.get $$t2712.0 + call $runtime.Block.Retain + local.get $$t2712.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 12 + i32.const 0 + i32.sub + i32.const 12 + i32.const 0 + i32.sub + local.set $$t2773.3 + local.set $$t2773.2 + local.set $$t2773.1 + local.get $$t2773.0 + call $runtime.Block.Release + local.set $$t2773.0 + local.get $$t2710.0 + call $runtime.Block.Retain + local.get $$t2710.1 + i32.const 16 + i32.add + local.set $$t2774.1 + local.get $$t2774.0 + call $runtime.Block.Release + local.set $$t2774.0 + i32.const 160 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 144 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2775.1 + local.get $$t2775.0 + call $runtime.Block.Release + local.set $$t2775.0 + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2776.1 + local.get $$t2776.0 + call $runtime.Block.Release + local.set $$t2776.0 + local.get $$t2776.0 + call $runtime.Block.Retain + local.get $$t2776.1 + i32.const 0 + i32.add + local.set $$t2777.1 + local.get $$t2777.0 + call $runtime.Block.Release + local.set $$t2777.0 + local.get $$t2776.0 + call $runtime.Block.Retain + local.get $$t2776.1 + i32.const 4 + i32.add + local.set $$t2778.1 + local.get $$t2778.0 + call $runtime.Block.Release + local.set $$t2778.0 + local.get $$t2778.0 + call $runtime.Block.Retain + local.get $$t2778.1 + i32.const 0 + i32.add + local.set $$t2779.1 + local.get $$t2779.0 + call $runtime.Block.Release + local.set $$t2779.0 + local.get $$t2778.0 + call $runtime.Block.Retain + local.get $$t2778.1 + i32.const 4 + i32.add + local.set $$t2780.1 + local.get $$t2780.0 + call $runtime.Block.Release + local.set $$t2780.0 + local.get $$t2777.1 + i32.const 90 + i32.store + local.get $$t2779.1 + i32.const 0 + i32.store + local.get $$t2780.1 + i32.const 0 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2781.1 + local.get $$t2781.0 + call $runtime.Block.Release + local.set $$t2781.0 + local.get $$t2781.0 + call $runtime.Block.Retain + local.get $$t2781.1 + i32.const 0 + i32.add + local.set $$t2782.1 + local.get $$t2782.0 + call $runtime.Block.Release + local.set $$t2782.0 + local.get $$t2781.0 + call $runtime.Block.Retain + local.get $$t2781.1 + i32.const 4 + i32.add + local.set $$t2783.1 + local.get $$t2783.0 + call $runtime.Block.Release + local.set $$t2783.0 + local.get $$t2783.0 + call $runtime.Block.Retain + local.get $$t2783.1 + i32.const 0 + i32.add + local.set $$t2784.1 + local.get $$t2784.0 + call $runtime.Block.Release + local.set $$t2784.0 + local.get $$t2783.0 + call $runtime.Block.Retain + local.get $$t2783.1 + i32.const 4 + i32.add + local.set $$t2785.1 + local.get $$t2785.0 + call $runtime.Block.Release + local.set $$t2785.0 + local.get $$t2782.1 + i32.const 91 + i32.store + local.get $$t2784.1 + i32.const 1 + i32.store + local.get $$t2785.1 + i32.const 0 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2786.1 + local.get $$t2786.0 + call $runtime.Block.Release + local.set $$t2786.0 + local.get $$t2786.0 + call $runtime.Block.Retain + local.get $$t2786.1 + i32.const 0 + i32.add + local.set $$t2787.1 + local.get $$t2787.0 + call $runtime.Block.Release + local.set $$t2787.0 + local.get $$t2786.0 + call $runtime.Block.Retain + local.get $$t2786.1 + i32.const 4 + i32.add + local.set $$t2788.1 + local.get $$t2788.0 + call $runtime.Block.Release + local.set $$t2788.0 + local.get $$t2788.0 + call $runtime.Block.Retain + local.get $$t2788.1 + i32.const 0 + i32.add + local.set $$t2789.1 + local.get $$t2789.0 + call $runtime.Block.Release + local.set $$t2789.0 + local.get $$t2788.0 + call $runtime.Block.Retain + local.get $$t2788.1 + i32.const 4 + i32.add + local.set $$t2790.1 + local.get $$t2790.0 + call $runtime.Block.Release + local.set $$t2790.0 + local.get $$t2787.1 + i32.const 92 + i32.store + local.get $$t2789.1 + i32.const 2 + i32.store + local.get $$t2790.1 + i32.const 0 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2791.1 + local.get $$t2791.0 + call $runtime.Block.Release + local.set $$t2791.0 + local.get $$t2791.0 + call $runtime.Block.Retain + local.get $$t2791.1 + i32.const 0 + i32.add + local.set $$t2792.1 + local.get $$t2792.0 + call $runtime.Block.Release + local.set $$t2792.0 + local.get $$t2791.0 + call $runtime.Block.Retain + local.get $$t2791.1 + i32.const 4 + i32.add + local.set $$t2793.1 + local.get $$t2793.0 + call $runtime.Block.Release + local.set $$t2793.0 + local.get $$t2793.0 + call $runtime.Block.Retain + local.get $$t2793.1 + i32.const 0 + i32.add + local.set $$t2794.1 + local.get $$t2794.0 + call $runtime.Block.Release + local.set $$t2794.0 + local.get $$t2793.0 + call $runtime.Block.Retain + local.get $$t2793.1 + i32.const 4 + i32.add + local.set $$t2795.1 + local.get $$t2795.0 + call $runtime.Block.Release + local.set $$t2795.0 + local.get $$t2792.1 + i32.const 93 + i32.store + local.get $$t2794.1 + i32.const 3 + i32.store + local.get $$t2795.1 + i32.const 0 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 4 + i32.mul + i32.add + local.set $$t2796.1 + local.get $$t2796.0 + call $runtime.Block.Release + local.set $$t2796.0 + local.get $$t2796.0 + call $runtime.Block.Retain + local.get $$t2796.1 + i32.const 0 + i32.add + local.set $$t2797.1 + local.get $$t2797.0 + call $runtime.Block.Release + local.set $$t2797.0 + local.get $$t2796.0 + call $runtime.Block.Retain + local.get $$t2796.1 + i32.const 4 + i32.add + local.set $$t2798.1 + local.get $$t2798.0 + call $runtime.Block.Release + local.set $$t2798.0 + local.get $$t2798.0 + call $runtime.Block.Retain + local.get $$t2798.1 + i32.const 0 + i32.add + local.set $$t2799.1 + local.get $$t2799.0 + call $runtime.Block.Release + local.set $$t2799.0 + local.get $$t2798.0 + call $runtime.Block.Retain + local.get $$t2798.1 + i32.const 4 + i32.add + local.set $$t2800.1 + local.get $$t2800.0 + call $runtime.Block.Release + local.set $$t2800.0 + local.get $$t2797.1 + i32.const 102 + i32.store + local.get $$t2799.1 + i32.const 0 + i32.store + local.get $$t2800.1 + i32.const 1 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 5 + i32.mul + i32.add + local.set $$t2801.1 + local.get $$t2801.0 + call $runtime.Block.Release + local.set $$t2801.0 + local.get $$t2801.0 + call $runtime.Block.Retain + local.get $$t2801.1 + i32.const 0 + i32.add + local.set $$t2802.1 + local.get $$t2802.0 + call $runtime.Block.Release + local.set $$t2802.0 + local.get $$t2801.0 + call $runtime.Block.Retain + local.get $$t2801.1 + i32.const 4 + i32.add + local.set $$t2803.1 + local.get $$t2803.0 + call $runtime.Block.Release + local.set $$t2803.0 + local.get $$t2803.0 + call $runtime.Block.Retain + local.get $$t2803.1 + i32.const 0 + i32.add + local.set $$t2804.1 + local.get $$t2804.0 + call $runtime.Block.Release + local.set $$t2804.0 + local.get $$t2803.0 + call $runtime.Block.Retain + local.get $$t2803.1 + i32.const 4 + i32.add + local.set $$t2805.1 + local.get $$t2805.0 + call $runtime.Block.Release + local.set $$t2805.0 + local.get $$t2802.1 + i32.const 105 + i32.store + local.get $$t2804.1 + i32.const 3 + i32.store + local.get $$t2805.1 + i32.const 1 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 6 + i32.mul + i32.add + local.set $$t2806.1 + local.get $$t2806.0 + call $runtime.Block.Release + local.set $$t2806.0 + local.get $$t2806.0 + call $runtime.Block.Retain + local.get $$t2806.1 + i32.const 0 + i32.add + local.set $$t2807.1 + local.get $$t2807.0 + call $runtime.Block.Release + local.set $$t2807.0 + local.get $$t2806.0 + call $runtime.Block.Retain + local.get $$t2806.1 + i32.const 4 + i32.add + local.set $$t2808.1 + local.get $$t2808.0 + call $runtime.Block.Release + local.set $$t2808.0 + local.get $$t2808.0 + call $runtime.Block.Retain + local.get $$t2808.1 + i32.const 0 + i32.add + local.set $$t2809.1 + local.get $$t2809.0 + call $runtime.Block.Release + local.set $$t2809.0 + local.get $$t2808.0 + call $runtime.Block.Retain + local.get $$t2808.1 + i32.const 4 + i32.add + local.set $$t2810.1 + local.get $$t2810.0 + call $runtime.Block.Release + local.set $$t2810.0 + local.get $$t2807.1 + i32.const 114 + i32.store + local.get $$t2809.1 + i32.const 0 + i32.store + local.get $$t2810.1 + i32.const 2 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 7 + i32.mul + i32.add + local.set $$t2811.1 + local.get $$t2811.0 + call $runtime.Block.Release + local.set $$t2811.0 + local.get $$t2811.0 + call $runtime.Block.Retain + local.get $$t2811.1 + i32.const 0 + i32.add + local.set $$t2812.1 + local.get $$t2812.0 + call $runtime.Block.Release + local.set $$t2812.0 + local.get $$t2811.0 + call $runtime.Block.Retain + local.get $$t2811.1 + i32.const 4 + i32.add + local.set $$t2813.1 + local.get $$t2813.0 + call $runtime.Block.Release + local.set $$t2813.0 + local.get $$t2813.0 + call $runtime.Block.Retain + local.get $$t2813.1 + i32.const 0 + i32.add + local.set $$t2814.1 + local.get $$t2814.0 + call $runtime.Block.Release + local.set $$t2814.0 + local.get $$t2813.0 + call $runtime.Block.Retain + local.get $$t2813.1 + i32.const 4 + i32.add + local.set $$t2815.1 + local.get $$t2815.0 + call $runtime.Block.Release + local.set $$t2815.0 + local.get $$t2812.1 + i32.const 117 + i32.store + local.get $$t2814.1 + i32.const 3 + i32.store + local.get $$t2815.1 + i32.const 2 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 8 + i32.mul + i32.add + local.set $$t2816.1 + local.get $$t2816.0 + call $runtime.Block.Release + local.set $$t2816.0 + local.get $$t2816.0 + call $runtime.Block.Retain + local.get $$t2816.1 + i32.const 0 + i32.add + local.set $$t2817.1 + local.get $$t2817.0 + call $runtime.Block.Release + local.set $$t2817.0 + local.get $$t2816.0 + call $runtime.Block.Retain + local.get $$t2816.1 + i32.const 4 + i32.add + local.set $$t2818.1 + local.get $$t2818.0 + call $runtime.Block.Release + local.set $$t2818.0 + local.get $$t2818.0 + call $runtime.Block.Retain + local.get $$t2818.1 + i32.const 0 + i32.add + local.set $$t2819.1 + local.get $$t2819.0 + call $runtime.Block.Release + local.set $$t2819.0 + local.get $$t2818.0 + call $runtime.Block.Retain + local.get $$t2818.1 + i32.const 4 + i32.add + local.set $$t2820.1 + local.get $$t2820.0 + call $runtime.Block.Release + local.set $$t2820.0 + local.get $$t2817.1 + i32.const 126 + i32.store + local.get $$t2819.1 + i32.const 0 + i32.store + local.get $$t2820.1 + i32.const 3 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 9 + i32.mul + i32.add + local.set $$t2821.1 + local.get $$t2821.0 + call $runtime.Block.Release + local.set $$t2821.0 + local.get $$t2821.0 + call $runtime.Block.Retain + local.get $$t2821.1 + i32.const 0 + i32.add + local.set $$t2822.1 + local.get $$t2822.0 + call $runtime.Block.Release + local.set $$t2822.0 + local.get $$t2821.0 + call $runtime.Block.Retain + local.get $$t2821.1 + i32.const 4 + i32.add + local.set $$t2823.1 + local.get $$t2823.0 + call $runtime.Block.Release + local.set $$t2823.0 + local.get $$t2823.0 + call $runtime.Block.Retain + local.get $$t2823.1 + i32.const 0 + i32.add + local.set $$t2824.1 + local.get $$t2824.0 + call $runtime.Block.Release + local.set $$t2824.0 + local.get $$t2823.0 + call $runtime.Block.Retain + local.get $$t2823.1 + i32.const 4 + i32.add + local.set $$t2825.1 + local.get $$t2825.0 + call $runtime.Block.Release + local.set $$t2825.0 + local.get $$t2822.1 + i32.const 127 + i32.store + local.get $$t2824.1 + i32.const 1 + i32.store + local.get $$t2825.1 + i32.const 3 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 10 + i32.mul + i32.add + local.set $$t2826.1 + local.get $$t2826.0 + call $runtime.Block.Release + local.set $$t2826.0 + local.get $$t2826.0 + call $runtime.Block.Retain + local.get $$t2826.1 + i32.const 0 + i32.add + local.set $$t2827.1 + local.get $$t2827.0 + call $runtime.Block.Release + local.set $$t2827.0 + local.get $$t2826.0 + call $runtime.Block.Retain + local.get $$t2826.1 + i32.const 4 + i32.add + local.set $$t2828.1 + local.get $$t2828.0 + call $runtime.Block.Release + local.set $$t2828.0 + local.get $$t2828.0 + call $runtime.Block.Retain + local.get $$t2828.1 + i32.const 0 + i32.add + local.set $$t2829.1 + local.get $$t2829.0 + call $runtime.Block.Release + local.set $$t2829.0 + local.get $$t2828.0 + call $runtime.Block.Retain + local.get $$t2828.1 + i32.const 4 + i32.add + local.set $$t2830.1 + local.get $$t2830.0 + call $runtime.Block.Release + local.set $$t2830.0 + local.get $$t2827.1 + i32.const 128 + i32.store + local.get $$t2829.1 + i32.const 2 + i32.store + local.get $$t2830.1 + i32.const 3 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 11 + i32.mul + i32.add + local.set $$t2831.1 + local.get $$t2831.0 + call $runtime.Block.Release + local.set $$t2831.0 + local.get $$t2831.0 + call $runtime.Block.Retain + local.get $$t2831.1 + i32.const 0 + i32.add + local.set $$t2832.1 + local.get $$t2832.0 + call $runtime.Block.Release + local.set $$t2832.0 + local.get $$t2831.0 + call $runtime.Block.Retain + local.get $$t2831.1 + i32.const 4 + i32.add + local.set $$t2833.1 + local.get $$t2833.0 + call $runtime.Block.Release + local.set $$t2833.0 + local.get $$t2833.0 + call $runtime.Block.Retain + local.get $$t2833.1 + i32.const 0 + i32.add + local.set $$t2834.1 + local.get $$t2834.0 + call $runtime.Block.Release + local.set $$t2834.0 + local.get $$t2833.0 + call $runtime.Block.Retain + local.get $$t2833.1 + i32.const 4 + i32.add + local.set $$t2835.1 + local.get $$t2835.0 + call $runtime.Block.Release + local.set $$t2835.0 + local.get $$t2832.1 + i32.const 129 + i32.store + local.get $$t2834.1 + i32.const 3 + i32.store + local.get $$t2835.1 + i32.const 3 + i32.store + local.get $$t2775.0 + call $runtime.Block.Retain + local.get $$t2775.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 12 + i32.const 0 + i32.sub + i32.const 12 + i32.const 0 + i32.sub + local.set $$t2836.3 + local.set $$t2836.2 + local.set $$t2836.1 + local.get $$t2836.0 + call $runtime.Block.Release + local.set $$t2836.0 + local.get $$t2711.1 + local.get $$t2773.0 + call $runtime.Block.Retain + local.get $$t2711.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t2711.1 + local.get $$t2773.1 + i32.store offset=4 + local.get $$t2711.1 + local.get $$t2773.2 + i32.store offset=8 + local.get $$t2711.1 + local.get $$t2773.3 + i32.store offset=12 + local.get $$t2774.1 + local.get $$t2836.0 + call $runtime.Block.Retain + local.get $$t2774.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t2774.1 + local.get $$t2836.1 + i32.store offset=4 + local.get $$t2774.1 + local.get $$t2836.2 + i32.store offset=8 + local.get $$t2774.1 + local.get $$t2836.3 + i32.store offset=12 + local.get $$t2542.0 + call $runtime.Block.Retain + local.get $$t2542.1 + i32.const 32 + i32.const 0 + i32.mul + i32.add + i32.const 2 + i32.const 0 + i32.sub + i32.const 2 + i32.const 0 + i32.sub + local.set $$t2837.3 + local.set $$t2837.2 + local.set $$t2837.1 + local.get $$t2837.0 + call $runtime.Block.Release + local.set $$t2837.0 + i32.const 15008 + local.get $$t2837.0 + call $runtime.Block.Retain + i32.const 15008 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 15008 + local.get $$t2837.1 + i32.store offset=4 + i32.const 15008 + local.get $$t2837.2 + i32.store offset=8 + i32.const 15008 + local.get $$t2837.3 + i32.store offset=12 + i32.const 48 + call $runtime.HeapAlloc + i32.const 1 + i32.const 30 + i32.const 32 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2838.1 + local.get $$t2838.0 + call $runtime.Block.Release + local.set $$t2838.0 + local.get $$t2838.0 + call $runtime.Block.Retain + local.get $$t2838.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + local.set $$t2839.1 + local.get $$t2839.0 + call $runtime.Block.Release + local.set $$t2839.0 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2840.1 + local.get $$t2840.0 + call $runtime.Block.Release + local.set $$t2840.0 + local.get $$t2840.0 + call $runtime.Block.Retain + local.get $$t2840.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2841.1 + local.get $$t2841.0 + call $runtime.Block.Release + local.set $$t2841.0 + local.get $$t2841.0 + call $runtime.Block.Retain + local.get $$t2841.1 + i32.const 0 + i32.add + local.set $$t2842.1 + local.get $$t2842.0 + call $runtime.Block.Release + local.set $$t2842.0 + local.get $$t2841.0 + call $runtime.Block.Retain + local.get $$t2841.1 + i32.const 4 + i32.add + local.set $$t2843.1 + local.get $$t2843.0 + call $runtime.Block.Release + local.set $$t2843.0 + local.get $$t2843.0 + call $runtime.Block.Retain + local.get $$t2843.1 + i32.const 0 + i32.add + local.set $$t2844.1 + local.get $$t2844.0 + call $runtime.Block.Release + local.set $$t2844.0 + local.get $$t2843.0 + call $runtime.Block.Retain + local.get $$t2843.1 + i32.const 4 + i32.add + local.set $$t2845.1 + local.get $$t2845.0 + call $runtime.Block.Release + local.set $$t2845.0 + local.get $$t2842.1 + i32.const 0 + i32.store + local.get $$t2844.1 + i32.const 0 + i32.store + local.get $$t2845.1 + i32.const 0 + i32.store + local.get $$t2840.0 + call $runtime.Block.Retain + local.get $$t2840.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2846.1 + local.get $$t2846.0 + call $runtime.Block.Release + local.set $$t2846.0 + local.get $$t2846.0 + call $runtime.Block.Retain + local.get $$t2846.1 + i32.const 0 + i32.add + local.set $$t2847.1 + local.get $$t2847.0 + call $runtime.Block.Release + local.set $$t2847.0 + local.get $$t2846.0 + call $runtime.Block.Retain + local.get $$t2846.1 + i32.const 4 + i32.add + local.set $$t2848.1 + local.get $$t2848.0 + call $runtime.Block.Release + local.set $$t2848.0 + local.get $$t2848.0 + call $runtime.Block.Retain + local.get $$t2848.1 + i32.const 0 + i32.add + local.set $$t2849.1 + local.get $$t2849.0 + call $runtime.Block.Release + local.set $$t2849.0 + local.get $$t2848.0 + call $runtime.Block.Retain + local.get $$t2848.1 + i32.const 4 + i32.add + local.set $$t2850.1 + local.get $$t2850.0 + call $runtime.Block.Release + local.set $$t2850.0 + local.get $$t2847.1 + i32.const 1 + i32.store + local.get $$t2849.1 + i32.const 1 + i32.store + local.get $$t2850.1 + i32.const 0 + i32.store + local.get $$t2840.0 + call $runtime.Block.Retain + local.get $$t2840.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2851.1 + local.get $$t2851.0 + call $runtime.Block.Release + local.set $$t2851.0 + local.get $$t2851.0 + call $runtime.Block.Retain + local.get $$t2851.1 + i32.const 0 + i32.add + local.set $$t2852.1 + local.get $$t2852.0 + call $runtime.Block.Release + local.set $$t2852.0 + local.get $$t2851.0 + call $runtime.Block.Retain + local.get $$t2851.1 + i32.const 4 + i32.add + local.set $$t2853.1 + local.get $$t2853.0 + call $runtime.Block.Release + local.set $$t2853.0 + local.get $$t2853.0 + call $runtime.Block.Retain + local.get $$t2853.1 + i32.const 0 + i32.add + local.set $$t2854.1 + local.get $$t2854.0 + call $runtime.Block.Release + local.set $$t2854.0 + local.get $$t2853.0 + call $runtime.Block.Retain + local.get $$t2853.1 + i32.const 4 + i32.add + local.set $$t2855.1 + local.get $$t2855.0 + call $runtime.Block.Release + local.set $$t2855.0 + local.get $$t2852.1 + i32.const 12 + i32.store + local.get $$t2854.1 + i32.const 0 + i32.store + local.get $$t2855.1 + i32.const 1 + i32.store + local.get $$t2840.0 + call $runtime.Block.Retain + local.get $$t2840.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2856.1 + local.get $$t2856.0 + call $runtime.Block.Release + local.set $$t2856.0 + local.get $$t2856.0 + call $runtime.Block.Retain + local.get $$t2856.1 + i32.const 0 + i32.add + local.set $$t2857.1 + local.get $$t2857.0 + call $runtime.Block.Release + local.set $$t2857.0 + local.get $$t2856.0 + call $runtime.Block.Retain + local.get $$t2856.1 + i32.const 4 + i32.add + local.set $$t2858.1 + local.get $$t2858.0 + call $runtime.Block.Release + local.set $$t2858.0 + local.get $$t2858.0 + call $runtime.Block.Retain + local.get $$t2858.1 + i32.const 0 + i32.add + local.set $$t2859.1 + local.get $$t2859.0 + call $runtime.Block.Release + local.set $$t2859.0 + local.get $$t2858.0 + call $runtime.Block.Retain + local.get $$t2858.1 + i32.const 4 + i32.add + local.set $$t2860.1 + local.get $$t2860.0 + call $runtime.Block.Release + local.set $$t2860.0 + local.get $$t2857.1 + i32.const 13 + i32.store + local.get $$t2859.1 + i32.const 1 + i32.store + local.get $$t2860.1 + i32.const 1 + i32.store + local.get $$t2840.0 + call $runtime.Block.Retain + local.get $$t2840.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2861.3 + local.set $$t2861.2 + local.set $$t2861.1 + local.get $$t2861.0 + call $runtime.Block.Release + local.set $$t2861.0 + local.get $$t2861.0 + call $runtime.Block.Retain + local.get $$t2861.1 + local.get $$t2861.2 + local.get $$t2861.3 + local.set $$t2862.3 + local.set $$t2862.2 + local.set $$t2862.1 + local.get $$t2862.0 + call $runtime.Block.Release + local.set $$t2862.0 + local.get $$t2839.1 + local.get $$t2862.0 + call $runtime.Block.Retain + local.get $$t2839.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t2839.1 + local.get $$t2862.1 + i32.store offset=4 + local.get $$t2839.1 + local.get $$t2862.2 + i32.store offset=8 + local.get $$t2839.1 + local.get $$t2862.3 + i32.store offset=12 + local.get $$t2838.0 + call $runtime.Block.Retain + local.get $$t2838.1 + i32.const 16 + i32.const 1 + i32.mul + i32.add + local.set $$t2863.1 + local.get $$t2863.0 + call $runtime.Block.Release + local.set $$t2863.0 + i32.const 64 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 48 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t2864.1 + local.get $$t2864.0 + call $runtime.Block.Release + local.set $$t2864.0 + local.get $$t2864.0 + call $runtime.Block.Retain + local.get $$t2864.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2865.1 + local.get $$t2865.0 + call $runtime.Block.Release + local.set $$t2865.0 + local.get $$t2865.0 + call $runtime.Block.Retain + local.get $$t2865.1 + i32.const 0 + i32.add + local.set $$t2866.1 + local.get $$t2866.0 + call $runtime.Block.Release + local.set $$t2866.0 + local.get $$t2865.0 + call $runtime.Block.Retain + local.get $$t2865.1 + i32.const 4 + i32.add + local.set $$t2867.1 + local.get $$t2867.0 + call $runtime.Block.Release + local.set $$t2867.0 + local.get $$t2867.0 + call $runtime.Block.Retain + local.get $$t2867.1 + i32.const 0 + i32.add + local.set $$t2868.1 + local.get $$t2868.0 + call $runtime.Block.Release + local.set $$t2868.0 + local.get $$t2867.0 + call $runtime.Block.Retain + local.get $$t2867.1 + i32.const 4 + i32.add + local.set $$t2869.1 + local.get $$t2869.0 + call $runtime.Block.Release + local.set $$t2869.0 + local.get $$t2866.1 + i32.const 24 + i32.store + local.get $$t2868.1 + i32.const 0 + i32.store + local.get $$t2869.1 + i32.const 0 + i32.store + local.get $$t2864.0 + call $runtime.Block.Retain + local.get $$t2864.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t2870.1 + local.get $$t2870.0 + call $runtime.Block.Release + local.set $$t2870.0 + local.get $$t2870.0 + call $runtime.Block.Retain + local.get $$t2870.1 + i32.const 0 + i32.add + local.set $$t2871.1 + local.get $$t2871.0 + call $runtime.Block.Release + local.set $$t2871.0 + local.get $$t2870.0 + call $runtime.Block.Retain + local.get $$t2870.1 + i32.const 4 + i32.add + local.set $$t2872.1 + local.get $$t2872.0 + call $runtime.Block.Release + local.set $$t2872.0 + local.get $$t2872.0 + call $runtime.Block.Retain + local.get $$t2872.1 + i32.const 0 + i32.add + local.set $$t2873.1 + local.get $$t2873.0 + call $runtime.Block.Release + local.set $$t2873.0 + local.get $$t2872.0 + call $runtime.Block.Retain + local.get $$t2872.1 + i32.const 4 + i32.add + local.set $$t2874.1 + local.get $$t2874.0 + call $runtime.Block.Release + local.set $$t2874.0 + local.get $$t2871.1 + i32.const 25 + i32.store + local.get $$t2873.1 + i32.const 1 + i32.store + local.get $$t2874.1 + i32.const 0 + i32.store + local.get $$t2864.0 + call $runtime.Block.Retain + local.get $$t2864.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t2875.1 + local.get $$t2875.0 + call $runtime.Block.Release + local.set $$t2875.0 + local.get $$t2875.0 + call $runtime.Block.Retain + local.get $$t2875.1 + i32.const 0 + i32.add + local.set $$t2876.1 + local.get $$t2876.0 + call $runtime.Block.Release + local.set $$t2876.0 + local.get $$t2875.0 + call $runtime.Block.Retain + local.get $$t2875.1 + i32.const 4 + i32.add + local.set $$t2877.1 + local.get $$t2877.0 + call $runtime.Block.Release + local.set $$t2877.0 + local.get $$t2877.0 + call $runtime.Block.Retain + local.get $$t2877.1 + i32.const 0 + i32.add + local.set $$t2878.1 + local.get $$t2878.0 + call $runtime.Block.Release + local.set $$t2878.0 + local.get $$t2877.0 + call $runtime.Block.Retain + local.get $$t2877.1 + i32.const 4 + i32.add + local.set $$t2879.1 + local.get $$t2879.0 + call $runtime.Block.Release + local.set $$t2879.0 + local.get $$t2876.1 + i32.const 36 + i32.store + local.get $$t2878.1 + i32.const 0 + i32.store + local.get $$t2879.1 + i32.const 1 + i32.store + local.get $$t2864.0 + call $runtime.Block.Retain + local.get $$t2864.1 + i32.const 12 + i32.const 3 + i32.mul + i32.add + local.set $$t2880.1 + local.get $$t2880.0 + call $runtime.Block.Release + local.set $$t2880.0 + local.get $$t2880.0 + call $runtime.Block.Retain + local.get $$t2880.1 + i32.const 0 + i32.add + local.set $$t2881.1 + local.get $$t2881.0 + call $runtime.Block.Release + local.set $$t2881.0 + local.get $$t2880.0 + call $runtime.Block.Retain + local.get $$t2880.1 + i32.const 4 + i32.add + local.set $$t2882.1 + local.get $$t2882.0 + call $runtime.Block.Release + local.set $$t2882.0 + local.get $$t2882.0 + call $runtime.Block.Retain + local.get $$t2882.1 + i32.const 0 + i32.add + local.set $$t2883.1 + local.get $$t2883.0 + call $runtime.Block.Release + local.set $$t2883.0 + local.get $$t2882.0 + call $runtime.Block.Retain + local.get $$t2882.1 + i32.const 4 + i32.add + local.set $$t2884.1 + local.get $$t2884.0 + call $runtime.Block.Release + local.set $$t2884.0 + local.get $$t2881.1 + i32.const 37 + i32.store + local.get $$t2883.1 + i32.const 1 + i32.store + local.get $$t2884.1 + i32.const 1 + i32.store + local.get $$t2864.0 + call $runtime.Block.Retain + local.get $$t2864.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + i32.const 4 + i32.const 0 + i32.sub + i32.const 4 + i32.const 0 + i32.sub + local.set $$t2885.3 + local.set $$t2885.2 + local.set $$t2885.1 + local.get $$t2885.0 + call $runtime.Block.Release + local.set $$t2885.0 + local.get $$t2885.0 + call $runtime.Block.Retain + local.get $$t2885.1 + local.get $$t2885.2 + local.get $$t2885.3 + local.set $$t2886.3 + local.set $$t2886.2 + local.set $$t2886.1 + local.get $$t2886.0 + call $runtime.Block.Release + local.set $$t2886.0 + local.get $$t2863.1 + local.get $$t2886.0 + call $runtime.Block.Retain + local.get $$t2863.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t2863.1 + local.get $$t2886.1 + i32.store offset=4 + local.get $$t2863.1 + local.get $$t2886.2 + i32.store offset=8 + local.get $$t2863.1 + local.get $$t2886.3 + i32.store offset=12 + local.get $$t2838.0 + call $runtime.Block.Retain + local.get $$t2838.1 + i32.const 16 + i32.const 0 + i32.mul + i32.add + i32.const 2 + i32.const 0 + i32.sub + i32.const 2 + i32.const 0 + i32.sub + local.set $$t2887.3 + local.set $$t2887.2 + local.set $$t2887.1 + local.get $$t2887.0 + call $runtime.Block.Release + local.set $$t2887.0 + i32.const 14992 + local.get $$t2887.0 + call $runtime.Block.Retain + i32.const 14992 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + i32.const 14992 + local.get $$t2887.1 + i32.store offset=4 + i32.const 14992 + local.get $$t2887.2 + i32.store offset=8 + i32.const 14992 + local.get $$t2887.3 + i32.store offset=12 + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + local.get $$t40.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t48.0 + call $runtime.Block.Release + local.get $$t49.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t62.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t64.0 + call $runtime.Block.Release + local.get $$t65.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t67.0 + call $runtime.Block.Release + local.get $$t68.0 + call $runtime.Block.Release + local.get $$t69.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + local.get $$t72.0 + call $runtime.Block.Release + local.get $$t73.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t75.0 + call $runtime.Block.Release + local.get $$t76.0 + call $runtime.Block.Release + local.get $$t77.0 + call $runtime.Block.Release + local.get $$t78.0 + call $runtime.Block.Release + local.get $$t79.0 + call $runtime.Block.Release + local.get $$t80.0 + call $runtime.Block.Release + local.get $$t81.0 + call $runtime.Block.Release + local.get $$t82.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + local.get $$t84.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t86.0 + call $runtime.Block.Release + local.get $$t87.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t89.0 + call $runtime.Block.Release + local.get $$t90.0 + call $runtime.Block.Release + local.get $$t91.0 + call $runtime.Block.Release + local.get $$t92.0 + call $runtime.Block.Release + local.get $$t93.0 + call $runtime.Block.Release + local.get $$t94.0 + call $runtime.Block.Release + local.get $$t95.0 + call $runtime.Block.Release + local.get $$t96.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t98.0 + call $runtime.Block.Release + local.get $$t99.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t101.0 + call $runtime.Block.Release + local.get $$t102.0 + call $runtime.Block.Release + local.get $$t103.0 + call $runtime.Block.Release + local.get $$t104.0 + call $runtime.Block.Release + local.get $$t105.0 + call $runtime.Block.Release + local.get $$t106.0 + call $runtime.Block.Release + local.get $$t107.0 + call $runtime.Block.Release + local.get $$t108.0 + call $runtime.Block.Release + local.get $$t109.0 + call $runtime.Block.Release + local.get $$t110.0 + call $runtime.Block.Release + local.get $$t111.0 + call $runtime.Block.Release + local.get $$t112.0 + call $runtime.Block.Release + local.get $$t113.0 + call $runtime.Block.Release + local.get $$t114.0 + call $runtime.Block.Release + local.get $$t115.0 + call $runtime.Block.Release + local.get $$t116.0 + call $runtime.Block.Release + local.get $$t117.0 + call $runtime.Block.Release + local.get $$t118.0 + call $runtime.Block.Release + local.get $$t119.0 + call $runtime.Block.Release + local.get $$t120.0 + call $runtime.Block.Release + local.get $$t121.0 + call $runtime.Block.Release + local.get $$t122.0 + call $runtime.Block.Release + local.get $$t123.0 + call $runtime.Block.Release + local.get $$t124.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + local.get $$t126.0 + call $runtime.Block.Release + local.get $$t127.0 + call $runtime.Block.Release + local.get $$t128.0 + call $runtime.Block.Release + local.get $$t129.0 + call $runtime.Block.Release + local.get $$t130.0 + call $runtime.Block.Release + local.get $$t131.0 + call $runtime.Block.Release + local.get $$t132.0 + call $runtime.Block.Release + local.get $$t133.0 + call $runtime.Block.Release + local.get $$t134.0 + call $runtime.Block.Release + local.get $$t135.0 + call $runtime.Block.Release + local.get $$t136.0 + call $runtime.Block.Release + local.get $$t137.0 + call $runtime.Block.Release + local.get $$t138.0 + call $runtime.Block.Release + local.get $$t139.0 + call $runtime.Block.Release + local.get $$t140.0 + call $runtime.Block.Release + local.get $$t141.0 + call $runtime.Block.Release + local.get $$t142.0 + call $runtime.Block.Release + local.get $$t143.0 + call $runtime.Block.Release + local.get $$t144.0 + call $runtime.Block.Release + local.get $$t145.0 + call $runtime.Block.Release + local.get $$t146.0 + call $runtime.Block.Release + local.get $$t147.0 + call $runtime.Block.Release + local.get $$t148.0 + call $runtime.Block.Release + local.get $$t149.0 + call $runtime.Block.Release + local.get $$t150.0 + call $runtime.Block.Release + local.get $$t151.0 + call $runtime.Block.Release + local.get $$t152.0 + call $runtime.Block.Release + local.get $$t153.0 + call $runtime.Block.Release + local.get $$t154.0 + call $runtime.Block.Release + local.get $$t155.0 + call $runtime.Block.Release + local.get $$t156.0 + call $runtime.Block.Release + local.get $$t157.0 + call $runtime.Block.Release + local.get $$t158.0 + call $runtime.Block.Release + local.get $$t159.0 + call $runtime.Block.Release + local.get $$t160.0 + call $runtime.Block.Release + local.get $$t161.0 + call $runtime.Block.Release + local.get $$t162.0 + call $runtime.Block.Release + local.get $$t163.0 + call $runtime.Block.Release + local.get $$t164.0 + call $runtime.Block.Release + local.get $$t165.0 + call $runtime.Block.Release + local.get $$t166.0 + call $runtime.Block.Release + local.get $$t167.0 + call $runtime.Block.Release + local.get $$t168.0 + call $runtime.Block.Release + local.get $$t169.0 + call $runtime.Block.Release + local.get $$t170.0 + call $runtime.Block.Release + local.get $$t171.0 + call $runtime.Block.Release + local.get $$t172.0 + call $runtime.Block.Release + local.get $$t173.0 + call $runtime.Block.Release + local.get $$t174.0 + call $runtime.Block.Release + local.get $$t175.0 + call $runtime.Block.Release + local.get $$t176.0 + call $runtime.Block.Release + local.get $$t177.0 + call $runtime.Block.Release + local.get $$t178.0 + call $runtime.Block.Release + local.get $$t179.0 + call $runtime.Block.Release + local.get $$t180.0 + call $runtime.Block.Release + local.get $$t181.0 + call $runtime.Block.Release + local.get $$t182.0 + call $runtime.Block.Release + local.get $$t183.0 + call $runtime.Block.Release + local.get $$t184.0 + call $runtime.Block.Release + local.get $$t185.0 + call $runtime.Block.Release + local.get $$t186.0 + call $runtime.Block.Release + local.get $$t187.0 + call $runtime.Block.Release + local.get $$t188.0 + call $runtime.Block.Release + local.get $$t189.0 + call $runtime.Block.Release + local.get $$t190.0 + call $runtime.Block.Release + local.get $$t191.0 + call $runtime.Block.Release + local.get $$t192.0 + call $runtime.Block.Release + local.get $$t193.0 + call $runtime.Block.Release + local.get $$t194.0 + call $runtime.Block.Release + local.get $$t195.0 + call $runtime.Block.Release + local.get $$t196.0 + call $runtime.Block.Release + local.get $$t197.0 + call $runtime.Block.Release + local.get $$t198.0 + call $runtime.Block.Release + local.get $$t199.0 + call $runtime.Block.Release + local.get $$t200.0 + call $runtime.Block.Release + local.get $$t201.0 + call $runtime.Block.Release + local.get $$t202.0 + call $runtime.Block.Release + local.get $$t203.0 + call $runtime.Block.Release + local.get $$t204.0 + call $runtime.Block.Release + local.get $$t205.0 + call $runtime.Block.Release + local.get $$t206.0 + call $runtime.Block.Release + local.get $$t207.0 + call $runtime.Block.Release + local.get $$t208.0 + call $runtime.Block.Release + local.get $$t209.0 + call $runtime.Block.Release + local.get $$t210.0 + call $runtime.Block.Release + local.get $$t211.0 + call $runtime.Block.Release + local.get $$t212.0 + call $runtime.Block.Release + local.get $$t213.0 + call $runtime.Block.Release + local.get $$t214.0 + call $runtime.Block.Release + local.get $$t215.0 + call $runtime.Block.Release + local.get $$t216.0 + call $runtime.Block.Release + local.get $$t217.0 + call $runtime.Block.Release + local.get $$t218.0 + call $runtime.Block.Release + local.get $$t219.0 + call $runtime.Block.Release + local.get $$t220.0 + call $runtime.Block.Release + local.get $$t221.0 + call $runtime.Block.Release + local.get $$t222.0 + call $runtime.Block.Release + local.get $$t223.0 + call $runtime.Block.Release + local.get $$t224.0 + call $runtime.Block.Release + local.get $$t225.0 + call $runtime.Block.Release + local.get $$t226.0 + call $runtime.Block.Release + local.get $$t227.0 + call $runtime.Block.Release + local.get $$t228.0 + call $runtime.Block.Release + local.get $$t229.0 + call $runtime.Block.Release + local.get $$t230.0 + call $runtime.Block.Release + local.get $$t231.0 + call $runtime.Block.Release + local.get $$t232.0 + call $runtime.Block.Release + local.get $$t233.0 + call $runtime.Block.Release + local.get $$t234.0 + call $runtime.Block.Release + local.get $$t235.0 + call $runtime.Block.Release + local.get $$t236.0 + call $runtime.Block.Release + local.get $$t237.0 + call $runtime.Block.Release + local.get $$t238.0 + call $runtime.Block.Release + local.get $$t239.0 + call $runtime.Block.Release + local.get $$t240.0 + call $runtime.Block.Release + local.get $$t241.0 + call $runtime.Block.Release + local.get $$t242.0 + call $runtime.Block.Release + local.get $$t243.0 + call $runtime.Block.Release + local.get $$t244.0 + call $runtime.Block.Release + local.get $$t245.0 + call $runtime.Block.Release + local.get $$t246.0 + call $runtime.Block.Release + local.get $$t247.0 + call $runtime.Block.Release + local.get $$t248.0 + call $runtime.Block.Release + local.get $$t249.0 + call $runtime.Block.Release + local.get $$t250.0 + call $runtime.Block.Release + local.get $$t251.0 + call $runtime.Block.Release + local.get $$t252.0 + call $runtime.Block.Release + local.get $$t253.0 + call $runtime.Block.Release + local.get $$t254.0 + call $runtime.Block.Release + local.get $$t255.0 + call $runtime.Block.Release + local.get $$t256.0 + call $runtime.Block.Release + local.get $$t257.0 + call $runtime.Block.Release + local.get $$t258.0 + call $runtime.Block.Release + local.get $$t259.0 + call $runtime.Block.Release + local.get $$t260.0 + call $runtime.Block.Release + local.get $$t261.0 + call $runtime.Block.Release + local.get $$t262.0 + call $runtime.Block.Release + local.get $$t263.0 + call $runtime.Block.Release + local.get $$t264.0 + call $runtime.Block.Release + local.get $$t265.0 + call $runtime.Block.Release + local.get $$t266.0 + call $runtime.Block.Release + local.get $$t267.0 + call $runtime.Block.Release + local.get $$t268.0 + call $runtime.Block.Release + local.get $$t269.0 + call $runtime.Block.Release + local.get $$t270.0 + call $runtime.Block.Release + local.get $$t271.0 + call $runtime.Block.Release + local.get $$t272.0 + call $runtime.Block.Release + local.get $$t273.0 + call $runtime.Block.Release + local.get $$t274.0 + call $runtime.Block.Release + local.get $$t275.0 + call $runtime.Block.Release + local.get $$t276.0 + call $runtime.Block.Release + local.get $$t277.0 + call $runtime.Block.Release + local.get $$t278.0 + call $runtime.Block.Release + local.get $$t279.0 + call $runtime.Block.Release + local.get $$t280.0 + call $runtime.Block.Release + local.get $$t281.0 + call $runtime.Block.Release + local.get $$t282.0 + call $runtime.Block.Release + local.get $$t283.0 + call $runtime.Block.Release + local.get $$t284.0 + call $runtime.Block.Release + local.get $$t285.0 + call $runtime.Block.Release + local.get $$t286.0 + call $runtime.Block.Release + local.get $$t287.0 + call $runtime.Block.Release + local.get $$t288.0 + call $runtime.Block.Release + local.get $$t289.0 + call $runtime.Block.Release + local.get $$t290.0 + call $runtime.Block.Release + local.get $$t291.0 + call $runtime.Block.Release + local.get $$t292.0 + call $runtime.Block.Release + local.get $$t293.0 + call $runtime.Block.Release + local.get $$t294.0 + call $runtime.Block.Release + local.get $$t295.0 + call $runtime.Block.Release + local.get $$t296.0 + call $runtime.Block.Release + local.get $$t297.0 + call $runtime.Block.Release + local.get $$t298.0 + call $runtime.Block.Release + local.get $$t299.0 + call $runtime.Block.Release + local.get $$t300.0 + call $runtime.Block.Release + local.get $$t301.0 + call $runtime.Block.Release + local.get $$t302.0 + call $runtime.Block.Release + local.get $$t303.0 + call $runtime.Block.Release + local.get $$t304.0 + call $runtime.Block.Release + local.get $$t305.0 + call $runtime.Block.Release + local.get $$t306.0 + call $runtime.Block.Release + local.get $$t307.0 + call $runtime.Block.Release + local.get $$t308.0 + call $runtime.Block.Release + local.get $$t309.0 + call $runtime.Block.Release + local.get $$t310.0 + call $runtime.Block.Release + local.get $$t311.0 + call $runtime.Block.Release + local.get $$t312.0 + call $runtime.Block.Release + local.get $$t313.0 + call $runtime.Block.Release + local.get $$t314.0 + call $runtime.Block.Release + local.get $$t315.0 + call $runtime.Block.Release + local.get $$t316.0 + call $runtime.Block.Release + local.get $$t317.0 + call $runtime.Block.Release + local.get $$t318.0 + call $runtime.Block.Release + local.get $$t319.0 + call $runtime.Block.Release + local.get $$t320.0 + call $runtime.Block.Release + local.get $$t321.0 + call $runtime.Block.Release + local.get $$t322.0 + call $runtime.Block.Release + local.get $$t323.0 + call $runtime.Block.Release + local.get $$t324.0 + call $runtime.Block.Release + local.get $$t325.0 + call $runtime.Block.Release + local.get $$t326.0 + call $runtime.Block.Release + local.get $$t327.0 + call $runtime.Block.Release + local.get $$t328.0 + call $runtime.Block.Release + local.get $$t329.0 + call $runtime.Block.Release + local.get $$t330.0 + call $runtime.Block.Release + local.get $$t331.0 + call $runtime.Block.Release + local.get $$t332.0 + call $runtime.Block.Release + local.get $$t333.0 + call $runtime.Block.Release + local.get $$t334.0 + call $runtime.Block.Release + local.get $$t335.0 + call $runtime.Block.Release + local.get $$t336.0 + call $runtime.Block.Release + local.get $$t337.0 + call $runtime.Block.Release + local.get $$t338.0 + call $runtime.Block.Release + local.get $$t339.0 + call $runtime.Block.Release + local.get $$t340.0 + call $runtime.Block.Release + local.get $$t341.0 + call $runtime.Block.Release + local.get $$t342.0 + call $runtime.Block.Release + local.get $$t343.0 + call $runtime.Block.Release + local.get $$t344.0 + call $runtime.Block.Release + local.get $$t345.0 + call $runtime.Block.Release + local.get $$t346.0 + call $runtime.Block.Release + local.get $$t347.0 + call $runtime.Block.Release + local.get $$t348.0 + call $runtime.Block.Release + local.get $$t349.0 + call $runtime.Block.Release + local.get $$t350.0 + call $runtime.Block.Release + local.get $$t351.0 + call $runtime.Block.Release + local.get $$t352.0 + call $runtime.Block.Release + local.get $$t353.0 + call $runtime.Block.Release + local.get $$t354.0 + call $runtime.Block.Release + local.get $$t355.0 + call $runtime.Block.Release + local.get $$t356.0 + call $runtime.Block.Release + local.get $$t357.0 + call $runtime.Block.Release + local.get $$t358.0 + call $runtime.Block.Release + local.get $$t359.0 + call $runtime.Block.Release + local.get $$t360.0 + call $runtime.Block.Release + local.get $$t361.0 + call $runtime.Block.Release + local.get $$t362.0 + call $runtime.Block.Release + local.get $$t363.0 + call $runtime.Block.Release + local.get $$t364.0 + call $runtime.Block.Release + local.get $$t365.0 + call $runtime.Block.Release + local.get $$t366.0 + call $runtime.Block.Release + local.get $$t367.0 + call $runtime.Block.Release + local.get $$t368.0 + call $runtime.Block.Release + local.get $$t369.0 + call $runtime.Block.Release + local.get $$t370.0 + call $runtime.Block.Release + local.get $$t371.0 + call $runtime.Block.Release + local.get $$t372.0 + call $runtime.Block.Release + local.get $$t373.0 + call $runtime.Block.Release + local.get $$t374.0 + call $runtime.Block.Release + local.get $$t375.0 + call $runtime.Block.Release + local.get $$t376.0 + call $runtime.Block.Release + local.get $$t377.0 + call $runtime.Block.Release + local.get $$t378.0 + call $runtime.Block.Release + local.get $$t379.0 + call $runtime.Block.Release + local.get $$t380.0 + call $runtime.Block.Release + local.get $$t381.0 + call $runtime.Block.Release + local.get $$t382.0 + call $runtime.Block.Release + local.get $$t383.0 + call $runtime.Block.Release + local.get $$t384.0 + call $runtime.Block.Release + local.get $$t385.0 + call $runtime.Block.Release + local.get $$t386.0 + call $runtime.Block.Release + local.get $$t387.0 + call $runtime.Block.Release + local.get $$t388.0 + call $runtime.Block.Release + local.get $$t389.0 + call $runtime.Block.Release + local.get $$t390.0 + call $runtime.Block.Release + local.get $$t391.0 + call $runtime.Block.Release + local.get $$t392.0 + call $runtime.Block.Release + local.get $$t393.0 + call $runtime.Block.Release + local.get $$t394.0 + call $runtime.Block.Release + local.get $$t395.0 + call $runtime.Block.Release + local.get $$t396.0 + call $runtime.Block.Release + local.get $$t397.0 + call $runtime.Block.Release + local.get $$t398.0 + call $runtime.Block.Release + local.get $$t399.0 + call $runtime.Block.Release + local.get $$t400.0 + call $runtime.Block.Release + local.get $$t401.0 + call $runtime.Block.Release + local.get $$t402.0 + call $runtime.Block.Release + local.get $$t403.0 + call $runtime.Block.Release + local.get $$t404.0 + call $runtime.Block.Release + local.get $$t405.0 + call $runtime.Block.Release + local.get $$t406.0 + call $runtime.Block.Release + local.get $$t407.0 + call $runtime.Block.Release + local.get $$t408.0 + call $runtime.Block.Release + local.get $$t409.0 + call $runtime.Block.Release + local.get $$t410.0 + call $runtime.Block.Release + local.get $$t411.0 + call $runtime.Block.Release + local.get $$t412.0 + call $runtime.Block.Release + local.get $$t413.0 + call $runtime.Block.Release + local.get $$t414.0 + call $runtime.Block.Release + local.get $$t415.0 + call $runtime.Block.Release + local.get $$t416.0 + call $runtime.Block.Release + local.get $$t417.0 + call $runtime.Block.Release + local.get $$t418.0 + call $runtime.Block.Release + local.get $$t419.0 + call $runtime.Block.Release + local.get $$t420.0 + call $runtime.Block.Release + local.get $$t421.0 + call $runtime.Block.Release + local.get $$t422.0 + call $runtime.Block.Release + local.get $$t423.0 + call $runtime.Block.Release + local.get $$t424.0 + call $runtime.Block.Release + local.get $$t425.0 + call $runtime.Block.Release + local.get $$t426.0 + call $runtime.Block.Release + local.get $$t427.0 + call $runtime.Block.Release + local.get $$t428.0 + call $runtime.Block.Release + local.get $$t429.0 + call $runtime.Block.Release + local.get $$t430.0 + call $runtime.Block.Release + local.get $$t431.0 + call $runtime.Block.Release + local.get $$t432.0 + call $runtime.Block.Release + local.get $$t433.0 + call $runtime.Block.Release + local.get $$t434.0 + call $runtime.Block.Release + local.get $$t435.0 + call $runtime.Block.Release + local.get $$t436.0 + call $runtime.Block.Release + local.get $$t437.0 + call $runtime.Block.Release + local.get $$t438.0 + call $runtime.Block.Release + local.get $$t439.0 + call $runtime.Block.Release + local.get $$t440.0 + call $runtime.Block.Release + local.get $$t441.0 + call $runtime.Block.Release + local.get $$t442.0 + call $runtime.Block.Release + local.get $$t443.0 + call $runtime.Block.Release + local.get $$t444.0 + call $runtime.Block.Release + local.get $$t445.0 + call $runtime.Block.Release + local.get $$t446.0 + call $runtime.Block.Release + local.get $$t447.0 + call $runtime.Block.Release + local.get $$t448.0 + call $runtime.Block.Release + local.get $$t449.0 + call $runtime.Block.Release + local.get $$t450.0 + call $runtime.Block.Release + local.get $$t451.0 + call $runtime.Block.Release + local.get $$t452.0 + call $runtime.Block.Release + local.get $$t453.0 + call $runtime.Block.Release + local.get $$t454.0 + call $runtime.Block.Release + local.get $$t455.0 + call $runtime.Block.Release + local.get $$t456.0 + call $runtime.Block.Release + local.get $$t457.0 + call $runtime.Block.Release + local.get $$t458.0 + call $runtime.Block.Release + local.get $$t459.0 + call $runtime.Block.Release + local.get $$t460.0 + call $runtime.Block.Release + local.get $$t461.0 + call $runtime.Block.Release + local.get $$t462.0 + call $runtime.Block.Release + local.get $$t463.0 + call $runtime.Block.Release + local.get $$t464.0 + call $runtime.Block.Release + local.get $$t465.0 + call $runtime.Block.Release + local.get $$t466.0 + call $runtime.Block.Release + local.get $$t467.0 + call $runtime.Block.Release + local.get $$t468.0 + call $runtime.Block.Release + local.get $$t469.0 + call $runtime.Block.Release + local.get $$t470.0 + call $runtime.Block.Release + local.get $$t471.0 + call $runtime.Block.Release + local.get $$t472.0 + call $runtime.Block.Release + local.get $$t473.0 + call $runtime.Block.Release + local.get $$t474.0 + call $runtime.Block.Release + local.get $$t475.0 + call $runtime.Block.Release + local.get $$t476.0 + call $runtime.Block.Release + local.get $$t477.0 + call $runtime.Block.Release + local.get $$t478.0 + call $runtime.Block.Release + local.get $$t479.0 + call $runtime.Block.Release + local.get $$t480.0 + call $runtime.Block.Release + local.get $$t481.0 + call $runtime.Block.Release + local.get $$t482.0 + call $runtime.Block.Release + local.get $$t483.0 + call $runtime.Block.Release + local.get $$t484.0 + call $runtime.Block.Release + local.get $$t485.0 + call $runtime.Block.Release + local.get $$t486.0 + call $runtime.Block.Release + local.get $$t487.0 + call $runtime.Block.Release + local.get $$t488.0 + call $runtime.Block.Release + local.get $$t489.0 + call $runtime.Block.Release + local.get $$t490.0 + call $runtime.Block.Release + local.get $$t491.0 + call $runtime.Block.Release + local.get $$t492.0 + call $runtime.Block.Release + local.get $$t493.0 + call $runtime.Block.Release + local.get $$t494.0 + call $runtime.Block.Release + local.get $$t495.0 + call $runtime.Block.Release + local.get $$t496.0 + call $runtime.Block.Release + local.get $$t497.0 + call $runtime.Block.Release + local.get $$t498.0 + call $runtime.Block.Release + local.get $$t499.0 + call $runtime.Block.Release + local.get $$t500.0 + call $runtime.Block.Release + local.get $$t501.0 + call $runtime.Block.Release + local.get $$t502.0 + call $runtime.Block.Release + local.get $$t503.0 + call $runtime.Block.Release + local.get $$t504.0 + call $runtime.Block.Release + local.get $$t505.0 + call $runtime.Block.Release + local.get $$t506.0 + call $runtime.Block.Release + local.get $$t507.0 + call $runtime.Block.Release + local.get $$t508.0 + call $runtime.Block.Release + local.get $$t509.0 + call $runtime.Block.Release + local.get $$t510.0 + call $runtime.Block.Release + local.get $$t511.0 + call $runtime.Block.Release + local.get $$t512.0 + call $runtime.Block.Release + local.get $$t513.0 + call $runtime.Block.Release + local.get $$t514.0 + call $runtime.Block.Release + local.get $$t515.0 + call $runtime.Block.Release + local.get $$t516.0 + call $runtime.Block.Release + local.get $$t517.0 + call $runtime.Block.Release + local.get $$t518.0 + call $runtime.Block.Release + local.get $$t519.0 + call $runtime.Block.Release + local.get $$t520.0 + call $runtime.Block.Release + local.get $$t521.0 + call $runtime.Block.Release + local.get $$t522.0 + call $runtime.Block.Release + local.get $$t523.0 + call $runtime.Block.Release + local.get $$t524.0 + call $runtime.Block.Release + local.get $$t525.0 + call $runtime.Block.Release + local.get $$t526.0 + call $runtime.Block.Release + local.get $$t527.0 + call $runtime.Block.Release + local.get $$t528.0 + call $runtime.Block.Release + local.get $$t529.0 + call $runtime.Block.Release + local.get $$t530.0 + call $runtime.Block.Release + local.get $$t531.0 + call $runtime.Block.Release + local.get $$t532.0 + call $runtime.Block.Release + local.get $$t533.0 + call $runtime.Block.Release + local.get $$t534.0 + call $runtime.Block.Release + local.get $$t535.0 + call $runtime.Block.Release + local.get $$t536.0 + call $runtime.Block.Release + local.get $$t537.0 + call $runtime.Block.Release + local.get $$t538.0 + call $runtime.Block.Release + local.get $$t539.0 + call $runtime.Block.Release + local.get $$t540.0 + call $runtime.Block.Release + local.get $$t541.0 + call $runtime.Block.Release + local.get $$t542.0 + call $runtime.Block.Release + local.get $$t543.0 + call $runtime.Block.Release + local.get $$t544.0 + call $runtime.Block.Release + local.get $$t545.0 + call $runtime.Block.Release + local.get $$t546.0 + call $runtime.Block.Release + local.get $$t547.0 + call $runtime.Block.Release + local.get $$t548.0 + call $runtime.Block.Release + local.get $$t549.0 + call $runtime.Block.Release + local.get $$t550.0 + call $runtime.Block.Release + local.get $$t551.0 + call $runtime.Block.Release + local.get $$t552.0 + call $runtime.Block.Release + local.get $$t553.0 + call $runtime.Block.Release + local.get $$t554.0 + call $runtime.Block.Release + local.get $$t555.0 + call $runtime.Block.Release + local.get $$t556.0 + call $runtime.Block.Release + local.get $$t557.0 + call $runtime.Block.Release + local.get $$t558.0 + call $runtime.Block.Release + local.get $$t559.0 + call $runtime.Block.Release + local.get $$t560.0 + call $runtime.Block.Release + local.get $$t561.0 + call $runtime.Block.Release + local.get $$t562.0 + call $runtime.Block.Release + local.get $$t563.0 + call $runtime.Block.Release + local.get $$t564.0 + call $runtime.Block.Release + local.get $$t565.0 + call $runtime.Block.Release + local.get $$t566.0 + call $runtime.Block.Release + local.get $$t567.0 + call $runtime.Block.Release + local.get $$t568.0 + call $runtime.Block.Release + local.get $$t569.0 + call $runtime.Block.Release + local.get $$t570.0 + call $runtime.Block.Release + local.get $$t571.0 + call $runtime.Block.Release + local.get $$t572.0 + call $runtime.Block.Release + local.get $$t573.0 + call $runtime.Block.Release + local.get $$t574.0 + call $runtime.Block.Release + local.get $$t575.0 + call $runtime.Block.Release + local.get $$t576.0 + call $runtime.Block.Release + local.get $$t577.0 + call $runtime.Block.Release + local.get $$t578.0 + call $runtime.Block.Release + local.get $$t579.0 + call $runtime.Block.Release + local.get $$t580.0 + call $runtime.Block.Release + local.get $$t581.0 + call $runtime.Block.Release + local.get $$t582.0 + call $runtime.Block.Release + local.get $$t583.0 + call $runtime.Block.Release + local.get $$t584.0 + call $runtime.Block.Release + local.get $$t585.0 + call $runtime.Block.Release + local.get $$t586.0 + call $runtime.Block.Release + local.get $$t587.0 + call $runtime.Block.Release + local.get $$t588.0 + call $runtime.Block.Release + local.get $$t589.0 + call $runtime.Block.Release + local.get $$t590.0 + call $runtime.Block.Release + local.get $$t591.0 + call $runtime.Block.Release + local.get $$t592.0 + call $runtime.Block.Release + local.get $$t593.0 + call $runtime.Block.Release + local.get $$t594.0 + call $runtime.Block.Release + local.get $$t595.0 + call $runtime.Block.Release + local.get $$t596.0 + call $runtime.Block.Release + local.get $$t597.0 + call $runtime.Block.Release + local.get $$t598.0 + call $runtime.Block.Release + local.get $$t599.0 + call $runtime.Block.Release + local.get $$t600.0 + call $runtime.Block.Release + local.get $$t601.0 + call $runtime.Block.Release + local.get $$t602.0 + call $runtime.Block.Release + local.get $$t603.0 + call $runtime.Block.Release + local.get $$t604.0 + call $runtime.Block.Release + local.get $$t605.0 + call $runtime.Block.Release + local.get $$t606.0 + call $runtime.Block.Release + local.get $$t607.0 + call $runtime.Block.Release + local.get $$t608.0 + call $runtime.Block.Release + local.get $$t609.0 + call $runtime.Block.Release + local.get $$t610.0 + call $runtime.Block.Release + local.get $$t611.0 + call $runtime.Block.Release + local.get $$t612.0 + call $runtime.Block.Release + local.get $$t613.0 + call $runtime.Block.Release + local.get $$t614.0 + call $runtime.Block.Release + local.get $$t615.0 + call $runtime.Block.Release + local.get $$t616.0 + call $runtime.Block.Release + local.get $$t617.0 + call $runtime.Block.Release + local.get $$t618.0 + call $runtime.Block.Release + local.get $$t619.0 + call $runtime.Block.Release + local.get $$t620.0 + call $runtime.Block.Release + local.get $$t621.0 + call $runtime.Block.Release + local.get $$t622.0 + call $runtime.Block.Release + local.get $$t623.0 + call $runtime.Block.Release + local.get $$t624.0 + call $runtime.Block.Release + local.get $$t625.0 + call $runtime.Block.Release + local.get $$t626.0 + call $runtime.Block.Release + local.get $$t627.0 + call $runtime.Block.Release + local.get $$t628.0 + call $runtime.Block.Release + local.get $$t629.0 + call $runtime.Block.Release + local.get $$t630.0 + call $runtime.Block.Release + local.get $$t631.0 + call $runtime.Block.Release + local.get $$t632.0 + call $runtime.Block.Release + local.get $$t633.0 + call $runtime.Block.Release + local.get $$t634.0 + call $runtime.Block.Release + local.get $$t635.0 + call $runtime.Block.Release + local.get $$t636.0 + call $runtime.Block.Release + local.get $$t637.0 + call $runtime.Block.Release + local.get $$t638.0 + call $runtime.Block.Release + local.get $$t639.0 + call $runtime.Block.Release + local.get $$t640.0 + call $runtime.Block.Release + local.get $$t641.0 + call $runtime.Block.Release + local.get $$t642.0 + call $runtime.Block.Release + local.get $$t643.0 + call $runtime.Block.Release + local.get $$t644.0 + call $runtime.Block.Release + local.get $$t645.0 + call $runtime.Block.Release + local.get $$t646.0 + call $runtime.Block.Release + local.get $$t647.0 + call $runtime.Block.Release + local.get $$t648.0 + call $runtime.Block.Release + local.get $$t649.0 + call $runtime.Block.Release + local.get $$t650.0 + call $runtime.Block.Release + local.get $$t651.0 + call $runtime.Block.Release + local.get $$t652.0 + call $runtime.Block.Release + local.get $$t653.0 + call $runtime.Block.Release + local.get $$t654.0 + call $runtime.Block.Release + local.get $$t655.0 + call $runtime.Block.Release + local.get $$t656.0 + call $runtime.Block.Release + local.get $$t657.0 + call $runtime.Block.Release + local.get $$t658.0 + call $runtime.Block.Release + local.get $$t659.0 + call $runtime.Block.Release + local.get $$t660.0 + call $runtime.Block.Release + local.get $$t661.0 + call $runtime.Block.Release + local.get $$t662.0 + call $runtime.Block.Release + local.get $$t663.0 + call $runtime.Block.Release + local.get $$t664.0 + call $runtime.Block.Release + local.get $$t665.0 + call $runtime.Block.Release + local.get $$t666.0 + call $runtime.Block.Release + local.get $$t667.0 + call $runtime.Block.Release + local.get $$t668.0 + call $runtime.Block.Release + local.get $$t669.0 + call $runtime.Block.Release + local.get $$t670.0 + call $runtime.Block.Release + local.get $$t671.0 + call $runtime.Block.Release + local.get $$t672.0 + call $runtime.Block.Release + local.get $$t673.0 + call $runtime.Block.Release + local.get $$t674.0 + call $runtime.Block.Release + local.get $$t675.0 + call $runtime.Block.Release + local.get $$t676.0 + call $runtime.Block.Release + local.get $$t677.0 + call $runtime.Block.Release + local.get $$t678.0 + call $runtime.Block.Release + local.get $$t679.0 + call $runtime.Block.Release + local.get $$t680.0 + call $runtime.Block.Release + local.get $$t681.0 + call $runtime.Block.Release + local.get $$t682.0 + call $runtime.Block.Release + local.get $$t683.0 + call $runtime.Block.Release + local.get $$t684.0 + call $runtime.Block.Release + local.get $$t685.0 + call $runtime.Block.Release + local.get $$t686.0 + call $runtime.Block.Release + local.get $$t687.0 + call $runtime.Block.Release + local.get $$t688.0 + call $runtime.Block.Release + local.get $$t689.0 + call $runtime.Block.Release + local.get $$t690.0 + call $runtime.Block.Release + local.get $$t691.0 + call $runtime.Block.Release + local.get $$t692.0 + call $runtime.Block.Release + local.get $$t693.0 + call $runtime.Block.Release + local.get $$t694.0 + call $runtime.Block.Release + local.get $$t695.0 + call $runtime.Block.Release + local.get $$t696.0 + call $runtime.Block.Release + local.get $$t697.0 + call $runtime.Block.Release + local.get $$t698.0 + call $runtime.Block.Release + local.get $$t699.0 + call $runtime.Block.Release + local.get $$t700.0 + call $runtime.Block.Release + local.get $$t701.0 + call $runtime.Block.Release + local.get $$t702.0 + call $runtime.Block.Release + local.get $$t703.0 + call $runtime.Block.Release + local.get $$t704.0 + call $runtime.Block.Release + local.get $$t705.0 + call $runtime.Block.Release + local.get $$t706.0 + call $runtime.Block.Release + local.get $$t707.0 + call $runtime.Block.Release + local.get $$t708.0 + call $runtime.Block.Release + local.get $$t709.0 + call $runtime.Block.Release + local.get $$t710.0 + call $runtime.Block.Release + local.get $$t711.0 + call $runtime.Block.Release + local.get $$t712.0 + call $runtime.Block.Release + local.get $$t713.0 + call $runtime.Block.Release + local.get $$t714.0 + call $runtime.Block.Release + local.get $$t715.0 + call $runtime.Block.Release + local.get $$t716.0 + call $runtime.Block.Release + local.get $$t717.0 + call $runtime.Block.Release + local.get $$t718.0 + call $runtime.Block.Release + local.get $$t719.0 + call $runtime.Block.Release + local.get $$t720.0 + call $runtime.Block.Release + local.get $$t721.0 + call $runtime.Block.Release + local.get $$t722.0 + call $runtime.Block.Release + local.get $$t723.0 + call $runtime.Block.Release + local.get $$t724.0 + call $runtime.Block.Release + local.get $$t725.0 + call $runtime.Block.Release + local.get $$t726.0 + call $runtime.Block.Release + local.get $$t727.0 + call $runtime.Block.Release + local.get $$t728.0 + call $runtime.Block.Release + local.get $$t729.0 + call $runtime.Block.Release + local.get $$t730.0 + call $runtime.Block.Release + local.get $$t731.0 + call $runtime.Block.Release + local.get $$t732.0 + call $runtime.Block.Release + local.get $$t733.0 + call $runtime.Block.Release + local.get $$t734.0 + call $runtime.Block.Release + local.get $$t735.0 + call $runtime.Block.Release + local.get $$t736.0 + call $runtime.Block.Release + local.get $$t737.0 + call $runtime.Block.Release + local.get $$t738.0 + call $runtime.Block.Release + local.get $$t739.0 + call $runtime.Block.Release + local.get $$t740.0 + call $runtime.Block.Release + local.get $$t741.0 + call $runtime.Block.Release + local.get $$t742.0 + call $runtime.Block.Release + local.get $$t743.0 + call $runtime.Block.Release + local.get $$t744.0 + call $runtime.Block.Release + local.get $$t745.0 + call $runtime.Block.Release + local.get $$t746.0 + call $runtime.Block.Release + local.get $$t747.0 + call $runtime.Block.Release + local.get $$t748.0 + call $runtime.Block.Release + local.get $$t749.0 + call $runtime.Block.Release + local.get $$t750.0 + call $runtime.Block.Release + local.get $$t751.0 + call $runtime.Block.Release + local.get $$t752.0 + call $runtime.Block.Release + local.get $$t753.0 + call $runtime.Block.Release + local.get $$t754.0 + call $runtime.Block.Release + local.get $$t755.0 + call $runtime.Block.Release + local.get $$t756.0 + call $runtime.Block.Release + local.get $$t757.0 + call $runtime.Block.Release + local.get $$t758.0 + call $runtime.Block.Release + local.get $$t759.0 + call $runtime.Block.Release + local.get $$t760.0 + call $runtime.Block.Release + local.get $$t761.0 + call $runtime.Block.Release + local.get $$t762.0 + call $runtime.Block.Release + local.get $$t763.0 + call $runtime.Block.Release + local.get $$t764.0 + call $runtime.Block.Release + local.get $$t765.0 + call $runtime.Block.Release + local.get $$t766.0 + call $runtime.Block.Release + local.get $$t767.0 + call $runtime.Block.Release + local.get $$t768.0 + call $runtime.Block.Release + local.get $$t769.0 + call $runtime.Block.Release + local.get $$t770.0 + call $runtime.Block.Release + local.get $$t771.0 + call $runtime.Block.Release + local.get $$t772.0 + call $runtime.Block.Release + local.get $$t773.0 + call $runtime.Block.Release + local.get $$t774.0 + call $runtime.Block.Release + local.get $$t775.0 + call $runtime.Block.Release + local.get $$t776.0 + call $runtime.Block.Release + local.get $$t777.0 + call $runtime.Block.Release + local.get $$t778.0 + call $runtime.Block.Release + local.get $$t779.0 + call $runtime.Block.Release + local.get $$t780.0 + call $runtime.Block.Release + local.get $$t781.0 + call $runtime.Block.Release + local.get $$t782.0 + call $runtime.Block.Release + local.get $$t783.0 + call $runtime.Block.Release + local.get $$t784.0 + call $runtime.Block.Release + local.get $$t785.0 + call $runtime.Block.Release + local.get $$t786.0 + call $runtime.Block.Release + local.get $$t787.0 + call $runtime.Block.Release + local.get $$t788.0 + call $runtime.Block.Release + local.get $$t789.0 + call $runtime.Block.Release + local.get $$t790.0 + call $runtime.Block.Release + local.get $$t791.0 + call $runtime.Block.Release + local.get $$t792.0 + call $runtime.Block.Release + local.get $$t793.0 + call $runtime.Block.Release + local.get $$t794.0 + call $runtime.Block.Release + local.get $$t795.0 + call $runtime.Block.Release + local.get $$t796.0 + call $runtime.Block.Release + local.get $$t797.0 + call $runtime.Block.Release + local.get $$t798.0 + call $runtime.Block.Release + local.get $$t799.0 + call $runtime.Block.Release + local.get $$t800.0 + call $runtime.Block.Release + local.get $$t801.0 + call $runtime.Block.Release + local.get $$t802.0 + call $runtime.Block.Release + local.get $$t803.0 + call $runtime.Block.Release + local.get $$t804.0 + call $runtime.Block.Release + local.get $$t805.0 + call $runtime.Block.Release + local.get $$t806.0 + call $runtime.Block.Release + local.get $$t807.0 + call $runtime.Block.Release + local.get $$t808.0 + call $runtime.Block.Release + local.get $$t809.0 + call $runtime.Block.Release + local.get $$t810.0 + call $runtime.Block.Release + local.get $$t811.0 + call $runtime.Block.Release + local.get $$t812.0 + call $runtime.Block.Release + local.get $$t813.0 + call $runtime.Block.Release + local.get $$t814.0 + call $runtime.Block.Release + local.get $$t815.0 + call $runtime.Block.Release + local.get $$t816.0 + call $runtime.Block.Release + local.get $$t817.0 + call $runtime.Block.Release + local.get $$t818.0 + call $runtime.Block.Release + local.get $$t819.0 + call $runtime.Block.Release + local.get $$t820.0 + call $runtime.Block.Release + local.get $$t821.0 + call $runtime.Block.Release + local.get $$t822.0 + call $runtime.Block.Release + local.get $$t823.0 + call $runtime.Block.Release + local.get $$t824.0 + call $runtime.Block.Release + local.get $$t825.0 + call $runtime.Block.Release + local.get $$t826.0 + call $runtime.Block.Release + local.get $$t827.0 + call $runtime.Block.Release + local.get $$t828.0 + call $runtime.Block.Release + local.get $$t829.0 + call $runtime.Block.Release + local.get $$t830.0 + call $runtime.Block.Release + local.get $$t831.0 + call $runtime.Block.Release + local.get $$t832.0 + call $runtime.Block.Release + local.get $$t833.0 + call $runtime.Block.Release + local.get $$t834.0 + call $runtime.Block.Release + local.get $$t835.0 + call $runtime.Block.Release + local.get $$t836.0 + call $runtime.Block.Release + local.get $$t837.0 + call $runtime.Block.Release + local.get $$t838.0 + call $runtime.Block.Release + local.get $$t839.0 + call $runtime.Block.Release + local.get $$t840.0 + call $runtime.Block.Release + local.get $$t841.0 + call $runtime.Block.Release + local.get $$t842.0 + call $runtime.Block.Release + local.get $$t843.0 + call $runtime.Block.Release + local.get $$t844.0 + call $runtime.Block.Release + local.get $$t845.0 + call $runtime.Block.Release + local.get $$t846.0 + call $runtime.Block.Release + local.get $$t847.0 + call $runtime.Block.Release + local.get $$t848.0 + call $runtime.Block.Release + local.get $$t849.0 + call $runtime.Block.Release + local.get $$t850.0 + call $runtime.Block.Release + local.get $$t851.0 + call $runtime.Block.Release + local.get $$t852.0 + call $runtime.Block.Release + local.get $$t853.0 + call $runtime.Block.Release + local.get $$t854.0 + call $runtime.Block.Release + local.get $$t855.0 + call $runtime.Block.Release + local.get $$t856.0 + call $runtime.Block.Release + local.get $$t857.0 + call $runtime.Block.Release + local.get $$t858.0 + call $runtime.Block.Release + local.get $$t859.0 + call $runtime.Block.Release + local.get $$t860.0 + call $runtime.Block.Release + local.get $$t861.0 + call $runtime.Block.Release + local.get $$t862.0 + call $runtime.Block.Release + local.get $$t863.0 + call $runtime.Block.Release + local.get $$t864.0 + call $runtime.Block.Release + local.get $$t865.0 + call $runtime.Block.Release + local.get $$t866.0 + call $runtime.Block.Release + local.get $$t867.0 + call $runtime.Block.Release + local.get $$t868.0 + call $runtime.Block.Release + local.get $$t869.0 + call $runtime.Block.Release + local.get $$t870.0 + call $runtime.Block.Release + local.get $$t871.0 + call $runtime.Block.Release + local.get $$t872.0 + call $runtime.Block.Release + local.get $$t873.0 + call $runtime.Block.Release + local.get $$t874.0 + call $runtime.Block.Release + local.get $$t875.0 + call $runtime.Block.Release + local.get $$t876.0 + call $runtime.Block.Release + local.get $$t877.0 + call $runtime.Block.Release + local.get $$t878.0 + call $runtime.Block.Release + local.get $$t879.0 + call $runtime.Block.Release + local.get $$t880.0 + call $runtime.Block.Release + local.get $$t881.0 + call $runtime.Block.Release + local.get $$t882.0 + call $runtime.Block.Release + local.get $$t883.0 + call $runtime.Block.Release + local.get $$t884.0 + call $runtime.Block.Release + local.get $$t885.0 + call $runtime.Block.Release + local.get $$t886.0 + call $runtime.Block.Release + local.get $$t887.0 + call $runtime.Block.Release + local.get $$t888.0 + call $runtime.Block.Release + local.get $$t889.0 + call $runtime.Block.Release + local.get $$t890.0 + call $runtime.Block.Release + local.get $$t891.0 + call $runtime.Block.Release + local.get $$t892.0 + call $runtime.Block.Release + local.get $$t893.0 + call $runtime.Block.Release + local.get $$t894.0 + call $runtime.Block.Release + local.get $$t895.0 + call $runtime.Block.Release + local.get $$t896.0 + call $runtime.Block.Release + local.get $$t897.0 + call $runtime.Block.Release + local.get $$t898.0 + call $runtime.Block.Release + local.get $$t899.0 + call $runtime.Block.Release + local.get $$t900.0 + call $runtime.Block.Release + local.get $$t901.0 + call $runtime.Block.Release + local.get $$t902.0 + call $runtime.Block.Release + local.get $$t903.0 + call $runtime.Block.Release + local.get $$t904.0 + call $runtime.Block.Release + local.get $$t905.0 + call $runtime.Block.Release + local.get $$t906.0 + call $runtime.Block.Release + local.get $$t907.0 + call $runtime.Block.Release + local.get $$t908.0 + call $runtime.Block.Release + local.get $$t909.0 + call $runtime.Block.Release + local.get $$t910.0 + call $runtime.Block.Release + local.get $$t911.0 + call $runtime.Block.Release + local.get $$t912.0 + call $runtime.Block.Release + local.get $$t913.0 + call $runtime.Block.Release + local.get $$t914.0 + call $runtime.Block.Release + local.get $$t915.0 + call $runtime.Block.Release + local.get $$t916.0 + call $runtime.Block.Release + local.get $$t917.0 + call $runtime.Block.Release + local.get $$t918.0 + call $runtime.Block.Release + local.get $$t919.0 + call $runtime.Block.Release + local.get $$t920.0 + call $runtime.Block.Release + local.get $$t921.0 + call $runtime.Block.Release + local.get $$t922.0 + call $runtime.Block.Release + local.get $$t923.0 + call $runtime.Block.Release + local.get $$t924.0 + call $runtime.Block.Release + local.get $$t925.0 + call $runtime.Block.Release + local.get $$t926.0 + call $runtime.Block.Release + local.get $$t927.0 + call $runtime.Block.Release + local.get $$t928.0 + call $runtime.Block.Release + local.get $$t929.0 + call $runtime.Block.Release + local.get $$t930.0 + call $runtime.Block.Release + local.get $$t931.0 + call $runtime.Block.Release + local.get $$t932.0 + call $runtime.Block.Release + local.get $$t933.0 + call $runtime.Block.Release + local.get $$t934.0 + call $runtime.Block.Release + local.get $$t935.0 + call $runtime.Block.Release + local.get $$t936.0 + call $runtime.Block.Release + local.get $$t937.0 + call $runtime.Block.Release + local.get $$t938.0 + call $runtime.Block.Release + local.get $$t939.0 + call $runtime.Block.Release + local.get $$t940.0 + call $runtime.Block.Release + local.get $$t941.0 + call $runtime.Block.Release + local.get $$t942.0 + call $runtime.Block.Release + local.get $$t943.0 + call $runtime.Block.Release + local.get $$t944.0 + call $runtime.Block.Release + local.get $$t945.0 + call $runtime.Block.Release + local.get $$t946.0 + call $runtime.Block.Release + local.get $$t947.0 + call $runtime.Block.Release + local.get $$t948.0 + call $runtime.Block.Release + local.get $$t949.0 + call $runtime.Block.Release + local.get $$t950.0 + call $runtime.Block.Release + local.get $$t951.0 + call $runtime.Block.Release + local.get $$t952.0 + call $runtime.Block.Release + local.get $$t953.0 + call $runtime.Block.Release + local.get $$t954.0 + call $runtime.Block.Release + local.get $$t955.0 + call $runtime.Block.Release + local.get $$t956.0 + call $runtime.Block.Release + local.get $$t957.0 + call $runtime.Block.Release + local.get $$t958.0 + call $runtime.Block.Release + local.get $$t959.0 + call $runtime.Block.Release + local.get $$t960.0 + call $runtime.Block.Release + local.get $$t961.0 + call $runtime.Block.Release + local.get $$t962.0 + call $runtime.Block.Release + local.get $$t963.0 + call $runtime.Block.Release + local.get $$t964.0 + call $runtime.Block.Release + local.get $$t965.0 + call $runtime.Block.Release + local.get $$t966.0 + call $runtime.Block.Release + local.get $$t967.0 + call $runtime.Block.Release + local.get $$t968.0 + call $runtime.Block.Release + local.get $$t969.0 + call $runtime.Block.Release + local.get $$t970.0 + call $runtime.Block.Release + local.get $$t971.0 + call $runtime.Block.Release + local.get $$t972.0 + call $runtime.Block.Release + local.get $$t973.0 + call $runtime.Block.Release + local.get $$t974.0 + call $runtime.Block.Release + local.get $$t975.0 + call $runtime.Block.Release + local.get $$t976.0 + call $runtime.Block.Release + local.get $$t977.0 + call $runtime.Block.Release + local.get $$t978.0 + call $runtime.Block.Release + local.get $$t979.0 + call $runtime.Block.Release + local.get $$t980.0 + call $runtime.Block.Release + local.get $$t981.0 + call $runtime.Block.Release + local.get $$t982.0 + call $runtime.Block.Release + local.get $$t983.0 + call $runtime.Block.Release + local.get $$t984.0 + call $runtime.Block.Release + local.get $$t985.0 + call $runtime.Block.Release + local.get $$t986.0 + call $runtime.Block.Release + local.get $$t987.0 + call $runtime.Block.Release + local.get $$t988.0 + call $runtime.Block.Release + local.get $$t989.0 + call $runtime.Block.Release + local.get $$t990.0 + call $runtime.Block.Release + local.get $$t991.0 + call $runtime.Block.Release + local.get $$t992.0 + call $runtime.Block.Release + local.get $$t993.0 + call $runtime.Block.Release + local.get $$t994.0 + call $runtime.Block.Release + local.get $$t995.0 + call $runtime.Block.Release + local.get $$t996.0 + call $runtime.Block.Release + local.get $$t997.0 + call $runtime.Block.Release + local.get $$t998.0 + call $runtime.Block.Release + local.get $$t999.0 + call $runtime.Block.Release + local.get $$t1000.0 + call $runtime.Block.Release + local.get $$t1001.0 + call $runtime.Block.Release + local.get $$t1002.0 + call $runtime.Block.Release + local.get $$t1003.0 + call $runtime.Block.Release + local.get $$t1004.0 + call $runtime.Block.Release + local.get $$t1005.0 + call $runtime.Block.Release + local.get $$t1006.0 + call $runtime.Block.Release + local.get $$t1007.0 + call $runtime.Block.Release + local.get $$t1008.0 + call $runtime.Block.Release + local.get $$t1009.0 + call $runtime.Block.Release + local.get $$t1010.0 + call $runtime.Block.Release + local.get $$t1011.0 + call $runtime.Block.Release + local.get $$t1012.0 + call $runtime.Block.Release + local.get $$t1013.0 + call $runtime.Block.Release + local.get $$t1014.0 + call $runtime.Block.Release + local.get $$t1015.0 + call $runtime.Block.Release + local.get $$t1016.0 + call $runtime.Block.Release + local.get $$t1017.0 + call $runtime.Block.Release + local.get $$t1018.0 + call $runtime.Block.Release + local.get $$t1019.0 + call $runtime.Block.Release + local.get $$t1020.0 + call $runtime.Block.Release + local.get $$t1021.0 + call $runtime.Block.Release + local.get $$t1022.0 + call $runtime.Block.Release + local.get $$t1023.0 + call $runtime.Block.Release + local.get $$t1024.0 + call $runtime.Block.Release + local.get $$t1025.0 + call $runtime.Block.Release + local.get $$t1026.0 + call $runtime.Block.Release + local.get $$t1027.0 + call $runtime.Block.Release + local.get $$t1028.0 + call $runtime.Block.Release + local.get $$t1029.0 + call $runtime.Block.Release + local.get $$t1030.0 + call $runtime.Block.Release + local.get $$t1031.0 + call $runtime.Block.Release + local.get $$t1032.0 + call $runtime.Block.Release + local.get $$t1033.0 + call $runtime.Block.Release + local.get $$t1034.0 + call $runtime.Block.Release + local.get $$t1035.0 + call $runtime.Block.Release + local.get $$t1036.0 + call $runtime.Block.Release + local.get $$t1037.0 + call $runtime.Block.Release + local.get $$t1038.0 + call $runtime.Block.Release + local.get $$t1039.0 + call $runtime.Block.Release + local.get $$t1040.0 + call $runtime.Block.Release + local.get $$t1041.0 + call $runtime.Block.Release + local.get $$t1042.0 + call $runtime.Block.Release + local.get $$t1043.0 + call $runtime.Block.Release + local.get $$t1044.0 + call $runtime.Block.Release + local.get $$t1045.0 + call $runtime.Block.Release + local.get $$t1046.0 + call $runtime.Block.Release + local.get $$t1047.0 + call $runtime.Block.Release + local.get $$t1048.0 + call $runtime.Block.Release + local.get $$t1049.0 + call $runtime.Block.Release + local.get $$t1050.0 + call $runtime.Block.Release + local.get $$t1051.0 + call $runtime.Block.Release + local.get $$t1052.0 + call $runtime.Block.Release + local.get $$t1053.0 + call $runtime.Block.Release + local.get $$t1054.0 + call $runtime.Block.Release + local.get $$t1055.0 + call $runtime.Block.Release + local.get $$t1056.0 + call $runtime.Block.Release + local.get $$t1057.0 + call $runtime.Block.Release + local.get $$t1058.0 + call $runtime.Block.Release + local.get $$t1059.0 + call $runtime.Block.Release + local.get $$t1060.0 + call $runtime.Block.Release + local.get $$t1061.0 + call $runtime.Block.Release + local.get $$t1062.0 + call $runtime.Block.Release + local.get $$t1063.0 + call $runtime.Block.Release + local.get $$t1064.0 + call $runtime.Block.Release + local.get $$t1065.0 + call $runtime.Block.Release + local.get $$t1066.0 + call $runtime.Block.Release + local.get $$t1067.0 + call $runtime.Block.Release + local.get $$t1068.0 + call $runtime.Block.Release + local.get $$t1069.0 + call $runtime.Block.Release + local.get $$t1070.0 + call $runtime.Block.Release + local.get $$t1071.0 + call $runtime.Block.Release + local.get $$t1072.0 + call $runtime.Block.Release + local.get $$t1073.0 + call $runtime.Block.Release + local.get $$t1074.0 + call $runtime.Block.Release + local.get $$t1075.0 + call $runtime.Block.Release + local.get $$t1076.0 + call $runtime.Block.Release + local.get $$t1077.0 + call $runtime.Block.Release + local.get $$t1078.0 + call $runtime.Block.Release + local.get $$t1079.0 + call $runtime.Block.Release + local.get $$t1080.0 + call $runtime.Block.Release + local.get $$t1081.0 + call $runtime.Block.Release + local.get $$t1082.0 + call $runtime.Block.Release + local.get $$t1083.0 + call $runtime.Block.Release + local.get $$t1084.0 + call $runtime.Block.Release + local.get $$t1085.0 + call $runtime.Block.Release + local.get $$t1086.0 + call $runtime.Block.Release + local.get $$t1087.0 + call $runtime.Block.Release + local.get $$t1088.0 + call $runtime.Block.Release + local.get $$t1089.0 + call $runtime.Block.Release + local.get $$t1090.0 + call $runtime.Block.Release + local.get $$t1091.0 + call $runtime.Block.Release + local.get $$t1092.0 + call $runtime.Block.Release + local.get $$t1093.0 + call $runtime.Block.Release + local.get $$t1094.0 + call $runtime.Block.Release + local.get $$t1095.0 + call $runtime.Block.Release + local.get $$t1096.0 + call $runtime.Block.Release + local.get $$t1097.0 + call $runtime.Block.Release + local.get $$t1098.0 + call $runtime.Block.Release + local.get $$t1099.0 + call $runtime.Block.Release + local.get $$t1100.0 + call $runtime.Block.Release + local.get $$t1101.0 + call $runtime.Block.Release + local.get $$t1102.0 + call $runtime.Block.Release + local.get $$t1103.0 + call $runtime.Block.Release + local.get $$t1104.0 + call $runtime.Block.Release + local.get $$t1105.0 + call $runtime.Block.Release + local.get $$t1106.0 + call $runtime.Block.Release + local.get $$t1107.0 + call $runtime.Block.Release + local.get $$t1108.0 + call $runtime.Block.Release + local.get $$t1109.0 + call $runtime.Block.Release + local.get $$t1110.0 + call $runtime.Block.Release + local.get $$t1111.0 + call $runtime.Block.Release + local.get $$t1112.0 + call $runtime.Block.Release + local.get $$t1113.0 + call $runtime.Block.Release + local.get $$t1114.0 + call $runtime.Block.Release + local.get $$t1115.0 + call $runtime.Block.Release + local.get $$t1116.0 + call $runtime.Block.Release + local.get $$t1117.0 + call $runtime.Block.Release + local.get $$t1118.0 + call $runtime.Block.Release + local.get $$t1119.0 + call $runtime.Block.Release + local.get $$t1120.0 + call $runtime.Block.Release + local.get $$t1121.0 + call $runtime.Block.Release + local.get $$t1122.0 + call $runtime.Block.Release + local.get $$t1123.0 + call $runtime.Block.Release + local.get $$t1124.0 + call $runtime.Block.Release + local.get $$t1125.0 + call $runtime.Block.Release + local.get $$t1126.0 + call $runtime.Block.Release + local.get $$t1127.0 + call $runtime.Block.Release + local.get $$t1128.0 + call $runtime.Block.Release + local.get $$t1129.0 + call $runtime.Block.Release + local.get $$t1130.0 + call $runtime.Block.Release + local.get $$t1131.0 + call $runtime.Block.Release + local.get $$t1132.0 + call $runtime.Block.Release + local.get $$t1133.0 + call $runtime.Block.Release + local.get $$t1134.0 + call $runtime.Block.Release + local.get $$t1135.0 + call $runtime.Block.Release + local.get $$t1136.0 + call $runtime.Block.Release + local.get $$t1137.0 + call $runtime.Block.Release + local.get $$t1138.0 + call $runtime.Block.Release + local.get $$t1139.0 + call $runtime.Block.Release + local.get $$t1140.0 + call $runtime.Block.Release + local.get $$t1141.0 + call $runtime.Block.Release + local.get $$t1142.0 + call $runtime.Block.Release + local.get $$t1143.0 + call $runtime.Block.Release + local.get $$t1144.0 + call $runtime.Block.Release + local.get $$t1145.0 + call $runtime.Block.Release + local.get $$t1146.0 + call $runtime.Block.Release + local.get $$t1147.0 + call $runtime.Block.Release + local.get $$t1148.0 + call $runtime.Block.Release + local.get $$t1149.0 + call $runtime.Block.Release + local.get $$t1150.0 + call $runtime.Block.Release + local.get $$t1151.0 + call $runtime.Block.Release + local.get $$t1152.0 + call $runtime.Block.Release + local.get $$t1153.0 + call $runtime.Block.Release + local.get $$t1154.0 + call $runtime.Block.Release + local.get $$t1155.0 + call $runtime.Block.Release + local.get $$t1156.0 + call $runtime.Block.Release + local.get $$t1157.0 + call $runtime.Block.Release + local.get $$t1158.0 + call $runtime.Block.Release + local.get $$t1159.0 + call $runtime.Block.Release + local.get $$t1160.0 + call $runtime.Block.Release + local.get $$t1161.0 + call $runtime.Block.Release + local.get $$t1162.0 + call $runtime.Block.Release + local.get $$t1163.0 + call $runtime.Block.Release + local.get $$t1164.0 + call $runtime.Block.Release + local.get $$t1165.0 + call $runtime.Block.Release + local.get $$t1166.0 + call $runtime.Block.Release + local.get $$t1167.0 + call $runtime.Block.Release + local.get $$t1168.0 + call $runtime.Block.Release + local.get $$t1169.0 + call $runtime.Block.Release + local.get $$t1170.0 + call $runtime.Block.Release + local.get $$t1171.0 + call $runtime.Block.Release + local.get $$t1172.0 + call $runtime.Block.Release + local.get $$t1173.0 + call $runtime.Block.Release + local.get $$t1174.0 + call $runtime.Block.Release + local.get $$t1175.0 + call $runtime.Block.Release + local.get $$t1176.0 + call $runtime.Block.Release + local.get $$t1177.0 + call $runtime.Block.Release + local.get $$t1178.0 + call $runtime.Block.Release + local.get $$t1179.0 + call $runtime.Block.Release + local.get $$t1180.0 + call $runtime.Block.Release + local.get $$t1181.0 + call $runtime.Block.Release + local.get $$t1182.0 + call $runtime.Block.Release + local.get $$t1183.0 + call $runtime.Block.Release + local.get $$t1184.0 + call $runtime.Block.Release + local.get $$t1185.0 + call $runtime.Block.Release + local.get $$t1186.0 + call $runtime.Block.Release + local.get $$t1187.0 + call $runtime.Block.Release + local.get $$t1188.0 + call $runtime.Block.Release + local.get $$t1189.0 + call $runtime.Block.Release + local.get $$t1190.0 + call $runtime.Block.Release + local.get $$t1191.0 + call $runtime.Block.Release + local.get $$t1192.0 + call $runtime.Block.Release + local.get $$t1193.0 + call $runtime.Block.Release + local.get $$t1194.0 + call $runtime.Block.Release + local.get $$t1195.0 + call $runtime.Block.Release + local.get $$t1196.0 + call $runtime.Block.Release + local.get $$t1197.0 + call $runtime.Block.Release + local.get $$t1198.0 + call $runtime.Block.Release + local.get $$t1199.0 + call $runtime.Block.Release + local.get $$t1200.0 + call $runtime.Block.Release + local.get $$t1201.0 + call $runtime.Block.Release + local.get $$t1202.0 + call $runtime.Block.Release + local.get $$t1203.0 + call $runtime.Block.Release + local.get $$t1204.0 + call $runtime.Block.Release + local.get $$t1205.0 + call $runtime.Block.Release + local.get $$t1206.0 + call $runtime.Block.Release + local.get $$t1207.0 + call $runtime.Block.Release + local.get $$t1208.0 + call $runtime.Block.Release + local.get $$t1209.0 + call $runtime.Block.Release + local.get $$t1210.0 + call $runtime.Block.Release + local.get $$t1211.0 + call $runtime.Block.Release + local.get $$t1212.0 + call $runtime.Block.Release + local.get $$t1213.0 + call $runtime.Block.Release + local.get $$t1214.0 + call $runtime.Block.Release + local.get $$t1215.0 + call $runtime.Block.Release + local.get $$t1216.0 + call $runtime.Block.Release + local.get $$t1217.0 + call $runtime.Block.Release + local.get $$t1218.0 + call $runtime.Block.Release + local.get $$t1219.0 + call $runtime.Block.Release + local.get $$t1220.0 + call $runtime.Block.Release + local.get $$t1221.0 + call $runtime.Block.Release + local.get $$t1222.0 + call $runtime.Block.Release + local.get $$t1223.0 + call $runtime.Block.Release + local.get $$t1224.0 + call $runtime.Block.Release + local.get $$t1225.0 + call $runtime.Block.Release + local.get $$t1226.0 + call $runtime.Block.Release + local.get $$t1227.0 + call $runtime.Block.Release + local.get $$t1228.0 + call $runtime.Block.Release + local.get $$t1229.0 + call $runtime.Block.Release + local.get $$t1230.0 + call $runtime.Block.Release + local.get $$t1231.0 + call $runtime.Block.Release + local.get $$t1232.0 + call $runtime.Block.Release + local.get $$t1233.0 + call $runtime.Block.Release + local.get $$t1234.0 + call $runtime.Block.Release + local.get $$t1235.0 + call $runtime.Block.Release + local.get $$t1236.0 + call $runtime.Block.Release + local.get $$t1237.0 + call $runtime.Block.Release + local.get $$t1238.0 + call $runtime.Block.Release + local.get $$t1239.0 + call $runtime.Block.Release + local.get $$t1240.0 + call $runtime.Block.Release + local.get $$t1241.0 + call $runtime.Block.Release + local.get $$t1242.0 + call $runtime.Block.Release + local.get $$t1243.0 + call $runtime.Block.Release + local.get $$t1244.0 + call $runtime.Block.Release + local.get $$t1245.0 + call $runtime.Block.Release + local.get $$t1246.0 + call $runtime.Block.Release + local.get $$t1247.0 + call $runtime.Block.Release + local.get $$t1248.0 + call $runtime.Block.Release + local.get $$t1249.0 + call $runtime.Block.Release + local.get $$t1250.0 + call $runtime.Block.Release + local.get $$t1251.0 + call $runtime.Block.Release + local.get $$t1252.0 + call $runtime.Block.Release + local.get $$t1253.0 + call $runtime.Block.Release + local.get $$t1254.0 + call $runtime.Block.Release + local.get $$t1255.0 + call $runtime.Block.Release + local.get $$t1256.0 + call $runtime.Block.Release + local.get $$t1257.0 + call $runtime.Block.Release + local.get $$t1258.0 + call $runtime.Block.Release + local.get $$t1259.0 + call $runtime.Block.Release + local.get $$t1260.0 + call $runtime.Block.Release + local.get $$t1261.0 + call $runtime.Block.Release + local.get $$t1262.0 + call $runtime.Block.Release + local.get $$t1263.0 + call $runtime.Block.Release + local.get $$t1264.0 + call $runtime.Block.Release + local.get $$t1265.0 + call $runtime.Block.Release + local.get $$t1266.0 + call $runtime.Block.Release + local.get $$t1267.0 + call $runtime.Block.Release + local.get $$t1268.0 + call $runtime.Block.Release + local.get $$t1269.0 + call $runtime.Block.Release + local.get $$t1270.0 + call $runtime.Block.Release + local.get $$t1271.0 + call $runtime.Block.Release + local.get $$t1272.0 + call $runtime.Block.Release + local.get $$t1273.0 + call $runtime.Block.Release + local.get $$t1274.0 + call $runtime.Block.Release + local.get $$t1275.0 + call $runtime.Block.Release + local.get $$t1276.0 + call $runtime.Block.Release + local.get $$t1277.0 + call $runtime.Block.Release + local.get $$t1278.0 + call $runtime.Block.Release + local.get $$t1279.0 + call $runtime.Block.Release + local.get $$t1280.0 + call $runtime.Block.Release + local.get $$t1281.0 + call $runtime.Block.Release + local.get $$t1282.0 + call $runtime.Block.Release + local.get $$t1283.0 + call $runtime.Block.Release + local.get $$t1284.0 + call $runtime.Block.Release + local.get $$t1285.0 + call $runtime.Block.Release + local.get $$t1286.0 + call $runtime.Block.Release + local.get $$t1287.0 + call $runtime.Block.Release + local.get $$t1288.0 + call $runtime.Block.Release + local.get $$t1289.0 + call $runtime.Block.Release + local.get $$t1290.0 + call $runtime.Block.Release + local.get $$t1291.0 + call $runtime.Block.Release + local.get $$t1292.0 + call $runtime.Block.Release + local.get $$t1293.0 + call $runtime.Block.Release + local.get $$t1294.0 + call $runtime.Block.Release + local.get $$t1295.0 + call $runtime.Block.Release + local.get $$t1296.0 + call $runtime.Block.Release + local.get $$t1297.0 + call $runtime.Block.Release + local.get $$t1298.0 + call $runtime.Block.Release + local.get $$t1299.0 + call $runtime.Block.Release + local.get $$t1300.0 + call $runtime.Block.Release + local.get $$t1301.0 + call $runtime.Block.Release + local.get $$t1302.0 + call $runtime.Block.Release + local.get $$t1303.0 + call $runtime.Block.Release + local.get $$t1304.0 + call $runtime.Block.Release + local.get $$t1305.0 + call $runtime.Block.Release + local.get $$t1306.0 + call $runtime.Block.Release + local.get $$t1307.0 + call $runtime.Block.Release + local.get $$t1308.0 + call $runtime.Block.Release + local.get $$t1309.0 + call $runtime.Block.Release + local.get $$t1310.0 + call $runtime.Block.Release + local.get $$t1311.0 + call $runtime.Block.Release + local.get $$t1312.0 + call $runtime.Block.Release + local.get $$t1313.0 + call $runtime.Block.Release + local.get $$t1314.0 + call $runtime.Block.Release + local.get $$t1315.0 + call $runtime.Block.Release + local.get $$t1316.0 + call $runtime.Block.Release + local.get $$t1317.0 + call $runtime.Block.Release + local.get $$t1318.0 + call $runtime.Block.Release + local.get $$t1319.0 + call $runtime.Block.Release + local.get $$t1320.0 + call $runtime.Block.Release + local.get $$t1321.0 + call $runtime.Block.Release + local.get $$t1322.0 + call $runtime.Block.Release + local.get $$t1323.0 + call $runtime.Block.Release + local.get $$t1324.0 + call $runtime.Block.Release + local.get $$t1325.0 + call $runtime.Block.Release + local.get $$t1326.0 + call $runtime.Block.Release + local.get $$t1327.0 + call $runtime.Block.Release + local.get $$t1328.0 + call $runtime.Block.Release + local.get $$t1329.0 + call $runtime.Block.Release + local.get $$t1330.0 + call $runtime.Block.Release + local.get $$t1331.0 + call $runtime.Block.Release + local.get $$t1332.0 + call $runtime.Block.Release + local.get $$t1333.0 + call $runtime.Block.Release + local.get $$t1334.0 + call $runtime.Block.Release + local.get $$t1335.0 + call $runtime.Block.Release + local.get $$t1336.0 + call $runtime.Block.Release + local.get $$t1337.0 + call $runtime.Block.Release + local.get $$t1338.0 + call $runtime.Block.Release + local.get $$t1339.0 + call $runtime.Block.Release + local.get $$t1340.0 + call $runtime.Block.Release + local.get $$t1341.0 + call $runtime.Block.Release + local.get $$t1342.0 + call $runtime.Block.Release + local.get $$t1343.0 + call $runtime.Block.Release + local.get $$t1344.0 + call $runtime.Block.Release + local.get $$t1345.0 + call $runtime.Block.Release + local.get $$t1346.0 + call $runtime.Block.Release + local.get $$t1347.0 + call $runtime.Block.Release + local.get $$t1348.0 + call $runtime.Block.Release + local.get $$t1349.0 + call $runtime.Block.Release + local.get $$t1350.0 + call $runtime.Block.Release + local.get $$t1351.0 + call $runtime.Block.Release + local.get $$t1352.0 + call $runtime.Block.Release + local.get $$t1353.0 + call $runtime.Block.Release + local.get $$t1354.0 + call $runtime.Block.Release + local.get $$t1355.0 + call $runtime.Block.Release + local.get $$t1356.0 + call $runtime.Block.Release + local.get $$t1357.0 + call $runtime.Block.Release + local.get $$t1358.0 + call $runtime.Block.Release + local.get $$t1359.0 + call $runtime.Block.Release + local.get $$t1360.0 + call $runtime.Block.Release + local.get $$t1361.0 + call $runtime.Block.Release + local.get $$t1362.0 + call $runtime.Block.Release + local.get $$t1363.0 + call $runtime.Block.Release + local.get $$t1364.0 + call $runtime.Block.Release + local.get $$t1365.0 + call $runtime.Block.Release + local.get $$t1366.0 + call $runtime.Block.Release + local.get $$t1367.0 + call $runtime.Block.Release + local.get $$t1368.0 + call $runtime.Block.Release + local.get $$t1369.0 + call $runtime.Block.Release + local.get $$t1370.0 + call $runtime.Block.Release + local.get $$t1371.0 + call $runtime.Block.Release + local.get $$t1372.0 + call $runtime.Block.Release + local.get $$t1373.0 + call $runtime.Block.Release + local.get $$t1374.0 + call $runtime.Block.Release + local.get $$t1375.0 + call $runtime.Block.Release + local.get $$t1376.0 + call $runtime.Block.Release + local.get $$t1377.0 + call $runtime.Block.Release + local.get $$t1378.0 + call $runtime.Block.Release + local.get $$t1379.0 + call $runtime.Block.Release + local.get $$t1380.0 + call $runtime.Block.Release + local.get $$t1381.0 + call $runtime.Block.Release + local.get $$t1382.0 + call $runtime.Block.Release + local.get $$t1383.0 + call $runtime.Block.Release + local.get $$t1384.0 + call $runtime.Block.Release + local.get $$t1385.0 + call $runtime.Block.Release + local.get $$t1386.0 + call $runtime.Block.Release + local.get $$t1387.0 + call $runtime.Block.Release + local.get $$t1388.0 + call $runtime.Block.Release + local.get $$t1389.0 + call $runtime.Block.Release + local.get $$t1390.0 + call $runtime.Block.Release + local.get $$t1391.0 + call $runtime.Block.Release + local.get $$t1392.0 + call $runtime.Block.Release + local.get $$t1393.0 + call $runtime.Block.Release + local.get $$t1394.0 + call $runtime.Block.Release + local.get $$t1395.0 + call $runtime.Block.Release + local.get $$t1396.0 + call $runtime.Block.Release + local.get $$t1397.0 + call $runtime.Block.Release + local.get $$t1398.0 + call $runtime.Block.Release + local.get $$t1399.0 + call $runtime.Block.Release + local.get $$t1400.0 + call $runtime.Block.Release + local.get $$t1401.0 + call $runtime.Block.Release + local.get $$t1402.0 + call $runtime.Block.Release + local.get $$t1403.0 + call $runtime.Block.Release + local.get $$t1404.0 + call $runtime.Block.Release + local.get $$t1405.0 + call $runtime.Block.Release + local.get $$t1406.0 + call $runtime.Block.Release + local.get $$t1407.0 + call $runtime.Block.Release + local.get $$t1408.0 + call $runtime.Block.Release + local.get $$t1409.0 + call $runtime.Block.Release + local.get $$t1410.0 + call $runtime.Block.Release + local.get $$t1411.0 + call $runtime.Block.Release + local.get $$t1412.0 + call $runtime.Block.Release + local.get $$t1413.0 + call $runtime.Block.Release + local.get $$t1414.0 + call $runtime.Block.Release + local.get $$t1415.0 + call $runtime.Block.Release + local.get $$t1416.0 + call $runtime.Block.Release + local.get $$t1417.0 + call $runtime.Block.Release + local.get $$t1418.0 + call $runtime.Block.Release + local.get $$t1419.0 + call $runtime.Block.Release + local.get $$t1420.0 + call $runtime.Block.Release + local.get $$t1421.0 + call $runtime.Block.Release + local.get $$t1422.0 + call $runtime.Block.Release + local.get $$t1423.0 + call $runtime.Block.Release + local.get $$t1424.0 + call $runtime.Block.Release + local.get $$t1425.0 + call $runtime.Block.Release + local.get $$t1426.0 + call $runtime.Block.Release + local.get $$t1427.0 + call $runtime.Block.Release + local.get $$t1428.0 + call $runtime.Block.Release + local.get $$t1429.0 + call $runtime.Block.Release + local.get $$t1430.0 + call $runtime.Block.Release + local.get $$t1431.0 + call $runtime.Block.Release + local.get $$t1432.0 + call $runtime.Block.Release + local.get $$t1433.0 + call $runtime.Block.Release + local.get $$t1434.0 + call $runtime.Block.Release + local.get $$t1435.0 + call $runtime.Block.Release + local.get $$t1436.0 + call $runtime.Block.Release + local.get $$t1437.0 + call $runtime.Block.Release + local.get $$t1438.0 + call $runtime.Block.Release + local.get $$t1439.0 + call $runtime.Block.Release + local.get $$t1440.0 + call $runtime.Block.Release + local.get $$t1441.0 + call $runtime.Block.Release + local.get $$t1442.0 + call $runtime.Block.Release + local.get $$t1443.0 + call $runtime.Block.Release + local.get $$t1444.0 + call $runtime.Block.Release + local.get $$t1445.0 + call $runtime.Block.Release + local.get $$t1446.0 + call $runtime.Block.Release + local.get $$t1447.0 + call $runtime.Block.Release + local.get $$t1448.0 + call $runtime.Block.Release + local.get $$t1449.0 + call $runtime.Block.Release + local.get $$t1450.0 + call $runtime.Block.Release + local.get $$t1451.0 + call $runtime.Block.Release + local.get $$t1452.0 + call $runtime.Block.Release + local.get $$t1453.0 + call $runtime.Block.Release + local.get $$t1454.0 + call $runtime.Block.Release + local.get $$t1455.0 + call $runtime.Block.Release + local.get $$t1456.0 + call $runtime.Block.Release + local.get $$t1457.0 + call $runtime.Block.Release + local.get $$t1458.0 + call $runtime.Block.Release + local.get $$t1459.0 + call $runtime.Block.Release + local.get $$t1460.0 + call $runtime.Block.Release + local.get $$t1461.0 + call $runtime.Block.Release + local.get $$t1462.0 + call $runtime.Block.Release + local.get $$t1463.0 + call $runtime.Block.Release + local.get $$t1464.0 + call $runtime.Block.Release + local.get $$t1465.0 + call $runtime.Block.Release + local.get $$t1466.0 + call $runtime.Block.Release + local.get $$t1467.0 + call $runtime.Block.Release + local.get $$t1468.0 + call $runtime.Block.Release + local.get $$t1469.0 + call $runtime.Block.Release + local.get $$t1470.0 + call $runtime.Block.Release + local.get $$t1471.0 + call $runtime.Block.Release + local.get $$t1472.0 + call $runtime.Block.Release + local.get $$t1473.0 + call $runtime.Block.Release + local.get $$t1474.0 + call $runtime.Block.Release + local.get $$t1475.0 + call $runtime.Block.Release + local.get $$t1476.0 + call $runtime.Block.Release + local.get $$t1477.0 + call $runtime.Block.Release + local.get $$t1478.0 + call $runtime.Block.Release + local.get $$t1479.0 + call $runtime.Block.Release + local.get $$t1480.0 + call $runtime.Block.Release + local.get $$t1481.0 + call $runtime.Block.Release + local.get $$t1482.0 + call $runtime.Block.Release + local.get $$t1483.0 + call $runtime.Block.Release + local.get $$t1484.0 + call $runtime.Block.Release + local.get $$t1485.0 + call $runtime.Block.Release + local.get $$t1486.0 + call $runtime.Block.Release + local.get $$t1487.0 + call $runtime.Block.Release + local.get $$t1488.0 + call $runtime.Block.Release + local.get $$t1489.0 + call $runtime.Block.Release + local.get $$t1490.0 + call $runtime.Block.Release + local.get $$t1491.0 + call $runtime.Block.Release + local.get $$t1492.0 + call $runtime.Block.Release + local.get $$t1493.0 + call $runtime.Block.Release + local.get $$t1494.0 + call $runtime.Block.Release + local.get $$t1495.0 + call $runtime.Block.Release + local.get $$t1496.0 + call $runtime.Block.Release + local.get $$t1497.0 + call $runtime.Block.Release + local.get $$t1498.0 + call $runtime.Block.Release + local.get $$t1499.0 + call $runtime.Block.Release + local.get $$t1500.0 + call $runtime.Block.Release + local.get $$t1501.0 + call $runtime.Block.Release + local.get $$t1502.0 + call $runtime.Block.Release + local.get $$t1503.0 + call $runtime.Block.Release + local.get $$t1504.0 + call $runtime.Block.Release + local.get $$t1505.0 + call $runtime.Block.Release + local.get $$t1506.0 + call $runtime.Block.Release + local.get $$t1507.0 + call $runtime.Block.Release + local.get $$t1508.0 + call $runtime.Block.Release + local.get $$t1509.0 + call $runtime.Block.Release + local.get $$t1510.0 + call $runtime.Block.Release + local.get $$t1511.0 + call $runtime.Block.Release + local.get $$t1512.0 + call $runtime.Block.Release + local.get $$t1513.0 + call $runtime.Block.Release + local.get $$t1514.0 + call $runtime.Block.Release + local.get $$t1515.0 + call $runtime.Block.Release + local.get $$t1516.0 + call $runtime.Block.Release + local.get $$t1517.0 + call $runtime.Block.Release + local.get $$t1518.0 + call $runtime.Block.Release + local.get $$t1519.0 + call $runtime.Block.Release + local.get $$t1520.0 + call $runtime.Block.Release + local.get $$t1521.0 + call $runtime.Block.Release + local.get $$t1522.0 + call $runtime.Block.Release + local.get $$t1523.0 + call $runtime.Block.Release + local.get $$t1524.0 + call $runtime.Block.Release + local.get $$t1525.0 + call $runtime.Block.Release + local.get $$t1526.0 + call $runtime.Block.Release + local.get $$t1527.0 + call $runtime.Block.Release + local.get $$t1528.0 + call $runtime.Block.Release + local.get $$t1529.0 + call $runtime.Block.Release + local.get $$t1530.0 + call $runtime.Block.Release + local.get $$t1531.0 + call $runtime.Block.Release + local.get $$t1532.0 + call $runtime.Block.Release + local.get $$t1533.0 + call $runtime.Block.Release + local.get $$t1534.0 + call $runtime.Block.Release + local.get $$t1535.0 + call $runtime.Block.Release + local.get $$t1536.0 + call $runtime.Block.Release + local.get $$t1537.0 + call $runtime.Block.Release + local.get $$t1538.0 + call $runtime.Block.Release + local.get $$t1539.0 + call $runtime.Block.Release + local.get $$t1540.0 + call $runtime.Block.Release + local.get $$t1541.0 + call $runtime.Block.Release + local.get $$t1542.0 + call $runtime.Block.Release + local.get $$t1543.0 + call $runtime.Block.Release + local.get $$t1544.0 + call $runtime.Block.Release + local.get $$t1545.0 + call $runtime.Block.Release + local.get $$t1546.0 + call $runtime.Block.Release + local.get $$t1547.0 + call $runtime.Block.Release + local.get $$t1548.0 + call $runtime.Block.Release + local.get $$t1549.0 + call $runtime.Block.Release + local.get $$t1550.0 + call $runtime.Block.Release + local.get $$t1551.0 + call $runtime.Block.Release + local.get $$t1552.0 + call $runtime.Block.Release + local.get $$t1553.0 + call $runtime.Block.Release + local.get $$t1554.0 + call $runtime.Block.Release + local.get $$t1555.0 + call $runtime.Block.Release + local.get $$t1556.0 + call $runtime.Block.Release + local.get $$t1557.0 + call $runtime.Block.Release + local.get $$t1558.0 + call $runtime.Block.Release + local.get $$t1559.0 + call $runtime.Block.Release + local.get $$t1560.0 + call $runtime.Block.Release + local.get $$t1561.0 + call $runtime.Block.Release + local.get $$t1562.0 + call $runtime.Block.Release + local.get $$t1563.0 + call $runtime.Block.Release + local.get $$t1564.0 + call $runtime.Block.Release + local.get $$t1565.0 + call $runtime.Block.Release + local.get $$t1566.0 + call $runtime.Block.Release + local.get $$t1567.0 + call $runtime.Block.Release + local.get $$t1568.0 + call $runtime.Block.Release + local.get $$t1569.0 + call $runtime.Block.Release + local.get $$t1570.0 + call $runtime.Block.Release + local.get $$t1571.0 + call $runtime.Block.Release + local.get $$t1572.0 + call $runtime.Block.Release + local.get $$t1573.0 + call $runtime.Block.Release + local.get $$t1574.0 + call $runtime.Block.Release + local.get $$t1575.0 + call $runtime.Block.Release + local.get $$t1576.0 + call $runtime.Block.Release + local.get $$t1577.0 + call $runtime.Block.Release + local.get $$t1578.0 + call $runtime.Block.Release + local.get $$t1579.0 + call $runtime.Block.Release + local.get $$t1580.0 + call $runtime.Block.Release + local.get $$t1581.0 + call $runtime.Block.Release + local.get $$t1582.0 + call $runtime.Block.Release + local.get $$t1583.0 + call $runtime.Block.Release + local.get $$t1584.0 + call $runtime.Block.Release + local.get $$t1585.0 + call $runtime.Block.Release + local.get $$t1586.0 + call $runtime.Block.Release + local.get $$t1587.0 + call $runtime.Block.Release + local.get $$t1588.0 + call $runtime.Block.Release + local.get $$t1589.0 + call $runtime.Block.Release + local.get $$t1590.0 + call $runtime.Block.Release + local.get $$t1591.0 + call $runtime.Block.Release + local.get $$t1592.0 + call $runtime.Block.Release + local.get $$t1593.0 + call $runtime.Block.Release + local.get $$t1594.0 + call $runtime.Block.Release + local.get $$t1595.0 + call $runtime.Block.Release + local.get $$t1596.0 + call $runtime.Block.Release + local.get $$t1597.0 + call $runtime.Block.Release + local.get $$t1598.0 + call $runtime.Block.Release + local.get $$t1599.0 + call $runtime.Block.Release + local.get $$t1600.0 + call $runtime.Block.Release + local.get $$t1601.0 + call $runtime.Block.Release + local.get $$t1602.0 + call $runtime.Block.Release + local.get $$t1603.0 + call $runtime.Block.Release + local.get $$t1604.0 + call $runtime.Block.Release + local.get $$t1605.0 + call $runtime.Block.Release + local.get $$t1606.0 + call $runtime.Block.Release + local.get $$t1607.0 + call $runtime.Block.Release + local.get $$t1608.0 + call $runtime.Block.Release + local.get $$t1609.0 + call $runtime.Block.Release + local.get $$t1610.0 + call $runtime.Block.Release + local.get $$t1611.0 + call $runtime.Block.Release + local.get $$t1612.0 + call $runtime.Block.Release + local.get $$t1613.0 + call $runtime.Block.Release + local.get $$t1614.0 + call $runtime.Block.Release + local.get $$t1615.0 + call $runtime.Block.Release + local.get $$t1616.0 + call $runtime.Block.Release + local.get $$t1617.0 + call $runtime.Block.Release + local.get $$t1618.0 + call $runtime.Block.Release + local.get $$t1619.0 + call $runtime.Block.Release + local.get $$t1620.0 + call $runtime.Block.Release + local.get $$t1621.0 + call $runtime.Block.Release + local.get $$t1622.0 + call $runtime.Block.Release + local.get $$t1623.0 + call $runtime.Block.Release + local.get $$t1624.0 + call $runtime.Block.Release + local.get $$t1625.0 + call $runtime.Block.Release + local.get $$t1626.0 + call $runtime.Block.Release + local.get $$t1627.0 + call $runtime.Block.Release + local.get $$t1628.0 + call $runtime.Block.Release + local.get $$t1629.0 + call $runtime.Block.Release + local.get $$t1630.0 + call $runtime.Block.Release + local.get $$t1631.0 + call $runtime.Block.Release + local.get $$t1632.0 + call $runtime.Block.Release + local.get $$t1633.0 + call $runtime.Block.Release + local.get $$t1634.0 + call $runtime.Block.Release + local.get $$t1635.0 + call $runtime.Block.Release + local.get $$t1636.0 + call $runtime.Block.Release + local.get $$t1637.0 + call $runtime.Block.Release + local.get $$t1638.0 + call $runtime.Block.Release + local.get $$t1639.0 + call $runtime.Block.Release + local.get $$t1640.0 + call $runtime.Block.Release + local.get $$t1641.0 + call $runtime.Block.Release + local.get $$t1642.0 + call $runtime.Block.Release + local.get $$t1643.0 + call $runtime.Block.Release + local.get $$t1644.0 + call $runtime.Block.Release + local.get $$t1645.0 + call $runtime.Block.Release + local.get $$t1646.0 + call $runtime.Block.Release + local.get $$t1647.0 + call $runtime.Block.Release + local.get $$t1648.0 + call $runtime.Block.Release + local.get $$t1649.0 + call $runtime.Block.Release + local.get $$t1650.0 + call $runtime.Block.Release + local.get $$t1651.0 + call $runtime.Block.Release + local.get $$t1652.0 + call $runtime.Block.Release + local.get $$t1653.0 + call $runtime.Block.Release + local.get $$t1654.0 + call $runtime.Block.Release + local.get $$t1655.0 + call $runtime.Block.Release + local.get $$t1656.0 + call $runtime.Block.Release + local.get $$t1657.0 + call $runtime.Block.Release + local.get $$t1658.0 + call $runtime.Block.Release + local.get $$t1659.0 + call $runtime.Block.Release + local.get $$t1660.0 + call $runtime.Block.Release + local.get $$t1661.0 + call $runtime.Block.Release + local.get $$t1662.0 + call $runtime.Block.Release + local.get $$t1663.0 + call $runtime.Block.Release + local.get $$t1664.0 + call $runtime.Block.Release + local.get $$t1665.0 + call $runtime.Block.Release + local.get $$t1666.0 + call $runtime.Block.Release + local.get $$t1667.0 + call $runtime.Block.Release + local.get $$t1668.0 + call $runtime.Block.Release + local.get $$t1669.0 + call $runtime.Block.Release + local.get $$t1670.0 + call $runtime.Block.Release + local.get $$t1671.0 + call $runtime.Block.Release + local.get $$t1672.0 + call $runtime.Block.Release + local.get $$t1673.0 + call $runtime.Block.Release + local.get $$t1674.0 + call $runtime.Block.Release + local.get $$t1675.0 + call $runtime.Block.Release + local.get $$t1676.0 + call $runtime.Block.Release + local.get $$t1677.0 + call $runtime.Block.Release + local.get $$t1678.0 + call $runtime.Block.Release + local.get $$t1679.0 + call $runtime.Block.Release + local.get $$t1680.0 + call $runtime.Block.Release + local.get $$t1681.0 + call $runtime.Block.Release + local.get $$t1682.0 + call $runtime.Block.Release + local.get $$t1683.0 + call $runtime.Block.Release + local.get $$t1684.0 + call $runtime.Block.Release + local.get $$t1685.0 + call $runtime.Block.Release + local.get $$t1686.0 + call $runtime.Block.Release + local.get $$t1687.0 + call $runtime.Block.Release + local.get $$t1688.0 + call $runtime.Block.Release + local.get $$t1689.0 + call $runtime.Block.Release + local.get $$t1690.0 + call $runtime.Block.Release + local.get $$t1691.0 + call $runtime.Block.Release + local.get $$t1692.0 + call $runtime.Block.Release + local.get $$t1693.0 + call $runtime.Block.Release + local.get $$t1694.0 + call $runtime.Block.Release + local.get $$t1695.0 + call $runtime.Block.Release + local.get $$t1696.0 + call $runtime.Block.Release + local.get $$t1697.0 + call $runtime.Block.Release + local.get $$t1698.0 + call $runtime.Block.Release + local.get $$t1699.0 + call $runtime.Block.Release + local.get $$t1700.0 + call $runtime.Block.Release + local.get $$t1701.0 + call $runtime.Block.Release + local.get $$t1702.0 + call $runtime.Block.Release + local.get $$t1703.0 + call $runtime.Block.Release + local.get $$t1704.0 + call $runtime.Block.Release + local.get $$t1705.0 + call $runtime.Block.Release + local.get $$t1706.0 + call $runtime.Block.Release + local.get $$t1707.0 + call $runtime.Block.Release + local.get $$t1708.0 + call $runtime.Block.Release + local.get $$t1709.0 + call $runtime.Block.Release + local.get $$t1710.0 + call $runtime.Block.Release + local.get $$t1711.0 + call $runtime.Block.Release + local.get $$t1712.0 + call $runtime.Block.Release + local.get $$t1713.0 + call $runtime.Block.Release + local.get $$t1714.0 + call $runtime.Block.Release + local.get $$t1715.0 + call $runtime.Block.Release + local.get $$t1716.0 + call $runtime.Block.Release + local.get $$t1717.0 + call $runtime.Block.Release + local.get $$t1718.0 + call $runtime.Block.Release + local.get $$t1719.0 + call $runtime.Block.Release + local.get $$t1720.0 + call $runtime.Block.Release + local.get $$t1721.0 + call $runtime.Block.Release + local.get $$t1722.0 + call $runtime.Block.Release + local.get $$t1723.0 + call $runtime.Block.Release + local.get $$t1724.0 + call $runtime.Block.Release + local.get $$t1725.0 + call $runtime.Block.Release + local.get $$t1726.0 + call $runtime.Block.Release + local.get $$t1727.0 + call $runtime.Block.Release + local.get $$t1728.0 + call $runtime.Block.Release + local.get $$t1729.0 + call $runtime.Block.Release + local.get $$t1730.0 + call $runtime.Block.Release + local.get $$t1731.0 + call $runtime.Block.Release + local.get $$t1732.0 + call $runtime.Block.Release + local.get $$t1733.0 + call $runtime.Block.Release + local.get $$t1734.0 + call $runtime.Block.Release + local.get $$t1735.0 + call $runtime.Block.Release + local.get $$t1736.0 + call $runtime.Block.Release + local.get $$t1737.0 + call $runtime.Block.Release + local.get $$t1738.0 + call $runtime.Block.Release + local.get $$t1739.0 + call $runtime.Block.Release + local.get $$t1740.0 + call $runtime.Block.Release + local.get $$t1741.0 + call $runtime.Block.Release + local.get $$t1742.0 + call $runtime.Block.Release + local.get $$t1743.0 + call $runtime.Block.Release + local.get $$t1744.0 + call $runtime.Block.Release + local.get $$t1745.0 + call $runtime.Block.Release + local.get $$t1746.0 + call $runtime.Block.Release + local.get $$t1747.0 + call $runtime.Block.Release + local.get $$t1748.0 + call $runtime.Block.Release + local.get $$t1749.0 + call $runtime.Block.Release + local.get $$t1750.0 + call $runtime.Block.Release + local.get $$t1751.0 + call $runtime.Block.Release + local.get $$t1752.0 + call $runtime.Block.Release + local.get $$t1753.0 + call $runtime.Block.Release + local.get $$t1754.0 + call $runtime.Block.Release + local.get $$t1755.0 + call $runtime.Block.Release + local.get $$t1756.0 + call $runtime.Block.Release + local.get $$t1757.0 + call $runtime.Block.Release + local.get $$t1758.0 + call $runtime.Block.Release + local.get $$t1759.0 + call $runtime.Block.Release + local.get $$t1760.0 + call $runtime.Block.Release + local.get $$t1761.0 + call $runtime.Block.Release + local.get $$t1762.0 + call $runtime.Block.Release + local.get $$t1763.0 + call $runtime.Block.Release + local.get $$t1764.0 + call $runtime.Block.Release + local.get $$t1765.0 + call $runtime.Block.Release + local.get $$t1766.0 + call $runtime.Block.Release + local.get $$t1767.0 + call $runtime.Block.Release + local.get $$t1768.0 + call $runtime.Block.Release + local.get $$t1769.0 + call $runtime.Block.Release + local.get $$t1770.0 + call $runtime.Block.Release + local.get $$t1771.0 + call $runtime.Block.Release + local.get $$t1772.0 + call $runtime.Block.Release + local.get $$t1773.0 + call $runtime.Block.Release + local.get $$t1774.0 + call $runtime.Block.Release + local.get $$t1775.0 + call $runtime.Block.Release + local.get $$t1776.0 + call $runtime.Block.Release + local.get $$t1777.0 + call $runtime.Block.Release + local.get $$t1778.0 + call $runtime.Block.Release + local.get $$t1779.0 + call $runtime.Block.Release + local.get $$t1780.0 + call $runtime.Block.Release + local.get $$t1781.0 + call $runtime.Block.Release + local.get $$t1782.0 + call $runtime.Block.Release + local.get $$t1783.0 + call $runtime.Block.Release + local.get $$t1784.0 + call $runtime.Block.Release + local.get $$t1785.0 + call $runtime.Block.Release + local.get $$t1786.0 + call $runtime.Block.Release + local.get $$t1787.0 + call $runtime.Block.Release + local.get $$t1788.0 + call $runtime.Block.Release + local.get $$t1789.0 + call $runtime.Block.Release + local.get $$t1790.0 + call $runtime.Block.Release + local.get $$t1791.0 + call $runtime.Block.Release + local.get $$t1792.0 + call $runtime.Block.Release + local.get $$t1793.0 + call $runtime.Block.Release + local.get $$t1794.0 + call $runtime.Block.Release + local.get $$t1795.0 + call $runtime.Block.Release + local.get $$t1796.0 + call $runtime.Block.Release + local.get $$t1797.0 + call $runtime.Block.Release + local.get $$t1798.0 + call $runtime.Block.Release + local.get $$t1799.0 + call $runtime.Block.Release + local.get $$t1800.0 + call $runtime.Block.Release + local.get $$t1801.0 + call $runtime.Block.Release + local.get $$t1802.0 + call $runtime.Block.Release + local.get $$t1803.0 + call $runtime.Block.Release + local.get $$t1804.0 + call $runtime.Block.Release + local.get $$t1805.0 + call $runtime.Block.Release + local.get $$t1806.0 + call $runtime.Block.Release + local.get $$t1807.0 + call $runtime.Block.Release + local.get $$t1808.0 + call $runtime.Block.Release + local.get $$t1809.0 + call $runtime.Block.Release + local.get $$t1810.0 + call $runtime.Block.Release + local.get $$t1811.0 + call $runtime.Block.Release + local.get $$t1812.0 + call $runtime.Block.Release + local.get $$t1813.0 + call $runtime.Block.Release + local.get $$t1814.0 + call $runtime.Block.Release + local.get $$t1815.0 + call $runtime.Block.Release + local.get $$t1816.0 + call $runtime.Block.Release + local.get $$t1817.0 + call $runtime.Block.Release + local.get $$t1818.0 + call $runtime.Block.Release + local.get $$t1819.0 + call $runtime.Block.Release + local.get $$t1820.0 + call $runtime.Block.Release + local.get $$t1821.0 + call $runtime.Block.Release + local.get $$t1822.0 + call $runtime.Block.Release + local.get $$t1823.0 + call $runtime.Block.Release + local.get $$t1824.0 + call $runtime.Block.Release + local.get $$t1825.0 + call $runtime.Block.Release + local.get $$t1826.0 + call $runtime.Block.Release + local.get $$t1827.0 + call $runtime.Block.Release + local.get $$t1828.0 + call $runtime.Block.Release + local.get $$t1829.0 + call $runtime.Block.Release + local.get $$t1830.0 + call $runtime.Block.Release + local.get $$t1831.0 + call $runtime.Block.Release + local.get $$t1832.0 + call $runtime.Block.Release + local.get $$t1833.0 + call $runtime.Block.Release + local.get $$t1834.0 + call $runtime.Block.Release + local.get $$t1835.0 + call $runtime.Block.Release + local.get $$t1836.0 + call $runtime.Block.Release + local.get $$t1837.0 + call $runtime.Block.Release + local.get $$t1838.0 + call $runtime.Block.Release + local.get $$t1839.0 + call $runtime.Block.Release + local.get $$t1840.0 + call $runtime.Block.Release + local.get $$t1841.0 + call $runtime.Block.Release + local.get $$t1842.0 + call $runtime.Block.Release + local.get $$t1843.0 + call $runtime.Block.Release + local.get $$t1844.0 + call $runtime.Block.Release + local.get $$t1845.0 + call $runtime.Block.Release + local.get $$t1846.0 + call $runtime.Block.Release + local.get $$t1847.0 + call $runtime.Block.Release + local.get $$t1848.0 + call $runtime.Block.Release + local.get $$t1849.0 + call $runtime.Block.Release + local.get $$t1850.0 + call $runtime.Block.Release + local.get $$t1851.0 + call $runtime.Block.Release + local.get $$t1852.0 + call $runtime.Block.Release + local.get $$t1853.0 + call $runtime.Block.Release + local.get $$t1854.0 + call $runtime.Block.Release + local.get $$t1855.0 + call $runtime.Block.Release + local.get $$t1856.0 + call $runtime.Block.Release + local.get $$t1857.0 + call $runtime.Block.Release + local.get $$t1858.0 + call $runtime.Block.Release + local.get $$t1859.0 + call $runtime.Block.Release + local.get $$t1860.0 + call $runtime.Block.Release + local.get $$t1861.0 + call $runtime.Block.Release + local.get $$t1862.0 + call $runtime.Block.Release + local.get $$t1863.0 + call $runtime.Block.Release + local.get $$t1864.0 + call $runtime.Block.Release + local.get $$t1865.0 + call $runtime.Block.Release + local.get $$t1866.0 + call $runtime.Block.Release + local.get $$t1867.0 + call $runtime.Block.Release + local.get $$t1868.0 + call $runtime.Block.Release + local.get $$t1869.0 + call $runtime.Block.Release + local.get $$t1870.0 + call $runtime.Block.Release + local.get $$t1871.0 + call $runtime.Block.Release + local.get $$t1872.0 + call $runtime.Block.Release + local.get $$t1873.0 + call $runtime.Block.Release + local.get $$t1874.0 + call $runtime.Block.Release + local.get $$t1875.0 + call $runtime.Block.Release + local.get $$t1876.0 + call $runtime.Block.Release + local.get $$t1877.0 + call $runtime.Block.Release + local.get $$t1878.0 + call $runtime.Block.Release + local.get $$t1879.0 + call $runtime.Block.Release + local.get $$t1880.0 + call $runtime.Block.Release + local.get $$t1881.0 + call $runtime.Block.Release + local.get $$t1882.0 + call $runtime.Block.Release + local.get $$t1883.0 + call $runtime.Block.Release + local.get $$t1884.0 + call $runtime.Block.Release + local.get $$t1885.0 + call $runtime.Block.Release + local.get $$t1886.0 + call $runtime.Block.Release + local.get $$t1887.0 + call $runtime.Block.Release + local.get $$t1888.0 + call $runtime.Block.Release + local.get $$t1889.0 + call $runtime.Block.Release + local.get $$t1890.0 + call $runtime.Block.Release + local.get $$t1891.0 + call $runtime.Block.Release + local.get $$t1892.0 + call $runtime.Block.Release + local.get $$t1893.0 + call $runtime.Block.Release + local.get $$t1894.0 + call $runtime.Block.Release + local.get $$t1895.0 + call $runtime.Block.Release + local.get $$t1896.0 + call $runtime.Block.Release + local.get $$t1897.0 + call $runtime.Block.Release + local.get $$t1898.0 + call $runtime.Block.Release + local.get $$t1899.0 + call $runtime.Block.Release + local.get $$t1900.0 + call $runtime.Block.Release + local.get $$t1901.0 + call $runtime.Block.Release + local.get $$t1902.0 + call $runtime.Block.Release + local.get $$t1903.0 + call $runtime.Block.Release + local.get $$t1904.0 + call $runtime.Block.Release + local.get $$t1905.0 + call $runtime.Block.Release + local.get $$t1906.0 + call $runtime.Block.Release + local.get $$t1907.0 + call $runtime.Block.Release + local.get $$t1908.0 + call $runtime.Block.Release + local.get $$t1909.0 + call $runtime.Block.Release + local.get $$t1910.0 + call $runtime.Block.Release + local.get $$t1911.0 + call $runtime.Block.Release + local.get $$t1912.0 + call $runtime.Block.Release + local.get $$t1913.0 + call $runtime.Block.Release + local.get $$t1914.0 + call $runtime.Block.Release + local.get $$t1915.0 + call $runtime.Block.Release + local.get $$t1916.0 + call $runtime.Block.Release + local.get $$t1917.0 + call $runtime.Block.Release + local.get $$t1918.0 + call $runtime.Block.Release + local.get $$t1919.0 + call $runtime.Block.Release + local.get $$t1920.0 + call $runtime.Block.Release + local.get $$t1921.0 + call $runtime.Block.Release + local.get $$t1922.0 + call $runtime.Block.Release + local.get $$t1923.0 + call $runtime.Block.Release + local.get $$t1924.0 + call $runtime.Block.Release + local.get $$t1925.0 + call $runtime.Block.Release + local.get $$t1926.0 + call $runtime.Block.Release + local.get $$t1927.0 + call $runtime.Block.Release + local.get $$t1928.0 + call $runtime.Block.Release + local.get $$t1929.0 + call $runtime.Block.Release + local.get $$t1930.0 + call $runtime.Block.Release + local.get $$t1931.0 + call $runtime.Block.Release + local.get $$t1932.0 + call $runtime.Block.Release + local.get $$t1933.0 + call $runtime.Block.Release + local.get $$t1934.0 + call $runtime.Block.Release + local.get $$t1935.0 + call $runtime.Block.Release + local.get $$t1936.0 + call $runtime.Block.Release + local.get $$t1937.0 + call $runtime.Block.Release + local.get $$t1938.0 + call $runtime.Block.Release + local.get $$t1939.0 + call $runtime.Block.Release + local.get $$t1940.0 + call $runtime.Block.Release + local.get $$t1941.0 + call $runtime.Block.Release + local.get $$t1942.0 + call $runtime.Block.Release + local.get $$t1943.0 + call $runtime.Block.Release + local.get $$t1944.0 + call $runtime.Block.Release + local.get $$t1945.0 + call $runtime.Block.Release + local.get $$t1946.0 + call $runtime.Block.Release + local.get $$t1947.0 + call $runtime.Block.Release + local.get $$t1948.0 + call $runtime.Block.Release + local.get $$t1949.0 + call $runtime.Block.Release + local.get $$t1950.0 + call $runtime.Block.Release + local.get $$t1951.0 + call $runtime.Block.Release + local.get $$t1952.0 + call $runtime.Block.Release + local.get $$t1953.0 + call $runtime.Block.Release + local.get $$t1954.0 + call $runtime.Block.Release + local.get $$t1955.0 + call $runtime.Block.Release + local.get $$t1956.0 + call $runtime.Block.Release + local.get $$t1957.0 + call $runtime.Block.Release + local.get $$t1958.0 + call $runtime.Block.Release + local.get $$t1959.0 + call $runtime.Block.Release + local.get $$t1960.0 + call $runtime.Block.Release + local.get $$t1961.0 + call $runtime.Block.Release + local.get $$t1962.0 + call $runtime.Block.Release + local.get $$t1963.0 + call $runtime.Block.Release + local.get $$t1964.0 + call $runtime.Block.Release + local.get $$t1965.0 + call $runtime.Block.Release + local.get $$t1966.0 + call $runtime.Block.Release + local.get $$t1967.0 + call $runtime.Block.Release + local.get $$t1968.0 + call $runtime.Block.Release + local.get $$t1969.0 + call $runtime.Block.Release + local.get $$t1970.0 + call $runtime.Block.Release + local.get $$t1971.0 + call $runtime.Block.Release + local.get $$t1972.0 + call $runtime.Block.Release + local.get $$t1973.0 + call $runtime.Block.Release + local.get $$t1974.0 + call $runtime.Block.Release + local.get $$t1975.0 + call $runtime.Block.Release + local.get $$t1976.0 + call $runtime.Block.Release + local.get $$t1977.0 + call $runtime.Block.Release + local.get $$t1978.0 + call $runtime.Block.Release + local.get $$t1979.0 + call $runtime.Block.Release + local.get $$t1980.0 + call $runtime.Block.Release + local.get $$t1981.0 + call $runtime.Block.Release + local.get $$t1982.0 + call $runtime.Block.Release + local.get $$t1983.0 + call $runtime.Block.Release + local.get $$t1984.0 + call $runtime.Block.Release + local.get $$t1985.0 + call $runtime.Block.Release + local.get $$t1986.0 + call $runtime.Block.Release + local.get $$t1987.0 + call $runtime.Block.Release + local.get $$t1988.0 + call $runtime.Block.Release + local.get $$t1989.0 + call $runtime.Block.Release + local.get $$t1990.0 + call $runtime.Block.Release + local.get $$t1991.0 + call $runtime.Block.Release + local.get $$t1992.0 + call $runtime.Block.Release + local.get $$t1993.0 + call $runtime.Block.Release + local.get $$t1994.0 + call $runtime.Block.Release + local.get $$t1995.0 + call $runtime.Block.Release + local.get $$t1996.0 + call $runtime.Block.Release + local.get $$t1997.0 + call $runtime.Block.Release + local.get $$t1998.0 + call $runtime.Block.Release + local.get $$t1999.0 + call $runtime.Block.Release + local.get $$t2000.0 + call $runtime.Block.Release + local.get $$t2001.0 + call $runtime.Block.Release + local.get $$t2002.0 + call $runtime.Block.Release + local.get $$t2003.0 + call $runtime.Block.Release + local.get $$t2004.0 + call $runtime.Block.Release + local.get $$t2005.0 + call $runtime.Block.Release + local.get $$t2006.0 + call $runtime.Block.Release + local.get $$t2007.0 + call $runtime.Block.Release + local.get $$t2008.0 + call $runtime.Block.Release + local.get $$t2009.0 + call $runtime.Block.Release + local.get $$t2010.0 + call $runtime.Block.Release + local.get $$t2011.0 + call $runtime.Block.Release + local.get $$t2012.0 + call $runtime.Block.Release + local.get $$t2013.0 + call $runtime.Block.Release + local.get $$t2014.0 + call $runtime.Block.Release + local.get $$t2015.0 + call $runtime.Block.Release + local.get $$t2016.0 + call $runtime.Block.Release + local.get $$t2017.0 + call $runtime.Block.Release + local.get $$t2018.0 + call $runtime.Block.Release + local.get $$t2019.0 + call $runtime.Block.Release + local.get $$t2020.0 + call $runtime.Block.Release + local.get $$t2021.0 + call $runtime.Block.Release + local.get $$t2022.0 + call $runtime.Block.Release + local.get $$t2023.0 + call $runtime.Block.Release + local.get $$t2024.0 + call $runtime.Block.Release + local.get $$t2025.0 + call $runtime.Block.Release + local.get $$t2026.0 + call $runtime.Block.Release + local.get $$t2027.0 + call $runtime.Block.Release + local.get $$t2028.0 + call $runtime.Block.Release + local.get $$t2029.0 + call $runtime.Block.Release + local.get $$t2030.0 + call $runtime.Block.Release + local.get $$t2031.0 + call $runtime.Block.Release + local.get $$t2032.0 + call $runtime.Block.Release + local.get $$t2033.0 + call $runtime.Block.Release + local.get $$t2034.0 + call $runtime.Block.Release + local.get $$t2035.0 + call $runtime.Block.Release + local.get $$t2036.0 + call $runtime.Block.Release + local.get $$t2037.0 + call $runtime.Block.Release + local.get $$t2038.0 + call $runtime.Block.Release + local.get $$t2039.0 + call $runtime.Block.Release + local.get $$t2040.0 + call $runtime.Block.Release + local.get $$t2041.0 + call $runtime.Block.Release + local.get $$t2042.0 + call $runtime.Block.Release + local.get $$t2043.0 + call $runtime.Block.Release + local.get $$t2044.0 + call $runtime.Block.Release + local.get $$t2045.0 + call $runtime.Block.Release + local.get $$t2046.0 + call $runtime.Block.Release + local.get $$t2047.0 + call $runtime.Block.Release + local.get $$t2048.0 + call $runtime.Block.Release + local.get $$t2049.0 + call $runtime.Block.Release + local.get $$t2050.0 + call $runtime.Block.Release + local.get $$t2051.0 + call $runtime.Block.Release + local.get $$t2052.0 + call $runtime.Block.Release + local.get $$t2053.0 + call $runtime.Block.Release + local.get $$t2054.0 + call $runtime.Block.Release + local.get $$t2055.0 + call $runtime.Block.Release + local.get $$t2056.0 + call $runtime.Block.Release + local.get $$t2057.0 + call $runtime.Block.Release + local.get $$t2058.0 + call $runtime.Block.Release + local.get $$t2059.0 + call $runtime.Block.Release + local.get $$t2060.0 + call $runtime.Block.Release + local.get $$t2061.0 + call $runtime.Block.Release + local.get $$t2062.0 + call $runtime.Block.Release + local.get $$t2063.0 + call $runtime.Block.Release + local.get $$t2064.0 + call $runtime.Block.Release + local.get $$t2065.0 + call $runtime.Block.Release + local.get $$t2066.0 + call $runtime.Block.Release + local.get $$t2067.0 + call $runtime.Block.Release + local.get $$t2068.0 + call $runtime.Block.Release + local.get $$t2069.0 + call $runtime.Block.Release + local.get $$t2070.0 + call $runtime.Block.Release + local.get $$t2071.0 + call $runtime.Block.Release + local.get $$t2072.0 + call $runtime.Block.Release + local.get $$t2073.0 + call $runtime.Block.Release + local.get $$t2074.0 + call $runtime.Block.Release + local.get $$t2075.0 + call $runtime.Block.Release + local.get $$t2076.0 + call $runtime.Block.Release + local.get $$t2077.0 + call $runtime.Block.Release + local.get $$t2078.0 + call $runtime.Block.Release + local.get $$t2079.0 + call $runtime.Block.Release + local.get $$t2080.0 + call $runtime.Block.Release + local.get $$t2081.0 + call $runtime.Block.Release + local.get $$t2082.0 + call $runtime.Block.Release + local.get $$t2083.0 + call $runtime.Block.Release + local.get $$t2084.0 + call $runtime.Block.Release + local.get $$t2085.0 + call $runtime.Block.Release + local.get $$t2086.0 + call $runtime.Block.Release + local.get $$t2087.0 + call $runtime.Block.Release + local.get $$t2088.0 + call $runtime.Block.Release + local.get $$t2089.0 + call $runtime.Block.Release + local.get $$t2090.0 + call $runtime.Block.Release + local.get $$t2091.0 + call $runtime.Block.Release + local.get $$t2092.0 + call $runtime.Block.Release + local.get $$t2093.0 + call $runtime.Block.Release + local.get $$t2094.0 + call $runtime.Block.Release + local.get $$t2095.0 + call $runtime.Block.Release + local.get $$t2096.0 + call $runtime.Block.Release + local.get $$t2097.0 + call $runtime.Block.Release + local.get $$t2098.0 + call $runtime.Block.Release + local.get $$t2099.0 + call $runtime.Block.Release + local.get $$t2100.0 + call $runtime.Block.Release + local.get $$t2101.0 + call $runtime.Block.Release + local.get $$t2102.0 + call $runtime.Block.Release + local.get $$t2103.0 + call $runtime.Block.Release + local.get $$t2104.0 + call $runtime.Block.Release + local.get $$t2105.0 + call $runtime.Block.Release + local.get $$t2106.0 + call $runtime.Block.Release + local.get $$t2107.0 + call $runtime.Block.Release + local.get $$t2108.0 + call $runtime.Block.Release + local.get $$t2109.0 + call $runtime.Block.Release + local.get $$t2110.0 + call $runtime.Block.Release + local.get $$t2111.0 + call $runtime.Block.Release + local.get $$t2112.0 + call $runtime.Block.Release + local.get $$t2113.0 + call $runtime.Block.Release + local.get $$t2114.0 + call $runtime.Block.Release + local.get $$t2115.0 + call $runtime.Block.Release + local.get $$t2116.0 + call $runtime.Block.Release + local.get $$t2117.0 + call $runtime.Block.Release + local.get $$t2118.0 + call $runtime.Block.Release + local.get $$t2119.0 + call $runtime.Block.Release + local.get $$t2120.0 + call $runtime.Block.Release + local.get $$t2121.0 + call $runtime.Block.Release + local.get $$t2122.0 + call $runtime.Block.Release + local.get $$t2123.0 + call $runtime.Block.Release + local.get $$t2124.0 + call $runtime.Block.Release + local.get $$t2125.0 + call $runtime.Block.Release + local.get $$t2126.0 + call $runtime.Block.Release + local.get $$t2127.0 + call $runtime.Block.Release + local.get $$t2128.0 + call $runtime.Block.Release + local.get $$t2129.0 + call $runtime.Block.Release + local.get $$t2130.0 + call $runtime.Block.Release + local.get $$t2131.0 + call $runtime.Block.Release + local.get $$t2132.0 + call $runtime.Block.Release + local.get $$t2133.0 + call $runtime.Block.Release + local.get $$t2134.0 + call $runtime.Block.Release + local.get $$t2135.0 + call $runtime.Block.Release + local.get $$t2136.0 + call $runtime.Block.Release + local.get $$t2137.0 + call $runtime.Block.Release + local.get $$t2138.0 + call $runtime.Block.Release + local.get $$t2139.0 + call $runtime.Block.Release + local.get $$t2140.0 + call $runtime.Block.Release + local.get $$t2141.0 + call $runtime.Block.Release + local.get $$t2142.0 + call $runtime.Block.Release + local.get $$t2143.0 + call $runtime.Block.Release + local.get $$t2144.0 + call $runtime.Block.Release + local.get $$t2145.0 + call $runtime.Block.Release + local.get $$t2146.0 + call $runtime.Block.Release + local.get $$t2147.0 + call $runtime.Block.Release + local.get $$t2148.0 + call $runtime.Block.Release + local.get $$t2149.0 + call $runtime.Block.Release + local.get $$t2150.0 + call $runtime.Block.Release + local.get $$t2151.0 + call $runtime.Block.Release + local.get $$t2152.0 + call $runtime.Block.Release + local.get $$t2153.0 + call $runtime.Block.Release + local.get $$t2154.0 + call $runtime.Block.Release + local.get $$t2155.0 + call $runtime.Block.Release + local.get $$t2156.0 + call $runtime.Block.Release + local.get $$t2157.0 + call $runtime.Block.Release + local.get $$t2158.0 + call $runtime.Block.Release + local.get $$t2159.0 + call $runtime.Block.Release + local.get $$t2160.0 + call $runtime.Block.Release + local.get $$t2161.0 + call $runtime.Block.Release + local.get $$t2162.0 + call $runtime.Block.Release + local.get $$t2163.0 + call $runtime.Block.Release + local.get $$t2164.0 + call $runtime.Block.Release + local.get $$t2165.0 + call $runtime.Block.Release + local.get $$t2166.0 + call $runtime.Block.Release + local.get $$t2167.0 + call $runtime.Block.Release + local.get $$t2168.0 + call $runtime.Block.Release + local.get $$t2169.0 + call $runtime.Block.Release + local.get $$t2170.0 + call $runtime.Block.Release + local.get $$t2171.0 + call $runtime.Block.Release + local.get $$t2172.0 + call $runtime.Block.Release + local.get $$t2173.0 + call $runtime.Block.Release + local.get $$t2174.0 + call $runtime.Block.Release + local.get $$t2175.0 + call $runtime.Block.Release + local.get $$t2176.0 + call $runtime.Block.Release + local.get $$t2177.0 + call $runtime.Block.Release + local.get $$t2178.0 + call $runtime.Block.Release + local.get $$t2179.0 + call $runtime.Block.Release + local.get $$t2180.0 + call $runtime.Block.Release + local.get $$t2181.0 + call $runtime.Block.Release + local.get $$t2182.0 + call $runtime.Block.Release + local.get $$t2183.0 + call $runtime.Block.Release + local.get $$t2184.0 + call $runtime.Block.Release + local.get $$t2185.0 + call $runtime.Block.Release + local.get $$t2186.0 + call $runtime.Block.Release + local.get $$t2187.0 + call $runtime.Block.Release + local.get $$t2188.0 + call $runtime.Block.Release + local.get $$t2189.0 + call $runtime.Block.Release + local.get $$t2190.0 + call $runtime.Block.Release + local.get $$t2191.0 + call $runtime.Block.Release + local.get $$t2192.0 + call $runtime.Block.Release + local.get $$t2193.0 + call $runtime.Block.Release + local.get $$t2194.0 + call $runtime.Block.Release + local.get $$t2195.0 + call $runtime.Block.Release + local.get $$t2196.0 + call $runtime.Block.Release + local.get $$t2197.0 + call $runtime.Block.Release + local.get $$t2198.0 + call $runtime.Block.Release + local.get $$t2199.0 + call $runtime.Block.Release + local.get $$t2200.0 + call $runtime.Block.Release + local.get $$t2201.0 + call $runtime.Block.Release + local.get $$t2202.0 + call $runtime.Block.Release + local.get $$t2203.0 + call $runtime.Block.Release + local.get $$t2204.0 + call $runtime.Block.Release + local.get $$t2205.0 + call $runtime.Block.Release + local.get $$t2206.0 + call $runtime.Block.Release + local.get $$t2207.0 + call $runtime.Block.Release + local.get $$t2208.0 + call $runtime.Block.Release + local.get $$t2209.0 + call $runtime.Block.Release + local.get $$t2210.0 + call $runtime.Block.Release + local.get $$t2211.0 + call $runtime.Block.Release + local.get $$t2212.0 + call $runtime.Block.Release + local.get $$t2213.0 + call $runtime.Block.Release + local.get $$t2214.0 + call $runtime.Block.Release + local.get $$t2215.0 + call $runtime.Block.Release + local.get $$t2216.0 + call $runtime.Block.Release + local.get $$t2217.0 + call $runtime.Block.Release + local.get $$t2218.0 + call $runtime.Block.Release + local.get $$t2219.0 + call $runtime.Block.Release + local.get $$t2220.0 + call $runtime.Block.Release + local.get $$t2221.0 + call $runtime.Block.Release + local.get $$t2222.0 + call $runtime.Block.Release + local.get $$t2223.0 + call $runtime.Block.Release + local.get $$t2224.0 + call $runtime.Block.Release + local.get $$t2225.0 + call $runtime.Block.Release + local.get $$t2226.0 + call $runtime.Block.Release + local.get $$t2227.0 + call $runtime.Block.Release + local.get $$t2228.0 + call $runtime.Block.Release + local.get $$t2229.0 + call $runtime.Block.Release + local.get $$t2230.0 + call $runtime.Block.Release + local.get $$t2231.0 + call $runtime.Block.Release + local.get $$t2232.0 + call $runtime.Block.Release + local.get $$t2233.0 + call $runtime.Block.Release + local.get $$t2234.0 + call $runtime.Block.Release + local.get $$t2235.0 + call $runtime.Block.Release + local.get $$t2236.0 + call $runtime.Block.Release + local.get $$t2237.0 + call $runtime.Block.Release + local.get $$t2238.0 + call $runtime.Block.Release + local.get $$t2239.0 + call $runtime.Block.Release + local.get $$t2240.0 + call $runtime.Block.Release + local.get $$t2241.0 + call $runtime.Block.Release + local.get $$t2242.0 + call $runtime.Block.Release + local.get $$t2243.0 + call $runtime.Block.Release + local.get $$t2244.0 + call $runtime.Block.Release + local.get $$t2245.0 + call $runtime.Block.Release + local.get $$t2246.0 + call $runtime.Block.Release + local.get $$t2247.0 + call $runtime.Block.Release + local.get $$t2248.0 + call $runtime.Block.Release + local.get $$t2249.0 + call $runtime.Block.Release + local.get $$t2250.0 + call $runtime.Block.Release + local.get $$t2251.0 + call $runtime.Block.Release + local.get $$t2252.0 + call $runtime.Block.Release + local.get $$t2253.0 + call $runtime.Block.Release + local.get $$t2254.0 + call $runtime.Block.Release + local.get $$t2255.0 + call $runtime.Block.Release + local.get $$t2256.0 + call $runtime.Block.Release + local.get $$t2257.0 + call $runtime.Block.Release + local.get $$t2258.0 + call $runtime.Block.Release + local.get $$t2259.0 + call $runtime.Block.Release + local.get $$t2260.0 + call $runtime.Block.Release + local.get $$t2261.0 + call $runtime.Block.Release + local.get $$t2262.0 + call $runtime.Block.Release + local.get $$t2263.0 + call $runtime.Block.Release + local.get $$t2264.0 + call $runtime.Block.Release + local.get $$t2265.0 + call $runtime.Block.Release + local.get $$t2266.0 + call $runtime.Block.Release + local.get $$t2267.0 + call $runtime.Block.Release + local.get $$t2268.0 + call $runtime.Block.Release + local.get $$t2269.0 + call $runtime.Block.Release + local.get $$t2270.0 + call $runtime.Block.Release + local.get $$t2271.0 + call $runtime.Block.Release + local.get $$t2272.0 + call $runtime.Block.Release + local.get $$t2273.0 + call $runtime.Block.Release + local.get $$t2274.0 + call $runtime.Block.Release + local.get $$t2275.0 + call $runtime.Block.Release + local.get $$t2276.0 + call $runtime.Block.Release + local.get $$t2277.0 + call $runtime.Block.Release + local.get $$t2278.0 + call $runtime.Block.Release + local.get $$t2279.0 + call $runtime.Block.Release + local.get $$t2280.0 + call $runtime.Block.Release + local.get $$t2281.0 + call $runtime.Block.Release + local.get $$t2282.0 + call $runtime.Block.Release + local.get $$t2283.0 + call $runtime.Block.Release + local.get $$t2284.0 + call $runtime.Block.Release + local.get $$t2285.0 + call $runtime.Block.Release + local.get $$t2286.0 + call $runtime.Block.Release + local.get $$t2287.0 + call $runtime.Block.Release + local.get $$t2288.0 + call $runtime.Block.Release + local.get $$t2289.0 + call $runtime.Block.Release + local.get $$t2290.0 + call $runtime.Block.Release + local.get $$t2291.0 + call $runtime.Block.Release + local.get $$t2292.0 + call $runtime.Block.Release + local.get $$t2293.0 + call $runtime.Block.Release + local.get $$t2294.0 + call $runtime.Block.Release + local.get $$t2295.0 + call $runtime.Block.Release + local.get $$t2296.0 + call $runtime.Block.Release + local.get $$t2297.0 + call $runtime.Block.Release + local.get $$t2298.0 + call $runtime.Block.Release + local.get $$t2299.0 + call $runtime.Block.Release + local.get $$t2300.0 + call $runtime.Block.Release + local.get $$t2301.0 + call $runtime.Block.Release + local.get $$t2302.0 + call $runtime.Block.Release + local.get $$t2303.0 + call $runtime.Block.Release + local.get $$t2304.0 + call $runtime.Block.Release + local.get $$t2305.0 + call $runtime.Block.Release + local.get $$t2306.0 + call $runtime.Block.Release + local.get $$t2307.0 + call $runtime.Block.Release + local.get $$t2308.0 + call $runtime.Block.Release + local.get $$t2309.0 + call $runtime.Block.Release + local.get $$t2310.0 + call $runtime.Block.Release + local.get $$t2311.0 + call $runtime.Block.Release + local.get $$t2312.0 + call $runtime.Block.Release + local.get $$t2313.0 + call $runtime.Block.Release + local.get $$t2314.0 + call $runtime.Block.Release + local.get $$t2315.0 + call $runtime.Block.Release + local.get $$t2316.0 + call $runtime.Block.Release + local.get $$t2317.0 + call $runtime.Block.Release + local.get $$t2323.0 + call $runtime.Block.Release + local.get $$t2324.0 + call $runtime.Block.Release + local.get $$t2325.0 + call $runtime.Block.Release + local.get $$t2326.0 + call $runtime.Block.Release + local.get $$t2327.0 + call $runtime.Block.Release + local.get $$t2328.0 + call $runtime.Block.Release + local.get $$t2329.0 + call $runtime.Block.Release + local.get $$t2330.0 + call $runtime.Block.Release + local.get $$t2331.0 + call $runtime.Block.Release + local.get $$t2332.0 + call $runtime.Block.Release + local.get $$t2333.0 + call $runtime.Block.Release + local.get $$t2334.0 + call $runtime.Block.Release + local.get $$t2335.0 + call $runtime.Block.Release + local.get $$t2336.0 + call $runtime.Block.Release + local.get $$t2337.0 + call $runtime.Block.Release + local.get $$t2338.0 + call $runtime.Block.Release + local.get $$t2339.0 + call $runtime.Block.Release + local.get $$t2340.0 + call $runtime.Block.Release + local.get $$t2341.0 + call $runtime.Block.Release + local.get $$t2342.0 + call $runtime.Block.Release + local.get $$t2343.0 + call $runtime.Block.Release + local.get $$t2344.0 + call $runtime.Block.Release + local.get $$t2345.0 + call $runtime.Block.Release + local.get $$t2346.0 + call $runtime.Block.Release + local.get $$t2347.0 + call $runtime.Block.Release + local.get $$t2348.0 + call $runtime.Block.Release + local.get $$t2349.0 + call $runtime.Block.Release + local.get $$t2350.0 + call $runtime.Block.Release + local.get $$t2351.0 + call $runtime.Block.Release + local.get $$t2352.0 + call $runtime.Block.Release + local.get $$t2353.0 + call $runtime.Block.Release + local.get $$t2354.0 + call $runtime.Block.Release + local.get $$t2355.0 + call $runtime.Block.Release + local.get $$t2356.0 + call $runtime.Block.Release + local.get $$t2357.0 + call $runtime.Block.Release + local.get $$t2358.0 + call $runtime.Block.Release + local.get $$t2359.0 + call $runtime.Block.Release + local.get $$t2360.0 + call $runtime.Block.Release + local.get $$t2361.0 + call $runtime.Block.Release + local.get $$t2362.0 + call $runtime.Block.Release + local.get $$t2363.0 + call $runtime.Block.Release + local.get $$t2364.0 + call $runtime.Block.Release + local.get $$t2365.0 + call $runtime.Block.Release + local.get $$t2366.0 + call $runtime.Block.Release + local.get $$t2367.0 + call $runtime.Block.Release + local.get $$t2368.0 + call $runtime.Block.Release + local.get $$t2369.0 + call $runtime.Block.Release + local.get $$t2370.0 + call $runtime.Block.Release + local.get $$t2371.0 + call $runtime.Block.Release + local.get $$t2372.0 + call $runtime.Block.Release + local.get $$t2373.0 + call $runtime.Block.Release + local.get $$t2374.0 + call $runtime.Block.Release + local.get $$t2375.0 + call $runtime.Block.Release + local.get $$t2376.0 + call $runtime.Block.Release + local.get $$t2377.0 + call $runtime.Block.Release + local.get $$t2378.0 + call $runtime.Block.Release + local.get $$t2379.0 + call $runtime.Block.Release + local.get $$t2380.0 + call $runtime.Block.Release + local.get $$t2381.0 + call $runtime.Block.Release + local.get $$t2382.0 + call $runtime.Block.Release + local.get $$t2383.0 + call $runtime.Block.Release + local.get $$t2384.0 + call $runtime.Block.Release + local.get $$t2385.0 + call $runtime.Block.Release + local.get $$t2386.0 + call $runtime.Block.Release + local.get $$t2387.0 + call $runtime.Block.Release + local.get $$t2388.0 + call $runtime.Block.Release + local.get $$t2389.0 + call $runtime.Block.Release + local.get $$t2390.0 + call $runtime.Block.Release + local.get $$t2391.0 + call $runtime.Block.Release + local.get $$t2392.0 + call $runtime.Block.Release + local.get $$t2393.0 + call $runtime.Block.Release + local.get $$t2394.0 + call $runtime.Block.Release + local.get $$t2395.0 + call $runtime.Block.Release + local.get $$t2396.0 + call $runtime.Block.Release + local.get $$t2397.0 + call $runtime.Block.Release + local.get $$t2398.0 + call $runtime.Block.Release + local.get $$t2399.0 + call $runtime.Block.Release + local.get $$t2400.0 + call $runtime.Block.Release + local.get $$t2401.0 + call $runtime.Block.Release + local.get $$t2402.0 + call $runtime.Block.Release + local.get $$t2403.0 + call $runtime.Block.Release + local.get $$t2404.0 + call $runtime.Block.Release + local.get $$t2405.0 + call $runtime.Block.Release + local.get $$t2406.0 + call $runtime.Block.Release + local.get $$t2407.0 + call $runtime.Block.Release + local.get $$t2408.0 + call $runtime.Block.Release + local.get $$t2409.0 + call $runtime.Block.Release + local.get $$t2410.0 + call $runtime.Block.Release + local.get $$t2411.0 + call $runtime.Block.Release + local.get $$t2412.0 + call $runtime.Block.Release + local.get $$t2413.0 + call $runtime.Block.Release + local.get $$t2414.0 + call $runtime.Block.Release + local.get $$t2415.0 + call $runtime.Block.Release + local.get $$t2416.0 + call $runtime.Block.Release + local.get $$t2417.0 + call $runtime.Block.Release + local.get $$t2418.0 + call $runtime.Block.Release + local.get $$t2419.0 + call $runtime.Block.Release + local.get $$t2420.0 + call $runtime.Block.Release + local.get $$t2421.0 + call $runtime.Block.Release + local.get $$t2422.0 + call $runtime.Block.Release + local.get $$t2423.0 + call $runtime.Block.Release + local.get $$t2424.0 + call $runtime.Block.Release + local.get $$t2425.0 + call $runtime.Block.Release + local.get $$t2426.0 + call $runtime.Block.Release + local.get $$t2427.0 + call $runtime.Block.Release + local.get $$t2428.0 + call $runtime.Block.Release + local.get $$t2429.0 + call $runtime.Block.Release + local.get $$t2430.0 + call $runtime.Block.Release + local.get $$t2431.0 + call $runtime.Block.Release + local.get $$t2432.0 + call $runtime.Block.Release + local.get $$t2433.0 + call $runtime.Block.Release + local.get $$t2434.0 + call $runtime.Block.Release + local.get $$t2435.0 + call $runtime.Block.Release + local.get $$t2436.0 + call $runtime.Block.Release + local.get $$t2437.0 + call $runtime.Block.Release + local.get $$t2438.0 + call $runtime.Block.Release + local.get $$t2439.0 + call $runtime.Block.Release + local.get $$t2440.0 + call $runtime.Block.Release + local.get $$t2441.0 + call $runtime.Block.Release + local.get $$t2442.0 + call $runtime.Block.Release + local.get $$t2443.0 + call $runtime.Block.Release + local.get $$t2444.0 + call $runtime.Block.Release + local.get $$t2445.0 + call $runtime.Block.Release + local.get $$t2446.0 + call $runtime.Block.Release + local.get $$t2447.0 + call $runtime.Block.Release + local.get $$t2448.0 + call $runtime.Block.Release + local.get $$t2449.0 + call $runtime.Block.Release + local.get $$t2450.0 + call $runtime.Block.Release + local.get $$t2451.0 + call $runtime.Block.Release + local.get $$t2452.0 + call $runtime.Block.Release + local.get $$t2453.0 + call $runtime.Block.Release + local.get $$t2454.0 + call $runtime.Block.Release + local.get $$t2455.0 + call $runtime.Block.Release + local.get $$t2456.0 + call $runtime.Block.Release + local.get $$t2457.0 + call $runtime.Block.Release + local.get $$t2458.0 + call $runtime.Block.Release + local.get $$t2459.0 + call $runtime.Block.Release + local.get $$t2460.0 + call $runtime.Block.Release + local.get $$t2461.0 + call $runtime.Block.Release + local.get $$t2462.0 + call $runtime.Block.Release + local.get $$t2463.0 + call $runtime.Block.Release + local.get $$t2464.0 + call $runtime.Block.Release + local.get $$t2465.0 + call $runtime.Block.Release + local.get $$t2466.0 + call $runtime.Block.Release + local.get $$t2467.0 + call $runtime.Block.Release + local.get $$t2468.0 + call $runtime.Block.Release + local.get $$t2469.0 + call $runtime.Block.Release + local.get $$t2470.0 + call $runtime.Block.Release + local.get $$t2471.0 + call $runtime.Block.Release + local.get $$t2472.0 + call $runtime.Block.Release + local.get $$t2473.0 + call $runtime.Block.Release + local.get $$t2474.0 + call $runtime.Block.Release + local.get $$t2475.0 + call $runtime.Block.Release + local.get $$t2476.0 + call $runtime.Block.Release + local.get $$t2477.0 + call $runtime.Block.Release + local.get $$t2478.0 + call $runtime.Block.Release + local.get $$t2479.0 + call $runtime.Block.Release + local.get $$t2480.0 + call $runtime.Block.Release + local.get $$t2481.0 + call $runtime.Block.Release + local.get $$t2482.0 + call $runtime.Block.Release + local.get $$t2483.0 + call $runtime.Block.Release + local.get $$t2484.0 + call $runtime.Block.Release + local.get $$t2485.0 + call $runtime.Block.Release + local.get $$t2486.0 + call $runtime.Block.Release + local.get $$t2487.0 + call $runtime.Block.Release + local.get $$t2488.0 + call $runtime.Block.Release + local.get $$t2489.0 + call $runtime.Block.Release + local.get $$t2490.0 + call $runtime.Block.Release + local.get $$t2491.0 + call $runtime.Block.Release + local.get $$t2492.0 + call $runtime.Block.Release + local.get $$t2493.0 + call $runtime.Block.Release + local.get $$t2494.0 + call $runtime.Block.Release + local.get $$t2495.0 + call $runtime.Block.Release + local.get $$t2496.0 + call $runtime.Block.Release + local.get $$t2497.0 + call $runtime.Block.Release + local.get $$t2498.0 + call $runtime.Block.Release + local.get $$t2499.0 + call $runtime.Block.Release + local.get $$t2500.0 + call $runtime.Block.Release + local.get $$t2501.0 + call $runtime.Block.Release + local.get $$t2502.0 + call $runtime.Block.Release + local.get $$t2503.0 + call $runtime.Block.Release + local.get $$t2504.0 + call $runtime.Block.Release + local.get $$t2505.0 + call $runtime.Block.Release + local.get $$t2506.0 + call $runtime.Block.Release + local.get $$t2507.0 + call $runtime.Block.Release + local.get $$t2508.0 + call $runtime.Block.Release + local.get $$t2509.0 + call $runtime.Block.Release + local.get $$t2510.0 + call $runtime.Block.Release + local.get $$t2511.0 + call $runtime.Block.Release + local.get $$t2512.0 + call $runtime.Block.Release + local.get $$t2513.0 + call $runtime.Block.Release + local.get $$t2514.0 + call $runtime.Block.Release + local.get $$t2515.0 + call $runtime.Block.Release + local.get $$t2516.0 + call $runtime.Block.Release + local.get $$t2517.0 + call $runtime.Block.Release + local.get $$t2518.0 + call $runtime.Block.Release + local.get $$t2519.0 + call $runtime.Block.Release + local.get $$t2520.0 + call $runtime.Block.Release + local.get $$t2521.0 + call $runtime.Block.Release + local.get $$t2522.0 + call $runtime.Block.Release + local.get $$t2523.0 + call $runtime.Block.Release + local.get $$t2524.0 + call $runtime.Block.Release + local.get $$t2525.0 + call $runtime.Block.Release + local.get $$t2526.0 + call $runtime.Block.Release + local.get $$t2527.0 + call $runtime.Block.Release + local.get $$t2528.0 + call $runtime.Block.Release + local.get $$t2529.0 + call $runtime.Block.Release + local.get $$t2530.0 + call $runtime.Block.Release + local.get $$t2531.0 + call $runtime.Block.Release + local.get $$t2532.0 + call $runtime.Block.Release + local.get $$t2533.0 + call $runtime.Block.Release + local.get $$t2534.0 + call $runtime.Block.Release + local.get $$t2535.0 + call $runtime.Block.Release + local.get $$t2536.0 + call $runtime.Block.Release + local.get $$t2537.0 + call $runtime.Block.Release + local.get $$t2538.0 + call $runtime.Block.Release + local.get $$t2539.0 + call $runtime.Block.Release + local.get $$t2540.0 + call $runtime.Block.Release + local.get $$t2541.0 + call $runtime.Block.Release + local.get $$t2542.0 + call $runtime.Block.Release + local.get $$t2543.0 + call $runtime.Block.Release + local.get $$t2544.0 + call $runtime.Block.Release + local.get $$t2545.0 + call $runtime.Block.Release + local.get $$t2546.0 + call $runtime.Block.Release + local.get $$t2547.0 + call $runtime.Block.Release + local.get $$t2548.0 + call $runtime.Block.Release + local.get $$t2549.0 + call $runtime.Block.Release + local.get $$t2550.0 + call $runtime.Block.Release + local.get $$t2551.0 + call $runtime.Block.Release + local.get $$t2552.0 + call $runtime.Block.Release + local.get $$t2553.0 + call $runtime.Block.Release + local.get $$t2554.0 + call $runtime.Block.Release + local.get $$t2555.0 + call $runtime.Block.Release + local.get $$t2556.0 + call $runtime.Block.Release + local.get $$t2557.0 + call $runtime.Block.Release + local.get $$t2558.0 + call $runtime.Block.Release + local.get $$t2559.0 + call $runtime.Block.Release + local.get $$t2560.0 + call $runtime.Block.Release + local.get $$t2561.0 + call $runtime.Block.Release + local.get $$t2562.0 + call $runtime.Block.Release + local.get $$t2563.0 + call $runtime.Block.Release + local.get $$t2564.0 + call $runtime.Block.Release + local.get $$t2565.0 + call $runtime.Block.Release + local.get $$t2566.0 + call $runtime.Block.Release + local.get $$t2567.0 + call $runtime.Block.Release + local.get $$t2568.0 + call $runtime.Block.Release + local.get $$t2569.0 + call $runtime.Block.Release + local.get $$t2570.0 + call $runtime.Block.Release + local.get $$t2571.0 + call $runtime.Block.Release + local.get $$t2572.0 + call $runtime.Block.Release + local.get $$t2573.0 + call $runtime.Block.Release + local.get $$t2574.0 + call $runtime.Block.Release + local.get $$t2575.0 + call $runtime.Block.Release + local.get $$t2576.0 + call $runtime.Block.Release + local.get $$t2577.0 + call $runtime.Block.Release + local.get $$t2578.0 + call $runtime.Block.Release + local.get $$t2579.0 + call $runtime.Block.Release + local.get $$t2580.0 + call $runtime.Block.Release + local.get $$t2581.0 + call $runtime.Block.Release + local.get $$t2582.0 + call $runtime.Block.Release + local.get $$t2583.0 + call $runtime.Block.Release + local.get $$t2584.0 + call $runtime.Block.Release + local.get $$t2585.0 + call $runtime.Block.Release + local.get $$t2586.0 + call $runtime.Block.Release + local.get $$t2587.0 + call $runtime.Block.Release + local.get $$t2588.0 + call $runtime.Block.Release + local.get $$t2589.0 + call $runtime.Block.Release + local.get $$t2590.0 + call $runtime.Block.Release + local.get $$t2591.0 + call $runtime.Block.Release + local.get $$t2592.0 + call $runtime.Block.Release + local.get $$t2593.0 + call $runtime.Block.Release + local.get $$t2594.0 + call $runtime.Block.Release + local.get $$t2595.0 + call $runtime.Block.Release + local.get $$t2596.0 + call $runtime.Block.Release + local.get $$t2597.0 + call $runtime.Block.Release + local.get $$t2598.0 + call $runtime.Block.Release + local.get $$t2599.0 + call $runtime.Block.Release + local.get $$t2600.0 + call $runtime.Block.Release + local.get $$t2601.0 + call $runtime.Block.Release + local.get $$t2602.0 + call $runtime.Block.Release + local.get $$t2603.0 + call $runtime.Block.Release + local.get $$t2604.0 + call $runtime.Block.Release + local.get $$t2605.0 + call $runtime.Block.Release + local.get $$t2606.0 + call $runtime.Block.Release + local.get $$t2607.0 + call $runtime.Block.Release + local.get $$t2608.0 + call $runtime.Block.Release + local.get $$t2609.0 + call $runtime.Block.Release + local.get $$t2610.0 + call $runtime.Block.Release + local.get $$t2611.0 + call $runtime.Block.Release + local.get $$t2612.0 + call $runtime.Block.Release + local.get $$t2613.0 + call $runtime.Block.Release + local.get $$t2614.0 + call $runtime.Block.Release + local.get $$t2615.0 + call $runtime.Block.Release + local.get $$t2616.0 + call $runtime.Block.Release + local.get $$t2617.0 + call $runtime.Block.Release + local.get $$t2618.0 + call $runtime.Block.Release + local.get $$t2619.0 + call $runtime.Block.Release + local.get $$t2620.0 + call $runtime.Block.Release + local.get $$t2621.0 + call $runtime.Block.Release + local.get $$t2622.0 + call $runtime.Block.Release + local.get $$t2623.0 + call $runtime.Block.Release + local.get $$t2624.0 + call $runtime.Block.Release + local.get $$t2625.0 + call $runtime.Block.Release + local.get $$t2626.0 + call $runtime.Block.Release + local.get $$t2627.0 + call $runtime.Block.Release + local.get $$t2628.0 + call $runtime.Block.Release + local.get $$t2629.0 + call $runtime.Block.Release + local.get $$t2630.0 + call $runtime.Block.Release + local.get $$t2631.0 + call $runtime.Block.Release + local.get $$t2632.0 + call $runtime.Block.Release + local.get $$t2633.0 + call $runtime.Block.Release + local.get $$t2634.0 + call $runtime.Block.Release + local.get $$t2635.0 + call $runtime.Block.Release + local.get $$t2636.0 + call $runtime.Block.Release + local.get $$t2637.0 + call $runtime.Block.Release + local.get $$t2638.0 + call $runtime.Block.Release + local.get $$t2639.0 + call $runtime.Block.Release + local.get $$t2640.0 + call $runtime.Block.Release + local.get $$t2641.0 + call $runtime.Block.Release + local.get $$t2642.0 + call $runtime.Block.Release + local.get $$t2643.0 + call $runtime.Block.Release + local.get $$t2644.0 + call $runtime.Block.Release + local.get $$t2645.0 + call $runtime.Block.Release + local.get $$t2646.0 + call $runtime.Block.Release + local.get $$t2647.0 + call $runtime.Block.Release + local.get $$t2648.0 + call $runtime.Block.Release + local.get $$t2649.0 + call $runtime.Block.Release + local.get $$t2650.0 + call $runtime.Block.Release + local.get $$t2651.0 + call $runtime.Block.Release + local.get $$t2652.0 + call $runtime.Block.Release + local.get $$t2653.0 + call $runtime.Block.Release + local.get $$t2654.0 + call $runtime.Block.Release + local.get $$t2655.0 + call $runtime.Block.Release + local.get $$t2656.0 + call $runtime.Block.Release + local.get $$t2657.0 + call $runtime.Block.Release + local.get $$t2658.0 + call $runtime.Block.Release + local.get $$t2659.0 + call $runtime.Block.Release + local.get $$t2660.0 + call $runtime.Block.Release + local.get $$t2661.0 + call $runtime.Block.Release + local.get $$t2662.0 + call $runtime.Block.Release + local.get $$t2663.0 + call $runtime.Block.Release + local.get $$t2664.0 + call $runtime.Block.Release + local.get $$t2665.0 + call $runtime.Block.Release + local.get $$t2666.0 + call $runtime.Block.Release + local.get $$t2667.0 + call $runtime.Block.Release + local.get $$t2668.0 + call $runtime.Block.Release + local.get $$t2669.0 + call $runtime.Block.Release + local.get $$t2670.0 + call $runtime.Block.Release + local.get $$t2671.0 + call $runtime.Block.Release + local.get $$t2672.0 + call $runtime.Block.Release + local.get $$t2673.0 + call $runtime.Block.Release + local.get $$t2674.0 + call $runtime.Block.Release + local.get $$t2675.0 + call $runtime.Block.Release + local.get $$t2676.0 + call $runtime.Block.Release + local.get $$t2677.0 + call $runtime.Block.Release + local.get $$t2678.0 + call $runtime.Block.Release + local.get $$t2679.0 + call $runtime.Block.Release + local.get $$t2680.0 + call $runtime.Block.Release + local.get $$t2681.0 + call $runtime.Block.Release + local.get $$t2682.0 + call $runtime.Block.Release + local.get $$t2683.0 + call $runtime.Block.Release + local.get $$t2684.0 + call $runtime.Block.Release + local.get $$t2685.0 + call $runtime.Block.Release + local.get $$t2686.0 + call $runtime.Block.Release + local.get $$t2687.0 + call $runtime.Block.Release + local.get $$t2688.0 + call $runtime.Block.Release + local.get $$t2689.0 + call $runtime.Block.Release + local.get $$t2690.0 + call $runtime.Block.Release + local.get $$t2691.0 + call $runtime.Block.Release + local.get $$t2692.0 + call $runtime.Block.Release + local.get $$t2693.0 + call $runtime.Block.Release + local.get $$t2694.0 + call $runtime.Block.Release + local.get $$t2695.0 + call $runtime.Block.Release + local.get $$t2696.0 + call $runtime.Block.Release + local.get $$t2697.0 + call $runtime.Block.Release + local.get $$t2698.0 + call $runtime.Block.Release + local.get $$t2699.0 + call $runtime.Block.Release + local.get $$t2700.0 + call $runtime.Block.Release + local.get $$t2701.0 + call $runtime.Block.Release + local.get $$t2702.0 + call $runtime.Block.Release + local.get $$t2703.0 + call $runtime.Block.Release + local.get $$t2704.0 + call $runtime.Block.Release + local.get $$t2705.0 + call $runtime.Block.Release + local.get $$t2706.0 + call $runtime.Block.Release + local.get $$t2707.0 + call $runtime.Block.Release + local.get $$t2708.0 + call $runtime.Block.Release + local.get $$t2709.0 + call $runtime.Block.Release + local.get $$t2710.0 + call $runtime.Block.Release + local.get $$t2711.0 + call $runtime.Block.Release + local.get $$t2712.0 + call $runtime.Block.Release + local.get $$t2713.0 + call $runtime.Block.Release + local.get $$t2714.0 + call $runtime.Block.Release + local.get $$t2715.0 + call $runtime.Block.Release + local.get $$t2716.0 + call $runtime.Block.Release + local.get $$t2717.0 + call $runtime.Block.Release + local.get $$t2718.0 + call $runtime.Block.Release + local.get $$t2719.0 + call $runtime.Block.Release + local.get $$t2720.0 + call $runtime.Block.Release + local.get $$t2721.0 + call $runtime.Block.Release + local.get $$t2722.0 + call $runtime.Block.Release + local.get $$t2723.0 + call $runtime.Block.Release + local.get $$t2724.0 + call $runtime.Block.Release + local.get $$t2725.0 + call $runtime.Block.Release + local.get $$t2726.0 + call $runtime.Block.Release + local.get $$t2727.0 + call $runtime.Block.Release + local.get $$t2728.0 + call $runtime.Block.Release + local.get $$t2729.0 + call $runtime.Block.Release + local.get $$t2730.0 + call $runtime.Block.Release + local.get $$t2731.0 + call $runtime.Block.Release + local.get $$t2732.0 + call $runtime.Block.Release + local.get $$t2733.0 + call $runtime.Block.Release + local.get $$t2734.0 + call $runtime.Block.Release + local.get $$t2735.0 + call $runtime.Block.Release + local.get $$t2736.0 + call $runtime.Block.Release + local.get $$t2737.0 + call $runtime.Block.Release + local.get $$t2738.0 + call $runtime.Block.Release + local.get $$t2739.0 + call $runtime.Block.Release + local.get $$t2740.0 + call $runtime.Block.Release + local.get $$t2741.0 + call $runtime.Block.Release + local.get $$t2742.0 + call $runtime.Block.Release + local.get $$t2743.0 + call $runtime.Block.Release + local.get $$t2744.0 + call $runtime.Block.Release + local.get $$t2745.0 + call $runtime.Block.Release + local.get $$t2746.0 + call $runtime.Block.Release + local.get $$t2747.0 + call $runtime.Block.Release + local.get $$t2748.0 + call $runtime.Block.Release + local.get $$t2749.0 + call $runtime.Block.Release + local.get $$t2750.0 + call $runtime.Block.Release + local.get $$t2751.0 + call $runtime.Block.Release + local.get $$t2752.0 + call $runtime.Block.Release + local.get $$t2753.0 + call $runtime.Block.Release + local.get $$t2754.0 + call $runtime.Block.Release + local.get $$t2755.0 + call $runtime.Block.Release + local.get $$t2756.0 + call $runtime.Block.Release + local.get $$t2757.0 + call $runtime.Block.Release + local.get $$t2758.0 + call $runtime.Block.Release + local.get $$t2759.0 + call $runtime.Block.Release + local.get $$t2760.0 + call $runtime.Block.Release + local.get $$t2761.0 + call $runtime.Block.Release + local.get $$t2762.0 + call $runtime.Block.Release + local.get $$t2763.0 + call $runtime.Block.Release + local.get $$t2764.0 + call $runtime.Block.Release + local.get $$t2765.0 + call $runtime.Block.Release + local.get $$t2766.0 + call $runtime.Block.Release + local.get $$t2767.0 + call $runtime.Block.Release + local.get $$t2768.0 + call $runtime.Block.Release + local.get $$t2769.0 + call $runtime.Block.Release + local.get $$t2770.0 + call $runtime.Block.Release + local.get $$t2771.0 + call $runtime.Block.Release + local.get $$t2772.0 + call $runtime.Block.Release + local.get $$t2773.0 + call $runtime.Block.Release + local.get $$t2774.0 + call $runtime.Block.Release + local.get $$t2775.0 + call $runtime.Block.Release + local.get $$t2776.0 + call $runtime.Block.Release + local.get $$t2777.0 + call $runtime.Block.Release + local.get $$t2778.0 + call $runtime.Block.Release + local.get $$t2779.0 + call $runtime.Block.Release + local.get $$t2780.0 + call $runtime.Block.Release + local.get $$t2781.0 + call $runtime.Block.Release + local.get $$t2782.0 + call $runtime.Block.Release + local.get $$t2783.0 + call $runtime.Block.Release + local.get $$t2784.0 + call $runtime.Block.Release + local.get $$t2785.0 + call $runtime.Block.Release + local.get $$t2786.0 + call $runtime.Block.Release + local.get $$t2787.0 + call $runtime.Block.Release + local.get $$t2788.0 + call $runtime.Block.Release + local.get $$t2789.0 + call $runtime.Block.Release + local.get $$t2790.0 + call $runtime.Block.Release + local.get $$t2791.0 + call $runtime.Block.Release + local.get $$t2792.0 + call $runtime.Block.Release + local.get $$t2793.0 + call $runtime.Block.Release + local.get $$t2794.0 + call $runtime.Block.Release + local.get $$t2795.0 + call $runtime.Block.Release + local.get $$t2796.0 + call $runtime.Block.Release + local.get $$t2797.0 + call $runtime.Block.Release + local.get $$t2798.0 + call $runtime.Block.Release + local.get $$t2799.0 + call $runtime.Block.Release + local.get $$t2800.0 + call $runtime.Block.Release + local.get $$t2801.0 + call $runtime.Block.Release + local.get $$t2802.0 + call $runtime.Block.Release + local.get $$t2803.0 + call $runtime.Block.Release + local.get $$t2804.0 + call $runtime.Block.Release + local.get $$t2805.0 + call $runtime.Block.Release + local.get $$t2806.0 + call $runtime.Block.Release + local.get $$t2807.0 + call $runtime.Block.Release + local.get $$t2808.0 + call $runtime.Block.Release + local.get $$t2809.0 + call $runtime.Block.Release + local.get $$t2810.0 + call $runtime.Block.Release + local.get $$t2811.0 + call $runtime.Block.Release + local.get $$t2812.0 + call $runtime.Block.Release + local.get $$t2813.0 + call $runtime.Block.Release + local.get $$t2814.0 + call $runtime.Block.Release + local.get $$t2815.0 + call $runtime.Block.Release + local.get $$t2816.0 + call $runtime.Block.Release + local.get $$t2817.0 + call $runtime.Block.Release + local.get $$t2818.0 + call $runtime.Block.Release + local.get $$t2819.0 + call $runtime.Block.Release + local.get $$t2820.0 + call $runtime.Block.Release + local.get $$t2821.0 + call $runtime.Block.Release + local.get $$t2822.0 + call $runtime.Block.Release + local.get $$t2823.0 + call $runtime.Block.Release + local.get $$t2824.0 + call $runtime.Block.Release + local.get $$t2825.0 + call $runtime.Block.Release + local.get $$t2826.0 + call $runtime.Block.Release + local.get $$t2827.0 + call $runtime.Block.Release + local.get $$t2828.0 + call $runtime.Block.Release + local.get $$t2829.0 + call $runtime.Block.Release + local.get $$t2830.0 + call $runtime.Block.Release + local.get $$t2831.0 + call $runtime.Block.Release + local.get $$t2832.0 + call $runtime.Block.Release + local.get $$t2833.0 + call $runtime.Block.Release + local.get $$t2834.0 + call $runtime.Block.Release + local.get $$t2835.0 + call $runtime.Block.Release + local.get $$t2836.0 + call $runtime.Block.Release + local.get $$t2837.0 + call $runtime.Block.Release + local.get $$t2838.0 + call $runtime.Block.Release + local.get $$t2839.0 + call $runtime.Block.Release + local.get $$t2840.0 + call $runtime.Block.Release + local.get $$t2841.0 + call $runtime.Block.Release + local.get $$t2842.0 + call $runtime.Block.Release + local.get $$t2843.0 + call $runtime.Block.Release + local.get $$t2844.0 + call $runtime.Block.Release + local.get $$t2845.0 + call $runtime.Block.Release + local.get $$t2846.0 + call $runtime.Block.Release + local.get $$t2847.0 + call $runtime.Block.Release + local.get $$t2848.0 + call $runtime.Block.Release + local.get $$t2849.0 + call $runtime.Block.Release + local.get $$t2850.0 + call $runtime.Block.Release + local.get $$t2851.0 + call $runtime.Block.Release + local.get $$t2852.0 + call $runtime.Block.Release + local.get $$t2853.0 + call $runtime.Block.Release + local.get $$t2854.0 + call $runtime.Block.Release + local.get $$t2855.0 + call $runtime.Block.Release + local.get $$t2856.0 + call $runtime.Block.Release + local.get $$t2857.0 + call $runtime.Block.Release + local.get $$t2858.0 + call $runtime.Block.Release + local.get $$t2859.0 + call $runtime.Block.Release + local.get $$t2860.0 + call $runtime.Block.Release + local.get $$t2861.0 + call $runtime.Block.Release + local.get $$t2862.0 + call $runtime.Block.Release + local.get $$t2863.0 + call $runtime.Block.Release + local.get $$t2864.0 + call $runtime.Block.Release + local.get $$t2865.0 + call $runtime.Block.Release + local.get $$t2866.0 + call $runtime.Block.Release + local.get $$t2867.0 + call $runtime.Block.Release + local.get $$t2868.0 + call $runtime.Block.Release + local.get $$t2869.0 + call $runtime.Block.Release + local.get $$t2870.0 + call $runtime.Block.Release + local.get $$t2871.0 + call $runtime.Block.Release + local.get $$t2872.0 + call $runtime.Block.Release + local.get $$t2873.0 + call $runtime.Block.Release + local.get $$t2874.0 + call $runtime.Block.Release + local.get $$t2875.0 + call $runtime.Block.Release + local.get $$t2876.0 + call $runtime.Block.Release + local.get $$t2877.0 + call $runtime.Block.Release + local.get $$t2878.0 + call $runtime.Block.Release + local.get $$t2879.0 + call $runtime.Block.Release + local.get $$t2880.0 + call $runtime.Block.Release + local.get $$t2881.0 + call $runtime.Block.Release + local.get $$t2882.0 + call $runtime.Block.Release + local.get $$t2883.0 + call $runtime.Block.Release + local.get $$t2884.0 + call $runtime.Block.Release + local.get $$t2885.0 + call $runtime.Block.Release + local.get $$t2886.0 + call $runtime.Block.Release + local.get $$t2887.0 + call $runtime.Block.Release + ) + (func $w4app.Board.Draw (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t0.2 i32) + (local $$t0.3 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t23.2 i32) + (local $$t23.3 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 0 + end + i32.const 0 + local.set $$current_block + local.get $this.1 + i32.load + call $runtime.Block.Retain + local.get $this.1 + i32.load offset=4 + local.get $this.1 + i32.load offset=8 + local.get $this.1 + i32.load offset=12 + local.set $$t0.3 + local.set $$t0.2 + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.2 + local.set $$t1 + br $$Block_0 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + local.get $$t2 + else + local.get $$t2 + end + end + local.set $$t3 + i32.const 1 + local.set $$current_block + local.get $$t3 + i32.const 1 + i32.add + local.set $$t2 + local.get $$t2 + local.get $$t1 + i32.lt_s + local.set $$t4 + local.get $$t4 + if + br $$Block_1 + else + br $$Block_2 + end + end + i32.const 2 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + local.get $$t2 + i32.mul + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $$t5.1 + i32.load + local.set $$t6 + local.get $$t6 + i32.const 0 + i32.gt_s + local.set $$t7 + local.get $$t7 + if + br $$Block_3 + else + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 3 + local.set $$current_block + br $$BlockFnBody + end + i32.const 4 + local.set $$current_block + local.get $$t6 + i32.const 1 + i32.sub + local.set $$t8 + local.get $$t2 + i32.const 14 + i32.rem_s + local.set $$t9 + local.get $$t9 + i32.const 8 + i32.mul + local.set $$t10 + local.get $$t10 + i32.const 24 + i32.add + local.set $$t11 + local.get $$t2 + i32.const 14 + i32.div_s + local.set $$t12 + local.get $$t12 + i32.const 8 + i32.mul + local.set $$t13 + local.get $$t13 + i32.const 24 + i32.add + local.set $$t14 + local.get $$t8 + i32.const 12 + i32.rem_s + local.set $$t15 + local.get $$t15 + local.set $$t16 + local.get $$t16 + i32.const 8 + i32.mul + local.set $$t17 + local.get $$t8 + i32.const 12 + i32.div_s + local.set $$t18 + local.get $$t18 + local.set $$t19 + local.get $$t19 + i32.const 8 + i32.mul + local.set $$t20 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.0 + call $runtime.Block.Retain + local.get $$t21.1 + i32.const 0 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.1 + i32.load + call $runtime.Block.Retain + local.get $$t22.1 + i32.load offset=4 + local.get $$t22.1 + i32.load offset=8 + local.get $$t22.1 + i32.load offset=12 + local.set $$t23.3 + local.set $$t23.2 + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t11 + local.set $$t24 + local.get $$t14 + local.set $$t25 + local.get $$t17 + local.set $$t26 + local.get $$t20 + local.set $$t27 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.0 + call $runtime.Block.Retain + local.get $$t28.1 + i32.const 16 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.1 + i32.load + local.set $$t30 + local.get $$t30 + local.set $$t31 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.0 + call $runtime.Block.Retain + local.get $$t32.1 + i32.const 24 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + local.set $$t35 + local.get $$t23.0 + local.get $$t23.1 + local.get $$t23.2 + local.get $$t23.3 + local.get $$t24 + local.get $$t25 + i32.const 8 + i32.const 8 + local.get $$t26 + local.get $$t27 + local.get $$t31 + local.get $$t35 + call $syscall$wasm4.BlitSubI32 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + ) + (func $$w4app.Point.$slice.append (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $x.3 i32) (param $y.0 i32) (param $y.1 i32) (param $y.2 i32) (param $y.3 i32) (result i32 i32 i32 i32) + (local $item.0 i32) + (local $item.1 i32) + (local $x_len i32) + (local $y_len i32) + (local $new_len i32) + (local $src i32) + (local $dest i32) + (local $new_cap i32) + local.get $x.2 + local.set $x_len + local.get $y.2 + local.set $y_len + local.get $x_len + local.get $y_len + i32.add + local.set $new_len + local.get $new_len + local.get $x.3 + i32.le_u + if(result i32 i32 i32 i32) + local.get $x.0 + call $runtime.Block.Retain + local.get $x.1 + local.get $new_len + local.get $x.3 + local.get $y.1 + local.set $src + local.get $x.1 + i32.const 8 + local.get $x_len + i32.mul + i32.add + local.set $dest + block $block1 + loop $loop1 + local.get $y_len + i32.eqz + if + br $block1 + end + local.get $src + i32.load + local.get $src + i32.load offset=4 + local.set $item.1 + local.set $item.0 + local.get $dest + local.get $item.0 + i32.store + local.get $dest + local.get $item.1 + i32.store offset=4 + local.get $src + i32.const 8 + i32.add + local.set $src + local.get $dest + i32.const 8 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop1 + end + end + else + local.get $new_len + i32.const 2 + i32.mul + local.set $new_cap + local.get $new_cap + i32.const 8 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $new_cap + i32.const 0 + i32.const 8 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + call $runtime.DupI32 + local.set $dest + local.get $new_len + local.get $new_cap + local.get $x.1 + local.set $src + block $block2 + loop $loop2 + local.get $x_len + i32.eqz + if + br $block2 + end + local.get $src + i32.load + local.get $src + i32.load offset=4 + local.set $item.1 + local.set $item.0 + local.get $dest + local.get $item.0 + i32.store + local.get $dest + local.get $item.1 + i32.store offset=4 + local.get $src + i32.const 8 + i32.add + local.set $src + local.get $dest + i32.const 8 + i32.add + local.set $dest + local.get $x_len + i32.const 1 + i32.sub + local.set $x_len + br $loop2 + end + end + local.get $y.1 + local.set $src + block $block3 + loop $loop3 + local.get $y_len + i32.eqz + if + br $block3 + end + local.get $src + i32.load + local.get $src + i32.load offset=4 + local.set $item.1 + local.set $item.0 + local.get $dest + local.get $item.0 + i32.store + local.get $dest + local.get $item.1 + i32.store offset=4 + local.get $src + i32.const 8 + i32.add + local.set $src + local.get $dest + i32.const 8 + i32.add + local.set $dest + local.get $y_len + i32.const 1 + i32.sub + local.set $y_len + br $loop3 + end + end + end + ) + (func $w4app.Game.CPU (param $this.0 i32) (param $this.1 i32) (result i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1.0.0 i32) + (local $$t20.1.0.1 i32) + (local $$t20.1.1.0 i32) + (local $$t20.1.1.1 i32) + (local $$t20.1.2.0 i32) + (local $$t20.1.2.1 i32) + (local $$t21 i32) + (local $$t22.0.0 i32) + (local $$t22.0.1 i32) + (local $$t22.1.0 i32) + (local $$t22.1.1 i32) + (local $$t22.2.0 i32) + (local $$t22.2.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t33.2 i32) + (local $$t33.3 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43 i32) + (local $$t44 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1.0.0 i32) + (local $$t48.1.0.1 i32) + (local $$t48.1.1.0 i32) + (local $$t48.1.1.1 i32) + (local $$t48.1.2.0 i32) + (local $$t48.1.2.1 i32) + (local $$t49 i32) + (local $$t50.0.0 i32) + (local $$t50.0.1 i32) + (local $$t50.1.0 i32) + (local $$t50.1.1 i32) + (local $$t50.2.0 i32) + (local $$t50.2.1 i32) + (local $$t51 i32) + (local $$t52.0 i32) + (local $$t52.1 i32) + (local $$t53.0 i32) + (local $$t53.1 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57.0 i32) + (local $$t57.1 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t58.2 i32) + (local $$t58.3 i32) + (local $$t59 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t61 i64) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64.0 i32) + (local $$t64.1 i32) + (local $$t65.0 i32) + (local $$t65.1 i32) + (local $$t66 i32) + (local $$t67.0 i32) + (local $$t67.1 i32) + (local $$t68.0 i32) + (local $$t68.1 i32) + (local $$t69 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t70.2 i32) + (local $$t70.3 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73 i32) + (local $$t74.0 i32) + (local $$t74.1 i32) + (local $$t75.0 i32) + (local $$t75.1 i32) + (local $$t76 i32) + (local $$t77.0 i32) + (local $$t77.1 i32) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80.0 i32) + (local $$t80.1 i32) + (local $$t80.2 i32) + (local $$t80.3 i32) + (local $$t81 i32) + (local $$t82 i32) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t84.0 i32) + (local $$t84.1 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86.0 i32) + (local $$t86.1 i32) + (local $$t87.0 i32) + (local $$t87.1 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t89.0 i32) + (local $$t89.1 i32) + (local $$t89.2 i32) + (local $$t89.3 i32) + (local $$t90.0 i32) + (local $$t90.1 i32) + (local $$t90.2 i32) + (local $$t90.3 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 36 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i32.load + local.set $$t1 + local.get $$t1 + i32.const 2 + i32.rem_s + local.set $$t2 + local.get $$t2 + i32.const 1 + i32.add + local.set $$t3 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + br $$Block_5 + end + i32.const 2 + local.set $$current_block + br $$Block_12 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t4 + end + local.set $$t5 + i32.const 3 + local.set $$current_block + local.get $$t5 + i32.const 3 + i32.lt_s + local.set $$t6 + local.get $$t6 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.0 + call $runtime.Block.Retain + local.get $$t7.1 + i32.const 12 + local.get $$t5 + i32.mul + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 4 + local.get $$t9 + i32.mul + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + i32.const 0 + i32.eq + local.set $$t12 + local.get $$t12 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 5 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t4 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t13 + end + local.set $$t9 + i32.const 6 + local.set $$current_block + local.get $$t9 + i32.const 3 + i32.lt_s + local.set $$t14 + local.get $$t14 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 12 + local.get $$t5 + i32.mul + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.0 + call $runtime.Block.Retain + local.get $$t16.1 + i32.const 4 + local.get $$t9 + i32.mul + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 36 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t18.1 + i32.load + local.set $$t19 + local.get $$t17.1 + local.get $$t19 + i32.store + local.get $this.0 + local.get $this.1 + call $w4app.Game.CheckStatus + local.set $$t20.1.2.1 + local.set $$t20.1.2.0 + local.set $$t20.1.1.1 + local.set $$t20.1.1.0 + local.set $$t20.1.0.1 + local.set $$t20.1.0.0 + local.set $$t20.0 + local.get $$t20.0 + local.set $$t21 + local.get $$t20.1.0.0 + local.get $$t20.1.0.1 + local.get $$t20.1.1.0 + local.get $$t20.1.1.1 + local.get $$t20.1.2.0 + local.get $$t20.1.2.1 + local.set $$t22.2.1 + local.set $$t22.2.0 + local.set $$t22.1.1 + local.set $$t22.1.0 + local.set $$t22.0.1 + local.set $$t22.0.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 36 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.1 + i32.load + local.set $$t24 + local.get $$t21 + local.get $$t24 + i32.eq + local.set $$t25 + local.get $$t25 + if + br $$Block_8 + else + br $$Block_9 + end + end + i32.const 8 + local.set $$current_block + local.get $$t9 + i32.const 1 + i32.add + local.set $$t13 + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + i32.const 9 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + i32.const 12 + local.get $$t5 + i32.mul + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + i32.const 4 + local.get $$t9 + i32.mul + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.const 0 + i32.store + local.get $$t5 + local.set $$ret_0 + local.get $$t9 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 10 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 12 + local.get $$t5 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + i32.const 4 + local.get $$t9 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t31.1 + i32.const 0 + i32.store + i32.const 8 + local.set $$block_selector + br $$BlockDisp + end + i32.const 11 + local.set $$current_block + br $$Block_15 + end + i32.const 12 + local.set $$current_block + i32.const 16 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 0 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.0 + call $runtime.Block.Retain + local.get $$t32.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + i32.const 0 + i32.const 0 + i32.sub + i32.const 0 + i32.const 0 + i32.sub + local.set $$t33.3 + local.set $$t33.2 + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + br $$Block_22 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t34 + end + local.set $$t35 + i32.const 13 + local.set $$current_block + local.get $$t35 + i32.const 3 + i32.lt_s + local.set $$t36 + local.get $$t36 + if + i32.const 11 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 14 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$t37.0 + call $runtime.Block.Retain + local.get $$t37.1 + i32.const 12 + local.get $$t35 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 4 + local.get $$t39 + i32.mul + i32.add + local.set $$t40.1 + local.get $$t40.0 + call $runtime.Block.Release + local.set $$t40.0 + local.get $$t40.1 + i32.load + local.set $$t41 + local.get $$t41 + i32.const 0 + i32.eq + local.set $$t42 + local.get $$t42 + if + br $$Block_16 + else + br $$Block_17 + end + end + i32.const 15 + local.set $$current_block + local.get $$t35 + i32.const 1 + i32.add + local.set $$t34 + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 11 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t43 + end + local.set $$t39 + i32.const 16 + local.set $$current_block + local.get $$t39 + i32.const 3 + i32.lt_s + local.set $$t44 + local.get $$t44 + if + i32.const 14 + local.set $$block_selector + br $$BlockDisp + else + i32.const 15 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 17 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t45.0 + call $runtime.Block.Retain + local.get $$t45.1 + i32.const 12 + local.get $$t35 + i32.mul + i32.add + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t46.0 + call $runtime.Block.Retain + local.get $$t46.1 + i32.const 4 + local.get $$t39 + i32.mul + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $$t47.1 + local.get $$t3 + i32.store + local.get $this.0 + local.get $this.1 + call $w4app.Game.CheckStatus + local.set $$t48.1.2.1 + local.set $$t48.1.2.0 + local.set $$t48.1.1.1 + local.set $$t48.1.1.0 + local.set $$t48.1.0.1 + local.set $$t48.1.0.0 + local.set $$t48.0 + local.get $$t48.0 + local.set $$t49 + local.get $$t48.1.0.0 + local.get $$t48.1.0.1 + local.get $$t48.1.1.0 + local.get $$t48.1.1.1 + local.get $$t48.1.2.0 + local.get $$t48.1.2.1 + local.set $$t50.2.1 + local.set $$t50.2.0 + local.set $$t50.1.1 + local.set $$t50.1.0 + local.set $$t50.0.1 + local.set $$t50.0.0 + local.get $$t49 + local.get $$t3 + i32.eq + local.set $$t51 + local.get $$t51 + if + br $$Block_18 + else + br $$Block_19 + end + end + i32.const 18 + local.set $$current_block + local.get $$t39 + i32.const 1 + i32.add + local.set $$t43 + i32.const 16 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t52.1 + local.get $$t52.0 + call $runtime.Block.Release + local.set $$t52.0 + local.get $$t52.0 + call $runtime.Block.Retain + local.get $$t52.1 + i32.const 12 + local.get $$t35 + i32.mul + i32.add + local.set $$t53.1 + local.get $$t53.0 + call $runtime.Block.Release + local.set $$t53.0 + local.get $$t53.0 + call $runtime.Block.Retain + local.get $$t53.1 + i32.const 4 + local.get $$t39 + i32.mul + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.1 + i32.const 0 + i32.store + local.get $$t35 + local.set $$ret_0 + local.get $$t39 + local.set $$ret_1 + br $$BlockFnBody + end + i32.const 20 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.0 + call $runtime.Block.Retain + local.get $$t55.1 + i32.const 12 + local.get $$t35 + i32.mul + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $$t56.0 + call $runtime.Block.Retain + local.get $$t56.1 + i32.const 4 + local.get $$t39 + i32.mul + i32.add + local.set $$t57.1 + local.get $$t57.0 + call $runtime.Block.Release + local.set $$t57.0 + local.get $$t57.1 + i32.const 0 + i32.store + i32.const 18 + local.set $$block_selector + br $$BlockDisp + end + i32.const 21 + local.set $$current_block + br $$Block_25 + end + i32.const 22 + local.set $$current_block + local.get $$t58.2 + local.set $$t59 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 72 + i32.add + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + local.get $$t60.1 + i64.load + local.set $$t61 + local.get $$t61 + i32.wrap_i64 + local.set $$t62 + local.get $$t62 + local.get $$t59 + i32.rem_s + local.set $$t63 + local.get $$t58.0 + call $runtime.Block.Retain + local.get $$t58.1 + i32.const 8 + local.get $$t63 + i32.mul + i32.add + local.set $$t64.1 + local.get $$t64.0 + call $runtime.Block.Release + local.set $$t64.0 + local.get $$t64.0 + call $runtime.Block.Retain + local.get $$t64.1 + i32.const 0 + i32.add + local.set $$t65.1 + local.get $$t65.0 + call $runtime.Block.Release + local.set $$t65.0 + local.get $$t65.1 + i32.load + local.set $$t66 + local.get $$t58.0 + call $runtime.Block.Retain + local.get $$t58.1 + i32.const 8 + local.get $$t63 + i32.mul + i32.add + local.set $$t67.1 + local.get $$t67.0 + call $runtime.Block.Release + local.set $$t67.0 + local.get $$t67.0 + call $runtime.Block.Retain + local.get $$t67.1 + i32.const 4 + i32.add + local.set $$t68.1 + local.get $$t68.0 + call $runtime.Block.Release + local.set $$t68.0 + local.get $$t68.1 + i32.load + local.set $$t69 + local.get $$t66 + local.set $$ret_0 + local.get $$t69 + local.set $$ret_1 + br $$BlockFnBody + end + local.get $$current_block + i32.const 12 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t33.0 + call $runtime.Block.Retain + local.get $$t33.1 + local.get $$t33.2 + local.get $$t33.3 + else + local.get $$t70.0 + call $runtime.Block.Retain + local.get $$t70.1 + local.get $$t70.2 + local.get $$t70.3 + end + local.set $$t58.3 + local.set $$t58.2 + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + local.get $$current_block + i32.const 12 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t71 + end + local.set $$t72 + i32.const 23 + local.set $$current_block + local.get $$t72 + i32.const 3 + i32.lt_s + local.set $$t73 + local.get $$t73 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + i32.const 22 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 24 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t74.1 + local.get $$t74.0 + call $runtime.Block.Release + local.set $$t74.0 + local.get $$t74.0 + call $runtime.Block.Retain + local.get $$t74.1 + i32.const 12 + local.get $$t72 + i32.mul + i32.add + local.set $$t75.1 + local.get $$t75.0 + call $runtime.Block.Release + local.set $$t75.0 + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 4 + local.get $$t76 + i32.mul + i32.add + local.set $$t77.1 + local.get $$t77.0 + call $runtime.Block.Release + local.set $$t77.0 + local.get $$t77.1 + i32.load + local.set $$t78 + local.get $$t78 + i32.const 0 + i32.eq + local.set $$t79 + local.get $$t79 + if + br $$Block_26 + else + br $$Block_27 + end + end + i32.const 25 + local.set $$current_block + local.get $$t72 + i32.const 1 + i32.add + local.set $$t71 + i32.const 23 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 21 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t58.0 + call $runtime.Block.Retain + local.get $$t58.1 + local.get $$t58.2 + local.get $$t58.3 + else + local.get $$t80.0 + call $runtime.Block.Retain + local.get $$t80.1 + local.get $$t80.2 + local.get $$t80.3 + end + local.set $$t70.3 + local.set $$t70.2 + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + local.get $$current_block + i32.const 21 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t81 + end + local.set $$t76 + i32.const 26 + local.set $$current_block + local.get $$t76 + i32.const 3 + i32.lt_s + local.set $$t82 + local.get $$t82 + if + i32.const 24 + local.set $$block_selector + br $$BlockDisp + else + i32.const 25 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 27 + local.set $$current_block + i32.const 24 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 8 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t83.0 + call $runtime.Block.Retain + local.get $$t83.1 + i32.const 0 + i32.add + local.set $$t84.1 + local.get $$t84.0 + call $runtime.Block.Release + local.set $$t84.0 + local.get $$t83.0 + call $runtime.Block.Retain + local.get $$t83.1 + i32.const 4 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t84.1 + local.get $$t72 + i32.store + local.get $$t85.1 + local.get $$t76 + i32.store + local.get $$t83.1 + i32.load + local.get $$t83.1 + i32.load offset=4 + local.set $$t86.1 + local.set $$t86.0 + i32.const 24 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 8 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t87.1 + local.get $$t87.0 + call $runtime.Block.Release + local.set $$t87.0 + local.get $$t87.0 + call $runtime.Block.Retain + local.get $$t87.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.1 + local.get $$t86.0 + i32.store + local.get $$t88.1 + local.get $$t86.1 + i32.store offset=4 + local.get $$t87.0 + call $runtime.Block.Retain + local.get $$t87.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + i32.const 1 + i32.const 0 + i32.sub + i32.const 1 + i32.const 0 + i32.sub + local.set $$t89.3 + local.set $$t89.2 + local.set $$t89.1 + local.get $$t89.0 + call $runtime.Block.Release + local.set $$t89.0 + local.get $$t70.0 + local.get $$t70.1 + local.get $$t70.2 + local.get $$t70.3 + local.get $$t89.0 + local.get $$t89.1 + local.get $$t89.2 + local.get $$t89.3 + call $$w4app.Point.$slice.append + local.set $$t90.3 + local.set $$t90.2 + local.set $$t90.1 + local.get $$t90.0 + call $runtime.Block.Release + local.set $$t90.0 + br $$Block_27 + end + local.get $$current_block + i32.const 24 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t70.0 + call $runtime.Block.Retain + local.get $$t70.1 + local.get $$t70.2 + local.get $$t70.3 + else + local.get $$t90.0 + call $runtime.Block.Retain + local.get $$t90.1 + local.get $$t90.2 + local.get $$t90.3 + end + local.set $$t80.3 + local.set $$t80.2 + local.set $$t80.1 + local.get $$t80.0 + call $runtime.Block.Release + local.set $$t80.0 + i32.const 28 + local.set $$current_block + local.get $$t76 + i32.const 1 + i32.add + local.set $$t81 + i32.const 26 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + local.get $$ret_1 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t40.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t52.0 + call $runtime.Block.Release + local.get $$t53.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t57.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t64.0 + call $runtime.Block.Release + local.get $$t65.0 + call $runtime.Block.Release + local.get $$t67.0 + call $runtime.Block.Release + local.get $$t68.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t74.0 + call $runtime.Block.Release + local.get $$t75.0 + call $runtime.Block.Release + local.get $$t77.0 + call $runtime.Block.Release + local.get $$t80.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + local.get $$t84.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t87.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t89.0 + call $runtime.Block.Release + local.get $$t90.0 + call $runtime.Block.Release + ) + (func $w4app.Game.CheckStatus (param $this.0 i32) (param $this.1 i32) (result i32 i32 i32 i32 i32 i32 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$ret_0 i32) + (local $$ret_1.0.0 i32) + (local $$ret_1.0.1 i32) + (local $$ret_1.1.0 i32) + (local $$ret_1.1.1 i32) + (local $$ret_1.2.0 i32) + (local $$ret_1.2.1 i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18.0.0 i32) + (local $$t18.0.1 i32) + (local $$t18.1.0 i32) + (local $$t18.1.1 i32) + (local $$t18.2.0 i32) + (local $$t18.2.1 i32) + (local $$t19.0.0 i32) + (local $$t19.0.1 i32) + (local $$t19.1.0 i32) + (local $$t19.1.1 i32) + (local $$t19.2.0 i32) + (local $$t19.2.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t47.0 i32) + (local $$t47.1 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49.0 i32) + (local $$t49.1 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0.0 i32) + (local $$t52.0.1 i32) + (local $$t52.1.0 i32) + (local $$t52.1.1 i32) + (local $$t52.2.0 i32) + (local $$t52.2.1 i32) + (local $$t53.0.0 i32) + (local $$t53.0.1 i32) + (local $$t53.1.0 i32) + (local $$t53.1.1 i32) + (local $$t53.2.0 i32) + (local $$t53.2.1 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57 i32) + (local $$t58 i32) + (local $$t59.0 i32) + (local $$t59.1 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64.0 i32) + (local $$t64.1 i32) + (local $$t65.0 i32) + (local $$t65.1 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67.0 i32) + (local $$t67.1 i32) + (local $$t68.0 i32) + (local $$t68.1 i32) + (local $$t69.0 i32) + (local $$t69.1 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72.0 i32) + (local $$t72.1 i32) + (local $$t73.0.0 i32) + (local $$t73.0.1 i32) + (local $$t73.1.0 i32) + (local $$t73.1.1 i32) + (local $$t73.2.0 i32) + (local $$t73.2.1 i32) + (local $$t74.0.0 i32) + (local $$t74.0.1 i32) + (local $$t74.1.0 i32) + (local $$t74.1.1 i32) + (local $$t74.2.0 i32) + (local $$t74.2.1 i32) + (local $$t75.0 i32) + (local $$t75.1 i32) + (local $$t76.0 i32) + (local $$t76.1 i32) + (local $$t77.0 i32) + (local $$t77.1 i32) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80.0 i32) + (local $$t80.1 i32) + (local $$t81.0 i32) + (local $$t81.1 i32) + (local $$t82.0 i32) + (local $$t82.1 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85.0 i32) + (local $$t85.1 i32) + (local $$t86.0 i32) + (local $$t86.1 i32) + (local $$t87.0 i32) + (local $$t87.1 i32) + (local $$t88 i32) + (local $$t89 i32) + (local $$t90.0 i32) + (local $$t90.1 i32) + (local $$t91.0 i32) + (local $$t91.1 i32) + (local $$t92.0 i32) + (local $$t92.1 i32) + (local $$t93.0 i32) + (local $$t93.1 i32) + (local $$t94.0 i32) + (local $$t94.1 i32) + (local $$t95.0 i32) + (local $$t95.1 i32) + (local $$t96.0 i32) + (local $$t96.1 i32) + (local $$t97.0 i32) + (local $$t97.1 i32) + (local $$t98.0 i32) + (local $$t98.1 i32) + (local $$t99.0.0 i32) + (local $$t99.0.1 i32) + (local $$t99.1.0 i32) + (local $$t99.1.1 i32) + (local $$t99.2.0 i32) + (local $$t99.2.1 i32) + (local $$t100.0.0 i32) + (local $$t100.0.1 i32) + (local $$t100.1.0 i32) + (local $$t100.1.1 i32) + (local $$t100.2.0 i32) + (local $$t100.2.1 i32) + (local $$t101.0 i32) + (local $$t101.1 i32) + (local $$t102.0 i32) + (local $$t102.1 i32) + (local $$t103.0 i32) + (local $$t103.1 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106.0 i32) + (local $$t106.1 i32) + (local $$t107.0 i32) + (local $$t107.1 i32) + (local $$t108.0 i32) + (local $$t108.1 i32) + (local $$t109 i32) + (local $$t110 i32) + (local $$t111.0.0 i32) + (local $$t111.0.1 i32) + (local $$t111.1.0 i32) + (local $$t111.1.1 i32) + (local $$t111.2.0 i32) + (local $$t111.2.1 i32) + (local $$t112.0.0 i32) + (local $$t112.0.1 i32) + (local $$t112.1.0 i32) + (local $$t112.1.1 i32) + (local $$t112.2.0 i32) + (local $$t112.2.1 i32) + (local $$t113 i32) + (local $$t114 i32) + (local $$t115 i32) + (local $$t116.0 i32) + (local $$t116.1 i32) + (local $$t117.0 i32) + (local $$t117.1 i32) + (local $$t118 i32) + (local $$t119.0 i32) + (local $$t119.1 i32) + (local $$t120 i32) + (local $$t121 i32) + (local $$t122 i32) + (local $$t123 i32) + (local $$t124.0.0 i32) + (local $$t124.0.1 i32) + (local $$t124.1.0 i32) + (local $$t124.1.1 i32) + (local $$t124.2.0 i32) + (local $$t124.2.1 i32) + (local $$t125.0.0 i32) + (local $$t125.0.1 i32) + (local $$t125.1.0 i32) + (local $$t125.1.1 i32) + (local $$t125.2.0 i32) + (local $$t125.2.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_30 + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 0 + end + i32.const 0 + local.set $$current_block + i32.const 40 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 24 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + br $$Block_2 + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 4 + local.get $$t3 + i32.mul + i32.add + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + local.get $$t4.1 + i32.load + local.set $$t5 + local.get $$t5 + i32.const 0 + i32.eq + i32.eqz + local.set $$t6 + local.get $$t6 + if + br $$Block_6 + else + br $$Block_4 + end + end + i32.const 2 + local.set $$current_block + br $$Block_9 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t7 + end + local.set $$t3 + i32.const 3 + local.set $$current_block + local.get $$t3 + i32.const 3 + i32.lt_s + local.set $$t8 + local.get $$t8 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 4 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.0 + call $runtime.Block.Retain + local.get $$t9.1 + i32.const 0 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t9.0 + call $runtime.Block.Retain + local.get $$t9.1 + i32.const 4 + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t10.1 + i32.const 0 + i32.store + local.get $$t11.1 + local.get $$t3 + i32.store + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 1 + i32.mul + i32.add + local.set $$t12.1 + local.get $$t12.0 + call $runtime.Block.Release + local.set $$t12.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 0 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t12.0 + call $runtime.Block.Retain + local.get $$t12.1 + i32.const 4 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t13.1 + i32.const 1 + i32.store + local.get $$t14.1 + local.get $$t3 + i32.store + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 2 + i32.mul + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 0 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t15.0 + call $runtime.Block.Retain + local.get $$t15.1 + i32.const 4 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t16.1 + i32.const 2 + i32.store + local.get $$t17.1 + local.get $$t3 + i32.store + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t18.2.1 + local.set $$t18.2.0 + local.set $$t18.1.1 + local.set $$t18.1.0 + local.set $$t18.0.1 + local.set $$t18.0.0 + local.get $$t0.1 + local.get $$t18.0.0 + i32.store + local.get $$t0.1 + local.get $$t18.0.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t18.1.0 + i32.store offset=8 + local.get $$t0.1 + local.get $$t18.1.1 + i32.store offset=12 + local.get $$t0.1 + local.get $$t18.2.0 + i32.store offset=16 + local.get $$t0.1 + local.get $$t18.2.1 + i32.store offset=20 + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t19.2.1 + local.set $$t19.2.0 + local.set $$t19.1.1 + local.set $$t19.1.0 + local.set $$t19.0.1 + local.set $$t19.0.0 + local.get $$t5 + local.set $$ret_0 + local.get $$t19.0.0 + local.get $$t19.0.1 + local.get $$t19.1.0 + local.get $$t19.1.1 + local.get $$t19.2.0 + local.get $$t19.2.1 + local.set $$ret_1.2.1 + local.set $$ret_1.2.0 + local.set $$ret_1.1.1 + local.set $$ret_1.1.0 + local.set $$ret_1.0.1 + local.set $$ret_1.0.0 + br $$BlockFnBody + end + i32.const 5 + local.set $$current_block + local.get $$t3 + i32.const 1 + i32.add + local.set $$t7 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 6 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.0 + call $runtime.Block.Retain + local.get $$t20.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.0 + call $runtime.Block.Retain + local.get $$t21.1 + i32.const 4 + local.get $$t3 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.1 + i32.load + local.set $$t23 + local.get $$t5 + local.get $$t23 + i32.eq + local.set $$t24 + local.get $$t24 + if + i32.const 4 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 7 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.0 + call $runtime.Block.Retain + local.get $$t25.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + i32.const 4 + local.get $$t3 + i32.mul + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t27.1 + i32.load + local.set $$t28 + local.get $$t5 + local.get $$t28 + i32.eq + local.set $$t29 + local.get $$t29 + if + i32.const 6 + local.set $$block_selector + br $$BlockDisp + else + i32.const 5 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 8 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + i32.const 12 + local.get $$t31 + i32.mul + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.0 + call $runtime.Block.Retain + local.get $$t32.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + i32.const 0 + i32.eq + i32.eqz + local.set $$t35 + local.get $$t35 + if + br $$Block_13 + else + br $$Block_11 + end + end + i32.const 9 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.0 + call $runtime.Block.Retain + local.get $$t36.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$t37.0 + call $runtime.Block.Retain + local.get $$t37.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.1 + i32.load + local.set $$t39 + local.get $$t39 + i32.const 0 + i32.eq + i32.eqz + local.set $$t40 + local.get $$t40 + if + br $$Block_17 + else + br $$Block_15 + end + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t41 + end + local.set $$t31 + i32.const 10 + local.set $$current_block + local.get $$t31 + i32.const 3 + i32.lt_s + local.set $$t42 + local.get $$t42 + if + i32.const 8 + local.set $$block_selector + br $$BlockDisp + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 11 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 0 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 4 + i32.add + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t44.1 + local.get $$t31 + i32.store + local.get $$t45.1 + i32.const 0 + i32.store + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 1 + i32.mul + i32.add + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t46.0 + call $runtime.Block.Retain + local.get $$t46.1 + i32.const 0 + i32.add + local.set $$t47.1 + local.get $$t47.0 + call $runtime.Block.Release + local.set $$t47.0 + local.get $$t46.0 + call $runtime.Block.Retain + local.get $$t46.1 + i32.const 4 + i32.add + local.set $$t48.1 + local.get $$t48.0 + call $runtime.Block.Release + local.set $$t48.0 + local.get $$t47.1 + local.get $$t31 + i32.store + local.get $$t48.1 + i32.const 1 + i32.store + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 2 + i32.mul + i32.add + local.set $$t49.1 + local.get $$t49.0 + call $runtime.Block.Release + local.set $$t49.0 + local.get $$t49.0 + call $runtime.Block.Retain + local.get $$t49.1 + i32.const 0 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t49.0 + call $runtime.Block.Retain + local.get $$t49.1 + i32.const 4 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t50.1 + local.get $$t31 + i32.store + local.get $$t51.1 + i32.const 2 + i32.store + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t52.2.1 + local.set $$t52.2.0 + local.set $$t52.1.1 + local.set $$t52.1.0 + local.set $$t52.0.1 + local.set $$t52.0.0 + local.get $$t0.1 + local.get $$t52.0.0 + i32.store + local.get $$t0.1 + local.get $$t52.0.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t52.1.0 + i32.store offset=8 + local.get $$t0.1 + local.get $$t52.1.1 + i32.store offset=12 + local.get $$t0.1 + local.get $$t52.2.0 + i32.store offset=16 + local.get $$t0.1 + local.get $$t52.2.1 + i32.store offset=20 + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t53.2.1 + local.set $$t53.2.0 + local.set $$t53.1.1 + local.set $$t53.1.0 + local.set $$t53.0.1 + local.set $$t53.0.0 + local.get $$t34 + local.set $$ret_0 + local.get $$t53.0.0 + local.get $$t53.0.1 + local.get $$t53.1.0 + local.get $$t53.1.1 + local.get $$t53.2.0 + local.get $$t53.2.1 + local.set $$ret_1.2.1 + local.set $$ret_1.2.0 + local.set $$ret_1.1.1 + local.set $$ret_1.1.0 + local.set $$ret_1.0.1 + local.set $$ret_1.0.0 + br $$BlockFnBody + end + i32.const 12 + local.set $$current_block + local.get $$t31 + i32.const 1 + i32.add + local.set $$t41 + i32.const 10 + local.set $$block_selector + br $$BlockDisp + end + i32.const 13 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.0 + call $runtime.Block.Retain + local.get $$t54.1 + i32.const 12 + local.get $$t31 + i32.mul + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.0 + call $runtime.Block.Retain + local.get $$t55.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $$t56.1 + i32.load + local.set $$t57 + local.get $$t34 + local.get $$t57 + i32.eq + local.set $$t58 + local.get $$t58 + if + i32.const 11 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 14 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t59.1 + local.get $$t59.0 + call $runtime.Block.Release + local.set $$t59.0 + local.get $$t59.0 + call $runtime.Block.Retain + local.get $$t59.1 + i32.const 12 + local.get $$t31 + i32.mul + i32.add + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + local.get $$t60.0 + call $runtime.Block.Retain + local.get $$t60.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $$t61.1 + i32.load + local.set $$t62 + local.get $$t34 + local.get $$t62 + i32.eq + local.set $$t63 + local.get $$t63 + if + i32.const 13 + local.set $$block_selector + br $$BlockDisp + else + i32.const 12 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 15 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + local.set $$t64.1 + local.get $$t64.0 + call $runtime.Block.Release + local.set $$t64.0 + local.get $$t64.0 + call $runtime.Block.Retain + local.get $$t64.1 + i32.const 0 + i32.add + local.set $$t65.1 + local.get $$t65.0 + call $runtime.Block.Release + local.set $$t65.0 + local.get $$t64.0 + call $runtime.Block.Retain + local.get $$t64.1 + i32.const 4 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t65.1 + i32.const 0 + i32.store + local.get $$t66.1 + i32.const 0 + i32.store + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 1 + i32.mul + i32.add + local.set $$t67.1 + local.get $$t67.0 + call $runtime.Block.Release + local.set $$t67.0 + local.get $$t67.0 + call $runtime.Block.Retain + local.get $$t67.1 + i32.const 0 + i32.add + local.set $$t68.1 + local.get $$t68.0 + call $runtime.Block.Release + local.set $$t68.0 + local.get $$t67.0 + call $runtime.Block.Retain + local.get $$t67.1 + i32.const 4 + i32.add + local.set $$t69.1 + local.get $$t69.0 + call $runtime.Block.Release + local.set $$t69.0 + local.get $$t68.1 + i32.const 1 + i32.store + local.get $$t69.1 + i32.const 1 + i32.store + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 2 + i32.mul + i32.add + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + local.get $$t70.0 + call $runtime.Block.Retain + local.get $$t70.1 + i32.const 0 + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $$t70.0 + call $runtime.Block.Retain + local.get $$t70.1 + i32.const 4 + i32.add + local.set $$t72.1 + local.get $$t72.0 + call $runtime.Block.Release + local.set $$t72.0 + local.get $$t71.1 + i32.const 2 + i32.store + local.get $$t72.1 + i32.const 2 + i32.store + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t73.2.1 + local.set $$t73.2.0 + local.set $$t73.1.1 + local.set $$t73.1.0 + local.set $$t73.0.1 + local.set $$t73.0.0 + local.get $$t0.1 + local.get $$t73.0.0 + i32.store + local.get $$t0.1 + local.get $$t73.0.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t73.1.0 + i32.store offset=8 + local.get $$t0.1 + local.get $$t73.1.1 + i32.store offset=12 + local.get $$t0.1 + local.get $$t73.2.0 + i32.store offset=16 + local.get $$t0.1 + local.get $$t73.2.1 + i32.store offset=20 + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t74.2.1 + local.set $$t74.2.0 + local.set $$t74.1.1 + local.set $$t74.1.0 + local.set $$t74.0.1 + local.set $$t74.0.0 + local.get $$t39 + local.set $$ret_0 + local.get $$t74.0.0 + local.get $$t74.0.1 + local.get $$t74.1.0 + local.get $$t74.1.1 + local.get $$t74.2.0 + local.get $$t74.2.1 + local.set $$ret_1.2.1 + local.set $$ret_1.2.0 + local.set $$ret_1.1.1 + local.set $$ret_1.1.0 + local.set $$ret_1.0.1 + local.set $$ret_1.0.0 + br $$BlockFnBody + end + i32.const 16 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t75.1 + local.get $$t75.0 + call $runtime.Block.Release + local.set $$t75.0 + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t75.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t76.1 + local.get $$t76.0 + call $runtime.Block.Release + local.set $$t76.0 + local.get $$t76.0 + call $runtime.Block.Retain + local.get $$t76.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t77.1 + local.get $$t77.0 + call $runtime.Block.Release + local.set $$t77.0 + local.get $$t77.1 + i32.load + local.set $$t78 + local.get $$t78 + i32.const 0 + i32.eq + i32.eqz + local.set $$t79 + local.get $$t79 + if + br $$Block_21 + else + br $$Block_19 + end + end + i32.const 17 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t80.1 + local.get $$t80.0 + call $runtime.Block.Release + local.set $$t80.0 + local.get $$t80.0 + call $runtime.Block.Retain + local.get $$t80.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t81.1 + local.get $$t81.0 + call $runtime.Block.Release + local.set $$t81.0 + local.get $$t81.0 + call $runtime.Block.Retain + local.get $$t81.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t82.1 + local.get $$t82.0 + call $runtime.Block.Release + local.set $$t82.0 + local.get $$t82.1 + i32.load + local.set $$t83 + local.get $$t39 + local.get $$t83 + i32.eq + local.set $$t84 + local.get $$t84 + if + i32.const 15 + local.set $$block_selector + br $$BlockDisp + else + i32.const 16 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 18 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t85.1 + local.get $$t85.0 + call $runtime.Block.Release + local.set $$t85.0 + local.get $$t85.0 + call $runtime.Block.Retain + local.get $$t85.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t86.1 + local.get $$t86.0 + call $runtime.Block.Release + local.set $$t86.0 + local.get $$t86.0 + call $runtime.Block.Retain + local.get $$t86.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t87.1 + local.get $$t87.0 + call $runtime.Block.Release + local.set $$t87.0 + local.get $$t87.1 + i32.load + local.set $$t88 + local.get $$t39 + local.get $$t88 + i32.eq + local.set $$t89 + local.get $$t89 + if + i32.const 17 + local.set $$block_selector + br $$BlockDisp + else + i32.const 16 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 19 + local.set $$current_block + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + local.set $$t90.1 + local.get $$t90.0 + call $runtime.Block.Release + local.set $$t90.0 + local.get $$t90.0 + call $runtime.Block.Retain + local.get $$t90.1 + i32.const 0 + i32.add + local.set $$t91.1 + local.get $$t91.0 + call $runtime.Block.Release + local.set $$t91.0 + local.get $$t90.0 + call $runtime.Block.Retain + local.get $$t90.1 + i32.const 4 + i32.add + local.set $$t92.1 + local.get $$t92.0 + call $runtime.Block.Release + local.set $$t92.0 + local.get $$t91.1 + i32.const 2 + i32.store + local.get $$t92.1 + i32.const 0 + i32.store + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 1 + i32.mul + i32.add + local.set $$t93.1 + local.get $$t93.0 + call $runtime.Block.Release + local.set $$t93.0 + local.get $$t93.0 + call $runtime.Block.Retain + local.get $$t93.1 + i32.const 0 + i32.add + local.set $$t94.1 + local.get $$t94.0 + call $runtime.Block.Release + local.set $$t94.0 + local.get $$t93.0 + call $runtime.Block.Retain + local.get $$t93.1 + i32.const 4 + i32.add + local.set $$t95.1 + local.get $$t95.0 + call $runtime.Block.Release + local.set $$t95.0 + local.get $$t94.1 + i32.const 1 + i32.store + local.get $$t95.1 + i32.const 1 + i32.store + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.const 2 + i32.mul + i32.add + local.set $$t96.1 + local.get $$t96.0 + call $runtime.Block.Release + local.set $$t96.0 + local.get $$t96.0 + call $runtime.Block.Retain + local.get $$t96.1 + i32.const 0 + i32.add + local.set $$t97.1 + local.get $$t97.0 + call $runtime.Block.Release + local.set $$t97.0 + local.get $$t96.0 + call $runtime.Block.Retain + local.get $$t96.1 + i32.const 4 + i32.add + local.set $$t98.1 + local.get $$t98.0 + call $runtime.Block.Release + local.set $$t98.0 + local.get $$t97.1 + i32.const 0 + i32.store + local.get $$t98.1 + i32.const 2 + i32.store + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t99.2.1 + local.set $$t99.2.0 + local.set $$t99.1.1 + local.set $$t99.1.0 + local.set $$t99.0.1 + local.set $$t99.0.0 + local.get $$t0.1 + local.get $$t99.0.0 + i32.store + local.get $$t0.1 + local.get $$t99.0.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t99.1.0 + i32.store offset=8 + local.get $$t0.1 + local.get $$t99.1.1 + i32.store offset=12 + local.get $$t0.1 + local.get $$t99.2.0 + i32.store offset=16 + local.get $$t0.1 + local.get $$t99.2.1 + i32.store offset=20 + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t100.2.1 + local.set $$t100.2.0 + local.set $$t100.1.1 + local.set $$t100.1.0 + local.set $$t100.0.1 + local.set $$t100.0.0 + local.get $$t78 + local.set $$ret_0 + local.get $$t100.0.0 + local.get $$t100.0.1 + local.get $$t100.1.0 + local.get $$t100.1.1 + local.get $$t100.2.0 + local.get $$t100.2.1 + local.set $$ret_1.2.1 + local.set $$ret_1.2.0 + local.set $$ret_1.1.1 + local.set $$ret_1.1.0 + local.set $$ret_1.0.1 + local.set $$ret_1.0.0 + br $$BlockFnBody + end + i32.const 20 + local.set $$current_block + br $$Block_24 + end + i32.const 21 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t101.1 + local.get $$t101.0 + call $runtime.Block.Release + local.set $$t101.0 + local.get $$t101.0 + call $runtime.Block.Retain + local.get $$t101.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t102.1 + local.get $$t102.0 + call $runtime.Block.Release + local.set $$t102.0 + local.get $$t102.0 + call $runtime.Block.Retain + local.get $$t102.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t103.1 + local.get $$t103.0 + call $runtime.Block.Release + local.set $$t103.0 + local.get $$t103.1 + i32.load + local.set $$t104 + local.get $$t78 + local.get $$t104 + i32.eq + local.set $$t105 + local.get $$t105 + if + i32.const 19 + local.set $$block_selector + br $$BlockDisp + else + i32.const 20 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 22 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t106.1 + local.get $$t106.0 + call $runtime.Block.Release + local.set $$t106.0 + local.get $$t106.0 + call $runtime.Block.Retain + local.get $$t106.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t107.1 + local.get $$t107.0 + call $runtime.Block.Release + local.set $$t107.0 + local.get $$t107.0 + call $runtime.Block.Retain + local.get $$t107.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t108.1 + local.get $$t108.0 + call $runtime.Block.Release + local.set $$t108.0 + local.get $$t108.1 + i32.load + local.set $$t109 + local.get $$t78 + local.get $$t109 + i32.eq + local.set $$t110 + local.get $$t110 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + i32.const 20 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 23 + local.set $$current_block + br $$Block_27 + end + i32.const 24 + local.set $$current_block + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t111.2.1 + local.set $$t111.2.0 + local.set $$t111.1.1 + local.set $$t111.1.0 + local.set $$t111.0.1 + local.set $$t111.0.0 + local.get $$t0.1 + local.get $$t111.0.0 + i32.store + local.get $$t0.1 + local.get $$t111.0.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t111.1.0 + i32.store offset=8 + local.get $$t0.1 + local.get $$t111.1.1 + i32.store offset=12 + local.get $$t0.1 + local.get $$t111.2.0 + i32.store offset=16 + local.get $$t0.1 + local.get $$t111.2.1 + i32.store offset=20 + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t112.2.1 + local.set $$t112.2.0 + local.set $$t112.1.1 + local.set $$t112.1.0 + local.set $$t112.0.1 + local.set $$t112.0.0 + i32.const 3 + local.set $$ret_0 + local.get $$t112.0.0 + local.get $$t112.0.1 + local.get $$t112.1.0 + local.get $$t112.1.1 + local.get $$t112.2.0 + local.get $$t112.2.1 + local.set $$ret_1.2.1 + local.set $$ret_1.2.0 + local.set $$ret_1.1.1 + local.set $$ret_1.1.0 + local.set $$ret_1.0.1 + local.set $$ret_1.0.0 + br $$BlockFnBody + end + local.get $$current_block + i32.const 20 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t113 + end + local.set $$t114 + i32.const 25 + local.set $$current_block + local.get $$t114 + i32.const 3 + i32.lt_s + local.set $$t115 + local.get $$t115 + if + i32.const 23 + local.set $$block_selector + br $$BlockDisp + else + i32.const 24 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 26 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t116.1 + local.get $$t116.0 + call $runtime.Block.Release + local.set $$t116.0 + local.get $$t116.0 + call $runtime.Block.Retain + local.get $$t116.1 + i32.const 12 + local.get $$t114 + i32.mul + i32.add + local.set $$t117.1 + local.get $$t117.0 + call $runtime.Block.Release + local.set $$t117.0 + local.get $$t117.0 + call $runtime.Block.Retain + local.get $$t117.1 + i32.const 4 + local.get $$t118 + i32.mul + i32.add + local.set $$t119.1 + local.get $$t119.0 + call $runtime.Block.Release + local.set $$t119.0 + local.get $$t119.1 + i32.load + local.set $$t120 + local.get $$t120 + i32.const 0 + i32.eq + local.set $$t121 + local.get $$t121 + if + br $$Block_28 + else + br $$Block_29 + end + end + i32.const 27 + local.set $$current_block + local.get $$t114 + i32.const 1 + i32.add + local.set $$t113 + i32.const 25 + local.set $$block_selector + br $$BlockDisp + end + local.get $$current_block + i32.const 23 + i32.eq + if(result i32) + i32.const 0 + else + local.get $$t122 + end + local.set $$t118 + i32.const 28 + local.set $$current_block + local.get $$t118 + i32.const 3 + i32.lt_s + local.set $$t123 + local.get $$t123 + if + i32.const 26 + local.set $$block_selector + br $$BlockDisp + else + i32.const 27 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 29 + local.set $$current_block + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t124.2.1 + local.set $$t124.2.0 + local.set $$t124.1.1 + local.set $$t124.1.0 + local.set $$t124.0.1 + local.set $$t124.0.0 + local.get $$t0.1 + local.get $$t124.0.0 + i32.store + local.get $$t0.1 + local.get $$t124.0.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t124.1.0 + i32.store offset=8 + local.get $$t0.1 + local.get $$t124.1.1 + i32.store offset=12 + local.get $$t0.1 + local.get $$t124.2.0 + i32.store offset=16 + local.get $$t0.1 + local.get $$t124.2.1 + i32.store offset=20 + local.get $$t0.1 + i32.load + local.get $$t0.1 + i32.load offset=4 + local.get $$t0.1 + i32.load offset=8 + local.get $$t0.1 + i32.load offset=12 + local.get $$t0.1 + i32.load offset=16 + local.get $$t0.1 + i32.load offset=20 + local.set $$t125.2.1 + local.set $$t125.2.0 + local.set $$t125.1.1 + local.set $$t125.1.0 + local.set $$t125.0.1 + local.set $$t125.0.0 + i32.const 0 + local.set $$ret_0 + local.get $$t125.0.0 + local.get $$t125.0.1 + local.get $$t125.1.0 + local.get $$t125.1.1 + local.get $$t125.2.0 + local.get $$t125.2.1 + local.set $$ret_1.2.1 + local.set $$ret_1.2.0 + local.set $$ret_1.1.1 + local.set $$ret_1.1.0 + local.set $$ret_1.0.1 + local.set $$ret_1.0.0 + br $$BlockFnBody + end + i32.const 30 + local.set $$current_block + local.get $$t118 + i32.const 1 + i32.add + local.set $$t122 + i32.const 28 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$ret_0 + local.get $$ret_1.0.0 + local.get $$ret_1.0.1 + local.get $$ret_1.1.0 + local.get $$ret_1.1.1 + local.get $$ret_1.2.0 + local.get $$ret_1.2.1 + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t12.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t47.0 + call $runtime.Block.Release + local.get $$t48.0 + call $runtime.Block.Release + local.get $$t49.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t59.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t64.0 + call $runtime.Block.Release + local.get $$t65.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t67.0 + call $runtime.Block.Release + local.get $$t68.0 + call $runtime.Block.Release + local.get $$t69.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + local.get $$t72.0 + call $runtime.Block.Release + local.get $$t75.0 + call $runtime.Block.Release + local.get $$t76.0 + call $runtime.Block.Release + local.get $$t77.0 + call $runtime.Block.Release + local.get $$t80.0 + call $runtime.Block.Release + local.get $$t81.0 + call $runtime.Block.Release + local.get $$t82.0 + call $runtime.Block.Release + local.get $$t85.0 + call $runtime.Block.Release + local.get $$t86.0 + call $runtime.Block.Release + local.get $$t87.0 + call $runtime.Block.Release + local.get $$t90.0 + call $runtime.Block.Release + local.get $$t91.0 + call $runtime.Block.Release + local.get $$t92.0 + call $runtime.Block.Release + local.get $$t93.0 + call $runtime.Block.Release + local.get $$t94.0 + call $runtime.Block.Release + local.get $$t95.0 + call $runtime.Block.Release + local.get $$t96.0 + call $runtime.Block.Release + local.get $$t97.0 + call $runtime.Block.Release + local.get $$t98.0 + call $runtime.Block.Release + local.get $$t101.0 + call $runtime.Block.Release + local.get $$t102.0 + call $runtime.Block.Release + local.get $$t103.0 + call $runtime.Block.Release + local.get $$t106.0 + call $runtime.Block.Release + local.get $$t107.0 + call $runtime.Block.Release + local.get $$t108.0 + call $runtime.Block.Release + local.get $$t116.0 + call $runtime.Block.Release + local.get $$t117.0 + call $runtime.Block.Release + local.get $$t119.0 + call $runtime.Block.Release + ) + (func $$i32.$array3.$IndexOf (param $x.0 i32) (param $x.1 i32) (param $x.2 i32) (param $id i32) (result i32) + (local $ret i32) + block $block2 + block $block1 + block $block0 + block $block_sel + local.get $id + br_table 0 1 2 2 + end + local.get $x.0 + local.set $ret + br $block2 + end + local.get $x.1 + local.set $ret + br $block2 + end + local.get $x.2 + local.set $ret + br $block2 + end + local.get $ret + ) + (func $w4app.Game.Draw (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14 i32) + (local $$t15 i32) + (local $$t16.0 i32) + (local $$t16.1 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39.0.0 i32) + (local $$t39.0.1 i32) + (local $$t39.0.2 i32) + (local $$t39.1.0 i32) + (local $$t39.1.1 i32) + (local $$t39.1.2 i32) + (local $$t39.2.0 i32) + (local $$t39.2.1 i32) + (local $$t39.2.2 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t45.2 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55 i32) + (local $$t56 i32) + (local $$t57 i32) + (local $$t58.0 i32) + (local $$t58.1 i32) + (local $$t58.2 i32) + (local $$t58.3 i32) + (local $$t59 i32) + (local $$t60.0 i32) + (local $$t60.1 i32) + (local $$t61.0 i32) + (local $$t61.1 i32) + (local $$t62.0 i32) + (local $$t62.1 i32) + (local $$t63.0 i32) + (local $$t63.1 i32) + (local $$t64.0 i32) + (local $$t64.1 i32) + (local $$t65.0 i32) + (local $$t65.1 i32) + (local $$t65.2 i32) + (local $$t65.3 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i32) + (local $$t68 i32) + (local $$t69.0 i32) + (local $$t69.1 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t71 i32) + (local $$t72 i32) + (local $$t73.0 i32) + (local $$t73.1 i32) + (local $$t74 i32) + (local $$t75 i32) + (local $$t76.0 i32) + (local $$t76.1 i32) + (local $$t76.2 i32) + (local $$t76.3 i32) + (local $$t77.0 i32) + (local $$t77.1 i32) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80.0 i32) + (local $$t80.1 i32) + (local $$t81.0 i32) + (local $$t81.1 i32) + (local $$t82.0 i32) + (local $$t82.1 i32) + (local $$t83.0 i32) + (local $$t83.1 i32) + (local $$t84 i32) + (local $$t85 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=4 + local.get $$t1.1 + i32.load offset=8 + local.get $$t1.1 + i32.load offset=12 + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $$t2.2 + local.set $$t3 + br $$Block_0 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$t4 + end + local.set $$t5 + i32.const 1 + local.set $$current_block + local.get $$t5 + i32.const 1 + i32.add + local.set $$t4 + local.get $$t4 + local.get $$t3 + i32.lt_s + local.set $$t6 + local.get $$t6 + if + br $$Block_1 + else + br $$Block_2 + end + end + i32.const 2 + local.set $$current_block + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + i32.const 12 + local.get $$t4 + i32.mul + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load + local.get $$t7.1 + i32.load offset=4 + local.get $$t7.1 + i32.load offset=8 + local.set $$t8.2 + local.set $$t8.1 + local.set $$t8.0 + local.get $$t0.1 + local.get $$t8.0 + i32.store + local.get $$t0.1 + local.get $$t8.1 + i32.store offset=4 + local.get $$t0.1 + local.get $$t8.2 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 8 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load + local.set $$t10 + local.get $$t10 + i32.const 65535 + i32.and + local.set $$t11 + i32.const 4 + local.get $$t11 + i32.sub + i32.const 65535 + i32.and + local.set $$t12 + local.get $$t12 + call $syscall$wasm4.SetDrawColorsU16 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + local.set $$t14 + local.get $$t14 + local.set $$t15 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t16.1 + local.get $$t16.0 + call $runtime.Block.Release + local.set $$t16.0 + local.get $$t16.1 + i32.load + local.set $$t17 + local.get $$t17 + local.set $$t18 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.1 + i32.load + local.set $$t20 + local.get $$t20 + local.set $$t21 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.1 + i32.load + local.set $$t23 + local.get $$t23 + local.set $$t24 + local.get $$t15 + local.get $$t18 + local.get $$t21 + local.get $$t24 + call $syscall$wasm4.LineI32 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + i32.const 17184 + call $syscall$wasm4.SetDrawColorsU16 + i32.const 0 + i32.const 14792 + call $w4app.Board.Draw + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 48 + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 48 + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i32.load + local.set $$t27 + local.get $$t27 + i32.const 1 + i32.add + local.set $$t28 + local.get $$t28 + i32.const 30 + i32.rem_s + local.set $$t29 + local.get $$t25.1 + local.get $$t29 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 48 + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.1 + i32.load + local.set $$t31 + local.get $$t31 + i32.const 0 + i32.eq + local.set $$t32 + local.get $$t32 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 4 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 52 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 52 + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t34.1 + i32.load + local.set $$t35 + local.get $$t35 + i32.const 1 + i32.add + local.set $$t36 + local.get $$t36 + i32.const 2 + i32.rem_s + local.set $$t37 + local.get $$t33.1 + local.get $$t37 + i32.store + br $$Block_4 + end + i32.const 5 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.1 + i32.load + local.get $$t38.1 + i32.load offset=4 + local.get $$t38.1 + i32.load offset=8 + local.get $$t38.1 + i32.load offset=12 + local.get $$t38.1 + i32.load offset=16 + local.get $$t38.1 + i32.load offset=20 + local.get $$t38.1 + i32.load offset=24 + local.get $$t38.1 + i32.load offset=28 + local.get $$t38.1 + i32.load offset=32 + local.set $$t39.2.2 + local.set $$t39.2.1 + local.set $$t39.2.0 + local.set $$t39.1.2 + local.set $$t39.1.1 + local.set $$t39.1.0 + local.set $$t39.0.2 + local.set $$t39.0.1 + local.set $$t39.0.0 + br $$Block_5 + end + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$t40 + end + local.set $$t41 + i32.const 6 + local.set $$current_block + local.get $$t41 + i32.const 1 + i32.add + local.set $$t40 + local.get $$t40 + i32.const 3 + i32.lt_s + local.set $$t42 + local.get $$t42 + if + br $$Block_6 + else + br $$Block_7 + end + end + i32.const 7 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 12 + local.get $$t40 + i32.mul + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + local.get $$t44.1 + i32.load offset=4 + local.get $$t44.1 + i32.load offset=8 + local.set $$t45.2 + local.set $$t45.1 + local.set $$t45.0 + br $$Block_8 + end + i32.const 8 + local.set $$current_block + i32.const 0 + i32.const 14960 + i32.const 4 + i32.const 18 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14832 + i32.const 6 + i32.const 18 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14944 + i32.const 8 + i32.const 18 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14896 + i32.const 10 + i32.const 18 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14976 + i32.const 12 + i32.const 19 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14816 + i32.const 14 + i32.const 18 + call $w4app.Letter.Draw + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t46.1 + i32.load + local.set $$t47 + local.get $$t47 + i32.const 1 + i32.eq + local.set $$t48 + local.get $$t48 + if + br $$Block_13 + else + br $$Block_16 + end + end + local.get $$current_block + i32.const 7 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$current_block + i32.const 12 + i32.eq + if(result i32) + local.get $$t49 + else + local.get $$t49 + end + end + local.set $$t50 + i32.const 9 + local.set $$current_block + local.get $$t50 + i32.const 1 + i32.add + local.set $$t49 + local.get $$t49 + i32.const 3 + i32.lt_s + local.set $$t51 + local.get $$t51 + if + br $$Block_9 + else + i32.const 6 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $$t45.0 + local.get $$t45.1 + local.get $$t45.2 + local.get $$t49 + call $$i32.$array3.$IndexOf + local.set $$t52 + local.get $$t52 + i32.const 2 + i32.gt_s + local.set $$t53 + local.get $$t53 + if + br $$Block_10 + else + br $$Block_11 + end + end + i32.const 11 + local.set $$current_block + local.get $$t52 + i32.const 2 + i32.sub + local.set $$t54 + br $$Block_11 + end + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + local.get $$t52 + else + local.get $$t54 + end + local.set $$t55 + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + i32.const 0 + else + i32.const 1 + end + local.set $$t56 + i32.const 12 + local.set $$current_block + local.get $$t55 + i32.const 0 + i32.eq + i32.eqz + local.set $$t57 + local.get $$t57 + if + br $$Block_12 + else + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 13 + local.set $$current_block + i32.const 15008 + i32.load + call $runtime.Block.Retain + i32.const 15008 + i32.load offset=4 + i32.const 15008 + i32.load offset=8 + i32.const 15008 + i32.load offset=12 + local.set $$t58.3 + local.set $$t58.2 + local.set $$t58.1 + local.get $$t58.0 + call $runtime.Block.Release + local.set $$t58.0 + local.get $$t55 + i32.const 1 + i32.sub + local.set $$t59 + local.get $$t58.0 + call $runtime.Block.Retain + local.get $$t58.1 + i32.const 32 + local.get $$t59 + i32.mul + i32.add + local.set $$t60.1 + local.get $$t60.0 + call $runtime.Block.Release + local.set $$t60.0 + i32.const 24 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 8 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t61.1 + local.get $$t61.0 + call $runtime.Block.Release + local.set $$t61.0 + local.get $$t61.0 + call $runtime.Block.Retain + local.get $$t61.1 + i32.const 0 + i32.add + local.set $$t62.1 + local.get $$t62.0 + call $runtime.Block.Release + local.set $$t62.0 + local.get $$t61.0 + call $runtime.Block.Retain + local.get $$t61.1 + i32.const 4 + i32.add + local.set $$t63.1 + local.get $$t63.0 + call $runtime.Block.Release + local.set $$t63.0 + local.get $$t62.1 + local.get $$t40 + i32.store + local.get $$t63.1 + local.get $$t49 + i32.store + local.get $$t61.1 + i32.load + local.get $$t61.1 + i32.load offset=4 + local.set $$t64.1 + local.set $$t64.0 + local.get $$t60.0 + local.get $$t60.1 + local.get $$t64.0 + local.get $$t64.1 + local.get $$t56 + call $w4app.Player.Draw + i32.const 9 + local.set $$block_selector + br $$BlockDisp + end + i32.const 14 + local.set $$current_block + i32.const 14992 + i32.load + call $runtime.Block.Retain + i32.const 14992 + i32.load offset=4 + i32.const 14992 + i32.load offset=8 + i32.const 14992 + i32.load offset=12 + local.set $$t65.3 + local.set $$t65.2 + local.set $$t65.1 + local.get $$t65.0 + call $runtime.Block.Release + local.set $$t65.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i32.load + local.set $$t67 + local.get $$t67 + i32.const 1 + i32.sub + local.set $$t68 + local.get $$t65.0 + call $runtime.Block.Retain + local.get $$t65.1 + i32.const 16 + local.get $$t68 + i32.mul + i32.add + local.set $$t69.1 + local.get $$t69.0 + call $runtime.Block.Release + local.set $$t69.0 + local.get $$t69.0 + local.get $$t69.1 + call $w4app.Next.Draw + i32.const 0 + i32.const 14960 + i32.const 8 + i32.const 0 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14880 + i32.const 10 + i32.const 0 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14912 + i32.const 11 + i32.const 0 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14944 + i32.const 13 + i32.const 0 + call $w4app.Letter.Draw + br $$Block_14 + end + i32.const 15 + local.set $$current_block + br $$BlockFnBody + end + i32.const 16 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + local.get $$t70.1 + i32.load + local.set $$t71 + local.get $$t71 + i32.const 0 + i32.eq + local.set $$t72 + local.get $$t72 + if + br $$Block_17 + else + br $$Block_18 + end + end + i32.const 17 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t73.1 + local.get $$t73.0 + call $runtime.Block.Release + local.set $$t73.0 + local.get $$t73.1 + i32.load + local.set $$t74 + local.get $$t74 + i32.const 2 + i32.eq + local.set $$t75 + local.get $$t75 + if + i32.const 14 + local.set $$block_selector + br $$BlockDisp + else + i32.const 16 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 18 + local.set $$current_block + i32.const 15008 + i32.load + call $runtime.Block.Retain + i32.const 15008 + i32.load offset=4 + i32.const 15008 + i32.load offset=8 + i32.const 15008 + i32.load offset=12 + local.set $$t76.3 + local.set $$t76.2 + local.set $$t76.1 + local.get $$t76.0 + call $runtime.Block.Release + local.set $$t76.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 36 + i32.add + local.set $$t77.1 + local.get $$t77.0 + call $runtime.Block.Release + local.set $$t77.0 + local.get $$t77.1 + i32.load + local.set $$t78 + local.get $$t78 + i32.const 1 + i32.sub + local.set $$t79 + local.get $$t76.0 + call $runtime.Block.Retain + local.get $$t76.1 + i32.const 32 + local.get $$t79 + i32.mul + i32.add + local.set $$t80.1 + local.get $$t80.0 + call $runtime.Block.Release + local.set $$t80.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t81.1 + local.get $$t81.0 + call $runtime.Block.Release + local.set $$t81.0 + local.get $$t81.1 + i32.load + local.get $$t81.1 + i32.load offset=4 + local.set $$t82.1 + local.set $$t82.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 52 + i32.add + local.set $$t83.1 + local.get $$t83.0 + call $runtime.Block.Release + local.set $$t83.0 + local.get $$t83.1 + i32.load + local.set $$t84 + local.get $$t84 + i32.const 0 + i32.eq + local.set $$t85 + local.get $$t80.0 + local.get $$t80.1 + local.get $$t82.0 + local.get $$t82.1 + local.get $$t85 + call $w4app.Player.Draw + i32.const 15 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + i32.const 0 + i32.const 14848 + i32.const 6 + i32.const 0 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14928 + i32.const 8 + i32.const 0 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14832 + i32.const 10 + i32.const 0 + call $w4app.Letter.Draw + i32.const 0 + i32.const 14960 + i32.const 12 + i32.const 0 + call $w4app.Letter.Draw + i32.const 15 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t16.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t58.0 + call $runtime.Block.Release + local.get $$t60.0 + call $runtime.Block.Release + local.get $$t61.0 + call $runtime.Block.Release + local.get $$t62.0 + call $runtime.Block.Release + local.get $$t63.0 + call $runtime.Block.Release + local.get $$t65.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t69.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t73.0 + call $runtime.Block.Release + local.get $$t76.0 + call $runtime.Block.Release + local.get $$t77.0 + call $runtime.Block.Release + local.get $$t80.0 + call $runtime.Block.Release + local.get $$t81.0 + call $runtime.Block.Release + local.get $$t83.0 + call $runtime.Block.Release + ) + (func $w4app.Game.Move (param $this.0 i32) (param $this.1 i32) (param $X i32) (param $Y i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1.0.0 i32) + (local $$t12.1.0.1 i32) + (local $$t12.1.1.0 i32) + (local $$t12.1.1.1 i32) + (local $$t12.1.2.0 i32) + (local $$t12.1.2.1 i32) + (local $$t13 i32) + (local $$t14.0.0 i32) + (local $$t14.0.1 i32) + (local $$t14.1.0 i32) + (local $$t14.1.1 i32) + (local $$t14.2.0 i32) + (local $$t14.2.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18.0 i32) + (local $$t18.1 i32) + (local $$t19.0 i32) + (local $$t19.1 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38 i32) + (local $$t39 i32) + (local $$t40.0 i32) + (local $$t40.1 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1 i32) + (local $$t47 i32) + (local $$t48.0 i32) + (local $$t48.1 i32) + (local $$t49 i32) + (local $$t50 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 12 + local.get $X + i32.mul + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 4 + local.get $Y + i32.mul + i32.add + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 36 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t2.1 + local.get $$t4 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 36 + i32.add + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 36 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.set $$t7 + local.get $$t7 + i32.const 2 + i32.rem_s + local.set $$t8 + local.get $$t8 + i32.const 1 + i32.add + local.set $$t9 + local.get $$t5.1 + local.get $$t9 + i32.store + i32.const 40 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 24 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $this.0 + local.get $this.1 + call $w4app.Game.CheckStatus + local.set $$t12.1.2.1 + local.set $$t12.1.2.0 + local.set $$t12.1.1.1 + local.set $$t12.1.1.0 + local.set $$t12.1.0.1 + local.set $$t12.1.0.0 + local.set $$t12.0 + local.get $$t12.0 + local.set $$t13 + local.get $$t11.1 + local.get $$t13 + i32.store + local.get $$t12.1.0.0 + local.get $$t12.1.0.1 + local.get $$t12.1.1.0 + local.get $$t12.1.1.1 + local.get $$t12.1.2.0 + local.get $$t12.1.2.1 + local.set $$t14.2.1 + local.set $$t14.2.0 + local.set $$t14.1.1 + local.set $$t14.1.0 + local.set $$t14.0.1 + local.set $$t14.0.0 + local.get $$t10.1 + local.get $$t14.0.0 + i32.store + local.get $$t10.1 + local.get $$t14.0.1 + i32.store offset=4 + local.get $$t10.1 + local.get $$t14.1.0 + i32.store offset=8 + local.get $$t10.1 + local.get $$t14.1.1 + i32.store offset=12 + local.get $$t10.1 + local.get $$t14.2.0 + i32.store offset=16 + local.get $$t10.1 + local.get $$t14.2.1 + i32.store offset=20 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load + local.set $$t16 + local.get $$t16 + i32.const 1 + i32.eq + local.set $$t17 + local.get $$t17 + if + br $$Block_0 + else + br $$Block_2 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t18.1 + local.get $$t18.0 + call $runtime.Block.Release + local.set $$t18.0 + local.get $$t10.0 + call $runtime.Block.Retain + local.get $$t10.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + local.set $$t19.1 + local.get $$t19.0 + call $runtime.Block.Release + local.set $$t19.0 + local.get $$t19.0 + call $runtime.Block.Retain + local.get $$t19.1 + i32.const 0 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load + local.set $$t21 + local.get $$t18.0 + call $runtime.Block.Retain + local.get $$t18.1 + i32.const 12 + local.get $$t21 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t10.0 + call $runtime.Block.Retain + local.get $$t10.1 + i32.const 8 + i32.const 0 + i32.mul + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.0 + call $runtime.Block.Retain + local.get $$t23.1 + i32.const 4 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load + local.set $$t25 + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.const 4 + local.get $$t25 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.1 + i32.load + local.set $$t27 + local.get $$t27 + i32.const 2 + i32.add + local.set $$t28 + local.get $$t26.1 + local.get $$t28 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t10.0 + call $runtime.Block.Retain + local.get $$t10.1 + i32.const 8 + i32.const 1 + i32.mul + i32.add + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + i32.const 0 + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t31.1 + i32.load + local.set $$t32 + local.get $$t29.0 + call $runtime.Block.Retain + local.get $$t29.1 + i32.const 12 + local.get $$t32 + i32.mul + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t10.0 + call $runtime.Block.Retain + local.get $$t10.1 + i32.const 8 + i32.const 1 + i32.mul + i32.add + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t34.0 + call $runtime.Block.Retain + local.get $$t34.1 + i32.const 4 + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t35.1 + i32.load + local.set $$t36 + local.get $$t33.0 + call $runtime.Block.Retain + local.get $$t33.1 + i32.const 4 + local.get $$t36 + i32.mul + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$t37.1 + i32.load + local.set $$t38 + local.get $$t38 + i32.const 2 + i32.add + local.set $$t39 + local.get $$t37.1 + local.get $$t39 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t40.1 + local.get $$t40.0 + call $runtime.Block.Release + local.set $$t40.0 + local.get $$t10.0 + call $runtime.Block.Retain + local.get $$t10.1 + i32.const 8 + i32.const 2 + i32.mul + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.0 + call $runtime.Block.Retain + local.get $$t41.1 + i32.const 0 + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t42.1 + i32.load + local.set $$t43 + local.get $$t40.0 + call $runtime.Block.Retain + local.get $$t40.1 + i32.const 12 + local.get $$t43 + i32.mul + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t10.0 + call $runtime.Block.Retain + local.get $$t10.1 + i32.const 8 + i32.const 2 + i32.mul + i32.add + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t45.0 + call $runtime.Block.Retain + local.get $$t45.1 + i32.const 4 + i32.add + local.set $$t46.1 + local.get $$t46.0 + call $runtime.Block.Release + local.set $$t46.0 + local.get $$t46.1 + i32.load + local.set $$t47 + local.get $$t44.0 + call $runtime.Block.Retain + local.get $$t44.1 + i32.const 4 + local.get $$t47 + i32.mul + i32.add + local.set $$t48.1 + local.get $$t48.0 + call $runtime.Block.Release + local.set $$t48.0 + local.get $$t48.1 + i32.load + local.set $$t49 + local.get $$t49 + i32.const 2 + i32.add + local.set $$t50 + local.get $$t48.1 + local.get $$t50 + i32.store + br $$Block_1 + end + i32.const 2 + local.set $$current_block + br $$BlockFnBody + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.set $$t52 + local.get $$t52 + i32.const 2 + i32.eq + local.set $$t53 + local.get $$t53 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t18.0 + call $runtime.Block.Release + local.get $$t19.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t40.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.0 + call $runtime.Block.Release + local.get $$t48.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + ) + (func $w4app.Game.Update (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1 i64) + (local $$t2 i64) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6 i32) + (local $$t7.0 i32) + (local $$t7.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t8.2 i32) + (local $$t8.3 i32) + (local $$t9 i32) + (local $$t10.0 i32) + (local $$t10.1 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t14.2 i32) + (local $$t14.3 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21.0 i32) + (local $$t21.1 i32) + (local $$t21.2 i32) + (local $$t21.3 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t25.2 i32) + (local $$t25.3 i32) + (local $$t26.0 i32) + (local $$t26.1 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t30.2 i32) + (local $$t30.3 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36.0 i32) + (local $$t36.1 i32) + (local $$t36.2 i32) + (local $$t36.3 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t42.2 i32) + (local $$t42.3 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t46.0 i32) + (local $$t46.1.0 i32) + (local $$t46.1.1 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52.0 i32) + (local $$t52.1.0 i32) + (local $$t52.1.1 i32) + (local $$t53 i32) + (local $$t54 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56.0 i32) + (local $$t56.1 i32) + (local $$t57.0 i32) + (local $$t57.1.0 i32) + (local $$t57.1.1 i32) + (local $$t58 i32) + (local $$t59 i32) + (local $$t60 i32) + (local $$t61 i32) + (local $$t62 i32) + (local $$t63 i32) + (local $$t64 i32) + (local $$t65.0 i32) + (local $$t65.1 i32) + (local $$t66.0 i32) + (local $$t66.1 i32) + (local $$t67 i64) + (local $$t68 i32) + (local $$t69.0 i32) + (local $$t69.1.0 i32) + (local $$t69.1.1 i32) + (local $$t70.0 i32) + (local $$t70.1 i32) + (local $$t71.0 i32) + (local $$t71.1 i32) + (local $$t72.0 i32) + (local $$t72.1.0 i32) + (local $$t72.1.1 i32) + (local $$t73 i32) + (local $$t74 i32) + (local $$t75.0 i32) + (local $$t75.1 i32) + (local $$t75.2 i32) + (local $$t75.3 i32) + (local $$t76.0 i32) + (local $$t76.1 i32) + (local $$t77.0 i32) + (local $$t77.1 i32) + (local $$t77.2 i32) + (local $$t77.3 i32) + (local $$t78 i32) + (local $$t79 i32) + (local $$t80.0 i32) + (local $$t80.1 i32) + (local $$t81.0 i32) + (local $$t81.1 i32) + (local $$t81.2 i32) + (local $$t81.3 i32) + (local $$t82 i32) + (local $$t83 i32) + (local $$t84 i32) + (local $$t85 i32) + (local $$t86 i32) + (local $$t87.0 i32) + (local $$t87.1 i32) + (local $$t88.0 i32) + (local $$t88.1 i32) + (local $$t88.2 i32) + (local $$t88.3 i32) + (local $$t89.0 i32) + (local $$t89.1 i32) + (local $$t90.0 i32) + (local $$t90.1 i32) + (local $$t91.0 i32) + (local $$t91.1 i32) + (local $$t92.0 i32) + (local $$t92.1.0 i32) + (local $$t92.1.1 i32) + (local $$t93 i32) + (local $$t94 i32) + (local $$t95.0 i32) + (local $$t95.1 i32) + (local $$t96.0 i32) + (local $$t96.1 i32) + (local $$t97.0 i32) + (local $$t97.1.0 i32) + (local $$t97.1.1 i32) + (local $$t98 i32) + (local $$t99 i32) + (local $$t100.0 i32) + (local $$t100.1 i32) + (local $$t101.0 i32) + (local $$t101.1 i32) + (local $$t102.0 i32) + (local $$t102.1.0 i32) + (local $$t102.1.1 i32) + (local $$t103 i32) + (local $$t104 i32) + (local $$t105 i32) + (local $$t106.0 i32) + (local $$t106.1 i32) + (local $$t107.0 i32) + (local $$t107.1 i32) + (local $$t108 i32) + (local $$t109 i32) + (local $$t110.0 i32) + (local $$t110.1 i32) + (local $$t111.0 i32) + (local $$t111.1 i32) + (local $$t112 i32) + (local $$t113 i32) + (local $$t114.0 i32) + (local $$t114.1 i32) + (local $$t115.0 i32) + (local $$t115.1 i32) + (local $$t116.0 i32) + (local $$t116.1 i32) + (local $$t117.0 i32) + (local $$t117.1 i32) + (local $$t118 i32) + (local $$t119 i32) + (local $$t120 i32) + (local $$t121 i32) + (local $$t122.0 i32) + (local $$t122.1 i32) + (local $$t123.0 i32) + (local $$t123.1 i32) + (local $$t124.0 i32) + (local $$t124.1 i32) + (local $$t125.0 i32) + (local $$t125.1 i32) + (local $$t126 i32) + (local $$t127 i32) + (local $$t128.0 i32) + (local $$t128.1 i32) + (local $$t129.0 i32) + (local $$t129.1 i32) + (local $$t130 i32) + (local $$t131 i32) + (local $$t132 i32) + (local $$t133.0 i32) + (local $$t133.1 i32) + (local $$t134.0 i32) + (local $$t134.1 i32) + (local $$t135.0 i32) + (local $$t135.1 i32) + (local $$t136.0 i32) + (local $$t136.1 i32) + (local $$t137 i32) + (local $$t138 i32) + (local $$t139 i32) + (local $$t140 i32) + (local $$t141.0 i32) + (local $$t141.1 i32) + (local $$t142.0 i32) + (local $$t142.1 i32) + (local $$t143.0 i32) + (local $$t143.1 i32) + (local $$t144.0 i32) + (local $$t144.1 i32) + (local $$t145.0 i32) + (local $$t145.1 i32) + (local $$t146 i32) + (local $$t147.0 i32) + (local $$t147.1 i32) + (local $$t148.0 i32) + (local $$t148.1 i32) + (local $$t149.0 i32) + (local $$t149.1 i32) + (local $$t150 i32) + (local $$t151.0 i32) + (local $$t151.1 i32) + (local $$t152 i32) + (local $$t153 i32) + (local $$t154 i32) + (local $$t155.0 i32) + (local $$t155.1 i32) + (local $$t156 i32) + (local $$t157 i32) + (local $$t158.0 i32) + (local $$t158.1 i32) + (local $$t159.0 i32) + (local $$t159.1 i32) + (local $$t160.0 i32) + (local $$t160.1 i32) + (local $$t161 i32) + (local $$t162.0 i32) + (local $$t162.1 i32) + (local $$t163.0 i32) + (local $$t163.1 i32) + (local $$t164 i32) + (local $$t165.0 i32) + (local $$t165.1 i32) + (local $$t166.0 i32) + (local $$t166.1 i32) + (local $$t167 i32) + (local $$t168.0 i32) + (local $$t168.1 i32) + (local $$t169.0 i32) + (local $$t169.1 i32) + (local $$t170.0 i32) + (local $$t170.1 i32) + (local $$t171.0 i32) + (local $$t171.1 i32) + (local $$t172.0 i32) + (local $$t172.1 i32) + (local $$t173.0 i32) + (local $$t173.1 i32) + (local $$t174.0 i32) + (local $$t174.1 i32) + (local $$t175.0 i32) + (local $$t175.1 i32) + (local $$t176.0 i32) + (local $$t176.1 i32) + (local $$t177.0 i32) + (local $$t177.1 i32) + (local $$t178.0 i32) + (local $$t178.1 i32) + (local $$t179.0 i32) + (local $$t179.1 i32) + (local $$t180.0 i32) + (local $$t180.1 i32) + (local $$t181.0 i32) + (local $$t181.1 i32) + (local $$t182.0 i32) + (local $$t182.1 i32) + (local $$t183 i32) + (local $$t184 i32) + (local $$t185 i32) + (local $$t186.0 i32) + (local $$t186.1 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_29 + block $$Block_28 + block $$Block_27 + block $$Block_26 + block $$Block_25 + block $$Block_24 + block $$Block_23 + block $$Block_22 + block $$Block_21 + block $$Block_20 + block $$Block_19 + block $$Block_18 + block $$Block_17 + block $$Block_16 + block $$Block_15 + block $$Block_14 + block $$Block_13 + block $$Block_12 + block $$Block_11 + block $$Block_10 + block $$Block_9 + block $$Block_8 + block $$Block_7 + block $$Block_6 + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 0 + end + i32.const 0 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 72 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + i64.load + local.set $$t1 + local.get $$t1 + i64.const 1 + i64.add + local.set $$t2 + local.get $$t0.1 + local.get $$t2 + i64.store align=8 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 48 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + local.set $$t4 + local.get $$t4 + i32.const 2 + i32.rem_s + local.set $$t5 + local.get $$t5 + i32.const 0 + i32.eq + local.set $$t6 + local.get $$t6 + if + br $$Block_2 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t7.1 + local.get $$t7.0 + call $runtime.Block.Release + local.set $$t7.0 + local.get $$t7.1 + i32.load + call $runtime.Block.Retain + local.get $$t7.1 + i32.load offset=4 + local.get $$t7.1 + i32.load offset=8 + local.get $$t7.1 + i32.load offset=12 + local.set $$t8.3 + local.set $$t8.2 + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.2 + local.set $$t9 + br $$Block_3 + end + i32.const 2 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t10.1 + local.get $$t10.0 + call $runtime.Block.Release + local.set $$t10.0 + local.get $$t10.1 + i32.load + local.set $$t11 + local.get $$t11 + i32.const 0 + i32.eq + local.set $$t12 + local.get $$t12 + if + br $$Block_7 + else + br $$Block_8 + end + end + i32.const 3 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.1 + i32.load + call $runtime.Block.Retain + local.get $$t13.1 + i32.load offset=4 + local.get $$t13.1 + i32.load offset=8 + local.get $$t13.1 + i32.load offset=12 + local.set $$t14.3 + local.set $$t14.2 + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.2 + local.set $$t15 + local.get $$t15 + i32.const 0 + i32.gt_s + local.set $$t16 + local.get $$t16 + if + i32.const 1 + local.set $$block_selector + br $$BlockDisp + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 1 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$current_block + i32.const 5 + i32.eq + if(result i32) + local.get $$t17 + else + local.get $$t17 + end + end + local.set $$t18 + i32.const 4 + local.set $$current_block + local.get $$t18 + i32.const 1 + i32.add + local.set $$t17 + local.get $$t17 + local.get $$t9 + i32.lt_s + local.set $$t19 + local.get $$t19 + if + br $$Block_4 + else + i32.const 2 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 5 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load + call $runtime.Block.Retain + local.get $$t20.1 + i32.load offset=4 + local.get $$t20.1 + i32.load offset=8 + local.get $$t20.1 + i32.load offset=12 + local.set $$t21.3 + local.set $$t21.2 + local.set $$t21.1 + local.get $$t21.0 + call $runtime.Block.Release + local.set $$t21.0 + local.get $$t21.0 + call $runtime.Block.Retain + local.get $$t21.1 + i32.const 12 + local.get $$t17 + i32.mul + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.0 + call $runtime.Block.Retain + local.get $$t22.1 + i32.const 0 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load + call $runtime.Block.Retain + local.get $$t24.1 + i32.load offset=4 + local.get $$t24.1 + i32.load offset=8 + local.get $$t24.1 + i32.load offset=12 + local.set $$t25.3 + local.set $$t25.2 + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.0 + call $runtime.Block.Retain + local.get $$t25.1 + i32.const 12 + local.get $$t17 + i32.mul + i32.add + local.set $$t26.1 + local.get $$t26.0 + call $runtime.Block.Release + local.set $$t26.0 + local.get $$t26.0 + call $runtime.Block.Retain + local.get $$t26.1 + i32.const 0 + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t27.1 + i32.load + local.set $$t28 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t29.1 + i32.load + call $runtime.Block.Retain + local.get $$t29.1 + i32.load offset=4 + local.get $$t29.1 + i32.load offset=8 + local.get $$t29.1 + i32.load offset=12 + local.set $$t30.3 + local.set $$t30.2 + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + i32.const 12 + local.get $$t17 + i32.mul + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t31.0 + call $runtime.Block.Retain + local.get $$t31.1 + i32.const 8 + i32.add + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t32.1 + i32.load + local.set $$t33 + local.get $$t28 + local.get $$t33 + i32.add + local.set $$t34 + local.get $$t23.1 + local.get $$t34 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t35.1 + i32.load + call $runtime.Block.Retain + local.get $$t35.1 + i32.load offset=4 + local.get $$t35.1 + i32.load offset=8 + local.get $$t35.1 + i32.load offset=12 + local.set $$t36.3 + local.set $$t36.2 + local.set $$t36.1 + local.get $$t36.0 + call $runtime.Block.Release + local.set $$t36.0 + local.get $$t36.0 + call $runtime.Block.Retain + local.get $$t36.1 + i32.const 12 + local.get $$t17 + i32.mul + i32.add + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$t37.0 + call $runtime.Block.Retain + local.get $$t37.1 + i32.const 0 + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.1 + i32.load + local.set $$t39 + local.get $$t39 + i32.const 160 + i32.gt_s + local.set $$t40 + local.get $$t40 + if + br $$Block_5 + else + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 6 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.1 + i32.load + call $runtime.Block.Retain + local.get $$t41.1 + i32.load offset=4 + local.get $$t41.1 + i32.load offset=8 + local.get $$t41.1 + i32.load offset=12 + local.set $$t42.3 + local.set $$t42.2 + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t42.0 + call $runtime.Block.Retain + local.get $$t42.1 + i32.const 12 + local.get $$t17 + i32.mul + i32.add + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 0 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 80 + i32.add + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t45.1 + i32.load + local.get $$t45.1 + i32.load offset=4 + call $runtime.Block.Retain + local.get $$t45.1 + i32.load offset=8 + local.set $$t46.1.1 + local.get $$t46.1.0 + call $runtime.Block.Release + local.set $$t46.1.0 + local.set $$t46.0 + i32.const 40 + local.get $$t46.0 + local.get $$t46.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig1) + local.set $$t47 + i32.const 0 + local.get $$t47 + i32.sub + local.set $$t48 + local.get $$t48 + local.set $$t49 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 4 + i32.add + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 80 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.get $$t51.1 + i32.load offset=4 + call $runtime.Block.Retain + local.get $$t51.1 + i32.load offset=8 + local.set $$t52.1.1 + local.get $$t52.1.0 + call $runtime.Block.Release + local.set $$t52.1.0 + local.set $$t52.0 + i32.const 160 + local.get $$t52.0 + local.get $$t52.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig1) + local.set $$t53 + local.get $$t53 + local.set $$t54 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 8 + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 80 + i32.add + local.set $$t56.1 + local.get $$t56.0 + call $runtime.Block.Release + local.set $$t56.0 + local.get $$t56.1 + i32.load + local.get $$t56.1 + i32.load offset=4 + call $runtime.Block.Retain + local.get $$t56.1 + i32.load offset=8 + local.set $$t57.1.1 + local.get $$t57.1.0 + call $runtime.Block.Release + local.set $$t57.1.0 + local.set $$t57.0 + i32.const 4 + local.get $$t57.0 + local.get $$t57.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig1) + local.set $$t58 + local.get $$t58 + i32.const 1 + i32.add + local.set $$t59 + local.get $$t59 + local.set $$t60 + local.get $$t44.1 + local.get $$t49 + i32.store + local.get $$t50.1 + local.get $$t54 + i32.store + local.get $$t55.1 + local.get $$t60 + i32.store + i32.const 4 + local.set $$block_selector + br $$BlockDisp + end + i32.const 7 + local.set $$current_block + br $$BlockFnBody + end + i32.const 8 + local.set $$current_block + call $w4app.JustPressedGamepad1 + local.set $$t61 + local.get $$t61 + i32.const 0 + i32.eq + i32.eqz + local.set $$t62 + local.get $$t62 + if + br $$Block_11 + else + br $$Block_10 + end + end + i32.const 9 + local.set $$current_block + call $w4app.JustPressedGamepad1 + local.set $$t63 + local.get $$t63 + i32.const 0 + i32.eq + i32.eqz + local.set $$t64 + local.get $$t64 + if + br $$Block_28 + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 10 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 80 + i32.add + local.set $$t65.1 + local.get $$t65.0 + call $runtime.Block.Release + local.set $$t65.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 72 + i32.add + local.set $$t66.1 + local.get $$t66.0 + call $runtime.Block.Release + local.set $$t66.0 + local.get $$t66.1 + i64.load + local.set $$t67 + local.get $$t67 + i32.wrap_i64 + local.set $$t68 + local.get $$t68 + call $w4app.Random + local.set $$t69.1.1 + local.get $$t69.1.0 + call $runtime.Block.Release + local.set $$t69.1.0 + local.set $$t69.0 + local.get $$t65.1 + local.get $$t69.0 + i32.store + local.get $$t65.1 + local.get $$t69.1.0 + call $runtime.Block.Retain + local.get $$t65.1 + i32.load offset=4 align=1 + call $runtime.Block.Release + i32.store offset=4 align=1 + local.get $$t65.1 + local.get $$t69.1.1 + i32.store offset=8 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t70.1 + local.get $$t70.0 + call $runtime.Block.Release + local.set $$t70.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 80 + i32.add + local.set $$t71.1 + local.get $$t71.0 + call $runtime.Block.Release + local.set $$t71.0 + local.get $$t71.1 + i32.load + local.get $$t71.1 + i32.load offset=4 + call $runtime.Block.Retain + local.get $$t71.1 + i32.load offset=8 + local.set $$t72.1.1 + local.get $$t72.1.0 + call $runtime.Block.Release + local.set $$t72.1.0 + local.set $$t72.0 + i32.const 160 + local.get $$t72.0 + local.get $$t72.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig1) + local.set $$t73 + local.get $$t73 + i32.const 160 + i32.add + local.set $$t74 + local.get $$t74 + i32.const 12 + i32.mul + i32.const 16 + i32.add + call $runtime.HeapAlloc + local.get $$t74 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.get $$t74 + local.get $$t74 + local.set $$t75.3 + local.set $$t75.2 + local.set $$t75.1 + local.get $$t75.0 + call $runtime.Block.Release + local.set $$t75.0 + local.get $$t70.1 + local.get $$t75.0 + call $runtime.Block.Retain + local.get $$t70.1 + i32.load align=1 + call $runtime.Block.Release + i32.store align=1 + local.get $$t70.1 + local.get $$t75.1 + i32.store offset=4 + local.get $$t70.1 + local.get $$t75.2 + i32.store offset=8 + local.get $$t70.1 + local.get $$t75.3 + i32.store offset=12 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t76.1 + local.get $$t76.0 + call $runtime.Block.Release + local.set $$t76.0 + local.get $$t76.1 + i32.load + call $runtime.Block.Retain + local.get $$t76.1 + i32.load offset=4 + local.get $$t76.1 + i32.load offset=8 + local.get $$t76.1 + i32.load offset=12 + local.set $$t77.3 + local.set $$t77.2 + local.set $$t77.1 + local.get $$t77.0 + call $runtime.Block.Release + local.set $$t77.0 + local.get $$t77.2 + local.set $$t78 + br $$Block_12 + end + i32.const 11 + local.set $$current_block + local.get $$t61 + i32.const 16 + i32.eq + local.set $$t79 + local.get $$t79 + if + br $$Block_14 + else + br $$Block_16 + end + end + i32.const 12 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t80.1 + local.get $$t80.0 + call $runtime.Block.Release + local.set $$t80.0 + local.get $$t80.1 + i32.load + call $runtime.Block.Retain + local.get $$t80.1 + i32.load offset=4 + local.get $$t80.1 + i32.load offset=8 + local.get $$t80.1 + i32.load offset=12 + local.set $$t81.3 + local.set $$t81.2 + local.set $$t81.1 + local.get $$t81.0 + call $runtime.Block.Release + local.set $$t81.0 + local.get $$t81.2 + local.set $$t82 + local.get $$t82 + i32.const 1 + i32.lt_s + local.set $$t83 + local.get $$t83 + if + i32.const 10 + local.set $$block_selector + br $$BlockDisp + else + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + end + local.get $$current_block + i32.const 10 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$t84 + end + local.set $$t85 + i32.const 13 + local.set $$current_block + local.get $$t85 + i32.const 1 + i32.add + local.set $$t84 + local.get $$t84 + local.get $$t78 + i32.lt_s + local.set $$t86 + local.get $$t86 + if + br $$Block_13 + else + i32.const 11 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 14 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 92 + i32.add + local.set $$t87.1 + local.get $$t87.0 + call $runtime.Block.Release + local.set $$t87.0 + local.get $$t87.1 + i32.load + call $runtime.Block.Retain + local.get $$t87.1 + i32.load offset=4 + local.get $$t87.1 + i32.load offset=8 + local.get $$t87.1 + i32.load offset=12 + local.set $$t88.3 + local.set $$t88.2 + local.set $$t88.1 + local.get $$t88.0 + call $runtime.Block.Release + local.set $$t88.0 + local.get $$t88.0 + call $runtime.Block.Retain + local.get $$t88.1 + i32.const 12 + local.get $$t84 + i32.mul + i32.add + local.set $$t89.1 + local.get $$t89.0 + call $runtime.Block.Release + local.set $$t89.0 + local.get $$t89.0 + call $runtime.Block.Retain + local.get $$t89.1 + i32.const 0 + i32.add + local.set $$t90.1 + local.get $$t90.0 + call $runtime.Block.Release + local.set $$t90.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 80 + i32.add + local.set $$t91.1 + local.get $$t91.0 + call $runtime.Block.Release + local.set $$t91.0 + local.get $$t91.1 + i32.load + local.get $$t91.1 + i32.load offset=4 + call $runtime.Block.Retain + local.get $$t91.1 + i32.load offset=8 + local.set $$t92.1.1 + local.get $$t92.1.0 + call $runtime.Block.Release + local.set $$t92.1.0 + local.set $$t92.0 + i32.const 160 + local.get $$t92.0 + local.get $$t92.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig1) + local.set $$t93 + local.get $$t93 + local.set $$t94 + local.get $$t89.0 + call $runtime.Block.Retain + local.get $$t89.1 + i32.const 4 + i32.add + local.set $$t95.1 + local.get $$t95.0 + call $runtime.Block.Release + local.set $$t95.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 80 + i32.add + local.set $$t96.1 + local.get $$t96.0 + call $runtime.Block.Release + local.set $$t96.0 + local.get $$t96.1 + i32.load + local.get $$t96.1 + i32.load offset=4 + call $runtime.Block.Retain + local.get $$t96.1 + i32.load offset=8 + local.set $$t97.1.1 + local.get $$t97.1.0 + call $runtime.Block.Release + local.set $$t97.1.0 + local.set $$t97.0 + i32.const 160 + local.get $$t97.0 + local.get $$t97.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig1) + local.set $$t98 + local.get $$t98 + local.set $$t99 + local.get $$t89.0 + call $runtime.Block.Retain + local.get $$t89.1 + i32.const 8 + i32.add + local.set $$t100.1 + local.get $$t100.0 + call $runtime.Block.Release + local.set $$t100.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 80 + i32.add + local.set $$t101.1 + local.get $$t101.0 + call $runtime.Block.Release + local.set $$t101.0 + local.get $$t101.1 + i32.load + local.get $$t101.1 + i32.load offset=4 + call $runtime.Block.Retain + local.get $$t101.1 + i32.load offset=8 + local.set $$t102.1.1 + local.get $$t102.1.0 + call $runtime.Block.Release + local.set $$t102.1.0 + local.set $$t102.0 + i32.const 4 + local.get $$t102.0 + local.get $$t102.1.1 + global.set $$wa.runtime.closure_data + call_indirect 0 (type $$$fnSig1) + local.set $$t103 + local.get $$t103 + i32.const 1 + i32.add + local.set $$t104 + local.get $$t104 + local.set $$t105 + local.get $$t90.1 + local.get $$t94 + i32.store + local.get $$t95.1 + local.get $$t99 + i32.store + local.get $$t100.1 + local.get $$t105 + i32.store + i32.const 13 + local.set $$block_selector + br $$BlockDisp + end + i32.const 15 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t106.1 + local.get $$t106.0 + call $runtime.Block.Release + local.set $$t106.0 + local.get $$t106.0 + call $runtime.Block.Retain + local.get $$t106.1 + i32.const 0 + i32.add + local.set $$t107.1 + local.get $$t107.0 + call $runtime.Block.Release + local.set $$t107.0 + local.get $$t107.1 + i32.load + local.set $$t108 + local.get $$t108 + i32.const 1 + i32.sub + local.set $$t109 + local.get $$t107.1 + local.get $$t109 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t110.1 + local.get $$t110.0 + call $runtime.Block.Release + local.set $$t110.0 + local.get $$t110.0 + call $runtime.Block.Retain + local.get $$t110.1 + i32.const 0 + i32.add + local.set $$t111.1 + local.get $$t111.0 + call $runtime.Block.Release + local.set $$t111.0 + local.get $$t111.1 + i32.load + local.set $$t112 + local.get $$t112 + i32.const 0 + i32.lt_s + local.set $$t113 + local.get $$t113 + if + br $$Block_17 + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 16 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t114.1 + local.get $$t114.0 + call $runtime.Block.Release + local.set $$t114.0 + local.get $$t114.0 + call $runtime.Block.Retain + local.get $$t114.1 + i32.const 0 + i32.add + local.set $$t115.1 + local.get $$t115.0 + call $runtime.Block.Release + local.set $$t115.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t116.1 + local.get $$t116.0 + call $runtime.Block.Release + local.set $$t116.0 + local.get $$t116.0 + call $runtime.Block.Retain + local.get $$t116.1 + i32.const 0 + i32.add + local.set $$t117.1 + local.get $$t117.0 + call $runtime.Block.Release + local.set $$t117.0 + local.get $$t117.1 + i32.load + local.set $$t118 + local.get $$t118 + i32.const 1 + i32.add + local.set $$t119 + local.get $$t119 + i32.const 3 + i32.rem_s + local.set $$t120 + local.get $$t115.1 + local.get $$t120 + i32.store + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + i32.const 17 + local.set $$current_block + local.get $$t61 + i32.const 32 + i32.eq + local.set $$t121 + local.get $$t121 + if + i32.const 16 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_19 + end + end + i32.const 18 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t122.1 + local.get $$t122.0 + call $runtime.Block.Release + local.set $$t122.0 + local.get $$t122.0 + call $runtime.Block.Retain + local.get $$t122.1 + i32.const 0 + i32.add + local.set $$t123.1 + local.get $$t123.0 + call $runtime.Block.Release + local.set $$t123.0 + local.get $$t123.1 + i32.const 2 + i32.store + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + i32.const 19 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t124.1 + local.get $$t124.0 + call $runtime.Block.Release + local.set $$t124.0 + local.get $$t124.0 + call $runtime.Block.Retain + local.get $$t124.1 + i32.const 4 + i32.add + local.set $$t125.1 + local.get $$t125.0 + call $runtime.Block.Release + local.set $$t125.0 + local.get $$t125.1 + i32.load + local.set $$t126 + local.get $$t126 + i32.const 1 + i32.sub + local.set $$t127 + local.get $$t125.1 + local.get $$t127 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t128.1 + local.get $$t128.0 + call $runtime.Block.Release + local.set $$t128.0 + local.get $$t128.0 + call $runtime.Block.Retain + local.get $$t128.1 + i32.const 4 + i32.add + local.set $$t129.1 + local.get $$t129.0 + call $runtime.Block.Release + local.set $$t129.0 + local.get $$t129.1 + i32.load + local.set $$t130 + local.get $$t130 + i32.const 0 + i32.lt_s + local.set $$t131 + local.get $$t131 + if + br $$Block_22 + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 20 + local.set $$current_block + local.get $$t61 + i32.const 64 + i32.eq + local.set $$t132 + local.get $$t132 + if + i32.const 19 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_21 + end + end + i32.const 21 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t133.1 + local.get $$t133.0 + call $runtime.Block.Release + local.set $$t133.0 + local.get $$t133.0 + call $runtime.Block.Retain + local.get $$t133.1 + i32.const 4 + i32.add + local.set $$t134.1 + local.get $$t134.0 + call $runtime.Block.Release + local.set $$t134.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t135.1 + local.get $$t135.0 + call $runtime.Block.Release + local.set $$t135.0 + local.get $$t135.0 + call $runtime.Block.Retain + local.get $$t135.1 + i32.const 4 + i32.add + local.set $$t136.1 + local.get $$t136.0 + call $runtime.Block.Release + local.set $$t136.0 + local.get $$t136.1 + i32.load + local.set $$t137 + local.get $$t137 + i32.const 1 + i32.add + local.set $$t138 + local.get $$t138 + i32.const 3 + i32.rem_s + local.set $$t139 + local.get $$t134.1 + local.get $$t139 + i32.store + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + i32.const 22 + local.set $$current_block + local.get $$t61 + i32.const 128 + i32.eq + local.set $$t140 + local.get $$t140 + if + i32.const 21 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_24 + end + end + i32.const 23 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t141.1 + local.get $$t141.0 + call $runtime.Block.Release + local.set $$t141.0 + local.get $$t141.0 + call $runtime.Block.Retain + local.get $$t141.1 + i32.const 4 + i32.add + local.set $$t142.1 + local.get $$t142.0 + call $runtime.Block.Release + local.set $$t142.0 + local.get $$t142.1 + i32.const 2 + i32.store + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + i32.const 24 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t143.1 + local.get $$t143.0 + call $runtime.Block.Release + local.set $$t143.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t144.1 + local.get $$t144.0 + call $runtime.Block.Release + local.set $$t144.0 + local.get $$t144.0 + call $runtime.Block.Retain + local.get $$t144.1 + i32.const 0 + i32.add + local.set $$t145.1 + local.get $$t145.0 + call $runtime.Block.Release + local.set $$t145.0 + local.get $$t145.1 + i32.load + local.set $$t146 + local.get $$t143.0 + call $runtime.Block.Retain + local.get $$t143.1 + i32.const 12 + local.get $$t146 + i32.mul + i32.add + local.set $$t147.1 + local.get $$t147.0 + call $runtime.Block.Release + local.set $$t147.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t148.1 + local.get $$t148.0 + call $runtime.Block.Release + local.set $$t148.0 + local.get $$t148.0 + call $runtime.Block.Retain + local.get $$t148.1 + i32.const 4 + i32.add + local.set $$t149.1 + local.get $$t149.0 + call $runtime.Block.Release + local.set $$t149.0 + local.get $$t149.1 + i32.load + local.set $$t150 + local.get $$t147.0 + call $runtime.Block.Retain + local.get $$t147.1 + i32.const 4 + local.get $$t150 + i32.mul + i32.add + local.set $$t151.1 + local.get $$t151.0 + call $runtime.Block.Release + local.set $$t151.0 + local.get $$t151.1 + i32.load + local.set $$t152 + local.get $$t152 + i32.const 0 + i32.eq + local.set $$t153 + local.get $$t153 + if + br $$Block_27 + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 25 + local.set $$current_block + local.get $$t61 + i32.const 1 + i32.eq + local.set $$t154 + local.get $$t154 + if + i32.const 24 + local.set $$block_selector + br $$BlockDisp + else + br $$Block_26 + end + end + i32.const 26 + local.set $$current_block + local.get $this.0 + local.get $this.1 + call $w4app.Game.CPU + local.set $$t155.1 + local.set $$t155.0 + local.get $$t155.0 + local.set $$t156 + local.get $$t155.1 + local.set $$t157 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t158.1 + local.get $$t158.0 + call $runtime.Block.Release + local.set $$t158.0 + local.get $$t158.0 + call $runtime.Block.Retain + local.get $$t158.1 + i32.const 0 + i32.add + local.set $$t159.1 + local.get $$t159.0 + call $runtime.Block.Release + local.set $$t159.0 + local.get $$t158.0 + call $runtime.Block.Retain + local.get $$t158.1 + i32.const 4 + i32.add + local.set $$t160.1 + local.get $$t160.0 + call $runtime.Block.Release + local.set $$t160.0 + local.get $$t159.1 + local.get $$t156 + i32.store + local.get $$t160.1 + local.get $$t157 + i32.store + local.get $this.0 + local.get $this.1 + local.get $$t156 + local.get $$t157 + call $w4app.Game.Move + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + i32.const 27 + local.set $$current_block + local.get $$t61 + i32.const 2 + i32.eq + local.set $$t161 + local.get $$t161 + if + i32.const 26 + local.set $$block_selector + br $$BlockDisp + else + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + i32.const 28 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t162.1 + local.get $$t162.0 + call $runtime.Block.Release + local.set $$t162.0 + local.get $$t162.0 + call $runtime.Block.Retain + local.get $$t162.1 + i32.const 0 + i32.add + local.set $$t163.1 + local.get $$t163.0 + call $runtime.Block.Release + local.set $$t163.0 + local.get $$t163.1 + i32.load + local.set $$t164 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 40 + i32.add + local.set $$t165.1 + local.get $$t165.0 + call $runtime.Block.Release + local.set $$t165.0 + local.get $$t165.0 + call $runtime.Block.Retain + local.get $$t165.1 + i32.const 4 + i32.add + local.set $$t166.1 + local.get $$t166.0 + call $runtime.Block.Release + local.set $$t166.0 + local.get $$t166.1 + i32.load + local.set $$t167 + local.get $this.0 + local.get $this.1 + local.get $$t164 + local.get $$t167 + call $w4app.Game.Move + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + i32.const 29 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t168.1 + local.get $$t168.0 + call $runtime.Block.Release + local.set $$t168.0 + local.get $$t168.0 + call $runtime.Block.Retain + local.get $$t168.1 + i32.const 12 + i32.const 0 + i32.mul + i32.add + local.set $$t169.1 + local.get $$t169.0 + call $runtime.Block.Release + local.set $$t169.0 + local.get $$t169.0 + call $runtime.Block.Retain + local.get $$t169.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t170.1 + local.get $$t170.0 + call $runtime.Block.Release + local.set $$t170.0 + local.get $$t169.0 + call $runtime.Block.Retain + local.get $$t169.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t171.1 + local.get $$t171.0 + call $runtime.Block.Release + local.set $$t171.0 + local.get $$t169.0 + call $runtime.Block.Retain + local.get $$t169.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t172.1 + local.get $$t172.0 + call $runtime.Block.Release + local.set $$t172.0 + local.get $$t168.0 + call $runtime.Block.Retain + local.get $$t168.1 + i32.const 12 + i32.const 1 + i32.mul + i32.add + local.set $$t173.1 + local.get $$t173.0 + call $runtime.Block.Release + local.set $$t173.0 + local.get $$t173.0 + call $runtime.Block.Retain + local.get $$t173.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t174.1 + local.get $$t174.0 + call $runtime.Block.Release + local.set $$t174.0 + local.get $$t173.0 + call $runtime.Block.Retain + local.get $$t173.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t175.1 + local.get $$t175.0 + call $runtime.Block.Release + local.set $$t175.0 + local.get $$t173.0 + call $runtime.Block.Retain + local.get $$t173.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t176.1 + local.get $$t176.0 + call $runtime.Block.Release + local.set $$t176.0 + local.get $$t168.0 + call $runtime.Block.Retain + local.get $$t168.1 + i32.const 12 + i32.const 2 + i32.mul + i32.add + local.set $$t177.1 + local.get $$t177.0 + call $runtime.Block.Release + local.set $$t177.0 + local.get $$t177.0 + call $runtime.Block.Retain + local.get $$t177.1 + i32.const 4 + i32.const 0 + i32.mul + i32.add + local.set $$t178.1 + local.get $$t178.0 + call $runtime.Block.Release + local.set $$t178.0 + local.get $$t177.0 + call $runtime.Block.Retain + local.get $$t177.1 + i32.const 4 + i32.const 1 + i32.mul + i32.add + local.set $$t179.1 + local.get $$t179.0 + call $runtime.Block.Release + local.set $$t179.0 + local.get $$t177.0 + call $runtime.Block.Retain + local.get $$t177.1 + i32.const 4 + i32.const 2 + i32.mul + i32.add + local.set $$t180.1 + local.get $$t180.0 + call $runtime.Block.Release + local.set $$t180.0 + local.get $$t170.1 + i32.const 0 + i32.store + local.get $$t171.1 + i32.const 0 + i32.store + local.get $$t172.1 + i32.const 0 + i32.store + local.get $$t174.1 + i32.const 0 + i32.store + local.get $$t175.1 + i32.const 0 + i32.store + local.get $$t176.1 + i32.const 0 + i32.store + local.get $$t178.1 + i32.const 0 + i32.store + local.get $$t179.1 + i32.const 0 + i32.store + local.get $$t180.1 + i32.const 0 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 36 + i32.add + local.set $$t181.1 + local.get $$t181.0 + call $runtime.Block.Release + local.set $$t181.0 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t182.1 + local.get $$t182.0 + call $runtime.Block.Release + local.set $$t182.0 + local.get $$t182.1 + i32.load + local.set $$t183 + local.get $$t183 + i32.const 2 + i32.rem_s + local.set $$t184 + local.get $$t184 + i32.const 1 + i32.add + local.set $$t185 + local.get $$t181.1 + local.get $$t185 + i32.store + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 56 + i32.add + local.set $$t186.1 + local.get $$t186.0 + call $runtime.Block.Release + local.set $$t186.0 + local.get $$t186.1 + i32.const 0 + i32.store + i32.const 7 + local.set $$block_selector + br $$BlockDisp + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t7.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t10.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t21.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t26.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t36.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t46.1.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t52.1.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + local.get $$t56.0 + call $runtime.Block.Release + local.get $$t57.1.0 + call $runtime.Block.Release + local.get $$t65.0 + call $runtime.Block.Release + local.get $$t66.0 + call $runtime.Block.Release + local.get $$t69.1.0 + call $runtime.Block.Release + local.get $$t70.0 + call $runtime.Block.Release + local.get $$t71.0 + call $runtime.Block.Release + local.get $$t72.1.0 + call $runtime.Block.Release + local.get $$t75.0 + call $runtime.Block.Release + local.get $$t76.0 + call $runtime.Block.Release + local.get $$t77.0 + call $runtime.Block.Release + local.get $$t80.0 + call $runtime.Block.Release + local.get $$t81.0 + call $runtime.Block.Release + local.get $$t87.0 + call $runtime.Block.Release + local.get $$t88.0 + call $runtime.Block.Release + local.get $$t89.0 + call $runtime.Block.Release + local.get $$t90.0 + call $runtime.Block.Release + local.get $$t91.0 + call $runtime.Block.Release + local.get $$t92.1.0 + call $runtime.Block.Release + local.get $$t95.0 + call $runtime.Block.Release + local.get $$t96.0 + call $runtime.Block.Release + local.get $$t97.1.0 + call $runtime.Block.Release + local.get $$t100.0 + call $runtime.Block.Release + local.get $$t101.0 + call $runtime.Block.Release + local.get $$t102.1.0 + call $runtime.Block.Release + local.get $$t106.0 + call $runtime.Block.Release + local.get $$t107.0 + call $runtime.Block.Release + local.get $$t110.0 + call $runtime.Block.Release + local.get $$t111.0 + call $runtime.Block.Release + local.get $$t114.0 + call $runtime.Block.Release + local.get $$t115.0 + call $runtime.Block.Release + local.get $$t116.0 + call $runtime.Block.Release + local.get $$t117.0 + call $runtime.Block.Release + local.get $$t122.0 + call $runtime.Block.Release + local.get $$t123.0 + call $runtime.Block.Release + local.get $$t124.0 + call $runtime.Block.Release + local.get $$t125.0 + call $runtime.Block.Release + local.get $$t128.0 + call $runtime.Block.Release + local.get $$t129.0 + call $runtime.Block.Release + local.get $$t133.0 + call $runtime.Block.Release + local.get $$t134.0 + call $runtime.Block.Release + local.get $$t135.0 + call $runtime.Block.Release + local.get $$t136.0 + call $runtime.Block.Release + local.get $$t141.0 + call $runtime.Block.Release + local.get $$t142.0 + call $runtime.Block.Release + local.get $$t143.0 + call $runtime.Block.Release + local.get $$t144.0 + call $runtime.Block.Release + local.get $$t145.0 + call $runtime.Block.Release + local.get $$t147.0 + call $runtime.Block.Release + local.get $$t148.0 + call $runtime.Block.Release + local.get $$t149.0 + call $runtime.Block.Release + local.get $$t151.0 + call $runtime.Block.Release + local.get $$t158.0 + call $runtime.Block.Release + local.get $$t159.0 + call $runtime.Block.Release + local.get $$t160.0 + call $runtime.Block.Release + local.get $$t162.0 + call $runtime.Block.Release + local.get $$t163.0 + call $runtime.Block.Release + local.get $$t165.0 + call $runtime.Block.Release + local.get $$t166.0 + call $runtime.Block.Release + local.get $$t168.0 + call $runtime.Block.Release + local.get $$t169.0 + call $runtime.Block.Release + local.get $$t170.0 + call $runtime.Block.Release + local.get $$t171.0 + call $runtime.Block.Release + local.get $$t172.0 + call $runtime.Block.Release + local.get $$t173.0 + call $runtime.Block.Release + local.get $$t174.0 + call $runtime.Block.Release + local.get $$t175.0 + call $runtime.Block.Release + local.get $$t176.0 + call $runtime.Block.Release + local.get $$t177.0 + call $runtime.Block.Release + local.get $$t178.0 + call $runtime.Block.Release + local.get $$t179.0 + call $runtime.Block.Release + local.get $$t180.0 + call $runtime.Block.Release + local.get $$t181.0 + call $runtime.Block.Release + local.get $$t182.0 + call $runtime.Block.Release + local.get $$t186.0 + call $runtime.Block.Release + ) + (func $w4app.Letter.Draw (param $this.0 i32) (param $this.1 i32) (param $X i32) (param $Y i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1.0 i32) + (local $$t7.1.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15.0 i32) + (local $$t15.1 i32) + (local $$t16 i32) + (local $$t17 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20.0 i32) + (local $$t20.1 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25.0 i32) + (local $$t25.1 i32) + (local $$t26 i32) + (local $$t27 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30.0 i32) + (local $$t30.1 i32) + (local $$t31.0 i32) + (local $$t31.1 i32) + (local $$t32.0 i32) + (local $$t32.1 i32) + (local $$t32.2 i32) + (local $$t32.3 i32) + (local $$t33 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37.0 i32) + (local $$t37.1 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41.0 i32) + (local $$t41.1 i32) + (local $$t42.0 i32) + (local $$t42.1 i32) + (local $$t43 i32) + (local $$t44 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $this.1 + i32.load + call $runtime.Block.Retain + local.get $this.1 + i32.load offset=4 + local.get $this.1 + i32.load offset=8 + local.get $this.1 + i32.load offset=12 + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.2 + local.set $$t2 + br $$Block_0 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$t3 + end + local.set $$t4 + i32.const 1 + local.set $$current_block + local.get $$t4 + i32.const 1 + i32.add + local.set $$t3 + local.get $$t3 + local.get $$t2 + i32.lt_s + local.set $$t5 + local.get $$t5 + if + br $$Block_1 + else + br $$Block_2 + end + end + i32.const 2 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 12 + local.get $$t3 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.get $$t6.1 + i32.load offset=4 + local.get $$t6.1 + i32.load offset=8 + local.set $$t7.1.1 + local.set $$t7.1.0 + local.set $$t7.0 + local.get $$t0.1 + local.get $$t7.0 + i32.store + local.get $$t0.1 + local.get $$t7.1.0 + i32.store offset=4 + local.get $$t0.1 + local.get $$t7.1.1 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 0 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load + local.set $$t10 + local.get $$t10 + i32.const 8 + i32.mul + local.set $$t11 + local.get $X + i32.const 8 + i32.mul + local.set $$t12 + local.get $$t11 + local.get $$t12 + i32.add + local.set $$t13 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.0 + call $runtime.Block.Retain + local.get $$t14.1 + i32.const 4 + i32.add + local.set $$t15.1 + local.get $$t15.0 + call $runtime.Block.Release + local.set $$t15.0 + local.get $$t15.1 + i32.load + local.set $$t16 + local.get $$t16 + i32.const 8 + i32.mul + local.set $$t17 + local.get $Y + i32.const 8 + i32.mul + local.set $$t18 + local.get $$t17 + local.get $$t18 + i32.add + local.set $$t19 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t20.1 + local.get $$t20.0 + call $runtime.Block.Release + local.set $$t20.0 + local.get $$t20.1 + i32.load + local.set $$t21 + local.get $$t21 + i32.const 12 + i32.rem_s + local.set $$t22 + local.get $$t22 + local.set $$t23 + local.get $$t23 + i32.const 8 + i32.mul + local.set $$t24 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t25.1 + local.get $$t25.0 + call $runtime.Block.Release + local.set $$t25.0 + local.get $$t25.1 + i32.load + local.set $$t26 + local.get $$t26 + i32.const 12 + i32.div_s + local.set $$t27 + local.get $$t27 + local.set $$t28 + local.get $$t28 + i32.const 8 + i32.mul + local.set $$t29 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t30.1 + local.get $$t30.0 + call $runtime.Block.Release + local.set $$t30.0 + local.get $$t30.0 + call $runtime.Block.Retain + local.get $$t30.1 + i32.const 0 + i32.add + local.set $$t31.1 + local.get $$t31.0 + call $runtime.Block.Release + local.set $$t31.0 + local.get $$t31.1 + i32.load + call $runtime.Block.Retain + local.get $$t31.1 + i32.load offset=4 + local.get $$t31.1 + i32.load offset=8 + local.get $$t31.1 + i32.load offset=12 + local.set $$t32.3 + local.set $$t32.2 + local.set $$t32.1 + local.get $$t32.0 + call $runtime.Block.Release + local.set $$t32.0 + local.get $$t13 + local.set $$t33 + local.get $$t19 + local.set $$t34 + local.get $$t24 + local.set $$t35 + local.get $$t29 + local.set $$t36 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t37.1 + local.get $$t37.0 + call $runtime.Block.Release + local.set $$t37.0 + local.get $$t37.0 + call $runtime.Block.Retain + local.get $$t37.1 + i32.const 16 + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.1 + i32.load + local.set $$t39 + local.get $$t39 + local.set $$t40 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t41.1 + local.get $$t41.0 + call $runtime.Block.Release + local.set $$t41.0 + local.get $$t41.0 + call $runtime.Block.Retain + local.get $$t41.1 + i32.const 24 + i32.add + local.set $$t42.1 + local.get $$t42.0 + call $runtime.Block.Release + local.set $$t42.0 + local.get $$t42.1 + i32.load + local.set $$t43 + local.get $$t43 + local.set $$t44 + local.get $$t32.0 + local.get $$t32.1 + local.get $$t32.2 + local.get $$t32.3 + local.get $$t33 + local.get $$t34 + i32.const 8 + i32.const 8 + local.get $$t35 + local.get $$t36 + local.get $$t40 + local.get $$t44 + call $syscall$wasm4.BlitSubI32 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t15.0 + call $runtime.Block.Release + local.get $$t20.0 + call $runtime.Block.Release + local.get $$t25.0 + call $runtime.Block.Release + local.get $$t30.0 + call $runtime.Block.Release + local.get $$t31.0 + call $runtime.Block.Release + local.get $$t32.0 + call $runtime.Block.Release + local.get $$t37.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t41.0 + call $runtime.Block.Release + local.get $$t42.0 + call $runtime.Block.Release + ) + (func $w4app.Player.Draw (param $this.0 i32) (param $this.1 i32) (param $pos.0 i32) (param $pos.1 i32) (param $win i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t2.0 i32) + (local $$t2.1 i32) + (local $$t2.2 i32) + (local $$t2.3 i32) + (local $$t3.0 i32) + (local $$t3.1 i32) + (local $$t4.0 i32) + (local $$t4.1 i32) + (local $$t4.2 i32) + (local $$t4.3 i32) + (local $$t5.0 i32) + (local $$t5.1 i32) + (local $$t5.2 i32) + (local $$t5.3 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7 i32) + (local $$t8 i32) + (local $$t9 i32) + (local $$t10 i32) + (local $$t11.0 i32) + (local $$t11.1 i32) + (local $$t12.0 i32) + (local $$t12.1.0 i32) + (local $$t12.1.1 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22 i32) + (local $$t23.0 i32) + (local $$t23.1 i32) + (local $$t24.0 i32) + (local $$t24.1 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28 i32) + (local $$t29 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33.0 i32) + (local $$t33.1 i32) + (local $$t34 i32) + (local $$t35 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39 i32) + (local $$t40 i32) + (local $$t41 i32) + (local $$t42 i32) + (local $$t43.0 i32) + (local $$t43.1 i32) + (local $$t44.0 i32) + (local $$t44.1 i32) + (local $$t45.0 i32) + (local $$t45.1 i32) + (local $$t45.2 i32) + (local $$t45.3 i32) + (local $$t46 i32) + (local $$t47 i32) + (local $$t48 i32) + (local $$t49 i32) + (local $$t50.0 i32) + (local $$t50.1 i32) + (local $$t51.0 i32) + (local $$t51.1 i32) + (local $$t52 i32) + (local $$t53 i32) + (local $$t54.0 i32) + (local $$t54.1 i32) + (local $$t55.0 i32) + (local $$t55.1 i32) + (local $$t56 i32) + (local $$t57 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_5 + block $$Block_4 + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 4 5 0 + end + i32.const 0 + local.set $$current_block + i32.const 24 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 8 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $$t0.1 + local.get $pos.0 + i32.store + local.get $$t0.1 + local.get $pos.1 + i32.store offset=4 + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 0 + i32.add + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.1 + i32.load + call $runtime.Block.Retain + local.get $$t1.1 + i32.load offset=4 + local.get $$t1.1 + i32.load offset=8 + local.get $$t1.1 + i32.load offset=12 + local.set $$t2.3 + local.set $$t2.2 + local.set $$t2.1 + local.get $$t2.0 + call $runtime.Block.Release + local.set $$t2.0 + local.get $win + if + br $$Block_0 + else + br $$Block_1 + end + end + i32.const 1 + local.set $$current_block + local.get $this.0 + call $runtime.Block.Retain + local.get $this.1 + i32.const 16 + i32.add + local.set $$t3.1 + local.get $$t3.0 + call $runtime.Block.Release + local.set $$t3.0 + local.get $$t3.1 + i32.load + call $runtime.Block.Retain + local.get $$t3.1 + i32.load offset=4 + local.get $$t3.1 + i32.load offset=8 + local.get $$t3.1 + i32.load offset=12 + local.set $$t4.3 + local.set $$t4.2 + local.set $$t4.1 + local.get $$t4.0 + call $runtime.Block.Release + local.set $$t4.0 + br $$Block_1 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32 i32 i32 i32) + local.get $$t2.0 + call $runtime.Block.Retain + local.get $$t2.1 + local.get $$t2.2 + local.get $$t2.3 + else + local.get $$t4.0 + call $runtime.Block.Retain + local.get $$t4.1 + local.get $$t4.2 + local.get $$t4.3 + end + local.set $$t5.3 + local.set $$t5.2 + local.set $$t5.1 + local.get $$t5.0 + call $runtime.Block.Release + local.set $$t5.0 + i32.const 2 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t5.2 + local.set $$t7 + br $$Block_2 + end + local.get $$current_block + i32.const 2 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$t8 + end + local.set $$t9 + i32.const 3 + local.set $$current_block + local.get $$t9 + i32.const 1 + i32.add + local.set $$t8 + local.get $$t8 + local.get $$t7 + i32.lt_s + local.set $$t10 + local.get $$t10 + if + br $$Block_3 + else + br $$Block_4 + end + end + i32.const 4 + local.set $$current_block + local.get $$t5.0 + call $runtime.Block.Retain + local.get $$t5.1 + i32.const 12 + local.get $$t8 + i32.mul + i32.add + local.set $$t11.1 + local.get $$t11.0 + call $runtime.Block.Release + local.set $$t11.0 + local.get $$t11.1 + i32.load + local.get $$t11.1 + i32.load offset=4 + local.get $$t11.1 + i32.load offset=8 + local.set $$t12.1.1 + local.set $$t12.1.0 + local.set $$t12.0 + local.get $$t6.1 + local.get $$t12.0 + i32.store + local.get $$t6.1 + local.get $$t12.1.0 + i32.store offset=4 + local.get $$t6.1 + local.get $$t12.1.1 + i32.store offset=8 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 4 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.0 + call $runtime.Block.Retain + local.get $$t13.1 + i32.const 0 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.1 + i32.load + local.set $$t15 + local.get $$t15 + i32.const 8 + i32.mul + local.set $$t16 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + i32.load + local.set $$t18 + local.get $$t18 + i32.const 6 + i32.mul + local.set $$t19 + local.get $$t19 + i32.const 2 + i32.add + local.set $$t20 + local.get $$t20 + i32.const 8 + i32.mul + local.set $$t21 + local.get $$t16 + local.get $$t21 + i32.add + local.set $$t22 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 4 + i32.add + local.set $$t23.1 + local.get $$t23.0 + call $runtime.Block.Release + local.set $$t23.0 + local.get $$t23.0 + call $runtime.Block.Retain + local.get $$t23.1 + i32.const 4 + i32.add + local.set $$t24.1 + local.get $$t24.0 + call $runtime.Block.Release + local.set $$t24.0 + local.get $$t24.1 + i32.load + local.set $$t25 + local.get $$t25 + i32.const 8 + i32.mul + local.set $$t26 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t27.1 + i32.load + local.set $$t28 + local.get $$t28 + i32.const 6 + i32.mul + local.set $$t29 + local.get $$t29 + i32.const 2 + i32.add + local.set $$t30 + local.get $$t30 + i32.const 8 + i32.mul + local.set $$t31 + local.get $$t26 + local.get $$t31 + i32.add + local.set $$t32 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 0 + i32.add + local.set $$t33.1 + local.get $$t33.0 + call $runtime.Block.Release + local.set $$t33.0 + local.get $$t33.1 + i32.load + local.set $$t34 + local.get $$t34 + i32.const 12 + i32.rem_s + local.set $$t35 + local.get $$t35 + local.set $$t36 + local.get $$t36 + i32.const 8 + i32.mul + local.set $$t37 + local.get $$t6.0 + call $runtime.Block.Retain + local.get $$t6.1 + i32.const 0 + i32.add + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.1 + i32.load + local.set $$t39 + local.get $$t39 + i32.const 12 + i32.div_s + local.set $$t40 + local.get $$t40 + local.set $$t41 + local.get $$t41 + i32.const 8 + i32.mul + local.set $$t42 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t43.1 + local.get $$t43.0 + call $runtime.Block.Release + local.set $$t43.0 + local.get $$t43.0 + call $runtime.Block.Retain + local.get $$t43.1 + i32.const 0 + i32.add + local.set $$t44.1 + local.get $$t44.0 + call $runtime.Block.Release + local.set $$t44.0 + local.get $$t44.1 + i32.load + call $runtime.Block.Retain + local.get $$t44.1 + i32.load offset=4 + local.get $$t44.1 + i32.load offset=8 + local.get $$t44.1 + i32.load offset=12 + local.set $$t45.3 + local.set $$t45.2 + local.set $$t45.1 + local.get $$t45.0 + call $runtime.Block.Release + local.set $$t45.0 + local.get $$t22 + local.set $$t46 + local.get $$t32 + local.set $$t47 + local.get $$t37 + local.set $$t48 + local.get $$t42 + local.set $$t49 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t50.1 + local.get $$t50.0 + call $runtime.Block.Release + local.set $$t50.0 + local.get $$t50.0 + call $runtime.Block.Retain + local.get $$t50.1 + i32.const 16 + i32.add + local.set $$t51.1 + local.get $$t51.0 + call $runtime.Block.Release + local.set $$t51.0 + local.get $$t51.1 + i32.load + local.set $$t52 + local.get $$t52 + local.set $$t53 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t54.1 + local.get $$t54.0 + call $runtime.Block.Release + local.set $$t54.0 + local.get $$t54.0 + call $runtime.Block.Retain + local.get $$t54.1 + i32.const 24 + i32.add + local.set $$t55.1 + local.get $$t55.0 + call $runtime.Block.Release + local.set $$t55.0 + local.get $$t55.1 + i32.load + local.set $$t56 + local.get $$t56 + local.set $$t57 + local.get $$t45.0 + local.get $$t45.1 + local.get $$t45.2 + local.get $$t45.3 + local.get $$t46 + local.get $$t47 + i32.const 8 + i32.const 8 + local.get $$t48 + local.get $$t49 + local.get $$t53 + local.get $$t57 + call $syscall$wasm4.BlitSubI32 + i32.const 3 + local.set $$block_selector + br $$BlockDisp + end + i32.const 5 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t2.0 + call $runtime.Block.Release + local.get $$t3.0 + call $runtime.Block.Release + local.get $$t4.0 + call $runtime.Block.Release + local.get $$t5.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t11.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t23.0 + call $runtime.Block.Release + local.get $$t24.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t33.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t43.0 + call $runtime.Block.Release + local.get $$t44.0 + call $runtime.Block.Release + local.get $$t45.0 + call $runtime.Block.Release + local.get $$t50.0 + call $runtime.Block.Release + local.get $$t51.0 + call $runtime.Block.Release + local.get $$t54.0 + call $runtime.Block.Release + local.get $$t55.0 + call $runtime.Block.Release + ) + (func $w4app.Next.Draw (param $this.0 i32) (param $this.1 i32) + (local $$block_selector i32) + (local $$current_block i32) + (local $$t0.0 i32) + (local $$t0.1 i32) + (local $$t1.0 i32) + (local $$t1.1 i32) + (local $$t1.2 i32) + (local $$t1.3 i32) + (local $$t2 i32) + (local $$t3 i32) + (local $$t4 i32) + (local $$t5 i32) + (local $$t6.0 i32) + (local $$t6.1 i32) + (local $$t7.0 i32) + (local $$t7.1.0 i32) + (local $$t7.1.1 i32) + (local $$t8.0 i32) + (local $$t8.1 i32) + (local $$t9.0 i32) + (local $$t9.1 i32) + (local $$t10 i32) + (local $$t11 i32) + (local $$t12 i32) + (local $$t13.0 i32) + (local $$t13.1 i32) + (local $$t14.0 i32) + (local $$t14.1 i32) + (local $$t15 i32) + (local $$t16 i32) + (local $$t17.0 i32) + (local $$t17.1 i32) + (local $$t18 i32) + (local $$t19 i32) + (local $$t20 i32) + (local $$t21 i32) + (local $$t22.0 i32) + (local $$t22.1 i32) + (local $$t23 i32) + (local $$t24 i32) + (local $$t25 i32) + (local $$t26 i32) + (local $$t27.0 i32) + (local $$t27.1 i32) + (local $$t28.0 i32) + (local $$t28.1 i32) + (local $$t29.0 i32) + (local $$t29.1 i32) + (local $$t29.2 i32) + (local $$t29.3 i32) + (local $$t30 i32) + (local $$t31 i32) + (local $$t32 i32) + (local $$t33 i32) + (local $$t34.0 i32) + (local $$t34.1 i32) + (local $$t35.0 i32) + (local $$t35.1 i32) + (local $$t36 i32) + (local $$t37 i32) + (local $$t38.0 i32) + (local $$t38.1 i32) + (local $$t39.0 i32) + (local $$t39.1 i32) + (local $$t40 i32) + (local $$t41 i32) + block $$BlockFnBody + loop $$BlockDisp + block $$Block_3 + block $$Block_2 + block $$Block_1 + block $$Block_0 + block $$BlockSel + local.get $$block_selector + br_table 0 1 2 3 0 + end + i32.const 0 + local.set $$current_block + i32.const 28 + call $runtime.HeapAlloc + i32.const 1 + i32.const 0 + i32.const 12 + call $runtime.Block.Init + call $runtime.DupI32 + i32.const 16 + i32.add + local.set $$t0.1 + local.get $$t0.0 + call $runtime.Block.Release + local.set $$t0.0 + local.get $this.1 + i32.load + call $runtime.Block.Retain + local.get $this.1 + i32.load offset=4 + local.get $this.1 + i32.load offset=8 + local.get $this.1 + i32.load offset=12 + local.set $$t1.3 + local.set $$t1.2 + local.set $$t1.1 + local.get $$t1.0 + call $runtime.Block.Release + local.set $$t1.0 + local.get $$t1.2 + local.set $$t2 + br $$Block_0 + end + local.get $$current_block + i32.const 0 + i32.eq + if(result i32) + i32.const -1 + else + local.get $$t3 + end + local.set $$t4 + i32.const 1 + local.set $$current_block + local.get $$t4 + i32.const 1 + i32.add + local.set $$t3 + local.get $$t3 + local.get $$t2 + i32.lt_s + local.set $$t5 + local.get $$t5 + if + br $$Block_1 + else + br $$Block_2 + end + end + i32.const 2 + local.set $$current_block + local.get $$t1.0 + call $runtime.Block.Retain + local.get $$t1.1 + i32.const 12 + local.get $$t3 + i32.mul + i32.add + local.set $$t6.1 + local.get $$t6.0 + call $runtime.Block.Release + local.set $$t6.0 + local.get $$t6.1 + i32.load + local.get $$t6.1 + i32.load offset=4 + local.get $$t6.1 + i32.load offset=8 + local.set $$t7.1.1 + local.set $$t7.1.0 + local.set $$t7.0 + local.get $$t0.1 + local.get $$t7.0 + i32.store + local.get $$t0.1 + local.get $$t7.1.0 + i32.store offset=4 + local.get $$t0.1 + local.get $$t7.1.1 + i32.store offset=8 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t8.1 + local.get $$t8.0 + call $runtime.Block.Release + local.set $$t8.0 + local.get $$t8.0 + call $runtime.Block.Retain + local.get $$t8.1 + i32.const 0 + i32.add + local.set $$t9.1 + local.get $$t9.0 + call $runtime.Block.Release + local.set $$t9.0 + local.get $$t9.1 + i32.load + local.set $$t10 + local.get $$t10 + i32.const 8 + i32.mul + local.set $$t11 + local.get $$t11 + i32.const 40 + i32.add + local.set $$t12 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 4 + i32.add + local.set $$t13.1 + local.get $$t13.0 + call $runtime.Block.Release + local.set $$t13.0 + local.get $$t13.0 + call $runtime.Block.Retain + local.get $$t13.1 + i32.const 4 + i32.add + local.set $$t14.1 + local.get $$t14.0 + call $runtime.Block.Release + local.set $$t14.0 + local.get $$t14.1 + i32.load + local.set $$t15 + local.get $$t15 + i32.const 8 + i32.mul + local.set $$t16 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t17.1 + local.get $$t17.0 + call $runtime.Block.Release + local.set $$t17.0 + local.get $$t17.1 + i32.load + local.set $$t18 + local.get $$t18 + i32.const 12 + i32.rem_s + local.set $$t19 + local.get $$t19 + local.set $$t20 + local.get $$t20 + i32.const 8 + i32.mul + local.set $$t21 + local.get $$t0.0 + call $runtime.Block.Retain + local.get $$t0.1 + i32.const 0 + i32.add + local.set $$t22.1 + local.get $$t22.0 + call $runtime.Block.Release + local.set $$t22.0 + local.get $$t22.1 + i32.load + local.set $$t23 + local.get $$t23 + i32.const 12 + i32.div_s + local.set $$t24 + local.get $$t24 + local.set $$t25 + local.get $$t25 + i32.const 8 + i32.mul + local.set $$t26 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t27.1 + local.get $$t27.0 + call $runtime.Block.Release + local.set $$t27.0 + local.get $$t27.0 + call $runtime.Block.Retain + local.get $$t27.1 + i32.const 0 + i32.add + local.set $$t28.1 + local.get $$t28.0 + call $runtime.Block.Release + local.set $$t28.0 + local.get $$t28.1 + i32.load + call $runtime.Block.Retain + local.get $$t28.1 + i32.load offset=4 + local.get $$t28.1 + i32.load offset=8 + local.get $$t28.1 + i32.load offset=12 + local.set $$t29.3 + local.set $$t29.2 + local.set $$t29.1 + local.get $$t29.0 + call $runtime.Block.Release + local.set $$t29.0 + local.get $$t12 + local.set $$t30 + local.get $$t16 + local.set $$t31 + local.get $$t21 + local.set $$t32 + local.get $$t26 + local.set $$t33 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t34.1 + local.get $$t34.0 + call $runtime.Block.Release + local.set $$t34.0 + local.get $$t34.0 + call $runtime.Block.Retain + local.get $$t34.1 + i32.const 16 + i32.add + local.set $$t35.1 + local.get $$t35.0 + call $runtime.Block.Release + local.set $$t35.0 + local.get $$t35.1 + i32.load + local.set $$t36 + local.get $$t36 + local.set $$t37 + i32.const 15044 + i32.load + call $runtime.Block.Retain + i32.const 15044 + i32.load offset=4 + local.set $$t38.1 + local.get $$t38.0 + call $runtime.Block.Release + local.set $$t38.0 + local.get $$t38.0 + call $runtime.Block.Retain + local.get $$t38.1 + i32.const 24 + i32.add + local.set $$t39.1 + local.get $$t39.0 + call $runtime.Block.Release + local.set $$t39.0 + local.get $$t39.1 + i32.load + local.set $$t40 + local.get $$t40 + local.set $$t41 + local.get $$t29.0 + local.get $$t29.1 + local.get $$t29.2 + local.get $$t29.3 + local.get $$t30 + local.get $$t31 + i32.const 8 + i32.const 8 + local.get $$t32 + local.get $$t33 + local.get $$t37 + local.get $$t41 + call $syscall$wasm4.BlitSubI32 + i32.const 1 + local.set $$block_selector + br $$BlockDisp + end + i32.const 3 + local.set $$current_block + br $$BlockFnBody + end + end + end + local.get $$t0.0 + call $runtime.Block.Release + local.get $$t1.0 + call $runtime.Block.Release + local.get $$t6.0 + call $runtime.Block.Release + local.get $$t8.0 + call $runtime.Block.Release + local.get $$t9.0 + call $runtime.Block.Release + local.get $$t13.0 + call $runtime.Block.Release + local.get $$t14.0 + call $runtime.Block.Release + local.get $$t17.0 + call $runtime.Block.Release + local.get $$t22.0 + call $runtime.Block.Release + local.get $$t27.0 + call $runtime.Block.Release + local.get $$t28.0 + call $runtime.Block.Release + local.get $$t29.0 + call $runtime.Block.Release + local.get $$t34.0 + call $runtime.Block.Release + local.get $$t35.0 + call $runtime.Block.Release + local.get $$t38.0 + call $runtime.Block.Release + local.get $$t39.0 + call $runtime.Block.Release + ) + (func $_start (export "_start") + call $w4app.init + ) + (func $_main (export "_main")) + (data (i32.const 14784) "\24\24\77\61\64\73\24\24\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\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\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\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\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\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\30\61\73\73\65\72\74\20\66\61\69\6c\65\64\20\28\61\73\73\65\72\74\20\66\61\69\6c\65\64\3a\20\6e\69\6c\20\6d\61\70\2e\6d\61\70\2e\77\61\3a\32\30\3a\38\70\61\6e\69\63\3a\20\74\72\75\65\66\61\6c\73\65\4e\61\4e\2b\49\6e\66\2d\49\6e\66\30\31\32\33\34\35\36\37\38\39\61\62\63\64\65\66\0a\5b\2f\5d\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\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\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\01\00\00\00\ff\ff\ff\ff\70\43\00\00") + (elem (i32.const 1) $$string.$$compAddr) + (elem (i32.const 2) $$u8.$$block.$$onFree) + (elem (i32.const 3) $$string.underlying.$$onFree) + (elem (i32.const 4) $$void.$$block.$$onFree) + (elem (i32.const 5) $$void.$ref.underlying.$$onFree) + (elem (i32.const 6) $$i`0`.underlying.$$onFree) + (elem (i32.const 7) $$runtime.mapNode.$$onFree) + (elem (i32.const 8) $$runtime.mapNode.$$block.$$onFree) + (elem (i32.const 9) $$runtime.mapNode.$slice.underlying.$$onFree) + (elem (i32.const 10) $$runtime.mapImp.$$onFree) + (elem (i32.const 11) $$runtime.mapImp.$$block.$$onFree) + (elem (i32.const 12) $$runtime.mapImp.$ref.underlying.$$onFree) + (elem (i32.const 13) $$runtime.mapIter.$$onFree) + (elem (i32.const 14) $$runtime.mapNode.$array1.underlying.$$onFree) + (elem (i32.const 15) $w4app.Random$1.$warpfn) + (elem (i32.const 16) $$u32.$$block.$$onFree) + (elem (i32.const 17) $$u32.$ref.underlying.$$onFree) + (elem (i32.const 18) $$w4app.Random$1.$warpdata.$$onFree) + (elem (i32.const 19) $$u8.$slice.underlying.$$onFree) + (elem (i32.const 20) $$w4app.Sprite.$$onFree) + (elem (i32.const 21) $$$u32$$$u32$$.underlying.$$onFree) + (elem (i32.const 22) $$w4app.Star.$$block.$$onFree) + (elem (i32.const 23) $$w4app.Star.$slice.underlying.$$onFree) + (elem (i32.const 24) $$i`1`.underlying.$$onFree) + (elem (i32.const 25) $$w4app.Game.$$onFree) + (elem (i32.const 26) $$w4app.Tile.$$block.$$onFree) + (elem (i32.const 27) $$w4app.Tile.$slice.underlying.$$onFree) + (elem (i32.const 28) $$w4app.Player.$array2.underlying.$$onFree) + (elem (i32.const 29) $$w4app.Next.underlying.$$onFree) + (elem (i32.const 30) $$w4app.Next.$array2.underlying.$$onFree) +) diff --git a/w4-tic-tac-toe/wasm4.css b/w4-tic-tac-toe/wasm4.css new file mode 100644 index 00000000..7c7e0155 --- /dev/null +++ b/w4-tic-tac-toe/wasm4.css @@ -0,0 +1 @@ +html,body{height:100%;margin:0}@font-face{font-family:wasm4-font;src:url(data:font/woff2;base64,d09GMgABAAAAAAegAA0AAAAAKHwAAAdOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYGYAA0CAQRCArGHLlRC4FCAAE2AiQDgUIEIAWDJgcgG4ggUVRQhkQRbBylAWCR/eGAmzBgcbVSEQV1MFRs8Ts/TVirjdcmzZum+foZqYGq4TdA2FbzSDx8f5+ee7Ns74fim/BWoE4AP1Wwc6lakA20VO54RMrR2gpfsF97s/P3xKMD8UIkBZNFk2ondPz/n9v9G4ROvGcJ9ejaJw8RK4kYUOt8zO4KgUDgofBQGDwMCjsf2FAHKMuSxfQKGICKTqpw8TAYfHywFNs02zbbJDAgUAD+z7l4byADjcSJjXhAkX+V15z5PA0HfmEHdHqW5OfXT1PsVLlV5AkPgm14EPW/1ds0nWuhRkHhmb/7JBfdZazTpbTGMrxynHPs9XO634fF7LHGGYvKrld7xSsgpTyfJqABJJGiNEP0JXXyPy/gUd+Oq0QckHKAEocXne/KDv7oOwSG0MMrDDRgQ0HCAFZ0Ar7LFhgi+t39/2Lzv/+fFLDLD/G/EugBH+CBbj+wXA/giv6ofkm3ZAqiNhrXlgkd4AIQwJg18/ES0QEKIZXedNDpbH9FmDzLD3D97q2rzT3TRXdngPKMRazVYXWiUtlpVnZTprWt4J6wbQiLK7o/u+vhZr91OWHc2/gH+Qyq505NGWB7ui1DWkl94VWLPsznaf1Socl++32X0B1fLASbyLYi6TAO6LlJoPwXg5YAIDQZ2GxXd7yaLzKdTNrAjkIbD1Sca4fUrWmNr+IUViUJVbuuu66KDZXmnH4fMCQ5ukPCRJDdgit52b4Et5RuCK2ZjuBXWu6K6zJkW4qAxA6Y0BWJpS9UgZPLQ3iSuQWAodKrD1VK44bhgApzKGely9pyBS45qWsGAx7ELrGRNkqZX2rpG1no3KgrF9zv29HXdcAmEYpTeqXQunmcM1KNLri1l3ETKhr/jkuZpYQWCtMUkAOA+G31Ezc8TlQCcX0AFiJM8A/Ja5ANNF3s+Aj1HaR91PPZwCslbEBH81Bta7KBGjhAdpteqxIHxKrVrglxhbYG0qRrxPwYd+RA3LtpvfDZhqQKKExdOI4SSCr8hboPCCdUxuYcsLQ2TWw8XO+W8S8kg28tTsGhGLgAGRwq7qpSd5XiJn8+0m7km8BBpAhQ5rqdtpQ58nsk6UVIA1DbFmX+klm8NFI+mk+Ll5BXDAY1ZsGRNeDGIUiLnIISx8u1n++kPlx5KbJLJOSiIDP1dfY4drhKlPE7oTwc9gEI5vBFDpQ2ih/QCB4V+GrFeAMbdFltBSpSqZm9jTuVVM1CVTyG+Haj1uZhNOXIU0xda+WccPIV0vAyy13AXHS7odKqX6lPnNQW29uptFF7hjud+bei1obGQ3mmpvE7YI+21Nlt7iq+tVb3XTcUFG5q31u2uVI1qvk971yZ+/NvzpZV1dNa7Wrems+vXZ7G0bjYrBMdM44xvrdfytxyouoAmPMIUnc0H1njzFfrgVdARZ2VnWXVw+0qv/fX8iYj698zzrSTOlorbpYF7dsMJFE7yW5kV/NV/wwJ/6VW+S3vk6u7s/frQR4kpi7JSQUksyJhl0BSNPS65eUmD+i8UGEYHhd5zmQA0oU5xN+qs8fdwfJZAQaqNDFTgSowOASAVTi4nNRD5CwJVyFK13cHxDEeWVQDvZU3CfsgXuwhIGxxAGE3sxM1QNCL5oTRpAtVec0/pJXNfeLQLO+973quQzeYBhK7GMFx18+4DtE1AX90lFeaawcfPwKbh9CZncWGRig514Ca6r5aIcMk1u7R7OyRfIjVldpkv/8QTig8xMfDoNqXMmPq6rWqoKMWvmXNIhNcLI1TokIhQLNwOGTfZxXWtBtNJFOwSQNl+3DGVwiBVU4+Oq0FeJi5E8VTE1ABD05R60ZWTc49DS4M1nMCCzmZSm7M8UWDSoiGvZPrWrGYd4bKvbh8oXu1Pnv2vrfKud0bz5t2kT7Ti8FNP4L9IJy/PdAULtKZAlxz2FahwUZvcI6aZm61UI4qEJ3XUpHb3NZcIBs7HYrbHf7GgFYvCv4JTMlVK5o9e10zmwVpEoUbhD8pWxVbCX6xdKM4RGTiZ/2PaYEZMh7uAHi1vTTwNaeeqsmWeoX+fERAY8Dlq8IlZUVTrzi35D7ANkN8liq6UConAkh2mBUCA+jNZ4cnuXvJDuFGvEUlaWfzT5MjGonslkNYRjXtmwJEQgbrm1xCr4/AZMWbVPGZ3SvOH9q/AaXqXNGRhP+VuL2mvmu8/zv9BnB5l14cMu1MBSJ04++6QDnTv1bPp6oZnRul1ORTFVkMUlS1LsSh2h2L41VW44wWXcvRhJYwoLfn7pCnX7rB3Zs4otOwC568tbQs/egw8kfbjvhpM06nOc/rWqbg7EicnAydmY7O4nomxNHJws4WxYXFJFGl55716GhGRqqjKI9kp3x0+aiPQqzthaSFKiR6LmZAzFysLXdGb3rZfIi6TEU7jgcy2geINtNWQpaBCnYWTmxqWDw0wzgfrJvzphPhoIstcvGIzuZO4UN1requPbF1HWhqLtgPf3YiwnTA/xIgKAA=)} diff --git a/w4-tic-tac-toe/wasm4.js b/w4-tic-tac-toe/wasm4.js new file mode 100644 index 00000000..e13db97d --- /dev/null +++ b/w4-tic-tac-toe/wasm4.js @@ -0,0 +1,360 @@ +var wasm4=function(A){"use strict";/** + * @license + * Copyright 2019 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */var ve;const pt=globalThis,_t=pt.ShadowRoot&&(pt.ShadyCSS===void 0||pt.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,St=Symbol(),Dt=new WeakMap;let Nt=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==St)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(_t&&t===void 0){const s=e!==void 0&&e.length===1;s&&(t=Dt.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&Dt.set(e,t))}return t}toString(){return this.cssText}};const _e=o=>new Nt(typeof o=="string"?o:o+"",void 0,St),ft=(o,...t)=>{const e=o.length===1?o[0]:t.reduce((s,i,n)=>s+(r=>{if(r._$cssResult$===!0)return r.cssText;if(typeof r=="number")return r;throw Error("Value passed to 'css' function must be a 'css' function result: "+r+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+o[n+1],o[0]);return new Nt(e,o,St)},Se=(o,t)=>{if(_t)o.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(const e of t){const s=document.createElement("style"),i=pt.litNonce;i!==void 0&&s.setAttribute("nonce",i),s.textContent=e.cssText,o.appendChild(s)}},Bt=_t?o=>o:o=>o instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return _e(e)})(o):o;/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const{is:xe,defineProperty:ke,getOwnPropertyDescriptor:Ce,getOwnPropertyNames:Te,getOwnPropertySymbols:Pe,getPrototypeOf:$e}=Object,U=globalThis,Ft=U.trustedTypes,Ie=Ft?Ft.emptyScript:"",xt=U.reactiveElementPolyfillSupport,tt=(o,t)=>o,mt={toAttribute(o,t){switch(t){case Boolean:o=o?Ie:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,t){let e=o;switch(t){case Boolean:e=o!==null;break;case Number:e=o===null?null:Number(o);break;case Object:case Array:try{e=JSON.parse(o)}catch{e=null}}return e}},kt=(o,t)=>!xe(o,t),Ht={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),U.litPropertyMetadata??(U.litPropertyMetadata=new WeakMap);class Y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=Ht){if(e.state&&(e.attribute=!1),this._$Ei(),this.elementProperties.set(t,e),!e.noAccessor){const s=Symbol(),i=this.getPropertyDescriptor(t,s,e);i!==void 0&&ke(this.prototype,t,i)}}static getPropertyDescriptor(t,e,s){const{get:i,set:n}=Ce(this.prototype,t)??{get(){return this[e]},set(r){this[e]=r}};return{get(){return i==null?void 0:i.call(this)},set(r){const c=i==null?void 0:i.call(this);n.call(this,r),this.requestUpdate(t,c,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Ht}static _$Ei(){if(this.hasOwnProperty(tt("elementProperties")))return;const t=$e(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(tt("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(tt("properties"))){const e=this.properties,s=[...Te(e),...Pe(e)];for(const i of s)this.createProperty(i,e[i])}const t=this[Symbol.metadata];if(t!==null){const e=litPropertyMetadata.get(t);if(e!==void 0)for(const[s,i]of e)this.elementProperties.set(s,i)}this._$Eh=new Map;for(const[e,s]of this.elementProperties){const i=this._$Eu(e,s);i!==void 0&&this._$Eh.set(i,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const i of s)e.unshift(Bt(i))}else t!==void 0&&e.push(Bt(t));return e}static _$Eu(t,e){const s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var t;this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),(t=this.constructor.l)==null||t.forEach(e=>e(this))}addController(t){var e;(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&((e=t.hostConnected)==null||e.call(t))}removeController(t){var e;(e=this._$EO)==null||e.delete(t)}_$E_(){const t=new Map,e=this.constructor.elementProperties;for(const s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Se(t,this.constructor.elementStyles),t}connectedCallback(){var t;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostConnected)==null?void 0:s.call(e)})}enableUpdating(t){}disconnectedCallback(){var t;(t=this._$EO)==null||t.forEach(e=>{var s;return(s=e.hostDisconnected)==null?void 0:s.call(e)})}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$EC(t,e){var n;const s=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,s);if(i!==void 0&&s.reflect===!0){const r=(((n=s.converter)==null?void 0:n.toAttribute)!==void 0?s.converter:mt).toAttribute(e,s.type);this._$Em=t,r==null?this.removeAttribute(i):this.setAttribute(i,r),this._$Em=null}}_$AK(t,e){var n;const s=this.constructor,i=s._$Eh.get(t);if(i!==void 0&&this._$Em!==i){const r=s.getPropertyOptions(i),c=typeof r.converter=="function"?{fromAttribute:r.converter}:((n=r.converter)==null?void 0:n.fromAttribute)!==void 0?r.converter:mt;this._$Em=i,this[i]=c.fromAttribute(e,r.type),this._$Em=null}}requestUpdate(t,e,s){if(t!==void 0){if(s??(s=this.constructor.getPropertyOptions(t)),!(s.hasChanged??kt)(this[t],e))return;this.P(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$ET())}P(t,e,s){this._$AL.has(t)||this._$AL.set(t,e),s.reflect===!0&&this._$Em!==t&&(this._$Ej??(this._$Ej=new Set)).add(t)}async _$ET(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var s;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[n,r]of this._$Ep)this[n]=r;this._$Ep=void 0}const i=this.constructor.elementProperties;if(i.size>0)for(const[n,r]of i)r.wrapped!==!0||this._$AL.has(n)||this[n]===void 0||this.P(n,this[n],r)}let t=!1;const e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),(s=this._$EO)==null||s.forEach(i=>{var n;return(n=i.hostUpdate)==null?void 0:n.call(i)}),this.update(e)):this._$EU()}catch(i){throw t=!1,this._$EU(),i}t&&this._$AE(e)}willUpdate(t){}_$AE(t){var e;(e=this._$EO)==null||e.forEach(s=>{var i;return(i=s.hostUpdated)==null?void 0:i.call(s)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Ej&&(this._$Ej=this._$Ej.forEach(e=>this._$EC(e,this[e]))),this._$EU()}updated(t){}firstUpdated(t){}}Y.elementStyles=[],Y.shadowRootOptions={mode:"open"},Y[tt("elementProperties")]=new Map,Y[tt("finalized")]=new Map,xt==null||xt({ReactiveElement:Y}),(U.reactiveElementVersions??(U.reactiveElementVersions=[])).push("2.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const et=globalThis,yt=et.trustedTypes,Gt=yt?yt.createPolicy("lit-html",{createHTML:o=>o}):void 0,Wt="$lit$",O=`lit$${(Math.random()+"").slice(9)}$`,zt="?"+O,Ue=`<${zt}>`,D=document,st=()=>D.createComment(""),it=o=>o===null||typeof o!="object"&&typeof o!="function",Vt=Array.isArray,Oe=o=>Vt(o)||typeof(o==null?void 0:o[Symbol.iterator])=="function",Ct=`[ +\f\r]`,nt=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,jt=/-->/g,Yt=/>/g,N=RegExp(`>|${Ct}(?:([^\\s"'>=/]+)(${Ct}*=${Ct}*(?:[^ +\f\r"'\`<>=]|("|')|))|$)`,"g"),Kt=/'/g,qt=/"/g,Xt=/^(?:script|style|textarea|title)$/i,Me=o=>(t,...e)=>({_$litType$:o,strings:t,values:e}),C=Me(1),K=Symbol.for("lit-noChange"),S=Symbol.for("lit-nothing"),Jt=new WeakMap,B=D.createTreeWalker(D,129);function Zt(o,t){if(!Array.isArray(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return Gt!==void 0?Gt.createHTML(t):t}const Le=(o,t)=>{const e=o.length-1,s=[];let i,n=t===2?"":"",r=nt;for(let c=0;c"?(r=i??nt,d=-1):l[1]===void 0?d=-2:(d=r.lastIndex-l[2].length,h=l[1],r=l[3]===void 0?N:l[3]==='"'?qt:Kt):r===qt||r===Kt?r=N:r===jt||r===Yt?r=nt:(r=N,i=void 0);const w=r===N&&o[c+1].startsWith("/>")?" ":"";n+=r===nt?a+Ue:d>=0?(s.push(h),a.slice(0,d)+Wt+a.slice(d)+O+w):a+O+(d===-2?c:w)}return[Zt(o,n+(o[e]||"")+(t===2?"":"")),s]};class rt{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let n=0,r=0;const c=t.length-1,a=this.parts,[h,l]=Le(t,e);if(this.el=rt.createElement(h,s),B.currentNode=this.el.content,e===2){const d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(i=B.nextNode())!==null&&a.length0){i.textContent=yt?yt.emptyScript:"";for(let w=0;w2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=S}_$AI(t,e=this,s,i){const n=this.strings;let r=!1;if(n===void 0)t=q(this,t,e,0),r=!it(t)||t!==this._$AH&&t!==K,r&&(this._$AH=t);else{const c=t;let a,h;for(t=n[0],a=0;a{const s=(e==null?void 0:e.renderBefore)??t;let i=s._$litPart$;if(i===void 0){const n=(e==null?void 0:e.renderBefore)??null;s._$litPart$=i=new ot(t.insertBefore(st(),n),n,void 0,e??{})}return i._$AI(o),i};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */class M extends Y{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;const t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=He(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Do)==null||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Do)==null||t.setConnected(!1)}render(){return K}}M._$litElement$=!0,M.finalized=!0,(ve=globalThis.litElementHydrateSupport)==null||ve.call(globalThis,{LitElement:M});const Pt=globalThis.litElementPolyfillSupport;Pt==null||Pt({LitElement:M}),(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.0.4");/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const bt=o=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(o,t)}):customElements.define(o,t)};/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Ge={attribute:!0,type:String,converter:mt,reflect:!1,hasChanged:kt},We=(o=Ge,t,e)=>{const{kind:s,metadata:i}=e;let n=globalThis.litPropertyMetadata.get(i);if(n===void 0&&globalThis.litPropertyMetadata.set(i,n=new Map),n.set(e.name,o),s==="accessor"){const{name:r}=e;return{set(c){const a=t.get.call(this);t.set.call(this,c),this.requestUpdate(r,a,o)},init(c){return c!==void 0&&this.P(r,void 0,o),c}}}if(s==="setter"){const{name:r}=e;return function(c){const a=this[r];t.call(this,c),this.requestUpdate(r,a,o)}}throw Error("Unsupported decorator location: "+s)};function ze(o){return(t,e)=>typeof e=="object"?We(o,t,e):((s,i,n)=>{const r=i.hasOwnProperty(n);return i.constructor.createProperty(n,r?{...s,wrapped:!0}:s),r?Object.getOwnPropertyDescriptor(i,n):void 0})(o,t,e)}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function at(o){return ze({...o,state:!0,attribute:!1})}/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */const Qt=(o,t,e)=>(e.configurable=!0,e.enumerable=!0,Reflect.decorate&&typeof t!="object"&&Object.defineProperty(o,t,e),e);/** + * @license + * Copyright 2017 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function ct(o,t){return(e,s,i)=>{const n=r=>{var c;return((c=r.renderRoot)==null?void 0:c.querySelector(o))??null};if(t){const{get:r,set:c}=typeof s=="object"?e:i??(()=>{const a=Symbol();return{get(){return this[a]},set(h){this[a]=h}}})();return Qt(e,s,{get(){let a=r.call(this);return a===void 0&&(a=n(this),(a!==null||this.hasUpdated)&&c.call(this,a)),a}})}return Qt(e,s,{get(){return n(this)}})}}const E=160,x=160,X=1024,Ve="WASM-4",je=[14743759,8831084,3172432,464929],$t=4,lt=20,Ye=22,te=26,ee=28,Ke=30,qe=31,Xe=32,Je=160,L=1,F=2,J=16,Z=32,H=64,G=128,Ze=1,Qe=2,se=1,ie=2,ts=Uint8Array.of(255,255,255,255,255,255,255,255,199,199,199,207,207,255,207,255,147,147,147,255,255,255,255,255,147,1,147,147,147,1,147,255,239,131,47,131,233,3,239,255,157,91,55,239,217,181,115,255,143,39,39,143,37,51,129,255,207,207,207,255,255,255,255,255,243,231,207,207,207,231,243,255,159,207,231,231,231,207,159,255,255,147,199,1,199,147,255,255,255,231,231,129,231,231,255,255,255,255,255,255,255,207,207,159,255,255,255,129,255,255,255,255,255,255,255,255,255,207,207,255,253,251,247,239,223,191,127,255,199,179,57,57,57,155,199,255,231,199,231,231,231,231,129,255,131,57,241,195,135,31,1,255,129,243,231,195,249,57,131,255,227,195,147,51,1,243,243,255,3,63,3,249,249,57,131,255,195,159,63,3,57,57,131,255,1,57,243,231,207,207,207,255,135,59,27,135,97,121,131,255,131,57,57,129,249,243,135,255,255,207,207,255,207,207,255,255,255,207,207,255,207,207,159,255,243,231,207,159,207,231,243,255,255,255,1,255,1,255,255,255,159,207,231,243,231,207,159,255,131,1,57,243,199,255,199,255,131,125,69,85,65,127,131,255,199,147,57,57,1,57,57,255,3,57,57,3,57,57,3,255,195,153,63,63,63,153,195,255,7,51,57,57,57,51,7,255,1,63,63,3,63,63,1,255,1,63,63,3,63,63,63,255,193,159,63,49,57,153,193,255,57,57,57,1,57,57,57,255,129,231,231,231,231,231,129,255,249,249,249,249,249,57,131,255,57,51,39,15,7,35,49,255,159,159,159,159,159,159,129,255,57,17,1,1,41,57,57,255,57,25,9,1,33,49,57,255,131,57,57,57,57,57,131,255,3,57,57,57,3,63,63,255,131,57,57,57,33,51,133,255,3,57,57,49,7,35,49,255,135,51,63,131,249,57,131,255,129,231,231,231,231,231,231,255,57,57,57,57,57,57,131,255,57,57,57,17,131,199,239,255,57,57,41,1,1,17,57,255,57,17,131,199,131,17,57,255,153,153,153,195,231,231,231,255,1,241,227,199,143,31,1,255,195,207,207,207,207,207,195,255,127,191,223,239,247,251,253,255,135,231,231,231,231,231,135,255,199,147,255,255,255,255,255,255,255,255,255,255,255,255,255,1,239,247,255,255,255,255,255,255,255,255,131,249,129,57,129,255,63,63,3,57,57,57,131,255,255,255,129,63,63,63,129,255,249,249,129,57,57,57,129,255,255,255,131,57,1,63,131,255,241,231,129,231,231,231,231,255,255,255,129,57,57,129,249,131,63,63,3,57,57,57,57,255,231,255,199,231,231,231,129,255,243,255,227,243,243,243,243,135,63,63,49,3,7,35,49,255,199,231,231,231,231,231,129,255,255,255,3,73,73,73,73,255,255,255,3,57,57,57,57,255,255,255,131,57,57,57,131,255,255,255,3,57,57,3,63,63,255,255,129,57,57,129,249,249,255,255,145,143,159,159,159,255,255,255,131,63,131,249,3,255,231,231,129,231,231,231,231,255,255,255,57,57,57,57,129,255,255,255,153,153,153,195,231,255,255,255,73,73,73,73,129,255,255,255,57,1,199,1,57,255,255,255,57,57,57,129,249,131,255,255,1,227,199,143,1,255,243,231,231,207,231,231,243,255,231,231,231,231,231,231,231,255,159,207,207,231,207,207,159,255,255,255,143,69,227,255,255,255,255,255,255,255,255,147,147,255,131,41,41,17,41,41,131,255,131,57,9,17,33,57,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,131,17,33,125,33,17,131,255,131,17,9,125,9,17,131,255,131,17,57,85,17,17,131,255,131,17,17,85,57,17,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,231,255,231,231,199,199,199,255,239,131,41,47,41,131,239,255,195,153,159,3,159,159,1,255,255,165,219,219,219,165,255,255,153,153,195,129,231,129,231,255,231,231,231,255,231,231,231,255,195,153,135,219,225,153,195,255,147,255,255,255,255,255,255,255,195,189,102,94,94,102,189,195,135,195,147,195,255,255,255,255,255,201,147,39,147,201,255,255,255,255,129,249,249,255,255,255,255,255,255,255,255,255,255,255,195,189,70,90,70,90,189,195,131,255,255,255,255,255,255,255,239,215,239,255,255,255,255,255,231,231,129,231,231,255,129,255,199,243,231,195,255,255,255,255,195,231,243,199,255,255,255,255,247,239,255,255,255,255,255,255,255,255,51,51,51,51,9,63,193,149,181,149,193,245,245,255,255,255,255,207,207,255,255,255,255,255,255,255,255,255,247,207,231,199,231,195,255,255,255,255,199,147,147,199,255,255,255,255,255,39,147,201,147,39,255,255,189,59,183,173,217,177,125,255,189,59,183,169,221,187,113,255,29,187,215,45,217,177,125,255,199,255,199,159,57,1,131,255,223,239,199,147,57,1,57,255,247,239,199,147,57,1,57,255,199,147,199,147,57,1,57,255,203,167,199,147,57,1,57,255,147,255,199,147,57,1,57,255,239,215,199,147,57,1,57,255,193,135,39,33,7,39,33,255,195,153,63,63,153,195,247,207,223,239,1,63,3,63,1,255,247,239,1,63,3,63,1,255,199,147,1,63,3,63,1,255,147,255,1,63,3,63,1,255,239,247,129,231,231,231,129,255,247,239,129,231,231,231,129,255,231,195,129,231,231,231,129,255,153,255,129,231,231,231,129,255,135,147,153,9,153,147,135,255,203,167,25,9,1,33,49,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,187,215,239,215,187,255,255,131,57,49,41,25,57,131,255,223,239,57,57,57,57,131,255,247,239,57,57,57,57,131,255,199,147,255,57,57,57,131,255,147,255,57,57,57,57,131,255,247,239,153,153,195,231,231,255,63,3,57,57,57,3,63,255,195,153,153,147,153,137,147,255,223,239,131,249,129,57,129,255,247,239,131,249,129,57,129,255,199,147,131,249,129,57,129,255,203,167,131,249,129,57,129,255,147,255,131,249,129,57,129,255,239,215,131,249,129,57,129,255,255,255,131,233,129,47,131,255,255,255,129,63,63,129,247,207,223,239,131,57,1,63,131,255,247,239,131,57,1,63,131,255,199,147,131,57,1,63,131,255,147,255,131,57,1,63,131,255,223,239,255,199,231,231,129,255,247,239,255,199,231,231,129,255,199,147,255,199,231,231,129,255,147,255,199,231,231,231,129,255,155,135,103,131,57,57,131,255,203,167,3,57,57,57,57,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,231,255,129,255,231,255,255,255,255,131,49,41,25,131,255,223,239,57,57,57,57,129,255,247,239,57,57,57,57,129,255,199,147,255,57,57,57,129,255,147,255,57,57,57,57,129,255,247,239,57,57,57,129,249,131,63,63,3,57,57,3,63,63,147,255,57,57,57,129,249,131);function It(o){const t=new URL(location.href),e=t.searchParams.get(o);return e??new URL(t.hash.substring(1),"https://x").searchParams.get(o)}function ne(){if(document.fullscreenElement==null){let o=function(){const e=window.frameElement;e&&(e.style.position="fixed",e.style.top="0",e.style.left="0",e.style.zIndex="99999",e.style.width="100%",e.style.height="100%")};const t=document.body.requestFullscreen&&document.body.requestFullscreen({navigationUI:"hide"});t?t.catch(o):o()}}async function es(o){try{await navigator.clipboard.writeText(o)}catch{let t=document.createElement("dialog");t.title="Netplay URL",t.textContent=o,document.body.append(t);let e=document.createElement("button");e.textContent="Copy",e.style.marginLeft="1em",e.onclick=()=>navigator.clipboard.writeText(o),t.appendChild(e);let s=document.createElement("button");s.textContent="Close",s.style.marginLeft="1em",s.onclick=()=>{document.body.removeChild(t)},t.appendChild(s),t.showModal()}}const ss="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#".split(""),re=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0];function oe(o){const t=o.length,e=t%4,s=e?t+4-e:t;let i="",n=0,r=0;for(;n=1;){const h=Math.floor(r/a)%85;i+=ss[h],a/=85}r=0}}return i}function ae(o,t){let e=0,s=0,i=0;const n=o.length,r=t.length;if(o.length%5==0)for(;s=re.length)return e;if(i=i*85+re[c],s%5==0){let a=16777216;for(;a>=1;){if(e>=r)return e;t[e++]=i/a%256,a/=256}i=0}}return e}class ht{constructor(){this.memory=new ArrayBuffer(65536),this.globals={},this.diskBuffer=new ArrayBuffer(X),this.diskSize=0}read(t){new Uint8Array(this.memory).set(new Uint8Array(t.memory.buffer)),this.globals={};for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&(this.globals[e]=s.value.toString())}this.diskSize=t.diskSize,new Uint8Array(this.diskBuffer).set(new Uint8Array(t.diskBuffer,0,t.diskSize))}write(t){new Uint8Array(t.memory.buffer).set(new Uint8Array(this.memory));for(const e in t.wasm.exports){const s=t.wasm.exports[e];s instanceof WebAssembly.Global&&e in this.globals&&(s.value=this.globals[e])}t.diskSize=this.diskSize,new Uint8Array(t.diskBuffer).set(new Uint8Array(this.diskBuffer,0,this.diskSize))}toBytes(){const t=new TextEncoder().encode(JSON.stringify(this.globals)),e=new Uint8Array(65544+t.byteLength+this.diskSize),s=new DataView(e.buffer,e.byteOffset,e.byteLength);e.set(new Uint8Array(this.memory),0);let i=65536;return s.setUint32(i,t.byteLength),e.set(t,i+4),i+=4+t.byteLength,s.setUint32(i,this.diskSize),e.set(new Uint8Array(this.diskBuffer,0,this.diskSize),i+4),e}fromBytes(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength);new Uint8Array(this.memory).set(t.subarray(0,65536));let s=65536;const i=e.getUint32(s),n=t.slice(s+4,s+4+i);this.globals=JSON.parse(new TextDecoder().decode(n)),s+=4+i,this.diskSize=e.getUint32(s),new Uint8Array(this.diskBuffer).set(t.subarray(s+4,s+4+this.diskSize))}}const I=20,R=4;class is{constructor(){this.frame=-1,this.state=new ht,this.inputs=new Array(R),this.predicted=new Array(R);for(let t=0;t=this.currentFrame)i.futureInputs.has(e)||i.futureInputs.set(e,n);else for(let r=0,c=I;r{this.send("",{type:"KEEPALIVE"},!1)},15e3)}async connect(){const t=["wss://webrtc-signal-server.wasm4.org","wss://ywc2h85cv1.execute-api.us-east-1.amazonaws.com/production","wss://webrtc-signal-server.wasm4.jwq.moe","wss://iyuavuru2h.execute-api.eu-central-1.amazonaws.com/production"];for(const e of t)try{this.socket=await new Promise((s,i)=>{const n=new WebSocket(e);n.addEventListener("open",()=>{s(n)}),n.addEventListener("error",()=>{i()})});break}catch(s){console.error(s)}if(!this.socket)throw new Error("Unable to connect to signal server");this.socket.addEventListener("message",e=>{const{source:s,message:i}=JSON.parse(e.data);this.onMessage(s,i)});for(const e of this.bufferedOutput)this.socket.send(e);this.bufferedOutput.length=0}send(t,e,s=!0){var n;const i=JSON.stringify({target:t,message:e});((n=this.socket)==null?void 0:n.readyState)==1?this.socket.send(i):s&&this.bufferedOutput.push(i)}close(){var t;(t=this.socket)==null||t.close(),window.clearInterval(this.keepaliveInterval)}}class os{constructor(t){this.connections=new Map;let e;this.localPeerId=new Promise(s=>{e=s}),this.signalClient=new rs(async(s,i)=>{switch(i.type){case"WHOAMI_REPLY":this.iceServers=i.iceServers,e(i.yourPeerId);break;case"OFFER":{if(this.connections.has(s))throw new Error("Received offer for a connection we already initiated");{const n=this.createConnection(s);await n.setRemoteDescription(i.description),await n.setLocalDescription(await n.createAnswer()),t(n,s),this.signalClient.send(s,{type:"ANSWER",description:n.localDescription.toJSON()})}}break;case"ANSWER":{const n=this.connections.get(s);n&&await n.setRemoteDescription(i.description)}break;case"CANDIDATE":{const n=this.connections.get(s);n&&await n.addIceCandidate(new RTCIceCandidate(i.candidate))}break;case"ABORT":{const n=this.connections.get(s);n&&n.close()}break}}),this.signalClient.send("",{type:"WHOAMI_REQUEST"})}createConnection(t){const e=new RTCPeerConnection({iceServers:this.iceServers});return this.connections.set(t,e),e.addEventListener("negotiationneeded",async()=>{await e.setLocalDescription(await e.createOffer()),this.signalClient.send(t,{type:"OFFER",description:e.localDescription.toJSON()})}),e.addEventListener("icecandidate",({candidate:s})=>{s&&this.signalClient.send(t,{type:"CANDIDATE",candidate:s.toJSON()})}),e.addEventListener("connectionstatechange",()=>{const s=e.connectionState;(s=="connected"||s=="failed")&&this.connections.delete(t)}),e}connect(t){return this.connections.get(t)||this.createConnection(t)}close(){this.signalClient.close();for(const[t,e]of this.connections)e.close()}}const gt=16384;class as{constructor(t){this.chunks=[],this.size=0,t.addEventListener("message",e=>{if(e.data instanceof ArrayBuffer){const s=new Uint8Array(e.data);this.size+=s.byteLength,this.chunks.push(s)}})}read(){const t=new Uint8Array(this.size);let e=0;for(const s of this.chunks)t.set(s,e),e+=s.byteLength;return this.chunks.length=0,this.size=0,t}}class cs{constructor(t){this.channel=t,this.size=0}write(t){this.buffer||(this.buffer=new Uint8Array(gt));let e=this.size,s=0;for(;s=gt&&(e-=gt,this.channel.send(this.buffer))}this.size=e}flush(){this.buffer&&this.size>0&&this.channel.send(this.buffer.subarray(0,this.size)),this.buffer=void 0}}class ls{constructor(t,e=0){this.buffer=t,this.position=e}readBit(){const t=!!(this.buffer[this.position/8>>>0]&1<<(this.position&7));return++this.position,t}readBits(t){let e=0;for(let s=0;s>>0]|=1<<(this.position&7),++this.position}write0(){this.buffer[this.position/8>>>0]&=~(1<<(this.position&7)),++this.position}writeBits(t,e){for(let s=0;s0;--s)this.outboundInputs.unshift(e);this.outboundFrame=t}else{const s=t-this.outboundFrame;if(s>=this.outboundInputs.length){for(let i=this.outboundInputs.length;i0?this.outboundInputs[i-1]:0;this.outboundInputs[s]=e}}}sendMessage(t){this.reliableChannel.send(JSON.stringify(t))}sendUnreliableBuffer(t){this.unreliableChannel.send(t)}sendPingRequest(){const t=new DataView(W);t.setUint8(0,2),t.setUint32(1,performance.now()>>>0),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendPingReply(t){const e=new DataView(W);e.setUint8(0,3),e.setUint32(1,t),this.sendUnreliableBuffer(new Uint8Array(W,0,5))}sendTick(t){const e=new DataView(W);e.setUint8(0,1),e.setUint32(1,t),e.setInt8(5,this.nextNeededFrame==0?-127:this.nextNeededFrame-t),e.setInt8(6,this.outboundFrame-t),e.setUint8(7,this.outboundInputs.length);const s=new hs(new Uint8Array(W,8));let i=0;for(const r of this.outboundInputs){const c=i^r;i=r;for(let a=0;a<8;++a)c&1<{const i=Array.from(this.remotePlayers.keys()),n=await this.createRemotePlayer(e,s);n.sendMessage({type:"WELCOME",otherPeers:i}),this.localPlayerIdx>=0&&n.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})})}host(){this.runtime.setNetplay(0),this.rollbackMgr=new ce(1,this.runtime),this.localPlayerIdx=0}join(t){const e=this.peerMgr.connect(t);this.createRemotePlayer(e,t).then(s=>{s.sendMessage({type:"JOIN_REQUEST"})},s=>{this.runtime.blueScreen(`Failed to connect +to peer. They may +be offline?`)})}async getInviteLink(){const t=await this.peerMgr.localPeerId,e=window.location;if(e.protocol=="file:"||e.hostname=="localhost"||e.hostname=="127.0.0.1"||e.hostname=="wasm4.org")return`https://wasm4.org/netplay/#${t}`;const s=new URL(e.href);return s.searchParams.set("netplay",t),s.href}close(){for(const t of this.remotePlayers.values())t.close();this.peerMgr.close()}async createRemotePlayer(t,e){function s(a){return new Promise((h,l)=>{const d=t.createDataChannel("WASM-4",a);d.binaryType="arraybuffer",d.onopen=()=>{h(d)},d.onerror=l})}const[i,n]=await Promise.all([s({negotiated:!0,id:0}),s({negotiated:!0,id:1,ordered:!1,maxRetransmits:0})]),r=new us(e,t,i,n);this.remotePlayers.set(e,r);const c=()=>{this.remotePlayers.has(e)&&(this.remotePlayers.delete(e),this.onleave&&r.playerIdx>=0&&this.onleave(r.playerIdx))};return t.addEventListener("connectionstatechange",()=>{t.connectionState=="disconnected"&&c()}),i.addEventListener("close",c),n.addEventListener("close",c),i.addEventListener("message",async a=>{if(typeof a.data!="string")return;const h=JSON.parse(a.data);switch(h.type){case"WELCOME":for(const l of h.otherPeers)if(!this.remotePlayers.has(l)){const d=this.peerMgr.connect(l),u=await this.createRemotePlayer(d,l);this.localPlayerIdx>=0&&u.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})}break;case"JOIN_REQUEST":{const l=this.nextPlayerIdx();if(l>=4)r.sendMessage({type:"JOIN_REJECT"}),r.close();else{r.playerIdx=l,r.chunkWriter.write(this.runtime.wasmBuffer);const d=new ht;d.read(this.runtime),r.chunkWriter.write(d.toBytes()),r.chunkWriter.flush(),r.sendMessage({type:"JOIN_REPLY",yourPlayerIdx:r.playerIdx,frame:this.rollbackMgr.currentFrame,stateOffset:this.runtime.wasmBuffer.byteLength}),this.onjoin&&this.onjoin(r.playerIdx)}}break;case"JOIN_REPLY":{this.localPlayerIdx=h.yourPlayerIdx;for(const b of this.remotePlayers.values())b!=r&&b.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx});const l=r.chunkReader.read(),d=l.subarray(0,h.stateOffset),u=l.subarray(h.stateOffset);await this.runtime.load(d,!1);const w=new ht;w.fromBytes(u),w.write(this.runtime),this.runtime.setNetplay(this.localPlayerIdx),this.rollbackMgr=new ce(h.frame,this.runtime),this.onstart&&this.onstart(this.localPlayerIdx)}break;case"JOIN_REJECT":this.runtime.blueScreen(`Connected, but the +game is already +full!`),this.close();break;case"PLAYER_INFO":r.playerIdx==-1&&(r.playerIdx=h.playerIdx,this.onjoin&&this.onjoin(r.playerIdx));break}}),n.addEventListener("message",async a=>{const h=a.data,l=new DataView(h);switch(l.getUint8(0)){case 1:if(this.rollbackMgr&&r.playerIdx>=0){const u=l.getUint32(1);if(u>r.frame){const w=l.getInt8(5)+u,b=l.getInt8(6)+u,p=l.getUint8(7),f=new ls(new Uint8Array(h,8)),m=new Array(p);let y=0;for(let v=0;vr.outboundFrame){const v=w-r.outboundFrame;r.outboundFrame=w,r.outboundInputs.splice(0,v)}const g=u+.5*r.ping.average*60/1e3,_=this.rollbackMgr.currentFrame-g;r.drift.update(_),this.rollbackMgr.addInputs(r.playerIdx,b,m)}}break;case 2:{const u=l.getUint32(1);r.sendPingReply(u)}break;case 3:{const u=l.getUint32(1),w=(performance.now()>>>0)-u;r.ping.update(w)}break}}),r}nextPlayerIdx(){t:for(let t=0;t<4;++t)if(this.localPlayerIdx!=t){for(const e of this.remotePlayers.values())if(e.playerIdx==t)continue t;return t}return-1}update(t){if(!this.rollbackMgr)return!1;const e=(this.updateCount&7)==0,s=(this.updateCount&31)==0;++this.updateCount;const i=this.rollbackMgr.currentFrame,r=i+2;this.rollbackMgr.addInputs(this.localPlayerIdx,r,[t]);let c=!1;for(const a of this.remotePlayers.values())a.addOutboundInput(r,t),a.sendTick(i),(a.nextNeededFrame=he)&&(c=!0),s&&a.sendPingRequest();if(e){let a=0;for(const h of this.remotePlayers.values())a=Math.max(h.drift.average,a);a>=1&&(c=!0)}return c||this.rollbackMgr.update(),!c}getSummary(){const t=[{playerIdx:this.localPlayerIdx,ping:-1}];for(const e of this.remotePlayers.values())t.push({playerIdx:e.playerIdx,ping:e.ping.average});return t.sort((e,s)=>e.playerIdx-s.playerIdx),t}}const de=`"use strict";(()=>{var M=Math.floor(44.1),b=class{constructor(){this.freq1=0;this.freq2=0;this.startTime=0;this.attackTime=0;this.decayTime=0;this.sustainTime=0;this.releaseTime=0;this.endTick=0;this.sustainVolume=0;this.peakVolume=0;this.phase=0;this.pan=0;this.pulseDutyCycle=0;this.noiseSeed=1;this.noiseLastRandom=0}};function L(m,e,s){return m+s*(e-m)}function V(m,e){if(m1-e){let s=(m-(1-e))/e;return 1-(s+s-s*s)}else return 1}function x(m,e){return Math.pow(2,(m-69+e/256)/12)*440}var y=class extends AudioWorkletProcessor{constructor(){super(),this.time=0,this.ticks=0,this.channels=new Array(4);for(let e=0;e<4;++e)this.channels[e]=new b;this.port!=null&&(this.port.onmessage=e=>{e.data==="tick"?this.tick():this.tone(...e.data)})}ramp(e,s,f,u){if(this.time>=u)return s;let a=(this.time-f)/(u-f);return L(e,s,a)}getCurrentFrequency(e){return e.freq2>0?this.ramp(e.freq1,e.freq2,e.startTime,e.releaseTime):e.freq1}getCurrentVolume(e){let s=this.time;return s>=e.sustainTime&&e.releaseTime-e.sustainTime>M?this.ramp(e.sustainVolume,0,e.sustainTime,e.releaseTime):s>=e.decayTime?e.sustainVolume:s>=e.attackTime?this.ramp(e.peakVolume,e.sustainVolume,e.attackTime,e.decayTime):this.ramp(0,e.peakVolume,e.startTime,e.attackTime)}tick(){this.ticks++}tone(e,s,f,u){let a=e&65535,p=e>>16&65535,A=s&255,h=s>>8&255,o=s>>16&255,i=s>>24&255,E=Math.min(f&255,100),l=Math.min(f>>8&255,100),n=u&3,r=u>>2&3,c=u>>4&3,d=u&64,t=this.channels[n];this.time>t.releaseTime&&this.ticks!=t.endTick&&(t.phase=n==2?.25:0),d?(t.freq1=x(a&255,a>>8),t.freq2=p==0?0:x(p&255,p>>8)):(t.freq1=a,t.freq2=p),t.startTime=this.time,t.attackTime=t.startTime+(44100*i/60>>>0),t.decayTime=t.attackTime+(44100*o/60>>>0),t.sustainTime=t.decayTime+(44100*A/60>>>0),t.releaseTime=t.sustainTime+(44100*h/60>>>0),t.endTick=this.ticks+i+o+A+h,t.pan=c;let T=n==2?.25:.15;if(t.sustainVolume=T*E/100,t.peakVolume=l?T*l/100:T,n==0||n==1)switch(r){case 0:t.pulseDutyCycle=.125;break;case 1:case 3:default:t.pulseDutyCycle=.25;break;case 2:t.pulseDutyCycle=.5;break}else n==2&&h==0&&(t.releaseTime+=M)}process(e,[[s,f]],u){for(let a=0,p=s.length;a0;){i.phase--;let r=i.noiseSeed;r^=r>>7,r^=r<<9,r^=r>>13,i.noiseSeed=r,i.noiseLastRandom=((r&1)<<1)-1}n=l*i.noiseLastRandom}else{let r=E/44100,c=i.phase+r;if(c>=1&&c--,i.phase=c,o==2)n=l*(2*Math.abs(2*i.phase-1)-1);else{let d,t,T,k=i.pulseDutyCycle;c{n=new l};new Function("registerProcessor","AudioWorkletProcessor",de)(r,class{}),this.processor=n;const a=t.createScriptProcessor(1024,0,2);a.onaudioprocess=h=>{const l=h.outputBuffer.getChannelData(0),d=h.outputBuffer.getChannelData(1);n.process(null,[[l,d]],null)},a.connect(t.destination)}}tick(){this.processorPort!=null?this.processorPort.postMessage("tick"):this.processor.tick()}tone(t,e,s,i){this.processorPort!=null?this.processorPort.postMessage([t,e,s,i]):this.processor.tone(t,e,s,i)}unlockAudio(){const t=this.audioCtx;t.state=="suspended"&&t.resume()}pauseAudio(){const t=this.audioCtx;t.state=="running"&&t.suspend()}}class ms{constructor(t){this.bytes=new Uint8Array(t,Je,E*x>>>2),this.drawColors=new Uint16Array(t,lt,1)}clear(){this.bytes.fill(0)}drawPoint(t,e,s){const i=E*s+e>>>2,n=(e&3)<<1,r=3<=0&&e=0&&s3){for(let l=e;l>>2,a=E*s+n>>>2,h=t*85;this.bytes.fill(h,c,a),e=n}for(let c=e;c=0&&sE&&(i=E),e=E)return;const i=this.drawColors[0]&15;if(i==0)return;const n=Math.max(0,e),r=Math.min(x,e+s),c=i-1&3;for(let a=n;a>>4&15;if(u!==0){const b=u-1&3;for(let p=r;p=0&&t0&&c<=E)for(let p=r;p=0&&e0&&a<=x&&this.drawHLineFast(b,n,a-1,h)}}drawOval(t,e,s,i){const n=this.drawColors[0],r=n&15,c=n>>>4&15;if(c===15)return;const a=c-1&3,h=r-1&3;let l=s-1;const d=i-1;let u=d%2,w=e+Math.floor(i/2),b=t,p=t+s-1,f=w-u;const m=l*l,y=d*d;let g=4*(1-l)*y,_=4*(u+1)*m,v=g+_+u*m;l=8*m,u=8*y;do{this.drawPointUnclipped(a,p,w),this.drawPointUnclipped(a,b,w),this.drawPointUnclipped(a,b,f),this.drawPointUnclipped(a,p,f);const k=b+1,T=p-k;r!==0&&T>0&&(this.drawHLineUnclipped(h,k,w,p),this.drawHLineUnclipped(h,k,f,p));const P=2*v;P<=_&&(w+=1,f-=1,_+=l,v+=_),(P>=g||P>_)&&(b+=1,p-=1,g+=u,v+=g)}while(b<=p);for(;w-fi){let w=t;t=s,s=w,w=e,e=i,i=w}const a=Math.abs(s-t),h=tl?a:-l)/2,u;for(;this.drawPointUnclipped(c,t,e),!(t===s&&e===i);)u=d,u>-a&&(d-=l,t+=h),u=32&&c<=255&&this.blit(ts,i,s,8,8,0,c-32<<3,8),i+=8)}}blit(t,e,s,i,n,r,c,a,h=!1,l=!1,d=!1,u=!1){const w=this.drawColors[0];let b,p,f,m;u?(l=!l,b=Math.max(0,s)-s,p=Math.max(0,e)-e,f=Math.min(i,x-s),m=Math.min(n,E-e)):(b=Math.max(0,e)-e,p=Math.max(0,s)-s,f=Math.min(i,E-e),m=Math.min(n,x-s));for(let y=p;y>>2],Rt=6-(($&3)<<1);P=Lt>>>Rt&3}else{const Lt=t[$>>>3],Rt=7-($&7);P=Lt>>>Rt&1}const Ee=w>>>(P<<2)&15;Ee!==0&&this.drawPoint(Ee-1&3,_,v)}}}const ys=4,ws=35044,ue=34962,pe=5121,bs=5126,At=6409,gs=35632,As=35633,vs=35713,Es=35714,fe=9728,_s=10240,Ss=10241,xs=10242,ks=10243,z=3553,Cs=33984,me=33071,V=4;class Ts{constructor(t){this.gl=t,this.colorBuffer=new Uint32Array(E*x>>2),this.paletteBuffer=new Float32Array(3*V),this.lastPalette=Array(V),this.paletteLocation=null;const e=new Uint32Array(256);for(let i=0;i<256;++i){const n=i>>6&3,r=i>>4&3,c=i>>2&3,a=i&3;e[i]=n<<30|r<<22|c<<14|a<<6}this.table=e;const s=t.canvas;s.addEventListener("webglcontextlost",i=>{i.preventDefault()}),s.addEventListener("webglcontextrestored",()=>{this.initGL()}),this.initGL()}initGL(){const t=this.gl;this.lastPalette=Array(V);function e(d,u){const w=t.createShader(d);if(t.shaderSource(w,u),t.compileShader(w),!t.getShaderParameter(w,vs))throw new Error(t.getShaderInfoLog(w)+"");return w}function s(d){const u=t.createTexture();t.activeTexture(d),t.bindTexture(z,u),t.texParameteri(z,xs,me),t.texParameteri(z,ks,me),t.texParameteri(z,_s,fe),t.texParameteri(z,Ss,fe)}const i=e(As,` + attribute vec2 pos; + varying vec2 framebufferCoord; + + void main () { + framebufferCoord = pos*vec2(0.5, -0.5) + 0.5; + gl_Position = vec4(pos, 0, 1); + } + `),n=Array.from({length:V-1},(d,u)=>`p = mix(p, palette[${u+1}], step(${((u+1)/V).toFixed(2)}, index));`).join(` +`),r=e(gs,` + precision mediump float; + uniform vec3 palette[${V}]; + uniform sampler2D framebuffer; + varying vec2 framebufferCoord; + + vec3 lookup(float index) { + vec3 p = palette[0]; + ${n} + return p; + } + + void main () { + gl_FragColor = vec4(lookup(texture2D(framebuffer, framebufferCoord).r), 1.); + } + `),c=t.createProgram();if(t.attachShader(c,i),t.attachShader(c,r),t.linkProgram(c),!t.getProgramParameter(c,Es))throw new Error(t.getProgramInfoLog(c)+"");t.useProgram(c),this.paletteLocation=t.getUniformLocation(c,"palette"),t.uniform1i(t.getUniformLocation(c,"framebuffer"),0),t.detachShader(c,i),t.deleteShader(i),t.detachShader(c,r),t.deleteShader(r),s(Cs),t.texImage2D(z,0,At,E,x,0,At,pe,null);const a=t.getAttribLocation(c,"pos"),h=t.createBuffer(),l=new Float32Array([-1,-1,-1,1,1,1,1,1,1,-1,-1,-1]);t.bindBuffer(ue,h),t.bufferData(ue,l,ws),t.enableVertexAttribArray(a),t.vertexAttribPointer(a,2,bs,!1,0,0)}composite(t,e){const s=this.gl,i=e.bytes,n=this.colorBuffer,r=this.table,c=this.lastPalette,a=this.paletteBuffer;let h=!1;for(let l=0,d=0;l>16&255)/255,a[d++]=(u>>8&255)/255,a[d++]=(u&255)/255,c[l]=u}h&&s.uniform3fv(this.paletteLocation,this.paletteBuffer);for(let l=0;l>2;++l)n[l]=r[i[l]];s.texImage2D(z,0,At,E,x,0,At,pe,new Uint8Array(n.buffer)),s.drawArrays(ys,0,6)}}const Ps=6,ye=7,we=3;function $s(o){const t=new DataView(o.buffer),e=t.getUint32(0),s=t.getUint32(4,!0);if(e!==6386541||s!==1)throw new Error("Invalid WASM binary");let i=8;const n=[];let r=0,c=0,a;for(;in+(r[0]===0?r[2]-r[1]:r[1].length),0),s=new Uint8Array(e);let i=0;for(const n of t)n[0]===0?(s.set(o.slice(n[1],n[2]),i),i+=n[2]-n[1]):(s.set(n[1],i),i+=n[1].length);return s}function vt(o){const t=[];do{const e=o&127;o>>=7,t.push(o?e|128:e)}while(o);return new Uint8Array(t)}function dt(o,t=0){let e=0,s=0,i=0;do e=o[t++],s|=(e&127)<>2),this.data.setUint16(lt,4611,!0),this.data.setInt16(te,32767,!0),this.data.setInt16(ee,32767,!0)}async load(t,e=!0){if(this.wasmBuffer=t,this.wasmBufferByteLen=t.byteLength,this.wasm=null,t.byteLength>1048576&&e)throw new Error("Cart too big!");const i={memory:this.memory,rect:this.framebuffer.drawRect.bind(this.framebuffer),oval:this.framebuffer.drawOval.bind(this.framebuffer),line:this.framebuffer.drawLine.bind(this.framebuffer),hline:this.framebuffer.drawHLine.bind(this.framebuffer),vline:this.framebuffer.drawVLine.bind(this.framebuffer),text:this.text.bind(this),textUtf8:this.textUtf8.bind(this),textUtf16:this.textUtf16.bind(this),blit:this.blit.bind(this),blitSub:this.blitSub.bind(this),tone:this.apu.tone.bind(this.apu),diskr:this.diskr.bind(this),diskw:this.diskw.bind(this),trace:this.trace.bind(this),traceUtf8:this.traceUtf8.bind(this),traceUtf16:this.traceUtf16.bind(this),tracef:this.tracef.bind(this)};await this.bluescreenOnError(async()=>{const n=$s(t),r=await WebAssembly.instantiate(n,{env:i});this.wasm=r.instance,typeof this.wasm.exports._start=="function"&&this.wasm.exports._start(),typeof this.wasm.exports._initialize=="function"&&this.wasm.exports._initialize()})}async bluescreenOnError(t){try{await t()}catch(e){if(e instanceof Error){const s=Us(e);this.blueScreen(s),this.printToServer(e.stack??"")}throw e}}text(t,e,s){const i=new Uint8Array(this.memory.buffer,t);this.framebuffer.drawText(i,e,s)}textUtf8(t,e,s,i){const n=new Uint8Array(this.memory.buffer,t,e);this.framebuffer.drawText(n,s,i)}textUtf16(t,e,s,i){const n=new Uint16Array(this.memory.buffer,t,e>>1);this.framebuffer.drawText(n,s,i)}blit(t,e,s,i,n,r){this.blitSub(t,e,s,i,n,0,0,i,r)}blitSub(t,e,s,i,n,r,c,a,h){const l=new Uint8Array(this.memory.buffer,t),d=h&1,u=h&2,w=h&4,b=h&8;this.framebuffer.blit(l,e,s,i,n,r,c,a,d,u,w,b)}diskr(t,e){const s=Math.min(e,this.diskSize),i=new Uint8Array(this.diskBuffer,0,s);return new Uint8Array(this.memory.buffer,t).set(i),s}diskw(t,e){const s=Math.min(e,X),i=new Uint8Array(this.memory.buffer,t,s),n=new Uint8Array(this.diskBuffer),r=oe(i);try{localStorage.setItem(this.diskName,r)}catch(c){console.error("Error writing disk",c)}return n.set(i),this.diskSize=s,s}getCString(t){let e="";for(;;){const s=this.data.getUint8(t++);if(s==0)break;e+=String.fromCharCode(s)}return e}print(t){console.log(t),this.printToServer(t)}printToServer(t){}trace(t){this.print(this.getCString(t))}traceUtf8(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder().decode(s);this.print(i)}traceUtf16(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder("utf-16").decode(s);this.print(i)}tracef(t,e){let s="",i;for(;i=this.data.getUint8(t++);)if(i==37)switch(i=this.data.getUint8(t++)){case 37:s+="%";break;case 99:s+=String.fromCharCode(this.data.getInt32(e,!0)),e+=4;break;case 100:case 120:s+=this.data.getInt32(e,!0).toString(i==100?10:16),e+=4;break;case 115:s+=this.getCString(this.data.getUint32(e,!0)),e+=4;break;case 102:s+=this.data.getFloat64(e,!0),e+=8;break;default:s+="%"+String.fromCharCode(i);break}else s+=String.fromCharCode(i);this.print(s)}start(){let t=this.wasm.exports.start;typeof t=="function"&&this.bluescreenOnError(t)}update(){if(this.pauseState!=0)return;this.getSystemFlag(Ze)||this.framebuffer.clear();let t=this.wasm.exports.update;typeof t=="function"&&this.bluescreenOnError(t),this.apu.tick()}blueScreen(t){this.pauseState|=se;const e=[1118702,8831084,11184810,16777215],s=u=>[...u].map(w=>w.charCodeAt(0)),i=` ${Ve} `,n=i,r=8*i.length,c=(160-8*i.length)/2,a=20,h=9,l=60;new Uint32Array(this.memory.buffer).set(e,$t>>2),this.data.setUint16(lt,4611,!0),this.framebuffer.clear(),this.framebuffer.drawHLine(c,a-1,r),this.data.setUint16(lt,4401,!0),this.framebuffer.drawText(s(n),c,a),this.data.setUint16(lt,4611,!0),this.framebuffer.drawText(s(t),h,l),this.composite()}composite(){const t=new Uint32Array(this.memory.buffer,$t,4);this.compositor.composite(t,this.framebuffer)}}function Us(o){if(o instanceof WebAssembly.RuntimeError){let t;return o.message.match(/unreachable/)?t=`The cartridge has +reached a code +segment marked as +unreachable.`:o.message.match(/out of bounds/)&&(t=`The cartridge has +attempted a memory +access that is +out of bounds.`),t+` + + + + +Hit R to reboot.`}else{if(o instanceof WebAssembly.LinkError)return`The cartridge has +tried to import +a missing function. + + + +See console for +more details.`;if(o instanceof WebAssembly.CompileError)return`The cartridge is +corrupted. + + + +See console for +more details.`;if(o instanceof Os)return o.wasm4Message}return`Unknown error. + + + +See console for +more details.`}class Os extends Error{constructor(t){super(t.replace(` +`," ")),this.name="Wasm4Error",this.wasm4Message=t}}var Ms=Object.defineProperty,Ls=Object.getOwnPropertyDescriptor,ut=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ls(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Ms(t,e,i),i};class ge{constructor(){this.gamepad=[0,0,0,0],this.mouseX=0,this.mouseY=0,this.mouseButtons=0}}A.App=class extends M{constructor(){var t;super(),this.hideGamepadOverlay=!1,this.showMenu=!1,this.inputState=new ge,this.gamepadUnavailableWarned=new Set,this.onPointerUp=e=>{e.pointerType=="touch"&&ne(),this.runtime.unlockAudio()},this.diskPrefix=((t=document.getElementById("wasm4-disk-prefix"))==null?void 0:t.textContent)??It("disk-prefix"),this.runtime=new Is(`${this.diskPrefix}-disk`),this.init()}async init(){async function t(){const p=document.getElementById("wasm4-cart-json");if(p){const{WASM4_CART:f,WASM4_CART_SIZE:m}=JSON.parse(p.textContent??""),y=new Uint8Array(m);return ae(f,y),y}else{const f=It("url")??"cart.wasm",m=await fetch(f);if(m.ok)return new Uint8Array(await m.arrayBuffer());throw new Error(`Could not load cart at url: ${f}`)}}const e=this.runtime;await e.init();const s=e.canvas,i=It("netplay");i?(this.netplay=this.createNetplay(),this.netplay.join(i)):await e.load(await t());let n={toggleDevtools(){},updateCompleted(...p){}};this.netplay||e.start();function r(){e.composite(),s.toBlob(p=>{const f=URL.createObjectURL(p),m=document.createElement("a");m.href=f,m.download="wasm4-screenshot.png",m.click(),URL.revokeObjectURL(f)})}let c=null;function a(){if(c!=null)return;const p="video/webm",f=s.captureStream();c=new MediaRecorder(f,{mimeType:p,videoBitsPerSecond:25e6});const m=[];c.ondataavailable=y=>{m.push(y.data)},c.onstop=()=>{const y=new Blob(m,{type:p}),g=URL.createObjectURL(y),_=document.createElement("a");_.href=g,_.download="wasm4-animation.webm",_.click(),URL.revokeObjectURL(g)},c.start(),setTimeout(()=>{c&&(c.requestData(),c.stop(),c=null)},4e3)}const h=p=>{if(document.body.style.cursor="",p.isPrimary){const f=s.getBoundingClientRect(),m=this.inputState;m.mouseX=Math.fround(E*(p.clientX-f.left)/f.width),m.mouseY=Math.fround(x*(p.clientY-f.top)/f.height),m.mouseButtons=p.buttons&7}};window.addEventListener("pointerdown",h),window.addEventListener("pointerup",h),window.addEventListener("pointermove",h),s.addEventListener("contextmenu",p=>{p.preventDefault()});const l={2:this.saveGameState.bind(this),4:this.loadGameState.bind(this),r:this.resetCart.bind(this),R:this.resetCart.bind(this),F8:n.toggleDevtools,F9:r,F10:a,F11:ne,Enter:this.onMenuButtonPressed.bind(this)},d=p=>{if(p.ctrlKey||p.altKey||p.srcElement instanceof HTMLElement&&p.srcElement.tagName=="INPUT")return;const f=p.type=="keydown";if(e.unlockAudio(),document.body.style.cursor="none",f){const g=l[p.key];if(g){g(),p.preventDefault();return}}let m=0,y=0;switch(p.code){case"KeyX":case"KeyV":case"Space":case"Period":y=L;break;case"KeyZ":case"KeyC":case"Comma":y=F;break;case"ArrowUp":y=H;break;case"ArrowDown":y=G;break;case"ArrowLeft":y=J;break;case"ArrowRight":y=Z;break;case"KeyA":case"KeyQ":m=1,y=L;break;case"ShiftLeft":case"Tab":m=1,y=F;break;case"KeyE":m=1,y=H;break;case"KeyD":m=1,y=G;break;case"KeyS":m=1,y=J;break;case"KeyF":m=1,y=Z;break;case"NumpadMultiply":case"NumpadDecimal":m=2,y=L;break;case"NumpadSubtract":case"NumpadEnter":m=2,y=F;break;case"Numpad8":m=2,y=H;break;case"Numpad5":m=2,y=G;break;case"Numpad4":m=2,y=J;break;case"Numpad6":m=2,y=Z;break}if(y!=0){p.preventDefault();const g=this.inputState.gamepad;f?g[m]|=y:g[m]&=~y}};if(window.addEventListener("keydown",d),window.addEventListener("keyup",d),top&&top!=window)try{top.addEventListener("keydown",d),top.addEventListener("keyup",d)}catch{}const u=()=>{if(navigator.getGamepads)for(const p of navigator.getGamepads()){if(p==null)continue;if(p.mapping!="standard"){this.gamepadUnavailableWarned.has(p.id)||(this.gamepadUnavailableWarned.add(p.id),this.notifications.show("Unsupported gamepad: "+p.id));continue}const f=p.buttons,m=p.axes;let y=0;(f[12].pressed||m[1]<-.5)&&(y|=H),(f[13].pressed||m[1]>.5)&&(y|=G),(f[14].pressed||m[0]<-.5)&&(y|=J),(f[15].pressed||m[0]>.5)&&(y|=Z),(f[0].pressed||f[3].pressed||f[5].pressed||f[7].pressed)&&(y|=L),(f[1].pressed||f[2].pressed||f[4].pressed||f[6].pressed)&&(y|=F),f[9].pressed&&(this.showMenu=!0),this.inputState.gamepad[p.index%4]=y}};let w=performance.now();const b=p=>{requestAnimationFrame(b),u();let f=this.inputState;if(this.menuOverlay!=null)if(this.menuOverlay.applyInput(),this.netplay)f=new ge;else return;let m=!1;for(p-w>=200&&(w=p);p>=w;)if(w+=1e3/60,this.netplay)this.netplay.update(f.gamepad[0])&&(m=!0);else{for(let y=0;y<4;++y)e.setGamepad(y,f.gamepad[y]);e.setMouse(f.mouseX,f.mouseY,f.mouseButtons),e.update(),m=!0}m&&(this.hideGamepadOverlay=!!e.getSystemFlag(Qe),e.composite())};requestAnimationFrame(b)}onMenuButtonPressed(){this.showMenu?this.inputState.gamepad[0]|=L:this.showMenu=!0}closeMenu(){if(this.showMenu){this.showMenu=!1;for(let t=0;t<4;++t)this.inputState.gamepad[t]=0}}saveGameState(){let t=this.savedGameState;t==null&&(t=this.savedGameState=new ht),t.read(this.runtime),this.notifications.show("State saved")}loadGameState(){if(this.netplay){this.notifications.show("State loading disabled during netplay");return}const t=this.savedGameState;t!=null?(t.write(this.runtime),this.notifications.show("State loaded")):this.notifications.show("Need to save a state first")}exportGameDisk(){if(this.runtime.diskSize<=0){this.notifications.show("Disk is empty");return}const t=new Uint8Array(this.runtime.diskBuffer).slice(0,this.runtime.diskSize),e=new Blob([t],{type:"application/octet-stream"}),s=document.createElement("a");s.style.display="none",s.href=URL.createObjectURL(e),s.download=`${this.diskPrefix}.disk`,document.body.appendChild(s),s.click(),document.body.removeChild(s)}importGameDisk(){if(this.netplay){this.notifications.show("Disk importing disabled during netplay");return}const t=this,e=document.createElement("input");e.style.display="none",e.type="file",e.accept=".disk",e.multiple=!1,e.addEventListener("change",()=>{const s=e.files;let i=new FileReader;i.addEventListener("load",()=>{let n=new Uint8Array(i.result).slice(0,X),r=new Uint8Array(X);r.set(n),t.runtime.diskBuffer=r.buffer,this.runtime.diskSize=n.length;const c=oe(n);try{localStorage.setItem(this.runtime.diskName,c),t.notifications.show("Disk imported")}catch(a){t.notifications.show("Error importing disk"),console.error("Error importing disk",a)}t.closeMenu()}),i.readAsArrayBuffer(s[0])}),document.body.appendChild(e),e.click(),document.body.removeChild(e)}clearGameDisk(){if(this.netplay){this.notifications.show("Disk clearing disabled during netplay");return}this.runtime.diskBuffer=new ArrayBuffer(X),this.runtime.diskSize=0;try{localStorage.removeItem(this.runtime.diskName)}catch(t){this.notifications.show("Error clearing disk"),console.error("Error clearing disk",t)}this.notifications.show("Disk cleared")}async copyNetplayLink(){this.netplay||(this.netplay=this.createNetplay(),this.netplay.host()),es(await this.netplay.getInviteLink()),this.notifications.show("Netplay link copied to clipboard")}async resetCart(t,e=!1){if(this.netplay){this.notifications.show("Reset disabled during netplay");return}t||(t=this.runtime.wasmBuffer);let s;e&&(s=new ht,s.read(this.runtime)),this.runtime.reset(!0),this.runtime.pauseState|=ie,await this.runtime.load(t),this.runtime.pauseState&=~ie,s?s.write(this.runtime):this.runtime.start()}createNetplay(){const t=new ps(this.runtime);return t.onstart=e=>this.notifications.show(`Joined as player ${e+1}`),t.onjoin=e=>this.notifications.show(`Player ${e+1} joined`),t.onleave=e=>this.notifications.show(`Player ${e+1} left`),t}getNetplaySummary(){return this.netplay?this.netplay.getSummary():[]}connectedCallback(){super.connectedCallback(),window.addEventListener("pointerup",this.onPointerUp)}disconnectedCallback(){window.removeEventListener("pointerup",this.onPointerUp),super.disconnectedCallback()}render(){return C` +
+ ${this.showMenu?C``:""} + + ${this.runtime.canvas} +
+ ${this.hideGamepadOverlay?"":C``} + `}},A.App.styles=ft` + :host { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + + touch-action: none; + user-select: none; + -webkit-user-select: none; + -webkit-tap-highlight-color: transparent; + + background: #202020; + } + + .content { + width: 100vmin; + height: 100vmin; + overflow: hidden; + } + + /** Nudge the game upwards a bit in portrait to make space for the virtual gamepad. */ + @media (pointer: coarse) and (max-aspect-ratio: 2/3) { + .content { + position: absolute; + top: calc((100% - 220px - 100vmin)/2) + } + } + + .content canvas { + width: 100%; + height: 100%; + image-rendering: pixelated; + image-rendering: crisp-edges; + } + `,ut([at()],A.App.prototype,"hideGamepadOverlay",2),ut([at()],A.App.prototype,"showMenu",2),ut([ct("wasm4-menu-overlay")],A.App.prototype,"menuOverlay",2),ut([ct("wasm4-notifications")],A.App.prototype,"notifications",2),A.App=ut([bt("wasm4-app")],A.App);/** + * @license + * Copyright 2021 Google LLC + * SPDX-License-Identifier: BSD-3-Clause + */function*Ut(o,t){if(o!==void 0){let e=0;for(const s of o)yield t(s,e++)}}var Rs=Object.defineProperty,Ds=Object.getOwnPropertyDescriptor,Ot=(o,t,e,s)=>{for(var i=s>1?void 0:s?Ds(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Rs(t,e,i),i};const j={DEFAULT:0,DISK:1},Ns=[{CONTINUE:0,SAVE_STATE:1,LOAD_STATE:2,DISK_OPTIONS:3,COPY_NETPLAY_LINK:4,RESET_CART:5},{BACK:0,EXPORT_DISK:1,IMPORT_DISK:2,CLEAR_DISK:3}],Mt=[["CONTINUE","SAVE STATE","LOAD STATE","DISK OPTIONS","COPY NETPLAY URL","RESET CART"],["BACK","EXPORT DISK","IMPORT DISK","CLEAR DISK"]];A.MenuOverlay=class extends M{constructor(){super(),this.lastGamepad=0,this.selectedIdx=0,this.netplaySummary=[],this.optionContext=0,this.optionContextHistory=[]}get optionIndex(){return Ns[this.optionContext]}get options(){return Mt[this.optionContext]}previousContext(){if(this.optionContextHistory.length>0){const t=this.optionContextHistory.pop();this.resetInput(),this.optionContext=t.context,this.selectedIdx=t.index}}switchContext(t,e=0){this.optionContextHistory.push({context:this.optionContext,index:this.selectedIdx}),this.resetInput(),this.optionContext=t,this.selectedIdx=e}resetInput(){this.app.inputState.gamepad[0]=0}applyInput(){let t=0;for(const s of this.app.inputState.gamepad)t|=s;const e=t&(t^this.lastGamepad);if(this.lastGamepad=t,e&(L|F)){if(this.optionContext===j.DEFAULT)switch(this.selectedIdx){case this.optionIndex.CONTINUE:this.app.closeMenu();break;case this.optionIndex.SAVE_STATE:this.app.saveGameState(),this.app.closeMenu();break;case this.optionIndex.LOAD_STATE:this.app.loadGameState(),this.app.closeMenu();break;case this.optionIndex.DISK_OPTIONS:this.switchContext(j.DISK);break;case this.optionIndex.COPY_NETPLAY_LINK:this.app.copyNetplayLink(),this.app.closeMenu();break;case this.optionIndex.RESET_CART:this.app.resetCart(),this.app.closeMenu();break}else if(this.optionContext===j.DISK)switch(this.selectedIdx){case this.optionIndex.BACK:this.previousContext();break;case this.optionIndex.EXPORT_DISK:this.app.exportGameDisk(),this.app.closeMenu();break;case this.optionIndex.IMPORT_DISK:this.resetInput(),this.app.importGameDisk();break;case this.optionIndex.CLEAR_DISK:this.app.clearGameDisk(),this.app.closeMenu();break}}e&G&&this.selectedIdx++,e&H&&this.selectedIdx--,this.selectedIdx=(this.selectedIdx+this.options.length)%this.options.length}connectedCallback(){super.connectedCallback();const t=()=>{this.netplaySummary=this.app.getNetplaySummary()};t(),this.netplayPollInterval=window.setInterval(t,1e3)}disconnectedCallback(){window.clearInterval(this.netplayPollInterval),super.disconnectedCallback()}render(){return C` +
+ WASM-4 v${"2.7.0"} +
+ +
+ ${Ut(this.netplaySummary,t=>{const e=t.ping<100?"good":t.ping<200?"ok":"bad",s=t.ping<0?C`YOU`:C`${Math.ceil(t.ping)}ms`;return C`
PLAYER ${t.playerIdx>=0?t.playerIdx+1:"?"} ${s}
`})} +
+ `}},A.MenuOverlay.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + + color: #a0a0a0; + font: 16px wasm4-font; + + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + + background: rgba(0, 0, 0, 0.85); + } + + .version { + color: #fff; + padding-bottom: 1em; + } + + .menu { + border: 2px solid #f0f0f0; + padding: 0 1em 0 1em; + line-height: 2em; + } + + .netplay-summary { + margin-top: 2em; + line-height: 1.5em; + } + + .ping-you { + color: #f0f0f0; + } + + .ping-good { + color: green; + } + + .ping-ok { + color: yellow; + } + + .ping-bad { + color: red; + } + + ul { + list-style: none; + padding-left: 0; + padding-right: 1em; + } + + li::before { + content: "\\00a0\\00a0"; + } + li.selected::before { + content: "> "; + } + li.selected { + color: #fff; + } + `,Ot([at()],A.MenuOverlay.prototype,"selectedIdx",2),Ot([at()],A.MenuOverlay.prototype,"netplaySummary",2),A.MenuOverlay=Ot([bt("wasm4-menu-overlay")],A.MenuOverlay);var Bs=Object.defineProperty,Fs=Object.getOwnPropertyDescriptor,Et=(o,t,e,s)=>{for(var i=s>1?void 0:s?Fs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Bs(t,e,i),i};function Q(o,t,e){o&&(e?o.classList.add(t):o.classList.remove(t))}A.VirtualGamepad=class extends M{constructor(){super(...arguments),this.touchEvents=new Map,this.onPointerEvent=t=>{if(t.pointerType!="touch")return;switch(t.preventDefault(),t.type){case"pointerdown":case"pointermove":this.touchEvents.set(t.pointerId,t);break;default:this.touchEvents.delete(t.pointerId);break}let e=0;if(this.touchEvents.size){const c=this.dpad.getBoundingClientRect(),a=c.x+c.width/2,h=c.y+c.height/2,l=this.action1.getBoundingClientRect(),d=l.x+l.width/2,u=l.y+l.height/2,w=this.action2.getBoundingClientRect(),b=w.x+w.width/2,p=w.y+w.height/2;let f,m,y,g,_;for(const v of this.touchEvents.values())f=v.clientX-a,m=v.clientY-h,y=Math.sqrt(f*f+m*m),y<100&&y>10&&(g=f/y,_=m/y,-g>.6?e|=J:g>.6&&(e|=Z),-_>.6?e|=H:_>.6&&(e|=G)),f=v.clientX-d,m=v.clientY-u,f*f+m*m<2500&&(e|=L),f=v.clientX-b,m=v.clientY-p,f*f+m*m<2500&&(e|=F)}Q(this.action1,"pressed",e&L),Q(this.action2,"pressed",e&F),Q(this.dpad,"pressed-left",e&J),Q(this.dpad,"pressed-right",e&Z),Q(this.dpad,"pressed-up",e&H),Q(this.dpad,"pressed-down",e&G),this.app.inputState.gamepad[0]=e}}connectedCallback(){super.connectedCallback(),window.addEventListener("pointercancel",this.onPointerEvent),window.addEventListener("pointerdown",this.onPointerEvent),window.addEventListener("pointermove",this.onPointerEvent),window.addEventListener("pointerup",this.onPointerEvent)}disconnectedCallback(){window.removeEventListener("pointercancel",this.onPointerEvent),window.removeEventListener("pointerdown",this.onPointerEvent),window.removeEventListener("pointermove",this.onPointerEvent),window.removeEventListener("pointerup",this.onPointerEvent),super.disconnectedCallback()}onMenuButtonPressed(t){this.app.onMenuButtonPressed(),t.stopImmediatePropagation()}render(){return C` + +
+
X
+
Z
+ `}},A.VirtualGamepad.styles=ft` + :host { + display: none; + } + @media (hover: none) or (pointer: coarse) { + :host { + display: inherit; + } + } + + .dpad { + pointer-events: none; + position: absolute; + width: 39px; + height: 120px; + left: 69px; + bottom: 30px; + background: #444; + border-radius: 9px; + } + .dpad:before { + position: absolute; + width: 120px; + height: 39px; + top: 39px; + left: -39px; + background: #444; + border-radius: 9px; + content: ""; + } + .dpad:after { + position: absolute; + height: 39px; + width: 39px; + top: 39px; + border-radius: 100%; + background: #333; + content: ""; + } + .dpad.pressed-left:before { + border-left: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-right:before { + border-right: 4px solid #A93671; + width: 116px; + } + .dpad.pressed-up { + border-top: 4px solid #A93671; + } + .dpad.pressed-down { + border-bottom: 4px solid #A93671; + height: 116px; + } + + .action1 { + right: 80px; + bottom: 30px; + } + .action2 { + right: 30px; + bottom: 90px; + } + .action1, .action2 { + pointer-events: none; + position: absolute; + width: 60px; + height: 60px; + border: 4px solid #A93671; + border-radius: 50px; + + /** TODO(2022-03-14): Button text should be centered but is off slightly. */ + color: #A93671; + font: 24px wasm4-font; + text-align: center; + line-height: 60px; + } + .action1.pressed, .action2.pressed { + background: #A93671; + } + + .menu { + position: absolute; + background: #444; + width: 60px; + height: 20px; + bottom: 200px; + right: 35px; + border-radius: 10px; + } + `,Et([ct(".dpad")],A.VirtualGamepad.prototype,"dpad",2),Et([ct(".action1")],A.VirtualGamepad.prototype,"action1",2),Et([ct(".action2")],A.VirtualGamepad.prototype,"action2",2),A.VirtualGamepad=Et([bt("wasm4-virtual-gamepad")],A.VirtualGamepad);var Hs=Object.defineProperty,Gs=Object.getOwnPropertyDescriptor,Ae=(o,t,e,s)=>{for(var i=s>1?void 0:s?Gs(t,e):t,n=o.length-1,r;n>=0;n--)(r=o[n])&&(i=(s?r(t,e,i):r(i))||i);return s&&i&&Hs(t,e,i),i};return A.Notifications=class extends M{constructor(){super(...arguments),this.notifications=[]}show(t){this.notifications=this.notifications.concat([t]),setTimeout(()=>{this.notifications=this.notifications.slice(1)},5e3)}render(){return this.notifications.map(t=>C`
${t}
`)}},A.Notifications.styles=ft` + :host { + width: 100vmin; + height: 100vmin; + position: absolute; + pointer-events: none; + + color: #fff; + font: 24px wasm4-font; + + display: flex; + flex-direction: column; + } + + .notification { + background: rgba(0, 0, 0, 0.85); + padding: 0.5em; + /* animation: appear 0.5s ease-out, disappear 0.5s 4.5s ease-in; */ + /* animation-fill-mode: forwards; */ + animation: appear 0.5s ease-out; + } + + @keyframes appear { + from { + padding-left: 2em; + opacity: 0; + } + to { + opacity: 1; + padding-left: 0.5em; + } + } + + /*@keyframes disappear { + from { + opacity: 1; + } + to { + opacity: 0; + } + }*/ + `,Ae([at()],A.Notifications.prototype,"notifications",2),A.Notifications=Ae([bt("wasm4-notifications")],A.Notifications),Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),A}({}); diff --git a/wa-js/run-go-wasm-1.17.js b/wa-js/run-go-wasm-1.17.js new file mode 100644 index 00000000..04724805 --- /dev/null +++ b/wa-js/run-go-wasm-1.17.js @@ -0,0 +1,638 @@ +// Copyright 2018 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Go1.17.13 + +(() => { + // Map multiple JavaScript environments to a single common API, + // preferring web standards over Node.js API. + // + // Environments considered: + // - Browsers + // - Node.js + // - Electron + // - Parcel + // - Webpack + + if (typeof global !== "undefined") { + // global already exists + } else if (typeof window !== "undefined") { + window.global = window; + } else if (typeof self !== "undefined") { + self.global = self; + } else { + throw new Error("cannot export Go (neither global, window nor self is defined)"); + } + + if (!global.require && typeof require !== "undefined") { + global.require = require; + } + + if (!global.fs && global.require) { + const fs = require("fs"); + if (typeof fs === "object" && fs !== null && Object.keys(fs).length !== 0) { + global.fs = fs; + } + } + + const enosys = () => { + const err = new Error("not implemented"); + err.code = "ENOSYS"; + return err; + }; + + if (!global.fs) { + let outputBuf = ""; + global.fs = { + constants: { O_WRONLY: -1, O_RDWR: -1, O_CREAT: -1, O_TRUNC: -1, O_APPEND: -1, O_EXCL: -1 }, // unused + writeSync(fd, buf) { + outputBuf += decoder.decode(buf); + const nl = outputBuf.lastIndexOf("\n"); + if (nl != -1) { + console.log(outputBuf.substr(0, nl)); + outputBuf = outputBuf.substr(nl + 1); + } + return buf.length; + }, + write(fd, buf, offset, length, position, callback) { + if (offset !== 0 || length !== buf.length || position !== null) { + callback(enosys()); + return; + } + const n = this.writeSync(fd, buf); + callback(null, n); + }, + chmod(path, mode, callback) { callback(enosys()); }, + chown(path, uid, gid, callback) { callback(enosys()); }, + close(fd, callback) { callback(enosys()); }, + fchmod(fd, mode, callback) { callback(enosys()); }, + fchown(fd, uid, gid, callback) { callback(enosys()); }, + fstat(fd, callback) { callback(enosys()); }, + fsync(fd, callback) { callback(null); }, + ftruncate(fd, length, callback) { callback(enosys()); }, + lchown(path, uid, gid, callback) { callback(enosys()); }, + link(path, link, callback) { callback(enosys()); }, + lstat(path, callback) { callback(enosys()); }, + mkdir(path, perm, callback) { callback(enosys()); }, + open(path, flags, mode, callback) { callback(enosys()); }, + read(fd, buffer, offset, length, position, callback) { callback(enosys()); }, + readdir(path, callback) { callback(enosys()); }, + readlink(path, callback) { callback(enosys()); }, + rename(from, to, callback) { callback(enosys()); }, + rmdir(path, callback) { callback(enosys()); }, + stat(path, callback) { callback(enosys()); }, + symlink(path, link, callback) { callback(enosys()); }, + truncate(path, length, callback) { callback(enosys()); }, + unlink(path, callback) { callback(enosys()); }, + utimes(path, atime, mtime, callback) { callback(enosys()); }, + }; + } + + if (!global.process) { + global.process = { + getuid() { return -1; }, + getgid() { return -1; }, + geteuid() { return -1; }, + getegid() { return -1; }, + getgroups() { throw enosys(); }, + pid: -1, + ppid: -1, + umask() { throw enosys(); }, + cwd() { throw enosys(); }, + chdir() { throw enosys(); }, + } + } + + if (!global.crypto && global.require) { + const nodeCrypto = require("crypto"); + global.crypto = { + getRandomValues(b) { + nodeCrypto.randomFillSync(b); + }, + }; + } + if (!global.crypto) { + throw new Error("global.crypto is not available, polyfill required (getRandomValues only)"); + } + + if (!global.performance) { + global.performance = { + now() { + const [sec, nsec] = process.hrtime(); + return sec * 1000 + nsec / 1000000; + }, + }; + } + + if (!global.TextEncoder && global.require) { + global.TextEncoder = require("util").TextEncoder; + } + if (!global.TextEncoder) { + throw new Error("global.TextEncoder is not available, polyfill required"); + } + + if (!global.TextDecoder && global.require) { + global.TextDecoder = require("util").TextDecoder; + } + if (!global.TextDecoder) { + throw new Error("global.TextDecoder is not available, polyfill required"); + } + + // End of polyfills for common API. + + const encoder = new TextEncoder("utf-8"); + const decoder = new TextDecoder("utf-8"); + + global.Go = class { + constructor() { + this.argv = ["js"]; + this.env = {}; + this.exit = (code) => { + if (code !== 0) { + console.warn("exit code:", code); + } + }; + this._exitPromise = new Promise((resolve) => { + this._resolveExitPromise = resolve; + }); + this._pendingEvent = null; + this._scheduledTimeouts = new Map(); + this._nextCallbackTimeoutID = 1; + + const setInt64 = (addr, v) => { + this.mem.setUint32(addr + 0, v, true); + this.mem.setUint32(addr + 4, Math.floor(v / 4294967296), true); + } + + const getInt64 = (addr) => { + const low = this.mem.getUint32(addr + 0, true); + const high = this.mem.getInt32(addr + 4, true); + return low + high * 4294967296; + } + + const loadValue = (addr) => { + const f = this.mem.getFloat64(addr, true); + if (f === 0) { + return undefined; + } + if (!isNaN(f)) { + return f; + } + + const id = this.mem.getUint32(addr, true); + return this._values[id]; + } + + const storeValue = (addr, v) => { + const nanHead = 0x7FF80000; + + if (typeof v === "number" && v !== 0) { + if (isNaN(v)) { + this.mem.setUint32(addr + 4, nanHead, true); + this.mem.setUint32(addr, 0, true); + return; + } + this.mem.setFloat64(addr, v, true); + return; + } + + if (v === undefined) { + this.mem.setFloat64(addr, 0, true); + return; + } + + let id = this._ids.get(v); + if (id === undefined) { + id = this._idPool.pop(); + if (id === undefined) { + id = this._values.length; + } + this._values[id] = v; + this._goRefCounts[id] = 0; + this._ids.set(v, id); + } + this._goRefCounts[id]++; + let typeFlag = 0; + switch (typeof v) { + case "object": + if (v !== null) { + typeFlag = 1; + } + break; + case "string": + typeFlag = 2; + break; + case "symbol": + typeFlag = 3; + break; + case "function": + typeFlag = 4; + break; + } + this.mem.setUint32(addr + 4, nanHead | typeFlag, true); + this.mem.setUint32(addr, id, true); + } + + const loadSlice = (addr) => { + const array = getInt64(addr + 0); + const len = getInt64(addr + 8); + return new Uint8Array(this._inst.exports.mem.buffer, array, len); + } + + const loadSliceOfValues = (addr) => { + const array = getInt64(addr + 0); + const len = getInt64(addr + 8); + const a = new Array(len); + for (let i = 0; i < len; i++) { + a[i] = loadValue(array + i * 8); + } + return a; + } + + const loadString = (addr) => { + const saddr = getInt64(addr + 0); + const len = getInt64(addr + 8); + return decoder.decode(new DataView(this._inst.exports.mem.buffer, saddr, len)); + } + + const timeOrigin = Date.now() - performance.now(); + this.importObject = { + go: { + // Go's SP does not change as long as no Go code is running. Some operations (e.g. calls, getters and setters) + // may synchronously trigger a Go event handler. This makes Go code get executed in the middle of the imported + // function. A goroutine can switch to a new stack if the current stack is too small (see morestack function). + // This changes the SP, thus we have to update the SP used by the imported function. + + // func wasmExit(code int32) + "runtime.wasmExit": (sp) => { + sp >>>= 0; + const code = this.mem.getInt32(sp + 8, true); + this.exited = true; + delete this._inst; + delete this._values; + delete this._goRefCounts; + delete this._ids; + delete this._idPool; + this.exit(code); + }, + + // func wasmWrite(fd uintptr, p unsafe.Pointer, n int32) + "runtime.wasmWrite": (sp) => { + sp >>>= 0; + const fd = getInt64(sp + 8); + const p = getInt64(sp + 16); + const n = this.mem.getInt32(sp + 24, true); + fs.writeSync(fd, new Uint8Array(this._inst.exports.mem.buffer, p, n)); + }, + + // func resetMemoryDataView() + "runtime.resetMemoryDataView": (sp) => { + sp >>>= 0; + this.mem = new DataView(this._inst.exports.mem.buffer); + }, + + // func nanotime1() int64 + "runtime.nanotime1": (sp) => { + sp >>>= 0; + setInt64(sp + 8, (timeOrigin + performance.now()) * 1000000); + }, + + // func walltime() (sec int64, nsec int32) + "runtime.walltime": (sp) => { + sp >>>= 0; + const msec = (new Date).getTime(); + setInt64(sp + 8, msec / 1000); + this.mem.setInt32(sp + 16, (msec % 1000) * 1000000, true); + }, + + // func scheduleTimeoutEvent(delay int64) int32 + "runtime.scheduleTimeoutEvent": (sp) => { + sp >>>= 0; + const id = this._nextCallbackTimeoutID; + this._nextCallbackTimeoutID++; + this._scheduledTimeouts.set(id, setTimeout( + () => { + this._resume(); + while (this._scheduledTimeouts.has(id)) { + // for some reason Go failed to register the timeout event, log and try again + // (temporary workaround for https://github.com/golang/go/issues/28975) + console.warn("scheduleTimeoutEvent: missed timeout event"); + this._resume(); + } + }, + getInt64(sp + 8) + 1, // setTimeout has been seen to fire up to 1 millisecond early + )); + this.mem.setInt32(sp + 16, id, true); + }, + + // func clearTimeoutEvent(id int32) + "runtime.clearTimeoutEvent": (sp) => { + sp >>>= 0; + const id = this.mem.getInt32(sp + 8, true); + clearTimeout(this._scheduledTimeouts.get(id)); + this._scheduledTimeouts.delete(id); + }, + + // func getRandomData(r []byte) + "runtime.getRandomData": (sp) => { + sp >>>= 0; + crypto.getRandomValues(loadSlice(sp + 8)); + }, + + // func finalizeRef(v ref) + "syscall/js.finalizeRef": (sp) => { + sp >>>= 0; + const id = this.mem.getUint32(sp + 8, true); + this._goRefCounts[id]--; + if (this._goRefCounts[id] === 0) { + const v = this._values[id]; + this._values[id] = null; + this._ids.delete(v); + this._idPool.push(id); + } + }, + + // func stringVal(value string) ref + "syscall/js.stringVal": (sp) => { + sp >>>= 0; + storeValue(sp + 24, loadString(sp + 8)); + }, + + // func valueGet(v ref, p string) ref + "syscall/js.valueGet": (sp) => { + sp >>>= 0; + const result = Reflect.get(loadValue(sp + 8), loadString(sp + 16)); + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 32, result); + }, + + // func valueSet(v ref, p string, x ref) + "syscall/js.valueSet": (sp) => { + sp >>>= 0; + Reflect.set(loadValue(sp + 8), loadString(sp + 16), loadValue(sp + 32)); + }, + + // func valueDelete(v ref, p string) + "syscall/js.valueDelete": (sp) => { + sp >>>= 0; + Reflect.deleteProperty(loadValue(sp + 8), loadString(sp + 16)); + }, + + // func valueIndex(v ref, i int) ref + "syscall/js.valueIndex": (sp) => { + sp >>>= 0; + storeValue(sp + 24, Reflect.get(loadValue(sp + 8), getInt64(sp + 16))); + }, + + // valueSetIndex(v ref, i int, x ref) + "syscall/js.valueSetIndex": (sp) => { + sp >>>= 0; + Reflect.set(loadValue(sp + 8), getInt64(sp + 16), loadValue(sp + 24)); + }, + + // func valueCall(v ref, m string, args []ref) (ref, bool) + "syscall/js.valueCall": (sp) => { + sp >>>= 0; + try { + const v = loadValue(sp + 8); + const m = Reflect.get(v, loadString(sp + 16)); + const args = loadSliceOfValues(sp + 32); + const result = Reflect.apply(m, v, args); + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 56, result); + this.mem.setUint8(sp + 64, 1); + } catch (err) { + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 56, err); + this.mem.setUint8(sp + 64, 0); + } + }, + + // func valueInvoke(v ref, args []ref) (ref, bool) + "syscall/js.valueInvoke": (sp) => { + sp >>>= 0; + try { + const v = loadValue(sp + 8); + const args = loadSliceOfValues(sp + 16); + const result = Reflect.apply(v, undefined, args); + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 40, result); + this.mem.setUint8(sp + 48, 1); + } catch (err) { + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 40, err); + this.mem.setUint8(sp + 48, 0); + } + }, + + // func valueNew(v ref, args []ref) (ref, bool) + "syscall/js.valueNew": (sp) => { + sp >>>= 0; + try { + const v = loadValue(sp + 8); + const args = loadSliceOfValues(sp + 16); + const result = Reflect.construct(v, args); + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 40, result); + this.mem.setUint8(sp + 48, 1); + } catch (err) { + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 40, err); + this.mem.setUint8(sp + 48, 0); + } + }, + + // func valueLength(v ref) int + "syscall/js.valueLength": (sp) => { + sp >>>= 0; + setInt64(sp + 16, parseInt(loadValue(sp + 8).length)); + }, + + // valuePrepareString(v ref) (ref, int) + "syscall/js.valuePrepareString": (sp) => { + sp >>>= 0; + const str = encoder.encode(String(loadValue(sp + 8))); + storeValue(sp + 16, str); + setInt64(sp + 24, str.length); + }, + + // valueLoadString(v ref, b []byte) + "syscall/js.valueLoadString": (sp) => { + sp >>>= 0; + const str = loadValue(sp + 8); + loadSlice(sp + 16).set(str); + }, + + // func valueInstanceOf(v ref, t ref) bool + "syscall/js.valueInstanceOf": (sp) => { + sp >>>= 0; + this.mem.setUint8(sp + 24, (loadValue(sp + 8) instanceof loadValue(sp + 16)) ? 1 : 0); + }, + + // func copyBytesToGo(dst []byte, src ref) (int, bool) + "syscall/js.copyBytesToGo": (sp) => { + sp >>>= 0; + const dst = loadSlice(sp + 8); + const src = loadValue(sp + 32); + if (!(src instanceof Uint8Array || src instanceof Uint8ClampedArray)) { + this.mem.setUint8(sp + 48, 0); + return; + } + const toCopy = src.subarray(0, dst.length); + dst.set(toCopy); + setInt64(sp + 40, toCopy.length); + this.mem.setUint8(sp + 48, 1); + }, + + // func copyBytesToJS(dst ref, src []byte) (int, bool) + "syscall/js.copyBytesToJS": (sp) => { + sp >>>= 0; + const dst = loadValue(sp + 8); + const src = loadSlice(sp + 16); + if (!(dst instanceof Uint8Array || dst instanceof Uint8ClampedArray)) { + this.mem.setUint8(sp + 48, 0); + return; + } + const toCopy = src.subarray(0, dst.length); + dst.set(toCopy); + setInt64(sp + 40, toCopy.length); + this.mem.setUint8(sp + 48, 1); + }, + + "debug": (value) => { + console.log(value); + }, + } + }; + } + + async run(instance) { + if (!(instance instanceof WebAssembly.Instance)) { + throw new Error("Go.run: WebAssembly.Instance expected"); + } + this._inst = instance; + this.mem = new DataView(this._inst.exports.mem.buffer); + this._values = [ // JS values that Go currently has references to, indexed by reference id + NaN, + 0, + null, + true, + false, + global, + this, + ]; + this._goRefCounts = new Array(this._values.length).fill(Infinity); // number of references that Go has to a JS value, indexed by reference id + this._ids = new Map([ // mapping from JS values to reference ids + [0, 1], + [null, 2], + [true, 3], + [false, 4], + [global, 5], + [this, 6], + ]); + this._idPool = []; // unused ids that have been garbage collected + this.exited = false; // whether the Go program has exited + + // Pass command line arguments and environment variables to WebAssembly by writing them to the linear memory. + let offset = 4096; + + const strPtr = (str) => { + const ptr = offset; + const bytes = encoder.encode(str + "\0"); + new Uint8Array(this.mem.buffer, offset, bytes.length).set(bytes); + offset += bytes.length; + if (offset % 8 !== 0) { + offset += 8 - (offset % 8); + } + return ptr; + }; + + const argc = this.argv.length; + + const argvPtrs = []; + this.argv.forEach((arg) => { + argvPtrs.push(strPtr(arg)); + }); + argvPtrs.push(0); + + const keys = Object.keys(this.env).sort(); + keys.forEach((key) => { + argvPtrs.push(strPtr(`${key}=${this.env[key]}`)); + }); + argvPtrs.push(0); + + const argv = offset; + argvPtrs.forEach((ptr) => { + this.mem.setUint32(offset, ptr, true); + this.mem.setUint32(offset + 4, 0, true); + offset += 8; + }); + + // The linker guarantees global data starts from at least wasmMinDataAddr. + // Keep in sync with cmd/link/internal/ld/data.go:wasmMinDataAddr. + const wasmMinDataAddr = 4096 + 8192; + if (offset >= wasmMinDataAddr) { + throw new Error("total length of command line and environment variables exceeds limit"); + } + + this._inst.exports.run(argc, argv); + if (this.exited) { + this._resolveExitPromise(); + } + await this._exitPromise; + } + + _resume() { + if (this.exited) { + throw new Error("Go program has already exited"); + } + this._inst.exports.resume(); + if (this.exited) { + this._resolveExitPromise(); + } + } + + _makeFuncWrapper(id) { + const go = this; + return function () { + const event = { id: id, this: this, args: arguments }; + go._pendingEvent = event; + go._resume(); + return event.result; + }; + } + } + + if ( + typeof module !== "undefined" && + global.require && + global.require.main === module && + global.process && + global.process.versions && + !global.process.versions.electron + ) { + if (process.argv.length < 3) { + console.error("usage: go_js_wasm_exec [wasm binary] [arguments]"); + process.exit(1); + } + + const go = new Go(); + go.argv = process.argv.slice(2); + go.env = Object.assign({ TMPDIR: require("os").tmpdir() }, process.env); + go.exit = process.exit; + WebAssembly.instantiate(fs.readFileSync(process.argv[2]), go.importObject).then((result) => { + process.on("exit", (code) => { // Node.js exits if no event handler is pending + if (code === 0 && !go.exited) { + // deadlock, make Go print error and stack traces + go._pendingEvent = { id: 0 }; + go._resume(); + } + }); + return go.run(result.instance); + }).catch((err) => { + console.error(err); + process.exit(1); + }); + } +})(); diff --git a/wa-js/run-go-wasm-1.21.js b/wa-js/run-go-wasm-1.21.js new file mode 100644 index 00000000..bc6f2102 --- /dev/null +++ b/wa-js/run-go-wasm-1.21.js @@ -0,0 +1,561 @@ +// Copyright 2018 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +"use strict"; + +(() => { + const enosys = () => { + const err = new Error("not implemented"); + err.code = "ENOSYS"; + return err; + }; + + if (!globalThis.fs) { + let outputBuf = ""; + globalThis.fs = { + constants: { O_WRONLY: -1, O_RDWR: -1, O_CREAT: -1, O_TRUNC: -1, O_APPEND: -1, O_EXCL: -1 }, // unused + writeSync(fd, buf) { + outputBuf += decoder.decode(buf); + const nl = outputBuf.lastIndexOf("\n"); + if (nl != -1) { + console.log(outputBuf.substring(0, nl)); + outputBuf = outputBuf.substring(nl + 1); + } + return buf.length; + }, + write(fd, buf, offset, length, position, callback) { + if (offset !== 0 || length !== buf.length || position !== null) { + callback(enosys()); + return; + } + const n = this.writeSync(fd, buf); + callback(null, n); + }, + chmod(path, mode, callback) { callback(enosys()); }, + chown(path, uid, gid, callback) { callback(enosys()); }, + close(fd, callback) { callback(enosys()); }, + fchmod(fd, mode, callback) { callback(enosys()); }, + fchown(fd, uid, gid, callback) { callback(enosys()); }, + fstat(fd, callback) { callback(enosys()); }, + fsync(fd, callback) { callback(null); }, + ftruncate(fd, length, callback) { callback(enosys()); }, + lchown(path, uid, gid, callback) { callback(enosys()); }, + link(path, link, callback) { callback(enosys()); }, + lstat(path, callback) { callback(enosys()); }, + mkdir(path, perm, callback) { callback(enosys()); }, + open(path, flags, mode, callback) { callback(enosys()); }, + read(fd, buffer, offset, length, position, callback) { callback(enosys()); }, + readdir(path, callback) { callback(enosys()); }, + readlink(path, callback) { callback(enosys()); }, + rename(from, to, callback) { callback(enosys()); }, + rmdir(path, callback) { callback(enosys()); }, + stat(path, callback) { callback(enosys()); }, + symlink(path, link, callback) { callback(enosys()); }, + truncate(path, length, callback) { callback(enosys()); }, + unlink(path, callback) { callback(enosys()); }, + utimes(path, atime, mtime, callback) { callback(enosys()); }, + }; + } + + if (!globalThis.process) { + globalThis.process = { + getuid() { return -1; }, + getgid() { return -1; }, + geteuid() { return -1; }, + getegid() { return -1; }, + getgroups() { throw enosys(); }, + pid: -1, + ppid: -1, + umask() { throw enosys(); }, + cwd() { throw enosys(); }, + chdir() { throw enosys(); }, + } + } + + if (!globalThis.crypto) { + throw new Error("globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)"); + } + + if (!globalThis.performance) { + throw new Error("globalThis.performance is not available, polyfill required (performance.now only)"); + } + + if (!globalThis.TextEncoder) { + throw new Error("globalThis.TextEncoder is not available, polyfill required"); + } + + if (!globalThis.TextDecoder) { + throw new Error("globalThis.TextDecoder is not available, polyfill required"); + } + + const encoder = new TextEncoder("utf-8"); + const decoder = new TextDecoder("utf-8"); + + globalThis.Go = class { + constructor() { + this.argv = ["js"]; + this.env = {}; + this.exit = (code) => { + if (code !== 0) { + console.warn("exit code:", code); + } + }; + this._exitPromise = new Promise((resolve) => { + this._resolveExitPromise = resolve; + }); + this._pendingEvent = null; + this._scheduledTimeouts = new Map(); + this._nextCallbackTimeoutID = 1; + + const setInt64 = (addr, v) => { + this.mem.setUint32(addr + 0, v, true); + this.mem.setUint32(addr + 4, Math.floor(v / 4294967296), true); + } + + const setInt32 = (addr, v) => { + this.mem.setUint32(addr + 0, v, true); + } + + const getInt64 = (addr) => { + const low = this.mem.getUint32(addr + 0, true); + const high = this.mem.getInt32(addr + 4, true); + return low + high * 4294967296; + } + + const loadValue = (addr) => { + const f = this.mem.getFloat64(addr, true); + if (f === 0) { + return undefined; + } + if (!isNaN(f)) { + return f; + } + + const id = this.mem.getUint32(addr, true); + return this._values[id]; + } + + const storeValue = (addr, v) => { + const nanHead = 0x7FF80000; + + if (typeof v === "number" && v !== 0) { + if (isNaN(v)) { + this.mem.setUint32(addr + 4, nanHead, true); + this.mem.setUint32(addr, 0, true); + return; + } + this.mem.setFloat64(addr, v, true); + return; + } + + if (v === undefined) { + this.mem.setFloat64(addr, 0, true); + return; + } + + let id = this._ids.get(v); + if (id === undefined) { + id = this._idPool.pop(); + if (id === undefined) { + id = this._values.length; + } + this._values[id] = v; + this._goRefCounts[id] = 0; + this._ids.set(v, id); + } + this._goRefCounts[id]++; + let typeFlag = 0; + switch (typeof v) { + case "object": + if (v !== null) { + typeFlag = 1; + } + break; + case "string": + typeFlag = 2; + break; + case "symbol": + typeFlag = 3; + break; + case "function": + typeFlag = 4; + break; + } + this.mem.setUint32(addr + 4, nanHead | typeFlag, true); + this.mem.setUint32(addr, id, true); + } + + const loadSlice = (addr) => { + const array = getInt64(addr + 0); + const len = getInt64(addr + 8); + return new Uint8Array(this._inst.exports.mem.buffer, array, len); + } + + const loadSliceOfValues = (addr) => { + const array = getInt64(addr + 0); + const len = getInt64(addr + 8); + const a = new Array(len); + for (let i = 0; i < len; i++) { + a[i] = loadValue(array + i * 8); + } + return a; + } + + const loadString = (addr) => { + const saddr = getInt64(addr + 0); + const len = getInt64(addr + 8); + return decoder.decode(new DataView(this._inst.exports.mem.buffer, saddr, len)); + } + + const timeOrigin = Date.now() - performance.now(); + this.importObject = { + _gotest: { + add: (a, b) => a + b, + }, + gojs: { + // Go's SP does not change as long as no Go code is running. Some operations (e.g. calls, getters and setters) + // may synchronously trigger a Go event handler. This makes Go code get executed in the middle of the imported + // function. A goroutine can switch to a new stack if the current stack is too small (see morestack function). + // This changes the SP, thus we have to update the SP used by the imported function. + + // func wasmExit(code int32) + "runtime.wasmExit": (sp) => { + sp >>>= 0; + const code = this.mem.getInt32(sp + 8, true); + this.exited = true; + delete this._inst; + delete this._values; + delete this._goRefCounts; + delete this._ids; + delete this._idPool; + this.exit(code); + }, + + // func wasmWrite(fd uintptr, p unsafe.Pointer, n int32) + "runtime.wasmWrite": (sp) => { + sp >>>= 0; + const fd = getInt64(sp + 8); + const p = getInt64(sp + 16); + const n = this.mem.getInt32(sp + 24, true); + fs.writeSync(fd, new Uint8Array(this._inst.exports.mem.buffer, p, n)); + }, + + // func resetMemoryDataView() + "runtime.resetMemoryDataView": (sp) => { + sp >>>= 0; + this.mem = new DataView(this._inst.exports.mem.buffer); + }, + + // func nanotime1() int64 + "runtime.nanotime1": (sp) => { + sp >>>= 0; + setInt64(sp + 8, (timeOrigin + performance.now()) * 1000000); + }, + + // func walltime() (sec int64, nsec int32) + "runtime.walltime": (sp) => { + sp >>>= 0; + const msec = (new Date).getTime(); + setInt64(sp + 8, msec / 1000); + this.mem.setInt32(sp + 16, (msec % 1000) * 1000000, true); + }, + + // func scheduleTimeoutEvent(delay int64) int32 + "runtime.scheduleTimeoutEvent": (sp) => { + sp >>>= 0; + const id = this._nextCallbackTimeoutID; + this._nextCallbackTimeoutID++; + this._scheduledTimeouts.set(id, setTimeout( + () => { + this._resume(); + while (this._scheduledTimeouts.has(id)) { + // for some reason Go failed to register the timeout event, log and try again + // (temporary workaround for https://github.com/golang/go/issues/28975) + console.warn("scheduleTimeoutEvent: missed timeout event"); + this._resume(); + } + }, + getInt64(sp + 8), + )); + this.mem.setInt32(sp + 16, id, true); + }, + + // func clearTimeoutEvent(id int32) + "runtime.clearTimeoutEvent": (sp) => { + sp >>>= 0; + const id = this.mem.getInt32(sp + 8, true); + clearTimeout(this._scheduledTimeouts.get(id)); + this._scheduledTimeouts.delete(id); + }, + + // func getRandomData(r []byte) + "runtime.getRandomData": (sp) => { + sp >>>= 0; + crypto.getRandomValues(loadSlice(sp + 8)); + }, + + // func finalizeRef(v ref) + "syscall/js.finalizeRef": (sp) => { + sp >>>= 0; + const id = this.mem.getUint32(sp + 8, true); + this._goRefCounts[id]--; + if (this._goRefCounts[id] === 0) { + const v = this._values[id]; + this._values[id] = null; + this._ids.delete(v); + this._idPool.push(id); + } + }, + + // func stringVal(value string) ref + "syscall/js.stringVal": (sp) => { + sp >>>= 0; + storeValue(sp + 24, loadString(sp + 8)); + }, + + // func valueGet(v ref, p string) ref + "syscall/js.valueGet": (sp) => { + sp >>>= 0; + const result = Reflect.get(loadValue(sp + 8), loadString(sp + 16)); + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 32, result); + }, + + // func valueSet(v ref, p string, x ref) + "syscall/js.valueSet": (sp) => { + sp >>>= 0; + Reflect.set(loadValue(sp + 8), loadString(sp + 16), loadValue(sp + 32)); + }, + + // func valueDelete(v ref, p string) + "syscall/js.valueDelete": (sp) => { + sp >>>= 0; + Reflect.deleteProperty(loadValue(sp + 8), loadString(sp + 16)); + }, + + // func valueIndex(v ref, i int) ref + "syscall/js.valueIndex": (sp) => { + sp >>>= 0; + storeValue(sp + 24, Reflect.get(loadValue(sp + 8), getInt64(sp + 16))); + }, + + // valueSetIndex(v ref, i int, x ref) + "syscall/js.valueSetIndex": (sp) => { + sp >>>= 0; + Reflect.set(loadValue(sp + 8), getInt64(sp + 16), loadValue(sp + 24)); + }, + + // func valueCall(v ref, m string, args []ref) (ref, bool) + "syscall/js.valueCall": (sp) => { + sp >>>= 0; + try { + const v = loadValue(sp + 8); + const m = Reflect.get(v, loadString(sp + 16)); + const args = loadSliceOfValues(sp + 32); + const result = Reflect.apply(m, v, args); + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 56, result); + this.mem.setUint8(sp + 64, 1); + } catch (err) { + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 56, err); + this.mem.setUint8(sp + 64, 0); + } + }, + + // func valueInvoke(v ref, args []ref) (ref, bool) + "syscall/js.valueInvoke": (sp) => { + sp >>>= 0; + try { + const v = loadValue(sp + 8); + const args = loadSliceOfValues(sp + 16); + const result = Reflect.apply(v, undefined, args); + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 40, result); + this.mem.setUint8(sp + 48, 1); + } catch (err) { + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 40, err); + this.mem.setUint8(sp + 48, 0); + } + }, + + // func valueNew(v ref, args []ref) (ref, bool) + "syscall/js.valueNew": (sp) => { + sp >>>= 0; + try { + const v = loadValue(sp + 8); + const args = loadSliceOfValues(sp + 16); + const result = Reflect.construct(v, args); + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 40, result); + this.mem.setUint8(sp + 48, 1); + } catch (err) { + sp = this._inst.exports.getsp() >>> 0; // see comment above + storeValue(sp + 40, err); + this.mem.setUint8(sp + 48, 0); + } + }, + + // func valueLength(v ref) int + "syscall/js.valueLength": (sp) => { + sp >>>= 0; + setInt64(sp + 16, parseInt(loadValue(sp + 8).length)); + }, + + // valuePrepareString(v ref) (ref, int) + "syscall/js.valuePrepareString": (sp) => { + sp >>>= 0; + const str = encoder.encode(String(loadValue(sp + 8))); + storeValue(sp + 16, str); + setInt64(sp + 24, str.length); + }, + + // valueLoadString(v ref, b []byte) + "syscall/js.valueLoadString": (sp) => { + sp >>>= 0; + const str = loadValue(sp + 8); + loadSlice(sp + 16).set(str); + }, + + // func valueInstanceOf(v ref, t ref) bool + "syscall/js.valueInstanceOf": (sp) => { + sp >>>= 0; + this.mem.setUint8(sp + 24, (loadValue(sp + 8) instanceof loadValue(sp + 16)) ? 1 : 0); + }, + + // func copyBytesToGo(dst []byte, src ref) (int, bool) + "syscall/js.copyBytesToGo": (sp) => { + sp >>>= 0; + const dst = loadSlice(sp + 8); + const src = loadValue(sp + 32); + if (!(src instanceof Uint8Array || src instanceof Uint8ClampedArray)) { + this.mem.setUint8(sp + 48, 0); + return; + } + const toCopy = src.subarray(0, dst.length); + dst.set(toCopy); + setInt64(sp + 40, toCopy.length); + this.mem.setUint8(sp + 48, 1); + }, + + // func copyBytesToJS(dst ref, src []byte) (int, bool) + "syscall/js.copyBytesToJS": (sp) => { + sp >>>= 0; + const dst = loadValue(sp + 8); + const src = loadSlice(sp + 16); + if (!(dst instanceof Uint8Array || dst instanceof Uint8ClampedArray)) { + this.mem.setUint8(sp + 48, 0); + return; + } + const toCopy = src.subarray(0, dst.length); + dst.set(toCopy); + setInt64(sp + 40, toCopy.length); + this.mem.setUint8(sp + 48, 1); + }, + + "debug": (value) => { + console.log(value); + }, + } + }; + } + + async run(instance) { + if (!(instance instanceof WebAssembly.Instance)) { + throw new Error("Go.run: WebAssembly.Instance expected"); + } + this._inst = instance; + this.mem = new DataView(this._inst.exports.mem.buffer); + this._values = [ // JS values that Go currently has references to, indexed by reference id + NaN, + 0, + null, + true, + false, + globalThis, + this, + ]; + this._goRefCounts = new Array(this._values.length).fill(Infinity); // number of references that Go has to a JS value, indexed by reference id + this._ids = new Map([ // mapping from JS values to reference ids + [0, 1], + [null, 2], + [true, 3], + [false, 4], + [globalThis, 5], + [this, 6], + ]); + this._idPool = []; // unused ids that have been garbage collected + this.exited = false; // whether the Go program has exited + + // Pass command line arguments and environment variables to WebAssembly by writing them to the linear memory. + let offset = 4096; + + const strPtr = (str) => { + const ptr = offset; + const bytes = encoder.encode(str + "\0"); + new Uint8Array(this.mem.buffer, offset, bytes.length).set(bytes); + offset += bytes.length; + if (offset % 8 !== 0) { + offset += 8 - (offset % 8); + } + return ptr; + }; + + const argc = this.argv.length; + + const argvPtrs = []; + this.argv.forEach((arg) => { + argvPtrs.push(strPtr(arg)); + }); + argvPtrs.push(0); + + const keys = Object.keys(this.env).sort(); + keys.forEach((key) => { + argvPtrs.push(strPtr(`${key}=${this.env[key]}`)); + }); + argvPtrs.push(0); + + const argv = offset; + argvPtrs.forEach((ptr) => { + this.mem.setUint32(offset, ptr, true); + this.mem.setUint32(offset + 4, 0, true); + offset += 8; + }); + + // The linker guarantees global data starts from at least wasmMinDataAddr. + // Keep in sync with cmd/link/internal/ld/data.go:wasmMinDataAddr. + const wasmMinDataAddr = 4096 + 8192; + if (offset >= wasmMinDataAddr) { + throw new Error("total length of command line and environment variables exceeds limit"); + } + + this._inst.exports.run(argc, argv); + if (this.exited) { + this._resolveExitPromise(); + } + await this._exitPromise; + } + + _resume() { + if (this.exited) { + throw new Error("Go program has already exited"); + } + this._inst.exports.resume(); + if (this.exited) { + this._resolveExitPromise(); + } + } + + _makeFuncWrapper(id) { + const go = this; + return function () { + const event = { id: id, this: this, args: arguments }; + go._pendingEvent = event; + go._resume(); + return event.result; + }; + } + } +})(); diff --git a/wa-js/wa.wasm b/wa-js/wa.wasm new file mode 100755 index 00000000..be2a735f Binary files /dev/null and b/wa-js/wa.wasm differ diff --git a/wa-js/wa.wasm.zip b/wa-js/wa.wasm.zip new file mode 100644 index 00000000..dbda321d Binary files /dev/null and b/wa-js/wa.wasm.zip differ diff --git a/wa-wasip1/wa.wasm b/wa-wasip1/wa.wasm new file mode 100755 index 00000000..bbcfc793 Binary files /dev/null and b/wa-wasip1/wa.wasm differ diff --git a/wa-wasip1/wa.wasm.zip b/wa-wasip1/wa.wasm.zip new file mode 100644 index 00000000..72784079 Binary files /dev/null and b/wa-wasip1/wa.wasm.zip differ diff --git a/wat2c/index.html b/wat2c/index.html new file mode 100644 index 00000000..1b310034 --- /dev/null +++ b/wat2c/index.html @@ -0,0 +1 @@ +wa wat2c - convert a WebAssembly text file to a C source and header. diff --git a/wat2wasm/index.html b/wat2wasm/index.html new file mode 100644 index 00000000..f43a33f9 --- /dev/null +++ b/wat2wasm/index.html @@ -0,0 +1 @@ +wa wat2wasm - convert wat format to wasm binary format. diff --git a/wz/design.md b/wz/design.md new file mode 100644 index 00000000..bd6a9541 --- /dev/null +++ b/wz/design.md @@ -0,0 +1,780 @@ +## 凹语言中文语法设计 + +## 理念 + +凹语言的中文语法(下面简称凹中文版)的设计理念是: + +- 简洁:尽量减少冗余信息。例如:关键字尽量选择单字。 +- 易读:代码读起来应当尽量贴近自然语言。关键语法信息应当足够醒目。 +- 灵活:不必拘泥于英文编程语言的传统语法,可以尝试灵活的设计。 +- 符号:作为中文编程语言,并不排除,而是妙用标点符号和拼音字母。 + +凹中文版的语法设计主要受到了[文言](https://wy-lang.org/)编程语言的启发。 +但与文言编程语言的主要区别,在于上述的第一条理念:简洁。 + +我认为文言文相对于白话文,最大的特色就是简洁。 +而简洁的需求正是由于时代的背景所决定的:当时的书写工具和文字承载工具都非常昂贵,因此惜字如金并不只是比喻。 + +因此,为了尽量继承文言文的简洁精神,我在设计凹中语法时,与文言编程语言的风格有了很大的区别。 + +凹中文版的语法设计还参考了: + +- 凹英文语法。凹语言的中文和英文语法是相互兼容的,每个语法结构都能找到对应。并且到现在为止,凹中的解析前端还是和凹语言英文语法强耦合的。 +- Go语言。凹语言初版的实现是用Go写的,且前端代码也是从Go语言的前端移植过来的,因此在设计与实现中会更倾向于贴近Go的风格。 +- Kotlin和D语言。凹语言的中文语法设计中,也借鉴了一些Kotlin和D的语法设计。 + +**提示**:凹中文版语法还处于早期探索阶段,很有可能会发生变化。 + +我们计划在完成凹中文前端的重构(即完全脱离现有的Go前端)之时,得到一套稳定的中文语法。 + +现在可运行的示例,请参考凹语言工程中的[可执行示例](https://gitee.com/wa-lang/wa/tree/frontend_wz/waroot/examples/wz/)。 + +## 简单示例 + +下面是Hello World的凹中文版示例: + +```wz +引于 "书" +【启】: + 书·说:“你好,凹语言!” +。 +``` + +上面的代码中: + +- `引于`(`import`)是关键字。 +- `【】`是函数定义的标志,相当于`func`。 +- `书·说:“你好,凹语言”`是函数调用,相当于:`fmt.println(“你好,凹语言!”)` +- `:`和`。`是一个程序块的开始和结束符号。相当于`{`和`}`。 + +这些设计都是为了简洁和易读原则而做出的选择。 + +这段代码用凹英文版写出来就是: + +```wa +import "fmt" + +func main { + fmt.println("你好,凹语言!") +} +``` + +下面是一个更复杂的示例,展示了其他几个已经实现的基本语法: + +```wz + +引于 "书" + +【启】: + // 基本函数调用 + 书·说:"你好,凹语言!" + + // 调用自定义函数 + 书·说:"[自定义函数]:40+2=" + 书·曰:加:40、2 + + // 简单的条件判断 + 书·说:"[条件判断]:" + 设零之数 = 0 + 若零==1则: + 书·说:"是的,零和1是相等的。" + 否则: + 书·说:"错了,零和1是不同的。" + 。 + + // 简单的自定义类型 + 设某=点{横:10, 纵:2} + 书·说:"[自定义类型]点(10,2)的纵坐标和横坐标之和:" + 书·曰:某·横 + 某·纵 + 书·说:"[自定义类型]点(10,2)的纵坐标和横坐标之平方和:" + 书·曰:某·平方距: + + + // 循环 + + // 类似range + 书·说:"[简单范围] 从0到3:" + 自0至3,有i: + 书·曰:i + 。 + + // 类似三段式for循环,注意,由于中英文语义不同,这里的j==8是停止条件,和for循环的“持续条件”正好相反 + 书·说:"[循环语句] 从0到8:" + 从j=0,到j==8,有j++: + 书·曰:j + 。 + + 书·说:"[循环语句] 从10到0:" + 设步=1 + 从i=10,到i>=100,有: + i+=步 + 书·曰:i + 。 + + // 类似until语句 + 书·说:"[直到语句] 直到5:" + 设i=0 + 直到i>=5,有: + 书·曰:i + i++ + 。 + + // 多路选择 + 书·说:"[多路输出]k=3" + 设k=3 + 当k: + 为1,则:书·说:"一" + 为2,则:书·说:"二" + 为3,则:书·说:"三" + 否则:书·说:"不中" + 。 +。 + +《点》: + 横之数 + 纵之数 +。 + +【点·平方距】() => 数 : + 归于:此·纵*此·纵 + 此·横*此·横 +。 + +【加】(甲, 乙之数) => 数 : + 归于:甲+乙 +。 +``` + +## 详细介绍 + +本节详细介绍上面几种语法的设计,以及为何这样设计的缘由。 + +### 函数定义和函数块 + +先看Hello World: + +```wz +引于 "书" +【启】: + 书·说:“你好,凹语言!” +。 +``` + +在凹中文版里,函数的定义用实心方括号`【】`来表达。方括号之中的是函数名称。 + +这里的`【启】`函数,是整个程序的启动函数,即我们常说的`主函数`。 +本来我打算直接用以没有直接选择`【主】`,但写出来之后,这段代码读起来就有“主说:‘要有光’”的味道了,总有点怪怪的感觉。所以只好换了个字。 + +其实最开始我的设计几乎相当于对英文版的关键字替换: + +```wz +函数 主函数 { + 打印(“温故而知新,可以为师矣。”) +} +``` + +这里遇到了设计的第一个问题,直译的关键字变成中文之后读起来太过生硬了,而且也不够简洁。 + +这种风格的中文编程早就存在了,我相信这也是很多人一听到“中文编程”,就会产生的第一印象。 + +我认为这里有历史的原因,但也有习惯的原因。 + +”函数“、”打印“这种双字词,最开始翻译时,是用于技术文章,而不是程序的,因此简洁并不是翻译者的第一要务。 +当时面对这些中文还没有的技术性新概念,采用这种翻译是非常合理的。 + +实际上,最早的英文编程语言中,关键字读起来也是冗长而生硬的:"procedure"(后来被简化成proc),”function“(最近才简化成func\fun\fn), +可以看出英文关键字的演变也是有一个从陌生到习惯、从冗长明确到简洁的过程的。 + +中文没法像英文那么容易缩略,但中文也有优势,我们有非常多的单字词可以选择。 +因此我当时选择了”方“这个字,表示”方程、配方“的意味,用来替代”函数“;又选择了”曰“这个所有人都认识的单字来替代”打印“: + +```wz +方 启 { + 曰(”温故而知新,可以为师矣。“) +} +``` + +这样已经有一点”文言”编程语言的意味了。上面的代码完全可以用“文言”编程语言的风格来读: + +``` +吾有一方,其名曰【启】,其方如下: +一、曰:“温故而知新,可以为师矣。” +方止于此。 +``` + +这个风格其实用来编程已经没有太大问题,既有简洁又清晰,相当于“文言”编程语言的简略版,其效用和英文版几乎一致。 + +但我多看了几趟,仍然觉得有点别扭。 + +再看看、再瞅瞅,终于发现别扭的地方了:我们没有适应过高度抽象话的中文编程,所以下意识还是会把它当做中文句子来读。 +那么,不符合中文文本惯例的地方,就会显得有些跳脱,也就有了别扭感。 + +而这里最大的别扭感,来自于【空格】的使用。标准的中文文本里,是鲜有空格的。 + +我们的标点符号是全角,本身就自带了空白分隔。因此在这里用空格直接连接“方”和“启”字,就会有别扭感。 + +空格问题有两个解决办法: + +一是把空格改成文本和标点,回归中文叙述。这也是“文言”编程语言选择的办法。因此即使它用的都是文言文,我们也觉得读起来比较顺畅。 +但这个办法会增加大量冗余文字,在程序比较简单的时候还行,一旦比较复杂后,多出来的字词读起来就会浪费精力了; +另一个问题是这样平铺直述的表达是线性的,用来表示嵌套的逻辑时很难搞清楚层级。 + +第二个办法,就是巧妙地利用中文标点符号自带的空白,以他们来顶替空格的作用。 + +```wz +【启】: + 曰:“温故而知新,可以为师矣。” +。 +``` + +仔细观察,这里不论是实心方括号`【】`,还是中文冒号`:`,都既有充实的间隔感,又自带了空白,而且是符合中文阅读时内心的停顿节奏的空白。 +因此即使我用了很奇怪的组合`:`和`。`来替代`{}`,都不会显得很别扭。 +(实际上我最初选的结束符号是办公文本常见的`■`,这个符号本身就是结束符的意思。但由于这个符号远没有句号`。`好打出来,而它在凹中文版中又那么常用,因此我放弃它改用句号了。) + +这个办法还有一个好处,类似`【】`这样的中文标点非常醒目,因此用来定位程序关键要素时很方便。读代码时,目光一扫就能感受到大概有几个函数。 + +看看上面的“文言”的例子,最抓眼球的字,是不是就是`【启】`?这也是为什么我选择实心方括号而不是空心的原因。 + +另外,由于`【】`的特殊性,我们连`方`这个关键词都可以不用了。 + +至此,读者应该还有一个问题,那问什么要把`{}`也换掉呢? + +```wz +【启】{ + 曰(”温故而知新,可以为师矣。“) +} +``` + +这确实也是让我头疼的一个选择。'{'的作用本质上是开启新的名字空间。编程语言的名字空间是树状结构,`{}`开辟一个新的子空间,这里头可以继续引用上层的名称,但也可以新建只有自己(以及自己的子孙空间)才能访问的局部名称。要在程序中表达这样一个新的子空间,需要一个开始符号和一个结束符号。 + +常见的编程语言有三种方式来表达子空间: + +- 括号。包括C系列语言的花括号`{}`和LISP系的`()`。 +- 缩进。Python等语言采用的方法。优点是阅读的简洁性更强,更符合自然语言习惯。缺点是层次太多以后容易搞错层级。 +- 单独的`end`。Lua等语言用这个方法。很多时候开启新的子空间之前都有特殊的程序结构,例如上面的“函数定义”,所以不需要单独指定开启字符。但为了避免混淆,需要指定一个结束字符。`end`就是最常用的结束关键词。这种方式比`{}`更接近自然语言的风格,同时也不用考虑缩进的问题,算是前两种方法的折衷。 + +我本来选择的是第三种: + +```wz +【启】 + 曰(“温故而知新,可以为师矣。”) +。 +``` + +但多看了几遍之后又觉得有点别扭,最后还是把`【启】`后面的冒号加上了: + +```wz +【启】: + 曰(“温故而知新,可以为师矣。”) +。 +``` + +这个冒号虽然实际上是冗余的,但在阅读时提供的节奏感,我现在认为是必要的。 +这样实际上又回归了和`{}`完全等效的局面:`:`对应`{`,`。`对应`}`。还挺合适。 + +最后一个问题,问什么用冒号来表示函数调用: + +```wz +曰:“温故而知新,可以为师矣。” +``` + +```wz +曰(“温故而知新,可以为师矣。”) +``` + +再对比一下,其实没有本质的区别。非要说的话,怪我选的这个例子吧。实在是和《论语》 原文太像了: + +``` +子曰:“温故而知新,可以为师矣。” +``` + +这种平铺直叙的命令式,实在是太符合自然语言习惯了。 + +那么冒号会不会遇到问题呢?多个参数时怎么办?参数又是函数调用的嵌套时,又该怎么办?这个问题比较复杂,我会在后面函数相关的话题里专门描述。总之,一旦嵌套了,还是得有括号帮忙。 + +至此我们完成了HelloWorld的对比,也大致了解了凹中文版在语法设计时所衡量的因素。接下来,我们看看更复杂的情况。 + + +### 变量 + +凹英文版变量的定义方式如下: + +```wa +// 使用关键字var +var a: int = 1 +a = a + 1 + +// 快速定义语法 +b := 2 +``` + +凹语言的变量定义和Go语言基本一致,主要的区别在于变量和类型之间用`:`分隔,更接近Kotlin等语言的风格。 + +在凹中文版中,用关键字“**设**”来表示变量的定义: + +```wz +设甲=1 +甲=甲+1 +``` + +而用来赋值的操作符是`=`和英文版一致。 + +当然,类似abc这样的拼音符号,我认为在中文编程中并不需要避讳。因此上面的代码也可以写成: + +```wz +设a=1 +a=a+1 +``` + +要指明变量的类型,如果按照英文版的方式来的话,会是这样: + +```wz +设a:数=1 +a=a+1 +``` + +但我感觉这样读起来会有些卡顿感。由于中文缺乏空格,这里的冒号就显得太突兀了。况且冒号已经用在代码块和函数调用上了。 + +解决办法有三种。 + +一种是变量和类型一起用括号包裹起来: + +```wz +设(甲:数)=1 +``` + +或者类似于函数定义,用独立的符号把变量名包裹起来,而不是包裹类型: + +```wz +设「甲」数=1 +``` + +第三种是直接把“**之**”字做成关键字,用来替代冒号: + +```wz +设甲之数=1 +``` + +现在暂时没有找到最佳的方案,我决定暂时用“**之**”关键字分隔的方式。等有了更多的代码体验之后,再确定正式方案。 + + +### 数据类型 + +凹中文版最初版本只支持两个基本类型:《数》和《文》。它们分别对应与Go语言的`int`和`string`类型。更多的类型支持,留待整个编译器雏形搭建好之后再慢慢扩充。 + +复合类型中最常见的是数组(array)和映射(map)。 + +```wz +【启】: + // 数组 + 设a=[1,2,3] + + // 映射 + 设b={1:2, 3:4, 5:6} +。 +``` + +如果需要指明类型,则这么定义: + +```wz +【启】: + // 数组 + 设a之[数]=[1,2,3] + + // 映射 + 设b之{数:数}={1:2, 3:4, 5:6} +。 +``` + +这里数组和映射的类型名称语法和英文版不一样。英文版沿用了Go的写法: + +- 数组:`[]int` +- 映射:`map[int]int` + +而中文版则选择了和字面量几乎一致的形式。 + +- 数组:`[数]` +- 映射:`{数:数}` + +这也得益于中文版并没有采用`{}`来表示代码块,因此可以把`{}`留给映射的类型标记用。 + +TODO: 这个功能暂时还没实现。 + +### 自定义函数 + +凹英文版定义函数的语法如下: + +```wa +func add(a: int, b: int) => int { + return a+b +} + +func main { + println(add(1, 2)) +} +``` + +和Go语言类似,但有两点区别: + +- 参数列表和返回类型之间有个`=>`符号分隔,这样让函数定义在整个文件中更醒目。当前版本这个`=>`是可以省略的。 +- 如果函数参数为空,则可以把括号省略掉,比如这里的`func main`就直接接`{`了。 + +凹中文版的形式如下: + +```wz +【和】(a之数、b之数)=> 数: + 归于:a+b +。 + +【启】: + 曰:和:1、2 +。 +``` + +这里: +- 【和】是函数名,`【】`表示定义一个新函数,相当于`func`。 +- 参数列表和英文版基本一致,只不过参数的分隔由逗号`,`变成了顿号`、`。 +- `归于:`是关键字,和`return`一样。 + +这里为什么选择和英文版几乎一致的形式?是因为我做过几个其他尝试之后,并没有找到更清晰且可读的方法。 + +因此在初始版本里,这么写已经足够好了。并且也符合凹中文版的设计原则:简洁、清晰可读且妙用了符号。因此我就不去特意发明新符号去替代了。 + +这里只有一个小遗憾,`=>`这个箭头在中文里是没有的,用英文版的话,也没有足够好的空间,必须在右侧加一个空格。我现在用的字体会自动把`=>`两个字符转换成`⇒`这一个字符的样子,因此看起来还比较和谐。但由于`⇒`这个字符没有办法直接输入,只能战术放弃。 + +### 函数的调用 + +函数的调用采用的是“:”加参数列表的格式,而不是传统语言中双括号的格式。 + +``` +和:1、2 +``` + +相当于`add(1, 2)`。 + +如果需要嵌套,可以用括号表示优先级: + +``` +积:5、(和:2、3) +``` + +相当于:`mul(5, add(2, 3))` + +可以看到,凹中文版的函数调用语法的实际效用,和英文版并没有本质差别。 + +用`:`的主要好处是增加了简单调用的可读性,让普通代码中的一行行函数调用看起来更像是对话。但缺点是遇到复杂的调用组合,可能可读性不如英文版。我觉得这里也可能有习惯性的问题,所以打算先试用一段时间,看看是否真的有这个问题。 + +另外,函数调用的冒号和代码块的冒号是有冲突的,这一点需要再仔细验证一下。如果不行,可能考虑回归传统的`()`调用。 + +还有一个问题,即如果没有参数,该如何表示? + +我暂时的设计是如果没有参数,还是回归`()` + +```wz +【感叹】: + 书·曰:“呜呼!” +。 + +【启】: + 感叹() +。 +``` + +总之,这里的设计还是不太成熟,需要再探讨探讨。 + + +### 类型 + +用户自定义类型在高级编程语言中是非常重要的设计。很多设计模式都是依托于类型系统。 + +凹中文版的类型系统基本继承自Go语言,即不支持继承等传统OOP,而支持面向数据的类型体系,以及基于组装(composition)和接口模式的类型体系。 + +先看最基本的类型定义。让我们定义一个“点”类型(即Point),它的有两个成员,一个表示横坐标(x),另一个表示纵坐标(y),类型为整数(int)。 + +凹英文版: + +```wa +type Point struct { + x: int + y: int +} + +func main { + p := Point{x:1, y:2} + println(p.x+p.y) +} +``` + +凹中文版: + +```wz +《点》: + 纵之数 + 横之数 +。 + +【启】: + 设p=点{横:1,纵:2} + 曰:p·x+p·y +。 +``` + +这里和英文版唯一的区别就是用`《》`来表示类型定义,替代英文版的`type struct`。 +在struct中,成员的定义和英文版一致,只是用`之`来代替英文版的`:`,用于分隔成员名称和类型。 + +类型的组合模式还没有仔细研究,初步设想如下: + +```wz +《三维点》: + 有:点 + 深之数 +。 +``` + +这里的关键字“**有**”表示`has-a`关系,即《三维点》中包含《点》的成员。这样实际上和英文版的组合模式是一样的。 + +### 方法 + +方法是与类型绑定的函数。本质上它的运行和普通函数是一样的,但与类型绑定之后,我们可以非常自然地使用“主谓宾”的语法结构,而不是传统函数的“谓主宾”结构。 + +方法还有其他好处,比如可以和接口模式或组合模式结合起来,实现更复杂的类型系统。 + +凹英文版的方法定义如下: + +```wa +func Point.Length() => int { + return math.sqrt(this.x*this.x + this.y*this.y) +} + +func main { + p := Point{x:1, y:2} + println(p.Length()) +} +``` + +和Go不同之处在于,凹语言的方法定义之比普通函数在名称前多了一个前缀。`Point.Length`,表示`Length`方法是属于`Point`类型的。 +这种方式和Scala、Kotlin等语言风格类似。 + +在方法之内,用`this`关键字表示`Point`类型的实例;即,在`p.Length()`中,`this`其实就是`p`。 + + +凹中文版也沿用了这种方法,只是类型和方法名之间的间隔改为更适应中文的`·`,而`this`改为`此`: + +```wz +【点·长度】=> 数: + 归于:开方:此·纵*此·纵+此·横*此·横 +。 + +【启】: + 设p为点{横:1,纵:2} + 曰:p·长度() +。 +``` + +### 控制流 + +#### if-else语句 + +凹英文版的`if-else`语句如下: + +```go +a := 1 +b := 2 +if a>b { + println("bigger") +} else if a==b { + println("equals") +} else { + println("smaller") +} +``` + +凹中文版则是: + +```wz +若1>0则: + 曰:“1>0” +又若1=0则: + 曰:“1==0” +否则: + 曰:“1<=0” +。 +``` + +这里的关键字“**若**”表示`if`,关键字“**又若**”表示`else if`,关键字“**否则**”表示`else`,每个条件之后加了`则`关键字,以增加可读性。 + +#### 循环 + +凹英文版的循环有三种形式: + +1. 三段式for循环 + +```go +sum := 0 +for i:=0;i<10;i++ { + sum += i +} +println(sum) +``` + +2. while循环 + +```go +i := 1 +for i <= 10 { + println(i) + i++ +} +``` + +3. 无限循环 + +```go +for { + println("looping...") + if condition() { + break + } +} +``` + +第一种三段式循环,`for <初始化>;<条件>;<递进>`,三段操作分别是初始化循环变量、判断循环结束条件、以及每次执行完循环体之后做的递进更新。 +第二种和第三种形式其实是这三段操作的省略而已。 + + +凹中文版这样支持三段式:`从<初始化>,到<结束条件>,有<递进>:<循环体>`。例如: + +```wz +设和=0 + +从i=0,到i==10,有i++: + 和+=i +。 +``` + +这个语法还是比较清晰的。 + +注意,我没有找到一个关键字可以表示“只要条件成立,就继续执行”的意思,所以只能用`到`这样的字表示“只要条件城里,就结束循环”。正好和for循环的条件是反的。 + +没办法,这就是中英文的习惯不同。 + +非要和`for`循环一致的话,大概只能: + +```wz +设和=0 + +从i=0,若i<10,则i++: + 和+=i +。 +``` + +但只读这句话,总感觉想问“这个到哪里才结束啊?”。总之还是别扭。 + +为了支持`for`循环的习惯用户,我还是支持了这种写法。 + +另外,由于用关键字替代了符号,在省略时就不如`for`循环好看了: + +```wz +设i=0 +设和=0 + +从,到i==0,有: + 和+=i + i++ +。 +``` + +这显然好看,所以我加了一个新关键字“直到“,可以这么写: + +```wz +设i=0 +设和=0 + +直到i==0,有: + 和+=i + i++ +。 +``` + +这就和`while`差不多了。或者更确切的说,相当于`until`语句。 + +至于全部省略的无限循环,只好用类似于“循环”这样的关键字了。 + +```wz +循环: + 若xx则: + 停止 + 。 +。 +``` + +这显然不太雅观。还需要再改进。 + +#### switch语句 + +凹英文版的switch语句: + +```go +a := 2 + +switch i { + case 1: + println("one") + case 2: + println("two") + case 3, 4: + println("three and four") + case i < 10: + println("smaller than ten") + default: + println("nah") +} +``` + +中文版初步的想法是模仿Kotlin的`when`语句: + +```wz +当i: + 为1,则:曰:“一” + 为2,则:曰:“二” + 为3,则:曰:“三” + 否则:曰:“不中” +。 +``` + +关键字`当`、`为`、`则`、`否则`分别表示`switch`、`case`、`:`和`default`。 +这个语法和`when`其实也一致,因此未来可以扩充到更复杂的语句。 + +### 接口 + +凹英文版的接口: + +```wa +type duck interface { + quack() +} +``` + +这样,包含`quack()`方法的类型都可以当做`duck`来看待。 + +在凹中文版中,类型定义是双书名号`《》`,因此接口的定义自然用单书名号`〈〉`,所以: + +```wz +〈鸭子〉: + 【嘎嘎】 +。 +``` + +意思就是“鸭子”这个接口,包含一个“嘎嘎”方法。这样,任何包含“嘎嘎”方法的类型都可以当做“鸭子”来看待。 + +注:这个特性现在还没实现。 + + +## 展望 + +到现在(2023年4月初)为止,上述的中文语法几乎都实现了,但是还有一些细节需要完善。 + +凹中文版2023年的目标就是完全重写前端解析模块,完善所有语言特性的语法,与英文版做到100%对应。并作出正式的凹中文版标准语法。 + +届时就可以考虑给中文语法扩充更贴近中文用户使用习惯的特殊新语法了。 + +凹中文版的目标,不是让人人都用中文版语法、抛弃英文版语法,而是想抛砖引玉,启发所有人都来设计与开发更适合中国人的编程语言。 \ No newline at end of file diff --git a/wz/spec.md b/wz/spec.md new file mode 100644 index 00000000..26980364 --- /dev/null +++ b/wz/spec.md @@ -0,0 +1,605 @@ +# 语言规范 + +## 1 EBNF 记法 + +凹语言中文语法使用扩展的巴克斯-诺尔范式(EBNF)定义: + +``` +Production = production_name "=" [ Expression ] "." . +Expression = Alternative { "|" Alternative } . +Alternative = Term { Term } . +Term = production_name | token [ "…" token ] | Group | Option | Repetition . +Group = "(" Expression ")" . +Option = "[" Expression "]" . +Repetition = "{" Expression "}" . +``` + +其中生成式由表达式构造,表达式通过术和以下操作符构造,自上而下优先级递增(低到高): + +``` +| 选择 +() 分组 +[] 可选(0 或 1 次) +{} 重复(0 到 n 次) +``` + +用小写生成式名用于标识词法标记。使用非最终(Non-terminals)词法标记使用驼峰记法(CamelCase)。而位于双引号 "" 内的即为词法标记。形式 a … b 表示把从 a 到 b 的字符集作为选择项。横向省略号 … 也在本文档中非正式地表示各种列举或简略的代码片断。单个字符 …(不同于三个字符 ...)并非凹语言本身的标记。 + +## 2 源文件表示 + +为了更好支持中文和其他语言地区的编程,凹语言源码为采用 UTF-8 编码的 Unicode 文本表示。每个码点都是不同的,例如,大写与小写的字母就是不同的字符。同时为了兼容 C 语言字符串的习惯,编译器会阻止字符 NUL(U+0000)出现在源码文本中。此外,如果源文件开头有 BOM 头部,则编译器应该忽略它。为了遵循流行编程语言的习惯,下划线字符被作为字母对待。 + +## 3 词法元素 + +### 3.1 注释 + +凹语言默认采用行注释,以 `//` 开头的表示行注释。注释不能从字符或字符串字面中开始,也不能在其它注释中。行注释可以视做一个换行符。 + +### 3.2 词符类型(Token) + +构成凹语言的词符类型有: + +- 关键字,如`若`。 +- 标识符,如变量名称。 +- 面值常量,如整数`123`、字符串`"abc"`、 +- 运算操作符,如`+`、`-`。 +- 分隔符,如`【】`、`:`。空白字符` `可用于分隔关键字和标识符。 + +凹语言程序源码首先会通过词法解析,转化为有效的词符序列,便于后续的语法解析工作。 + +### 3.2 基本字符 + +凹语言中文版的基本字符包括: + +``` +数字 = "0" … "9" . +16进制数字 = "0" … "9" | "a" … "f" | "A" … "F" . +字母 = "a" … "z" | "A" … "Z" | "_" | Unicode字母 +Unicode字母 = /* 类别为"Letter"的Unicode字符 */ . +``` + +注:Unicode字符的“Letter”类别是Unicode标准定义的类别。凹语言根据Unicode标准来判定一个字符是否符合“Letter”类别。 + + +### 3.3 标识符(Identifier) + +标识符用做函数、变量、类型等程序实体的名称。一个标识符由一个或多个字母和数字组成。标识符的第一个字符必须是字母,以便于和数字面值区分。 + +``` +标识符 = 字母 { 字母 | 数字 } . +``` + +标识符的示例: + +``` +甲 +a +实例 +_obj +z123 +这是_一个_很长_的_变量 +``` + +### 3.5 关键字 + +关键字也是由字母组成的词符,但与标识符不同的是,它们是语言预先定义好的保留词,有特殊的语法意义,不能用于变量名称等。 + +凹中文版目前的关键字有: + +``` +引于 归于 设 之 +若 则 又若 否则 +从 到 有 直到 +自 至 当 为 +且......或 +停之 续之 +``` + +凹中文版还处于早期探索阶段,后续可能添加或修改新的关键字。 + +### 3.6 运算符 + +以下是凹中文版的运算符和与标点: + +``` ++ - * / ++= -= *= /= +++ -- ! & +【 】 ( ) +《 》 〈 〉 +[ ] { } +: 。 => +、 , +``` + +运算符用于组成表达式,标点用于组成或分隔语句。 + +### 3.7 字面值 + +字面值是在凹语言代码中明确写出的值,有布尔值、整数、浮点数、字符串、字符几种类型。其中布尔值有`真`、`假`;整数字面值有二进制、八进制、十进制、十六进制几种表示格式;浮点数字面值有小数、科学计数法和十六进制浮点数几种形式;字符串有普通字符串和支持多行的原生字符串几种形式;字符则是有单引号包含表示单个字符。所有的字面值都是无类型的常量。 + +普通字符串和字符面值支持的转义符号: + +``` +\a U+0007 警报或铃声 +\b U+0008 退格 +\f U+000C 换页 +\n U+000A 换行 +\r U+000D 回车 +\t U+0009 横向制表符 +\v U+000b 纵向制表符 +\\ U+005c 反斜杠 +\' U+0027 单引号(仅在符文字面中有效) +\" U+0022 双引号(仅在字符串字面中有效) +``` + +以下是常见的字面值常量: + +``` +# 布尔字面值 +真 +假 + +# 整数 +42 +4_2 +0600 +0_600 +-42 + +# 浮点数 +0. +72.40 +3.1415926 +1_5. # == 15.0 +0.15e+0_2 # == 15.0 +0x1p-2 # == 0.25 +0x2.p10 # == 2048.0 + +# 字符串 +"凹语言" # UTF-8 输入的文本 +`凹语言` # UTF-8 输入的原始字面文本 +"\u65e5\u672c\u8a9e" # 显式的 Unicode 码点 +"\U000065e5\U0000672c\U00008a9e" # 显式的 Unicode 码点 +"\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e" # 显式的 UTF-8 字节 + +# 字符 +'凹' +'a' +'ä' +'\t' +'\000' +'\007' +'\xff' +'\u12e4' +'\U00101234' +``` + +如果源码将两个码点表示为一个字符,例如包含着重号和字母的结合形式,凹语言会当作两个字面处理(因此不能作为字符面值)。 + +## 4 常量 + +常量由字面值或常量表达式产生,包含布尔常量、字符常量、整数常量、浮点数常量和字符串常量几种。其中字符、整数、浮点数常量统称为数值常量。 + +数值类型常量可表示任意精度的精确值而不受到逻辑现在,因此也就没有整数溢出和 IEEE-754 浮点数的一些限制。常量可以是有类型化的或无类型化的。字面常量、真、假某些只包含无类型化操作数的常量表达式产生的新常量结构也是无类型化的。 + +无类型化的常量有一个默认类型,也就是当上下文中需要类型化常量时通过隐式转换出来的类型, 例如在 `设i=0` 这种无显示类型的短变量声明中会被作为`数`(int)类型。 + +语言提提供了几个默认类型: + +- `布尔`,即`真`或`假`,对应英文版的`bool` +- `字`,即单个字符,如`a`、`甲`等,对应英文版的`rune` +- `数`,整数,对应英文版的`int`,整数类型还对应了几个不同位宽的类型,如`数8`表示用8为字节存储的整数。 +- `小数`,浮点数,对应英文版的`float` +- `文`,文本,即字符串,对应英文版的`string` + +尽管数值型常量值域无逻辑限制,但是实现时要求编译器至少有 256bit 表示整数常量和浮点数常量,如果发生溢出则需要在编译阶段给出一个错误。 + +## 5 变量 + +凹语言中变量是内存用用于保存值的存储位置,或者叫可被取地址的值。变量允许值的集合由其类型确定,比如 `数8` 类型表示 -128 到 127 的整数集合、`布尔`表示 `真`或 `假`的布尔值集合。 + +变量又分为具名和匿名两种:具名变量通过标识符引用、而匿名变量通过指针来引用。变量的静态类型在声明时确定,可以明确指定或者由初始化的值类型推导。变量的值可通过在表达式中引用变量取得。如果变量尚未赋值,其值即为其类型的零值。 + +零值从直观上表示内存中都是0的状态:布尔类型对应 `假`、数值类型对应 0、字符串对应空字符串`""`、指针和切片对应 `空`。如果是复合类型则其组成的元素均是零值。 + +``` +设甲之布尔 # `甲`是布尔类型 +设x # x值为空,类型为`万物`(即interface{}) +设v之*T # v值为空,类型为*T +``` + +全部的变量组成了程序的状态,也就是所谓的上下文信息。 + +## 6 类型 + +类型不仅仅决定了值的集合,同时还定义了与该类型值特定的操作集合。已命名类型可通过类型名指定。未命名类型可通过类型字面指定,它将根据既有的类型组成新的类型。 + +类型的 EBNF 语法如下: + +``` +类型定义 = "《" 类型名称 "》" ( "=" 类型面值 | ":" 类型成员列表 "。" ) . +类型名称 = 标识符 . +类型面值 = 数组类型 | 结构类型 | 指针类型 | 函数类型 | 接口类型 | 切片类型 | 映射类型 . +类型成员列表 = 类型成员 { "," 类型成员 } . +类型成员 = 成员名称 [ "之" 类型 ] . +成员名称 = 标识符 . +``` + +类型的定义有两种形式,一种是类型别名,用`=`表示,另一种是结构性类型,用`:`后接成员列表。 + +布尔值、数值与字符串类型的实例的命名是预声明的`布尔`、`数`、`文`等。 数组、结构体、指针、函数、接口、切片和映射这些复合类型可由类型字面再进行构造。 + +下面是定义类型的例子: + +``` +// 定义一个新的类型别名,名字叫“字节”,它实际上是“正8”整数类型的别名 +《字节》 = 正8 +// 定义一个新类型别名,名称叫“缓冲区”,它实际上是一个“字类型”的定长数组,即英文版的`[1024]byte` +《缓冲区》 = [字:1024] +// 定义一个新的类型别名,名字叫“字典”,它实际上是一个“文”类型的映射,即英文版的`map[string]string` +《字典》 = {文:文} + + +// 定义一个结构性类型,名字叫“点”,它有“横”与“纵”两个成员,分别代表横坐标和纵坐标 +《点》: + 横之数 + 纵之数 +。 +``` + +其中 `字节`、`缓冲区`和`字典`都是类型的别名(即不产生新类型对象),而`点`则产生新的类型。 + +### 5.1 布尔类型 + +预声明的布尔类型为 bool。布尔类型表示由预声明常量 true 和 false 所代表的布尔值的集。 + +### 5.2 数值类型 + +数值类型表示整数值和浮点数值的集合。预声明和架构无关的预声明数值类型: + +``` +u8 所有无符号 8 位整数集(0 到 255) +u16 所有无符号 16 位整数集(0 到 65535) +u32 所有无符号 32 位整数集(0 到 4294967295) +u64 所有无符号 64 位整数集(0 到 18446744073709551615) + +i8 所有带符号 8 位整数集(-128 到 127) +i16 所有带符号 16 位整数集(-32768 到 32767) +i32 所有带符号 32 位整数集(-2147483648 到 2147483647) +i64 所有带符号 64 位整数集(-9223372036854775808 到 9223372036854775807) + +f32 所有 IEEE-754 32 位浮点数集 +f64 所有 IEEE-754 64 位浮点数集 + +byte u8 的别名 +rune i32 的别名 +``` + +比如 i32 表示用 32bit 二进制补码表示的整数值集合。 + +此外还有大小取决于具体实现的预声明数值类型: + +``` +uint 32 或 64 位 +int 大小与 uint 相同 +uintptr 大到足以存储指针值无解释位的无符号整数 +``` + +但是对应凹语言来说,目前 uint/int/uintptr 在 WebAssembly 平台都是用 32bit 表示。 + +### 5.3 字符串类型 + +字符串类型为 string,表示字符串值的集,字符串的值为字节序列。字符串值是只读不可修改的(不是绑定到某个字符串值的变量):一旦被创建,字符串的内容就不能更改。 + +可使用内建函数 `len` 获取字符串 `s` 的长度。若该字符串为常量,则其长度即为编译时常量。 字符串的字节可通过整数 `0` 至 `len(s)-1` 访问。获取这样一个元素的地址是非法的:比如通过 `&s[i]` 访问字符串的第 `i` 个字节的地址是禁止的。 + +### 5.4 数组类型 + +数组是单一类型元素的序列,其中长度也是数组类型的一部分。数组的 EBNF 语法如下: + +``` +ArrayType = "[" ArrayLength "]" ElementType . +ArrayLength = Expression . +ElementType = Type . +``` + +可使用内建函数 `len` 获取数组的长度,返回的结果一个常量。可通过整数下标 `0` 到 `len(a)-1` 访问数组的元素。数组类型总是一维的,但可组合构成多维的类型。 + +``` +[32]byte +[2*N] struct { x, y :i32 } +[9527]*f64 +[3][5]int +[2][2][2]f64 // 等价于[2]([2]([2]f64)) +``` + +数组的长度可以使用常量表达式、或者是由初始化面值推导,数组的元素可以是数组从而可以构成多维数组。 + +### 5.5 切片类型 + +切片类型是在数组类型基础上抽象的类型,切片类型不包含底层数组的长度信息。切片类型底层是对某个数组的引用,未初始化切片的值为 nil。 + +可使用内建函数 `len` 获取切片的长度,返回的结果一个变量。可使用内建函数 `cap` 获取切片的容量,返回的结果一个变量。可通过整数下标 `0` 到 `len(a)-1` 访问切片的元素。切片一旦初始化,就总是引用一个包含其元素的底层数组。 因此,切片与引用同一个数组的其他切片共享存储;与此相反,不同的数组总是表示其不同的存储。 + +可以通过 make 内置函数创建切片(容量参赛是可选的): + +``` +make([]T, length) +make([]T, length, capacity) +``` + +类似于数组,切片总是一维的,但可组合构造多维切片对象。因为多维切片和多维数组的底层数据布局差异,其内部的切片必须单独进行初始化,但是带来的一个灵活性是不同子切片大小可以不同。 + +### 5.6 结构体类型 + +结构体和数组类似,数组采用下标来组织相同类型的值,而结构体定义命名的不同类型的元素序列。结构体类型中每一个元素都有一个名字和类型。字段名可显示地指定或通过匿名嵌入字段隐式地指定。在结构体中,字段名必须是唯一的。 + +``` +StructType = "struct" "{" { FieldDecl ";" } "}" . +FieldDecl = (IdentifierList ":" Type | EmbeddedField) [ Tag ] . +EmbeddedField = [ "*" ] TypeName . +Tag = string_lit . +``` + +下面是结构体的例子: + +``` +# 空结构体 +struct {} + +# 带 6 个字段的结构体 +struct { + x, y :int + u :f32 + _ :f32 # 填充 + A :*[]int + F :func() +} +``` + + +通过有类型而无显式字段名声明的字段为匿名字段,亦称为嵌入式字段或该结构体中此种类型的嵌入。 这种字段类型必须作为一个类型名 T 或一个非接口类型名的指针 *T来实现, 且 T 本身不能为指针类型。未限定类型名的行为类似于字段名。 + +``` +# 匿名字段的结构体类型 +struct { + T1 # 字段名为 T1 + *T2 # 字段名为 T2 + P.T3 # 字段名为 T3 + *P.T4 # 字段名为 T4 + x, y :i32 # 字段名为 x 和 y +} +``` + +字段声明可后跟一个可选的字符串字面值标注: + +``` +struct { + x, y : f64 "" # 空标注字符串相当于没有标注 + name : string "任何字符串都允许作为标注" + _ : [4]byte "这不是一个结构体字段" +} +``` + +标注是结构体的类型标识的一部分,未来可通过反射机制获得。 + +### 5.7 指针类型 + +指针类型表示一个指向所有给定类型变量的指针的集合,其中指向的类型称为指针的基础类型。未初始化的指针的值为 nil。 + +``` +PointerType = "*" BaseType . +BaseType = Type . +``` + +下面是指针类型的例子: + +``` +*Point +*[4]int +``` + +凹语言指针和传统的 C/C++ 指针并不完全相同,目前的实现更偏向引用。 + +### 5.8 函数类型 + +凹语言函数类型表示所有带相同形参和返回类型的集合。未初始化的函数类型变量的值为 nil。 + +``` +FunctionType = "func" Signature . +Signature = Parameters [ "=>" Result ] . +Result = Parameters | ":" Type . +Parameters = "(" [ ParameterList [ "," ] ] ")" . +ParameterList = ParameterDecl { "," ParameterDecl } . +ParameterDecl = [ IdentifierList ] ":" [ "..." ] Type . +``` + +在形参或结果的列表中,其名称必须都存在或都不存在。 若存在,则每个名称代表一个指定类型的项,所有在签名中的非空白名称必须是唯一的。 若不存在,则每个类型代表一个此类型的项。若恰好有一个未命名的值,它可能写作一个不加括号的类型,除此之外,形参和结果的列表总是在括号中。 + +函数签名中加入的最后一个形参可能有一个带 `...` 前缀的类型。 带这样形参的函数被称为变参函数,它可接受零个或多个实参。 + +``` +func() +func(x :int) => int +func(a, _ :int, z :f32) => bool +func(a, b :int, z :f32) => (bool) +func(prefix :string, values :...int) +func(a, b :int, z :f64, opt :...any) => (success bool) +func(int, int, f64) => (f64, *[]int) +func(n :int) => func(p :*T) +``` + +函数的类型可以用于全局函数、闭包函数、方法值等地方。 + +### 5.9 接口类型 + +接口类型定义满足方法列表的类型结合。目前只有结构体才能定义方法。未初始化的接口类型变量的值为 nil。 + +``` +InterfaceType = "interface" "{" { ( MethodSpec | InterfaceTypeName ) ";" } "}" . +MethodSpec = MethodName Signature . +MethodName = identifier . +InterfaceTypeName = TypeName . +``` + +下面是一个接口类型定义的方法集合: + +``` +# 一个简单的 File 接口 +interface { + Read(b :[]byte) => (n :int, err :error) + Write(b :[]byte) => (n :int, err :error) + Close() +} +``` + +如果 T 类型有着接口定义的方法,那么就表示实现了接口: + +``` +func T.Read(p :[]byte) => (n :int, err :error) +func T.Write(p :[]byte) => (n :int, err :error) +func T.Close() error +``` + +其中没有定义方法集的 `interface{}` 接口可以包含任何类型的值,同时它有一个 `any` 别名。 + +### 5.10 map类型 + +map 是一个同种类型元素的无序组,该类型称为元素类型 映射通过另一类型唯一的键集索引,该类型称为键类型。未初始化的映射值为 nil。 + +``` +MapType = "map" "[" KeyType "]" ElementType . +KeyType = Type . +``` + +比较操作符 `==`和 `!=` 必须由键类型的操作数完全定义;因此键类型不能是函数、映射或切片。若该键类型为接口类型,这些比较运算符必须由动态键值定义;失败将导致一个异常. + +同样通过 make 内置函数创建一个 map: + +``` +make(map[string]int) +make(map[string]int, 100) +``` + +make创建map时,第二个是一个可选的容量估计参数。 + +## 6 类型与值的性质 + +## 6.1 类型标识 + +若两个已命名类型的类型名源自相同的类型实现,它们就是相同的。一个已命名类型和一个未命名类型总不相同。若两个未命名类型其相应的类型字面相同,那么它们的类型相同,即它们的字面结构是否相同且其相应的组件类型是否相同。细节详述: + +- 若两个数组类型其元素类型相同且长度相同,那么它们的类型相同。 +- 若两个切片类型其元素类型相同,那么它们的类型相同。 +- 若两个结构体类型其字段序列相同、相应字段名相同、类型相同、标注相同,那么它们的类型相同。两个匿名字段根据其名字被判定是否相同。 +- 若两个指针类型其基础类型相同,那么它们的类型相同。 +- 若两个函数类型其形参个数相同、返回值相同、相应形参类型相同、返回值类型相同,那么它们的类型相同。形参和返回值名无需匹配。 +- 若两个接口类型其方法集相同、名字相同、函数类型相同,那么它们的类型相同。出自不同包的小写方法名总不相同。两接口类型是否相同与方法的次序无关。 +- 若两个map类型其键值类型相同,那么它们的类型相同。 + +若两个类型非相同即为不同。 + + +## 6.2 可赋值性 + +在下列情况下,值 x 可赋予类型为 T 的变量: + +- 当 x 的类型和 T 相同时。 +- 当 x 的类型 V 和 T 有相同的 底层类型 且在 V 或 T 中至少有一个不是已命名类型时。 +- 当 T 为接口类型且 x 实现了 T 时。 +- 当 x 为预声明标识符 nil 且 T 为指针、函数、切片、映射、通道或接口类型时。 +- 当 x 为无类型化,可通过类型 T 的值来表示的 常量时。 + +任何类型都可赋予下划线表示的空白标识符. + +## 6.3 可表示性 + +若满足以下条件,则常量 x 可表示为 T 类型的值: + +- x 在由 T 所确定的值的集合中。 +- T 为浮点类型且 x 可被舍入到 T 的精度而不会溢出。 + +下面是一个例子: + +``` + x T x 可表示为一个 T 类型的值,因为 + + 'a' byte 97 属于 byte 值的集合 + 97 rune rune 是 int32 的别名,且 97 属于 32 位整数值的集合 + "foo" string "foo" 属于 string 值的集合 + 1024 int16 1024 属于 16 位整数的集合 + 42.0 byte 42 属于无符号 8 位整数的集合 + 1e10 u64 10000000000 属于 64 位无符号整数的集合 + 2.718281828459045 f32 2.718281828459045 舍入到 2.7182817,它属于 f32 值的集合 + -1e-1000 f64 -1e-1000 舍入到 IEEE -0.0,它进一步简化为 0.0 + 0i int 0 是一个整数值 + + x T x 无法表示为一个 T 类型的值,因为 + + 0 bool 0 不属于布尔值的集合 + 'a' string 'a' 是一个 rune,它不属于 string 值的集合 + 1024 byte 1024 不属于无符号 8 位整数的集合 + -1 uint16 -1 不属于 16 位无符号整数的集合 + 1.1 int 1.1 不是一个整数值 + 1e1000 f64 1e1000 舍入后溢出到 IEEE +Inf +``` + +## 7 代码块 + +凹语言代码块为一对大括号括住的,可能为空的一系列声明和语句。 + +``` +Block = "{" StatementList "}" . +StatementList = { Statement ";" } . +``` + +除显式源码块外,还有一些隐式块: + +- 全域块包含所有的 凹语言 源码文本。 +- 每个包都有包含其所有 凹语言 源码文本的包块。 +- 每个文件都有包含其所有 凹语言 源码文本的文件块。 +- 每个 if、for 和 switch 语句都被视为处于其自身的隐式块中。 +- 每个 switch 语句中的子句其行为如同隐式块。 + +块可嵌套并会影响作用域。 + +## 8 声明与作用域 + +凹语言中声明可将非空白标识符绑定到一个常量、类型、变量、函数、标签或包。在程序中,每个标识符都必须被声明才能被使用。同一标识符不能在同一代码块中声明两次,且在文件与包代码块中不能同时声明。 + +下划线表示的空白标识符可像其它标识符一样在声明中使用,但它不会引入绑定被视作未声明的。在包块中,标识符 init 仅能用作 init 函数声明,且与空白标识符一样不会引入新的绑定。 + +``` +Declaration = ConstDecl | TypeDecl | VarDecl . +TopLevelDecl = Declaration | FunctionDecl | MethodDecl . +``` + +已声明标识符的作用域即为该标识符所表示的具名常量、类型、变量、函数、标签或包在源文本中的作用范围。 + +凹语言 使用块表示词法作用域: + +1. 预声明标识符的作用域为全域块。 +1. 即在任何函数之外的顶级声明的表示常量、类型、变量或函数的标识符其作用域为该包块。 +1. 已导入包的包名作用域为仅包含该导入声明的文件块。 +1. 表示方法接收器 this、函数形参或返回值变量的标识符,其作用域为该函数体。 +1. 在函数中声明为常量或变量的标识符,其作用域始于该函数中具体常量实现或变量实现的结尾,止于最内部包含块的结尾。 +1. 在函数中声明为类型的标识符,其作用域始于该函数中具体类型实现的标识符,止于最内部包含块的结尾。 + +在块中短声明的标识符可在其内部块中重新声明。 + +## 8.1 标签作用域 + +## 8.2 空白标识符 + + +## 9 表达式 + +## 10 语句 + +## 11 包结构 + +## 12 初始化和执行顺序 + + +