Machine-Independent MDL for TOPS-20 and VAX.
[pdp10-muddle.git] / mim / development / mim / mimc / cargen.mima
1
2 <PACKAGE "CARGEN">
3
4 <ENTRY ARITH-GEN ABS-GEN FLOAT-GEN FIX-GEN MOD-GEN ROT-GEN LSH-GEN 1?-GEN GEN-FLOAT GENFLOAT MIN-MAX 0-TEST FLIP TEST-GEN>
5
6 <USE "COMPDEC" "CODGEN" "CHKDCL" "STRGEN" "MIMGEN" "ADVMESS">
7
8 "       This file contains analyzers and code generators for arithmetic
9  SUBRs and predicates.  For convenience many of the SUBRs that are
10 similar are combined into one analyzer/generator.  For more info
11 on analyzers see SYMANA and on generators see CODGEN.
12 "
13
14 "A type TRANS specifies to an inferior node what arithmetic transforms are
15 prohibited, permitted or desired.  A transform consists of 3 main elements:
16 a NODE, an input, an output.  The input and output are UVECTORS of 7 fixes:
17
18 1)      negative ok     0-no, 1-ok, 2-pref
19 2)      + or - const ok 0-no, 1-ok, 2-pref
20 3)      const for + or -
21 4)      * or / const ok 0-no, 1-* ok, 2-* pref, 3-/ ok, 4-/ pref
22 5)      hw ok           0-no, 1-ok, 2-pref
23 6)      hw swapped also 0-no, 1-ok, 2-pref
24 "
25
26 <SETG SNODES <UVECTOR ,QUOTE-CODE ,LVAL-CODE ,GVAL-CODE>>
27
28 <SETG SNODES1 <REST ,SNODES>>
29
30 <GDECL (SNODES SNODES1) <UVECTOR [REST FIX]>>
31
32 #WORD *6072042554*
33                     <GFCN \1aCOMMUTE ("VALUE" LIST <LIST [REST NODE]> ANY LIST) K4 OP5 L6>
34                     <TEMP REDO17 KK9:LIST FK8:LIST TEMP24:NODE TYP10 CD114:FIX CD13:FIX N12:NODE TEMP36>
35                     <INTGO>
36                     <SET REDO17 %<> (TYPE FALSE)>
37                     <LOOP>
38 AGAIN18
39                     <INTGO>
40                     <EMPL? K4 + PHRASE65 (TYPE LIST)>
41                     <SET FK8 K4>
42                     <RESTL FK8 1 = KK9 (TYPE LIST)>
43                     <EMPL? KK9 + PHRASE65 (TYPE LIST)>
44                     <FRAME '\1aISTYPE?>
45                     <NTHL KK9 1 = TEMP24 (TYPE NODE)>
46                     <NTHUV TEMP24 3 = STACK>
47                     <DEAD TEMP24>
48                     <CALL '\1aISTYPE? 1>
49                     <LOOP>
50 AGAIN26
51                     <INTGO>
52                     <EMPL? KK9 + EXIT25 (TYPE LIST)>
53                     <FRAME '\1aISTYPE?>
54                     <NTHL KK9 1 = TEMP24 (TYPE NODE)>
55                     <NTHUV TEMP24 3 = STACK>
56                     <CALL '\1aISTYPE? 1 = TYP10>
57                     <VEQUAL? TYP10 TYP10 - PHRASE38>
58                     <DEAD TYP10>
59                     <NTHUV TEMP24 1 = CD114 (TYPE FIX)>
60                     <NTHL FK8 1 = N12 (TYPE NODE)>
61                     <NTHUV N12 1 = CD13 (TYPE FIX)>
62                     <VEQUAL? CD13 2 - PHRASE32 (TYPE FIX)>
63                     <VEQUAL? CD114 2 - PHRASE32 (TYPE FIX)>
64                     <FRAME>
65                     <GVAL OP5 = TYP10>
66                     <NTHUV N12 4 = STACK>
67                     <NTHUV TEMP24 4 = STACK>
68                     <DEAD TEMP24>
69                     <ACALL TYP10 2 = TEMP36>
70                     <DEAD TYP10>
71                     <PUTUV N12 4 TEMP36>
72                     <DEAD N12 TEMP36>
73                     <RESTL KK9 1 = KK9 (TYPE LIST)>
74                     <PUTREST FK8 KK9>
75                     <SET REDO17 'T (TYPE ATOM)>
76                     <JUMP + AGAIN26>
77 PHRASE32
78                     <VEQUAL? CD13 2 - PHRASE37 (TYPE FIX)>
79                     <PUTL KK9 1 N12>
80                     <DEAD N12>
81                     <PUTL FK8 1 TEMP24>
82                     <DEAD FK8 TEMP24>
83                     <SET REDO17 'T (TYPE ATOM)>
84                     <JUMP + PHRASE38>
85 PHRASE37
86                     <GVAL 'SNODES = TEMP36>
87                     <EMPUU? TEMP36 + TAG40>
88                     <LOOP (CD114 VALUE) (TEMP36 LENGTH VALUE)>
89 TAG41
90                     <NTHUU TEMP36 1 = TYP10>
91                     <VEQUAL? TYP10 CD114 + PHRASE38>
92                     <DEAD TYP10>
93                     <RESTUU TEMP36 1 = TEMP36 (TYPE UVECTOR)>
94                     <EMPUU? TEMP36 - TAG41>
95 TAG40
96                     <GVAL 'SNODES = TEMP36>
97                     <EMPUU? TEMP36 + PHRASE38>
98                     <LOOP (CD13 VALUE) (TEMP36 LENGTH VALUE)>
99 TAG44
100                     <NTHUU TEMP36 1 = TYP10>
101                     <VEQUAL? TYP10 CD13 + TAG43>
102                     <DEAD TYP10>
103                     <RESTUU TEMP36 1 = TEMP36 (TYPE UVECTOR)>
104                     <EMPUU? TEMP36 - TAG44>
105                     <JUMP + PHRASE38>
106 TAG43
107                     <VEQUAL? CD114 68 + PHRASE38 (TYPE FIX)>
108                     <DEAD CD114>
109                     <NTHUV TEMP24 8 = TEMP36>
110                     <TYPE? TEMP36 <TYPE-CODE FALSE> - PHRASE38>
111                     <DEAD TEMP36>
112                     <VEQUAL? CD13 10 - PHRASE47 (TYPE FIX)>
113                     <DEAD CD13>
114                     <NTHUV N12 7 = REDO17 (TYPE LIST)>
115                     <EMPL? REDO17 + PHRASE50>
116                     <RESTL REDO17 1 = TEMP36 (TYPE LIST)>
117                     <EMPL? TEMP36 + PHRASE50>
118                     <RESTL TEMP36 1 = TEMP36 (TYPE LIST)>
119                     <EMPL? TEMP36 - PHRASE50>
120                     <DEAD TEMP36>
121                     <RESTL REDO17 1 = TEMP36 (TYPE LIST)>
122                     <DEAD REDO17>
123                     <NTHL TEMP36 1 = TEMP36>
124                     <TYPE? TEMP36 <TYPE-CODE FALSE> + PHRASE47>
125                     <DEAD TEMP36>
126 PHRASE50
127                     <NTHUV N12 4 = REDO17>
128                     <TYPE? REDO17 <TYPE-CODE FALSE> + PHRASE47>
129                     <SET TEMP36 L6 (TYPE LIST)>
130                     <LOOP>
131 MAP53
132                     <INTGO>
133                     <EMPL? TEMP36 + MAPAP56>
134                     <NTHL TEMP36 1 = TYP10>
135                     <NTH1 TYP10 = TYP10>
136                     <EQUAL? TYP10 REDO17 + PHRASE47>
137                     <DEAD TYP10>
138                     <RESTL TEMP36 1 = TEMP36 (TYPE LIST)>
139                     <JUMP + MAP53>
140 MAPAP56
141                     <CONS %<> () = REDO17>
142                     <NTHUV N12 4 = TEMP36>
143                     <CONS TEMP36 REDO17 = REDO17>
144                     <DEAD TEMP36>
145                     <CONS REDO17 L6 = L6>
146                     <DEAD REDO17>
147 PHRASE47
148                     <PUTL KK9 1 N12>
149                     <DEAD N12>
150                     <PUTL FK8 1 TEMP24>
151                     <DEAD FK8 TEMP24>
152                     <SET REDO17 'T (TYPE ATOM)>
153 PHRASE38
154                     <SET FK8 KK9>
155                     <DEAD KK9>
156                     <RESTL FK8 1 = KK9 (TYPE LIST)>
157                     <JUMP + AGAIN26>
158 EXIT25
159                     <VEQUAL? REDO17 0 + PHRASE65>
160                     <DEAD REDO17>
161                     <SET REDO17 %<> (TYPE FALSE)>
162                     <JUMP + AGAIN18>
163 PHRASE65
164                     <RETURN L6>
165                     <DEAD L6>
166                     <END \1aCOMMUTE>
167
168 " Generate code for +,-,* and /."
169
170 #WORD *22450367276*
171                     <GFCN \1aARITH-GEN ("VALUE" ANY NODE ANY) NOD4 WHERE5>
172                     <TEMP K7 TEMP29 TEMP30 TEMP31 ATYP10:FIX (MODE12:FIX 1) (DONE19 %<>) (NEGF20 %<>) ONO21 TEMP3:LBIND TEMP58 TEMP71 REG6 NXT167>
173                     <INTGO>
174                     <NTHUV NOD4 5 = K7 (TYPE LIST)>
175                     <NTHUV NOD4 4 = TEMP29>
176                     <SET TEMP30 [/ * - +] (TYPE VECTOR)>
177                     <TYPE? TEMP29 <TYPE-CODE ATOM> - TAG25>
178                     <LOOP (TEMP29 VALUE) (TEMP30 LENGTH VALUE)>
179 TAG27
180                     <NTHUV TEMP30 1 = TEMP31>
181                     <VEQUAL? TEMP31 TEMP29 + TAG26>
182                     <DEAD TEMP31>
183                     <RESTUV TEMP30 1 = TEMP30 (TYPE VECTOR)>
184                     <EMPUV? TEMP30 - TAG27>
185 TAG25
186                     <SET TEMP30 %<> (TYPE FALSE)>
187 TAG26
188                     <LENUV TEMP30 = ATYP10 (TYPE FIX)>
189                     <DEAD TEMP30>
190                     <GEN-LVAL 'NO-KILL = ONO21>
191                     <GETS 'BIND = TEMP3 (TYPE LBIND)>
192                     <GEN-LVAL 'NO-KILL = TEMP29>
193                     <BBIND 'NO-KILL 'LIST 'FIX TEMP29>
194                     <DEAD TEMP29>
195                     <FRAME '\1aCOMMUTE>
196                     <NTHUU ![0 1 0 1!] ATYP10 = TEMP29 (TYPE FIX)>
197                     <SET TEMP31 K7>
198                     <GRTR? TEMP29 0 - RESTL44 (TYPE FIX)>
199                     <LOOP (TEMP31 VALUE) (TEMP29 VALUE)>
200 RESTL43
201                     <INTGO>
202                     <RESTL TEMP31 1 = TEMP31 (TYPE LIST)>
203                     <SUB TEMP29 1 = TEMP29 (TYPE FIX)>
204                     <GRTR? TEMP29 0 + RESTL43 (TYPE FIX)>
205 RESTL44
206                     <PUSH TEMP31>
207                     <DEAD TEMP31>
208                     <NTHUV [+ + * *] ATYP10 = STACK (TYPE ATOM)>
209                     <NTHR 'NO-KILL 2 = TEMP31 (RECORD-TYPE ATOM) (TYPE LBIND)>
210                     <NTHR TEMP31 1 = STACK (RECORD-TYPE LBIND)>
211                     <DEAD TEMP31>
212                     <CALL '\1aCOMMUTE 3 = TEMP31>
213                     <NTHR 'NO-KILL 2 = TEMP29 (RECORD-TYPE ATOM) (TYPE LBIND)>
214                     <PUTR TEMP29 1 TEMP31 (RECORD-TYPE LBIND)>
215                     <DEAD TEMP29 TEMP31>
216                     <NTHUV NOD4 3 = TEMP31>
217                     <EQUAL? TEMP31 'FIX - PHRASE85>
218                     <DEAD TEMP31>
219                     <EMPL? K7 + PHRASE85>
220                     <RESTL K7 1 = TEMP31 (TYPE LIST)>
221                     <EMPL? TEMP31 + PHRASE85>
222                     <RESTL TEMP31 1 = TEMP31 (TYPE LIST)>
223                     <EMPL? TEMP31 - PHRASE85>
224                     <DEAD TEMP31>
225                     <RESTL K7 1 = TEMP31 (TYPE LIST)>
226                     <NTHL TEMP31 1 = TEMP31 (TYPE NODE)>
227                     <NTHUV TEMP31 1 = TEMP31 (TYPE FIX)>
228                     <VEQUAL? TEMP31 2 - PHRASE85 (TYPE FIX)>
229                     <DEAD TEMP31>
230                     <GEN-ASSIGNED? 'TRANSFORM - PHRASE53>
231                     <NTHUV NOD4 2 = TEMP29>
232                     <GEN-LVAL 'TRANSFORM = TEMP31>
233                     <NTHUV TEMP31 1 = TEMP58 (TYPE NODE)>
234                     <EQUAL? TEMP29 TEMP58 - PHRASE53>
235                     <DEAD TEMP29 TEMP58>
236                     <NTHUV TEMP31 2 = TEMP30 (TYPE UVECTOR)>
237                     <GRTR? ATYP10 2 + PHRASE60 (TYPE FIX)>
238                     <NTHUU TEMP30 2 = TEMP58 (TYPE FIX)>
239                     <VEQUAL? TEMP58 1 + BOOL62 (TYPE FIX)>
240                     <DEAD TEMP58>
241                     <NTHUU TEMP30 2 = TEMP58 (TYPE FIX)>
242                     <VEQUAL? TEMP58 2 - PHRASE60 (TYPE FIX)>
243                     <DEAD TEMP58>
244                     <NTHUU TEMP30 3 = TEMP58 (TYPE FIX)>
245                     <VEQUAL? ATYP10 1 - PHRASE67 (TYPE FIX)>
246                     <RESTL K7 1 = TEMP29 (TYPE LIST)>
247                     <NTHL TEMP29 1 = TEMP29 (TYPE NODE)>
248                     <NTHUV TEMP29 4 = TEMP29>
249                     <CHTYPE TEMP29 <TYPE-CODE FIX> = TEMP29>
250                     <SUB 0 TEMP29 = TEMP29 (TYPE FIX)>
251                     <JUMP + PHRASE70>
252 PHRASE67
253                     <RESTL K7 1 = TEMP71 (TYPE LIST)>
254                     <NTHL TEMP71 1 = TEMP71 (TYPE NODE)>
255                     <NTHUV TEMP71 4 = TEMP29>
256                     <DEAD TEMP71>
257 PHRASE70
258                     <EQUAL? TEMP58 TEMP29 - PHRASE60>
259                     <DEAD TEMP58 TEMP29>
260 BOOL62
261                     <NTHUV TEMP31 3 = TEMP29 (TYPE UVECTOR)>
262                     <DEAD TEMP31>
263                     <PUTUU TEMP29 2 1>
264                     <VEQUAL? ATYP10 1 - PHRASE73 (TYPE FIX)>
265                     <DEAD ATYP10>
266                     <RESTL K7 1 = TEMP58 (TYPE LIST)>
267                     <NTHL TEMP58 1 = TEMP58 (TYPE NODE)>
268                     <NTHUV TEMP58 4 = TEMP58>
269                     <CHTYPE TEMP58 <TYPE-CODE FIX> = TEMP58>
270                     <SUB 0 TEMP58 = TEMP58 (TYPE FIX)>
271                     <JUMP + PHRASE76>
272 PHRASE73
273                     <RESTL K7 1 = TEMP71 (TYPE LIST)>
274                     <NTHL TEMP71 1 = TEMP71 (TYPE NODE)>
275                     <NTHUV TEMP71 4 = TEMP58>
276                     <DEAD TEMP71>
277 PHRASE76
278                     <PUTUU TEMP29 3 TEMP58>
279                     <DEAD TEMP29 TEMP58>
280                     <JUMP + PHRASE83>
281 PHRASE60
282                     <VEQUAL? ATYP10 3 - PHRASE53 (TYPE FIX)>
283                     <NTHUU TEMP30 4 = TEMP29 (TYPE FIX)>
284                     <VEQUAL? TEMP29 1 + BOOL79 (TYPE FIX)>
285                     <DEAD TEMP29>
286                     <NTHUU TEMP30 4 = TEMP29 (TYPE FIX)>
287                     <VEQUAL? TEMP29 4 - PHRASE53 (TYPE FIX)>
288                     <DEAD TEMP29>
289                     <NTHUU TEMP30 5 = TEMP29 (TYPE FIX)>
290                     <DEAD TEMP30>
291                     <RESTL K7 1 = TEMP58 (TYPE LIST)>
292                     <NTHL TEMP58 1 = TEMP58 (TYPE NODE)>
293                     <NTHUV TEMP58 4 = TEMP58>
294                     <EQUAL? TEMP29 TEMP58 - PHRASE53>
295                     <DEAD TEMP29 TEMP58>
296 BOOL79
297                     <NTHUV TEMP31 3 = TEMP58 (TYPE UVECTOR)>
298                     <DEAD TEMP31>
299                     <PUTUU TEMP58 4 4>
300                     <RESTL K7 1 = TEMP29 (TYPE LIST)>
301                     <NTHL TEMP29 1 = TEMP29 (TYPE NODE)>
302                     <NTHUV TEMP29 4 = TEMP29>
303                     <PUTUU TEMP58 5 TEMP29>
304                     <DEAD TEMP58 TEMP29>
305 PHRASE83
306                     <FRAME '\1aGEN>
307                     <NTHL K7 1 = STACK (TYPE NODE)>
308                     <DEAD K7>
309                     <PUSH WHERE5>
310                     <DEAD WHERE5>
311                     <CALL '\1aGEN 2 = TEMP58>
312                     <JUMP + RETURN2>
313 PHRASE53
314                     <NTHL K7 1 = TEMP30 (TYPE NODE)>
315                     <NTHUV TEMP30 1 = TEMP29 (TYPE FIX)>
316                     <VEQUAL? TEMP29 68 + PHRASE85 (TYPE FIX)>
317                     <DEAD TEMP29>
318                     <GETS 'BIND = TEMP29 (TYPE LBIND)>
319                     <FRAME '\1aMAKE-TRANS>
320                     <PUSH NOD4>
321                     <PUSH 0>
322                     <LESS? ATYP10 3 - PHRASE90 (TYPE FIX)>
323                     <SET TEMP71 2 (TYPE FIX)>
324                     <JUMP + PHRASE91>
325 PHRASE90
326                     <SET TEMP71 0 (TYPE FIX)>
327 PHRASE91
328                     <PUSH TEMP71>
329                     <DEAD TEMP71>
330                     <VEQUAL? ATYP10 1 - PHRASE93 (TYPE FIX)>
331                     <RESTL K7 1 = TEMP71 (TYPE LIST)>
332                     <NTHL TEMP71 1 = TEMP71 (TYPE NODE)>
333                     <NTHUV TEMP71 4 = TEMP71 (TYPE FIX)>
334                     <JUMP + PHRASE98>
335 PHRASE93
336                     <VEQUAL? ATYP10 2 - PHRASE96 (TYPE FIX)>
337                     <RESTL K7 1 = TEMP31 (TYPE LIST)>
338                     <NTHL TEMP31 1 = TEMP31 (TYPE NODE)>
339                     <NTHUV TEMP31 4 = TEMP31>
340                     <CHTYPE TEMP31 <TYPE-CODE FIX> = TEMP71>
341                     <DEAD TEMP31>
342                     <SUB 0 TEMP71 = TEMP71 (TYPE FIX)>
343                     <JUMP + PHRASE98>
344 PHRASE96
345                     <SET TEMP71 0 (TYPE FIX)>
346 PHRASE98
347                     <PUSH TEMP71>
348                     <DEAD TEMP71>
349                     <GRTR? ATYP10 2 - PHRASE100 (TYPE FIX)>
350                     <VEQUAL? ATYP10 3 - PHRASE102 (TYPE FIX)>
351                     <SET TEMP71 2 (TYPE FIX)>
352                     <JUMP + PHRASE104>
353 PHRASE102
354                     <SET TEMP71 4 (TYPE FIX)>
355                     <JUMP + PHRASE104>
356 PHRASE100
357                     <SET TEMP71 0 (TYPE FIX)>
358 PHRASE104
359                     <PUSH TEMP71>
360                     <DEAD TEMP71>
361                     <GRTR? ATYP10 2 - PHRASE106 (TYPE FIX)>
362                     <RESTL K7 1 = TEMP71 (TYPE LIST)>
363                     <NTHL TEMP71 1 = TEMP71 (TYPE NODE)>
364                     <NTHUV TEMP71 4 = TEMP71 (TYPE FIX)>
365                     <JUMP + PHRASE107>
366 PHRASE106
367                     <SET TEMP71 1 (TYPE FIX)>
368 PHRASE107
369                     <PUSH TEMP71>
370                     <DEAD TEMP71>
371                     <PUSH 0>
372                     <PUSH 0>
373                     <CALL '\1aMAKE-TRANS 8 = TEMP71>
374                     <BBIND 'TRANSFORM 'TRANS 'FIX TEMP71>
375                     <DEAD TEMP71>
376                     <FRAME '\1aGEN>
377                     <PUSH TEMP30>
378                     <DEAD TEMP30>
379                     <PUSH 'DONT-CARE>
380                     <CALL '\1aGEN 2 = REG6>
381                     <SET DONE19 'T (TYPE ATOM)>
382                     <NTHR 'TRANSFORM 2 = TEMP71 (RECORD-TYPE ATOM) (TYPE LBIND)>
383                     <NTHR TEMP71 1 = TEMP31 (RECORD-TYPE LBIND)>
384                     <DEAD TEMP71>
385                     <NTHUV TEMP31 3 = TEMP31 (TYPE UVECTOR)>
386                     <LOOP>
387 MAP111
388                     <INTGO>
389                     <EMPUU? TEMP31 + MAPAP114>
390                     <NTHUU TEMP31 1 = TEMP30>
391                     <VEQUAL? TEMP30 0 + PHRASE125 (TYPE FIX)>
392                     <DEAD TEMP30>
393                     <FRAME '\1aMOVE-ARG>
394                     <PUSH REG6>
395                     <DEAD REG6>
396                     <PUSH WHERE5>
397                     <DEAD WHERE5>
398                     <CALL '\1aMOVE-ARG 2 = TEMP58>
399                     <JUMP + RETURN2>
400 PHRASE125
401                     <RESTUU TEMP31 1 = TEMP31 (TYPE UVECTOR)>
402                     <JUMP + MAP111>
403 MAPAP114
404                     <UNBIND TEMP29>
405                     <DEAD TEMP29>
406                     <ADJ -9>
407 PHRASE85
408                     <VEQUAL? DONE19 0 - PHRASE156>
409                     <DEAD DONE19>
410                     <NTHL K7 1 = TEMP30 (TYPE NODE)>
411                     <NTHUV TEMP30 1 = TEMP29 (TYPE FIX)>
412                     <VEQUAL? TEMP29 68 - PHRASE130 (TYPE FIX)>
413                     <DEAD TEMP29>
414                     <FRAME '\1aGEN>
415                     <NTHUV TEMP30 5 = TEMP29 (TYPE LIST)>
416                     <DEAD TEMP30>
417                     <NTHL TEMP29 1 = TEMP30 (TYPE NODE)>
418                     <DEAD TEMP29>
419                     <PUSH TEMP30>
420                     <FRAME '\1aGEN-TEMP>
421                     <PUSH %<>>
422                     <CALL '\1aGEN-TEMP 1 = STACK>
423                     <CALL '\1aGEN 2 = TEMP31>
424                     <FRAME '\1aSEGINS>
425                     <PUSH ATYP10>
426                     <PUSH 'T>
427                     <PUSH TEMP30>
428                     <DEAD TEMP30>
429                     <EQUAL? WHERE5 'DONT-CARE - PHRASE135>
430                     <FRAME '\1aGEN-TEMP>
431                     <PUSH %<>>
432                     <CALL '\1aGEN-TEMP 1 = WHERE5>
433                     <SET REG6 WHERE5>
434                     <JUMP + PHRASE142>
435 PHRASE135
436                     <TYPE? WHERE5 <TYPE-CODE TEMP> - BOOL138>
437                     <NTHUV WHERE5 2 = TEMP29 (TYPE FIX)>
438                     <GRTR? TEMP29 0 - PHRASE137 (TYPE FIX)>
439                     <DEAD TEMP29>
440 BOOL138
441                     <FRAME '\1aGEN-TEMP>
442                     <PUSH %<>>
443                     <CALL '\1aGEN-TEMP 1 = REG6>
444                     <JUMP + PHRASE142>
445 PHRASE137
446                     <SET REG6 WHERE5>
447 PHRASE142
448                     <PUSH REG6>
449                     <PUSH TEMP31>
450                     <DEAD TEMP31>
451                     <PUSH 1>
452                     <FRAME '\1aGET-DF>
453                     <NTHUV NOD4 4 = STACK (TYPE ATOM)>
454                     <CALL '\1aGET-DF 1 = STACK>
455                     <CALL '\1aSEGINS 7 = MODE12>
456                     <JUMP + PHRASE156>
457 PHRASE130
458                     <FRAME '\1aGEN>
459                     <PUSH TEMP30>
460                     <CALL '\1aGEN 1 = REG6>
461                     <EQUAL? WHERE5 'DONT-CARE - PHRASE147>
462                     <TYPE? REG6 <TYPE-CODE TEMP> - PHRASE147>
463                     <NTHUV REG6 2 = TEMP29 (TYPE FIX)>
464                     <LESS? TEMP29 2 - PHRASE147 (TYPE FIX)>
465                     <DEAD TEMP29>
466                     <SET WHERE5 REG6>
467                     <JUMP + PHRASE149>
468 PHRASE147
469                     <EQUAL? WHERE5 'DONT-CARE - PHRASE149>
470                     <FRAME '\1aGEN-TEMP>
471                     <PUSH %<>>
472                     <CALL '\1aGEN-TEMP 1 = WHERE5>
473 PHRASE149
474                     <TYPE? REG6 <TYPE-CODE TEMP> - PHRASE152>
475                     <RESTL K7 1 = TEMP29 (TYPE LIST)>
476                     <EMPL? TEMP29 + PHRASE152 (TYPE LIST)>
477                     <DEAD TEMP29>
478                     <FRAME '\1aINTERF-CHANGE>
479                     <PUSH REG6>
480                     <DEAD REG6>
481                     <RESTL K7 1 = TEMP29 (TYPE LIST)>
482                     <NTHL TEMP29 1 = STACK (TYPE NODE)>
483                     <DEAD TEMP29>
484                     <CALL '\1aINTERF-CHANGE 2 = REG6>
485 PHRASE152
486                     <NTHUV TEMP30 3 = TEMP29>
487                     <DEAD TEMP30>
488                     <EQUAL? TEMP29 'FLOAT - PHRASE156>
489                     <DEAD TEMP29>
490                     <SET MODE12 2 (TYPE FIX)>
491 PHRASE156
492                     <RESTL K7 1 = TEMP71 (TYPE LIST)>
493                     <DEAD K7>
494                     <LOOP>
495 MAP158
496                     <INTGO>
497                     <EMPL? TEMP71 + MAPAP161>
498                     <SET K7 TEMP71>
499                     <GETS 'BIND = TEMP31 (TYPE LBIND)>
500                     <BBIND 'TRANSFORM 'TRANS 'FIX>
501                     <NTHL K7 1 = TEMP30 (TYPE NODE)>
502                     <NTHUV TEMP30 1 = TEMP29 (TYPE FIX)>
503                     <VEQUAL? TEMP29 68 - PHRASE169 (TYPE FIX)>
504                     <DEAD TEMP29>
505                     <SET DONE19 'T (TYPE ATOM)>
506                     <FRAME '\1aGEN>
507                     <NTHUV TEMP30 5 = TEMP29 (TYPE LIST)>
508                     <DEAD TEMP30>
509                     <NTHL TEMP29 1 = TEMP30 (TYPE NODE)>
510                     <DEAD TEMP29>
511                     <PUSH TEMP30>
512                     <CALL '\1aGEN 1 = NXT167>
513                     <JUMP + PHRASE172>
514 PHRASE169
515                     <SET DONE19 %<> (TYPE FALSE)>
516                     <FRAME '\1aMAKE-TRANS>
517                     <PUSH NOD4>
518                     <VEQUAL? NEGF20 0 + PHRASE175>
519                     <GRTR? ATYP10 2 - PHRASE175 (TYPE FIX)>
520                     <SET TEMP29 2 (TYPE FIX)>
521                     <JUMP + PHRASE177>
522 PHRASE175
523                     <SET TEMP29 1 (TYPE FIX)>
524 PHRASE177
525                     <PUSH TEMP29>
526                     <DEAD TEMP29>
527                     <PUSH 0>
528                     <PUSH 0>
529                     <PUSH 0>
530                     <PUSH 0>
531                     <PUSH 0>
532                     <PUSH 0>
533                     <CALL '\1aMAKE-TRANS 8 = TEMP29>
534                     <NTHR 'TRANSFORM 2 = TEMP58 (RECORD-TYPE ATOM) (TYPE LBIND)>
535                     <PUTR TEMP58 1 TEMP29 (RECORD-TYPE LBIND)>
536                     <DEAD TEMP58 TEMP29>
537                     <FRAME '\1aGEN>
538                     <PUSH TEMP30>
539                     <PUSH 'DONT-CARE>
540                     <CALL '\1aGEN 2 = NXT167>
541 PHRASE172
542                     <RESTL K7 1 = TEMP29 (TYPE LIST)>
543                     <DEAD K7>
544                     <EMPL? TEMP29 - TAG184 (TYPE LIST)>
545                     <DEAD TEMP29>
546                     <SET K7 'T (TYPE ATOM)>
547                     <JUMP + TAG185>
548 TAG184
549                     <SET K7 %<> (TYPE FALSE)>
550 TAG185
551                     <VEQUAL? DONE19 0 + PHRASE187>
552                     <DEAD DONE19>
553                     <TYPE? NXT167 <TYPE-CODE TEMP> - BOOL190>
554                     <NTHUV NXT167 2 = TEMP29 (TYPE FIX)>
555                     <GRTR? TEMP29 1 - PHRASE189 (TYPE FIX)>
556                     <DEAD TEMP29>
557 BOOL190
558                     <FRAME '\1aMOVE-ARG>
559                     <PUSH NXT167>
560                     <DEAD NXT167>
561                     <FRAME '\1aGEN-TEMP>
562                     <PUSH %<>>
563                     <CALL '\1aGEN-TEMP 1 = STACK>
564                     <CALL '\1aMOVE-ARG 2 = NXT167>
565 PHRASE189
566                     <FRAME '\1aSEGINS>
567                     <PUSH ATYP10>
568                     <PUSH %<>>
569                     <PUSH TEMP30>
570                     <DEAD TEMP30>
571                     <PUSH REG6>
572                     <PUSH NXT167>
573                     <PUSH MODE12>
574                     <DEAD MODE12>
575                     <PUSH 0>
576                     <CALL '\1aSEGINS 7 = MODE12>
577                     <FRAME '\1aFREE-TEMP>
578                     <PUSH NXT167>
579                     <DEAD NXT167>
580                     <CALL '\1aFREE-TEMP 1>
581                     <JUMP + PHRASE197>
582 PHRASE187
583                     <NTHR 'TRANSFORM 2 = TEMP29 (RECORD-TYPE ATOM) (TYPE LBIND)>
584                     <NTHR TEMP29 1 = TEMP29 (RECORD-TYPE LBIND)>
585                     <TYPE? TEMP29 <TYPE-CODE UNBOUND> + TAG208>
586                     <DEAD TEMP29>
587                     <NTHR 'TRANSFORM 2 = TEMP29 (RECORD-TYPE ATOM) (TYPE LBIND)>
588                     <NTHR TEMP29 1 = TEMP29 (RECORD-TYPE LBIND)>
589                     <NTHUV TEMP29 3 = TEMP29 (TYPE UVECTOR)>
590                     <NTHUU TEMP29 1 = TEMP29 (TYPE FIX)>
591                     <VEQUAL? TEMP29 0 + TAG208 (TYPE FIX)>
592                     <DEAD TEMP29>
593                     <VEQUAL? NEGF20 0 - TAG207>
594                     <DEAD NEGF20>
595                     <SET NEGF20 'T (TYPE ATOM)>
596                     <JUMP + TAG208>
597 TAG207
598                     <SET NEGF20 %<> (TYPE FALSE)>
599 TAG208
600                     <VEQUAL? MODE12 2 - PHRASE210 (TYPE FIX)>
601                     <FRAME '\1aISTYPE?>
602                     <NTHUV TEMP30 3 = STACK>
603                     <CALL '\1aISTYPE? 1 = TEMP58>
604                     <VEQUAL? TEMP58 'FIX - PHRASE216>
605                     <DEAD TEMP58>
606                     <FRAME '\1aGEN-FLOAT>
607                     <PUSH NXT167>
608                     <FRAME '\1aPROT>
609                     <PUSH NXT167>
610                     <DEAD NXT167>
611                     <PUSH 'FLOAT>
612                     <CALL '\1aPROT 2 = STACK>
613                     <CALL '\1aGEN-FLOAT 2 = NXT167>
614                     <JUMP + PHRASE216>
615 PHRASE210
616                     <FRAME '\1aISTYPE?>
617                     <NTHUV TEMP30 3 = STACK>
618                     <CALL '\1aISTYPE? 1 = TEMP58>
619                     <VEQUAL? TEMP58 'FLOAT - PHRASE216>
620                     <DEAD TEMP58>
621                     <FRAME '\1aGEN-FLOAT>
622                     <PUSH REG6>
623                     <FRAME '\1aPROT>
624                     <PUSH REG6>
625                     <DEAD REG6>
626                     <PUSH 'FLOAT>
627                     <CALL '\1aPROT 2 = STACK>
628                     <CALL '\1aGEN-FLOAT 2 = REG6>
629                     <SET MODE12 2 (TYPE FIX)>
630 PHRASE216
631                     <VEQUAL? ATYP10 3 - PHRASE221 (TYPE FIX)>
632                     <VEQUAL? MODE12 1 - PHRASE221 (TYPE FIX)>
633                     <NTHUV TEMP30 1 = TEMP58 (TYPE FIX)>
634                     <VEQUAL? TEMP58 2 - PHRASE221 (TYPE FIX)>
635                     <DEAD TEMP58>
636                     <FRAME '\1aPOPWR2>
637                     <NTHUV TEMP30 4 = STACK (TYPE FIX)>
638                     <DEAD TEMP30>
639                     <CALL '\1aPOPWR2 1 = TEMP29>
640                     <TYPE? TEMP29 <TYPE-CODE FALSE> + PHRASE221>
641                     <FRAME '\1aSHIFT-INS>
642                     <PUSH REG6>
643                     <DEAD REG6>
644                     <PUSH TEMP29>
645                     <DEAD TEMP29>
646                     <PUSH ATYP10>
647                     <PUSH K7>
648                     <DEAD K7>
649                     <PUSH WHERE5>
650                     <CALL '\1aSHIFT-INS 5 = REG6>
651                     <JUMP + PHRASE227>
652 PHRASE221
653                     <FRAME '\1aARITH-INS>
654                     <VEQUAL? NEGF20 0 + PHRASE230>
655                     <LESS? ATYP10 3 - PHRASE230 (TYPE FIX)>
656                     <SET NEGF20 %<> (TYPE FALSE)>
657                     <SUB 3 ATYP10 = TEMP58 (TYPE FIX)>
658                     <JUMP + PHRASE232>
659 PHRASE230
660                     <SET TEMP58 ATYP10>
661 PHRASE232
662                     <PUSH TEMP58>
663                     <DEAD TEMP58>
664                     <PUSH REG6>
665                     <DEAD REG6>
666                     <PUSH NXT167>
667                     <PUSH MODE12>
668                     <PUSH K7>
669                     <DEAD K7>
670                     <PUSH WHERE5>
671                     <CALL '\1aARITH-INS 6 = REG6>
672 PHRASE227
673                     <FRAME '\1aFREE-TEMP>
674                     <PUSH NXT167>
675                     <DEAD NXT167>
676                     <CALL '\1aFREE-TEMP 1>
677 PHRASE197
678                     <UNBIND TEMP31>
679                     <ADJ -9>
680                     <UNBIND TEMP31>
681                     <DEAD TEMP31>
682                     <RESTL TEMP71 1 = TEMP71 (TYPE LIST)>
683                     <JUMP + MAP158>
684 MAPAP161
685                     <VEQUAL? NEGF20 0 + PHRASE243>
686                     <DEAD NEGF20>
687                     <GEN-ASSIGNED? 'TRANSFORM - PHRASE237>
688                     <GEN-LVAL 'TRANSFORM = TEMP31>
689                     <NTHUV TEMP31 1 = TEMP29 (TYPE NODE)>
690                     <NTHUV NOD4 2 = TEMP58>
691                     <DEAD NOD4>
692                     <EQUAL? TEMP29 TEMP58 - PHRASE237>
693                     <DEAD TEMP29 TEMP58>
694                     <NTHUV TEMP31 2 = TEMP58 (TYPE UVECTOR)>
695                     <NTHUU TEMP58 1 = TEMP58 (TYPE FIX)>
696                     <VEQUAL? TEMP58 0 + PHRASE237 (TYPE FIX)>
697                     <DEAD TEMP58>
698                     <NTHUV TEMP31 3 = TEMP58 (TYPE UVECTOR)>
699                     <DEAD TEMP31>
700                     <PUTUU TEMP58 1 1>
701                     <DEAD TEMP58>
702                     <JUMP + PHRASE243>
703 PHRASE237
704                     <FRAME '\1aGEN-NEGATE>
705                     <PUSH REG6>
706                     <CALL '\1aGEN-NEGATE 1>
707 PHRASE243
708                     <FRAME '\1aDELAY-KILL>
709                     <NTHR 'NO-KILL 2 = TEMP58 (RECORD-TYPE ATOM) (TYPE LBIND)>
710                     <NTHR TEMP58 1 = STACK (RECORD-TYPE LBIND)>
711                     <DEAD TEMP58>
712                     <PUSH ONO21>
713                     <DEAD ONO21>
714                     <CALL '\1aDELAY-KILL 2>
715                     <FRAME '\1aMOVE-ARG>
716                     <PUSH REG6>
717                     <DEAD REG6>
718                     <PUSH WHERE5>
719                     <DEAD WHERE5>
720                     <CALL '\1aMOVE-ARG 2 = TEMP58>
721 RETURN2
722                     <UNBIND TEMP3>
723                     <DEAD TEMP3>
724                     <ADJ -9>
725                     <RETURN TEMP58>
726                     <DEAD TEMP58>
727                     <END \1aARITH-GEN>
728
729 #WORD *32425632353*
730                     <GFCN \1aPROT ("VALUE" ANY ANY ANY) DAT4 TYP5>
731                     <TEMP TEMP12>
732                     <INTGO>
733                     <TYPE? DAT4 <TYPE-CODE TEMP> - PHRASE7>
734                     <FRAME '\1aDEALLOCATE-TEMP>
735                     <PUSH DAT4>
736                     <CALL '\1aDEALLOCATE-TEMP 1>
737 PHRASE7
738                     <TYPE? DAT4 <TYPE-CODE TEMP> - PHRASE10>
739                     <NTHUV DAT4 2 = TEMP12 (TYPE FIX)>
740                     <GRTR? TEMP12 0 + PHRASE10 (TYPE FIX)>
741                     <DEAD TEMP12>
742                     <FRAME '\1aUSE-TEMP>
743                     <PUSH DAT4>
744                     <PUSH TYP5>
745                     <DEAD TYP5>
746                     <CALL '\1aUSE-TEMP 2>
747                     <RETURN DAT4>
748                     <DEAD DAT4>
749 PHRASE10
750                     <TYPE? DAT4 <TYPE-CODE TEMP> - PHRASE16>
751                     <FRAME '\1aGEN-TEMP>
752                     <PUSH TYP5>
753                     <DEAD TYP5>
754                     <CALL '\1aGEN-TEMP 1 = TEMP12>
755                     <RETURN TEMP12>
756                     <DEAD TEMP12>
757 PHRASE16
758                     <RETURN DAT4>
759                     <DEAD DAT4>
760                     <END \1aPROT>
761
762 #WORD *32266431174*
763                     <GFCN \1aSHIFT-INS ("VALUE" ANY ANY FIX FIX ANY ANY) REG4 SHFT5 ATYP6 LAST7 W8>
764                     <TEMP TEMP12:FIX>
765                     <INTGO>
766                     <FRAME '\1aGEN-SHIFT>
767                     <PUSH REG4>
768                     <VEQUAL? ATYP6 3 - PHRASE11 (TYPE FIX)>
769                     <DEAD ATYP6>
770                     <SET TEMP12 SHFT5>
771                     <DEAD SHFT5>
772                     <JUMP + PHRASE13>
773 PHRASE11
774                     <SET TEMP12 SHFT5>
775                     <DEAD SHFT5>
776                     <SUB 0 TEMP12 = TEMP12 (TYPE FIX)>
777 PHRASE13
778                     <PUSH TEMP12>
779                     <DEAD TEMP12>
780                     <TYPE? LAST7 <TYPE-CODE FALSE> + PHRASE15>
781                     <DEAD LAST7>
782                     <EQUAL? REG4 W8 + PHRASE15>
783                     <FRAME '\1aFREE-TEMP>
784                     <PUSH REG4>
785                     <DEAD REG4>
786                     <PUSH %<>>
787                     <CALL '\1aFREE-TEMP 2>
788                     <EQUAL? W8 'DONT-CARE - PHRASE19>
789                     <FRAME '\1aGEN-TEMP>
790                     <PUSH 'FIX>
791                     <CALL '\1aGEN-TEMP 1 = REG4>
792                     <JUMP + PHRASE25>
793 PHRASE19
794                     <TYPE? W8 <TYPE-CODE TEMP> - PHRASE21>
795                     <FRAME '\1aUSE-TEMP>
796                     <PUSH W8>
797                     <PUSH 'FIX>
798                     <CALL '\1aUSE-TEMP 2>
799                     <SET REG4 W8>
800                     <DEAD W8>
801                     <JUMP + PHRASE25>
802 PHRASE21
803                     <SET REG4 W8>
804                     <DEAD W8>
805                     <JUMP + PHRASE25>
806 PHRASE15
807                     <TYPE? REG4 <TYPE-CODE TEMP> + PHRASE25>
808                     <FRAME '\1aGEN-TEMP>
809                     <PUSH %<>>
810                     <CALL '\1aGEN-TEMP 1 = REG4>
811 PHRASE25
812                     <PUSH REG4>
813                     <CALL '\1aGEN-SHIFT 3>
814                     <RETURN REG4>
815                     <DEAD REG4>
816                     <END \1aSHIFT-INS>
817
818 #WORD *27417235355*
819                     <GFCN \1aSEGINS ("VALUE" FIX FIX ANY NODE ANY ANY FIX ANY) ATYP4 FD5 N6 REG7 REG28 MD9 DEFLT10>
820                     <TEMP STYP14 TG15 LOOP16 TEMP23 TYP13:FIX SL12:FIX>
821                     <INTGO>
822                     <NTHUV N6 3 = STYP14>
823                     <FRAME '\1aMAKE-TAG>
824                     <CALL '\1aMAKE-TAG 0 = TG15>
825                     <FRAME '\1aMAKE-TAG>
826                     <CALL '\1aMAKE-TAG 0 = LOOP16>
827                     <FRAME '\1aGET-ELE-TYPE>
828                     <PUSH STYP14>
829                     <PUSH 'ALL>
830                     <CALL '\1aGET-ELE-TYPE 2 = TEMP23>
831                     <EQUAL? TEMP23 'FIX - PHRASE21>
832                     <DEAD TEMP23>
833                     <SET TYP13 1 (TYPE FIX)>
834                     <JUMP + PHRASE24>
835 PHRASE21
836                     <SET TYP13 2 (TYPE FIX)>
837 PHRASE24
838                     <FRAME '\1aSTRUCTYP>
839                     <PUSH STYP14>
840                     <DEAD STYP14>
841                     <CALL '\1aSTRUCTYP 1 = STYP14>
842                     <FRAME '\1aMINL>
843                     <NTHUV N6 3 = STACK>
844                     <DEAD N6>
845                     <CALL '\1aMINL 1 = SL12>
846                     <TYPE? FD5 <TYPE-CODE FALSE> + PHRASE28>
847                     <DEAD FD5>
848                     <SET MD9 TYP13>
849                     <VEQUAL? TYP13 2 - BOOL29 (TYPE FIX)>
850                     <EQUAL? DEFLT10 1 - BOOL29>
851                     <SET DEFLT10 1.0 (TYPE FLOAT)>
852 BOOL29
853                     <LESS? SL12 1 - PHRASE31 (TYPE FIX)>
854                     <FRAME '\1aSET-TEMP>
855                     <PUSH REG7>
856                     <PUSH DEFLT10>
857                     <DEAD DEFLT10>
858                     <VEQUAL? TYP13 1 - PHRASE36 (TYPE FIX)>
859                     <SET TEMP23 'FIX (TYPE ATOM)>
860                     <JUMP + PHRASE39>
861 PHRASE36
862                     <SET TEMP23 'FLOAT (TYPE ATOM)>
863 PHRASE39
864                     <CONS TEMP23 () = TEMP23>
865                     <CONS '`TYPE TEMP23 = STACK>
866                     <DEAD TEMP23>
867                     <CALL '\1aSET-TEMP 3>
868                     <FRAME '\1aEMPTY-JUMP>
869                     <PUSH STYP14>
870                     <PUSH REG28>
871                     <PUSH TG15>
872                     <CALL '\1aEMPTY-JUMP 3>
873 PHRASE31
874                     <VEQUAL? ATYP4 2 + BOOL43 (TYPE FIX)>
875                     <VEQUAL? ATYP4 4 - PHRASE42 (TYPE FIX)>
876 BOOL43
877                     <FRAME '\1aGETEL>
878                     <PUSH REG7>
879                     <DEAD REG7>
880                     <PUSH REG28>
881                     <PUSH STYP14>
882                     <CALL '\1aGETEL 3 = REG7>
883                     <FRAME '\1aADVANCE>
884                     <PUSH STYP14>
885                     <PUSH REG28>
886                     <CALL '\1aADVANCE 2>
887                     <SUB SL12 1 = SL12 (TYPE FIX)>
888                     <JUMP + PHRASE47>
889 PHRASE42
890                     <SET SL12 1 (TYPE FIX)>
891                     <JUMP + PHRASE47>
892 PHRASE28
893                     <VEQUAL? MD9 1 - PHRASE47 (TYPE FIX)>
894                     <VEQUAL? TYP13 2 - PHRASE47 (TYPE FIX)>
895                     <FRAME '\1aGEN-FLOAT>
896                     <PUSH REG7>
897                     <FRAME '\1aPROT>
898                     <PUSH REG7>
899                     <DEAD REG7>
900                     <PUSH 'FLOAT>
901                     <CALL '\1aPROT 2 = STACK>
902                     <CALL '\1aGEN-FLOAT 2 = REG7>
903 PHRASE47
904                     <LESS? SL12 1 - PHRASE54 (TYPE FIX)>
905                     <DEAD SL12>
906                     <FRAME '\1aEMPTY-JUMP>
907                     <PUSH STYP14>
908                     <PUSH REG28>
909                     <PUSH TG15>
910                     <CALL '\1aEMPTY-JUMP 3>
911 PHRASE54
912                     <FRAME '\1aLABEL-TAG>
913                     <PUSH LOOP16>
914                     <CALL '\1aLABEL-TAG 1>
915                     <FRAME '\1aEMITSEG>
916                     <PUSH REG7>
917                     <DEAD REG7>
918                     <PUSH REG28>
919                     <PUSH STYP14>
920                     <PUSH ATYP4>
921                     <DEAD ATYP4>
922                     <PUSH TYP13>
923                     <DEAD TYP13>
924                     <PUSH MD9>
925                     <CALL '\1aEMITSEG 6>
926                     <FRAME '\1aADVANCE-AND-CHECK>
927                     <PUSH STYP14>
928                     <DEAD STYP14>
929                     <PUSH REG28>
930                     <DEAD REG28>
931                     <PUSH LOOP16>
932                     <DEAD LOOP16>
933                     <CALL '\1aADVANCE-AND-CHECK 3>
934                     <FRAME '\1aLABEL-TAG>
935                     <PUSH TG15>
936                     <DEAD TG15>
937                     <CALL '\1aLABEL-TAG 1>
938                     <RETURN MD9>
939                     <DEAD MD9>
940                     <END \1aSEGINS>
941
942 #WORD *6210303613*
943                     <GFCN \1aADVANCE ("VALUE" ATOM ATOM ANY) STYP4 SAC5>
944                     <TEMP AMT6>
945                     <INTGO>
946                     <VEQUAL? STYP4 'LIST - PHRASE12>
947                     <FRAME '\1aNTH-LIST>
948                     <PUSH SAC5>
949                     <PUSH 1>
950                     <PUSH SAC5>
951                     <DEAD SAC5>
952                     <CALL '\1aNTH-LIST 3 = AMT6>
953                     <RETURN AMT6>
954                     <DEAD AMT6>
955 PHRASE12
956                     <VEQUAL? STYP4 'UVECTOR - PHRASE14>
957                     <DEAD STYP4>
958                     <FRAME '\1aNTH-UVECTOR>
959                     <PUSH SAC5>
960                     <PUSH SAC5>
961                     <DEAD SAC5>
962                     <PUSH 1>
963                     <CALL '\1aNTH-UVECTOR 3 = AMT6>
964                     <RETURN AMT6>
965                     <DEAD AMT6>
966 PHRASE14
967                     <FRAME '\1aNTH-VECTOR>
968                     <PUSH SAC5>
969                     <PUSH SAC5>
970                     <DEAD SAC5>
971                     <PUSH 1>
972                     <CALL '\1aNTH-VECTOR 3 = AMT6>
973                     <RETURN AMT6>
974                     <DEAD AMT6>
975                     <END \1aADVANCE>
976
977 #WORD *15174264367*
978                     <GFCN \1aADVANCE-AND-CHECK ("VALUE" ATOM ATOM ANY ANY) STYP4 SAC5 TG6>
979                     <TEMP TEMP11:ATOM>
980                     <INTGO>
981                     <VEQUAL? STYP4 'LIST - PHRASE8>
982                     <FRAME '\1aREST-LIST>
983                     <PUSH SAC5>
984                     <PUSH SAC5>
985                     <PUSH 1>
986                     <CALL '\1aREST-LIST 3>
987                     <FRAME '\1aEMPTY-LIST>
988                     <PUSH SAC5>
989                     <DEAD SAC5>
990                     <PUSH TG6>
991                     <DEAD TG6>
992                     <PUSH %<>>
993                     <CALL '\1aEMPTY-LIST 3 = TEMP11>
994                     <RETURN TEMP11>
995                     <DEAD TEMP11>
996 PHRASE8
997                     <VEQUAL? STYP4 'VECTOR - PHRASE12>
998                     <DEAD STYP4>
999                     <FRAME '\1aREST-VECTOR>
1000                     <PUSH SAC5>
1001                     <PUSH SAC5>
1002                     <PUSH 1>
1003                     <CALL '\1aREST-VECTOR 3>
1004                     <FRAME '\1aEMPTY-VECTOR>
1005                     <PUSH SAC5>
1006                     <DEAD SAC5>
1007                     <PUSH TG6>
1008                     <DEAD TG6>
1009                     <PUSH %<>>
1010                     <CALL '\1aEMPTY-VECTOR 3 = TEMP11>
1011                     <RETURN TEMP11>
1012                     <DEAD TEMP11>
1013 PHRASE12
1014                     <FRAME '\1aREST-UVECTOR>
1015                     <PUSH SAC5>
1016                     <PUSH SAC5>
1017                     <PUSH 1>
1018                     <CALL '\1aREST-UVECTOR 3>
1019                     <FRAME '\1aEMPTY-UVECTOR>
1020                     <PUSH SAC5>
1021                     <DEAD SAC5>
1022                     <PUSH TG6>
1023                     <DEAD TG6>
1024                     <PUSH %<>>
1025                     <CALL '\1aEMPTY-UVECTOR 3 = TEMP11>
1026                     <RETURN TEMP11>
1027                     <DEAD TEMP11>
1028                     <END \1aADVANCE-AND-CHECK>
1029
1030 #WORD *27301002560*
1031                     <GFCN \1aEMPTY-JUMP ("VALUE" ATOM ATOM ANY ATOM) STYP4 SAC5 TG6>
1032                     <TEMP TEMP10:ATOM>
1033                     <INTGO>
1034                     <VEQUAL? STYP4 'LIST - PHRASE8>
1035                     <FRAME '\1aEMPTY-LIST>
1036                     <PUSH SAC5>
1037                     <DEAD SAC5>
1038                     <PUSH TG6>
1039                     <DEAD TG6>
1040                     <PUSH 'T>
1041                     <CALL '\1aEMPTY-LIST 3 = TEMP10>
1042                     <RETURN TEMP10>
1043                     <DEAD TEMP10>
1044 PHRASE8
1045                     <VEQUAL? STYP4 'VECTOR - PHRASE11>
1046                     <DEAD STYP4>
1047                     <FRAME '\1aEMPTY-VECTOR>
1048                     <PUSH SAC5>
1049                     <DEAD SAC5>
1050                     <PUSH TG6>
1051                     <DEAD TG6>
1052                     <PUSH 'T>
1053                     <CALL '\1aEMPTY-VECTOR 3 = TEMP10>
1054                     <RETURN TEMP10>
1055                     <DEAD TEMP10>
1056 PHRASE11
1057                     <FRAME '\1aEMPTY-UVECTOR>
1058                     <PUSH SAC5>
1059                     <DEAD SAC5>
1060                     <PUSH TG6>
1061                     <DEAD TG6>
1062                     <PUSH 'T>
1063                     <CALL '\1aEMPTY-UVECTOR 3 = TEMP10>
1064                     <RETURN TEMP10>
1065                     <DEAD TEMP10>
1066                     <END \1aEMPTY-JUMP>
1067
1068 #WORD *20304657773*
1069                     <GFCN \1aEMITSEG ("VALUE" <OR TEMP ANY> ANY ANY ANY FIX FIX FIX) RAC4 SAC5 STYP6 ATYP7 TYP8 MD9>
1070                     <TEMP TMP11>
1071                     <INTGO>
1072                     <FRAME '\1aGEN-TEMP>
1073                     <CALL '\1aGEN-TEMP 0 = TMP11>
1074                     <VEQUAL? MD9 2 - PHRASE14 (TYPE FIX)>
1075                     <VEQUAL? TYP8 1 - PHRASE14 (TYPE FIX)>
1076                     <DEAD TYP8>
1077                     <FRAME '\1aGETEL>
1078                     <PUSH TMP11>
1079                     <PUSH SAC5>
1080                     <DEAD SAC5>
1081                     <PUSH STYP6>
1082                     <DEAD STYP6>
1083                     <CALL '\1aGETEL 3>
1084                     <FRAME '\1aGEN-FLOAT>
1085                     <PUSH TMP11>
1086                     <PUSH TMP11>
1087                     <CALL '\1aGEN-FLOAT 2>
1088                     <FRAME '\1aGENINS>
1089                     <PUSH ATYP7>
1090                     <DEAD ATYP7>
1091                     <PUSH MD9>
1092                     <DEAD MD9>
1093                     <PUSH RAC4>
1094                     <DEAD RAC4>
1095                     <PUSH TMP11>
1096                     <CALL '\1aGENINS 4>
1097                     <JUMP + PHRASE21>
1098 PHRASE14
1099                     <FRAME '\1aGETEL>
1100                     <PUSH TMP11>
1101                     <PUSH SAC5>
1102                     <DEAD SAC5>
1103                     <PUSH STYP6>
1104                     <DEAD STYP6>
1105                     <CALL '\1aGETEL 3>
1106                     <FRAME '\1aGENINS>
1107                     <PUSH ATYP7>
1108                     <DEAD ATYP7>
1109                     <PUSH MD9>
1110                     <DEAD MD9>
1111                     <PUSH RAC4>
1112                     <DEAD RAC4>
1113                     <PUSH TMP11>
1114                     <CALL '\1aGENINS 4>
1115 PHRASE21
1116                     <FRAME '\1aFREE-TEMP>
1117                     <PUSH TMP11>
1118                     <DEAD TMP11>
1119                     <CALL '\1aFREE-TEMP 1 = TMP11>
1120                     <RETURN TMP11>
1121                     <DEAD TMP11>
1122                     <END \1aEMITSEG>
1123
1124 #WORD *27760057172*
1125                     <GFCN \1aGENINS ("VALUE" <OR ATOM <LIST ANY>> FIX FIX ANY ANY) ATYP4 MD5 RAC6 ADD7>
1126                     <TEMP TG9 TEMP14>
1127                     <INTGO>
1128                     <FRAME '\1aMAKE-TAG>
1129                     <CALL '\1aMAKE-TAG 0 = TG9>
1130                     <GRTR? ATYP4 4 - PHRASE12 (TYPE FIX)>
1131                     <FRAME '\1aIEMIT>
1132                     <SUB ATYP4 4 = TEMP14 (TYPE FIX)>
1133                     <DEAD ATYP4>
1134                     <NTHUV [`GRTR? `LESS?] TEMP14 = STACK (TYPE ATOM)>
1135                     <DEAD TEMP14>
1136                     <PUSH RAC6>
1137                     <PUSH ADD7>
1138                     <PUSH '+>
1139                     <PUSH TG9>
1140                     <CALL '\1aIEMIT 5>
1141                     <FRAME '\1aIEMIT>
1142                     <PUSH '`SET>
1143                     <PUSH RAC6>
1144                     <DEAD RAC6>
1145                     <PUSH ADD7>
1146                     <DEAD ADD7>
1147                     <CALL '\1aIEMIT 3>
1148                     <FRAME '\1aLABEL-TAG>
1149                     <PUSH TG9>
1150                     <DEAD TG9>
1151                     <CALL '\1aLABEL-TAG 1 = TEMP14>
1152                     <RETURN TEMP14>
1153                     <DEAD TEMP14>
1154 PHRASE12
1155                     <GVAL 'INS1 = TG9>
1156                     <NTHUV TG9 MD5 = TG9 (TYPE VECTOR)>
1157                     <NTHUV TG9 ATYP4 = TG9>
1158                     <DEAD ATYP4>
1159                     <FRAME '\1aIEMIT>
1160                     <PUSH TG9>
1161                     <DEAD TG9>
1162                     <PUSH RAC6>
1163                     <PUSH ADD7>
1164                     <DEAD ADD7>
1165                     <PUSH '=>
1166                     <PUSH RAC6>
1167                     <DEAD RAC6>
1168                     <VEQUAL? MD5 1 - PHRASE21 (TYPE FIX)>
1169                     <DEAD MD5>
1170                     <SET TG9 'FIX (TYPE ATOM)>
1171                     <JUMP + PHRASE24>
1172 PHRASE21
1173                     <SET TG9 'FLOAT (TYPE ATOM)>
1174 PHRASE24
1175                     <CONS TG9 () = TG9>
1176                     <CONS '`TYPE TG9 = STACK>
1177                     <DEAD TG9>
1178                     <CALL '\1aIEMIT 6 = TEMP14>
1179                     <RETURN TEMP14>
1180                     <DEAD TEMP14>
1181                     <END \1aGENINS>
1182
1183 #WORD *11403556045*
1184                     <GFCN \1aGETEL ("VALUE" ANY ANY ANY ANY) RAC4 SAC5 STYP6>
1185                     <TEMP>
1186                     <INTGO>
1187                     <EQUAL? RAC4 'DONT-CARE - PHRASE8>
1188                     <FRAME '\1aGEN-TEMP>
1189                     <CALL '\1aGEN-TEMP 0 = RAC4>
1190 PHRASE8
1191                     <EQUAL? STYP6 'LIST - PHRASE11>
1192                     <FRAME '\1aNTH-LIST>
1193                     <PUSH SAC5>
1194                     <DEAD SAC5>
1195                     <PUSH RAC4>
1196                     <PUSH 1>
1197                     <CALL '\1aNTH-LIST 3>
1198                     <RETURN RAC4>
1199                     <DEAD RAC4>
1200 PHRASE11
1201                     <EQUAL? STYP6 'VECTOR - PHRASE13>
1202                     <DEAD STYP6>
1203                     <FRAME '\1aNTH-VECTOR>
1204                     <PUSH SAC5>
1205                     <DEAD SAC5>
1206                     <PUSH RAC4>
1207                     <PUSH 1>
1208                     <CALL '\1aNTH-VECTOR 3>
1209                     <RETURN RAC4>
1210                     <DEAD RAC4>
1211 PHRASE13
1212                     <FRAME '\1aNTH-UVECTOR>
1213                     <PUSH SAC5>
1214                     <DEAD SAC5>
1215                     <PUSH RAC4>
1216                     <PUSH 1>
1217                     <CALL '\1aNTH-UVECTOR 3>
1218                     <RETURN RAC4>
1219                     <DEAD RAC4>
1220                     <END \1aGETEL>
1221
1222 <SETG INS1 [[`ADD `SUB `MUL `DIV] [`ADDF `SUBF `MULF `DIVF]]>
1223
1224 <GDECL (INS1) !<VECTOR [2 !<VECTOR [4 ANY]>]>>
1225
1226 " Do the actual arithmetic code generation here with all args set up."
1227
1228 #WORD *27255605043*
1229                     <GFCN \1aARITH-INS ("VALUE" ANY FIX ANY ANY FIX ANY ANY) ATYP4 REG5 REG26 MODE7 LAST8 W9>
1230                     <TEMP TEMP11>
1231                     <INTGO>
1232                     <GVAL 'INS1 = TEMP11>
1233                     <NTHUV TEMP11 MODE7 = TEMP11 (TYPE VECTOR)>
1234                     <NTHUV TEMP11 ATYP4 = TEMP11>
1235                     <DEAD ATYP4>
1236                     <FRAME '\1aIEMIT>
1237                     <PUSH TEMP11>
1238                     <DEAD TEMP11>
1239                     <PUSH REG5>
1240                     <PUSH REG26>
1241                     <DEAD REG26>
1242                     <PUSH '=>
1243                     <TYPE? LAST8 <TYPE-CODE FALSE> + PHRASE14>
1244                     <EQUAL? REG5 W9 + PHRASE14>
1245                     <FRAME '\1aFREE-TEMP>
1246                     <PUSH REG5>
1247                     <DEAD REG5>
1248                     <PUSH %<>>
1249                     <CALL '\1aFREE-TEMP 2>
1250                     <EQUAL? W9 'DONT-CARE - PHRASE18>
1251                     <FRAME '\1aGEN-TEMP>
1252                     <VEQUAL? MODE7 1 - PHRASE21 (TYPE FIX)>
1253                     <SET TEMP11 'FIX (TYPE ATOM)>
1254                     <JUMP + PHRASE24>
1255 PHRASE21
1256                     <SET TEMP11 'FLOAT (TYPE ATOM)>
1257 PHRASE24
1258                     <PUSH TEMP11>
1259                     <DEAD TEMP11>
1260                     <CALL '\1aGEN-TEMP 1 = REG5>
1261                     <JUMP + PHRASE49>
1262 PHRASE18
1263                     <TYPE? W9 <TYPE-CODE TEMP> - PHRASE25>
1264                     <FRAME '\1aUSE-TEMP>
1265                     <PUSH W9>
1266                     <VEQUAL? MODE7 1 - PHRASE28 (TYPE FIX)>
1267                     <SET TEMP11 'FIX (TYPE ATOM)>
1268                     <JUMP + PHRASE31>
1269 PHRASE28
1270                     <SET TEMP11 'FLOAT (TYPE ATOM)>
1271 PHRASE31
1272                     <PUSH TEMP11>
1273                     <DEAD TEMP11>
1274                     <CALL '\1aUSE-TEMP 2>
1275                     <SET REG5 W9>
1276                     <DEAD W9>
1277                     <JUMP + PHRASE49>
1278 PHRASE25
1279                     <SET REG5 W9>
1280                     <DEAD W9>
1281                     <JUMP + PHRASE49>
1282 PHRASE14
1283                     <TYPE? LAST8 <TYPE-CODE FALSE> + PHRASE33>
1284                     <DEAD LAST8>
1285                     <EQUAL? REG5 W9 + PHRASE49>
1286 PHRASE33
1287                     <TYPE? REG5 <TYPE-CODE TEMP> - PHRASE35>
1288                     <NTHUV REG5 2 = TEMP11 (TYPE FIX)>
1289                     <GRTR? TEMP11 1 - PHRASE49 (TYPE FIX)>
1290                     <DEAD TEMP11>
1291 PHRASE35
1292                     <TYPE? W9 <TYPE-CODE TEMP> - PHRASE39>
1293                     <NTHUV W9 2 = TEMP11 (TYPE FIX)>
1294                     <LESS? TEMP11 1 - PHRASE39 (TYPE FIX)>
1295                     <DEAD TEMP11>
1296                     <FRAME '\1aUSE-TEMP>
1297                     <PUSH W9>
1298                     <VEQUAL? MODE7 1 - PHRASE45 (TYPE FIX)>
1299                     <SET TEMP11 'FIX (TYPE ATOM)>
1300                     <JUMP + PHRASE48>
1301 PHRASE45
1302                     <SET TEMP11 'FLOAT (TYPE ATOM)>
1303 PHRASE48
1304                     <PUSH TEMP11>
1305                     <DEAD TEMP11>
1306                     <CALL '\1aUSE-TEMP 2>
1307                     <SET REG5 W9>
1308                     <DEAD W9>
1309                     <JUMP + PHRASE49>
1310 PHRASE39
1311                     <FRAME '\1aFREE-TEMP>
1312                     <PUSH REG5>
1313                     <DEAD REG5>
1314                     <CALL '\1aFREE-TEMP 1>
1315                     <FRAME '\1aGEN-TEMP>
1316                     <VEQUAL? MODE7 1 - PHRASE53 (TYPE FIX)>
1317                     <SET TEMP11 'FIX (TYPE ATOM)>
1318                     <JUMP + PHRASE56>
1319 PHRASE53
1320                     <SET TEMP11 'FLOAT (TYPE ATOM)>
1321 PHRASE56
1322                     <PUSH TEMP11>
1323                     <DEAD TEMP11>
1324                     <CALL '\1aGEN-TEMP 1 = REG5>
1325 PHRASE49
1326                     <PUSH REG5>
1327                     <VEQUAL? MODE7 2 - PHRASE58 (TYPE FIX)>
1328                     <DEAD MODE7>
1329                     <SET TEMP11 (`TYPE FLOAT) (TYPE LIST)>
1330                     <JUMP + PHRASE59>
1331 PHRASE58
1332                     <SET TEMP11 (`TYPE FIX) (TYPE LIST)>
1333 PHRASE59
1334                     <PUSH TEMP11>
1335                     <DEAD TEMP11>
1336                     <CALL '\1aIEMIT 6>
1337                     <RETURN REG5>
1338                     <DEAD REG5>
1339                     <END \1aARITH-INS>
1340
1341 #WORD *24460063375*
1342                     <GFCN \1aMIN-MAX ("VALUE" ANY NODE ANY) NOD4 WHERE5>
1343                     <TEMP TEMP17 MAX?6 K7 (MODE9:FIX 1) C12:FIX ONO14 TEMP3:LBIND TEMP28 TEM13:NODE REG110 NXT53>
1344                     <INTGO>
1345                     <NTHUV NOD4 4 = TEMP17>
1346                     <EQUAL? TEMP17 'MAX - TAG16>
1347                     <DEAD TEMP17>
1348                     <SET MAX?6 'T (TYPE ATOM)>
1349                     <JUMP + TAG18>
1350 TAG16
1351                     <SET MAX?6 %<> (TYPE FALSE)>
1352 TAG18
1353                     <NTHUV NOD4 5 = K7 (TYPE LIST)>
1354                     <VEQUAL? MAX?6 0 + BOOL20>
1355                     <SET TEMP17 5 (TYPE FIX)>
1356                     <JUMP + BOOL19>
1357 BOOL20
1358                     <SET TEMP17 6 (TYPE FIX)>
1359 BOOL19
1360                     <SET C12 TEMP17>
1361                     <DEAD TEMP17>
1362                     <GEN-LVAL 'NO-KILL = ONO14>
1363                     <GETS 'BIND = TEMP3 (TYPE LBIND)>
1364                     <BBIND 'NO-KILL 'LIST 'FIX ONO14>
1365                     <FRAME '\1aCOMMUTE>
1366                     <PUSH K7>
1367                     <NTHUV NOD4 4 = STACK>
1368                     <NTHR 'NO-KILL 2 = TEMP17 (RECORD-TYPE ATOM) (TYPE LBIND)>
1369                     <NTHR TEMP17 1 = STACK (RECORD-TYPE LBIND)>
1370                     <DEAD TEMP17>
1371                     <CALL '\1aCOMMUTE 3 = TEMP17>
1372                     <NTHR 'NO-KILL 2 = TEMP28 (RECORD-TYPE ATOM) (TYPE LBIND)>
1373                     <PUTR TEMP28 1 TEMP17 (RECORD-TYPE LBIND)>
1374                     <DEAD TEMP28 TEMP17>
1375                     <FRAME '\1aGEN-TEMP>
1376                     <PUSH %<>>
1377                     <CALL '\1aGEN-TEMP 1 = TEMP28>
1378                     <NTHL K7 1 = TEM13 (TYPE NODE)>
1379                     <NTHUV TEM13 1 = TEMP17 (TYPE FIX)>
1380                     <VEQUAL? TEMP17 68 - PHRASE31 (TYPE FIX)>
1381                     <DEAD TEMP17>
1382                     <FRAME '\1aGEN>
1383                     <NTHUV TEM13 5 = TEMP17 (TYPE LIST)>
1384                     <DEAD TEM13>
1385                     <NTHL TEMP17 1 = TEM13 (TYPE NODE)>
1386                     <DEAD TEMP17>
1387                     <PUSH TEM13>
1388                     <FRAME '\1aGEN-TEMP>
1389                     <PUSH %<>>
1390                     <CALL '\1aGEN-TEMP 1 = STACK>
1391                     <CALL '\1aGEN 2 = REG110>
1392                     <FRAME '\1aSEGINS>
1393                     <PUSH C12>
1394                     <PUSH 'T>
1395                     <PUSH TEM13>
1396                     <DEAD TEM13>
1397                     <PUSH TEMP28>
1398                     <PUSH REG110>
1399                     <PUSH 1>
1400                     <FRAME '\1aCHTYPE>
1401                     <VEQUAL? MAX?6 0 + BOOL37>
1402                     <SET TEMP17 %<CHTYPE <MAX> FIX> (TYPE FIX)>
1403                     <JUMP + BOOL36>
1404 BOOL37
1405                     <SET TEMP17 %<CHTYPE <MIN> FIX> (TYPE FIX)>
1406 BOOL36
1407                     <PUSH TEMP17>
1408                     <DEAD TEMP17>
1409                     <NTHUV NOD4 3 = STACK (TYPE ATOM)>
1410                     <DEAD NOD4>
1411                     <CALL '\1aCHTYPE 2 = STACK>
1412                     <CALL '\1aSEGINS 7 = MODE9>
1413                     <FRAME '\1aFREE-TEMP>
1414                     <PUSH REG110>
1415                     <DEAD REG110>
1416                     <CALL '\1aFREE-TEMP 1>
1417                     <JUMP + BOOL41>
1418 PHRASE31
1419                     <FRAME '\1aGEN>
1420                     <PUSH TEM13>
1421                     <PUSH TEMP28>
1422                     <DEAD TEMP28>
1423                     <CALL '\1aGEN 2 = TEMP28>
1424                     <NTHUV TEM13 3 = TEMP17>
1425                     <DEAD TEM13>
1426                     <EQUAL? TEMP17 'FLOAT - BOOL41>
1427                     <DEAD TEMP17>
1428                     <SET MODE9 2 (TYPE FIX)>
1429 BOOL41
1430                     <RESTL K7 1 = TEMP17 (TYPE LIST)>
1431                     <DEAD K7>
1432                     <LOOP>
1433 MAP43
1434                     <INTGO>
1435                     <EMPL? TEMP17 + MAPAP46>
1436                     <NTHL TEMP17 1 = TEM13>
1437                     <NTHUV TEM13 1 = REG110 (TYPE FIX)>
1438                     <VEQUAL? REG110 68 - PHRASE55 (TYPE FIX)>
1439                     <DEAD REG110>
1440                     <SET K7 'T (TYPE ATOM)>
1441                     <FRAME '\1aGEN>
1442                     <NTHUV TEM13 5 = REG110 (TYPE LIST)>
1443                     <DEAD TEM13>
1444                     <NTHL REG110 1 = TEM13 (TYPE NODE)>
1445                     <DEAD REG110>
1446                     <PUSH TEM13>
1447                     <FRAME '\1aGEN-TEMP>
1448                     <PUSH %<>>
1449                     <CALL '\1aGEN-TEMP 1 = STACK>
1450                     <CALL '\1aGEN 2 = NXT53>
1451                     <JUMP + PHRASE59>
1452 PHRASE55
1453                     <SET K7 %<> (TYPE FALSE)>
1454                     <FRAME '\1aGEN>
1455                     <PUSH TEM13>
1456                     <PUSH 'DONT-CARE>
1457                     <CALL '\1aGEN 2 = NXT53>
1458 PHRASE59
1459                     <VEQUAL? K7 0 + PHRASE63>
1460                     <DEAD K7>
1461                     <FRAME '\1aSEGINS>
1462                     <PUSH C12>
1463                     <PUSH %<>>
1464                     <PUSH TEM13>
1465                     <DEAD TEM13>
1466                     <PUSH TEMP28>
1467                     <PUSH NXT53>
1468                     <DEAD NXT53>
1469                     <PUSH MODE9>
1470                     <DEAD MODE9>
1471                     <PUSH 0>
1472                     <CALL '\1aSEGINS 7 = MODE9>
1473                     <JUMP + PHRASE65>
1474 PHRASE63
1475                     <VEQUAL? MODE9 2 - PHRASE67 (TYPE FIX)>
1476                     <FRAME '\1aISTYPE?>
1477                     <NTHUV TEM13 3 = STACK>
1478                     <DEAD TEM13>
1479                     <CALL '\1aISTYPE? 1 = REG110>
1480                     <VEQUAL? REG110 'FIX - PHRASE73>
1481                     <DEAD REG110>
1482                     <FRAME '\1aGEN-FLOAT>
1483                     <PUSH NXT53>
1484                     <FRAME '\1aPROT>
1485                     <PUSH NXT53>
1486                     <DEAD NXT53>
1487                     <PUSH 'FLOAT>
1488                     <CALL '\1aPROT 2 = STACK>
1489                     <CALL '\1aGEN-FLOAT 2 = NXT53>
1490                     <JUMP + PHRASE73>
1491 PHRASE67
1492                     <FRAME '\1aISTYPE?>
1493                     <NTHUV TEM13 3 = STACK>
1494                     <DEAD TEM13>
1495                     <CALL '\1aISTYPE? 1 = REG110>
1496                     <VEQUAL? REG110 'FLOAT - PHRASE73>
1497                     <DEAD REG110>
1498                     <FRAME '\1aGEN-FLOAT>
1499                     <PUSH TEMP28>
1500                     <FRAME '\1aPROT>
1501                     <PUSH TEMP28>
1502                     <DEAD TEMP28>
1503                     <PUSH 'FLOAT>
1504                     <CALL '\1aPROT 2 = STACK>
1505                     <CALL '\1aGEN-FLOAT 2 = TEMP28>
1506                     <SET MODE9 2 (TYPE FIX)>
1507 PHRASE73
1508                     <FRAME '\1aIEMIT>
1509                     <VEQUAL? MAX?6 0 + PHRASE79>
1510                     <SET REG110 '`LESS? (TYPE ATOM)>
1511                     <JUMP + PHRASE80>
1512 PHRASE79
1513                     <SET REG110 '`GRTR? (TYPE ATOM)>
1514 PHRASE80
1515                     <PUSH REG110>
1516                     <DEAD REG110>
1517                     <PUSH TEMP28>
1518                     <PUSH NXT53>
1519                     <PUSH '->
1520                     <FRAME '\1aMAKE-TAG>
1521                     <CALL '\1aMAKE-TAG 0 = K7>
1522                     <PUSH K7>
1523                     <CALL '\1aIEMIT 5>
1524                     <FRAME '\1aSET-TEMP>
1525                     <PUSH TEMP28>
1526                     <PUSH NXT53>
1527                     <VEQUAL? MODE9 2 - PHRASE84 (TYPE FIX)>
1528                     <SET REG110 'FLOAT (TYPE ATOM)>
1529                     <JUMP + PHRASE85>
1530 PHRASE84
1531                     <SET REG110 'FIX (TYPE ATOM)>
1532 PHRASE85
1533                     <CONS REG110 () = REG110>
1534                     <CONS '`TYPE REG110 = STACK>
1535                     <DEAD REG110>
1536                     <CALL '\1aSET-TEMP 3>
1537                     <FRAME '\1aFREE-TEMP>
1538                     <PUSH NXT53>
1539                     <DEAD NXT53>
1540                     <CALL '\1aFREE-TEMP 1>
1541                     <FRAME '\1aLABEL-TAG>
1542                     <PUSH K7>
1543                     <DEAD K7>
1544                     <CALL '\1aLABEL-TAG 1>
1545 PHRASE65
1546                     <RESTL TEMP17 1 = TEMP17 (TYPE LIST)>
1547                     <JUMP + MAP43>
1548 MAPAP46
1549                     <FRAME '\1aDELAY-KILL>
1550                     <NTHR 'NO-KILL 2 = TEMP17 (RECORD-TYPE ATOM) (TYPE LBIND)>
1551                     <NTHR TEMP17 1 = STACK (RECORD-TYPE LBIND)>
1552                     <DEAD TEMP17>
1553                     <PUSH ONO14>
1554                     <DEAD ONO14>
1555                     <CALL '\1aDELAY-KILL 2>
1556                     <FRAME '\1aMOVE-ARG>
1557                     <PUSH TEMP28>
1558                     <DEAD TEMP28>
1559                     <PUSH WHERE5>
1560                     <DEAD WHERE5>
1561                     <CALL '\1aMOVE-ARG 2 = TEMP17>
1562                     <UNBIND TEMP3>
1563                     <DEAD TEMP3>
1564                     <ADJ -9>
1565                     <RETURN TEMP17>
1566                     <DEAD TEMP17>
1567                     <END \1aMIN-MAX>
1568
1569 #WORD *2703756366*
1570                     <GFCN \1aABS-GEN ("VALUE" ANY NODE ANY) N4 W5>
1571                     <TEMP (TEMP15 %<>) K16 (TRIN8 %<>) ABSFLG9 RT13 TEMP21>
1572                     <INTGO>
1573                     <NTHUV N4 5 = TEMP15 (TYPE LIST)>
1574                     <NTHL TEMP15 1 = K16 (TYPE NODE)>
1575                     <DEAD TEMP15>
1576                     <NTHUV N4 4 = TEMP15>
1577                     <EQUAL? TEMP15 'ABS - TAG16>
1578                     <DEAD TEMP15>
1579                     <SET ABSFLG9 'T (TYPE ATOM)>
1580                     <JUMP + TAG17>
1581 TAG16
1582                     <SET ABSFLG9 %<> (TYPE FALSE)>
1583 TAG17
1584                     <NTHUV N4 3 = RT13>
1585                     <GETS 'BIND = TEMP15 (TYPE LBIND)>
1586                     <FRAME '\1aMAKE-TRANS>
1587                     <PUSH N4>
1588                     <PUSH 2>
1589                     <PUSH 0>
1590                     <PUSH 0>
1591                     <PUSH 0>
1592                     <PUSH 1>
1593                     <PUSH 0>
1594                     <PUSH 0>
1595                     <CALL '\1aMAKE-TRANS 8 = TEMP21>
1596                     <BBIND 'TRANSFORM 'TRANS 'FIX TEMP21>
1597                     <DEAD TEMP21>
1598                     <FRAME '\1aGEN>
1599                     <PUSH K16>
1600                     <DEAD K16>
1601                     <GVAL 'POP-STACK = TEMP21>
1602                     <EQUAL? TEMP21 W5 - PHRASE25>
1603                     <DEAD TEMP21>
1604                     <SET TEMP21 'DONT-CARE (TYPE ATOM)>
1605                     <JUMP + PHRASE26>
1606 PHRASE25
1607                     <SET TEMP21 W5>
1608 PHRASE26
1609                     <PUSH TEMP21>
1610                     <DEAD TEMP21>
1611                     <CALL '\1aGEN 2 = K16>
1612                     <NTHR 'TRANSFORM 2 = TEMP21 (RECORD-TYPE ATOM) (TYPE LBIND)>
1613                     <NTHR TEMP21 1 = TEMP21 (RECORD-TYPE LBIND)>
1614                     <NTHUV TEMP21 3 = TEMP21 (TYPE UVECTOR)>
1615                     <NTHUU TEMP21 1 = TEMP21 (TYPE FIX)>
1616                     <VEQUAL? TEMP21 0 + PHRASE28 (TYPE FIX)>
1617                     <DEAD TEMP21>
1618                     <FRAME '\1aMOVE-ARG>
1619                     <PUSH K16>
1620                     <DEAD K16>
1621                     <PUSH W5>
1622                     <DEAD W5>
1623                     <CALL '\1aMOVE-ARG 2 = TEMP21>
1624                     <RETURN TEMP21>
1625                     <DEAD TEMP21>
1626 PHRASE28
1627                     <UNBIND TEMP15>
1628                     <DEAD TEMP15>
1629                     <ADJ -9>
1630                     <GEN-ASSIGNED? 'TRANSFORM - PHRASE35>
1631                     <GEN-LVAL 'TRANSFORM = TEMP15>
1632                     <NTHUV TEMP15 1 = TEMP15 (TYPE NODE)>
1633                     <NTHUV N4 2 = TEMP21>
1634                     <DEAD N4>
1635                     <EQUAL? TEMP15 TEMP21 - PHRASE35>
1636                     <DEAD TEMP15 TEMP21>
1637                     <VEQUAL? ABSFLG9 0 - PHRASE35>
1638                     <GEN-LVAL 'TRANSFORM = TEMP21>
1639                     <NTHUV TEMP21 2 = TRIN8 (TYPE UVECTOR)>
1640                     <DEAD TEMP21>
1641 PHRASE35
1642                     <VEQUAL? TRIN8 0 + PHRASE44>
1643                     <NTHUU TRIN8 1 = TEMP21 (TYPE FIX)>
1644                     <DEAD TRIN8>
1645                     <VEQUAL? TEMP21 0 + PHRASE44 (TYPE FIX)>
1646                     <DEAD TEMP21>
1647                     <GEN-LVAL 'TRANSFORM = TEMP21>
1648                     <NTHUV TEMP21 3 = TEMP21 (TYPE UVECTOR)>
1649                     <PUTUU TEMP21 1 1>
1650                     <DEAD TEMP21>
1651                     <FRAME '\1aMOVE-ARG>
1652                     <PUSH K16>
1653                     <DEAD K16>
1654                     <PUSH W5>
1655                     <DEAD W5>
1656                     <CALL '\1aMOVE-ARG 2 = TEMP21>
1657                     <JUMP + PHRASE51>
1658 PHRASE44
1659                     <VEQUAL? ABSFLG9 0 + PHRASE53>
1660                     <DEAD ABSFLG9>
1661                     <TYPE? W5 <TYPE-CODE TEMP> - PHRASE55>
1662                     <FRAME '\1aUSE-TEMP>
1663                     <SET TEMP15 W5>
1664                     <PUSH TEMP15>
1665                     <PUSH RT13>
1666                     <CALL '\1aUSE-TEMP 2>
1667                     <JUMP + PHRASE61>
1668 PHRASE55
1669                     <TYPE? K16 <TYPE-CODE TEMP> - PHRASE57>
1670                     <NTHUV K16 2 = TEMP15 (TYPE FIX)>
1671                     <GRTR? TEMP15 1 + PHRASE57 (TYPE FIX)>
1672                     <DEAD TEMP15>
1673                     <SET TEMP15 K16>
1674                     <JUMP + PHRASE61>
1675 PHRASE57
1676                     <FRAME '\1aGEN-TEMP>
1677                     <PUSH RT13>
1678                     <CALL '\1aGEN-TEMP 1 = TEMP15>
1679 PHRASE61
1680                     <EQUAL? K16 TEMP15 + PHRASE64>
1681                     <FRAME '\1aDEALLOCATE-TEMP>
1682                     <FRAME '\1aMOVE-ARG>
1683                     <PUSH K16>
1684                     <DEAD K16>
1685                     <PUSH TEMP15>
1686                     <CALL '\1aMOVE-ARG 2 = K16>
1687                     <PUSH K16>
1688                     <CALL '\1aDEALLOCATE-TEMP 1>
1689 PHRASE64
1690                     <FRAME '\1aDO-LESS?>
1691                     <PUSH K16>
1692                     <FRAME '\1aMAKE-TAG>
1693                     <CALL '\1aMAKE-TAG 0 = TRIN8>
1694                     <PUSH TRIN8>
1695                     <PUSH RT13>
1696                     <CALL '\1aDO-LESS? 3>
1697                     <FRAME '\1aDO-SUB>
1698                     <PUSH K16>
1699                     <DEAD K16>
1700                     <PUSH TEMP15>
1701                     <PUSH RT13>
1702                     <DEAD RT13>
1703                     <CALL '\1aDO-SUB 3>
1704                     <FRAME '\1aLABEL-TAG>
1705                     <PUSH TRIN8>
1706                     <DEAD TRIN8>
1707                     <CALL '\1aLABEL-TAG 1>
1708                     <FRAME '\1aMOVE-ARG>
1709                     <PUSH TEMP15>
1710                     <DEAD TEMP15>
1711                     <PUSH W5>
1712                     <DEAD W5>
1713                     <CALL '\1aMOVE-ARG 2 = W5>
1714                     <JUMP + PHRASE82>
1715 PHRASE53
1716                     <EQUAL? W5 'DONT-CARE - PHRASE74>
1717                     <TYPE? K16 <TYPE-CODE TEMP> - PHRASE74>
1718                     <NTHUV K16 2 = TEMP15 (TYPE FIX)>
1719                     <GRTR? TEMP15 1 + PHRASE74 (TYPE FIX)>
1720                     <DEAD TEMP15>
1721                     <SET W5 K16>
1722                     <JUMP + PHRASE78>
1723 PHRASE74
1724                     <EQUAL? W5 'DONT-CARE - PHRASE78>
1725                     <FRAME '\1aGEN-TEMP>
1726                     <PUSH RT13>
1727                     <CALL '\1aGEN-TEMP 1 = W5>
1728 PHRASE78
1729                     <FRAME '\1aDO-SUB>
1730                     <PUSH K16>
1731                     <PUSH W5>
1732                     <PUSH RT13>
1733                     <DEAD RT13>
1734                     <CALL '\1aDO-SUB 3>
1735                     <EQUAL? W5 K16 + PHRASE82>
1736                     <FRAME '\1aFREE-TEMP>
1737                     <PUSH K16>
1738                     <DEAD K16>
1739                     <CALL '\1aFREE-TEMP 1>
1740 PHRASE82
1741                     <SET TEMP21 W5>
1742                     <DEAD W5>
1743 PHRASE51
1744                     <RETURN TEMP21>
1745                     <DEAD TEMP21>
1746                     <END \1aABS-GEN>
1747
1748 #WORD *13044703205*
1749                     <GFCN \1aDO-SUB ("VALUE" <OR ATOM <LIST ANY>> ANY ANY ANY) NUM4 W5 TY6>
1750                     <TEMP TEMP12 TG28:ATOM>
1751                     <INTGO>
1752                     <FRAME '\1aISTYPE?>
1753                     <PUSH TY6>
1754                     <CALL '\1aISTYPE? 1 = TEMP12>
1755                     <VEQUAL? TEMP12 'FIX - PHRASE10>
1756                     <DEAD TEMP12>
1757                     <FRAME '\1aIEMIT>
1758                     <PUSH '`SUB>
1759                     <PUSH 0>
1760                     <PUSH NUM4>
1761                     <DEAD NUM4>
1762                     <PUSH '=>
1763                     <PUSH W5>
1764                     <DEAD W5>
1765                     <PUSH (`TYPE FIX)>
1766                     <CALL '\1aIEMIT 6 = TEMP12>
1767                     <RETURN TEMP12>
1768                     <DEAD TEMP12>
1769 PHRASE10
1770                     <FRAME '\1aISTYPE?>
1771                     <PUSH TY6>
1772                     <CALL '\1aISTYPE? 1 = TEMP12>
1773                     <VEQUAL? TEMP12 'FLOAT - PHRASE14>
1774                     <DEAD TEMP12>
1775                     <FRAME '\1aIEMIT>
1776                     <PUSH '`SUBF>
1777                     <PUSH 0>
1778                     <PUSH NUM4>
1779                     <DEAD NUM4>
1780                     <PUSH '=>
1781                     <PUSH W5>
1782                     <DEAD W5>
1783                     <PUSH (`TYPE FLOAT)>
1784                     <CALL '\1aIEMIT 6 = TEMP12>
1785                     <RETURN TEMP12>
1786                     <DEAD TEMP12>
1787 PHRASE14
1788                     <FRAME '\1aMAKE-TAG>
1789                     <CALL '\1aMAKE-TAG 0 = TEMP12>
1790                     <FRAME '\1aMAKE-TAG>
1791                     <CALL '\1aMAKE-TAG 0 = TG28>
1792                     <FRAME '\1aGEN-TYPE?>
1793                     <PUSH NUM4>
1794                     <PUSH 'FIX>
1795                     <PUSH TEMP12>
1796                     <PUSH %<>>
1797                     <CALL '\1aGEN-TYPE? 4>
1798                     <FRAME '\1aIEMIT>
1799                     <PUSH '`SUB>
1800                     <PUSH 0>
1801                     <PUSH NUM4>
1802                     <PUSH '=>
1803                     <PUSH W5>
1804                     <PUSH (`TYPE FIX)>
1805                     <CALL '\1aIEMIT 6>
1806                     <FRAME '\1aBRANCH-TAG>
1807                     <PUSH TG28>
1808                     <CALL '\1aBRANCH-TAG 1>
1809                     <FRAME '\1aLABEL-TAG>
1810                     <PUSH TEMP12>
1811                     <DEAD TEMP12>
1812                     <CALL '\1aLABEL-TAG 1>
1813                     <FRAME '\1aTYPE-OK?>
1814                     <PUSH TY6>
1815                     <DEAD TY6>
1816                     <PUSH <NOT <OR FIX FLOAT>>>
1817                     <CALL '\1aTYPE-OK? 2 = TEMP12>
1818                     <TYPE? TEMP12 <TYPE-CODE FALSE> + PHRASE26>
1819                     <DEAD TEMP12>
1820                     <FRAME '\1aGEN-TYPE?>
1821                     <PUSH NUM4>
1822                     <PUSH 'FLOAT>
1823                     <PUSH '`COMPERR>
1824                     <PUSH %<>>
1825                     <CALL '\1aGEN-TYPE? 4>
1826 PHRASE26
1827                     <FRAME '\1aIEMIT>
1828                     <PUSH '`SUBF>
1829                     <PUSH 0.0>
1830                     <PUSH NUM4>
1831                     <DEAD NUM4>
1832                     <PUSH '=>
1833                     <PUSH W5>
1834                     <DEAD W5>
1835                     <PUSH (`TYPE FLOAT)>
1836                     <CALL '\1aIEMIT 6>
1837                     <FRAME '\1aLABEL-TAG>
1838                     <PUSH TG28>
1839                     <DEAD TG28>
1840                     <CALL '\1aLABEL-TAG 1 = TEMP12>
1841                     <RETURN TEMP12>
1842                     <DEAD TEMP12>
1843                     <END \1aDO-SUB>
1844
1845 #WORD *6101511567*
1846                     <GFCN \1aDO-LESS? ("VALUE" <OR ATOM <LIST ANY>> ANY ANY ANY) NUM4 TG5 TY6>
1847                     <TEMP TEMP12 TG28:ATOM>
1848                     <INTGO>
1849                     <FRAME '\1aISTYPE?>
1850                     <PUSH TY6>
1851                     <CALL '\1aISTYPE? 1 = TEMP12>
1852                     <VEQUAL? TEMP12 'FIX - PHRASE10>
1853                     <DEAD TEMP12>
1854                     <FRAME '\1aIEMIT>
1855                     <PUSH '`LESS?>
1856                     <PUSH NUM4>
1857                     <DEAD NUM4>
1858                     <PUSH 0>
1859                     <PUSH '->
1860                     <PUSH TG5>
1861                     <DEAD TG5>
1862                     <PUSH (`TYPE FIX)>
1863                     <CALL '\1aIEMIT 6 = TEMP12>
1864                     <RETURN TEMP12>
1865                     <DEAD TEMP12>
1866 PHRASE10
1867                     <FRAME '\1aISTYPE?>
1868                     <PUSH TY6>
1869                     <CALL '\1aISTYPE? 1 = TEMP12>
1870                     <VEQUAL? TEMP12 'FLOAT - PHRASE14>
1871                     <DEAD TEMP12>
1872                     <FRAME '\1aIEMIT>
1873                     <PUSH '`LESS?>
1874                     <PUSH NUM4>
1875                     <DEAD NUM4>
1876                     <PUSH 0.0>
1877                     <PUSH '->
1878                     <PUSH TG5>
1879                     <DEAD TG5>
1880                     <PUSH (`TYPE FLOAT)>
1881                     <CALL '\1aIEMIT 6 = TEMP12>
1882                     <RETURN TEMP12>
1883                     <DEAD TEMP12>
1884 PHRASE14
1885                     <FRAME '\1aMAKE-TAG>
1886                     <CALL '\1aMAKE-TAG 0 = TEMP12>
1887                     <FRAME '\1aMAKE-TAG>
1888                     <CALL '\1aMAKE-TAG 0 = TG28>
1889                     <FRAME '\1aGEN-TYPE?>
1890                     <PUSH NUM4>
1891                     <PUSH 'FIX>
1892                     <PUSH TEMP12>
1893                     <PUSH %<>>
1894                     <CALL '\1aGEN-TYPE? 4>
1895                     <FRAME '\1aIEMIT>
1896                     <PUSH '`LESS?>
1897                     <PUSH NUM4>
1898                     <PUSH 0>
1899                     <PUSH '->
1900                     <PUSH TG5>
1901                     <PUSH (`TYPE FIX)>
1902                     <CALL '\1aIEMIT 6>
1903                     <FRAME '\1aBRANCH-TAG>
1904                     <PUSH TG28>
1905                     <CALL '\1aBRANCH-TAG 1>
1906                     <FRAME '\1aLABEL-TAG>
1907                     <PUSH TEMP12>
1908                     <DEAD TEMP12>
1909                     <CALL '\1aLABEL-TAG 1>
1910                     <GEN-LVAL 'CAREFUL = TEMP12>
1911                     <TYPE? TEMP12 <TYPE-CODE FALSE> + PHRASE26>
1912                     <DEAD TEMP12>
1913                     <FRAME '\1aTYPE-OK?>
1914                     <PUSH TY6>
1915                     <DEAD TY6>
1916                     <PUSH <NOT <OR FIX FLOAT>>>
1917                     <CALL '\1aTYPE-OK? 2 = TEMP12>
1918                     <TYPE? TEMP12 <TYPE-CODE FALSE> + PHRASE26>
1919                     <DEAD TEMP12>
1920                     <FRAME '\1aGEN-TYPE?>
1921                     <PUSH NUM4>
1922                     <PUSH 'FLOAT>
1923                     <PUSH '`COMPERR>
1924                     <PUSH %<>>
1925                     <CALL '\1aGEN-TYPE? 4>
1926 PHRASE26
1927                     <FRAME '\1aIEMIT>
1928                     <PUSH '`LESS?>
1929                     <PUSH NUM4>
1930                     <DEAD NUM4>
1931                     <PUSH 0.0>
1932                     <PUSH '->
1933                     <PUSH TG5>
1934                     <DEAD TG5>
1935                     <PUSH (`TYPE FLOAT)>
1936                     <CALL '\1aIEMIT 6>
1937                     <FRAME '\1aLABEL-TAG>
1938                     <PUSH TG28>
1939                     <DEAD TG28>
1940                     <CALL '\1aLABEL-TAG 1 = TEMP12>
1941                     <RETURN TEMP12>
1942                     <DEAD TEMP12>
1943                     <END \1aDO-LESS?>
1944
1945 #WORD *1656556455*
1946                     <GFCN \1aMOD-GEN ("VALUE" ANY NODE ANY) N4 W5>
1947                     <TEMP TEMP10 N16:NODE N27:NODE TEMP31 TEMP32>
1948                     <INTGO>
1949                     <NTHUV N4 5 = TEMP10 (TYPE LIST)>
1950                     <NTHL TEMP10 1 = N16 (TYPE NODE)>
1951                     <DEAD TEMP10>
1952                     <NTHUV N4 5 = TEMP10 (TYPE LIST)>
1953                     <DEAD N4>
1954                     <RESTL TEMP10 1 = TEMP10 (TYPE LIST)>
1955                     <NTHL TEMP10 1 = N27 (TYPE NODE)>
1956                     <DEAD TEMP10>
1957                     <NTHUV N27 1 = TEMP10 (TYPE FIX)>
1958                     <VEQUAL? TEMP10 2 - PHRASE12 (TYPE FIX)>
1959                     <DEAD TEMP10>
1960                     <FRAME '\1aPOPWR2>
1961                     <NTHUV N27 4 = STACK (TYPE FIX)>
1962                     <CALL '\1aPOPWR2 1 = TEMP10>
1963                     <TYPE? TEMP10 <TYPE-CODE FALSE> + PHRASE12>
1964                     <DEAD TEMP10>
1965                     <FRAME '\1aFREE-TEMP>
1966                     <FRAME '\1aGEN>
1967                     <PUSH N16>
1968                     <DEAD N16>
1969                     <PUSH 'DONT-CARE>
1970                     <CALL '\1aGEN 2 = TEMP10>
1971                     <PUSH TEMP10>
1972                     <CALL '\1aFREE-TEMP 1>
1973                     <FRAME '\1aIEMIT>
1974                     <PUSH '`AND>
1975                     <PUSH TEMP10>
1976                     <DEAD TEMP10>
1977                     <NTHUV N27 4 = TEMP10>
1978                     <DEAD N27>
1979                     <SUB TEMP10 1 = STACK (TYPE FIX)>
1980                     <DEAD TEMP10>
1981                     <PUSH '=>
1982                     <TYPE? W5 <TYPE-CODE TEMP> - PHRASE19>
1983                     <FRAME '\1aUSE-TEMP>
1984                     <PUSH W5>
1985                     <PUSH 'FIX>
1986                     <CALL '\1aUSE-TEMP 2>
1987                     <SET TEMP10 W5>
1988                     <JUMP + PHRASE23>
1989 PHRASE19
1990                     <EQUAL? W5 'DONT-CARE - PHRASE21>
1991                     <FRAME '\1aGEN-TEMP>
1992                     <PUSH 'FIX>
1993                     <CALL '\1aGEN-TEMP 1 = W5>
1994                     <SET TEMP10 W5>
1995                     <JUMP + PHRASE23>
1996 PHRASE21
1997                     <SET TEMP10 W5>
1998 PHRASE23
1999                     <PUSH TEMP10>
2000                     <DEAD TEMP10>
2001                     <CALL '\1aIEMIT 5>
2002                     <RETURN W5>
2003                     <DEAD W5>
2004 PHRASE12
2005                     <NTHUV N16 1 = TEMP10 (TYPE FIX)>
2006                     <GVAL 'SNODES = TEMP31>
2007                     <EMPUU? TEMP31 + PHRASE26>
2008                     <LOOP (TEMP10 VALUE) (TEMP31 LENGTH VALUE)>
2009 TAG29
2010                     <NTHUU TEMP31 1 = TEMP32>
2011                     <VEQUAL? TEMP32 TEMP10 + TAG28>
2012                     <DEAD TEMP32>
2013                     <RESTUU TEMP31 1 = TEMP31 (TYPE UVECTOR)>
2014                     <EMPUU? TEMP31 - TAG29>
2015                     <JUMP + PHRASE26>
2016 TAG28
2017                     <NTHUV N27 1 = TEMP31 (TYPE FIX)>
2018                     <GVAL 'SNODES = TEMP10>
2019                     <EMPUU? TEMP10 + TAG33>
2020                     <LOOP (TEMP31 VALUE) (TEMP10 LENGTH VALUE)>
2021 TAG34
2022                     <NTHUU TEMP10 1 = TEMP32>
2023                     <VEQUAL? TEMP32 TEMP31 + PHRASE26>
2024                     <DEAD TEMP32>
2025                     <RESTUU TEMP10 1 = TEMP10 (TYPE UVECTOR)>
2026                     <EMPUU? TEMP10 - TAG34>
2027 TAG33
2028                     <NTHUV N27 8 = TEMP10>
2029                     <TYPE? TEMP10 <TYPE-CODE FALSE> - PHRASE26>
2030                     <DEAD TEMP10>
2031                     <FRAME '\1aGEN>
2032                     <PUSH N27>
2033                     <DEAD N27>
2034                     <PUSH 'DONT-CARE>
2035                     <CALL '\1aGEN 2 = TEMP31>
2036                     <FRAME '\1aINTERF-CHANGE>
2037                     <PUSH TEMP31>
2038                     <DEAD TEMP31>
2039                     <PUSH N16>
2040                     <CALL '\1aINTERF-CHANGE 2 = TEMP31>
2041                     <FRAME '\1aGEN>
2042                     <PUSH N16>
2043                     <DEAD N16>
2044                     <PUSH 'DONT-CARE>
2045                     <CALL '\1aGEN 2 = TEMP10>
2046                     <JUMP + PHRASE39>
2047 PHRASE26
2048                     <FRAME '\1aGEN>
2049                     <PUSH N16>
2050                     <DEAD N16>
2051                     <PUSH 'DONT-CARE>
2052                     <CALL '\1aGEN 2 = TEMP10>
2053                     <FRAME '\1aINTERF-CHANGE>
2054                     <PUSH TEMP10>
2055                     <DEAD TEMP10>
2056                     <PUSH N27>
2057                     <CALL '\1aINTERF-CHANGE 2 = TEMP10>
2058                     <FRAME '\1aGEN>
2059                     <PUSH N27>
2060                     <DEAD N27>
2061                     <PUSH 'DONT-CARE>
2062                     <CALL '\1aGEN 2 = TEMP31>
2063 PHRASE39
2064                     <FRAME '\1aFREE-TEMP>
2065                     <PUSH TEMP10>
2066                     <PUSH %<>>
2067                     <CALL '\1aFREE-TEMP 2>
2068                     <FRAME '\1aFREE-TEMP>
2069                     <PUSH TEMP31>
2070                     <PUSH %<>>
2071                     <CALL '\1aFREE-TEMP 2>
2072                     <EQUAL? W5 'DONT-CARE - PHRASE46>
2073                     <FRAME '\1aGEN-TEMP>
2074                     <PUSH 'FIX>
2075                     <CALL '\1aGEN-TEMP 1 = W5>
2076                     <JUMP + PHRASE48>
2077 PHRASE46
2078                     <TYPE? W5 <TYPE-CODE TEMP> - PHRASE48>
2079                     <FRAME '\1aUSE-TEMP>
2080                     <PUSH W5>
2081                     <PUSH 'FIX>
2082                     <CALL '\1aUSE-TEMP 2>
2083 PHRASE48
2084                     <FRAME '\1aIEMIT>
2085                     <PUSH '`MOD>
2086                     <PUSH TEMP10>
2087                     <DEAD TEMP10>
2088                     <PUSH TEMP31>
2089                     <DEAD TEMP31>
2090                     <PUSH '=>
2091                     <PUSH W5>
2092                     <PUSH (`TYPE FIX)>
2093                     <CALL '\1aIEMIT 6>
2094                     <RETURN W5>
2095                     <DEAD W5>
2096                     <END \1aMOD-GEN>
2097
2098 #WORD *13352506300*
2099                     <GFCN \1aROT-GEN ("VALUE" ANY ANY ANY) N4 W5>
2100                     <TEMP TEMP7>
2101                     <INTGO>
2102                     <FRAME '\1aROT-LSH-GEN>
2103                     <PUSH N4>
2104                     <DEAD N4>
2105                     <PUSH W5>
2106                     <DEAD W5>
2107                     <PUSH '`ROT>
2108                     <CALL '\1aROT-LSH-GEN 3 = TEMP7>
2109                     <RETURN TEMP7>
2110                     <DEAD TEMP7>
2111                     <END \1aROT-GEN>
2112
2113 #WORD *13012505200*
2114                     <GFCN \1aLSH-GEN ("VALUE" ANY ANY ANY) N4 W5>
2115                     <TEMP TEMP7>
2116                     <INTGO>
2117                     <FRAME '\1aROT-LSH-GEN>
2118                     <PUSH N4>
2119                     <DEAD N4>
2120                     <PUSH W5>
2121                     <DEAD W5>
2122                     <PUSH '`LSH>
2123                     <CALL '\1aROT-LSH-GEN 3 = TEMP7>
2124                     <RETURN TEMP7>
2125                     <DEAD TEMP7>
2126                     <END \1aLSH-GEN>
2127
2128 #WORD *4152556114*
2129                     <GFCN \1aROT-LSH-GEN ("VALUE" ANY NODE ANY ANY) N4 W5 INS6>
2130                     <TEMP K7 A18:NODE A29:NODE TEMP30 TEMP31>
2131                     <INTGO>
2132                     <NTHUV N4 5 = K7 (TYPE LIST)>
2133                     <DEAD N4>
2134                     <NTHL K7 1 = A18 (TYPE NODE)>
2135                     <RESTL K7 1 = K7 (TYPE LIST)>
2136                     <NTHL K7 1 = A29 (TYPE NODE)>
2137                     <DEAD K7>
2138                     <NTHUV A29 1 = K7 (TYPE FIX)>
2139                     <VEQUAL? K7 2 - PHRASE14 (TYPE FIX)>
2140                     <DEAD K7>
2141                     <FRAME '\1aGEN>
2142                     <PUSH A18>
2143                     <DEAD A18>
2144                     <PUSH 'DONT-CARE>
2145                     <CALL '\1aGEN 2 = K7>
2146                     <FRAME '\1aFREE-TEMP>
2147                     <PUSH K7>
2148                     <PUSH %<>>
2149                     <CALL '\1aFREE-TEMP 2>
2150                     <EQUAL? W5 'DONT-CARE - PHRASE18>
2151                     <FRAME '\1aGEN-TEMP>
2152                     <PUSH 'FIX>
2153                     <CALL '\1aGEN-TEMP 1 = W5>
2154                     <JUMP + PHRASE20>
2155 PHRASE18
2156                     <TYPE? W5 <TYPE-CODE TEMP> - PHRASE20>
2157                     <FRAME '\1aUSE-TEMP>
2158                     <PUSH W5>
2159                     <PUSH 'FIX>
2160                     <CALL '\1aUSE-TEMP 2>
2161 PHRASE20
2162                     <FRAME '\1aIEMIT>
2163                     <PUSH INS6>
2164                     <DEAD INS6>
2165                     <PUSH K7>
2166                     <DEAD K7>
2167                     <NTHUV A29 4 = STACK>
2168                     <DEAD A29>
2169                     <PUSH '=>
2170                     <PUSH W5>
2171                     <PUSH (`TYPE FIX)>
2172                     <CALL '\1aIEMIT 6>
2173                     <RETURN W5>
2174                     <DEAD W5>
2175 PHRASE14
2176                     <NTHUV A18 1 = K7 (TYPE FIX)>
2177                     <GVAL 'SNODES = TEMP30>
2178                     <EMPUU? TEMP30 + PHRASE25>
2179                     <LOOP (K7 VALUE) (TEMP30 LENGTH VALUE)>
2180 TAG28
2181                     <NTHUU TEMP30 1 = TEMP31>
2182                     <VEQUAL? TEMP31 K7 + TAG27>
2183                     <DEAD TEMP31>
2184                     <RESTUU TEMP30 1 = TEMP30 (TYPE UVECTOR)>
2185                     <EMPUU? TEMP30 - TAG28>
2186                     <JUMP + PHRASE25>
2187 TAG27
2188                     <NTHUV A29 1 = TEMP30 (TYPE FIX)>
2189                     <GVAL 'SNODES = K7>
2190                     <EMPUU? K7 + TAG32>
2191                     <LOOP (TEMP30 VALUE) (K7 LENGTH VALUE)>
2192 TAG33
2193                     <NTHUU K7 1 = TEMP31>
2194                     <VEQUAL? TEMP31 TEMP30 + PHRASE25>
2195                     <DEAD TEMP31>
2196                     <RESTUU K7 1 = K7 (TYPE UVECTOR)>
2197                     <EMPUU? K7 - TAG33>
2198 TAG32
2199                     <NTHUV A29 8 = K7>
2200                     <TYPE? K7 <TYPE-CODE FALSE> - PHRASE25>
2201                     <DEAD K7>
2202                     <FRAME '\1aGEN>
2203                     <PUSH A29>
2204                     <DEAD A29>
2205                     <PUSH 'DONT-CARE>
2206                     <CALL '\1aGEN 2 = TEMP30>
2207                     <FRAME '\1aINTERF-CHANGE>
2208                     <PUSH TEMP30>
2209                     <DEAD TEMP30>
2210                     <PUSH A18>
2211                     <CALL '\1aINTERF-CHANGE 2 = TEMP30>
2212                     <FRAME '\1aGEN>
2213                     <PUSH A18>
2214                     <DEAD A18>
2215                     <PUSH 'DONT-CARE>
2216                     <CALL '\1aGEN 2 = K7>
2217                     <JUMP + PHRASE38>
2218 PHRASE25
2219                     <FRAME '\1aGEN>
2220                     <PUSH A18>
2221                     <DEAD A18>
2222                     <PUSH 'DONT-CARE>
2223                     <CALL '\1aGEN 2 = K7>
2224                     <FRAME '\1aINTERF-CHANGE>
2225                     <PUSH K7>
2226                     <DEAD K7>
2227                     <PUSH A29>
2228                     <CALL '\1aINTERF-CHANGE 2 = K7>
2229                     <FRAME '\1aGEN>
2230                     <PUSH A29>
2231                     <DEAD A29>
2232                     <PUSH 'DONT-CARE>
2233                     <CALL '\1aGEN 2 = TEMP30>
2234 PHRASE38
2235                     <FRAME '\1aFREE-TEMP>
2236                     <PUSH K7>
2237                     <PUSH %<>>
2238                     <CALL '\1aFREE-TEMP 2>
2239                     <FRAME '\1aFREE-TEMP>
2240                     <PUSH TEMP30>
2241                     <PUSH %<>>
2242                     <CALL '\1aFREE-TEMP 2>
2243                     <EQUAL? W5 'DONT-CARE - PHRASE45>
2244                     <FRAME '\1aGEN-TEMP>
2245                     <PUSH 'FIX>
2246                     <CALL '\1aGEN-TEMP 1 = W5>
2247                     <JUMP + PHRASE47>
2248 PHRASE45
2249                     <TYPE? W5 <TYPE-CODE TEMP> - PHRASE47>
2250                     <FRAME '\1aUSE-TEMP>
2251                     <PUSH W5>
2252                     <PUSH 'FIX>
2253                     <CALL '\1aUSE-TEMP 2>
2254 PHRASE47
2255                     <FRAME '\1aIEMIT>
2256                     <PUSH INS6>
2257                     <DEAD INS6>
2258                     <PUSH K7>
2259                     <DEAD K7>
2260                     <PUSH TEMP30>
2261                     <DEAD TEMP30>
2262                     <PUSH '=>
2263                     <PUSH W5>
2264                     <PUSH (`TYPE FIX)>
2265                     <CALL '\1aIEMIT 6>
2266                     <RETURN W5>
2267                     <DEAD W5>
2268                     <END \1aROT-LSH-GEN>
2269
2270 #WORD *16753451763*
2271                     <GFCN \1aFLOAT-GEN ("VALUE" ANY NODE ANY) N4 W5>
2272                     <TEMP TEMP11 NUM6>
2273                     <INTGO>
2274                     <NTHUV N4 5 = TEMP11 (TYPE LIST)>
2275                     <NTHL TEMP11 1 = NUM6 (TYPE NODE)>
2276                     <DEAD TEMP11>
2277                     <NTHUV NUM6 3 = TEMP11>
2278                     <EQUAL? TEMP11 'FLOAT - PHRASE13>
2279                     <FRAME '\1aCOMPILE-WARNING>
2280                     <PUSH "Unnecessary FLOAT: ">
2281                     <PUSH N4>
2282                     <DEAD N4>
2283                     <CALL '\1aCOMPILE-WARNING 2>
2284                     <FRAME '\1aGEN>
2285                     <PUSH NUM6>
2286                     <DEAD NUM6>
2287                     <PUSH W5>
2288                     <DEAD W5>
2289                     <CALL '\1aGEN 2 = TEMP11>
2290                     <RETURN TEMP11>
2291                     <DEAD TEMP11>
2292 PHRASE13
2293                     <FRAME '\1aISTYPE?>
2294                     <PUSH TEMP11>
2295                     <DEAD TEMP11>
2296                     <CALL '\1aISTYPE? 1 = TEMP11>
2297                     <VEQUAL? TEMP11 'FIX - PHRASE16>
2298                     <DEAD TEMP11>
2299                     <FRAME '\1aGEN>
2300                     <PUSH NUM6>
2301                     <DEAD NUM6>
2302                     <CALL '\1aGEN 1 = TEMP11>
2303                     <FRAME '\1aFREE-TEMP>
2304                     <PUSH TEMP11>
2305                     <PUSH %<>>
2306                     <CALL '\1aFREE-TEMP 2>
2307                     <EQUAL? W5 'DONT-CARE - PHRASE22>
2308                     <FRAME '\1aGEN-TEMP>
2309                     <PUSH 'FLOAT>
2310                     <CALL '\1aGEN-TEMP 1 = W5>
2311                     <JUMP + PHRASE24>
2312 PHRASE22
2313                     <TYPE? W5 <TYPE-CODE TEMP> - PHRASE24>
2314                     <FRAME '\1aUSE-TEMP>
2315                     <PUSH W5>
2316                     <PUSH 'FLOAT>
2317                     <CALL '\1aUSE-TEMP 2>
2318 PHRASE24
2319                     <FRAME '\1aGEN-FLOAT>
2320                     <PUSH TEMP11>
2321                     <DEAD TEMP11>
2322                     <PUSH W5>
2323                     <CALL '\1aGEN-FLOAT 2>
2324                     <RETURN W5>
2325                     <DEAD W5>
2326 PHRASE16
2327                     <TYPE? W5 <TYPE-CODE TEMP> - BOOL30>
2328                     <NTHUV W5 5 = TEMP11>
2329                     <TYPE? TEMP11 <TYPE-CODE FALSE> + BOOL30>
2330                     <DEAD TEMP11>
2331                     <NTHUV W5 5 = TEMP11>
2332                     <EQUAL? TEMP11 'ANY + PHRASE29>
2333                     <DEAD TEMP11>
2334 BOOL30
2335                     <FRAME '\1aGEN-TEMP>
2336                     <PUSH %<>>
2337                     <CALL '\1aGEN-TEMP 1 = TEMP11>
2338                     <JUMP + PHRASE32>
2339 PHRASE29
2340                     <SET TEMP11 W5>
2341 PHRASE32
2342                     <FRAME '\1aGEN>
2343                     <PUSH NUM6>
2344                     <DEAD NUM6>
2345                     <PUSH TEMP11>
2346                     <DEAD TEMP11>
2347                     <CALL '\1aGEN 2 = TEMP11>
2348                     <FRAME '\1aMAKE-TAG>
2349                     <CALL '\1aMAKE-TAG 0 = NUM6>
2350                     <FRAME '\1aGEN-TYPE?>
2351                     <PUSH TEMP11>
2352                     <PUSH 'FLOAT>
2353                     <PUSH NUM6>
2354                     <PUSH 'T>
2355                     <CALL '\1aGEN-TYPE? 4>
2356                     <FRAME '\1aGEN-FLOAT>
2357                     <PUSH TEMP11>
2358                     <PUSH TEMP11>
2359                     <CALL '\1aGEN-FLOAT 2>
2360                     <FRAME '\1aLABEL-TAG>
2361                     <PUSH NUM6>
2362                     <DEAD NUM6>
2363                     <CALL '\1aLABEL-TAG 1>
2364                     <EQUAL? TEMP11 W5 + PHRASE39>
2365                     <FRAME '\1aMOVE-ARG>
2366                     <PUSH TEMP11>
2367                     <DEAD TEMP11>
2368                     <PUSH W5>
2369                     <DEAD W5>
2370                     <CALL '\1aMOVE-ARG 2 = TEMP11>
2371                     <RETURN TEMP11>
2372                     <DEAD TEMP11>
2373 PHRASE39
2374                     <RETURN W5>
2375                     <DEAD W5>
2376                     <END \1aFLOAT-GEN>
2377
2378 #WORD *24423177775*
2379                     <GFCN \1aFIX-GEN ("VALUE" ANY NODE ANY) N4 W5>
2380                     <TEMP TEMP11 NUM6 RT7>
2381                     <INTGO>
2382                     <NTHUV N4 5 = TEMP11 (TYPE LIST)>
2383                     <NTHL TEMP11 1 = NUM6 (TYPE NODE)>
2384                     <DEAD TEMP11>
2385                     <NTHUV NUM6 3 = RT7>
2386                     <FRAME '\1aISTYPE?>
2387                     <PUSH RT7>
2388                     <CALL '\1aISTYPE? 1 = TEMP11>
2389                     <VEQUAL? TEMP11 'FIX - PHRASE13>
2390                     <DEAD TEMP11>
2391                     <FRAME '\1aCOMPILE-WARNING>
2392                     <PUSH "Unnecessary  FIX: ">
2393                     <PUSH N4>
2394                     <DEAD N4>
2395                     <CALL '\1aCOMPILE-WARNING 2>
2396                     <FRAME '\1aGEN>
2397                     <PUSH NUM6>
2398                     <DEAD NUM6>
2399                     <PUSH W5>
2400                     <DEAD W5>
2401                     <CALL '\1aGEN 2 = TEMP11>
2402                     <RETURN TEMP11>
2403                     <DEAD TEMP11>
2404 PHRASE13
2405                     <EQUAL? RT7 'FLOAT - PHRASE17>
2406                     <DEAD RT7>
2407                     <FRAME '\1aGEN>
2408                     <PUSH NUM6>
2409                     <DEAD NUM6>
2410                     <CALL '\1aGEN 1 = TEMP11>
2411                     <FRAME '\1aFREE-TEMP>
2412                     <PUSH TEMP11>
2413                     <PUSH %<>>
2414                     <CALL '\1aFREE-TEMP 2>
2415                     <EQUAL? W5 'DONT-CARE - PHRASE21>
2416                     <FRAME '\1aGEN-TEMP>
2417                     <PUSH 'FIX>
2418                     <CALL '\1aGEN-TEMP 1 = W5>
2419                     <JUMP + PHRASE23>
2420 PHRASE21
2421                     <TYPE? W5 <TYPE-CODE TEMP> - PHRASE23>
2422                     <FRAME '\1aUSE-TEMP>
2423                     <PUSH W5>
2424                     <PUSH 'FIX>
2425                     <CALL '\1aUSE-TEMP 2>
2426 PHRASE23
2427                     <FRAME '\1aGEN-FIX>
2428                     <PUSH TEMP11>
2429                     <DEAD TEMP11>
2430                     <PUSH W5>
2431                     <CALL '\1aGEN-FIX 2>
2432                     <RETURN W5>
2433                     <DEAD W5>
2434 PHRASE17
2435                     <TYPE? W5 <TYPE-CODE TEMP> - BOOL29>
2436                     <NTHUV W5 5 = TEMP11>
2437                     <TYPE? TEMP11 <TYPE-CODE FALSE> + BOOL29>
2438                     <DEAD TEMP11>
2439                     <NTHUV W5 5 = TEMP11>
2440                     <EQUAL? TEMP11 'ANY + PHRASE28>
2441                     <DEAD TEMP11>
2442 BOOL29
2443                     <FRAME '\1aGEN-TEMP>
2444                     <PUSH %<>>
2445                     <CALL '\1aGEN-TEMP 1 = TEMP11>
2446                     <JUMP + PHRASE32>
2447 PHRASE28
2448                     <SET TEMP11 W5>
2449 PHRASE32
2450                     <FRAME '\1aGEN>
2451                     <PUSH NUM6>
2452                     <DEAD NUM6>
2453                     <PUSH TEMP11>
2454                     <DEAD TEMP11>
2455                     <CALL '\1aGEN 2 = TEMP11>
2456                     <FRAME '\1aGEN-TYPE?>
2457                     <PUSH TEMP11>
2458                     <PUSH 'FIX>
2459                     <FRAME '\1aMAKE-TAG>
2460                     <CALL '\1aMAKE-TAG 0 = NUM6>
2461                     <PUSH NUM6>
2462                     <PUSH 'T>
2463                     <CALL '\1aGEN-TYPE? 4>
2464                     <FRAME '\1aGEN-FIX>
2465                     <PUSH TEMP11>
2466                     <PUSH TEMP11>
2467                     <CALL '\1aGEN-FIX 2>
2468                     <FRAME '\1aLABEL-TAG>
2469                     <PUSH NUM6>
2470                     <DEAD NUM6>
2471                     <CALL '\1aLABEL-TAG 1>
2472                     <EQUAL? TEMP11 W5 + PHRASE39>
2473                     <FRAME '\1aMOVE-ARG>
2474                     <PUSH TEMP11>
2475                     <DEAD TEMP11>
2476                     <PUSH W5>
2477                     <DEAD W5>
2478                     <CALL '\1aMOVE-ARG 2 = TEMP11>
2479                     <RETURN TEMP11>
2480                     <DEAD TEMP11>
2481 PHRASE39
2482                     <RETURN W5>
2483                     <DEAD W5>
2484                     <END \1aFIX-GEN>
2485
2486 #WORD *22402451725*
2487                     <GFCN \1aGEN-FLOAT ("VALUE" ANY ANY ANY) DAT4 W5>
2488                     <TEMP TEMP8>
2489                     <INTGO>
2490                     <TYPE? DAT4 <TYPE-CODE FIX> - PHRASE7>
2491                     <FLOAT DAT4 = TEMP8 (TYPE FLOAT)>
2492                     <DEAD DAT4>
2493                     <RETURN TEMP8>
2494                     <DEAD TEMP8>
2495 PHRASE7
2496                     <FRAME '\1aIEMIT>
2497                     <PUSH '`FLOAT>
2498                     <PUSH DAT4>
2499                     <DEAD DAT4>
2500                     <PUSH '=>
2501                     <PUSH W5>
2502                     <PUSH (`TYPE FLOAT)>
2503                     <CALL '\1aIEMIT 5>
2504                     <RETURN W5>
2505                     <DEAD W5>
2506                     <END \1aGEN-FLOAT>
2507
2508 #WORD *32652223116*
2509                     <GFCN \1aGEN-FIX ("VALUE" ANY ANY "OPTIONAL" ANY) DAT6 W7>
2510                     <OPT-DISPATCH 1 %<> OPT4 OPT5>
2511 OPT4
2512                     <PUSH #T$UNBOUND 0>
2513 OPT5
2514                     <TEMP TEMP13>
2515                     <INTGO>
2516                     <TYPE? W7 <TYPE-CODE UNBOUND> - TAG8>
2517                     <FRAME '\1aGEN-TEMP>
2518                     <PUSH %<>>
2519                     <CALL '\1aGEN-TEMP 1 = W7>
2520 TAG8
2521                     <TYPE? DAT6 <TYPE-CODE FLOAT> - PHRASE12>
2522                     <FIX DAT6 = TEMP13 (TYPE FIX)>
2523                     <DEAD DAT6>
2524                     <RETURN TEMP13>
2525                     <DEAD TEMP13>
2526 PHRASE12
2527                     <FRAME '\1aIEMIT>
2528                     <PUSH '`FIX>
2529                     <PUSH DAT6>
2530                     <DEAD DAT6>
2531                     <PUSH '=>
2532                     <PUSH W7>
2533                     <PUSH (`TYPE FIX)>
2534                     <CALL '\1aIEMIT 5>
2535                     <RETURN W7>
2536                     <DEAD W7>
2537                     <END \1aGEN-FIX>
2538
2539 #WORD *5277444307*
2540                     <GFCN \1aFLOP ("VALUE" ATOM ATOM) SUBR4>
2541                     <TEMP TEMP9 TEMP10>
2542                     <INTGO>
2543                     <SET TEMP9 [G? L? G? G=? L=? G=? ==? ==? N==? N==? 1? -1? 1? 0? 0?] (TYPE VECTOR)>
2544                     <LOOP (SUBR4 VALUE) (TEMP9 LENGTH VALUE)>
2545 TAG7
2546                     <NTHUV TEMP9 1 = TEMP10>
2547                     <VEQUAL? TEMP10 SUBR4 + TAG6>
2548                     <DEAD TEMP10>
2549                     <RESTUV TEMP9 1 = TEMP9 (TYPE VECTOR)>
2550                     <EMPUV? TEMP9 - TAG7>
2551                     <SET TEMP9 %<> (TYPE FALSE)>
2552 TAG6
2553                     <RESTUV TEMP9 1 = TEMP9 (TYPE VECTOR)>
2554                     <NTHUV TEMP9 1 = TEMP9 (TYPE ATOM)>
2555                     <RETURN TEMP9>
2556                     <DEAD TEMP9>
2557                     <END \1aFLOP>
2558
2559 #WORD *5320332642*
2560                     <GFCN \1aFLIP ("VALUE" ATOM ATOM) SUBR4>
2561                     <TEMP TEMP6:VECTOR N5 TEMP13>
2562                     <INTGO>
2563                     <GVAL '0SUBRS = TEMP6>
2564                     <GVAL '0SUBRS = N5>
2565                     <EMPUV? N5 + TAG8>
2566                     <LOOP (SUBR4 VALUE) (N5 LENGTH VALUE)>
2567 TAG10
2568                     <NTHUV N5 1 = TEMP13>
2569                     <VEQUAL? TEMP13 SUBR4 + TAG9>
2570                     <DEAD TEMP13>
2571                     <RESTUV N5 1 = N5 (TYPE VECTOR)>
2572                     <EMPUV? N5 - TAG10>
2573 TAG8
2574                     <SET N5 %<> (TYPE FALSE)>
2575 TAG9
2576                     <LENUV N5 = N5 (TYPE FIX)>
2577                     <SUB 13 N5 = TEMP13 (TYPE FIX)>
2578                     <AND N5 1 = N5>
2579                     <VEQUAL? N5 0 - PHRASE15 (TYPE FIX)>
2580                     <DEAD N5>
2581                     <SET N5 -1 (TYPE FIX)>
2582                     <JUMP + PHRASE18>
2583 PHRASE15
2584                     <SET N5 1 (TYPE FIX)>
2585 PHRASE18
2586                     <SUB TEMP13 N5 = TEMP13 (TYPE FIX)>
2587                     <DEAD N5>
2588                     <NTHUV TEMP6 TEMP13 = TEMP13 (TYPE ATOM)>
2589                     <DEAD TEMP6>
2590                     <RETURN TEMP13>
2591                     <DEAD TEMP13>
2592                     <END \1aFLIP>
2593
2594 #WORD *35521622600*
2595                     <GFCN \1aPRED? ("VALUE" <OR ATOM !<FALSE>> FIX) N4>
2596                     <TEMP TEMP6>
2597                     <INTGO>
2598                     <GVAL 'PREDV = TEMP6>
2599                     <NTHUU TEMP6 N4 = TEMP6 (TYPE FIX)>
2600                     <DEAD N4>
2601                     <VEQUAL? TEMP6 0 + TAG7 (TYPE FIX)>
2602                     <DEAD TEMP6>
2603                     <RETURN 'T>
2604 TAG7
2605                     <RETURN %<>>
2606                     <END \1aPRED?>
2607
2608 #WORD *416050110*
2609                     <GFCN \1aLN-LST ("VALUE" <OR ATOM FALSE> NODE) N4>
2610                     <TEMP TEMP7>
2611                     <INTGO>
2612                     <NTHUV N4 1 = TEMP7 (TYPE FIX)>
2613                     <VEQUAL? TEMP7 25 + TAG8 (TYPE FIX)>
2614                     <DEAD TEMP7>
2615                     <RETURN %<>>
2616 TAG8
2617                     <FRAME '\1aSTRUCTYP>
2618                     <NTHUV N4 5 = TEMP7 (TYPE LIST)>
2619                     <DEAD N4>
2620                     <NTHL TEMP7 1 = TEMP7 (TYPE NODE)>
2621                     <NTHUV TEMP7 3 = STACK>
2622                     <DEAD TEMP7>
2623                     <CALL '\1aSTRUCTYP 1 = TEMP7>
2624                     <EQUAL? TEMP7 'LIST - TAG9>
2625                     <DEAD TEMP7>
2626                     <RETURN 'T>
2627 TAG9
2628                     <RETURN %<>>
2629                     <END \1aLN-LST>
2630
2631 #WORD *14777330057*
2632                     <GFCN \1a0-TEST ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) NOD9 WHERE10 NOTF11 BRANCH12 DIR13 SETF14>
2633                     <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
2634 OPT4
2635                     <PUSH %<>>
2636 OPT5
2637                     <PUSH %<>>
2638 OPT6
2639                     <PUSH %<>>
2640 OPT7
2641                     <PUSH %<>>
2642 OPT8
2643                     <TEMP REG15 TEMP18 NN16:NODE TEMP3:LBIND>
2644                     <INTGO>
2645                     <GVAL 'NO-DATUM = REG15>
2646                     <NTHUV NOD9 5 = TEMP18 (TYPE LIST)>
2647                     <NTHL TEMP18 1 = NN16 (TYPE NODE)>
2648                     <DEAD TEMP18>
2649                     <GETS 'BIND = TEMP3 (TYPE LBIND)>
2650                     <FRAME '\1aMAKE-TRANS>
2651                     <PUSH NOD9>
2652                     <PUSH 1>
2653                     <PUSH 1>
2654                     <PUSH 0>
2655                     <PUSH 1>
2656                     <PUSH 1>
2657                     <PUSH 1>
2658                     <FRAME '\1aSW?>
2659                     <NTHUV NOD9 4 = STACK (TYPE ATOM)>
2660                     <CALL '\1aSW? 1 = STACK>
2661                     <CALL '\1aMAKE-TRANS 8 = TEMP18>
2662                     <BBIND 'TRANSFORM 'TRANS 'FIX TEMP18>
2663                     <DEAD TEMP18>
2664                     <FRAME '\1aLN-LST>
2665                     <PUSH NN16>
2666                     <CALL '\1aLN-LST 1 = TEMP18>
2667                     <TYPE? TEMP18 <TYPE-CODE FALSE> - PHRASE22>
2668                     <DEAD TEMP18>
2669                     <FRAME '\1aGEN>
2670                     <PUSH NN16>
2671                     <DEAD NN16>
2672                     <PUSH 'DONT-CARE>
2673                     <CALL '\1aGEN 2 = REG15>
2674 PHRASE22
2675                     <FRAME '\1aTEST-DISP>
2676                     <PUSH NOD9>
2677                     <DEAD NOD9>
2678                     <PUSH WHERE10>
2679                     <DEAD WHERE10>
2680                     <PUSH NOTF11>
2681                     <DEAD NOTF11>
2682                     <PUSH BRANCH12>
2683                     <DEAD BRANCH12>
2684                     <PUSH DIR13>
2685                     <DEAD DIR13>
2686                     <PUSH REG15>
2687                     <DEAD REG15>
2688                     <FRAME '\1aDO-A-TRANS>
2689                     <PUSH 0>
2690                     <NTHR 'TRANSFORM 2 = TEMP18 (RECORD-TYPE ATOM) (TYPE LBIND)>
2691                     <NTHR TEMP18 1 = STACK (RECORD-TYPE LBIND)>
2692                     <DEAD TEMP18>
2693                     <CALL '\1aDO-A-TRANS 2 = STACK>
2694                     <NTHR 'TRANSFORM 2 = TEMP18 (RECORD-TYPE ATOM) (TYPE LBIND)>
2695                     <NTHR TEMP18 1 = TEMP18 (RECORD-TYPE LBIND)>
2696                     <NTHUV TEMP18 3 = TEMP18 (TYPE UVECTOR)>
2697                     <NTHUU TEMP18 1 = TEMP18 (TYPE FIX)>
2698                     <VEQUAL? TEMP18 0 - TAG29 (TYPE FIX)>
2699                     <DEAD TEMP18>
2700                     <SET TEMP18 %<> (TYPE FALSE)>
2701                     <JUMP + TAG30>
2702 TAG29
2703                     <SET TEMP18 'T (TYPE ATOM)>
2704 TAG30
2705                     <PUSH TEMP18>
2706                     <DEAD TEMP18>
2707                     <PUSH SETF14>
2708                     <DEAD SETF14>
2709                     <CALL '\1aTEST-DISP 9 = TEMP18>
2710                     <UNBIND TEMP3>
2711                     <DEAD TEMP3>
2712                     <ADJ -9>
2713                     <RETURN TEMP18>
2714                     <DEAD TEMP18>
2715                     <END \1a0-TEST>
2716
2717 #WORD *12576204054*
2718                     <GFCN \1aSW? ("VALUE" FIX ATOM) SBR4>
2719                     <TEMP TEMP10 TEMP11>
2720                     <INTGO>
2721                     <SET TEMP10 [0? N0? 1? -1? N1? N-1? ==? N==?] (TYPE VECTOR)>
2722                     <LOOP (SBR4 VALUE) (TEMP10 LENGTH VALUE)>
2723 TAG8
2724                     <NTHUV TEMP10 1 = TEMP11>
2725                     <VEQUAL? TEMP11 SBR4 + TAG7>
2726                     <DEAD TEMP11>
2727                     <RESTUV TEMP10 1 = TEMP10 (TYPE VECTOR)>
2728                     <EMPUV? TEMP10 - TAG8>
2729                     <JUMP + PHRASE6>
2730 TAG7
2731                     <RETURN 0>
2732 PHRASE6
2733                     <RETURN 1>
2734                     <END \1aSW?>
2735
2736 #WORD *5077200515*
2737                     <GFCN \1aMAKE-TRANS ("VALUE" TRANS NODE FIX FIX FIX FIX FIX FIX FIX) N4 NEG5 +-6 +-V7 */8 */V9 HW10 SW11>
2738                     <TEMP TEMP14 TEMP15>
2739                     <INTGO>
2740                     <PUSH N4>
2741                     <DEAD N4>
2742                     <PUSH NEG5>
2743                     <DEAD NEG5>
2744                     <PUSH +-6>
2745                     <DEAD +-6>
2746                     <PUSH +-V7>
2747                     <DEAD +-V7>
2748                     <PUSH */8>
2749                     <DEAD */8>
2750                     <PUSH */V9>
2751                     <DEAD */V9>
2752                     <PUSH HW10>
2753                     <DEAD HW10>
2754                     <PUSH SW11>
2755                     <DEAD SW11>
2756                     <UBLOCK <TYPE-CODE UVECTOR> 7 = STACK (TYPE UVECTOR)>
2757                     <UUBLOCK <TYPE-CODE UVECTOR> 7 = TEMP14>
2758                     <SET TEMP15 TEMP14>
2759                     <LOOP (TEMP15 VALUE LENGTH)>
2760 ISTR16
2761                     <EMPUU? TEMP15 + ISTRE17>
2762                     <PUTUU TEMP15 1 0>
2763                     <RESTUU TEMP15 1 = TEMP15>
2764                     <JUMP + ISTR16>
2765 ISTRE17
2766                     <PUSH TEMP14>
2767                     <DEAD TEMP14>
2768                     <UBLOCK <TYPE-CODE VECTOR> 3 = TEMP14>
2769                     <CHTYPE TEMP14 <TYPE-CODE TRANS> = TEMP14>
2770                     <RETURN TEMP14>
2771                     <DEAD TEMP14>
2772                     <END \1aMAKE-TRANS>
2773
2774 #WORD *31640404641*
2775                     <GFCN \1aDO-A-TRANS ("VALUE" FIX FIX TRANS) N4 TR5>
2776                     <TEMP X6:UVECTOR TEMP8 NN7>
2777                     <INTGO>
2778                     <NTHUV TR5 3 = X6 (TYPE UVECTOR)>
2779                     <NTHUV TR5 1 = TEMP8 (TYPE NODE)>
2780                     <DEAD TR5>
2781                     <NTHUV TEMP8 4 = NN7>
2782                     <DEAD TEMP8>
2783                     <VEQUAL? N4 0 + PHRASE20 (TYPE FIX)>
2784                     <NTHUU X6 6 = TEMP8 (TYPE FIX)>
2785                     <VEQUAL? TEMP8 0 + PHRASE20 (TYPE FIX)>
2786                     <DEAD TEMP8>
2787                     <NTHUU X6 7 = TEMP8 (TYPE FIX)>
2788                     <VEQUAL? TEMP8 0 + PHRASE20 (TYPE FIX)>
2789                     <DEAD TEMP8>
2790                     <EQUAL? NN7 'G? - PHRASE19>
2791                     <SUB N4 1 = N4 (TYPE FIX)>
2792                     <JUMP + PHRASE20>
2793 PHRASE19
2794                     <EQUAL? NN7 'L=? - PHRASE20>
2795                     <DEAD NN7>
2796                     <SUB N4 1 = N4 (TYPE FIX)>
2797 PHRASE20
2798                     <NTHUU X6 1 = TEMP8 (TYPE FIX)>
2799                     <VEQUAL? TEMP8 0 + PHRASE22 (TYPE FIX)>
2800                     <DEAD TEMP8>
2801                     <SUB 0 N4 = N4 (TYPE FIX)>
2802 PHRASE22
2803                     <NTHUU X6 2 = TEMP8 (TYPE FIX)>
2804                     <VEQUAL? TEMP8 0 + PHRASE26 (TYPE FIX)>
2805                     <DEAD TEMP8>
2806                     <NTHUU X6 3 = TEMP8 (TYPE FIX)>
2807                     <ADD TEMP8 N4 = N4 (TYPE FIX)>
2808                     <DEAD TEMP8>
2809 PHRASE26
2810                     <NTHUU X6 4 = TEMP8 (TYPE FIX)>
2811                     <GRTR? TEMP8 2 - PHRASE30 (TYPE FIX)>
2812                     <DEAD TEMP8>
2813                     <NTHUU X6 5 = TEMP8 (TYPE FIX)>
2814                     <DIV N4 TEMP8 = N4 (TYPE FIX)>
2815                     <DEAD TEMP8>
2816                     <JUMP + PHRASE31>
2817 PHRASE30
2818                     <NTHUU X6 4 = TEMP8 (TYPE FIX)>
2819                     <VEQUAL? TEMP8 0 + PHRASE31 (TYPE FIX)>
2820                     <DEAD TEMP8>
2821                     <NTHUU X6 5 = TEMP8 (TYPE FIX)>
2822                     <MUL TEMP8 N4 = N4 (TYPE FIX)>
2823                     <DEAD TEMP8>
2824 PHRASE31
2825                     <NTHUU X6 6 = TEMP8 (TYPE FIX)>
2826                     <VEQUAL? TEMP8 0 + PHRASE39 (TYPE FIX)>
2827                     <DEAD TEMP8>
2828                     <AND N4 #WORD *777777* = N4>
2829                     <NTHUU X6 7 = TEMP8 (TYPE FIX)>
2830                     <DEAD X6>
2831                     <VEQUAL? TEMP8 0 + PHRASE39 (TYPE FIX)>
2832                     <DEAD TEMP8>
2833                     <PUTBITS 0 18 18 N4 = N4>
2834 PHRASE39
2835                     <RETURN N4>
2836                     <DEAD N4>
2837                     <END \1aDO-A-TRANS>
2838
2839 #WORD *17716324565*
2840                     <GFCN \1aUPDATE-TRANS ("VALUE" TRANS ANY TRANS) NOD4 TR5>
2841                     <TEMP X6:UVECTOR TEMP11 FLG7>
2842                     <INTGO>
2843                     <NTHUV TR5 3 = X6 (TYPE UVECTOR)>
2844                     <DEAD TR5>
2845                     <FRAME '\1aMAKE-TRANS>
2846                     <PUSH NOD4>
2847                     <DEAD NOD4>
2848                     <NTHUU X6 1 = TEMP11 (TYPE FIX)>
2849                     <VEQUAL? TEMP11 0 + PHRASE10 (TYPE FIX)>
2850                     <DEAD TEMP11>
2851                     <SET TEMP11 2 (TYPE FIX)>
2852                     <JUMP + PHRASE14>
2853 PHRASE10
2854                     <SET TEMP11 0 (TYPE FIX)>
2855 PHRASE14
2856                     <PUSH TEMP11>
2857                     <DEAD TEMP11>
2858                     <NTHUU X6 2 = TEMP11 (TYPE FIX)>
2859                     <SET FLG7 'T (TYPE ATOM)>
2860                     <VEQUAL? TEMP11 0 - TAG17 (TYPE FIX)>
2861                     <DEAD TEMP11>
2862                     <SET FLG7 %<> (TYPE FALSE)>
2863                     <JUMP + PHRASE16>
2864 TAG17
2865                     <SET TEMP11 2 (TYPE FIX)>
2866                     <JUMP + PHRASE20>
2867 PHRASE16
2868                     <SET TEMP11 0 (TYPE FIX)>
2869 PHRASE20
2870                     <PUSH TEMP11>
2871                     <DEAD TEMP11>
2872                     <VEQUAL? FLG7 0 + PHRASE22>
2873                     <DEAD FLG7>
2874                     <NTHUU X6 3 = TEMP11 (TYPE FIX)>
2875                     <JUMP + PHRASE23>
2876 PHRASE22
2877                     <SET TEMP11 0 (TYPE FIX)>
2878 PHRASE23
2879                     <PUSH TEMP11>
2880                     <DEAD TEMP11>
2881                     <NTHUU X6 4 = TEMP11 (TYPE FIX)>
2882                     <SET FLG7 'T (TYPE ATOM)>
2883                     <GRTR? TEMP11 2 - PHRASE25 (TYPE FIX)>
2884                     <DEAD TEMP11>
2885                     <SET TEMP11 4 (TYPE FIX)>
2886                     <JUMP + PHRASE32>
2887 PHRASE25
2888                     <NTHUU X6 4 = TEMP11 (TYPE FIX)>
2889                     <SET FLG7 'T (TYPE ATOM)>
2890                     <VEQUAL? TEMP11 0 - TAG29 (TYPE FIX)>
2891                     <DEAD TEMP11>
2892                     <SET FLG7 %<> (TYPE FALSE)>
2893                     <JUMP + PHRASE27>
2894 TAG29
2895                     <SET TEMP11 2 (TYPE FIX)>
2896                     <JUMP + PHRASE32>
2897 PHRASE27
2898                     <SET TEMP11 0 (TYPE FIX)>
2899 PHRASE32
2900                     <PUSH TEMP11>
2901                     <DEAD TEMP11>
2902                     <VEQUAL? FLG7 0 + PHRASE34>
2903                     <DEAD FLG7>
2904                     <NTHUU X6 5 = TEMP11 (TYPE FIX)>
2905                     <JUMP + PHRASE35>
2906 PHRASE34
2907                     <SET TEMP11 1 (TYPE FIX)>
2908 PHRASE35
2909                     <PUSH TEMP11>
2910                     <DEAD TEMP11>
2911                     <NTHUU X6 6 = TEMP11 (TYPE FIX)>
2912                     <VEQUAL? TEMP11 0 + PHRASE37 (TYPE FIX)>
2913                     <DEAD TEMP11>
2914                     <SET TEMP11 2 (TYPE FIX)>
2915                     <JUMP + PHRASE40>
2916 PHRASE37
2917                     <SET TEMP11 0 (TYPE FIX)>
2918 PHRASE40
2919                     <PUSH TEMP11>
2920                     <DEAD TEMP11>
2921                     <NTHUU X6 7 = TEMP11 (TYPE FIX)>
2922                     <DEAD X6>
2923                     <VEQUAL? TEMP11 0 + PHRASE42 (TYPE FIX)>
2924                     <DEAD TEMP11>
2925                     <SET TEMP11 2 (TYPE FIX)>
2926                     <JUMP + PHRASE45>
2927 PHRASE42
2928                     <SET TEMP11 0 (TYPE FIX)>
2929 PHRASE45
2930                     <PUSH TEMP11>
2931                     <DEAD TEMP11>
2932                     <CALL '\1aMAKE-TRANS 8 = TEMP11>
2933                     <RETURN TEMP11>
2934                     <DEAD TEMP11>
2935                     <END \1aUPDATE-TRANS>
2936
2937 #WORD *37407267175*
2938                     <GFCN \1aTEST-DISP ("VALUE" ANY NODE ANY ANY ANY ANY ANY <OR FIX FLOAT> ANY ANY) N4 W5 NF6 BR7 DI8 REG9 NUM10 NEG11 SF12>
2939                     <TEMP TEMP15>
2940                     <INTGO>
2941                     <GVAL 'NO-DATUM = TEMP15>
2942                     <EQUAL? TEMP15 REG9 - PHRASE14>
2943                     <DEAD TEMP15>
2944                     <FRAME '\1aLIST-LNT-SPEC>
2945                     <PUSH N4>
2946                     <DEAD N4>
2947                     <PUSH W5>
2948                     <DEAD W5>
2949                     <PUSH NF6>
2950                     <DEAD NF6>
2951                     <PUSH BR7>
2952                     <DEAD BR7>
2953                     <PUSH DI8>
2954                     <DEAD DI8>
2955                     <PUSH NUM10>
2956                     <DEAD NUM10>
2957                     <PUSH SF12>
2958                     <DEAD SF12>
2959                     <CALL '\1aLIST-LNT-SPEC 7 = TEMP15>
2960                     <RETURN TEMP15>
2961                     <DEAD TEMP15>
2962 PHRASE14
2963                     <VEQUAL? NUM10 0 - PHRASE17 (TYPE FIX)>
2964                     <FRAME '\1a0-TEST1>
2965                     <PUSH N4>
2966                     <DEAD N4>
2967                     <PUSH W5>
2968                     <DEAD W5>
2969                     <PUSH NF6>
2970                     <DEAD NF6>
2971                     <PUSH BR7>
2972                     <DEAD BR7>
2973                     <PUSH DI8>
2974                     <DEAD DI8>
2975                     <PUSH REG9>
2976                     <DEAD REG9>
2977                     <PUSH NEG11>
2978                     <DEAD NEG11>
2979                     <PUSH SF12>
2980                     <DEAD SF12>
2981                     <CALL '\1a0-TEST1 8 = TEMP15>
2982                     <RETURN TEMP15>
2983                     <DEAD TEMP15>
2984 PHRASE17
2985                     <EQUAL? NUM10 1 + BOOL23>
2986                     <EQUAL? NUM10 1.0 + BOOL23>
2987                     <EQUAL? NUM10 -1 - PHRASE21>
2988 BOOL23
2989                     <NTHUV N4 4 = TEMP15>
2990                     <EQUAL? TEMP15 '1? + BOOL24>
2991                     <DEAD TEMP15>
2992                     <FRAME '\1aISTYPE?>
2993                     <NTHUV N4 5 = TEMP15 (TYPE LIST)>
2994                     <NTHL TEMP15 1 = TEMP15 (TYPE NODE)>
2995                     <NTHUV TEMP15 3 = STACK>
2996                     <DEAD TEMP15>
2997                     <CALL '\1aISTYPE? 1 = TEMP15>
2998                     <VEQUAL? TEMP15 'FIX - PHRASE21>
2999                     <DEAD TEMP15>
3000 BOOL24
3001                     <EQUAL? NUM10 -1 - PHRASE28>
3002                     <DEAD NUM10>
3003                     <SET NEG11 'T (TYPE ATOM)>
3004 PHRASE28
3005                     <FRAME '\1a1?-TEST>
3006                     <PUSH N4>
3007                     <DEAD N4>
3008                     <PUSH W5>
3009                     <DEAD W5>
3010                     <PUSH NF6>
3011                     <DEAD NF6>
3012                     <PUSH BR7>
3013                     <DEAD BR7>
3014                     <PUSH DI8>
3015                     <DEAD DI8>
3016                     <PUSH REG9>
3017                     <DEAD REG9>
3018                     <PUSH NEG11>
3019                     <DEAD NEG11>
3020                     <PUSH SF12>
3021                     <DEAD SF12>
3022                     <CALL '\1a1?-TEST 8 = TEMP15>
3023                     <RETURN TEMP15>
3024                     <DEAD TEMP15>
3025 PHRASE21
3026                     <FRAME '\1aTEST-GEN2>
3027                     <PUSH N4>
3028                     <DEAD N4>
3029                     <PUSH W5>
3030                     <DEAD W5>
3031                     <PUSH NF6>
3032                     <DEAD NF6>
3033                     <PUSH BR7>
3034                     <DEAD BR7>
3035                     <PUSH DI8>
3036                     <DEAD DI8>
3037                     <PUSH REG9>
3038                     <DEAD REG9>
3039                     <PUSH NUM10>
3040                     <DEAD NUM10>
3041                     <PUSH NEG11>
3042                     <DEAD NEG11>
3043                     <PUSH SF12>
3044                     <DEAD SF12>
3045                     <CALL '\1aTEST-GEN2 9 = TEMP15>
3046                     <RETURN TEMP15>
3047                     <DEAD TEMP15>
3048                     <END \1aTEST-DISP>
3049
3050 #WORD *14253235376*
3051                     <GFCN \1a0-TEST1 ("VALUE" ANY NODE ANY ANY ANY ANY ANY ANY ANY) NOD4 WHERE5 NOTF6 BRANCH7 DIR8 REG9 NEG10 SF11>
3052                     <TEMP (SBR12 %<>) RW14 TEMP21 SDIR16 ATYP17 TT20>
3053                     <INTGO>
3054                     <NTHUV NOD4 4 = SBR12>
3055                     <SET RW14 WHERE5>
3056                     <NTHUV NOD4 5 = TEMP21 (TYPE LIST)>
3057                     <NTHL TEMP21 1 = TEMP21 (TYPE NODE)>
3058                     <SET SDIR16 DIR8>
3059                     <FRAME '\1aISTYPE?>
3060                     <NTHUV TEMP21 3 = STACK>
3061                     <DEAD TEMP21>
3062                     <CALL '\1aISTYPE? 1 = ATYP17>
3063                     <EQUAL? WHERE5 'DONT-CARE - PHRASE24>
3064                     <FRAME '\1aGEN-TEMP>
3065                     <PUSH %<>>
3066                     <CALL '\1aGEN-TEMP 1 = WHERE5>
3067 PHRASE24
3068                     <TYPE? NEG10 <TYPE-CODE FALSE> + PHRASE34>
3069                     <DEAD NEG10>
3070                     <NTHUV NOD4 1 = TEMP21 (TYPE FIX)>
3071                     <DEAD NOD4>
3072                     <VEQUAL? TEMP21 19 - PHRASE30 (TYPE FIX)>
3073                     <DEAD TEMP21>
3074                     <FRAME '\1aFLOP>
3075                     <PUSH SBR12>
3076                     <DEAD SBR12>
3077                     <CALL '\1aFLOP 1 = SBR12>
3078                     <JUMP + PHRASE34>
3079 PHRASE30
3080                     <SET TT20 [G? G=? G? L? L=? L?] (TYPE VECTOR)>
3081                     <TYPE? SBR12 <TYPE-CODE ATOM> - PHRASE34>
3082                     <LOOP (SBR12 VALUE) (TT20 LENGTH VALUE)>
3083 TAG37
3084                     <NTHUV TT20 1 = TEMP21>
3085                     <VEQUAL? TEMP21 SBR12 + TAG36>
3086                     <DEAD TEMP21>
3087                     <RESTUV TT20 1 = TT20 (TYPE VECTOR)>
3088                     <EMPUV? TT20 - TAG37>
3089                     <JUMP + PHRASE34>
3090 TAG36
3091                     <NTHUV TT20 2 = SBR12 (TYPE ATOM)>
3092                     <DEAD TT20>
3093 PHRASE34
3094                     <TYPE? BRANCH7 <TYPE-CODE FALSE> + PHRASE40>
3095                     <TYPE? NOTF6 <TYPE-CODE FALSE> + TAG43>
3096                     <DEAD NOTF6>
3097                     <TYPE? DIR8 <TYPE-CODE FALSE> - TAG42>
3098                     <DEAD DIR8>
3099                     <SET DIR8 'T (TYPE ATOM)>
3100                     <JUMP + TAG43>
3101 TAG42
3102                     <SET DIR8 %<> (TYPE FALSE)>
3103 TAG43
3104                     <TYPE? DIR8 <TYPE-CODE FALSE> + BOOL44>
3105                     <DEAD DIR8>
3106                     <FRAME '\1aFLIP>
3107                     <PUSH SBR12>
3108                     <DEAD SBR12>
3109                     <CALL '\1aFLIP 1 = SBR12>
3110 BOOL44
3111                     <TYPE? SF11 <TYPE-CODE FALSE> + PHRASE47>
3112                     <DEAD SF11>
3113                     <FRAME '\1aDEALLOCATE-TEMP>
3114                     <FRAME '\1aMOVE-ARG>
3115                     <FRAME '\1aREFERENCE>
3116                     <TYPE? SDIR16 <TYPE-CODE FALSE> - TAG51>
3117                     <SET TEMP21 'T (TYPE ATOM)>
3118                     <JUMP + TAG52>
3119 TAG51
3120                     <SET TEMP21 %<> (TYPE FALSE)>
3121 TAG52
3122                     <PUSH TEMP21>
3123                     <DEAD TEMP21>
3124                     <CALL '\1aREFERENCE 1 = STACK>
3125                     <PUSH WHERE5>
3126                     <DEAD WHERE5>
3127                     <CALL '\1aMOVE-ARG 2 = STACK>
3128                     <CALL '\1aDEALLOCATE-TEMP 1>
3129 PHRASE47
3130                     <EQUAL? RW14 'FLUSHED - PHRASE54>
3131                     <FRAME '\1aZER-JMP>
3132                     <PUSH SBR12>
3133                     <DEAD SBR12>
3134                     <PUSH REG9>
3135                     <DEAD REG9>
3136                     <PUSH BRANCH7>
3137                     <DEAD BRANCH7>
3138                     <PUSH ATYP17>
3139                     <DEAD ATYP17>
3140                     <CALL '\1aZER-JMP 4>
3141                     <GVAL 'NO-DATUM = TEMP21>
3142                     <RETURN TEMP21>
3143                     <DEAD TEMP21>
3144 PHRASE54
3145                     <FRAME '\1aMAKE-TAG>
3146                     <CALL '\1aMAKE-TAG 0 = TEMP21>
3147                     <FRAME '\1aFLIP>
3148                     <PUSH SBR12>
3149                     <DEAD SBR12>
3150                     <CALL '\1aFLIP 1 = SBR12>
3151                     <FRAME '\1aZER-JMP>
3152                     <PUSH SBR12>
3153                     <DEAD SBR12>
3154                     <PUSH REG9>
3155                     <DEAD REG9>
3156                     <PUSH TEMP21>
3157                     <PUSH ATYP17>
3158                     <DEAD ATYP17>
3159                     <CALL '\1aZER-JMP 4>
3160                     <FRAME '\1aMOVE-ARG>
3161                     <FRAME '\1aREFERENCE>
3162                     <PUSH SDIR16>
3163                     <DEAD SDIR16>
3164                     <CALL '\1aREFERENCE 1 = STACK>
3165                     <EQUAL? RW14 'DONT-CARE - PHRASE63>
3166                     <FRAME '\1aGEN-TEMP>
3167                     <PUSH %<>>
3168                     <CALL '\1aGEN-TEMP 1 = RW14>
3169 PHRASE63
3170                     <PUSH RW14>
3171                     <DEAD RW14>
3172                     <CALL '\1aMOVE-ARG 2 = RW14>
3173                     <FRAME '\1aBRANCH-TAG>
3174                     <PUSH BRANCH7>
3175                     <DEAD BRANCH7>
3176                     <CALL '\1aBRANCH-TAG 1>
3177                     <FRAME '\1aLABEL-TAG>
3178                     <PUSH TEMP21>
3179                     <DEAD TEMP21>
3180                     <CALL '\1aLABEL-TAG 1>
3181                     <RETURN RW14>
3182                     <DEAD RW14>
3183 PHRASE40
3184                     <TYPE? NOTF6 <TYPE-CODE FALSE> + BOOL70>
3185                     <DEAD NOTF6>
3186                     <FRAME '\1aFLIP>
3187                     <PUSH SBR12>
3188                     <DEAD SBR12>
3189                     <CALL '\1aFLIP 1 = SBR12>
3190 BOOL70
3191                     <FRAME '\1aZER-JMP>
3192                     <PUSH SBR12>
3193                     <DEAD SBR12>
3194                     <PUSH REG9>
3195                     <DEAD REG9>
3196                     <FRAME '\1aMAKE-TAG>
3197                     <CALL '\1aMAKE-TAG 0 = BRANCH7>
3198                     <PUSH BRANCH7>
3199                     <PUSH ATYP17>
3200                     <DEAD ATYP17>
3201                     <CALL '\1aZER-JMP 4>
3202                     <FRAME '\1aMOVE-ARG>
3203                     <FRAME '\1aREFERENCE>
3204                     <PUSH 'T>
3205                     <CALL '\1aREFERENCE 1 = STACK>
3206                     <PUSH WHERE5>
3207                     <CALL '\1aMOVE-ARG 2>
3208                     <FRAME '\1aBRANCH-TAG>
3209                     <FRAME '\1aMAKE-TAG>
3210                     <CALL '\1aMAKE-TAG 0 = TEMP21>
3211                     <PUSH TEMP21>
3212                     <CALL '\1aBRANCH-TAG 1>
3213                     <FRAME '\1aLABEL-TAG>
3214                     <PUSH BRANCH7>
3215                     <DEAD BRANCH7>
3216                     <CALL '\1aLABEL-TAG 1>
3217                     <FRAME '\1aMOVE-ARG>
3218                     <FRAME '\1aREFERENCE>
3219                     <PUSH %<>>
3220                     <CALL '\1aREFERENCE 1 = STACK>
3221                     <PUSH WHERE5>
3222                     <CALL '\1aMOVE-ARG 2>
3223                     <FRAME '\1aLABEL-TAG>
3224                     <PUSH TEMP21>
3225                     <DEAD TEMP21>
3226                     <CALL '\1aLABEL-TAG 1>
3227                     <FRAME '\1aMOVE-ARG>
3228                     <PUSH WHERE5>
3229                     <DEAD WHERE5>
3230                     <PUSH RW14>
3231                     <DEAD RW14>
3232                     <CALL '\1aMOVE-ARG 2 = TEMP21>
3233                     <RETURN TEMP21>
3234                     <DEAD TEMP21>
3235                     <END \1a0-TEST1>
3236
3237 #WORD *12135367664*
3238                     <GFCN \1aZER-JMP ("VALUE" <OR TEMP ANY> ANY ANY ANY ANY) SBR4 REG5 BR6 ATYP7>
3239                     <TEMP TEMP15 TEMP16 TEM8:FIX>
3240                     <INTGO>
3241                     <GVAL '0SUBRS = TEMP15>
3242                     <TYPE? SBR4 <TYPE-CODE ATOM> - TAG11>
3243                     <EMPUV? TEMP15 + TAG11>
3244                     <LOOP (SBR4 VALUE) (TEMP15 LENGTH VALUE)>
3245 TAG13
3246                     <NTHUV TEMP15 1 = TEMP16>
3247                     <VEQUAL? TEMP16 SBR4 + TAG12>
3248                     <DEAD TEMP16>
3249                     <RESTUV TEMP15 1 = TEMP15 (TYPE VECTOR)>
3250                     <EMPUV? TEMP15 - TAG13>
3251 TAG11
3252                     <SET TEMP15 %<> (TYPE FALSE)>
3253 TAG12
3254                     <LENUV TEMP15 = TEM8 (TYPE FIX)>
3255                     <DEAD TEMP15>
3256                     <FRAME '\1aMAKE-TAG>
3257                     <CALL '\1aMAKE-TAG 0>
3258                     <FRAME '\1aMAKE-TAG>
3259                     <CALL '\1aMAKE-TAG 0>
3260                     <TYPE? ATYP7 <TYPE-CODE FALSE> + PHRASE20>
3261                     <FRAME '\1aIEMIT>
3262                     <GVAL '0SKPS = TEMP15>
3263                     <NTHUV TEMP15 TEM8 = STACK (TYPE ATOM)>
3264                     <DEAD TEMP15>
3265                     <PUSH REG5>
3266                     <EQUAL? ATYP7 'FIX - PHRASE23>
3267                     <SET TEMP15 0 (TYPE FIX)>
3268                     <JUMP + PHRASE24>
3269 PHRASE23
3270                     <SET TEMP15 0.0 (TYPE FLOAT)>
3271 PHRASE24
3272                     <PUSH TEMP15>
3273                     <DEAD TEMP15>
3274                     <GVAL '0JSENS = TEMP15>
3275                     <NTHUV TEMP15 TEM8 = STACK (TYPE ATOM)>
3276                     <DEAD TEMP15 TEM8>
3277                     <PUSH BR6>
3278                     <DEAD BR6>
3279                     <CONS ATYP7 () = TEMP15>
3280                     <DEAD ATYP7>
3281                     <CONS '`TYPE TEMP15 = STACK>
3282                     <DEAD TEMP15>
3283                     <CALL '\1aIEMIT 6>
3284                     <FRAME '\1aFREE-TEMP>
3285                     <PUSH REG5>
3286                     <DEAD REG5>
3287                     <CALL '\1aFREE-TEMP 1 = TEMP15>
3288                     <RETURN TEMP15>
3289                     <DEAD TEMP15>
3290 PHRASE20
3291                     <GVAL '0SKPS = TEMP16>
3292                     <NTHUV TEMP16 TEM8 = TEMP16 (TYPE ATOM)>
3293                     <VEQUAL? TEMP16 '`VEQUAL? - PHRASE26>
3294                     <DEAD TEMP16>
3295                     <FRAME '\1aIEMIT>
3296                     <PUSH '`VEQUAL?>
3297                     <PUSH REG5>
3298                     <PUSH 0>
3299                     <GVAL '0JSENS = TEMP16>
3300                     <NTHUV TEMP16 TEM8 = STACK (TYPE ATOM)>
3301                     <DEAD TEMP16 TEM8>
3302                     <PUSH BR6>
3303                     <DEAD BR6>
3304                     <PUSH (`TYPE FIX)>
3305                     <CALL '\1aIEMIT 6>
3306                     <FRAME '\1aFREE-TEMP>
3307                     <PUSH REG5>
3308                     <DEAD REG5>
3309                     <CALL '\1aFREE-TEMP 1 = TEMP15>
3310                     <RETURN TEMP15>
3311                     <DEAD TEMP15>
3312 PHRASE26
3313                     <FRAME '\1aIEMIT>
3314                     <GVAL '0SKPS = TEMP16>
3315                     <NTHUV TEMP16 TEM8 = STACK (TYPE ATOM)>
3316                     <DEAD TEMP16>
3317                     <PUSH REG5>
3318                     <PUSH 0>
3319                     <GVAL '0JSENS = TEMP16>
3320                     <NTHUV TEMP16 TEM8 = STACK (TYPE ATOM)>
3321                     <DEAD TEMP16 TEM8>
3322                     <PUSH BR6>
3323                     <DEAD BR6>
3324                     <CALL '\1aIEMIT 5>
3325                     <FRAME '\1aFREE-TEMP>
3326                     <PUSH REG5>
3327                     <DEAD REG5>
3328                     <CALL '\1aFREE-TEMP 1 = TEMP15>
3329                     <RETURN TEMP15>
3330                     <DEAD TEMP15>
3331                     <END \1aZER-JMP>
3332
3333 <SETG 0SKPS [`VEQUAL? `VEQUAL? `LESS? `LESS? `GRTR? `GRTR? `VEQUAL? `VEQUAL?]>
3334
3335 <SETG 0JSENS [+ - + - + - + -]>
3336
3337 <SETG 0SUBRS [1? N1? -1? N-1? 0? N0? G? L=? L? G=? ==? N==?]>
3338
3339 #WORD *1461052705*
3340                     <GFCN \1a1?-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) NOD9 WHERE10 NOTF11 BRANCH12 DIR13 SETF14>
3341                     <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
3342 OPT4
3343                     <PUSH %<>>
3344 OPT5
3345                     <PUSH %<>>
3346 OPT6
3347                     <PUSH %<>>
3348 OPT7
3349                     <PUSH %<>>
3350 OPT8
3351                     <TEMP REG15 TEMP18 NN16:NODE TEMP3:LBIND>
3352                     <INTGO>
3353                     <GVAL 'NO-DATUM = REG15>
3354                     <NTHUV NOD9 5 = TEMP18 (TYPE LIST)>
3355                     <NTHL TEMP18 1 = NN16 (TYPE NODE)>
3356                     <DEAD TEMP18>
3357                     <GETS 'BIND = TEMP3 (TYPE LBIND)>
3358                     <FRAME '\1aMAKE-TRANS>
3359                     <PUSH NOD9>
3360                     <PUSH 1>
3361                     <PUSH 2>
3362                     <PUSH -1>
3363                     <PUSH 1>
3364                     <PUSH 1>
3365                     <PUSH 1>
3366                     <FRAME '\1aSW?>
3367                     <NTHUV NOD9 4 = STACK (TYPE ATOM)>
3368                     <CALL '\1aSW? 1 = STACK>
3369                     <CALL '\1aMAKE-TRANS 8 = TEMP18>
3370                     <BBIND 'TRANSFORM 'TRANS 'FIX TEMP18>
3371                     <DEAD TEMP18>
3372                     <FRAME '\1aLN-LST>
3373                     <PUSH NN16>
3374                     <CALL '\1aLN-LST 1 = TEMP18>
3375                     <TYPE? TEMP18 <TYPE-CODE FALSE> - PHRASE22>
3376                     <DEAD TEMP18>
3377                     <FRAME '\1aGEN>
3378                     <PUSH NN16>
3379                     <DEAD NN16>
3380                     <PUSH 'DONT-CARE>
3381                     <CALL '\1aGEN 2 = REG15>
3382 PHRASE22
3383                     <FRAME '\1aTEST-DISP>
3384                     <PUSH NOD9>
3385                     <DEAD NOD9>
3386                     <PUSH WHERE10>
3387                     <DEAD WHERE10>
3388                     <PUSH NOTF11>
3389                     <DEAD NOTF11>
3390                     <PUSH BRANCH12>
3391                     <DEAD BRANCH12>
3392                     <PUSH DIR13>
3393                     <DEAD DIR13>
3394                     <PUSH REG15>
3395                     <DEAD REG15>
3396                     <FRAME '\1aDO-A-TRANS>
3397                     <PUSH 1>
3398                     <NTHR 'TRANSFORM 2 = TEMP18 (RECORD-TYPE ATOM) (TYPE LBIND)>
3399                     <NTHR TEMP18 1 = STACK (RECORD-TYPE LBIND)>
3400                     <DEAD TEMP18>
3401                     <CALL '\1aDO-A-TRANS 2 = STACK>
3402                     <NTHR 'TRANSFORM 2 = TEMP18 (RECORD-TYPE ATOM) (TYPE LBIND)>
3403                     <NTHR TEMP18 1 = TEMP18 (RECORD-TYPE LBIND)>
3404                     <NTHUV TEMP18 3 = TEMP18 (TYPE UVECTOR)>
3405                     <NTHUU TEMP18 1 = TEMP18 (TYPE FIX)>
3406                     <VEQUAL? TEMP18 0 - TAG29 (TYPE FIX)>
3407                     <DEAD TEMP18>
3408                     <SET TEMP18 %<> (TYPE FALSE)>
3409                     <JUMP + TAG30>
3410 TAG29
3411                     <SET TEMP18 'T (TYPE ATOM)>
3412 TAG30
3413                     <PUSH TEMP18>
3414                     <DEAD TEMP18>
3415                     <PUSH SETF14>
3416                     <DEAD SETF14>
3417                     <CALL '\1aTEST-DISP 9 = TEMP18>
3418                     <UNBIND TEMP3>
3419                     <DEAD TEMP3>
3420                     <ADJ -9>
3421                     <RETURN TEMP18>
3422                     <DEAD TEMP18>
3423                     <END \1a1?-GEN>
3424
3425 #WORD *3351230454*
3426                     <GFCN \1a1?-TEST ("VALUE" ANY NODE ANY ANY ANY ANY ANY ANY ANY) NOD4 WHERE5 NOTF6 BRANCH7 DIR8 REG9 NEG10 SF11>
3427                     <TEMP SBR12 RW14 TEMP19 SDIR16 (NM17:FALSE %<>) ATYP18>
3428                     <INTGO>
3429                     <NTHUV NOD4 4 = SBR12>
3430                     <SET RW14 WHERE5>
3431                     <NTHUV NOD4 5 = TEMP19 (TYPE LIST)>
3432                     <DEAD NOD4>
3433                     <NTHL TEMP19 1 = TEMP19 (TYPE NODE)>
3434                     <SET SDIR16 DIR8>
3435                     <FRAME '\1aISTYPE?>
3436                     <NTHUV TEMP19 3 = STACK>
3437                     <DEAD TEMP19>
3438                     <CALL '\1aISTYPE? 1 = ATYP18>
3439                     <EQUAL? WHERE5 'DONT-CARE - PHRASE22>
3440                     <FRAME '\1aGEN-TEMP>
3441                     <PUSH %<>>
3442                     <CALL '\1aGEN-TEMP 1 = WHERE5>
3443 PHRASE22
3444                     <TYPE? BRANCH7 <TYPE-CODE FALSE> + PHRASE26>
3445                     <TYPE? NOTF6 <TYPE-CODE FALSE> + TAG29>
3446                     <DEAD NOTF6>
3447                     <TYPE? DIR8 <TYPE-CODE FALSE> - TAG28>
3448                     <DEAD DIR8>
3449                     <SET DIR8 'T (TYPE ATOM)>
3450                     <JUMP + TAG29>
3451 TAG28
3452                     <SET DIR8 %<> (TYPE FALSE)>
3453 TAG29
3454                     <TYPE? SF11 <TYPE-CODE FALSE> + PHRASE31>
3455                     <DEAD SF11>
3456                     <FRAME '\1aDEALLOCATE-TEMP>
3457                     <FRAME '\1aMOVE-ARG>
3458                     <FRAME '\1aREFERENCE>
3459                     <TYPE? SDIR16 <TYPE-CODE FALSE> - TAG35>
3460                     <SET TEMP19 'T (TYPE ATOM)>
3461                     <JUMP + TAG36>
3462 TAG35
3463                     <SET TEMP19 %<> (TYPE FALSE)>
3464 TAG36
3465                     <PUSH TEMP19>
3466                     <DEAD TEMP19>
3467                     <CALL '\1aREFERENCE 1 = STACK>
3468                     <PUSH WHERE5>
3469                     <CALL '\1aMOVE-ARG 2 = STACK>
3470                     <CALL '\1aDEALLOCATE-TEMP 1>
3471 PHRASE31
3472                     <EQUAL? RW14 'FLUSHED - PHRASE38>
3473                     <FRAME '\1aGEN-COMP>
3474                     <PUSH ATYP18>
3475                     <DEAD ATYP18>
3476                     <PUSH REG9>
3477                     <DEAD REG9>
3478                     <PUSH DIR8>
3479                     <DEAD DIR8>
3480                     <PUSH BRANCH7>
3481                     <DEAD BRANCH7>
3482                     <PUSH SBR12>
3483                     <DEAD SBR12>
3484                     <PUSH NEG10>
3485                     <DEAD NEG10>
3486                     <PUSH NM17>
3487                     <DEAD NM17>
3488                     <CALL '\1aGEN-COMP 7>
3489                     <GVAL 'NO-DATUM = TEMP19>
3490                     <RETURN TEMP19>
3491                     <DEAD TEMP19>
3492 PHRASE38
3493                     <FRAME '\1aMAKE-TAG>
3494                     <CALL '\1aMAKE-TAG 0 = TEMP19>
3495                     <FRAME '\1aGEN-COMP>
3496                     <PUSH ATYP18>
3497                     <DEAD ATYP18>
3498                     <PUSH REG9>
3499                     <DEAD REG9>
3500                     <TYPE? DIR8 <TYPE-CODE FALSE> - TAG43>
3501                     <DEAD DIR8>
3502                     <SET ATYP18 'T (TYPE ATOM)>
3503                     <JUMP + TAG44>
3504 TAG43
3505                     <SET ATYP18 %<> (TYPE FALSE)>
3506 TAG44
3507                     <PUSH ATYP18>
3508                     <DEAD ATYP18>
3509                     <PUSH TEMP19>
3510                     <PUSH SBR12>
3511                     <DEAD SBR12>
3512                     <PUSH NEG10>
3513                     <DEAD NEG10>
3514                     <PUSH NM17>
3515                     <DEAD NM17>
3516                     <CALL '\1aGEN-COMP 7>
3517                     <FRAME '\1aMOVE-ARG>
3518                     <FRAME '\1aMOVE-ARG>
3519                     <FRAME '\1aREFERENCE>
3520                     <PUSH SDIR16>
3521                     <DEAD SDIR16>
3522                     <CALL '\1aREFERENCE 1 = STACK>
3523                     <PUSH WHERE5>
3524                     <DEAD WHERE5>
3525                     <CALL '\1aMOVE-ARG 2 = STACK>
3526                     <PUSH RW14>
3527                     <DEAD RW14>
3528                     <CALL '\1aMOVE-ARG 2 = RW14>
3529                     <FRAME '\1aBRANCH-TAG>
3530                     <PUSH BRANCH7>
3531                     <DEAD BRANCH7>
3532                     <CALL '\1aBRANCH-TAG 1>
3533                     <FRAME '\1aLABEL-TAG>
3534                     <PUSH TEMP19>
3535                     <DEAD TEMP19>
3536                     <CALL '\1aLABEL-TAG 1>
3537                     <RETURN RW14>
3538                     <DEAD RW14>
3539 PHRASE26
3540                     <EQUAL? WHERE5 'DONT-CARE - PHRASE53>
3541                     <FRAME '\1aGEN-TEMP>
3542                     <PUSH %<>>
3543                     <CALL '\1aGEN-TEMP 1 = WHERE5>
3544 PHRASE53
3545                     <FRAME '\1aGEN-COMP>
3546                     <PUSH ATYP18>
3547                     <DEAD ATYP18>
3548                     <PUSH REG9>
3549                     <DEAD REG9>
3550                     <PUSH NOTF6>
3551                     <DEAD NOTF6>
3552                     <FRAME '\1aMAKE-TAG>
3553                     <CALL '\1aMAKE-TAG 0 = BRANCH7>
3554                     <PUSH BRANCH7>
3555                     <PUSH SBR12>
3556                     <DEAD SBR12>
3557                     <PUSH NEG10>
3558                     <DEAD NEG10>
3559                     <PUSH NM17>
3560                     <DEAD NM17>
3561                     <CALL '\1aGEN-COMP 7>
3562                     <FRAME '\1aMOVE-ARG>
3563                     <FRAME '\1aREFERENCE>
3564                     <PUSH 'T>
3565                     <CALL '\1aREFERENCE 1 = STACK>
3566                     <PUSH WHERE5>
3567                     <CALL '\1aMOVE-ARG 2>
3568                     <FRAME '\1aBRANCH-TAG>
3569                     <FRAME '\1aMAKE-TAG>
3570                     <CALL '\1aMAKE-TAG 0 = TEMP19>
3571                     <PUSH TEMP19>
3572                     <CALL '\1aBRANCH-TAG 1>
3573                     <FRAME '\1aLABEL-TAG>
3574                     <PUSH BRANCH7>
3575                     <DEAD BRANCH7>
3576                     <CALL '\1aLABEL-TAG 1>
3577                     <FRAME '\1aMOVE-ARG>
3578                     <FRAME '\1aREFERENCE>
3579                     <PUSH %<>>
3580                     <CALL '\1aREFERENCE 1 = STACK>
3581                     <PUSH WHERE5>
3582                     <CALL '\1aMOVE-ARG 2>
3583                     <FRAME '\1aLABEL-TAG>
3584                     <PUSH TEMP19>
3585                     <DEAD TEMP19>
3586                     <CALL '\1aLABEL-TAG 1>
3587                     <FRAME '\1aMOVE-ARG>
3588                     <PUSH WHERE5>
3589                     <DEAD WHERE5>
3590                     <PUSH RW14>
3591                     <DEAD RW14>
3592                     <CALL '\1aMOVE-ARG 2 = TEMP19>
3593                     <RETURN TEMP19>
3594                     <DEAD TEMP19>
3595                     <END \1a1?-TEST>
3596
3597 #WORD *17232732627*
3598                     <GFCN \1aGEN-COMP ("VALUE" <OR TEMP ANY> ANY ANY ANY ATOM ANY ANY ANY) TYP4 REG5 DIR6 BR7 SBR8 NEG9 NM10>
3599                     <TEMP LBL12 LBL213 TEMP23>
3600                     <INTGO>
3601                     <FRAME '\1aMAKE-TAG>
3602                     <CALL '\1aMAKE-TAG 0 = LBL12>
3603                     <FRAME '\1aMAKE-TAG>
3604                     <CALL '\1aMAKE-TAG 0 = LBL213>
3605                     <EQUAL? TYP4 'FIX + BOOL18>
3606                     <EQUAL? TYP4 'FLOAT - PHRASE17>
3607 BOOL18
3608                     <TYPE? DIR6 <TYPE-CODE FALSE> + PHRASE20>
3609                     <DEAD DIR6>
3610                     <FRAME '\1aFLIP>
3611                     <PUSH SBR8>
3612                     <DEAD SBR8>
3613                     <CALL '\1aFLIP 1 = SBR8>
3614 PHRASE20
3615                     <FRAME '\1aIEMIT>
3616                     <GVAL 'SKIPS = TEMP23>
3617                     <GVAL 'CMSUBRS = LBL12>
3618                     <TYPE? SBR8 <TYPE-CODE ATOM> - TAG24>
3619                     <EMPUV? LBL12 + TAG24>
3620                     <LOOP (SBR8 VALUE) (LBL12 LENGTH VALUE)>
3621 TAG26
3622                     <NTHUV LBL12 1 = LBL213>
3623                     <VEQUAL? LBL213 SBR8 + TAG25>
3624                     <DEAD LBL213>
3625                     <RESTUV LBL12 1 = LBL12 (TYPE VECTOR)>
3626                     <EMPUV? LBL12 - TAG26>
3627 TAG24
3628                     <SET LBL12 %<> (TYPE FALSE)>
3629 TAG25
3630                     <LENUV LBL12 = LBL12 (TYPE FIX)>
3631                     <NTHUV TEMP23 LBL12 = LBL213 (TYPE LIST)>
3632                     <DEAD TEMP23 LBL12>
3633                     <NTHL LBL213 1 = STACK (TYPE ATOM)>
3634                     <PUSH REG5>
3635                     <EQUAL? TYP4 'FIX - PHRASE31>
3636                     <TYPE? NEG9 <TYPE-CODE FALSE> + PHRASE33>
3637                     <DEAD NEG9>
3638                     <SET LBL12 -1 (TYPE FIX)>
3639                     <JUMP + PHRASE38>
3640 PHRASE33
3641                     <SET LBL12 1 (TYPE FIX)>
3642                     <JUMP + PHRASE38>
3643 PHRASE31
3644                     <TYPE? NEG9 <TYPE-CODE FALSE> + PHRASE37>
3645                     <DEAD NEG9>
3646                     <SET LBL12 -1.0 (TYPE FLOAT)>
3647                     <JUMP + PHRASE38>
3648 PHRASE37
3649                     <SET LBL12 1.0 (TYPE FLOAT)>
3650 PHRASE38
3651                     <PUSH LBL12>
3652                     <DEAD LBL12>
3653                     <RESTL LBL213 1 = LBL12 (TYPE LIST)>
3654                     <DEAD LBL213>
3655                     <NTHL LBL12 1 = STACK (TYPE ATOM)>
3656                     <DEAD LBL12>
3657                     <PUSH BR7>
3658                     <DEAD BR7>
3659                     <CONS TYP4 () = LBL12>
3660                     <DEAD TYP4>
3661                     <CONS '`TYPE LBL12 = STACK>
3662                     <DEAD LBL12>
3663                     <CALL '\1aIEMIT 6>
3664                     <FRAME '\1aFREE-TEMP>
3665                     <PUSH REG5>
3666                     <DEAD REG5>
3667                     <CALL '\1aFREE-TEMP 1 = LBL12>
3668                     <RETURN LBL12>
3669                     <DEAD LBL12>
3670 PHRASE17
3671                     <FRAME '\1aGEN-TYPE?>
3672                     <PUSH REG5>
3673                     <PUSH 'FLOAT>
3674                     <PUSH LBL12>
3675                     <PUSH %<>>
3676                     <CALL '\1aGEN-TYPE? 4>
3677                     <FRAME '\1aIEMIT>
3678                     <PUSH '`VEQUAL?>
3679                     <PUSH REG5>
3680                     <TYPE? NEG9 <TYPE-CODE FALSE> + PHRASE44>
3681                     <SET TEMP23 -1.0 (TYPE FLOAT)>
3682                     <JUMP + PHRASE45>
3683 PHRASE44
3684                     <SET TEMP23 1.0 (TYPE FLOAT)>
3685 PHRASE45
3686                     <PUSH TEMP23>
3687                     <DEAD TEMP23>
3688                     <PUSH '+>
3689                     <TYPE? DIR6 <TYPE-CODE FALSE> + PHRASE47>
3690                     <SET TEMP23 BR7>
3691                     <JUMP + PHRASE48>
3692 PHRASE47
3693                     <SET TEMP23 LBL213>
3694 PHRASE48
3695                     <PUSH TEMP23>
3696                     <DEAD TEMP23>
3697                     <PUSH (`TYPE FLOAT)>
3698                     <CALL '\1aIEMIT 6>
3699                     <TYPE? DIR6 <TYPE-CODE FALSE> - PHRASE50>
3700                     <FRAME '\1aBRANCH-TAG>
3701                     <PUSH BR7>
3702                     <CALL '\1aBRANCH-TAG 1>
3703                     <JUMP + PHRASE52>
3704 PHRASE50
3705                     <FRAME '\1aBRANCH-TAG>
3706                     <PUSH LBL213>
3707                     <CALL '\1aBRANCH-TAG 1>
3708 PHRASE52
3709                     <FRAME '\1aLABEL-TAG>
3710                     <PUSH LBL12>
3711                     <DEAD LBL12>
3712                     <CALL '\1aLABEL-TAG 1>
3713                     <FRAME '\1aGEN-TYPE?>
3714                     <PUSH REG5>
3715                     <PUSH 'FIX>
3716                     <PUSH '`COMPERR>
3717                     <PUSH %<>>
3718                     <CALL '\1aGEN-TYPE? 4>
3719                     <FRAME '\1aIEMIT>
3720                     <PUSH '`VEQUAL?>
3721                     <PUSH REG5>
3722                     <TYPE? NEG9 <TYPE-CODE FALSE> + PHRASE58>
3723                     <DEAD NEG9>
3724                     <SET TEMP23 -1 (TYPE FIX)>
3725                     <JUMP + PHRASE59>
3726 PHRASE58
3727                     <SET TEMP23 1 (TYPE FIX)>
3728 PHRASE59
3729                     <PUSH TEMP23>
3730                     <DEAD TEMP23>
3731                     <TYPE? DIR6 <TYPE-CODE FALSE> + PHRASE61>
3732                     <DEAD DIR6>
3733                     <SET TEMP23 '+ (TYPE ATOM)>
3734                     <JUMP + PHRASE62>
3735 PHRASE61
3736                     <SET TEMP23 '- (TYPE ATOM)>
3737 PHRASE62
3738                     <PUSH TEMP23>
3739                     <DEAD TEMP23>
3740                     <PUSH BR7>
3741                     <DEAD BR7>
3742                     <PUSH (`TYPE FIX)>
3743                     <CALL '\1aIEMIT 6>
3744                     <FRAME '\1aLABEL-TAG>
3745                     <PUSH LBL213>
3746                     <DEAD LBL213>
3747                     <CALL '\1aLABEL-TAG 1>
3748                     <FRAME '\1aFREE-TEMP>
3749                     <PUSH REG5>
3750                     <DEAD REG5>
3751                     <CALL '\1aFREE-TEMP 1 = LBL12>
3752                     <RETURN LBL12>
3753                     <DEAD LBL12>
3754                     <END \1aGEN-COMP>
3755
3756 #WORD *11614353053*
3757                     <GFCN \1aTEST-GEN ("VALUE" ANY NODE ANY "OPTIONAL" ANY ANY ANY ANY) NOD9 WHERE10 NOTF11 BRANCH12 DIR13 SETF14>
3758                     <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
3759 OPT4
3760                     <PUSH %<>>
3761 OPT5
3762                     <PUSH %<>>
3763 OPT6
3764                     <PUSH %<>>
3765 OPT7
3766                     <PUSH %<>>
3767 OPT8
3768                     <TEMP TEMP32 K15 K216:NODE S19:FIX TEMP3:LBIND SDIR24 RW25 FLS27 ONO29 TEMP50 TEMP51 ATYP222 B223>
3769                     <INTGO>
3770                     <NTHUV NOD9 5 = TEMP32 (TYPE LIST)>
3771                     <NTHL TEMP32 1 = K15 (TYPE NODE)>
3772                     <DEAD TEMP32>
3773                     <NTHUV NOD9 5 = TEMP32 (TYPE LIST)>
3774                     <RESTL TEMP32 1 = TEMP32 (TYPE LIST)>
3775                     <NTHL TEMP32 1 = K216 (TYPE NODE)>
3776                     <DEAD TEMP32>
3777                     <FRAME '\1aSW?>
3778                     <NTHUV NOD9 4 = STACK (TYPE ATOM)>
3779                     <CALL '\1aSW? 1 = S19>
3780                     <GETS 'BIND = TEMP3 (TYPE LBIND)>
3781                     <BBIND 'TRANSFORM 'TRANS 'FIX>
3782                     <SET SDIR24 DIR13>
3783                     <SET RW25 WHERE10>
3784                     <EQUAL? RW25 'FLUSHED - TAG34>
3785                     <SET FLS27 'T (TYPE ATOM)>
3786                     <JUMP + TAG35>
3787 TAG34
3788                     <SET FLS27 %<> (TYPE FALSE)>
3789 TAG35
3790                     <GEN-LVAL 'NO-KILL = ONO29>
3791                     <BBIND 'NO-KILL 'LIST 'FIX ONO29>
3792                     <EQUAL? WHERE10 'FLUSHED - PHRASE39>
3793                     <SET WHERE10 'FLUSHED (TYPE ATOM)>
3794                     <JUMP + PHRASE40>
3795 PHRASE39
3796                     <EQUAL? WHERE10 'DONT-CARE - PHRASE40>
3797                     <FRAME '\1aGEN-TEMP>
3798                     <PUSH %<>>
3799                     <CALL '\1aGEN-TEMP 1 = WHERE10>
3800 PHRASE40
3801                     <NTHUV K216 1 = TEMP32 (TYPE FIX)>
3802                     <VEQUAL? TEMP32 2 + TAG52 (TYPE FIX)>
3803                     <DEAD TEMP32>
3804                     <NTHUV K15 1 = TEMP32 (TYPE FIX)>
3805                     <GVAL 'SNODES = TEMP50>
3806                     <EMPUU? TEMP50 + TAG47>
3807                     <LOOP (TEMP32 VALUE) (TEMP50 LENGTH VALUE)>
3808 TAG48
3809                     <NTHUU TEMP50 1 = TEMP51>
3810                     <VEQUAL? TEMP51 TEMP32 + PHRASE44>
3811                     <DEAD TEMP51>
3812                     <RESTUU TEMP50 1 = TEMP50 (TYPE UVECTOR)>
3813                     <EMPUU? TEMP50 - TAG48>
3814 TAG47
3815                     <NTHUV NOD9 8 = TEMP50>
3816                     <TYPE? TEMP50 <TYPE-CODE FALSE> - PHRASE44>
3817                     <DEAD TEMP50>
3818                     <NTHUV K216 1 = TEMP50 (TYPE FIX)>
3819                     <GVAL 'SNODES = TEMP32>
3820                     <EMPUU? TEMP32 + PHRASE44>
3821                     <LOOP (TEMP50 VALUE) (TEMP32 LENGTH VALUE)>
3822 TAG53
3823                     <NTHUU TEMP32 1 = TEMP51>
3824                     <VEQUAL? TEMP51 TEMP50 + TAG52>
3825                     <DEAD TEMP51>
3826                     <RESTUU TEMP32 1 = TEMP32 (TYPE UVECTOR)>
3827                     <EMPUU? TEMP32 - TAG53>
3828                     <JUMP + PHRASE44>
3829 TAG52
3830                     <NTHUV K15 1 = TEMP32 (TYPE FIX)>
3831                     <VEQUAL? TEMP32 10 - PHRASE56 (TYPE FIX)>
3832                     <DEAD TEMP32>
3833                     <NTHUV K15 7 = TEMP50 (TYPE LIST)>
3834                     <EMPL? TEMP50 + PHRASE59>
3835                     <RESTL TEMP50 1 = TEMP32 (TYPE LIST)>
3836                     <EMPL? TEMP32 + PHRASE59>
3837                     <RESTL TEMP32 1 = TEMP32 (TYPE LIST)>
3838                     <EMPL? TEMP32 - PHRASE59>
3839                     <DEAD TEMP32>
3840                     <RESTL TEMP50 1 = TEMP32 (TYPE LIST)>
3841                     <DEAD TEMP50>
3842                     <NTHL TEMP32 1 = TEMP32>
3843                     <TYPE? TEMP32 <TYPE-CODE FALSE> + PHRASE56>
3844                     <DEAD TEMP32>
3845 PHRASE59
3846                     <NTHUV K15 4 = TEMP50>
3847                     <TYPE? TEMP50 <TYPE-CODE FALSE> + PHRASE56>
3848                     <NTHR 'NO-KILL 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
3849                     <NTHR TEMP51 1 = TEMP32 (RECORD-TYPE LBIND)>
3850                     <DEAD TEMP51>
3851                     <LOOP>
3852 MAP62
3853                     <INTGO>
3854                     <EMPL? TEMP32 + MAPAP65>
3855                     <NTHL TEMP32 1 = TEMP51>
3856                     <NTH1 TEMP51 = TEMP51>
3857                     <EQUAL? TEMP51 TEMP50 + PHRASE56>
3858                     <DEAD TEMP51>
3859                     <RESTL TEMP32 1 = TEMP32 (TYPE LIST)>
3860                     <JUMP + MAP62>
3861 MAPAP65
3862                     <NTHR 'NO-KILL 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
3863                     <NTHR TEMP51 1 = TEMP32 (RECORD-TYPE LBIND)>
3864                     <DEAD TEMP51>
3865                     <CONS %<> () = TEMP51>
3866                     <NTHUV K15 4 = TEMP50>
3867                     <DEAD K15>
3868                     <CONS TEMP50 TEMP51 = TEMP51>
3869                     <DEAD TEMP50>
3870                     <CONS TEMP51 TEMP32 = TEMP32>
3871                     <DEAD TEMP51>
3872                     <NTHR 'NO-KILL 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
3873                     <PUTR TEMP51 1 TEMP32 (RECORD-TYPE LBIND)>
3874                     <DEAD TEMP51 TEMP32>
3875 PHRASE56
3876                     <SET K15 K216>
3877                     <DEAD K216>
3878                     <NTHUV NOD9 5 = TEMP32 (TYPE LIST)>
3879                     <NTHL TEMP32 1 = K216 (TYPE NODE)>
3880                     <DEAD TEMP32>
3881                     <FRAME '\1aFLOP>
3882                     <NTHUV NOD9 4 = STACK (TYPE ATOM)>
3883                     <CALL '\1aFLOP 1 = TEMP32>
3884                     <PUTUV NOD9 4 TEMP32>
3885                     <DEAD TEMP32>
3886 PHRASE44
3887                     <FRAME '\1aISTYPE?>
3888                     <NTHUV K216 3 = STACK>
3889                     <CALL '\1aISTYPE? 1 = TEMP50>
3890                     <FRAME '\1aISTYPE-GOOD?>
3891                     <NTHUV K15 3 = STACK>
3892                     <CALL '\1aISTYPE-GOOD? 1 = ATYP222>
3893                     <NTHUV K15 1 = TEMP32 (TYPE FIX)>
3894                     <VEQUAL? TEMP32 2 + PHRASE83 (TYPE FIX)>
3895                     <DEAD TEMP32>
3896                     <FRAME '\1aGEN>
3897                     <PUSH K15>
3898                     <DEAD K15>
3899                     <VEQUAL? TEMP50 ATYP222 + PHRASE86>
3900                     <VEQUAL? ATYP222 'FIX - PHRASE86>
3901                     <FRAME '\1aGEN-TEMP>
3902                     <PUSH %<>>
3903                     <CALL '\1aGEN-TEMP 1 = TEMP32>
3904                     <JUMP + PHRASE89>
3905 PHRASE86
3906                     <SET TEMP32 'DONT-CARE (TYPE ATOM)>
3907 PHRASE89
3908                     <PUSH TEMP32>
3909                     <DEAD TEMP32>
3910                     <CALL '\1aGEN 2 = K15>
3911                     <NTHR 'TRANSFORM 2 = TEMP32 (RECORD-TYPE ATOM) (TYPE LBIND)>
3912                     <NTHR TEMP32 1 = TEMP32 (RECORD-TYPE LBIND)>
3913                     <TYPE? TEMP32 <TYPE-CODE UNBOUND> + PHRASE91>
3914                     <DEAD TEMP32>
3915                     <NTHR 'TRANSFORM 2 = TEMP32 (RECORD-TYPE ATOM) (TYPE LBIND)>
3916                     <NTHR TEMP32 1 = TEMP32 (RECORD-TYPE LBIND)>
3917                     <FRAME '\1aUPDATE-TRANS>
3918                     <PUSH NOD9>
3919                     <PUSH TEMP32>
3920                     <DEAD TEMP32>
3921                     <CALL '\1aUPDATE-TRANS 2 = TEMP32>
3922                     <NTHR 'TRANSFORM 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
3923                     <PUTR TEMP51 1 TEMP32 (RECORD-TYPE LBIND)>
3924                     <DEAD TEMP51 TEMP32>
3925 PHRASE91
3926                     <FRAME '\1aINTERF-CHANGE>
3927                     <PUSH K15>
3928                     <DEAD K15>
3929                     <PUSH K216>
3930                     <CALL '\1aINTERF-CHANGE 2 = K15>
3931                     <FRAME '\1aGEN>
3932                     <PUSH K216>
3933                     <DEAD K216>
3934                     <VEQUAL? TEMP50 ATYP222 + PHRASE100>
3935                     <VEQUAL? TEMP50 'FIX - PHRASE100>
3936                     <FRAME '\1aGEN-TEMP>
3937                     <PUSH %<>>
3938                     <CALL '\1aGEN-TEMP 1 = TEMP32>
3939                     <JUMP + PHRASE103>
3940 PHRASE100
3941                     <SET TEMP32 'DONT-CARE (TYPE ATOM)>
3942 PHRASE103
3943                     <PUSH TEMP32>
3944                     <DEAD TEMP32>
3945                     <CALL '\1aGEN 2 = TEMP32>
3946                     <JUMP + PHRASE104>
3947 PHRASE83
3948                     <VEQUAL? TEMP50 'FIX + BOOL107>
3949                     <NTHUV K15 4 = TEMP32>
3950                     <EQUAL? TEMP32 0 - PHRASE106>
3951                     <DEAD TEMP32>
3952 BOOL107
3953                     <FRAME '\1aMAKE-TRANS>
3954                     <PUSH NOD9>
3955                     <PUSH 1>
3956                     <PUSH 1>
3957                     <PUSH 0>
3958                     <PUSH 1>
3959                     <PUSH 1>
3960                     <SUB 0 S19 = TEMP32 (TYPE FIX)>
3961                     <ADD TEMP32 2 = STACK (TYPE FIX)>
3962                     <DEAD TEMP32>
3963                     <PUSH S19>
3964                     <DEAD S19>
3965                     <CALL '\1aMAKE-TRANS 8 = TEMP32>
3966                     <NTHR 'TRANSFORM 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
3967                     <PUTR TEMP51 1 TEMP32 (RECORD-TYPE LBIND)>
3968                     <DEAD TEMP51 TEMP32>
3969 PHRASE106
3970                     <VEQUAL? TEMP50 'FIX - PHRASE112>
3971                     <DEAD TEMP50>
3972                     <NTHR 'TRANSFORM 2 = TEMP32 (RECORD-TYPE ATOM) (TYPE LBIND)>
3973                     <NTHR TEMP32 1 = TEMP32 (RECORD-TYPE LBIND)>
3974                     <NTHUV TEMP32 2 = TEMP32 (TYPE UVECTOR)>
3975                     <PUTUU TEMP32 2 1>
3976                     <NTHUV K15 4 = TEMP51>
3977                     <TYPE? TEMP51 <TYPE-CODE FIX> + TAG115>
3978                     <FIX TEMP51 = TEMP51 (TYPE FIX)>
3979 TAG115
3980                     <PUTUU TEMP32 3 TEMP51>
3981                     <DEAD TEMP32 TEMP51>
3982 PHRASE112
3983                     <FRAME '\1aLN-LST>
3984                     <PUSH K216>
3985                     <CALL '\1aLN-LST 1 = TEMP32>
3986                     <TYPE? TEMP32 <TYPE-CODE FALSE> + PHRASE117>
3987                     <DEAD TEMP32>
3988                     <GVAL 'NO-DATUM = TEMP32>
3989                     <JUMP + PHRASE119>
3990 PHRASE117
3991                     <FRAME '\1aGEN>
3992                     <PUSH K216>
3993                     <DEAD K216>
3994                     <CALL '\1aGEN 1 = TEMP32>
3995 PHRASE119
3996                     <FRAME '\1aTEST-DISP>
3997                     <PUSH NOD9>
3998                     <DEAD NOD9>
3999                     <PUSH WHERE10>
4000                     <DEAD WHERE10>
4001                     <PUSH NOTF11>
4002                     <DEAD NOTF11>
4003                     <PUSH BRANCH12>
4004                     <DEAD BRANCH12>
4005                     <PUSH DIR13>
4006                     <DEAD DIR13>
4007                     <PUSH TEMP32>
4008                     <DEAD TEMP32>
4009                     <NTHR 'TRANSFORM 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
4010                     <NTHR TEMP51 1 = TEMP51 (RECORD-TYPE LBIND)>
4011                     <TYPE? TEMP51 <TYPE-CODE UNBOUND> + PHRASE123>
4012                     <DEAD TEMP51>
4013                     <FRAME '\1aDO-A-TRANS>
4014                     <NTHUV K15 4 = TEMP51>
4015                     <DEAD K15>
4016                     <TYPE? TEMP51 <TYPE-CODE FIX> + TAG125>
4017                     <FIX TEMP51 = TEMP51 (TYPE FIX)>
4018 TAG125
4019                     <PUSH TEMP51>
4020                     <DEAD TEMP51>
4021                     <NTHR 'TRANSFORM 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
4022                     <NTHR TEMP51 1 = STACK (RECORD-TYPE LBIND)>
4023                     <DEAD TEMP51>
4024                     <CALL '\1aDO-A-TRANS 2 = TEMP51>
4025                     <JUMP + PHRASE128>
4026 PHRASE123
4027                     <NTHUV K15 4 = TEMP51>
4028                     <DEAD K15>
4029 PHRASE128
4030                     <PUSH TEMP51>
4031                     <DEAD TEMP51>
4032                     <NTHR 'TRANSFORM 2 = TEMP50 (RECORD-TYPE ATOM) (TYPE LBIND)>
4033                     <NTHR TEMP50 1 = TEMP50 (RECORD-TYPE LBIND)>
4034                     <TYPE? TEMP50 <TYPE-CODE UNBOUND> - TAG130>
4035                     <DEAD TEMP50>
4036                     <SET TEMP51 %<> (TYPE FALSE)>
4037                     <JUMP + TAG133>
4038 TAG130
4039                     <NTHR 'TRANSFORM 2 = TEMP50 (RECORD-TYPE ATOM) (TYPE LBIND)>
4040                     <NTHR TEMP50 1 = TEMP50 (RECORD-TYPE LBIND)>
4041                     <NTHUV TEMP50 3 = TEMP50 (TYPE UVECTOR)>
4042                     <NTHUU TEMP50 1 = TEMP50 (TYPE FIX)>
4043                     <VEQUAL? TEMP50 0 - TAG132 (TYPE FIX)>
4044                     <DEAD TEMP50>
4045                     <SET TEMP51 %<> (TYPE FALSE)>
4046                     <JUMP + TAG133>
4047 TAG132
4048                     <SET TEMP51 'T (TYPE ATOM)>
4049 TAG133
4050                     <PUSH TEMP51>
4051                     <DEAD TEMP51>
4052                     <PUSH SETF14>
4053                     <DEAD SETF14>
4054                     <CALL '\1aTEST-DISP 9 = TEMP32>
4055                     <JUMP + RETURN2>
4056 PHRASE104
4057                     <FRAME '\1aDELAY-KILL>
4058                     <NTHR 'NO-KILL 2 = TEMP51 (RECORD-TYPE ATOM) (TYPE LBIND)>
4059                     <NTHR TEMP51 1 = STACK (RECORD-TYPE LBIND)>
4060                     <DEAD TEMP51>
4061                     <PUSH ONO29>
4062                     <DEAD ONO29>
4063                     <CALL '\1aDELAY-KILL 2>
4064                     <TYPE? BRANCH12 <TYPE-CODE FALSE> + PHRASE143>
4065                     <TYPE? NOTF11 <TYPE-CODE FALSE> + TAG146>
4066                     <DEAD NOTF11>
4067                     <TYPE? DIR13 <TYPE-CODE FALSE> - TAG145>
4068                     <DEAD DIR13>
4069                     <SET DIR13 'T (TYPE ATOM)>
4070                     <JUMP + TAG146>
4071 TAG145
4072                     <SET DIR13 %<> (TYPE FALSE)>
4073 TAG146
4074                     <TYPE? SETF14 <TYPE-CODE FALSE> + PHRASE148>
4075                     <DEAD SETF14>
4076                     <FRAME '\1aDEALLOCATE-TEMP>
4077                     <FRAME '\1aMOVE-ARG>
4078                     <FRAME '\1aREFERENCE>
4079                     <TYPE? SDIR24 <TYPE-CODE FALSE> - TAG152>
4080                     <SET TEMP51 'T (TYPE ATOM)>
4081                     <JUMP + TAG153>
4082 TAG152
4083                     <SET TEMP51 %<> (TYPE FALSE)>
4084 TAG153
4085                     <PUSH TEMP51>
4086                     <DEAD TEMP51>
4087                     <CALL '\1aREFERENCE 1 = STACK>
4088                     <PUSH WHERE10>
4089                     <CALL '\1aMOVE-ARG 2 = STACK>
4090                     <CALL '\1aDEALLOCATE-TEMP 1>
4091 PHRASE148
4092                     <FRAME '\1aGEN-COMP2>
4093                     <FRAME '\1aFLOP>
4094                     <NTHUV NOD9 4 = STACK (TYPE ATOM)>
4095                     <DEAD NOD9>
4096                     <CALL '\1aFLOP 1 = STACK>
4097                     <PUSH ATYP222>
4098                     <DEAD ATYP222>
4099                     <PUSH TEMP50>
4100                     <DEAD TEMP50>
4101                     <PUSH TEMP32>
4102                     <DEAD TEMP32>
4103                     <PUSH K15>
4104                     <DEAD K15>
4105                     <VEQUAL? FLS27 0 + PHRASE157>
4106                     <SET TEMP51 DIR13>
4107                     <DEAD DIR13>
4108                     <JUMP + TAG160>
4109 PHRASE157
4110                     <TYPE? DIR13 <TYPE-CODE FALSE> - TAG159>
4111                     <DEAD DIR13>
4112                     <SET TEMP51 'T (TYPE ATOM)>
4113                     <JUMP + TAG160>
4114 TAG159
4115                     <SET TEMP51 %<> (TYPE FALSE)>
4116 TAG160
4117                     <PUSH TEMP51>
4118                     <DEAD TEMP51>
4119                     <VEQUAL? FLS27 0 + PHRASE162>
4120                     <SET TEMP51 BRANCH12>
4121                     <JUMP + PHRASE163>
4122 PHRASE162
4123                     <FRAME '\1aMAKE-TAG>
4124                     <CALL '\1aMAKE-TAG 0 = B223>
4125                     <SET TEMP51 B223>
4126 PHRASE163
4127                     <PUSH TEMP51>
4128                     <DEAD TEMP51>
4129                     <CALL '\1aGEN-COMP2 7>
4130                     <VEQUAL? FLS27 0 + TAG167>
4131                     <DEAD FLS27>
4132                     <SET TEMP51 %<> (TYPE FALSE)>
4133                     <JUMP + PHRASE173>
4134 TAG167
4135                     <FRAME '\1aMOVE-ARG>
4136                     <FRAME '\1aMOVE-ARG>
4137                     <FRAME '\1aREFERENCE>
4138                     <PUSH SDIR24>
4139                     <DEAD SDIR24>
4140                     <CALL '\1aREFERENCE 1 = STACK>
4141                     <PUSH WHERE10>
4142                     <DEAD WHERE10>
4143                     <CALL '\1aMOVE-ARG 2 = STACK>
4144                     <PUSH RW25>
4145                     <DEAD RW25>
4146                     <CALL '\1aMOVE-ARG 2 = RW25>
4147                     <FRAME '\1aBRANCH-TAG>
4148                     <PUSH BRANCH12>
4149                     <DEAD BRANCH12>
4150                     <CALL '\1aBRANCH-TAG 1>
4151                     <FRAME '\1aLABEL-TAG>
4152                     <PUSH B223>
4153                     <DEAD B223>
4154                     <CALL '\1aLABEL-TAG 1>
4155                     <SET TEMP51 RW25>
4156                     <DEAD RW25>
4157                     <JUMP + PHRASE173>
4158 PHRASE143
4159                     <FRAME '\1aGEN-COMP2>
4160                     <FRAME '\1aFLOP>
4161                     <NTHUV NOD9 4 = STACK (TYPE ATOM)>
4162                     <DEAD NOD9>
4163                     <CALL '\1aFLOP 1 = STACK>
4164                     <PUSH ATYP222>
4165                     <DEAD ATYP222>
4166                     <PUSH TEMP50>
4167                     <DEAD TEMP50>
4168                     <PUSH TEMP32>
4169                     <DEAD TEMP32>
4170                     <PUSH K15>
4171                     <DEAD K15>
4172                     <PUSH NOTF11>
4173                     <DEAD NOTF11>
4174                     <FRAME '\1aMAKE-TAG>
4175                     <CALL '\1aMAKE-TAG 0 = BRANCH12>
4176                     <PUSH BRANCH12>
4177                     <CALL '\1aGEN-COMP2 7>
4178                     <FRAME '\1aDEALLOCATE-TEMP>
4179                     <FRAME '\1aMOVE-ARG>
4180                     <FRAME '\1aREFERENCE>
4181                     <PUSH 'T>
4182                     <CALL '\1aREFERENCE 1 = STACK>
4183                     <PUSH WHERE10>
4184                     <CALL '\1aMOVE-ARG 2 = STACK>
4185                     <CALL '\1aDEALLOCATE-TEMP 1>
4186                     <FRAME '\1aBRANCH-TAG>
4187                     <FRAME '\1aMAKE-TAG>
4188                     <CALL '\1aMAKE-TAG 0 = B223>
4189                     <PUSH B223>
4190                     <CALL '\1aBRANCH-TAG 1>
4191                     <FRAME '\1aLABEL-TAG>
4192                     <PUSH BRANCH12>
4193                     <DEAD BRANCH12>
4194                     <CALL '\1aLABEL-TAG 1>
4195                     <FRAME '\1aMOVE-ARG>
4196                     <FRAME '\1aREFERENCE>
4197                     <PUSH %<>>
4198                     <CALL '\1aREFERENCE 1 = STACK>
4199                     <PUSH WHERE10>
4200                     <CALL '\1aMOVE-ARG 2>
4201                     <FRAME '\1aLABEL-TAG>
4202                     <PUSH B223>
4203                     <DEAD B223>
4204                     <CALL '\1aLABEL-TAG 1>
4205                     <FRAME '\1aMOVE-ARG>
4206                     <PUSH WHERE10>
4207                     <DEAD WHERE10>
4208                     <PUSH RW25>
4209                     <DEAD RW25>
4210                     <CALL '\1aMOVE-ARG 2 = TEMP51>
4211 PHRASE173
4212                     <SET TEMP32 TEMP51>
4213                     <DEAD TEMP51>
4214 RETURN2
4215                     <UNBIND TEMP3>
4216                     <DEAD TEMP3>
4217                     <ADJ -18>
4218                     <RETURN TEMP32>
4219                     <DEAD TEMP32>
4220                     <END \1aTEST-GEN>
4221
4222 #WORD *11152052772*
4223                     <GFCN \1aTEST-GEN2 ("VALUE" ANY NODE ANY ANY ANY ANY ANY <OR FIX FLOAT> ANY ANY) NOD4 WHERE5 NOTF6 BRANCH7 DIR8 REG9 NUM10 NEG11 SF12>
4224                     <TEMP SDIR13 RW14 FLS15 SBR17 TEMP40 B216>
4225                     <INTGO>
4226                     <SET SDIR13 DIR8>
4227                     <SET RW14 WHERE5>
4228                     <EQUAL? RW14 'FLUSHED - TAG18>
4229                     <SET FLS15 'T (TYPE ATOM)>
4230                     <JUMP + TAG19>
4231 TAG18
4232                     <SET FLS15 %<> (TYPE FALSE)>
4233 TAG19
4234                     <NTHUV NOD4 4 = SBR17>
4235                     <DEAD NOD4>
4236                     <EQUAL? WHERE5 'FLUSHED - PHRASE21>
4237                     <SET WHERE5 'FLUSHED (TYPE ATOM)>
4238                     <JUMP + PHRASE22>
4239 PHRASE21
4240                     <EQUAL? WHERE5 'DONT-CARE - PHRASE22>
4241                     <FRAME '\1aGEN-TEMP>
4242                     <PUSH %<>>
4243                     <CALL '\1aGEN-TEMP 1 = WHERE5>
4244 PHRASE22
4245                     <TYPE? BRANCH7 <TYPE-CODE FALSE> + PHRASE26>
4246                     <TYPE? NEG11 <TYPE-CODE FALSE> + PHRASE28>
4247                     <DEAD NEG11>
4248                     <FRAME '\1aFLOP>
4249                     <PUSH SBR17>
4250                     <DEAD SBR17>
4251                     <CALL '\1aFLOP 1 = SBR17>
4252 PHRASE28
4253                     <TYPE? NOTF6 <TYPE-CODE FALSE> + TAG32>
4254                     <DEAD NOTF6>
4255                     <TYPE? DIR8 <TYPE-CODE FALSE> - TAG31>
4256                     <DEAD DIR8>
4257                     <SET DIR8 'T (TYPE ATOM)>
4258                     <JUMP + TAG32>
4259 TAG31
4260                     <SET DIR8 %<> (TYPE FALSE)>
4261 TAG32
4262                     <TYPE? SF12 <TYPE-CODE FALSE> + PHRASE34>
4263                     <DEAD SF12>
4264                     <FRAME '\1aDEALLOCATE-TEMP>
4265                     <FRAME '\1aMOVE-ARG>
4266                     <FRAME '\1aREFERENCE>
4267                     <TYPE? SDIR13 <TYPE-CODE FALSE> - TAG38>
4268                     <SET TEMP40 'T (TYPE ATOM)>
4269                     <JUMP + TAG39>
4270 TAG38
4271                     <SET TEMP40 %<> (TYPE FALSE)>
4272 TAG39
4273                     <PUSH TEMP40>
4274                     <DEAD TEMP40>
4275                     <CALL '\1aREFERENCE 1 = STACK>
4276                     <PUSH WHERE5>
4277                     <CALL '\1aMOVE-ARG 2 = STACK>
4278                     <CALL '\1aDEALLOCATE-TEMP 1>
4279 PHRASE34
4280                     <FRAME '\1aGEN-COMP2>
4281                     <PUSH SBR17>
4282                     <DEAD SBR17>
4283                     <FRAME '\1aTYPE>
4284                     <PUSH NUM10>
4285                     <CALL '\1aTYPE 1 = STACK>
4286                     <PUSH %<>>
4287                     <FRAME '\1aREFERENCE>
4288                     <PUSH NUM10>
4289                     <DEAD NUM10>
4290                     <CALL '\1aREFERENCE 1 = STACK>
4291                     <PUSH REG9>
4292                     <DEAD REG9>
4293                     <VEQUAL? FLS15 0 + PHRASE45>
4294                     <SET TEMP40 DIR8>
4295                     <DEAD DIR8>
4296                     <JUMP + TAG48>
4297 PHRASE45
4298                     <TYPE? DIR8 <TYPE-CODE FALSE> - TAG47>
4299                     <DEAD DIR8>
4300                     <SET TEMP40 'T (TYPE ATOM)>
4301                     <JUMP + TAG48>
4302 TAG47
4303                     <SET TEMP40 %<> (TYPE FALSE)>
4304 TAG48
4305                     <PUSH TEMP40>
4306                     <DEAD TEMP40>
4307                     <VEQUAL? FLS15 0 + PHRASE50>
4308                     <SET TEMP40 BRANCH7>
4309                     <JUMP + PHRASE51>
4310 PHRASE50
4311                     <FRAME '\1aMAKE-TAG>
4312                     <CALL '\1aMAKE-TAG 0 = B216>
4313                     <SET TEMP40 B216>
4314 PHRASE51
4315                     <PUSH TEMP40>
4316                     <DEAD TEMP40>
4317                     <CALL '\1aGEN-COMP2 7>
4318                     <VEQUAL? FLS15 0 + TAG55>
4319                     <DEAD FLS15>
4320                     <RETURN %<>>
4321 TAG55
4322                     <FRAME '\1aMOVE-ARG>
4323                     <FRAME '\1aMOVE-ARG>
4324                     <FRAME '\1aREFERENCE>
4325                     <PUSH SDIR13>
4326                     <DEAD SDIR13>
4327                     <CALL '\1aREFERENCE 1 = STACK>
4328                     <PUSH WHERE5>
4329                     <DEAD WHERE5>
4330                     <CALL '\1aMOVE-ARG 2 = STACK>
4331                     <PUSH RW14>
4332                     <DEAD RW14>
4333                     <CALL '\1aMOVE-ARG 2 = RW14>
4334                     <FRAME '\1aBRANCH-TAG>
4335                     <PUSH BRANCH7>
4336                     <DEAD BRANCH7>
4337                     <CALL '\1aBRANCH-TAG 1>
4338                     <FRAME '\1aLABEL-TAG>
4339                     <PUSH B216>
4340                     <DEAD B216>
4341                     <CALL '\1aLABEL-TAG 1>
4342                     <RETURN RW14>
4343                     <DEAD RW14>
4344 PHRASE26
4345                     <TYPE? NEG11 <TYPE-CODE FALSE> + PHRASE66>
4346                     <DEAD NEG11>
4347                     <FRAME '\1aFLOP>
4348                     <PUSH SBR17>
4349                     <DEAD SBR17>
4350                     <CALL '\1aFLOP 1 = SBR17>
4351 PHRASE66
4352                     <FRAME '\1aGEN-COMP2>
4353                     <PUSH SBR17>
4354                     <DEAD SBR17>
4355                     <FRAME '\1aTYPE>
4356                     <PUSH NUM10>
4357                     <CALL '\1aTYPE 1 = STACK>
4358                     <PUSH %<>>
4359                     <FRAME '\1aREFERENCE>
4360                     <PUSH NUM10>
4361                     <DEAD NUM10>
4362                     <CALL '\1aREFERENCE 1 = STACK>
4363                     <PUSH REG9>
4364                     <DEAD REG9>
4365                     <PUSH NOTF6>
4366                     <DEAD NOTF6>
4367                     <FRAME '\1aMAKE-TAG>
4368                     <CALL '\1aMAKE-TAG 0 = BRANCH7>
4369                     <PUSH BRANCH7>
4370                     <CALL '\1aGEN-COMP2 7>
4371                     <FRAME '\1aMOVE-ARG>
4372                     <FRAME '\1aREFERENCE>
4373                     <PUSH 'T>
4374                     <CALL '\1aREFERENCE 1 = STACK>
4375                     <PUSH WHERE5>
4376                     <CALL '\1aMOVE-ARG 2>
4377                     <FRAME '\1aBRANCH-TAG>
4378                     <FRAME '\1aMAKE-TAG>
4379                     <CALL '\1aMAKE-TAG 0 = B216>
4380                     <PUSH B216>
4381                     <CALL '\1aBRANCH-TAG 1>
4382                     <FRAME '\1aLABEL-TAG>
4383                     <PUSH BRANCH7>
4384                     <DEAD BRANCH7>
4385                     <CALL '\1aLABEL-TAG 1>
4386                     <FRAME '\1aMOVE-ARG>
4387                     <FRAME '\1aREFERENCE>
4388                     <PUSH %<>>
4389                     <CALL '\1aREFERENCE 1 = STACK>
4390                     <PUSH WHERE5>
4391                     <CALL '\1aMOVE-ARG 2>
4392                     <FRAME '\1aLABEL-TAG>
4393                     <PUSH B216>
4394                     <DEAD B216>
4395                     <CALL '\1aLABEL-TAG 1>
4396                     <FRAME '\1aMOVE-ARG>
4397                     <PUSH WHERE5>
4398                     <DEAD WHERE5>
4399                     <PUSH RW14>
4400                     <DEAD RW14>
4401                     <CALL '\1aMOVE-ARG 2 = TEMP40>
4402                     <RETURN TEMP40>
4403                     <DEAD TEMP40>
4404                     <END \1aTEST-GEN2>
4405
4406 #WORD *27724104551*
4407                     <GFCN \1aGEN-COMP2 ("VALUE" ATOM ATOM ANY ANY ANY ANY ANY ATOM) SB4 T15 T26 R17 R28 D9 BR10>
4408                     <TEMP TEMP30 TEMP35 TEMP36>
4409                     <INTGO>
4410                     <TYPE? D9 <TYPE-CODE FALSE> + BOOL12>
4411                     <DEAD D9>
4412                     <FRAME '\1aFLIP>
4413                     <PUSH SB4>
4414                     <DEAD SB4>
4415                     <CALL '\1aFLIP 1 = SB4>
4416 BOOL12
4417                     <TYPE? T15 <TYPE-CODE FALSE> + PHRASE21>
4418                     <TYPE? T26 <TYPE-CODE FALSE> + PHRASE21>
4419                     <EQUAL? T15 T26 + PHRASE21>
4420                     <TYPE? R17 <TYPE-CODE TEMP> - PHRASE21>
4421                     <TYPE? R28 <TYPE-CODE TEMP> - PHRASE21>
4422                     <EQUAL? T15 'FIX - PHRASE18>
4423                     <SET T15 'FLOAT (TYPE ATOM)>
4424                     <FRAME '\1aGEN-FLOAT>
4425                     <PUSH R28>
4426                     <PUSH R28>
4427                     <DEAD R28>
4428                     <CALL '\1aGEN-FLOAT 2 = R28>
4429 PHRASE18
4430                     <EQUAL? T26 'FIX - PHRASE21>
4431                     <SET T26 'FLOAT (TYPE ATOM)>
4432                     <FRAME '\1aGEN-FLOAT>
4433                     <PUSH R17>
4434                     <PUSH R17>
4435                     <DEAD R17>
4436                     <CALL '\1aGEN-FLOAT 2 = R17>
4437 PHRASE21
4438                     <TYPE? R17 <TYPE-CODE TEMP> - PHRASE24>
4439                     <FRAME '\1aFREE-TEMP>
4440                     <PUSH R17>
4441                     <PUSH %<>>
4442                     <CALL '\1aFREE-TEMP 2>
4443 PHRASE24
4444                     <TYPE? R28 <TYPE-CODE TEMP> - PHRASE27>
4445                     <FRAME '\1aFREE-TEMP>
4446                     <PUSH R28>
4447                     <PUSH %<>>
4448                     <CALL '\1aFREE-TEMP 2>
4449 PHRASE27
4450                     <FRAME '\1aIEMIT>
4451                     <GVAL 'SKIPS = TEMP30>
4452                     <GVAL 'CMSUBRS = TEMP35>
4453                     <EMPUV? TEMP35 + TAG31>
4454                     <LOOP (SB4 VALUE) (TEMP35 LENGTH VALUE)>
4455 TAG33
4456                     <NTHUV TEMP35 1 = TEMP36>
4457                     <VEQUAL? TEMP36 SB4 + TAG32>
4458                     <DEAD TEMP36>
4459                     <RESTUV TEMP35 1 = TEMP35 (TYPE VECTOR)>
4460                     <EMPUV? TEMP35 - TAG33>
4461 TAG31
4462                     <SET TEMP35 %<> (TYPE FALSE)>
4463 TAG32
4464                     <LENUV TEMP35 = TEMP35 (TYPE FIX)>
4465                     <NTHUV TEMP30 TEMP35 = TEMP30 (TYPE LIST)>
4466                     <DEAD TEMP35>
4467                     <NTHL TEMP30 1 = STACK (TYPE ATOM)>
4468                     <PUSH R28>
4469                     <DEAD R28>
4470                     <PUSH R17>
4471                     <DEAD R17>
4472                     <RESTL TEMP30 1 = TEMP35 (TYPE LIST)>
4473                     <DEAD TEMP30>
4474                     <NTHL TEMP35 1 = STACK (TYPE ATOM)>
4475                     <DEAD TEMP35>
4476                     <PUSH BR10>
4477                     <DEAD BR10>
4478                     <SET TEMP35 T15>
4479                     <DEAD T15>
4480                     <TYPE? TEMP35 <TYPE-CODE FALSE> - BOOL37>
4481                     <SET TEMP35 T26>
4482                     <DEAD T26>
4483 BOOL37
4484                     <CONS TEMP35 () = TEMP35>
4485                     <CONS '`TYPE TEMP35 = STACK>
4486                     <DEAD TEMP35>
4487                     <CALL '\1aIEMIT 6 = TEMP35>
4488                     <RETURN TEMP35>
4489                     <DEAD TEMP35>
4490                     <END \1aGEN-COMP2>
4491
4492 #WORD *12337056240*
4493                     <GFCN \1aGET-DF ("VALUE" ANY ATOM) S4>
4494                     <TEMP TEMP5:VECTOR TEMP10 TEMP11>
4495                     <INTGO>
4496                     <GVAL 'DF-VALS = TEMP5>
4497                     <SET TEMP10 [MAX MIN * / - +] (TYPE VECTOR)>
4498                     <LOOP (S4 VALUE) (TEMP10 LENGTH VALUE)>
4499 TAG8
4500                     <NTHUV TEMP10 1 = TEMP11>
4501                     <VEQUAL? TEMP11 S4 + TAG7>
4502                     <DEAD TEMP11>
4503                     <RESTUV TEMP10 1 = TEMP10 (TYPE VECTOR)>
4504                     <EMPUV? TEMP10 - TAG8>
4505                     <SET TEMP10 %<> (TYPE FALSE)>
4506 TAG7
4507                     <LENUV TEMP10 = TEMP10 (TYPE FIX)>
4508                     <NTHUV TEMP5 TEMP10 = TEMP10>
4509                     <DEAD TEMP5>
4510                     <RETURN TEMP10>
4511                     <DEAD TEMP10>
4512                     <END \1aGET-DF>
4513
4514 #WORD *130412462*
4515                     <GFCN \1aPOPWR2 ("VALUE" <OR FALSE FIX> FIX) X4>
4516                     <TEMP TEMP9>
4517                     <INTGO>
4518                     <VEQUAL? X4 0 - PHRASE6 (TYPE FIX)>
4519                     <RETURN %<>>
4520 PHRASE6
4521                     <SUB 0 X4 = TEMP9 (TYPE FIX)>
4522                     <AND TEMP9 X4 = TEMP9>
4523                     <VEQUAL? X4 TEMP9 + TAG12 (TYPE FIX)>
4524                     <DEAD TEMP9>
4525                     <RETURN %<>>
4526 TAG12
4527                     <SET TEMP9 0 (TYPE FIX)>
4528                     <LOOP>
4529 AGAIN15
4530                     <INTGO>
4531                     <VEQUAL? X4 1 - PHRASE17 (TYPE FIX)>
4532                     <RETURN TEMP9>
4533                     <DEAD TEMP9>
4534 PHRASE17
4535                     <LSH X4 -1 = X4 (TYPE FIX)>
4536                     <ADD TEMP9 1 = TEMP9 (TYPE FIX)>
4537                     <JUMP + AGAIN15>
4538                     <END \1aPOPWR2>
4539
4540 <SETG DF-VALS [0 0 1 1 <MIN> <MAX>]>
4541
4542 <GDECL (SKIPS) <VECTOR [REST <LIST ATOM ATOM>]> (0SUBRS 0SKPS 0JSENS CMSUBRS) <VECTOR [REST ATOM]> (DF-VALS) VECTOR>
4543
4544 <SETG CMSUBRS '[0? N0? 1? N1? -1? N-1? ==? N==? G? G=? L? L=?]>
4545
4546 <SETG SKIPS '[(`LESS? +) (`GRTR? -) (`GRTR? +) (`LESS? -) (`VEQUAL? +) (`VEQUAL? -) (`EQUAL? +) (`VEQUAL? -) (`VEQUAL? +) (`VEQUAL? -) (`VEQUAL? +) (`VEQUAL? -)]>
4547
4548 <ENDPACKAGE>