NAME=Printing il statements in various formats
FILE=bins/bf/hello-ok.bf
CMDS=<<EOF
e asm.arch=bf
e analysis.arch=bf
echo -- oneline
aoi 5
echo -- pretty
aoip 5
echo -- graph
agI
EOF
EXPECT=<<EOF
-- oneline
0x0 (store 0 (var ptr) (+ (load 0 (var ptr)) (bv 8 0x1)))
0x1 (store 0 (var ptr) (+ (load 0 (var ptr)) (bv 8 0x1)))
0x2 (store 0 (var ptr) (+ (load 0 (var ptr)) (bv 8 0x1)))
0x3 (store 0 (var ptr) (+ (load 0 (var ptr)) (bv 8 0x1)))
0x4 (store 0 (var ptr) (+ (load 0 (var ptr)) (bv 8 0x1)))
-- pretty
0x0
(store 0
  (var ptr)
  (+
    (load 0
      (var ptr))
    (bv 8 0x1)))
0x1
(store 0
  (var ptr)
  (+
    (load 0
      (var ptr))
    (bv 8 0x1)))
0x2
(store 0
  (var ptr)
  (+
    (load 0
      (var ptr))
    (bv 8 0x1)))
0x3
(store 0
  (var ptr)
  (+
    (load 0
      (var ptr))
    (bv 8 0x1)))
0x4
(store 0
  (var ptr)
  (+
    (load 0
      (var ptr))
    (bv 8 0x1)))
-- graph
        .-------------.
        |  inc [ptr]  |
        `-------------'
            v
            |
            |
        .------------.
        |  store: 0  |
        `------------'
              v v
              | |
    .---------' |
    |           '-----.
    |                 |
