(module (type $FUNCSIG$viiii (func (param i32 i32 i32 i32))) (type $FUNCSIG$vii (func (param i32 i32))) (type $FUNCSIG$viii (func (param i32 i32 i32))) (type $FUNCSIG$viif (func (param i32 i32 f32))) (type $FUNCSIG$vif (func (param i32 f32))) (type $FUNCSIG$v (func)) (import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32))) (memory $0 1) (data (i32.const 8) "\01\00\00\00\1c\00\00\00s\00t\00d\00/\00p\00o\00i\00n\00t\00e\00r\00.\00t\00s\00") (table $0 1 funcref) (elem (i32.const 0) $null) (global $std/pointer/one (mut i32) (i32.const 0)) (global $std/pointer/two (mut i32) (i32.const 0)) (global $std/pointer/add (mut i32) (i32.const 0)) (global $std/pointer/sub (mut i32) (i32.const 0)) (global $std/pointer/nextOne (mut i32) (i32.const 0)) (global $std/pointer/buf (mut i32) (i32.const 0)) (global $~lib/memory/HEAP_BASE i32 (i32.const 44)) (export "memory" (memory $0)) (export "table" (table $0)) (start $start) (func $~lib/memory/memory.fill (; 1 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) (local $6 i64) block $~lib/util/memory/memset|inlined.0 local.get $2 i32.eqz if br $~lib/util/memory/memset|inlined.0 end local.get $0 local.get $1 i32.store8 local.get $0 local.get $2 i32.add i32.const 1 i32.sub local.get $1 i32.store8 local.get $2 i32.const 2 i32.le_u if br $~lib/util/memory/memset|inlined.0 end local.get $0 i32.const 1 i32.add local.get $1 i32.store8 local.get $0 i32.const 2 i32.add local.get $1 i32.store8 local.get $0 local.get $2 i32.add i32.const 2 i32.sub local.get $1 i32.store8 local.get $0 local.get $2 i32.add i32.const 3 i32.sub local.get $1 i32.store8 local.get $2 i32.const 6 i32.le_u if br $~lib/util/memory/memset|inlined.0 end local.get $0 i32.const 3 i32.add local.get $1 i32.store8 local.get $0 local.get $2 i32.add i32.const 4 i32.sub local.get $1 i32.store8 local.get $2 i32.const 8 i32.le_u if br $~lib/util/memory/memset|inlined.0 end i32.const 0 local.get $0 i32.sub i32.const 3 i32.and local.set $5 local.get $0 local.get $5 i32.add local.set $0 local.get $2 local.get $5 i32.sub local.set $2 local.get $2 i32.const -4 i32.and local.set $2 i32.const -1 i32.const 255 i32.div_u local.get $1 i32.const 255 i32.and i32.mul local.set $4 local.get $0 local.get $4 i32.store local.get $0 local.get $2 i32.add i32.const 4 i32.sub local.get $4 i32.store local.get $2 i32.const 8 i32.le_u if br $~lib/util/memory/memset|inlined.0 end local.get $0 i32.const 4 i32.add local.get $4 i32.store local.get $0 i32.const 8 i32.add local.get $4 i32.store local.get $0 local.get $2 i32.add i32.const 12 i32.sub local.get $4 i32.store local.get $0 local.get $2 i32.add i32.const 8 i32.sub local.get $4 i32.store local.get $2 i32.const 24 i32.le_u if br $~lib/util/memory/memset|inlined.0 end local.get $0 i32.const 12 i32.add local.get $4 i32.store local.get $0 i32.const 16 i32.add local.get $4 i32.store local.get $0 i32.const 20 i32.add local.get $4 i32.store local.get $0 i32.const 24 i32.add local.get $4 i32.store local.get $0 local.get $2 i32.add i32.const 28 i32.sub local.get $4 i32.store local.get $0 local.get $2 i32.add i32.const 24 i32.sub local.get $4 i32.store local.get $0 local.get $2 i32.add i32.const 20 i32.sub local.get $4 i32.store local.get $0 local.get $2 i32.add i32.const 16 i32.sub local.get $4 i32.store i32.const 24 local.get $0 i32.const 4 i32.and i32.add local.set $5 local.get $0 local.get $5 i32.add local.set $0 local.get $2 local.get $5 i32.sub local.set $2 local.get $4 i64.extend_i32_u local.get $4 i64.extend_i32_u i64.const 32 i64.shl i64.or local.set $6 block $break|0 loop $continue|0 local.get $2 i32.const 32 i32.ge_u if block local.get $0 local.get $6 i64.store local.get $0 i32.const 8 i32.add local.get $6 i64.store local.get $0 i32.const 16 i32.add local.get $6 i64.store local.get $0 i32.const 24 i32.add local.get $6 i64.store local.get $2 i32.const 32 i32.sub local.set $2 local.get $0 i32.const 32 i32.add local.set $0 end br $continue|0 end end end end ) (func $~lib/memory/memory.copy (; 2 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (local $3 i32) (local $4 i32) (local $5 i32) block $~lib/util/memory/memmove|inlined.0 local.get $0 local.get $1 i32.eq if br $~lib/util/memory/memmove|inlined.0 end local.get $0 local.get $1 i32.lt_u if local.get $1 i32.const 7 i32.and local.get $0 i32.const 7 i32.and i32.eq if block $break|0 loop $continue|0 local.get $0 i32.const 7 i32.and if block local.get $2 i32.eqz if br $~lib/util/memory/memmove|inlined.0 end local.get $2 i32.const 1 i32.sub local.set $2 block (result i32) local.get $0 local.tee $5 i32.const 1 i32.add local.set $0 local.get $5 end block (result i32) local.get $1 local.tee $5 i32.const 1 i32.add local.set $1 local.get $5 end i32.load8_u i32.store8 end br $continue|0 end end end block $break|1 loop $continue|1 local.get $2 i32.const 8 i32.ge_u if block local.get $0 local.get $1 i64.load i64.store local.get $2 i32.const 8 i32.sub local.set $2 local.get $0 i32.const 8 i32.add local.set $0 local.get $1 i32.const 8 i32.add local.set $1 end br $continue|1 end end end end block $break|2 loop $continue|2 local.get $2 if block block (result i32) local.get $0 local.tee $5 i32.const 1 i32.add local.set $0 local.get $5 end block (result i32) local.get $1 local.tee $5 i32.const 1 i32.add local.set $1 local.get $5 end i32.load8_u i32.store8 local.get $2 i32.const 1 i32.sub local.set $2 end br $continue|2 end end end else local.get $1 i32.const 7 i32.and local.get $0 i32.const 7 i32.and i32.eq if block $break|3 loop $continue|3 local.get $0 local.get $2 i32.add i32.const 7 i32.and if block local.get $2 i32.eqz if br $~lib/util/memory/memmove|inlined.0 end local.get $0 local.get $2 i32.const 1 i32.sub local.tee $2 i32.add local.get $1 local.get $2 i32.add i32.load8_u i32.store8 end br $continue|3 end end end block $break|4 loop $continue|4 local.get $2 i32.const 8 i32.ge_u if block local.get $2 i32.const 8 i32.sub local.set $2 local.get $0 local.get $2 i32.add local.get $1 local.get $2 i32.add i64.load i64.store end br $continue|4 end end end end block $break|5 loop $continue|5 local.get $2 if local.get $0 local.get $2 i32.const 1 i32.sub local.tee $2 i32.add local.get $1 local.get $2 i32.add i32.load8_u i32.store8 br $continue|5 end end end end end ) (func $std/pointer/Pointer#set:value (; 3 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32) local.get $1 i32.const 0 i32.eq if local.get $0 i32.const 0 i32.const 8 call $~lib/memory/memory.fill else local.get $0 local.get $1 i32.const 8 call $~lib/memory/memory.copy end ) (func $std/pointer/Pointer#set (; 4 ;) (type $FUNCSIG$viif) (param $0 i32) (param $1 i32) (param $2 f32) local.get $0 local.get $1 i32.const 4 i32.mul i32.add local.get $2 f32.store ) (func $std/pointer/Pointer#set:value (; 5 ;) (type $FUNCSIG$vif) (param $0 i32) (param $1 f32) local.get $0 local.get $1 f32.store ) (func $start:std/pointer (; 6 ;) (type $FUNCSIG$v) (local $0 i32) (local $1 i32) (local $2 f32) block $std/pointer/Pointer#constructor|inlined.0 (result i32) i32.const 0 local.set $1 i32.const 8 local.set $0 local.get $0 end global.set $std/pointer/one block $std/pointer/Pointer#constructor|inlined.1 (result i32) i32.const 0 local.set $1 i32.const 24 local.set $0 local.get $0 end global.set $std/pointer/two block $std/pointer/Pointer#get:offset|inlined.0 (result i32) global.get $std/pointer/one local.set $0 local.get $0 end i32.const 8 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 78 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:offset|inlined.1 (result i32) global.get $std/pointer/two local.set $0 local.get $0 end i32.const 24 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 79 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:value|inlined.0 (result i32) global.get $std/pointer/one local.set $0 local.get $0 br $std/pointer/Pointer#get:value|inlined.0 end i32.const 1 i32.store block $std/pointer/Pointer#get:value|inlined.1 (result i32) global.get $std/pointer/one local.set $0 local.get $0 br $std/pointer/Pointer#get:value|inlined.1 end i32.const 2 i32.store offset=4 block $std/pointer/Pointer#get:value|inlined.2 (result i32) global.get $std/pointer/one local.set $0 local.get $0 br $std/pointer/Pointer#get:value|inlined.2 end i32.load i32.const 1 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 83 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:value|inlined.3 (result i32) global.get $std/pointer/one local.set $0 local.get $0 br $std/pointer/Pointer#get:value|inlined.3 end i32.load offset=4 i32.const 2 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 84 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#add|inlined.0 (result i32) global.get $std/pointer/one local.set $1 global.get $std/pointer/two local.set $0 local.get $1 local.get $0 i32.add end global.set $std/pointer/add block $std/pointer/Pointer#get:offset|inlined.2 (result i32) global.get $std/pointer/add local.set $0 local.get $0 end i32.const 32 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 87 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#sub|inlined.0 (result i32) global.get $std/pointer/two local.set $1 global.get $std/pointer/one local.set $0 local.get $1 local.get $0 i32.sub end global.set $std/pointer/sub block $std/pointer/Pointer#get:offset|inlined.3 (result i32) global.get $std/pointer/sub local.set $0 local.get $0 end i32.const 16 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 90 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:offset|inlined.4 (result i32) global.get $std/pointer/one local.set $0 local.get $0 end i32.const 8 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 92 i32.const 0 call $~lib/env/abort unreachable end block (result i32) block $std/pointer/Pointer#inc|inlined.0 (result i32) global.get $std/pointer/one local.set $0 local.get $0 i32.const 8 i32.add end local.tee $0 global.set $std/pointer/one local.get $0 end global.set $std/pointer/nextOne global.get $std/pointer/nextOne global.get $std/pointer/one i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 94 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:offset|inlined.5 (result i32) global.get $std/pointer/one local.set $0 local.get $0 end i32.const 16 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 95 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:offset|inlined.6 (result i32) global.get $std/pointer/two local.set $0 local.get $0 end i32.const 24 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 97 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#dec|inlined.0 (result i32) global.get $std/pointer/two local.set $0 local.get $0 i32.const 8 i32.sub end global.set $std/pointer/two block $std/pointer/Pointer#dec|inlined.1 (result i32) global.get $std/pointer/two local.set $0 local.get $0 i32.const 8 i32.sub end global.set $std/pointer/two block $std/pointer/Pointer#get:offset|inlined.7 (result i32) global.get $std/pointer/two local.set $0 local.get $0 end i32.const 8 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 100 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:value|inlined.4 (result i32) global.get $std/pointer/two local.set $0 local.get $0 br $std/pointer/Pointer#get:value|inlined.4 end i32.load i32.const 1 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 101 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:value|inlined.5 (result i32) global.get $std/pointer/two local.set $0 local.get $0 br $std/pointer/Pointer#get:value|inlined.5 end i32.load offset=4 i32.const 2 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 102 i32.const 0 call $~lib/env/abort unreachable end global.get $std/pointer/one block $std/pointer/Pointer#get:value|inlined.6 (result i32) global.get $std/pointer/two local.set $0 local.get $0 br $std/pointer/Pointer#get:value|inlined.6 end call $std/pointer/Pointer#set:value block $std/pointer/Pointer#get:offset|inlined.8 (result i32) global.get $std/pointer/one local.set $0 local.get $0 end block $std/pointer/Pointer#get:offset|inlined.9 (result i32) global.get $std/pointer/two local.set $0 local.get $0 end i32.ne i32.eqz if i32.const 0 i32.const 16 i32.const 105 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:value|inlined.7 (result i32) global.get $std/pointer/one local.set $0 local.get $0 br $std/pointer/Pointer#get:value|inlined.7 end i32.load i32.const 1 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 106 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get:value|inlined.8 (result i32) global.get $std/pointer/one local.set $0 local.get $0 br $std/pointer/Pointer#get:value|inlined.8 end i32.load offset=4 i32.const 2 i32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 107 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#constructor|inlined.0 (result i32) i32.const 0 local.set $1 i32.const 0 local.set $0 local.get $0 end global.set $std/pointer/buf global.get $std/pointer/buf i32.const 0 f32.const 1.100000023841858 call $std/pointer/Pointer#set global.get $std/pointer/buf i32.const 1 f32.const 1.2000000476837158 call $std/pointer/Pointer#set block $std/pointer/Pointer#get|inlined.0 (result f32) global.get $std/pointer/buf local.set $1 i32.const 0 local.set $0 local.get $1 local.get $0 i32.const 4 i32.mul i32.add f32.load end f32.const 1.100000023841858 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 113 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get|inlined.1 (result f32) global.get $std/pointer/buf local.set $1 i32.const 1 local.set $0 local.get $1 local.get $0 i32.const 4 i32.mul i32.add f32.load end f32.const 1.2000000476837158 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 114 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get|inlined.2 (result f32) global.get $std/pointer/buf local.set $1 i32.const 0 local.set $0 local.get $1 local.get $0 i32.const 4 i32.mul i32.add f32.load end f32.const 1.100000023841858 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 116 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get|inlined.3 (result f32) global.get $std/pointer/buf local.set $1 i32.const 1 local.set $0 local.get $1 local.get $0 i32.const 4 i32.mul i32.add f32.load end f32.const 1.2000000476837158 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 117 i32.const 0 call $~lib/env/abort unreachable end i32.const 0 f32.load f32.const 1.100000023841858 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 119 i32.const 0 call $~lib/env/abort unreachable end i32.const 4 f32.load f32.const 1.2000000476837158 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 120 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#set|inlined.0 global.get $std/pointer/buf local.set $1 i32.const 2 local.set $0 f32.const 1.2999999523162842 local.set $2 local.get $1 local.get $0 i32.const 4 i32.mul i32.add local.get $2 f32.store end block $std/pointer/Pointer#get|inlined.4 (result f32) global.get $std/pointer/buf local.set $1 i32.const 2 local.set $0 local.get $1 local.get $0 i32.const 4 i32.mul i32.add f32.load end f32.const 1.2999999523162842 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 123 i32.const 0 call $~lib/env/abort unreachable end block $std/pointer/Pointer#get|inlined.5 (result f32) global.get $std/pointer/buf local.set $1 i32.const 2 local.set $0 local.get $1 local.get $0 i32.const 4 i32.mul i32.add f32.load end f32.const 1.2999999523162842 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 124 i32.const 0 call $~lib/env/abort unreachable end i32.const 8 f32.load f32.const 1.2999999523162842 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 125 i32.const 0 call $~lib/env/abort unreachable end global.get $std/pointer/buf f32.const 1.399999976158142 call $std/pointer/Pointer#set:value block $std/pointer/Pointer#get:value|inlined.0 (result f32) global.get $std/pointer/buf local.set $0 local.get $0 f32.load br $std/pointer/Pointer#get:value|inlined.0 end f32.const 1.399999976158142 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 128 i32.const 0 call $~lib/env/abort unreachable end i32.const 0 f32.load f32.const 1.399999976158142 f32.eq i32.eqz if i32.const 0 i32.const 16 i32.const 129 i32.const 0 call $~lib/env/abort unreachable end ) (func $start (; 7 ;) (type $FUNCSIG$v) call $start:std/pointer ) (func $null (; 8 ;) (type $FUNCSIG$v) ) )