about summary refs log tree commit diff stats
path: root/cpp/.traces/interpolate-at-start
blob: 51a4c657487934ae268d669b532cd0e7bc8e6505 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145<
/*
 *
 * Some macros to dump out formatted struct's via the trace file.  -KED
 *
 */
#ifndef STRUCTDUMP_H
#define STRUCTDUMP_H

/* usage: DUMPSTRUCT_LINK(link_ptr, "message"); */
#define   DUMPSTRUCT_LINK(L,X) \
if ((L)) { \
CTRACE((tfp, "\n" \
            "KED:     link_ptr=%p  sizeof=%d  ["X"]\n" \
            "link       struct {\n"      \
            "           *lname=%p\n"     \
            "            lname=|%s|\n"   \
            "          *target=%p\n"     \
            "           target=|%s|\n"   \
            "        *hightext=%p\n"     \
            "         hightext=|%s|\n"   \
            "       *hightext2=%p\n"     \
            "        hightext2=|%s|\n"   \
            " hightext2_offset=%d\n"     \
            "      inUnderline=%1x\n"    \
            "               lx=%d\n"     \
            "               ly=%d\n"     \
            "             type=%d\n"     \
            "    anchor_number=%d\n"     \
            "  anchor_line_num=%d\n"     \
            "            *form=%p\n"     \
            "}\n", \
            (L), sizeof(*((L))), \
            (L)->lname, (L)->lname, (L)->target, (L)->target, \
            (L)->l_hightext, (L)->l_hightext, \
	    (L)->l_hightext2, (L)->l_hightext2, \
            (L)->l_hightext2_offset, \
	    (L)->inUnderline, (L)->lx, (L)->ly, \
            (L)->type, (L)->anchor_number, (L)->anchor_line_num, (L)->form)); \
}else{ \
CTRACE((tfp, "\n" \
            "KED:     link_ptr=0x00000000  (NULL)     ["X"]\n")); \
} \
CTRACE_FLUSH(tfp);

/* usage: DUMPSTRUCT_ANCHOR(anchor_ptr, "message"); */
#define   DUMPSTRUCT_ANCHOR(A,X) \
if ((A)) { \
CTRACE((tfp, "\n" \
            "KED:   anchor_ptr=%p  sizeof=%d  ["X"]\n" \
            "TextAnchor struct {\n"      \
            "            *next=%p\n"     \
            "           number=%d\n"     \
            "         line_pos=%d\n"     \
            "           extent=%d\n"     \
            "         line_num=%d\n"     \
            "        *hightext=%p\n"     \
            "         hightext=|%s|\n"   \
            "       *hightext2=%p\n"     \
            "        hightext2=|%s|\n"   \
            "  hightext2offset=%d\n"     \
            "        link_type=%d\n"     \
            "     *input_field=%p\n"     \
            "      input_field=|%s|\n"   \
            "      show_anchor=%1x\n"    \
            "      inUnderline=%1x\n"    \
            "   expansion_anch=%1x\n"    \
            "          *anchor=%p\n"     \
            "}\n", \
            (A), sizeof(*((A))), \
            (A)->next, (A)->number, (A)->line_pos, \
            (A)->extent, (A)->line_num, \
            (A)->hightext, (A)->hightext, (A)->hightext2, (A)->hightext2, \
            (A)->hightext2offset, (A)->link_type, \
            (A)->input_field, (A)->input_field->name, (A)->show_anchor, \
            (A)->inUnderline, (A)->expansion_anch, (A)->anchor)); \
}else{ \
CTRACE((tfp, "\n" \
            "KED:   anchor_ptr=0x00000000  (NULL)     ["X"]\n")); \
} \
CTRACE_FLUSH(tfp);