.------------.    .-----------.
|  var: ptr  |    |  add      |
`------------'    `-----------'
                        v v
                        | |
              .---------' |
              |           '---.
              |               |
          .-----------.   .-------------.
          |  load: 0  |   |  bv: 8 0x1  |
          `-----------'   `-------------'
              v
              |
             .'
             |
         .------------.
         |  var: ptr  |
         `------------'
EOF
RUN

NAME=hello world
FILE=bins/bf/hello-ok.bf
ARGS=-eio.cache=1
CMDS=<<EOF
e asm.arch=bf
e asm.bytes=true
e analysis.arch=bf
s 0
aezi
aezs 390
aezv
ar
EOF
EXPECT=<<EOF
Hello World!
 PC: 0x000000000000006f ptr: 0x0000000000010004
ptr = 0x0000000000010004
pc = 0x000000000000006f
EOF
RUN

NAME=hello world - unbalanced loop
FILE=bins/bf/hello-unbalanced-loop.bf
CMDS=<<EOF
e asm.arch=bf
e asm.bytes=true
e analysis.arch=bf
e scr.utf8=false
s 0
pd 3 @ 0xa
EOF
EXPECT=<<EOF
            0x0000000a      5b             while [ptr]
            0x0000000b      3e             inc   ptr
            0x0000000c      2b             inc   [ptr]
EOF
RUN

NAME=loopy hello world
FILE=bins/bf/hello-loops.bf
ARGS=-eio.cache=1
CMDS=<<EOF
s 0
aezi
aezs 906
EOF
EXPECT=<<EOF
Hello World!
EOF
RUN

NAME=instructions
FILE=bins/bf/hello-loops.bf
ARGS=-eio.cache=1
CMDS=<<EOF
e asm.arch=bf
e analysis.arch=bf
ao @ 0x00 ~opcode
ao @ 0x00 ~rzil
aoj @ 0x00 ~{[0].rzil}
ao @ 0x08 ~opcode
ao @ 0x08 ~rzil
aoj @ 0x08 ~{[0].rzil}
ao @ 0x09 ~opcode
ao @ 0x09 ~rzil
aoj @ 0x09 ~{[0].rzil}
ao @ 0x1c ~opcode
ao @ 0x1c ~rzil
aoj @ 0x1c ~{[0].rzil}
ao @ 0x20 ~opcode
ao @ 0x20 ~rzil
aoj @ 0x20 ~{[0].rzil}
ao @ 0x21 ~opcode
ao @ 0x21 ~rzil
aoj @ 0x21 ~{[0].rzil}
ao @ 0x33 ~opcode
ao @ 0x33 ~rzil
aoj @ 0x33 ~{[0].rzil}
ao @ 0x6a ~opcode
ao @ 0x6a ~rzil
aoj @ 0x6a ~{[0].rzil}
EOF
EXPECT=<<EOF
opcode: inc [ptr]
rzil: (store 0 (var ptr) (+ (load 0 (var ptr)) (bv 8 0x1)))
{"opcode":"store","mem":0,"key":{"opcode":"var","value":"ptr"},"value":{"opcode":"+","x":{"opcode":"load","mem":0,"key":{"opcode":"var","value":"ptr"}},"y":{"opcode":"bitv","bits":"0x1","len":8}}}
opcode: while [ptr]
rzil: (branch (! (is_zero (load 0 (var ptr)))) nop (jmp (bv 64 0x31)))
{"opcode":"branch","condition":{"opcode":"!","x":{"opcode":"is_zero","bv":{"opcode":"load","mem":0,"key":{"opcode":"var","value":"ptr"}}}},"true_eff":{"opcode":"nop"},"false_eff":{"opcode":"jmp","dst":{"opcode":"bitv","bits":"0x31","len":64}}}
opcode: inc ptr
rzil: (set ptr (+ (var ptr) (bv 64 0x1)))
{"opcode":"set","dst":"ptr","src":{"opcode":"+","x":{"opcode":"var","value":"ptr"},"y":{"opcode":"bitv","bits":"0x1","len":64}}}
opcode: dec ptr
rzil: (set ptr (- (var ptr) (bv 64 0x1)))
{"opcode":"set","dst":"ptr","src":{"opcode":"-","x":{"opcode":"var","value":"ptr"},"y":{"opcode":"bitv","bits":"0x1","len":64}}}
opcode: dec [ptr]
rzil: (store 0 (var ptr) (- (load 0 (var ptr)) (bv 8 0x1)))
{"opcode":"store","mem":0,"key":{"opcode":"var","value":"ptr"},"value":{"opcode":"-","x":{"opcode":"load","mem":0,"key":{"opcode":"var","value":"ptr"}},"y":{"opcode":"bitv","bits":"0x1","len":8}}}
opcode: loop
rzil: (branch (! (is_zero (load 0 (var ptr)))) (jmp (bv 64 0xf)) nop)
{"opcode":"branch","condition":{"opcode":"!","x":{"opcode":"is_zero","bv":{"opcode":"load","mem":0,"key":{"opcode":"var","value":"ptr"}}}},"true_eff":{"opcode":"jmp","dst":{"opcode":"bitv","bits":"0xf","len":64}},"false_eff":{"opcode":"nop"}}
opcode: out [ptr]
rzil: (goto write)
{"opcode":"goto","label":"write"}
opcode: nop
rzil: nop
{"opcode":"nop"}
EOF
RUN

NAME=instruction event trace
FILE=bins/bf/hello-loops.bf
ARGS=-eio.cache=1
CMDS=<<EOF
e asm.arch=bf
e analysis.arch=bf
e rzil.step.events.read=true
s 0
aezi
aezse 390
EOF
EXPECT=<<EOF
pc_write(old: 0x0, new: 0x1)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x0)
mem_write(addr: 0x10000, old: 0x0, new: 0x1)
pc_write(old: 0x1, new: 0x2)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x1)
mem_write(addr: 0x10000, old: 0x1, new: 0x2)
pc_write(old: 0x2, new: 0x3)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x2)
mem_write(addr: 0x10000, old: 0x2, new: 0x3)
pc_write(old: 0x3, new: 0x4)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x3)
mem_write(addr: 0x10000, old: 0x3, new: 0x4)
pc_write(old: 0x4, new: 0x5)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x4)
mem_write(addr: 0x10000, old: 0x4, new: 0x5)
pc_write(old: 0x5, new: 0x6)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x5)
mem_write(addr: 0x10000, old: 0x5, new: 0x6)
pc_write(old: 0x6, new: 0x7)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x6)
mem_write(addr: 0x10000, old: 0x6, new: 0x7)
pc_write(old: 0x7, new: 0x8)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x7)
mem_write(addr: 0x10000, old: 0x7, new: 0x8)
pc_write(old: 0x8, new: 0x9)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x8)
pc_write(old: 0x9, new: 0xa)
var_read(name: ptr, value: 0x10000)
var_write(name: ptr, old: 0x10000, new: 0x10001)
pc_write(old: 0xa, new: 0xb)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
mem_write(addr: 0x10001, old: 0x0, new: 0x1)
pc_write(old: 0xb, new: 0xc)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
mem_write(addr: 0x10001, old: 0x1, new: 0x2)
pc_write(old: 0xc, new: 0xd)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
mem_write(addr: 0x10001, old: 0x2, new: 0x3)
pc_write(old: 0xd, new: 0xe)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
mem_write(addr: 0x10001, old: 0x3, new: 0x4)
pc_write(old: 0xe, new: 0xf)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x4)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x0)
mem_write(addr: 0x10002, old: 0x0, new: 0x1)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x1)
mem_write(addr: 0x10002, old: 0x1, new: 0x2)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x0)
mem_write(addr: 0x10003, old: 0x0, new: 0x1)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x1)
mem_write(addr: 0x10003, old: 0x1, new: 0x2)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x2)
mem_write(addr: 0x10003, old: 0x2, new: 0x3)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x0)
mem_write(addr: 0x10004, old: 0x0, new: 0x1)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x1)
mem_write(addr: 0x10004, old: 0x1, new: 0x2)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x2)
mem_write(addr: 0x10004, old: 0x2, new: 0x3)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x0)
mem_write(addr: 0x10005, old: 0x0, new: 0x1)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x4)
mem_write(addr: 0x10001, old: 0x4, new: 0x3)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x2)
mem_write(addr: 0x10002, old: 0x2, new: 0x3)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x3)
mem_write(addr: 0x10002, old: 0x3, new: 0x4)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x3)
mem_write(addr: 0x10003, old: 0x3, new: 0x4)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x4)
mem_write(addr: 0x10003, old: 0x4, new: 0x5)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x5)
mem_write(addr: 0x10003, old: 0x5, new: 0x6)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x3)
mem_write(addr: 0x10004, old: 0x3, new: 0x4)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x4)
mem_write(addr: 0x10004, old: 0x4, new: 0x5)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x5)
mem_write(addr: 0x10004, old: 0x5, new: 0x6)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x1)
mem_write(addr: 0x10005, old: 0x1, new: 0x2)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
mem_write(addr: 0x10001, old: 0x3, new: 0x2)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x4)
mem_write(addr: 0x10002, old: 0x4, new: 0x5)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x5)
mem_write(addr: 0x10002, old: 0x5, new: 0x6)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x6)
mem_write(addr: 0x10003, old: 0x6, new: 0x7)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x7)
mem_write(addr: 0x10003, old: 0x7, new: 0x8)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x8)
mem_write(addr: 0x10003, old: 0x8, new: 0x9)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x6)
mem_write(addr: 0x10004, old: 0x6, new: 0x7)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x7)
mem_write(addr: 0x10004, old: 0x7, new: 0x8)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x8)
mem_write(addr: 0x10004, old: 0x8, new: 0x9)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x2)
mem_write(addr: 0x10005, old: 0x2, new: 0x3)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
mem_write(addr: 0x10001, old: 0x2, new: 0x1)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x6)
mem_write(addr: 0x10002, old: 0x6, new: 0x7)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x7)
mem_write(addr: 0x10002, old: 0x7, new: 0x8)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x9)
mem_write(addr: 0x10003, old: 0x9, new: 0xa)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0xa)
mem_write(addr: 0x10003, old: 0xa, new: 0xb)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0xb)
mem_write(addr: 0x10003, old: 0xb, new: 0xc)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x9)
mem_write(addr: 0x10004, old: 0x9, new: 0xa)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0xa)
mem_write(addr: 0x10004, old: 0xa, new: 0xb)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0xb)
mem_write(addr: 0x10004, old: 0xb, new: 0xc)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x3)
mem_write(addr: 0x10005, old: 0x3, new: 0x4)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
mem_write(addr: 0x10001, old: 0x1, new: 0x0)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
pc_write(old: 0x22, new: 0x23)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x23, new: 0x24)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x8)
mem_write(addr: 0x10002, old: 0x8, new: 0x9)
pc_write(old: 0x24, new: 0x25)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x25, new: 0x26)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0xc)
mem_write(addr: 0x10003, old: 0xc, new: 0xd)
pc_write(old: 0x26, new: 0x27)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x27, new: 0x28)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0xc)
mem_write(addr: 0x10004, old: 0xc, new: 0xb)
pc_write(old: 0x28, new: 0x29)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x29, new: 0x2a)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10006)
pc_write(old: 0x2a, new: 0x2b)
var_read(name: ptr, value: 0x10006)
var_read(name: ptr, value: 0x10006)
mem_read(addr: 0x10006, value: 0x0)
mem_write(addr: 0x10006, old: 0x0, new: 0x1)
pc_write(old: 0x2b, new: 0x2c)
var_read(name: ptr, value: 0x10006)
mem_read(addr: 0x10006, value: 0x1)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10006)
var_write(name: ptr, old: 0x10006, new: 0x10005)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x4)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0xb)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0xd)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x9)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
pc_write(old: 0x2e, new: 0x2f)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10000)
pc_write(old: 0x2f, new: 0x30)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x8)
mem_write(addr: 0x10000, old: 0x8, new: 0x7)
pc_write(old: 0x30, new: 0x31)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x7)
pc_write(old: 0x31, new: 0x9)
pc_write(old: 0x9, new: 0xa)
var_read(name: ptr, value: 0x10000)
var_write(name: ptr, old: 0x10000, new: 0x10001)
pc_write(old: 0xa, new: 0xb)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
mem_write(addr: 0x10001, old: 0x0, new: 0x1)
pc_write(old: 0xb, new: 0xc)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
mem_write(addr: 0x10001, old: 0x1, new: 0x2)
pc_write(old: 0xc, new: 0xd)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
mem_write(addr: 0x10001, old: 0x2, new: 0x3)
pc_write(old: 0xd, new: 0xe)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
mem_write(addr: 0x10001, old: 0x3, new: 0x4)
pc_write(old: 0xe, new: 0xf)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x4)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x9)
mem_write(addr: 0x10002, old: 0x9, new: 0xa)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0xa)
mem_write(addr: 0x10002, old: 0xa, new: 0xb)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0xd)
mem_write(addr: 0x10003, old: 0xd, new: 0xe)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0xe)
mem_write(addr: 0x10003, old: 0xe, new: 0xf)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0xf)
mem_write(addr: 0x10003, old: 0xf, new: 0x10)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0xb)
mem_write(addr: 0x10004, old: 0xb, new: 0xc)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0xc)
mem_write(addr: 0x10004, old: 0xc, new: 0xd)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0xd)
mem_write(addr: 0x10004, old: 0xd, new: 0xe)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x4)
mem_write(addr: 0x10005, old: 0x4, new: 0x5)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x4)
mem_write(addr: 0x10001, old: 0x4, new: 0x3)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0xb)
mem_write(addr: 0x10002, old: 0xb, new: 0xc)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0xc)
mem_write(addr: 0x10002, old: 0xc, new: 0xd)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x10)
mem_write(addr: 0x10003, old: 0x10, new: 0x11)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x11)
mem_write(addr: 0x10003, old: 0x11, new: 0x12)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x12)
mem_write(addr: 0x10003, old: 0x12, new: 0x13)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0xe)
mem_write(addr: 0x10004, old: 0xe, new: 0xf)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0xf)
mem_write(addr: 0x10004, old: 0xf, new: 0x10)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x10)
mem_write(addr: 0x10004, old: 0x10, new: 0x11)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x5)
mem_write(addr: 0x10005, old: 0x5, new: 0x6)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
mem_write(addr: 0x10001, old: 0x3, new: 0x2)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0xd)
mem_write(addr: 0x10002, old: 0xd, new: 0xe)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0xe)
mem_write(addr: 0x10002, old: 0xe, new: 0xf)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x13)
mem_write(addr: 0x10003, old: 0x13, new: 0x14)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x14)
mem_write(addr: 0x10003, old: 0x14, new: 0x15)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x15)
mem_write(addr: 0x10003, old: 0x15, new: 0x16)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x11)
mem_write(addr: 0x10004, old: 0x11, new: 0x12)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x12)
mem_write(addr: 0x10004, old: 0x12, new: 0x13)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x13)
mem_write(addr: 0x10004, old: 0x13, new: 0x14)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x6)
mem_write(addr: 0x10005, old: 0x6, new: 0x7)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
mem_write(addr: 0x10001, old: 0x2, new: 0x1)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0xf)
mem_write(addr: 0x10002, old: 0xf, new: 0x10)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x10)
mem_write(addr: 0x10002, old: 0x10, new: 0x11)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x16)
mem_write(addr: 0x10003, old: 0x16, new: 0x17)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x17)
mem_write(addr: 0x10003, old: 0x17, new: 0x18)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x18)
mem_write(addr: 0x10003, old: 0x18, new: 0x19)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x14)
mem_write(addr: 0x10004, old: 0x14, new: 0x15)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x15)
mem_write(addr: 0x10004, old: 0x15, new: 0x16)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x16)
mem_write(addr: 0x10004, old: 0x16, new: 0x17)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x7)
mem_write(addr: 0x10005, old: 0x7, new: 0x8)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
mem_write(addr: 0x10001, old: 0x1, new: 0x0)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
pc_write(old: 0x22, new: 0x23)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x23, new: 0x24)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x11)
mem_write(addr: 0x10002, old: 0x11, new: 0x12)
pc_write(old: 0x24, new: 0x25)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x25, new: 0x26)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x19)
mem_write(addr: 0x10003, old: 0x19, new: 0x1a)
pc_write(old: 0x26, new: 0x27)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x27, new: 0x28)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x17)
mem_write(addr: 0x10004, old: 0x17, new: 0x16)
pc_write(old: 0x28, new: 0x29)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x29, new: 0x2a)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10006)
pc_write(old: 0x2a, new: 0x2b)
var_read(name: ptr, value: 0x10006)
var_read(name: ptr, value: 0x10006)
mem_read(addr: 0x10006, value: 0x1)
mem_write(addr: 0x10006, old: 0x1, new: 0x2)
pc_write(old: 0x2b, new: 0x2c)
var_read(name: ptr, value: 0x10006)
mem_read(addr: 0x10006, value: 0x2)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10006)
var_write(name: ptr, old: 0x10006, new: 0x10005)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x8)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x16)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x1a)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x12)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
pc_write(old: 0x2e, new: 0x2f)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10000)
pc_write(old: 0x2f, new: 0x30)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x7)
mem_write(addr: 0x10000, old: 0x7, new: 0x6)
pc_write(old: 0x30, new: 0x31)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x6)
pc_write(old: 0x31, new: 0x9)
pc_write(old: 0x9, new: 0xa)
var_read(name: ptr, value: 0x10000)
var_write(name: ptr, old: 0x10000, new: 0x10001)
pc_write(old: 0xa, new: 0xb)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
mem_write(addr: 0x10001, old: 0x0, new: 0x1)
pc_write(old: 0xb, new: 0xc)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
mem_write(addr: 0x10001, old: 0x1, new: 0x2)
pc_write(old: 0xc, new: 0xd)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
mem_write(addr: 0x10001, old: 0x2, new: 0x3)
pc_write(old: 0xd, new: 0xe)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
mem_write(addr: 0x10001, old: 0x3, new: 0x4)
pc_write(old: 0xe, new: 0xf)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x4)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x12)
mem_write(addr: 0x10002, old: 0x12, new: 0x13)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x13)
mem_write(addr: 0x10002, old: 0x13, new: 0x14)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x1a)
mem_write(addr: 0x10003, old: 0x1a, new: 0x1b)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x1b)
mem_write(addr: 0x10003, old: 0x1b, new: 0x1c)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x1c)
mem_write(addr: 0x10003, old: 0x1c, new: 0x1d)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x16)
mem_write(addr: 0x10004, old: 0x16, new: 0x17)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x17)
mem_write(addr: 0x10004, old: 0x17, new: 0x18)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x18)
mem_write(addr: 0x10004, old: 0x18, new: 0x19)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x8)
mem_write(addr: 0x10005, old: 0x8, new: 0x9)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x4)
mem_write(addr: 0x10001, old: 0x4, new: 0x3)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x14)
mem_write(addr: 0x10002, old: 0x14, new: 0x15)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x15)
mem_write(addr: 0x10002, old: 0x15, new: 0x16)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x1d)
mem_write(addr: 0x10003, old: 0x1d, new: 0x1e)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x1e)
mem_write(addr: 0x10003, old: 0x1e, new: 0x1f)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x1f)
mem_write(addr: 0x10003, old: 0x1f, new: 0x20)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x19)
mem_write(addr: 0x10004, old: 0x19, new: 0x1a)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x1a)
mem_write(addr: 0x10004, old: 0x1a, new: 0x1b)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x1b)
mem_write(addr: 0x10004, old: 0x1b, new: 0x1c)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0x9)
mem_write(addr: 0x10005, old: 0x9, new: 0xa)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
mem_write(addr: 0x10001, old: 0x3, new: 0x2)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x16)
mem_write(addr: 0x10002, old: 0x16, new: 0x17)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x17)
mem_write(addr: 0x10002, old: 0x17, new: 0x18)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x20)
mem_write(addr: 0x10003, old: 0x20, new: 0x21)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x21)
mem_write(addr: 0x10003, old: 0x21, new: 0x22)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x22)
mem_write(addr: 0x10003, old: 0x22, new: 0x23)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x1c)
mem_write(addr: 0x10004, old: 0x1c, new: 0x1d)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x1d)
mem_write(addr: 0x10004, old: 0x1d, new: 0x1e)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x1e)
mem_write(addr: 0x10004, old: 0x1e, new: 0x1f)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0xa)
mem_write(addr: 0x10005, old: 0xa, new: 0xb)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
mem_write(addr: 0x10001, old: 0x2, new: 0x1)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x18)
mem_write(addr: 0x10002, old: 0x18, new: 0x19)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x19)
mem_write(addr: 0x10002, old: 0x19, new: 0x1a)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x23)
mem_write(addr: 0x10003, old: 0x23, new: 0x24)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x24)
mem_write(addr: 0x10003, old: 0x24, new: 0x25)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x25)
mem_write(addr: 0x10003, old: 0x25, new: 0x26)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x1f)
mem_write(addr: 0x10004, old: 0x1f, new: 0x20)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x20)
mem_write(addr: 0x10004, old: 0x20, new: 0x21)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x21)
mem_write(addr: 0x10004, old: 0x21, new: 0x22)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0xb)
mem_write(addr: 0x10005, old: 0xb, new: 0xc)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
mem_write(addr: 0x10001, old: 0x1, new: 0x0)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
pc_write(old: 0x22, new: 0x23)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x23, new: 0x24)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x1a)
mem_write(addr: 0x10002, old: 0x1a, new: 0x1b)
pc_write(old: 0x24, new: 0x25)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x25, new: 0x26)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x26)
mem_write(addr: 0x10003, old: 0x26, new: 0x27)
pc_write(old: 0x26, new: 0x27)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x27, new: 0x28)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x22)
mem_write(addr: 0x10004, old: 0x22, new: 0x21)
pc_write(old: 0x28, new: 0x29)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x29, new: 0x2a)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10006)
pc_write(old: 0x2a, new: 0x2b)
var_read(name: ptr, value: 0x10006)
var_read(name: ptr, value: 0x10006)
mem_read(addr: 0x10006, value: 0x2)
mem_write(addr: 0x10006, old: 0x2, new: 0x3)
pc_write(old: 0x2b, new: 0x2c)
var_read(name: ptr, value: 0x10006)
mem_read(addr: 0x10006, value: 0x3)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10006)
var_write(name: ptr, old: 0x10006, new: 0x10005)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0xc)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x21)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x27)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x1b)
pc_write(old: 0x2e, new: 0x2c)
pc_write(old: 0x2c, new: 0x2d)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x2d, new: 0x2e)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
pc_write(old: 0x2e, new: 0x2f)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10000)
pc_write(old: 0x2f, new: 0x30)
var_read(name: ptr, value: 0x10000)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x6)
mem_write(addr: 0x10000, old: 0x6, new: 0x5)
pc_write(old: 0x30, new: 0x31)
var_read(name: ptr, value: 0x10000)
mem_read(addr: 0x10000, value: 0x5)
pc_write(old: 0x31, new: 0x9)
pc_write(old: 0x9, new: 0xa)
var_read(name: ptr, value: 0x10000)
var_write(name: ptr, old: 0x10000, new: 0x10001)
pc_write(old: 0xa, new: 0xb)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x0)
mem_write(addr: 0x10001, old: 0x0, new: 0x1)
pc_write(old: 0xb, new: 0xc)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
mem_write(addr: 0x10001, old: 0x1, new: 0x2)
pc_write(old: 0xc, new: 0xd)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
mem_write(addr: 0x10001, old: 0x2, new: 0x3)
pc_write(old: 0xd, new: 0xe)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
mem_write(addr: 0x10001, old: 0x3, new: 0x4)
pc_write(old: 0xe, new: 0xf)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x4)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x1b)
mem_write(addr: 0x10002, old: 0x1b, new: 0x1c)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x1c)
mem_write(addr: 0x10002, old: 0x1c, new: 0x1d)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x27)
mem_write(addr: 0x10003, old: 0x27, new: 0x28)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x28)
mem_write(addr: 0x10003, old: 0x28, new: 0x29)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x29)
mem_write(addr: 0x10003, old: 0x29, new: 0x2a)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x21)
mem_write(addr: 0x10004, old: 0x21, new: 0x22)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x22)
mem_write(addr: 0x10004, old: 0x22, new: 0x23)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x23)
mem_write(addr: 0x10004, old: 0x23, new: 0x24)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0xc)
mem_write(addr: 0x10005, old: 0xc, new: 0xd)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x4)
mem_write(addr: 0x10001, old: 0x4, new: 0x3)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x1d)
mem_write(addr: 0x10002, old: 0x1d, new: 0x1e)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x1e)
mem_write(addr: 0x10002, old: 0x1e, new: 0x1f)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x2a)
mem_write(addr: 0x10003, old: 0x2a, new: 0x2b)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x2b)
mem_write(addr: 0x10003, old: 0x2b, new: 0x2c)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x2c)
mem_write(addr: 0x10003, old: 0x2c, new: 0x2d)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x24)
mem_write(addr: 0x10004, old: 0x24, new: 0x25)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x25)
mem_write(addr: 0x10004, old: 0x25, new: 0x26)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x26)
mem_write(addr: 0x10004, old: 0x26, new: 0x27)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0xd)
mem_write(addr: 0x10005, old: 0xd, new: 0xe)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x3)
mem_write(addr: 0x10001, old: 0x3, new: 0x2)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x1f)
mem_write(addr: 0x10002, old: 0x1f, new: 0x20)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x20)
mem_write(addr: 0x10002, old: 0x20, new: 0x21)
pc_write(old: 0x12, new: 0x13)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10003)
pc_write(old: 0x13, new: 0x14)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x2d)
mem_write(addr: 0x10003, old: 0x2d, new: 0x2e)
pc_write(old: 0x14, new: 0x15)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x2e)
mem_write(addr: 0x10003, old: 0x2e, new: 0x2f)
pc_write(old: 0x15, new: 0x16)
var_read(name: ptr, value: 0x10003)
var_read(name: ptr, value: 0x10003)
mem_read(addr: 0x10003, value: 0x2f)
mem_write(addr: 0x10003, old: 0x2f, new: 0x30)
pc_write(old: 0x16, new: 0x17)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10004)
pc_write(old: 0x17, new: 0x18)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x27)
mem_write(addr: 0x10004, old: 0x27, new: 0x28)
pc_write(old: 0x18, new: 0x19)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x28)
mem_write(addr: 0x10004, old: 0x28, new: 0x29)
pc_write(old: 0x19, new: 0x1a)
var_read(name: ptr, value: 0x10004)
var_read(name: ptr, value: 0x10004)
mem_read(addr: 0x10004, value: 0x29)
mem_write(addr: 0x10004, old: 0x29, new: 0x2a)
pc_write(old: 0x1a, new: 0x1b)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10005)
pc_write(old: 0x1b, new: 0x1c)
var_read(name: ptr, value: 0x10005)
var_read(name: ptr, value: 0x10005)
mem_read(addr: 0x10005, value: 0xe)
mem_write(addr: 0x10005, old: 0xe, new: 0xf)
pc_write(old: 0x1c, new: 0x1d)
var_read(name: ptr, value: 0x10005)
var_write(name: ptr, old: 0x10005, new: 0x10004)
pc_write(old: 0x1d, new: 0x1e)
var_read(name: ptr, value: 0x10004)
var_write(name: ptr, old: 0x10004, new: 0x10003)
pc_write(old: 0x1e, new: 0x1f)
var_read(name: ptr, value: 0x10003)
var_write(name: ptr, old: 0x10003, new: 0x10002)
pc_write(old: 0x1f, new: 0x20)
var_read(name: ptr, value: 0x10002)
var_write(name: ptr, old: 0x10002, new: 0x10001)
pc_write(old: 0x20, new: 0x21)
var_read(name: ptr, value: 0x10001)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x2)
mem_write(addr: 0x10001, old: 0x2, new: 0x1)
pc_write(old: 0x21, new: 0x22)
var_read(name: ptr, value: 0x10001)
mem_read(addr: 0x10001, value: 0x1)
pc_write(old: 0x22, new: 0xf)
pc_write(old: 0xf, new: 0x10)
var_read(name: ptr, value: 0x10001)
var_write(name: ptr, old: 0x10001, new: 0x10002)
pc_write(old: 0x10, new: 0x11)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x21)
mem_write(addr: 0x10002, old: 0x21, new: 0x22)
pc_write(old: 0x11, new: 0x12)
var_read(name: ptr, value: 0x10002)
var_read(name: ptr, value: 0x10002)
mem_read(addr: 0x10002, value: 0x22)
mem_write(addr: 0x10002, old: 0x22, new: 0x23)
EOF
RUN

NAME=2+5.bf
FILE=bins/bf/2+5.bf
CMDS=<<EOF
e io.cache=1
aezi
aezsu $s; echo
EOF
EXPECT=<<EOF
7
EOF
RUN

NAME=repeat emu run after reset everything
FILE=bins/bf/2+5.bf
CMDS=<<EOF
e io.cache=1
w + @ 2
aezi
ara+
aezsu $s; echo
ar
echo --- Reset everything ---
ara-
wc-*
ar
aezsu $s; echo
EOF
EXPECT=<<EOF
8
ptr = 0x0000000000010000
pc = 0x00000000000002af
--- Reset everything ---
ptr = 0x0000000000010000
pc = 0x0000000000000000
7
EOF
RUN
