func Main() t.4 = HeapAllocZ(12) [t.4+0] = :functable_A t.5 = t.4 t.6 = t.5 t.3 = t.6 t.8 = t.3 t.3 = t.8 t.9 = [t.3+0] t.10 = [t.9+0] t.11 = 42 t.12 = t.11 t.7 = call t.10(t.3 t.12) t.13 = t.7 t.14 = t.13 PrintIntS(t.14) t.16 = t.3 t.3 = t.16 t.17 = [t.3+0] t.18 = [t.17+4] t.15 = call t.18(t.3) t.19 = t.15 t.20 = t.19 PrintIntS(t.20) ret const functable_A :A_set :A_get func A_set(this t.0 ) t.1 = 12 t.2 = t.1 t.3 = call :AllocArray(t.2) t.4 = t.3 t.5 = t.4 [this+8] = t.5 t.6 = [this+8] t.8 = 5 t.9 = t.8 t.7 = MulS(t.9 4) t.7 = Add(t.7 4) t.7 = Add(t.6 t.7) t.10 = t.0 t.11 = t.10 [t.7] = t.11 t.14 = [this+8] t.13 = t.14 t.12 = [t.13+0] t.15 = t.12 t.16 = t.15 ret t.16 func A_get(this ) t.2 = [this+8] t.1 = t.2 t.4 = 5 t.3 = MulS(t.4 4) t.3 = Add(t.3 4) t.3 = Add(t.1 t.3) t.0 = [t.3] t.5 = t.0 t.6 = t.5 ret t.6 func AllocArray(size) bytes = MulS(size 4) bytes = Add(bytes 4) v = HeapAllocZ(bytes) [v] = size ret v