/* usage: DUMPSTRUCT_FORM(forminfo_ptr, "message"); */
#define   DUMPSTRUCT_FORMINFO(F,X) \
if ((F)) { \
CTRACE((tfp, "\n" \
            "KED: forminfo_ptr=%p  sizeof=%d  ["X"]\n" \
            "FormInfo   struct {\n"      \
            "            *name=%p\n"     \
            "             name=|%s|\n"   \
            "           number=%d\n"     \
            "             type=%d\n"     \
            "           *value=%p\n"     \
            "            value=|%s|\n"   \
            "      *orig_value=%p\n"     \
            "       orig_value=|%s|\n"   \
            "             size=%d\n"     \
            "        maxlength=%d\n"     \
            "            group=%d\n"     \
            "        num_value=%d\n"     \
            "           hrange=%d\n"     \
            "           lrange=%d\n"     \
            "     *select_list=%p\n"     \
            "    submit_action=|%s|\n"   \
            "    submit_method=%d\n"     \
            "   submit_enctype=|%s|\n"   \
            "     submit_title=|%s|\n"   \
            "         no_cache=%1x\n"    \
            "  cp_submit_value=|%s|\n"   \
            "orig_submit_value=|%s|\n"   \
            "           size_l=%d\n"     \
            "         disabled=%d\n"     \
            "          name_cs=%d\n"     \
            "         value_cs=%d\n"     \
            "        accept_cs=|%s|\n"   \
            "}\n", \
            (F), sizeof(*((F))), \
            (F)->name, (F)->name, (F)->number, (F)->type, \
            (F)->value, (F)->value, (F)->orig_value, (F)->orig_value, \
            (F)->size, (F)->maxlength, (F)->group, (F)->num_value, \
            (F)->hrange, (F)->lrange, (F)->select_list, (F)->submit_action, \
            (F)->submit_method, (F)->submit_enctype, (F)->submit_title, \
            (F)->no_cache, (F)->cp_submit_value, (F)->orig_submit_value, \
            (F)->size_l, (F)->disabled, (F)->name_cs, (F)->value_cs, \
            (F)->accept_cs)); \
} else { \
CTRACE((tfp, "\n" \
            "KED: forminfo_ptr=0x00000000  (NULL)     ["X"]\n")); \
} \
CTRACE_FLUSH(tfp);

/* usage: DUMPSTRUCT_LINE(htline_ptr, "message"); */
#define   DUMPSTRUCT_LINE(L,X) \
if ((L)) { \
CTRACE((tfp, "\n" \
            "KED: htline_ptr=%p  sizeof=%d  ["X"]\n" \
            "HTLine  struct {\n"      \
            "         *next=%p\n"     \
            "         *prev=%p\n"     \
            "        offset=%d\n"     \
            "          size=%d\n"     \
            "   split_after=%1x\n"    \
            "        bullet=%1x\n"    \
            "expansion_line=%1x\n"    \
            "w/o U_C_S def\n"         \
            "        data[]=%p\n"     \
            "          data=|%s|\n"   \
            "}\n", \
            (L), sizeof(*((L))), \
            (L)->next, (L)->prev, (L)->offset, (L)->size, (L)->split_after, \
            (L)->bullet, (L)->expansion_line, (L)->data, (L)->data)); \
}else{ \
CTRACE((tfp, "\n" \
            "KED: htline_ptr=0x00000000  (NULL)     ["X"]\n")); \
} \
CTRACE_FLUSH(tfp);

