c{0: 0 (((1 string-address)) <- ((new)) abc) -- nil
c{0: 1 (((2 string-address)) <- ((string-copy)) ((1 string-address)) ((2 literal)) ((4 literal))) -- nil
c{1: 0 ✓ (((1 string-address)) <- ((new)) abc)
c{1: 1 ✓ (((2 string-address)) <- ((string-copy)) ((1 string-address)) ((2 literal)) ((4 literal)))
cn0: convert-names in main
cn0: (((1 string-address)) <- ((new)) abc) nil nil
cn0: checking arg abc
cn0: checking oarg ((1 string-address))
maybe-add: ((1 string-address))
cn0: (((2 string-address)) <- ((string-copy)) ((1 string-address)) ((2 literal)) ((4 literal))) nil nil
cn0: checking arg ((1 string-address))
maybe-add: ((1 string-address))
cn0: checking arg ((2 literal))
cn0: checking arg ((4 literal))
cn0: checking oarg ((2 string-address))
maybe-add: ((2 string-address))
cn1: (((1 string-address)) <- ((new)) abc)
cn1: (((2 string-address)) <- ((string-copy)) ((1 string-address)) ((2 literal)) ((4 literal)))
schedule: main
run: main 0: (((1 string-address)) <- ((new)) abc)
run: main 0: 1000 => ((1 string-address))
mem: ((1 string-address)): 1 <= 1000
run: main 1: (((2 string-address)) <- ((string-copy)) ((1 string-address)) ((2 literal)) ((4 literal)))
mem: ((1 string-address)) => 1000
run: string-copy/main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
run: string-copy/main 0: 1004 => ((default-space space-address))
run: string-copy/main 1: (((1 string-address)) <- ((next-input)))
arg: nil 0 (1000 2 4)
run: string-copy/main 1: 1000 => ((1 string-address))
mem: ((1 string-address)): 1006 <= 1000
run: string-copy/main 2: (((2 integer)) <- ((next-input)))
arg: nil 1 (1000 2 4)
run: string-copy/main 2: 2 => ((2 integer))
mem: ((2 integer)): 1007 <= 2
run: string-copy/main 3: (((3 integer)) <- ((next-input)))
arg: nil 2 (1000 2 4)
run: string-copy/main 3: 4 => ((3 integer))
mem: ((3 integer)): 1008 <= 4
run: string-copy/main 4: (((4 integer)) <- ((length)) ((1 string-address) (deref)))
array-len: ((1 string-address) (deref))
mem: ((1000 integer) (raw)) => 3
run: string-copy/main 4: 3 => ((4 integer))
mem: ((4 integer)): 1009 <= 3
run: string-copy/main 5: (((3 integer)) <- ((min)) ((4 integer)) ((3 integer)))
mem: ((4 integer)) => 3
mem: ((3 integer)) => 4
run: min/string-copy/main 0: (((default-space space-address)) <- ((new)) ((space literal)) ((30 literal)))
run: min/string-copy/main 0: 1035 => ((default-space space-address))
run: min/string-copy/main 1: (((1 integer)) <- ((next-input)))
arg: nil 0 (3 4)
run: min/string-copy/main 1: 3 => ((1 integer))
mem: ((1 integer)): 1037 <= 3
run: min/string-copy/main 2: (((2 integer)) <- ((next-input)))
arg: nil 1 (3 4)
run: min/string-copy/main 2: 4 => ((2 integer))
mem: ((2 integer)): 1038 <= 4
run: min/string-copy/main 3: (((3 boolean)) <- ((less-than)) ((1 integer)) ((2 integer)))
mem: ((1 integer)) => 3
mem: ((2 integer)) => 4
run: min/string-copy/main 3: t => ((3 boolean))
mem: ((3 boolean)): 1039 <= t
run: min/string-copy/main 4: (((jump-if)) ((3 boolean)) ((1 offset)))
mem: ((3 boolean)) => t
run: min/string-copy/main 6: (((reply)) ((1 integer)))
mem: ((1 integer)) => 3
run: string-copy/main 5: 3 => ((3 integer))
mem: ((3 integer)): 1008 <= 3
run: string-copy/main 6: (((4 integer)) <- ((subtract)) ((3 integer)) ((2 integer)))
mem: ((3 integer)) => 3
mem: ((2 integer)) => 2
run: string-copy/main 6: 1 => ((4 integer))
mem: ((4 integer)): 1009 <= 1
run: string-copy/main 7: (((5 string-address)) <- ((new)) ((string literal)) ((4 integer)))
mem: ((4 integer)) => 1
run: string-copy/main 7: 1066 => ((5 string-address))
mem: ((5 string-address)): 1010 <= 1066
run: string-copy/main 8: (((6 integer)) <- ((copy)) ((2 integer)))
mem: ((2 integer)) => 2
run: string-copy/main 8: 2 => ((6 integer))
mem: ((6 integer)): 1011 <= 2
run: string-copy/main 9: (((7 integer)) <- ((copy)) ((0 literal)))
run: string-copy/main 9: 0 => ((7 integer))
mem: ((7 integer)): 1012 <= 0
run: string-copy/main 10: (((8 boolean)) <- ((greater-or-equal)) ((6 integer)) ((3 integer)))
mem: ((6 integer)) => 2
mem: ((3 integer)) => 3
run: string-copy/main 10: nil => ((8 boolean))
mem: ((8 boolean)): 1013 <= nil
run: string-copy/main 11: (((jump-if)) ((8 boolean)) ((6 offset)))
mem: ((8 boolean)) => nil
run: string-copy/main 12: (((9 character)) <- ((index)) ((1 string-address) (deref)) ((6 integer)))
mem: ((6 integer)) => 2
array-len: ((1000 string) (raw))
mem: ((1000 integer) (raw)) => 3
mem: ((1003 byte) (raw)) => c
run: string-copy/main 12: #\c => ((9 character))
mem: ((9 character)): 1014 <= #\c
run: string-copy/main 13: (((10 character-address)) <- ((index-address)) ((5 string-address) (deref)) ((7 integer)))
mem: ((7 integer)) => 0
array-len: ((1066 string) (raw))
mem: ((1066 integer) (raw)) => 1
run: string-copy/main 13: 1067 => ((10 character-address))
mem: ((10 character-address)): 1015 <= 1067
run: string-copy/main 14: (((10 character-address) (deref)) <- ((copy)) ((9 character)))
mem: ((9 character)) => c
run: string-copy/main 14: #\c => ((10 character-address) (deref))
mem: ((10 character-address) (deref)): 1067 <= #\c
run: string-copy/main 15: (((6 integer)) <- ((add)) ((6 integer)) ((1 literal)))
mem: ((6 integer)) => 2
run: string-copy/main 15: 3 => ((6 integer))
mem: ((6 integer)): 1011 <= 3
run: string-copy/main 16: (((7 integer)) <- ((add)) ((7 integer)) ((1 literal)))
mem: ((7 integer)) => 0
run: string-copy/main 16: 1 => ((7 integer))
mem: ((7 integer)): 1012 <= 1
run: string-copy/main 17: (((jump)) ((-8 offset)))
run: string-copy/main 10: (((8 boolean)) <- ((greater-or-equal)) ((6 integer)) ((3 integer)))
mem: ((6 integer)) => 3
mem: ((3 integer)) => 3
run: string-copy/main 10: t => ((8 boolean))
mem: ((8 boolean)): 1013 <= t
run: string-copy/main 11: (((jump-if)) ((8 boolean)) ((6 offset)))
mem: ((8 boolean)) => t
run: string-copy/main 18: (((reply)) ((5 string-address)))
mem: ((5 string-address)) => 1066
run: main 1: 1066 => ((2 string-address))
mem: ((2 string-address)): 2 <= 1066
schedule: done with routine nil
