c{0: 0 (((1 channel-address)) <- ((init-channel)) ((3 literal))) -- nil
c{0: 1 (((2 integer)) <- ((get)) ((1 channel-address) (deref)) ((first-full offset))) -- nil
c{0: 2 (((3 integer)) <- ((get)) ((1 channel-address) (deref)) ((first-free offset))) -- nil
c{1: 0 ✓ (((1 channel-address)) <- ((init-channel)) ((3 literal)))
c{1: 1 ✓ (((2 integer)) <- ((get)) ((1 channel-address) (deref)) ((first-full offset)))
c{1: 2 ✓ (((3 integer)) <- ((get)) ((1 channel-address) (deref)) ((first-free offset)))
cn0: convert-names in main
cn0: (((1 channel-address)) <- ((init-channel)) ((3 literal))) nil nil
cn0: checking arg ((3 literal))
cn0: checking oarg ((1 channel-address))
maybe-add: ((1 channel-address))
cn0: (((2 integer)) <- ((get)) ((1 channel-address) (deref)) ((first-full offset))) nil nil
cn0: field-access first-full in 1channel-addressderef of type channel
cn0: new field; computing location
cn0: field location 0
cn0: checking arg ((1 channel-address) (deref))
maybe-add: ((1 channel-address) (deref))
cn0: checking arg ((first-full offset))
cn0: checking oarg ((2 integer))
maybe-add: ((2 integer))
cn0: (((3 integer)) <- ((get)) ((1 channel-address) (deref)) ((first-free offset))) ((first-full 0)) ((first-full t))
cn0: field-access first-free in 1channel-addressderef of type channel
cn0: new field; computing location
cn0: field location 1
cn0: checking arg ((1 channel-address) (deref))
maybe-add: ((1 channel-address) (deref))
cn0: checking arg ((first-free offset))
cn0: checking oarg ((3 integer))
maybe-add: ((3 integer))
cn1: (((1 channel-address)) <- ((init-channel)) ((3 literal)))
cn1: (((2 integer)) <- ((get)) ((1 channel-address) (deref)) ((0 offset)))
cn1: (((3 integer)) <- ((get)) ((1 channel-address) (deref)) ((1 offset)))
schedule: main
run: main 0: (((1 channel-address)) <- ((init-channel)) ((3 literal)))
run: init-channel/main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
run: init-channel/main 0: 1000 => ((default-space space-address))
run: init-channel/main 1: (((1 channel-address)) <- ((new)) ((channel literal)))
run: init-channel/main 1: 1031 => ((1 channel-address))
mem: ((1 channel-address)): 1002 <= 1031
run: init-channel/main 2: (((2 integer-address)) <- ((get-address)) ((1 channel-address) (deref)) ((0 offset)))
run: init-channel/main 2: 1031 => ((2 integer-address))
mem: ((2 integer-address)): 1003 <= 1031
run: init-channel/main 3: (((2 integer-address) (deref)) <- ((copy)) ((0 literal)))
run: init-channel/main 3: 0 => ((2 integer-address) (deref))
mem: ((2 integer-address) (deref)): 1031 <= 0
run: init-channel/main 4: (((3 integer-address)) <- ((get-address)) ((1 channel-address) (deref)) ((1 offset)))
run: init-channel/main 4: 1032 => ((3 integer-address))
mem: ((3 integer-address)): 1004 <= 1032
run: init-channel/main 5: (((3 integer-address) (deref)) <- ((copy)) ((0 literal)))
run: init-channel/main 5: 0 => ((3 integer-address) (deref))
mem: ((3 integer-address) (deref)): 1032 <= 0
run: init-channel/main 6: (((4 integer)) <- ((next-input)))
arg: nil 0 (3)
run: init-channel/main 6: 3 => ((4 integer))
mem: ((4 integer)): 1005 <= 3
run: init-channel/main 7: (((4 integer)) <- ((add)) ((4 integer)) ((1 literal)))
mem: ((4 integer)) => 3
run: init-channel/main 7: 4 => ((4 integer))
mem: ((4 integer)): 1005 <= 4
run: init-channel/main 8: (((5 tagged-value-array-address-address)) <- ((get-address)) ((1 channel-address) (deref)) ((2 offset)))
run: init-channel/main 8: 1033 => ((5 tagged-value-array-address-address))
mem: ((5 tagged-value-array-address-address)): 1006 <= 1033
run: init-channel/main 9: (((5 tagged-value-array-address-address) (deref)) <- ((new)) ((tagged-value-array literal)) ((4 integer)))
mem: ((4 integer)) => 4
run: init-channel/main 9: 1034 => ((5 tagged-value-array-address-address) (deref))
mem: ((5 tagged-value-array-address-address) (deref)): 1033 <= 1034
run: init-channel/main 10: (((reply)) ((1 channel-address)))
mem: ((1 channel-address)) => 1031
run: main 0: 1031 => ((1 channel-address))
mem: ((1 channel-address)): 1 <= 1031
run: main 1: (((2 integer)) <- ((get)) ((1 channel-address) (deref)) ((0 offset)))
mem: ((1031 integer) (raw)) => 0
run: main 1: 0 => ((2 integer))
mem: ((2 integer)): 2 <= 0
run: main 2: (((3 integer)) <- ((get)) ((1 channel-address) (deref)) ((1 offset)))
mem: ((1032 integer) (raw)) => 0
run: main 2: 0 => ((3 integer))
mem: ((3 integer)): 3 <= 0
schedule: done with routine nil