#endif /* STRUCTDUMP_H */
'>637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743
parse/0: instruction: 38
parse/0:   ingredient: {name: "_, hello!", value: 0, type: 0, properties: ["_, hello!": "literal-string"]}
parse/0:   product: {name: "1", value: 0, type: 2-5-4, properties: ["1": "address":"array":"character", "raw": ]}
parse/0: instruction: 38
parse/0:   ingredient: {name: "abc", value: 0, type: 0, properties: ["abc": "literal-string"]}
parse/0:   product: {name: "2", value: 0, type: 2-5-4, properties: ["2": "address":"array":"character", "raw": ]}
parse/0: instruction: 107
parse/0:   ingredient: {name: "1", value: 0, type: 2-5-4, properties: ["1": "address":"array":"character", "raw": ]}
parse/0:   ingredient: {name: "2", value: 0, type: 2-5-4, properties: ["2": "address":"array":"character", "raw": ]}
parse/0:   product: {name: "3", value: 0, type: 2-5-4, properties: ["3": "address":"array":"character", "raw": ]}
parse/0: instruction: 1
parse/0:   ingredient: {name: "3", value: 0, type: 2-5-4, properties: ["3": "address":"array":"character", "raw": , "deref": ]}
parse/0:   product: {name: "4", value: 0, type: 5-4, properties: ["4": "array":"character", "raw": ]}
new/0: _, hello! -> 0
new/0: abc -> 0
after-brace/0: recipe test-interpolate-at-start
after-brace/0: new ...
after-brace/0: new ...
after-brace/0: interpolate ...
after-brace/0: copy ...
new/0: routine allocated memory from 1000 to 101000
schedule/0: test-interpolate-at-start
run/0: instruction test-interpolate-at-start/0
mem/0: storing 1000 in location 1
run/0: instruction test-interpolate-at-start/1
mem/0: storing 1010 in location 2
run/0: instruction test-interpolate-at-start/2
mem/0: location 1 is 1000
mem/0: location 2 is 1010
run/0: instruction interpolate/0
mem/0: array size is 60
mem/0: new alloc: 1014
run/0: instruction interpolate/1
run/0: product 0 is 1000
mem/0: storing 1000 in location 1016
run/0: instruction interpolate/2
mem/0: location 1016 is 1000
mem/0: storing 9 in location 1017
run/0: instruction interpolate/3
run/0: ingredient 0 is tem-len
mem/0: location 1017 is 9
mem/0: storing 9 in location 1018
run/0: instruction interpolate/5
run/0: product 0 is 1010
mem/0: storing 1010 in location 1019
mem/0: storing 1 in location 1020
run/0: instruction interpolate/6
mem/0: location 1020 is 1
run/0: ingredient 0 is 1
run/0: jump-unless fell through
run/0: instruction interpolate/7
mem/0: location 1019 is 1010
mem/0: storing 3 in location 1021
run/0: instruction interpolate/8
run/0: ingredient 0 is result-len
mem/0: location 1018 is 9
run/0: ingredient 1 is a-len
mem/0: location 1021 is 3
run/0: product 0 is 12
mem/0: storing 12 in location 1018
run/0: instruction interpolate/9
run/0: ingredient 0 is result-len
mem/0: location 1018 is 12
run/0: ingredient 1 is 1
run/0: product 0 is 11
mem/0: storing 11 in location 1018
run/0: instruction interpolate/10
run/0: ingredient 0 is -6
run/0: jumping to instruction 5
run/0: instruction interpolate/5
mem/0: storing 0 in location 1020
run/0: instruction interpolate/6
mem/0: location 1020 is 0
run/0: ingredient 0 is 0
run/0: ingredient 1 is 
run/0: jumping to instruction 11
run/0: instruction interpolate/12
run/0: instruction interpolate/13
run/0: product 0 is 1000
run/0: instruction interpolate/14
mem/0: location 1018 is 11
mem/0: array size is 11
mem/0: new alloc: 1074
mem/0: storing 1074 in location 1022
run/0: instruction interpolate/15
run/0: ingredient 0 is 0
mem/0: storing 0 in location 1023
run/0: instruction interpolate/16
run/0: ingredient 0 is 0
mem/0: storing 0 in location 1024
run/0: instruction interpolate/18
run/0: product 0 is 1010
mem/0: storing 1010 in location 1019
mem/0: storing 1 in location 1020
run/0: instruction interpolate/19
mem/0: location 1020 is 1
run/0: ingredient 0 is 1
run/0: jump-unless fell through
run/0: instruction interpolate/21
run/0: ingredient 0 is i
mem/0: location 1024 is 0
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 0
mem/0: storing 0 in location 1025
run/0: instruction interpolate/22
mem/0: location 1025 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/23
run/0: ingredient 0 is {name: "template", value: 1, type: 2-5-4, properties: ["template": "address":"array":"character", "deref": ]}
mem/0: location 1016 is 1000
run/0: ingredient 1 is {name: "i", value: 9, type: 1, properties: ["i": "integer"]}
mem/0: location 1024 is 0
run/0: address to copy is 1001
run/0: its type is 4
mem/0: location 1001 is 95
run/0: product 0 is 95
mem/0: storing 95 in location 1026
run/0: instruction interpolate/24
run/0: ingredient 0 is in
mem/0: location 1026 is 95
run/0: ingredient 1 is 95
run/0: product 0 is 1
mem/0: storing 1 in location 1027
run/0: instruction interpolate/25
mem/0: location 1027 is 1
run/0: ingredient 0 is 1
run/0: ingredient 1 is 
run/0: jumping to instruction 31
run/0: instruction interpolate/32
run/0: ingredient 0 is 0
mem/0: storing 0 in location 1029
run/0: instruction interpolate/34
run/0: ingredient 0 is j
mem/0: location 1029 is 0
run/0: ingredient 1 is a-len
mem/0: location 1021 is 3
run/0: product 0 is 0
mem/0: storing 0 in location 1030
run/0: instruction interpolate/35
mem/0: location 1030 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/36
run/0: ingredient 0 is {name: "a", value: 4, type: 2-5-4, properties: ["a": "address":"array":"character", "deref": ]}
mem/0: location 1019 is 1010
run/0: ingredient 1 is {name: "j", value: 14, type: 1, properties: ["j": "integer"]}
mem/0: location 1029 is 0
run/0: address to copy is 1011
run/0: its type is 4
mem/0: location 1011 is 97
run/0: product 0 is 97
mem/0: storing 97 in location 1026
run/0: instruction interpolate/37
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 0
run/0: address to copy is 1075
run/0: product 0 is 1075
mem/0: storing 1075 in location 1028
run/0: instruction interpolate/38
run/0: ingredient 0 is in
mem/0: location 1026 is 97
mem/0: location 1028 is 1075
mem/0: storing 97 in location 1075
run/0: instruction interpolate/39
run/0: ingredient 0 is j
mem/0: location 1029 is 0
run/0: ingredient 1 is 1
run/0: product 0 is 1
mem/0: storing 1 in location 1029
run/0: instruction interpolate/40
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 0
run/0: ingredient 1 is 1
run/0: product 0 is 1
mem/0: storing 1 in location 1023
run/0: instruction interpolate/41
run/0: ingredient 0 is -8
run/0: jumping to instruction 34
run/0: instruction interpolate/34
run/0: ingredient 0 is j
mem/0: location 1029 is 1
run/0: ingredient 1 is a-len
mem/0: location 1021 is 3
run/0: product 0 is 0
mem/0: storing 0 in location 1030
run/0: instruction interpolate/35
mem/0: location 1030 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/36
run/0: ingredient 0 is {name: "a", value: 4, type: 2-5-4, properties: ["a": "address":"array":"character", "deref": ]}
mem/0: location 1019 is 1010
run/0: ingredient 1 is {name: "j", value: 14, type: 1, properties: ["j": "integer"]}
mem/0: location 1029 is 1
run/0: address to copy is 1012
run/0: its type is 4
mem/0: location 1012 is 98
run/0: product 0 is 98
mem/0: storing 98 in location 1026
run/0: instruction interpolate/37
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 1
run/0: address to copy is 1076
run/0: product 0 is 1076
mem/0: storing 1076 in location 1028
run/0: instruction interpolate/38
run/0: ingredient 0 is in
mem/0: location 1026 is 98
mem/0: location 1028 is 1076
mem/0: storing 98 in location 1076
run/0: instruction interpolate/39
run/0: ingredient 0 is j
mem/0: location 1029 is 1
run/0: ingredient 1 is 1
run/0: product 0 is 2
mem/0: storing 2 in location 1029
run/0: instruction interpolate/40
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 1
run/0: ingredient 1 is 1
run/0: product 0 is 2
mem/0: storing 2 in location 1023
run/0: instruction interpolate/41
run/0: ingredient 0 is -8
run/0: jumping to instruction 34
run/0: instruction interpolate/34
run/0: ingredient 0 is j
mem/0: location 1029 is 2
run/0: ingredient 1 is a-len
mem/0: location 1021 is 3
run/0: product 0 is 0
mem/0: storing 0 in location 1030
run/0: instruction interpolate/35
mem/0: location 1030 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/36
run/0: ingredient 0 is {name: "a", value: 4, type: 2-5-4, properties: ["a": "address":"array":"character", "deref": ]}
mem/0: location 1019 is 1010
run/0: ingredient 1 is {name: "j", value: 14, type: 1, properties: ["j": "integer"]}
mem/0: location 1029 is 2
run/0: address to copy is 1013
run/0: its type is 4
mem/0: location 1013 is 99
run/0: product 0 is 99
mem/0: storing 99 in location 1026
run/0: instruction interpolate/37
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 2
run/0: address to copy is 1077
run/0: product 0 is 1077
mem/0: storing 1077 in location 1028
run/0: instruction interpolate/38
run/0: ingredient 0 is in
mem/0: location 1026 is 99
mem/0: location 1028 is 1077
mem/0: storing 99 in location 1077
run/0: instruction interpolate/39
run/0: ingredient 0 is j
mem/0: location 1029 is 2
run/0: ingredient 1 is 1
run/0: product 0 is 3
mem/0: storing 3 in location 1029
run/0: instruction interpolate/40
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 2
run/0: ingredient 1 is 1
run/0: product 0 is 3
mem/0: storing 3 in location 1023
run/0: instruction interpolate/41
run/0: ingredient 0 is -8
run/0: jumping to instruction 34
run/0: instruction interpolate/34
run/0: ingredient 0 is j
mem/0: location 1029 is 3
run/0: ingredient 1 is a-len
mem/0: location 1021 is 3
run/0: product 0 is 1
mem/0: storing 1 in location 1030
run/0: instruction interpolate/35
mem/0: location 1030 is 1
run/0: ingredient 0 is 1
run/0: ingredient 1 is 
run/0: jumping to instruction 42
run/0: instruction interpolate/43
run/0: ingredient 0 is i
mem/0: location 1024 is 0
run/0: ingredient 1 is 1
run/0: product 0 is 1
mem/0: storing 1 in location 1024
run/0: instruction interpolate/44
run/0: ingredient 0 is -27
run/0: jumping to instruction 18
run/0: instruction interpolate/18
mem/0: storing 0 in location 1020
run/0: instruction interpolate/19
mem/0: location 1020 is 0
run/0: ingredient 0 is 0
run/0: ingredient 1 is 
run/0: jumping to instruction 45
run/0: instruction interpolate/47
run/0: ingredient 0 is i
mem/0: location 1024 is 1
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 0
mem/0: storing 0 in location 1025
run/0: instruction interpolate/48
mem/0: location 1025 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/49
run/0: ingredient 0 is {name: "template", value: 1, type: 2-5-4, properties: ["template": "address":"array":"character", "deref": ]}
mem/0: location 1016 is 1000
run/0: ingredient 1 is {name: "i", value: 9, type: 1, properties: ["i": "integer"]}
mem/0: location 1024 is 1
run/0: address to copy is 1002
run/0: its type is 4
mem/0: location 1002 is 44
run/0: product 0 is 44
mem/0: storing 44 in location 1026
run/0: instruction interpolate/50
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 3
run/0: address to copy is 1078
run/0: product 0 is 1078
mem/0: storing 1078 in location 1028
run/0: instruction interpolate/51
run/0: ingredient 0 is in
mem/0: location 1026 is 44
mem/0: location 1028 is 1078
mem/0: storing 44 in location 1078
run/0: instruction interpolate/52
run/0: ingredient 0 is i
mem/0: location 1024 is 1
run/0: ingredient 1 is 1
run/0: product 0 is 2
mem/0: storing 2 in location 1024
run/0: instruction interpolate/53
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 3
run/0: ingredient 1 is 1
run/0: product 0 is 4
mem/0: storing 4 in location 1023
run/0: instruction interpolate/54
run/0: ingredient 0 is -8
run/0: jumping to instruction 47
run/0: instruction interpolate/47
run/0: ingredient 0 is i
mem/0: location 1024 is 2
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 0
mem/0: storing 0 in location 1025
run/0: instruction interpolate/48
mem/0: location 1025 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/49
run/0: ingredient 0 is {name: "template", value: 1, type: 2-5-4, properties: ["template": "address":"array":"character", "deref": ]}
mem/0: location 1016 is 1000
run/0: ingredient 1 is {name: "i", value: 9, type: 1, properties: ["i": "integer"]}
mem/0: location 1024 is 2
run/0: address to copy is 1003
run/0: its type is 4
mem/0: location 1003 is 32
run/0: product 0 is 32
mem/0: storing 32 in location 1026
run/0: instruction interpolate/50
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 4
run/0: address to copy is 1079
run/0: product 0 is 1079
mem/0: storing 1079 in location 1028
run/0: instruction interpolate/51
run/0: ingredient 0 is in
mem/0: location 1026 is 32
mem/0: location 1028 is 1079
mem/0: storing 32 in location 1079
run/0: instruction interpolate/52
run/0: ingredient 0 is i
mem/0: location 1024 is 2
run/0: ingredient 1 is 1
run/0: product 0 is 3
mem/0: storing 3 in location 1024
run/0: instruction interpolate/53
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 4
run/0: ingredient 1 is 1
run/0: product 0 is 5
mem/0: storing 5 in location 1023
run/0: instruction interpolate/54
run/0: ingredient 0 is -8
run/0: jumping to instruction 47
run/0: instruction interpolate/47
run/0: ingredient 0 is i
mem/0: location 1024 is 3
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 0
mem/0: storing 0 in location 1025
run/0: instruction interpolate/48
mem/0: location 1025 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/49
run/0: ingredient 0 is {name: "template", value: 1, type: 2-5-4, properties: ["template": "address":"array":"character", "deref": ]}
mem/0: location 1016 is 1000
run/0: ingredient 1 is {name: "i", value: 9, type: 1, properties: ["i": "integer"]}
mem/0: location 1024 is 3
run/0: address to copy is 1004
run/0: its type is 4
mem/0: location 1004 is 104
run/0: product 0 is 104
mem/0: storing 104 in location 1026
run/0: instruction interpolate/50
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 5
run/0: address to copy is 1080
run/0: product 0 is 1080
mem/0: storing 1080 in location 1028
run/0: instruction interpolate/51
run/0: ingredient 0 is in
mem/0: location 1026 is 104
mem/0: location 1028 is 1080
mem/0: storing 104 in location 1080
run/0: instruction interpolate/52
run/0: ingredient 0 is i
mem/0: location 1024 is 3
run/0: ingredient 1 is 1
run/0: product 0 is 4
mem/0: storing 4 in location 1024
run/0: instruction interpolate/53
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 5
run/0: ingredient 1 is 1
run/0: product 0 is 6
mem/0: storing 6 in location 1023
run/0: instruction interpolate/54
run/0: ingredient 0 is -8
run/0: jumping to instruction 47
run/0: instruction interpolate/47
run/0: ingredient 0 is i
mem/0: location 1024 is 4
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 0
mem/0: storing 0 in location 1025
run/0: instruction interpolate/48
mem/0: location 1025 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/49
run/0: ingredient 0 is {name: "template", value: 1, type: 2-5-4, properties: ["template": "address":"array":"character", "deref": ]}
mem/0: location 1016 is 1000
run/0: ingredient 1 is {name: "i", value: 9, type: 1, properties: ["i": "integer"]}
mem/0: location 1024 is 4
run/0: address to copy is 1005
run/0: its type is 4
mem/0: location 1005 is 101
run/0: product 0 is 101
mem/0: storing 101 in location 1026
run/0: instruction interpolate/50
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 6
run/0: address to copy is 1081
run/0: product 0 is 1081
mem/0: storing 1081 in location 1028
run/0: instruction interpolate/51
run/0: ingredient 0 is in
mem/0: location 1026 is 101
mem/0: location 1028 is 1081
mem/0: storing 101 in location 1081
run/0: instruction interpolate/52
run/0: ingredient 0 is i
mem/0: location 1024 is 4
run/0: ingredient 1 is 1
run/0: product 0 is 5
mem/0: storing 5 in location 1024
run/0: instruction interpolate/53
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 6
run/0: ingredient 1 is 1
run/0: product 0 is 7
mem/0: storing 7 in location 1023
run/0: instruction interpolate/54
run/0: ingredient 0 is -8
run/0: jumping to instruction 47
run/0: instruction interpolate/47
run/0: ingredient 0 is i
mem/0: location 1024 is 5
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 0
mem/0: storing 0 in location 1025
run/0: instruction interpolate/48
mem/0: location 1025 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/49
run/0: ingredient 0 is {name: "template", value: 1, type: 2-5-4, properties: ["template": "address":"array":"character", "deref": ]}
mem/0: location 1016 is 1000
run/0: ingredient 1 is {name: "i", value: 9, type: 1, properties: ["i": "integer"]}
mem/0: location 1024 is 5
run/0: address to copy is 1006
run/0: its type is 4
mem/0: location 1006 is 108
run/0: product 0 is 108
mem/0: storing 108 in location 1026
run/0: instruction interpolate/50
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 7
run/0: address to copy is 1082
run/0: product 0 is 1082
mem/0: storing 1082 in location 1028
run/0: instruction interpolate/51
run/0: ingredient 0 is in
mem/0: location 1026 is 108
mem/0: location 1028 is 1082
mem/0: storing 108 in location 1082
run/0: instruction interpolate/52
run/0: ingredient 0 is i
mem/0: location 1024 is 5
run/0: ingredient 1 is 1
run/0: product 0 is 6
mem/0: storing 6 in location 1024
run/0: instruction interpolate/53
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 7
run/0: ingredient 1 is 1
run/0: product 0 is 8
mem/0: storing 8 in location 1023
run/0: instruction interpolate/54
run/0: ingredient 0 is -8
run/0: jumping to instruction 47
run/0: instruction interpolate/47
run/0: ingredient 0 is i
mem/0: location 1024 is 6
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 0
mem/0: storing 0 in location 1025
run/0: instruction interpolate/48
mem/0: location 1025 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/49
run/0: ingredient 0 is {name: "template", value: 1, type: 2-5-4, properties: ["template": "address":"array":"character", "deref": ]}
mem/0: location 1016 is 1000
run/0: ingredient 1 is {name: "i", value: 9, type: 1, properties: ["i": "integer"]}
mem/0: location 1024 is 6
run/0: address to copy is 1007
run/0: its type is 4
mem/0: location 1007 is 108
run/0: product 0 is 108
mem/0: storing 108 in location 1026
run/0: instruction interpolate/50
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 8
run/0: address to copy is 1083
run/0: product 0 is 1083
mem/0: storing 1083 in location 1028
run/0: instruction interpolate/51
run/0: ingredient 0 is in
mem/0: location 1026 is 108
mem/0: location 1028 is 1083
mem/0: storing 108 in location 1083
run/0: instruction interpolate/52
run/0: ingredient 0 is i
mem/0: location 1024 is 6
run/0: ingredient 1 is 1
run/0: product 0 is 7
mem/0: storing 7 in location 1024
run/0: instruction interpolate/53
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 8
run/0: ingredient 1 is 1
run/0: product 0 is 9
mem/0: storing 9 in location 1023
run/0: instruction interpolate/54
run/0: ingredient 0 is -8
run/0: jumping to instruction 47
run/0: instruction interpolate/47
run/0: ingredient 0 is i
mem/0: location 1024 is 7
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 0
mem/0: storing 0 in location 1025
run/0: instruction interpolate/48
mem/0: location 1025 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/49
run/0: ingredient 0 is {name: "template", value: 1, type: 2-5-4, properties: ["template": "address":"array":"character", "deref": ]}
mem/0: location 1016 is 1000
run/0: ingredient 1 is {name: "i", value: 9, type: 1, properties: ["i": "integer"]}
mem/0: location 1024 is 7
run/0: address to copy is 1008
run/0: its type is 4
mem/0: location 1008 is 111
run/0: product 0 is 111
mem/0: storing 111 in location 1026
run/0: instruction interpolate/50
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 9
run/0: address to copy is 1084
run/0: product 0 is 1084
mem/0: storing 1084 in location 1028
run/0: instruction interpolate/51
run/0: ingredient 0 is in
mem/0: location 1026 is 111
mem/0: location 1028 is 1084
mem/0: storing 111 in location 1084
run/0: instruction interpolate/52
run/0: ingredient 0 is i
mem/0: location 1024 is 7
run/0: ingredient 1 is 1
run/0: product 0 is 8
mem/0: storing 8 in location 1024
run/0: instruction interpolate/53
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 9
run/0: ingredient 1 is 1
run/0: product 0 is 10
mem/0: storing 10 in location 1023
run/0: instruction interpolate/54
run/0: ingredient 0 is -8
run/0: jumping to instruction 47
run/0: instruction interpolate/47
run/0: ingredient 0 is i
mem/0: location 1024 is 8
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 0
mem/0: storing 0 in location 1025
run/0: instruction interpolate/48
mem/0: location 1025 is 0
run/0: ingredient 0 is 0
run/0: jump-if fell through
run/0: instruction interpolate/49
run/0: ingredient 0 is {name: "template", value: 1, type: 2-5-4, properties: ["template": "address":"array":"character", "deref": ]}
mem/0: location 1016 is 1000
run/0: ingredient 1 is {name: "i", value: 9, type: 1, properties: ["i": "integer"]}
mem/0: location 1024 is 8
run/0: address to copy is 1009
run/0: its type is 4
mem/0: location 1009 is 33
run/0: product 0 is 33
mem/0: storing 33 in location 1026
run/0: instruction interpolate/50
run/0: ingredient 0 is result
mem/0: location 1022 is 1074
run/0: ingredient 1 is {name: "result-idx", value: 8, type: 1, properties: ["result-idx": "integer"]}
mem/0: location 1023 is 10
run/0: address to copy is 1085
run/0: product 0 is 1085
mem/0: storing 1085 in location 1028
run/0: instruction interpolate/51
run/0: ingredient 0 is in
mem/0: location 1026 is 33
mem/0: location 1028 is 1085
mem/0: storing 33 in location 1085
run/0: instruction interpolate/52
run/0: ingredient 0 is i
mem/0: location 1024 is 8
run/0: ingredient 1 is 1
run/0: product 0 is 9
mem/0: storing 9 in location 1024
run/0: instruction interpolate/53
run/0: ingredient 0 is result-idx
mem/0: location 1023 is 10
run/0: ingredient 1 is 1
run/0: product 0 is 11
mem/0: storing 11 in location 1023
run/0: instruction interpolate/54
run/0: ingredient 0 is -8
run/0: jumping to instruction 47
run/0: instruction interpolate/47
run/0: ingredient 0 is i
mem/0: location 1024 is 9
run/0: ingredient 1 is tem-len
mem/0: location 1017 is 9
run/0: product 0 is 1
mem/0: storing 1 in location 1025
run/0: instruction interpolate/48
mem/0: location 1025 is 1
run/0: ingredient 0 is 1
run/0: ingredient 1 is 
run/0: jumping to instruction 55
run/0: instruction interpolate/56
mem/0: location 1022 is 1074
run/0: result 0 is 1074
mem/0: storing 1074 in location 3
run/0: instruction test-interpolate-at-start/3
run/0: ingredient 0 is 3
mem/0: location 3 is 1074
mem/0: location 1074 is 11
mem/0: location 1075 is 97
mem/0: location 1076 is 98
mem/0: location 1077 is 99
mem/0: location 1078 is 44
mem/0: location 1079 is 32
mem/0: location 1080 is 104
mem/0: location 1081 is 101
mem/0: location 1082 is 108
mem/0: location 1083 is 108
mem/0: location 1084 is 111
mem/0: location 1085 is 33
mem/0: storing 11 in location 4
mem/0: storing 97 in location 5
mem/0: storing 98 in location 6
mem/0: storing 99 in location 7
mem/0: storing 44 in location 8
mem/0: storing 32 in location 9
mem/0: storing 104 in location 10
mem/0: storing 101 in location 11
mem/0: storing 108 in location 12
mem/0: storing 108 in location 13
mem/0: storing 111 in location 14
mem/0: storing 33 in location 15